Você está na página 1de 51

CENTRO PAULA SOUZA

FACULDADE DE TECNOLOGIA DE TAQUARITINGA


CURSO SUPERIOR DE TECNOLOGIA EM
PROCESSAMENTO DE DADOS

VISO COMPUTACIONAL

CAIO FELIPE DE SOUZA


FELIPE CAPOVILLA
THIAGO CASTRO ELEOTRIO

ORIENTADOR: PROF. MS. JOO DE LUCCA FILHO

Taquaritinga, SP
2010

SOUZA, C. F.; CAPOVILLA, F.; ELEOTRIO, T. C.; Viso Computacional. Faculdade de


Tecnologia de Taquaritinga, Centro Estadual De Educao Tecnolgica Paula Souza,
Taquaritinga, 2010.

RESUMO
Hoje os conceitos da Viso Computacional so bem difundidos, mas poucos sabem o que
existe por trs. Para a concepo de um sistema de Viso Computacional Existem vrios
processos. Tentaremos explicar as melhores tcnicas utilizadas para otimizao das imagens,
apresentaremos casos e aplicaes que j existem em nosso cotidiano.
Palavras-chaves: Processamento Imagens. Viso Computacional.

SUMRIO
Contedo
1

VISO COMPUTACIONAL............................................................................................6

1.1

O que Viso Computacional............................................................................................6

1.2

Viso Computacional e Processamento de Imagens..........................................................8

PROCESSAMENTO DE IMAGENS.............................................................................10

2.1

Filtros...............................................................................................................................10

2.2

Domnio e Espao............................................................................................................11

2.3

Transformao da Intensidade.........................................................................................12

2.4

Histogramas.....................................................................................................................14

2.5

Filtragem no Domnio Espacial.......................................................................................16

2.6

Filtros Estatsticos............................................................................................................17

2.7

Filtros Gaussianos............................................................................................................18

2.8

Filtro Passa-Alta...............................................................................................................18

2.9

Domnio de Frequncia....................................................................................................19

2.9.1 Filtro Passa-baixa Dominio de Frequncia...................................................................20


2.9.2 Filtro Passa-alta Dominio de Frequncia......................................................................21
3

SEGMENTAO.............................................................................................................22

3.1

Segmentao por Deteco de borda...............................................................................22

3.2

Segmentao por Corte....................................................................................................27

3.3

Segmentao Baseada em Crescimento de Regio..........................................................27

RECONHECIMENTO DE PADRES..........................................................................31

4.1

O que reconhecimento de padres................................................................................31

4.2

Rastreamento....................................................................................................................33

4.3

Corner Finding.................................................................................................................34
2

4.4

Subpixel Corners..............................................................................................................34

4.5

Optical Flow.....................................................................................................................34

4.6

Mean-Shift e Camshift.....................................................................................................34

4.7

Estimadores......................................................................................................................35

VISO COMPUTACIONAL NA INTELIGNCIA ARTIFICIAL.............................37

5.1

Caractersticas gerais.......................................................................................................37

5.1.1

Raciocnio Subsimblico:.............................................................................................37

5.1.2

Raciocnio Simblico:...................................................................................................38

5.1.3

Importncia da integrao entre raciocnio simblico e subsimblico.........................38

5.2
6
6.1

Estratgias de Controle....................................................................................................38
VISO COMPUTACIONAL NO CONTROLE DE QUALIDADE............................41
Estudo de caso: Controle de Qualidade em madeiras de Pinho.......................................42

VISO COMPUTACIONAL E ROBTICA................................................................45

VISO COMPUTACIONAL E A MEDICINA.............................................................47

CONCLUSO.........................................................................................................................49
REFERNCIAS......................................................................................................................50

LISTA DE ILUSTRAES
Figura 1 Exemplo no Processamento de Imagens...................................................................8
Figura 2 - Imagens de rvores obtidas em condies diferentes..............................................10
Figura 3 - Do lado esquerdo uma imagem com rudo, e na direita a mesma imagem aps
filtragem....................................................................................................................................11
Figura 4 - Regies de vizinhana (mscaras) de tamanhos diferentes, porm, todos com lado
impar.........................................................................................................................................11
Figura 5 - Equao para binarizao de imagem......................................................................12
Figura 6 - Exemplo de binarizao...........................................................................................12
Figura 7 - Funo de binarizao para um valor k....................................................................14
Figura 8 - Equao para realce de contraste.............................................................................14
Figura 9 - Funo de transio para realce de contraste...........................................................14
Figura 10 - Equao bsica sobre histograma de imagem........................................................14
Figura 11 - Como um Histograma determinado.....................................................................14
Figura 12 - Sobre um histograma equalizado...........................................................................15
Figura 13 - Exemplo de Histograma.........................................................................................15
Figura 14 - Esquema da operao de Correlao......................................................................16
Figura 15 - Equao sobre um filtro de mdia..........................................................................17
Figura 16 - Exemplo de mscaras do tipo mdia......................................................................17
Figura 17 - Funo bidimensional Gaussiana discreta.............................................................18
Figura 18 - Gaussiana para um filtro do tipo passa-baixa........................................................18
Figura 19 - Mscara para um filtro do tipo passa-alta..............................................................19
Figura 20 - Expresses que computam a transformada de Fourier...........................................19
Figura 21 - Processo de convoluo no domnio espacial........................................................19
Figura 22 - Expresso sobre um filtro passa-baixa...................................................................20
Figura 23 - Filtro ideal no domnio de frequncia....................................................................20
Figura 24 - Expresso do Filtro de Butterworth.......................................................................21
Figura 25 - Expresso sobre um filtro passa-alta no domnio de frequncia............................21
Figura 26 - Expresso do Filtro de Butterworth passa-alta no domnio de frequncia.............21
Figura 27 - Mscaras dos operadores de Sobel para um ngulo de 45....................................23
Figura 28 - Expresses sobre operadores de Prewitt e Sobel...................................................23
Figura 29 - Mscaras relacionadas aos operadores de Prewitt e Sobel.....................................24
4

Figura 30 - Operador Laplaciano de uma funo Gaussiana....................................................25


Figura 31 - Formato de curva e mscara que representa o operador........................................25
Figura 32 - Expresses operador de Canny..............................................................................26
Figura 33 - de segmentao usando o operador de Canny........................................................26
Figura 34 - Segmentao de imagem utilizando a tcnica de corte..........................................27
Figura 35 - Exemplo de segmentao por crescimento de regio............................................28
Figura 36 - Exemplo de funcionamento do mtodo de diviso e unio de regies..................29
Figura 37 - Exemplo de estrutura para o reconhecimento de faces..........................................32
Figura 38 - Algoritmos e comandos para reconhecimento de padres no OpenCV.................33
Figura 39 - Exemplo de Mean-Shift.........................................................................................35
Figura 40 - Controle hierrquico Buttom-Up...........................................................................39
Figura 41 - Controle hierrquico Top-Down............................................................................40
Figura 42 - Controle hibrido com Feedback.............................................................................40
Figura 43 - Controle utilizando Inteligncia Artificial Distribuda..........................................41
Figura 44 - Estudo de caso: Tbua com ns.............................................................................43
Figura 45 - Estudo de caso: Mesma tbua em P&B.................................................................43
Figura 46 - Estudo de caso: Histograma...................................................................................44
Figura 47 - Estudo de caso: Imagem Segmentada por Regio.................................................44
Figura 48 - Viso computacional e Robtica............................................................................45
Figura 49 - Viso computacional e Robtica 2.........................................................................46
Figura 50 - Segunda gerao.....................................................................................................46
Figura 51 - Crebro humano em uma ressonncia magntica..................................................47
Figura 52 - Ultrassonografia.....................................................................................................48

