• Nenhum resultado encontrado

Reconhecimento de instâncias guiado por algoritmos de atenção visual

N/A
N/A
Protected

Academic year: 2021

Share "Reconhecimento de instâncias guiado por algoritmos de atenção visual"

Copied!
140
0
0

Texto

(1)

RAFAEL GALVÃO DE MESQUITA

RECONHECIMENTO DE INSTÂNCIAS GUIADO

POR ALGORITMOS DE ATENÇÃO VISUAL

Universidade Federal de Pernambuco posgraduacao@cin.ufpe.br www.cin.ufpe.br/~posgraduacao

RECIFE 2017

(2)

RECONHECIMENTO DE INSTÂNCIAS GUIADO POR ALGORITMOS DE

ATENÇÃO VISUAL

Trabalho apresentado ao Programa de Pós-graduação em Ciência da Computação do Centro de Informática da Univer- sidade Federal de Pernambuco como requisito parcial para obtenção do grau de Doutor em Ciência da Computação.

Orientador: Carlos Alexandre Barros de Mello

Recife 2017

(3)

Catalogação na fonte

Bibliotecária Monick Raquel Silvestre da S. Portes, CRB4-1217

M582r Mesquita, Rafael Galvão de

Reconhecimento de instâncias guiado por algoritmos de atenção visual / Rafael Galvão de Mesquita. – 2017.

139 f.: il., fig., tab.

Orientador: Carlos Alexandre Barros de Mello.

Tese (Doutorado) – Universidade Federal de Pernambuco. CIn, Ciência da Computação, Recife, 2017.

Inclui referências.

1. Reconhecimento de padrão. 2. Processamento de imagens. I. Mello, Carlos Alexandre Barros de (orientador). II. Título.

006.4 CDD (23. ed.) UFPE- MEI 2017-81

(4)

Rafael Galvão Mesquita

Reconhecimento de Instâncias Guiado por Algoritmos de Atenção Visual

Tese de Doutorado apresentada ao Programa de Pós-Graduação em Ciência da Computação da Universidade Federal de Pernambuco, como requisito parcial para a obtenção do título de Doutor em Ciência da Computação

Aprovado em: 24/02/2017.

____________________________________________ Orientador: Prof. Dr. Carlos Alexandre Barros de Melo

BANCA EXAMINADORA

_____________________________________________ Profa. Dra. Judith Kelner

Centro de Informática / UFPE

______________________________________________ Profa. Dra. Veronica Teichrieb

Centro de Informática / UFPE

_____________________________________________ Prof. Dr. Tsang Ing Ren

Centro de Informática / UFPE

______________________________________________ Profa. Dra. Mylène Christine Queiroz de Farias

Departamento de Engenharia Elétrica / UnB

_____________________________________________ Prof. Dr. Wellington Pinheiro dos Santos

(5)
(6)

Agradeço primeiramente a Deus. Também gostaria de demonstrar meu reconhecimento e gratidão a pessoas que contribuíram, de alguma forma, para que a conclusão desta etapa tão importante na minha vida se tornasse possível.

À toda a minha família, particularmente aos meus pais, Ricardo Mesquita e Sylvia Mesquita, por todo o investimento, tempo e atenção dedicados à minha educação e formação básica. Às minhas tias Giselle Galvão e Noemia Mesquita e à minha avó Geny Ferraz, pelo apoio também na minha formação básica e pelo incentivo durante o Doutorado. À minha amada esposa, Juliana, pela paciência e apoio nos momentos de dificuldades.

Ao Prof. Dr. Carlos Alexandre Barros de Mello pela orientação de excelente qualidade, paciência e dedicação ao trabalho desenvolvido. Ao Prof. Dr. Wellington Pinheiro dos Santos, por ter sido um dos incentivadores da minha vida acadêmica, ao ter me orientado nos passos iniciais da minha vida científica, ainda na graduação. À Profa. Teresa Bernarda Ludermir, pelo apoio com infraestrutura, ao me ceder espaço físico e computador em seu laboratório. Agradeço também a todos os meus professores da graduação e pós-graduação pelos ensinamentos. Finalmente, e não com menos importância, agradeço aos meus professores dos tempos de colégio.

Aos Professores que compuseram a banca examinadora: Prof. Dra. Mylène Christine Queiroz de Farias (UNB), Prof. Dr. Wellington Pinheiro dos Santos (UFPE), Prof. Dr. Tsang Ing Ren (UFPE), Prof. Dra. Judith Kelner (UFPE) e Prof. Dra. Veronica Teichrieb (UFPE). Um agradecimento especial às duas últimas, e também à Prof. Dra. Denise Guliato, que compuseram a banca da qualificação desta Tese.

Ao programa de Pós-Graduação do Centro de Informática da Universidade de Federal de Pernambuco, pela oportunidade de desenvolver esta Tese.

(7)

Atenção visual é o processo pelo qual o cérebro humano prioriza e controla o processa-mento de estímulos visuais e é, dentre outras características do sistema visual, responsável pela forma rápida com que seres humanos interagem com o meio ambiente, mesmo considerando uma grande quantidade de informações a ser processada. A atenção visual pode ser direcionada pelo mecanismo bottom-up, em que estímulos de baixo nível da cena, como cor, guiam o foco atentivo para aquelas regiões mais salientes, ou seja, que se distinguam da sua vizinhança ou do restante da cena; ou pelo mecanismo top-down, em que fatores cognitivos, como expectativas do indivíduo ou o objetivo de concluir certa tarefa, definem a região de atenção. Esta Tese investiga o uso de algoritmos de atenção visual para guiar (e acelerar) a busca por objetos em imagens digitais. Inspirado no funcionamento do mecanismo bottom-up, um algoritmo de detecção de saliências baseado na estimativa do background da cena combinado com o resultado de um operador Laplaciano, denominado de BLS (Background Laplacian Saliency), é proposto. Além disso, uma modificação no detector/descritor de características locais SURF (Speeded-Up Robust Features), denominado de patch-based SURF, é desenvolvida para que o reconhecimento ocorra iterativamente em certos locais em foco da cena, ao invés de executar o modo clássico de reco-nhecimento (busca clássica), em que toda a cena é analisada de uma só vez. O modo de busca em que o patch-based SURF é aplicado e a ordem das regiões analisadas da imagem é definida por um algoritmo de detecção de saliência é referenciado como Busca Guiada por Mapa de Saliên-cia (BGMS). O BLS e outros nove algoritmos de detecção de saliênSaliên-cias são experimentados na BGMS. Resultados indicam, em média, uma redução para (i) 73% do tempo de processamento da busca clássica apenas pela aplicação do patch-based SURF em uma busca aleatória, (ii) e para 53% desse tempo quando a busca é guiada pelo BLS. Utilizando outros algoritmos de detecção de saliências do estado da arte, entre 55% e 133% do tempo da busca clássica são necessários para o reconhecimento. Além disso, inspirado pelo mecanismo top-down, é proposta a Busca Guiada por Características do Objeto (BGCO) por meio da priorização de descritores extraídos da cena em função da distância Hamming para os descritores de um determinado objeto alvo. A BGCO utiliza filtros de Bloom para representar vetores de características similares aos descritores do objeto buscado e possui complexidade de espaço e tempo constantes em relação ao número de elementos na base de descritores do alvo. Experimentos demonstram uma redução do tempo de processamento para 80% do tempo necessário quando a busca clássica é executada. Concluindo, a partir da integração entre a BGMS e a BGCO (BGMS+BGCO) é possível reduzir o tempo de execução da busca para 44% do tempo da busca clássica.

Palavras-chave: Busca visual. detecção de saliência. atenção visual. reconhecimento de objetos. detecção e descrição de características locais. matching.

(8)

Abstract

Visual attention is the process by which the human brain prioritizes and controls visual stimuli and it is, among other characteristics of the visual system, responsible for the fast way in which human beings interact with the environment, even considering a large amount of information to be processed. Visual attention can be driven by a bottom-up mechanism, in which low level stimuli of the analysed scene, like color, guides the focused region to salient regions (regions that are distinguished from its neighborhood or from the whole scene); or by a top-down mechanism, in which cognitive factors, like expectations or the goal of concluding certain task, define the attended location. This Thesis investigates the use of visual attention algorithms to guide (and to accelerate) the search for objects in digital images. Inspired by the bottom-up mechanism, a saliency detector based on the estimative of the scene’s background combined with the result of a Laplacian-based operator, referred as BLS (Background Laplacian Saliency), is proposed. Moreover, a modification in SURF (Speeded-Up Robust Features) local feature detector/descriptor, named as patch-based SURF, is designed so that the recognition occurs iteratively in each focused location of the scene, instead of performing the classical recognition (classic search), in which the whole scene is analysed at once. The search mode in which the patch-basedSURF is applied and the order of the regions of the image to be analysed is defined by a saliency detection algorithm is called BGMS. The BLS and nine other state-of-the-art saliency detection algorithms are experimented in the BGMS. Results indicate, in average, a reduction to (i) 73% of the classic search processing time just by applying patch-based SURF in a random search, (ii) and to 53% of this time when the search is guided by BLS. When using other state-of-the-art saliency detection algorithms, between 55% and 133% of the processing time of the classic search is needed to perform recognition. Moreover, inspired by the top-down mechanism, it is proposed the BGCO, in which the visual search occurs by prioritizing scene descriptors according to its Hamming distance to the descriptors of a given target object. The BGCO uses Bloom filters to represent feature vectors that are similar to the descriptors of the searched object and it has constant space and time complexity in relation to the number of elements in the set of the descriptors of the target. Experiments showed a reduction in the processing time to 80% of the required time when the classic search is performed. Finally, by using the BGMS and the BGCO in an integrated way, the processing time of the search was reduced to 44% of the execution time required by the classic search.

