Visão de Máquina e suas Aplicações na Automação Industrial

Transcrição

Visão de Máquina e suas Aplicações na Automação Industrial
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
ESPECIALIZAÇÃO EM AUTOMAÇÃO INDUSTRIAL II
MARCELO VICTOR WÜST ZIBETTI
VISÃO DE MÁQUINA E SUAS APLICAÇÕES NA AUTOMAÇÃO
INDUSTRIAL
MONOGRAFIA DE ESPECIALIZAÇÃO
CURITIBA
2011
MARCELO VICTOR WÜST ZIBETTI
VISÃO DE MÁQUINA E SUAS APLICAÇÕES NA AUTOMAÇÃO
INDUSTRIAL
Monografia apresentada à Especialização em Automação Industrial II da Universidade Tecnológica Federal do Paraná como requisito parcial para obtenção
do título de “Especialista em Automação Industrial”.
Orientador:
Guilherme Alceu Schneider
CURITIBA
2011
Ministério da Educação
Universidade Tecnológica Federal do Paraná
Diretoria do Campus Curitiba
Gerência de Pesquisa e Pós-Graduação
Departamento Acadêmico de Eletrônica
_______________________________________________________________
TERMO DE APROVAÇÃO
Visão de Máquina e suas Aplicações na Automação Industrial
Área de conhecimento: Automação Eletrônica de Processos Elétricos e Industriais
por
Marcelo Victor Wüst Zibetti
A presente monografia, requisito parcial para obtenção do título de ESPECIALISTA
EM AUTOMAÇÃO INDUSTRIAL, foi avaliada pela banca examinadora, constituída
pelos docentes abaixo discriminados, que considerou o trabalho Aprovado.
____________________________________
Prof. Dr. Hugo Vieira Neto
____________________________________
Prof. Msc. César Janeczko
______________________________________
Prof. Msc. Guilherme Alceu Schneider
Orientador
Curitiba, 24 de março de 2011.
Visto da coordenação
_____________________________________
Prof. Dr. Jean Marcelo Simão
A Folha de Aprovação assinada encontra-se na Coordenação do Curso.
RESUMO
ZIBETTI, Marcelo Victor Wüst. Visão de Máquina e suas Aplicações na Automação Industrial. 48 f. Monografia – Especialização em Automação Industrial II, Universidade Tecnológica
Federal do Paraná. Curitiba, 2011.
Este trabalho apresenta uma revisão sobre visão de máquina e sobre algumas de suas aplicações
na automação industrial. Na primeira parte são detalhados os componentes de um sistema de visão, com especificações técnicas, características operacionais e informações sobre dispositivos
comerciais. Na segunda parte, os algoritmos de processamento de imagens são apresentados,
seguindo uma classificação de acordo com sua função na tarefa de visão. Três classes de algoritmos foram observadas: algoritmos de melhoramento de imagem, algoritmos de extração de
informação, e por último, algoritmos de processamento da informação extraída. Na parte final
deste trabalho são apresentadas algumas aplicações dos sistemas de visão na indústria. Quatro
classes de aplicações são discutidas: inspeção visual automática, identificação de peças em produção, controle de processos e de células de manufatura, e por fim, controle e direcionamento
robótico.
Palavras-chave: visão de máquina, visão computacional, processamento de imagens
ABSTRACT
ZIBETTI, Marcelo Victor Wüst. Machine Vision and Applications in Industrial Automation. 48
f. Monografia – Specialization in Industrial Automation II, Federal University of Technology Paraná. Curitiba, 2011.
This work presents a review of machine vision and some of its applications in industrial automation. In the first part of this work the machine vision system and its components are detailed,
with technical specifications, operational characteristics and updated manufacturer information.
In the second part of this work, the image processing algorithms are presented, following a
classification according to its function in the vision system. Three classes are observed: image
quality correction and improving algorithms, information extraction algorithms, and, at last,
information processing. In the final part of this work, some of the most important applications
of the vision systems in industry are presented. Four class of applications are discussed: automated visual inspection, parts identification, process control and manufacture cell control, and,
at last, robotic control.
Keywords: machine vision, computer vision, image processing
LISTA DE FIGURAS
FIGURA 1 – PROCESSO DE AUTOMAÇÃO INDUSTRIAL COM USO DE UM SISTEMA DE VISÃO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FIGURA 2 – SISTEMA DE VISÃO NA MANUFATURA. . . . . . . . . . . . . . . . . . . . . . . . . .
FIGURA 3 – CÂMERA INDUSTRIAL USADA NOS SISTEMAS DE VISÃO. . . . . . .
FIGURA 4 – LENTES USADAS EM CÂMERAS INDUSTRIAIS. . . . . . . . . . . . . . . . . . .
FIGURA 5 – RELAÇÃO ENTRE TAMANHO DO OBJETO REAL E TAMANHO DO
OBJETO PROJETADO NO SENSOR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FIGURA 6 – EFEITO DA ESCOLHA DA DISTÂNCIA FOCAL. . . . . . . . . . . . . . . . . . . .
FIGURA 7 – EXEMPLOS DE SMARTCAMS, OU CÂMERAS INTELIGENTES. . . . .
FIGURA 8 – EXEMPLOS DE SISTEMAS COMPACTOS. . . . . . . . . . . . . . . . . . . . . . . . . .
FIGURA 9 – TAREFAS DE PROCESSAMENTO EM VISÃO DE MÁQUINA. . . . . . .
FIGURA 10 – EXEMPLOS DE CORREÇÃO DA IMAGEM. . . . . . . . . . . . . . . . . . . . . . . . .
FIGURA 11 – EXEMPLOS DE MELHORAMENTO DE IMAGEM. . . . . . . . . . . . . . . . . .
FIGURA 12 – BUSCA POR FORMAS OU CARACTERÍSTICAS. . . . . . . . . . . . . . . . . . .
FIGURA 13 – EXEMPLOS DE SEGMENTAÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FIGURA 14 – EXEMPLOS DE ANÁLISE DA INTENSIDADE . . . . . . . . . . . . . . . . . . . . .
FIGURA 15 – EXEMPLOS DE PROCESSAMENTO DA INFORMAÇÃO . . . . . . . . . . .
FIGURA 16 – PEÇA SENDO INSPECIONADA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FIGURA 17 – EXEMPLOS DE CÉLULA DE MANUFATURA AUTOMATIZADA. . . .
FIGURA 18 – EXEMPLOS DE BRAÇO ROBÓTICO CONTROLADO POR UM SISTEMA DE VISÃO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
12
13
13
15
16
20
20
27
29
31
33
34
35
37
39
41
42
LISTA DE TABELAS
TABELA 1 – COMPARAÇÃO ENTRE TECNOLOGIAS CCD E CMOS DE SENSOR DE IMAGEM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TABELA 2 – ESPECIFICAÇÕES DOS SENSORES DE IMAGEM. . . . . . . . . . . . . . . .
TABELA 3 – TIPOS DE LENTES. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TABELA 4 – INTERFACES DIGITAIS DAS CÂMERAS INDUSTRIAIS. . . . . . . . . .
TABELA 5 – FUTURAS INTERFACES DIGITAIS DAS CÂMERAS INDUSTRIAIS.
TABELA 6 – PROCESSADORES QUE PODEM SER UTILIZADOS PARA VISÃO
DE MÁQUINA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TABELA 7 – SISTEMAS ESPECÍFICOS PARA VISÃO DE MÁQUINA . . . . . . . . . . .
TABELA 8 – LINGUAGENS, COMPILADORES E AMBIENTES UTILIZADOS EM
VISÃO DE MÁQUINA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TABELA 9 – BIBLIOTECAS UTILIZADAS EM VISÃO DE MÁQUINA . . . . . . . . . .
TABELA 10 – SOFTWARES DE COMPUTAÇÃO NUMÉRICA COM MÓDULOS DE
IMAGEM PARA VISÃO DE MÁQUINA . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TABELA 11 – AMBIENTES DE DESENVOLVIMENTO ESPECÍFICOS PARA VISÃO DE MÁQUINA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TABELA 12 – ILUMINAÇÃO DO AMBIENTE DE AQUISIÇÃO PARA VISÃO DE
MÁQUINA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TABELA 13 – TIPOS DE FORMAS GEOMÉTRICAS . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TABELA 14 – MÉTODOS DE SEGMENTAÇÃO DE IMAGENS MAIS COMUNS. .
TABELA 15 – CARACTERÍSTICAS DE INTENSIDADES ANALISADAS EM UMA
REGIÃO DE INTERESSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
14
15
17
17
19
21
22
23
23
24
25
32
33
34
LISTA DE SIGLAS
CCD
charge-coupled devices
CMOS
complementary metal-oxide-semiconductor
CI
circuito integrado
TPI
turns per inch
NTSC
National Television System Committee
PAL
Phase Alternate Line
fps
frames per second
Mbps
Mega bits per second
Gbps
Giga bits per second
3D
tridimensional
GPU
Unidade de processamento gráfico
CPU
Unidade de processamento central
CLP
Controlador Lógico Programável
PAC
Programable Automation Controlers
IDE
integrated development environment
UV
ultravioleta
IR
infrared - infravermelho
RFID
Radiofrequency identification
SUMÁRIO
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1 OBJETIVOS E MOTIVAÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 VISÃO DE MÁQUINA NA AUTOMAÇÃO INDUSTRIAL . . . . . . . . . . . . . . . . . . . . . .
1.3 SENSORES INDUSTRIAIS, VISÃO E O PAPEL DO PROCESSAMENTO DE SI-
8
9
9
NAIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4 VISÃO GERAL DO DOCUMENTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 COMPONENTES DOS SISTEMAS DE VISÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1 CÂMERA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1 Sensor de Imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.2 Lentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.3 Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 HARDWARE DE PROCESSAMENTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1 Computadores Industriais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.2 Sistemas Específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 SOFTWARE DE PROCESSAMENTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.1 Programação de Propósito Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.2 Softwares de Computação Numérica com Pacotes de Imagem . . . . . . . . . . . . . . . . . . .
2.3.3 Ambientes de Desenvolvimento Específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4 AMBIENTES DE AQUISIÇÃO E SEUS EQUIPAMENTOS . . . . . . . . . . . . . . . . . . . . .
2.4.1 Iluminação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.2 Referências Visuais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.3 Filtros de Luz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 PROCESSAMENTO DE IMAGEM PARA SISTEMAS DE VISÃO . . . . . . . . . . . . .
3.1 PROCESSAMENTO PARA CORREÇÃO, MELHORAMENTO E CALIBRAÇÃO
10
11
12
12
13
15
17
17
18
19
22
22
22
23
24
24
26
26
27
DA IMAGEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.1 Correção da Imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.2 Melhoramento de Imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.3 Calibração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 PROCESSAMENTO PARA EXTRAÇÃO DE INFORMAÇÃO . . . . . . . . . . . . . . . . . . .
3.2.1 Busca por Formas ou Características . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.2 Busca pela Região de um Objeto (Segmentação) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.3 Análise das Intensidades em uma Região de Interesse . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 PROCESSAMENTO DA INFORMAÇÃO, CLASSIFICAÇÃO E DETECÇÃO . . . . .
3.3.1 Processamento da Informação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.2 Classificação e Detecção . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 APLICAÇÕES DE SISTEMAS DE VISÃO NA AUTOMAÇÃO . . . . . . . . . . . . . . . .
4.1 INSPEÇÃO VISUAL AUTOMÁTICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 IDENTIFICAÇÃO DE PEÇAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 CONTROLE DE PROCESSOS E DE CÉLULAS INDUSTRIAIS . . . . . . . . . . . . . . . . .
4.4 CONTROLE E DIRECIONAMENTO ROBÓTICO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 CONCLUSÕES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
28
30
31
31
31
32
33
35
35
37
38
38
39
40
42
43
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
8
1
INTRODUÇÃO
A automação industrial é a área do conhecimento que atua na implementação e no aperfeiçoamento do controle de processos industriais através do uso de sistemas eletrônicos e computacionais (MORAES, 2007; ROSÁRIO, 2005). Ela auxilia o processo industrial na tarefa de
torná-lo mais produtivo, flexível, seguro e eficiente, proporcionando aumento na qualidade dos
produtos.
A visão de máquina é a área de conhecimento, análoga a visão computacional, que busca
proporcionar às máquinas informação extraída do senso visual. Enquanto visão computacional busca fazer os computadores verem, a visão de máquina busca fazer as máquinas verem,
principalmente máquinas industriais (STEGER; WIEDEMANN; ULRICH, 2008; FREEMAN,
1989). Neste contexto, a área de visão de máquina abrange o estudo do ambiente de aquisição,
focando na especificação do tipo de iluminação, lentes e outros acessórios. Além disso, os algoritmos são computacionalmente simples, sem características cognitivas. Em visão computacional, por outro lado, os algoritmos são mais complexos, envolvendo conceitos de inteligência
artificial como o aprendizado de máquina, por exemplo.
Nos anos 80 e 90 a visão de máquina ainda era uma área de pesquisas acadêmicas, cujos
sistemas só funcionavam com sucesso em laboratórios de pesquisa (FREEMAN, 1989). A partir
disso, foi quando acreditou-se que a indústria estava preparada para o uso de sistemas de visão
na automação. De fato, na virada do século XX começamos a ver uma mudança significativa
na forma com que as indústrias controlavam a sua produção. Com a automação, o computador
passou a ter papel fundamental no controle da produção (ROSÁRIO, 2005), abrindo espaço
para a visão de máquina.
Em 2010, a automação se encontra estabelecida como uma área do conhecimento que é
fundamental para o sucesso industrial. Os sistemas de visão de máquina já são utilizados em
algumas indústrias. O custo destes sistemas já é compatível com o benefício que eles trazem a
produção. Contudo, embora difundido, o conhecimento de sistemas de visão de máquina ainda
não é ensinado de forma regular na área de automação industrial. Como resultado, ainda faltam
9
profissionais neste segmento, e muitas indústrias, que tem necessidade desta tecnologia, ainda
não tem fácil acesso a ela. Acredita-se que este problema será gradativamente superado neste
país, e principalmente na nossa região.
1.1
OBJETIVOS E MOTIVAÇÃO
O objetivo deste trabalho é revisar o estado da prática, chegando, em alguns casos, ao estado
da arte em visão de máquina na automação industrial. Este trabalho é motivado pelo destaque e
sucesso que a visão de máquina está tendo em alguns segmentos da indústria. Além disso, temse grandes desafios em termos de pesquisa e desenvolvimento com o uso da visão de máquina
em novos segmentos da indústria. Pode-se dizer que a visão de máquina é um novo e importante
tópico da automação industrial que não pode ser deixado de fora do currículo de um profissional
desta área.
1.2
VISÃO DE MÁQUINA NA AUTOMAÇÃO INDUSTRIAL
Para um sistema de controle automático industrial, um sistema de visão pode ser visto como
um sensor. Embora isso seja uma forma simplificada de considerar este complexo sistema, em
essência, ele proporciona uma forma de entrada de informação para o sistema de controle. A
Figura 1 ilustra o uso de um sistema de visão no controle de um processo industrial.
Na Figura 1, observamos o funcionamento do sistema de visão em um processo de automação industrial. Esta figura mostra uma peça (1) sendo produzida que entra na posição de
inspeção, posição esta especificada pelo sensor de posicionamento (3). Neste local a peça é
inspecionada pelo sistema de visão e seus componentes (2). A imagem capturada, contudo, não
proporciona a informação de tomada de decisão pelo controle. Para isso, o sistema de visão
processa a imagem e retira as informações úteis. Esta “informação processada” é enviada ao
sistema de controle (4), o qual vai acionar os motores (5) da esteira e tomar a decisão de acionar
ou não o mecanismo (6) que determina da direção que a peça terá no chão de fábrica.
Observe que do ponto de vista da automação, o sistema de visão é um sensor, tanto quanto
o sensor de posição. As decisões continuam sendo tomadas pelo controle. Porém, agora com
uma informação proveniente de um sensor mais elaborado e capaz de entregar muito mais informação do que sensores simples.
10
Figura 1: Processo de automação industrial com uso de um sistema de visão.
1.3
SENSORES INDUSTRIAIS, VISÃO E O PAPEL DO PROCESSAMENTO DE SINAIS
Pode-se classificar os sensores industriais em diretos e indiretos (ROSÁRIO, 2005). Entende-
se por sensores diretos aqueles cujo sinal de saída é a grandeza que se deseja observar. Por
exemplo a medição de quantidade de luz, temperatura e pressão.
Os sensores indiretos são aqueles que entregam uma medição indireta da grandeza desejada.
Por exemplo, se desejamos medir vazão de fluido em uma tubulação, podemos medir a pressão
diferencial após um estreitamento na tubulação. Depois de aplicar uma operação de raíz quadrada na diferença de pressão, temos uma grandeza proporcional à vazão do fluido (ROSÁRIO,
2005).
Sendo assim, sempre que temos um sensor indireto, temos agregado a ele uma operação
de transformação no sinal, ou seja, um processamento do sinal. Em alguns sensores, como
nos sistemas de visão, o processamento tem papel fundamental. Sendo, muitas vezes, mais
11
complexo que a própria construção do sensor.
Neste contexto, a visão de máquina aplicada a automação industrial pode ser vista com a
área que estuda os sensores de imagem, considerando todos seus componentes físicos responsáveis por uma boa aquisição da imagem, e o processamento das imagens, buscando extrair destas
uma informação útil para controle da atividade industrial (STEGER; WIEDEMANN; ULRICH,
2008).
1.4
VISÃO GERAL DO DOCUMENTO
Este documento está dividido em cinco capítulos. Neste primeiro capítulo foi apresentada
esta introdução. No segundo, será mostrada uma visão geral dos componentes de um sistema de
visão, mostrando detalhes sobre câmeras, hardware e software de processamento, além das necessidades encontradas no ambiente para uma boa aquisição das imagens. No terceiro capítulo
serão mostradas as técnicas de processamento de imagens utilizadas no sistema de visão. Estas
técnicas são responsáveis por transformar a informação visual em informação útil para controle
do processo industrial. No capítulo quatro, serão vistas algumas aplicações dos sistemas de visão na indústria, mostrando a abrangência que estes sistemas já estão tendo. No capítulo final,
serão abordadas as conclusões e direção futuras de pesquisa, ensino e extensão.
12
2
COMPONENTES DOS SISTEMAS DE VISÃO
O sistemas de visão e seus componentes estão representados na Figura 2.
Figura 2: Sistema de visão na manufatura.
Na Figura 2 se observam os componentes do sistema de visão: (1) a câmera, (2) o hardware
de processamento, (3) o software de processamento e (4) a iluminação e outros equipamentos
do ambiente de aquisição. Cada um destes componentes será detalhado em seguida.
2.1
CÂMERA
A câmera é responsável por fornecer a imagem ao sistema. Seus componentes, sem as
lentes, podem ser observados na Figura 3. A Figura 4 mostra as lentes da câmera.
No processo de aquisição de imagem, as lentes tem o papel de focar a luz vinda da direção do objeto no sensor de imagem. Pode-se dizer que as lentes são responsáveis por formar
a imagem sobre o sensor. O sensor de imagem é a parte responsável por converter o sinal de
luz, refletido do objeto, em sinal elétrico, o qual podemos processar, armazenar e mostrar em
13
Figura 3: Câmera industrial usada nos sistemas de visão.
Fonte: Adaptado do website www.flea3.com.
Figura 4: Lentes usadas em câmeras industriais.
Fonte: (EDMUND OPTICS, 2009c).
um visor. Atualmente, os sensores necessitam de circuitos elétricos auxiliares para coordenar a
conversão, retirar a informação, ou a imagem, do sensor e armazenar em uma memória até que
esta seja transmitida para fora da câmera. Isso é de responsabilidade da eletrônica interna da
câmera. A parte final é a transmissão da imagem para fora da câmera até o hardware de processamento e visualização, a qual é feita através de uma interface padronizada de transmissão de
dados (STEGER; WIEDEMANN; ULRICH, 2008).
2.1.1
Sensor de Imagem
A maioria dos sensores de imagens utilizados hoje em dia são baseados em dispositivos de
estado sólido, i.e. semicondutores. Os tipos de sensores mais encontrados são os dispositivo de
carga acoplada (CCD) e os semicondutores de metal-óxido complementar (CMOS) (GAMAL;
14
ELTOUKHY, 2005).
As duas tecnologias possuem nível de qualidade semelhante, com ligeiras diferenças devido
à construção do fotosensor e arquitetura do circuito integrado (CI). A Tabela 1 ilustra algumas
as diferenças entre os tipos sensores.
Tabela 1: Comparação entre tecnologias CCD e CMOS de sensor de imagem.
Característica
Sinal de saída
do pixel
Sinal de saída
do chip
Ruído no
sistema
Complexidade
da câmera
Complexidade
do sensor
Desempenho
Resposta à
iluminação
Faixa dinâmica
CCD
carga (elétrons)
CMOS
Tensão
Tensão (analogico)
bits (digital)
baixo
moderado
alta
baixa
baixa
alta
CCD
moderada
CMOS
melhor
maior (8-14 bits)
moderada(6-12 bits)
Uniformidade
maior
baixa a média
Velocidade de
captura
moderada a alta
bem alta
Significado
diferença na arquitetura
do fotosensor
diferença na arquitetura
do CI
qualidade da intensidade
do pixel
necessidade de circuitos de
suporte (alimentação, controle, memória)
mais componentes no CI do sensor
(controle e memória integrados)
Significado
aproveitamento da luz
mais qualidade em imagens
de alto contraste
maior uniformidade da intensidade
em imagens com intensidade constantes
mais quadros por segundo
Fonte: DALSA website, www.dalsa.com.
Apesar das diferenças, em muitas situações os dois tipos de sensores atendem as especificações para um sistema de visão de máquina (LITWILLER, 2001). Logo, quando a câmera
é definida, especifica-se as características do sensor, como resolução, velocidade e faixa dinâmica, esta última é uma informação inversamente proporcional ao ruído no sensor. A Tabela 2
mostra estas características, seus significados e valores típicos dos sensores.
Tabela 2: Especificações dos sensores de imagem.
Característica
Resolução
Tamanho do Sensor
Tamanho do Pixel
Formato
Faixa dinâmico
Velocidade
Significado
melhor definição da imagem
maior área, mais luz recebida
maior, mais luz recebida
relação horizontal:vertical
mais bits por pixel, mais qualidade
capacidade de quadros por segundo
Valores Típicos
640×480 até 4896×3262 pixels
1/4” (3, 2×2, 4 mm) até 1” (12, 8×9, 6 mm)
2×2 µm até 25×25 µm
1:1, 3:2, 4:3, 16:9
36 dB - 80 dB (6 - 14 bits)
1fps até 200 fps, algumas mais de 1000fps
15
2.1.2
Lentes
A função principal da lente é projetar a imagem do objeto na área do sensor. Quando
falamos em lentes para visão de máquina, estamos considerando toda a estrutura construtiva,
composto da estrutura de suporte, tipo de encaixe, íris, controle de foco além das lentes propriamente ditas.
As duas principais características das lentes são o tipo de encaixe1 (WILSON, 2009a), o
qual deve ser compatível com o corpo da câmera, e a distância focal, que controla o mapeamento
da luz proveniente do objeto na área útil de aquisição do sensor de imagem. A Tabela 3 mostra
uma comparação dos tipos de encaixe mais comuns de lentes em câmeras industriais.
Tabela 3: Tipos de lentes.
Tipo
C-mount
1”, 32 TPI
tamanho máx.
do sensor
22 mm
CS-mount
1”, 32 TPI
22 mm
12,5 mm
44mm, NIKON SLR
42 mm
46,5 mm
F-mount
Encaixe
distância
até o sensor
17,52 mm
característica
o tipo mais
comum encontrado
menor, adaptável
para o formato C-mount
para câmeras maiores
e de alta resolução
Fonte: (WILSON, 2009a).
Uma vez que o ambiente de aquisição e a câmera (sensor) estão definidos, isto é, a distância
da câmera ao objeto, o tamanho do objeto e o tamanho do sensor de imagem estão definidos, é
a distância focal que determina se o objeto vai ser projetado dentro da área do sensor (COMPUTAR LENSES, 2008). A Figura 5 ilustra o problema.
Figura 5: Relação entre tamanho do objeto real e tamanho do objeto projetado no sensor.
Fonte: (COMPUTAR LENSES, 2008).
Assim, usando a relação abaixo, pode-se definir a distância focal mais adequada e selecionar
1 O encaixe CS-mount é compatível com C-mount, ambos têm uma polegada de largura e 32 voltas por polegada
(TPI) na profundidade.
16
a lente apropriada para o problema.
s
f= D
(1)
S
sendo f a distância focal, D a distância do objeto até a câmera, s é o tamanho do sensor (horizontal ou vertical) e S o tamanho do objeto (horizontal ou vertical, o mesmo escolhido para
o sensor). As distâncias focais das lentes comerciais variam, em sua maioria2 , de 2 mm até
300 mm. Sendo as de menor distância focal (2-40mm) conhecidas como lentes do tipo grande
angular e as de maior distância focal (70-300mm) conhecidas como lentes telescópicas.
A maioria das lentes comerciais tem distância focal fixa (EDMUND OPTICS, 2009c).
Como se observa na Figura 6, mudando a distância de trabalho e deixando a distância focal
fixa é possível ter o objeto muito pequeno dentro da imagem (grande distância de trabalho),
ou, ao contrário, não ter o objeto inteiramente dentro da imagem (pequena distância de trabalho). Logo, em situações onde a distância de trabalho muda é recomendado usar lentes com
distância focal variável. As lentes de câmeras fotográficas comerciais que têm zoom variável
são exemplos de lentes com distância focal variável.
Figura 6: Efeito da escolha da distância focal.
Fonte: (COMPUTAR LENSES, 2008).
2 Existem
lentes especiais com distâncias focais menores e maiores.
17
2.1.3
Interface
As primeiras câmeras utilizavam interfaces analógicas (STEGER; WIEDEMANN; ULRICH, 2008), com sinal composto de vídeo (NTSC/ PAL) ou s-vídeo. Contudo, com o aumento
de desempenho dos computadores e da velocidade de transmissão dos periféricos, logo as interfaces digitais alcançaram velocidades altas o suficiente para transmitir o sinal para fora da
câmera. As interfaces digitais mais comuns das câmeras industriais estão na Tabela 4.
Tabela 4: Interfaces digitais das câmeras industriais.
Velocidade
Comprimento do cabo
Núm. de câmeras
Tipo de conector
FireWire 1394.a
400 Mbps
4,5 m
até 63
6 pinos
FireWire 1394.b
800 Mbps
100 m
até 63
9 pinos
Camera Link
3600Mbps
10 m
1
26 pinos
USB 2.0
480 Mbps
5m
até 127
4 pinos
GigE
1000Mbps
100 m
sem limite
RJ45/CAT5
opcional
opcional
sim
não
não
conector
requer placa
Fonte: (EDMUND OPTICS, 2009a).
Com o aumento da resolução das câmeras, e da velocidade de aquisição (fps), interfaces
com maior velocidade serão necessárias, passando das centenas de Mbps para as dezenas de
Gbps3 . Na Tabela 5 apresentamos algumas das interfaces que começam a ser testadas para uso
em câmeras industriais.
Tabela 5: Futuras interfaces digitais das câmeras industriais.
Velocidade
Comprimento do cabo
Núm. de câmeras
HSLINK
48 Gbps
80 m
até 63
CoaXPress
6.35 Gbps
105 m
1
USB 3.0
4 Gbps
5m
até 127
10 GigE
10 Gbps
100 m
sem limite
Fonte: (WILSON, 2010b)
2.2
HARDWARE DE PROCESSAMENTO
O hardware de processamento é a parte física do sistema responsável por transformar a
informação visual, proveniente da câmera, em informação útil para o sistema de automação.
Esta parte do sistema executa o software de processamento, que será visto na seção seguinte.
Para a tarefa de processamento, tanto sistemas computacionais gerais, como computadores
pessoais, quanto sistemas específicos de visão de máquina podem ser utilizados. Os computadores em sua versão para controle de sistemas industriais, conhecidos como computadores
3 1Gbps
= 1024Mbps, sendo Gbps - Giga bits por segundo.
18
industriais, são alternativas interessantes e gerais para o processamento dos algoritmos de visão
de máquina. Eles dispõem dos mesmos recursos encontrados nos computadores pessoais, porém com com modificações para funcionamento contínuo, além de uma forma construtiva mais
robusta, i.e. resistente a sujeira, temperatura, variações de tensão e outros efeitos “hostis” ao
funcionamento do computador (SIEMENS, 2010).
Contudo, o crescimento na demanda por sistemas de visão incentivou o crescimento de
hardwares específicos. Hoje, encontram-se no mercado duas versões de sistemas específicos:
as câmeras inteligentes (smartcams) e os sistemas de visão compactos. Estas versões serão
discutidas mais a frente.
2.2.1
Computadores Industriais
Os computadores industriais são uma escolha interessante pela sua flexibilidade de uso.
Além das tarefas de visão de máquina, estes sistemas podem realizar funções de supervisão
e controle. Além disso, a maioria é composta dos mesmos elementos utilizados em computadores pessoais, como processadores multi-core baseados na arquitetura Intel x86 e AMD64,
porém com uma construção e componentes mais robustos (LIPPINCOTT, 2008). A maioria
dos computadores industriais são projetados para não serem desligados quase nunca, tendo fontes redundantes e peças que podem ser substituídas sem necessidade de desligamento. Hoje,
sistemas computacionais construídos com estas arquiteturas podem alcançar uma capacidade
de processamento da ordem das centenas de Gflops4 , mais que suficiente para a maioria das
operações de visão de máquina.
Além disso, com a popularização dos programas que requerem gráficos tridimensionais
(3D), como jogos, programas de desenho e até os sistemas operacionais, veio também a popularização de placas de processamento gráfico. Estas placas possuem processadores gráficos (GPU) tão computacionalmente poderosos quanto o processador principal do computador
(CPU). Hoje, os fabricantes de GPU já disponibilizam ferramentas que permitem a programação destes processadores para uso geral, inclusive para as funções de visão de máquina. As
versões de ponta dos GPUs são capazes de ultrapassar 1Tflops5 , aumentado ainda mais o poder
computacional de um computador para processar as tarefas de visão de máquina. A tabela 6
mostra alguns exemplos de processadores encontrados no mercado e seu desempenho.
41
Gflops = 1 × 109 (giga) operações de ponto flutuante por segundo.
5 1 Tflops = 1 × 1012 (tera) operações de ponto flutuante por segundo.
19
Tabela 6: Processadores que podem ser utilizados para visão de máquina
Nome
Athlon X2 3GHz
Core 2 Duo 3GHz
POWER6 4.7GHz
Phenom X4 3GHz
Core i7 3GHz
POWER7 4.1GHz
GeForce 9800
Radeon HD 4850
GeForce GTX 280
Radeon HD 5850
Tipo
CPU x86-AMD64
CPU x86-Intel 64
CPU IBM-PowerPC
CPU x86-AMD64
CPU x86-Intel 64
CPU IBM-PowerPC
GPU NVIDIA
GPU ATI
GPU NVIDIA
GPU ATI
Arquitetura
AMD K8
Intel core 2
Power ISA v.2.05
AMD K10
Nehalem
Power ISA v.2.06
NVIDIA G92
Radeon RV770
NVIDIA GT200
Evergreen
Núm. cores
2
2
2
4
4
4
128
160
240
288
Gflops
19.0
21.9
35.7
40.0
63.3
120
705
1000
1000
2088
Ano
2006
2006
2007
2008
2009
2010
2008
2009
2009
2010
Fonte: Informação do website dos fabricantes.
2.2.2
Sistemas Específicos
Os sistemas específicos surgiram como uma alternativa mais simples e prática para a implementação de um sistema de visão de máquina na indústria. A maioria dos fabricantes, além
de vender o hardware, também vende o software de programação. Em termos de hardware,
encontram-se dois tipos diferentes no mercado: as câmeras inteligentes e os sistemas de visão compactos. Em seguida, vamos detalhar cada um destes tipos de sistema e, na Tabela 7,
mostramos alguns exemplos de sistemas comerciais disponíveis.
Câmeras Inteligentes
As câmeras inteligentes unificam a câmera e o hardware de processamento em um mesmo
encapsulamento. São as alternativas mais compactas e, em alguns casos, mais baratas para visão
de máquina. Diversos fabricantes de sistemas de visão, como National Instruments, Dalsa,
Cognex e Matrox têm pelo menos uma opção de smartcam. Contudo, as smartcams não são
projetadas para serem dispositivos de ponta, e sim de uso geral. Logo, nem as especificação da
câmera são as mais avançadas, nem o hardware de processamento é o mais veloz disponível.
Mas estes sistemas são apropriados para grande parte dos problemas. A Figura 7 mostra alguns
exemplos de smartcams.
Sistemas de Visão Compactos
Apesar do nome, os sistemas de visão “compactos” não são tão compactos como as smartcams. Eles são uma versão reduzida de um computador industrial, com apenas os componentes
essenciais para o processamento das operações de visão de máquina. Logo, são mais compactos que um computador industrial, mas mesmo assim, seu poder computacional não é reduzido.
Pelo contrário, os componentes são selecionados para que tenha condições de atender as mais
difíceis tarefas de visão de máquina, computacionalmente falando, sendo superiores às smart-
20
(a) In-Sight 1020, da Cognex
(b) NI-1764, da National
Instruments
(c) Iris GT1900, da Matrox
Figura 7: Exemplos de smartcams, ou câmeras inteligentes.
Fonte: Website dos fabricantes.
cams. Em muitos casos, os sistemas compactos são capazes de processar imagens provenientes
de diferentes câmeras, realizando diferentes tarefas de visão de máquina ao mesmo tempo. A
Figura 8 mostra alguns exemplos de sistemas de compactos.
Existem sistemas compactos proprietários, onde tanto o software de programação quanto
o tipo de câmera, devem ser selecionados do mesmo fabricante. Esta alternativa é interessante
quando uma indústria não tem especialistas em automação com amplo conhecimento sobre
estes sistemas, ou quando a indústria prefere deixar a cargo do fabricante de sistema de visão
boa parte das tarefas de implementação e programação. Existem também, os sistemas semiabertos, onde o hardware e o software de programação são vendidos em conjunto, contudo o
sistema é compatível com diferentes câmeras industriais, tendo diferentes interfaces digitais de
entrada disponíveis, conforme mencionado na seção 2.1.3.
(a) 4Sight X, da Matrox.
(b) EVS-1463, da National Instruments.
(c) Geva, da Dalsa.
Figura 8: Exemplos de sistemas compactos.
Fonte: Website dos fabricantes.
Com a necessidade dos sistemas de controle em se sofisticar, os sistemas de visão estão
21
cada vez mais integrados aos sistemas de controle industrial. Hoje, grande parte das tarefas de
controle industrial são realizadas por controladores lógicos programáveis (CLP)(GEORGINI,
2003). Contudo, estes dispositivos tem pouca flexibilidade e pouco poder computacional para
executar estratégias de controle mais complexas (GARCIA; PRETT; MORARI, 1989; BRANICKY; BORKAR; MITTER, 1998). Contudo, a ampla aceitação dos CLPs e a necessidade
de implementação de estratégias de controle mais complexas forçaram os fabricantes a tornar
estes equipamentos mais poderosos e mais flexíveis. Uma nova versão destes sistemas são
chamados de controladores de automação programáveis (PAC) (NATIONAL INSTRUMENTS,
2007). Mesmo assim, para não perder a simplicidade, alguns fabricantes preferem lançar módulos compatíveis com CLP para funções avançadas, como controle de motores por PWM,
módulos de comunicação específicos, e mais recentemente, módulos de sistema de visão.
Tabela 7: Sistemas específicos para visão de máquina
Nome
NI-1742
Tipo
smartcam
Arquit.
Fechada
smartcam
Fechada
IRIS-GT300
Fabricante
National
Instruments
National
Instruments
Matrox
smartcam
Fechada
IRIS-GT1900
Matrox
smartcam
Fechada
BOA Smart
Vision System
In-Sight 1020
Dalsa
smartcam
Fechada
Cognex
smartcam
Fechada
National
Instruments
National
Instruments
Dalsa
sistema
compacto
sistema
compacto
sistema
compacto
sistema
compacto
sistema
compacto
semiaberta
semiaberta
semiaberta
semiaberta
aberta
(PC-x86)
sistema
compacto
aberta
(PC-x86)
NI-1764
NI EVS-1463
NI CVS-1454
GEVA Vision
Applicance
VA61 Vision
Applicance
4Sigth X
Supersight
E2
Dalsa
Matrox
Matrox
Programação
Vision Builder AI
ou LabVIEW
Vision Builder AI
ou LabVIEW
Design Assistant
ou Image Library
Design Assistant
ou Image Library
iNspect ou
Sherlock
In-Sight Explorer
ou EasyBuilder
Vision Builder AI
ou LabVIEW
Vision Builder AI
ou LabVIEW
iNspect ou
Sherlock
iNspect ou
Sherlock
C/C++ padrão
com Matrox Image
Library
C/C++ padrão
com Matrox
Imaging Library
Processador
533MHz
PowerPC
PowerPC
+ 720MHz DSP
1.6GHz Intel
Atom
1.6GHz Intel
Atom
DSP+CPU
não informado
Intel Core
Duo 1.66 GHz
Intel Celeron
400MHz+FPGA
Dual Core
2.4 GHz
não
informado
Intel core 2
Duo 2.2 GHz
Intel core 2
Duo + GPU +
FPGA
Características
CCD Sony 1/3” mono
640 × 480 pix.
CCD Sony 1/2” mono
1280 × 1024 pix.
CCD Kodak 1/3” mono
640 × 480 pix.
CCD Sony 1/3” mono
1600 × 1200 pix.
CCD Dalsa 1/3” mono
640 × 480 pix.
CCD 1/3” mono
640 × 480 pix.
suporta câmeras GigE,
Camera Link e USB 2.0
suporta câmeras
IEEE 1394a
suporta câmeras
GigE
suporta câmeras
GigE
suporta câmeras GigE,
Camera Link, USB 2.0
e IEEE 1394a/b
suporta câmeras GigE,
Camera Link, USB 2.0
e IEEE 1394a/b
Fonte: Website dos fabricantes ou desenvolvedores.
Neste contexto, o módulo de sistema de visão é um pequeno sistema de visão ultra compacto, que pode ser conectado a um CLP. Em geral, o sistema é programado de forma independente do CLP, com respeito às tarefas de visão de máquina, usando softwares específicos, mas
é controlado pelo CLP e troca informações com este além de estar no mesmo rack do CLP.
22
2.3
SOFTWARE DE PROCESSAMENTO
O software de processamento é responsável pelas tarefas de inspeção que serão executadas
no hardware. Ele é responsável pela conversão da informação contida na imagem em informação útil para controle. Este software é programado para executar a tarefa específica de visão de
máquina em questão.
Existem três categorias de sistemas de desenvolvimento que podem ser utilizadas para programar o sistema de visão, ou seja, para gerar o software de processamento do sistema de visão.
As categorias são: programação de propósito geral, softwares de computação numérica com pacotes de imagem, e ambientes de desenvolvimento específicos. Estas categorias se diferenciam
pela dificuldade e flexibilidade na programação. Em seguida, vamos ver os detalhes de cada
categoria.
2.3.1
Programação de Propósito Geral
Considerando que o hardware de processamento é, muitas vezes, um computador com sistema operacional conhecido, como Windows ou Linux, pode-se utilizar as linguagens de programação típicas para computadores com seus respectivos compiladores e ambientes de desenvolvimento ( IDE). Além disso, para facilitar a criação do software de inspeção é recomendado o
uso de bibliotecas de visão de máquina ou de processamento de imagem. As tabelas 8 e 9 mostram as linguagens mais comuns, compiladores, bibliotecas e ambientes de desenvolvimento
que podem ser utilizadas para visão de máquina.
Tabela 8: Linguagens, compiladores e ambientes utilizados em visão de máquina
Linguagem
C/C++
JAVA
Compilador
GCC
Borland C++
visual C++
GCJ
javac
Ambiente
Visual Studio
C++ Builder
Code::Blocks
NetBeans
JBuilder
Sist. Alvo
Windows
Linux
Unix
Java Virtual
Machine
Proc. Alvo
x86, AMD/Intel64
PowerPC
x86, AMD/Intel64
PowerPC, outros
Fonte: Website dos fabricantes ou desenvolvedores.
2.3.2
Softwares de Computação Numérica com Pacotes de Imagem
Em geral, as tarefas de visão de máquina e processamento de imagens envolvem algoritmos
de computação numérica pesados. Além disso, os métodos e algoritmos estão se aperfeiçoando
com as pesquisas na área. Sendo assim, os softwares de computação numérica com pacotes
de imagem integrados, como MatLab, Labview e Octave, são alternativas interessantes. Estes
23
Tabela 9: Bibliotecas utilizadas em visão de máquina
Bibliotecas
OpenCV
Matrox Imaging
Library (MIL)
Intel IPP
Integrating Vision
Toolkit (IVT)
ImageJ
Sapera Vision
Software
Vector Sig. Image
Processing Library
NI Vision
Devel. Module
Cimg - toolkit for
image processing
Desenvolvedor
originalmente
Intel
Matrox
Linguagem
C, com suporte à
C++, C#, Java
C/C++, C# e
visual basic
C/C++
Intel
Karlsruhe Institute
of Technology (KIT)
National Institutes
of Health (NIH)
DALSA
Georgia Tech
Research Corp.
National
Instruments
David
Tschumperlé
C/C++
Java
C/C++, C# e
.NET
C/C++, FORTAN
C, Visual Basic
LabVIEW
C++
Licença
GPL
Acel. Hardware
não informado
Proprietária
Placas Matrox,
GPU e FPGA
processadores
Intel
não informado
Proprietária
Licença
BSD
Domínio
Público
Proprietária
não informado
open
source
Proprietária
DALSA Hardware,
GPU e FPGA
CPU, GPU e
outros
Hardware da NI
CeCILL-C
não informado
Sist. Alvo
Windows, Linux,
FreeBSD, MacOS
Windows, Linux,
Windows CE
Windows, Linux,
MacOS
Windows, Linux,
MacOS
Windows, Linux,
MacOS
Windows
Windows, Linux,
outros sistemas
Windows, Linux,
MacOS
Windows, Linux,
MacOS
Fonte: Website dos fabricantes ou desenvolvedores.
sistemas são de programação e depuração mais fácil que a programação de propósito geral, o
que facilita a criação e inclusão de novos algoritmos de visão de máquina. Entretanto, estes
ambientes são menos flexíveis que a programação de propósito geral, i.e. o sistema e processador alvo que irá executar o programa são mais específicos. Logo, a liberdade de execução do
programa de visão de máquina é menor. Contudo, o desenvolvimento do programa de visão de
máquina é significativamente mais rápido. Na Tabela 10 mostramos alguns destes sistemas.
Tabela 10: Softwares de computação numérica com módulos de imagem para visão de máquina
Software
MatLab
Fabricante
MathWorks
Licença
Proprietária
SciLab
SciLab
Consortium
John W.
Eaton
National
Instruments
CeCILL
(Livre)
GPL
GNU Octave
LabVIEW
Proprietária
Linguagem
MATLAB
code
Similar
MATLAB
Similar
MATLAB
programação
gráfica
Módulos
imagem, câmera
outros
imagem, outros
imagem, outros
imagem, câmera
outros
Sist. Alvo
Windows, Linux
MacOS, UNIX
Windows, Linux
MacOS, UNIX
Windows, Linux
MacOS, UNIX
Windows, Linux
UNIX, outros
Fonte: Website dos fabricantes ou desenvolvedores.
2.3.3
Ambientes de Desenvolvimento Específicos
Praticamente todos os fabricantes de hardwares de processamento específicos também oferecem um ambiente de desenvolvimento específico de visão de máquina. Na maioria dos casos,
o ambiente possui todas as ferramentas necessárias para explorar o hardware ao máximo, além
de ser de fácil e rápida programação. Contudo, a flexibilidade é extremamente reduzida, sendo
difícil, por exemplo, a inclusão de novos algoritmos de visão de máquina ou execução em hard-
24
ware diferente do oferecido pelo fabricante. Esta alternativa é interessante para o profissional
de automação industrial que não tem interesse em se aprofundar na programação de visão de
máquina. A Tabela 11 mostra o exemplo de ambientes de desenvolvimento específicos.
Tabela 11: Ambientes de desenvolvimento específicos para visão de máquina
Software
Vision
Builder AI
iNspect
Sherlock
Vision PRO
Fabricante
National
Instruments
Dalsa
Dalsa
Cognex
Hardware Alvo
PC x86, smartcam NI-17xx
NI EVS-146x e NI CVS-14xx
PC x86, DALSA smartcams
e DALSA sistemas compactos
PC x86, DALSA smartcams
e DALSA sistemas compactos
PC x86, Cognex smartcams
e Cognex sistemas compactos
Características
compatível com LabVIEW
programação simplificada
programação simplificada
e fácil integração com CLPs
mais flexível que iNspect
programação menos simples
vários níveis de programação,
visual ou em Basic, C++
Fonte: Website dos fabricantes ou desenvolvedores.
2.4
AMBIENTES DE AQUISIÇÃO E SEUS EQUIPAMENTOS
Além da câmera, hardware de processamento e software, é necessário um bom ambiente de
aquisição para o sucesso de uma tarefa de visão de máquina. Um bom ambiente de aquisição
deve considerar iluminação adequada, filtros de luz e, em alguns casos, referências visuais.
Alguns destes itens serão vistos em seguida.
2.4.1
Iluminação
A Tabela 12 mostra os tipos de iluminação mais comuns e algumas características destes.
O objetivo da iluminação é obter um bom contraste para visualização. Além disso, a qualidade
da imagem, quando medida pela relação sinal por ruído, depende da quantidade de fótons que
chegam ao sensor, os quais foram emitidos pela iluminação.
A iluminação também deve atender as exigências da aplicação. Na maioria dos casos se
busca uma iluminação uniforme. Contudo, existem situações específicas que exigem iluminação estruturada, por exemplo.
25
Tabela 12: Iluminação do ambiente de aquisição para visão de máquina
Tipo
Vantagens
Desvantagens
Frontal Difusa
Sombras reduzidas,
As características da
redução da reflexão
superfície são menos
direta da luz
distintas
Direcional
Iluminação
e
forte
Produz sombras e re-
relativamente
giões de muita ilumi-
constante
Anel Luminoso
Lateral
nação
Poucas
sombras
Pode gerar um ilu-
e
ilumina-
minação circular, es-
relativamente
cura no centro e mais
com
ção
Montagem
constante
clara nas bordas
Mostra defeitos de
Produz fortes pon-
superfície e irregula-
tos de iluminação e
ridades de topologia
regiões criticamente
sombreadas
Polarizada
Iluminação
uni-
Intensidade reduzida
de
devido aos polariza-
forme,
picos
forte
iluminação
dores
removidos
Estruturada
Captura variações na
Forte
intensidade,
superfície
porém pode ser absorvida por algumas
cores
Fonte: (EDMUND OPTICS, 2009b).
Exemplo de resultado
26
2.4.2
Referências Visuais
Referências visuais são padrões de fácil detecção e distinção, desenhados no ambiente de
aquisição. Este padrões tem o propósito de facilitar nas tarefas de calibração, medição dimensional ou referenciação no espaço tridimensional. Na Figura 10 do próximo capítulo, juntamente
com outros aspectos, será observado um exemplo de padrão usado em calibração da câmera.
Nesta figura pode-se notar as distorções do padrão por causa da lente e da visão em perspectiva. Como o padrão é conhecido, ele serve de referência visual para correção das distorções
geométricas (STEGER; WIEDEMANN; ULRICH, 2008).
2.4.3
Filtros de Luz
O objetivo dos filtros de luz são permitir que apenas a luz de determinado comprimento
de onda alcance o sensor. Assim, pode-se filtrar diferentes faixas de frequência, como a ultravioleta (UV), a infravermelha (IR), ou mesmo as bandas de cor específica. Além destes,
filtros polarizadores podem reduzir picos de reflexão de luz muito fortes e indesejados, os quais
prejudicam a operação de visão de máquina (EDMUND OPTICS, 2009b).
27
3
PROCESSAMENTO DE IMAGEM PARA SISTEMAS DE VISÃO
O processamento de imagens é a parte essencial do software de visão de máquina. Ele
é responsável por retirar da imagem a informação desejada e convertê-la em algo útil para a
tarefa de controle. Os métodos usados em processamento de imagens tem evoluído muito nos
últimos anos. Existem uma grande variedade de algoritmos disponíveis e diferentes formas de
uso destes. Contudo, ainda existem muitos problemas em aberto na área de visão de máquina
que o processamento de imagens ainda não solucionou, embora tenha potencial para tal.
Este capítulo é um direcionador para as técnicas de processamento de imagem por trás da
tarefa de visão de máquina. Nele, serão apresentadas as tarefas de processamento de imagens
necessárias em visão de máquina. Para cada tarefa, serão referenciados os algoritmos mais importantes, ajudando a orientar o leitor interessado em se aprofundar em uma área específica. A
Figura 9 ilustra as três classes tarefas essenciais em visão de máquina, são elas: 1) correção, melhoramento e calibração da imagem; 2) extração da informação da imagem e 3) processamento
da informação.
Figura 9: Tarefas de processamento em visão de máquina.
28
Estas três tarefas de visão de máquina são detalhadas nas seções seguintes deste capítulo,
com explicações relativas às suas funções e referências aos principais algoritmos de processamento de imagens para tal tarefa.
3.1
PROCESSAMENTO PARA CORREÇÃO, MELHORAMENTO E CALIBRAÇÃO DA
IMAGEM
O objetivo desta tarefa é tornar a imagem capturada, muitas vezes com imperfeições, uma
imagem mais apropriada para a tarefa posterior de extração da informação. Imperfeições comuns como o ruído, o baixo contraste e as distorções por falta de foco precisam ser reduzidas
ou corrigidas. Estas tarefas são chamadas de correção da imagem. Em alguns casos, deseja-se
que a imagem fosse melhor, em alguns aspectos, que a entregue pela câmera, mesmo que esta
não tenha imperfeições sérias. Este outro conjunto de técnicas é chamado de melhoramento de
imagem, justamente porque “melhora” a imagem, ou seja, vai além da simples correção. Por último, é necessário ter referência física do tamanho da imagem em uma região de interesse, para
que se saiba que determinado tamanho na imagem, normalmente em pixels, corresponda a um
tamanho físico conhecido, em milímetros por exemplo. Esta tarefa é conhecida por calibração
da imagem.
3.1.1
Correção da Imagem
As técnicas de correção de imagem focam na resolução de algum tipo de distorção que
ocorre devido às dificuldades na aquisição da imagem. Problemas comuns são: ruído, baixo
contraste, distorções óticas e geométricas. A Figura 10 ilustra estes problemas juntamente com
suas formas de correção da imagem.
O ruído (noise em inglês) ocorre devido ao comportamento estocástico dos fótons que chegam ao sensor de imagem (GAMAL; ELTOUKHY, 2005). Em geral, a dificuldade é a baixa
quantidade de fótons, o que ocorre quando a aquisição é rápida demais ou quando a quantidade
de luz no ambiente de aquisição é pequena. As técnicas de correção de ruído são chamadas de
Denoising. Em (BUADES; COLL; MOREL, 2005) uma revisão dos métodos de redução de
ruído são apresentados. A maioria destes métodos são criados a partir de modelos estatísticos
para ruídos. Em (BOVIK, 2000) os modelos de ruído são detalhados.
Os problemas de intensidade geralmente estão relacionados com uma escolha ruim dos parâmetros de aquisição da câmera. Por exemplo, a exposição rápida à luz, aliada a uma iluminação fraca, gera uma imagem escura e com ruído. Exposição longa à luz aliada a uma iluminação
29
forte, gera uma imagem saturada, muito clara. Ou ainda, iluminação muito uniforme em um
objeto com cores e reflexão uniformes, gera uma imagem quase sem contraste. Na maioria das
situações a modificação do ambiente de aquisição e acerto dos parâmetros da câmera e iluminação melhoram a imagem, contudo se pode ter situações onde o melhor acerto ainda não é
suficiente. Nestes casos, a correção da intensidade através de processamento é fundamental. As
técnicas mais comuns de correção de intensidade são encontradas em (GONZALEZ; WOODS,
1992; BOVIK, 2000; STEGER; WIEDEMANN; ULRICH, 2008). Entre elas, uma alternativa
bastante eficiente é a correção automática de histograma, descrita em (GONZALEZ; WOODS,
1992; BOVIK, 2000).
Distorções por falta de foco ou limitações do sistema óptico são problemas comuns (BOVIK, 2000; STEGER; WIEDEMANN; ULRICH, 2008; EDMUND OPTICS, 2009c). Inclusive, uma forma de avaliar a qualidade das lentes é observando a função de transferência (modulação) da lente (HOLLOWS; SINGER, 2009). Esta distorção reduz os detalhes que podem
ser observados na imagem, fazendo com que as bordas, os textos ou os códigos de barras se tornem difíceis de detectar ou reconhecer por terem um aspecto de borrado (Blurring em inglês).
Para reduzir este problema, as técnicas conhecidas como restauração ou Deblurring podem ser
utilizadas (BOVIK, 2000; GONZALEZ; WOODS, 1992).
(a) Redução de ruído
(b) Correção de intensidade
(c) Restauração
(d) Distorções geométricas
Figura 10: Exemplos de correção da imagem.
Fonte: Autoria própria e (NATIONAL INSTRUMENTS, 2009).
Por fim, pode-se ter distorções geométricas devido ao ângulo entre a câmera e o objeto
(STEGER; WIEDEMANN; ULRICH, 2008). Para isso, é necessário corrigir a rotação da ima-
30
gem, escala e, muitas vezes, a distorção causada pela perspectiva da câmera. Além disso,
a própria lente pode distorcer a imagem, com o chamado efeito “barril”, que em alguns casos
pode ser bem severo. As correções de geometria dependem do conhecimento dos parâmetros de
distorção além da aplicação do método de correção. Em (STEGER; WIEDEMANN; ULRICH,
2008) são apresentados os métodos de correção. Observe que para a correção, é necessário que
se conheçam os parâmetros do modelo de distorção, o qual é definido durante o processo de
calibração.
3.1.2
Melhoramento de Imagem
Mesmo se a imagem estiver em boas condições visuais, não é garantido que a tarefa seguinte, de extração da informação, será bem sucedida. Assim, algumas funções de processamento podem facilitar a tarefa posterior. Duas tarefas simples que podem melhorar processamento posterior são a suavização da imagem e o aumento dos detalhes na imagem (GONZALEZ; WOODS, 1992). Estas operações são complementares. A suavização reduz detalhes,
isso porque alguns procedimentos são mais bem sucedidos quando a imagem está menos carregada com detalhes, evidenciando os objetos mais relevantes, ou grandes. A decomposição
multi-escala pode ser utilizada para este mesmo propósito (MOULIN; KRISHNAMURTHY;
WOODS, 1997; BOUMAN; SHAPIRO, 1994), onde o processamento inicia-se com as imagens de menor resolução, que tem menos informação visual, e é aprimorada nas escalas de
maior resolução. No sentido contrário, o aumento de detalhes reforça as bordas e os detalhes
na imagem, permitindo que algumas tarefas posteriores sejam mais precisas. Observe isso na
Figura 11(a).
Outra técnica que ajuda na tarefa posterior de extração de informação é a fusão de imagens (POHL; GENDEREN, 1998; STATHAKI, 2008). A fusão de imagens busca unir imagens
que mostram informações diferentes para se obter uma imagem mais rica em informação. Por
exemplo unir imagens geradas de posições espaciais diferentes do objeto, formando uma imagem maior, tipo “panorâmica” (STATHAKI, 2008). Ou ainda, pode-se unir imagens de canais,
ou bandas, diferentes. Por exemplo, imagens de infravermelho com imagens de ultravioleta,
mostrando aspectos que não são visíveis nas imagens coloridas convencionais (POHL; GENDEREN, 1998). A Figura 11(b) mostra a fusão de imagens com ponto de foco diferentes e
profundidade focal pequena, um problema muito comum em imagens microscópicas.
Uma técnica similar às técnicas de fusão é a técnica de superresolução (PARK; PARK;
KANG, 2003; ZIBETTI, 2007). A superresolução pode unir várias imagens de resolução baixa
para produzir uma imagem com resolução superior a resolução original da câmera. Estas téc-
31
nicas podem melhorar a precisão e a exatidão do processamento posterior, como nas inspeções
dimensionais de peças, por exemplo. A Figura 11(c) ilustra um exemplo de superresolução.
(a) Suavização e aumento de detalhes
(b) Fusão de imagens
(c) Superresolução
Figura 11: Exemplos de melhoramento de imagem.
3.1.3
Calibração
O processo de calibração envolve principalmente o cálculo do tamanho físico (em milímetros por exemplo) do pixel (STEGER; WIEDEMANN; ULRICH, 2008). Em geral, o processo
é simples e envolve apenas o uso de algumas referências no ambiente de aquisição. Em algumas
situações mais críticas, a calibração envolve correção da distorção da lente e correção de perspectiva (STEGER; WIEDEMANN; ULRICH, 2008; KLINGER, 2003), conforme observado
na Figura 10(d).
3.2
PROCESSAMENTO PARA EXTRAÇÃO DE INFORMAÇÃO
Esta parte do processamento é a mais importante do conjunto. Ela é responsável por extrair
da imagem a informação essencial para controle. A entrada do processamento é a imagem,
enquanto a saída é um conjunto de parâmetros relacionados com a informação extraída. O tipo
de informação extraída pode variar bastante, contudo ela pode ser colocada em uma de três
classes de operações. São elas: 1) busca por formas geométricas ou características conhecidas
na imagem, 2) Estimativa da forma (arbitrária e desconhecida) de uma região de interesse, ou
3) análise da imagem em uma região de interesse.
3.2.1
Busca por Formas ou Características
O objetivo desta tarefa é encontrar parâmetros relacionados com uma característica visual
conhecida. As características podem ser: bordas, linhas, círculos, textos, formas geométricas
arbitrárias e até padrões visuais arbitrários, desde que previamente conhecidos. Os parâmetros
32
podem ser relacionados à posição, tamanho, rotação, quantidade e grau de similaridade da
característica desejada. Alguns exemplos são apresentados na Tabela 13.
Nesta classe de tarefas três itens precisam ser definidos: a) modelo paramétrico (equação)
da característica previamente conhecida, b) critério de similaridade da característica, ou da
forma, com a região da imagem, e c) método de busca, onde vários parâmetros são testados até
que os parâmetros que melhor satisfazem o critério de similaridade são escolhidos (CHERNOV,
2010).
Tabela 13: Tipos de formas geométricas
Tipo
Bordas 1D
linhas
círculos
retângulos
elipses
formas arbitrárias
Parâmetros
quantidades, posições e orientações
quantidades, similaridade, ângulos e distancias
quantidades, similaridade, centros e raios
quantidades, similaridade, centros e bordas
quantidades, similaridade, centros, vértices e rotação
quantidades, similaridade, centros, escalas e rotações
Observe o exemplo da busca por linhas, ou line fitting como é conhecida. Inicialmente,
precisamos definir uma equação que “desenhe” uma linha a partir dos seus parâmetros, como
ângulo de inclinação e distância da origem. Isso atende o item “a”. O segundo ponto a ser definido é o critério de similaridade, para atender o item “b”. Neste caso, assumindo que a imagem
tem sempre intensidade positiva, pode-se medir a similaridade através do produto interno. Por
último, no item “c”, definem-se quais valores dos parâmetros serão testados, ou a sequência de
busca de valores. A situação mais comum é testar ângulos igualmente espaçados e, para cada
posição angular, vários espaçamentos em relação ao centro, também regularmente espaçados.
O exemplo descrito no parágrafo anterior, encontrado em (STEGER; WIEDEMANN; ULRICH, 2008), segue o mesmo princípio da aplicação da transformada Hough em uma imagem
(GONZALEZ; WOODS, 1992), ou da correlação de um pedaço de imagem, ou template, com
uma imagem de interesse (BOVIK, 2000). Em ambos os casos, o resultado é um mapa mostrando o grau de similaridade de uma forma, ou uma característica, com uma região espacial
da imagem. Como resultado final, basta selecionar as pontos mais similares, armazenando seus
parâmetros e o grau de similaridade com a forma. A Figura 12 ilustra alguns exemplos de busca
por formas conhecidas.
3.2.2
Busca pela Região de um Objeto (Segmentação)
Nesta tarefa, o objetivo é encontrar a forma de uma região de interesse, como por exemplo o contorno de um objeto. Nesta situação, normalmente se conhece o comportamento das
33
(a) Busca por círculos
(b) Busca por códigos de barras
(c) Busca por faces
Figura 12: Busca por formas ou características.
Fonte: Autoria própria em (a) e (b) e www.dcresource.com em (c).
intensidades internas da região do objeto ou das texturas do objeto, ao menos parcialmente.
Contudo, não se conhece o contorno exato da região do objeto. O resultado normalmente é o
mapa da região do objeto, com o qual é possível separá-lo do restante da imagem. Esta tarefa
é conhecida em processamento de imagens como segmentação (BOVIK, 2000; GONZALEZ;
WOODS, 1992).
Existem diversos métodos de segmentação disponíveis na literatura. Na tabela 14 são mostradas algumas classes de métodos e suas referências. A Figura 13 ilustra alguns resultados de
segmentação de imagens.
Tabela 14: Métodos de segmentação de imagens mais comuns.
Classe dos métodos
Métodos estatísticos
Tipo de método
Limiarização baseada no histograma
Máxima verossimilhança
Métodos Bayesianos
Métodos baseados
em regiões
Métodos baseados
nas bordas
3.2.3
Crescimento de regiões
Split and Merge
Watershed
Detecção das bordas
Contorno ativo (snakes)
Referência
(SHAFARENKO; PETROU; KITTLER, 1998)
(BOVIK, 2000)
(LAVALLE;
HUTCHINSON,
1995; GEIGER; YUILLE, 1991)
(GONZALEZ; WOODS, 1992)
(GONZALEZ; WOODS, 1992)
(BLEAU; LEON, 2000)
(CHENG et al., 2001)
(KASS; WITKIN; TERZOPOULOS, 1988;
MYRONENKO;
SONG, 2009)
Análise das Intensidades em uma Região de Interesse
Nesta tarefa, o objetivo é encontrar parâmetros relacionados com o padrão de intensidades dentro de uma região de interesse conhecida. Esta “região de interesse” normalmente está
relacionada a algum objeto ou área que queremos identificar ou classificar. Para tal, precisamos relacionar a textura ou o padrão de intensidade da região com um modelo previamente
34
(a) Segmentação baseada no histograma
(b) Métodos Bayesianos
(c) Contorno Ativo
Figura 13: Exemplos de segmentação
Fonte: Autoria própria em (a) e (b), e (MYRONENKO; SONG, 2009) em (c).
conhecido. É comum encontrar características bem marcantes em determinados padrões de
intensidade, que as diferenciam das demais. Estas características podem ser, na maioria das vezes, mensuradas objetivamente através de operações de processamento de sinais. Quando estas
medidas são suficientemente fortes, indicam que a textura está relacionada a um determinado
objeto ou material previamente conhecido.
A Tabela 15 mostra algumas características presentes em texturas e padrões de intensidades
que são comumente analisadas em uma região de interesse. A Figura 14 ilustra alguns exemplos
de análise das intensidades. Na Figura 14(a), pode-se notar que o espectro de Fourier determinada textura tem picos em frequências específicas. Estas informações podem ser utilizadas para
uma identificação automática do tipo de textura, por exemplo. Na Figura 14(b) a utilização da
cor é ilustrada.
Tabela 15: Características de intensidades analisadas em uma região de interesse
Tipo de análise
Medidas de momentos estatísticos
da intensidade ou cor
Análise estatística mais completa
Análise de frequências
Análise de tamanho em espaços arbitrários
Característica
Média, desvio padrão, correlação,
outros momentos
Histograma, distribuição
frequência central, frequência de
pico, largura de banda
Wavelets, noiselets, fractais
Referência
(BOVIK,
2000;
TEH; CHIN, 2002)
(CARLOTTO, 2009)
(BOVIK, 2000)
(CONCI;
PROENCA, 1998)
35
(a) Análise de frequência
(b) Análise de cor
Figura 14: Exemplos de análise da intensidade
Fonte: Autoria própria e (NATIONAL INSTRUMENTS, 2009) em (b).
3.3
PROCESSAMENTO DA INFORMAÇÃO, CLASSIFICAÇÃO E DETECÇÃO
Nesta terceira tarefa ocorre o processamento da informação extraída na etapa anterior.
Pode-se dizer que esta função não é mais “processamento de imagem” propriamente dito, pois
agora o processamento será realizado nos parâmetros extraídos da etapa anterior. Tem-se dois
tipos de processamentos realizados com estes parâmetros. O primeiro envolve modificar ou
inferir uma nova informação a partir da informação extraída da imagem, para que esta nova
informação seja utilizada na tarefa de controle. O segundo envolve usar a informação extraída
com o objetivo de reconhecer algo que está na imagem de forma indireta, avaliando se os parâmetros se encaixam em um padrão conhecido, ou seja, classificando ou detectando objetos na
imagem. Alguns exemplos são ilustrados na Figura 15.
3.3.1
Processamento da Informação
Esta etapa tem o objetivo de inferir uma nova informação a partir da informação extraída
da imagem. Esta “nova informação” normalmente é a informação útil para o usuário do sistema
e poderá ser usada para, por exemplo, uma tarefa de controle. Contudo, não se observa esta
informação diretamente na imagem, por isso é preciso esta etapa. Alguns exemplos desta etapa
são: Análises e inferências geométricas bidimensionais (2D), análise da forma 2D de um objeto,
estimação de posição no espaço 3D e reconstrução de objetos 3D.
Análises e Inferências Geométricas
Nesta etapa, o objetivo é inferir (ou calcular) novas informações sobre a geometria do objeto
ou da cena. Por exemplo, quando a extração de informação foi a busca por características,
como círculos, tem-se como resposta parâmetros geométricos, tais como centros e raios de
cada círculo. Logo, pode-se calcular informações relativas como distância entre os centros dos
36
círculos, ou ponto central de uma reta que cruza os centros. Estas funções são bastante utilizadas
em aplicações como inspeções dimensionais de peças, sendo, muitas vezes, fundamentais para
a solução do problema (NATIONAL INSTRUMENTS, 2009; JARVIS, 2009). Observe que
não é estritamente necessário que os parâmetros dos círculos tenham sido determinados pelo
processamento de imagens. O usuário poderia tê-los medido manualmente. Isso faz desta tarefa
um processamento de informação, não mais processamento de imagem.
Análise da Forma do Objeto
Pode-se extrair diversas informações úteis da região de um determinado objeto. Alguns
exemplos são: tamanho do objeto, centro de massa e eixos principais (GONZALEZ; WOODS,
1992). Estas informações são úteis tanto para tarefas de controle, por exemplo para determinar
se um robô está com o braço manipulador corretamente posicionado, quanto para classificação,
por exemplo reconhecer determinado tipo de peça. Em (LONCARIC, 1998; HARALICK;
STERNBERG; ZHUANG, 2009) são apresentadas algumas revisões sobre análises de forma de
objetos.
Decodificação de Código de Barras
Um determinado código de barras pode ser detectado (inclui ser localizado e o mapa de
intensidades extraído) em uma etapa anterior de processamento de imagens (YOUSSEF; SALEM, 2007). Depois de retirado da imagem e transformado em um código binário ele pode
ser decodificado para que a informação presente nele seja utilizada. Logo, a decodificação é
um processamento posterior, cuja entrada é um código binário (1D ou 2D) e a saída é uma
mensagem alfanumérica.
Estimação de Posição e Medição 3D
As informações de posição 2D na imagem podem ser mapeadas em posições 3D caso o
ponto de observação da câmera, bem como os parâmetros de projeção da câmera, sejam conhecidos. Para auxiliar na detecção dos pontos 2D, ainda na etapa anterior de extração de informação, iluminação estruturada pode ser utilizada (VALKENBURG; MCIVOR, 1998; JARVIS,
2009). Após a detecção da luz estruturada no espaço 2D, as informações podem ser convertidas
na posição 3D do objeto. Esta etapa de conversão é puramente uma manipulação da informação (JARVIS, 2009). Posteriormente, esta informação pode ser utilizada para, por exemplo,
controle de movimento de robôs.
Reconstrução de Objetos 3D
Para reconstrução da forma 3D do objeto são necessários diversos pontos 3D de informação
sobre a superfície do objeto. Preferencialmente, estes pontos podem estar com sua posição 3D
37
já estimada, usando os métodos mencionados anteriormente. Na reconstrução 3D, é calculada
a forma matemática da superfície do objeto, a partir de diversos pontos coletados (VALKENBURG; MCIVOR, 1998).
(a) Análises e Inferências Geométricas
(b) Análise da Forma do Objeto
(c) Reconstrução de Objetos 3D
Figura 15: Exemplos de Processamento da Informação
Fonte: Autoria própria e (NATIONAL INSTRUMENTS, 2009).
3.3.2
Classificação e Detecção
Para classificação, utiliza-se um conjunto de informações extraídas da imagem. Estas informações são de um determinado objeto ainda desconhecido. Normalmente, elas estão na forma
de parâmetros, os quais são comparados com conjuntos de parâmetros pertencentes a objetos
conhecidos. Logo, se o novo objeto for similar a objetos conhecidos ele pode ser classificado
como pertencendo à alguma das classe de objetos. Assim, o objeto é classificado (GONZALEZ;
WOODS, 1992). Exemplos comuns de classificação em visão de máquina são: reconhecimento
de caracteres óticos (OCR) (MORI; SUEN; YAMAMOTO, 2002), classificação de formas e
classificação de texturas (HARALICK; SHANMUGAM; DINSTEIN, 1973).
38
4
APLICAÇÕES DE SISTEMAS DE VISÃO NA AUTOMAÇÃO
Os sistemas de visão de máquina estão cada vez mais presentes na automação industrial.
Novos usos, novas ideias e novas aplicações têm surgido a cada dia. Neste capítulo serão vistas
algumas das aplicações em que o uso de sistemas de visão de máquina tem sido bem sucedido.
Outras revisões sobre aplicações em sistemas de visão podem ser encontradas em (MALAMAS
et al., 2003; GOLNABI; ASADPOUR, 2007).
Serão vistas quatro classes de aplicações: a inspeção visual automática, a identificação de
peças, partes e conjuntos, o controle de processos industriais e de células industriais, e por
último o controle e direcionamento robótico.
4.1
INSPEÇÃO VISUAL AUTOMÁTICA
Nesta aplicação o sistema de visão é utilizado para inspeção em controle de qualidade. O
objetivo é garantir que a peça ou produto produzido seja inspecionado automaticamente. O
sistema substitui o ser humano na tarefa de inspeção. A grande vantagem do uso de sistemas de
visão é a velocidade com que a inspeção pode ser realizada. Contudo, a precisão é, geralmente,
menor que a inspeção convencional, feita por um operador usando um paquímetro, por exemplo
(GROOVER, 2008).
Além disso, as medições são transferidas eletronicamente para o controle central da produção, a qual é, normalmente, automatizada. No controle central da produção não apenas a medida
da qualidade das peças pode ser armazenada, mas a própria verificação da funcionamento do
processo produtivo pode ser estimada a partir do comportamento estatístico das medidas das
peças inspecionadas, realizando, assim, o controle do processo industrial, que é outra aplicação
que será vista mais a frente (CHIANG; RUSSELL; BRAATZ, 2001).
A inspeção visual automática já é uma realidade em diversas indústrias. Em (HARDIN,
2009, 2010b) são mostrados alguns exemplos de inspeção de tubos metálicos. Em (ROMERO;
AROCA, 2010) são verificadas lâminas de madeira, e em (KUMAR, 2008; TANTASWADI et
39
al., 1999), a qualidade de tecidos é inspecionada.
Uma das aplicações mais conhecidas é a verificação de qualidade de material impresso
(STEGER; WIEDEMANN; ULRICH, 2008), principalmente, placas de circuito impresso (WU;
WANG; LIU, 1996). Em (STEGER; WIEDEMANN; ULRICH, 2008) e (NATIONAL INSTRUMENTS, 2009) exemplos de inspeção dimensional são mostrados. Em (LIAO; WU; BAINES, 1999) é apresentado uma modificação de uma máquina de medição por coordenadas
(GROOVER, 2008) que utiliza visão de máquina em vez de toque, para medição.
Outras aplicações vão desde a inspeção de qualidade de lentes (WILSON, 2010d), até a
inspeção de superfícies (STEGER; WIEDEMANN; ULRICH, 2008) e rugosidade de superfície
em peças usinadas para sistemas mecânicos (LEE; TARNG, 2001). A Figura 16 ilustra uma
peça mecânica sendo inspecionada.
Figura 16: Peça sendo inspecionada.
4.2
IDENTIFICAÇÃO DE PEÇAS
A identificação automática de peças na indústria é normalmente feita por etiquetas com
códigos de barras ou por dispositivos identificadores por rádio-freqüência (RFID) (GROOVER,
2008). Contudo, é muito comum que, por erros ou trocas, uma peça esteja identificada erroneamente. Imagine, por exemplo, um veículo grande, de um determinado tipo, em uma linha
de montagem automatizada, pronto para receber um processamento pesado, ser erroneamente
identificado porque os códigos de identificação foram trocados. Ou seja, o produto mencionado na etiqueta não é o produto correto. Este exemplo não é incomum, e diversos acidentes e
problemas na produção já ocorreram devido a este tipo de troca (MCFARLANE et al., 2003).
Neste sentido, um sistema de visão pode ser utilizado para uma confirmação visual da peça
identificada. Neste processo, o sistema busca características visuais da peça que foi previamente identificada com códigos de barras ou com RFID (SARMA; WEIS; ENGELS, 2003).
Características como o perfil da peça, saliências, furos, ou cor do material podem ser utilizadas
40
para confirmação por visão de máquina. Se as características visuais não corresponderem com
as esperadas, o sistema irá avisar sobre um possível erro.
Nesta mesma classe de aplicação encontra-se a aquisição e decodificação de código de
barras (unidimensional e bidimensional) usando câmeras (YOUSSEF; SALEM, 2007) e a identificação automática da peça sem a ajuda de etiquetas de informação (sem códigos de barras
ou RFID). Esta segunda classe de aplicação ainda é experimental, mas tem potencial de uso na
indústria.
Aplicações deste tipo são encontradas em (WILSON, 2010e; YACHIDA; TSUJI, 1977),
onde peças manufaturadas são identificadas para que um braço robótico as manipule da forma
mais apropriada. Em (STEGER; WIEDEMANN; ULRICH, 2008), o tipo de tecido é identificado. Em (BRUCKNER et al., 2010), o tipo de grão de cereal é identificado, buscando separar
impurezas e grãos de diferentes qualidades, para atender diferentes exigências de mercado.
4.3
CONTROLE DE PROCESSOS E DE CÉLULAS INDUSTRIAIS
Nesta aplicação, o sistema de visão é utilizado como realimentação de informação para
um processo industrial, uma linha de fabricação ou uma célula de manufatura (GROOVER,
2008) que está sendo controlada. Existem diversas informações que podem ser fornecidas ao
sistema de controle, tanto informações sobre o produto (obtidos por inspeção visual) quanto
informações sobre o processo em si, como estado operacional das máquinas, posicionamento
de robôs, e até a presença de pessoas em áreas de risco.
Em células de manufatura ou em linhas de fabricação, o sistema de visão estará realimentando o controle com informações mais gerais ao funcionamento do sistema. Estas informações
são referentes à movimentação de materiais, situação dos processos dentro da célula, i.e. câmera
X detectou máquina Y com a porta aberta, ou até referente à presença de elementos estranhos à
célula, i.e. presença de pessoas próximas ao braço robótico. Em (HARDIN, 2010a; WILSON,
2010j, 2010a) são apresentados exemplos de controle de células de montagem. Tanto para posicionamento adequado em montagem robótica quanto para verificação de conjuntos previamente
montados. A Figura 17 mostra uma célula de manufatura automatizada com um robô central.
Existem diversas informações úteis sobre o estado operacional da célula que podem ser extraídas desta imagem, como por exemplo: a presença de pessoas dentro da célula, o estado das
portas das máquinas, a presença de material bruto a disposição para início de fabricação entre
outras coisas.
Em processos industriais, o sistema de visão estará realimentado o controle do processo
41
Figura 17: Exemplos de célula de manufatura automatizada.
Fonte: Website da Haas (www.haascnc.com).
com informações específicas do funcionamento dos componentes do processo. Exemplos de
controle de processos mecânicos são apresentados em (KURADA; BRADLEY, 1997; STEGER; WIEDEMANN; ULRICH, 2008). Nestes casos, ferramentas de corte são periodicamente
verificadas, onde o sistema avisa sobre a necessidade de troca da ferramenta de corte, tanto em
usinagem de metais (KURADA; BRADLEY, 1997) quanto para corte de madeira (STEGER;
WIEDEMANN; ULRICH, 2008). Em (WILSON, 2009c, 2010c, 2010f) são mostrados exemplos do uso de sistema de visão para processamento de alimentos, como na automação de cortes
de animais e derivados.
A fabricação de circuitos integrados (RAO, 1996) é um dos exemplos onde os sistemas de
visão são empregados desde os anos 80. Em (STEGER; WIEDEMANN; ULRICH, 2008) é
detalhado um algoritmo para definir a posição de corte dos componentes semicondutores fabricados nos discos (wafer) de silício (STEGER; WIEDEMANN; ULRICH, 2008). O objetivo
não é verificar a qualidade do produto, e sim definir posição de corte que será repassada ao
controle do processo industrial.
42
4.4
CONTROLE E DIRECIONAMENTO ROBÓTICO
Esta categoria é similar ao controle de processos e células, contudo os sistemas robóticos
tem algumas características peculiares. Entre elas, o fato que a câmera está se movendo em
conjunto com o sistema robótico. Nesta aplicação tem-se duas classes: 1) a coordenação de
braços robóticos industriais, os quais operam em condições previsíveis e geralmente tem base
fixa, e 2) controle de sistemas robóticos móveis, o qual não tem posição ou base fixa.
Exemplos de aplicação em controle de braços robóticos fixos são encontrados em (TRIVEDI; CHEN; MARAPANE, 1989; WILSON, 2009b). Em (WILSON, 2010e, 2010h), tem-se
exemplos do uso de visão para controle de posição de braços robóticos de montagem. A Figura
18 ilustra um exemplo de um braço robótico cujo direcionamento é definido por um sistema de
visão de máquina.
Figura 18: Exemplos de braço robótico controlado por um sistema de visão.
Fonte: robotics.youngester.com
Já na aplicação de robótica móvel tem-se (WOLF; BURGARD; BURKHARDT, 2002),
onde o sistema de visão é utilizado para localização do robô móvel. Outras aplicações nãoindustriais relevantes são o controle de reabastecimento de aviões em vôo (WILSON, 2010g) e
sistema de controle auxiliar para veículos guiados por cegos (WILSON, 2010i).
43
5
CONCLUSÕES
Conclui-se este trabalho com a observação que visão de máquina está atingindo sua “maturidade”, principalmente com respeito à automação industrial. Isso é observado através da
variedade de hardwares disponíveis, bem como pela quantidade de fabricantes no mercado,
conforme visto no Capítulo 2. Além disso, a variedade de softwares de desenvolvimento, com
diferentes níveis de conhecimento e de flexibilidade, confirmam esta conclusão. Nota-se também, que os custos e o acesso aos sistemas é compatível com os demais sistemas de automação,
fazendo com que os sistemas de visão não sejam mais um investimento caro e de risco para a
indústria.
Assim, tem-se que a visão de máquina já é uma realidade na indústria. Diversas indústrias
já incorporaram os sistemas de visão às suas aplicações. Em destaque, tem-se a inspeção visual
automática, a identificação de peças, o controle de processos industriais e o direcionamento
robótico, conforme comentado no Capítulo 4. Além disso, novas ideias e novas aplicações na
indústria surgem a cada dia, com grande potencial de crescimento.
Desta forma, o ensino da automação industrial, e áreas afins, deve aproveitar este conhecimento e integrá-lo ao seu currículo. Isso pode aumentar o potencial da automação no aperfeiçoamento dos processos industriais. Mais do que um tópico avançado, logo os sistemas de visão
serão vistos como um tópico regular dentro do ensino da automação industrial.
Apesar disso, ainda existem desafios e problemas em aberto. Isso significa potencial de
pesquisa, tanto para novos métodos quanto para novas aplicações. O Capítulo 3 mostra alguns
métodos, nas tarefas de processamento de imagem, que são utilizados atualmente. Contudo,
ainda existe muito a ser aperfeiçoado nesta direção. O potencial de pesquisa nesta área pode
abranger tanto temas mais simples, voltados à iniciação científica, quanto assuntos mais profundos, direcionado às pesquisas de mestrado e doutorado.
Finalmente, este texto termina com a mensagem de que o Brasil precisa investir mais neste
ponto como forma de fortalecer sua indústria. Pode-se dizer que este é um bom momento para
isso.
44
REFERÊNCIAS
BLEAU, A.; LEON, L. Watershed-based segmentation and region merging. Computer Vision
and Image Understanding, Elsevier, v. 77, n. 3, p. 317–370, mar. 2000.
BOUMAN, C.; SHAPIRO, M. A multiscale random field model for Bayesian image segmentation. IEEE Transactions on Image Processing, v. 3, n. 2, p. 162–177, mar. 1994.
BOVIK, A. (Ed.). Handbook of Image and Video Processing. [S.l.]: Academic Press, 2000.
BRANICKY, M.; BORKAR, V.; MITTER, S. A unified framework for hybrid control: Model
and optimal control theory. Automatic Control, IEEE Transactions on, IEEE, v. 43, n. 1, p.
31–45, jan. 1998. ISSN 0018-9286.
BRUCKNER, P. et al. Measuring wheat quality. Vision Systems Design, v. 15, n. 6, p. 17–22,
jun. 2010.
BUADES, A.; COLL, B.; MOREL, J. A review of image denoising algorithms, with a new one.
Multiscale Modeling and Simulation, v. 4, n. 2, p. 490–530, 2005.
CARLOTTO, M. Histogram analysis using a scale-space approach. Pattern Analysis and Machine Intelligence, IEEE Transactions on, IEEE, n. 1, p. 121–129, 2009. ISSN 0162-8828.
CHENG, H. et al. Color image segmentation: advances and prospects. Pattern Recognition,
Elsevier, v. 34, n. 12, p. 2259–2281, 2001.
CHERNOV, N. Circular and Linear Regression: Fitting Circles and Lines by Least Squares. [S.l.]: CRC Press, 2010. 286 p.
CHIANG, L.; RUSSELL, E.; BRAATZ, R. Fault detection and diagnosis in industrial systems. [S.l.]: Springer Verlag, 2001. ISBN 1852333278.
COMPUTAR LENSES. Technical Guide for Lenses. [S.l.], 2008. Acesso em out/2010. Disponível em: <www.computarganz.com>.
CONCI, A.; PROENCA, C. B. A fractal image analysis system for fabric inspection based on
a box-counting method. Computer Networks and ISDN Systems, v. 30, n. 20-21, p. 1887 –
1895, nov. 1998. ISSN 0169-7552.
EDMUND OPTICS. Aplication Notes on Electronics. [S.l.], 2009. Acesso em out/2010. Disponível em: <www.edmundoptics.com>.
EDMUND OPTICS. Choose the Correct Illumination. [S.l.], mar. 2009. Acesso em out/2010.
Disponível em: <www.edmundoptics.com>.
EDMUND OPTICS. Optics Made Easy Guide. [S.l.], mar. 2009. Acesso em out/2010. Disponível em: <www.edmundoptics.com>.
45
FREEMAN, H. (Ed.). Machine Vision for Inspection and Measurement. [S.l.]: Academic
Press, 1989.
GAMAL, A. E.; ELTOUKHY, H. CMOS image sensors. IEEE Circuits and Devices Magazine, v. 21, n. 3, p. 6–20, maio 2005.
GARCIA, C.; PRETT, D.; MORARI, M. Model predictive control: Theory and practice–A
survey* 1. Automatica, Elsevier, v. 25, n. 3, p. 335–348, 1989. ISSN 0005-1098.
GEIGER, D.; YUILLE, A. A common framework for image segmentation. International Journal of Computer Vision, Springer, v. 6, n. 3, p. 227–243, 1991.
GEORGINI, M. Automação Aplicada: descrição e implementação dos sistemas sequenciais
com PLC’s. [S.l.]: Editora Érica, 2003.
GOLNABI, H.; ASADPOUR, A. Design and application of industrial machine vision systems.
Robotics and Computer-Integrated Manufacturing, Elsevier, v. 23, n. 6, p. 630–637, 2007.
ISSN 0736-5845.
GONZALEZ, R. C.; WOODS, R. E. Digital Image Processing. [S.l.]: Addison-Wesley, 1992.
GROOVER, M. P. Automation, Production Systems, and Computer-Integrated Manufacturing. third. [S.l.]: Prentice Hall, 2008.
HARALICK, R.; SHANMUGAM, K.; DINSTEIN, I. Textural features for image classification.
IEEE Transactions on systems, man and cybernetics, v. 3, n. 6, p. 610–621, 1973. ISSN
0018-9472.
HARALICK, R.; STERNBERG, S.; ZHUANG, X. Image analysis using mathematical morphology. Pattern Analysis and Machine Intelligence, IEEE Transactions on, IEEE, n. 4, p.
532–550, 2009. ISSN 0162-8828.
HARDIN, W. Cylinder challenge. Vision Systems Design, v. 14, n. 12, p. 21–24, dez. 2009.
HARDIN, W. Assembly required. Vision Systems Design, v. 15, n. 1, p. 17–21, jan. 2010.
HARDIN, W. Defect avoidance. Vision Systems Design, v. 15, n. 6, p. 13–16, jun. 2010.
HOLLOWS, G.; SINGER, S. W. Specifying lenses for megapixel cameras. Vision Systems
Design, v. 14, n. 11, p. D3–D6, nov. 2009.
JARVIS, R. A perspective on range finding techniques for computer vision. Pattern Analysis
and Machine Intelligence, IEEE Transactions on, IEEE, n. 2, p. 122–139, 2009. ISSN 01628828.
KASS, M.; WITKIN, A.; TERZOPOULOS, D. Snakes: Active contour models. International
journal of computer vision, Springer, v. 1, n. 4, p. 321–331, 1988.
KLINGER, T. Image processing with LabVIEW and IMAQ Vision. [S.l.]: Prentice Hall,
2003.
KUMAR, A. Computer-vision-based fabric defect detection: A survey. Industrial Electronics,
IEEE Transactions on, IEEE, v. 55, n. 1, p. 348–363, jan. 2008. ISSN 0278-0046.
46
KURADA, S.; BRADLEY, C. A review of machine vision sensors for tool condition monitoring. Computers in Industry, Elsevier, v. 34, n. 1, p. 55–72, 1997. ISSN 0166-3615.
LAVALLE, S.; HUTCHINSON, S. A Bayesian segmentation methodology for parametric
image models. Pattern Analysis and Machine Intelligence, IEEE Transactions on, IEEE,
v. 17, n. 2, p. 211–217, fev. 1995.
LEE, B.; TARNG, Y. Surface roughness inspection by computer vision in turning operations.
International Journal of Machine Tools and Manufacture, Elsevier, v. 41, n. 9, p. 1251–
1263, 2001. ISSN 0890-6955.
LIAO, J.; WU, M.; BAINES, R. A coordinate measuring machine vision system. Computers
in industry, Elsevier, v. 38, n. 3, p. 239–248, abr. 1999. ISSN 0166-3615.
LIPPINCOTT, D. Thinking inside the box: Boosting the effectiveness of air cooling. Military
Embedded Systems, maio 2008.
LITWILLER, D. CCD vs. CMOS: Facts and fiction. Photonics Spectra, p. 154–158, 2001.
LONCARIC, S. A survey of shape analysis techniques. Pattern recognition, Elsevier, v. 31,
n. 8, p. 983–1001, 1998. ISSN 0031-3203.
MALAMAS, E. et al. A survey on industrial vision systems, applications and tools. Image and
Vision Computing, Elsevier, v. 21, n. 2, p. 171–188, 2003. ISSN 0262-8856.
MCFARLANE, D. et al. Auto ID systems and intelligent manufacturing control. Engineering
Applications of Artificial Intelligence, Elsevier, v. 16, n. 4, p. 365–376, 2003. ISSN 09521976.
MORAES, C. C. de. Engenharia de Automação Industrial. 2. ed. [S.l.]: LTC, 2007.
MORI, S.; SUEN, C.; YAMAMOTO, K. Historical review of OCR research and development.
Proceedings of the IEEE, IEEE, v. 80, n. 7, p. 1029–1058, 2002. ISSN 0018-9219.
MOULIN, P.; KRISHNAMURTHY, R.; WOODS, J. Multiscale modeling and estimation of
motion fields for video coding. IEEE Transactions on Image Processing, v. 6, p. 12, 1997.
MYRONENKO, A.; SONG, X. Global active contour-based image segmentation via probability
alignment. In: IEEE. Computer Vision and Pattern Recognition, 2009. CVPR 2009. IEEE
Conference on. [S.l.], 2009. p. 2798–2804.
NATIONAL INSTRUMENTS. PAC’s for Industrial Control, the Future of Control. [S.l.],
jul. 2007. Acesso em jun/2010. Disponível em: <www.ni.com>.
NATIONAL INSTRUMENTS. N Vision Builder for Automated Inspection Tutorial. [S.l.],
ago. 2009. Acesso em jun/2010. Disponível em: <www.ni.com>.
PARK, S. C.; PARK, M. K.; KANG, M. G. Super-resolution image reconstruction: a technical
overview. IEEE Signal Processing Magazine, v. 20, n. 3, p. 21–36, maio 2003.
POHL, C.; GENDEREN, J. V. Review article Multisensor image fusion in remote sensing: concepts, methods and applications. International journal of remote sensing, Taylor & Francis,
v. 19, n. 5, p. 823–854, mar. 1998.
47
RAO, A. Future directions in industrial machine vision: a case study of semiconductor manufacturing applications. Image and Vision Computing, Elsevier, v. 14, n. 1, p. 3–19, 1996.
ISSN 0262-8856.
ROMERO, C. M.; AROCA, J. C. Finding faults. Vision Systems Design, v. 15, n. 7, p. 13–15,
jul. 2010.
ROSÁRIO, J. M. Princípios de Mecatrônica. [S.l.]: Prentice Hall, 2005.
SARMA, S.; WEIS, S.; ENGELS, D. RFID systems and security and privacy implications.
Cryptographic Hardware and Embedded Systems-CHES 2002, Springer, p. 1–19, 2003.
SHAFARENKO, L.; PETROU, H.; KITTLER, J. Histogram-based segmentation in a perceptually uniform color space. Image Processing, IEEE Transactions on, IEEE, v. 7, n. 9, p.
1354–1358, set. 1998.
SIEMENS. SIMATIC IPC: The More Industrial PC. [S.l.], abr. 2010. Disponível em:
<www.automation.siemens.com>.
STATHAKI, T. Image fusion: algorithms and applications. [S.l.]: Academic Press, 2008.
STEGER, C.; WIEDEMANN, C.; ULRICH, M. Machine Vision Algorithms and Applications. [S.l.]: Wiley-VCH, 2008. 370 p.
TANTASWADI, P. et al. Machine vision for automated visual inspection of cotton quality in
textile industries using color isodiscrimination contour. Computers & industrial engineering,
Elsevier, v. 37, n. 1-2, p. 347–350, 1999. ISSN 0360-8352.
TEH, C.; CHIN, R. On image analysis by the methods of moments. Pattern Analysis and
Machine Intelligence, IEEE Transactions on, IEEE, v. 10, n. 4, p. 496–513, 2002. ISSN
0162-8828.
TRIVEDI, M.; CHEN, C.; MARAPANE, S. A vision system for robotic inspection and manipulation. COMPUTER,, Published by the IEEE Computer Society, v. 22, n. 6, p. 91–97, jun.
1989. ISSN 0018-9162.
VALKENBURG, R.; MCIVOR, A. Accurate 3D measurement using a structured light system.
Image and Vision Computing, Elsevier, v. 16, n. 2, p. 99–110, 1998.
WILSON, A. Match game. Vision Systems Design, v. 14, n. 12, p. 25–28, dez. 2009.
WILSON, A. Robot guidance. Vision Systems Design, v. 14, n. 11, p. 13–14,75–79, nov. 2009.
WILSON, A. Vision system speeds egg crack detection. Vision Systems Design, v. 14, n. 12,
p. 9–10, dez. 2009.
WILSON, A. Automating assemblies. Vision Systems Design, v. 15, n. 4, p. 14–17, abr. 2010.
WILSON, A. Facing interfaces. Vision Systems Design, v. 15, n. 01, p. 25–28, jan. 2010.
WILSON, A. Laser triangulation system measures food products. Vision Systems Design,
v. 15, n. 1, p. 9–10, jan. 2010.
48
WILSON, A. Lens test system uses dual USB cameras. Vision Systems Design, v. 15, n. 7,
p. 5–6, jul. 2010.
WILSON, A. Plumbing parts assembly. Vision Systems Design, v. 15, n. 10, p. 27–30, out.
2010.
WILSON, A. Pork process. Vision Systems Design, v. 15, n. 3, p. 13–14, mar. 2010.
WILSON, A. Robots and vision refuel jet aircraft. Vision Systems Design, v. 15, n. 9, p. 18,
set. 2010.
WILSON, A. Simplifying automotive assembly. Vision Systems Design, v. 15, n. 5, p. 19–23,
maio 2010.
WILSON, A. smart car lets the blind drive. Vision Systems Design, v. 15, n. 10, p. 19–20, out.
2010.
WILSON, A. Smart vision sensor checks car roof clips. Vision Systems Design, v. 15, n. 4, p.
9–10, abr. 2010.
WOLF, J.; BURGARD, W.; BURKHARDT, H. Robust vision-based localization for mobile
robots using an image retrieval system based on invariant features. In: IEEE. Robotics and
Automation, 2002. [S.l.], 2002. v. 1, p. 359–365. ISBN 0780372727.
WU, W.-Y.; WANG, M.-J. J.; LIU, C.-M. Automated inspection of printed circuit boards through machine vision. Computers in Industry, v. 28, n. 2, p. 103–111, maio 1996.
YACHIDA, M.; TSUJI, S. A versatile machine vision system for complex industrial parts. IEEE
Transactions on Computers, IEEE, p. 882–894, 1977. ISSN 0018-9340.
YOUSSEF, S.; SALEM, R. Automated barcode recognition for smart identification and inspection automation. Expert Systems with Applications, Elsevier, v. 33, n. 4, p. 968–977, 2007.
ISSN 0957-4174.
ZIBETTI, M. V. W. Super-Resolução Simultânea para Seqüência de Imagens. Tese (Doutorado) — Universidade Federal de Santa Catarina, maio 2007.