Explora a forma como a deteção de cores faz a ponte entre a visão humana e a visão por computador, utilizando espaços de cor RGB e HSV para automatizar soluções de visão por computador.
As cores desempenham um papel vital na forma como os humanos experienciam o mundo, ajudando-nos a reconhecer, a compreender e a relacionarmo-nos com o que nos rodeia. No entanto, ao contrário de nós, as máquinas não vêem as cores - processam-nas como dados, traduzindo tons e matizes em valores numéricos.
Um carro com condução autónoma não vê apenas um semáforo vermelho - processa a cor como um sinal para parar. Esta capacidade de reconhecer e interpretar cores ajuda a colmatar o fosso entre a visão humana e a visão computacional.
A visão por computador é um ramo da IA que permite às máquinas analisar e compreender dados visuais. Um aspeto fundamental é a deteção de cores, que permite às máquinas identificar e diferenciar objectos com base na cor. Ao analisar os valores dos pixels em diferentes espaços de cor, a deteção de cores pode ser utilizada em aplicações como a localização de objectos, imagens médicas e automação.
Neste artigo, vamos analisar mais detalhadamente como funciona a deteção de cores, porque é importante e como é utilizada em aplicações de visão por computador. Começa a trabalhar!
A deteção de cores ajuda as máquinas a identificar objectos e a compreender cenas com base na cor. Quando combinada com outras tarefas de visão por computador, melhora a precisão e melhora as aplicações do mundo real. Antes de mergulhar na forma como a deteção de cores funciona, é útil compreender como as cores são representadas digitalmente.
As imagens digitais são compostas por pequenos quadrados chamados pixels, cada um contendo informação de cor. Por exemplo, no que respeita ao modelo de cor RGB (Red, Green, Blue), as cores são criadas através da mistura de diferentes intensidades de vermelho, verde e azul.
Cada cor é definida por três valores, que vão de 0 a 255, em que 0 significa que não há cor e 255 significa intensidade total. Por exemplo, o vermelho puro é (255, 0, 0) porque tem o valor vermelho mais elevado e não tem verde nem azul. O branco é (255, 255, 255) porque as três cores estão na intensidade máxima.
Se estás familiarizado com modelos de visão por computador como o Ultralytics YOLO11poderás perguntar-te porque é que a deteção de cores é uma técnica separada da deteção de objectos. Embora ambas analisem imagens, têm objectivos diferentes.
A deteção de cores centra-se na identificação de cores específicas numa imagem, enquanto a deteção de objectos reconhece e classifica objectos independentemente da sua cor. No cenário do carro autónomo, a deteção de cores detecta o vermelho num semáforo, enquanto a deteção de objectos identifica o próprio semáforo, ajudando o carro a tomar decisões de condução seguras.
Um modelo de cor ou espaço de cor é um sistema utilizado para representar cores em imagens digitais e é uma parte essencial da deteção de cores. Atribui valores numéricos às cores, permitindo que os computadores as interpretem de forma consistente em diferentes dispositivos. Os espaços de cor fornecem uma forma estruturada de armazenar, ajustar e apresentar cores em sistemas digitais.
Alguns espaços de cor normalmente utilizados incluem RGB para ecrãs digitais, HSV (Hue, Saturation, Value) para processamento de imagem e CMYK (Cyan, Magenta, Yellow, Black) para impressão. RGB e HSV são os espaços de cor mais frequentemente utilizados para detetar cores. Vamos ver como funcionam.
O espaço de cor RGB é amplamente utilizado em imagens digitais, encontrado em ecrãs, câmaras e dispositivos de visualização. Funciona através da combinação de diferentes níveis de luz vermelha, verde e azul para criar várias cores. Quando as três cores estão na intensidade máxima, o resultado é branco e, quando nenhuma está presente, aparece preto.
Este espaço de cor é frequentemente visualizado como um cubo de cor, em que cada eixo representa uma das cores primárias. Os cantos do cubo mostram o vermelho, verde e azul puros, juntamente com as suas combinações, enquanto o interior contém todas as tonalidades possíveis.
Embora o RGB seja simples e popular, tem algumas limitações. As cores podem não parecer sempre iguais ao olho humano, porque o RGB não corresponde uniformemente à forma como percepcionamos as diferenças de cor. Também é afetado pelas condições de iluminação, o que significa que as cores podem parecer diferentes dependendo da luminosidade e do ambiente.
O espaço de cor HSV (Matiz, Saturação, Valor) representa as cores com base em três componentes: matiz (o tipo de cor), saturação (a sua intensidade) e valor (o seu brilho). Ao contrário do RGB, que mistura as intensidades de luz, o HSV está mais próximo da forma como os humanos percepcionam as cores, o que o torna uma escolha mais prática para muitas tarefas de processamento de imagens.
Em particular, a tonalidade representa a cor real e é medida em graus numa roda de cores, com o vermelho a 0° e o azul a 240°. Entretanto, a saturação controla o aspeto vívido ou baço de uma cor, em que 0% é completamente cinzento e 100% é totalmente vibrante. Por outro lado, o valor determina o brilho, variando de 0% (preto) a 100% (brilho total).
Curiosamente, o espaço de cor HSV é frequentemente visualizado como um cone, onde a tonalidade envolve a borda, a saturação se move para fora e o brilho aumenta de baixo para cima. Como separa a cor do brilho, o HSV é amplamente utilizado em aplicações de visão computacional.
Para comparar RGB e HSV lado a lado, toma a cor laranja como exemplo. No espaço de cor RGB, o laranja é criado pela mistura de vermelho e verde em intensidades específicas, normalmente representadas como (255, 165, 0) - o que significa vermelho total, algum verde e nenhum azul. No entanto, como o RGB não separa a cor do brilho, pode ser menos intuitivo para tarefas que exijam uma manipulação precisa da cor.
No HSV, o laranja é definido de forma diferente. A sua tonalidade é de cerca de 30°, o que determina a sua posição na roda de cores. A sua saturação é próxima de 100%, o que significa que é uma cor viva e pura, e o seu valor também é 100%, indicando brilho total. Uma vez que o HSV separa a cor do brilho, é frequentemente mais útil em aplicações de deteção de cor em que as condições de iluminação podem mudar.
Normalmente, a deteção de cores é abordada como uma técnica de processamento de imagens utilizada para identificar e isolar cores de imagens ou vídeos. As cores detectadas em imagens utilizando o processamento de imagens baseiam-se em espaços de cor e técnicas de limiarização para diferenciar matizes, tons e intensidades específicos.
Segue-se uma breve descrição dos principais passos envolvidos na deteção de cores utilizando o processamento de imagens:
Uma vez detectada e isolada a cor, esta pode ser utilizada em várias tarefas de visão por computador, como o seguimento de objectos, a segmentação de imagens e a tomada de decisões automatizada em aplicações como a robótica, a imagiologia médica e os veículos autónomos.
Agora que já aprendemos como funciona a deteção de cores, vamos explorar a forma como suporta as aplicações de visão por computador.
Em certos casos, a deteção de cores pode ser uma alternativa mais simples aos modelos de visão por computador, especialmente em ambientes controlados em que a cor é o principal fator de distinção dos objectos. Em vez de treinar um modelo com um conjunto de dados maciço, a deteção de cores oferece uma solução rápida e eficiente sem necessidade de rotulagem extensiva ou de grande poder computacional.
Por exemplo, num sistema automatizado de seleção de maçãs, um modelo de visão por computador como o YOLO11 poderia ser treinado para classificar as maçãs de acordo com o seu estado de maturação, mas seria necessário um conjunto de dados de imagens rotuladas para lidar com variações de iluminação, textura e tipos de maçãs.
Uma abordagem mais simples consiste em detetar primeiro as maçãs utilizando a deteção de objectos e depois analisar a sua cor para determinar a maturação. Uma vez que este método se baseia em limiares de cor predefinidos em vez de treinar um modelo, funciona bem em condições estáveis em que a iluminação e os fundos não mudam drasticamente.
Embora um modelo treinado à medida possa ser melhor para ambientes mais complexos e variáveis, a deteção de cores é uma solução rápida, prática e acessível para aplicações em tempo real. É também um excelente ponto de partida para quem está a aprender sobre processamento de imagem e visão por computador antes de avançar para soluções mais avançadas.
A deteção de cores é utilizada numa vasta gama de indústrias para várias aplicações. Vamos dar uma vista de olhos a alguns casos de utilização reais.
A deteção de cores é crucial na produção de tecidos e têxteis. É normalmente utilizada em sistemas automatizados de controlo de qualidade e de identificação de defeitos. Ao contrário da inspeção manual, que consome muito tempo e é propensa a erros humanos, os sistemas automatizados permitem uma deteção de defeitos precisa e em tempo real.
Especificamente, ao analisar imagens do tecido, os sistemas de visão por computador podem identificar defeitos como a distribuição desigual da tinta, o desbotamento e a contaminação. As técnicas avançadas de deteção de cor possibilitam um controlo de qualidade mais preciso, medindo a consistência da cor em diferentes lotes.
Como já foi referido, a cor é um indicador-chave da maturação, e a tecnologia de deteção de cor pode ser utilizada na agricultura para monitorizar a saúde das culturas e melhorar a colheita.
Ao analisar as variações de cor, os agricultores podem avaliar a saúde das plantas, detetar doenças e determinar quando as culturas estão prontas para a colheita. Robôs avançados equipados com sensores de cor e visão por computador ajudam a automatizar o processo, garantindo que apenas as colheitas maduras são colhidas. Estes sistemas podem aumentar a eficiência e a produtividade, especialmente em áreas com escassez de mão de obra.
A deteção de cores é uma técnica inovadora de visão por computador com aplicações na agricultura, fabrico, cuidados de saúde e automação. Ajuda as máquinas a reconhecer e a interpretar as cores para a localização de objectos, controlo de qualidade e tomada de decisões.
Embora os modelos avançados de IA continuem a evoluir, a deteção de cores continua a ser uma solução simples e eficaz, especialmente em ambientes controlados. À medida que a tecnologia avança, é provável que continue a desempenhar um papel fundamental na melhoria das aplicações do mundo real.
Mergulha mais fundo na IA explorando a nossa comunidade e o repositório GitHub. Conhece as inovações em IA no fabrico e visão computacional nos cuidados de saúde e descobre como começar a tirar partido da Vision AI com as nossas opções de licenciamento.
Começa a tua viagem com o futuro da aprendizagem automática