desenvolvimento de um software de anÁlise de … · desenvolvimento de um software de anÁlise de...

50
“Júlio de Mesquita Filho” Campus Experimental de Sorocaba ALISON BATISTA DA SILVA DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Sorocaba Julho de 2010

Upload: others

Post on 22-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

ALISON BATISTA DA SILVA

DESENVOLVIMENTO DE UM SOFTWARE DE

ANÁLISE DE IMAGEM INTRAOCULAR

Sorocaba

Julho de 2010

Page 2: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

ALISON BATISTA DA SILVA – RA: 510033

DESENVOLVIMENTO DE UM SOFTWARE DE

ANÁLISE DE IMAGEM INTRAOCULAR

Relatório final do Trabalho de

Graduação do Curso de Engenharia

de Controle e Automação, da

UNESP de Sorocaba. Orientado pelo

Prof. Dr. Galdenoro Botura Jr.

Sorocaba

Julho de 2010

Page 3: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

DESENVOLVIMENTO DE UM SOFTWARE DE

ANÁLISE DE IMAGEM INTRAOCULAR

Autor: Alison Batista da Silva

Orientador: Prof. Dr. Galdenoro Botura Junior

Co-Orientador: Ricardo Torres Soares

Curso: Engenharia de Controle e Automação

Banca Examinadora:

• Prof. Dr. Galdenoro Botura Junior

• Ricardo Torres Soares

• Prof. Dr. Márcio Alexandre Marques

Sorocaba

Julho de 2010

Page 4: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Agradecimentos

Aos meus pais por proporcionarem chegar onde estou com o apoio e carinho.

Aos docentes da UNESP, por terem ajudado e participado desta fase da minha

vida, dando uma formação que servirá para toda a vida. E, em especial ao orientador

pelo incentivo e por me proporcionar este projeto que irá auxiliar outros profissionais.

Sem menos prestígio, ao co-orientador que me ajudou nas dúvidas e sugestões do

trabalho.

Page 5: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

1

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Resumo

Inflamações intra oculares podem ser causadas por diversos fatores tanto

internos como externos ao globo ocular, em crianças pequenas e animais existe uma

grande dificuldade para se quantificar a gravidade da doença por motivos técnicos.

Diversas infecções podem ser observadas no humor aquoso pela lâmpada de fenda. A

partir desse problema, iniciou-se um projeto para aprimorar a análise das inflamações

intraoculares quantitativamente baseado em processamento de imagens com um

software de baixo custo, fornecendo auxílio para tomada de decisão de profissionais da

área da saúde.

Page 6: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

2

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Abstract

Intra-ocular inflammation can be caused by several factors both inside and

outside the eyeball, there is great difficulty to quantify the severity of the disease in

small children and animals for technical reasons. Several infections can be observed in

the aqueous humor by slit lamp. From this fact, a project was started to improve the

analysis of intraocular inflammation quantitatively-based image processing software

with a low cost, providing aid to decision making of health professionals.

Page 7: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

3

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Sumário

1. Introdução e Objetivos ______________________________________________ 5

2. Revisão Bibliográfica ________________________________________________ 6

2.1. Flare _______________________________________________________________ 6

2.2. LabVIEW ___________________________________________________________ 8

2.3. Morfologia Matemática _______________________________________________ 19

2.4. Equipamento Flare Meter _____________________________________________ 23

3. Desenvolvimento do Software ________________________________________ 25

3.1. Diagrama de Blocos __________________________________________________ 27

3.1.1. Abrir imagem e escolher ROI (região de interesse) ______________________ 27

3.1.2. Tratamento da imagem ____________________________________________ 27

3.1.3. Localização _____________________________________________________ 28

3.1.4. Gravação do primeiro vetor de pontos ________________________________ 28

3.1.5. Dados para cada ponto e comparação de novos pontos com já gravados ______ 28

3.1.6. Cálculo automático pela mudança do limiar ____________________________ 30

3.1.7. Contorno dos pontos encontrados na imagem original ____________________ 30

3.2. Painel Frontal _______________________________________________________ 30

3.2.1. Aba de configuração ______________________________________________ 31

3.2.2. Janela para escolha da região de interesse _____________________________ 32

3.2.3. Aba resultados ___________________________________________________ 32

4. Resultados ________________________________________________________ 35

5. Conclusão ________________________________________________________ 36

6. Propostas para trabalhos futuros _____________________________________ 37

7. Anexos ___________________________________________________________ 38

Anexo A _________________________________________________________________ 38

Anexo B _________________________________________________________________ 41

8. Referência Bibliográfica ____________________________________________ 45

Page 8: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

4

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Índice de Figuras

Figura 1 - Estrutura do globo ocular ________________________________________ 6

Figura 2 - Corrente térmica das células no humor aquoso _______________________ 7

Figura 3 - Exemplos de flare ______________________________________________ 7

Figura 4 - Lâmpada de fenda com câmera acoplada ___________________________ 8

Figura 5 - Imagem em formato Raster _____________________________________ 15

Figura 6 - Imagem representada como um gráfico de superfície ________________ 16

Figura 7 - Profundidades de imagem em escala de cinza ______________________ 16

Figura 8 - Tipos de imagens coloridas _____________________________________ 17

Figura 9 - Intensidade de imagem complexa ________________________________ 18

Figura 10 - Esquemático da câmera _______________________________________ 19

Figura 11 - Efeito da dilatação com um elemento quadrado 3 × 3 _______________ 21

Figura 12 - Histograma de uma seção transversal de uma imagem em tons de cinza

antes e após a dilatação ________________________________________________ 23

Figura 13 - Imagem original, Imagem com uma dilatação e Imagem com 5 dilatações 23

Figura 14 - Equipamento Flare Meter FM-600 _______________________________ 24

Figura 15 - Fluxograma do programa desenvolvido___________________________ 26

Figura 16 - Lógica para abrir imagem e definir ROI ___________________________ 27

Figura 17 - Bloco IMAQ Count Objects _____________________________________ 28

Figura 18 - Lógica case para definir o limiar usado ___________________________ 28

Figura 19 - Diagrama que realiza comparação de pontos novos com os existentes __ 29

Figura 20 - Esquema para salvar dados nos vetores __________________________ 29

Figura 21 - Lógica que encontra ponto final do limiar _________________________ 29

Figura 22 - Esquema para verificar mudanças no limiar _______________________ 30

Figura 23 - Rotina para desenhar os pontos na imagem original ________________ 30

Figura 24 - Aba de configuração do programa ______________________________ 31

Figura 25 - Janela para escolha da região de interesse ________________________ 32

Figura 26 - Aba imagem original e dos resultados ____________________________ 33

Figura 27 - Aba Captura ________________________________________________ 34

