• Nenhum resultado encontrado

Proposta de sistema de baixo custo para triagem de pacientes com retinopatia diabética

N/A
N/A
Protected

Academic year: 2021

Share "Proposta de sistema de baixo custo para triagem de pacientes com retinopatia diabética"

Copied!
67
0
0

Texto

(1)

PROGRAMA DE P ´

OS-GRADUAC

¸ ˜

AO EM ENGENHARIA BIOM ´

EDICA

LUCAS VIEIRA WERNER

PROPOSTA DE SISTEMA DE BAIXO CUSTO PARA TRIAGEM DE

PACIENTES COM RETINOPATIA DIAB ´

ETICA

DISSERTAC

¸ ˜

AO

CURITIBA

(2)

PROPOSTA DE SISTEMA DE BAIXO CUSTO PARA TRIAGEM DE

PACIENTES COM RETINOPATIA DIAB ´

ETICA

Dissertac¸˜ao apresentada ao Programa de P´os-graduac¸˜ao em Engenharia Biom´edica da Universidade Tecnol´ogica Federal do Paran´a como requisito parcial para obtenc¸˜ao do grau de “Mestre em Ciˆencias” – ´Area de Concentrac¸˜ao: Engenharia Biom´edica.

Orientador: Prof. Dr. S´ergio Leandro Stebel

CURITIBA

(3)

Dados Internacionais de Catalogação na Publicação

Werner, Lucas Vieira

Proposta de sistema de baixo custo para triagem de pacientes com retinopatia diabética [recurso eletrônico] / Lucas Vieira Werner. -- 2019. 1 arquivo eletrônico (68 f.): PDF; 9,92 MB.

Modo de acesso: World Wide Web.

Texto em português com resumo em inglês.

Dissertação (Mestrado) - Universidade Tecnológica Federal do Paraná. Programa de Pós-Graduação em Engenharia Biomédica. Área de Concentração: Engenharia Biomédica, Curitiba, 2019.

Bibliografia: f. 49-53.

1. Engenharia biomédica - Dissertações. 2. Retinopatia diabética - Diagnóstico. 3. Rastreamento médico. 4. Oftalmoscopia. 5. Aplicativos móveis - Desenvolvimento. 6. Aprendizado do computador. 7. Processamento de imagens - Técnicas digitais. 8. Lentes - Avaliação. 9. Imagens e fantasmas (Radiologia) - Testes. 10. Redes neurais (Computação). 11. Interface de programas aplicativos (Software). 12. Inteligência artificial. 13. Software - Validação. I. Stebel, Sérgio Leandro, orient. II. Universidade Tecnológica Federal do Paraná. Programa de Pós-graduação em Engenharia Biomédica. III. Título.

CDD: Ed. 23 -- 610.28

Biblioteca Central do Câmpus Curitiba - UTFPR Bibliotecária: Luiza Aquemi Matsumoto CRB-9/794

(4)

Paraná

Diretoria de Pesquisa e Pós-Graduação

TERMO DE APROVAÇÃO DE DISSERTAÇÃO Nº132

A Dissertação de Mestrado intitulada “Proposta de Sistema de Baixo Custo para Triagem de Pacientes com Retinopatia Diabética”, defendida em sessão pública pelo candidato Lucas Vieira Werner, no dia 29 de outubro de 2019, foi julgada para a obtenção do título de Mestre em Ciências, área de concentração Engenharia Biomédica, e aprovada em sua forma final, pelo Programa de Pós-Graduação em Engenharia Biomédica.

BANCA EXAMINADORA:

Prof. Dr. Sérgio Leandro Stebel - UTFPR

Prof. Dr. Deivisson Vianna Dantas dos Santos – UFPR Prof. Dr. Gustavo Benvenutti Borba - UTFPR

A via original deste documento encontra-se arquivada na Secretaria do Programa, contendo a assinatura da Coordenação após a entrega da versão corrigida do trabalho.

Curitiba, 29 de outubro de 2019.

(5)
(6)
(7)

WERNER, L. V. . PROPOSTA DE SISTEMA DE BAIXO CUSTO PARA TRIAGEM DE

PACIENTES COM RETINOPATIA DIABÉTICA. 68 f. Dissertação – Programa de Pós-graduação em Engenharia Biomédica, Universidade Tecnológica Federal do Paraná. Curitiba, 2020.

A Diabetes é uma importante doença mundial, com impactos principalmente para a atenção básica em saúde, que pode apresentar diversas complicações, dentre elas a retinopatia diabética. A retinopatia diabética é uma das principais causas de cegueira mundialmente. O diagnóstico de retinopatia diabética é feito por meio do exame de fundoscopia, mas o equipamento para realizar tal exame é de difícil acesso, especialmente em países menos desenvolvidos. Por isso, este trabalho tem como objetivo analisar e propor um sistema para triagem de pacientes com retinopatia diabética, usando imagens de fundo de olho obtidas por um telefone celular em conjunto com lentes. Foram analisadas lentes e métodos para obtenção da imagem do fundo de olho, além da análise das técnicas de aprendizagem de máquina e redes neurais para o processamento das imagens. Como resultados, a lente mais adequada foi a lente não acoplável VOLK 20 dioptrias. O método proposto para a aquisição das imagens, composto de uma estrutura física estável e móvel em todos os eixos, com presença de três variáveis (olho, lente e celular), foi desenvolvido por modelagem e impressão 3D. Para o processamento, foi escolhido o ​framework Tensorflow, devido a sua comunidade muito ativa e seus bons resultados para imagens bidimensionais. Para a integração do sistema, um aplicativo móvel foi desenvolvido, a fim de realizar a interface entre a obtenção da imagem e a rede neural. Foram realizados testes em fantons, utilizando as imagens da base de dados EyePacs-1. Após o processamento, o sistema integrado retorna para o usuário, por meio do aplicativo, a probabilidade de existência de retinopatia diabética. Foi obtido um ​f-score de 0,64. Com isso, demonstra-se possível desenvolver um método de triagem de retinopatia diabética, para uso na atenção básica em localidades com pouco acesso a cuidados oftalmológicos.

Palavras-chave​: triagem médica, retinopatia diabética, tensorflow, fundoscopia, aprendizado de máquina

(8)

WERNER, L. V. . PROPOSAL FOR A LOW COST SYSTEM FOR SCREENING

PATIENTS WITH DIABETIC RETINOPATHY. 68 f. Dissertação – Programa de Pós-graduação em Engenharia Biomédica, Universidade Tecnológica Federal do Paraná. Curitiba, 2020.

Diabetes is an important worldwide disease, with impacts mainly on primary health care, which can present several complications, among them diabetic retinopathy. Diabetic retinopathy is one of the leading causes of blindness worldwide. Diagnosis of diabetic retinopathy is done through fundus examination, but the equipment to perform such an examination is difficult to access, especially in less developed countries. Therefore, this study aims to analyze and propose methods for better screening for diabetic retinopathy, using background images taken by a cell phone in conjunction with lenses. Lenses and methods for obtaining the fundus image were analyzed, as well as the analysis of machine learning techniques and neural networks for image processing. As a result, the most suitable lens was the unattached VOLK 20 diopter lens. The proposed method for image acquisition, consisting of a stable and movable physical structure on all axes, with varying presence (eye, lens and cell), was developed by 3D modeling and printing. For processing, the Tensorflow was chosen because of its very active community and its good results for two-dimensional images. For the system integration, a mobile application was developed in order to interface between the image obtainment and the neural network. Phantom tests were performed using the images from the EyePacs-1 database. After processing, the integrated system returns to the user, through the application, the likelihood of the existence of diabetic retinopathy. An f-score of 0.64 was obtained. Thus, it is possible to develop a screening method for diabetic retinopathy, for use in primary care in locations with little access to eye care.

Keywords​: medical screening, diabetic retinopathy, tensorflow, dilated fundus examination, machine learning

(9)

FIGURA 1 Graus de Retinopatia Diab´etica . . . 19 –

FIGURA 2 Principais ´areas da IA na medicina . . . 20 –

FIGURA 3 Balanc¸o das vantagens e desvantagens da IA . . . 21 –

FIGURA 4 T´ecnica de obtenc¸˜ao de imagem de fundo de olho . . . 23 –

FIGURA 5 Fundo de olho obtido com lente de 20 dioptrias . . . 24 –

FIGURA 6 Estrutura de iluminac¸˜ao . . . 24 –

FIGURA 7 Imagens obtidas aplicando a t´ecnica . . . 25 –

FIGURA 8 Descric¸˜ao da t´ecnica . . . 26 –

FIGURA 9 Gr´afico de sensibilidade e 1- especificidade . . . 27 –

FIGURA 10 Divis˜ao da base de dados . . . 29 –

FIGURA 11 Demonstrac¸˜ao da amplitude de exame . . . 30 –

FIGURA 12 Demonstrac¸˜ao da concatenac¸˜ao das imagens . . . 31 –

FIGURA 13 Etapas da criac¸˜ao do sistema . . . 32 –

FIGURA 14 Lentes testadas . . . 33 –

FIGURA 15 T´ecnica de exame para retinopatia . . . 34 –

FIGURA 16 Projeto da estrutura . . . 36 –

FIGURA 17 Suporte de queixo . . . 36 –

FIGURA 18 Rolamento na barra lisa . . . 37 –

FIGURA 19 Suporte de lente e celular . . . 38 –

FIGURA 20 Gr´afico comparativo do n´umero de forks no Github . . . 38 –

FIGURA 21 Divis˜ao da base de imagens . . . 39 –

FIGURA 22 Arquitetura do sistema . . . 41 –

FIGURA 23 Teste do sistema . . . 42 –

FIGURA 24 Tela da aplicac¸˜ao mobile . . . 42 –

