• Nenhum resultado encontrado

Fully Convolutional Neural Network for Occular Iris Semantic Segmentation

II. E STADO DA A RTE NA UBIRIS V

O m´etodo proposto ser´a comparado com alguns m´etodos do estado-da-arte em segmentac¸˜ao de ´ıris. Dentre esses m´etodos, est˜ao os 3 melhores resultados da competic¸˜ao de segmentac¸˜ao de ´ıris Noisy Iris Challenge Evaluation - Part I1(NICE.I), sub-

conjunto da UBIRIS.v2 [30]–[32]. Recomenda-se a leitura dos mesmos para maiores informac¸˜oes sobre suas metodologias.

O m´etodo vencedor da NICE.I foi proposto por [30] e consiste em remover os pontos de reflexo usando limiarizac¸˜ao adaptativa e interpolac¸˜ao bi-linear. A ´ıris ´e segmentada por agrupamento de regi˜oes e modelada pelo operador integro- differential constellation[12].

No segundo lugar da NICE.I [31], a localizac¸˜ao dos reflexos ocorre na imagem convertida para escala de cinza com base em luminance in-phase quadrature. Os limites internos e externos da ´ıris s˜ao encontrados pelo operador de Daugman [2], no componente de cor vermelho do RGB. As palpebras inferior e superior, s˜ao localizadas pelo detector de bordas (horizontais) de Sobel. As transic¸˜oes de intensidade entre a esclera e a pele s˜ao usadas para delimitar as partes da ´ıris oclu´ıdas pela p´alpebra.

Em terceiro lugar [32], os reflexos s˜ao localizados com base no valor de intensidade (tons de cinza) dos pixels acima de 250. Em seguida, um aumento de contraste destaca os pontos pretos da pupila, para facilitar sua detecc¸˜ao. Ambas ´ıris e pupila s˜ao localizadas ao varrer a imagem com alguns retˆangulos e “sementes”. As p´alpebras s˜ao detectadas com base na mudanc¸a de contraste entre a esclera e a pele (nos componentes de cor verde e azul) usando segmentos de arcos. Outro m´etodo estado-da-arte [33], comparado com o m´etodo proposto, utiliza o operador de Daugman [2] para localizar a ´ıris. As p´alpebras s˜ao removidas na imagem normalizada, por meio de um polinˆomio de terceira ordem e estimativa de m´edia e desvio padr˜ao. Os reflexos s˜ao detectados, por meio da combinac¸˜ao entre limiarizac¸˜ao adaptativa e modelos de textura Markovianos [34]. O m´etodo [33] foi comparado com os oito melhores resultados da competic¸˜ao NICE.I seguindo os mes- mos crit´erios de avaliac¸˜ao (Eq. 2) e alcanc¸ou um erro E menor que o primeiro colocado. Por isso, essa abordagem passou a ser utilizada para segmentar as imagens da competic¸˜ao Mobile Iris CHallenge Evaluation II2 (MICHE-II), que ´e voltada apenas para o reconhecimento de ´ıris.

A Tabela I representa a comparac¸˜ao dos m´etodos estado-da- arte que ser˜ao utilizados para comparar o m´etodo proposto. ´E

1http://nice1.di.ubi.pt/ 2http://biplab.unisa.it/MICHE/

Tabela I: Comparac¸˜ao do erro de segmentac¸˜ao E dos m´etodos estado-da-arte.

M´etodo E

Haindl & Krupiˇcka [33] 0, 0124 Tan et al., 2010 [30] 0, 0131 Sankowski et al. [31] 0, 0162 Almeida [32] 0, 0180

poss´ıvel observar que o m´etodo [33], com E = 0, 0124, supera o m´etodo vencedor da NICE.I [30] com E = 0, 0131.

III. METODOLOGIA

A metodologia proposta foi inspirada no uso de uma abor- dagem de aprendizado profundo, voltada para segmentac¸˜ao semˆantica, classificac¸˜ao e detecc¸˜ao chamada MultiNet [27]. As t´ecnicas de transferˆencia de aprendizagem e fine-tunning foram utilizadas, visando ajustar o modelo da rede para o problema de segmentac¸˜ao de ´ıris ocular. Portanto, nenhuma alterac¸˜ao nas configurac¸˜oes da rede foi realizada.

A. Arquitetura da Rede

A arquitetura da rede baseia-se em um codificador ´unico e um decodificador para cada tarefa (segmentac¸˜ao, classificac¸˜ao e detecc¸˜ao). O codificador utiliza as caracter´ısticas ex- tra´ıdas da 5o camada de pooling (13 primeiras camadas) da