INTRODUO
5

A viso computacional uma nova disciplina que esta ganhando cada vez mais espao
nos projetos acadmicos.
No tem como no falar de robtica ou inteligncia artificial sem falar dos sistemas
que enxergam e compreende o espao em que percorre.
No apenas na robtica e na rea de inteligncia artificial, a viso computacional tem
uma grade misso: a de se tornar ferramenta forte na rea de medicina e de produo a fim de
eliminar custos e diminuir erros.

Objetivo
Demonstrar no apenas de forma terica mas tambm pratica, tcnicas atuais de viso
computacional e reconhecimento de imagens.

Metodologia
O resultado deste trabalho foi possvel mediante pesquisar na internet e livros tcnicos
que abordam este assunto.

Estrutura do Trabalho

No captulo um e dada uma introduo sobre viso computacional e suas definies.


Nos captulos seguintes so apresentadas tcnicas e aplicaes da viso
computacional.

1
1.1

VISO COMPUTACIONAL
O que Viso Computacional
Viso por computador (Viso Computacional) a rea da cincia que se dedica a

desenvolver teorias e mtodos voltados extrao automtica de informaes teis contidas


em imagens. Tais imagens so capturadas por dispositivos, como cmera de vdeo, scanner,
etc.
Por este motivo, a recente evoluo tecnolgica dos computadores e dispositivos, a
preos acessveis, tm possibilitado a crescente aplicao de viso computacional nas mais
diversas reas. Como exemplos em viso computacional podemos citar: anlise automtica de
smen humano, medio computadorizada do dimensional de peas, rastreio de alvos para
deteco de intrusos, anlise morfolgica de clulas, reconhecimento e sintetizao de faces
humanas, entre outras.
A criao de sistemas de viso computacional, seja para aplicaes em inspeo
industrial ou para navegao de robs mveis, envolve, quase sempre, a execuo de um
determinado conjunto de transformaes em dados obtidos de sensores como cmeras e
sonares. Para esta classe de problemas possvel a determinao de uma arquitetura de
software que suporte as principais etapas do desenvolvimento deste tipo de sistemas,
enfatizando o reaproveitamento de cdigo e minimizando o esforo despendido em atividades
repetitivas.
Uma interessante aproximao para construo de mquinas inteligentes expandir os
sentidos atravs dos quais o computador pode comunicar-se com o mundo exterior. A
utilizao da viso de mquina amplia as aplicaes em computadores, como por exemplo,
navegao mvel por rob, tarefas complexas de manufatura, anlise de imagens de satlites e
processamento de imagens mdicas.
A viso computacional procura oferecer de modo mais eficiente possvel uma vasta
quantidade de informaes ao sistema computacional para que este possa agir como esperado.
H sempre a necessidade de construir um modelo da imagem processada. Com base
nessa necessidade, muitas teorias sobre o objetivo da viso computacional esto baseadas na
reproduo das cenas das imagens processadas. (Shapiro e Stockamn, 2001)

A viso computacional abrange um vasto leque de temas e esta relacionada com varias
outras disciplinas, portanto, no h uma formula padro de como fazer, ou estudar, ou
pesquisar a viso computacional.
Nas pesquisas cientificas, nos trabalhos acadmicos, nos produtos comerciais, existe
uma diversificada quantidade de mtodos para resolver as tarefas atribudas aos sistemas de
viso computacional.
Na disciplina da fsica, os sistemas de viso computacional permitem contribuir com
sensores de imagens que detectam a radiao eletromagntica ou infra-vermelho.
Com os avanos das tecnologias de viso computacional, a medicina se coloca como
uma das maiores beneficiadas. O processo de extrao de informaes das imagens com o
objetivo de estabelecer diagnsticos mdicos mais precisos vem ganhando fora. O avano
das tcnicas de processamento de imagens auxilia no resultado de diagnsticos com maior
ndice de acerto.
1.2

Viso Computacional e Processamento de Imagens


No clara a fronteira entre o processamento de imagens e viso computacional.
Podemos dizer que processamento de imagens um processo onde a entrada do

sistema uma imagem e a sada um conjunto de valores numricos, que podem ou no


compor outra imagem. A viso computacional procura emular a viso humana, portanto
tambm possui como entrada uma imagem, porm, a sada uma interpretao da imagem
como um todo, ou parcialmente. Como sero demonstrados, os processos de viso
computacional geralmente iniciam com o processamento de imagens. Conforme Gonzalez o
espectro que vai do processamento de imagens at a viso computacional pode ser dividido
em trs nveis: baixo-nvel, nvel-mdio e alto-nvel.
Os processos de baixo-nvel envolvem operaes primitivas, tais como a reduo de
rudo ou melhoria no contraste de uma imagem.
Os processos de nvel-mdio so operaes do tipo segmentao (particionamento da
imagem em regies) ou classificao (reconhecimento dos objetos na imagem).
Os processos de alto-nvel esto relacionados com as tarefas de cognio associadas
com a viso humana.

Placa:
BRK
8558
Veculo:
Pajero
1995

FIGURA 1 Exemplo no Processamento de Imagens.

Veculo em imagem escura (esquerda). Aps uma equalizao de histograma, em nvel


de cinza, onde a placa do veculo pode ser lida (direita).
A Figura 1 mostra as diferenas entre processamento de imagens e viso
computacional. A imagem da esquerda mostra o veculo, porm, no possvel ler a placa,
pois a imagem est muito escura. Na imagem da direita foi feita uma operao de equalizao
de histograma da imagem, tipicamente uma operao de processamento de imagem. O
resultado uma imagem mais clara e que permite a leitura da placa do veculo. Uma operao
de viso computacional a aplicao de um operador que extrai a placa do veculo e
identifica as letras e nmeros da placa, possibilitando que os dados do veculo sejam
encontrados em um banco de dados.
OpenCV (Open Source Computer Vision) uma biblioteca de programao, de cdigo
aberto, desenvolvida inicialmente pela Intel Corporation. O OpenCV implementa uma
variedade de ferramentas de interpretao de imagens, indo desde operaes simples como
um filtro de rudo, at operaes complexas, tais como a anlise de movimentos,
reconhecimento de padres e reconstruo em 3D. O pacote OpenCV est disponvel
gratuitamente na Internet bem como o manual de referncia.

2
2.1

PROCESSAMENTO DE IMAGENS
Filtros
Os processos de viso computacional, muitas vezes, necessitam de uma etapa de pr-

processamento envolvendo o processamento de imagens. As imagens de onde queremos


extrair alguma informao em alguns casos precisam ser convertidas para um determinado
formato ou tamanho e precisam ainda ser filtradas para remover rudos provenientes do
processo de aquisio da imagem.
Os rudos podem aparecer de diversas fontes, como por exemplo, o tipo de sensor
utilizado, a iluminao do ambiente, as condies climticas no momento da aquisio da
imagem, a posio relativa entre o objeto de interesse e a cmera. Note que rudo no apenas
interferncia no sinal de captura da imagem, mas tambm interferncias que possam
atrapalhar a interpretao ou o reconhecimento de objetos na imagem. A Figura 2 mostra
imagens de rvores em condies diferentes para exemplificar estes tipos de interferncia.

FIGURA 2 - Imagens de rvores obtidas em condies diferentes.

