• Sonuç bulunamadı

1. BÖLÜM

2.8. Yenilik Stratejileri

Descritores baseados em cor possuem propriedades bastante relevantes no contexto de reidentificação de pessoas, mais especificamente para caracterização de roupas. Isto se deve a serem invariantes a pose e escala, uma vez que as simetrias comumente observadas em roupas tendem a apresentar distri- buições de cores semelhantes independentemente do ângulo de visão fotografado. A Figura 3 ilustra o fato de que ao se comparar ainda que em casos extremos como uma pessoa de frente versus uma de costas é comum a semelhança entre os padrões cromáticos observados. Por este motivo, neste trabalho propomos o uso de um conjunto de distribuições de cores em sub-regiões da caixa envolvente de interesse como descritor para reidentificação proposto. Tal conjunto de distribuições difere o descritor proposto daqueles adotados em trabalhos encontrados na literatura.

B. Quantização da paleta de cores

O método proposto realiza uma etapa de quantização do espaço de cores por dois motivos principais. Primeiramente, a quantização de cores permite agrupar cores próximas presentes em uma imagem em uma mesma dimensão do descritor proposto, permitindo reduzir casos em que pequenas variações

Figura 3. Semelhança entre padrões cromáticos de fotos diferentes de um mesmo indivíduo

de iluminação e sombreamento fazem com que cores próximas contidas na imagem sejam associadas a diferentes dimensões nos descritores. Como segundo ganho da quantização, sua aplicação permite diminuir a dimensionalidade do conjunto de distribuições de cores adotado no método proposto, e agilizar seu processamento. Desta forma, propomos a utilização de um algoritmo de quantização de cores para reduzir o conjunto de cores distintas utilizadas na coleção, buscando manter a aparência visual o mais próxima possível da original.

No contexto do nosso trabalho propomos o conceito de quantização de cores de uma coleção. Para isso, é produzida uma única paleta de cores para toda uma coleção através da aplicação do algoritmo de clusterização k-means sobre o conjunto de cores contidas nos pixels de todas as fotografias de uma dada coleção.

Dado um conjunto de observações O = {o1, o2, ..., on} o k-means permite particionar as n observações em k clusteres C = {C1, C2, ..., Ck} onde k  n; de modo a minimizar arg C minPki=1

P

oj∈Cikoj− µik 2

, no qual µi representa o vetor principal de observações em Ci.

Na nossa proposta, k é o número de cores estabelecida para a paleta, oi é a cor do pixel no sistema RGB portato é representado por uma tripla [R,G,B], O é o conjunto de todos os pixels da coleção inteira representado por uma matriz 3D onde cada eixo representa um dos valores R, G ou B, e µi, é a paleta de cores representado como um vetor de triplas [R,G,B].

Como o algoritmo k-means produz uma solução local, influ- enciada pela sua inicialização, buscamos evitar clusterizações não ótimas pela execução do algoritmo diversas vezes e dentre as execuções foi selecionada aquela que minimiza o erro de quantização. Neste contexto definimos o erro como a soma das distâncias de cada pixel da coleção ao cluster mais próximo. Para aumentar ainda mais as chances de boas inicializações seguimos o processo de inicialização proposto por Arthur and Vassilvitskii nomeado k-means++ [5], no qual o objetivo é produzir clusteres bem separados. O centro do primeiro cluster é escolhido de forma aleatória entre o conjunto de observações, os próximos clusteres são escolhidos dentro dos valores restantes com a probabilidade proporcional a distância ao quadrado ao cluster existente mais próximo.

C. Histogramas a partir de imagems integrais

A adoção do descritor proposto na seção 3.A se computado por força bruta se torna inviável. A leitura repetitiva dos pixels de uma imagem para a computação dos histogramas de cada sub-região tornaria o processo muito custoso, especialmente se considerarmos que para a busca de regiões que contenham uma determinada pessoa são gerados um conjunto de histogramas repetidos em múltiplas posições e escalas em cada imagem. Para a resolução deste problema propomos nesta seção uma adaptação de imagens integrais que em conjunto com a quan- tização da paleta de cores torna possível uma computação eficiente de um conjunto de distribuições cromáticas.

Uma imagem integral permite computar rapidamente somas em áreas retangulares de uma grade. Ela foi utilizada por Viola e Jones [6] para computar features de Haar baseadas em diferenças entre somas de pixels em áreas retangulares, em um processo de detecção de face/objeto. Neste trabalho as features de Haar não foram adotadas por não serem invariantes a rotação e a outras transformações necessárias para atender ao contexto deste trabalho. Para nossos propósitos modificamos a interpretação usual das imagens integrais para computar um conjunto de distribuições cromáticas do nosso conjunto de descritores.

Imagens integrais representam funções acumulativas. O valor I(x, y) representa a soma de todos os pixels acima e a esquerda de (x, y) inclusive. Esses valores podem ser facil- mente computados com uma única iteração como: I(x, y) = i(x, y) + I(x − 1, y) + I(x, y − 1) + I(x − 1, y − 1).

Em [6], i(x, y) representa o valor do pixel na escala de cinza. Neste trabalho adaptamos seu propósito de maneira que o elemento ik(x, y) não representa o valor original do pixel, mas uma função booleana que retorna um se o pixel em (x, y) é associado com um certo valor k de cor durante a quantização de paleta da coleção, ou zero caso contrário. Desta forma, a imagem integral proposta representa em Ik(x, y) um contador de ocorrências de certa cor k da paleta nas posições acima e a esquerda de (x, y) inclusive. Assim, a ocorrência de certa cor k da paleta dentro de uma sub-região retangular pode ser calculada com quatro leituras com a equação

X y0≤y≤y1

X x0≤x≤x1

ik(x, y) =−IIk(x0, y1) + Ik(x1, y0) k(x0, y0) − Ik(x1, y1) Seguindo a proposta de adaptação e considerando a paleta de cores de coleção contendo k cores, cada histograma k- dimensional é computado completamente com apenas 4 ⇤ k leituras para um conjunto de k imagens integrais. A mesma imagem integral é reutilizada durante multiplas pesquisas, mesmo se alterado a posição, escala ou modelo de pessoa. Além disso, para o cálculo das imagens integrais trabalhamos com imagens com a resolução reduzida para minimizar o tempo de computação e a utilização de memória.

D. Algoritmo

Para realizarmos uma validação do uso dos descritores de aparência selecionados em casos nos quais o reconhecimento

facial não se faz possível e a comparação entre os algoritmos de constância de cores. Propomos uma pipeline simples de reidentificação de pessoas por comparação de suas roupas em coleções de fotos. O algoritmo pode ser dividido em duas etapas (Figura 4): a primeira de normalização da coleção e a segunda de reidentificação. A etapa de normalização da coleção é composta pelos seguintes passos: estimação da luz para cada foto; transformação da foto para uma iluminação canônica. Já a segunda etapa é composta pelas seguintes etapas: quantização da paleta de cores da coleção; extração das features de cor de bounding box das roupas; comparação entre histogramas de bounding boxes (distância euclidiana).

Figura 4. Algoritmo proposto para a comparação entre os algoritmos de constância de cor

Para a comparação das distribuições de cores utilizamos um valor de corte de 70% de semelhança, logo os histograms com semelhança menor que 70% foram marcados como sendo de pessoas diferentes, e caso contrário, considerados a mesma pessoa.