Figura 28 - Janela para selecionar região de interesse ________________________ 38

Figura 29 - Aba resultados do programa ___________________________________ 39

Figura 30 - Aba Configurações do programa ________________________________ 40

Page 9: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

5

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

1. Introdução e Objetivos

Inflamações intra oculares podem ser causadas por diversos fatores tanto

internos como externos ao globo ocular, em crianças pequenas e animais existe uma

grande dificuldade para se quantificar a gravidade da doença por motivos técnicos

inerentes aos aparelhos usados para exame, que normalmente são construídos para se

examinar humanos. Diversas infecções podem ser observadas no humor aquoso pela

lâmpada de fenda, tais como, uveítes e irites. A partir desse problema, iniciou-se um

projeto para aprimorar a análise das inflamações intraoculares baseado em

processamento de imagens, já que um aparelho (flarefotômetro) utilizado para essa

finalidade é de alto custo.

O objetivo deste projeto é desenvolver um equipamento que possibilite processar

a imagem interna de um olho, analisando quantitativamente a inflamação, com vista a

fornecer subsídios para tomada de decisão (acompanhar a evolução da doença ou

inflamação quantitativamente) de profissionais da área da saúde.

Page 10: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

6

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

2. Revisão Bibliográfica

2.1. Flare

Humor Aquoso e “Flare”

O humor aquoso (HA) é um derivado do plasma sanguíneo, que preenche a

câmara anterior (CA), produzido pela rede capilar do corpo ciliar por difusão,

ultrafiltração e secreção ativa. O HA é composto principalmente de água, pode ser

observado na Figura 1. As proteínas encontram-se em baixas concentrações (0,02%)

quando comparadas com o plasma (7%), sendo principalmente albumina e globulinas

[1].

Figura 1 - Estrutura do globo ocular

A elevação das proteínas na CA é identificada clinicamente como flare, que

pode ser observado na Figura 2, do aquoso e está associada a situações que predispõem

à quebra da barreira hemato aquosa (BHA). Isto pode ser resultado de uveíte, cirurgia

ocular, trauma, paracentese da câmara anterior [2], ou induzida por protocolos

experimentais como o tratamento com demecário [3], pilocarpina tópica, ou análogos da

prostaglandina E2 [4]. Uma corrente térmica do humor aquoso pode ser observado na

Figura 2.

Page 11: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

7

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Figura 2 - Corrente térmica das células no humor aquoso

Figura 3 - Exemplos de flare

A avaliação da intensidade do flare pode ser determinada clinicamente por meio

do biomicroscópio ou lâmpada de fenda, ilustrada na Figura 4. Este é um exame

subjetivo qualitativo da luz refletida pelas moléculas de proteínas e células em solução

no humor aquoso [5]. Quando a luz alcança as partículas, esta é dispersa pelo

denominado efeito Tyndall. Se a BHA estiver intacta, como acontece no olho normal, a

Page 12: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

8

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

concentração de proteínas na CA é mínima e raramente será observado flare no HA, no

entanto no olho inflamado a concentração aumenta e o flare torna-se mais evidente

quanto maior o grau de inflamação [6], [7].

Figura 4 - Lâmpada de fenda com câmera acoplada

A quantificação objetiva do flare aquoso pode ser realizada por meio da

flarefotometria da CA com um flarefotômetro, o qual mede a quantidade de luz refletida

pelas partículas em suspensão [8].

O flarefotômetro consiste em uma lâmpada de fenda com laser He-Ne, acoplada

a um fotomultiplicador e um computador. O feixe de laser com potência de 25 mW e

diâmetro de 20 mW é projetado na CA fazendo uma varredura vertical de 0,6 mm. O

resultado é processado pelo computador e os valores são expressos em fótons/ms

(ph/ms) [8]. Entre as vantagens da flarefotometria, além de ser um método não invasivo,

podem ser nomeadas a objetividade, rapidez e simplicidade de operação [9].

Atualmente, no mercado já existe biomicroscópios com uma câmera adaptada

que fornece uma conexão com computadores. Algumas adaptações na lâmpada de fenda

tradicional podem ser feitas para se obter uma imagem digitalizada.

2.2. LabVIEW

O que é Instrumentação Virtual?

Um instrumento virtual consiste de um computador industrial ou estação de

trabalho (Workstation) equipado com um poderoso programa, equipamento com custo

otimizado, como placas plug-in e drivers, que juntos desempenham as funções dos

instrumentos tradicionais. Instrumentos virtuais representam uma revolução nos

sistemas de instrumentação tradicionais focados em hardware para sistemas centrados

Page 13: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

9

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

em software que exploram o poder computacional, a produtividade, a visualização

gráfica e as funcionalidades de conectividade dos populares computadores de mesa e

estações de trabalho. Embora o PC e a tecnologia de circuito integrado tenham

proporcionado avanços significantes nas últimas duas décadas, é o software que

realmente proporcionou que esta poderosa plataforma de hardware fosse utilizada para

criar instrumentos virtuais, oferecendo condições favoráveis para criar soluções

inovadoras e reduzir significativamente os custos quando comparado com a abordagem

tradicional. Com instrumentos virtuais, engenheiros e pesquisadores constroem sistemas

de medição que se adequam exatamente as suas necessidades (sistemas definidos pelo

usuário) e não ficam limitados pelas funções fixas dos instrumentos tradicionais

(definido pelo fabricante).

Flexibilidade

Exceto por componentes e circuitos especializados encontrados nos instrumentos

tradicionais, a arquitetura geral de um instrumento tradicional é muito similar a de um

instrumento virtual baseado em PC. Ambos requerem um ou mais microprocessadores,

portas de comunicação (por exemplo, serial e GPIB) e capacidade de apresentação de

dados, bem como módulos de aquisição de dados. O que torna um diferente do outro é

sua flexibilidade e o fato de que o profissional pode modificar e adaptar o instrumento

para suas necessidades particulares. Um instrumento tradicional pode conter um circuito

integrado para desempenhar um conjunto particular de funções de processamento de

dados; em um instrumento virtual, essas funções serão desempenhadas pelo software

executado pelo processador do PC. Pode-se ampliar o conjunto de funções facilmente,

limitado apenas pela capacidade computacional do software e do processador utilizado.

Menor Custo

Ao empregar soluções de instrumentação virtual, é possível reduzir o

investimento, custos de desenvolvimento do sistema e custos de manutenção do sistema,

enquanto reduz o tempo de desenvolvimento e aumenta a qualidade de seus produtos.

A função do software na Instrumentação Virtual

Page 14: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

10

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

O software é o componente mais importante de um instrumento virtual. Com a

ferramenta de software correta, engenheiros e pesquisadores podem, com extrema

eficiência, criar suas próprias aplicações, projetando e integrando rotinas que um

processo em particular requer. Eles podem, também, criar uma interface de usuário

apropriada que melhor se adeque ao propósito da aplicação e com aqueles que irão

interagir com ela. Eles podem definir como e quando a aplicação adquire dados do

dispositivo, como ela processa, manipula e armazena os dados e como os resultados são

apresentados ao usuário.

Com um software poderoso, pode-se construir inteligência e capacidades de

tomada de decisão para o instrumento de modo que ele se adapte quando o sinal medido

muda inadvertidamente ou quando mais ou menos poder de processamento é exigido.

Uma importante vantagem que o software fornece é a modularidade. Quando se

deparam com um projeto grande, engenheiros e pesquisadores geralmente abordam a

tarefa quebrando-a em unidades funcionais solucionáveis. Essas subtarefas são mais

gerenciáveis e fáceis de testar, reduzindo as dependências que podem causar um

comportamento inesperado. Pode-se projetar um instrumento virtual para solucionar

cada subtarefa e, então, integrá-las como um sistema completo para solucionar a

aplicação maior. A facilidade com a qual pode se realizar essa divisão de tarefas

depende muito da arquitetura do software subjacente.

Programação Gráfica

Uma das mais poderosas funcionalidades que o LabVIEW oferece a engenheiros

e pesquisadores é seu ambiente gráfico de programação. Com o LabVIEW, pode-se

projetar instrumentos virtuais personalizados, criando uma interface de usuário gráfica

na tela do computador através da qual é possível:

· Operar o programa de instrumentação

· Controlar o hardware selecionado

· Analisar os dados adquiridos

· Exibir resultados

É possível personalizar os painéis frontais com knobs, botões, seletores e

gráficos para emular painéis de controles de instrumentos tradicionais, criar painéis de

testes personalizados ou representar visualmente o controle e a operação dos processos.

Page 15: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

11

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

A similaridade entre o padrão de fluxogramas e programas gráficos reduz a curva do

aprendizado, diferentemente das tradicionais linguagens baseadas em texto.

É possível determinar o comportamento dos instrumentos virtuais conectando

ícones para criar diagramas de blocos, que é uma notação natural de projetos

desenvolvidos por engenheiros e projetistas. Com a programação gráfica, pode-se

desenvolver sistemas com maior velocidade do que com linguagens de programação

convencionais, mantendo o poder e flexibilidade necessários para criar uma variedade

de aplicações.

Conectividade e Controle de Instrumentos

Ao desenvolver o software de um instrumento virtual, a alta produtividade é

garantida porque o ambiente de desenvolvimento gráfico, LabVIEW, possui forte

integração com hardware. Projetado para desenvolvimento de sistemas de testes, de

medição e de controle, o software de instrumentação virtual inclui ampla funcionalidade

para entradas e saídas de qualquer tipo.

O LabVIEW possui bibliotecas prontas para o uso para integrar instrumentos

tradicionais, dispositivos de aquisição de dados, controle de movimento, sistemas de

visão, dispositivos GPIB/IEEE 488 e serial/RS-232, CLPs, entre outros, para construir

uma solução completa de medição e automação. O LabVIEW também incorpora os

maiores padrões de instrumentação como VISA, um padrão inter-operável para GPIB,

serial, e instrumentação VXI; PXI e software e hardware baseados no padrão

CompactPCI do PXI Systems Alliance; drivers IVI para instrumentação virtual

intercambiável; e VXI plug&play, um driver padrão para instrumentos VXI.

Redução de custo e Preservação do Investimento

Uma vez que é possível utilizar um computador convencional equipado com o

LabVIEW para inúmeras aplicações e propósitos, ele é um produto versátil. Não só é

versátil como também apresenta um ótimo custo-benefício. A Instrumentação virtual

com LabVIEW prova ser muito vantajosa economicamente, não só na redução de custos

de desenvolvimento como também na preservação de capital investido por um longo

período de tempo. Não é necessário comprar um novo equipamento cada vez que as

necessidades da aplicação forem alteradas, basta alterar as funcionalidades definidas por

Page 16: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

12

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

software, do seu instrumento virtual. Pode-se criar bibliotecas de instrumentação

completas por um custo menor que o de um único instrumento tradicional.

Desenvolvimento Distribuído

Pode-se desenvolver facilmente aplicações distribuídas com LabVIEW, mesmo

em diferentes plataformas. Com ferramentas de servidor de fácil manuseio, pode

distribuir tarefas de processamento intenso para outras máquinas para uma execução

mais rápida, ou criar aplicações de monitoramento remoto e controle. Poderosas

tecnologias de servidores podem simplificar o desenvolvimento de grandes aplicações

executadas em múltiplos computadores. Além disso, o LabVIEW inclui tecnologias de

padrão de redes como TCP/IP e incorpora também um protocolo robusto chamado de

Publish and Subscribe Protocol (PSP).

Capacidade de Análise

Software de instrumentação virtual requer ferramentas abrangentes de análise e

processamento de sinal, por que a aplicação não esta concluída com a aquisição dos

dados. Aplicações de medição em alta velocidade em sistemas de monitoramento de

máquinas e sistemas de controle, normalmente requerem análise de ordem para

avaliação dos dados de vibração. Controle em malha fechada e controles embarcados

podem precisar de médias ponto-a-ponto para controlar algoritmos e manter a

estabilidade. Além disso, para bibliotecas de análises avançadas já inclusas no

LabVIEW, a National Instruments fornece pacotes adicionais de software, como os

toolkits LabVIEW Signal Processing, o LabVIEW Sound and Vibration e o LabVIEW

Order Analysis para complementar as análises disponíveis.

Capacidade de Visualização

O LabVIEW possui centenas de ferramentas integradas de visualização para

apresentar os dados na interface de usuário do instrumento virtual – para mapeamento e

gráficos, bem como visualização 2D e 3D. É possível reconfigurar instantâneamente

atributos da apresentação de dados, como cores, tamanho da fonte, tipos de gráficos,

entre outros, bem como rotacionar dinamicamente e utilizar recursos como zoom e pan

nesses gráficos com o mouse. Ao invés de programar esses recursos gráficos a partir do

Page 17: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

13

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

zero, se pode simplesmente arrastar e soltar esses objetos no painel frontal do

instrumento.

Flexibilidade e Escalabilidade – Vantagens-Chave

Engenheiros e pesquisadores possuem necessidades e requisitos que podem

mudar rapidamente. Eles também precisam de soluções expansíveis e de fácil

manutenção que possam ser utilizadas por um longo tempo. Criando instrumentos

virtuais baseados em poderoso ambiente de desenvolvimento como o LabVIEW, é

possível projetar um framework aberto que integra software e hardware. Isto garante

que a aplicação não só trabalhará bem hoje como também poderá facilmente integrar

novas tecnologias no futuro quando estiverem disponíveis, ou expandir sua solução

além do âmbito original, quando novos requisitos forem identificados. Além disso, cada

aplicação tem seus próprios requisitos que exigem uma ampla gama de soluções.

Não é necessário se ter o programa LabVIEW instalado no computador, pois é

possível gerar um executável para qualquer máquina.

Instrumentação Virtual na engenharia

A instrumentação virtual fornece vantagens significantes em todos os estágios

do processo de engenharia, da pesquisa e projeto ao teste de fim de linha.

Pesquisa e Projeto

Durante as etapas de pesquisa e projeto, engenheiros e projetistas necessitam de

ferramentas que ofereçam um desenvolvimento rápido e funções de prototipagem. Com

instrumentos virtuais se pode desenvolver um programa rapidamente, colher medidas de

um instrumento para testar um protótipo, analisar os resultados, tudo em uma fração do

tempo necessário para realizar os mesmos testes com instrumentos tradicionais. Quando

se necessita flexibilidade, uma plataforma escalável e aberta é essencial, tanto para

aplicações em PCs desktop e sistemas embarcados quanto redes distribuídas.

Os exigentes requisitos das aplicações de Pesquisa e Desenvolvimento (R&D)

demandam forte integração de hardware e software. Se precisar interfacear

instrumentos isolados usando o barramento GPIB ou adquirir sinais a partir de um

computador com uma placa de aquisição de dados e hardware de condicionamento de

sinais, o LabVIEW torna a integração muito simples. Com instrumentos virtuais,

Page 18: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

14

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

também se pode automatizar um procedimento de teste, eliminando a possibilidade de

erro humano e assegurando a coerência dos resultados sem introduzir variáveis

desconhecidas ou inesperadas.

Teste de Desenvolvimento e Validação

Com a flexibilidade e poder dos instrumetos virtuais, pode-se facilmente

construir procedimentos de testes complexos. Para testes automáticos de verificação do

projeto, pode criar rotinas de teste no LabVIEW e integrar o software como o TestStand

da National Instruments, que oferece poderosa capacidade de gerenciamento de testes.

Uma das muitas vantagens que essas ferramentas oferecem para toda a empresa é o

reuso de código. Desenvolve-se o código durante o projeto e então conecta estes

mesmos programas em ferramentas funcionais para testes de validação ou verificação.

NI Vision Development Module

A National Instruments Vision Development Module é uma coleção de funções

de processamento de imagem e visão de máquina para inúmeras linguagens de

programação, como o NI LabVIEW e Microsoft C + +, Visual Basic e .NET. Com estas

funções é possível melhorar as imagens, a verificação de presença, localização de

recursos, identificar objetos e medir peças. Junto com as bibliotecas de programação, o

NI Vision Development Module também inclui NI Vision Assistant e software NI Vision

Acquisition.

A visão de desenvolvimento do módulo oferece:

− Centenas de funções de processamento de imagem, incluindo padrão e busca

geométrica, OCR, leitores de código de barras e classificação de objeto.

− Subpixel precisão até 1 / 10 de um pixel e 1 / 10 de um grau.

− Rápida aplicação de protótipo e de geração de código com o Vision Assistant.

− Driver de software para milhares de câmeras, incluindo câmeras GigE Vision

e IEEE 1394 .

Tipos de Imagens

O toolkit Vision do LabVIEW pode ler e manipular imagens raster. Uma imagem

raster é composta em células chamadas pixels, onde cada pixel contém a informação da

Page 19: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

15

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

cor ou da intensidade em escala de cinza para sua respectiva posição espacial na

imagem.

Câmeras de visão Machine adquirem imagens em formato raster, ilustrado na

Figura 5, como uma representação da luz que atinge um “dispositivo de carga em

interlinha” (charged-coupled device - CCD). Esta informação é então transmitida ao

computador através de um barramento de dados padrão ou frame grabber.

Figura 5 - Imagem em formato Raster

O tipo de imagem não define, necessariamente, o tipo de arquivo de imagem, ou

vice-versa. Alguns tipos de imagens funcionam bem com determinados tipos de

arquivos de imagem, e por isso é importante para entender o formato dos dados de uma

imagem antes de selecionar o tipo de arquivo a ser utilizado para o armazenamento. O

Toolkit Vision é projetado para processar três tipos de imagem:

1.Grayscale (escala de cinza)

2.Imagem Colorida

3.Imagem Complexa

Grayscale (escala de cinza)

Imagens tons de cinza são os mais simples, e são o tipo mais usado. Imagens

Grayscale consistem em coordenadas espaciais X e Y e seus respectivos valores de

intensidade. Imagens Grayscale podem ser imaginadas como gráficos de superfície,

com o eixo Z representa a intensidade da luz. A Figura 6 ilustra esse gráfico, as áreas

mais luminosas da imagem representam os valores mais elevados do eixo z.

Page 20: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

16

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Figura 6 - Imagem representada como um gráfico de superfície

Os dados de intensidade de uma imagem são representados por sua

profundidade, que é o intervalo de intensidades que podem ser representados por

pixel. Para uma profundidade de bits de x, a imagem tem uma profundidade de 2x, o que

significa que cada pixel pode ter um valor de intensidade de 2x níveis. O Toolkit Vision

pode manipular imagens em tons de cinza com as profundidades representadas na

Figura 7.

Figura 7 - Profundidades de imagem em escala de cinza

Diferentes profundidades de bit existir como um meio de que é necessário para

alcançar uma solução de imagem adequada. Buscando recursos em uma imagem,

geralmente, é possível usar imagens de 8 bits, enquanto que nas medições exatas de

intensidade requerem uma maior profundidade de bits. Como se poderia esperar, a

Page 21: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

17

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

profundidade de bits requerem mais memória (tanto RAM e armazenamento fixo),

como a intensidade valores armazenados para cada pixel requer mais espaço de dados.

Imagem Colorida

Imagens coloridas são representadas usando modelos Vermelho-Verde-Azul

(RGB) ou Matiz-Saturação-Luminosidade (HSL), representados na Figura 8. O Toolkit

Vision aceita imagens a cores 32-bit que usar um desses modelos, de quatro canais de 8

bits.

Figura 8 - Tipos de imagens coloridas

A componente alfa define a opacidade de uma imagem, com zero representando

um pixel claro e 255 representando um pixel completamente opaco. Isso permite que

uma imagem possa ser renderizada sobre outra imagem, com a imagem renderizada

mostrada através da principal. Quando as imagens se combinam, pixels baseados em

formatos têm várias vantagens sobre os outros formatos, incluindo suporte para formas

com bordas suaves ou serrilhadas, e a capacidade de colar a imagem sobre um fundo

com a informação de seu fundo aparentemente misturados. Geralmente, esta forma de

transparência é de pouca utilidade para o usuário do sistema, de modo que o Toolkit

Vision ignora todas as formas de informação.

Imagem Complexa

Imagens complexas derivam seu nome do fato de que sua representação inclui

componentes reais e complexas. Pixels de imagens complexas são armazenados como

64-bits de números de pontos flutuantes, que são construídos com partes de 32-bits reais

e 32-bits imaginário. Na Figura 9, tem-se o intervalo das intensidades para uma

profundidade de pixels.

Page 22: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

18

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Figura 9 - Intensidade de imagem complexa

Uma imagem complexa contém informações de freqüência que representa uma

imagem em escala de cinza e, portanto, pode ser útil quando se precisa aplicar processos

no domínio da freqüência para os dados da imagem. Imagens complexas são criadas

através da realização de uma transformada rápida de Fourier (FFT) em uma imagem em

tons de cinza, e pode ser convertido de volta ao seu original através da aplicação de uma

FFT inversa. Relações de magnitude e de fase podem ser facilmente extraídos de

imagens complexas.

Leitura e Escrita de imagens

O método mais simples de ler um arquivo de imagem de disco é usar IMAQ

ReadFile. Esta VI do Vision Toolkit pode abrir e ler os tipos de arquivo padrão de

imagem (BMP, TIFF, JPEG, PNG e AIPD), bem como os formatos mais obscuros. Uma

vez que se criou um espaço de dados de imagem utilizando IMAQ Create o arquivo de

imagem é aberto e lido usando IMAQ ReadFile. Os dados da imagem são analisados e,

se necessário, convertidos em um tipo especificado no IMAQ Create. Esta imagem é

então carregada na memória, e referenciada pela sua saída Image Out. Tanto os clusters

de Image In e Image Out usados através do Toolkit Vision são clusters de caracteres e

numérico, eles não contêm os dados reais da imagem, mas são referências (ou

ponteiros) para os dados na memória.

LabVIEW cria muitas vezes mais do que uma cópia dos dados que são passados

em sub-Vis, seqüências, loops e afins, de modo que a técnica de passar um ponteiro em

vez do conjunto de dados completo da imagem diminui drasticamente o processamento

e memória requerida quando completa as tarefas mais simples do Vision. Salvar

arquivos de imagem padrão também é simples utilizando IMAQ WriteFile.

A seleção da câmera é fortemente dependente da aplicação. Se forem escolhidas

uma câmera apropriada, lentes e instalação de iluminação, o esforço pode ser focalizado

no desenvolvimento da solução, ao invés de lutar com os dados pobres de imagem;

também, a seleção de hardware adequado pode mudar radicalmente o processamento de

Page 23: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

19

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

imagem exigido, muitas vezes, economizando tempo de processamento em execução.

Uma câmera contém um sensor eletrônico que mapeia um conjunto de fótons incidente

(uma imagem ótica) em um sinal eletrônico. Câmeras de transmissão da televisão foram

originalmente baseados em tubos de imagem, muitas vezes caros e volumosos, mas em

1970 Boyle inventou o “dispositivo de carga em interlinha” (CCD). A CCD é um

circuito integrado sensível a luz que armazena dados da imagem irradiada de forma que

cada pixel adquirido é convertido em um sinal elétrico. CCDs são normalmente

encontrados em câmeras fotográficas digitais e câmeras de vídeo, telescópios, scanners

e leitores de código de barras. Uma câmera usa uma lente objetiva para focalizar a luz

incidente, e se colocarmos um sensor CCD em o ponto de foco, onde essa imagem

óptica é formada, pode-se capturar uma imagem como a Figura 10.

Figura 10 - Esquemático da câmera

2.3. Morfologia Matemática

Morfologia é o estudo da forma. Em processamento de imagens, morfologia

matemática é o nome que se dá a um conjunto de métodos, inicialmente desenvolvidos

por Georges Matheron e Jean Serra em 1964, que têm em comum o objetivo de estudar

a estrutura geométrica de uma imagem.

O campo da morfologia matemática contribui para uma ampla gama de

operadores de processamento de imagem, todos baseados em torno de alguns simples

conceitos matemáticos da teoria dos conjuntos. Os operadores são particularmente úteis

Page 24: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

20

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

para a análise de imagens binárias e usos comuns incluem a detecção de bordas,

remoção de ruído, realce de imagem e segmentação de imagens.

As duas operações mais básicas em morfologia matemática são a erosão e

dilatação. Ambos os operadores tomam dois pedaços de dados como entrada: uma

imagem a ser corroída ou dilatada, e um elemento estruturante (também conhecido

como kernel). Os dois pedaços de dados de entrada são tratados como cada um

representando conjuntos de coordenadas de uma forma que é ligeiramente diferente para

tons de cinza e imagens binárias.

Para obter uma imagem binária, pixels brancos são normalmente tomados para

representar regiões de primeiro plano, enquanto pixels pretos que denotam plano de

fundo.

Para uma imagem em tons de cinza, o valor de intensidade é tomada para

representar a altura acima de um plano base, de modo que a imagem em tons de cinza

representa uma superfície no espaço tridimensional euclidiano.

O elemento estruturante é apenas um conjunto de coordenadas de pontos

(embora muitas vezes é representado como uma imagem binária). Ela difere da imagem

de entrada no conjunto de coordenadas que normalmente é muito menor, e sua

coordenada de origem não é, muitas vezes em um canto, de modo que algumas

coordenadas dos elementos terão valores negativos. Note-se que em muitas

implementações de operadores morfológicos, o elemento estruturante é assumido como

sendo uma forma particular (por exemplo, um quadrado 3 × 3).

A morfologia binária pode ser visto como um caso especial da morfologia em

tons de cinza em que a imagem de entrada tem apenas dois tons em valores 0 e 1.

Erosão e dilatação funcionam traduzindo o elemento estruturante para vários pontos da

imagem de entrada, e examinando a intersecção entre as coordenadas do kernel

(elemento estruturante) e as coordenadas da imagem de entrada.

Praticamente todos os outros operadores de morfologia matemática podem ser

definidas em termos de combinações de erosão e dilatação com operadores de conjunto,

como intersecção e união.

Dilatação

A dilatação é um dos dois operadores básicos na área de morfologia matemática,

sendo o outro a erosão. É normalmente aplicada a imagens binárias, mas há versões que

Page 25: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

21

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

trabalham em imagens em tons de cinza. O efeito básico do operador sobre uma

imagem binária é ampliar gradualmente os limites das regiões de primeiro plano (ou

seja, pixels brancos, geralmente).

O operador de dilatação usa dois dados como entradas. O primeiro é a imagem