Topo esquerda uma imagem normal, topo direita com interferncia


de iluminao, baixo esquerda interferncia do perodo do ano e baixo direita
mudana do tipo de sensor.
Os filtros so as ferramentas bsicas para remover rudos de imagens, neste caso, o
rudo aquele que aparece no processo de aquisio da imagem. A Figura 3 apresenta um
exemplo de uma imagem com rudo ( esquerda) e da imagem filtrada ( direita).

10

FIGURA 3 - Do lado esquerdo uma imagem com rudo, e na direita a mesma imagem aps
filtragem.

2.2

Domnio e Espao
O termo domnio espacial se refere imagem em si, e mtodos que atuam no domnio

espacial esto baseados na manipulao direta dos pixels da imagem. Os processos no


domnio espacial so caracterizados pela seguinte equao: g(x, y) = T( f (x, y)), onde: f(x,y)
a imagem original, T( ) uma transformao na imagem e g(x,y) a imagem transformada.
T uma operao definida sobre uma vizinhana de influncia do pixel que est localizado na
posio x, y. A idia de vizinhana de influncia considera os pixels ao redor da posio x, y.
Esta vizinhana definida por uma regio quadrada (ou retangular) e de tamanho (lado)
impar. A Figura 4 mostra alguns exemplos de vizinhana com tamanhos variados, estas
regies, que definem matrizes nas operaes de transformao, tambm so chamadas de
mscaras.

FIGURA 4 - Regies de vizinhana (mscaras) de tamanhos diferentes, porm, todos com lado impar.

11

2.3

Transformao da Intensidade
No caso mais simples o operador T computado em uma vizinhana de tamanho 1x1,

isto , apenas o valor do pixel no ponto suficiente para determinar o valor na imagem
processada. Este tipo de operao chamada de funo de transformao de intensidade,
utilizada para alterar a intensidade da imagem e pode ser aplicada a toda a imagem ou a uma
parte dela. Uma operao bastante til a binarizao de uma imagem, que utiliza um certo
valor de corte (k). Este tipo de transformao definida na equao contida na Figura 5.

FIGURA 5 Equao para binarizao de imagem

FIGURA 6 Exemplo de binarizao

Mostra a aplicao da FIGURA 5 para um valor de k=84. Esta tcnica utilizada para
encontrar componentes conexos na imagem e isolar objetos de interesse.
Note que na funo de binarizao o corte feito de forma abrupta, todos os valores
acima de k (valores mais claros ou com a mesma intensidade de k) so mapeados para o valor
1 (branco) e os valores menores que k (mais escuros que k na imagem) so mapeados para 0
(preto). A funo de binarizao tem o formato apresentado na Figura 7.

12

FIGURA 7 - Funo de binarizao para um valor k.

Esta transio pode no ser to abrupta como na funo de binarizao, por exemplo, a
funo de realce de contraste dada pela equao existente na FIGURA 8:

FIGURA 8 Equao para realce de contraste.

Onde, m o valor mdio da regio que se deseja realar o contraste, e E define a


inclinao da curva, e consequentemente os valores de mapeamento para a imagem de sada.
A funo de transio apresentada na Figura 9. Note que os valores de sada no so apenas
0 ou 1 mas, na regio de interesse existe uma variao no contraste na imagem de sada.

FIGURA 9 Funo de transio para realce de contraste

13

2.4

Histogramas
Os histogramas so ferramentas de processamento de imagens que possuem grande

aplicao prtica. Os histogramas so determinados a partir de valores de intensidade dos


pixels. Entre as principais aplicaes dos histogramas esto a melhora da definio de uma
imagem, a compresso de imagens, a segmentao de imagens ou ainda a descrio de uma
imagem.

FIGURA 10 Equao bsica sobre histograma de imagem

O histograma de uma imagem I, cujos valores de intensidade k estejam entre 0 e G,


definido pela equao na Figura 10, onde Ik um valor de intensidade k da imagem I e nk o
nmero de pixels na imagem I que possuem a intensidade k.

A Figura 11 mostra como um histograma determinado.

FIGURA 11 Como um Histograma determinado.

esquerda uma imagem I, ao centro o histograma da imagem em valores (h(I)) e em


porcentagem (p(I)), direita uma representaodo histograma de forma grfica.
Uma operao bastante comum utilizando histogramas o ajuste dos valores de
intensidade de forma a melhorar o contraste em uma imagem. Esta operao chamada de
equalizao de histogramas. A idia desta operao mapear os valores de intensidade de uma
imagem de um intervalo pequeno (pouco contraste) para um intervalo maior (muito contraste)
e ainda distribuir os pixels ao longo da imagem de forma a obter uma distribuio uniforme
de intensidades (embora na prtica isso quase sempre no ocorra).
14

Segue na Figura 12 a expresso que fornece um histograma equalizado.

FIGURA 12 Equao sobre um histograma equalizado

Nesta figura k a intensidade no histograma equalizado, L o valor mximo de


intensidade na imagem, M e N so as dimenses da imagem e nj o nmero de pixel na
imagem com valor de intensidade igual a j. A Figura 13 mostra um exemplo de uma imagem
que foi ajustada utilizando equalizao de histograma.

FIGURA 13 Exemplo de Histograma

Topo esquerda, imagem em nvel de cinza, e abaixo dela o histograma da imagem.


Topo direita, a mesma imagem aps equalizao, e o histograma equalizado da imagem.

15

2.5

Filtragem no Domnio Espacial


Existem dois conceitos, de certa forma similares, que esto relacionados com a

filtragem no domnio de espao, so eles os de correlao e convoluo. As transformaes no


domnio de espao dependem de uma vizinhana de influncia (mscara) do pixel que est
sendo considerado. A idia destas duas operaes a seguinte: cria-se uma mscara com
dimenso d, onde cada posio da mscara possui um determinado valor. Em seguida colocase a mscara com sua posio central sobre a imagem na posio (x,y) e, para cada posio da
mscara executa-se o produto do valor da mscara pelo valor do pixel, faz-se a somatria
destes valores obtidos na multiplicao e substitui-se o valor da posio (x,y) por este
resultado. Esta operao apresentada esquematicamente na Figura 14.

FIGURA 14 - Esquema da operao de Correlao

No topo esquerda est a imagem e ao centro a mscara utilizada. No topo direita a


indicao dos produtos dos valores da mscara pelos valores dos pixels da imagem, ponto a
ponto. Embaixo direita a somatria dos valores multiplicados e, finalmente, embaixo
esquerda o novo valor do pixel na imagem aps a correlao.
A diferena entre a correlao e a convoluo est na forma como a mscara
utilizada: na correlao a operao feita conforme indicado na Figura 14, j na operao de
convoluo a mscara rotacionada 180 graus. Note que, se a mscara for simtrica as
operaes de correlao e convoluo so idnticas.

16

2.6

Filtros Estatsticos
Os filtros estatsticos so os filtros espaciais mais comuns, entre eles podemos citar o

filtro de mdia, mediana, moda, mnimo e mximo. O filtro de mdia, tambm chamado de
filtro-caixa, um filtro do tipo passa-baixa. O efeito de um filtro passa-baixa de suavizao
da imagem e minimizao dos rudos, atenuando as transies abruptas que correspondem a
frequncias altas, porm, o efeito acaba sendo de borramento da imagem que acaba
removendo os detalhes finos da imagem. A expresso de um filtro de mdia dada pela
equao indicada na Figura 15:

FIGURA 15 Equao sobre um filtro de mdia