Keywords: Visual search. saliency detection. visual attention. object recognition. local feature detectors/descriptors. matching.

(9)

1.1 Características de baixo nível presentes na cena influenciam na interação visual com o ambiente por meio do mecanismo bottom-up. Em (a), (b) e (c) os elementos com cores diferentes dos demais atraem a atenção visual. . . 23 1.2 Ilustração das etapas do reconhecimento de objetos. Em (a) e (b), pontos vermelhos

exibem os keypoints detectados; em (b), a região em amarelo ilustra a vizinhança de um keypoint utilizada para extrair seu descritor; em (c), as correspondências realizadas entre descritores das duas imagens são apresentadas . . . 25 1.3 Detecção de saliência em imagens de cenas naturais. A primeira coluna exibe as

ima-gens de entrada, enquanto que as restantes apresentam o mapa de saliências gerado por diferentes algoritmos (da esquerda para a direita: (CHENG; MITRA; HUANG;

TORR; HU,2015), (PERAZZI; KRAHENBUHL; PRITCH; HORNUNG,2012),

(HOU; HAREL; KOCH,2012), (ACHANTA; HEMAMI; ESTRADA; SüSSTRUNK,

2009)). . . 26 1.4 Divisão dos tipos de problemas envolvendo reconhecimento de objetos. . . 29 1.5 Exemplos de variações em imagens com as quais um algoritmo de reconhecimento

de instâncias deve lidar. A primeira coluna exibe a imagem de referência e a segunda a imagem alvo em que o objeto deve ser buscado. Na primeira linha podemos ver diferenças de ponto de vista e escala, a segunda apresenta um exemplo de oclusão, enquanto que a terceira exemplifica o efeito de diferença de iluminação. Imagens retiradas de (ROTHGANGER; LAZEBNIK; SCHMID; PONCE,2006) e

(MIKOLAJCZYK; TUYTELAARS; SCHMID; ZISSERMAN; MATAS;

SCHAF-FALITZKY; KADIR; GOOL,2005) . . . 30

2.1 Par de diferentes imagens de um mesmo objeto, com três regiões destacadas. A região retangular na cor vermelha possibilita que imagem seja reconhecida com maior acurácia do que as regiões em amarelo e em verde. Figura adaptada de

(10)

direita, circulares. Em ambas as imagens é possível notar diferenças de escala (re-presentada por pelo tamanho de cada região) e de orientação (retratada por uma reta partindo do centro de cada região). Figura adaptada de (BAY; ESS; TUYTELAARS;

VAN GOOL,2008;LEUTENEGGER; CHLI; SIEGWART,2011). . . 33

2.3 Descritores são utilizados para buscar regiões semelhantes em uma base de dados ou em uma imagem de referência. Figura adaptada de (MIKOLAJCZYK; SCHMID,

2004). . . 33 2.4 Passos básicos do SIFT. . . 35 2.5 Representação de uma imagem em pirâmide: imagem é filtrada e redimensionada,

repetidamente. . . 35 2.6 Espaço-escala utilizado pelo SIFT. Figura adaptada de

http://aishack.in/tutorials/sift-scale-invariant-feature-transform-scale-space/. . . 36 2.7 DoG construída à partir do espaço-escala, em que imagens de escalas adjacentes são

subtraídas. Figura adaptada de (LOWE,2004). . . 37 2.8 Máximos e mínimos da diferença das Gaussianas são detectados pela comparação

de um pixel (marcado com um X) com todos os seus vizinhos (marcados com um círculo verde) na escala atual e em escalas adjacentes. Figura adaptada de (LOWE,

2004). . . 38 2.9 Atribuição de orientação utilizada no SIFT. O grid à esquerda ilustra a magnitude e a

orientação de cada ponto amostrado na região vizinha de um keypoint, enquanto que o grid do lado direito exemplifica a janela Gaussiana (simbolizada pela cor amarela) utilizada para atribuir maior peso a locais mais próximos do ponto analisado. No centro, é possível ver o histograma de orientação, que resulta na detecção de um keypointde orientação igual a 50◦(maior pico) e na adição de mais um keypoint de orientação 90◦(pico maior que 80% do maior pico) . . . 39 2.10 Em (a) é possível ver a ilustração de magnitudes e orientações de gradientes

cal-culados dentro da vizinhança de um ponto, pesados por uma função Gaussiana (representada pelo círculo azul). Em (b) são ilustrados os histogramas de 8 graus de regiões 2 × 2 ao redor do ponto central. Em (c), o descritor construído é ilustrado, em que a região destacada em vermelho corresponde ao quadro destacado em vermelho em (b). Neste exemplo 2 × 2 sub-regiões são utilizadas, enquanto que (LOWE,2004) sugere o uso de 4 × 4 sub-regiões. Figura adaptada de (LOWE,2004). . . 39 2.11 Aproximação da derivada parcial de segunda ordem da função Gaussiana por filtros

box. Figura adaptada de (BAY; ESS; TUYTELAARS; VAN GOOL,2008). . . 40 2.12 Uso de imagens integrais para calcular áreas de regiões retangulares em imagens.

Fi-gura adaptada de https://computersciencesource.wordpress.com/2010/09/03/computer-vision-the-integral-image/. . . 41

(11)

orientação de cada keypoint utilizando respostas de wavelets de Haar nas coordenadas xe y. Figura adaptada de (BAY; ESS; TUYTELAARS; VAN GOOL,2008). . . 42 2.14 ∑ dx, ∑ dy, ∑ |dx| e ∑ |dy| são computados de 4 × 4 sub-regiões e concatenados para

formar um descritor de tamanho 64. Em cada sub-região, dx, dy, |dx| e |dy| são extraídos de 5 × 5 pontos regularmente espaçados. Figura retirada de (JANG; PARK,

2015). . . 43 2.15 Ilustração do poder de discriminação do descritor do SURF e sua relação com dx, dy,

|dx| e |dy|: Caso a região seja homogênea, todos os valores são baixos (esquerda); na presença de altas frequências na direção x, ∑ |dx| é alto, mas ∑ dx não (centro); Se a intensidade cresce gradualmente na direção x, ∑ |dx| e ∑ dxsão altos (direita). Figura retirada de (BAY; ESS; TUYTELAARS; VAN GOOL,2008). . . 43 2.16 Comparação entre representação de múltiplas escalas utilizando filtragem Gaussiana

(a) e filtro de difusão não linear (b). É possível notar que em (b), à medida que a escala aumenta os detalhes da imagens são reduzidos, porém, as fronteiras entre os objetos tendem a ser preservadas. . . 44 2.17 Construção do descritor utilizado pelo AKAZE. Imagem adaptada de (YANG;

CHENG,2012) e (ALCANTARILLA; NUEVO; BARTOLI,2013) . . . 46

2.18 Técnica de matching utilizada pelo Nearest Neighbour Distance Ratio (NNDR) comparada com as estratégias de limiar fixo e vizinho mais próximo. Figura retirada

de (SZELISKI,2010) . . . 47

2.19 Conjunto de transformações 2D. Adaptada de (SZELISKI,2010) . . . 48 2.20 critério do Symmetric Transfer Error (STE) utilizado para avaliar a homografia

estimada. x e x0são os pontos de referência nas duas imagens, enquanto que H−1x0 e Hx são suas projeções, respectivamente, a partir da homografia estimada. o STE é calculado com base nas distâncias entre x e H−1x0(d) e x0e Hx (d0). Adaptada de

(HARTLEY; ZISSERMAN,2004) . . . 50

2.21 Inserção e verificação de elementos em um filtro de Bloom . . . 51 3.1 Visão geral do método proposto em (ITTI; KOCH; NIEBUR,1998). Figura adaptada

de (ITTI; KOCH; NIEBUR,1998). . . 55

3.2 Na primeira coluna, imagens da base de dados PASCAL são exibidas, enquanto que a segunda e terceira colunas apresentam os mapas de saliência gerados pelos algoritmos GC e SF, respectivamente. A quarta coluna mostra o padrão ouro da base PASCAL para cada uma das imagens. . . 59 3.3 Na primeira coluna, imagens da base de dados PASCAL são exibidas, enquanto que

a segunda coluna apresenta os mapas de saliência gerados pelos algoritmo Signature Saliency(SIG). A terceira coluna mostra o padrão ouro da base PASCAL para cada uma das imagens. . . 62

(12)

absorventes da cadeia de Markov. . . 63 3.5 UVAM (Unified Visual Attention Model). Figura adaptada de (LEE; KIM; KIM;

KIM; YOO,2010). . . 68

4.1 Processo de construção do Distance Transform Global Saliency (DTGS). . . 71 4.2 Ilustração do mapa de saliências global proposto (DTGS). Como pode ser percebido,

a região do background em (d) é menos saliente do que em (c). O modelo de cores RGB é utilizado na imagem (a) apenas com fins de visualização . . . 72 4.3 Proposta de detecção de saliência local baseada no Laplaciano. Em (c-e) os