FIGURA 25 Estrutura final do projeto . . . 44 –

FIGURA 26 Curva ROC . . . 45 –

(10)

TABELA 1 Distribuic¸˜ao da base de imagens . . . 28 –

TABELA 2 Matriz de confus˜ao . . . 44 –

(11)

DM Diabete Metilius DG Diabete Gestacional RD Retinopatia diab´etica ML Machine learning DL Deep learning

API Application Programming Interface TPU Poliuretano Termopl´astico

ABS Acrilonitrila Butadieno Estireno IA Inteligˆencia Artificial

(12)

1 INTRODUC¸ ˜AO . . . 13 1.1 MOTIVAC¸ ˜AO . . . 16 1.2 OBJETIVOS . . . 16 1.2.1 Objetivo Geral . . . 16 1.2.2 Objetivos Espec´ıficos . . . 17 1.3 ORGANIZAC¸ ˜AO DO TRABALHO . . . 17 2 FUNDAMENTAC¸ ˜AO TE ´ORICA . . . 18

2.1 RETINOPATIA DIAB ´ETICA . . . 18

2.2 RETINOPATIA DIAB ´ETICA E MACHINE LEARNING . . . 20

2.3 M ´ETRICAS PARA A AVALIAC¸ ˜AO DOS ALGORITMOS DE DETECC¸ ˜AO DE RD 22 2.4 TRABALHOS RELACIONADOS . . . 22

3 DESENVOLVIMENTO . . . 32

3.1 ESPECIFICAC¸ ˜AO DAS LENTES . . . 32

3.2 DESENVOLVIMENTO DA ESTRUTURA . . . 33

3.3 AN ´ALISE E CALIBRAGEM DA REDE NEURAL . . . 37

3.4 INTEGRAC¸ ˜AO DO SISTEMA . . . 39

3.5 RESULTADOS . . . 43

4 CONCLUS ˜AO . . . 47

4.1 TRABALHOS FUTUROS . . . 47

REFER ˆENCIAS . . . 49

Apˆendice A -- PARCIAL DO C ´ODIGO ANDROID . . . 54

(13)

1 INTRODUC¸ ˜AO

A diabetes mellitus (DM) ´e uma condic¸˜ao que constitui um importante problema na sa´ude p´ublica, sendo uma prioridade para os sistemas de sa´ude mundiais. Ela ´e definida como uma doenc¸a crˆonica progressiva caracterizada por n´ıveis elevados de glicose no sangue, a qual ocorre pela n˜ao produc¸˜ao de insulina pelo pˆancreas ou pela impossibilidade do organismo usar efetivamente a insulina produzida. A insulina ´e um hormˆonio constitu´ıdo por glicopept´ıdeos, a qual regula os n´ıveis de glicose no sangue (KASPER, 2017).

Mundialmente, estima-se que 430 milh˜oes de adultos vivem com DM, em comparac¸˜ao com 108 milh˜oes em 1980. De 2006 a 2016, a prevalˆencia de DM aumentou mais rapidamente em pa´ıses de baixa e m´edia renda do que em pa´ıses de alta renda. Esse fato pode ser explicado por mudanc¸as populacionais e de estilo de vida, constitu´ıda por fatores como crescimento populacional, envelhecimento, dietas n˜ao saud´aveis, obesidade e sedentarismo. Al´em da alta morbidade, a DM ´e tamb´em associada a uma alta mortalidade. Estimou-se 3,7 milh˜oes de mortes mundialmente relacionadas direta ou indiretamente com a DM no ano de 2012. Quarenta e trˆes por cento dessas 3,7 milh˜oes de mortes ocorrem antes dos 70 anos de idade, essa proporc¸˜ao sendo maior em pa´ıses de baixa e m´edia renda do que em pa´ıses de alta renda (WORLD HEALTH ORGANIZATION B, 2016).

A DM e suas complicac¸˜oes trazem perdas econˆomicas substanciais para as pessoas com DM e seus familiares, aos sistemas de sa´ude e `a economia dos pa´ıses propriamente dita. Essas perdas econˆomicas podem ser medidas por meio de custos m´edicos diretos, custos indiretos associados `a perda de produtividade, mortalidade prematura e impacto negativo da DM no Produto Interno Bruto (PIB) das nac¸˜oes (WORLD HEALTH ORGANIZATION B, 2016).

Os custos m´edicos diretos associados a DM incluem gastos para prevenir e tratar a DM e suas complicac¸˜oes como atendimento ambulatorial e de emergˆencia, internac¸˜ao hospitalar, medicamentos, suprimentos m´edicos (dispositivos de injec¸˜ao e equipamentos de auto-monitoramento) e cuidados de longa durac¸˜ao (WORLD HEALTH ORGANIZATION B, 2016).

Estima-se que o custo anual direto da DM para o mundo seja superior a 827 bilh˜oes de d´olares (ZHOU et al., 2016) (SEURING; ARCHANGELIDI; SUHRCKE, 2015). A Federac¸˜ao Internacional de Diabetes (FID) estima que o gasto total global em sa´ude com a DM mais do que triplicou no per´ıodo de 2003 a 2013, resultado do aumento do n´umero de pessoas com DM

(14)

e aumento nos gastos per capita com DM (INTERNATIONAL DIABETES FEDERATION, 2019).

A DM ´e classificada em Tipo 1, Tipo 2, Diabetes Gestacional (DG) e tipos espec´ıficos. A DM Tipo 1 ´e caracterizada pela produc¸˜ao deficiente de insulina e ´e mais comum em crianc¸as e jovens. Sua causa ainda ´e desconhecida, possui prov´avel etiologia auto-imune e atualmente n˜ao ´e evit´avel. Os principais sintomas incluem poli´uria (aumento da quantidade de urina com micc¸˜ao excessiva), polidipsia (aumento da sede), polifagia (aumento da fome) e perda de peso (WORLD HEALTH ORGANIZATION A, 2019).

A DM Tipo 2 ´e caracterizada pela incapacidade do organismo em utilizar a insulina produzida pelo pˆancreas. Esse tipo ´e respons´avel por cerca de 90% das pessoas com DM em todo o mundo. Os sintomas podem ser semelhantes aos sintomas da DM Tipo 1, mas menos intensos ou os pacientes podem ser assintom´aticos. A DM Tipo 2 era geralmente vista apenas em adultos, por´em com o aumento da incidˆencia de dietas n˜ao saud´aveis, obesidade e sedentarismo, principalmente em crianc¸as, comec¸ou a ocorrer tamb´em nessa faixa et´aria (WORLD HEALTH ORGANIZATION A, 2019).

O DG ´e uma condic¸˜ao tempor´aria que ocorre na gravidez e que aumenta o risco de posterior desenvolvimento de DM Tipo 2. Mulheres com DG possuem risco aumentado de complicac¸˜oes durante a gravidez e parto, bem como maiores chances de complicac¸˜oes para seus bebˆes. O diagn´ostico de DG ´e realizado por meio de triagem pr´e-natal (WORLD HEALTH ORGANIZATION A, 2019).

Os fatores de risco para o desenvolvimento da DM Tipo 1 ou Tipo 2 variam. Para a DM Tipo 1, como a etiologia exata ´e desconhecida, entende-se que a doenc¸a resulta de uma complexa interac¸˜ao entre genes e fatores ambientais, embora nenhum fator ambiental causal espec´ıfico tenha sido isolado. Para a DM Tipo 2, os fatores de risco s˜ao mais claros e s˜ao determinados por uma interac¸˜ao de fatores gen´eticos e metab´olicos. Os principais fatores de risco para a DM Tipo 2 s˜ao: etnia, hist´oria familiar de DM, DG pr´evia, idade avanc¸ada, sobrepeso e obesidade, dieta n˜ao saud´avel, sedentarismo e tabagismo. Excesso de peso e obesidade, juntamente com sedentarismo, s˜ao os fatores de risco mais importantes na DM Tipo 2 (FOROUZANFAR et al., 2015).

Quando a DM n˜ao ´e bem manejada, surgem complicac¸˜oes para o paciente, as quais contribuem significativamente para a mortalidade, custos e m´a qualidade de vida. As complicac¸˜oes s˜ao classificadas em microvasculares e macrovasculares. As complicac¸˜oes macrovasculares s˜ao causadas pelos n´ıveis elevados de glicose no sangue, os quais lesam o endot´elio dos grandes e m´edios vasos, desencadeando o processo de aterosclerose, com

(15)

o consequente aparecimento de doenc¸as como doenc¸a arterial coronariana, infarto agudo do mioc´ardio, acidente vascular encef´alico, doenc¸a arterial obstrutiva perif´erica, entre outras. A doenc¸a arterial coronariana e o infarto agudo do mioc´ardio constituem a principal causa de morte em pacientes diab´eticos (KASPER, 2017)(WORLD HEALTH ORGANIZATION A, 2019).

As complicac¸˜oes microvasculares aparecem quando os elevados n´ıveis de glicose no sangue lesam os microvasos, principalmente os localizados nos rins, nervos e olhos. A neuropatia diab´etica ´e uma importante causa de ´ulceras em membros inferiores, que podem resultar em infecc¸˜oes e amputac¸˜oes. A nefropatia diab´etica est´a entre as principais causas de insuficiˆencia renal mundialmente e a retinopatia diab´etica (RD) se configura como uma das mais importantes causas de cegueira e deficiˆencia visual no mundo (KASPER, 2017)(WORLD HEALTH ORGANIZATION B, 2019).

A RD causa alterac¸˜oes progressivas nos vasos sangu´ıneos do olho, podendo ser classificada em graus de evoluc¸˜ao. Para a RD ser diagnosticada, ´e necess´ario o exame de fundo de olho, o qual muitas vezes se encontra indispon´ıvel em localidades remotas e carentes, al´em de possuir alto custo. Com a evoluc¸˜ao tecnol´ogica, novas formas de diagn´ostico est˜ao sendo desenvolvidas, utilizando principalmente lentes ´opticas e t´ecnicas computacionais.