Onde m e n so as dimenses de uma mscara qualquer. A Figura 16 mostra dois


exemplos de mscaras do tipo mdia.

FIGURA 16 Exemplo de mscaras do tipo mdia

esquerda tem-se um filtro mdia simples do tipo caixa. direita tem-se um filtro de
mdia ponderada com atenuao variando de acordo com a distncia e orientao ao centro da
mscara.
Os outros filtros estatsticos no so lineares e so utilizados de forma a evitar uma
suavizao homognea da imagem. No filtro da mediana os valores dos pixels so ordenados
e o valor que ocupa a posio mediana selecionado para a posio (x, y) da imagem filtrada.
Este filtro tende a reduzir o efeito de rudo de pulso.
O filtro de mximo substitui o valor da posio (x, y) pelo valor mximo da mscara,
este filtro tem a tendncia de clarear a imagem. Analogamente o filtro de mnimo substitui o
valor da posio (x, y) pelo valor mnimo da mscara, este filtro tem a tendncia de escurecer
a imagem. O filtro de moda seleciona para a posio (x, y) da imagem o valor que ocorre com
maior frequncia na mscara, este tipo de filtro tende a homogeneizar os valores na imagem.
17

2.7

Filtros Gaussianos
Um filtro Gaussiano tem os valores da mscara determinados a partir de uma funo

bidimensional Gaussiana discreta, com mdia igual a zero e desvio padro, como mostrado na
equao abaixo (Fig. 17):

FIGURA 17 Funo bidimensional Gaussiana discreta

Onde x e y so as posies na mscara e Gauss(x, y) d o valor a ser colocado na


posio (x, y) da mscara. Os filtros Gaussianos so filtros de mdia e so utilizados para
suavizar a imagem de forma ponderada e simtrica. Um exemplo de mscara Gaussiana de
tamanho 5x5 apresentado na Figura 18.

FIGURA 18 - Mscara Gaussiana para um filtro do tipo passa-baixa.

2.8

Filtro Passa-Alta
O filtro do tipo passa-alta utilizado para realar bordas ou regies de interesse com

transies abruptas de intensidade. O problema deste tipo de filtro que ele geralmente reala
tambm rudos do processo de obteno da imagem. Alguns exemplos de mscaras para
filtros passa-alta so apresentadas na Figura 19.

FIGURA 19 - Mscara para um filtro do tipo passa-alta,

Note que a soma dos valores dentro da mscara somam zero.


18

2.9

Domnio de Frequncia
possvel fazer uma troca de base em uma imagem e represent-la em termos de uma

soma ponderada infinita de um conjunto de senides. Esta representao mostra que


mudanas rpidas na imagem so representadas por frequncias altas e, por outro lado,
mudanas suaves so representadas por frequncias baixas. Esta mudana de base pode ser
feita utilizando a transformada de Fourier. As expresses que computam a transformada de
Fourier no modo contnuo e no modo discreto so apresentadas nas equaes contidas na
Figura 20:

FIGURA 20 Expresses que computam a transformada de Fourier

A expresso discreta a utilizada na DFT (Discrete Fourier Transform) que


geralmente utilizada na implementao em computador da transformada de Fourier.
Matematicamente o processo de convoluo no domnio espacial corresponde multiplicao
de duas expresses no domnio de frequncia (Figura 21).

FIGURA 21 Processo de convoluo no domnio espacial

Onde ** indica a convoluo entre a imagem f(x,y) com a mscara w(i,j). G(u,v) a
transformada de Fourier de g(x,y), que o produto de F(u,v) por W(r,s) onde F(u,v) a
transformada de Fourier de f(x,y) e W(r,s) a transformada de Fourier de w(i,j).
2.9.1

Filtro Passa-baixa - Domnio de frequncia


Um filtro passa-baixa ideal dado pela expresso contida na Figura 22.

19

FIGURA 22 Expresso sobre um filtro passa-baixa

Onde F0 uma frequncia de corte. Este filtro faz um corte abrupto em uma certa
frequncia, por isso o nome de filtro ideal. O formato deste filtro apresentado na Figura 23.

FIGURA 23 - Filtro ideal no domnio de frequncia.

esquerda o formato do filtro em 3D mostrando o corte acentuado na frequncia de


corte. direita uma vista esquemtica do mesmo filtro.

Outro filtro do tipo passa-baixa o filtro de Butterworth cuja expresso mostrada na


Figura 24.

FIGURA 24 Expresso do Filtro de Butterworth

Onde n define a ordem do filtro de Butterworth, na prtica o valor de n define a forma


como a funo atenua a frequncia a partir da origem do filtro.

20

2.9.2

Filtro Passa-alta Domnio de frequncia


Os filtros passa-alta no domnio de frequncia so definidos de forma similar aos

filtros passa-baixa. O filtro passa-alta ideal dado pela equao contida na Figura 25.

FIGURA 25 Expresso sobre um filtro passa-alta no domnio de frequncia

A expresso do filtro passa-alta de Butterworth dada pela equao contida na Figura


26.

FIGURA 26 Expresso do Filtro de Butterworth passa-alta no domnio de frequncia

SEGMENTAO
Na parte relacionada ao processamento de imagens ficou caracterizado o carter de

processo de baixo nvel, mais precisamente a eliminao de rudos e melhoria no contraste das
imagens. Neste item comeamos a migrar para os processos mais relacionados com a viso
computacional. Veremos inicialmente um processo de nvel mdio (segmentao e
reconhecimento) para em seguida analisarmos processos mais cognitivos, como o
rastreamento de um objeto numa sequncia de imagens.
O processo de segmentao consiste em particionar uma imagem em regies, ou
objetos distintos. Este processo geralmente guiado por caractersticas do objeto ou regio,
como por exemplo, cor ou proximidade. O nvel de detalhamento em um processo de
segmentao depende da tarefa a ser executada e da resoluo da imagem que se tem, por
exemplo, se procuramos por uma casa em imagens que foram obtidas do nvel da rua, estamos
21

procurando regies que ocupam uma boa porcentagem da imagem (regies grandes), porm,
se procuramos por casas a partir de imagens de satlite, estamos procurando regies pequenas.
Embora a tarefa seja a mesma, a resoluo das imagens diferente e o tratamento utilizado no
processo de segmentao pode ser diferente tambm.
As tcnicas de segmentao que sero apresentadas podem ser classificadas em trs
grupos, a saber:
Segmentao por deteco de borda.
Segmentao por corte.
Segmentao por crescimento de regio.
3.1

Segmentao por Deteco de borda


Uma borda em uma imagem caracterizada por uma mudana, normalmente abrupta,

no nvel de intensidade dos pixels. Os detectores de borda so definidos para encontrar este
tipo de variao nos pixels e quando estes pixels esto prximos eles podem ser conectados
formando uma borda ou um contorno e assim definindo uma regio ou objeto.
Variaes nos nveis de intensidade dos pixels podem ser determinadas pelas derivadas
primeira e/ou derivada segunda. Alguns mtodos de determinao de borda utilizam estas
tcnicas. O processo consiste em se definir mscaras que caracterizem estas variaes e em
seguida fazer a convoluo da imagem pela mscara.
Os operadores mais comuns baseado na derivada primeira (operadores de gradiente)
de uma imagem so os operadores de Prewitt e de Sobel.
Figura 27 apresenta uma mscara do detector Sobel para um ngulo de 45.

FIGURA 27 - Mscaras dos operadores de Sobel para um ngulo de 45.