resulta-dos da filtragem Laplaciana nos canais L,A e B são exibiresulta-dos. O mapa de saliências final (f) é obtido pela média entre (c), (d) e (e) filtrada com uma Gaussiana. . . 74 4.4 Na primeira linha dois exemplos de imagens de entrada são exibidos. A segunda

e terceira linhas apresentam os resultados gerados por DTGS e Laplacian Sali-ency(LS), respectivamente. Os mapa de saliências final (Background Laplacian Saliency(BLS)) e o padrão ouro de cada exemplo aparecem na quarta e quinta linhas, respectivamente. . . 75 4.5 Exemplo de busca por ponto de máximo local. As linhas verdes representam a

divisão da imagem de entrada; o ponto vermelho destaca o local avaliado e a grade vermelha representa sua vizinhança 3D (com escalas adjacentes na pirâmide gaussiana omitidas) considerada na busca por máximo local na aplicação do Speeded Up Robust Features(SURF). Os determinantes da matriz Hessiana dos oito vizinhos da região marcada com a letra ’Z’ devem ter sido calculados para garantir que as regiões marcadas de amarelo sejam corretamente consideradas na definição de máximos locais. . . 76 4.6 O grid verde em cada figura representa a vizinhança considerada em cada iteração

do algoritmo (parte da região 3x3 encontra-se fora da imagem). Neste exemplo, a região 3 é visitada imediatamente após a região 5, de acordo com o valor de saliência de cada região. Depois de processar a região 3, a região 6 é analisada e o alvo é detectado com base em keypoints encontrados nas regiões 3, 5 e 6. Em (c) é exibido a correspondência final realizada entre a cena e o objeto. Imagens do Object Recognition Database, do grupo PONCE (ROTHGANGER; LAZEBNIK;

SCHMID; PONCE,2006) são utilizadas neste exemplo. . . 78

4.7 Visão geral da BGMS. Inicialmente, o mapa de saliência é computado e a imagem é subdividida em regiões, que são ordenadas em ordem decrescente de saliência. Em seguida, iterativamente, a região de maior saliência que ainda não tenha sido visitada é selecionada para ser analisada em busca do objeto alvo até que o objeto buscado seja encontrado ou até toda a cena seja analisada. . . 79

(13)

binárias de apenas 5 bits são mostradas neste exemplo por fim de simplificação . . 81 4.9 Comparação entre a quantidade de vizinhos de um descritor binário para um de

elementos inteiros. Distância máxima dmax = 3 é considerada neste exemplo. . . . 83 4.10 Espaço em memória ocupado por todos os descritores vizinhos de cada objeto da

base PONCE, considerando todas as suas variações de ponto de vista, para um descritor de 64 bits . . . 84 4.11 Ilustração da BGCO. . . 86 4.12 Visão geral da integração entre a BGMS e a BGCO. . . 89 5.1 Exemplos de imagens da base de dados PONCE (ROTHGANGER; LAZEBNIK;

SCHMID; PONCE,2006). Na coluna do lado esquerdo podemos ver diferentes

variações de pose de um mesmo objeto da base. A coluna do lado direito exibe diferentes imagens de teste, onde mais de um objeto da base podem estar presentes. 91 5.2 Exemplos de poses de objetos da base de dados PONCE (ROTHGANGER;

LAZEB-NIK; SCHMID; PONCE,2006). . . 92

5.3 Tempo médio de processamento obtido na busca pelos objetos 02, 03 e 04 da base PONCE. Valor do limiar da matriz Hessiana configurado para 400. . . 100 5.4 Tempo médio de processamento obtido na busca pelos objetos 05, 06, 07 e 08 da

base PONCE. Valor do limiar da matriz Hessiana configurado para 400. . . 101 5.5 Ranking do tempo de execução da BGMS utilizando cada um dos detectores de

saliência. Cada ponto representa o ranking médio de cada método, dentre as 5 execuções para cada um dos 7 objetos da base. Os limites acima e abaixo do ponto médio representam o valor médio com o acréscimo e decréscimo, respectivamente, da diferença crítica CD ≈ 6, 3. Como pode ser notado, o valor médio obtido com o BLS acrescido de CD é inferior ao ranking médio de todos os métodos comparados, exceto RC e GC, o que mostra sua superioridade estatística em relação aos métodos em questão. . . 102 5.6 Diferença do tempo médio de processamento entre a busca clássica e a a BGMS

utilizando o BLS, para cada uma das 51 imagens de teste da base PONCE. Valores positivos indicam que a BGMS(BLS) foi mais rápida do que a busca clássica, enquanto que valores negativos indicam o oposto. . . 104 5.7 As linhas em vermelho, verde e azul apresentam a quantidade de matches retidos

para o primeiro, segundo e terceiro octavos, respectivamente, em função de cada limiar utilizado entre 0 e 255. Os simbolos ∗ e ◦ destacam o número de matches para os limiares que retem 99% ([th1,th2,th3] = [33, 39, 61]) e 90% ([th1,th2,th3] = [62, 64, 81]), respectivamente, do número total de matches em cada octavo . . . 105

(14)

5.9 Curva ROC utilizando a base de dados PASCAL-S. Linhas pontilhadas indicam métodos que incluem viés para o centro da imagem. . . 109 5.10 Exemplos de mapas de saliência. Na primeira linha, imagens da base PASCAL-S

(primeira, segunda e terceira colunas) e PONCE (quarta, quinta e sexta colunas) são exibidas. Nas linhas 2 a 9, os mapas de saliência gerados pelos algoritmos BLS, SIG, GC, RC, HC, FT, SF e MC são apresentados. . . 110 5.11 Tempos médios de processamento da fase de matching da BGCO. . . 113 5.12 Correspondências realizadas, usando keypoints do AKAZE, entre os objetos buscados

e as imagens de teste. As linhas 1 e 3 exibem resultados da busca clássica, enquanto que as linhas 2 e 4 mostram as correspondências realizadas na busca top-down proposta.114 5.13 Correspondências realizadas, usando keypoints do AKAZE, entre os objetos buscados

e as imagens de teste. As linhas 1 e 3 exibem resultados da busca clássica, enquanto que as linhas 2 e 4 mostram as correspondências realizadas na busca top-down proposta.115 5.14 Tempo de processamento médio da busca exaustiva utilizando os dois mecanismos

de busca proposto, e a integração entre eles . . . 117 5.15 Ranking do tempo de execução da BGMS, BGCO e BGMS+BGCO, considerando

apenas situações de buscas exaustivas . . . 120 5.16 Tempo de processamento médio da BGMS+BGCO e do UVAM (R.P.) . . . 121 5.17 Tempo de processamento médio da busca não-exaustiva utilizando os dois

mecanis-mos de busca proposto, e a integração entre eles . . . 123 5.18 Ranking do tempo de execução da BGMS, BGCO e BGMS+BGCO, considerando

(15)

Lista de Tabelas

2.1 Características e hierarquia de transformações 2D. A quarta coluna é cumulativa, no sentido de que cada tipo de transformação também preserva todas as propriedades preservadas pelas transformações listadas nas linhas debaixo (por exemplo, a trans-formação Euclidiana preserva o tamanho, mas também ângulos, paralelismo e linhas retas). . . 48 3.1 Métodos de detecção de saliência. . . 55 4.1 Espaço em memória ocupado por (i) filtros de Bloom representando todos os vizinhos

de descritores binários e (ii) todos os vizinhos de descritores inteiros. Neste exemplo, são considerados vizinhos de distância máxima dmax = 3, o que faz com que 357889 descritores vizinhos sejam considerados para cada descritor exato do objeto em questão. Cada descritor é composto por 64 elementos (valores binários ou inteiros). Cada linha apresenta os valores obtidos para cada objeto da base PONCE, utilizada nos experimentos desta Tese. . . 82 4.2 Acurácia no reconhecimento utilizando os descritores originais do SURF,

utili-zando distância Euclidiana na fase de matching, e a base de objetos proposta em

(MIKOLAJCZYK; SCHMID,2005). . . 88

4.3 Acurácia no reconhecimento utilizando os descritores do SURF convertidos para binário, utilizando distância de Hamming na fase de matching, e a base de objetos proposta em (MIKOLAJCZYK; SCHMID,2005). . . 88 5.1 Características de cada objeto da base PONCE são exibidas. A segunda coluna

mostra as imagens de teste em que cada objeto está presente, enquanto que a terceira coluna apresenta o tamanho dos descritores utilizados pelo SURF utilizando um limiar do determinante da matriz Hessiana igual a 400. Na quarta coluna o número de pontos de vista é exibido. . . 93 5.2 Taxa de reconhecimento da BGMS utilizando diferentes mapas de saliência e o objeto

02. Valores de verdadeiro positivo (TP), falso positivo (FP), verdadeiro negativo (TN), falso negativo (FN) e FMeasure (FM) são apresentados. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em negrito. . . 95

(16)

(TN), falso negativo (FN) e FMeasure (FM) são apresentados. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em negrito. . . 95 5.4 Taxa de reconhecimento da BGMS utilizando diferentes mapas de saliência e o objeto

04. Valores de verdadeiro positivo (TP), falso positivo (FP), verdadeiro negativo (TN), falso negativo (FN) e FMeasure (FM) são apresentados. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em negrito. . . 96 5.5 Taxa de reconhecimento da BGMS utilizando diferentes mapas de saliência e o objeto

