Departamento de Engenharia Electrotécnica Faculdade de Ciências e Tecnologia UNIVERSIDADE de COIMBRA VISÃO POR COMPUTADOR 2º Semestre Ano lectivo 03/04 Análise e Segmentação de Côr no espaço RGB e HSI Dado um espaço discreto de côr, definido por um conjunto de eixos de côr (ex: RGB, HSI, etc.), o histograma de côr é obtido através da discretização das cores da imagem, contando o número de ocorrências de cada componente discreta de côr. O histograma é invariante à translação e rotação segundo o eixo óptico, variando ligeiramente com a alteração do ângulo de visão, alteração de escala e oclusão. A conversão da palete de cores de uma imagem em bins é fundamental à construção do histograma. Representando o espectro da cor como um conjunto pertencente ao intervalo [0..1], considerando a existência de n bins, cada bin representa 1/n elementos de côr. O histograma define uma função de equivalência na palete de cores possíveis, nomeadamente o facto de duas cores serem idênticas se pertencerem ao mesmo bin. Idealmente, as cores consideradas idênticas partilham uma região centrada na côr, ou numa qualquer região cuja forma depende do conhecimento das possiveis variações introduzidas pelas alterações de iluminação ou ruído. 1. Histogram Bins A criação do histograma de côr é concretizada definindo a descretização do espaço da côr em bins (ex: no espaço RGB, sendo cada componente de côr representada por um byte, existem 256 valores diferentes para cada componente definindo um total de 256 3= 16777216 cores diferentes. Se se considerar que cada componente é representada, por exemplo, por 16 bins (256/16=16 bins), então o histogram é constituido por 163=4096 bins. Isto quer dizer que cada bin integra 4096 cores que se consideram idênticas.) 2. Intersecção de Histogramas Dado o histograma de uma imagem ( I ) e o histograma associado a um modelo ( M ) , cada um contendo n bins, a intersecção destes histogramas é definida como sendo minI n j 1 j ,M j A intersecção dos histogramas traduz-se na quantidade de pixeis do modelo que têm pixeis correspondentes da mesma côr na imagem. Para se obter um valor normalizado, o resultado é dividido pelo número de pixeis do modelo. minI n H I , M j 1 j ,M j n M j 1 j 3. Reprojecção do Histograma A reprojecção do histograma tem por objectivo responder a questão fundamental da análise e segmentação de côr que é : “Where is color? Onde é que se encontram na imagem as cores que pertencem ao objecto em pesquisa ?”. A ideia subjacente a este processo é atribuir uma maior probabilidade às cores do objecto alvo, reduzindo a probabilidade das cores não pertencentes ao modelo. Para tal, é criado um novo histograma R, que representa o racio entre os valores do histograma do modelo e da imagem. Representando i o número de bins de ambos os histogramas, R é definido através de M Ri min i ,1 Ii Este histograma é reprojectado na imagem, substituindo os valores de côr de cada pixel pelo valor de R que cada pixel indexa. A imagem reprojectada é posteriormente convolucionada por uma máscara, que para o caso de objectos compactos de orientação desconhecida poderá ser uma máscara circular de dimensão (área) semelhante à do objecto a detectar. A localização do objecto na imagem é definida pela coordenada correspondente ao valor de pico da imagem convolucionada. Algoritmo: 1- 2- Obter uma imagem que contenha objectos com a cor que se pretende pesquisar. Por exemplo, se se quiser detectar a caixa de disquetes existente na imagem fornecida, deve-se efectuar uma aprendizagem do modelo da côr. Normalizar o espaço da côr: r 3- R RG B g G RG B b Dado que r+g+b=1, o modelo de côr fica definido através de um histograma de côr bidimencional, i.e., basta analisar as componentes r,g. Quantificando cada componente de côr em 16 valores (4 bits), obter o histograma do modelo da côr para os 4096 bins considerados. i. Seleccione uma região da imagem que contenham a componente de côr do modelo (objecto a pesquisar posteriormente). ii. Obtenha o histograma dessa região M . 4- Utiliza uma nova imagem que contenha o objecto em pesquisa. 5- i. Obtenha o histograma da imagem em análise Obtenha a intersecção dos histogramas minI n H I , M j 1 j I . ,M j n M j 1 6- B RG B j Considerando: a. hc x ,y a função do histograma que mapeia a componente de côr (r,g) do pixel (x,y) no correspondente bin do histograma; b. Dxr ,y a máscara de convolução circular de raio r e centrada em (x,y) 1 se Dxr ,y 0 se c. x2 y2 r res tan tes a função loc que devolve ao pixel (x,y) o valor do seu argumento. Reprojecção do Histograma 1. Para cada bin j do histograma, obter Mj R j min I j 2. ,1 Para cada ponto (x,y) da imagem a pesquisar, obter bx ,y Rhcx ,y 3. 4. b Dr b x , y loc maxx ,y b