Um exemplo de t´ecnica computacional utilizada para esse fim ´e o Machine Learning (ML). A ´area de atuac¸˜ao do ML vem ganhando cada vez mais atenc¸˜ao, tanto na academia quanto em empresas privadas. De acordo com o relat´orio da McKinsey, mais de uma d´uzia de bancos europeus mudaram de abordagens de modelagem estat´ıstica para tecnologia de ML e, em alguns casos, aumentaram as vendas de novos produtos em at´e 20% (SCHRIMPF, 2016).

As t´ecnicas de ML podem ser usadas em v´arios dom´ınios. Gigantes da tecnologia, como o Facebook, constroem seus produtos em torno do ML: por exemplo, criando ´albuns de fotos de grupos privados, baseados no reconhecimento facial com redes neurais convolucionais (ESTEVA et al., 2017). O ML tamb´em pode ser usado no dom´ınio da medicina e, especificamente, pode ser usado para detectar sinais de RD a partir de imagens de fundoscopia.

O ML pode ser definido como o conjunto de t´ecnicas que proporciona aos computadores a habilidade de aprender sem serem explicitamente programados (SIMON, 2013). Para isso, s˜ao constru´ıdos algoritmos que operam a partir de dados de entrada e que, a partir deles, conseguem tomar decis˜oes automatizadas, sem necessidade de programac¸˜ao computacional pr´evia para tal (KOHAVI; PROVOST, 1998).

(16)

1.1 MOTIVAC¸ ˜AO

A DM ´e uma condic¸˜ao de alta prevalˆencia, com grande impacto s´ocio-econˆomico mundialmente e, por isso, torna-se de grande importˆancia para os cuidados da atenc¸˜ao b´asica. Discorre o Minist´erio da Sa´ude (2011) sobre a atenc¸˜ao b´asica:

Atenc¸˜ao B´asica caracteriza-se por um conjunto de ac¸˜oes de sa´ude, no ˆambito individual e coletivo, que abrange a promoc¸˜ao e a protec¸˜ao da sa´ude, a prevenc¸˜ao de agravos, o diagn´ostico, o tratamento, a reabilitac¸˜ao, reduc¸˜ao de danos e a manutenc¸˜ao da sa´ude com o objetivo de desenvolver uma atenc¸˜ao integral que impacte na situac¸˜ao de sa´ude e autonomia das pessoas e nos determinantes econdicionantes de sa´ude das coletividades. ´E desenvolvida por meio do exerc´ıcio de pr´aticas de cuidado e gest˜ao, democr´aticas e participativas, sob forma de trabalho em equipe, dirigidas a populac¸˜oes de territ´orios definidos, pelas quais assume a responsabilidade sanit´aria, considerando a dinamicidade existente no territ´orio em que vivem essas populac¸˜oes. Utiliza tecnologias de cuidado complexas e variadas que devem auxiliar no manejo das demandas e necessidades de sa´ude de maior frequˆencia e relevˆancia em seu territ´orio, observando crit´erios de risco, vulnerabilidade, resiliˆencia e o imperativo ´etico de que toda demanda, necessidade de sa´ude ou sofrimento devem ser acolhidos.

Como a atenc¸˜ao b´asica se refere a um n´ıvel de atenc¸˜ao de sa´ude que possui como objetivo o cuidado integral e atendimento de um maior n´umero poss´ıvel da populac¸˜ao, ela se beneficia de inovac¸˜oes tecnol´ogicas de baixo custo que favorecem a identificac¸˜ao e soluc¸˜ao de problemas. Nesse contexto, a DM ´e uma condic¸˜ao importante para a sa´ude p´ublica, j´a que ´e respons´avel por complicac¸˜oes ligadas a altas taxas de morbi-mortalidade, um exemplo disso ´e a RD.

A RD, especificamente, ´e uma importante complicac¸˜ao respons´avel por cegueira no adulto. O diagn´ostico da RD ´e realizado por meio de exames de fundoscopia, os quais dependem de equipamentos de alto custo e de pouca disponibilidade em pa´ıses menos desenvolvidos e em localidades remotas. Para isso, foi proposto o desenvolvimento de um sistema de baixo custo para auxiliar na triagem de RD.

1.2 OBJETIVOS

1.2.1 OBJETIVO GERAL

Desenvolver um sistema de baixo custo para auxiliar na triagem de retinopatia diab´etica em localidades com dif´ıcil acesso a cuidados oftalmol´ogicos.

(17)

1.2.2 OBJETIVOS ESPEC´IFICOS

• Avaliar lentes para acoplar no smartphone para a aquisic¸˜ao de imagens de fundo de olho;

• Calibrar rede neural para detecc¸˜ao de RD;

• Desenvolver um aplicativo de smartphone para a automatizac¸˜ao da triagem da RD;

• Validar o sistema de aquisic¸˜ao de imagens de fundo de olho utilizando testes em fantons.

1.3 ORGANIZAC¸ ˜AO DO TRABALHO

Esta dissertac¸˜ao foi dividida em quatro cap´ıtulos, o cap´ıtulo 1 referente `a introduc¸˜ao, motivac¸˜ao do trabalho e objetivos, com a contextualizac¸˜ao geral sobre o que ´e a DM, seu impacto e complicac¸˜oes, em especial a RD, como ela ´e diagnosticada e como t´ecnicas de ML podem ser utilizadas para aux´ılio do seu diagn´ostico.

O cap´ıtulo 2 discorre sobre o estado da arte e a interligac¸˜ao entre RD e ML, com o detalhamento da RD e de trabalhos relacionados ao uso de ML para o diagn´ostico de RD. O cap´ıtulo 3 refere-se ao desenvolvimento em si do projeto, o qual ´e composto pelas etapas de especificac¸˜ao das lentes, desenvolvimento da estrutura, an´alise e calibragem da rede neural, integrac¸˜ao do sistema e resultados. O cap´ıtulo 4 discorre sobre a conclus˜ao e os trabalhos futuros.

(18)

2 FUNDAMENTAC¸ ˜AO TE ´ORICA

2.1 RETINOPATIA DIAB ´ETICA

A RD ´e uma complicac¸˜ao microvascular da DM, a qual afeta os vasos sangu´ıneos do olho. Conforme a doenc¸a avanc¸a, os n´ıveis de glicose ficam permanentemente elevados e se inicia a les˜ao dos vasos da retina. Esses vasos tornam-se incontinentes e liberam sangue ou fluido sangu´ıneo para o espac¸o retiniano ou v´ıtreo, causando problemas de vis˜ao (HAMMES, 2018). A RD pode causar perda de vis˜ao por meio de dois mecanismos fisiopatol´ogicos:

• Formac¸˜ao de neovasos: os neovasos s˜ao vasos sangu´ıneos anormais que se formam na retina, por´em s˜ao vasos fr´ageis que se rompem facilmente e liberam sangue para dentro da cavidade v´ıtrea, obscurecendo ou mesmo impedindo a vis˜ao. Isso geralmente ocorre nos est´agios posteriores da doenc¸a;

• Sangue na regi˜ao macular: o fluido sangu´ıneo pode passar para a regi˜ao macular (regi˜ao da retina que corresponde `a vis˜ao central), causando edema e, consequentemente, perda de vis˜ao. Esse mecanismo fisiopatol´ogico pode ocorrer em qualquer fase da RD, embora seja mais prov´avel que ocorra em est´agios avanc¸ados da doenc¸a.

A RD surge depois de alguns anos de doenc¸a e pode ocorrer tanto em DM tipo 1 ou DM tipo 2, por´em geralmente manifesta-se mais cedo em DM tipo 1 do que em DM tipo 2. A RD n˜ao depende apenas dos valores de glicose no sangue, mas tamb´em de outros fatores, como hipertens˜ao, hipercolesterolemia, tabagismo e outro extremamente importante, que ´e o fator gen´etico, ou seja, o heredit´ario (HAMMES, 2018).

(19)

Figura 1: Figura esquem´atica dos graus de retinopatia diab´etica por meio de retnografia.

Fonte: GONC¸ ALVES (2010).

O exame mais comum para o diagn´ostico de RD ´e o exame de fundoscopia, tamb´em chamado de exame de fundo de olho. A fundoscopia pode ser realizada por um m´edico generalista, com objetivo principal de triar pacientes diab´eticos que possam ter a doenc¸a ou tamb´em pode ser realizada por um m´edico oftalmologista especialista, o qual al´em de triar, ´e o profissional mais capacitado para realizar o manejo da RD (DUKER; YANOFF, 2011).

Para realizar o exame de RD ´e necess´ario que a pupila do paciente esteja dilatada e essa dilatac¸˜ao geralmente ´e feita por meio de col´ırios midri´aticos, ou seja, col´ırios dilatadores da pupila. Com o exame, ´e poss´ıvel observar anomalias vasculares, hemorragias, pequenos aneurismas, presenc¸a de neovasos, entre outras alterac¸˜oes. Outros exames complementares tamb´em podem ser usados para a diagn´ostico, seguimento ou maior detalhamento da RD. Esses outros exames incluem a Retinografia, a Tomografia de Coerˆencia ´Optica (TCO), a qual avalia as estruturas do fundo do olho e a Angiografia Retiniana (AR), que avalia o interior do globo ocular, especialmente os vasos sangu´ıneos e o nervo ´optico (MART´INEZ-VIZCA´INO et al., 2016).