As expresses matemticas que definem estes operadores so apresentadas nas


equaes contidas na Figura 28.
22

FIGURA 28 Expresses sobre operadores de Prewitt e Sobel

Note que o operador de Sobel semelhante ao de Prewitt sendo a nica diferena o


valor 2 que multiplica o termo central nas linhas da mscara. Este fator tende a suavizar o
resultado do operador, atenuando rudos.
A Figura 29 mostra as mscaras relacionadas a cada um destes operadores para
deteco de bordas verticais e horizontais.

FIGURA 29 - mscaras relacionadas aos operadores de Prewitt e Sobel.

23

Onde em cima existe uma mscara genrica com a posio dos valores utilizados nas
equaes de Prewitt e Sobel. Abaixo, esquerda, as mscaras dos operadores de Prewitt,
horizontal e vertical e abaixo, direita as mscaras dos operadores de Sobel.
possvel ainda definir operadores que atuam utilizando a derivada segunda dos
pixels (operadores Laplacianos), estes operadores so baseados no fato que quando existe uma
borda a derivada segunda atravessa o eixo das abscissas. Um dos primeiros detectores de
borda utilizando este conceito foi o de Marr-Hildreth, que foi baseado nos seguintes
conceitos:
A mudana de intensidade no independente da escala da imagem, logo os
operadores devem ter tamanhos diferentes.
A mudana de intensidade de forma abrupta faz com que a derivada segunda
atravesse o eixo das abscissas.
Marr e Hildreth definiram um operador Laplaciano de uma funo Gaussiana,
conforme a equao contida na figura 30, o formato da curva e a mscara 5x5 que representa
a funo so apresentados na Figura 31. O operador simtrico, uma caracterstica da curva
Gaussiana, o que evita o uso de operadores mltiplos e tem um efeito de suavizao da
imagem. Note que os coeficientes da mscara somam zero, isto garante que em locais onde a
imagem homognea no acrescentado valor algum na imagem resultante.

FIGURA 30 - Operador Laplaciano de uma funo Gaussiana

24

FIGURA 31: Formato de curva e mscara que representa o operador

esquerda a superfcie da Laplaciana de uma Gaussiana e direita uma mscara 5x5


representando a superfcie
Alm do operador Marr-Hildreth existe tambm a tcnica de deteco de borda
desenvolvida por Canny, embora seja a mais complexa, tambm a de melhor desempenho
entre as tcnicas discutidas at aqui.
O detector de bordas de Canny possui trs objetivos bsicos: baixa taxa de erro (todas
as bordas devem ser encontradas), os pontos da borda devem ser bem localizados (as bordas
localizadas devem ser prximas das bordas reais) e resposta nica para os pontos de uma
borda (o operador deve retornar apenas um ponto para cada ponto sobre a borda). Canny
conseguiu representar estas idias matematicamente e, utilizando otimizao numrica,
definiu um detector de borda baseado na primeira derivada de uma Gaussiana. Numa primeira
etapa a imagem envolvida por uma funo Gaussiana, em seguida so determinados a
magnitude e a direo, conforme indicado pelas expresses contidas na Figura 32.

FIGURA 32 Expresses operador de Canny

Os valores de gi podem ser obtidos a partir dos operadores de Prewitt ou de Sobel.

25

M(x, y) uma imagem que contm a informao da magnitude em cada pixel e (x, y)
uma imagem que contm a direo da normal borda para cada pixel. A idia , para cada
pixel p, verifica se pelo menos um dos vizinhos de p possui a mesma direo que p, se sim,
marca o pixel com M(x, y) (as coordenadas de p), seno marca a imagem de sada com 0.
Finalmente utiliza-se um operador de corte para reduzir pontos de borda falsos.
O operador de corte, neste caso, baseado em histerese. O operador de corte baseado
em histerese possui dois valores, um valor chamado de alto e outro chamado de baixo. So
feitas as operaes de corte usando estes valores e so obtidas duas imagens binrias, estas
imagens so subtradas uma da outra para se obter a imagem final (Img baixa Img alta).
O tamanho da Gaussiana utilizada o mesmo definido para o operador de MarrHildreth.
A Figura 33 mostra um exemplo de segmentao de imagem utilizando o operador de
Canny.

FIGURA 33 - Exemplo de segmentao usando o operador de Canny.

esquerda a imagem original e direita a imagem segmentada. Foi utilizado um valor


de corte alto de 0.5 e desvio padro de 2.
3.2

Segmentao por Corte


A segmentao de imagens por corte simples de ser implementada, rpida em

termos computacionais e utiliza de propriedades intuitivas para criar a imagem segmentada.


A segmentao por corte particiona uma imagem diretamente em regies baseado
simplesmente nos valores de intensidade e/ou propriedades destes valores.
A idia central deste tipo de operador a de verificar no histograma da imagem
quantas regies existem (picos e vales) e segmentar a imagem baseado nesta informao. A
Figura 34 apresenta um exemplo de imagem e mostra o histograma da imagem, apresentando

26

um possvel local onde a imagem poderia ser particionada e a imagem binarizada aps o
corte.

FIGURA 34 - Segmentao de imagem utilizando a tcnica de corte.

esquerda a imagem em nvel de cinza, ao centro o histograma com o ponto de corte


e direita a imagem binarizada.
Note que, utilizando esta tcnica possvel definir mais de uma regio e criar uma
imagem segmentada que no seja simplesmente uma imagem binria. possvel ainda fazer
tratamentos no histograma para minimizar efeitos de rudos que apaream na imagem.
3.3

Segmentao Baseada em Crescimento de Regio


Esta tcnica de segmentao encontra regies diretamente na imagem agrupando

pixels ou sub-regies em regies maiores baseado em critrios de crescimento pr-definidos.


O procedimento parte de um conjunto de pontos, chamados de sementes, e, a partir
destes pontos vai agrupando pontos utilizando uma vizinhana de influncia, formando as
regies.
Nesta vizinhana so analisadas propriedades e so medidas similaridades para
determinar se o pixel faz parte ou no da regio sendo considerada. As propriedades
normalmente consideradas so: cor, intensidade de nvel de cinza, textura, momentos, etc.
Detalhes importantes desta tcnica so a definio das sementes e a definio de um
critrio de parada para o crescimento de regies. Um algoritmo bsico de crescimento de
regies que considera uma vizinhana de 8 descrito abaixo, o algoritmo considera f(x,y) a
imagem de entrada, S(x,y) uma imagem que define as sementes do processo de crescimento
de regio e Q a propriedade a ser considerada na definio da regio:

27

a) Encontre as componentes conexas em S e ache, para cada uma delas, o ponto


central da regio.
b) Crie uma imagem t tal que, para cada posio (x,y) em f, t(x,y)=1 se f(x,y) possui a
propriedade Q.
c) Crie uma imagem g fazendo a unio entre S e t se os pontos em t estiverem
conectados a uma semente, usando uma vizinhana de 8.
d) Rotule cada regio de g com um valor diferente. Esta a imagem final segmentada.
A Figura 35 apresenta um exemplo de segmentao pelo mtodo de crescimento de
regio. Note que esta segmentao possui menos componentes conexos que a binarizao.

FIGURA 35 Exemplo de segmentao por crescimento de regio.

esquerda a imagem original e direita a imagem segmentada utilizando o mtodo de


