Tem algum sensor de cor de arduino que além de ler rgb lê preto e branco?

Exibições: 937

Responder esta

Respostas a este tópico

Para que seria ? 

Existem sensores de marcas, como sensores reflexivos comuns e baratos.

Vide:

Google

Mas também vc pode calcular o nivel de cinza equivalente de uma cor com a equação:

Y = 0.299R + 0.587G + 0.114GB

O nivel de cinza também é chamado de luminancia.

Ref:

http://www.mat.ufmg.br/gaal/aplicacoes/sistemas_de_coordenadas_de_c...

Boa tarde, 

Poderia informar mais detalhes sobre o seu questionamento?

É que eu tô querendo usar um sensor que pudesse ler cores, exemplo, preciso ler preto branco prata e verde...
Gostaria de saber se com o sensor de cor do arduíno eu conseguiria fazer algo pra diferenciar nitidamente cada cor, só veios aplicações capturando vermelho, azul ou verde... Ou a utilização de outro sensor pra achar preto, branco e cinza, caso não for possivel vou fazer uma placa de circuito impresso com ambos sensores distintos para fazer a aplicação da leitura.
Só vejo aplicações*

Com essas "cores" específicas, só consigo "enxergar" uma solução.

Usar uma camera digital e fazer o processamento de imagem.

Não sei se daria certo. 

Câmera Vga Ov7670 Para Arduino

O módulo câmera VGA OV7670 é um módulo que permite a captura e armazenamento de imagens coloridas pelo seu Arduino, com uma taxa de atualização de até 30 frames por segundo, com resolução máxima de 640 x 480 Pixels.

https://create.arduino.cc/projecthub/techduino/visual-capturing-wit...

http://www.arducam.com/

Dei uma olhada, não daria certo pelo tamanho, a minha dúvida msm é tipo, já trabalhei com leitor de cor rgb no lego econseguia diferencia várias cores ... No arduíno eu poderia pegar um sensor tcs e conseguir ler preto e branco por exemplo?

Acho que o Eduardo Marcondes já deu dica de como fazer isso. 

Olá Gustavo!

Sim, a resposta do Eduardo não deixou dúvidas.

Assim como eu já tinha respondido em outro post que Kaione fez sobre o mesmo assunto praticamente no mesmo dia:

http://labdegaragem.com/forum/topics/sensor-de-cor-arduino

Não sei porque a necessidade de duplicar o post.

Acho que as pessoas quando entram num fórum precisam ter o mínimo de etiqueta, educação e saber como se portar.

Se não entendeu ou não gostou da resposta do Eduardo nem da minha, ao menos deveria agradecer  ou explicar melhor o que quer.

Precisou você intervir para Kaione se manifestar.

Lastimável, pois é um assunto interessante...

http://labdegaragem.com/forum/topics/sugest-o-de-como-postar

Peço perdão, a duplicação foi acidental, pensei que não havia enviado na primeira vez, sou novo no Lab.., peço desculpas. E agradeço pela ajuda e pelas dicas, sou novo com arduíno e tava procurando entender o máximo.

Kaione, Ok

Está esclarecida a confusão.

Como o Eduardo disse, se você precisa mesmo usar o TCS para detectar o preto e branco vai ter que partir para uma fórmula ou estabelecer um critério de tolerância para cada fator RGB.

Como disse, os tons de cinza possuem R = G = B

Quem sabe o Eduardo H. Marcondes  pode nos ajudar explicando o Y da fórmula 

Y = 0.299R + 0.587G + 0.114GB.

Li o documento que ele postou e, como eu não conhecia essa fórmula, fiz uns cálculos com ela, mas não consegui descobrir na Internet como tratarmos o valor de Y para determinarmos o preto ou branco ou algo parecido...

 

 

O valor de Y é a luminancia, ou luminosidade equivalente da cor.

Segundo a teoria se fizermos uma comparação direta de cada cor com o tom de cinza que nos parece ter o mesmo brilho para cada cor pura dá uma diferença.

Em outras palavras, percebemos melhor o verde, um pouco menos o vermelho e menos ainda o azul.

Por isso se vc pegar uma foto colorida e tentar representar ela em preto e branco fazendo uma media simples das intensidades de R, G e B não vai ficar bom. Para ficar realmente bom vc precisa usar essas proporções: Cinza equivalente = 0,587Verde + 0,299Vermelho + 0.114 Azul.

Agora, se vc quer saber por ex se sua cor é um amarelo o caminho é bem mais longo !

Para fazer essa volta vc precisa calcular como vetor, como o mesmo documento fala.

Aqui acho que está mais bem explicado:

http://www.bdita.bibl.ita.br/tesesdigitais/000489345.pdf

Complica um pouco, mas vc precisa transformar de RGB para Matiz, Satuação e Brilho.

Matiz é um angulo em um circulo de cores, como no CorewDraw para escolher as cores, tem um modo de escolher em um circulo (muitos outros programas usam isso).

Saturação é o quanto a cor é pura. Se é um Vermelho puro ou um vermelho claro, contaminado com branco.

Brilho é a luminosidade ou luminancia.

Se vc captura RGB captura qualquer cor. É uma questão de interpretar os dados. Assim como com 3 leds RGB se faz qualquer cor. Basta acionar na intensidade certa.

Sobre detectar prata, aih não. Não é possivel com um sensor RGB saber se é prata. Vc precisaria de um sensor mais elaborado. Prata pra esses comuns é igual cinza ou branco. Se for um espelho dá branco pq ele reflete todas as cores como o branco. 

A opção de usar uma camera também é otima, mas usaria um raspberry ou PC rodando processing. Veja uns videos em processing.com

PS.:

Na formula que copiei da minha referencia veio um GB no final, saiu errado, erá só B de blue.

Olá Eduardo!

Não errou não. A referência original também vem com GB.

O pior é que fiz vários cálculos com a fórmula errada e não cheguei a conclusão nenhuma! Kkkk

Bem que achei sem sentido o GB...

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço