Vous êtes sur la page 1sur 146

UNIVERSIDADE CATÓLICA DE PELOTAS

CENTRO POLITÉCNICO
PROGRAMA DE PÓS-GRADUAÇÃO EM INFORMÁTICA

Processamento de imagens baseado em


algoritmos genéticos fuzzy intervalares
por
Frederico Corrêa da Silva

Dissertação apresentada como


requisito parcial para a obtenção do grau de
Mestre em Ciência da Computação

Orientador: Prof. Dr. Marilton Sanchotene de Aguiar

DM-2009/2-002

Pelotas, agosto de 2009


Dedicatória

Dedico este trabalho aos meus pais e irmãos,


que juntos formam a base de minha existência.

ii
Agradecimentos

Meus sinceros agradecimentos para:

– meus pais Nelcy da Silva e Eleiva Corrêa da Silva, que não mediram esforços, frente
às adversidades, para a conclusão de mais esta etapa de minha vida;

– meus irmãos Adriane e Renato Corrêa da Silva, que prestaram conselhos valiosos no
decorrer da empreitada;

– meus sobrinhos Rafaela e Pedro da Silva Moreno, que foram minha fonte de inspira-
ção nos momentos mais difíceis;

– minha namorada Ingrid Simões Gross, que faz com que meus dias sejam cada vez
mais felizes e plenos;

– meu cunhado Claiton Baes Moreno, que sempre acreditou em meu potencial;

– os colegas André Moraes e Rafael Burlamaqui, que com muito apoio, cumplicidade,
amizade, atualidades, rivalidade e uma dose de detonação, serviram de respaldo para superar os
momentos mais desafiadores do curso, com muito bom humor;

– meus amigos e familiares em geral, que sempre estiveram por perto revigorando a
energia para que eu pudesse encarar os momentos árduos com serenidade;

– meu Professor Adenauer Corrêa Yamin, que me mostrou, com seu exemplo, que
podemos nos tornar grandes homens sem perder a essência;

– minha professora Graçaliz Pereira Dimuro, pelo carinho e ensinamentos concedidos;

– a CAPES, pelo auxílio em forma de bolsa;

– meu orientador Marilton Sanchotene de Aguiar, que ensinando, confiando e acredi-


tando, possibilitou a realização de um sonho.

iii
Epígrafe

Eu muito penei descaminhos ...


Quando, arrogante e mesquinho,
Meu pensar era pequeno.
Andei noites de agonia
E dias de desespero.
Mas por mim tomei sentindo
Do que a vida me ensinava
Sendo a Terra uma morada
De provas e sofrimento.
Dei por um fim aos meus tormentos ...
Mudando para serenos
Os dias da minha jornada.
Deixei o ego frustrado
Reduzido a sua instância
E fui viver os encantos
Que existem na natureza.
E foi tão grande a diferença
Que por Deus não volto atrás.
— Nelcy da Silva

iv
Sumário

Lista de Figuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix

Lista de Tabelas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii

Lista de Siglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv

Lista de Símbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xviii

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix

Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx

1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1 Motivações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3 Organização do Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Lógica Fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1 Considerações Iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2 Teoria dos Conjuntos Fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2.1 Variáveis Linguísticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2.2 Funções de Pertinência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.2.3 Relações Fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.2.4 Proposições Fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3 Sistemas Fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

v
2.3.1 Sistemas Fuzzy Intervalares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3 Algoritmo Genético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1 Considerações Iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.2 Funcionamento do Algoritmo Genético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2.1 Processo de Seleção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.2 Operadores Genéticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.2.3 Rotinas de Otimização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.2.4 Alguns Aspectos Importantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.3 Parametrização do Algoritmo Genético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.3.1 Algoritmos Genéticos Adaptativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4 Processamento Digital de Imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.1 Considerações Iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.2 Fundamentos de Imagens Digitais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4.2.1 Etapas do Processamento de Imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.2.2 Histograma da Imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.2.3 Realce de Imagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.2.4 Segmentação Orientada a Regiões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4.3 Processamento de Imagens em Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

4.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5 Radiologia e Diagnóstico por Imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.1 Considerações Iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.2 Introdução à Radiologia Digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

5.2.1 Produção de Raios-X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

vi
5.2.2 Raio-X e Equipamentos Digitais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.2.3 Formatos de Imagem Digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

5.2.4 Qualidade da Imagem Digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

5.3 Gerenciamento de Imagens e Informações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

5.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

6 Arquitetura Proposta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

6.1 Considerações Iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

6.2 Arquitetura do Projeto M-IPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

6.3 Modelagem do Fluxo de Trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

6.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

7 O Sistema Proposto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

7.1 Considerações Iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

7.2 Modelos Propostos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

7.2.1 Segmentação de Imagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

7.2.2 Processamento de Alto Desempenho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

7.2.3 Extração de Informações de Densidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

7.2.4 Sistema Fuzzy para Classificação da DMO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

7.3 Funcionamento do Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

7.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

8 Estudos de Caso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

8.1 Considerações Iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

8.2 Objetos de Estudo e Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

8.2.1 Resultados para a Detecção de Necrose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

8.2.2 Resultados para o Cálculo da DMO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

8.3 Trabalhos Relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

vii
8.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

9 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

9.1 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

9.2 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

9.3 Trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

Referências . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

Publicações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

Anexo A -- Criação de Modelos Fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

viii
Lista de Figuras

Figura 1 Clássica: (a) união; (b) intersecção; (c) complemento; (d) diferença. ....... 6

Figura 2 Fuzzy: (a) união; (b) intersecção; (c) complemento; (d) diferença. ......... 7

Figura 3 Clássica: (a) A; (b) meio excluído A ∪ A = X; (c) contradição A ∩ A = ∅. ... 9

Figura 4 e ∪ A,
e (b) meio excluído A
Fuzzy: (a) A; e ∩ A,
e X; (c) contradição A e ∅. ...... 9

Figura 5 Funções de pertinência para a variável temperatura. ...................... 9

Figura 6 Funções de pertinência para a variável estatura. . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Figura 7 Funções de pertinência: (a) baixa; (b) média; (c) alta . . . . . . . . . . . . . . . . . . . . . 11

Figura 8 Arquitetura padrão de um sistema fuzzy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Figura 9 Estrutura de um programa fuzzy hipotético. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Figura 10 Função de pertinência: (a) intervalar; (b) valores intervalares de entrada. . . . 17

Figura 11 Processo padrão de um algoritmo genético. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Figura 12 Gráfico: probabilidade (esq.) aptidão acumulada (dir.) ref. Tabela 8. . . . . . . . 23

Figura 13 (a) restrição, ótimo local e ótimo global; (b) convergência prematura. . . . . . . 28

Figura 14 Meta-AG de Grefenstette (1986). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Figura 15 FAGA de Herrera et al. (1994). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Figura 16 Imagem monocromática com destaque para uma região de 17 × 17 pixels. . . 35

Figura 17 Tipos de conectividade dos pixels vizinhos ao pixel central. . . . . . . . . . . . . . . . 36

Figura 18 Diferença na geometria da amostragem: (a) retangular; (b) hexagonal. . . . . . 37

Figura 19 Amostragem com: (a) aliasing; (b) anti-aliasing. . . . . . . . . . . . . . . . . . . . . . . . . 37

Figura 20 Quantização monocromática: (a) 256 níveis; (b) 16 níveis; (c) 2 níveis. . . . . 38

Figura 21 Exemplo de variação de contraste. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

ix
Figura 22 Etapas do processamento digital de imagens. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Figura 23 Exemplo de histograma da imagem: (a) baixo contraste; (b) alto contraste. . 42

Figura 24 Exemplo de histograma da imagem: (a) bimoidal; (b) multimodal. . . . . . . . . . 43

Figura 25 Equalização de histograma: (a) imagem original; (b) imagem equalizada. . . 44

Figura 26 Filtragem: (a) imagem original; (b) filtro passa-baixa; (c) filtro passa-alta. . . 45

Figura 27 Imagem segmentada usando quadtree (esq.) e grafo da segmentação (dir.). . 46

Figura 28 Imagem e histograma: (a) com ruído; (b) pós limiarização. . . . . . . . . . . . . . . . . 47

Figura 29 Voxel isotrópico (esq.) e anisotrópico (dir.). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Figura 30 Sinal analógico (esq.) e digital (dir.). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Figura 31 Modelo atômico de Bohr: produção de raio-X de freamento. . . . . . . . . . . . . . . 53

Figura 32 Modelo atômico de Bohr: produção de Raio-X característico. . . . . . . . . . . . . . 54

Figura 33 Elétron: velocidade × tensão (a) 10 volts; (b) 100 volts. . . . . . . . . . . . . . . . . . . 55

Figura 34 Ampola de raio-X. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Figura 35 Ampola de raio-X: catodo e ânodo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

Figura 36 Exposição radiografica frente a um objeto com várias camadas. . . . . . . . . . . . 57

Figura 37 Espectro eletromagnético. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Figura 38 Chassi, ecrãn e filme: (a) chassi; (b) acoplamento ecrãn e filme. . . . . . . . . . . . 58

Figura 39 Radiografia: (a) leitora digital; (b) estação de trabalho; (c) impressora laser. 59

Figura 40 Aparelho de radiografia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Figura 41 Aparelho de densitometria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Figura 42 Radiografia: (a) digital - alto contraste; (b) convencional - baixo contraste. . 65

Figura 43 Arquitetura do ambiente M-IPE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

Figura 44 Arquitetura cliente - usuário da saúde. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Figura 45 Arquitetura cliente - usuário das exatas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Figura 46 Arquitetura servidor - gerência de recursos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

x
Figura 47 Arquitetura servidor - processamento e armazenagem. . . . . . . . . . . . . . . . . . . . . 74

Figura 48 Atores da arquitetura M-IPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Figura 49 Evolução e descrição dos modelos propostos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Figura 50 Funcionamento do algoritmo genético quadtree recursivo. . . . . . . . . . . . . . . . . 81

Figura 51 Interface de controle do AG (a) função objetivo (b) parâmetros de precisão . 83

Figura 52 Interface para parametrização quadtree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

Figura 53 Arquitetura do framework iPar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

Figura 54 Módulo de monitoramento dos nodos e o status das tarefas. . . . . . . . . . . . . . . . 87

Figura 55 Histograma: (a) densidade baixa; (b) densidade média; (c) densidade alta. . . 88

Figura 56 Padrão hipotético de luminância apresentando regiões de densidade. . . . . . . . 88

Figura 57 Funções de luminância fora do padrão estabelecido. . . . . . . . . . . . . . . . . . . . . . . 89

Figura 58 Arquitetura do ambiente iFuz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

Figura 59 Modelagem fuzzy, variáveis (a) idade; (b) densidade. . . . . . . . . . . . . . . . . . . . . . 91

Figura 60 Modelagem fuzzy: (a) variáveis de saída; (b) regras do modelo . . . . . . . . . . . . 92

Figura 61 Funcionamento do sistema de simulação de aspectos dinâmicos. . . . . . . . . . . . 94

Figura 62 Interface de submissão para cálculo da DMO . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Figura 63 Imagem: (a) original; (b) particionamento quadtree; (c) segmentação resul-
tante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

Figura 64 Modelos de experimentação animal (a) modelo 1 (b) modelo 2 . . . . . . . . . . . 101

Figura 65 Partição inicial: (a) 64 quadrantes; (b) 16 quadrantes; (c) 4 quadrantes. . . . . . 102

Figura 66 Segmentação da necrose obtida com precisão (a) alta; (b) média; (c) baixa . . 104

Figura 67 Imagens de raio-X da Tíbia e Fíbula (a) corte inferior (b) corte superior . . . 105

Figura 68 Fatia da imagem apropriada para o estudo em questão. . . . . . . . . . . . . . . . . . . . 106

Figura 69 Imagem de raio-X (a) original; (b) quadtree; (c) segmentação resultante . . . . 107

Figura 70 Histograma da imagem: (a) original; (b) com a segmentação; (c) padrão espe-
rado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

xi
Figura 71 Fuzzificação e pertinência: (a) idade; (b) entrada 1 densidade; (c) entrada 2. 109

Figura 72 Defuzzificação por centróide: (a) idade + entrada 1; (b) idade + entrada 2. . 110

Figura 73 Radial fuzzy: (a) normal; (b) osteopenia tendendo à osteoporose. . . . . . . . . . . 111

Figura 74 Arquitetura do ambiente IPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

Figura 75 Assinatura digital referente à imagem de raio-X . . . . . . . . . . . . . . . . . . . . . . . . . 116

Figura 76 Interface para cadastramento das variáveis linguísticas. . . . . . . . . . . . . . . . . . . . 123

Figura 77 Interface para cadastramento dos termos linguísticos. . . . . . . . . . . . . . . . . . . . . 124

Figura 78 Interface para criar as funções de pertinência. . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

Figura 79 Fatores de risco: (a) cadastro dos fatores; (b) cadastro dos grupos. . . . . . . . . . 125

Figura 80 Criação de modelagens fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

Figura 81 Manipulação da base de regras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

xii
Lista de Tabelas

Tabela 1 Operações dos conjuntos clássicos. ..................................... 7

Tabela 2 Operações dos conjuntos fuzzy. ........................................ 7

Tabela 3 Algumas propriedades dos conjuntos clássicos. .......................... 8

Tabela 4 Propriedades dos conjuntos fuzzy (exceções). ............................ 8

Tabela 5 Matriz relacional, exemplo de relação fuzzy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Tabela 6 Principais tipos de representação dos AG relacionados ao problema. . . . . . . . 21

Tabela 7 Exemplo de uma avaliação entre 2 indivíduos. . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Tabela 8 Método roleta, exemplo de seleção. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Tabela 9 Operador de cruzamento em um ponto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Tabela 10 Operador de cruzamento multipontos (2 pontos). . . . . . . . . . . . . . . . . . . . . . . . . 25

Tabela 11 Operador de cruzamento uniforme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Tabela 12 Operador de mutação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Tabela 13 Operador inversor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

Tabela 14 Valores de: Jong, Grefenstette e Schaffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

Tabela 15 Matriz de conversão considerando a frequência de Nyquist. . . . . . . . . . . . . . . . 52

Tabela 16 Tabela de regras entre às variáveis estipuladas e os termos da doença. . . . . . . 92

Tabela 17 Tabela de fatores externos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

Tabela 18 Principais parâmetros do algoritmo genético proposto. . . . . . . . . . . . . . . . . . . . 99

Tabela 19 Principais parâmetros da quadtree classificadas por precisão. . . . . . . . . . . . . . . 100

Tabela 20 Resultados para necrose, precisão alta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Tabela 21 Resultados para necrose, precisão média. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

xiii
Tabela 22 Resultados para necrose, precisão baixa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Tabela 23 Resultados para DMO, precisão alta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Tabela 24 Pertinência de saída pela regra MIN para os valores de idade e entrada 1. . . . 109

Tabela 25 Pertinência de saída pela regra MIN para os valores de idade e entrada 2. . . . 109

Tabela 26 Funções de saída resultante da regra MAX obtidas a partir da regra MIN. . . 110

xiv
Lista de Siglas

ADC Analog to Digital Converter

AG Algoritmo Genético

AGA Algoritmo Genético Adaptativo

API Application Programming Interface

bit Binary Digit

BMP Microsoft Windows Bitmap

BNDES Banco Nacional do Desenvolvimento

CAD Computer-Aided Diagnosis

CCITT Consultative Committee on International Telegraphy and Telephony

cfe. Abreviatura de conforme

CLF Controladores de Lógica Fuzzy

COBEA Comitê Brasileiro de Experimentação Animal

CPU Central Processing Unit

DAC Digital Analog Converter

DICOM Digital Imaging and Communications in Medicine

dir. Abreviatura de direita

DMO Densidade Mineral Óssea

DPI Dots Per Inch

Dr. Abreviatura de doutor

esq. Abreviatura de esquerda

EUA Estados Unidos da América

ex. Abreviatura de exemplo

FAGA Fuzzy Adaptive Genetic Algorithm

xv
FOV Field of View

GIF Graphics Interchange Format

G-IPE Geographic Information Processing Environment

HIS Hospital Information System

HUSFP Hospital Universitário São Francisco de Paula

Hz Hertz

i.e. Latim, lê-se: “id est”, abreviatura e significado de isto é

IEC International Electrotechnical Commision

iFuz internet Fuzzy

iPar Internet Parallelization

IPE Information Processing Environment

ISO International Organization for Standardization

ITU International telecommunication Union

JAI Java Advanced Imaging

JIT Just In Time Compiler

JPEG Joint Photographic Experts Group

JVM Java Virtual Machine

KM/H Quilômetros por Hora

LZW Lempel-Ziv-Welch

MIII Medical Imaging Informatics Infraestruture

M-IPE Medical Information Processing Environment

NASA National Aeronautics and Space Administration

NFS Network File System

OMS Organização Mundial de Saúde

OSI Open System Interconnect

PACS Picture Archiving and Communication Systems

PDI Processamento Digital de Imagem

xvi
pixel Picture Element

PNG Portable Network Graphics

PPD Processamento Paralelo e Distribuído

PPGC Programa de Pós-Graduação em Computação

PPGINF Programa de Pós-Graduação em Informática

PSI Pound Force per Square Inch

RGB Red Green Blue

RIS Radiology Information System

RLE Run-length encoding

RMI Remote Method Invocation

SPIFF Still Picture Interchange File Format

TIFF Tag Image File Format

UCPEL Universidade Católica de Pelotas

UFRGS Universidade Federal do Rio Grande do Sul

W3C World Wide Web Consortium

xvii
Lista de Símbolos

∩ Operação de Intersecção

∪ Operação de União

µ Letra Grega, lê-se: “mu”

A Operação de Complemento associado ao Conjunto Clássico A

Φ Letra Grega, lê-se: “phi”

A
e Conjunto Fuzzy A

B
e Conjunto Fuzzy B

∨ Operador Lógico “E”

∧ Operador Lógico “OU”



C Grau Celsius

| Operação de Diferença entre Conjuntos (também indica expressão “tal que”)

A Conjunto Clássico A

B Conjunto Clássico B

R Relação entre Conjuntos

X Conjunto Universo X

Y Conjunto Universo Y

A
e Operação de Complemento associado ao Conjunto Fuzzy A

xviii
Resumo

A osteoporose é uma doença caracterizada pela diminuição da massa óssea e deterio-


ração na microarquitetura do tecido ósseo. Além disso, é a doença metabólica mais comum e
a principal causa de fraturas por fragilidade esquelética. Assim, a osteoporose é mundialmente
considerada um dos principais problemas de saúde pública, dada a prevalência crescente e as-
sociação a fraturas nas vértebras e em outros ossos, cujas repercussões individuais e sociais são
graves.
Para o diagnóstico dessa doença, tem-se o equipamento chamado densitômetro ósseo.
Entretanto, são desejáveis métodos alternativos ao uso desse equipamento, uma vez que ele é
muito caro e não está presente na maior rede de atendimento em saúde do país, que é a rede
pública de unidades básicas de saúde.
Neste sentido, apresenta-se proposta de desenvolvimento de uma ferramenta compu-
tacional para viabilizar o diagnóstico e a administração de terapia com custo operacional redu-
zido, a partir do uso de raio-X convencional e de algoritmos para segmentação e classificação
de imagens, demonstrando o tratamento das incertezas decorrentes das diferentes etapas do
processamento.
Para este propósito, são utilizados diversos recursos de pesquisa teórica e aplicada.
Ainda, aplicam-se algoritmos genéticos na segmentação da imagem original, utilizando o par-
ticionamento quadtree. Também, a classificação resultante passa por um processo de fuzzifica-
ção, em que são tratados os valores quantitativos da densidade óssea e os qualitativos dos fatores
de risco. Portanto, os modelos contemplados por este trabalho fornecem as seguintes informa-
ções sobre a densidade mineral óssea: qualitativas, oriundas do modelo fuzzy, e quantitativas,
produtos do modelo de algoritmo genético.

Palavras-chave: lógica fuzzy; sistemas fuzzy intervalares; algoritmo genético; algoritmo ge-
nético adaptativo; processamento de imagem; sistema CAD; radiologia digital; radiologia e
diagnóstico por imagem; processamento paralelo e distribuído.

xix
Abstract

"IMAGE PROCESSING BASED ON FUZZY INTERVAL GENETIC ALGORITHMS"

Osteoporosis is a disease characterized by low bone mass and deterioration in the mi-
croarchitecture of bone tissue. Moreover, this is the most common metabolic disease and the
leading cause of fractures by skeletal fragility. It is globally considered one of the major public
health problems for its increasing prevalence and association with vertebral fractures and other
broken bones, whose individual and social consequences are serious.
There is a equipment called bone densitometry to identify this disease. But, it is neces-
sary other alternatives to the use of bone densitometry, because the equipment is very expensive
and does not exist in the largest network of health care in the country, which is the public basic
health units.
In this sense, is being presented a proposal to develop a computational tool to facilitate
the diagnosis and management of therapy with reduced operating costs from the use of con-
ventional X-ray, using algorithms for segmentation and classification of images, showing the
treatment of uncertainties arising from different stages of processing.
For this purpose, are used several resources of theoretical and applied researches. Also,
genetic algorithms are applied in the segmentation of the original image, using the quadtree
partitioning. Still, the resulting classification is a process of fuzzification related to quantita-
tive values of bone density and qualitative risk factors. Therefore, the models covered by this
work provides both information about bone mineral density: qualitative, derived from the fuzzy
model, and quantitative, originated from genetic algorithm model.

Key-words: fuzzy logic; interval value fuzzy systems; genetic algorithm; adaptive genetic al-
gorithm; image processing; CAD system; digital radiology; radiology and image diagnosis;
processing parallel and distributed.

xx
1

1 Introdução

Esta seção introdutória é composta por motivações, objetivos do trabalho e organização


do texto.

1.1 Motivações

A osteoporose é uma doença caracterizada por diminuição da massa óssea e dete-


rioração na microarquitetura do tecido ósseo, levando à fragilidade mecânica e consequente
predisposição a fraturas com trauma mínimo (KANIS et al.; THOMPSON et al., 1994, 1998 apud
BANDEIRA, 2003).

Segundo Wannmacher (2004) é a doença metabólica mais comum e a principal causa


de fraturas por fragilidade esquelética, pelo que é mundialmente considerada um dos princi-
pais problemas de saúde pública, por sua prevalência crescente e pela associação a fraturas
vertebrais e de outras localizações, com graves repercussões individuais (mortalidade, morbi-
dade, incapacidade funcional) e sociais (diminuição da força de trabalho, aumento do risco de
institucionalização, ônus econômico).

Há casos passíveis de reversão, nos quais o desenvolvimento da doença está relacio-


nado com o estilo de vida, merecendo consideração o consumo de bebida alcoólica, o taba-
gismo, uma alimentação saudável e a prática de exercícios físicos. Os locais mais comuns de
fratura são a coluna, o colo do fêmur e o pulso. Dentre essas fraturas, a mais perigosa é a do
colo do fêmur (THOMPSON et al., 1998; BLACK et al., 1999).

Extima-se, no Brasil, que: dez milhões de brasileiros sofrem de osteoporose; três em


cada quatro doentes são do sexo feminino; uma em cada três mulheres com mais de 50 anos tem
a doença; setenta e cinco por cento dos diagnósticos são feitos somente após a primeira fratura;
dois milhões e quatrocentas mil fraturas decorrentes da osteoporose ocorrem anualmente no
País e, duzentas mil pessoas morrem todos os anos em decorrência dessas fraturas (MEIRELLES,
1999; WANNMACHER, 2004).
2

O crescente reconhecimento da morbidade e da mortalidade atribuídas à osteoporose


motivou a OMS e a industria farmacêutica a se empenhar por novas estratégias terapêuticas
na prevenção de fraturas. Ao mesmo tempo, procuraram-se novas técnicas radiológicas para
avaliar a integridade do esqueleto (SACKETT, 1989; RAY et al., 1997; FUCHS; FUCHS, 2004).

Esta proposta de dissertação é parte de um projeto de pesquisa maior, denominado


M-IPE, cujo objetivo geral se divide no desenvolvimento de: i) um modelo de segmentação
de imagens médicas baseado em algoritmos evolutivos para ser processado em agregados de
computadores; e, ii) um sistema apropriado para a submissão de tarefas, armazenamento e vi-
sualização das imagens e resultados decorrentes da aplicação do modelo de segmentação nestas
tarefas. Sob esse contexto, a proposta desse trabalho procura atender a primeira demanda do
projeto M-IPE.

O projeto M-IPE propõe a formalização e a sedimentação de um ambiente para o pro-


cessamento de informações médicas (segmentação e classificação), baseado em algoritmos evo-
lutivos, integrando-se a um repositório de informações e apresentando alto desempenho com-
putacional.

No referido projeto, buscou-se a participação do HUSFP como laboratório para os


experimentos dessas ideias e encontrou-se junto à direção técnica, especialmente no Dr. Ernesto
Nunes, a disponibilidade e a colaboração para a proposta e o desenvolvimento do projeto.

Sabe-se que o HUSFP não possui o densitômetro ósseo, por ser um equipamento bas-
tante caro e inacessível à maioria dos hospitais e das unidades básicas de saúde. Entretanto, esse
tipo de equipamento é importantíssimo para o diagnóstico da osteopenia, que é uma patologia
considerada estágio inicial da osteoporose.

Um outro fator importante que motiva a realização dessa proposta é o experimento que
será posteriormente sugerido em conjunto com o HUSFP — pólo reconhecido de pesquisa em
neonatalogia —, a qual envolverá o acompanhamento do crescimento de nascidos prematuros
a partir de imagens digitalizadas de raio-X. Assim, um banco de imagens de prematuros as-
sociado às informações de DMO provenientes da ferramenta computacional desse trabalho de
pesquisa, poderá estabelecer um padrão de crescimento dos prematuros, facilitando diagnósti-
cos de possíveis desvios ou deficiências no desenvolvimento dos bebês.

A participação do HUSFP no desenvolvimento desse projeto é de grande importância


para agregação de conhecimento relativo ao uso e à disponibilização de imagens do setor de
radiologia. Espera-se obter um conjunto de imagens que servirão para a parametrização dos
modelos e para o estabelecimento das classes e dos graus de osteopenia.
3

1.2 Objetivos

A presente proposta é ampliação e continuação da pesquisa iniciada pelo orientador


dessa dissertação, em sua tese de doutoramento, no PPGC/UFRGS, intitulada “Um modelo ca-
tegorizador intervalar n-dimensional com l-camadas baseado em tesselações” (AGUIAR, 2004).
Naquele momento, observou-se que os modelos propostos poderiam ser expandidos para outras
áreas distintas à ecologia, como por exemplo na medicina.

Com isso, pretende-se desenvolver uma ferramenta computacional que gerencie o pro-
cessamento de um grande fluxo de imagens digitais oriundo de hospitais e postos de saúde, com
o propósito de efetuar a segmentação e a classificação das informações médicas, possibilitando
assim, o diagnóstico da DMO.

Para tanto, serão utilizados algoritmos genéticos e particionamento quadtree, a fim


de, obter um intervalo ótimo de valores, para que junto de técnicas baseadas em lógica fuzzy
interligada a uma base de conhecimento especialista, seja possível estabelecer tal diagnóstico.

Os objetivos específicos são:

• desenvolvimento de uma arquitetura para o processamento de informações médicas con-


templando PPD;

• desenvolvimento de uma metodologia baseado em algoritmo genético fuzzy intervalar


para a segmentação e classificação de imagens médicas;

• desenvolvimento de um método utilizando algoritmos genéticos e quadtree para segmen-


tação das imagens e métodos de vanguarda como lógica fuzzy e matemática intervalar,
para cálculo de informações qualitativas e quantitativas;

• desenvolvimento de uma metodologia para o cálculo da DMO a partir de imagens de


raio-X convencional;

• definição e implementação de uma interface integradora da aplicação com o sistema ge-


renciador de banco de dados; e,

• definição e implementação de uma interface integradora da aplicação com o middleware1


de PPD.
1
Palavra, do Inglês, significa camada “computacional” intermediária.
4

1.3 Organização do Texto

Esse trabalho foi organizado de forma a abranger os conceitos necessários à elabo-


ração da proposta, abordando, assim, os seguintes temas: lógica fuzzy, algoritmos genéticos,
processamento de imagem e diagnóstico por imagem.

Os capítulos 2, 3, 4 e 5, relacionados à fundamentação teórica da proposta, estão divi-


didos em 4 seções. As considerações iniciais de cada capítulo abrangem, de maneira sucinta,
sua importância científica; a segunda seção é uma abordagem de princípios básicos; a terceira
seção é dedicada a abordagem de um assunto atual relacionado à proposta; e, por fim, as consi-
derações finais de cada capítulo ratificam a importância do assunto em linhas gerais.

Além disso, essa dissertação conta com a introdução, o capítulo da arquitetura pro-
posta, o capítulo da proposta propriamente dito, os estudos de caso, a conclusão, as referências,
os trabalhos publicados e, o anexo.

No capítulo 2 são abordados conceitos referentes à teoria dos conjuntos fuzzy e siste-
mas fuzzy intervalares.

No capítulo 3 apresentam-se a metodologia do algoritmo genético utilizado nessa pro-


posta e modelos adaptativos originados do algoritmo em questão.

O capítulo 4 tem como objetivo principal ressaltar alguns conceitos referentes ao pro-
cessamento de imagens e técnicas de processamento utilizadas nessa proposta.

No capítulo 5 têm-se conceitos relacionados à radiologia em âmbito geral e o diagnós-


tico por imagem.

No capítulo 6 é abordada a arquitetura proposta para o projeto M-IPE.

No capítulo 7 são tratados os modelos e metodologias constituintes das ferramentas e


técnicas propostas.

No capítulo 8 encontram-se os estudos de caso dos modelos desenvolvidos.

No capítulo 9 apresenta-se a conclusão sobre o desenvolvimento do trabalho.

E, por fim, o anexo A contemplando as interfaces desenvolvidas para efetuar modela-


gens fuzzy dinâmicas.
5

2 Lógica Fuzzy

Neste capítulo abordam-se conceitos referentes à teoria dos conjuntos fuzzy, aspectos
históricos e sistemas fuzzy intervalares, objetivando-se um melhor entendimento sobre sistemas
fuzzy como forma de integração e elaboração de novas estratégias para classificação de dados
imprecisos na área médica.

2.1 Considerações Iniciais

A noção de conjunto fuzzy foi dada por Zadeh (1965) com o objetivo de definir conjun-
tos que não possuem fronteiras bem definidas e, a lógica fuzzy, é baseada na teoria dos conjuntos
fuzzy. Esta é uma generalização da teoria dos conjuntos tradicionais para resolver os paradoxos
gerados a partir da classificação verdadeiro ou falso da lógica clássica. Tradicionalmente, uma
proposição lógica tem dois extremos: ou completamente verdadeiro ou completamente falso.
Entretanto, na lógica fuzzy, uma premissa varia em grau de verdade de 0 a 1, o que leva a ser
parcialmente verdadeira e parcialmente falsa (TANSCHEIT, 2003).

A capacidade de deduzir conclusões baseadas em respostas incertas e imprecisas ca-


racteriza uma das principais aplicações da lógica fuzzy. Pode-se dizer que a lógica fuzzy é uma
ferramenta capaz de capturar informações vagas, em geral descritas em uma linguagem natural,
e convertê-las para um formato numérico (TANSCHEIT et al., 2007).

Pode-se ainda imaginar uma infinidade de conceitos que possuem a característica de


não estar bem definidos em suas fronteiras. Por exemplo, o conjunto dos homens altos, o con-
junto das ruas grandes de uma cidade, o diagnóstico médico de um paciente, a classificação de
bactérias quanto à sua natureza vegetal ou animal, o conjunto dos problemas de uma determi-
nada localidade (BARROS, 1997).
6

2.2 Teoria dos Conjuntos Fuzzy

Para padronização de conjuntos fuzzy e clássicos adotam-se as respectivas representa-


e e A)1 . Os operadores lógicos utilizados na formalização das operações
ções para os conjuntos (A
fuzzy são representados por: ∨ equivalente ao E lógico e ∧ equivalente ao OU lógico. O símbolo
µ indica o grau de pertinência de um elemento, por exemplo, (µAe(10) = 0, 5)2 . Já o comple-
mento de um conjunto fuzzy é definido por: A.
e

Em se tratando de operações entre conjuntos, considere os conjuntos A e B do universo


X. A união entre dois conjuntos, denotado por A∪B, representa todos os elementos do universo
X que pertencem ao conjunto A, ou ao conjunto B, ou a ambos. A intersecção de dois
conjuntos, denotado por A∩B, representa todos os elementos do universo X que pertencem
simultaneamente aos conjuntos A e B.

Já o complemento do conjunto A, denotado por A, define todos os elementos do uni-


verso X que não pertençam ao conjunto A. E, a diferença do conjunto A em relação ao
conjunto B, denotado por A|B, define todos os elementos do universo X que pertencem ao con-
junto A e não pertençam ao conjunto B simultaneamente (ROSS, 2004). A Figura 1 ilustra as
quatro operações baseado nos diagramas de Venn3 e sua formalização procede na Tabela 1.

Por outro lado, ao assumirmos que A


ee B
e são conjuntos fuzzy do universo X, as opera-
ções sobre os conjuntos fuzzy união, intersecção, complemento e diferença resultam
em conjuntos fuzzy, que segundo Zadeh (1965), contemplam a lógica clássica, considerando se
tratar de operações entre conjuntos. Quanto ao aspecto, observa-se a Figura 2, que assume uma
representação visual do diagrama de Venn para as referidas operações, e sua formalização na
Tabela 2.

(a) (b) (c) (d)


Figura 1: Clássica: (a) união; (b) intersecção; (c) complemento; (d) diferença.
Fonte: Ross (2004).

1e e ... N
e para conjuntos fuzzy e A, B, C ... N para conjuntos clássicos
A, B,
e C
2
É atribuído grau de pertinência 0,5 ao elemento 10 associado ao conjunto fuzzy A.
3
John Venn, nascido na Inglaterra, criador dos diagramas de Venn adotados pela matemática moderna.
7

Tabela 1: Operações dos conjuntos clássicos.


Fonte: Ross (2004).

união A ∪ B = {x | x ∈ A ou x ∈ B}

intersecção A ∩ B = {x | x ∈ A e x ∈ B}

complemento A = {x | x < A , x ∈ X}

diferença A|B = {x | x ∈ A e x < B}

(a) (b) (c) (d)


Figura 2: Fuzzy: (a) união; (b) intersecção; (c) complemento; (d) diferença.
Fonte: Ross (2004), modificado pelo autor.

Tabela 2: Operações dos conjuntos fuzzy.


Fonte: Ross (2004), modificado pelo autor.

união µA∪
e Be(x) = µA
e(x) ∨ µ B
e(x)

intersecção µA∩
e Be(x) = µA
e(x) ∧ µ B
e(x)

complemento µAe(x) = 1 − µAe(x)

diferença µA|e Be(x) = µAe ∧ µBe

Ao se tratar de propriedades4 dos conjuntos, cuja importância está relacionada a in-


fluencia matemática de manipulação dos conjuntos. A teoria dos conjuntos fuzzy, diferente do
caso das operações entre conjuntos, não consegue contemplá-las em sua totalidade as propri-
edades existentes na teoria dos conjuntos clássicos (JAFELICE et al., 2005). As exceções são o
axioma do meio excluído e axioma de contradição, que não são equivalentes nos con-
juntos fuzzy. Entretanto, o restante das propriedades observadas na Tabela 3, seguem as mesmas
definições em ambas as lógicas (ROSS, 2004).
4
Não foram abordadas todas as propriedades dos conjuntos, e sim, as mais relevantes para o trabalho.
8

Tabela 3: Algumas propriedades dos conjuntos clássicos.


Fonte: Ross (2004).
A ∪ (A ∩ B) = A
absorção
A ∩ (A ∪ B) = A
A∪B= B∪A
comutatividade
A∩B= B∩A
A ∪ (B ∪ C) = (A ∪ B) ∪ C
associatividade
A ∩ (B ∩ C) = (A ∩ B) ∩ C
A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C)
distributividade
A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C)
A∪A= A
idempotência
A∩A= A
A∪∅= A
A∩X = A
identidade A∩∅=∅
A∪X = X
transitividade SE A ⊆ B E B ⊆ C, ENTÃO A ⊆ C

involução A=A

axioma do meio excluído A∪A= X

axioma de contradição A∩A=∅

A∩B= A∪B
princípio de Morgan
A∪B= A∩B
Nota (1): A formalização destas propriedades utilizam operadores da lógica clássica.

Na Tabela 4 observa-se a representação formal para os conjuntos fuzzy das proprieda-


des do axioma do meio excluído e axioma de contradição, constatando-se que existe
uma não equivalência das referidas propriedades para a lógica clássica e a lógica fuzzy.

Tabela 4: Propriedades dos conjuntos fuzzy (exceções).


Fonte: Ross (2004).

axioma do meio excluído e∪ A


A e, X

axioma de contradição e∩ A
A e, ∅

As exceções entre a lógica clássica e a fuzzy, relativas ao axioma do meio excluído


e axioma de contradição podem ser identificados da seguinte forma: a primeira, representa
o resultado da transação entre a união do conjunto A e seu complemento; já a segunda, repre-
senta o resultado da intersecção do conjunto A e seu complemento (ROSS, 2004).
9

A análise das referidas exceções pode ser observada na Figura 3, cuja representação é
dada por um conjunto clássico, e na Figura 4 a representação é dada por um conjunto fuzzy.

(a) (b) (c)

Figura 3: Clássica: (a) A; (b) meio excluído A ∪ A = X; (c) contradição A ∩ A = ∅.


Fonte: Ross (2004), modificado pelo autor.

(a) (b) (c)

Figura 4: Fuzzy: (a) A; e∪ A


e (b) meio excluído A e∩ A
e , X; (c) contradição A e , ∅.
Fonte: Ross (2004), modificado pelo autor.

2.2.1 Variáveis Linguísticas

Segundo Tanscheit (2003), uma variável linguística é aquela cujos valores são nomes
de conjuntos fuzzy. Por exemplo, a temperatura de um determinado processo pode ser uma
variável linguística assumindo valores baixa, média, e alta. Esses valores são descritos por
intermédio de conjuntos fuzzy, representados por funções de pertinência, conforme mostrado na
Figura 5.

Figura 5: Funções de pertinência para a variável temperatura.


Fonte: Tanscheit (2003).
10

De modo genérico, os valores de uma variável linguística podem ser sentenças em uma
linguagem especificada construídas a partir de termos primários (alto, baixo, pequeno,
médio, grande, zero, por exemplo), de conectivos lógicos (negação “NÃO”, conectivos “E”
e “OU”), de modificadores (muito, pouco, levemente, extremamente) e de delimitado-
res (como parênteses “()”) (JAFELICE et al., 2005; TANSCHEIT et al., 2007).

A principal função das variáveis linguísticas é fornecer uma maneira sistemática para
caracterização aproximada de fenômenos indefinidos. Em essência, a utilização do tipo de
descrição linguística empregada por seres humanos, e não de variáveis quantificadas, permite
que sistemas muito complexos sejam analisados através de termos matemáticos convencionais.

Formalmente, uma variável linguística é caracterizada por uma quíntupla (N, T(N),
X, G, M), onde: N é o nome da variável; T(N) é o conjunto de termos de N, ou seja, o conjunto
de nomes dos valores linguísticos de N; X é o universo de discurso; G representa as regras
sintáticas para gerar os valores de N (como uma composição de termos de T(N), conectivos
lógicos, modificadores e delimitadores) e, M indica as regras semânticas para associar a cada
valor gerado por G um conjunto fuzzy em X (TANSCHEIT, 2003; TANSCHEIT et al., 2007).

2.2.2 Funções de Pertinência

As funções de pertinência, conforme Tanscheit (2003), podem ter diferentes formas


dependendo do conceito que se deseja representar e do contexto em que serão utilizadas. Para
exemplificar o quanto o contexto é relevante na definição de funções de pertinência e na sua
distribuição ao longo de um dado universo, considera-se a variável linguística estatura (de
pessoas) constituída pelos seguintes termos: T(estatura) = {baixa, média, alta}, que corres-
pondem aos conjuntos fuzzy (A, e Be e C,
e respectivamente). Quanto ao tópico, as funções de
pertinência estão definidas e ilustradas hipoteticamente na Figura 6.

Figura 6: Funções de pertinência para a variável estatura.


Fonte: Tanscheit (2003).
11

Tal definição demonstra que as pessoas de até 1 metro e 50 centímetros apresentam


grau de pertinência igual a 1 no conjunto A
e (baixa) e, seu grau de pertinência, nesse mesmo
conjunto, decresce à medida que a altura aumenta. Considera-se que uma pessoa de 1 metro e
75 centímetro é totalmente compatível com o conjunto B
e (média), ao passo que altura acima de
1 metro e 80 centímetros, aproximadamente, apresentam grau de pertinência diferente de zero
em C
e (alta). Já pessoas com altura acima de 2 metros são definitivamente altas.

Funções de pertinência podem ser definidas a partir da experiência e da perspectiva


do usuário. Em aplicações práticas as formas escolhidas inicialmente podem sofrer ajustes em
função dos resultados observados (TANSCHEIT, 2003). No exemplo abordado, percebe-se que
as funções da variável estatura utilizaram-se de uma função triangular para definir o termo
médio (cfe. Figura 7 (b) esq.) e, duas funções trapezoidais para definir os termos baixa e alta
(cfe. Figura 7 (a) esq. e (c) esq.).

(a)

(b)

(c)
Figura 7: Funções de pertinência: (a) baixa; (b) média; (c) alta
12

Assim, para se obter o grau de pertinência a partir de um valor de entrada relativo ao


conjunto fuzzy (estatura), se faz necessário que tal valor seja aplicado nas equações, satisfa-
zendo assim, as condições apresentadas na Figura 7 (a) dir., (b) dir. e (c) dir. para cada uma das
respectivas funções.

Segundo Tanscheit et al. (2007) funções de pertinência contínuas podem ser definidas
por intermédio de funções analíticas. Por exemplo, a função µAe(x) = (1 + (a(x − c))b )−1 pode
ser usada para definir as funções de pertinência associadas aos conjuntos fuzzy correspondentes
aos termos pequeno, médio e grande. A forma de µAe(x) pode ser modificada através da
manipulação dos três parâmetros a, b e c, como observado na Equação 2.1 .

µ pequeno (x) = (1 + (9x2 )−1







µAe(x) 

µmédio (x) = (1 + (9(x − 0, 5))2 )−1 (2.1)





µgrande (x) = (1 + (9(x − 2))2 )−1


As funções de pertinência descontínuas são compostas de segmentos contínuos line-


ares, resultando em formas triangulares ou trapezoidais. Já as funções de pertinência discreti-
zadas consistem-se de conjuntos de valores discretos correspondendo a elementos discretos do
universo. Por exemplo, se X = {0, 1, 2, 3, 4, 5, 6}, uma representação para os termos pequeno,
médio e grande é possível através da Equação 2.2 (TANSCHEIT, 2003).

µ pequeno (x) = {0.3; 0.7; 1; 0.7; 0.3; 0; 0}







µAe(x) 

µmédio (x) = {0; 0; 0.3; 0.7; 1; 0.7; 0.3} (2.2)





µgrande (x) = {0; 0; 0; 0; 0.3; 0.7; 1}


2.2.3 Relações Fuzzy

Conforme Tanscheit (2003) as relações podem ser expressas de forma analítica (para
universos infinitos, por exemplo), ou de forma tabular, muito utilizada no caso de universos
finitos e discretos. Esta última forma recebe o nome de matriz relacional, cujos elementos, em
se tratando de conjuntos fuzzy, são valores infinitos entre zero e um.

Relações fuzzy generalizam o conceito de relações e representam o grau da associação


entre elementos de dois ou mais conjuntos fuzzy. Como exemplo de caráter linguístico tem-se:
“x é muito maior do que y”, “x está próximo de y”. Formalmente, dados dois universos X e Y,
a relação fuzzy R é um conjunto fuzzy em X × Y, caracterizada por uma função de pertinência
µR (x, y) ∈ [0, 1] onde x ∈ X e y ∈ Y (TANSCHEIT, 2003; TANSCHEIT et al., 2007).
13

Por exemplo, seja X = {x1 , x2 } ={Fortaleza, Florianópolis}, Y = {y1 , y2 , y3 } = {Porto


Alegre, Criciúma, Curitiba} e R a relação “muito próxima”. No caso de uma relação fuzzy,
essa poderia ser dada por alguma função de pertinência µR (x, y) cuja representação está hipote-
ticamente expressa na Tabela 5 (TANSCHEIT, 2003; JAFELICE et al., 2005).

Tabela 5: Matriz relacional, exemplo de relação fuzzy.


Fonte: Tanscheit (2003).
y1 y2 y3
Porto Alegre Criciúma Curitiba
x1 Fortaleza 0,1 0,2 0,3
x2 Florianópolis 0,8 1 0,8

Matematicamente, o conceito de relação é formalizado a partir da teoria de conjuntos.


Dessa forma, pode-se dizer que a relação será fuzzy quando optar pela teoria dos conjuntos fuzzy
e será clássica quando se escolher teoria dos conjuntos clássica.

2.2.4 Proposições Fuzzy

Proposições fuzzy podem ser combinadas por meio de diferentes operadores, como, por
exemplo, os conectivos lógicos E e OU, a negação NÃO e o operador de implicação SE...ENTÃO.
Assim, as proposições fuzzy daí resultantes podem ser descritas em termos de relações fuzzy
(TANSCHEIT, 2003; JAFELICE et al., 2005; TANSCHEIT et al., 2007).

Em geral, segundo Tanscheit (2003), o conectivo E é usado com variáveis em diferentes


universos, enquanto o conectivo OU estabelece ligação entre variáveis contidas em um mesmo
universo. Quando o conectivo OU é empregado para conectar variáveis em uma sentença do tipo
SE...ENTÃO, ele pode ser usado com duas variáveis diferentes. Por exemplo: SE “a pressão é
alta” OU “a velocidade é rápida” ENTÃO “o controle é zero”.

A operação NÃO é considerada como semanticamente sinônima da negação em lingua-


gem natural (cfe. Equação 2.3). Exemplo: “pressão é não alta”.

A = {µAe(x)/x} ⇒ NÃO A = {(1 − µAe(x))/x} (2.3)

Considere variáveis linguísticas hipotéticas de nomes x e y definidas nos universos X


e Y, respectivamente, e os conjuntos fuzzy A e B definidos nos universos X e Y, nessa ordem.
Uma proposição fuzzy P estabelecida intuitivamente para esta sentença define que x é A, assim
como y é B.
14

O operador SE...ENTÃO (TANSCHEIT, 2003; JAFELICE et al., 2005; TANSCHEIT et al.,


2007) é também conhecido como declaração condicional e descreve a dependência do valor
de uma variável linguística em relação ao valor de outra. Em muitas aplicações essas declara-
ções condicionais são simplesmente denominadas regras linguísticas, constituindo-se em frases
como: SE x é A ENTÃO y é B.

2.3 Sistemas Fuzzy

Os sistemas fuzzy estimam funções com descrição parcial do comportamento do sis-


tema, em que especialistas podem prover o conhecimento heurístico ou este pode ser inferido
a partir de dados de entrada-saída do sistema. Então, pode-se dizer que os sistemas fuzzy são
sistemas baseados em regras que utilizam variáveis linguísticas para executar um processo de
tomada de decisão (WAGNER, 2003).

Na arquitetura padrão de um sistema fuzzy é possível observar os componentes que


fazem parte desse sistema. A seguir é apresentado uma breve descrição sobre cada um dos
componentes de um sistema fuzzy, sendo ao final ilustrada a respectiva arquitetura na Figura 8.

Na etapa de fuzzificação estão contidas as funções de pertinência das variáveis lin-


guísticas de entrada. Nessa fase é recebido um valor do universo de discurso sendo retornados
os graus de pertinência aos respectivos conjuntos fuzzy. Entretanto, o tipo e a quantidade de
funções de pertinência utilizados em um sistema dependem de alguns fatores tais como: preci-
são, estabilidade, facilidade de desenvolvimento, etc. Assim, a fim de colaborar na construção
das funções de pertinência para a descrição de uma determinada entrada é importante a atuação
de um especialista na área do objeto que poderá ser modelado (ROSS, 2004).

Já a máquina de inferência é o componente do sistema em que as proposições são


definidas e depois examinadas paralelamente; é na máquina de inferência que são realizadas
as operações com conjuntos fuzzy propriamente ditas. Para realizar essas operações existem
métodos de inferência fuzzy, dentre os quais, os mais importantes são o método de Mamdani
(MAMDANI; ASSILIAN, 1975), cujo método é considerado simples e intuitivo, e o método de
Takagi-Sugeno-Kang (TSK) (ISHII; SUGENO, 1985), cujo método é mais eficiente quanto à
rapidez computacional e possui mais propriedades matemáticas (JAFELICE et al., 2005).

O gerenciador de informações obtém da base de regras aquelas normas aplicáveis


para entradas específicas. Cada antecedente (SE) tem um grau de pertinência. A ação da regra
(ENTÃO) representa a saída da regra. Durante a avaliação, a intensidade da saída é calculada
com base nos valores dos antecedentes e então indicadas pelas referidas regras (ROSS, 2004).
15

Quanto à base de regras, essa é composta por um conjunto de condições SE (usando


conectivos lógicos E, OU e NÃO), uma conclusão ENTÃO e uma conclusão opcional SENÃO (regras
condicionais básicas). Essas regras são aplicadas nas variáveis por intermédio de um processo
denominado propagação. As regras podem ser fornecidas por especialistas, em forma de sen-
tenças linguísticas, e constituem-se em um aspecto fundamental no desempenho de um sistema
de inferência fuzzy (ROSS, 2004).

Já a defuzzificação consiste no processo utilizado para converter o conjunto fuzzy de


saída em um valor de saída do sistema. No processo de defuzzificação estão contidas as funções
de pertinência das variáveis linguísticas de saída. Nesse processo ocorre a etapa de relação
funcional entre as regiões fuzzy e o valor esperado. Existem vários métodos de defuzzificação,
dentre os mais conhecidos destacam-se: (i) centróide, (ii) média dos máximos, (iii) critério
máximo, (iv) método da altura, (v) barras verticais, entre outros (ROSS, 2004).

Figura 8: Arquitetura padrão de um sistema fuzzy.


Fonte: Jafelice et al. (2005), modificado pelo autor.

Como exemplo pode-se imaginar um programa fuzzy, com base na arquitetura abor-
dada, o qual controla uma aceleração baseando-se em dois valores de entrada, que correspon-
dem à velocidade (em KM/H) e temperatura (em ◦ C)5 de um carro e de seu motor, respec-
tivamente. Esse sistema fornece como saída um resultado relativo à pressão de aceleração
(em PSI)6 com o objetivo de obter o melhor rendimento do motor baseando-se na necessidade
do motorista.
5
Grau Celsius, unidade de temperatura proposta pelo astrônomo sueco Anders Celsius (1701-1744)
6
Abreviatura, do Inglês, significa libra-força por polegada quadrada.
16

Com isso, os valores de entrada correspondentes à temperatura e velocidade são


fuzzificados, assumindo algum dos termo linguístico no sistema. Logo, aplicam-se as regras
modeladas pelo especialista sobre os valores linguísticos resultantes, originando um termo de
saída correspondente à pressão de aceleração e, então, ocorre a defuzzificação, que trans-
forma o termo linguístico de saída em um valor de saída, conforme observado na Figura 9.

Figura 9: Estrutura de um programa fuzzy hipotético.

Em resumo, segundo Tanscheit (2003), o desempenho de um sistema fuzzy depende da


escolha de uma base de regras adequada, do seu número e sua forma como os conjuntos são
atribuídos à cada variável. Ainda é possível se atribuir a esse contexto, a escolha do operador
de implicação e do método de defuzzificação, que também pode se valer de procedimentos
automáticos (via algoritmos genéticos, por exemplo).

2.3.1 Sistemas Fuzzy Intervalares

Os sistemas fuzzy, segundo Silveira (2002), têm sido utilizados nos últimos anos para
tratar os problemas que envolvem imprecisão. No entanto, algumas vezes é difícil para o espe-
cialista representar seu conhecimento através de números reais, podendo determinar, por exem-
plo, que um determinado valor possui um grau de verdade de 0.3, sendo complexo determinar
se esse grau de veracidade é 0.34 ou 0.39. Além disso, quando a aquisição do conhecimento é
realizada entre vários especialistas é comum alguma divergência de valores.
17

Uma alternativa na solução de problemas desta natureza é a utilização de intervalos


para representar graus de pertinência. Sendo assim, uma forma de representar os números reais
0.34 e 0.39 seria através do intervalo [0.3, 0.4], por exemplo.

Na teoria da representação fuzzy intervalar (TURKSEN, 1986 apud SILVEIRA, 2002), um


conjunto fuzzy intervalar é definido a partir de um grau de pertinência, no qual o subintervalo
pertence ao intervalo [0,1] e, com isso, os valores de entrada são elementos cujo intervalos
pertencem a um universo de intervalos.

Essa definição estende toda a teoria de conjuntos fuzzy para uma teoria de conjuntos
fuzzy intervalar suficientemente capaz de expressar qualquer conjunto fuzzy, seja este intervalar
ou não, sendo que os valores inteiros dos conjuntos fuzzy não intervalares são representados por
intervalos degenerados7 . Tal generalização pode ser ainda estendida para qualquer entidade
fuzzy, pois todas elas são definidas a partir de uma entrada e um grau de pertinência.

As funções de pertinência na teoria dos conjuntos fuzzy intervalares são estabelecidas a


partir dos valores retornados por uma função de limite inferior e uma função de limite superior.
Tais funções de pertinência são geradas através da adição de uma margem de erro proporcional
às regiões de maior indefinibilidade8 ao conjunto fuzzy (cfe. Figura 10 (a)); pois, quanto mais
próximo dos graus 0 e 1, maior a certeza de que o valor do domínio pertence ou não ao conjunto
(CRUZ A.; BEDREGAL, 2007).

Observa-se na Figura 10 (b) que cada valor constituinte do intervalo hipotético [a,b]
contém um limite inferior e um limite superior correspondente ao respectivo grau de pertinência.

(a) (b)
Figura 10: Função de pertinência: (a) intervalar; (b) valores intervalares de entrada.
Fonte: Cruz A.; Bedregal (2007), modificados pelo autor.
7
Quando o limite inferior e o limite superior do intervalo são iguais.
8
Regiões mais distantes do extremo.
18

Um sistema fuzzy intervalar é baseado na teoria dos conjuntos fuzzy intervalares e se-
gue todas as etapas do desenvolvimento de um sistema fuzzy convencional, mas se valendo de
valores e funções intervalares ao invés de números reais.

O processo de fuzzificação intervalar é similar à fuzzificação tradicional, no entanto,


o grau de pertinência associado ao valor requerido é representado por um grau de pertinência
intervalar, através da função de pertinência intervalar, similar ao observado na Figura 10 (b).

No processo de inferência intervalar pode ser utilizado qualquer dos métodos de


inferência tradicionais, entretanto, existem duas funções para serem processadas: a função do
limite inferior e a função do limite superior. Então, cada função correspondente deverá ser
analisada pelas regras separadamente.

Já o processo de defuzzificação intervalar é obtido através da defuzzificação dos con-


juntos soluções inferior e superior, por meio de qualquer dos métodos de defuzzificação tradi-
cionais e, com isso, tem-se como resultado um intervalo formado pelo valor da defuzzificação
da função inferior e superior (SILVEIRA, 2002).

2.4 Considerações Finais

A extensão de conjuntos fuzzy para conjuntos fuzzy intervalares é feita naturalmente,


considerando que se tem as funções de limite superior e inferior, as quais são trabalhadas sepa-
radamente. Assim, consegue-se obter todas as operações fuzzy intervalares e suas respectivas
propriedades. Destaca-se que o principal objetivo do uso da função de pertinência intervalar
consiste em auxiliar o especialista a fornecer um resultado dentro de um intervalo, facilitando,
com isso, o mapeamento do conhecimento (SILVEIRA, 2002).

Essa questão torna-se indispensável no escopo dessa proposta. Isso porque tem como
objetivo prover: uma modelagem fuzzy que suporte dados decorrentes de PDI contendo infor-
mações imprecisas e um grande número de especialistas envolvidos na modelagem do sistema.
Então, a abordagem intervalar constitui uma forma adequada de desenvolver a proposta.

A lógica fuzzy trabalha de forma mais acessível, aproximando uma função originada
de associações linguísticas de entrada e saída, aos dados obtidos com o PDI, e aplicando regras
da teoria dos conjuntos fuzzy na resolução de problemas os quais teriam difícil modelagem
por uma teoria mais rígida. Devido suas possibilidades, a lógica fuzzy tem encontrado grandes
aplicações em áreas como: raciocínio aproximado, robótica, PDI, reconhecimento de padrões,
sistemas de controle, tomada de decisão, medicina (KLIR; FOLGER, 1987; COX et al., 1998).
19

3 Algoritmo Genético

Neste capítulo apresentam-se conceitos dos algoritmos genéticos, que são algoritmos
matemáticos inspirados nos mecanismos de evolução natural e recombinação genética. Outro
fator abordado é existência desse algoritmos com técnicas auto-adaptativas, que melhoram o
desempenho do algoritmo tradicional.

3.1 Considerações Iniciais

Os algoritmos genéticos (AG), desenvolvidos por Holland (1962), são métodos de


busca e otimização baseados nos mecanismos de evolução dos seres vivos. Estes algoritmos
baseiam-se na teoria do naturalista Darwin (1859), o qual afirma que os indivíduos mais adap-
tados ao seu ambiente possuem maior chance de sobreviver e gerar descendentes.

Os referidos algoritmos empregam uma terminologia originada da teoria da evolução


natural e da genética. Assim, um indivíduo da população é representado por um único cromos-
somo, contendo a codificação (genótipo) de um candidato à solução do problema (fenótipo).
E, um cromossomo é usualmente implementado na forma de um vetor (lista de atributos), em
que cada componente é conhecido como gene. Ainda, os possíveis valores que um determinado
gene pode assumir são denominados alelos (CONCILIO, 2000).

O algoritmo criado por Holland era capaz de resolver problemas complexos de uma
maneira muito simples e tinha sua metodologia baseada em uma população (um conjunto) de
algumas cadeias de bits ( 0’s e 1’s)1 denominados indivíduos2 . Semelhante à natureza, o sistema
evoluía até o melhor cromossomo atender um problema específico, mesmo sem saber as carac-
terísticas do problema que estava sendo solucionado. A solução era encontrada de um modo
automático e não-supervisionado, sendo que as únicas informações dadas ao sistema eram ajus-
tes ao cromossomo (AGUIAR, 1998).
1
Para os exemplos serão utilizados cadeias de 5 bits.
2
Por convenção um indivíduo é constituído por um cromossomo.
20

3.2 Funcionamento do Algoritmo Genético

Os algoritmos genéticos pertencem à classe dos algoritmos probabilísticos, mas eles


não são métodos de busca puramente aleatórios, pois combinam elementos de procura direcio-
nada e estocástica3 . Outra propriedade importante do AG assim como de todos os algoritmos
evolutivos é a manutenção de uma população de soluções candidatas, enquanto os métodos al-
ternativos como simulated annealing (AARTS; KORST, 1989) e busca tabu (GLOVER; LAGUNA,
1997), processam um único ponto no espaço de busca a cada instante.

Independente da sofisticação, o formato de um AG pode ser descrito, segundo Davis


(apud AGUIAR, 1998), através dos seguintes componentes: (i) um problema a ser otimizado;
(ii) uma representação, em termos de cromossomos, das configurações assumidas no problema;
(iii) uma maneira de inicializar uma população inicial; (iv) uma função de avaliação que per-
mita classificar os cromossomos de acordo com o objetivo; (v) seleção dos indivíduos para o
processo de reprodução; (vi) operadores genéticos que produzam composições dos cromosso-
mos durante a reprodução, e (vii) critério de parada cujo função de avaliação deve verificar se
os cromossomos solucionam o problema (ver Figura 11).

Figura 11: Processo padrão de um algoritmo genético.

Os algoritmos genéticos são particularmente aplicados em problemas complexos de


otimização, sejam estes com diversos parâmetros ou características que precisam ser combi-
nadas em busca da melhor solução; sejam problemas com muitas restrições ou condições que
não podem ser representadas matematicamente; ou, ainda, problemas com grandes espaços de
busca (GOLDBERG, 1989).
3
Padrões estocásticos são aqueles que surgem por meio de eventos aleatórios.
21

Dentre os principais problemas de otimização com aplicações de AG estão: otimização


de funções matemáticas, otimização combinatorial, otimização de planejamento, problema do
caixeiro viajante, problema de otimização de rota de veículos, otimização de layout de circuitos,
otimização de distribuição, otimização em negócios e síntese de circuitos (MICHALEWICZ, 1996
apud PACHECO, 1999).

A representação das possíveis soluções do espaço de busca de um problema, segundo


Pacheco (1999), define a estrutura do cromossomo a ser manipulado pelo algoritmo. E, a re-
presentação do cromossomo depende do tipo de problema e do que, essencialmente, deseja-se
manipular geneticamente (ver Tabela 6).

Tabela 6: Principais tipos de representação dos AG relacionados ao problema.


Fonte: Pacheco (1999).
Representação Problemas
Binária Numéricos, Inteiros
Números Reais Numéricos
Permutação de Símbolos Baseados em Ordem
Símbolos Repetidos Grupamento

A representação binária é simples de manipular através dos operadores genéticos, sim-


ples de ser transformada em inteiro ou real e, ainda, facilita a prova de alguns teoremas. Porém,
essa representação nem sempre pode ser empregada, já que, muitas vezes, o problema exige um
alfabeto mais completo (MICHALEWICZ, 1996 apud CONCILIO, 2000).

A criação de uma população inicial pode ser efetuada de várias formas. Uma das
maneiras é através da geração aleatória, em que não haverá influência do meio externo. Quando
é através de uma seleção heurística, as soluções são buscadas por aproximações sucessivas
avaliando-se os progressos alcançados. Qualquer conhecimento que se tenha sobre o problema
deve ser utilizado na inicialização da população, minimizando, assim, o tempo de computação
(CONCILIO, 2000).

O tamanho da população é definido através de parâmetros (pop) e cada indivíduo re-


presenta uma possível solução para o problema. Os problemas que possuem restrições não
deverão conter indivíduos inválidos nessa etapa, considerando que uma distribuição uniforme
da população evita problemas de representação do espaço de busca (SILVA, 2001).

A avaliação, segundo Pacheco (1999), é o elo entre o algoritmo genético e o mundo


externo, e é feita através de uma função que melhor representa o problema. Ainda, tem por
objetivo fornecer uma medida de aptidão de cada indivíduo na população corrente que dirigirá
o processo de busca.
22

A função de avaliação4 é para um AG o que o meio ambiente é para os seres humanos,


destacando que as funções de avaliação são específicas de cada problema. Como exemplo,
observa-se um caso hipotético, onde a função matemática f (x) = x2 mede aptidão de cada
indivíduo e, C1 é um indivíduo mais apto que C2 conforme demonstrado na Tabela 7.

Tabela 7: Exemplo de uma avaliação entre 2 indivíduos.


Fonte: Pacheco (1999).
Cromossomo x F(x)
C1 00100 9 81
C2 00010 4 16
O retorno da função de avaliação ordena os indivíduos conforme sua aptidão, caracte-
rística esta intrínseca ao indivíduo, sobrevivendo aqueles que oferecerem as melhores soluções.
No AG essa etapa é a mais crítica, uma vez que as funções deverão analisar os cromossomos de
cada população durante todo o processo evolutivo (CONCILIO, 2000).

A reprodução é a fase na qual os novos indivíduos são introduzidos à população que


se utiliza dos pais selecionados para realizar a reprodução, garantindo, assim, a existência da
próxima geração. Para isso, são utilizadas algumas técnicas, tais como: operadores genéticos e
rotinas de otimização, abordadas a seguir nas Seções 3.2.2 e 3.2.3, respectivamente.

O critério de parada de um AG é verificado através de um teste; caso a condição seja


satisfatória, o AG para; caso contrário, a população retorna ao ciclo do algoritmo para obter uma
solução melhor. Alguns possíveis critérios de parada podem ser quando: o AG atingir um dado
número de gerações, a função objetivo chegar a um determinado valor definido previamente ou
não ocorrer melhoramento significativo no cromossomo de maior aptidão por um dado número
de gerações.

3.2.1 Processo de Seleção

Este processo ocorre após a função de avaliação e desempenha o papel da seleção


natural na evolução, selecionando para sobreviver e reproduzir os organismos com melhor valor
na função de aptidão. Essa seleção em busca dos mais aptos pode ser feita por amostras diretas,
aleatórias simples ou estocástica (BARCELLOS, 2000).

A ideia central do operador de seleção no AG é oferecer preferência aos melhores


indivíduos da população corrente, permitindo, assim, que eles possam passar suas característi-
cas para a próxima geração. O algoritmo genético clássico utiliza um esquema de seleção de
indivíduos para a próxima geração chamado roleta (GOLDBERG, 1989).
4
Também poderá ser encontrado no texto como: função de adaptação.
23

O método roleta atribui a cada indivíduo uma probabilidade, proporcional ao seu cál-
culo de aptidão, de passar para a próxima geração. Portanto, quanto maior for a aptidão de um
indivíduo, maior sua probabilidade de passar para a próxima geração. Com isso, valores ale-
atórios são gerados dentro da escala acumulada de aptidões e os indivíduo que possuírem tais
valores são selecionados, conforme exemplo observado na Tabela 8 e ilustrado na Figura 12.

Tabela 8: Método roleta, exemplo de seleção.


Cromos. Aptid. Acum. Probab. Nr. Aleat. Selec.
C1 01101 3 3 7.89% 29 C4
C2 11000 15 18 39.47% 1 C1
C3 01000 8 26 21.05% 34 C4
C4 10011 12 38 31.57% 22 C3

Figura 12: Gráfico: probabilidade (esq.) aptidão acumulada (dir.) ref. Tabela 8.

A seleção de indivíduos pelo método roleta pode fazer com que o melhor indivíduo
da população seja perdido, uma vez que sua metodologia está baseada em probabilidade. Um
recurso paliativo pode ser utilizar a estratégia elitista para preservar os melhores indivíduos de
uma geração para outra.

Outro método é a seleção por torneio, em que um grupo de indivíduos é obtido aleato-
riamente e participa de um torneio (1×1)5 , onde os mais aptos são escolhidos para reproduzirem
uma nova população (SILVA, 2001).

Outro exemplo de mecanismo de seleção é o rank (BÄCK et al., 1997 apud CONCILIO,
2000), que se baseia na estratégia de ordenamento dos indivíduos de acordo com a aptidão para
determinar a probabilidade de seleção, podendo ser usadas equações lineares ou não-lineares
para determinar esta probabilidade. Diferente do método de roleta, o torneio não necessita
escalonar ou ordenar seus indivíduos.
5
Confronto entre 2 indivíduos.
24

3.2.2 Operadores Genéticos

O princípio básico dos operadores genéticos é transformar a população através de su-


cessivas gerações, de forma a obter um resultado satisfatório no final do processo. Desse modo,
eles são extremamente necessários para que a população diversifique-se e mantenha as caracte-
rísticas de adaptação adquiridas pelas gerações anteriores (SILVA, 2001). Os operadores genéti-
cos mais utilizados são o cruzamento e a mutação.

A fase de cruzamento objetiva propagar as características dos indivíduos mais aptos da


população, trocando segmentos de informações e projetando uma convergência para a situação
de otimização desejada. Essa metodologia proporciona uma distinção dos algoritmos genéticos
em relação a outras técnicas (BARCELLOS, 2000).

Com o cruzamento de pelo menos dois progenitores, uma ou mais novas soluções são
criadas a partir do intercâmbio de suas informações genéticas, em um ou mais pontos, que
também são selecionados aleatoriamente. Os operadores mais empregados, segundo SILVA
(2001), são os seguintes cruzamentos: de um ponto; multipontos; ou, ainda, uniforme.

O cruzamento de um ponto (AGUIAR, 1998) seleciona dois pais e um ponto de que-


bra na cadeia de bits, que será escolhido de forma aleatória. Com isso, ocorre a troca de material
genético entre eles do ponto de quebra em diante, o que resultará em dois filhos (ver Tabela 9).

O cruzamento multipontos (CONCILIO, 2000) é bastante similar ao cruzamento de


um ponto, porém, o corte será feito em duas ou mais partes da cadeia de bits dos cromossomos.
Os pontos de cortes são escolhidos aleatoriamente e o material genético será invertido entre eles
na posição de ruptura (ver Tabela 10).

Já o cruzamento uniforme (SYSWERDA, 1989) cria uma máscara de cruzamento a


partir de uma função aleatória, que será utilizada para informar de qual pai o filho herdará o
gene. Se houver na máscara de cruzamento valor 1, o gene copiado será do primeiro pai; se
houver valor 0 o gene copiado será do segundo pai; e assim por diante, até preencher a cadeia
de bits do filho 1. Para o filho 2 ocorre uma inversão nos valores da máscara (ver Tabela 11).

Tabela 9: Operador de cruzamento em um ponto.


Fonte: Aguiar (1998).
Pais Divisão Cruzamento Filhos
11111 111 – 11 111 – 00 11100
00000 000 – 00 000 – 11 00011
25

Tabela 10: Operador de cruzamento multipontos (2 pontos).


Pais Divisão Cruzamento Filhos
11111 1 – 11 – 11 1 – 00 – 11 10011
00000 0 – 00 – 00 0 – 11 – 00 01100

Tabela 11: Operador de cruzamento uniforme.


Máscara1 00110 Máscara2 11001
Pai1 11100 Pai1 11100
Cruzamento ↓↓ Cruzamento ↓↓ ↓
Filho1 00101 Filho2 11010
Cruzamento ↑↑ ↑ Cruzamento ↑↑
Pai2 00011 Pai2 00011

Portanto, o processo de cruzamento faz rupturas no código genético, motivo pelo qual,
quanto maior for a ruptura, menor será a semelhança entre pais e filhos, dificultando a con-
vergência. A taxa de cruzamento define-se como a medida da possibilidade de aplicação dos
operadores de cruzamento a um dado par de indivíduos e, quanto maior for essa taxa, maior
será a quantidade de indivíduos introduzidos na nova população de cruzamento (BARCELLOS,
2000).

Já o operador de mutação faz-se necessário à introdução e manutenção da diversidade


genética na população, alterando arbitrariamente um ou mais componentes de uma estrutura
escolhida, fornecendo, assim, meios para introdução de novos elementos na população. Essa
manutenção assegura que a probabilidade de chegar a qualquer ponto do espaço de busca nunca
seja zero e contorna, também, o problema de mínimos locais, prevenindo, assim, que um dado
cromossomo fique estagnado em um valor (SILVA, 2001).

Após a operação de cruzamento, o operador de mutação é aplicado com uma determi-


nada probabilidade em cada bit dos dois filhos (AGUIAR, 1998). Nesse momento, o operador de
mutação inverte os valores dos bits de 1 para 0 e 0 para 1 (ver Tabela 12).

Tabela 12: Operador de mutação.


Pais Filhos Antes Mutação Filhos Depois
11111 11100 11100 11100
00000 00011 (1)0011 10011

Assim, o operador de mutação é capaz de resgatar à população genes perdidos durante


o processo de seleção, de modo que possam ser avaliados novamente em um novo contexto.
26

Entretanto, quanto maior a probabilidade de ocorrer mutações, maiores as chances de


obter cromossomos diversificados e, com isso, a destruição da informação genética contida
nele pode ocasionar divergência da situação de otimização. Logo, deve ser usada uma taxa de
mutação pequena, mas suficiente para assegurar a diversidade, o que implicará diretamente no
desempenho do algoritmo genético.

3.2.3 Rotinas de Otimização

Esses tipos de rotinas são utilizados para mudar o funcionamento do algoritmo, incrementando-
o com rotinas consideradas mais inteligentes ou que requeiram estruturas capazes de tornarem
o algoritmo mais robusto (AGUIAR, 1998). Nesse contexto serão abordados as seguintes rotinas:
operador inversor, elitismo e reprodução em estado constante.

O operador inversor utilizado em poucas implementações, segundo Aguiar (1998),


manipula apenas 1 cromossomo por vez, invertendo a ordem dos elementos entre dois pontos
escolhidos aleatoriamente. Um exemplo pode ser observado na Tabela 13.

Tabela 13: Operador inversor.


Cromossomo Divisão Inversão Resultante
11001 1 – 100 – 1 1 – 001 – 1 10011

O elitismo consiste, assim como na natureza, em fazer com que o indivíduo mais apto
não apenas reproduza mais frequentemente, como também possua maior longevidade, sobre-
vivendo, muitas vezes, de uma geração para outra. Para se aplicar esse tipo de rotina aos AG,
pegam-se os melhores cromossomos de uma população e repassam-se para as gerações seguin-
tes, de modo a garantir a melhor solução encontrada em qualquer uma das gerações até o final
do processo.

Nos algoritmos genéticos, quando são geradas novas populações utilizando apenas os
operadores genéticos, pode-se facilmente observar que, em muitos casos, o melhor indivíduo
de uma geração desaparece na geração seguinte. Assim, para melhorar a eficiência do AG é
interessante utilizar a estratégia elitista (SILVA, 2001).

A reprodução em estado constante age como a técnica do elitismo, protegendo os


cromossomos com aptidões bastante altas do cruzamento e da mutação indesejáveis. Ao invés
de destruir a antiga população, transportam-se os filhos para a antiga população e eliminam-se
os cromossomos de ajuste mais baixo. Se muitos estiverem com o mesmo grau de ajuste, os
mais velhos são destruídos (AGUIAR, 1998).
27

3.2.4 Alguns Aspectos Importantes

Os algoritmos genéticos pertencem à família de modelos computacionais inspirados


na evolução, normalmente sendo vistos como otimizadores de funções, embora a quantidade
de problemas para os quais eles se aplicam seja bastante abrangente (AGUIAR, 1998). Contudo,
alguns aspectos importantes devem ser observados, a saber: função objetivo, problemas com
restrições, convergência prematura, diversidade populacional e pressão seletiva.

Os parâmetros da função objetivo, segundo SILVA (2001), podem ser contínuos (nú-
mero infinito de soluções) ou discretos (número finito de possíveis soluções). Com isso, a
manipulação da função objetivo pode ser bastante complexa, demandando um alto custo com-
putacional.

Para lidar com tais funções, SILVA (2001) propõe cuidados a serem tomados para não
avaliar cromossomos idênticos mais de uma vez, o que pode ser feito de algumas maneiras,
como por exemplo: (i) evitando gerar cromossomos idênticos na população inicial; (ii) veri-
ficando se foi aplicado cruzamento ou mutação nos pais, pois, caso contrário, os filhos serão
iguais aos pais; (iii) observando se o filho é igual a um dos pais; (iv) mantendo a população com
todos os cromossomos distintos entre si, o que também ajuda na manutenção da diversidade;
(v) antes de avaliar um filho, verificando se já existe um cromossomo igual a esse na população.

Em situações mais extremas devem-se armazenar todos os cromossomos da geração


atual e passada. Outra abordagem é utilizar uma versão simplificada da função objetivo nas ge-
rações iniciais para acelerar a busca por regiões promissoras do espaço. E, nas gerações finais,
a versão completa da função objetivo passa a ser utilizada para melhorar a precisão da solu-
ção. Merece ser ressaltado que tais abordagens também incorporam um custo computacional
extra, devendo-se analisar se este custo extra compensará o tempo economizado na avaliação
da função objetivo (MICHALEWICZ, 1996).

Embora os algoritmos genéticos tenham sido inicialmente aplicados com sucesso em


problemas de otimização sem restrições, foi apenas uma questão de tempo para surgirem as
primeiras utilizações na resolução de problemas com restrições (MICHALEWICZ, 1996; SILVA,
2001).

Uma estratégia para tratar restrições no AG é simplesmente atribuir aptidão zero aos
cromossomos infactíveis 6 . Porém, os cromossomos infactíveis próximos das regiões factíveis,
segundo Michalewicz (1996), podem conter informações importantes.
6
Aqueles cromossomos que não satisfazem as restrições.
28

Portanto, ao invés de zerar a aptidão de tais cromossomos, pode-se apenas penalizá-la


utilizando uma função de penalidade Φ j (x), que define o quanto a solução x viola a restrição j
— i.e. o quão distante o cromossomo está da região factível (SILVA, 2001).

O desaparecimento de determinados genes da população no decorrer das gerações im-


possibilita um AG de explorar completamente o espaço de busca, podendo convergir para um
mínimo ou máximo local (ver Figura 13 (a)). Esse problema é conhecido como convergência
prematura, sendo que taxas adequadas de mutação possibilitam manter uma boa diversidade
da população a fim de compensar estas perdas (AGUIAR, 1998).

A convergência prematura, segundo SILVA (2001), ocorre com o surgimento de cro-


mossomos de alta aptidão, gerando um número excessivo de filhos. Esses cromossomos são
chamados de superindivíduos, os quais dominam a população, uma vez que a mesma é finita.
Entretanto, esses cromossomos não são as soluções ótimas do espaço de busca e espalham seus
genes por toda a população, resultando em uma convergência para um máximo ou mínimo local,
conforme exemplificado na Figura 13 (b).

(a) (b)
Figura 13: (a) restrição, ótimo local e ótimo global; (b) convergência prematura.
Fonte: SILVA (2001).

Uma alternativa de combate à convergência prematura é a manutenção da diversidade


dos cromossomos na população, que pode ser alcançado através do aumento da taxa de mutação
ou evitando a inserção de filhos duplicados na população ou, ainda, limitando o número de filhos
por cromossomos (SILVA, 2001).

A diversidade populacional está relacionada a variabilidade genética dos cromos-


somos da população e, quanto maior a diversidade, maior a distribuição das possíveis solu-
ções (cromossomos) no espaço de busca. Então, melhorando a diversidade de uma população,
obtém-se uma melhor divisão do espaço de busca, aumentando a probabilidade de alguns cro-
mossomos estarem próximos à solução ótima (HOLLAND, 1975).
29

Alguns modos de aumentar a diversidade populacional são: elevar a taxa de mutação,


promovendo, assim, um afastamento dos indivíduos nos espaço de busca; aumentar o tamanho
da população, que também resultará em um aumento na diversidade populacional. Entretanto,
outros aspectos do AG devem ser considerados para não afetar o desempenho do algoritmo
(GOLDBERG, 1989).

Já a pressão seletiva é um conceito que está relacionado à velocidade e à direção


que o AG tomará no espaço de busca, dependendo, especificamente, de como será abordada
a função de adaptação e o método de seleção. A partir disso, a pressão seletiva modula o
grau de privilégio de alguns indivíduos para sobreviver e reproduzir em detrimento de outros
(HOLLAND, 1975 apud BARCELLOS, 2000).

Quando a probabilidade de alguns indivíduos serem selecionados para reprodução di-


fere muito de uns para outros, diz-se que a pressão seletiva é grande, e, quando as probabilidades
de sobrevivência são próximas, diz-se que a pressão seletiva é pequena. Uma pressão seletiva
nula é equivalente à busca aleatória, pois todos os cromossomos têm a mesma probabilidade de
sobreviver (MICHALEWICZ, 1996 apud BARCELLOS, 2000).

O aumento da pressão seletiva acelera a convergência do AG para algum ponto de


ótimo global ou local, entretanto, segundo BÄCK et al. (1997), se os cromossomos favorecidos
pela pressão seletiva estiverem próximos de um resultado satisfatório, a pressão seletiva alta
terá um caráter benéfico, fazendo os indivíduos migrarem rapidamente em direção a esse ponto
de máximo global.

3.3 Parametrização do Algoritmo Genético

Um dos grandes problemas que deve ser enfrentado para quem pretende usar um algo-
ritmo genético, segundo Barcellos (2000), reside na escolha de seus parâmetros. Os algoritmos
genéticos usam, pelo menos, três parâmetros numéricos – alguns algoritmos genéticos mais so-
fisticados podem usar outros –, a saber: probabilidade de recombinação7 (pr), probabilidade de
mutação8 (pm) e tamanho da população (pop).

A escassa teoria sobre AG não auxilia muito sobre a escolha de seus parâmetros e
usualmente utilizam-se valores testados empiricamente. Diversos pesquisadores fizeram ex-
perimentos sobre o ajuste dos parâmetros do algoritmo genético, dentre os quais se podem
destacar: Jong (1975), Grefenstette (1986), Goldberg (1989) e Schaffer et al. (1989).
7
Pode ser encontrado no texto também como: taxa de recombinação ou taxa de cruzamento.
8
Pode ser encontrado no texto também como: taxa de mutação.
30

Segundo Goldberg (1989), Jong foi um dos pioneiros em utilizar funções para teste de
desempenho do AG. Jong (1975) elaborou cinco funções que possuíam propriedades especifi-
cas e, com isso, pôde avaliar o desempenho dos algoritmos genéticos, elaborando dois conceito
de medida de desempenho, a saber: (i) desempenho online, que é definido como a média da ap-
tidão de todos os cromossomos da população durante o processamento; (ii) desempenho offline,
que leva em conta apenas o melhor cromossomo da população para computar o desempenho.

Jong (1975) também comparou o uso da recombinação multiponto com a recombina-


ção simples e concluiu que não houve diferenças significativas (BARCELLOS, 2000). Os me-
lhores parâmetros, segundo ele, que produziram um bom comportamento do AG, tanto para
medidas online quanto para medidas offline, estão representadas na Tabela 14.

Já Grefenstette (1986) usou uma outra abordagem para a questão, tratando a escolha
dos parâmetros do AG como um meta-problema e usou um segundo algoritmo genético (Meta-
AG) para encontrar os parâmetros que melhorariam o desempenho online, obtendo os resultados
apresentados na Tabela 14.

Schaffer et al. (1989), em seu trabalho, dobrou o número de funções de teste referente
às funções de teste de Jong (1975), totalizando dez funções, utilizando o código de gray9 para
codificação de todos os parâmetros — pois o código de gray tinha se mostrado superior ao
código binário — e adotando a estratégia elitista.

Os experimentos de Schaffer et al. (1989) foram repetidos, alternando os parâmetros


de todas as possibilidades de avaliação para cada função de teste, baseando-se no desempenho
online e consumindo um tempo para o experimento de aproximadamente 1.5 anos de CPU10
(máquinas Sun 3 e Vax), resultando nos valores resumidos na Tabela 14.

Tabela 14: Valores de: Jong, Grefenstette e Schaffer.


Fonte: Barcellos (2000).
valores aconselhados por pop pr pm
Jong 50 – 100 0.60 0.001
Grefenstette 30 0.95 0.01
Schaffer 20 – 30 0.75 – 0.95 0.005 – 0.01

Os valores encontrados por Grefenstette (1986) são diferentes dos propostos por Jong
(1975), talvez pelo fato deste último ter se preocupado apenas com o desempenho online, sugere
Barcellos (2000).
9
Código de Gray é um sistema de código binário onde de um número para outro apenas um bit varia.
10
Abreviatura, do Inglês, significa unidade central de processamento, popularmente chamado de “processador”.
31

Com isso, uma investigação teórica feita por Goldberg (1989) forneceu a seguinte fór-
mula: pop = 1.65 × 20.21×length , que calcula o tamanho da população em função do tamanho
dos cromossomos (length)11 . Aplicando-se a fórmula, obtêm-se populações de 7, 30, 130 e 557
indivíduos para cromossomos de comprimentos 10, 20, 30 e 40 bits, respectivamente.

Já Schaffer et al. (1989) concluiu que existe uma forte interação entre tamanho da
população (pop), probabilidade de recombinação (pr) e probabilidade de mutação (pm). Mas,
mas surpreendentemente a interação função e parâmetros (pop), (pr) e (pm) foi estatisticamente
rejeitada, indicando que o desempenho não depende do tipo de função que está sendo otimizada,
e, sim, dos parâmetros com que o AG trabalha.

Schaffer et al. (1989) observou, também, que altas taxas de recombinação melhoram o
desempenho com pequenas populações, prejudicando-o com populações maiores. Ainda, ana-
lisou que recombinação de dois pontos tem um desempenho melhor que recombinação
de um ponto apenas para populações entre 50 e 100 cromossomos, sem diferenças significa-
tivas para outros tamanhos de populações.

Apesar da exaustiva quantidade de testes e de uma rigorosa análise estatística feita


pelos referidos pesquisadores, os parâmetros encontrados estão dentro de uma faixa de valores
relativamente grande, afirma Barcellos (2000) e conclui:
O que estes estudos parecem não ter levado em consideração e a dinâ-
mica interna do processo. Numa comparação grosseira, pode-se dizer que: usar
uma mesma taxa de probabilidade para todo o processo de busca em um AG e
o mesmo que usar uma mesma marcha de carro, durante todo o trajeto de uma
viagem (BARCELLOS, 2000).

Com isso, surge o paradigma de considerar a necessidade da variação dinâmica dos


parâmetros do AG durante o processamento, resultando em uma nova modalidade de AG, os
chamados algoritmos genéticos adaptativos (AGA) (BARCELLOS, 2000).

3.3.1 Algoritmos Genéticos Adaptativos

O comportamento do algoritmo genético, segundo Herrera et al. (1994), é determinado


pela exploração e pelo aproveitamento da exploração que se dá entre os indivíduos em tempo
de execução. Entretanto, procurar por parâmetros de controle mais robustos não é uma tarefa
trivial, pois a interação deles com desempenho do AG constitui uma relação complexa e difícil
de ser constituída, como já observado anteriormente.
11
Palavra, do Inglês, significa comprimento.
32

Para isso, o AGA ajusta dinamicamente os parâmetros de controle durante a evolução,


objetivando oferecer uma exploração mais apropriada, evitando problemas, como de convergên-
cia prematura ou de dependência, melhorando, assim, seus resultados (HERRERA et al., 1994).

Então, serão abordados dois algoritmos baseados na estratégia de auto-adaptação em


tempo de execução, intitulados: Meta-AG, que utiliza outro algoritmo genético para controle
dos parâmetros; e o FAGA12 , que utiliza controladores de lógica fuzzy (CLF) — baseados em
sistemas fuzzy cfe. abordado no Capítulo 2, Seção 2.3 — para adaptar os parâmetros do AG.

Um dos primeiros pesquisadores a detalhar o esquema de como um AG poderia con-


trolar outro AG foi Weinberg (1970). Entretanto, Grefenstette (1986) realizou a primeira im-
plementação do Meta-AG.

O Meta-AG de Grefenstette (1986) era capaz de enviar mensagens relacionados às


probabilidades de recombinação (pr) e mutação (pm) para o AG tradicional, que devolvia o
valor médio de aptidão de sua população (média aritmética) para que o Meta-AG reavaliasse os
parâmetros (BARCELLOS, 2000). Por outro lado, como parte de seu processamento natural, o
AG tradicional enviava indivíduos de sua população para a função de avaliação, que retornava,
por sua vez, um valor quanto ao grau de adaptação dos indivíduos ao problema (cfe. Figura 14).

Figura 14: Meta-AG de Grefenstette (1986).


Fonte: Barcellos (2000), modificado pelo autor.

Já o FAGA utiliza CLF modelados por um especialista, com o propósito de melhorar


o desempenho do AG. A ideia principal do FAGA é processar as informações de parâmetros do
AG em um CLF, resultando em novos parâmetros de controle (cfe. Figura 15).

Figura 15: FAGA de Herrera et al. (1994).


Fonte: Herrera e Lozano (1996), modificado pelo autor.
12
Abreviatura, do Inglês, significa algoritmo genético fuzzy adaptativo.
33

Embora possa ser utilizada a experiência de um especialista em AG para criar a base


de regras para uma CLF, a tarefa torna-se extremamente difícil, pois o comportamento dos
parâmetros do AG podem ter características universais ou específicas a uma dada aplicação.
Por isso, torna-se complexo declarar regras fuzzy gerais para controle do processo evolutivo do
AG (HERRERA; LOZANO, 1996).

Entretanto, Herrera e Lozano (1996) apresentaram uma proposta de dois mecanismos


de aprendizagem automáticos para obtenção da base de regras, a saber: aprendizado Offline e
aprendizado Online.

• o aprendizado Offline considera configurações fixas nas funções de testes, seguindo a


mesma ideia do Meta-AG, e não possui nenhuma relação com o problema a ser resolvido,
podendo limitar a robustez da base de regras, apresentando alto custo computacional;

• o aprendizado Online se vale de uma interação simultânea entre o CLF e o AG, adaptando
a base de regras conforme seu processo evolutivo, que, nesse caso, resultará em estratégias
de adaptação particulares ao problema.

3.4 Considerações Finais

As principais diferenças que distinguem os algoritmos genéticos de outras técnicas


mais convencionais de otimização, segundo Michalewicz (1996), são: (i) manipulação direta
da codificação; (ii) busca sobre uma população e não sobre um único ponto; (iii) busca cega
através de tentativas; e (iv) busca usando operadores estocásticos (probabilísticos) e não através
de regras determinísticas.

Com isso, o AG e suas modalidades (Meta-AG, FAGA, entre outros) ocupam lugar
de destaque entre os paradigmas da computação evolutiva, por que contém de forma simples e
natural os conceitos necessários da computação evolutiva. Além disso, têm resultados bastante
aceitáveis com relação aos recursos empregados e pela ampla gama de problemas aplicáveis,
tornando-se uma estratégia indispensável no contexto desta proposta (HOLLAND, 1975; GRE-
FENSTETTE, 1986; GOLDBERG, 1989; HERRERA et al., 1994; AGUIAR, 1998).

Vale destacar também que, modelos baseados em algoritmos evolutivos têm se mos-
trado adequados ao avanço da computação de alto desempenho, uma vez que são modelos que
usufruem de todas as prerrogativas de escalabilidade e disponibilidade de sistemas como agre-
gados de computadores, grades computacionais ou computadores multicores13 (AGUIAR, 2004).
13
Computador com vários processadores.
34

4 Processamento Digital de Imagem

Este capítulo é organizado, principalmente, com objetivo de ressaltar alguns conceitos


referentes aos fundamentos do processamento de imagens. Além disso, considera histograma
da imagem, realce e segmentação por regiões, as quais estão diretamente relacionadas com a
proposta, e a linguagem de programação Java com foco no processamento de imagens.

4.1 Considerações Iniciais

Os primeiros registros de estudos em processamento de imagens digitais datam da


década de 60, impulsionados pelos projetos de pesquisa criados pela NASA, nos EUA. Em se-
guida, surgiriam mais atividades que necessitariam dos adventos proporcionados por esta área
de concentração de conhecimento. Dentre elas estavam a medicina, a microscopia, a meteoro-
logia, o televisionamento e a indústria (GONZALEZ; WOODS, 1992).

As imagens são produzidas por uma variedade de dispositivos físicos, tais como: câ-
meras e vídeo-câmeras; equipamentos de radiografia; microscópios eletrônicos, magnéticos e
de força atômica; radares; equipamento de ultra-som. A produção e utilização de imagens po-
dem ter diversos objetivos, que vão do puro entretenimento até aplicações militares, médicas ou
tecnológicas (ESQUEF, 2002).

O processamento digital de imagem (PDI) é uma área da eletrônica (teoria de sinais)


em que imagens são convertidas em matrizes de números inteiros, sendo que cada elemento
desta matriz é composto por um elemento fundamental: o pixel (abreviação, do Inglês: picture
element). A partir desta matriz de pixels, que representa a imagem, diversos tipos de proces-
samento digital podem ser implementados por algoritmos computacionais. A aplicação destes
algoritmos realizam as transformações necessárias para que se possa, por exemplo, obter uma
imagem com os realces pretendidos ou extrair atributos e informações pertinentes (GONZALEZ;
WOODS, 1992; COTRIM, 2007).
35

4.2 Fundamentos de Imagens Digitais

O computador não pode guardar em sua memória ou modificar em seus circuitos qual-
quer imagem na forma analógica, que é como o olho humano a enxerga, porque o computador
trabalha com números discretos, não podendo representar diretamente tons de cinza ou cores
contínuas. Para que o computador possa operar com imagens, elas precisam primeiro ser con-
vertidas para uma grande lista de números (COTRIM, 2007).

Uma imagem monocromática1 é uma função bidimensional f (x, y) da intensidade lu-


minosa, onde x e y denotam coordenadas espaciais, que por convenção: x = [1, 2, . . . , M] e
y = [1, 2, . . . , N]. O valor de f no ponto (x, y) é proporcional ao brilho (ou nível de cinza) da
imagem nesse ponto, como observado na Figura 16, cuja região em destaque apresenta os pixels
e os níveis de luminância de cada um deles (ESQUEF, 2002).

Figura 16: Imagem monocromática com destaque para uma região de 17 × 17 pixels.
Fonte: Esquef (2002), modificado pelo autor.

Com isso, um pixel é o elemento básico em uma imagem, normalmente representado


em forma retangular ou quadrada, e suas dimensões são finitas na representação de uma imagem
digital. Frequentemente a organização de uma imagem sob a forma de uma matriz de pixels é
feita em uma simetria quadrada, cujo objetivo é facilitar a implementação eletrônica, seja dos
sistemas de aquisição, seja dos sistemas de visualização de imagens (MASCARENHAS; VELASCO,
1989).
1
Que possui apenas tons de cinza, variando do preto até o branco.
36

Entretanto, um pixel não apresenta as mesmas propriedades em todas as direções (i.e.


ele é anisotrópico) e esta propriedade faz um pixel ter quatro vizinhos de borda e quatro vizinhos
de diagonal (cfe. Figura 17), sendo que esse tipo de organização provoca o aparecimento de dois
problemas importantes nas técnicas de PDI (ESQUEF, 2002). O primeiro consiste em determinar
qual tipo de conectividade será utilizada: B4 (vizinhos de borda) ou B8 (vizinhos de borda e os
de diagonal). Já o segundo está relacionado com as distâncias entre um ponto e seus vizinhos,

determinando que um ponto tem distância igual a 1 para vizinhos de borda e 2 para aqueles
na diagonal.

Figura 17: Tipos de conectividade dos pixels vizinhos ao pixel central.


Fonte: Esquef (2002).

Sendo assim, para que uma imagem possa ser manipulada por computador, segundo
Mascarenhas e Velasco (1989), é necessário que essa imagem seja discretizada ou digitalizada,
tanto espacialmente quanto em sua amplitude. Com isso, uma imagem pode ser discretizada
através de um processo que envolve dois passos, a saber: (i) amostragem, no qual são definidos
os valores para as coordenadas x e y da matriz de pontos, e (ii) quantização, que consiste em
escolher um valor múltiplo relacionado à banda de frequência da intensidade para cada ponto
da imagem.

Então, amostrar uma imagem significa definir, para uma imagem real, as características
da matriz sobre a qual esta será representada. Essas características são comumente reconheci-
das como resolução da imagem e estão diretamente relacionadas com a qualidade da imagem.
Evidentemente, dependendo das características desta matriz, ou seja, tamanho e dimensões dos
pixels, mais fiel será a representação discreta da imagem. A Figura 18 ilustra dois tipos de
amostragem para representação de uma reta (EFFORD, 2000).
37

(a) (b)
Figura 18: Diferença na geometria da amostragem: (a) retangular; (b) hexagonal.
Fonte: Efford (2000), modificado pelo autor.

Uma amostragem insatisfatória gerará uma reprodução de baixa qualidade, sendo o


problema de aliasing2 um problema comum nesses casos, efeito esse caracterizado pela apa-
rência serrilhada das bordas dos objetos na imagem (cfe. Figura 19 (a)). Uma solução para
eliminar esse problema é utilizar um filtro denominado anti-aliasing (ver Figura 19 (b)), que
diminui os serrilhados nas silhuetas dos objetos através de um conjunto de cálculos e procedi-
mentos suavizadores da transição visual entre os modelos exibidos e o ambiente ao seu redor.
Entretanto, isso está associado a um alto custo computacional (EFFORD, 2000).

(a) (b)
Figura 19: Amostragem com: (a) aliasing; (b) anti-aliasing.

Já os métodos de quantização buscam, em geral, otimizar os erros entre a imagem real


e a imagem quantizada, ou seja, procuram definir variações de tons de cinza que representem, de
forma mais fiel possível, os níveis de cinza de uma imagem real. Cada tom é representado por
um código binário que é formulado atendendo às necessidades de minimização da quantidade
de bits, visando seu armazenamento ou sua transmissão (GONZALEZ; WOODS, 1992).
2
Palavra, do Inglês, comumente conhecido como serrilhado
38

Erros como os de “falsos contornos” podem ocorrer quando se usa um reduzido nú-
mero de tons de cinza em uma quantização (ver Figura 20 (b) e (c)). Este fenômeno caracteriza-
se pela transição de tons de cinza mais frequentes em áreas de pouca variação. De uma forma
geral, pode-se dizer que, dispondo de uma dada quantidade de bits, a escolha do nível de quan-
tização e da amostragem dependerá do tipo de imagem a ser discretizada e dos critérios de
avaliação subjetivos (MASCARENHAS; VELASCO, 1989).

(a) (b) (c)


Figura 20: Quantização monocromática: (a) 256 níveis; (b) 16 níveis; (c) 2 níveis.

Não existe uma regra exata para determinado tipo de imagem, no entanto, é possível
concluir que, para imagens com variação suave de tons é necessária uma maior quantidade de
níveis de quantização, não sendo relevante a amostragem. Já para imagens com grande detalha-
mento é conveniente o uso de uma amostragem densa, não sendo necessária uma quantização
com muitos níveis de cinza (GONZALEZ; WOODS, 1992).

Quanto ao contraste de uma imagem, segundo Gonzalez e Woods (1992), pode ser de-
finido como a razão dos níveis de cinza do objeto e do fundo (diferença local de luminância).
Dessa afirmação deriva-se o brilho aparente de um objeto, o qual depende fortemente da inten-
sidade do fundo, sendo que qualquer alteração no contraste pode gerar uma melhor definição
dos objetos. A Figura 21 demonstra para um objeto de mesmo nível de cinza diferentes fundos,
tornando o objeto mais ou menos visível.

(a) (b) (c) (d)


Figura 21: Exemplo de variação de contraste.
Fonte: Gonzalez e Woods (1992).
39

Imagens que apresentam variação de valores em mais de uma banda de frequência


necessitam ser representadas por mais de uma função do tipo f (x, y). As imagens coloridas
são um exemplo, pois apresentam uma função de intensidade para cada cor primária (RGB)3 .
A sobreposição destas três imagens, que individualmente são monocromáticas, compõe uma
imagem colorida (GONZALEZ; WOODS, 1992).

O tipo de imagem e a qualidade desta dependem necessariamente de como a imagem


foi obtida, e os sistemas responsáveis pela obtenção ou captura de imagens são denominados
sistemas de imageamento. Estes são sistemas físicos destinados a produzir ou capturar imagens
e, apesar de diferirem na aparência, apresentam várias características comuns. Dentre os mais
comuns estão a máquina fotográfica, a câmera de vídeo, os sensores a bordo de um satélite e os
equipamentos de raio-X (MASCARENHAS; VELASCO, 1989).

4.2.1 Etapas do Processamento de Imagem

Alguns autores possuem conceitos diferentes quanto à taxonomia do processo de um


sistema PDI. Entretanto, seja uma classificação mais detalhada ou não do processo, todos se-
guem uma mesma linha que, neste caso, segue a classificação segundo Gonzalez e Woods
(1992), a saber: formação e aquisição da imagem, pré-processamento, segmentação, re-
presentação e descrição e reconhecimento e interpretação, como ilustra a Figura 22. A
seguir, serão apresentadas breves descrições de cada uma delas.

Figura 22: Etapas do processamento digital de imagens.


Fonte: Gonzalez e Woods (1992), modificado pelo autor.
3
Abreviatura, do Inglês, significa vermelho, verde e azul.
40

O processo de aquisição da imagem consiste no primeiro passo do processo e neces-


sita dispor de um dispositivo físico que deve ser sensível ao espectro de energia eletromagnético,
como por exemplo ao espectro de raio-X, luz ultravioleta, luz visível ou luz infravermelha. Este
dispositivo transdutor4 deve produzir em sua saída um sinal elétrico proporcional ao nível de
energia percebido. A partir disso, a etapa de digitalização da imagem (omitida na ilustração
anterior 22) necessita dispor de um dispositivo, chamado digitalizador, que converte o sinal elé-
trico analógico produzido na saída do sensor em um sinal digital (GONZALEZ; WOODS, 1992;
ESQUEF, 2002).

A fase de pré-processamento é a que se utilizam técnicas para melhorar a qualidade


da imagem de forma a aumentar as chances de sucesso nos processos seguintes. Estas técnicas
envolvem duas categorias principais: métodos que operam no domínio espacial e métodos que
operam no domínio da frequência (GONZALEZ; WOODS, 1992; ESQUEF, 2002).

Técnicas de processamento no domínio espacial baseiam-se em filtros que manipulam


o plano da imagem, enquanto as técnicas de processamento no domínio da frequência baseiam-
se em filtros que agem sobre o espectro da imagem. É comum para realçar determinadas carac-
terísticas de uma imagem combinar vários métodos que estejam baseados nestas duas categorias
(GONZALEZ; WOODS, 1992; ESQUEF, 2002).

O estágio de segmentação é aquele em que se divide uma imagem de entrada em


partes ou objetos constituintes que se diferenciam entre si. Essas denominações “objeto” e
“partes” possuem uma conotação bastante subjetiva, podendo se referir a grupos de pixels que
formam determinadas regiões na imagem, sem que representem literalmente um objeto presente
na imagem (GONZALEZ; WOODS, 1992).

A segmentação é considerada, dentre todas as etapas do PDI, a mais crítica do trata-


mento da informação. É nesta etapa que são definidas as regiões de interesse para processa-
mento e análise posteriores. Como consequência, quaisquer erros ou distorções presentes nesta
etapa refletem-se nas demais, de forma a produzir ao final do processo resultados não desejados,
podendo contribuir de forma negativa para a eficiência de todo o processamento, premissa essa
também verdadeira para o caso inverso (ESQUEF, 2002).

Deve-se ressaltar que não existe um modelo formal para a segmentação de imagens.
A segmentação é um processo empírico e adaptativo, procurando sempre se adequar às carac-
terísticas particulares de cada tipo de imagem e seus objetivos. Apesar da grande diversidade
de técnicas de segmentação de imagens, ainda assim, atualmente existe um grande interesse no
estudo e desenvolvimento de novas técnicas (ESQUEF, 2002).
4
Dispositivo que recebe um sinal e o retransmite, independentemente de conversão de energia.
41

Diferentemente de Gonzalez e Woods (1992), alguns autores consideram uma etapa


intitulada pós-processamento geralmente sucedendo a fase de segmentação, consistindo em
corrigir os principais defeitos ou imperfeições da segmentação. Normalmente, estes defeitos da
segmentação são corrigidos através de técnicas de morfologia matemática, com a aplicação em
sequência de filtros morfológicos que realizam uma análise quantitativa dos pixels da imagem,
considerando como um exemplo a técnica anti-aliasing, observada na Seção anterior e ilustrada
na Figura 19 (b) (ESQUEF, 2002).

A escolha de uma representação é apenas parte da solução para transformar os da-


dos iniciais numa forma adequada para o subsequente processamento computacional. Um
método para descrever os dados também deve ser especificado, de forma que as característi-
cas de interesse sejam enfatizadas. O processo de descrição, também chamado seleção de
característica ou extração de atributos, consiste em obter informações numéricas
dos objetos contidos na imagem, podendo ser a etapa final de um sistema de PDI, caso este seja
seu objetivo (GONZALEZ; WOODS, 1992; ESQUEF, 2002).

Já o reconhecimento é o processo que atribui um rótulo a um objeto, baseado na in-


formação fornecida pelo seu descritor. A interpretação envolve a atribuição de significados a
um conjunto de objetos reconhecidos. Um exemplo para essa etapa é o reconhecimento de um
caracter, a letra “c” por exemplo, contido em uma imagem. Para identificação do caracter há
a associação dos descritores para aquele caracter com o rótulo [c]. A partir daí, a interpreta-
ção procura atribuir um significado a um conjunto de entidades rotuladas (GONZALEZ; WOODS,
1992).

O conhecimento sobre o domínio do problema está codificado em um sistema de PDI


na forma de uma base de conhecimento. E, esse conhecimento pode ser tão simples quanto o
detalhamento de regiões de uma imagem nas quais se sabe que a informação de interesse pode
ser localizada, limitando, assim, a busca que precisaria ser feita para obter aquela informação.
Em contrapartida, a base de conhecimento pode ser bastante complexa, tal como uma base
de imagens contendo imagens de satélite de alta resolução de uma região em conexões com
aplicações de detecção de mudanças (GONZALEZ; WOODS, 1992; ESQUEF, 2002).

Além de guiar a operação de cada módulo de processamento, a base de conhecimento


também controla a interação entre os módulos. Essa distinção é demosntrada na Figura 22
através das flechas duplas entre os módulos de processamento e a base de conhecimento, que,
ao contrário das flechas simples, ligam apenas os módulo de processamento. Essa representa-
ção indica que a comunicação entre os módulos de processamento baseia-se normalmente em
conhecimento prévio da natureza esperada do resultado (GONZALEZ; WOODS, 1992).
42

4.2.2 Histograma da Imagem

O histograma de uma imagem digital com k níveis de cinza é definido por uma função
discreta (ver Equação 4.1) onde, o argumento k representa os níveis de luminância discretos,
nk representa o número de pixels na imagem com intensidade k e n é o número total de pixels
da imagem, ou seja, n = M × N. De forma simplificada, o histograma de luminância de uma
imagem representa a contagem dos níveis de cinza desta podendo informar a distribuição dos
pixels dentro dos k níveis possíveis (ESQUEF, 2002).

nk
p(k) = (4.1)
n

O histograma da imagem digital é uma ferramenta bastante útil na etapa de pré pro-
cessamento, pois fornece uma visão estatística sobre a distribuição dos pixels, o contraste da
imagem e os níveis de iluminação. Além disso, o histograma é muito utilizado na etapa de
segmentação, principalmente em técnicas que se utilizam da similaridade entre os pixels. Tam-
bém, é usado com frequência como sendo uma distribuição estatística dos pixels na imagem
(luminância), como por exemplo no caso das técnicas que o utilizam para calcular a entropia5
da imagem (ESQUEF, 2002). Na Figura 23 são apresentadas duas imagens e seus histogramas,
sendo que a imagem (a) é de baixo contraste, enquanto a imagem (b) possui um maior contraste.

(a) (b)
Figura 23: Exemplo de histograma da imagem: (a) baixo contraste; (b) alto contraste.
Fonte: Esquef (2002).
5
Metodologia que permite a compreensão das características gerais.
43

Já a Figura 24 apresenta outras duas imagens com histogramas de tipos bimodal e


multimodal. O histograma bimodal é classificado desta forma devido à presença de dois picos
ou duas regiões de luminância com maior incidência de pixels da imagem. Este é o caso típico
de imagens que apresentam “objetos” e “fundo” bem definidos, como na imagem (a). O histo-
grama multimodal apresenta os pixels distribuídos em mais de duas regiões de níveis de cinza,
o que se pode perceber através dos picos no histograma em torno destes valores de luminância,
como observados na imagem (b) (ESQUEF, 2002).

(a) (b)
Figura 24: Exemplo de histograma da imagem: (a) bimoidal; (b) multimodal.
Fonte: Esquef (2002).

4.2.3 Realce de Imagens

A manipulação de imagens inclui duas grandes classes de transformações, a saber:


transformações radiométricas, em que se alteram apenas os valores dos níveis de cinza, e
transformações geométricas, em que a geometria da imagem é alterada, mantendo-se, ao
máximo possível, os valores dos níveis de cinza (GONZALEZ; WOODS, 1992).

Podem-se distinguir dois grupos de transformações radiométricas: a restauração,


que visa corrigir distorções sofridas pela imagem, geradas normalmente pela limitação dos
sistemas de imageamento, e a técnica que será abordada nesta Seção intitulada realce, que
visa enfatizar alguma característica de interesse na imagem. Em determinados casos estas duas
transformações produzem os mesmos resultados (JAIN, 1989 apud ANTUNES, 1999).
44

O realce de imagem tem por objetivo acentuar certos aspectos da imagem para subse-
quente análise ou visualização. No realce de imagem não são acrescidas informações a ela, e
sim enfatizadas determinadas características da imagem. Um exemplo de realce é a variação de
contraste, que transforma o valor de cinza de determinados pixels em valores diferentes, ressal-
tando determinados aspectos da imagem (GONZALEZ; WOODS, 1992 apud ANTUNES, 1999).

As técnicas de realce de imagem, segundo Gonzalez e Woods (1992), apresentam duas


grandes categorias: (i) os métodos ponto a ponto e (ii) os métodos de vizinhança.

Os métodos ponto a ponto caracterizam-se por modificar os níveis de cinza de uma


imagem preservando os contornos. São operações aplicadas sobre cada pixel, sendo um exem-
plo deste método a equalização de histograma (GONZALEZ; WOODS, 1992).

Lembre-se que um histograma (ver Seção 4.2.2) é uma tabela que indica para cada
nível de cinza a quantidade de pixels existente na imagem, apresentando uma frequência ou
densidade maior de pixels em um determinado nível de cinza que em outro. Portanto, equalizar
um histograma, segundo Gonzalez e Woods (1992), significa gerar uma uniformização de den-
sidade para os níveis de cinza da imagem, resultando em maior contraste e nitidez da imagem,
ressaltando, assim, os objetos nela contidos, conforme ilustra a Figura 25 (b).

(a) (b)
Figura 25: Equalização de histograma: (a) imagem original; (b) imagem equalizada.

Já os métodos de vizinhança são aplicados sobre uma determinada região da imagem


para enfatizar determinados aspectos desta (GONZALEZ; WOODS, 1992). Uma das aplicações
destas técnicas de vizinhança é a eliminação de ruídos através da suavização de imagens. E, um
exemplo interessante para representar este métodos é a técnica de filtragem.
45

Na técnica de filtragem6 , o valor de nível de cinza de uma imagem depende não apenas
do nível de cinza original, mas dos valores de níveis de cinza de sua vizinhança. O tamanho
desta vizinhança não é limitado, sendo que normalmente os vizinhos mais próximos têm maior
influência sobre os mais distantes (JAIN, 1989 apud ANTUNES, 1999).

Os filtros, de modo geral, são projetados e implementados como ferramentas para re-
alizar realce de imagens, cuja atividade consiste no incremento da qualidade geral da imagem,
podendo ser interessante para fins de visualização, ou ainda, para ressaltar determinados objetos
e características da imagem (JAIN, 1989 apud ANTUNES, 1999). Existem duas classes importan-
tes de filtros amplamente utilizadas: (i) filtros de passa-baixa e (ii) filtros de passa-alta.

Um filtro passa-baixa tem valores próximos a zero para as altas frequências, portanto,
a imagem apresenta-se “suavizada”. Isto ocorre porque as altas frequências correspondem às
transições abruptas. Este filtro tem ainda como efeito a eliminação de ruídos da imagem, mas
apresenta defeitos ao tornar a imagem menos nítida e definida (JAIN, 1989). A Figura 26 (b)
ilustra um filtro passa-baixa denominado filtro da média.

Um filtro passa-alta tem valores próximos a zero para as baixas frequências, resultando
em um efeito de “agudização” da imagem, ou seja, as transições entre diferentes regiões da
imagem tornam-se mais nítidas. Entretanto, ele enfatiza o ruído que possa existir na imagem
(JAIN, 1989). A Figura 26 (c) ilustra um filtro passa-alta denominado filtro laplaciano +
original, usado para detectar bordas mantendo a informação original.

(a) (b) (c)


Figura 26: Filtragem: (a) imagem original; (b) filtro passa-baixa; (c) filtro passa-alta.

O processo de filtragem é feito utilizando matrizes denominadas máscaras, as quais


são aplicadas sobre a imagem. Esse processo também é conhecido como convolução. Assim
sendo, convolução é o processo de calcular a intensidade de um determinado pixel em função
da intensidade de seus vizinhos, o cálculo é baseado em ponderação, isto é, utilizam-se pesos
diferentes para pixels vizinhos diferentes (GONZALEZ; WOODS, 1992).
6
Também chamado de filtro.
46

4.2.4 Segmentação Orientada a Regiões

O objetivo da segmentação de imagens é obter, a partir de uma imagem digitalizada


pré-processada, um conjunto de primitivas ou segmentos significativos, que contenham infor-
mações semânticas relativas à imagem de origem. Normalmente, as primitivas usadas são con-
tornos e regiões. Os diferentes tratamentos utilizados levam à noção de contornos, regiões ou
mista. Entretanto, será abordada apenas a segmentação por regiões (ANTUNES, 1999).

A detecção de regiões em uma imagem pode ser feita com dois objetivos: extrair uma
determinada região ou dividir a imagem num conjunto de regiões distintas. Uma região de uma
imagem é definida como um conjunto de pontos ligados em que, a partir de qualquer ponto da
região pode-se chegar a qualquer outro ponto por um caminho completamente contido nessa
região (GONZALEZ; WOODS, 1992 apud ANTUNES, 1999).

Essas regiões normalmente apresentam alguma característica homogênea, que comu-


mente é a continuidade do nível de cinza de seus pixels (GONZALEZ; WOODS, 1992 apud ANTU-
NES, 1999). Os métodos de divisão e fusão e limiarização podem ser citados como diferentes
estratégias nesse contexto de segmentação por região.

O método de divisão e fusão consiste em agrupar os pixels até que se tenham regiões
sobre as quais exista uma homogeneidade H. Para isto são executadas sucessivas divisões
e fusões sobre a imagem. Este método é normalmente associado a uma estrutura de dados
quadtree 7 , que permite decompor e agrupar partes de uma imagem (GONZALEZ; WOODS, 1992).

Construir essa estrutura quadtree significa dividir uma região em quatro quadrantes,
sendo que cada um pode ser dividido novamente em quatro subquadrantes, e assim sucessiva-
mente, até que seja encontrado o fator H. A Figura 27 ilustra uma segmentação quadtree (esq.)
e seu grafo representando seus particionamentos (dir.) (GONZALEZ; WOODS, 1992).

Figura 27: Imagem segmentada usando quadtree (esq.) e grafo da segmentação (dir.).
Fonte: Gonzalez e Woods (1992), modificado pelo autor.
7
Uma quadtree é uma estrutura de dados utilizada para codificar imagens.
47

O princípio da limiarização consiste em separar as regiões de uma imagem quando


esta apresenta duas classes, o fundo e o objeto, utilizando-se do histograma para isto. Caso se
tenha uma imagem com fundo e objeto bem distintos (níveis de cinza com uma variação bem
definida), o histograma dessa imagem terá dois picos bem distintos separados por um “vale” de
valores relativamente baixos (GONZALEZ; WOODS, 1992). Pode-se observar na Figura 28 uma
imagem com ruídos (a), bem como o resultado após a aplicação da limiarização (b).

(a) (b)
Figura 28: Imagem e histograma: (a) com ruído; (b) pós limiarização.

4.3 Processamento de Imagens em Java

Em 1991, na Sun Microsystems8 foi iniciada uma linguagem de programação orientada


a objetos, intitulada Java, cujo objetivo era a criação de uma nova linguagem que antecipasse
a “próxima onda” do mundo digital. Eles acreditavam que, em algum tempo, haveria uma
convergência dos computadores com os equipamentos e eletrodomésticos comumente usados
pelas pessoas no seu dia-a-dia (DEITEL; DEITEL, 1999).

Entretanto, com a popularização da Internet — rede mundial de computadores — em


1994, rapidamente uma grande rede interativa estabelecia-se e a tecnologia Java era projetada
para se mover por meio das redes de dispositivos heterogêneos, como a Internet. Desde seu
lançamento, em maio de 1995, a plataforma Java foi adotada mais rapidamente do que qualquer
outra linguagem de programação na história da computação e hoje é uma referência no mercado
de desenvolvimento de software9 (DEITEL; DEITEL, 1999).
8
Empresa fabricante de computadores, semicondutores e software com sede em Santa Clara, CA, USA.
9
Palavra, do Inglês, significa programa de computador.
48

Para isso, a linguagem Java evoluiu para atender vários requisitos desejáveis em uma
linguagem de programação, tais como: confiabilidade, devido ao seu gerenciamento de me-
mória resultando em um ganho de eficiência; redigibilidade, por eliminar alguns conceitos das
linguagens C e C++ que dificultavam a reutilização de código; e, portabilidade, pois, diferente
das linguagens convencionais que são compiladas para código nativo, a linguagem Java é com-
pilada para um bytecode que é executado por uma máquina virtual, com isso ela independe de
sistema operacional tornando-se uma linguagem multiplataforma (DEITEL; DEITEL, 1999).

Contudo, Java é uma linguagem simples e de fácil aprendizado, pois possui um redu-
zido número de construções. A diminuição das construções mais suscetíveis a erros de pro-
gramação como ponteiros e gerenciamento de memória, também faz com que a programação
em Java seja mais eficiente. Ela contém um conjunto de bibliotecas que fornecem grande parte
das funcionalidades básicas da linguagem. Além disso, ela adota o paradigma de orientação a
objetos fazendo com que a reutilização de código, com proteção e encapsulamento a partir de
bibliotecas de terceiros, seja algo trivial (DEITEL; DEITEL, 1999).

A execução de um programa em Java dá-se da seguinte forma: um programa fonte


escrito em linguagem Java é traduzido pelo compilador para os bytecodes10 , isto é, o código
de máquina de um processador virtual, chamado máquina virtual Java (JVM). A JVM é um
programa capaz de interpretar os bytecodes produzidos pelo compilador e executar o programa.
Com isto, um programa Java pode ser executado em qualquer plataforma, desde que esteja
dotada de uma JVM (SCHÜTZER; MASSAGO, Acessado em 2009).

Uma API11 que é o conjunto de rotinas e padrões estabelecidos por um software para
a utilização das suas funcionalidades por programas aplicativos que não querem se envolver
em detalhes da implementação do software, mas apenas usar seus serviços. Destaca-se na
linguagem Java uma API específica para processamento de imagens, intitulada JAI12 , sendo
sua principal característica a robustez aplicada ao PDI (DEITEL; DEITEL, 1999).

Essa API é basicamente uma biblioteca formada por um conjunto de classes utilizadas
para o tratamento de imagens que trabalham de forma mais avançada e complexa. Dentre as
vantagens dessa biblioteca, uma das mais importantes está no modo como ela foi implementada,
que simplifica e minimiza as tarefas referente ao tratamento de imagens. Além disso, é consti-
tuída por classes de leitura e gravação, as quais são capazes de codificar e decodificar imagens,
fazendo com que elas possam ser de diferentes extensões, como: BMP, JPEG, GIF, PNG, TIFF
(DEITEL; DEITEL, 1999).
10
Palavra, do Inglês, significa código em bytes.
11
Abreviatura, do Inglês, significa Interface de Programação de Aplicativos.
12
Abreviatura, do Inglês, significa Java Imagem Avançada.
49

4.4 Considerações Finais

Atualmente, já existem compiladores capazes de traduzir bytecodes para instruções


de máquina nativas, como o Just In Time compiler (ou JIT), tornando os programas ainda mais
rápidos. Este compilador requer uma versão específica para cada plataforma em que se pretende
que o programa Java seja executado. Em contrapartida à maior velocidade de execução está
também uma maior necessidade de memória, pois os bytecodes compilados, em geral, ficam
três vezes maiores do que o original (SCHÜTZER; MASSAGO, Acessado em 2009).

Uma alternativa bem mais interessante, e provavelmente muito mais viável, é a imple-
mentação da JVM em hardware13 na forma de placa ou microchip14 . A primeira iniciativa neste
sentido é da Sun Microsystems, que está produzindo os microchips picoJava, microJava e
UltraJava. Estes são capazes de executar diretamente bytecodes, acelerando em milhares de
vezes a velocidade de execução (SCHÜTZER; MASSAGO, Acessado em 2009).

Isto permitirá o desenvolvimento de aplicativos cada vez mais complexos, abrangentes


e funcionais. Espera-se que estas soluções sejam brevemente empregadas na fabricação de tele-
fones celulares, pagers, jogos, impressoras e eletrodomésticos de consumo, além de aplicações
mais sérias como estações de trabalho dotadas do sistema operacional JavaOS, processamento
de imagens médicas, entre outros. Trata-se certamente do futuro das soluções para aplicações
de rede (SCHÜTZER; MASSAGO, Acessado em 2009).

A ciência da computação apresenta atualmente três áreas destinadas à manipulação,


análise ou geração de imagens através do computador. Essas áreas são: a computação gráfica,
que se destina à modelagem e construção de imagens, normalmente manipulando dados na
forma vetorial; o processamento digital de imagem cujos objetivos são a aquisição e a
manipulação da informação adquirida na forma de “pixels”; e a visão computacional, que
é uma área voltada à análise de imagens, à interpretação de características e à reconstituição do
modelo de um objeto ou de uma cena. (GONZALEZ; WOODS, 1992).

Percebe-se, desta forma, que o PDI é uma área multidisciplinar, tanto na atuação
quanto na derivação, pois suas técnicas baseiam-se na ótica, colorimetria, neurofisiologia, enge-
nharia elétrica e ciência da computação. Com o desenvolvimento das tecnologias de hardware,
principalmente de memória e processamento, estas áreas têm apresentado um grande desenvol-
vimento e ainda vislumbram um próspero futuro (COTRIM, 2007).

13
Palavra, do Inglês, significa a parte física do computador.
14
Um microchip é, propriamente, um circuito integrado.
50

5 Radiologia e Diagnóstico por Imagem

Neste capítulo serão abordados conceitos referentes à radiologia e ao diagnóstico por


imagem, englobando aspectos históricos, funcionamento dos raios-X, qualidade de uma ima-
gem médica, além de informações referentes aos sistemas de apoio ao diagnóstico.

5.1 Considerações Iniciais

Em 1895, o físico alemão Wilhelm Conrad Röntgen descobriu de maneira casual uma
radiação até então desconhecida, o raio-X, que é produzido através da interação de elétrons com
certos materiais. Isso ocasionou uma revolução no meio científico, em especial na medicina, de
tal forma que em 1900 a radiologia já existia como especialidade médica. Por volta de 1940,
novas tecnologias como a televisão e os intensificadores de imagens permitiram a realização de
fluoroscopias de ótima qualidade e em tempo real (WELLS et al., 1993).

O desejo de separar estruturas superpostas também levou ao desenvolvimento de uma


variedade de técnicas tomográficas analógicas, especialmente a tomografia axial (seções trans-
versais). Inicialmente, as imagens não eram nítidas o suficiente para permitir o diagnóstico.
Este problema foi solucionado com o uso do computador para eliminar os ruídos e, a partir
deste momento, foram também desenvolvidos métodos matemáticos para reconstrução de ima-
gens. Após a invenção do tomógrafo computadorizado em 1970, vários métodos de aquisição
de imagens foram desenvolvidos (WELLS et al., 1993).

Podem-se atribuir muitos fatores para o surgimento de tantas modalidades de aquisi-


ção de imagens médicas, tais como a melhor compreensão dos princípios básicos da captação
de imagens e o aperfeiçoamento de técnicas matemáticas de reconstrução. A melhoria na tec-
nologia da computação levou a uma tendência para a geração de imagens digitais, sendo que
os exames tradicionais de raios-X podem agora ser adquiridos e processados pelo computador.
Assim, a aquisição e análise de imagens digitais de raios-X formam a base de um novo campo
chamado radiologia digital (COTRIM, 2007).
51

5.2 Introdução à Radiologia Digital

A radiologia digital é o ramo do diagnóstico médico que emprega sistemas computaci-


onais nos diversos métodos para a aquisição, a transferência, o armazenamento ou simplesmente
o tratamento das imagens digitais adquiridas (CASTRO, 2006).

A evolução da computação, especialmente na área médica, permitiu um enorme avanço


no diagnóstico por imagem. A partir de modernos sistemas computacionais desenvolvidos em
plataformas apropriadas de tratamento gráfico tornou-se possível uma gama de aplicações, que
vão desde uma simples medida linear, até um complexo modelo de apresentação tridimensional
(NOBREGA, 2008).

As imagens geradas nos diferentes equipamentos de diagnóstico por imagem podem


ser reconstruídas a partir da transformação de um número muito grande de correntes elétricas
em dígitos de computador formando uma imagem digital. Esta é apresentada em uma tela de
computador ou em um filme radiográfico na forma de uma matriz formada pelo arranjo de linhas
e colunas (NOBREGA, 2008).

Para que a imagem digital possa ser interpretada como a imagem de um objeto ou de
uma estrutura anatômica, os dígitos de cada pixel da imagem são convertidos em tons de cinza
numa escala proporcional a seus valores. A imagem digital final será o resultado do arranjo de
uma grande quantidade de pixels apresentando tonalidades diferentes de cinza e formando no
conjunto uma imagem apreciável (NOBREGA, 2008).

A imagem médica produzida por equipamentos que realizam cortes seccionais traz
consigo uma informação de profundidade. A imagem bidimensional, que se vê na tela ou no
filme radiográfico, quando carrega consigo este tipo de informação recebe o nome de voxel
(NOBREGA, 2008).

Enquanto o pixel representa a menor quantidade de informação por unidade de medida


quadrada, o voxel é a menor quantidade de informação que uma imagem pode ter por unidade de
medida cúbica (CASTRO, 2006). O voxel poderá ser isotrópico, quando apresentar as mesmas
dimensões entre a sua largura, altura e profundidade, ou anisotrópico, quando essas medidas
forem diferentes (ver Figura 29).

Figura 29: Voxel isotrópico (esq.) e anisotrópico (dir.).


52

Os diversos métodos de diagnóstico que trabalham com imagem digital, segundo No-
brega (2008), necessitam fazer uma conversão da imagem analógica para a linguagem compre-
endida pelos computadores, o sistema binário de informação. O dispositivo responsável pela
transformação dos sinais da imagem em equivalente no sistema binário é o ADC1 . Este disposi-
tivo tem por finalidade converter a voltagem correspondente a um ponto em particular do objeto
em dígitos de computador.

A conversão dos sinais analógicos para digitais (ver Figura 30) deve obedecer ao Te-
orema de Nyquist. Diz o teorema que para a representação em valores discretos de um sinal
analógico periódico deve-se obter, no mínimo, duas amostras do sinal por período. Um número
de amostras inferior ao proposto por Nyquist seria incapaz de reproduzir com fidelidade a in-
formação analógica. Número de amostras superior ao proposto produz excesso de informação
ocasionando “aliasing” (NOBREGA, 2008).

Figura 30: Sinal analógico (esq.) e digital (dir.).

Com isso, as informações presentes na curva senoidal da voltagem, segundo Nobrega


(2008), são transformadas em amostras que obedecem ao princípio da frequência de Nyquist,
resultando nas informações apresentadas na Tabela 15.

Tabela 15: Matriz de conversão considerando a frequência de Nyquist.


Fonte: Nobrega (2008).
Filme 35 × 43 cm 3500 × 4000 10 pixels/mm
Vídeo 625 linhas 512 × 512 1 pixel/mm
Vídeo 1249 linhas 1024 × 1024 2 pixels/mm

Nos sistemas digitais, os dados brutos armazenados pelo computador serão processa-
dos pelo dispositivo conhecido por DAC2 , que se encarregará de atribuir aos diferentes dígitos
o correspondente de uma escala de cinzas. Após o devido processamento, esta imagem estará
disponível para ser apresentada na forma de uma matriz de escala de cinzas, em um terminal de
vídeo, impressora, ou mesmo, filme radiográfico (NOBREGA, 2008).
1
Abreviatura, do Inglês, significa conversor de analógico para digital.
2
Abreviatura, do Inglês, significa conversor de digital para analógico.
53

5.2.1 Produção de Raios-X

A produção de raios-X dá-se através da interação de elétrons com certos materiais.


Sabe-se que a radiação X é energia, e essa energia não se perde nem se cria, transforma-se
(primeira lei da termodinâmica) (BONJORNO et al., 1993). Com isso, os raios-X são produzidos
por elétrons e carregam energia consigo.

Essa energia é chamada de energia cinética e é diretamente proporcional à velocidade


dos elétrons. Portanto, quanto maior for a velocidade do elétron maior será sua energia cinética.
Quando o elétron atingir o alvo, sua energia cinética será transformada em energia eletromag-
nética, os raios-X. Os dois tipos de raios-X conhecidos são o característico e o de freamento,
este último também conhecido como Bremsstrahlung (BONJORNO et al., 1993; CASTRO, 2006).

Os raios-X de freamento, segundo Castro (2006), são produzidos pela atração elétrica
entre o núcleo (+) e o elétron (-). Quando o elétron passa próximo do núcleo, ele é atraído
e sua velocidade diminui (freamento). Quanto maior a desaceleração mais energia cinética
é transformada em eletromagnética, ou seja, em raios-X de freamento (ver Figura 31). Esse
mecanismo acontece com maior frequência do que os raios-X característicos.

Figura 31: Modelo atômico de Bohr: produção de raio-X de freamento.


Fonte: Castro (2006).

Já o raio-X característico, segundo Castro (2006), é produzido quando o elétron se


choca com algum elétron do alvo e o retira de órbita. Nesse caso, um elétron de uma camada
mais externa do átomo ocupará essa lacuna, porém, para isso deverá perder energia, e assim é
emitido um fóton de raio-X característico. Os raios-X característicos recebem esse nome porque
a energia emitida do átomo terá sempre um valor fixo, que depende das energias dos elétrons
distribuídos nas órbitas (ver Figura 32).
54

Figura 32: Modelo atômico de Bohr: produção de Raio-X característico.


Fonte: Castro (2006).

Assim sendo, o raio-X é uma onda eletromagnética, como a luz visível, as ondas de
rádio, os raios infra-vermelhos e os raios ultra-violetas. As ondas eletromagnéticas têm como
características: a sua frequência e o seu comprimento de onda, sendo estas duas característi-
cas inversamente proporcionais, ou seja, quanto maior a frequência menor o comprimento de
onda. A energia de uma onda é diretamente proporcional a sua frequência (EASTMAN KODAK
COMPANY, 1980).

Como o raio-X é uma onda de alta energia, o seu comprimento de onda é muito curto
da ordem de 10−12 metros (um picometro) e sua frequência é da ordem de 1017 Hz. Com este
comprimento de onda muito curto, estes raios tem a capacidade de penetrar na matéria, o que
possibilita sua utilização no estudo dos tecidos do corpo humano (CASTRO, 2006).

As cargas elétricas em um material interagem entre si através das forças elétricas. Elas
podem ser de atração, quando as cargas forem opostas, ou de repulsão, quando as cargas tiverem
o mesmo sinal. Quanto mais cargas de sinais opostos separarmos, maior será a força de atração
entre elas e, desta forma, pode-se dizer que existe uma energia potencial armazenada nesse caso.
Se uma carga elétrica for colocada entre os pólos, ela será atraída e se movimentará na direção
do pólo de carga oposta, conceito este conhecido como potencial elétrico, também chamado de
tensão ou voltagem (BONJORNO et al., 1993).

A unidade de medida de tensão é o volt. No exemplo observado na Figura 33, a velo-


cidade V1 (a) será maior que a velocidade V2 (b), pois é aplicada uma tensão maior no segundo
caso, ratificando que quanto maior a tensão aplicada, maior será a velocidade do elétron e, con-
sequentemente, sua energia cinética. Na produção de raios-X utiliza-se alta tensão, ou seja,
múltiplos de 1000 volts, ou 1 KV (quilovolt) (CASTRO, 2006).
55

(a) (b)
Figura 33: Elétron: velocidade × tensão (a) 10 volts; (b) 100 volts.

O movimento das cargas elétricas gera um fluxo chamado de corrente elétrica. Por
definição, a corrente elétrica será a quantidade de carga em um intervalo de tempo. No proce-
dimento de disparo dos raios-X, além da escolha da tensão (KV), também deve ser escolhida a
corrente em mA (miliampère). Um outro conceito muito utilizado para produção de raios-X é o
de potência, cujo unidade de medida é o watt (W) (BONJORNO et al., 1993; CASTRO, 2006).

Todo aparelho de raio-X contém uma ampola (ver Figura 34), que tem a função de
produzir os raios-X a partir da colisão de elétrons com um alvo. Como já visto anteriormente,
quando os elétrons atingirem o alvo (átomo), poderão ser produzidos raios-X característicos
ou de freamento. Portanto, a ampola deve ter um dispositivo que acelere os elétrons em alta
velocidade da direção do alvo (CASTRO, 2006).

Figura 34: Ampola de raio-X.


Fonte: Eastman Kodak Company (1980).
56

Os componentes mais importantes da ampola são o ânodo (alvo) e o filamento (emissor


dos elétrons) (ver Figura 35). Quando uma corrente elétrica passa pelo filamento acontece um
fenômeno chamado efeito termiônico, no qual a corrente elétrica aumenta a temperatura do
material a tal ponto que alguns elétrons soltam-se do fio (EASTMAN KODAK COMPANY, 1980).

Figura 35: Ampola de raio-X: catodo e ânodo.


Fonte: Eastman Kodak Company (1980).

Quando isso acontece, os elétrons ficam livres ao redor do filamento e são atraídos pelo
ânodo, que é carregado com carga positiva. Quanto maior for a quantidade de carga positiva no
ânodo maior será a força que acelerará o elétron de encontro ao alvo, ou seja, maior será a ener-
gia cinética do elétron, e por sua vez, maior será a energia dos raios-X produzidos (EASTMAN
KODAK COMPANY, 1980).

Na prática, isso acontece quando o operador do aparelho aumenta o KV, ou seja,


quando aumenta o potencial do ânodo. O aumento de energia faz-se necessário quando a
camada de tecido que deverá ser ultrapassada é grande ou muito densa. Caso contrário, em
estruturas mais finas ou menos densas, diminui-se o KV para que os raios-X tenham menos
energia (CASTRO, 2006).

5.2.2 Raio-X e Equipamentos Digitais

Diversos equipamentos utilizam o raio-x para gerarem imagens médicas, nesta seção
serão abordados apenas dois equipamentos, a saber: radiografia computadorizada, com alguns
aspectos comparativos à radiologia convencional, e o densitômetro ósseo.
57

A imagem de radiografia convencional depende dos fótons resultantes da interação


com o objeto que dependem, por sua vez, da espessura e da capacidade deste de absorver raios-
X. A detecção dos raios-X é feita através de um filme semelhante ao filme fotográfico.

A resultante após a interação dos raios-X com o objeto sensibilizará o filme radio-
3
gráfico , resultando na imagem final. É importante saber que as diferenças de densidade de-
terminam as características radiológicas dos diferentes materiais e estruturas (CASTRO, 2006).
O feixe de raios-X tem um formato cônico e concentra uma intensidade maior de raios-X no
centro desse cone (EASTMAN KODAK COMPANY, 1980).

Assim, materiais densos, como os metais, absorvem muito os raios-X (cfe. Figura 36),
pois têm um número atômico muito alto. Por outro lado, o ar, com densidade atômica e número
atômico baixos, não absorve os raios-X. Com isso, temos em ordem crescente cinco densidades
radiológicas básicas: ar, gordura, água, cálcio e metal (CASTRO, 2006).

Figura 36: Exposição radiografica frente a um objeto com várias camadas.


Fonte: Eastman Kodak Company (1980).

Os fótons de raios-X, que formam as imagens radiográficas, não podem ser vistos
pelo olho humano (ver Figura 37). Então, fez-se necessário usar receptores que convertam
a radiação (informação) em imagem visível. Podem-se usar dois métodos: (i) uma película
fotográfica pode ser exposta diretamente aos raios-X ou (ii) a energia dos raios-X é convertida
em luz visível para então serem convertidas em imagem (ou impulso elétrico ou exposição na
chapa) (CASTRO, 2006).

Os raios-X têm um grande poder de penetração tornando-se difícil registrá-los. Um


filme radiológico, por exemplo, absorve de 1 a 2 % apenas do feixe dos raios-X. Com isso,
introduziram-se os ecrãns com o objetivo de converter raios-X em luzes visíveis, permitindo,
assim, a redução da dose de radiação-X ao paciente, bem como o tempo de exposição (CASTRO,
2006).
3
Também poderá ser encontrado no texto como filme radiológico.
58

Figura 37: Espectro eletromagnético.

Os ecrãns têm como elemento base o fósforo, que é um sólido cristalizado natural
ou artificial que exibe a propriedade, quando exposto aos raios-X, de luminescência, ou seja,
habilidade de absorver radiação de comprimento onda curta, e convertê-la em radiação de com-
primento de onda longa no espectro visível (CASTRO, 2006).

Sendo assim, os ecrãns são constituídos por: (i) um suporte feito de cartão ou plástico;
(ii) uma capa de fósforo microcristalino, fixo com uma cola apropriada e (iii) uma capa protetora
(plástico), a qual é aplicada sobre o fósforo para prevenção de eletricidade estática, proteção
física e permite a limpeza sem danificar a capa de fósforo. A Figura 38 (a) ilustra a estrutura
que comporta o ecrãn e o filme radiológico, denominado chassi, e a Figura 38 (b) ilustra o
funcionamento e o acoplamento do ecrãn e o filme, partindo de um corte transversal em um
chassi (CASTRO, 2006).

(a)
(b)
Figura 38: Chassi, ecrãn e filme: (a) chassi; (b) acoplamento ecrãn e filme.

O filme radiológico é composto por uma película plástica, chamada de base, revestida
por uma substância chamada emulsão e uma camada protetora. Os fótons incidentes de raios-
X são absorvidos no fósforo pelo efeito comptom (aumento de comprimento de onda), o que
resulta na emissão de elétrons livres (CASTRO, 2006).
59

Com isso, a energia que se obtém desses elétrons é então convertida em fótons de
luz através do processo de luminescência, e os fótons produzidos por esse processo saem do
fósforo e expõe-se ao filme. Essa etapa é conhecida como imagem latente, pois essas impressões
no filme não são visíveis a olho nu, somente se verá a imagem após o processo de revelação
(CASTRO, 2006).

Entretanto, a imagem radiológica digital é obtida a partir de placas digitais detecto-


ras que substituem os chassis convencionais. Na prática, essas placas apresentam as mesmas
dimensões dos chassis convencionais (NOBREGA, 2008). Os chassis digitais apresentam duas
constituições básicas, a saber: (i) dispositivo fósforo-armazenador, ecrãn digital e (ii) conversor
óptico-eletrônico.

As placas que utilizam ecrãn fósforo-armazenador armazenam a energia recebida


do feixe de raio-X e, posteriormente, o chassi digital é levado a um dispositivo do sistema
conhecido como leitora digital (cfe. Figura 39(a)), de onde são extraídas as informações e
enviadas para o computador. Após o processo de coleta das informações, o ecrãn sofre um
processo de escaneamento laser, restaurando suas regiões, tornando-o, assim, reutilizável para
novas exposições (NOBREGA, 2008).

Já em alguns sistemas digitais, o chassi pode estar constituído por uma superfície de
silício que atua como um conversor opto-eletrônico, levando a informação obtida do feixe
de raio-X diretamente ao computador (cfe. Figura 39(b)). No computador, os dados obtidos
serão apresentados na tela e disponibilizados em formato de arquivos gráficos, podendo ficar
disponíveis na rede ou resultando em uma radiografia em filme utilizando uma impressora laser
(cfe. Figura 39(c)) (NOBREGA, 2008).

(a) (b) (c)


Figura 39: Radiografia: (a) leitora digital; (b) estação de trabalho; (c) impressora laser.
60

Contudo, o aparelho de raio-X digital é uma eficiente máquina que não utiliza filmes
nem produtos químicos para revelação, contribuindo, assim, para a preservação do planeta.
O chassi digital é o único aparato responsável por diferenciá-lo da radiografia convencional
(NOBREGA, 2008).

Entretanto, o ganho é exorbitante, uma vez que as informações são expressas de forma
ágil, sendo que as imagens de raio-X digital apresentam alta qualidade de imagem, contraste e
definição de detalhes impensáveis na radiografia comum (CASTRO, 2006). A Figura 40 ilustra
um aparelho de radiografia que pode ser convencional ou digital, dependendo do chassi utili-
zado.

Figura 40: Aparelho de radiografia.

A densitometria óssea é o método de diagnóstico que avalia o grau de mineralização


óssea do esqueleto ou de segmentos do esqueleto e os seus resultados são comparados com
a densidade mineral óssea (DMO) da média populacional. O estudo por segmentos é mais
frequente, sendo comum a avaliação da densidade óssea da coluna lombar e do quadril direito
(NOBREGA, 2008).

A densidade mineral óssea é expressa em g/cm2 (gramas por centímetro quadrado) e


representa a massa de cálcio expressa em gramas na área de um centímetro quadrado de tecido.
61

Os valores obtidos junto à população, e que representam a média populacional, são


importantes para as conclusões diagnósticas do médico radiologista. Esses valores precisam ser
significativos o que, requer cuidados na amostragem. Os valores precisam ainda estar distribuí-
dos por faixa etária e peso, considerando as características regionais da população (NOBREGA,
2008).

O método de densitometria óssea utiliza os raios-X em baixos níveis de exposição para


obtenção de imagens anatômicas de uma região de interesse. Os resultados da exposição radi-
ológica são analisados por programas de computador que medem de forma indireta o grau de
atenuação do feixe de raio-X incidente e estabelecem comparações com os indivíduos da po-
pulação. Dependendo dos resultados, o indivíduo poderá ser enquadrado em faixas que variam
de: acima da média, normal e abaixo da média (NOBREGA, 2008).

Existem vários equipamentos de DMO disponíveis no mercado, os programas variam


de um fabricante para outro. Entretanto, o formato dos aparelhos apresentam-se similares ao
ilustrado na Figura 41.

Figura 41: Aparelho de densitometria.

5.2.3 Formatos de Imagem Digital

Existem basicamente dois tipos de formatos de imagens digitais: vetoriais e raster,


este último também chamado de bitmap. Imagens raster são compostas por uma matriz de pixel
e representam a cor e a localidade espacial do pixel. Esse formato é amplamente utilizado para
fotografias e imagens de alta definição (COTRIM, 2007).
62

Imagens vetoriais são representadas por um conjunto de comandos que possibilitam


desenhar formas e figuras para dispositivos de saída. Imagens vetoriais são muito mais fáceis
de manipular, pois, se for necessário modificar a escala e rotação, por exemplo, aplicam-se as
transformações e somente depois a imagem é redesenhada no dispositivo. Porém, o formato
raster representa muito melhor imagens de alta definição, pois seria muito custoso, em termos
de armazenamento e processamento, ter uma imagem vetorial com alta definição (TAUBMAN;
MARCELLIN, 2002 apud COTRIM, 2007).

Imagens médicas correspondem ao formato raster, na qual a matriz de pixels além de


guardar a localidade espacial, representa um valor de densidade. Este valor pode representar di-
ferentes tamanhos, dependendo do dispositivo de aquisição. Além disso, o formato de imagens
bitmap é o utilizado no processo de compactação (COTRIM, 2007).

Existem vários formatos de arquivos para imagens estáticas dentre os quais podem-se
citar e descrever respectivamente: JPEG, GIF, BMP, TIFF, PNG, SPIFF e DICOM.

O padrão JPEG, desenvolvido pelo Joint Photographic Experts Group4 para compres-
são de imagens estáticas, armazena todos os pixels através de um método de compressão com
perda, significando que sempre que a imagem é gravada nesse formato perde-se alguma infor-
mação. O tamanho do arquivo JPEG resultante é muito pequeno, porém os dados que contêm
são sempre uma aproximação da imagem original (GUIMARÃES, 2002).

O formato GIF (Graphics Interchange Format) foi introduzido em 1987 pela Compu-
Serve5 a fim de fornecer um formato de imagem a cores para seus arquivos, em substituição
do formato RLE (Run-length encoding), que era apenas a preto e branco (GUIMARÃES, 2002).
O GIF, que tem uma taxa de compressão de perda de informação baixa, comporta animação e
possui canal alpha — a quarta variante na definição da cor.

Já o formato BMP (Microsoft Windows Bitmap), criado pela Microsoft6 , suporta até
24 bits para cor e as imagens são frequentemente armazenadas sem compressão, resultando em
arquivos de tamanho grande (GUIMARÃES, 2002).

O formato TIFF (Tag Image File Format), desenvolvido em 1986 pela Aldus Corpo-
ration, atualmente parte da Adobe Software7 , suporta 24 bits para cor e a imagem pode ser
comprimida com algoritmos como: LZW (Lempel-Ziv-Welch), CCITT (Consultative Commit-
tee on International Telegraphy and Telephony) ou JPEG (GUIMARÃES, 2002).
4
Comissão mista entre diversas entidades e empresas do mundo.
5
Empresa Estado Unidense, atualmente operando como prestadora de serviços para a Internet.
6
Empresa de software fundada por Bill Gates e Paul Allen com sede em Redmond, WA, USA
7
Empresa de software com sede em San Jose, California, USA.
63

O formato PNG (Portable Network Graphics) é uma evolução do formato GIF de-
senvolvido pelo comitê da Internet e endossado formalmente como padrão pelo W3C (World
Wide Web Consortium) — consórcio internacional no qual organizações filiadas trabalham jun-
tas para desenvolver padrões para a word wide web — em 1997. Imagens PNG mapeadas em
cores tendem a ser 30% menores do que a GIF (GUIMARÃES, 2002).

Um arquivo PNG pode armazenar texto em seu cabeçalho e palavras chaves são usadas
para indicar o que cada string8 representa — uma forma de armazenar metadados. No cabe-
çalho estão armazenadas informações de largura, altura, tamanho em bits, tipo de cor, método
de compressão, método de filtragem e método de interlace. Outros tipos de informação são
alocados em locais separados e a informação textual é armazenada no espaço padrão de texto
com palavras-chave adequadas (GUIMARÃES, 2002).

O SPIFF (Still Picture Interchange File Format) é um formato de arquivo bitmap gené-
rico definido pela ITU (International telecommunication Union), órgão responsável por deter-
minar um conjunto de normas e especificações internacionais para a área de telecomunicações,
e ISO/IEC9 — organização que define padrões internacionais em diferentes áreas e a organiza-
ção internacional de padronização de tecnologias elétricas, eletrônicas e relacionadas — para
armazenamento de imagens em tons de cinzas e cores. Este formato veio substituir oficialmente
o formato de arquivo JFIF para armazenamento de dados JPEG (GUIMARÃES, 2002).

Assim como o PNG, arquivos SPIFF são compostos de seções para armazenamentos
de metadados, sendo compostas pelos seguintes ítens: cabeçalho (tamanho do cabeçalho, iden-
tificador, versão, perfil da aplicação, número de componentes de cores, espaço de cor e outros),
diretório de informações (referências para informações armazenadas dentro do arquivo SPIFF)
e dados da imagem (GUIMARÃES, 2002).

O formato DICOM (Digital Imaging and Communications in Medicine) foi criado


para atender à necessidade de agregar tudo em um arquivo (imagem e metadados), de modo a
estar nos padrões de sistemas de comunicação e arquivamento de imagens com protocolo de
comunicação de redes. Essa padronização de protocolos de redes originou-se das convenções
da ISO/OSI10 — organização que define padrões internacionais em diferentes áreas e órgão
responsável por padronizar a comunicação entre sistemas de processamento heterogêneos —
com o objetivo de criar um formato padrão de dados para imagens médicas (GUIMARÃES, 2002).
8
Palavra, do Inglês, significa uma cadeia de caracteres.
9
International Organization for Standardization e International Electrotechnical Commision.
10
International Organization for Standardization e Open System Interconnect.
64

5.2.4 Qualidade da Imagem Digital

O ruído, segundo Nobrega (2008), é o principal fator que afeta a qualidade de uma
imagem digital. O ruído pode ser definido como um artefato eletrônico e caracteriza-se pela
presença de “granulação” na imagem e depende de vários fatores, a saber alguns deles: (i)
detectores; (ii) eficiência na digitalização; (iii) magnificação.

Os detectores, que são os responsáveis pelo ruído quântico, resultam da interação do


fluxo de fótons do feixe com o material sensitivo dos detectores. A eficiência na digitalização
está relacionado à eficiência na conversão dos sinais analógicos na codificação binária e depende
diretamente da eletrônica utilizada no equipamento. A magnificação relacionada à diminuição
do campo de visão, diminui a densidade de fótons, o que aumenta o ruído (NOBREGA, 2008).

A resolução da imagem digital está relacionada com a matriz e, quanto maior o arranjo
da matriz, melhor será a resolução da imagem. O tamanho do pixel varia em função do campo
de visão (FOV) utilizado. O campo de visão representa o tamanho máximo do objeto em estudo
que ocupa a matriz, com isso, quanto maior for o objeto, maior será o campo de visão. A
fórmula que determina o tamanho do pixel está representado na Equação 5.1 (NOBREGA, 2008).

FOV
pixel = (5.1)
Matriz

Todas as imagens podem ser caracterizadas por diversos parâmetros de qualidade. Os


mais úteis desses parâmetros são a resolução espacial, a resolução de contraste e a resolu-
ção temporal (ALMEIDA, 1998). Esses parâmetros foram largamente usados para caracterizar
imagens de raio-X tradicionais; eles também proveem os meios para comparação de imagens
formadas por modalidades (equipamentos de tomografia ou ressonância magnética, entre ou-
tros) de aquisição de imagens digitais.

A resolução espacial está relacionada à distância entre as imagens 2D adquiridas pelas


modalidades que empilhadas formam um volume 3D, ou seja, a separação física entre as ima-
gens adjacentes de uma sequência. Para a imagem digital, a resolução espacial é determinada
pelo número de pixel por área de imagem (ALMEIDA, 1998).

A resolução de contraste é a medida da capacidade para distinguir pequenas dife-


renças de intensidade, como mudanças nos parâmetros mensuráveis. Tais como atenuação de
raios-X para imagens digitais, o número de bits por pixel determina a resolução de contraste da
imagem (ALMEIDA, 1998).
65

Finalmente, a resolução temporal é a medida de tempo necessária para formar ima-


gens funcionais (produzir o comportamento dos batimentos cardíacos de um paciente). A taxa
mínima para este tipo é de 30 quadros (imagens) por segundo (ALMEIDA, 1998).

Uma resolução inadequada, segundo Cotrim (2007), resulta na impossibilidade de dis-


tinguir estruturas; duas estruturas podem parecer uma só (baixa resolução espacial) ou uma
lesão pode não apresentar limites precisos (baixa resolução de contraste). Para isso, observa-se
na Figura 42 uma imagem de raio-X digital de alta resolução de contraste (a) — característica
da radiologia digital — e uma imagem de raio-X convencional com baixa resolução de contraste
(b) — característica das radiologia convencional.

(a) (b)
Figura 42: Radiografia: (a) digital - alto contraste; (b) convencional - baixo contraste.

Outros parâmetros relevantes para a produção de imagens médicas são os que quan-
tificam o risco do paciente, os graus de invasibilidade, a dosagem de radiações ionizantes, o
grau de desconforto do paciente, o tamanho (portabilidade) do instrumento, a capacidade de
descrever as funções fisiológicas bem como as estruturas anatômicas e o custo do procedimento
(COTRIM, 2007).

Uma modalidade de produção de imagens perfeita deverá produzir imagens com alta
resolução espacial de contraste e de tempo; deverá ser de baixo custo, portátil, livre de risco,
indolor e não invasiva; não deverá usar radiações ionizantes; deverá ter capacidade de descrever
as funções fisiológicas, bem como as estruturas anatômicas. A primeira razão para a prolife-
ração de modalidades de produção de imagens é que nenhuma modalidade satisfaz todos estes
requisitos, sendo cada uma satisfatória para uma ou mais dessas dimensões e indesejável para
outras (ALMEIDA, 1998).
66

5.3 Gerenciamento de Imagens e Informações

Existem quatro grandes soluções tecnológicas utilizadas em um hospital, a saber:


PACS (Picture Archiving and Communication Systems); RIS (Radiology Information System);
HIS (Hospital Information System) e MIII (Medical Imaging Informatics Infraestruture) que
fornece suporte às ferramentas de CAD (Computer-Aided Diagnosis).

O sistema PACS e importante para armazenamento e recuperação de imagens em que


são armazenadas todas as imagens dos pacientes já analisados ou em processo de análise, oriun-
dos de diversos setores de um hospital, além de gerenciar informações à distância junto a clíni-
cas ou unidades remotas (COTRIM, 2007).

O conceito do PACS introduz novas perspectivas no manuseio das imagens radiológi-


cas, a saber algumas: (i) imagens são disponibilizadas em terminais de computador, eliminando
os gastos com filmes radiológicos; (ii) imagens podem rapidamente ser transmitidas para esta-
ções distantes como as clínicas médicas particulares; (iii) imagens podem ser armazenadas para
posterior tratamento (NOBREGA, 2008).

O ambiente de rede comum nos serviços de diagnóstico por imagem é conhecido pela
sigla RIS, sistema de informações radiológicas, responsável pelo gerenciamento das informa-
ções dos pacientes, dos estudos, séries e imagens. A rede RIS apresenta melhor eficiência
quando conectada ao sistema de informações do hospital conhecida pela sigla HIS. O HIS é o
sistema responsável por cadastros e agenda dos pacientes, bem como gerencia o faturamento e
o estoque, entre outras informações do hospital (COTRIM, 2007).

Com o auxílio de redes de transmissão de alta velocidade ou mesmo via internet,


tornou-se possível o envio de imagens para equipamentos localizados em pontos distantes do
serviço de origem. Este tratamento da imagem digital constitui a base da teleradiologia. A par-
tir do uso da teleradiologia, hospitais, clínicas ou mesmo residências particulares localizadas
em pontos distantes passaram a receber arquivos de imagens permitindo a seus usuários um tra-
tamento interativo à distância, abrindo novas perspectivas para o tratamento das imagens com
fins diagnósticos (NOBREGA, 2008).

Os problemas das aplicações clínicas devem ser resolvidos de uma forma rápida e
objetiva. Entretanto, o processo de observação humana é influenciado pelos aspectos internos e
externos. Os aspectos externos fazem referência às informações identificadas (luz, monitores,
ruídos, etc.) e os aspectos internos fazem referência à fadiga que atrapalha o indivíduo no
relacionamento das informações obtidas com o seu próprio conhecimento (COTRIM, 2007).
67

Uma aplicação de CAD tem basicamente dois aspectos que influenciam na sua efeti-
vidade. O primeiro está associado à metodologia de processamento das imagens e o segundo à
visualização dos resultados através de uma interação intuitiva com o usuário (COTRIM, 2007).

Na criação de ferramentas para auxiliar o processo de interpretação das imagens que


lida com a extração de informações específicas. Podem-se classificar os tipos de informações
resultantes em: (i) manipulação para transformação das imagens; (ii) extração de uma certa
região anatômica e/ou características e (iii) extração de um certo tipo de informação relacionada
a anatomia (existência) (COTRIM, 2007).

Sendo assim, em um sistema de CAD estas funções podem ser executadas automati-
camente ou através de um processo de interação com o usuário. A manipulação da imagem
pode ser utilizada para aumentar o contraste de uma área em relação a outra, ou mesmo, para
a extração de extremidades. Outra possibilidade é a separação do tecido mole em relação ao
ósseo utilizando funções de controle de variação espacial ou técnicas de energia dual. Supres-
são de artefatos (ruídos) e efeitos de dispersão conduzem à redução de artefatos indesejados e à
consequente melhora na qualidade da imagem (COTRIM, 2007).

5.4 Considerações Finais

Pesquisas recentes têm demonstrado que a segmentação de estruturas anatômicas a


partir de imagens de ressonância magnética e tomografia computadorizada beneficiarão a ex-
ploração de três diferentes tipos de conhecimento: (i) modelos de intensidade, que descrevem a
aparência nível de cinza de estruturas individuais; (ii) modelos de forma, que descrevem o for-
mato de diferentes estruturas e (iii) modelos de imageamento, que capturam as características
do processo de imageamento (SURI et al., 2005).

Sabe-se que o objetivo dos sistemas de CAD é melhorar a acurácia diagnóstica, assim
como aprimorar a consistência na interpretação de imagens mediante o uso da sugestão de
resposta diagnóstica fornecida por algum computador (COTRIM, 2007).

Porém, algumas ferramentas CAD que apresentam ótimos resultados ainda não são uti-
lizadas na rotina clínica por apresentarem alto custo computacional. As dificuldades em aplicar
estes algoritmos CAD na rotina clínica e as limitações ainda existentes para armazenamento,
processamento, busca e recuperação de imagens em grandes bases de dados vêm motivando
empresas e instituições de pesquisas a encontrarem novas soluções para essas tarefas (SURI et
al., 2005).
68

6 Arquitetura Proposta

Este capítulo tem como propósito abordar a arquitetura para o processamento de infor-
mações médicas proposta.

6.1 Considerações Iniciais

Em projetos anteriores, desenvolvidos e coordenados pelo orientador desta proposta,


sentiu-se a necessidade de integrar modelos de simulação de aspectos ambientais dinâmicos
baseados em algoritmos evolutivos com outras áreas da computação, tais como: computação
pervasiva, computação de alto desempenho, algoritmos de segmentação de imagens e sistemas
gerenciadores de banco de dados. A tese de doutoramento do referido orientador (AGUIAR,
2004) teve como aplicação a segmentação e categorização (classificação) de informações geo-
gráficas e a extração de informações combinadas a partir das diversas propriedades geofísicas.

Naquele momento, a união dos modelos baseados em autômatos celulares com o pro-
cessamento de alto desempenho e sua aplicação na determinação de áreas para conservação
ambiental fundamentaram a proposta da criação do ambiente de processamento de informações
geográficas denominado G-IPE (Geographic Information Processing Environment). Entretanto,
observou-se que estes mesmos modelos poderiam ser aplicados em outros problemas em áreas
distintas à ecologia, como por exemplo na medicina.

Neste sentido, o ambiente G-IPE corresponderia ao ambiente de modelagem, simu-


lação e repositório de informações geográficas. Por outro lado, ao se tratar de informações
médicas, como imagens de experimentos ou de exames — como ressonância magnética, to-
mografia ou raio-X —, o ambiente IPE (Information Processing Environment) seria designado
M-IPE e auxiliaria no diagnóstico ou na modelagem de padrões de comportamento de doenças.
Assim, um dos objetivos desta proposta é definir a arquitetura do projeto M-IPE, decorrente
neste capítulo.
69

6.2 Arquitetura do Projeto M-IPE

Esta arquitetura foi desenvolvida de modo a aproximar os especialistas da área da


saúde do HUSFP (médicos, técnicos, pesquisadores, estudantes, etc.) aos especialistas da área
das exatas da UCPEL (cientistas da computação, matemáticos, pesquisadores, professores, es-
tudantes, entre outros.), uma vez que o HUSFP pertence à UCPEL.

Sabe-se que existe um potencial muito grande a ser explorado com relação ao ganho
social e científico (criação de ferramentas para auxílio ao diagnóstico, desenvolvimento de no-
vas técnicas utilizando conhecimento mútuo, publicação de artigos, entre outros.) para ambos
setores, sendo que esta arquitetura visa isso na prática.

A arquitetura proposta contempla o modelo cliente-servidor (ver Figura 43). O módulo


cliente separa as aplicações que acessam as funcionalidades do sistema em nível de usuários, já
o módulo servidor armazena os modelos computacionais e provê a gerência das tarefas de alto
desempenho. Estes módulos são interligados entre si valendo-se de camadas de comunicação
de uma rede de computadores para a troca de informações.

Figura 43: Arquitetura do ambiente M-IPE.


Fonte: Silva e Aguiar (2009).
70

A camada cliente prevê dois tipos de usuários: (i) especialistas da saúde, situados na
camada: demandas de hospitais e postos de saúde, e (ii) especialistas das exatas, situados na
camada: desenvolvimento de modelos e simulação de aspectos dinâmicos.

O objetivo da arquitetura na classe dos especialistas da saúde é fornecer acesso aos


recursos desenvolvidos (ferramentas CAD) a partir de módulos (interfaces) via internet ou não,
a fim de permitir: armazenamento das informações dos pacientes, análise computacional de
demandas, processamento de alto desempenho nos computadores da UCPEL (grade computa-
cional), notificação de diagnósticos, entre outros. É nesta camada que as ferramentas CAD são
avaliadas na prática com informações reais.

Essa classe de usuários é composta pelos seguintes módulos (cfe. Figura 44): (i)
interface de cadastros e informações dos pacientes; (ii) interface de submissão de tarefas (dados
reais); (iii) interface de visualização e diagnóstico assistido e (iv)interface de administração. A
seguir uma breve descrição de cada um deles.

Figura 44: Arquitetura cliente - usuário da saúde.


Fonte: Silva e Aguiar (2009).

A Interface de cadastros e informações do pacientes é responsável pelo armazena-


mento das informações cadastrais dos pacientes e também das informações necessárias para
efetuar determinada simulação específica, como por exemplo: peso, altura e fraturas prévias.

A Interface de submissão de tarefas (dados reais) permite que os usuários enviem


as imagens e as informações respectivas de um paciente relacionadas a uma aplicação corres-
pondente, com a finalidade de efetuar o processamento e retornar um diagnóstico de apoio. Os
profissionais poderão submeter tarefas específicas, como por exemplo, o cálculo da DMO de
um paciente, seguindo a validação exclusiva da interface de submissão de cálculo da DMO.
71

A Interface de visualização e diagnóstico assistido permite o usuário definir como


ele visualizará a informação. Assim, uma série de metodologias de visualizações para as infor-
mações resultantes poderão ser definidas e esta interface permitirá a escolha do melhor modelo
de visualização, permitindo, assim, que o profissional da área da saúde analise a informação
a qual foi solicitada através da interface de submissão de tarefas, utilizando um modelo de
visualização que melhor represente a informação solicitada.

A Interface de administração é responsável pelas tarefas de configuração da apli-


cação contidas neste módulo, incluindo o controle de acesso às interfaces da ferramenta e ao
cadastro de usuários do sistema. Os usuários do sistema são divididos em grupos separados
como: médicos, especialistas, técnicos e auxiliares, os quais não terão os mesmos direitos de
acesso aos módulos desta camada.

Já a outra classe, correspondente aos especialistas das exatas, está diretamente rela-
cionado ao âmbito de pesquisa básica e é responsável, por exemplo, pelo desenvolvimento de
modelos matemáticos, técnicas computacionais, algoritmos de segmentação de imagens médi-
cas, algoritmos de classificação, a fim de auxiliar o diagnóstico médico. É nesta camada que as
ferramentas CAD são desenvolvidas, simuladas e testadas.

Essa classe de usuários é composta pelos seguintes módulos (cfe. Figura 45): (i)
interface de parametrização de algoritmos e modelos; (ii) interface de submissão de tarefas
(dados hipotéticos); (iii) interface para a modelagem e teste de técnicas de visualização e (iv)
interface de administração. A seguir uma breve descrição de cada um deles.

Figura 45: Arquitetura cliente - usuário das exatas.


Fonte: Silva e Aguiar (2009).

A Interface de parametrização de algoritmos e modelos é um suporte dinâmico para


os desenvolvedores de modelos e simulações. Para cada algoritmo e/ou modelo criado neste
módulo faz-se necessária uma interface de parametrização dinâmica para o registro de perfis
72

e informações correspondentes aos diversos algoritmos e/ou modelos cadastrados. Com isso,
um mesmo algoritmo, por exemplo, poderá ter diversos perfis armazenados, o que implicará na
acurácia do mesmo quando for invocado para atuar sobre uma determinada tarefa, lembrando
que cada tipo de algoritmo deverá ter sua interface de parametrização própria.

A Interface de submissão de tarefas (dados hipotéticos) é um suporte para simu-


lações de processamento de demandas (com valores hipotéticos). Para que testes e análises de
modelos ocorram fazem-se necessárias inúmeras simulações sobre um determinado conjunto de
informações, utilizando diferentes parâmetros de algoritmo ou modelos. Assim, uma demanda
poderá ser avaliada tanto em âmbito de desempenho computacional quanto em eficiência de
diagnóstico, valendo-se de uma série de testes e simulações por diversos perfis de algoritmos e
modelos enviados para processamento, através deste módulo de interface.

A Interface para a modelagem e teste de técnicas de visualização é responsável


por desenvolver, testar e unir diferentes técnicas de visualização de informações valendo-se de
metáforas visuais para cada aplicação de algoritmos e modelos matemáticos desenvolvidos. Os
modelos visuais que forem testados e certificados serão disponibilizados como interfaces de
visualização no módulo de demandas de hospitais e postos de saúde.

A Interface de administração é responsável pelas tarefas de configuração da aplica-


ção contidas neste módulo de desenvolvimento, o qual envolve o controle de acesso a determi-
nadas interfaces, manipulação do banco de dados, cadastro de usuários do sistema e níveis de
acesso. Os usuários do sistema são divididos em grupos como: analistas de sistema, cientistas
da computação, programadores e matemáticos, que não terão os mesmos direitos de acesso aos
módulos desta camada.

Nesta camada servidor, a arquitetura prevê dois módulos, a saber: (i) a gerência dos
recursos, situado na camada middleware, e (ii) processamento e armazenamento, situados na
camada recursos do servidor.

O objetivo da classe de gerência de recursos é prover o gerenciamento de todos os


aspectos referentes a uma demanda submetida ao processamento de alto desempenho. Esse
gerenciamento pode ser uma simples requisição de uma informação armazenada no banco de
dados, como também uma complexa tarefa de escalonamento referente às demandas submetidas
ao processamento de alto desempenho, em que algumas tenham prioridade sobre outras.

A classe de gerência de recursos é composta pelos seguintes módulos (cfe. Figura 46):
(i) framework iPar, (ii) gerente de aplicações e (iii) framework iFuz.
73

Figura 46: Arquitetura servidor - gerência de recursos.


Fonte: Silva e Aguiar (2009).

O framework iPar, concebido no PPGINF/UCPEL1 , é um framework de caráter livre


que foi desenvolvido em Java com o objetivo de controlar a distribuição de tarefas em aplica-
ções paralelas de alto desempenho. Isto implica no gerenciamento e na distribuição de uma
série de informações particionadas, para que sejam processadas simultaneamente em agregados
de computadores. Seu modelo teve como foco plataformas tipo cluster, que utilizam sistema
operacional Linux e sistema de arquivos compartilhado entre os nodos.

O gerente de aplicações é um serviço residente no middleware e tem como objetivos


principais gerenciar as tarefas que forem submetidas para processamento, através da camada
cliente, gerenciar a comunicação e as prioridades entre as tarefas e seu processamento através
do ambiente iPar, bem como, a alocação dos resultados obtidos na base de dados. É considerado
um serviço central da aplicação, visto que, tem a responsabilidade de garantir a comunicação e
o gerenciamento das camadas cliente e servidor.

O frameworkiFuz surgiu da necessidade para contemplar algumas simulações aborda-


das pelo projeto M-IPE. A linguagem Java foi utilizada para o desenvolvimento do módulo e,
ele é responsável por prover o suporte de processamento e modelagem de informações referente
ao modelo de classificação fuzzy proposto.

Já a classe de processamento e armazenagem está relacionada aos recursos de hard-


ware disponíveis. Seus principais objetivos são prover recursos para processamento de alto
desempenho e garantir o armazenamento de todas as informações necessárias para o funciona-
mento do projeto M-IPE.

A classe de processamento e armazenagem é composta pelos seguintes módulos (cfe.


Figura 47): (i) cluster/grid e (ii) banco de dados.
1
Programa de Pós-Graduação em Informática da Universidade Católica de Pelotas
74

Figura 47: Arquitetura servidor - processamento e armazenagem.


Fonte: Silva e Aguiar (2009).

O cluster/grid é o recurso de hardware para o processamento de alto desempenho.


Atualmente a infraestrutura disponível é um cluster que totaliza 12 nodos, chamado de H3P.
Localizado na UCPEL, vale-se de uma topologia de rede do tipo barramento e conexão Gigabit
Ethernet. O mecanismo de gerência de comunicação dá-se via RMI (Remote Method Invoca-
tion).

O banco de dados armazena diversos tipos de informações como dados de paciente,


dados resultantes de análises de modelos e simulações de algoritmos, perfis de funcionamento
de algoritmos, perfis de funcionamento de modelos de visualização de informação, registro de
tarefas submetidas ao processamento e demais informações que atendam às necessidades da
ferramenta. Estes dados serão disponibilizados a toda a arquitetura da aplicação em nível de
cliente. O banco de dados postgreSQL foi escolhido para a aplicação e seu modelo foi projetado
utilizando como premissa a possibilidade de integração com outras bases de dados.

6.3 Modelagem do Fluxo de Trabalho

Como já observado, o funcionamento da arquitetura está orientado para atender as de-


mandas específicas do HUSFP. Com isso, o fluxo de dados referente à manipulação das infor-
mações — onde usuários, recursos, interfaces e demandas interagem entre si — está modelado
para trabalhar conforme ilustrado na Figura 48, que demonstra de maneira numerada os atores
atuando em suas respectivas funções nas camadas da arquitetura proposta.
Figura 48: Atores da arquitetura M-IPE
75
76

Abaixo temos a especificação de cada ator e suas respectivas funções numeradas con-
forme ilustrado na Figura 48:

1. Hospitais e/ou postos de saúde;

2. Conexão com a internet;

3. Paciente;

4. Informações cadastrais do paciente;

5. Recurso de hardware para a recepcionista armazenar as informações cadastrais do paci-


ente utilizando a interface de cadastro e informações do paciente (ver também Figura
44);

6. Recepcionista;

7. Técnico(a) do setor de radiologia, responsável por adquirir informações do paciente em


forma de imagens;

8. Imagem de raio-X do paciente em filme;

9. Digitalização da imagem de raio-X utilizando equipamentos para alta qualidade (placa de


fósforo e leitora digital, por exemplo);

10. Recurso de hardware para armazenamento da imagem digitalizada e/ou submissão de


demandas hospitalares para avaliação, gerenciados pelas interfaces de cadastro e infor-
mações do paciente e interface de submissão de tarefas (dados reais), respectivamente
(ver também Figura 44);

11. Técnico ou Médico com permissão para efetuar as funções do ítem anterior;

12. Universidade Católica de Pelotas e/ou outras Universidades;

13. Pesquisadores de graduação, pós-graduação e professores das ciências exatas envolvidos


no contexto do projeto M-IPE;

14. Recursos de hardware para os pesquisadores desenvolverem suas pesquisas valendo-se


de interfaces de parametrização de algoritmos e modelos e interface de submissão de
tarefas (dados hipotéticos) (ver também Figura 45);

15. Imagens e informações médicas sob sigilo médico, disponíveis no banco de dados para
serem utilizadas nas simulações dos modelos;
77

16. Demanda submetida para processamento, mas aguardando em uma lista de espera, geren-
ciada pelo “gerente de aplicação” a finalização de outra demanda com prioridades maior;

17. Recurso de hardware residente na camada de middleware para contemplar o framework


iPar e o gerente de aplicação, que são os responsáveis pela gerência do processamento
de alto desempenho e das informações submetidas para processamento, respectivamente
(ver também Figura 46);

18. Framework iPar gerenciando o processamento de alto desempenho de uma demanda;

19. Recurso computacional (cluster/grid) para processamento de alto desempenho (ver tam-
bém Figura 47);

20. Processamento de uma demanda apresentando alto desempenho computacional;

21. Recurso de hardware para contemplar o banco de dados (ver também Figura 47);

22. Informações dos pacientes sob sigilo médico armazenadas no banco de dados e prontas
para serem requisitadas pelo “gerente de aplicação” para processamento;

23. Professor pesquisador com permissão para gerenciar a interface administrativa e/ou
usuário com permissão para atender à interface para criação de técnicas de visuali-
zação (ver também Figura 45);

24. Recursos de hardware para atender ao usuário do item anterior;

25. Informações referentes aos desempenhos dos algoritmos de segmentação e classificação


de imagens, bem como levantamento dos dados para criação de técnicas de visualização.;

26. Usuário da área da saúde com nível máximo de prioridade no sistema, neste caso Médi-
cos;

27. Dispositivo móvel para notificar o médico de alguma demanda que foi submetida ao pro-
cessamento e já está com seus resultados disponíveis para o diagnóstico;

28. Recurso de hardware para gerenciamento da interface administrativa e interface de vi-


sualização de diagnóstico assistido (ver também Figura 44);

29. Laudo do paciente obtido com auxílio do diagnóstico informado após a submissão da
demanda, às ferramentas desenvolvidas pelos pesquisadores da área das ciências exatas;

30. Arquivamento do laudo.


78

O processo terá início quando os usuários (26 e 23) definirem uma área de pesquisa
com contribuições e necessidades em comum, utilizando a informática como atividade meio e
as informações provenientes da área da saúde.

Com isso, o usuário (26) aciona seus subordinados para fornecerem as informações
necessárias para que os usuários (13) comecem a realizar as pesquisas.

Os pesquisadores (13) utilizarão recursos e interfaces já disponíveis pela arquitetura


para: criar, simular e testar os algoritmos e/ou modelos que melhor atendam à necessidade
da pesquisa em questão. É importante salientar que, caso a pesquisa exija um elevado grau de
exploração, será necessário que os pesquisadores (13) criem novos recursos e/ou interfaces para
atender às necessidades exigidas.

Após obter resultados satisfatórios, os pesquisadores (13) disponibilizarão uma série


de ferramentas e interfaces relacionadas à pesquisa, para que os usuários da área da saúde (26,
11 e 7) comecem a testá-las e validá-las em casos reais. Nesta fase de testes de casos reais, se for
detectada alguma anormalidade com qualquer componente da ferramenta, volta-se ao estágio
anterior para corrigir os problemas encontrados.

6.4 Considerações Finais

Essa arquitetura fornece suporte específico aos sistemas voltados para área médica
(CAD), apresentando alto desempenho computacional, sendo orientada a atender às demandas
oriundas das necessidades do HUSFP dentro das possibilidades da UCPEL.

Contudo, ela funciona à parte de qualquer outra tecnologia (arquitetura/protocolo)


existente em um hospital convencional, sejam sistemas de PACS, RIS ou qualquer outro. Sendo
assim, ela atende a outros centros, de grande porte tecnológico (hospitais) ou não (postos de
saúde).

Assim, existe a possibilidade de integrações entre sistemas sem restrições de proto-


colos (como o HIS, que armazena informações do paciente, entre outras.) como parte da
arquitetura proposta, ou até mesmo a aderir a algum protocolo conhecido para transferên-
cia/armazenagem de informações médicas. Entretanto, nesta proposta essa questão não foi
analisada e, em princípio, ainda está fora de questão.
79

7 O Sistema Proposto

Este capítulo tem como propósito abordar os métodos de segmentação de imagens


desenvolvidos, a metodologia para extração das informações da imagem quanto à densidade
mineral óssea, o sistema de classificação fuzzy para auxílio ao diagnóstico e o modelo de pro-
cessamento de alto desempenho.

7.1 Considerações Iniciais

O projeto M-IPE, no qual esta proposta está inserida, foi aprovado pelo comitê de
ética em pesquisa da UCPEL em 2008 e segue todas as normas brasileiras e internacionais de
pesquisas em seres humanos.

Neste sentido, apresenta-se proposta de desenvolvimento de uma ferramenta compu-


tacional para viabilizar o diagnóstico e a administração de terapia com custo operacional redu-
zido, a partir do uso de raio-X convencional e de algoritmos para segmentação e classificação
de imagens, demonstrando o tratamento das incertezas decorrentes das diferentes etapas do
processamento.

Para este propósito, são utilizados diversos recursos de pesquisa teórica e aplicada.
Ainda, aplicam-se algoritmos genéticos na segmentação da imagem original, utilizando o par-
ticionamento quadtree. Também, a classificação resultante passa por um processo de fuzzifica-
ção, em que são tratados os valores quantitativos da densidade óssea e os qualitativos dos fatores
de risco. Portanto, os modelos contemplados por este trabalho fornecem as seguintes informa-
ções sobre a densidade mineral óssea: qualitativas, oriundas do modelo fuzzy, e quantitativas,
produtos do modelo de algoritmo genético.
80

7.2 Modelos Propostos

Os modelos propostos foram desenvolvidos para constituir um sistema de simulação


de aspectos dinâmicos no contexto do projeto M-IPE. Na próxima Seção serão abordados o
funcionamento, os módulos da arquitetura utilizados e objetivo geral do sistema.

Assim, os modelos propostos, que tratam de processamento e segmentação de imagens


médicas apresentando alto desempenho, foram criados tinham duas demandas iniciais, a saber:
(i) detectar o padrão da necrose em uma imagem médica adquirida a partir de uma máquina
fotográfica e (ii) calcular a DMO a partir de imagens de raio-X digitalizada por um scanner
(mais detalhes dessas demandas no Capítulo 8 intitulado Estudos de Caso).

Sendo assim, os modelos foram criados de forma dinâmica a fim de contemplar as


exigências das demandas, as quais apresentavam necessidades distintas. Contudo, os quatro
modelos aqui apresentados — algoritmo genético e quadtree, framework iPar, histograma de
luminância e o framework iFuz — são resultantes da evolução das demandas existentes que
foram exigindo funcionalidades cada vez mais robustas. A Figura 49 ilustra a evolução das
demandas e os modelos resultantes.

Figura 49: Evolução e descrição dos modelos propostos.

É interessante destacar que os modelos replicados nas duas demandas (segmentação de


imagem e processamento de alto desempenho) correspondem ao mesmo modelo. Entretanto, na
demanda de DMO percebem-se dois novos modelos (extração da densidade da imagem e clas-
sificação da DMO) os quais fizeram-se necessários para atender essa demanda especificamente.

Outro fator importante é que a demanda da DMO, além de possuir as funcionalidades


da demanda da necrose, está diretamente relacionada aos interesses do setor de radiologia do
HUFSP, tornando-se fundamental para validação desta proposta e, por isso, é a aplicação alvo
dessa, motivação principal no contexto do trabalho.
81

7.2.1 Segmentação de Imagens

No modelo de segmentação de imagens buscou-se desenvolver um algoritmo de seg-


mentação que separasse a região de interesse da imagem submetida ao processamento. O al-
goritmo proposto segue o algoritmo genético canônico e utiliza quadtrees para particionar um
espaço bidimensional recursivamente, subdividindo-o em quadrantes ou regiões.

As regiões podem ter forma quadrada, retangular ou arbitrária, e um dos motivos pela
escolha da segmentação quadtree é o balanceamento da carga a ser processada. Os quadrantes
produzidos constituem a carga a ser distribuída entre os processadores e a divisão ocorre de
forma recursiva até que seja atingido um critério de parada. A figura 50 ilustra o funcionamento
do algoritmo genético quadtree.

Figura 50: Funcionamento do algoritmo genético quadtree recursivo.


Fonte: Silva et al. (2009).

Os parâmetros do algoritmo genético são: (i) tamanho da população (t pop ); (ii) número
de gerações (nger ); (iii) taxa de mutação (tmut ) e taxa de cruzamento (tcru ); (iv) os valores RGB
da região de interesse(intrgb ); (v) a variação do padrão da classificação (∆r , ∆g , ∆b ); (vi) o per-
centual de pontos que caracterizam uma região de interesse (pint ) e (vii) o objetivo da função
( fob j ) que permite a classificação dos candidatos de acordo com a semelhança com o padrão de
interesse (SILVA et al., 2008).
82

Inicialmente o algoritmo considera a imagem como um espaço de busca. Uma popu-


lação inicial é gerada aleatoriamente, sendo que cada individuo é representado por um ponto
(pixel) da imagem, seguindo o parâmetro (t pop ). Destes pontos, a função objetivo ( fob j ) avalia a
semelhança do valor RGB encontrado com o padrão esperado (∆r , ∆g , ∆b ). Se a quantidade de
pontos atingir um percentual satisfatório, então o algoritmo alcançou a porcentagem (intrgb ) e
o quadrante inteiro é classificado como região de interesse e o algoritmo para. Caso contrário,
novos pontos deverão ser avaliados através da função objetivo (SILVA et al., 2008).

Estes novos pontos (indivíduos) são obtidos através dos operadores convencionais de
reprodução: mutação e cruzamento; correspondendo às taxas (tmut ) e (tcru ) e obedecendo o
parâmetro (t pop ).

Estes novos candidatos são avaliados novamente quanto à sua semelhança ao padrão
esperado. Se a população não obtiver um percentual satisfatório de pontos para caracterizar um
quadrante como região de interesse, o processo de reprodução e avaliação da semelhança será
repetido até que a população atinja o número máximo de gerações (nger ) (SILVA et al., 2008).

Se o algoritmo alcança o número máximo de gerações, então o espaço de busca atual é


particionado em novos quadrantes e o algoritmo é executado recursivamente em cada um deles.
O número de partições está associado diretamente ao número de processadores disponível para
a implementação do algoritmo paralelo. Em algumas avaliações, o espaço de busca foi dividido
em até sessenta e quatro quadrantes e seu processo foi distribuído em oito processadores.

Os parâmetros do particionamento quadtree são: (i) particionamento inicial da imagem


(pinicial ); (ii) tamanho intermediário para retorno recursivo à lista de tarefas (tlista ) e (iii) o menor
tamanho factível do quadrante (t f activel ) (SILVA; AGUIAR, 2009).

O parâmetro (pinicial ) define quantas partições do espaço de busca inicial serão criadas
para a execução do algoritmo genético. Como o processo é recursivo, o número de quadran-
tes inúmeras vezes torna-se maior que o número de processadores disponíveis. Neste caso, o
framework iPar gerencia esses quadrantes em uma lista de tarefas (SILVA et al., 2008; SILVA;
AGUIAR, 2009).

Enquanto o quadrante não for considerado região de interesse e não atingir um tama-
nho intermediário definido pelo parâmetro (tlista ), os novos quadrantes originados continuam
retornando à lista de tarefas. Quando um quadrante atingir o tamanho correspondente ao es-
tipulado pelo (tlista ) (i.e quando o quadrante apresentar dimensões inferiores à estipulada pelo
parâmetro) fica inviável encaminhá-lo para a lista de tarefas, pois a perda de desempenho devido
à transmissão e ao tráfego na rede não compensaria a paralelização dessas tarefas.
83

Com isso, o processador que estava aplicando o algoritmo no respectivo quadrante


assume as tarefas de maneira sequencial até obter o resultado desejado, finalizando assim seu
processamento (mais detalhes na Seção 7.2.2 intitulada Processamento de Alto Desempenho)
(SILVA; AGUIAR, 2009).

Portanto, o algoritmo genético só para quando o quadrante é classificado como região


de interesse ou, caso contrário, quando o espaço de busca torna-se muito pequeno para explora-
ção (t f activel ). Este último parâmetro é necessário para obedecer às exigências de desempenho do
algoritmo paralelo e é relacionado à granulosidade mínima que pode ser aplicada aos espaços
de busca (SILVA; AGUIAR, 2009).

As interfaces que fornecem suporte ao algoritmo genético permitem que seja registrado
o perfil do algoritmo em dois âmbitos. O primeiro quanto à função objetivo, cujo propósito é
definir a informação que se deseja procurar em uma imagem e pode ser observada na ilustração
da Figura 51 (a); o segundo diz respeito à precisão e aos respectivos parâmetros do algoritmo
genético podendo ser observada na ilustração da Figura 51 (b).

(a)

(b)
Figura 51: Interface de controle do AG (a) função objetivo (b) parâmetros de precisão

A interface responsável pela parametrização do particionamento quadtree é ilustrada


na Figura 52. Esta parametrização é importantíssima para o processamento de alto desempe-
nho, pois o framework iPar baseia-se nessas configurações para tomar a decisão de subdividir
recursivamente as imagens e obter alto desempenho no processamento.
84

Figura 52: Interface para parametrização quadtree

Em relação à arquitetura do projeto M-IPE, as interfaces ficam alocadas na camada


cliente (especialista das exatas), no módulo de interface de parametrização de algoritmos e
modelos.

7.2.2 Processamento de Alto Desempenho

No contexto do projeto M-IPE existem algumas aplicações responsáveis pelo proces-


samento de alto desempenho, pois as informações até serem processadas apresentando alto
desempenho devem cumprir uma série de requisitos do sistema, que vai desde a gerência inicial
das demandas (disponibilidade de recursos, escalonamento, prioridades, entre outros), passando
pelo gerenciamento do processamento propriamente dito (aplicação dos algoritmos e modelos
sobre as imagens) , até chegar à gerência dos resultados obtidos (coleta dos dados, cruzamento
de informações, notificação, entre outros).

O modelo de alto desempenho apresentado nessa proposta está relacionado ao pro-


cessamento propriamente dito, ou seja, à aplicação que gerencia as imagens para que sejam
aplicados os algoritmos de segmentação em diversos processadores simultaneamente. Vale res-
saltar que o modelo desenvolvido não se restringe à uma demanda específica. Entretanto, as
aplicações paralelizáveis que o utilizar precisam seguir uma especificação que será explicada a
seguir.

Essa aplicação, denominada iPar (internet Parallelization), é um framework de caráter


livre, desenvolvido em Java com o objetivo de controlar a distribuição de tarefas em aplicações
paralelas de alto desempenho. E foi desenvolvido tendo como foco plataformas tipo cluster
que utilizem sistema de arquivos compartilhado (NFS) (SILVA et al., 2008). A figura 53 ilustra a
arquitetura de funcionamento do iPar que será descrita posteriormente.
85

Figura 53: Arquitetura do framework iPar.


Fonte: Silva et al. (2008). Modificado pelo autor.

O modelo inicial do framework iPar utiliza o modelo de paralelismo bag-of-tasks (WIL-


KINSON; ALLEN, 1998) para aplicações paralelas cujo resultado final pode ser obtido particio-
nando o problema em tarefas independentes.

O iPar gerencia a chamada de tarefas em nodos do cluster segundo uma lista de ta-
refas iniciais criada pela aplicação a ser paralelizada (esta será chamada apenas de aplicação
no decorrer do texto). Quando o iPar é iniciado, este executa um shell script1 que deve invo-
car, através de uma chamada (call), a função principal (main) para a referida aplicação. Isso
se faz necessário porque existem diferentes aplicações paralelizáveis, com propósitos distintos,
disponíveis no ambiente iPar.

Contudo, a estrutura de gerenciamento do iPar controla três estruturas que são funda-
mentais para o processamento de alto desempenho, a saber: (i) listas das aplicações paralelizá-
veis; (ii) lista dos nodos e (iii) lista de tarefas.

O iPar administra uma lista de nodos que constituem os processadores disponíveis a


serem utilizados pela aplicação. A lista de nodos é representada pela estrutura de um vetor, em
que cada posição do vetor representa um nodo.
1
Arquivo com diversas linhas de comandos.
86

O primeiro índice do vetor representa o nodo onde a estrutura de gerenciamento (ge-


rente) está alocada, e o restante dos processadores são alocados nos índices seguintes. Os ele-
mentos de cada índice são: (i) endereço (host) do nodo na rede e (ii) o status do nodo, podendo
variar entre: aguardando e processando.

A lista de tarefas também é um vetor onde cada elemento corresponde a outro vetor.
No vetor principal “pai” cada índice corresponde a uma tarefa a ser executada, que resulta no
vetor interno “filho”. O identificador da tarefa é o próprio índice do vetor principal “pai” e este
vetor é preenchido em tempo de execução pela aplicação paralilizável.

Com isso, o vetor interno “filho” possui cinco elementos, a saber: (i) identificador da
tarefa (nome), que será passado pelo método “executa()” da aplicação paralilizável, quando a
tarefa for distribuída; (ii) o status da tarefa, que pode ser: aguardando, processando ou fina-
lizada; (iii) identificador do nodo que está processando a tarefa, correspondente ao índice do
vetor “pai” da lista de nodos; (iv) tempo de início da tarefa e (v) tempo gasto na realização da
tarefa.

Uma aplicação paralelizável deve ser implementada seguindo uma metodologia pré-
definida, a fim de permitir que o iPar (gerente) efetue a execução das aplicações com alto de-
sempenho, eximindo da própria aplicação qualquer relação com esse quesito.

Com isso, uma aplicação paralelizável deve conter três métodos fundamentais para o
gerenciamento da aplicação: (i) o método “inicia()”, que realiza rotinas iniciais do programa
e cria as tarefas iniciais devidamente identificadas para posteriormente serem processadas; (ii)
o método “finaliza()”, que conclui o programa juntando todos os resultados das computações
e (iii) o método “executa(parâmetros)”, que é o único a receber parâmetros e tem autonomia
para chamar outros métodos que não os principais, a fim de manipular os parâmetros recebidos
tornando-se, por isso, o método que contém ou invoca o código paralelizado.

Vale ressaltar que a aplicação paralelizável interage com o gerente via RMI e deve
receber no método principal da classe dois parâmetros indispensáveis: o primeiro é a identi-
ficação da conexão RMI com o gerente, e o segundo é um dos métodos principais referidos
anteriormente (“inicia()”, “finaliza()” ou, “executa(parâmetros)”).

A distribuição das tarefas é gerenciada através de um módulo que monitora a atividade


dos nodos e o estado das tarefas da lista (cfe. Figura 54). Portanto, assim que um nodo livre for
detectado, uma tarefa da lista (status de aguardando) é enviada para processamento. Durante a
execução, qualquer tarefa pode gerar sub-tarefas (quadtree), podendo ser redistribuídas como
novas tarefas da lista (em tempo de execução), retornando para lista com status de aguardando.
87

Figura 54: Módulo de monitoramento dos nodos e o status das tarefas.

Quando a execução de todas as tarefas tiverem sido finalizadas, o iPar finaliza a aplica-
ção paralela agrupando todos os resultados parciais, e notifica o “gerente de aplicação” (contido
em outro módulo da arquitetura M-IPE) para que ele assuma o gerenciamento dos resultados.

7.2.3 Extração de Informações de Densidade

Após o processamento de alto desempenho utilizando os algoritmos genéticos quadtree


propostos, o resultado será uma imagem segmentada contemplando a região de interesse para a
extração de informações quanto à DMO. Assim sendo, umas das estratégias adotada para extrair
a informação necessária foi utilizar o histograma de luminância sobre a imagem segmentada.

Para isso, será necessário possuir um banco de imagens com padrões de normalidade
e anormalidade associadas a uma amostra pré-definida onde, regiões de luminosidade da amos-
tra (imagem) serão estabelecidas para os graus de densidade. A segmentação da imagem deve
garantir que as funções do histograma de luminância mantenham-se dentro de um padrão acei-
tável.

Atualmente o setor de radiologia do HUSFP está fazendo um levantamento utilizando


imagens de raio-X e exames de DMO, oriundos de um aparelho de densitometria em conjunto
com a clínica HAAL, a fim de obter um padrão de regiões de luminância para atender o modelo
proposto.
88

Em experimentos hipotéticos, com o intuito de validar o modelo, foram estabelecidos


padrões de luminância a partir de imagens similares contendo diferentes graus de intensidade,
em que o objeto estudado — sem passar por qualquer fase de processamento ou eliminação de
ruídos — apresentou uma modelo de luminância análogo. À medida que o objeto de estudo
analisado possuía maior intensidade, a função apenas deslocava-se em direção às regiões mais
claras do histograma (mais à direita do histograma) e, com isso, três regiões bem definidas no
histograma foram estabelecidas (cfe. Figura 55).

(a) (b) (c)


Figura 55: Histograma: (a) densidade baixa; (b) densidade média; (c) densidade alta.

Assim, umas das alternativas para extrair as informações correspondentes à densidade


da imagem é considerar o deslocamentos da função de luminância, conforme o padrão apresen-
tado. Ainda não foram definidos valores desse deslocamento, entretanto, já foi possível estabe-
lecer regiões e padrões hipotéticos criados a partir dos histogramas apresentados. A Figura 56
ilustra o modelo hipotético de luminância apresentando regiões de densidade.

Figura 56: Padrão hipotético de luminância apresentando regiões de densidade.

Uma imagem que apresenta qualidade alta mantém um percentual muito alto de inci-
dência de pixels na faixa A. Contudo, quando as amostras foram analisadas apresentando ruídos
observou-se que deveria existir uma faixa de aceitação (B) quanto à qualidade da imagem sob
análise.
89

Sabe-se que quanto melhor for a definição de uma imagem, menor será o percentual
de incidência de pixels nas faixas fora do padrão. Imagens com pouca resolução apresentarão
um percentual elevado de pixel na faixa C (não aceitável) e não serão classificadas.

Assim sendo, o modelo de extração de informações quanto a densidade utiliza valo-


res intervalares, visto que um percentual x de incidência na faixa de aceitação poderá trazer
uma série de incertezas relativas às informações e, assim, prejudicar o diagnóstico na etapa de
classificação.

Os valores intervalares também serão utilizados para suprir alguma anormalidade quanto
à função de luminância do histograma, já que a mesma poderá estar dentro da faixa padrão,
localizada em uma região bem definida, mas não apresentando, porém, a função padrão estabe-
lecida. Isso pode ocorrer por intermédio de uma segmentação irregular cujo resultado carregará
consigo um valor também impreciso. A Figura 57 ilustra dois exemplos hipotéticos de histo-
gramas, no qual os valores resultantes não correspondem ao padrão estabelecido.

Figura 57: Funções de luminância fora do padrão estabelecido.

7.2.4 Sistema Fuzzy para Classificação da DMO

A etapa de classificação, posterior à etapa de extração de informações, tem como ob-


jetivo estabelecer um laudo de auxílio ao diagnóstico relacionado ao estado do paciente em
relação à DMO. Como existe a possibilidade das informações serem vagas, optou-se pela utili-
zação de lógica fuzzy, a fim de minimizar problemas de imprecisão.

Outra alternativa que a modelagem fuzzy oferece para o cálculo da DMO é a utilização
de valores intervalares. Nesse sentido, o sistema processa os dados intervalares individual-
mente, internamente ao sistema, juntando os resultados no final do processamento. Outra opção
é utilizar funções de pertinência intervalares, sendo que essa opção não foi abordada por essa
proposta.
90

Vale ressaltar que o módulo de visualização do projeto M-IPE — localizado na camada


cliente — tem acesso às informações do processamento do sistema fuzzy, uma vez que o referido
módulo é responsável por apresentar os resultados na tela do computador e optar por quais dados
serão visualizados.

O modelo de classificação fuzzy para o cálculo da DMO foi desenvolvido utilizando


interfaces dinâmicas. Essas interfaces foram desenvolvidas de modo a permitir que especialistas
(usuário), com acesso a esse recurso do sistema, pudessem também criar outras modelagens
fuzzy além da apresentada nesta proposta — semelhante ao recurso fuzzy fornecido pelo software
MATLAB2 —, apenas customizando variáveis, informações e adicionando regras de inferência
e regras condicionais (ver Anexo A).

Para suportar essa estrutura dinâmica, tanto de interface como de processamento do


modelo proposto, foi necessário desenvolver um ambiente alocado no middleware, denominado
framework iFuz (internet Fuzzy). O iFuz é o ambiente que fornece suporte e gerenciamento
para executar o processamento do modelo proposto e demais modelos que venham a ser desen-
volvidos. A Figura 58 ilustra a arquitetura do ambiente iFuz.

Figura 58: Arquitetura do ambiente iFuz.

Destaca-se que o “gerente de aplicação” é o módulo encarregado de fornecer o geren-


ciamento das informações, ficando a cargo do iFuz o processamento dos dados. Assim que a
informação for processada, o “gerente de aplicação” é notificado e armazena os resultados no
banco de dados.

A modelagem fuzzy para o cálculo da DMO dispõe de uma modelagem bi-dimensional


do tipo Mamdani, utilizando-se de regras de inferência MIN-MAX associadas às regras condici-
onais para obtenção dos valores de saída, utilizando o cálculo do centróide para defuzzificação
e classificação resultante (MITRA; PAL, 2005; SILVA et al., 2009).
2
É um software interativo de alta performance voltado para o cálculo numérico.
91

Os valores utilizados para modelar as variáveis do sistema são informações hipotéticas.


Entretanto, o setor de radiologia do HUSFP vem fazendo um levantamento dessas informações,
a fim de prover uma modelagem real.

Conforme Equação 7.1 o cálculo do centróide (C) pode ser descrito da seguinte forma:
N é o número de regras disparadas e wi é o grau de ativação na ação consequente yi , corresponde
à pertinência da ação, portanto wi ∈ [0, 1] (MITRA; PAL, 2005).

N
P
wi yi
i=1
C= N
(7.1)
P
wi
i=1

As regras de inferência MIN-MAX têm o propósito de originar uma relação entre os


termos das variáveis de entrada associadas aos termos da variável de saída, relacionado à tabela
de regras, como uma multiplicação de matrizes, substituindo-se o produto pelo mínimo e a
soma pelo máximo. Esse método foi proposto por Mamdani e Assilian (1975) e é amplamente
utilizado em regras de inferência.

O sistema para o cálculo da DMO efetua a fuzzificação de dois valores, um correspon-


dente à idade do paciente e o outro referente à densidade extraída do processamento de imagem
(SILVA; AGUIAR, 2009). Ambas variáveis foram modeladas utilizando funções trapezoidais, e a
variável linguística idade utilizou três termos linguísticos: jovem, adulto e idoso; variando
conforme a escala de 20 a 100 (ver Figura 59 (a)). A variável densidade utilizou três termos
linguísticos: baixa, média e alta que variam entre uma escala de 0.25 à 1.75 (ver Figura 59
(b)).

(a) (b)

Figura 59: Modelagem fuzzy, variáveis (a) idade; (b) densidade.


92

Os valores de saída do sistema são representados pela variável doença, que diz respeito
à DMO, e utilizou os seguintes termos: normal, osteopenia e osteoporose, variando entre
uma escala de 1 a 10 (ver Figura 60 (a)). Sendo assim, as variáveis bidimensionais de entrada
(idade e densidade) e a variável de saída (doença) estão interligadas por uma base de regras, e
interagem de acordo com os valores de entrada do sistema. A Figura 60 (b) ilustra a modelagem
do sistema, baseada, principalmente, na base de regras que será descrita a seguir.

(a)
(b)
Figura 60: Modelagem fuzzy: (a) variáveis de saída; (b) regras do modelo

A base de regras foi modelada a partir de uma tabela de relação entre os termos das
variáveis de entrada associado à doença (cfe. Tabela 16). Com isso, existe uma regra para cada
termo linguístico de entrada multiplicados entre si, resultando em nove regras condicionais as-
sociadas aos seus respectivos termos de saída. A regras condicionais seguem o mesmo formato
do seguinte exemplo: SE densidade baixa E idade jovem ENTÃO osteoporose.

Tabela 16: Tabela de regras entre às variáveis estipuladas e os termos da doença.


Densidade × Idade Jovem Adulto Idoso
Baixa Osteoporose Osteoporose Osteoporose
Média Osteopenia Osteopenia Osteopenia
Alta Normal Normal Normal

É importante ressaltar que outras regras condicionais podem ser inseridas no contexto
da base de conhecimento. Caso um especialista julgue necessário adicionar alguma informa-
ção posterior à modelagem, regras como modificadores linguísticos, condições, proposições
poderão ser inseridas no modelo a fim de tornar o sistema ainda mais robusto.

É comum, por exemplo, que a osteoporose ocorra em pessoas idosas. Com isso, uma
regra linguística modelada para identificar esses casos pode inserir um modificador linguístico
na variável de saída com o objetivo de emitir um “alerta” suave, pois é usual esse tipo de
classificação para pessoas idosas.
93

Outra alternativa que o modelo oferece está relacionada aos fatores externos. Existem
fatores de risco relacionados ao estilo de vida do paciente, que podem agravar ou acelerar o
estado da doença. Assim sendo, o sistema possui uma opção na modelagem que atende a essas
informações, constituindo, assim, um percentual de influência diretamente relacionado ao valor
de defuzzificação do sistema.

Nesse sentido, o especialista atribui um percentual x para um grupo de fatores externos


e, à medida que as informações do paciente enquadram-se em alguma classe de fatores, essas
informações são relacionadas com o valor de defuzzificação, podendo, assim, impactar na saída
do sistema fuzzy. A Tabela 17 contempla alguns fatores de risco admissíveis.
Tabela 17: Tabela de fatores externos.
Fatores Externos Admissíveis
Alcoolismo
Fumo
Sedentarismo
Fratura Prévia
Histórico de Fraturas
Baixo Peso
Diabetes

7.3 Funcionamento do Sistema

O objetivo do sistema proposto é permitir que o especialista das ciências exatas possa
simular uma série de aspectos dinâmicos, referente ao processamento de imagens médicas, a
partir da parametrização de algoritmos e modelos apresentando alto desempenho.

Para isso, os modelos disponibilizados foram: algoritmos genéticos, particionamento


quadtree e o modelo de classificação fuzzy. Os frameworks iPar e iFuz foram desenvolvidos para
fornecer suporte aos respectivos modelos. Com isso, o sistema de simulação de aspectos dinâ-
micos resultante dos modelos propostos visa identificar possíveis técnicas de processamento de
informações médicas referentes à detecção de necrose e ao cálculo da DMO.

Entretanto, esse sistema não se restringe apenas aos modelos propostos, pois ele foi
estruturado de maneira dinâmica através de suas interfaces, permitindo assim que, à medida
que novos modelos de algoritmos forem sendo adicionados no projeto, os usuários, através das
interfaces de parametrização e submissão, terão a opção de utilizar os modelos para simula-
ção. Vale ressaltar que novos modelos, para serem incorporados pelo M-IPE devem seguir as
especificações dos frameworks existentes.
94

Quando esse usuário especialista (cientista da computação, matemático, analista de


sistema) obtém sucesso em alguma simulação utilizando os modelos disponíveis pelo M-IPE,
é estabelecida uma etapa de desenvolvimento a fim de fornecer suporte a suas descobertas. O
objetivo é disponibilizar essa nova descoberta, inserido-a em recursos específicos tais como:
chip de computador e sistemas de apoio ao diagnóstico e fornecer esse recurso à classe de
usuários da saúde (médicos, doutores, técnicos) para que as novas técnicas sejam validadas
frente às informações reais.

O funcionamento do sistema de simulação tem algumas etapas bem definidas, a saber:


(i) parametrização dos algoritmos e modelos, onde são definidas as características dos algo-
ritmos e modelos (ex. precisão do algoritmo, técnica de processamento, tipo de classificação,
etc.); (ii) interface de submissão das tarefas, onde são escolhidos métodos (algoritmos) e in-
formações (imagens) para serem processadas(esse conjunto de informações recebe o nome de
tarefa); (iii) gerente de aplicação, responsável por identificar os tipos de tarefas e disponibilizar
os recursos necessários, além de gerenciar os resultados e armazená-los no banco de dados. A
Figura 61 ilustra essas etapas.

Figura 61: Funcionamento do sistema de simulação de aspectos dinâmicos.


95

É interessante ressaltar que o framework iPar e o framework iFuz são indispensáveis


para a simulação dos aspectos da DMO, pois fornecem todo o suporte de processamento e
gerenciamento. No caso da aplicação na detecção de necrose, o iFuz não é utilizado. Com isso,
o gerente de aplicação é o responsável por identificar as tarefas que estão sendo encaminhadas
para processamento, de modo a escalonar as demandas por tipo e prioridade, por exemplo.

Assim, o sistema permite que um usuário possa “disparar” uma série de simulações de
uma vez, utilizando as interfaces e sua variedade de algoritmos e modelos disponíveis. Com
isso, o usuário informa sua preferência quanto à notificação referente à finalização do processa-
mento das tarefas (ex. notifica uma a uma ou apenas quando todo o conjunto de tarefas forem
processadas) e, aguarda seus resultados. Um caso recorrente da aplicação é o processamento
noturno, em que o usuário “dispara” uma série de tarefas no final de seu expediente, e no início
de sua jornada de trabalho no dia posterior os resultados já estão disponíveis.

Com isso, para submeter as tarefas o usuário precisa atender às exigências correspon-
dentes ao modelo desejado, e isso é gerenciado através das interfaces de submissões, pois são
nelas que os perfis dos algoritmos são invocados antes de serem processados. A Figura 62
ilustra um exemplo de submissão de DMO.

Figura 62: Interface de submissão para cálculo da DMO


Conforme observado, para a submissão da DMO a interface correspondente atende à
necessidade de contemplar uma modelagem fuzzy que se faz necessária para classificação da
mesma. Logo, fica a cargo das interfaces de submissões invocar os modelos necessários para
que seja possível a aplicação dos parâmetros correspondentes sobre a informação médica.
96

7.4 Considerações Finais

Ainda não existem, por exemplo, padrões suficientes que possam definir todas as dire-
trizes para a análise envolvendo imagens com o uso de raio-X e o auxílio de computador. Neste
sentido, os modelos propostos visam estabelecer uma ferramenta computacional utilizando al-
goritmos evolutivos para segmentação das imagens médicas e métodos de vanguarda, como
lógica nebulosa e matemática intervalar, para calcular tanto informações qualitativas quanto
quantitativas.

Além da elaboração de uma arquitetura para fornecer suporte ao projeto M-IPE, esta
proposta contemplou algumas áreas bem definidas, a saber: (i) processamento paralelo e dis-
tribuído na elaboração do framework iPar para processamento de alto desempenho; (ii) proces-
samento de imagens, utilizados na segmentação e extração das informações da imagem; (iii)
sistema CAD, na elaboração de um sistema fuzzy para auxílio ao diagnóstico da DMO; (iv)
simulação de aspectos dinâmicos, uma vez que o sistema desenvolvido permitiu analisar uma
grande quantidade de informações e (v) protopipação de interfaces, para utilização dinâmica
dos modelos relacionados aos especialistas das exatas e para elaboração de simulações de as-
pectos dinâmicos.

Vale ressaltar que os modelos propostos propendem para um modelo totalmente dinâ-
mico, a fim de permitir que os usuários (exatas) interajam com os diferentes tipos de algoritmos
e modelos implementados, e uma série de opções para tratar os diferentes tipos de informações
médicas oriundas das demandas do HUSFP sem a ajuda de um especialista da computação.

Estes modelos propostos até o momento são os primeiros protótipos de simulação a


se integrarem no projeto M-IPE, viabilizando também a validação do ambiente. No endereço
<http://olaria.ucpel.tche.br/agppi/doku.php> podem ser encontrados os modelos de segmenta-
ção já desenvolvidos e os protótipos de modelos em desenvolvimento, uma vez que o ambiente
está em constante evolução. Além disso, o ambiente de processamento paralelo e distribuído
desenvolvido e os recursos incorporados ou em desenvolvimento podem ser acessados no en-
dereço <http://olaria.ucpel.tche.br/ipar-doc/doku.php>. O mesmo ocorre para o ambiente de
classificação fuzzy <http://olaria.ucpel.tche.br/ifuz-doc/doku.php>.
97

8 Estudos de Caso

Este capítulo apresenta as informações referentes aos objetos que foram utilizados para
os testes dos modelos, bem como as informações técnicas dos dispositivos, resultados obtidos e
os trabalhos relacionados.

8.1 Considerações Iniciais

A infraestrutura utilizada para a realização das simulações de alto desempenho foi


realizada no cluster H3P, localizado na UCPEL, possuindo 12 processadores Athlon XP 2400+,
com 2.0 GHz de frequência. Nesse contexto foram realizados dois estudos de caso, sendo que
o desempenho do algoritmo proposto foi avaliado.

O critério utilizado para avaliar o desempenho do algoritmo proposto em um proces-


sador (sequencial) e em vários processadores simultaneamente (paralelo) foi através do cálculo
de speedup1 (cfe. Equação 8.1) onde, p é o número de processadores, T 1 é o tempo da execução
sequencial e T p é o tempo de execução do algoritmo com p processadores.

T1
speedup = (8.1)
Tp

Com isso, os estudos de caso tinham duas frentes bem definidas, a saber: (i) detecção
de necrose, na qual algoritmo proposto deveria informar a região necrosada de uma imagem e
(ii) o cálculo da DMO, onde o objetivo do algoritmo era localizar a estrutura óssea da imagem.

Sendo assim, as imagens utilizadas no primeiro estudo foram digitalizadas utilizando


uma câmera digital Panasonic DMC-LS1 de quatro Megapixel2 . Já para o segundo estudo,
onde as imagens eram em filme, obtidas a partir de raio-X convencional, a digitalização ocorreu
utilizando um scanner HP modelo scanjet 4470c e com uma resolução fixada em 300 DPI3 .
1
Em PPD speedup refere-se o quanto um algoritmo paralelo é mais rápido que um algoritmo sequencial.
2
Um milhão e vinte quatro mil pixels, determina o grau de resolução de uma imagem.
3
Abreviatura, do Inglês, significa pontos por polegada.
98

8.2 Objetos de Estudo e Resultados

Inicialmente, o algoritmo proposto foi avaliado quanto à sua capacidade de identificar


alguns tipos de estruturas em uma imagem. Assim, pôde-se constatar a capacidade de segmen-
tação desse modelo e identificar o comportamento do AG no espaço de busca. Uma estrutura
de forma circular foi escolhida (uma bola de basquete) que representava 27.77% da imagem,
possuindo uma resolução de 500×500 pixel (ver Figura 63 (a)).

Assim sendo, o AG quadtree proposto, por ter características evolucionárias não uni-
formes, não procedeu de maneira similar para todos os quadrantes da estrutura, uma vez que
a mesma era simétrica (ver Figura 63 (b)), e resultou em uma segmentação de aproximada-
mente 29.90% de identificação do objeto. Esse algoritmo levou 61 segundos executando em um
processador (sequencial), sendo que nesse tempo deve-se contabilizar o processamento (equi-
valente a 75% do tempo total) e a construção do resultado (equivalente a 25% do tempo total),
resultando em uma nova imagem segmentada (cfe. Figura 63 (c)).

(a) (b) (c)


Figura 63: Imagem: (a) original; (b) particionamento quadtree; (c) segmentação resultante

Quando o processamento dessa mesma imagem utilizou o suporte do framework iPar


e o recurso de cinco processadores, o tempo de execução total foi de 26 segundos, obtendo um
speedup de 2.34, validando assim o primeiro modelo desenvolvido neste trabalho. Entretanto,
apesar de identificar 1.32% a mais de informação contida na imagem, essa estratégia foi ado-
tada como referência para os processamentos, pois é preferível diagnosticar uma informação
inexistente, do que não diagnosticar uma informação existente no contexto.

Além disso, dois aspectos importantes foram observados. O primeiro deles dizia res-
peito ao ganho de desempenho ao classificar um quadrante de tamanho grande, pois o algoritmo
não varre todo espaço de busca para classificar uma região e, quando um quadrante com dimen-
sões maiores é inicialmente classificado (como região de interesse ou não), o algoritmo não
99

efetua mais nenhum procedimento sobre o referido quadrante, ou seja, nesses quadrantes o al-
goritmo proposto obtém um ganho de desempenho em relação aos algoritmos que varrem toda
a imagem.

A segunda observação dizia respeito à parametrização, pois os valores utilizados nesse


momento não haviam sido tratados para o problema, dando indícios de que os resultados me-
lhorariam à medida que os parâmetros fossem aprimorados.

Com isso, o algoritmo passou a exigir do usuário a escolha entre dois aspectos fun-
damentais para segmentação da imagem. O primeiro era o tempo de execução do algoritmo,
quanto mais precisão era exigida, maior o tempo de execução, e o segundo era a precisão pro-
priamente dita, que estava diretamente relacionada com o problema a ser classificado.

Então, o algoritmo delegou ao usuário (conhecedor de suas necessidades) definir a


melhor opção (precisão × tempo) para segmentar uma imagem, parametrizando o algoritmo de
tal forma que três tipos de precisão foram constituídas, a saber (i) baixa; (ii) média e (iii) alta.

Assim, o AG permaneceu com algumas características iniciais de parametrização, al-


terando apenas o percentual referente à função objetivo para cada caso. Com isso, quando o
percentual de indivíduos da população fosse inferior ao percentual (baixo) definido, o quadrante
era classificado como pouco interesse e, quando o percentual de indivíduos da população fosse
superior ao percentual (alto) definido, o quadrante era classificado como região de interesse. A
Tabela 18 ilustra os valores para os principais parâmetros do AG.

Tabela 18: Principais parâmetros do algoritmo genético proposto.


população inicial taxa de reprodução taxa de mutação função objetivo (x)
baixo 10% do quadrante 0.8 0.05 25% > x > 75%
médio 10% do quadrante 0.8 0.05 15% > x > 85%
alto 10% do quadrante 0.8 0.05 5% > x > 95%

Vale ressaltar que, quando o percentual de indivíduos da população se mantivesse entre


o percentual baixo e alto da função objetivo, e o número de gerações de uma população atingia
o valor estipulado, essa região era particionada em novos quadrantes (quadtree). Isso só poderia
ocorrer até um tamanho determinado para a região (tamanho factível), nesse caso, a região era
classificada como região sem interesse.

Outro destaque é o de que o método elitista foi adotado e 20% dos melhores indivíduos
sempre serão transferidos para as próximas gerações, os outros 80% são cruzados utilizando a
técnica roleta.
100

Já o particionamento quadtree também influenciou significativamente nos resultados


da segmentação, estando suas parametrizações diretamente relacionadas aos níveis de precisão
do algoritmos proposto, conforme ilustra Tabela 19. Observou-se também que, quadrantes
inferiores a 50 pixels de largura, quando retornavam para uma lista de tarefas recursivamente
originando quatro novos quadrantes, apresentavam um custo de comunicação alto para o tempo
de processamento efetivo. Então, quando os quadrantes atingiam tamanhos inferiores a essa
dimensão, seu processamento era completado de forma sequencial.

Tabela 19: Principais parâmetros da quadtree classificadas por precisão.


partição inicial partição retorno recursivo à lista tamanho factível
baixo 16 quadrantes menor 50 pixels largura menor 28 pixels largura
médio 64 quadrantes maior 50 pixels largura menor 16 pixels largura
alto 256 quadrantes maior 50 pixels largura menor 4 pixels largura

Outra observação interessante nesse caso é que, quanto maior o tamanho da partição
inicial da imagem, maior o risco do AG desconsiderar pequenas informações (função objetivo)
sobre o quadrante, funcionando como um filtro. Assim, interpretou-se que, quando se neces-
sitava de maior precisão, tanto o tamanho factível do quadrante deveria ser mínimo, como o
particionamento inicial deveria conter regiões menores, resultando em um maior número de re-
giões (maior carga computacional a ser processada). Para a referida imagem, a partição inicial
com mais de 256 quadrantes gerou partes muito pequenas e o custo de comunicação foi bastante
elevado.

Com isso, observou-se que o algoritmo com precisão alta detectou a informação con-
tida na imagem e não excedeu 1% de informação extra em relação à imagem analisada (ver
Figura 63 (a). Entretanto, obteve-se um tempo de execução de aproximadamente 120 segundos
para processar (sequencialmente) e montar o resultado. Quando a precisão média foi utilizada
o algoritmo excedeu até 2% da informação contida na imagem e executou o processamento
sequencial em aproximadamente 90 segundos. E, para a precisão baixa, a execução sequencial
levou aproximadamente 60 segundos e a informação não excedeu 3% da informação contida na
imagem.

Entretanto, vale ressaltar que a imagem analisada nesses testes tinha um grau de com-
plexidade baixo e os parâmetros obtidos a partir dos resultados da segmentação iniciais tiveram
de ser reavaliados, pois as imagens dos problemas reais apresentavam complexidade mais ele-
vada, conforme observado nas próximas seções.
101

8.2.1 Resultados para a Detecção de Necrose

O estudo de caso que levava em consideração a detecção da necrose a partir de uma


imagem digitalizada teve como objetivo validar o método desenvolvido baseado em algoritmos
genéticos e particionamento quadtree, utilizando o ambiente iPar para processamento de alto
desempenho e atendendo à uma demanda específica de pesquisa na UCPEL.

A relevância da pesquisa estava na integração dos efeitos mais precoces possíveis de


uma droga antioxidante e oxigenação hiperbárica sobre a cicatrização e na possibilidade de
fazer predições de comportamento conforme o padrão apresentado pela necrose (CYNROT et al.,
2004).

Os modelos de experimentação utilizados foram animais devidamente autorizados por


comitês de ética em pesquisa vinculados ao COBEA que determinam que as amostras devem
ser em número suficiente e apenas o necessário para realizar os experimentos, sem causar da-
nos e mortes desnecessárias em cobaias. Com isso, as imagens utilizadas nas pesquisas estão
ilustradas pela Figura 64.

(a) (b)
Figura 64: Modelos de experimentação animal (a) modelo 1 (b) modelo 2

Os testes a seguir são resultantes de simulações efetuadas na amostra correspondente


a Figura 64 (a) que possuía uma necrose real de 6.40% relativa ao contexto da imagem a uma
resolução de 1102 × 826.

Assim sendo, foram utilizados os três tipos de precisão para detecção da necrose, onde
apenas os parâmetros de particionamento inicial foram alterados, a fim de avaliar resultados de
desempenho e classificação da necrose. Com isso, a imagem foi particionada em 64, 16, 4 e 1
quadrantes iniciais (ver Figura 65).
102

(a)

(b)

(c)
Figura 65: Partição inicial: (a) 64 quadrantes; (b) 16 quadrantes; (c) 4 quadrantes.

Assim, foram produzidos resultados utilizando o ambiente iPar, onde oito processado-
res foram utilizados para processamento e mais de cem simulações foram realizadas para cada
grau de precisão do algoritmo. Os resultados foram obtidos com base em informações estatís-
ticas, entretanto, é difícil definir o comportamento do algoritmo genético, uma vez que este é
baseado na evolução natural e possui comportamento estocástico.
103

Na Tabela 20, referente ao grau de aproximação alto do algoritmo, é possível observar


que: (i) o speedup da aplicação foi de 3.75; (ii) a classificação resultante, em média, não excedeu
1.2% da informação real existente na imagem; (iii) o particionamento de 16 quadrantes obteve
melhor tempo médio de execução e (iv) a melhor média de classificação resultante é da partição
inicial com 64 quadrantes.

Tabela 20: Resultados para necrose, precisão alta.


# quadrantes resolução # processadores precisão tempo (s) área necrose
1 1102×826 1 Alta 263 7.13%
4 551×413 8 Alta 100 7%
16 276×207 8 Alta 70 6.90%
64 138×104 8 Alta 71 6.83%

Na Tabela 21, referente ao grau de aproximação médio do algoritmo, é possível obser-


var que: (i) o speedup da aplicação foi de 4.90; (ii) a classificação resultante, em média, não
excedeu 2.5% da informação real existente na imagem; (iii) o particionamento de 16 quadrantes
obteve melhor tempo médio de execução e (iv) a melhor média de classificação resultante é da
partição inicial com 64 quadrantes.

Tabela 21: Resultados para necrose, precisão média.


# quadrantes resolução # processadores precisão tempo (s) área necrose
1 1102×826 1 Média 241 8.57%
4 551×413 8 Média 73 8.28%
16 276×207 8 Média 49 8.02%
64 138×104 8 Média 51 7.97%

Na Tabela 21, referente ao grau de aproximação baixo do algoritmo, é possível obser-


var que: (i) o speedup da aplicação foi de 5.36; (ii) a classificação resultante, em média, não
excedeu 4.5% da informação real existente na imagem; (iii) o particionamento de 16 quadrantes
obteve melhor tempo médio de execução e (iv) a melhor média de classificação resultante é da
partição inicial com 64 quadrantes.

Tabela 22: Resultados para necrose, precisão baixa.


# quadrantes resolução # processadores precisão tempo (s) área necrose
1 1102×826 1 Baixa 220 10.47%
4 551×413 8 Baixa 57 9.94%
16 276×207 8 Baixa 41 9.51%
64 138×104 8 Baixa 42 9.22%
104

Sabe-se que o AG é um algoritmo aproximativo. Com isso, percebe-se que os mesmos


parâmetros que ora identificaram informação com precisão, ou seja, exatos 6.40% de necrose,
ora identificaram informação inferior a 1% da necrose existente, ou seja, 5.40% de necrose.
Sendo assim, essas parametrizações não foram relacionadas, pois se desconsiderou a hipótese
de o algoritmo proposto detectar menos informação que a informação real.

Com isso, a classificação resultante relativa à detecção da necrose para o grau de apro-
ximação máximo do algoritmo proposto detectou aproximadamente 7.10% de região necrosada
em média (cfe. ilustrado na Figura 66 (a)). Já a classificação resultante da precisão média de-
tectou aproximadamente 8.60% de região necrosada em média (cfe. ilustra Figura 66 (b)), e
a classificação resultante com precisão baixa detectou aproximadamente 9.50% de necrose na
imagem em média (ver Figura 66 (c)).

(a) (b) (c)


Figura 66: Segmentação da necrose obtida com precisão (a) alta; (b) média; (c) baixa

Assim sendo, pôde-se fazer algumas observações interessantes, a saber: (i) quanto
menor a precisão do algoritmo melhores os tempos obtidos; (ii) uma imagem particionada ini-
cialmente em muitos quadrantes está associada a um custo computacional grande em relação à
taxa de comunicação devido à quantidade de imagens (tarefas) existentes; (iii) em contrapartida,
um número maior de quadrantes iniciais facilita a classificação das funções do AG, eliminando
possíveis particionamentos recursivos internos do algoritmo; assim, o particionamento de 16 e
64 quadrantes equivaleram-se em relação ao tempo de execução; (iv) quanto maior o particio-
namento inicial, menor a chance de o algoritmo filtrar alguma informação relevante da imagem.

8.2.2 Resultados para o Cálculo da DMO

Sabe-se que densidade é a relação entre a massa e o volume de um corpo. Os ossos


são uma espécie de “banco de cálcio” e sempre que houver a necessidade do elemento cálcio
para equilibrar as reações químicas do organismo será retirado do osso (LINKOW; CHERCHÈVE,
1970). Assim, observa-se em Misch (2005) cinco grupos de densidade óssea baseados em
características macroscópicas da cortical e do trabeculado ósseo, a saber: (D1) osso cortical
denso; (D2) cortical denso e osso trabeculado grosso; (D3) cortical óssea fina e trabeculado
fino; (D4) osso trabecular fino e (D5) osso não-mineralizado, imaturo.
105

A partir disso, o estudo de caso em questão buscou levantar informações relativas à


possibilidade de diagnosticar casos de DMO a partir de imagens oriundas de raio-X convenci-
onal. Com isso, imagens de raio-X em filme da perna direita de pacientes voluntários foram
adquiridas no HUSFP (ver Figura 67), e posteriormente digitalizadas, a fim de permitir os pri-
meiros testes de validação da ferramenta proposta.

(a) (b)
Figura 67: Imagens de raio-X da Tíbia e Fíbula (a) corte inferior (b) corte superior

O referido estudo desconsiderava a hipótese de obter uma segmentação com muita


imprecisão, a fim de não prejudicar os valores de entrada do sistema de classificação fuzzy.
Assim, a precisão do algoritmo utilizada para os mais de 20 testes foi a máxima, com o propósito
de disponibilizar a melhor segmentação resultante possível. Com isso, o modelo utilizado para
segmentação da imagem e o processamento de alto desempenho foi o mesmo utilizado no estudo
da necrose, mas com apenas um tipo de precisão.

Então, foram produzidos resultados utilizando o ambiente iPar e o recurso de seis


processadores. A Figura 67 (b) foi utilizada para os testes possuindo uma resolução de 1148 ×
1742. Vale ressaltar que se aplicou uma etapa de pré-processamento na imagem, com o objetivo
de eliminar possíveis ruídos antes da fase de segmentação.
106

Contudo, observou-se que os resultados apresentados em relação ao desempenho do


algoritmo, conforme Tabela 23, foram similares aos do estudo de caso anterior, obtendo: (i)
um speedup de 5.05; (ii) o particionamento de 16 quadrantes obteve melhor tempo médio de
execução.

Tabela 23: Resultados para DMO, precisão alta.


# quadrantes # processadores precisão tempo (s)
1 1 alta 748
4 6 alta 387
16 6 alta 148
64 6 alta 156

Entretanto, a baixa resolução adquirida na digitalização da imagem comprometeu a


validação na segmentação, onde as estruturas osso e músculo possuíam praticamente as mesmas
informações para densidade em grande parte da imagem, resultando em uma complexidade
elevadíssima para efetuar a segmentação.

Com isso, optou-se em extrair manualmente uma região da própria imagem que, apre-
sentava regiões bem definidas e simularia uma imagem de raio-X apropriada para o estudo. A
Figura 68 ilustra o ponto de extração da nova imagem, possuindo uma resolução de 1148 × 413
e um percentual de osso correspondente a 33.71% do total da imagem.

Figura 68: Fatia da imagem apropriada para o estudo em questão.


107

Assim, pôde-se analisar o percentual de classificação resultante da nova imagem, onde


os resultados de segmentação não excederam, na média, mais de 1.1% do percentual real de
osso existente, validando o algoritmo proposto frente às imagens com definição apropriada.
A Figura 69 ilustra o processo de segmentação da imagem em questão, onde (a) é a imagem
original, (b) o particionamento quadtree e (c) a segmentação resultante.

(a)

(b)

(c)
Figura 69: Imagem de raio-X (a) original; (b) quadtree; (c) segmentação resultante
108

Entretanto, sabe-se que o setor de radiologia do HUSFP está fazendo um levantamento


para formar uma base de imagens, a fim de gerar uma escala para avaliação da DMO, ou seja,
pacientes voluntários de varias faixas etárias serão submetidos a um exame de DMO em um apa-
relho densitômetro ósseo e uma imagem de raio-X será associada a esse paciente. Assim, será
possível comparar o histograma da imagem sob análise e classificá-lo, com base nos exames de
DMO e as informações contidas no banco de imagens.

Enquanto isso, nos estudos utilizando informações hipotéticas, observa-se que a partir
da imagem utilizada como referência para validação do algoritmo conseguiu-se extrair um pa-
drão de histograma significativo, oriundo da segmentação resultante. Assim, extraindo a região
de interesse, nesse caso, a estrutura óssea, espera-se que a informação de densidade seja obtida
conforme o deslocamento desse padrão de luminância sobre a escala da densidade. A Figura 70
ilustra o histograma original da imagem (a), o histograma a partir da imagem segmentada (b) e
uma das possíveis metodologia para extração da DMO do paciente.

(a) (b) (b)


Figura 70: Histograma da imagem: (a) original; (b) com a segmentação; (c) padrão esperado.

Assim sendo, utilizaram-se valores hipotéticos para realizar algumas simulação no mo-
delo fuzzy a fim de validar a classificação quanto à DMO proposta. Então, os dados analisados
foram: (i) paciente com 22 anos; (ii) densidade hipotética intervalar de [1.23; 1.25] e (iii) fatores
de risco desconsiderados para análise. Vale ressaltar que os dados intervalares são processados
separadamente pelo sistema e, ao fim do processamento os resultados são agrupados.

Com isso, a entrada relativa à idade do paciente (22 anos) cortou apenas o termo lin-
guístico jovem da função idade, obtendo um grau de pertinência igual a 0.9 (ver Figura 71 (a)).
E, os valores intervalares de densidade tiveram o seguinte comportamento: o primeiro valor do
intervalo (1.23), referente à densidade, cortou a função densidade em dois termos linguísticos,
no primeiro, obteve grau de pertinência 0.1 para o termo média e, 0.9 para o termo alta (cfe.
Figura 71 (b)); já o segundo valor do intervalo (1.25) cortou apenas o termo alta, obtendo grau
de pertinência igual à 1 conforme ilustra Figura 71 (c).
109

(a) (b) (c)


Figura 71: Fuzzificação e pertinência: (a) idade; (b) entrada 1 densidade; (c) entrada 2.

Após a etapa de fuzzificação e a atribuição dos graus de pertinência, os valores resul-


tantes são submetidos à base de regras, onde será aplicada a regra MIN-MAX, que origina uma
multiplicação de matriz substituindo-se o produto pelo mínimo e a soma pelo máximo. A Ta-
bela 24 ilustra o resultado da regra MIN aplicado na primeira entrada do intervalo de densidade
e na idade, obtendo como produto as pertinências da variável de saída.

Tabela 24: Pertinência de saída pela regra MIN para os valores de idade e entrada 1.
Densidade × Idade µ Jovem (0.9) µAdulto (0.0) µIdoso (0.0)
µBaixa (0.0) µOsteoporose (0.0) µOsteoporose (0.0) µOsteoporose (0.0)
µ Média (0.1) µOsteopenia (0.1) µOsteopenia (0.0) µOsteopenia (0.0)
µAlta (0.9) µNormal (0.9) µNormal (0.0) µNormal (0.0)

A Tabela 25 demonstra a aplicação da regra MIN para o segundo valor do intervalo de


densidade e a idade, obtendo como produto as pertinências da variável de saída.

Tabela 25: Pertinência de saída pela regra MIN para os valores de idade e entrada 2.
Densidade × Idade µ Jovem (0.9) µAdulto (0.0) µIdoso (0.0)
µBaixa (0.0) µOsteoporose (0.0) µOsteoporose (0.0) µOsteoporose (0.0)
µ Média (0.0) µOsteopenia (0.0) µOsteopenia (0.0) µOsteopenia (0.0)
µAlta (1.0) µNormal (0.9) µNormal (0.0) µNormal (0.0)

Assim sendo, a Tabela 26 ilustra a regra MAX, que resulta nos valores máximos ob-
tidos na multiplicação das matrizes realizados na regra MIN, definindo assim os valores da
função de saída do sistema.
Após definidas as funções de saída, oriundas da regra MIN-MAX, representadas pelas
Figura 72, onde (a) é a função resultante para a idade e o primeiro valor intervalar de densidade
contendo seu centróide e (b) é a função resultante para a idade e o segundo valor intervalar de
densidade contendo seu centróide.

Assim, o resultado intervalar do modelo proposto para o referido exemplo é DMO


entre 1.88 e 2.19, indicando que o paciente está saudável. Nesse caso, o especialista obtém uma
110

Tabela 26: Funções de saída resultante da regra MAX obtidas a partir da regra MIN.
Doença Idade + Entrada 1 Idade + Entrada 2
Osteoporose 0.0 0.0
Osteopenia 0.1 0.0
Normal 0.9 0.9

(a) (b)
Figura 72: Defuzzificação por centróide: (a) idade + entrada 1; (b) idade + entrada 2.

informação clara sobre o estado de DMO do paciente, e quaisquer possibilidade de imprecisão


ou informações vagas no decorrer do processo fica contabilizado no intervalo resultante.

8.3 Trabalhos Relacionados

Um trabalho importante que está relacionado ao escopo do projeto M-IPE, no mó-


dulo de interface para criação de técnicas de visualização, é o trabalho de visualizações de
informações fuzzy para auxílio ao diagnóstico médico (MORAES, 2009). Com isso, o objetivo
foi disponibilizar um modelo de visualização para representar informações referente à DMO
oriundas da atual proposta.

O modelo de visualização proposto apresenta uma representação de esfera multicor


em uma natureza de domínio, utilizando as cores como forma de representação visual para
as funções fuzzy. O comportamento da visualização radial fuzzy para o cálculo da DMO está
diretamente relacionado às variáveis de saída do sistema fuzzy, assim, cada termo linguístico de
saída estará associado à uma cor do método proposto (MORAES, 2009).

Então, após o sistema fuzzy efetuar a defuzzificação e disponibilizar os termos de saída


111

com seus respectivos graus de pertinência, a análise dos resultados poderá ser visualizada atra-
vés da técnica radial fuzzy (MORAES, 2009), conforme ilustra Figura 73, onde (a) representa um
resultado normal com uma leve tendência ao estágio intermediário da doença e (b) representa
um estágio avançado de osteopenia, com fortes tendências à osteoporose.

(a)

(b)
Figura 73: Radial fuzzy: (a) normal; (b) osteopenia tendendo à osteoporose.
Fonte: Moraes (2009).

O ambiente IPE, propostos pelo orientador desta dissertação, é a plataforma-mãe de


todos os projetos envolvendo processamento de imagens. Assim, a proposta atual auxiliou não
só a constituição do projeto M-IPE, mas também um framework de alto desempenho, denomi-
nado iPar, que por ter caráter dinâmico, passou a ser utilizado por todos os projetos do ambiente
IPE. Esse serviço fica disponível na camada de middleware do ambiente IPE (ver Figura 74), e
qualquer operação envolvendo processamento de imagem, de acordo com as especificações do
iPar, poderá obter alto desempenho utilizando um modelo originado por essa proposta.
112

Figura 74: Arquitetura do ambiente IPE

8.4 Considerações Finais

Não foram necessárias informações relativas aos pacientes nesta fase de estudo, pois
esta proposta compreendeu apenas o desenvolvimento dos modelos e ferramentas computacio-
nais, caracterizando como desenvolvimento de pesquisa em computação. Todas as informações
associadas aos pacientes que por ventura forem recebidas serão mantidas sob sigilo.

Pode-se afirmar que os modelos propostos atingiram resultados significativos, uma vez
que o projeto M-IPE, no qual este trabalho está inserido, foi aprovado em um edital do BNDES
que disponibilizará recursos para elaboração de um centro de processamento de imagens, com
o objetivo de colocar em prática as ferramentas e modelos propostos por esse trabalho, visando
ao benefício da população carente que não dispõe de recursos para realizar tais diagnósticos.
O projeto também foi elogiado pelo ministério da saúde, pois apresenta a premissa de software
livre. Assim, todas as ferramentas resultantes do projeto serão disponibilizadas para hospitais e
postos de saúde sem custo algum.

Entretanto, algumas informações utilizadas para validação dos modelos eram hipotéti-
cas. Com isso, novas etapas de análise deverão ser realizadas, de modo a observar o compor-
tamento dos modelos frente a informações totalmente reais e com a supervisão de especialistas
da área médica. A proximidade entre os desenvolvedores das ferramentas (exatas) e os médi-
cos deverá ser minimizada, visto que o centro de processamento de imagens a ser instaurado
utilizará a infraestrutura do HUSFP e, essa proximidade com os médicos e especialistas deverá
acelerar a evolução das ferramentas.
113

9 Conclusão

Neste último capítulo encontram-se as considerações finais, as contribuições realizadas


e os trabalhos futuros.

9.1 Considerações Finais

Na medicina, vários desenvolvimentos tecnológicos estão convergindo de forma a au-


mentar a influência da área de imagens nas pesquisas biomédicas e na medicina clínica. Cada
vez mais é comum o desenvolvimento de sistemas computadorizados para detecção de anor-
malidades em imagens radiológicas e dedicados ao diagnóstico auxiliado por computador (CO-
TRIM, 2007).

Neste sentido foram abordados métodos de diagnóstico por computador e formas de


aquisição de imagens médicas, enfatizando que a análise automatizada é um auxílio, e não
um substituto para o profissional, não necessitando ser perfeita, e sim possuir um desempenho
próximo ao do especialista.

Nesse contexto, as pesquisas que estão sendo desenvolvidas indicam ser bastante pro-
missoras quanto ao uso de sistemas de diagnóstico auxiliado por computador como uma se-
gunda opinião no processo de diagnóstico por imagem.

As ferramentas resultantes desta proposta forneceram tanto informações qualitativas


quanto quantitativas a respeito da DMO utilizando imagens adquiridas a partir de raio-X con-
vencional, a fim de viabilizar o diagnóstico e a administração de terapia com baixo custo ope-
racional. Os resultados obtidos até o momento atenderam as expectativas esperadas, assim, os
pesquisadores envolvidos continuarão evoluindo os modelos a medida que julgarem necessário
para atender as demandas decorrentes do HUSFP.

Com isso, pretende-se disponibilizar gratuitamente as ferramentas resultantes desta


proposta e contribuir também com os técnicos da radiologia na parametrização de informações
radiológicas para aquisição de imagens de raio-X relacionados ao sistema proposto.
114

9.2 Contribuições

Dada a interdisciplinaridade desta proposta, as contribuições oportunizarão benefícios


relacionados tanto no âmbito computacional (de modelos e ferramentas) quanto no âmbito de
aplicações. Considerando a informática como atividade-meio, os benefícios esperados estão
concentrados no âmbito de pesquisa em informática médica e mais especificamente no contexto
das demandas exigidas pelo HUSFP.

Partindo do fato que o HUSFP não possui o densitômetro ósseo e que esse tipo de equi-
pamento é importantíssimo para o diagnóstico da osteopenia, estágio inicial da osteoporose, o
desenvolvimento de uma ferramenta computacional alternativa a este equipamento, que calcula
tanto informações qualitativas (graus de osteopenia) quanto quantitativas (densitometria óssea),
utilizando imagens adquiridas a partir de raio-X convencional, viabilizará o diagnóstico e a
administração de terapia com custo operacional reduzido; e, popularizará este tipo de análise.

Considerando a informática como atividade-fim, o desenvolvimento dos modelos pro-


postos atingirá principalmente dois desdobramentos. Busca-se a consolidação do ambiente IPE
baseado em algoritmos evolutivos como uma arquitetura de software para suporte ao desenvol-
vimento de aplicações que exigem: (i) alto desempenho, mobilidade e processamento de grande
quantidade de informações, e (ii) tratamento dos erros de captura e modelagem das informações
digitalizadas.

A contribuição teórica consistiu em utilizar uma série de conceitos conhecidos, tais


como: AG, quadtree, matemática intervalar, lógica fuzzy e PPD. Ainda utilizá-los para ob-
tenção de resultados significativos quanto ao cálculo da DMO através de imagens de raio-X
convencional.

Pretende-se avaliar a possibilidade da integração de outras técnicas algorítmicas e mo-


delos matemáticos que tratem de produzir respostas mais rápidas e, por conseguinte, mais efici-
entes com a utilização de algoritmos genéticos e, também, respostas mais precisas e confiáveis,
utilizando modelos matemáticos que tratam de informações imprecisas ou inexatas originadas
de erros de aquisição, discretização ou de processamento numérico.

Apesar de ser objeto de pesquisa de vários grupos no Brasil e no mundo, vários desa-
fios ainda precisam ser vencidos. O primeiro desafio a ser considerado na construção de tais
sistemas é obter uma alta taxa de acerto de casos verdadeiros-positivos, isto é, indicar a presença
de uma doença quando ela realmente existe. Outra questão que merece destaque é a utilização
de recursos computacionais que proporcionem alto desempenho, uma vez que as imagens mé-
dicas apresentam grande volume de dados para processamento e este processamento envolve,
115

geralmente, milhares de operações em tempo real.

Também, é importante destacar a necessidade de desenvolver sistemas nesta área que


sejam multi-modalidades, pois informações provenientes de diversas modalidades podem ser
complementares para construir um diagnóstico acertado. Uma linha que merece ser citada é a
grande dificuldade de avaliação desses sistemas, pois o desempenho de um sistema CAD pode
variar em função das características das imagens utilizadas no processamento.

Ainda, buscam-se contribuições nas mais diversas linhas de pesquisa em desenvolvi-


mento pelos pesquisadores do PPGINF, tanto em modelos computacionais de caráter teórico
quanto em linhas de informática aplicada, dentre as quais pode-se citar:

Inteligência Artificial e Fundamentos da Computação: presente nos modelos baseados em


Lógica Fuzzy, Matemática Intervalar e Algoritmos Genéticos para o tratamento de erros
de captura, discretizações e aproximações no processo de segmentação de imagens;

Processamento Paralelo e Distribuído: presente no desenvolvimento de ferramentas compu-


tacionais para o paralelismo e a distribuição de processamento em agregados de compu-
tadores, grades computacionais e computação multicore;

Computação Gráfica: presente na utilização metodologias de visualização de informações e


visualização científica; e,

Banco de Dados e Programação para Web: presentes nas estratégias de armazenamento, re-
cuperação e acesso às informações de forma remota.

A utilização de recursos computacionais que proporcionem alto desempenho são pe-


ças indispensáveis na manipulação de imagens médicas, já que estas apresentam grande volume
de dados para processamento e este processamento pode envolver operações de caráter emer-
gencial. Nesse âmbito, essa pesquisa pode ter grande contribuição na popularização deste tipo
de análise, viabilizando ao HUSFP e a outras unidades básicas de saúde terem acesso a esta
tecnologia, uma vez que equipamentos de raio-X estão bastante difundidos na rede de saúde.

9.3 Trabalhos futuros

Percebe-se a necessidade de melhorar as interfaces em nível de cliente, que hoje estão


disponíveis em uma plataforma desktop, para uma plataforma web. Também para o framework
iPar prevê-se a implementação da técnica de matriz de adjacência para dar suporte às aplicações
que tenham dependência entre tarefas.
116

Outra melhoria que percebe-se é a criação de uma modelagem fuzzy, a fim de evoluir
o modelo de AG atual para um AG adaptativo fuzzy e melhorar seu desempenho. Também,
deve-se adaptar alguns métodos do AG para que sejam adaptados a uma versão mais nova do
Java e, assim, melhorar seu rendimento.

Quanto a ferramenta para criação de modelos fuzzy, abordado no Anexo A, pretende-se


tratá-la com um projeto independente, pois tornou-se promissora para criação de modelos fuzzy
em diversos contextos além do iFuz. Tal ferramentas permite que o usuário modele um sistema
fuzzy utilizando interfaces intuitivas e de fácil compreensão. Suas funcionalidades atualmente
encontram-se limitadas, como por exemplo, os cadastros dos tipos de funções de pertinência
apenas a função triangular e trapezoidal estão disponíveis; e o sistema comporta apenas mode-
lagens bi-dimensionais. A evolução do framework iFuz está diretamente relacionada

Quando um particionamento quadtree é executado, as coordenadas que compõe cada


quadrante são armazenadas, podendo ser muito útil no que diz respeito ao reconhecimento de
padrões em imagens, uma vez que, se reconstruídas, essas informações podem ser analisadas
como uma assinatura digital da imagem (ver Figura 75), onde cada imagem possui a sua assi-
natura. Este assunto promissor será discutido no futuro pelos pesquisadores.

Figura 75: Assinatura digital referente à imagem de raio-X

Um outro desdobramento desses modelos propostos está diretamente relacionado com


a pesquisa em desenvolvimento no HUSFP envolvendo o acompanhamento do crescimento de
crianças prematuras, a partir de informações encontradas em imagens de raio-X, como a DMO.

Este desdobramento não faz parte do escopo desta proposta, pois se necessita ainda
da agregação de novos colaboradores da área médica da UCPEL, que farão acompanhamento,
análise e interpretação dos possíveis resultados. E este tema interessantíssimo de pesquisa é
entendido neste momento como motivação para a execução e conclusão deste projeto.
117

Referências

AARTS, E.; KORST, J. Simulated Annealing and Boltzmann Machines – A Stochastic


Approach to Combinatorial Optimization and Neural Computing. Chichester: John Wiley &
Sons, 1989.

AGUIAR, M. Análise Formal da Complexidade de Algoritmos Genéticos. Dissertação


(Mestrado) — Universidade Federal do Rio Grande do Sul, Porto Alegre, RS, Brasil, 1998.

AGUIAR, M. S. Um Modelo Categorizador Intervalar n-Dimensional com l-Camadas


Baseado em Tesselações. Tese (Doutorado) — Universidade Federal do Rio Grande do Sul,
Porto Alegre, RS, Brasil, 2004.

ALMEIDA, A. B. Usando o computador para processamento de imagens médicas. Informática


Médica, Campinas, SP, Brasil, v. 1, n. 6, 1998.

ANTUNES, E. Processamento de Imagens: Uma abordagem interdisciplinar aplicada à


correção de prognósticos meteorológicos. Pelotas, RS, Brasil, 1999.

BANDEIRA, F. Prevalência de Osteoporose, Fraturas Vertebrais, Ingestão de Cálcio, e


Deficiência de Vitamina D em Mulheres na Pós-Menopausa. Tese (Doutorado) — Fundação
Oswaldo Cruz, Recife, PE, Brasil, 2003.

BARCELLOS, J. Algoritmos Genéticos Adaptativos: Um estudo Comparativo. Dissertação


(Mestrado) — Universidade de São Paulo, São Paulo, SP, Brasil, 2000.

BARROS, L. Sobre Sistemas Dinâmicos Fuzzy: Teoria e Aplicações. Dissertação (Mestrado)


— Universidade Estadual de Campinas, Campinas, SP, Brasil, 1997.

BÄCK, T.; HAMMEL, U.; SCHWEFEL, H. Evolutionary computation: Comments on the


history and current state. IEEE Transactions on Evolutionary Computation, v. 1, n. 1, p. 3–17,
1997.

BLACK, D. et al. Prevalent vertebral deformities predict hip fractures and new vertebral
deformities but not wrist fractures. Bone Mineral Research, n. 14, p. 821–828, 1999.

BONJORNO, J. et al. Física Fundamental. 1. ed. São Paulo, SP, Brasil: FTD, 1993. ISBN
85-322-2748-1.

CASTRO, A. Introdução à Radiologia. 1. ed. São Paulo, SP, Brasil: Rideel, 2006. ISBN
85-339-0783-4.

CONCILIO, R. Contribuições à Solução de Problemas de Escalonamento pela Aplicação


Conjunta de Computação Evolutiva e Otimização com Restrições. Dissertação (Mestrado) —
Universidade Estadual de Campinas, Campinas, SP, Brasil, 2000.
118

COTRIM, D. Arquitetura de indexação aplicada a servidores PACS para processamento de


imagens. Dissertação (Mestrado) — Pontifícia Universidade Católica do Rio Grande do Sul,
Porto Alegre, RS, Brasil, 2007.

COX, E. et al. The Fuzzy Systems Handbook. 2. ed. Orlando, FL, USA: Academic Press, Inc.,
1998. ISBN 0121944557.

CRUZ A.; BEDREGAL, B. Fundamentos de sistemas fuzzy baseados em dados intervalares à


luz de uma teoria de representação fuzzy intervalar. Logic Applied to Technology, Natal, RN,
Brasil, 2007.

CYNROT, M.; PERCARIO, S.; FERREIRA, L. M. Comportamento do estresse oxidativo e


da capacidade antioxidante total em ratos submetidos a retalhos cutâneos isquêmicos. Acta
Cirúrgica Brasileira, São Paulo, SP, Brasil, v. 19, n. 1, p. 18–26, 2004.

DARWIN, C. On The Origin of Species. MA, USA: Harward University Press, 1859.

DAVIS, L. Handbook of genetic algorithms. 1. ed. New York, NY, USA: Van Nostrand
Reinhold, 1991.

DEITEL, H.; DEITEL, P. Java How to Program. 3. ed. Upper Saddle River, New Jersey, USA:
Prentice Hall, Inc., 1999. ISBN 0-13-012507-5.

EASTMAN KODAK COMPANY. Fundamentos da Radiologia. 1. ed. Irvine, CA, USA, 1980.

EFFORD, N. Digital Image Processing: A Pratical Introduction Using Java. 1. ed. Leeds,
England: Addison Wensley, 2000. ISBN 0201596237.

ESQUEF, I. Técnicas de Entropia em Processamento de Imagens. Dissertação (Mestrado) —


Centro Brasileiro de Pesquisas Físicas, Rio de Janeiro, RJ, Brasil, 2002.

FUCHS, S.; FUCHS, F. Métodos de investigação farmacológico-clínica. Farmacologia clínica:


Fundamentos da terapêutica racional, Rio de Janeiro, RJ, Brasil, 2004.

GLOVER, F.; LAGUNA, M. Tabu Search. Dordrecht, Netherlands: Kluwer Academic


Publishers, 1997.

GOLDBERG, D. Genetic Algorithms in Search, Optimization and Machine Learning. 1. ed.


University of Alabama, USA: Addison-Wesley, 1989.

GONZALEZ, R.; WOODS, R. Digital Image Processing. 3. ed. Reading, MA, USA:
Addison-Wesley, 1992. ISBN 0-201-50803-6.

GREFENSTETTE, J. Optimization of control parameters for genetic algorithms. IEEE


Transactions on Systems, Man, and Cybernetics, SMC-16, n. 1, p. 122–128, 1986.

GUIMARÃES, R. R. Conversão de Imagens do Formato DICOM Visando a Inter-


operacionalidade de Sistemas Através da WEB. Dissertação (Mestrado) — Universidade
Federal do Rio Grande do Sul, Porto Alegre, RS, Brasil, 2002.

HERRERA, F.; LOZANO, M. Adaptation of genetic algorithm parameters based on fuzzy


logic controllers. In: HERRERA, F.; VERDEGAY, J. L. (Ed.). Genetic Algorithms and Soft
Computing. Heidelberg: Physica-Verlag, 1996. p. 95–125.
119

HERRERA, F.; LOZANO, M.; VERDEGAY, J. L. The use of fuzzy connectives to design
real-coded genetic algorithms. Mathware & Soft Computing, v. 1, n. 3, p. 239–251, 1994.

HOLLAND, J. Outline for a logical theory of adaptive systems. J. ACM, New York, USA, v. 9,
p. 297–314, 1962.

HOLLAND, J. Adaptation in Natural and Artificial Systems. Michigan, USA: University of


Michigan Press, 1975.

ISHII, K.; SUGENO, M. A model of human evaluation process using fuzzy measure.
Man-Machine Studies, v. 1, n. 22, p. 19–38, 1985.

JAFELICE, R.; BARROS, L.; BASANEZI, R. Teoria dos conjuntos fuzzy com aplicações. In:
Notas em Matemática Aplicada. São Carlos, SP, Brasil: SBMAC, 2005. v. 1.

JAIN, A. K. Fundamentals of Digital Image Processing. Englewood Cliffs, NJ, USA: Prentice
Hall, 1989. ISBN 0-13-336165-9.

JONG, K. An Analysis of the Behavior of a Class of Genetic Adaptive Systems. Tese


(Doutorado) — University of Michigan, USA, 1975.

KANIS, J. et al. The diagnosis of osteoporosis. Bone and Mineral Research, v. 1, n. 9, p.


1137–1141, 1994.

KLIR, G.; FOLGER, T. Fuzzy sets: uncertainty, and Information. 1. ed. Upper Saddle River,
NJ, USA: Prentice-Hall, Inc., 1987. ISBN 0-13-345984-5.

LINKOW, L. I.; CHERCHÈVE, R. Theories and techniques of oral implantology. 1. ed. Saint
Louis, MO, USA: Mosby, 1970. ISBN 0801630185.

MAMDANI, E. H.; ASSILIAN, S. An experiment in linguistic synthesis with a fuzzy logic


controller. International Journal of Man-Machine Studies, v. 7, n. 1, p. 1–13, 1975.

MASCARENHAS, N.; VELASCO, F. Processamento Digital de lmagens. 1. ed. Buenos Aires,


Argentina: Kapelusz, 1989.

MEIRELLES, E. Diagnóstico por imagem na osteoporose. Arq. Bras. Endocrinol. Metab.,


v. 43, n. 6, p. 423–427, 1999.

MICHALEWICZ, Z. Genetic algorithms + data structures = evolution programs. New York,


NY, USA: Springer-Verlag, 1996.

MISCH, C. E. Dental Implant Prosthetics. 1. ed. St. Louis, MO, USA: Mosby, 2005. ISBN
978-0-323-01955-2.

MITRA, S.; PAL, S. K. Fuzzy sets in pattern recognition and machine intelli-
gence. Fuzzy Sets and Systems, v. 156, n. 3, p. 381–386, 2005. Disponível em:
<http://dx.doi.org/10.1016/j.fss.2005.05.035>.

MORAES, A. Visualização de Informações Fuzzy para Auxílio ao Diagnóstico Médico.


Dissertação (Mestrado) — Universidade Católica de Pelotas, Pelotas, RS, Brasil, 2009.

NOBREGA, A. Manual de Técnicas Radiológicas. 3. ed. São Caetano do Sul, SP, Brasil:
Difusão Editora, 2008. ISBN 8578080335.
120

PACHECO, M. Algoritmos Genéticos: Princípios e Aplicações. Rio de Janeiro, RJ, Brasil,


1999.

RAY, N. et al. Medical expenditures for the treatment of osteoporotic fractures in the united
states in 1995. Bone Miner. Res., n. 12, p. 24–35, 1997. Report from the National Osteoporosis
Foundation.

ROSS, T. Fuzzy Logic with Engineering Applications. 2. ed. University of New Mexico, USA:
John Wiley & Sons, Ltd., 2004. ISBN 0-470-86075-8.

SACKETT, D. L. Rules of evidence and clinical recommendations on the use of antithrombotic


agents. Chest, Park Ridge, v. 95, n. 2, p. 2–4, 1989.

SCHAFFER, J. et al. A study of control parameters affecting online performance of genetic


algorithms for function optimization. In: SCHAFFER, J. (Ed.). Proceedings of the Third
International Conference on Genetic Algorithms. San Mateo, California, USA: Morgan
Kaufmann Publishers, Inc., 1989. p. 51–60.

SCHÜTZER, W.; MASSAGO, S. Tutorial de Java. São Carlos, SP, Brasil:


http://www.dm.ufscar.br/profs/waldeck/curso/java/, Acessado em 2009.

SILVA, E. Otimização de Estruturas de Concreto Armado Utilizando Algoritmos Genéticos.


Dissertação (Mestrado) — Universidade de São Paulo, São Paulo, SP, Brasil, 2001.

SILVA, F. C.; AGUIAR, M. S. Um ambiente computacional para processamento de imagens


com alto desempenho no contexto do projeto M − IPE. Third Workshop on Languages and
Tools for Parallel and Distributed Programming, Gramado, RS, Brasil, 2009.

SILVA, F. C. et al. Um sistema fuzzy para auxílio ao diagnóstico da densidade mineral Óssea.
Southern Conference on Computational Modeling, Rio Grande, RS, Brasil, 2009.

SILVA, F. C. et al. Quadtrees and genetic algorithms applied with high performance in
information segmentation and classification from medical images. Jornadas Chilenas de
Computación, n. 1, p. 1–8, 2008.

SILVEIRA, M. Teoria Fuzzy Intervalar: Uma proposta de Integração da Matemática


Intervalar à Teoria Fuzzy. Dissertação (Mestrado) — Universidade Federal do Rio Grande do
Norte, Natal, RN, Brasil, 2002.

SURI, J.; WILSON, D.; LAXMINARAYAN, S. Handbook of Biomedical Image Analysis:


Segmentation Models. 1. ed. Cleveland, Ohio, USA: Springer-Verlag, 2005. ISBN
0-306-48550-8.

SYSWERDA, G. Uniform crossover in genetic algorithms. In: SCHAFFER, J. D. (Ed.).


Third International Conference on Genetic Algorithms. San Mateo, California, USA: Morgan
Kaufmann Publishers, Inc., 1989. p. 2–9.

TANSCHEIT, R. Sistemas fuzzy. Simpósio Brasileiro de Automação Inteligente, Bauru, SP,


Brasil, 2003.

TANSCHEIT, R.; GOMIDE, F.; TEIXEIRA, M. Modelagem e controle nebuloso. In:


Enciclopédia de Automática. São Paulo, SP, Brasil: Edgard Blücher, 2007. v. 3, p. 283–323.
121

TAUBMAN, D.; MARCELLIN, M. JPEG2000: Image Compression Fundamentals, Standards


and Practice. 1. ed. Norwell, Massachusetts, USA: Kluwer Academic Publishers, 2002. ISBN
0-7923-7519-x.

THOMPSON, D. et al. Prevalent vertebral fracture predicts clinical fracture in post menopausal
women. The Fracture Intervention Trial, v. 23, n. 151, 1998.

TURKSEN, I. Interval value fuzzy sets based on normal form. Fuzzy Sets and Systems,
Amsterdam, Netherlands, v. 20, p. 191–210, 1986. ISSN 0165-0114.

WAGNER, A. Extração de Conhecimento a partir de Redes Neurais aplicada ao Problema da


Cinemática Inversa na Robótica. Dissertação (Mestrado) — Universidade do Vale do Rio dos
Sinos, São Leopoldo, RS, Brasil, 2003.

WANNMACHER, L. Manejo racional da osteoporose: onde está o real benefício? Uso


Racional de Medicamentos, v. 1, n. 7, 2004.

WEINBERG, R. Computer simulations of a living cell. Tese (Doutorado) — University of


Michigan, USA, 1970.

WELLS, W.; RAINER, R.; MENOLI, U. Equipment, standardization, and applications of


image processing. American Journal of Clinical Pathology, St. Louis, Missouri, USA, v. 1,
n. 99, p. 4–56, jan 1993.

WILKINSON, B.; ALLEN, C. M. Parallel Programming: Techniques and Applications Using


Networked Workstations and Parallel Computers. Englewood Cliffs, NJ, USA: Prentice Hall,
1998. ISBN 0136717101.

ZADEH, L. Fuzzy sets. information and control. Math Appl., New York, NY, USA, v. 8, p.
338–353, 1965.
122

Publicações

Abaixo segue a lista de publicações e eventos originadas pela proposta, que teve seu
início em 08/2007 e foi finalizada em 08/2009.

1.Resumo Completo:

•LTPD (Workshop de Linguagens e Ferramentas no Processamento Distribuído),


2009 – Gramado, RS, Brasil.
•JCC (Jornadas Chilenas de Computación), 2008 – Punta Arenas, Chile.
•WTDIA (Workshop de Teses e Dissertações em Inteligência Artificial), 2008 – Sal-
vador, BA, Brasil.
•SIRC (Simpósio de Informática da Região Centro do RS), 2008 – Santa Maria, RS,
Brasil.
•WSL (Workshop de Software Livre), 2008 – Porto Alegre, RS, Brasil.

2.Resumo Expandido:

•MCSUL (Seminário Sul de Modelagem Computacional), 2009 – Rio Grande, RS,


Brasil.
•LTPD (Languages and Tools for Parallel and Distributed Programming), 2009 –
Gramado, RS, Brasil.
•CNMAC (Congresso Nacional de Matemática Aplicada e Computacional), 2008 –
Belém, PA, Brasil.

3.Resumo:

•ERAD (Escola Regional de Alto Desempenho), 2009 – Caxias do Sul, RS, Brasil.
•ERAD (Escola Regional de Alto Desempenho), 2008 – Santa Cruz do Sul, RS, Bra-
sil.
•CIC/UFPEL (Mostra de Pós-Graduação), 2007, 2008 – Pelotas, RS, Brasil.
•CIC/UCPEL (Mostra de Pós-Graduação), 2007, 2008 e 2009 – Pelotas, RS, Brasil.
123

ANEXO A -- Criação de Modelos Fuzzy

O módulo iFuz apresenta uma série de interfaces com o objetivo de atender formal-
mente ao cadastramento de variáveis linguísticas, bem como criação de base de regras e de
grupos de fatores de risco, entre outros. Alguns desses recursos ainda estão em desenvolvi-
mento, entretanto, quando alguma modelagem exige alguma informação diferenciada, esses
dados são inseridos manualmente pelo programador.

Com isso, para atender à modelagem fuzzy, faz-se necessário que o especialista ca-
dastre as informações correspondentes à necessidade da pesquisa. A primeira informação a
ser considerada é o nome de cada uma das variáveis linguísticas, onde, através da interface de
cadastramento das variáveis linguísticas (ver Figura 76), é possível efetuar esse cadastramento.
Nessa interface também está armazenado o universo de discurso (escala da variável), bem como
seu valor incremental necessário para a visualização gráfica e alguns cálculos.

Figura 76: Interface para cadastramento das variáveis linguísticas.

O segundo passo é informar os termos linguísticos através da interface de cadastro de


termos linguísticos (ver Figura 77). Nessa interface o termo linguístico criado deverá conter
uma função de pertinência associada e a função será definida tendo como base um universo de
discurso hipotético, pois, nesta etapa não se sabe ainda em qual variável linguística esse termo
fará referência.
124

Figura 77: Interface para cadastramento dos termos linguísticos.

O terceiro passo é criar as funções de pertinência, ou seja, associar os termos linguísti-


cos a uma variável linguística fazendo uso da interface de criação de funções de pertinência (ver
Figura 78). É interessante ressaltar que este sistema fornece suporte a uma modelagem fuzzy bi-
dimensional, portanto, neste estágio do trabalho podem ser utilizados no máximo três funções
de pertinência para cada modelagem, sendo que uma delas é a função de saída do sistema. Os
valores atribuídos hipoteticamente aos termos linguísticos são normalizados nesta etapa, tendo
como base o universo de discurso da variável linguística escolhida.

Figura 78: Interface para criar as funções de pertinência.


125

O quarto passo não é obrigatório, entretanto, é um suporte que a ferramenta fornece


para o modelo. Este caso refere-se a um conjunto de fatores de risco que poderão alterar o valor
da função de saída. Inicialmente o conjunto de fatores são informações do tipo “clássicas” e
contém apenas a possibilidade de duas informações, verdadeiro ou falso.

Neste sentido, as interfaces representadas pela Figura 79 gerenciam o processo, sendo


que o primeiro passo é o cadastro de fatores individuais (ver Figura 79 (a)) e o segundo está
relacionado à criação de um grupo de fatores (ver Figura 79 (b)) que terá um percentual atribuído
ao conjunto.

Esta característica faz-se necessária porque determinados atributos da modelagem po-


dem não ser considerados por todos os especialistas no momento da tomada de decisões. O iFuz
permite que a modelagem do sistema fuzzy seja administrada por perfil de modelos específicos
para atender ao conhecimento e à crença de cada especialista, no que diz respeito aos fatores
externos.

Com isso, o percentual informado na interface 79 (b) é cruzado com o valor da função
de saída, podendo ou não alterar seu estado. É importante salientar que a resultante será o limite
máximo que esse grupo poderá sensibilizar quanto ao valor da função de saída do modelo.

(a)

(b)
Figura 79: Fatores de risco: (a) cadastro dos fatores; (b) cadastro dos grupos.

O quinto passo é definir as funções de pertinências utilizadas na modelagem, a função


de saída do sistema e, se existir, o grupo de fatores externos. Este processo é gerenciado pela
interface de modelagem (ver Figura 80) que permite criar funções bi-dimensionais, armazená-
las e gerar modelos para as simulações.
126

Figura 80: Criação de modelagens fuzzy

O sexto e último passo, que contém a interação do usuário especialista na modelagem,


é a criação da base de regras. Esta etapa é onde o especialista faz o relacionamento das fun-
ções definidas no sistema e associa essa relação à função de saída. A interface que manipula
essas informações pode ser analisada na Figura 81, onde apenas os termos linguísticos das três
funções interagem.

Figura 81: Manipulação da base de regras

Neste momento tem-se um modelo fuzzy para interagir com uma dada aplicação e/ou
simulação, e seus perfis encontram-se armazenados no banco de dados e podem ser invocados
por qualquer simulação decorrente do projeto M-IPE através das interfaces de submissão.

Vous aimerez peut-être aussi