crescimento de regio. Neste caso a caracterstica utilizada foi de valor de intensidade menor
que 125.
Uma alternativa a este mtodo subdividir a imagem inicialmente em um conjunto de
regies disjuntas e unir, ou no, as regies de forma a atender as caractersticas que esto
sendo utilizadas no processo de segmentao. Este tipo de tcnica pode utilizar uma estrutura
de Quadtrees, que so rvores onde um n possui exatos quatro filhos. As imagens
correspondentes a cada filho so chamadas de Quadregions ou Quadimages. Um exemplo do
esquema utilizado no mtodo de dividir e unir regies apresentado na Figura 36.

28

FIGURA 36 - Exemplo de funcionamento do mtodo de diviso e unio de regies.

As regies marcadas com o X no so divididas novamente pois no apresentam


pixels com valores abaixo de 125.

4
4.1

RECONHECIMENTO DE PADRES
O que reconhecimento de padres
Reconhecer significa conhecer de novo, e isto implica num processo onde existe

algum conhecimento prvio e algum tipo de armazenamento do conhecimento sobre o objeto


a ser reconhecido. Esta a parte onde os sistemas de viso possuem uma interseco com a
rea de inteligncia artificial. Para fazer o reconhecimento um sistema de viso necessita uma
base de conhecimento dos objetos a serem reconhecidos, esta base de conhecimento pode ser
implementada diretamente no cdigo, atravs, por exemplo, de um sistema baseado em
regras, ou esta base de conhecimento pode ser aprendida a partir de um conjunto de amostras
dos objetos a serem reconhecidos utilizando tcnicas de aprendizado de mquina.
O reconhecimento de objetos uma das principais funes da rea de viso
computacional e est relacionado diretamente com o reconhecimento de padres. Um objeto
29

pode ser definido por mais de um padro (textura, forma, cor, dimenses, etc.) e o
reconhecimento individual de cada um destes padres pode facilitar o reconhecimento do
objeto como um todo. As tcnicas de reconhecimento de padres podem ser divididas em dois
grandes grupos: estruturais, onde os padres so descritos de forma simblica e a estrutura a
forma como estes padres se relacionam; o outro grupo baseado em tcnicas que utilizam
teoria de deciso, neste grupo os padres so descritos por propriedades quantitativas e devese decidir se o objeto possui ou no estas propriedades.
Os processos de reconhecimento de padres podem ainda ser uma mistura das tcnicas
utilizadas nestes dois grupos, por exemplo, no processo de reconhecimento de faces
utilizado um modelo estrutural para determinar o local mais provvel para se encontrar partes
de uma face (boca, olhos e pele), conforme apresentado na Figura 37. Cada uma destas partes
pode agora ser reconhecida utilizando outro tipo de tcnica, por exemplo, os olhos podem ser
reconhecidos utilizando uma rede neural, a pele pode ser reconhecida por uma anlise
estatstica e a boca pode ser reconhecida por um critrio de distncia mnima, todas so
tcnicas de teoria de deciso.

FIGURA 37 - Exemplo de estrutura para o reconhecimento de faces.

O modelo indica locais onde se esperam encontrar olhos, boca e pele. Reconhecer as
partes pode levar ao reconhecimento da face.
difcil encontrar tcnicas estruturais prontas em bibliotecas, uma vez que estas
tcnicas dependem da estrutura de cada objeto. Para alguns objetos especficos, porm,
possvel encontrar pacotes prontos. O OpenCV no possui uma ferramenta pronta que utilize
30

este tipo de tcnica. As tcnicas baseadas em teoria de deciso so mais gerais e podem ser
adaptadas a diferentes tipos de objetos. O OpenCV possui diversas tcnicas nesta categoria,
conforme apresentado na Figura 38.

31

FIGURA 38 Algoritmos e comandos para reconhecimento de padres no OpenCV

4.2

Rastreamento
O processo de rastreamento um processo de reconhecer um padro em uma

sequncia de imagens. O rastreamento poderia ser feito desta forma, porm, a busca em cada
imagem de uma sequncia sem o uso de qualquer conhecimento especfico relativamente
lenta. Os processos de rastreamento atrelam um conhecimento sobre o movimento do objeto
que est sendo rastreado para minimizar a busca entre as imagens em uma sequncia. Os
processos de rastreamento podem ser aplicados em diversas reas, indo de sistemas de
segurana/vigilncia at o uso em sistemas de interface humano-computador.

32

4.3

Corner Finding
Este tipo de tcnica pressupe a busca por um mesmo objeto de interesse em

sequncias de frames num stream de vdeo. A idia bsica buscar pontos diferenciados em
uma imagem, passveis de serem novamente encontrados em frames subsequentes.
O OpenCV possui uma funo de reconhecimento de objetos que implementa uma
tcnica baseada no clculo de derivadas de segunda ordem usando operadores de Sobel e que
so usadas para o clculo necessrios.
4.4

Subpixel Corners
A tcnica anterior retorna coordenadas inteiras, o que suficiente para reconhecimento

de objetos, mas pode no ser para a extrao de medidas geomtricas que requeiram maior
preciso. As tcnicas de localizao de subpixels so utilizadas para que se obtenha com
maior preciso a localizao de detalhes de uma imagem. Entre as aplicaes esto o
rastreamento em reconstrues tri-dimensionais, calibragem de cmera, reconstruo de
imagens repartidas, localizao precisa de elementos em uma imagem de satlite, entre outras.
4.5

Optical Flow
Este tipo de tcnica possibilita a identificao de movimento entre sequncias de

frames sem que se conhea a anteriormente o contedo destes. Tipicamente, o movimento em


si indica que algo de interesse est acontecendo.
O OpenCV possui funes que implementam tcnicas de deteco de movimento
esparsas e densas. Algoritmos de natureza esparsa consideram algum conhecimento prvio
sobre os pontos que se deseja rastrear, como por exemplo os corners descritos nas sees
anteriores. Os algoritmos densos, por sua vez, associam um vetor de velocidade ou de
deslocamento a cada pixel na imagem, sendo, portanto desnecessrio o conhecimento prvio
de pontos especficos da imagem. Para a maioria das aplicaes prticas, entretanto, as
tcnicas densas possuem um custo de processamento muito alto, sendo preferveis, portanto,
as tcnicas esparsas.
4.6

Mean-Shift e Camshift
Camshift (Continuously Adaptive Mean-SHIFT) um algoritmo desenvolvido para o

rastreamento de cor, possibilitando tambm o rastreamento de faces. baseado numa tcnica


estatstica onde se busca o pico entre distribuies de probabilidade em gradientes de
33

densidade. Esta tcnica chamada de mdia por deslocamento (mean shift) e foi adaptada
no Camshift para tratar a mudana dinmica das distribuies de probabilidade das cores
numa seqncia de vdeo. Pode ser usada no rastreamento de objetos e no rastreamento de
faces,.
Para cada frame, a imagem (raw) convertida para outra de distribuio de
probabilidade de cor atravs de um modelo de histograma da cor da pele. O centro e o
tamanho da face que se quer rastrear so encontrados atravs do CamShift operando na
imagem de probabilidade de cores. O tamanho e a localizao corrente da face so informados
e usados para definir o tamanho e a localizao da janela de busca da prxima imagem de
vdeo.
A funo cvCamShift chama o algoritmo CamShift para buscar o centro, o tamanho e
a orientao do objeto sendo rastreado. A figura 39 mostra o programa camshiftdemo.c em
funcionamento. Este programa acompanha o pacote OpenCV, assim como vrias outras
demonstraes.

FIGURA 39 Exemplo de Mean-Shift