05. Valores de verdadeiro positivo (TP), falso positivo (FP), verdadeiro negativo (TN), falso negativo (FN) e FMeasure (FM) são apresentados. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em negrito. . . 96 5.6 Taxa de reconhecimento da BGMS utilizando diferentes mapas de saliência e o objeto

06. Valores de verdadeiro positivo (TP), falso positivo (FP), verdadeiro negativo (TN), falso negativo (FN) e FMeasure (FM) são apresentados. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em negrito. . . 97 5.7 Taxa de reconhecimento da BGMS utilizando diferentes mapas de saliência e o objeto

07. Valores de verdadeiro positivo (TP), falso positivo (FP), verdadeiro negativo (TN), falso negativo (FN) e FMeasure (FM) são apresentados. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em negrito. . . 97 5.8 Taxa de reconhecimento da BGMS utilizando diferentes mapas de saliência e o objeto

08. Valores de verdadeiro positivo (TP), falso positivo (FP), verdadeiro negativo (TN), falso negativo (FN) e FMeasure (FM) são apresentados. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em negrito. . . 98 5.9 Média do percentual do tempo de processamento da busca clássica necessário para o

reconhecimento, utilizando o patch-based SURF guiado por mapas de saliência ou pela busca aleatória. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em negrito. . . 100 5.10 Média do percentual do tempo de processamento da busca clássica necessário para o

reconhecimento, utilizando o patch-based SURF guiado por mapas de saliência ou pela busca aleatória. Tempo para geração de cada mapa de saliência desconsiderado. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em negrito. . . 101 5.11 Tempos médios de processamento dos algoritmos de saliência considerados na base

PONCE. . . 102 5.12 Tempo de processamento (em segundos) da busca clássica e da BGMS guiada por

mapas de saliência. Conjunto de valores de limiares que retém 99% dos matches é utilizado por cada algoritmo de saliência para descartar octavos. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em vermelho. . . 106

(17)

de saliência para descartar octavos. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em vermelho. . . 106 5.14 Tempo de processamento (em segundos) da busca clássica e da BGMS guiada por

mapas de saliência. Conjunto de valores de limiares que retém 90% dos matches é utilizado por cada algoritmo de saliência para descartar octavos. Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em vermelho. . . 107 5.15 FMeasure obtido pela busca clássica e pela proposta de busca visual. Conjunto

de valores de limiares que retém 90% dos matches é utilizado por cada algoritmo de saliência para descartar octavos.Os resultados da BGMS utilizando o mapa de saliência BLS são apresentados em vermelho. . . 107 5.16 Percentual do tempo médio de processamento da fase de matching da busca clássica

executado pela BGCO utilizando o detector/descritor AKAZE . . . 112 5.17 Tempos médios de processamento da fase de atenção da BGCO, probabilidade de

falsos positivos nos filtros de Bloom, percentual de descritores da cena selecionados na etapa de atenção e valores de FMeasure obtidos no reconhecimento utilizando o AKAZE. . . 113 5.18 Percentual do tempo médio de processamento da busca clássica exaustiva executado

pela BGMS e BGCO utilizando o detector/descritor SURF . . . 116 5.19 Número médio de regiões em que as etapas de detecção (segunda coluna) e descrição

(terceira coluna) são executadas e quantidade média de descritores utilizados na etapa de matching (quarta coluna) . . . 118 5.20 Comparação estatística entre os tempos de execução de cada modo de busca. Na

coluna da esquerda são exibidos os modos de busca apresentados em ordem crescente de tempo de execução, enquanto que a coluna da direita exibe o maior valor de p-valueobtido a partir do teste de Wilcoxon com os métodos apresentados nas linhas inferiores . . . 119 5.21 Percentual do tempo médio de processamento da busca clássica executado pela

BGMS e BGCO, considerando a busca não exaustiva. SURF utilizado como detector e descritor de características . . . 122 5.22 Comparação estatística entre os tempos de execução de cada modo de busca. Na

coluna da esquerda são exibidos os modos de busca apresentados em ordem crescente de tempo de execução, enquanto que a coluna da direita exibe o maior valor de p-valueobtido a partir do teste de Wilcoxon com os métodos apresentados nas linhas inferiores . . . 123 5.23 Acurácia da BGMS, BGCO e BGMS+BGCO na forma de busca não exaustiva, para

o objeto 02. Para cada cada método, valores de T P, FP, T N, FN e FMeasure são exibidos . . . 123

(18)

exibidos . . . 124 5.25 Acurácia da BGMS, BGCO e BGMS+BGCO na forma de busca não exaustiva, para

o objeto 04. Para cada cada método, valores de T P, FP, T N, FN e FMeasure são exibidos . . . 125 5.26 Acurácia da BGMS, BGCO e BGMS+BGCO na forma de busca não exaustiva, para

o objeto 05. Para cada cada método, valores de T P, FP, T N, FN e FMeasure são exibidos . . . 125 5.27 Acurácia da BGMS, BGCO e BGMS+BGCO na forma de busca não exaustiva, para

o objeto 06. Para cada cada método, valores de T P, FP, T N, FN e FMeasure são exibidos . . . 125 5.28 Acurácia da BGMS, BGCO e BGMS+BGCO na forma de busca não exaustiva, para

o objeto 07. Para cada cada método, valores de T P, FP, T N, FN e FMeasure são exibidos . . . 125 5.29 Acurácia da BGMS, BGCO e BGMS+BGCO na forma de busca não exaustiva, para

o objeto 08. Para cada cada método, valores de T P, FP, T N, FN e FMeasure são exibidos . . . 126

(19)

SVH Sistema Visual Humano . . . 21

NNDR Nearest Neighbour Distance Ratio. . . 45

SURF Speeded Up Robust Features. . . 39

SIFT Scale Invariant Feature Transform. . . 28

RANSAC Random Sample Consensus. . . 49

STE Symmetric Transfer Error. . . 49

SIFT Scale Invariant Feature Transform. . . 28

DoG Difference of Gaussians. . . 34

LS Laplacian Saliency. . . 73

BLS Background Laplacian Saliency . . . 73

SIG Signature Saliency. . . 61

RC Region Contrast Saliency . . . 60

GC Global Contrast Saliency. . . 58

HC Histogram Contrast Saliency. . . 60

MC Markov Chain Saliency. . . 62

FT Frequency Tuned Saliency. . . 57

SF Saliency Filters. . . 58

BGMS Busca Guiada por Mapa de Saliência . . . 24

BGCO Busca Guiada por Características do Objeto . . . 26

LDB Local Difference Binary . . . 45

GBVS Graph-Based Visual Saliency. . . 57

(20)

1 INTRODUÇÃO ... 21 1.1 MOTIVAÇÃO ... 21 1.2 OBJETIVOS ... 29 1.2.1 Objetivos específicos ... 31 1.3 ESTRUTURA DA TESE ... 31 2 CONCEITOS BÁSICOS ... 32 2.1 RECONHECIMENTO DE INSTÂNCIAS ... 32

2.1.1 Detectores e descritores de características locais ... 34

2.1.1.1 SIFT ... 34

2.1.1.2 SURF ... 39

2.1.1.3 AKAZE . ... 43

2.1.2 Matching de descritores ... 45

2.2 VISÃO COMPUTACIONAL GEOMÉTRICA APLICADA AO RECONHECIMENTO DE INSTÂNCIAS 47 2.3 FILTRO DE BLOOM ... 50

3 ESTADO DA ARTE ... 54

3.1 ATENÇÃO VISUAL BOTTOM-UP ... 54

3.1.1 Itti-koch-niebur ... 54 3.1.2 Achanta ... 57 3.1.3 Perazzi... 58 3.1.4 Cheng ... 60 3.1.5 Hou ... 61 3.1.6 Jiang ... 62

3.2 ATENÇÃO VISUAL TOP-DOWN ... 65

3.2.1 Tilke ... 65

3.2.2 Liu ... 66

3.3 INTEGRAÇÃO ENTRE DETECÇÃO DE SALIÊNCIA E RECONHECIMENTO DE INSTÂNCIAS ... 66

(21)

4 NOVOS MÉTODOS DE BUSCA VISUAL ... 70

4.1 CONSTRUÇÃO DO MAPA DE SALIÊNCIA ... 70

4.1.1 Saliência global baseado no background da cena ... 70

4.1.2 Saliência local baseado na filtragem laplaciana ... 71

4.1.3 Combinação entre a saliência global e local ... 73

4.2 BUSCA GUIADA POR MAPA DE SALIÊNCIA (BGMS) ... 73

4.2.1 Patch-based SURF ... 73

4.2.2 Matching ... 77

4.2.3 Redução do número de octavos utilizados no SURF... 80

4.3 BUSCA GUIADA PELAS CARACTERÍSTICAS DO OBJETO (BGCO) ... 80

4.3.1 Treinamento ... 80

4.3.2 Teste ... 82

4.4 INTEGRAÇÃO ENTRE A BUSCA GUIADA POR MAPA DE SALIÊNCIA E A BUSCA GUIADA POR CARACTERÍSTICAS DO OBJETO ... 85

5 EXPERIMENTOS ... 90

5.1 AVALIAÇÃO DA BUSCA GUIADA POR MAPA DE SALIÊNCIA (BGMS) ... 93

