34
lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia Elétrica Laboratório de Processamento de Sinais e Imagens Bolsista: Bruno Policarpo Toledo Freitas Engenharia de Computação

Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Embed Size (px)

Citation preview

Page 1: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

lili: LaPSI Image Processing Library

Orientador: Altamiro Amadeu SusinCo-Orientador: Alberto Bastos do Canto

Escola de EngenhariaDepartamento de Engenharia Elétrica

Laboratório de Processamento de Sinais e Imagens

Bolsista: Bruno Policarpo Toledo FreitasEngenharia de Computação

Page 2: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Apresentação Biblioteca com ferramentas de auxílio ao

processamento de imagens lili – totalmente estruturada e em linguagem

C lili2 – orientada a objeto e em linguagem C++ A lili2 utiliza apenas a biblioteca C++

standard, sendo necessário para o seu uso apenas um compilador para C++

Page 3: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Apresentação O desenvolvimento da lili2 é feito usando a

IDE Codeblocks Padrão Doxygen de documentação Bibliotecas adicionais de interfaceamento

BUtil para Borland C++ Builder wxWidgetsUtil para wxWidgets

Código totalmente aberto Projeto aberto a críticas e sugestões de

melhoria

Page 4: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Apresentação

Windows:CodeblocksC++ Builder

Linux:Codeblocks

wxWidgets:wxWidgetsUtils

C++ Builder:BUtils

PixelsMapa de Pixels

Algoritmos

lili2 Interface Ambiente

Page 5: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Mapas e Pixels

Classe Mapa de Observação

LGrayMap LGrayPix Intensidades entre [0, 255]

LGrayMap765 LGrayPix765 Intensidades entre [0, 765]

LComplexMap LComplex Números complexos

LDoubleMap LDouble(double) Mapa de números inteiros

LRgbMap LRgbPix R, G e B entre [0, 255]

LWxyMap LWxyPix W entre [0, 765], X entre [-8192, 16384], Y entre [-24576, 24576]

Page 6: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação da lili2: Resumo

Instalar a IDE Instalar o CodeBlocks

wxWidgets Borland C++ Builder 6 (apenas para Windows)

Instalar a Biblioteca e a Interface Linux ou Windows

Page 7: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação:lili2 + wxWidgets + Codeblocks

no Windows

Page 8: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação no Windows: Codeblocks(1) Baixar e instalar o Codeblocks no site www.codeblocks.org Versão com MingW

Page 9: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação no Windows: Codeblocks(2) Baixar a lili2_v18_windows.zip

Page 10: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação no Windows: Codeblocks(3) Descompactar o arquivo baixado na pasta do

compilador MingW

Page 11: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação no Windows: Codeblocks(4) Instalar a wxWidgets 2 opções:

Baixar e instalar a biblioteca compilada http://wxpack.sourceforge.net/Main/Downloads

Baixar os fontes e compilar... Pode demorar MUITO tempo

Page 12: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação no Windows: Codeblocks(5) Abrir o Codeblocks e entrar nas opções do Compilador

Page 13: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação no Windows: Codeblocks(6) Adicionar o caminho da versão da lili2 desejada

Page 14: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação:lili2 + Borland C++ Builder

no Windows

Page 15: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação no Windows: Borland C++ Builder(1) Descompactar o arquivo lili2_v18_windows.zip na

pasta de instalação do C++ Builder

Page 16: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação:lili2 + wxWidgets + Codeblocks

no Linux

Page 17: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Passo-a-passo genérico

Instalar as ferramentas de compilação (gcc e make, principalmente)

Instalar a wxWidgets Instalar o Codeblocks Baixar o código fonte da lili2 Compilar a lili2 Instalar a lili2

Page 18: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação em Linux(1):Ferramentas de programação Ubuntu

sudo apt-get install build-essential

Page 19: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação em Linux(2):wxWidgets Ubuntu

apt-cache search libwxgtk apt-get install libwxgtk<versão>-dev

libwxgtk<versão>-dbg libwxgtk<versão>-0 <versão> é a maior versão que é retornada pelo

“search”

Page 20: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação em Linux(3):Codeblocks Debian, Ubuntu

apt-cache search libwxgtk apt-cache search libwxgtk<versão>-dev

libwxgtk<versão>-dbg libwxgtk<versão>-0 <versão> é a maior versão que é retornada pelo

“search”

Page 21: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação em Linux(4): lili2 Baixados e instalados a wxWidgets e o Codeblocks... Baixar os códigos fontes da lili2

wget www.lapsi.eletro.ufrgs.br/lili/lili2_codigosFonte.zip Descomprimir o arquivo baixado

unzip lili2_codigosFonte.zip Entrar na pasta lili2_codigosFonte/project

cd lili2_codigosFonte/project Compilar

make Instalar as bibliotecas

sudo make install Desinstalar: sudo make uninstall

Page 22: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Instalação em Linux: visão geral no Ubuntu

Page 23: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de um novo projeto:lili2 + wxWidgets + Codeblocks

Windows ou Linux

Page 24: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de projeto:Codeblocks(1) File -> New -> Project. Selecionar wxWidgets Project

Page 25: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de projeto:Codeblocks(2) Selecionar “Frame Project”, “wxSmith”

Page 26: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de projeto:Codeblocks(3) Indique a pasta de

Instalação da wxWidgets

OU utilize uma variável

global do Codeblocks que tenha tal caminho

Demais opções podem ser deixadas desmarcadas

NÃO será perguntado caso se esteja trabalhando no Linux

Page 27: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de projeto:Codeblocks (4) Project -> Build Options. Adicione nas opções globais do projeto as

bibliotecas liblili2.a e libwxutil.a ATENÇÃO: Primeiro libwxutil.a, segundo liblili2.a, e depois as

bibliotecas da wxWidgets

Page 28: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de projeto:Codeblocks(5) Voilá... Aperte F9 para o projeto ser compilado

Para usar lili2 no código #include <lili2.h> #include <wxutil.h>

Page 29: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de um novo projeto:lili2 + Borland C++ Builder

(apenas Windows)

Page 30: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de um novo projeto(1) File -> New -> Application

Page 31: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de um novo projeto(2) View -> Project

Manager. Clique com o botão

direito sobre o projeto,

Selecione “Add” Adicione os arquivos

lili2.lib e butil.lib, que estão na pasta lib/lili2/<versão>/, abaixo da pasta de instalação do Builder

Page 32: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Criação de um novo projeto(3) Para utilizar a lili2 e a butil no seu código:

#include <lili2.> #include <butil.h>

Page 33: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Documentação Documentação Online

www.lapsi.eletro.ufrgs.br/lili/doxygen/index.htm Contém vários códigos de exemplo de uso das

classes da lili2 Seção “Módulos” contém a organização lógica da

lili2 Documentação PDF

www.lapsi.eletro.ufrgs.br/lili/doc_lili.pdf Passo-a-passo de instalação

Page 34: Lili: LaPSI Image Processing Library Orientador: Altamiro Amadeu Susin Co-Orientador: Alberto Bastos do Canto Escola de Engenharia Departamento de Engenharia

Contato [email protected] Segundas, quartas e sextas, manhãs e

tardes no LaPSI