Existem dois tipos de fundoscopia: direta e indireta. A fundoscopia direta ´e realizada por meio de um oftalmosc´opio direto, o qual obt´em uma imagem com aumento de 15 vezes, por´em possui um menor campo de vis˜ao. A fundoscopia indireta ´e realizada por meio de um oftalmosc´opio indireto ou binocular, o qual gera imagens com menor aumento, por´em permite um maior campo de vis˜ao, mostrando-se melhor para detectar alterac¸˜oes focais e generalizadas de retina (DUKER; YANOFF, 2011).

(20)

O exame de fundoscopia oferece a possibilidade de um diagn´ostico precoce da RD. No entanto, o equipamento muitas vezes n˜ao est´a dispon´ıvel, especialmente para pa´ıses menos desenvolvidos e localidades remotas. Al´em disso, a fundoscopia ´e um exame que exige treinamento pr´evio por parte do profissional, o que limita a quantidade de profissionais aptos a realizar o exame. Por esses motivos, t´ecnicas diagn´osticas alternativas s˜ao usadas. Um exemplo ´e uso de smartphones em combinac¸˜ao com lentes espec´ıficas, aliadas `a t´ecnicas computacionais.

2.2 RETINOPATIA DIAB ´ETICA E MACHINE LEARNING

Inteligˆencia artificial (IA) ´e o termo usado para descrever o uso de computadores e tecnologia para simular um comportamento inteligente e pensamento cr´ıtico compar´avel a um ser humano. John McCarthy descreveu o termo IA pela primeira vez em 1956, como a ciˆencia e a engenharia de fabricac¸˜ao de m´aquinas inteligentes. Dentro da grande ´area da IA existem v´arias ´areas de aplicabilidade, como mostrado no artigo de Amisha et al. (2019). O estudo levou em conta publicac¸˜oes da plataforma Pubmed e buscas do site de busca Google, e encontrou as 9 principais ´areas de pesquisa dentro da medicina, como ilustrado na Figura 2.

Figura 2: Principais ´areas da IA na medicina.

Fonte: Adaptado de AMISHA et al.(2019).

O estudo tamb´em debateu as principais vantagens e desvantagens dessas pesquisas na ´area m´edica, ilustrado na Figura 3.

(21)

Figura 3: Balanc¸o das vantagens e desvantagens da IA.

(22)

Como conclus˜ao, apesar dos estudos ainda serem novos em diversas ´areas, o futuro da medicina ´e altamente ligado com IA.

2.3 M ´ETRICAS PARA A AVALIAC¸ ˜AO DOS ALGORITMOS DE DETECC¸ ˜AO DE RD

Existem diversas maneiras de se medir a eficiˆencia de um algoritmo, dentre as t´ecnicas exite a analise de curvas ROC.

Um gr´afico de caracter´ısticas operacionais do receptor (ROC) ´e uma t´ecnica para visualizar, organizar e selecionar classificadores com base em seu desempenho(FAWCETT, 2005), onde nos seus eixos correspondem a taxas de acerto e taxas de falso alarme de classificadores

2.4 TRABALHOS RELACIONADOS

Existem diversos trabalhos relacionados ao tema detecc¸˜ao RD e t´ecnicas de exame de fundo de olho em localidades remotas, cada qual com sua metodologia para obtenc¸˜ao das imagens, t´ecnicas de ML e base de dados utilizadas.

O trabalho de Furdova, Furdova e Krcmery (2017) realizou a an´alise de 241 pacientes com a utilizac¸˜ao de apenas uma lente de 20 dioptrias, um smartphone com 4.2 megapixels e uma luz de LED. Essa t´ecnica ´e uma alternativa para an´alise de fundo de olho em regi˜oes remotas, sendo que desses 241 pacientes, 141 deles eram homens e 100 eram mulheres. As principais alterac¸˜oes encontradas foram catarata e tracoma. A t´ecnica desenvolvida pelo estudo est´a ilustrada nas Figuras 4 e 5.

Quando havia d´uvida nas alterac¸˜oes encontradas, os m´edicos generalistas entravam em contato via e-mail com um especialista, enviavam uma foto e aguardavam seu parecer. O artigo concluiu que com o uso de smartphone e uma lente Volk 20 dioptrias era poss´ıvel obter uma imagem final de alta qualidade e reprodutibilidade.

(23)

Figura 4: T´ecnica de obtenc¸˜ao de imagem de fundo de olho.

Fonte: FURDOVA, FURDOVA e KRCMERY (2017).

No artigo de Shanmugam et al. (2014), devido `a dificuldade de obtenc¸˜ao da imagem, o autor adicionou uma luz de LED externa, para melhor iluminac¸˜ao, pois quanto mais pr´oximo o emissor de luz estiver do receptor (cˆamera), melhor ´e a captac¸˜ao da imagem. A estrutura de iluminac¸˜ao est´a ilustrada na Figura 6. Uma limitac¸˜ao destacada pelo autor ´e referente `a poss´ıvel inabilidade para a captura da imagem, j´a que, para a captac¸˜ao, a lente, celular e olho devem estar completamente alinhados e com as distˆancias corretas entre si. As imagens obtidas nesse estudo est˜ao ilustradas na Figura 7.

(24)

Figura 5: Fundo de olho obtido com lente de 20 dioptrias.

Fonte: FURDOVA, FURDOVA e KRCMERY (2017).

Figura 6: Estrutura de iluminac¸˜ao.

Fonte: SHANMUGAM et al. (2014).

No artigo Roychowdhury, Koozekanani e Parhi (2014), os autores fizeram uma an´alise de v´arias metodologias de classificac¸˜ao de RD como Classificador Gaussiano, an´alise por vetor

(25)

Figura 7: Imagens obtidas aplicando a t´ecnica.

Fonte: SHANMUGAM et al. (2014).

e AdaBoost. Foram utilizadas 2 bases de dados, DIARETDB1 e DIARETDB2 e a t´ecnica proposta pelos autores consistiu em trˆes passos. No primeiro passo, foi realizada a segmentac¸˜ao, separando o fundo dos objetos de interesse da imagem. O que foi considerado como fundo da imagem corresponde `as vascularizac¸˜oes da retina e os objetos de interesse correspondem a regi˜oes brilhantes que podem representar les˜oes.

No segundo passo, foi realizada a classificac¸˜ao das regi˜oes de poss´ıvel les˜ao, na qual s˜ao duas as possibilidades de les˜oes: les˜oes brilhantes e les˜oes vermelhas. Dentro de cada uma delas, a partir do algoritmo, ´e identificado se o padr˜ao da imagem corresponde a uma les˜ao ou n˜ao. No terceiro passo, ap´os a identificac¸˜ao e a classificac¸˜ao da poss´ıvel les˜ao, as les˜oes foram enquadradas nos crit´erios de gravidade da RD. O processo completo est´a ilustrado na Figura 8. Como resultado, foi encontrado um f-score de 0,904 para a detecc¸˜ao e graduac¸˜ao de gravidade da RD.

(26)

Figura 8: Descric¸˜ao da t´ecnica.

Fonte: Adaptado de Roychowdhury, Koozekanani e Parhi (2014).

No artigo de Gulshan et al. (2016), os autores aplicaram t´ecnicas de ML para a detecc¸˜ao de RD. Para o treinamento da rede neural, foram usados 128.175 imagens, catalogadas por 54 oftalmologistas. O artigo concluiu que, dependendo da base de treino, ´e poss´ıvel chegar a bons resultados. Com o f-score de 0,95 obtido pela t´ecnica apresentada no estudo, baseado na sensibilidade e especificidade ilustradas na Figura 9, em comparac¸˜ao ao f-score de 0,91 obtido por m´edicos de m´edia senioridade.

(27)

Figura 9: Gr´afico de sensibilidade e 1- especificidade.

Fonte: Adaptado de GULSHAN et al. (2016).

O artigo de Krause et al. (2018), baseou-se no artigo de Gulshan et al. (2016), obtendo uma melhora dos resultados do algoritmo, devido ao aumento do n´umero de imagens de treino e de refinamento, dentro da base de dados utilizada. Com isso, obteve-se um aumento do f-score de 0,95 para 0,98. A distribuic¸˜ao da base de imagens est´a ilustrada na Tabela 1.

Existem tamb´em outras abordagens para a detecc¸˜ao de RD, como demonstrado no artigo de Ogunyemi e Kermah (2015), no qual os autores utilizam-se de outros dados do paciente que n˜ao a imagem de fundo de olho, como idade, etnia, tabagismo, presenc¸a de doenc¸a vascular perif´erica, hipertens˜ao, neuropatia, depress˜ao, dislipidemia, insulinoterapia, uso de medicamentos cont´ınuos, entre outros. O algoritmo foi testado em bases de dados privadas pr´oprias e a base EyePACS-2 que ´e p´ublica. Foi verificado um melhor resultado com as bases de dados privadas, obtendo-se um f-score de 0,72.

Outro trabalho que segue a mesma abordagem do estudo de Ogunyemi e Kermah (2015) ´e o estudo de Voets, Møllersen e Bongo (2019), o qual utiliza informac¸˜oes cl´ınicas

(28)

Tabela 1: Distribuic¸˜ao da base de imagens.

Fonte: Adaptado de KRAUSE et al. (2018).

e laboratoriais dos pacientes para predizer a RD. O estudo encontrou, por meio de t´ecnicas de ML, os principais fatores predisponentes da RD, que foram o uso de insulina e anos de evoluc¸˜ao da doenc¸a. Ap´os a detecc¸˜ao, a base foi novamente separada, a fim de se obter um melhor refinamento, como ilustrado na Figura 10. O f-score obtido foi de 0,83.

(29)

Figura 10: Divis˜ao da base de dados.

Fonte: Adaptado de Voets, Møllersen e Bongo (2019).

