Professional Documents
Culture Documents
org
Perfil Tcnico:
Alessandro de Oliveira Faria (A.K.A. CABELO) Diretor de pesquisas NETi TECNOLOGIA Atuandonomercadodesoftwaredesde1986 EmbaixadoreopenSUSEMember; MembrodacomunidadeVivaOLinuxdesde2003; Pesquisadoremtecnologiadeprocessamento deimagenseneurotecnologia; Projetista/mantenedormaisde180RPMsno openSUSEBuildService;
MantenedoreDesenvolvedor TwitterMe:Sigaosamigoscomapenasumafoto. droidRastreamento:Rastreabilidadedeobjetopostados. stampDate:ServiodemenuKDEparaestampardataemimagens. libHAIRCAPTURE:BibliotecadevideocapturaemLinux. IPCMSG:Bibliotecadecomunicaointerprocessos. easyPCSC:Bibliotecaparautilizaodecartessma Publicaes: LinuxMagazine10Artigos Internet100artigostcnicos(VOL/Tecnocincia/LinhadeCdigo).
Realidade Aumentada
Definio
RA define-se como a sobreposio no ambiente real de objetos virtuais e tridimensionais gerados por computador, por meio de algum dispositivo tecnolgico de vdeo captura. Isto somente possvel com tcnicas de viso computacional junto a computao grfica.
Conceito
O que realidade Aumentada?
Realidade Aumentada
Definio
Conceito
O que realidade Aumentada?
As principais qualidades da tecnologia realidade aumentada so: * Combinar elementos virtuais com o ambiente real; * Interatividade e processamento em tempo real; * Ser concebida em trs dimenses.
Projetos e aplicabilidade
Mdia no universo paralelo
Projetos e aplicabilidade
Jogo levelhead
Projetos e aplicabilidade
Jogo levelhead
Projetos e aplicabilidade
Jogo Eye Pet da Sony
Projetos e aplicabilidade
Campus Party
Projetos e aplicabilidade
Arquitetura
Projetos e aplicabilidade
Carto virtual
Projetos e aplicabilidade
Rossi Autilizaodestatecnologiaproporcionouao projetodaRossiottulodemaiorcasode RealidadeAumentadadomundo.
Projetos e aplicabilidade
Jogo da velha
Projetos e aplicabilidade
IonRoad
Projetos e aplicabilidade
ATOMIC Ferramenta RAD
ARTOOLKIT
conceito
Existem diversas biblioteca/tecnologia de cdigo aberto e proprietrio para o uso da tecnologia RA (openCV Bazar e outras). Entretanto, uma quantidade significativa de , trabalhosdecdigoabertobaseadoe/ouderivadadabibliotecaARToolKit,umabiblioteca escritaemC,baseadaemsoftwarelivreedesenvolvidapeloDr.HirokazuKato.Atualmente utilizada por pesquisadores do Laboratrio Tecnolgico de Interface Humana, na UniversidadedeWashington,surgiucomoobjetivodefacilitaraconstruodeaplicaes deRealidadeAumentada.
ARTOOLKIT
Instalao
Entre na pasta ARToolKit recm-criada e execute o comando ./configure seguido das respostas (5,n,n,) onde 5 representa a utilizao da biblioteca Gstreamer para acesso aos dispositivos de vdeo captura, n se o sistema operacional estiver trabalhando no modo 64 bits, n novamente para no gerar informaes para debug e y se estiver trabalhando uma placa NVIDIA ou ATI . E finalmente para iniciar a compilao na integra, execute o comando make.
$ cd ARToolKit/ $ ./configure Select a video capture driver. 1: Video4Linux 2: Video4Linux+JPEG Decompression (EyeToy) 3: Digital Video Camcoder through IEEE 1394 (DV Format) 4: Digital Video Camera through IEEE 1394 (VGA NONCOMPRESSED Image Format) 5: GStreamer Media Framework Enter : 2 Color conversion should use x86 assembly (choose 'n' for 64bit systems)? Enter : n Do you want to create debug symbols? (y or n) Enter : n Build gsub libraries with texture rectangle support? (y or n) GL_NV_texture_rectangle is supported on most NVidia graphics cards and on ATi Radeon and better graphics cards Enter : y $ make *** Se estiver utilizando a API-V4L1, Digite o valor numrio 1 na seleo do driver de captura.
ARTOOLKIT
Instalao
$ cd bin $ export ARTOOLKIT_CONFIG="v4l2src device=/dev/video0 use-fixedfps=false ! ffmpegcolorspace ! capsfilter caps=video/x-rawrgb,bpp=24,width=960,height=720 ! identity name=artoolkit ! fakesink" *** Se estiver utilizando a API-V4L1, defina a varivel ambiental ARTOOLKIT_CONFIG com os parmetros abaixo: $ export ARTOOLKIT_CONFIG="-dev=/dev/video0 -palette=YUV420P -width=640 -height=480" $ ./videoTest
ARTOOLKIT
Calibrao da Webcam.
Imprimir calib_cpara.pdf e calib_dist.pdf na escala onde preferencialmente as linhas fiquem separadas com uma distncia exata de 40 mm. A calibrao do dispositivo de captura obtm-se com a extrao do ponto central, distores da lente e a distncia focal da cmera. Os programas utilizados so calib_dist e logo a seguir o calib_cparam.
$ ./calib_dist "v4l2src device=/dev/video0 use-fixed-fps=false ! ffmpegcolorspace ! capsfilter caps=video/x-rawrgb,bpp=24,width=960,height=720 ! identity name=artoolkit ! Fakesink"
ARTOOLKIT
Calibrao da Webcam.
$ ./calib_cparam Input center coordinates: X = 425 : Y = 323 Input distortion ratio: F = 9.500000
ARTOOLKIT
Teste e exemplos
$ ./simpleTest
$ ./exview
ARTOOLKIT
Calibrao da Webcam.
- Inicializao: Inicializa o dispositivo de captura, carrega em memria o modelo impresso e carrega o parmetros de calibrao da cmera. arVideoOpen(), arLoadPatt e arParamLoad() - Captura um quadro. arVideoGetImage() - Detecta as marcas do padro na imagem. arDetectMarker() - Calcula a transformao relativa. arGetTransMat() - Desenha o objeto virtual sob o padro detectado. Recursos openGL - Finaliza o dispositivo de captura. arVideoCapStop(); arVideoClose(); argCleanup();
ARTOOLKIT
Padres
$ ./mk_patt
Motor de renderizao
Qual utilizar
OMotorderenderizaosobibliotecase/oucomponentesquefacilitam a projeo em 3 dimenses de objetos e/ou cenrios criados e editores tridimensionais(Blenderporexemplo). AescolhadoEngine(motor)deRenderizaodeterminarosucessoou fracasso do projeto. Pois no que tange viso computacional, todo processamentodeveserbemdistribudoeprojetado.Poisprojetarobjetos em 3 dimenses na web, em games apresentaes, requer esforo computacional distintos. Por exemplo um motor de renderizao para games pode apresentar uma qualidade de inferior uma vez existindo outras tarefas matemticas a cumprir (efeitos abstratos como fogo e explosesresultantesdetiros).
Motor de renderizao
IrrAR
Motor de renderizao multiplataforma, performtico e de cdigo aberto. Ideal para criao de jogos pois baseado na Irrlicht que alm de suportar arquivos do quake, suportaoutrosdiversosformatos. Este motor permite o processamento de efeitos abstratos como neve, fumaa, fogo, superfcies aqutica e outros. Logo chegaremos a concluso que este motor utiliza grande parte do seu processamento comefeitos,assimtalveznoproporcionando umarenderizaotorealistaemtemporeal.
Motor de renderizao
FLARToolKit
umportedocdigofontedabiblioteca ARToolKitparaoActionScript3.0,feitopelo japonsSaqooshasoblicenalivre.Oprojeto carrega todas as funcionalidade do seu propulsor, detecta o movimento, reconhece uma determinada marca e projeta um cenrio/objeto 3D. Utiliza a renderizao baseada no Papervision3D e movimenta os objetos de acordo com os movimentos reais. Este motor mo apresentar altssima qualidade, pois foi projetado para executar no ambiente WEB (browse), esta tecnologia deve estar preparado para qualquer tipo de equipamentoevelocidadedeconexo.
Motor de renderizao
FLARToolKit
Motor de renderizao
AndAR
umprojetoquetenhoorgulhodepropagar,poisfoi devidoaminhasolicitaoe/oucontatocomoautor que derivou abertura do cdigo fonte. AndAR um projeto tambm baseado na biblioteca ARToolKit. Mesmocriadoparaequipamentosportteis,apresenta um excelente desempenho. O autor projetou com excelncia a abstrao da biblioteca com JNI, assim performandomuitobemosoftware.
Motor de renderizao
osgART
A biblioteca OSGART facilita e muito o desenvolvimento de aplicaes de Realidade Aumentada, ela agrupa as funes de deteco e rastreamento de marcadoresdoARToolKitjuntoaosrecursosdeconstruodemodelosvirtuaisda bibliotecaOpenSceneGraph.AOSGARTapresentaaltaqualidadenarenderizao dosobjetos virtuais suporte a reproduo de vdeo, tcnicas de renderizao de sombras.Umboaescolhaparaaplicaesvoltadaparaapresentaes.
openSceneGraph
Instalao e configurao
http://download.gna.org/underware/sources/openscenegraph-1.2.0.tar.gz $ $ $ $ $ $ $ $ $ $ $ $ $ tar -zxvf ../openscenegraph-1.2.0.tar.gz cd openscenegraph-1.2.0/ cd OpenThreads make sudo make install cd .. cd Producer make sudo make install cd .. cd OpenSceneGraph make COMPILE_EXAMPLES=yes sudo make install
osgART
Instalao e configurao
http://www.artoolworks.com/dist/osgart/release/1.0/osgART-1.0.tar.bz2 $ tar xfzj osgART-x.x.tar.bz2 $ cd osgART/bin $ make -f GNUmakefile ARTOOLKIT_PATH="[path da biblioteca ARToolKit]"
osgART
Instalao e configurao
osgART
Instalao e configurao http://tinyurl.com/osgart
osgART
Testando os exemplos
Agora finalmente veremos o resultado detodoestetrabalho,entrenapastabindo projetorecmcompiladoosgARTeexecute o programa osgARTsimpleNPR com os parmetros[Seuarquivo.ive]tamanhoe posio (X Y Z). Lembre que a varivel ambiental ARTOOLKIT_CONFIG deve existir com as devidas configuraes conformemencionadoanteriormente. Aseguirumexemplodeexecuonalinhadecomando.Bomacreditoqueestetexto facilitaroaprendizadodemuitosquedesejamtrabalharcomrealidadeaumentada.
$ ./osgart_example models/cubo-neti.ive 80 0 0 5
osgART
Testando os exemplos
https://github.com/cedricpinson/osgexport
osgART
Testando os exemplos
Crticas e sugestes
cabelo@opensuse.org
Obrigado!
Colaboraratraiamigos, competiratraiinimigos...
http://cabelovivaolinux.wordpress.com