5.1.1 Avaliação considerando a presença do objeto buscado ... 94

5.1.2 Avaliação considerando situações em que o objeto pode estar presente ou não ... 99

5.1.3 Segmentação utilizando limiar fixo e exemplos de mapas de saliência ...108

5.2 AVALIAÇÃO DA BUSCA GUIADA POR CARACTERÍSTICAS DO OBJETO (BGCO) ...109

5.3 AVALIAÇÃO DA INTEGRAÇÃO ENTRE A BGMS E A BGCO ...112

5.3.1 Busca exaustiva ...116

5.3.2 Busca não exaustiva ...122

6 CONCLUSÃO ...127

6.1 CONTRIBUIÇÕES ...128

6.2 TRABALHOS FUTUROS ...131

(22)

1

INTRODUÇÃO

1.1

MOTIVAÇÃO

O cérebro humano trata, a cada momento, com uma enorme quantidade de estímulos sensoriais recebidos visualmente ou por meio de outros sentidos. Além disso, o problema de tratar uma grande quantidade de informação recebida torna-se ainda mais complexo quando consideramos o fato de que, para que os objetos presentes em um dado instante de tempo em uma cena sejam reconhecidos, cada componente de um determinado estímulo deva ser comparado com uma enorme variação de objetos conhecidos armazenados em memória (TSOTSOS,2011). Apesar disso, os seres humanos, assim como outros animais, são capazes de interagir visualmente com o meio ambiente na maioria das situações cotidianas. Tal capacidade é necessária para a percepção do meio em que vivemos e, consequentemente, de fundamental importância para os seres humanos desde os primórdios; inclusive, por questões de sobrevivência.

Uma das características que possibilitam o bom funcionamento do Sistema Visual Humano (SVH) ao interpretar cenas, mesmo com a necessidade de processar uma grande quantidade de informação, é o mecanismo atentivo: por meio da Atenção, o SVH é capaz de focar a análise em certas regiões que são, de alguma forma, eleitas como importantes. Ao mesmo tempo, regiões menos importantes não são percebidas em detalhes mas, por outro lado, não são completamente descartadas. Após o término da análise da região em destaque, outro local da cena pode ser selecionado para ser processado e esse procedimento prossegue iterativamente até que um critério de parada seja atingido (i.e., até que um determinado objeto buscado seja encontrado, até que toda a cena seja processada ou até que um limite máximo de tempo seja alcançado). É importante frisar também o papel de outras características do SVH para explicar o seu bom funcionamento, como o uso de visão estereoscópica para percepção de profundidade, percepção de cores, além do seu grande poder de generalização.

Embora existam opiniões distintas na literatura quanto ao significado exato de Atenção, esta Tese se baseia em uma das mais antigas e conhecidas definições, estabelecida por William James em 1890 (ITTI; REES; TSOTSOS,2005), que diz: "Everyone knows what attention is. It is the taking possession by the mind, in clear and vivid form, of one out of what seem several

(23)

simultaneously possible objects or trains of thought". Outra definição para atenção que vai ao encontro da definição de William James é a utilizada por (TSOTSOS,2011), que diz que "Attention is the process by which the brain controls and tunes information processing". Ou seja, dentro do contexto deste trabalho a Atenção é entendida como o processo pelo qual o cérebro prioriza os estímulos recebidos. Quando tais estímulos são visuais esse conceito é reduzido à Atenção Visual. Uma analogia comumente utilizada para explicar o significado de atenção visual consiste em compará-la a um holofote que ilumina parte de uma cena em um palco de teatro, destacando a região mais importante no momento, enquanto que regiões secundárias não são priorizadas, mas ainda podem ser percebidas com menos clareza.

Podemos destacar dois mecanismos que direcionam a atenção. No primeiro deles, denominado de bottom-up, as regiões de atenção são detectadas inconscientemente e derivam unicamente de características da cena, como intensidade, cor, contraste e movimento (LIU; 0001;

ZHENG; TANG; SHUM,2007). Essas características também são chamadas de características

de baixo nível, enquanto que a influência que elas exercem na definição da região em foco é chamada de estímulo de baixo nível. Por sua vez, os locais priorizados pelos estímulos são chamados de salientes e, para que isso aconteça, idealmente, a característica responsável pela definição da região de atenção deve se distinguir da mesma característica nas demais regiões da cena. Esse processo independe de fatores cognitivos do observador e, por isso, o mecanismo bottom-upé qualificados como exógeno ou automático. A Figura 1.1 ilustra situações em que a presença de características de baixo nível (cor, nesses exemplos) influencia na interação visual com o meio ambiente, acelerando (na maioria das situações cotidianas) a tarefa de busca visual. No segundo mecanismo, denominado top-down, a atenção é motivada por fatores cognitivos, também chamados de endógenos, como conhecimento, expectativas do indivíduo, ou pela tarefa de buscar um objeto específico (TSOTSOS,2011).

Assim como o cérebro humano, uma máquina também possui limitações em sua capaci-dade de processamento. Assim, de modo análogo ao SVH, um algoritmo de visão computacional que necessite interagir com um ambiente complexo em tempo real necessita, de alguma forma, reduzir ou, ao menos, priorizar as informações recebidas como entrada. Por exemplo, na área de reconhecimento de objetos, na qual esta Tese se aplica, tomando como base o trabalho desenvolvido por (LINDEBERG,1993,1998), o conceito de atenção visual vem sendo utilizado para focar a análise da cena em pontos de interesse (keypoints): estruturas do tipo blob, que são definidas como regiões claras que se distinguem de um background local escuro, ou o oposto, são localizadas em múltiplas escalas (etapa de detecção de keypoints). No entanto, para que a detecção de pontos de interesse ocorra, é necessária a construção da função espaço-escala (representação espacial da cena em múltiplos níveis de granularidade), seguida da localização de pontos extremos nessa mesma função, o que a torna esse processo computacionalmente custoso. Em seguida, um descritor de características é extraído da vizinhança de cada keypoint detectado (etapa de descrição de keypoints). Para que o reconhecimento seja realizado, os descritores ex-traídos da cena precisam ainda ser comparados com os descritores de uma imagem de referência

(24)

(a) Imagem retirada de (FRINTROP; ROME; CHRISTENSEN,2010)

(b)

(c) Imagem retirada de (LIU; YUAN; SUN; WANG;

ZHENG; TANG; SHUM,2011)

Figura 1.1: Características de baixo nível presentes na cena influenciam na interação visual com o ambiente por meio do mecanismo bottom-up. Em (a), (b) e (c) os elementos

(25)

(etapa de matching). A Figura 1.2 ilustra as 3 etapas mencionadas do reconhecimento de objetos. Apesar de a detecção de keypoints ser baseada no conceito de focar a atenção em pontos importantes, até que tais pontos sejam localizados o processo de detecção ocorre na imagem completa; além disso, as etapas de descrição e matching usualmente também consideram a análise dos keypoints detectados em toda a imagem de uma só vez. Nesta Tese se considera relevante que, previamente à detecção de keypoints, a imagem analisada seja subdividida em regiões e que essas sejam processadas separada e iterativamente, em ordem decrescente de importância. Caso após a análise de uma região o alvo seja detectado, a busca é encerrada e, em caso contrário, a região em foco é modificada para outro local ainda não processado. Consequentemente, caso um determinado objeto buscado esteja presente na cena, é possível reduzir o tempo de processamento das fases de detecção, descrição e matching.

Na área de visão computacional, uma das formas de se mensurar o grau de importância, ou atratividade, dos pixels de uma imagem se dá por meio de algoritmos de detecção de saliência. A saliência de um pixel/região de uma imagem é compreendida no contexto desta Tese como uma medida do seu grau de distinção em relação à sua vizinhança e/ou ao restante da cena. Tais algoritmos usualmente não utilizam informações prévias sobre o background da cena, ou sobre os objetos presentes nela e produzem, como resultado, uma imagem em tons de cinza, chamada de mapa de saliência, em que as regiões mais salientes são representadas por valores mais altos (ou seja, mais próximos do branco), enquanto que valores mais baixos (mais próximos do preto) indicam locais de menor saliência (ver Figura 1.3). Devido à capacidade de algoritmos de detecção de saliência de selecionar locais informativos da cena ao custo de um baixo tempo de processamento (BORJI; CHENG; JIANG; LI,2015), esta Tese utiliza mapas de saliências para definir a ordem de análise de cada região da cena em que as etapas de detecção, descrição e matching de keypoints são executadas para que um objeto alvo seja reconhecido. Esta Tese referencia esse modo de busca, em que um mapa de saliência define a ordem em que cada local da cena é utilizado como foco do processamento como Busca Guiada por Mapa de Saliência (BGMS). Vale ressaltar que a BGMS é inspirada no mecanismo bottom-up do SVH, já que a definição dos locais em foco na cena se dá exclusivamente pelas características da cena, sem influência de qualquer forma de conhecimento ou tarefa definida para o observador. Dessa forma, definimos a primeira hipótese a ser validada nesta Tese da seguinte forma:

 Hipótese 1: A busca visual por um objeto por meio da análise iterativa das regiões

da imagem, utilizando mapas de saliência como meio de definição da ordem de prioridade das regiões em foco, é realizada mais rapidamente do que a busca clássica, quando toda a cena é processada de uma vez.