O artigo de Takahashi et al. (2017) utilizou t´ecnicas de DL para realizar a detecc¸˜ao e graduac¸˜ao de RD, com objetivo de estratificar os graus de RD para o direcionamento do tratamento. O exame de fundo de olho cl´assico captura apenas parte do total do fundo de olho, correspondendo apenas a uma parcela de 45 graus, fato esse que pode limitar a ´area de detecc¸˜ao de alterac¸˜oes relativas `a RD. O artigo de Takahashi et al. (2017), propˆos um modelo de composic¸˜ao de imagens a partir de capturas m´ultiplas, de diferentes ˆangulos, o que permite um aumento de ´area analisada para al´em de apenas 45 graus. Essa abordagem permite a detecc¸˜ao de poss´ıveis les˜oes de RD que n˜ao s˜ao comumente detectadas pelo exame de fundo de olho tradicional, como ilustrado na Figura 11.

(30)

Figura 11: Demonstrac¸˜ao da amplitude de exame.

Fonte: Adaptado de TAKAHASHI et al. (2017).

Com o aux´ılio da rede neural GoogLeNet, os autores realizaram a concatenac¸˜ao das imagens obtidas nos m´ultiplos ˆangulos, como ilustrado na Figura 12. Foi usada uma base de imagens com 9.939 fotos de fundo de olho, de um total de 2.740 pacientes. O modelo foi treinado com a rede neural GoogLeNet, das 9.939 fotos de fundo de olhos, foram classificadas 4.709 imagens, nas quais 95% dessas imagens classificadas foram usadas para treinamento da rede neural e 5% para teste. O artigo de Takahashi et al. (2017) utilizou a Classificac¸˜ao de Davis e foi atingido um f-score de 0,64 para detecc¸˜ao e graduac¸˜ao de RD.

(31)

Figura 12: Demonstrac¸˜ao da concatenac¸˜ao das imagens.

(32)

3 DESENVOLVIMENTO

Essa dissertac¸˜ao tem como objetivo propor e analisar m´etodos para o desenvolvimento de um sistema de triagem de RD, usando imagens de fundo de olho obtidas por um telefone celular, em conjunto com lentes. Para isso, o trabalho foi dividido em quatro etapas, como ilustrado na Figura 13.

Figura 13: Etapas da criac¸˜ao do sistema.

Fonte: Autoria pr´opria.

A etapa 1 correspondeu `a especificac¸˜ao das lentes e a etapa 2 consistiu no desenvolvimento da estrutura f´ısica do projeto para a obtenc¸˜ao das imagens. Na etapa 3, foi realizada a an´alise e calibragem da rede neural a ser utilizada para o processamento das imagens. A etapa 4 correspondeu `a integrac¸˜ao do sistema. Com isso, o m´etodo consistiu em obter a imagem do fundo de olho, a qual foi ent˜ao enviada para um servidor, usando uma Application Programming Interface(API), para posterior processamento. O processamento foi realizado por meio de uma rede neural treinada. Ap´os o processamento da imagem, a rede neural retornou o resultado da triagem para a RD.

3.1 ESPECIFICAC¸ ˜AO DAS LENTES

Para a obtenc¸˜ao das imagens, foram analisadas seis lentes, descritas a seguir e ilustradas na Figura 14.

(33)

Figura 14: Lentes testadas.

Fonte: Autoria pr´opria.

a) Lente de vidro ´optico Leory 32 dioptrias;

b) Lente ´otica acr´ılica Lorben 240 dioptrias;

c) Lente de vidro ´optico APEXEL 32 dioptrias;

d) Lente acr´ılica ´optica AUKEY de 120 dioptrias;

e) Lupa profissional com lentes ´opticas de 20 dioptrias;

f) Lente de vidro ´optico com revestimento anti-reflexo BBAR VOLK 20 dioptrias.

Entre as lentes, existem duas categorias: acopl´aveis e n˜ao acopl´aveis. As lentes acopl´aveis, representadas pelas lentes A, B, C e D, s˜ao acopladas `a cˆamera do celular e s˜ao utilizadas pr´oximas ao olho do paciente. As lentes n˜ao acopl´aveis, representadas pelas lentes E e F, s˜ao posicionadas a aproximadamente 3 a 5 cent´ımetros do olho do paciente, e o celular, junto com a luz LED ativada, ´e posicionado a aproximadamente 30 cent´ımetros da lente. O celular usado para obter as imagens foi um Xiaomi Redmi 4A, com uma cˆamera de 13 megapixels (4160 x 3120).

3.2 DESENVOLVIMENTO DA ESTRUTURA

Ap´os a especificac¸˜ao das lentes, iniciou-se o desenvolvimento da estrutura para a aquisic¸˜ao das imagens. Primeiramente, a obtenc¸˜ao da imagem foi realizada com o aux´ılio de fantons, a fim de simular um paciente deitado em um quarto escuro. O examinador foi posicionado em p´e, com a m˜ao dominante segurando a lente e a m˜ao n˜ao dominante segurando o aparelho celular, do mesmo modo como proposto do artigo de Shanmugam et al. (2014),

(34)

ilustrado na Figura 15. As distˆancias necess´arias, descritas acima, entre o fantom representando o olho, a lente e o aparelho celular, foram respeitadas.

Figura 15: Imagem da t´ecnica.

(35)

Essa t´ecnica para obtenc¸˜ao de imagens se mostrava n˜ao adequada devido `as vari´aveis olho, celular e lente n˜ao estarem estabilizadas. Como o correto posicionamento desses elementos era imprescind´ıvel, foi optado pela criac¸˜ao e desenvolvimento de uma estrutura f´ısica personalizada, est´avel, m´ovel em todos os eixos, feita por meio de modelagem 3D e impress˜ao 3D, para a obtenc¸˜ao das imagens.

A Modelagem 3D ´e o processo de desenvolvimento de uma representac¸˜ao matem´atica de qualquer superf´ıcie de um objeto (seja inanimado ou vivo) em trˆes dimens˜oes, atrav´es de um software especializado. O modelo pode ser representado por meio de uma imagem bidimensional ou usado em uma simulac¸˜ao computacional. A modelagem 3D ´e usada em v´arios setores, como filmes, animac¸˜oes e jogos, design de interiores, arquitetura, medicina e engenharias em geral. O modelo tamb´em pode ser criado fisicamente usando dispositivos de impress˜ao 3D (MASSIE, 1998). A impress˜ao 3D ´e a tecnologia de fabricac¸˜ao na qual um objeto tridimensional ´e criado, por deposic¸˜ao ou construc¸˜ao, a partir de camadas sucessivas de material (MICHALSKI, 2014).

Para a arquitetura da estrutura f´ısica foi utilizado o princ´ıpio de navegac¸˜ao em x, y, z, a fim de se alcanc¸ar uma melhor mobilidade. Para isso, a estrutura foi modelada utilizando o software Blender v2.79b e criada a partir de impress˜oes 3D, barras roscadas e barras lisas. A estrutura apresentou em seu comprimento duas barras lisas de um metro cada uma para a profundidade, quatro barras roscadas de 40 cm juntamente com porcas para a navegac¸˜ao na altura e seis barras lisas de 40 cm para a navegac¸˜ao lateral.

Todas as barras foram presas com pec¸as projetadas no software Blender v2.79b e impressas com impress˜ao 3D. Para a imobilizac¸˜ao do paciente, foi modelado e impresso um suporte para o queixo do paciente, utilizando o filamento em Poliuretano Termopl´astico (TPU) para maior conforto e todas as pec¸as de fixac¸˜ao foram impressas utilizando o filamento em Acrilonitrila Butadieno Estireno (ABS). A estrutura projetada est´a ilustrada na Figura 16 e o suporte para o queixo do paciente est´a ilustrado na Figura 17.

(36)

Figura 16: Projeto da estrutura.

Fonte: Autoria pr´opria.

Figura 17: Suporte de queixo.

Fonte: Autoria pr´opria.

Para a melhor navegac¸˜ao das barras lisas, foram adicionados rolamentos lineares, ilustrados na Figura 18.

Foram criados suportes para a maior estabilidade da lente e do celular, como ilustrado na Figura 19.

(37)

Figura 18: Rolamento na barra lisa.

Fonte: Autoria pr´opria.

3.3 AN ´ALISE E CALIBRAGEM DA REDE NEURAL

Para a construc¸˜ao do sistema de processamento das imagens de fundo de olho, feito a partir de t´ecnicas de ML, foram necess´arios insumos tecnol´ogicos como sistemas operacionais, linguagens computacionais e frameworks. Para a escolha do framework mais adequado para o processamento da rede neural necess´aria para realizar a detecc¸˜ao da RD, foram analisados diversos frameworks, usando como base o estudo de Schrimpf et al. (2016). Esse estudo demonstrou que, para o processamento bidimensional de imagens, o TensorFlow mostrou um melhor resultado. O TensorFlow tamb´em forc¸a o c´odigo a ser mais estruturado, reduzindo os erros (SCHRIMPF, 2016).

Al´em disso, o TensorFlow tem uma comunidade muito ativa, com mais de 70.000 forksno GitHub e tamb´em uma forte tendˆencia de busca no Google, a qual est´a ilustrada na Figura 20. Por essas raz˜oes, o TensorFlow foi escolhido para ser utilizado para o processamento das imagens bidimensionais de fundo de olho.

(38)

Figura 19: Suporte de lente e celular.

Fonte: Autoria pr´opria.

Figura 20: Gr´afico comparativo do n ´umero de forks no Github

Fonte: SCHRIMPF et al. (2016)

Ap´os a escolha do Tensorflow como framework de ML, foi realizado o treinamento da rede neural. Para o treinamento, foi utilizada a base EyePACS-1, a qual consiste em um conjunto de imagens de alta resoluc¸˜ao de retinas de olhos esquerdos e direitos, tiradas sob uma variedade de condic¸˜oes de imagem. As imagens da base s˜ao identificadas com um identificador

(39)

´unico e se pertencem ao olho esquerdo ou direito. Al´em disso, a base EyePACS-1, j´a possui o r´otulo de presenc¸a e de grau de RD.

A base de dados EyePACS-1 possui um total de 128.175 imagens e foram escolhidas aleatoriamente 3.800 imagens, j´a com suas respectivas classificac¸˜oes de gravidade, para serem utilizadas. As 3.800 imagens foram divididas em 3.200 imagens para treino da rede neural e 600 imagens para os testes do sistema. A divis˜ao da base de imagens encontra-se ilustrada na Figura 21.

Figura 21: Divis˜ao da base de imagens.

Fonte: Autoria pr´opria.

3.4 INTEGRAC¸ ˜AO DO SISTEMA

Para o desenvolvimento do sistema, foram utilizados o sistema operacional Android, as linguagens computacionais Java e Python, o protocolo Json e o framework TensorFlow.

O Android ´e um sistema operacional de c´odigo aberto para dispositivos m´oveis, aliado a um projeto de c´odigo aberto correspondente, liderado pela empresa Google. Esse sistema operacional permite a criac¸˜ao de produtos de consumo, como por exemplo aplicativos, com c´odigo-fonte personaliz´avel, o qual pode ser transferido para praticamente qualquer dispositivo, com documentac¸˜ao p´ublica dispon´ıvel (ANDROID, 2019).

(40)

O Java ´e uma linguagem de programac¸˜ao orientada a objetos, a qual possui compilac¸˜ao por meio de uma m´aquina virtual, diferentemente das linguagens de programac¸˜ao modernas. O Java ´e a base para praticamente todos os tipos de aplicac¸˜oes em rede e ´e o padr˜ao global para o desenvolvimento e distribuic¸˜ao de aplicac¸˜oes m´oveis e incorporadas, jogos, conte´udos baseados na Web e softwares em geral (JAVA, 2019).

O Python ´e uma linguagem de programac¸˜ao, lanc¸ada em 1991, com atual desenvolvimento open source. Suas principais caracter´ısticas s˜ao a sintaxe concisa de f´acil leitura e entendimento, biblioteca de alto padr˜ao e presenc¸a de frameworks desenvolvidos no modelo open source. Suas principais aplicac¸˜oes se d˜ao para o processamento de dados e textos, desenvolvimento de softwares e aplicativos (PYTHON, 2019).

O Json, um acrˆonimo de JavaScript Object Notation, o qual corresponde a um formato compacto, de padr˜ao aberto independente, de troca de dados simples e r´apida entre sistemas, que pode ser utilizada para otimizar aplicac¸˜oes (JSON, 2019).

Para realizar a conex˜ao entre a captura da imagem de fundo de olho e a rede neural fez-se necess´ario a criac¸˜ao de uma interface por meio de um aplicativo para dispositivo m´ovel. O sistema operacional usado no dispositivo m´ovel foi a vers˜ao 8.0 do Android e o aplicativo m´ovel usou a vers˜ao 9.0.1 da linguagem Java.

A API utilizou o protocolo Json, cujo servidor http foi o Nginx vers˜ao 1.6.2., o qual combinado com o Gunicorn, vers˜ao 19.7.1, possibilitou a compatibilidade com a linguagem Python, utilizada no servidor. Em relac¸˜ao ao servidor, o JavaScript foi utilizado para receber e processar os dados. Em seguida, a imagem foi processada em uma rede neural feita com o TensorFlowvers˜ao 1.5, o qual usa a linguagem Python vers˜ao 3.0.

A rede neural utilizada foi treinada usando o conjunto de dados EyePACS-1, que corresponde a um banco de imagens de olhos saud´aveis e olhos com RD. Ap´os o processamento, o sistema retornou `a aplicac¸˜ao a probabilidade de o paciente ter RD. A estrutura do projeto ´e ilustrada na Figura 22.