rede VGG16 [35], que s˜ao usadas pelos decodificadores de segmentac¸˜ao, classificac¸˜ao e detecc¸˜ao [27]. O foco deste artigo ser´a apenas voltado para o decodificador de segmentac¸˜ao. Esse decodificador segue a arquitetura da Fully Convolutional Network- FCN [26]. A Figura 1 representa a junc¸˜ao das duas arquiteturas, na qual recebe, em sua entrada, uma imagem com dimens˜oes de 400x300 pixels e trˆes canais de cor (RGB), e gera uma imagem de sa´ıda com as mesmas dimens˜oes.

As camadas de convoluc¸˜ao totalmente conectadas da VGG16 produzem uma sa´ıda de baixa resoluc¸˜ao. Trˆes camadas de convoluc¸˜ao transposta, entre a VGG16 e a FCN, fazem a reconstruc¸˜ao das convoluc¸˜oes de forma bilinear, aumentando (up-sampling) a resoluc¸˜ao da sa´ıda [27].

A func¸˜ao de custo da segmentac¸ao ´e dada pela cross- entropy, conforme a (Eq. 1).

loss(p, q) = − 1 |I| X i∈I X c∈C qi(c) log pi(c) (1)

onde p ´e a predic¸˜ao, q ´e o ground-truth e C ´e a classe. O codificador e o decodificador de segmentac¸˜ao s˜ao inicializados de acordo com os pesos pr´e-treinados da ImageNet [24]. O treinamento ´e feito com taxa de aprendizagem de 1e − 5 e o algoritmo de otimizac¸˜ao Adam optimizer, visando minimizar o erro da func¸˜ao de custo, com base em descida de gradiente. B. Protocolos de Avaliac¸˜ao

A avaliac¸˜ao do m´etodo proposto ser´a realizada por meio dos protocolos de avaliac¸˜ao da competic¸˜ao NICE.I [36]. Essa avaliac¸˜ao ´e feita por meio da comparac¸˜ao pixel-a-pixel entre

as m´ascaras bin´arias originais (ground-truth produzidas ma- nualmente pelos organizadores) e as m´ascaras geradas pelos algoritmos dos competidores. O erro m´edio de segmentac¸˜ao E ´e calculado pela divergˆencia, dada pelo operador ⊗ (XOR), dos pixels conforme a (Eq. 2).

E = 1 k × h × w X i X j M (i, j) ⊗ GT (i, j) ∈ [0, 1] (2) onde i e j s˜ao as coordenadas da m´ascara bin´aria M gerada pelo algoritmo competidor, GT ´e o ground-truth, h e w s˜ao as linhas e colunas da imagem respectivamente, k ´e a quantidade de imagens e [0, 1] representa melhor e pior E respectivamente.

Outras m´etricas de avaliac¸˜ao comumente utilizadas em segmentac¸˜ao semˆantica s˜ao: precision (Eq. 3), recall (Eq. 4), F1-measure (F1-score) (Eq. 5), acur´acia m´edia (Eq. 6) e Intersecc¸˜ao pela Uni˜ao (IoU) (Eq. 7) [37], [38]. Essas m´etricas tamb´em ser˜ao utilizadas para avaliar o desempenho do m´etodo proposto. prec = T P T P + F P ∈ [0, 1] (3) rec = T P T P + F N ∈ [0, 1] (4) F 1 = (1 + β2) prec · rec β2prec + rec ∈ [0, 1] (5) M acc = T P + T N T P + F P + T N + F N ∈ [0, 1] (6) IoU = 1 k k X i=0 |GT(i,j)∩ M(i,j)| |GT(i,j)∪ M(i,j)| ∈ [0, 1] (7) onde β = 1, T P , F P e F N s˜ao respectivamente True Positive, False Positivee False Negative. Ao contr´ario da (Eq. 2), [0, 1] representa pior e melhor valor respectivamente.

C. Base de Dados

A base de dados utilizada na competic¸˜ao NICE.I ´e um subconjunto da UBIRIS.v2, que possui um total de 11.102 imagens, de 261 pessoas e em formato RGB, com 400x300 pixelsobtidas de forma n˜ao controlada, ou seja, com variac¸˜oes de luminosidade, foco, contraste e presenc¸a de reflexos [39], [40]. Entretanto, apenas 1.000 imagens (com os respectivos ground-truth) s˜ao utilizadas na competic¸˜ao NICE.I, sendo 500 para treinamento e 500 para teste. A Figura 2 ilustra algumas imagens dessa base de dados.

Segmentation Decoder CNN Encoder Conv: 1x1 Input 400x300x3 VGG16 13 Conv. Layers max pol Encoded Features 12x9x512 FCN8 3 Upsampling Layers Prediction 400x300x2 Conv: 1x1

Fig. 1: Arquitetura da rede utilizando apenas o codificador ´unico e o decodificador de segmentac¸˜ao da MultiNet. Fonte: adaptado de [27].

Fig. 2: Exemplos da base de dados UBIRIS.v2 com seus respectivos ground-truth da esquerda para a direita.