Nele consta o histograma, janela de opes e imagem capturada pela cmera e sendo
rastreada, o que demonstrado pela elipse ao redor da face.
4.7

Estimadores
Algoritmos deste tipo so capazes de estimar, por exemplo, a localizao de uma

pessoa ou objeto em movimento numa sequncia de vdeo. Esta tarefa dividida,


basicamente, em duas fases: predio, baseada num conhecimento prvio de dados da
imagem; e correo, que usa novas medidas para apurar a predio realizada anteriormente.

34

A tcnica mais conhecida para isto o filtro de Kalman, implementado no OpenCV


atravs de quatro funes.
Alm desta tcnica, o OpenCV traz a implementao de uma alternativa, o algoritmo
de condensao. Esta um tcnica mais sofisticada que se baseia no clculo de mltiplas
hipteses para as estimativas a serem realizadas, ao contrrio do filtro de Kalman.

35

APLICAO NA INTELIGNCIA ARTIFICIAL


A Viso Computacional comumente vista como parte da Inteligncia Artificial. Em

muitos casos essa afirmao corresponde realidade, pois a Viso Computacional constitui
uma forma de entrada de dados para a Inteligncia Artificial. Entretanto, a aplicao prtica
da Viso Computacional no se restringe ao universo da Inteligncia Artificial e, em alguns
casos, a prpria Inteligncia Artificial quem passa a servir a Viso Computacional.
A Inteligncia Artificial pode ser utilizada em Anlise de Imagens com duas
finalidades diferentes:

Controle do Processo de Interpretao de Imagens

Utilizao de Conhecimento para o Auxlio Interpretao de Imagens

Para a anlise inteligente de imagens fundamental que raciocnio subsimblico e


raciocnio simblico sejam integrados. O raciocnio subsimblico tpico do campo das
imagens e dos sinais. J o raciocnio simblico tpico da rea de Inteligncia Artificial.
Todos os esforos demonstrados at agora se concentram no desenvolvimento de um modelo
de integrao destas duas reas.
5.1
5.1.1

Caractersticas gerais
Raciocnio Subsimblico:

Algoritmos numricos/estticos;

Dados no possuem significado explcito;

Processamento de grandes quantidades de dados pouco estruturados (data


streams);

Mtodos utilizados no Processamento de sinais;

Sensvel a variaes nos parmetros dos algoritmos.

Exemplos:

Filtros de Gauss e outros filtros de rudo;

Detectores de bordas (Canny);

Segmentadores (Watershed, Mumford-Shah);

Redes Neuronais dedicadas Viso Computacional.


36

5.1.2

Raciocnio Simblico:

Processamento no-numrico;

Algoritmos/mtodos no-numricos;

Mtodos simblicos complexos e com capacidade de auto-adaptao;

Processamento de informao altamente estruturada (objetos, listas, frames,


regras);

Insensvel a variaes (at certo nvel) nos dados de entrada;

Dados possuem significado.

Exemplos:

Sistemas especialistas;

Sistemas de configurao e planejamento;

Sistemas baseados em conhecimento em geral;

Sistemas distribudos de agentes inteligentes e sistemas de quadro-negro


(blackboards).

5.1.3

A importncia da integrao entre raciocnio simblico e subsimblico


Como visto anteriormente, os raciocnios simblicos e subsimblico apresentam

muitas diferenas entre si. Mtodos de Inteligncia Artificial, por exemplo, no trabalham
com processamento de sinais. Os mtodos de processamento de sinais, por sua vez, so muito
limitados e especializados para lidarem com interpretaes adaptadas a um contexto desses
sinais.
Como soluo, prope-se a modelagem de mtodos subsimblicos como operadores
sobre sinais e a utilizao desses operadores atravs de tcnicas de Inteligncia Artificial.
Dessa

soluo

deriva

necessidade

de

um

modelo

para

integrao

simblico/subsimblica. A partir da so desenvolvidos diversos modelos para o controle


dessa integrao simblico/subsimblica.

5.2

Estratgias de Controle
Haralick e Shapiro citam quatro diferentes estratgias para a modelagem de um

mecanismo para o controle do processo de anlise de imagens. Este processo seria realizado a
alto nvel, controlado por uma ou mais instncias de IA, responsvel por programar
37

mecanismos de processamento e reconhecimento de sinais, integrando processos inteligentes


aos mesmos.
Em nenhuma das estratgias descritas por Haralick e Shapiro especificam-se quais
sero as tcnicas de IA utilizadas para a execuo de tarefas como tomada de decises,
extrao de atributos ou predio. Especifica-se apenas que estas tarefas, nestes modelos,
sero realizadas por componentes de IA de algum tipo.
Nas imagens 40, 41, 42 e 43, esto as quatro estratgias de controle descritas por
Haralick e Shapiro.

FIGURA 40 - Controle hierrquico Buttom-Up

38

FIGURA 41 Controle hierrquico Top-Down

FIGURA 42 Controle hibrido com Feedback

39

FIGURA 43 - Controle utilizando Inteligncia Artificial Distribuda

APLICAO NO CONTROLE DE QUALIDADE


Nos primrdios da industrializao a maior preocupao era a produo em massa.

Com o passar do tempo, impulsionados pelas exigncias de um mercado cada vez mais
consumidor, vieram o aprimoramento dos processos produtivos e uma conseqente
preocupao com a qualidade daquilo que era produzido. Uma forma de assegurar a qualidade
da produo a inspeo manual. Entretanto, o processo de inspeo manual extremamente
suscetvel a falhas, uma vez que sua natureza montona conduz ao erro por negligncia. Outra
caracterstica indesejada o encarecimento do produto inspecionado, encarecimento este
oriundo da mo de obra utilizada na inspeo. Para otimizar este aspecto do processo de
produo so utilizados mtodos de inspeo visual por computador.
Os mtodos de Viso Computacional utilizados no controle de qualidade devem
satisfazer dois requisitos muito importantes:

Rapidez: A indstria ainda um organismo de produo em massa. O processo


de inspeo no pode, em hiptese alguma, comprometer a produo. Alm
disso, um processo automatizado de inspeo deve ser to ou mais rpido que o
processo humano.

Confiabilidade: Partindo-se do princpio que o objetivo da inspeo garantir a


qualidade do produto, imprescindvel que os mtodos de viso computacional
dedicados ao controle de qualidade sejam altamente confiveis.

Embora os requisitos paream tornar o processo de desenvolvimento de metodologias


de Viso Computacional para a Inspeo Visual Automtica uma tarefa difcil, o fato de essas
tarefas serem extremamente estereotipadas, e com pouqussimas variaes, facilita o processo.
As principais caractersticas deste tipo de aplicao so:

Simplicidade e Boa Definio da Tarefa. As tarefas de anlise de imagens em


controle de qualidade so geralmente tarefas simples e sem muitas variaes,
que esto bem definidas, como, por exemplo, encontrar uma rachadura em um
bloco de cermica. Esta simplicidade permite que se utilizem operaes de
anlise de imagens bem conhecidas.
40

Ambiente de aquisio de dados controlado. Como as tarefas de controle de


qualidade so muito bem definidas, o ambiente no apresenta praticamente
nenhuma variao, o que faz com que as imagens no contraiam rudos
oriundos de uma alterao de iluminao, por exemplo.

6.1

Estudo de caso: Controle de Qualidade em madeiras de Pinho


Um problema comum na seleo de madeiras de pinho a existncia de ns. A

existncia ou no de ns visveis na madeira faz com que tbuas sejam classificadas em


