![Page 1: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/1.jpg)
Desenvolvimento de um Pacote de Processamento de Imagens para o
Scilab
Aluno: Ricardo FabbriOrientador: Luciano da Fontoura Costa e-mail: [email protected] URL: siptoolbox.sourceforge.net
Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo, Brasil. 06
/2003
![Page 2: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/2.jpg)
Plano da Apresentação
● Introdução● Aspectos de Desenvolvimento● Funcionalidades Implementadas● Trabalho Futuro● O Grupo de Visão Cibernética● Conclusão● Referências
![Page 3: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/3.jpg)
Introdução
![Page 4: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/4.jpg)
SciLab
● Software livre ● Programação numérica● Prototipação● Rotinas prontas● Fácil para manipular matrizes:
– A * B * C + D
– Loop desnecessário
![Page 5: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/5.jpg)
SciLab
● Ambiente open source ● Programacao numerica● Prototipacao● Rotinas prontas● Facil para manipular matrizes:
– A * B * C + D
– Loop desnecessario
Ideal para processamento de imagens
![Page 6: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/6.jpg)
SIP toolbox
●E/S de imagens no SciLab●Processamento, análise e
reconhecimento de imagens●Software Livre●Multiplataforma
Objetivos:
![Page 7: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/7.jpg)
SIP toolbox
● Início: efeito colateral das atividades de iniciação científica do autor
● Como Projeto de Graduação I
– Rotinas para E/S de imagens em qualquer formato
– Diversas outras rotinas● Angariou usuários em todo o mundo,
principalmente França (além do Brasil)
![Page 8: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/8.jpg)
SIP toolbox
Como Projeto de Graduação II:● Autoconf, Automake e Libtool para
portabilidade● Esqueletização Multiescala
– 2 Algoritmos● Transformada de Hough● Detetor de bordas por Fourier● Outros operadores
![Page 9: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/9.jpg)
Desenvolvimento
![Page 10: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/10.jpg)
Projeto do Sistema
![Page 11: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/11.jpg)
Auto-configuração
● Diferenças entre os ambientes de desenvolvimento e uso
● O UNIX possui diversas variantes e é altamente customizável
● Como detectar bibliotecas externas?● Como funcionar com diferentes versões
do Scilab?
Desafios
![Page 12: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/12.jpg)
GNU Autotools
● Autoconf, Automake e Libtool● Típicos em softwares livres● Permitem instalar através da seqüência:
– configure # testa o sistema
– Make # compila
– Make install # instala
![Page 13: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/13.jpg)
Autotoconf e Automake
![Page 14: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/14.jpg)
Libtool
● Usado para gerar bibliotecas● Abstração do conceito de bibliotecas● Programador não precisa saber
detalhes de cada sistema● No SIP, é usado através do
Automake
![Page 15: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/15.jpg)
Experiência com oDesenvolvimento Livre
● “Release early, Release Often”
– FEEDBACK● Linux/UNIX
● Sourceforge.net● Requisitos
– Forte participação do usuário
![Page 16: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/16.jpg)
Desenvolvimento Livre
● Projeto Arquitetural (alto nível)
– SIP é simples (simplificado?)
– Uso conjunto de rotinas é ad-hoc● Projeto detalhado
– Interface ~ Matlab
– Boa organização do código fonte
![Page 17: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/17.jpg)
● Teste
– Fruto do ciclo iterativo
– Versões alfa e beta
– Desenvolvedor principal realiza poucos testes
● Lançamento
– Freshmeat.net e Sourceforge.net
– Listas de email e news
Desenvolvimento Livre
![Page 18: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/18.jpg)
Funcionalidades Implementadas
![Page 19: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/19.jpg)
E/S de Imagens
● Leitura de aquivos de imagens
– imread● Escrita de arquivos de imagens
– imwrite● Quase 70 formatos: JPEG, TIFF, BMP,
PNG, GIF, FITS, XPM, Photo-CD, ...● ImageMagick
![Page 20: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/20.jpg)
Filtro Gaussiano 1D
● Convolução por tr. Fourier
![Page 21: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/21.jpg)
Filtro Gaussiano 1D
![Page 22: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/22.jpg)
Esqueletos Multi-escala
![Page 23: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/23.jpg)
Esqueletos Multi-escala
![Page 24: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/24.jpg)
Esqueletos Multi-escala
● Estabilidade a rotação● Permite objetos com buracos● Algoritmo rápido baseado em grafos
![Page 25: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/25.jpg)
Outras Funcionalidades
● Afinamento (thinning) por Lam-Suen● Transformada de Hough● Dimensão Fractal● Detector de Bordas por Fourier
![Page 26: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/26.jpg)
Filtro Gaussiano 2D
![Page 27: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/27.jpg)
Filtro Gaussiano 2D
![Page 28: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/28.jpg)
Filtro da Mediana
● Troca valor de cada pixel pela mediana dos pixels vizinhos
● Filtro não-linear
![Page 29: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/29.jpg)
Realce de Bordas
● Máscaras de convolução:
● Estimadores para derivada parcial
– Duas direções ortogonais
– Módulo do Gradiente:
![Page 30: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/30.jpg)
Realce de Bordas
Sobel ImageMagick
![Page 31: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/31.jpg)
Curvatura
● Medida bastante útil
![Page 32: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/32.jpg)
Morfologia Matemática
● Dilatação● Erosão● Elementos
estruturantes arbitrários
![Page 33: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/33.jpg)
Transformações Geométricas
● Implementadas com ImageMagick
– Mogrify
![Page 34: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/34.jpg)
Seguidor de Bordas
● Extrai coordenadas paramétricas
– C(t) = (x(t), y(t))● Contornos e curvas fechadas
![Page 35: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/35.jpg)
Equalização de Histograma
● Espalha a distribuição de intensidades
![Page 36: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/36.jpg)
Contribuições
● Filtragem de Ruído por fluxo de curvatura min/máx (L. Estrozi)
● Rotinas para processamento de imagens de interferometria óptica (J. Druel)
● Limiarização adaptativa (ImageMagick)
![Page 37: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/37.jpg)
Trabalho Futuro
● Tipos inteiros de dados● Terminar de portar a nova versão para
Windows● Suíte de Testes● Melhorar o display gráfico● Documentação externa para o Animal
![Page 38: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/38.jpg)
● Biblioteca Externa● CVS● XML Help● Usabilidade● Novas rotinas
Trabalho Futuro
![Page 39: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/39.jpg)
Conclusões
● Alta demanda pelo SIP
– Ainda é a única ferramenta livre para prototipação e experimentação de métodos de Análise de Imagens
● Baixo custo● Experiência com o modelo de
desenvolvimento livre
![Page 40: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/40.jpg)
Conclusões
● Grupo de Visão Cibernética (CVRG)
– Bastante equipado
– Ambiente agradável● Realizo iniciação científica desde 2000● Conhecimentos adquiridos durante o
curso foram cruciais
– Matemática e Programação ● Pretendo fazer mestrado no ICMC
![Page 41: Desenvolvimento de um Pacote de Processamento de Imagens para o Scilab Aluno: Ricardo Fabbri Orientador: Luciano da Fontoura Costa e-mail: rfabbri@if.sc.usp.br](https://reader036.vdocuments.com.br/reader036/viewer/2022062312/552fc119497959413d8c928d/html5/thumbnails/41.jpg)
Referências