(41)

Figura 22: Arquitetura do sistema.

Fonte: Autoria pr´opria.

A fim de testar o sistema por completo, foram realizados testes em um ambiente de simulac¸˜ao, utilizando um sistema de fantom para representar o fundo de olho a ser analisado. Para a realizac¸˜ao do teste do sistema, foi utilizado um aparelho celular para representar o olho humano, no qual as imagens representadas correspondiam `a base de imagens EyePACS-1. Dessa base, foram selecionadas 300 imagens previamente catalogadas em imagens de fundo de olho com RD e 300 imagens de fundo de olho sem RD.

A partir disso, o aplicativo realizava a captura da imagem de fundo de olho, a qual era enviada para o servidor para o processamento na rede neural. Ap´os o t´ermino do processamento, o servidor retornava para o usu´ario, por meio do aplicativo, a probabilidade da existˆencia da RD. A estrutura para a realizac¸˜ao do teste foi ilustrada na Figura 23 e a aplicac¸˜ao mobile foi ilustrada na Figura 24.

(42)

Figura 23: Teste do sistema.

Fonte: Autoria pr´opria.

Figura 24: Tela da aplicac¸˜ao mobile.

(43)

3.5 RESULTADOS

Como resultados, foi escolhida a lente n˜ao acopl´avel F, a qual se tinha a melhor obtenc¸˜ao de imagens. Em seguida, foram testadas t´ecnicas de aquisic¸˜ao de imagens e escolhido e implementado uma estrutura pr´opria para obtenc¸˜ao e processamento das imagens. O m´etodo proposto constituiu em um sistema integrado, composto de software e estrutura f´ısica.

Ap´os os testes em fantons, verificou-se que as lentes acopl´aveis n˜ao permitem um ajuste adequado do foco, o que resulta em uma imagem n˜ao adequada para o prop´osito do estudo. As lentes n˜ao acopl´aveis permitem o ajuste manual do foco, alterando a distˆancia entre o fantom, representando o olho do paciente, e a lente. Quando comparado com as lentes E e F n˜ao acopl´aveis, um melhor resultado foi observado com a lente F, Volk 20D, devido ao seu material ´optico de vidro e seu revestimento antirreflexo. Com isso, a lente F foi escolhida para obtenc¸˜ao das imagens de fundo do olho.

Ambos os estudos de Furdova, Furdova e Krcmery (2017) e de Shanmugam et al. (2014) usaram as lentes di´optricas VOLK 20 para obter imagens do fundo do olho, com resultados satisfat´orios. Esse fato tamb´em contribuiu para a escolha da lente VOLK 20 ser utilizada neste projeto.

Em seguida, foi realizada a comparac¸˜ao das duas t´ecnicas de aquisic¸˜ao de imagem: t´ecnica referente ao artigo (SHANMUGAM et al., 2014) e o m´etodo pr´oprio proposto. O m´etodo proposto foi constitu´ıdo de uma estrutura f´ısica personalizada, impressa com impressora 3D, m´ovel nos eixos x, y e z, contando com apoio para o queixo do paciente, apoio para lente e apoio para o celular. Verificou-se um melhor desempenho ao utilizar a estrutura do m´etodo pr´oprio, pelo motivo de que todos os elementos (lente, celular e paciente) estavam estabilizadas. A estrutura final est´a ilustrada na Figura 25.

(44)

Figura 25: Estrutura final do projeto.

Fonte: Autoria pr´opria.

Em relac¸˜ao `a an´alise dos frameworks de ML, o TensorFlow foi escolhido devido a sua forte comunidade e tamb´em por seu uso na detecc¸˜ao de RD em exames de fundo ocular que podem ser observados no artigo (GULSHAN et al., 2016).

Ap´os a escolha realizada em cada etapa, realizou-se o teste em fantom, usando a base EyePACS-1 com 600 imagens, sendo projetada em tela de celular, simulando o fundo de olho. O resultado do teste integrado est´a representado nas Tabelas 2 e 3 e na Figura 26.

Tabela 2: Matriz de confus˜ao.

x Ausente Presente

Negativo 212 56

Positivo 88 244

Fonte: Autoria pr´opria.

Tabela 3: Tabela de resultado.

Precis˜ao 0,73 Recall 0,81 F-Score 0,77

(45)

Figura 26: Curva ROC.

Fonte: Autoria pr´opria.

A captura da imagem com o sistema completo, rodando em fantom est´a ilustrado na Figura 27.

(46)

Figura 27: Teste do sistema.

Fonte: Autoria pr´opria.

O valor de F-score baixo encontrado nesse estudo deu-se pelo fato de que o treinamento e a validac¸˜ao da RN terem sido realizados em diferentes ambientes, sendo que o treinamento foi feito com imagens de fundoscopia e o teste pr´atico ter sido realizado utilizando o sistema proposto. Assim, para um poss´ıvel melhoramento nos resultados, faz-se necess´ario uma melhora na captura das imagens.

(47)

4 CONCLUS ˜AO

A DM ´e uma condic¸˜ao muito prevalente, com importante impacto s´ocio-econˆomico mundialmente, principalmente na atenc¸˜ao b´asica da sa´ude p´ublica, e ´e respons´avel por grandes n´umeros de complicac¸˜oes, a exemplo da RD. A RD por si s´o ´e uma importante causa de cegueira em adultos. O diagn´ostico da RD ´e realizado por meio de exames de fundoscopia, os quais dependem de material adequado e de profissionais qualificados para realiz´a-los, o que resulta em dificuldades de acesso `a fundoscopia em pa´ıses menos desenvolvidos e em localidades remotas. Para isso, foi proposto o desenvolvimento de um sistema para auxiliar na triagem de RD, com foco principal em seu uso na atenc¸˜ao b´asica.

O uso de smartphones com lentes acopladas para realizar um exame de fundo de olho ´e uma alternativa eficiente, de f´acil acesso e barata. Essa t´ecnica vem sendo cada vez mais utilizada, como demonstrado no estudo de Furdova, Furdova e Krcmery (2017) e o estudo de Shanmugam et al. (2014).

Por meio deste estudo, foi proposto um sistema de triagem para essa doenc¸a por meio do uso de aplicativos e lentes m´oveis apropriados, a fim de melhorar a acessibilidade dos pacientes a esse tipo de exame, principalmente a n´ıvel de atenc¸˜ao b´asica. O sistema de triagem foi composto de uma estrutura f´ısica e de um sistema integrado de software.

Uma limitac¸˜ao do trabalho est´a relacionada aos testes terem sidos realizados com fantons, o que acarretou uma reduc¸˜ao de assertividade da RN, devido `a RN ter sido treinada com imagens ideais. Apesar das limitac¸˜oes, este estudo demonstrou ser uma opc¸˜ao vi´avel para melhorar a acessibilidade e detecc¸˜ao da RD em localidades remotas e com pouco acesso a cuidados oftalmol´ogicos.