diferentes categorias de qualidade. Abaixo podemos ver como uma soluo bastante simples
utilizando uma limiarizao baseada em histograma detecta nz em madeiras de pinho.

FIGURA 44 Estudo de caso: Tbua com ns

41

FIGURA 45 - Estudo de caso: Mesma tbua em P&B

FIGURA 46 - Estudo de caso: Histograma

Supe-se que ns, so ocorrncias raras e mais escuras. Dessa forma, utiliza-se um
histograma da imagem e o percorre-se a partir dos pixels de menor valor e v-se onde comea
a maioria dos valores da imagem. Supe-se que os valores escuros encontrados em menor
quantidade representam as falhas. Aps isso se define um valor de intensidade em pixels de
valor = 110 (para uma faixa de 0 a 255).

42

FIGURA 47 - Estudo de caso: Imagem Segmentada por Regio

Os pontos escuros so os ns. Agora tudo o que se tem a fazer utilizar um algoritmo
simples para encontrar agrupamentos redondos e escuros na imagem e, assim, resolve-se o
problema de forma bastante simples.

APLICAO NA ROBTICA
Na robtica, ramo da tecnologia que engloba mecnica, eletrnica e computao, a

Viso Computacional tambm se faz presente nos dias atuais. Isso, entretanto, nem sempre foi
assim. Na primeira gerao da robtica o elemento de viso simplesmente inexistia. Os
autmatos dessa gerao, tambm chamados de robs de transferncia, eram adaptados a
operaes bastante simples e repetitivas, como um acionar prensas automaticamente, por
exemplo.
A partir da segunda gerao, introduziu-se um sistema sensorial relativamente
desenvolvido e uma programao simples. Tambm chamados de trajetria contnua, foram e
so amplamente empregados na indstria automobilstica, como um pintor de automveis por
spray.
J na terceira gerao, com um sistema sensorial avanado, autonomia e agilidade, os
autmatos passaram a ser empregados em reas que envolvem inteligncia.
43

Abaixo esto alguns exemplos que ilustram um pouco dessa relao Viso
Computacional/Robtica.

FIGURA 481 - Viso computacional e Robtica

44

FIGURA 49 - Viso computacional e robtica 2

FIGURA 50 - Segunda gerao.

APLICAO NA MEDICINA

Um dos campos de atuao de maior relevncia da Viso Computacional certamente


a medicina. A imagiologia consiste no uso de equipamentos tecnolgicos na rea mdica para
45

fins de diagnosticar e tratar algumas doenas. A imagiologia mdica compreende um conjunto


de mtodos de recolha de dados que englobam desde a mais conhecida radiologia
convencional, a ecografia, a tomografia axial computorizada (TAC), a ressonncia magntica
(RM), entre outras.
Tradicionalmente os dados so apresentados sob a forma de imagens bidimensionais.
A imagem resultante quase nunca mostrada ao mdico imagiologista / radiologista na sua
forma "crua". Vrios pr-processamentos computacionais so aplicados aos dados, de forma a
se obter uma imagem com a maior quantidade possvel de informao com valor diagnstico.
Isso acontece particularmente no caso de modalidades como a TC, a RM e a ecografia, que na
sua forma original esto no formato digital e podem desse modo ser facilmente processados
por meios computacionais.
Abaixo esto alguns exemplos de imagens utilizadas para auxiliar nos diagnsticos
mdicos.

FIGURA 51 Crebro humano em uma ressonncia magntica

46

FIGURA 52 - Ultrassonografia

CONCLUSO
Neste trabalho procuramos discutir os aspectos mais relevantes da Viso
Computacional, desde aspectos tcnicos a exemplos prticos de sua utilizao no cotidiano de
empresas, profissionais e pessoas comuns.
importante que se tenha em mente que a Viso Computacional uma disciplina
relativamente nova. Embora alguns estudos j tivessem sido elaborados antes, os estudos mais
aprofundados nesse campo datam da dcada de 70.
Como ficou evidente, o potencial dessa disciplina, bem como sua importncia, so
muito grandes. Nos dias atuais seria difcil, por exemplo, falar em temas como Inteligncia
Artificial sem citar a Viso Computacional. Cada vez mais universidades dedicam-se a
implementar solues melhor elaboradas para transpor as limitaes que a Viso
Computacional impe. Justamente por apresentar um potencial to grande, aliado sua ampla
47

utilizao prtica, espera-se que a Viso Computacional avance ainda mais rpido do que j
avanou at agora.
A ns resta esperar e torcer para que seus benefcios, que j to evidentes, nos
auxiliem ainda mais num bastante futuro prximo.

48

REFERNCIAS
Algumas Tcnicas de Anlise de Imagens. Universidade Federal de Santa Catarina. 2000.
Disponvel em < http://www.inf.ufsc.br/~visao/2000/fractais/index.html> Acesso em 01
Setembro de 2010
Departamento de matemtica da universidade de Coimbra Disponvel em
<http://www.mat.uc.pt/~jaimecs/indexem21.html> Acesso em 01 de Setembro de 2010.
FRANA, Jose Alexandre: THINNING A Linha Essencial.
<http://www.josealexandre.cjb.net> Acesso em 02 de Setembro de 2010

Disponvel

em

GARY BRADSKI, ADRIAN KAEBLER Leraning OpenCV, computer vision with the
openCV library: O'reilly, 2008
JAMUNDA T., Reconhecimento de Formas: A: 2000. Disponvel em
<http://www.inf.ufsc.br/~visao/2000/Hough/index.html> Acesso em 02 de Setembro de 2010
Prof. Dr. Aldo von Wanghenhain eNelson Abu Samra Rahal Junior, 1999: Reconhecimento
de Elementos Geomtricos em Imagens Computacionais. Disponvel em
<http://www.inf.ufsc.br/~visao/1999/abu/index.html> Acesso em 02 de Setembro de 2010
Reconhecimento
de
objetos
em
tempo
real.
Disponvel
em
http://www2.eletronica.org/artigos/robotica/reconhecimento-de-objetos-em-tempo-real-parafutebol-de-robos Acesso em 02 de Setembro de 2010
SHAPIRO, L; STOCKMAN, G. Computer vision. New Jersey: Printice Hall, 2001
Viso computacional, Universidade Federal de Santa Catarina.
<http://www.inf.ufsc.br/~visao/> Acesso em 04 de Setembro de 2010

Disponvel

em

CONTE, Luciane Amlia, Reconhecimento de crachs utilizando tcnicas de Viso


Computacional
e
Lgica
Fuzzy:
2002.
Disponvel
em
<http://www.dcc.unesc.net/sulcomp/05/Art079SulComp2005.pdf> Acesso em 03 de Setembro
de 2010
SILVA, Guilherme Damasceno, Desenvolvimento de um Sistema de Visao Computacional
para o Estudo do Comportamento de Animais Experimentais: 2008. Disponvel em
< http://cpdee.ufmg.br/defesas/343M.PDF> Acesso em 03 de Setembro de 2010
OpenCV Examples. Disponvel em < http://nashruddin.com/opencv-examples-for-operationon-images.html/2/> Acesso em 10 de Setembro de 2010
Embrapa,
Segmentao.
Disponvel
em
<
http://www.segmenta.cnpm.embrapa.br/segment.html> acesso em 10 de Setembro de 2010

49

STAVENS, David, Introduction to OpenCV: 2005. Disponvel em <


http://www.segmenta.cnpm.embrapa.br/segment.html> Acesso em 10 de Setembro de 2010

50