Nesta Tese também é proposto um modo de busca baseado no funcionamento top-down do SVH, em que fatores inerentes ao observador, como o objetivo de concluir uma certa tarefa, definem os locais em foco na cena. Especificamente, são experimentadas situações em que a busca visual é guiada pelas características de um determinado objeto buscado na cena. Esse

(26)

(a) detecção

(b) descrição

(c) matching

Figura 1.2: Ilustração das etapas do reconhecimento de objetos. Em (a) e (b), pontos vermelhos exibem os keypoints detectados; em (b), a região em amarelo ilustra a

vizinhança de um keypoint utilizada para extrair seu descritor; em (c), as correspondências realizadas entre descritores das duas imagens são apresentadas

(27)

Figura 1.3: Detecção de saliência em imagens de cenas naturais. A primeira coluna exibe as imagens de entrada, enquanto que as restantes apresentam o mapa de saliências gerado

por diferentes algoritmos (da esquerda para a direita: (CHENG; MITRA; HUANG;

TORR; HU,2015), (PERAZZI; KRAHENBUHL; PRITCH; HORNUNG,2012), (HOU;

HAREL; KOCH,2012), (ACHANTA; HEMAMI; ESTRADA; SüSSTRUNK,2009)).

modo de busca é referenciado como Busca Guiada por Características do Objeto (BGCO). Além disso, é proposta a integração entre os modos de busca BGMS e BGCO. Assim, são definidas a segunda e a terceira hipóteses a serem experimentadas neste trabalho:

 Hipótese 2: A busca visual por um objeto por meio da priorização de descritores

da cena que se assemelhem aos descritores do objeto buscado é realizada mais rapidamente do que a busca clássica, quando a cena completa é processada de uma só vez;

 Hipótese 3: A partir da integração dos modos de busca BGMS e BGCO é possível

realizar uma busca ainda mais eficiente do que quando a busca é guiada por cada um dos dois modos de busca em separado.

As hipóteses de 1 a 3 estão relacionados à forma de busca exaustiva, em que, no pior caso, toda a cena será processada até que o objeto procurado seja detectado; para esses casos, é avaliado o quão adequado um certo algoritmo é para priorizar as regiões da cena a serem analisadas. No entanto, esta Tese também investiga o uso (i) do mapa de saliências da cena e (ii) das características do objeto buscado para (i) realizar uma busca mais rápida em locais de menor saliência e para (ii) desprezar descritores de características extraídos da cena que não se assemelhem aos descritores de características extraídos do objeto alvo da busca, respectivamente. Esse tipo de busca é referenciado como busca não-exaustiva, uma vez que, diferentemente da busca exaustiva, o processamento de parte da cena pode ser desconsiderado. Dessa forma, espera-se que, na busca não-exaustiva, seja possível realizar uma busca mais rápida mesmo nas situações em que o objeto buscado não esteja presente na cena. Com base nisso, a quarta e última hipótese a ser analisada neste trabalho é definida da seguinte forma:

 Hipótese 4: Independentemente da presença do objeto buscado na cena, a busca

visual é executada mais rapidamente (i) utilizando mapas de saliências para reduzir a complexidade da busca em locais menos salientes e (ii) descartando, da etapa de matching, descritores de características suficientemente distintos em relação aos descritores de características do objeto buscado;

(28)

Esta Tese se diferencia de trabalhos anteriores em diversos aspectos. Para o caso da BGMS, a maioria das propostas de integração de atenção visual com reconhecimento de objetos

((BONAIUTO; ITTI,2005), (LEE; KIM; KIM; KIM; YOO, 2010), (BI; BIAN; LIU; GAO,

2010), (YU; MANN; GOSINE, 2010), (THAKOOR; MARAT; NASIATKA; MCINTOSH;

SAHIN; TANGUAY; WEILAND; ITTI,2013), (LI; ITTI,2011), (FILIPE; ITTI; ALEXANDRE,

2015)) é baseada no método de detecção de saliências apresentado em (ITTI; KOCH; NIEBUR,

1998), ou em suas variantes. Neste trabalho, por outro lado, além de diversos algoritmos de detecção de saliências serem analisados na tarefa de guiar a busca visual, um novo algoritmo de detecção de saliências, que se diferencia dos algoritmos já existentes por combinar saliência global e local, é proposto. Os detectores de saliência são avaliados neste trabalho de forma a considerar seu tempo de processamento, sua capacidade de priorizar os locais da busca (ou seja, de definir a melhor ordem de visitação das regiões da cena) e sua capacidade de reduzir a complexidade da busca (ou seja, reduzir o nível de detalhe e, consequentemente, o tempo de processamento necessário em cada local da cena). Além disso, no que se refere ao processo de reconhecimento, este trabalho se diferencia de outras propostas já existentes na literatura ao propor uma modificação na etapa de detecção de keypoints do algoritmo SURF, que permite que cada região da cena seja analisada em diferentes iterações, ao invés de processar toda a cena de uma só vez, possibilitando ganhos de tempo nas etapas de detecção, descrição e matching de keypoints.

No que se refere à BGCO, também é possível destacar diferenças entre a abordagem desta Tese e outras propostas da literatura. Uma característica comum de propostas baseadas na atenção visual top-down é que essas são comumente guiadas por características de certos objetos específicos, como faces, carros e pessoas (BORJI,2012;TILKE; EHINGER; DURAND;

TORRALBA,2009)), baseado no fato de que tais elementos normalmente atraem a atenção

humana. No entanto, em situações onde os objetos assumidos como atrativos não correspondam ao alvo, essa abordagem torna-se inefetiva, principalmente caso instâncias do objeto atrativo estejam presentes na cena. Nesse caso, essas instâncias atuam como distratores, prejudicando a busca. Além disso, essa abordagem é considerada menos expansível e mais complexa de ser definida (AND; CHENG; JIANG; LI,2014;LIU; JIAN; ZHU; CAO; LI,2015;XUE; WANG;

MA; WANG; NAM, 2015), já que ela requerer um reconhecedor específico para cada tipo

de objeto assumido como atrativo ( por exemplo, as características de faces não deveriam ser utilizadas para direcionar atenção para regiões de texto). Dentre outros problemas comuns de métodos baseados em conceitos top-down, podemos citar o fato de possuírem alto tempo de processamento (inclusive sendo mais lentos que a maioria dos detectores/descritores de características locais, como o algoritmo proposto por (LIU; HAN; ZHANG; WEN; LIU,2015)). O mecanismo de BGCO proposto nesta Tese possui como vantagens os pontos fracos comuns das propostas previamente citadas: o algoritmo proposto (i) pode ser facilmente aplicado a diferentes objetos-alvo, sem a necessidade da criação de um detector específico e (ii) adiciona apenas uma pequena sobrecarga de tempo de execução, se comparado ao tempo de execução do

(29)

restante do processo de reconhecimento.

As quatro hipóteses levantadas são analisadas na tarefa de reconhecimento de instâncias, que se caracteriza como um caso específico de reconhecimento de objetos. Embora não exista na literatura um consenso sobre questões de nomenclatura (como pode ser notado em algumas publicações (CSURKA; DANCE; FAN; WILLAMOWSKI; BRAY,2004), (SZELISKI,2010), (LOWE,2004)), os problemas envolvendo reconhecimento de objetos podem ser subdivididos da seguinte forma (SZELISKI,2010):

 Reconhecimento de instâncias: Objetiva-se encontrar em uma cena uma instância

rígida de um objeto. O termo instância refere-se à diferentes versões de imagens de um mesmo objeto, em que seu tamanho, pose, orientação e outras características possam variar;

 Detecção de objetos: Caso se queira detectar um objeto específico, mas não apenas

uma instância rígida deste. Ou seja, podem existir certas variações nas características do objeto (ex: deseja-se detectar faces, mas não apenas uma face específica);

 Reconhecimento de classe (ou categoria): Situação em que se deseja reconhecer

diferentes instâncias com um alto nível de variação e categorizá-las como pertencentes a uma mesma classe (ex: reconhecimento de pessoas, carros ou animais);

A Figura 1.4 ilustra a divisão da área de reconhecimento de objetos definida em (

SZE-LISKI,2010). Dentre as três classes mencionadas, esta Tese concentra-se no reconhecimento de

instâncias. Mais especificamente, os algoritmos de busca propostos serão avaliados na tarefa de buscar um conjunto de instâncias de um determinado objeto em um conjunto de cenas.

Apesar de o reconhecimento de instâncias não abordar a capacidade de generalização do algoritmo reconhecedor, ela possui grande importância para a área de visão computacional, já que as etapas de detecção e descrição de keypoints, utilizadas no reconhecimento de instâncias, são comumente aplicadas como pré-requisito para resolver problemas de reconhecimento de classe ou de detecção de objetos. Por exemplo, existe uma forte tendência de utilização do algoritmo denominado Scale Invariant Feature Transform (SIFT) (LOWE, 2004), criado e avaliado como um reconhecedor de instâncias, para extrair as características utilizadas no reconhecimento de classes genéricas (EVERINGHAM; ESLAMI; VAN GOOL; WILLIAMS;

WINN; ZISSERMAN,2015). Além disso, outros algoritmos utilizados no reconhecimento de