que está a ser dilatada. O segundo é um conjunto de pontos de coordenadas (conhecido

como um elemento estruturante (também conhecido como kernel). É este elemento

estruturante que determina o efeito exato da dilatação da imagem de entrada.

Como um exemplo de dilatação binária, suponha que o elemento estruturante é

um quadrado 3 × 3, com origem no seu centro. Note que, pixels de primeiro plano são

representados por 1's e pixels de fundo 0’s.

Para calcular a dilatação de uma imagem binária de entrada por este elemento

estruturante, consideramos cada um dos pixels de fundo na imagem de entrada de cada

vez. Para cada pixel de fundo (que vamos chamar o pixel de entrada) que sobrepõe o

elemento estruturante em cima da imagem de entrada para que a origem do elemento

estruturante coincide com a posição do pixel de entrada. Se pelo menos um pixel do

elemento estruturante coincide com um pixel de primeiro plano na imagem abaixo,

então o pixel de entrada é definido como o valor do primeiro plano. Se todos os pixels

correspondentes na imagem são de fundo, então, o pixel de entrada é deixado com o

valor do fundo. Na Figura 11 pode-se verificar uma imagem e seu resultado após aplicar

a operação dilatação.

Figura 11 - Efeito da dilatação com um elemento quadrado 3 × 3

Page 26: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

22

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Para o exemplo 3 × 3 o elemento estruturante, o efeito dessa operação é para

definir a cor de primeiro plano dos pixels de fundo que tem um pixel vizinho em

primeiro plano. Tais pixels deve situar-se nas bordas das regiões brancas, e assim o

resultado prático é que as regiões brancas devem crescer (e os buracos dentro de uma

região diminuir).

A dilatação é similar a erosão, ou seja, dilatando pixels de primeiro plano é

equivalente a aplicar erosão nos pixels de fundo.

A maioria das implementações deste operador é realizada com a imagem de

entrada sendo binária, geralmente com pixels de primeiro plano no valor de pixel 255

pixels e fundo no valor de pixel 0. Essa imagem muitas vezes pode ser produzida a

partir de uma imagem em escala de cinza utilizando limiares.

O quadrado de 3 × 3 é provavelmente o elemento estruturante mais comum a ser

utilizado nas operações de dilatação, mas outros podem ser utilizados. Um elemento

estruturante maior produz um efeito de dilatação mais extremo, embora efeitos muito

similares normalmente podem ser alcançados por dilatações repetidas usando elemento

menor, mas de formato similar.

Dilatação em grayscale com um elemento estruturante em forma de disco

achatado em geral clareiam a imagem. Regiões claras cercadas por regiões escuras

crescem em tamanho, e as regiões escuras cercadas por regiões claras encolhem de

tamanho. Pequenas manchas negras nas imagens irão desaparecer à medida que os

pixels são preenchidos para o valor de intensidade ao redor. Pequenas manchas claras

serão manchas maiores. O efeito é mais acentuado em pontos da imagem onde a

intensidade muda rapidamente e as regiões de intensidade bastante uniforme será

praticamente inalterado, exceto em suas bordas. A Figura 12 mostra um corte

transversal vertical através de uma imagem em cinza e o efeito da dilatação por um

disco em forma de elemento estruturante.

Page 27: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

23

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Figura 12 - Histograma de uma seção transversal de uma imagem em tons de cinza antes e após a

dilatação

A Figura 13 mostra os efeitos da dilatação em escala de cinza. Este foi

produzido a partir da dilatação através de um elemento estruturante plano quadrado 3 ×

3. Os destaques na superfície do bulbo aumentaram em tamanho e também se tornaram

quadrado fora como um artefato de forma estruturante. O corpo do cubo escuro

diminuiu de tamanho, uma vez que é mais escura do que os seus arredores, enquanto

dentro dos contornos do próprio cubo, a superfície mais escura de cima tem diminuído

ao máximo. Muitas das superfícies têm uma intensidade mais uniforme, até manchas

escuras foram preenchidos pela dilatação. O efeito de cinco vezes da dilatação na

imagem original é mostrada na imagem abaixo.

Figura 13 - Imagem original, Imagem com uma dilatação e Imagem com 5 dilatações

2.4. Equipamento Flare Meter

O Flaremeter FM-600, mostrado na Figura 14, é baseado no princípio de

medição de detecção de espalhamento da luz de laser. O instrumento utiliza um feixe de

laser de diodo para digitalizar uma janela de medição que se projeta no interior da

Page 28: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

24

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

câmara anterior do olho. O espalhamento de luz ocorre, pois as proteínas no humor

aquoso (componente da inflamação) passam pelo ponto focal do laser. A intensidade da

luz espalhada (diretamente proporcional à quantidade de partículas de proteínas flare) é

detectada por um tubo foto-multiplicador (PMT), que gera um sinal elétrico. Estes

sinais são imediatamente digitalizados para eliminar a interferência do ruído exterior e

são processados por um computador, que exibe os resultados para análise. A unidade de

medida utilizada pela FM-600 é de fótons por milissegundo.

O FM-600 usa um diodo laser semicondutor 635nm com uma foto-

multiplicadores. Tem um tempo de 0,5 segundo de medição, com um campo de

medição vertical de 0,3 milímetros x 0,5 milímetros na horizontal e uma distância de

trabalho de 81 mm. Tem uma cor de 5,6 polegadas LCD e uma fonte de energia AC100

230V ~ 50/60Hz. Seu consumo de energia é 80VA ou 100VA máximo.

Figura 14 - Equipamento Flare Meter FM-600

Page 29: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

25

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

3. Desenvolvimento do Software

O programa foi produzido por etapas. O fluxograma, Figura 15, ilustra a base de

funcionamento do programa. Após, tem-se uma explanação sobre cada trecho de

programação e sobre a interface de operação.

Basicamente, o programa abre uma imagem colorida, transforma em imagem em

tons de cinza e aplica a dilatação (transformação morfológica). Com a imagem tratada,

inicia-se a procura por pontos. Como a função IMAQ Count Objects usada encontra

somente alguns pontos para cada valor de limiar escolhido, foi necessário executar essa

função para um intervalo de limiares, pois os pontos da imagem diferem um dos outros

em tonalidade.

Visto que, alguns pontos são encontrados para mais de um valor de limiar, é

necessário fazer uma comparação dos pontos encontrados com um limiar (tons) com os

anteriores para não salvar dados repetidos, o que geraria uma contagem errônea maior

do que a real.

Após os pontos serem comparados, são gravados nos vetores e são desenhados

para gerar uma imagem com os resultados. A contagem realizada é exibida em um

indicador no painel frontal.

Page 30: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

26

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Figura 15 - Fluxograma do programa desenvolvido

Page 31: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

27

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

3.1. Diagrama de Blocos

Como já mencionado, o software LabVIEW utiliza uma linguagem de

programação visual. Por isso, faz-se necessário uso de funções para que o programa

criado tenha uma ordem de execução.

Visto que o programa desenvolvido tem muitas funções, variáveis e lógicas será

feita a explicação por trechos da programação.

3.1.1. Abrir imagem e escolher ROI (região de interesse)

A Figura 16 ilustra a lógica criada para escolher uma imagem a ser analisada e

definir uma região de interesse. Para abrir uma imagem utilizou-se o bloco IMAQ

ReadFile, que lê um arquivo em qualquer formato padrão (BMP, TIFF, JPEG,

JPEG2000, PNG, e AIPD). Os pixels lidos são convertidos automaticamente para tipo

imagem. Este bloco necessita de outro, o bloco IMAQ Create, que cria uma locação

temporária de memória para a imagem. Como o processamento da imagem tem o intuito

de quantificar os pontos, não foi necessário utilizar imagem colorida. Para isso, utilizou-

se o bloco IMAQ Cast Image, que transforma a imagem da entrada para o tipo

escolhido, no caso, escala de cinza.

Criou-se uma rotina para o usuário definir a região de interesse da imagem. Com

o bloco IMAQ ConstructROI, uma janela com a imagem é mostrada e com algumas

ferramentas é possível selecionar as áreas de interesse.

Figura 16 - Lógica para abrir imagem e definir ROI

3.1.2. Tratamento da imagem

No tratamento da imagem, fez-se uma transformação morfológica em escala

cinza com a vi IMAQ GrayMorphology para realçar os pontos que se deseja encontrar.

Como alguns blocos de processamento de imagem do LabVIEW modificam a imagem

Page 32: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

28

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

fonte, é necessário criar uma cópia da imagem, para isso utilizou-se o bloco IMAQ

Copy.

3.1.3. Localização

Aplicou-se a imagem pré processada em um bloco, Figura 17, que realiza

contagem, localização e medição de objetos em uma região de interesse com o uso de

um threshold (limiar) na intensidade do pixel para segmentar os pontos do fundo. Este

bloco possue alguns recursos extras, tais como: ignorar pontos menores ou maiores que

determinados tamanhos, encontrar pontos claros ou escuros. Será necessário fazer uma

calibragem do intervalo de limiares.

Figura 17 - Bloco IMAQ Count Objects

3.1.4. Gravação do primeiro vetor de pontos

Como o bloco IMAQ CountObjects encontra pontos para um limiar específico,

foi necessário executá-lo várias vezes para um intervalo definido. Caso seja o primeiro

valor do limiar a ser executado, os dados dos pontos são gravados automaticamente em

vetores. Isso é feito pela variável ‘contagem threshold’, Figura 18, que quando for igual

a zero ativa o laço case, que faz a gravação do primeiro vetor de pontos e quando

diferente de zero ativa a lógica de comparação.

Figura 18 - Lógica case para definir o limiar usado

3.1.5. Dados para cada ponto e comparação de novos pontos com

os já gravados

Quando o limiar não é mais o primeiro, a rotina de comparação, Figura 19, é

ativada. A rotina da figura abaixo compara cada novo ponto encontrado com o vetor de

pontos já salvo, para evitar a duplicidade de dados. Caso não encontre este novo ponto

Page 33: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

29

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

no vetor, o mesmo é adicionado ao vetor. Se for repetido, a rotina passa a comparar

outro novo ponto com os pontos do vetor.

Figura 19 - Diagrama que realiza comparação de pontos novos com os existentes

O esquema da Figura 20 salva os dados de localização e tamanho nos vetores

para cada ponto. Esta lógica é executada toda vez que um ponto novo encontrado não

está no vetor de dados e quando os pontos são encontrados pelo primeiro limiar.

Figura 20 - Esquema para salvar dados nos vetores

Quando a área do ponto atual for diferente de zero, ele executa a rotina de

salvar/comparar os pontos, ilustrado na Figura 21. Mas se a área do ponto a ser

salvo/comparado for igual a zero, quer dizer que o ponto não existe, então se passa para

outro limiar.

Figura 21 - Lógica que encontra ponto final do limiar

Page 34: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

30

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

3.1.6. Cálculo automático pela mudança do limiar

Criou-se uma lógica para encontrar pontos caso o intervalo de limiares seja

modificado, Figura 22. Utilizou-se o recurso dos Shift registers, que a cada iteração

verifica se houve mudanças nos limites inferiores e superiores do threshold.

Figura 22 - Esquema para verificar mudanças no limiar

3.1.7. Contorno dos pontos encontrados na imagem original

Depois de se ter todos os pontos encontrados e salvos, fez-se uma lógica para

marcá-los na imagem original. Utilizou-se o bloco IMAQ Overlay Oval que desenha

uma elipse definida por quatro retas, Figura 23. Como o bloco só desenha um ponto por

vez, foi necessário criar um laço for que desenha os pontos que estão no vetor.

Figura 23 - Rotina para desenhar os pontos na imagem original

3.2. Painel Frontal

Tentou se criar uma interface amigável e fácil para um usuário sem prévio

conhecimento operar sem problemas.

Page 35: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

31

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

3.2.1. Aba de configuração

Na aba de configurações da Figura 24, tem-se:

- Botão para escolher a foto a ser analisada (foto obtida por uma lâmpada de

fenda com câmera);

- Escolha da cor dos pontos (claros ou escuros);

- Opção preencher ou contornar os pontos encontrados;

- Opção para escolher a cor dos pontos encontrados;

- Escolha da distância mínima entre pontos

- Escolha do tamanho mínimo do ponto

- Escolha do tamanho máximo do ponto

Figura 24 - Aba de configuração do programa

Page 36: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

32

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

3.2.2. Janela para escolha da região de interesse

Quando se executa o programa, uma janela, Figura 25, é mostrada com a

imagem original, e com a ferramenta elipse é possível escolher a região de interesse.

Figura 25 - Janela para escolha da região de interesse

3.2.3. Aba resultados

Na aba dos resultados, Figura 26, tem-se a imagem original e, abaixo, a imagem

original com os pontos desenhados. Algumas ferramentas podem ser utilizadas para

manipular as imagens. Ao lado, tem-se um indicador, que mostra a quantidade de

pontos encontrados. Existe, também, uma barra com dois slides para definir o limite

inferior e o superior do limiar. Ao mudá-los, o programa faz a busca por pontos

novamente.

Page 37: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

33

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Figura 26 - Aba imagem original e dos resultados

1.1.1. Aba captura

Na aba captura, Figura 27, é possível fazer a captura de um dispositivo USB ou

firewire. O botão ‘capturar’ salva a imagem em um arquivo.

Page 38: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

34

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Figura 27 - Aba Captura

Page 39: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

35

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

2. Resultados

Visto que as imagens testadas foram de baixa resolução e sem uma uniformidade

entre elas, proporcionaram resultado satisfatório, encontrando a maioria dos pontos

(aglomerados de células). Contudo, verificou-se que o intervalo de limiares pode

ocasionar em perda de pontos ou em falsos pontos, necessitando uma boa calibragem.

No caso de pontos duplos, a lógica de comparação funcionou eliminando dados

repetidos.

Não foi possível especificar uma taxa de acerto, pois para cada imagem utilizou-

se um intervalo de limiares.

Page 40: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

36

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

3. Conclusão

Pode-se verificar que é possível o desenvolvimento de um software de baixo

custo para auxiliar a análise de profissional da área. Pois, possibilita um

acompanhamento periódico mais preciso.

A percentagem de acerto do programa foi diretamente influenciada pela

calibragem dos limiares e qualidade da imagem, sendo necessária uma quantidade maior

de imagens para definir algum padrão de limiares.

Por fim, conclui-se que este trabalho alcançou o objetivo de quantificar (contar

aglomerados de células) flare de infecções e doenças do globo ocular com um baixo

custo.

Page 41: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

37

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

4. Propostas para trabalhos futuros

• Identificar a região da íris automaticamente, para eliminar regiões inúteis que

poderiam alterar os resultados.

• Dividir a região para identificar as áreas mais afetadas.

• Fazer um processamento para eliminar ruídos da imagem.

• Automatizar os limiares conforme padrão de imagem.

• Criar um banco de dados para comparação dos pacientes.

Page 42: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

38

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

5. Anexos

Anexo A

Manual do programa

Janela da área de interesse

Ao executar o programa, uma janela, Figura 28, irá abrir para o usuário

selecionar a região de interesse. Com a ferramenta elipse, é necessário clicar no centro

da região desejada e arrastar o mouse para definir o tamanho da elipse.

Figura 28 - Janela para selecionar região de interesse

Aba ‘Resultado’

Na Figura 29, têm-se os seguintes indicadores:

A – Mostra a foto original escolhida;

B – Mostra a foto original sobreposta dos pontos encontrados;

C – Indica o número de pontos encontrados;

D – Barra do limiar. Slider preto serve para definir o limiar mais escuro, e o branco o

limiar mais claro;

Page 43: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

39

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Figura 29 - Aba resultados do programa

Aba ‘Configurações’

Na Figura 30, têm-se os seguintes indicadores:

E – Abas resultados e configurações;

F – Campo para indicar o caminho da imagem;

G – Definir cor dos pontos a serem encontrados. Claro se o fundo for mais escuro que

os pontos e Escuro para pontos mais escuro que o fundo da imagem;

H – Definir o tipo do desenho do ponto. Contornar para fazer uma elipse só com a

borda. Preencher para a elipse ser preenchida e dar mais destaque na imagem;

I – Definir a cor dos pontos encontrados na imagem resultados;

J – Definir distância mínima entre pontos a serem encontrados;

K – Definir tamanho (área) mínimo dos pontos a serem encontrados;

L – Definir tamanho (área) máximo dos pontos a serem encontrados;

Page 44: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

40

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Figura 30 - Aba Configurações do programa

Page 45: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

41

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Anexo B

Page 46: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

42

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Page 47: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

43

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Page 48: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

44

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

Page 49: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

45

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

6. Referência Bibliográfica

[1] KRAUSE U., RAUNIO V. The proteins of the pathologic human aqueous humor.

Ophthalmologica. v.160, p.280-287,1970.

[2] RANKIN A.J., KROHNE S.G., GLICKMAN N.W., GLICKMAN L.T., STILES J.

Laser flaremetric evaluation of experimentally induced blood-aqueous barrier

disruption in cats. Am J Vet Res. v.63, nº5, p.750-756, 2002.

[3] KROHNE S.G., Effect of topically applied 2% pilocarpine and 0.25% demecarium

bromide on blood-aqueous barrier permeability in dogs. Am J Vet Res. v.55, nº.12,

p.1729-1733, 1994.

[4] CELLINI M., CARAMAZZA R., BONSANTO D., BERNABINI B., CAMPOS

E.C. Prostaglandin Analogs and Blood-Aqueous Barrier Integrity: A Flare Cell

Meter Study. Ophthalmologica. v.218, p.312-317, 2004.

[5] GONZALES C.A., LADAS J. G., DAVIS J.L., FEUER W.J., HOLLAND G.N.

Relationships Between Laser Flare Photometry Values and Complications of

Uveitis. Arch Ophthalmol. v.119, p.1763-1769, 2001.

[6] McLAREN J.W., TROCME S.D., RELF S., BRUBAKER R.F. Rate of Flow of

Aqueous Humor Determined from Measurements of Aqueous Flare. Investigative

Ophthalmology & Visual Science. v.31, nº 2, 1990.

[7] MURRAY D. L., BARTELS S.P. The Relationship Between Aqueous Humor Flow

and Anterior Chamber Protein Concentration in Rabbits. Association for Research

in Vision and Ophthalmology. v. 34, nº 2 1993.

[8] BALLALAI P. L., ERWENNE C.M., CHOJNIAK M.M. Comparative study of

flare photometry in patients with choroidal malignant melanoma and choroidal

nevus. Arquivos Brasileiros de Oftalmologia. v.65, p.31-35, 2002.

Page 50: DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE … · DESENVOLVIMENTO DE UM SOFTWARE DE ANÁLISE DE IMAGEM INTRAOCULAR Relatório final do Trabalho de Graduação do Curso de Engenharia

46

“Júlio de Mesquita Filho” Campus Experimental de Sorocaba

[9] SHAH S.M., SPALTON D.J., ALLEN R.J., SMITH S.E. A comparison of the laser

flare cell meter and fluorophotometry in assessment of the blood-aqueous barrier.

Invest Ophthalmol Vis Sci v.34, p.3124-3130, 1993.

[10] RELF, C. Image Acquisition and Processing with LabVIEW. 1. ed. CRC Press,

2003.

[11] LESSARD, C. Basic Feedback Controls in Biomedicine (Synthesis Lectures on

Biomedical Engineering)

[12] BITTER, R.; MOHIUDDIN, T.; NAWROCKI, M. LabVIEW : advanced

programming techniques. 2. ed. CRC Press, 2006.

[13] CAPORELLA, D. Contact Lens Infection - The Dangers Of Wearing Contacts.

Disponível em <http://ezinearticles.com/?Contact-Lens-Infection---The-Dangers-

Of-Wearing-Contacts&id=802737>

[14] KIM, B. Underpublicized Dangers of Contact Lenses. Disponível em

<http://chetday.com/contactlensdangers.htm>.