4.1 TRABALHOS FUTUROS

Para trabalhos futuros, alguns pontos devem ser abordados. Em relac¸˜ao `a estrutura f´ısica, s˜ao necess´arios ajustes dimensionais relacionados aos eixos x, y e z, a fim de melhorar a mobilidade e reprodutibilidade da estrutura. Al´em disso, faz-se necess´ario a produc¸˜ao de um plano de montagem da estrutura para facilitar sua aplicabilidade na atenc¸˜ao prim´aria. Outro ponto se relaciona com a necessidade de melhorar e refinar o treinamento da rede neural utilizada. Isso pode ser atingido por meio do treinamento da rede, utilizando como base de dados imagens de fundo de olho de pacientes reais, obtidas em programas de prevenc¸˜ao de RD,

(48)

realizados por meio de mutir˜oes, como o programa Retinopatia do Bem (2019), na cidade de Curitiba.

Um melhor treinamento da rede neural possui como objetivo alcanc¸ar um melhor f-score. Outra maneira de aumentar o f-score, refere-se `a utilizac¸˜ao de outros dados que n˜ao sejam apenas imagens de fundo de olho, como informac¸˜oes cl´ınicas e laboratoriais dos pacientes, para serem utilizados pelo sistema.

Al´em disso, mostrou-se necess´ario a implementac¸˜ao de um funcionamento offline do sistema, para facilitar a obtenc¸˜ao das imagens em localidades com acesso limitado `a internet.

Como a RD possui uma classificac¸˜ao em graus bem definida e a escolha do tipo do tratamento depende do grau da classificac¸˜ao da RD, uma importante implementac¸˜ao para trabalhos futuros seria, ap´os identificar a presenc¸a de RD na imagem, tamb´em j´a apresentar automaticamente o grau de RD encontrado na imagem analisada.

Por fim, realizar a implementac¸˜ao do sistema em localidades remotas. Para a realizac¸˜ao da implementac¸˜ao do sistema s˜ao necess´arios alguns requisitos como treino da RN em pacientes reais, adequac¸˜ao da estrutura f´ısica para uma melhor experiˆencia do usu´ario, identificac¸˜ao do perfil alvo de pacientes, escolha entre a esfera p´ublica ou privada para a implementac¸˜ao do sistema e escolha das localidades priorit´arias que possam se beneficiar com o sistema de triagem.

(49)

REFER ˆENCIAS

AMISHA et al. Overview of artificial intelligence in medicine. Journal Of Family Medicine And Primary Care, [s.l.], v. 8, n. 7, p.2328-2328, 2019. Medknow. http://dx.doi.org/10.4103/jfmpc.jfmpc 440 19.

ANDROID. About the Android Open Source Project. Dispon´ıvel em: <https://source.android.com/ >. Acesso em: 18 jul. 2019.

BENGIO, Y.. Learning Deep Architectures for AI. Foundations And Trends R In Machine Learning, [s.l.], v. 2, n. 1, p.1-127, 2009. Now Publishers. http://dx.doi.org/10.1561/2200000006.

DENG, Li. Deep Learning: Methods and Applications. Foundations And Trends R In Signal Processing, [s.l.], v. 7, n. 3-4, p.197-387, 2014. Now Publishers. http://dx.doi.org/10.1561/2000000039.

DUKER, Jay S.; YANOFF, Myron. Oftalmologia. 3. ed. Rio de Janeiro: Elsevier Brasil, 2011. 1552 p.

ESTEVA, Andre et al. Dermatologist-level classification of skin cancer with deep neural networks. Nature, [s.l.], v. 542, n. 7639, p.115-118, 25 jan. 2017. Springer Science and Business Media LLC. http://dx.doi.org/10.1038/nature21056.

FAWCETT, Tom. An introduction to ROC analysis. Pattern Recognition Letters, [s.l.], v. 27, n. 8, p.861-874, jun. 2006. Elsevier BV. http://dx.doi.org/10.1016/j.patrec.2005.10.010.

FURDOVA, A.; FURDOVA, A.; KRCMERY, V.. Our experience with smartphone and spherical lens for the eye fundus examination during humanitarian project in Africa. International Journal Of Ophthalmology, [s.l.], 18 jan. 2017. Press of International Journal of Ophthalmology (IJO Press). http://dx.doi.org/10.18240/ijo.2017.01.25.

(50)

FOROUZANFAR, Mohammad H et al. Global, regional, and national comparative risk assessment of 79 behavioural, environmental and occupational, and metabolic risks or clusters of risks in 188 countries, 1990–2013: a systematic analysis for the Global Burden of Disease Study 2013. The Lancet, [s.l.], v. 386, n. 10010, p.2287-2323, dez. 2015. Elsevier BV. http://dx.doi.org/10.1016/s0140-6736(15)00128-2.

GONC¸ ALVES, Luis. Oftalmoscopia – Manual pr´atico . Porto: Lidel, 2010.

GULSHAN, Varun et al. Development and Validation of a Deep Learning Algorithm for Detection of Diabetic Retinopathy in Retinal Fundus Photographs. Jama, [s.l.], v. 316, n. 22, p.2402-2406, 13 dez. 2016. American Medical Association (AMA). http://dx.doi.org/10.1001/jama.2016.17216.

HAMMES, Hans-peter. Diabetic retinopathy: hyperglycaemia, oxidative stress and beyond. Diabetologia, [s.l.], v. 61, n. 1, p.29-38, 24 set. 2017. Springer Nature. http://dx.doi.org/10.1007/s00125-017-4435-8.

INTERNATIONAL DIABETES FEDERATION. IDF DIABETES ATLAS Sixth edition. Dispon´ıvel em: <https://idf.org/e-library/epidemiology-research/diabetes-atlas.html>. Acesso em: 10 jul. 2019.

JAVA. Obtenha Informac¸˜oes sobre a Tecnologia Java. Dispon´ıvel em: <https://www.java.com/pt BR/about/ >. Acesso em: 18 jul. 2019

JSON. The JSON Data Interchange Standard. Dispon´ıvel em: <http://json.org/json-pt.html >. Acesso em: 18 jul. 2019

KASPER, Dennis L. et al. Medicina interna de Harrison. 19. ed. Porto Alegre: AMGH, 2017.

KOHAVI, Ron; PROVOST, Foster. Glossary of Terms: Special Issue on Applications of Machine Learning and the Knowledge Discovery Process. Boston: Kluwer Academic Publishers, 1998.

(51)

Standards for Evaluating Machine Learning Models for Diabetic Retinopathy. Ophthalmology, [s.l.], v. 125, n. 8, p.1264-1272, ago. 2018. Elsevier BV. http://dx.doi.org/10.1016/j.ophtha.2018.01.034.

MART´INEZ-VIZCA´INO, Vicente et al. The Accuracy of Diagnostic Methods for Diabetic Retinopathy: A Systematic Review and Meta-Analysis. Plos One, [s.l.], v. 11, n. 4, p.411-421, 28 abr. 2016. Public Library of Science (PLoS). http://dx.doi.org/10.1371/journal.pone.0154411.

MASSIE, T.. A tangible goal for 3D modeling. Ieee Computer Graphics And Applications, [s.l.], v. 18, n. 3, p.62-65, 1998. Institute of Electrical and Electronics Engineers (IEEE). http://dx.doi.org/10.1109/38.674973.

MICHALSKI, Mark H.; ROSS, Joseph S.. The Shape of Things to Come. Jama, [s.l.], v. 312, n. 21, p.2213-2219, 3 dez. 2014. American Medical Association (AMA). http://dx.doi.org/10.1001/jama.2014.9542.

MINIST ´ERIO DA SA ´UDE. Portaria no2.488, de 21 de outubro de 2011. Pol´ıtica Nacional de Atenc¸˜ao B´asica. Bras´ılia, 2011.

PYTHON. Python Software Foundation. Dispon´ıvel em: <https://www.python.org/psf/ >. Acesso em: 18 jul. 2019

RETINOPATIA DO BEM. Ac¸˜ao volunt´aria criada com objetivo de conscientizar sobre a Diabetes e a Retinopatia Diab´etica. Dispon´ıvel em: <http://retinadobem.com.br >. Acesso em: 08 set. 2019.

ROYCHOWDHURY, Sohini; KOOZEKANANI, Dara D.; PARHI, Keshab K.. DREAM: Diabetic Retinopathy Analysis Using Machine Learning. Ieee Journal Of Biomedical And Health Informatics, [s.l.], v. 18, n. 5, p.1717-1728, set. 2014. Institute of Electrical and Electronics Engineers (IEEE). http://dx.doi.org/10.1109/jbhi.2013.2294635.

SCHMIDHUBER, J¨urgen. Deep learning in neural networks: An overview. Neural Networks, [s.l.], v. 61, p.85-117, jan. 2015. Elsevier BV. http://dx.doi.org/10.1016/j.neunet.2014.09.003.

(52)

SCHRIMPF, M. Should I use TensorFlow. 2016

SEURING, Till; ARCHANGELIDI, Olga; SUHRCKE, Marc. The Economic Costs of Type 2 Diabetes: A Global Systematic Review. Pharmacoeconomics, [s.l.], v. 33, n. 8, p.811-831, 19 mar. 2015. Springer Nature. http://dx.doi.org/10.1007/s40273-015-0268-9.

SHANMUGAM, Maheshp et al. Fundus imaging with a mobile phone: A review of techniques. Indian Journal Of Ophthalmology, [s.l.], v. 62, n. 9, p.960-967, 2014. Medknow. http://dx.doi.org/10.4103/0301-4738.143949.

SIMON, Phil. Too Big to Ignore: The Business Case for Big Data. Wiley, 2013. 257 p.

TAKAHASHI, Hidenori et al. Applying artificial intelligence to disease staging: Deep learning for improved staging of diabetic retinopathy. Plos One, [s.l.], v. 12, n. 6, 22 jun. 2017. Public Library of Science (PLoS). http://dx.doi.org/10.1371/journal.pone.0179790.

TSAO, Hsin-yi; CHAN, Pei-ying; SU, Emily Chia-yu. Predicting diabetic retinopathy and identifying interpretable biomedical features using machine learning algorithms. Bmc Bioinformatics, [s.l.], v. 19, n. 9, ago. 2018. Springer Nature. http://dx.doi.org/10.1186/s12859-018-2277-0.

VOETS, Mike; MØLLERSEN, Kajsa; BONGO, Lars Ailo. Reproduction study using public data of: Development and validation of a deep learning algorithm for detection of diabetic retinopathy in retinal fundus photographs. Plos One, [s.l.], v. 14, n. 6, 6 jun. 2019. Public Library of Science (PLoS). http://dx.doi.org/10.1371/journal.pone.0217541.

WORLD HEALTH ORGANIZATION A. Definition, Diagnosis and

Classification of Diabetes Mellitus and its Complications. Dispon´ıvel em: <https://apps.who.int/iris/bitstream/handle/10665/66040/WHO NCD NCS 99.2.pdf?sequence =1 >. Acesso em: 8 jul. 2019.

WORLD HEALTH ORGANIZATION B. Global report on diabetes. Dispon´ıvel em: <https://apps.who.int/iris/bitstream/handle/10665/204871/9789241565257 eng.pdf;jsessi

(53)

onid=BB7924141AAC1B047B83D415222B0684?sequence=1>. Acesso em: 13 jul. 2019.

ZHOU, B et al. Worldwide trends in diabetes since 1980: a pooled analysis of 751 population-based studies with 4·4 million participants. The Lancet, [s.l.], v. 387, n. 10027, p.1513-1530, abr. 2016. Elsevier BV. http://dx.doi.org/10.1016/s0140-6736(16)00618-8.

(54)
(55)

/*

* Copyright (C) 2016 The Android Open Source Project *

* Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at

*

*     http://www.apache.org/licenses/LICENSE-2.0 *

* Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS,

* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License.

*/ package com.google.android.cameraview.demo; import android.Manifest; import android.app.Dialog; import android.content.DialogInterface; import android.content.pm.PackageManager; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Build; import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.support.annotation.NonNull; import android.support.annotation.StringRes; import android.support.design.widget.FloatingActionButton; import android.support.v4.app.ActivityCompat; import android.support.v4.app.DialogFragment; import android.support.v4.content.ContextCompat; import android.support.v7.app.ActionBar; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Toast; import com.google.android.cameraview.AspectRatio; import com.google.android.cameraview.CameraView; import com.google.gson.Gson; import java.io.File; import java.io.FileOutputStream; import java.util.Random; import okhttp3.MediaType; import okhttp3.MultipartBody; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.RequestBody; import okhttp3.Response; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60

(56)

/**

* This demo app saves the taken picture to a constant file. * $ adb pull

/sdcard/Android/data/com.google.android.cameraview.demo/files/Pictures/pictur e.jpg

*/

public class MainActivity extends AppCompatActivity implements        ActivityCompat.OnRequestPermissionsResultCallback,        AspectRatioFragment.Listener {

   private AlertDialog alerta;

   private static final String TAG = "MainActivity";    private Result result;

   private static final int REQUEST_CAMERA_PERMISSION = 1;    private static final int REQUEST_STORAGE_PERMISSION = 2;    private static final String FRAGMENT_DIALOG = "dialog";    private static final int[] FLASH_OPTIONS = {

     CameraView.FLASH_OFF,      CameraView.FLASH_ON,   };

   private static final int[] FLASH_ICONS = {      R.drawable.ic_flash_off,

     R.drawable.ic_flash_on,   };

   private static final int[] FLASH_TITLES = {      R.string.flash_off,

     R.string.flash_on,   };

   private int mCurrentFlash;    private CameraView mCameraView;    private Handler mBackgroundHandler;

   private View.OnClickListener mOnClickListener = new View.OnClickListener() {

       @Override        //picture taken

       public void onClick(View v) {      switch (v.getId()) {

     case R.id.take_picture:

     if (mCameraView != null) {

//       if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.M) { //       if (ContextCompat.checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE ) == PackageManager.PERMISSION_GRANTED) { //       Log.v(TAG,"Permission is granted"); //       mCameraView.takePicture(); //       }else { 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113

(57)

//      

ActivityCompat.requestPermissions(MainActivity.this, new String[]

{Manifest.permission.WRITE_EXTERNAL_STORAGE}, REQUEST_STORAGE_PERMISSION); //       } //       }else {      mCameraView.takePicture(); //       }       }      break;       }       }   };    @Override

   protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);

       setContentView(R.layout.activity_main);

       mCameraView = (CameraView) findViewById(R.id.camera);        if (mCameraView != null) {

     mCameraView.addCallback(mCallback);       }

       FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.take_picture);

       if (fab != null) {

     fab.setOnClickListener(mOnClickListener);       }

       Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);        setSupportActionBar(toolbar);

       ActionBar actionBar = getSupportActionBar();        if (actionBar != null) {

     actionBar.setDisplayShowTitleEnabled(false);       }

  }

   @Override

   protected void onResume() {        super.onResume();        checkcamera();   }

   protected void checkcamera() {

       if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA)      == PackageManager.PERMISSION_GRANTED) {      mCameraView.start();       } else if (ActivityCompat.shouldShowRequestPermissionRationale(this,      Manifest.permission.CAMERA)) {      ConfirmationDialogFragment       .newInstance(R.string.camera_permission_confirmation,      new String[]{Manifest.permission.CAMERA},      REQUEST_CAMERA_PERMISSION,      R.string.camera_permission_not_granted)       .show(getSupportFragmentManager(), FRAGMENT_DIALOG);       } else {

     ActivityCompat.requestPermissions(this, new String[] {Manifest.permission.CAMERA},      REQUEST_CAMERA_PERMISSION);       }   } 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168

(58)

   @Override

   protected void onPause() {        mCameraView.stop();        super.onPause();   }

   @Override

   protected void onDestroy() {        super.onDestroy();

       if (mBackgroundHandler != null) {

     if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {      mBackgroundHandler.getLooper().quitSafely();       } else {      mBackgroundHandler.getLooper().quit();       }      mBackgroundHandler = null;       }   }    @Override

   public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,

      @NonNull int[] grantResults) {        switch (requestCode) {

     case REQUEST_CAMERA_PERMISSION:

     if (permissions.length != 1 || grantResults.length != 1) {      throw new RuntimeException("Error on requesting camera permission.");

      }

     if (grantResults[0] != PackageManager.PERMISSION_GRANTED) {      Toast.makeText(this,

R.string.camera_permission_not_granted,

     Toast.LENGTH_SHORT).show();       }

     // No need to start camera here; it is handled by onResume

     break;

     case REQUEST_STORAGE_PERMISSION:

     if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {      mCameraView.takePicture();

      }       }

  }

   @Override

   public boolean onCreateOptionsMenu(Menu menu) {        getMenuInflater().inflate(R.menu.main, menu);        return true;

  }

   @Override

   public boolean onOptionsItemSelected(MenuItem item) {        switch (item.getItemId()) {

     case R.id.switch_flash:

     if (mCameraView != null) {

     mCurrentFlash = (mCurrentFlash + 1) % FLASH_OPTIONS.length;      item.setTitle(FLASH_TITLES[mCurrentFlash]);      item.setIcon(FLASH_ICONS[mCurrentFlash]);      mCameraView.setFlash(FLASH_OPTIONS[mCurrentFlash]); 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223

Referências

Documentos relacionados

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

Predicted values were calculated by measuring the joint probability of effects on isopods’ biomass variation found for single exposures to different soil

A partir deste momento é dada indicação para a seleção da população em estudo e é ativado o envio da medicação pelo promotor, ficando o FH da Unidade de

Os Coordenadores Setoriais, enquanto professores, procuram dar o exemplo, mas deixam claro que encontram, no seu percurso como extensionistas, esse elemento dificultador;  O

Este trabalho apresenta um modelo matemático para representação de um tecido em função da aplicação de forças e sua interação com elementos sólidos não deformáveis visando

No presente estudo, catorze animais (34,15%) apresentavam algum tipo de parentesco procedente de oito diferentes propriedades rurais (26,66%), ora relacionado à vaca, ora ao touro,

Contudo, não é possível imaginar que essas formas de pensar e agir, tanto a orientada à Sustentabilidade quanto a tradicional cartesiana, se fomentariam nos indivíduos

(2013 B) avaliaram a microbiota bucal de oito pacientes submetidos à radioterapia na região de cabeça e pescoço através de pirosequenciamento e observaram alterações na