instâncias (como o SURF (BAY; ESS; TUYTELAARS; VAN GOOL,2008)) são comumente utilizados em tarefas de mais alto nível como reconhecimento de pontos de referência (landmark recognition) (KIM; RHO; JUN; HWANG,2015) e recuperação de imagem/vídeo baseado em conteúdo (content based image/video retrieval) (FENG; YANG; LIU,2013),(HOU; CHEN; QIN;

ZHANG,2011),(ALMAADEED; BOURIDANE; CROOKES; NIBOUCHE,2015),(BAROFFIO;

CESANA; REDONDI; TAGLIASACCHI; TUBARO,2014).

As dificuldades abordadas no reconhecimento de instâncias em cenas reais normalmente incluem (ver Figura 1.5): (i) variação de pose, quando um mesmo objeto pode aparecer na

(30)

Figura 1.4: Divisão dos tipos de problemas envolvendo reconhecimento de objetos.

imagem em diferentes pontos de vista ; (ii) oclusão, quando parte do objeto está escondido atrás de outro objeto; (iii) variação de escala, situação em que um objeto de referência pode aparecer em tamanhos distintos; (iv) variação de iluminação; e (v) rotação, dentre outras transformações, como compressão e borramento. Todos esses fatores influenciam na acurácia e, indiretamente, no tempo de detecção do reconhecimento, uma vez que, geralmente, para se melhorar a robustez é necessário aumentar o tempo de processamento de um algoritmo. Além disso, a redução do tempo de processamento torna-se um problema ainda mais desafiador se imaginarmos a existência de diversas versões de uma mesma instância de objeto a ser reconhecida, cada uma descrevendo diferentes poses do mesmo objeto.

1.2

OBJETIVOS

A partir do exposto, o objetivo principal desta Tese é o desenvolvimento um modelo de busca visual iterativo, que pode ser guiado (i) por mapas de saliência (BGMS), (ii) pelas características do objeto buscado (BGCO), (iii) ou pela integração entre a BGMS e a BGCO (BGMS+BGCO). A proposta é testada no reconhecimento de instâncias, em situações em que não seja possível controlar (e nem acessar previamente) as características da cena analisada, e espera-se que utilizando o método proposto seja possível reduzir o tempo de processamento dos algoritmos de reconhecimento considerados. Apesar de o algoritmo desenvolvido ser inspirado

(31)

Figura 1.5: Exemplos de variações em imagens com as quais um algoritmo de reconhecimento de instâncias deve lidar. A primeira coluna exibe a imagem de referência e a segunda a imagem alvo em que o objeto deve ser buscado. Na primeira linha podemos ver diferenças de ponto de vista e escala, a segunda apresenta um exemplo de oclusão,

enquanto que a terceira exemplifica o efeito de diferença de iluminação. Imagens

retiradas de (ROTHGANGER; LAZEBNIK; SCHMID; PONCE,2006) e

(MIKOLAJCZYK; TUYTELAARS; SCHMID; ZISSERMAN; MATAS;

(32)

nas características atentivas do SVH, sua plausibilidade biológica não é considerada um requisito dentro do contexto desta Tese (ou seja, não pretendemos replicar exatamente a forma como o SVH funciona, e sim usá-lo apenas como fonte de inspiração).

1.2.1

Objetivos Específicos

Dentre os objetivos específicos, podemos citar:

 Investigar a aplicabilidade de mapas de saliências para guiar a busca visual por

objetos;

 Desenvolver um algoritmo de detecção de regiões salientes baseado nos conceitos de

saliência global e local, utilizando informação de cores dos pixels, que seja apropriado para guiar a busca visual;

 Desenvolver um método de busca visual por um alvo baseado em mapas de saliência;

 Desenvolver um algoritmo de busca visual guiado pelas características do objeto

buscado;

 Desenvolver um método de busca visual por um alvo baseado na integração de mapas

de saliência com as características do objeto buscado.

1.3

ESTRUTURA DA TESE

Além deste capítulo, esta proposta de Tese é composta por mais seis capítulos, organiza-dos da seguinte forma:

 Conceitos Básicos: Nesse capítulo são apresentados os conceitos necessários para o

entendimento da proposta;

 Estado-da-Arte: Trabalhos relacionados à atenção visual (bottom-up e top-down)

e de busca visual que aplicam atenção visual ao reconhecimento de instâncias são revisados;

 Novos métodos de busca visual: Nesse capítulo são apresentados os métodos

propos-tos nesta Tese;

 Experimentos: Todos os experimentos realizados são explicados e seus resultados

apresentados;

 Conclusões: São realizadas conclusões sobre o trabalho realizado e trabalhos futuros

(33)

2

CONCEITOS BÁSICOS

2.1

RECONHECIMENTO DE INSTÂNCIAS

O reconhecimento de instâncias pode ser decomposto em 3 etapas principais: detecção de pontos de interesse, extração de características e matching. Na primeira delas, pontos de interesse, ou pontos-chave (keypoints), são detectados na imagem. Idealmente, essa fase do processo deve ser capaz de detectar locais da imagem que sejam fáceis de serem identificados em imagens semelhantes contendo o mesmo objeto em diferentes situações. Como exemplo, podemos citar casos em que um mesmo objeto é observado a partir de diferentes pontos de vista, em escalas diferentes, ou até mesmo casos em que um objeto é observado em cenas completamente distintas. Assim, keypoints devem possuir uma vizinhança suficientemente discriminativa em relação a outros objetos e, ao mesmo tempo, serem simples de serem detectados em um mesmo objeto. A Figura 2.1 ilustra como diferentes regiões podem ser mais úteis do que outras para que uma correspondência seja estabelecida entre imagens similares, ou contendo um mesmo objeto

(SZELISKI,2010).

Figura 2.1: Par de diferentes imagens de um mesmo objeto, com três regiões destacadas. A região retangular na cor vermelha possibilita que imagem seja reconhecida com maior acurácia do que as regiões em amarelo e em verde. Figura adaptada de (SZELISKI,2010).

(34)

que é responsável por descrever a vizinhança local do ponto detectado. Por ser comum que um mesmo objeto apareça com variações de escala, orientação, ponto de vista ou com outros tipos de deformações ((HARTLEY; ZISSERMAN,2004)), um descritor deve ser, ao mesmo tempo, suficientemente invariante a esses tipos de transformações e discriminativo em relação à objetos não relacionados com a região descrita. A Figura 2.2 ilustra diferentes formas como uma vizinhança de um keypoint pode ser definida para que suas características sejam extraídas. Em seguida, na fase de matching, os descritores construídos são utilizados para buscar objetos semelhantes em uma base de dados ou em uma imagem de referência (Figura 2.3).

Figura 2.2: Regiões locais utilizadas para descrever as características da vizinhança de um keypoint. Na imagem da esquerda podemos observar regiões quadradas e na da direita, circulares. Em ambas as imagens é possível notar diferenças de escala (representada por

pelo tamanho de cada região) e de orientação (retratada por uma reta partindo do centro de cada região). Figura adaptada de (BAY; ESS; TUYTELAARS; VAN GOOL,2008;

LEUTENEGGER; CHLI; SIEGWART,2011).

Figura 2.3: Descritores são utilizados para buscar regiões semelhantes em uma base de dados ou em uma imagem de referência. Figura adaptada de (MIKOLAJCZYK;

(35)

2.1.1

Detectores e descritores de características locais

Nesta seção são revisados algoritmos de detecção e descrição de características locais. Os algoritmos aqui descritos foram escolhidos, dentre outras propostas do estado-da-arte, de acordo com as suas influências na literatura e em função da relação de cada um com esta Tese. Além disso, critérios técnicos, como a acurácia e o tempo de processamento, também foram levados em consideração. Os outros métodos analisados que não foram selecionados para serem utilizados e descritos em maiores detalhes foram o ORB (RUBLEE; RABAUD; KONOLIGE; BRADSKI,

2011), BRIEF (CALONDER; LEPETIT; STRECHA; FUA,2010) e BRISK (LEUTENEGGER;

CHLI; SIEGWART,2011).

2.1.1.1

SIFT

(LOWE,2004) propôs o método denominado Scale Invariant Feature Transform (SIFT) para detectar e extrair características distintivas e invariantes de imagens, de forma que um mesmo objeto ou cena possa ser reconhecido, mesmo em diferentes pontos de vista, escalas ou orientações. A abordagem proposta pode ser resumida em quatro passos básicos: (i) construção do espaço-escala (scale-space), (ii) localização de keypoints, (iii) atribuição de orientação e (iv) descrição da região de vizinhança de cada keypoint. A Figura 2.4 ilustra as etapas principais do SIFT (e de algoritmos de reconhecimento de instâncias, de modo geral), que serão explicadas em detalhes nesta Seção. A primeira etapa tem como objetivo identificar locais (um local é definido em 3 dimensões, considerando o espaço bidimensional da imagem e a sua escala, que representa a imagem em diferentes níveis de detalhes) que possam ser repetidamente assimilados a um objeto em diferentes situações. Assim, para que as informações presentes na imagem sejam representadas em diferentes níveis de granularidade, ou escalas, é construído o espaço-escala: a imagem é repetidamente filtrada por filtros Gaussianos e, em seguida, a imagem é redimensionada para a metade do seu tamanho original, gerando uma pirâmide de imagens (ver Figura 2.5). No caso específico do SIFT, a representação em pirâmide é composta por uma sequência de octavos; comumente 3 ou 4 octavos são utilizados. Cada octavo, por sua vez, é subdividido em camadas (usualmente, 4). Cada imagem (L(x, y, σ )) da pirâmide representa, então, uma escala diferente da imagem de entrada, conforme ilustra a Figura 2.6. Observa-se que, à medida que a imagem original é filtrada ou redimensionada, aumenta-se a escala e o nível de detalhe percebido diminui.

Para localizar pontos estáveis no espaço-escala, a filtragem da diferença de Gaussianas (Difference of Gaussians (DoG)) é aplicada por meio da subtração entre imagens de escalas adjacentes, como pode ser observado na Figura 2.7, gerando uma sequência de imagens re-presentadas como D(x, y, σ ). Baseado no fato de que máximos e mínimos locais produzem características mais estáveis, conforme demonstrado por (MIKOLAJCZYK,2002), pontos extre-mos em D(x, y, σ ) são localizados: pixels que sejam maiores ou menores que todos os seus 26

(36)

Figura 2.4: Passos básicos do SIFT.

Figura 2.5: Representação de uma imagem em pirâmide: imagem é filtrada e redimensionada, repetidamente.

vizinhos em uma vizinhança local 3D, considerando 8 pixels vizinhos na escala atual e nove nas duas escalas vizinhas, conforme ilustrado pela Figura 2.8, são selecionados como candidatos a keypoints. Para que a localização dos extremos seja obtida com maior acurácia, a função D(x, y, σ ) é expandida em série de Taylor, centrada em cada candidato localizado, e locais de derivada nula são definidos como keypoints (BROWN; LOWE,2002).

Em seguida, locais de baixo contraste, ou seja, em que |D(x, y, σ )| < 0, 03, considerando o valores dos pixels normalizados entre 0 e 1, são descartados. Além disso, como a filtragem da diferença das Gaussianas possui uma resposta forte ao longo de bordas, a curvatura principal no

(37)

Figura 2.6: Espaço-escala utilizado pelo SIFT. Figura adaptada de http://aishack.in/tutorials/sift-scale-invariant-feature-transform-scale-space/.

local de cada keypoint é calculada por meio da matriz Hessiana (Hes) 2 × 2:

Hes= " Dxx Dxy Dxy Dyy # , 2.1 em que Dxx= ∂2 ∂ x2D(x, y, σ ),  2.2 Dyy= ∂2 ∂ y2D(x, y, σ ),  2.3 e Dxy= Dyx= ∂ ∂ x ∂ ∂ y D(x, y, σ ). 2.4 Como o domínio da derivada aplicada se trata de uma imagem digital, portanto, uma função discreta, as derivadas de Hes são estimadas por meio da diferença entre pixels vizinhos. Partindo do fato que os autovalores (α e β ) de Hes são proporcionais às curvaturas principais de Hes, supondo que α seja o autovalor de maior magnitude, é possível calcular a soma e o produto dos autovalores de Hes por meio do traço (Tr(.)) e do determinante (Det(.)) de Hes, respectivamente,

(38)

como Tr(H) = Dxx+ Dyy= α + β ,  2.5 Det(H) = DxxDyy− (Dxy)2= α × β .  2.6 Dessa forma, utilizando as definições do determinante e do traço de uma matriz como um artifício matemático, pode-se evitar o cálculo dos autovalores α e β , já que apenas a razão r = α

β entre eles importa. Assim, sendo

Tr(H)2 Det(H) = (α + β )2 α × β = (rβ + β )2 rβ2 = (r + 1)2 r ,  2.7 o valor de (r + 1) 2

r é minimizado quando α e β são iguais e ele aumenta com o aumento de r. Assim, como altos valores de r (que ocorrem quando uma curvatura principal é suficientemente maior que a segunda curvatura principal) indicam região de borda, (LOWE,2004) definiu que keypointsem queTr(H)

2 Det(H)>

(r + 1)2

r devem ser desconsiderados. Experimentalmente, é definido um valor de r = 10, o que significa que a curvatura principal deve ser, ao menos, 10 vezes maior que a segunda curvatura (ou seja, busca-se detectar blobs).

Figura 2.7: DoG construída à partir do espaço-escala, em que imagens de escalas adjacentes são subtraídas. Figura adaptada de (LOWE,2004).

Para cada keypoint localizado, uma orientação é atribuída de forma que este possa ser representado sempre de modo relativo à sua orientação e para que, consequentemente, o método adquira invariância à rotação. Além disso, para cada keypoint, seu valor de escala é utilizado para selecionar a imagem L(x, y, σ ) de escala mais próxima; então, a partir da imagem L(x, y, σ )

(39)

Figura 2.8: Máximos e mínimos da diferença das Gaussianas são detectados pela comparação de um pixel (marcado com um X) com todos os seus vizinhos (marcados

com um círculo verde) na escala atual e em escalas adjacentes. Figura adaptada de (LOWE,2004).

selecionada, a magnitude, m(x, y), e a orientação, θ (x, y), são computados para todos os pixels de L, como definido a seguir:

m(x, y) = q (L(x + 1, y) − L(x − 1, y))2+ (L(x, y + 1) − L(x, y − 1))2  2.8 θ (x, y) = tan−1(L(x, y + 1) − L(x, y − 1)) (L(x + 1, y) − L(x − 1, y))  2.9 Um histograma de orientações é então formado dentro de uma região vizinha de cada keypoint, utilizando 36 pontos amostrais para cobrir um intervalo de 360 graus. Cada amostra adicionada ao histograma é ponderada pela magnitude do seu gradiente e por uma janela Gaussiana circular. O maior pico no histograma é então utilizado para atribuir a orientação do keypoint, e um novo keypointé criado para cada pico maior do que 80% do maior pico, conforme ilustra a Figura 2.9.

Para construir o descritor de cada keypoint (em função da sua orientação detectada), a magnitude e a orientação dos gradientes dentro da vizinhança são utilizados novamente, dessa vez para adicionar robustez à variações de iluminação. Uma função Gaussiana é novamente utilizada para atribuir maior peso para pontos mais próximos da região central e um histograma de 8 orientações é criado para resumir os conteúdos de sub-regiões 4 × 4, resultando em um descritor de tamanho 4 × 4 × 8 = 128, conforme ilustra a Figura 2.10.

(40)

Figura 2.9: Atribuição de orientação utilizada no SIFT. O grid à esquerda ilustra a magnitude e a orientação de cada ponto amostrado na região vizinha de um keypoint, enquanto que o grid do lado direito exemplifica a janela Gaussiana (simbolizada pela cor amarela) utilizada para atribuir maior peso a locais mais próximos do ponto analisado. No centro, é possível ver o histograma de orientação, que resulta na detecção de um keypoint de orientação igual a 50◦(maior pico) e na adição de mais um keypoint de orientação 90◦

(pico maior que 80% do maior pico)

Figura 2.10: Em (a) é possível ver a ilustração de magnitudes e orientações de gradientes calculados dentro da vizinhança de um ponto, pesados por uma função Gaussiana (representada pelo círculo azul). Em (b) são ilustrados os histogramas de 8 graus de regiões 2 × 2 ao redor do ponto central. Em (c), o descritor construído é ilustrado, em que

a região destacada em vermelho corresponde ao quadro destacado em vermelho em (b). Neste exemplo 2 × 2 sub-regiões são utilizadas, enquanto que (LOWE,2004) sugere o

uso de 4 × 4 sub-regiões. Figura adaptada de (LOWE,2004).

2.1.1.2

SURF

O detector/descritor de características locais denominado de Speeded Up Robust Features (SURF) foi proposto por (BAY; ESS; TUYTELAARS; VAN GOOL,2008) como uma alternativa ao SIFT, sendo computacionalmente mais eficiente e sem perda significativa na acurácia do reconhecimento. O aumento de velocidade desse método, em relação ao SIFT, está relacionado à aproximação da filtragem Gaussiana parcial de segunda ordem utilizando filtros box (ver Figura 2.11), que torna possível com que a filtragem ocorra mais rapidamente utilizando imagens integrais (VIOLA; JONES, 2001). Assim, diferentemente do SIFT, que computa a matriz Hessiana (Hes) por meio do filtro da diferença das Gaussianas (DoG), no método proposto por

Referências

Documentos relacionados

An optimized set of loading (tension), frequency and number of cycles was obtained. Concerning the method validation, using modified T-test samples in fresh and humidity-aging

For additional support to design options the structural analysis of the Vila Fria bridge was carried out using a 3D structural numerical model using the finite element method by

29 Table 3 – Ability of the Berg Balance Scale (BBS), Balance Evaluation Systems Test (BESTest), Mini-BESTest and Brief-BESTest 586. to identify fall

Este estudo tem por objetivo determinar até que ponto os acontecimentos da vida são entendidos como indutores de stress e os níveis de burnout e de satisfação com

6 Num regime monárquico e de desigualdade social, sem partidos políticos, uma carta outor- gada pelo rei nada tinha realmente com o povo, considerado como o conjunto de

3 O presente artigo tem como objetivo expor as melhorias nas praticas e ferramentas de recrutamento e seleção, visando explorar o capital intelectual para

O objetivo do curso foi oportunizar aos participantes, um contato direto com as plantas nativas do Cerrado para identificação de espécies com potencial

Esta realidade exige uma abordagem baseada mais numa engenharia de segu- rança do que na regulamentação prescritiva existente para estes CUA [7], pelo que as medidas de segurança