FREDERICO OLDEMBURGO PERES SCANNER 3D: PROBLEMAS E SOLUÇÕES

Tamanho: px
Começar a partir da página:

Download "FREDERICO OLDEMBURGO PERES SCANNER 3D: PROBLEMAS E SOLUÇÕES"

Transcrição

1 FREDERICO OLDEMBURGO PERES SCANNER 3D: PROBLEMAS E SOLUÇÕES LONDRINA PR 2013

2 FREDERICO OLDEMBURGO PERES SCANNER 3D: PROBLEMAS E SOLUÇÕES Trabalho de Conclusão de Curso apresentado ao curso de Bacharelado em Ciência da Computação da Universidade Estadual de Londrina para obtenção do título de Bacharel em Ciência da Computação. Orientador: Alan Salvany Felinto LONDRINA PR 2013

3 Frederico Oldemburgo Peres Scanner 3D: Problemas e Soluções/ Frederico Oldemburgo Peres. Londrina PR, p. : il. (algumas color.) ; 30 cm. Orientador: Alan Salvany Felinto Universidade Estadual de Londrina, Scanner 3D. 2. Visão Estereoscópica. I. Alan Salvany Felinto. II. Universidade Estadual de Londrina. III. Curso de Ciência da Computação. IV. Scanner 3D: Problemas e Soluções CDU 02:141:005.7

4 FREDERICO OLDEMBURGO PERES SCANNER 3D: PROBLEMAS E SOLUÇÕES Trabalho de Conclusão de Curso apresentado ao curso de Bacharelado em Ciência da Computação da Universidade Estadual de Londrina para obtenção do título de Bacharel em Ciência da Computação. BANCA EXAMINADORA Alan Salvany Felinto Universidade Estadual de Londrina Orientador Londrina PR, 24 de novembrode 2013 LONDRINA PR 2013

5 Este trabalho é dedicado à todos aqueles que ainda irão concluir a graduação.

6 AGRADECIMENTOS Agradecimentos especiais principalmente à minha família e amigos, que sempre me apoiaram. Agradecimentos também à todos os professores com os quais tive a oportunidade única de aprender.

7 O que fazemos na vida, ecoa pela eternidade. (O Gladiador(Filme)

8 PERES, F. O.. Scanner 3D: Problemas e Soluções. 43 p. Trabalho de Conclusão de Curso (Graduação). Bacharelado em Ciência da Computação Universidade Estadual de Londrina, RESUMO A área de imagens estéreo e casamento de imagens está em constante crescimento e, mais especificamente, a escanerização em três dimensões encontra muitas utilidades dentro de diversas áreas, como na paleontologia, onde é usada para geração de réplicas a partir de fósseis, ou na saúde, onde pode ser útil na detecção de patologias ou mensuração de densidade corporal, entre várias outras aplicações nos mais diversos campos. Este trabalho tem como objetivo analisar as técnicas já existentes na área e propor uma solução de baixo custo para o problema de escaneamento em três dimensões, desde a aquisição de imagens limpas, passando pelo casamento das duas imagens, geração da nuvem de pontos no espaço tridimensional, triangularização, para finalmente chegar à construção do modelo de fato. Para comprovar a eficácia dos métodos propostos, um ambiente com câmeras retificadas estereoscopicamente será utilizado. Palavras-chave: Scanner, tridimensional, projeção, visão estéreo.

9 PERES, F. O.. Scanner 3D: Problems and Solutions. 43 p. Final Project (Undergraduation). Bachelor of Science in Computer Science State University of Londrina, ABSTRACT The stereo imaging and matching area is in constant growth and the 3D scanning have utilities in various fields of knowledge, as the paleontology, where it is used in the generation of replicas from fossil, the medicine, where it can be used for detecting pathologies or for measuring corporal density, between lots of other applications in the most different areas. This paper objective is to analyze the existing techniques in the area and to propose a low cost solution to the threedimensional scanning, from the acquisition of a pair of clean images, through the stereo image matching, point cloud generation in the 3D space, triangulation, to finally build the virtual model in fact. To assure the effectiveness of the proposed methods, a stereo rectified camera ambient will be used. Keywords: Scanner, tridimensional, projection, stereo vision.

10 LISTA DE ILUSTRAÇÕES Figura 1 Exemplo de imagens em estéreo Figura 2 Projeção dos pontos da cena para o plano Figura 3 Projeção dos pontos da imagem para a cena Figura 4 Projeção dos pontos da cena em um sistema estereoscópico Figura 5 Projeção dos pontos da cena em um sistema estereoscópico Figura 6 Fluxograma de um scanner de visão passiva Figura 7 Posicionamento das câmeras e do computador Figura 8 Aquisição de imagem Figura 9 Par de imagens estéreo originais Figura 10 Par de mapas de disparidade com ground-truth das imagens da figura 9 34 Figura 11 Mapas de disparidade calculados pelo mesmo algoritmo de correlação, com variação dos parâmetros até obtenção dos resultados desejados.. 35 Figura 12 Mapas de disparidade gerados por dois algoritmos de correlação, partindo das imagens retificadas da figura 9. À esquerda, SG. À direita, SV Figura 13 Nuvens de pontos gerados a partir dos mapas de disparidade da figura 12. Em cima, SG. Em baixo, SV

11 LISTA DE TABELAS

12 LISTA DE ABREVIATURAS E SIGLAS 3D CV AD SD SAD SSD SG SV PTZ SG MI Tridimensional Computer Vision, em português Visão Computacional Absolute Intensity Difference, em português Diferença de Intensidade Absoluta Squared Intensity Difference, em português Diferença de Intensidade Quadrada Sum of Absolute Differences, em português Soma das Diferenças Absolutas Sum of Squared Differences, em português Soma das Diferenças Quadradas algoritmo de correlação Semiglobal algoritmo de correlação Stereo Variational Matching, em português Correlação Estéreo Variacional Pan-Tilt-Zoom Point Cloud Library Mutual Information

13 SUMÁRIO 1 Visão de Máquina Visão Estereoscópica Casamento de Imagens Estereoscópicas Projeção Geometria de Projeção Estado da Arte Custo de Correlação Custo de Agregação Computação da Disparidade Refinamento da Disparidade Ambiente e Harware Tipos de scanner Câmeras Calibração Coeficientes de Distorção Tabuleiro de Xadrez Construção Câmeras Resultados Conclusão Referências

14 13 INTRODUÇÃO A área de imagens em estéreo oferece uma vasta gama de aplicações e áreas de atuação, abrindo muitas possibilidades a quem possui conhecimento para atender à demanda, tanto profissional como acadêmica. A criação de modelos tridimensionais semelhantes à realidade é um problema existente há algum tempo [7] e sua necessidade tem aumentado devido à constante expansão da área de aplicação para outras áreas que não a computação em si, como entretenimento digital, marketing, medicina, entre outras, onde cada vez mais há a necessidade de obtenção de modelos tridimensionais virtuais com elevado grau de semelhança com a realidade, sendo que a precisão pode inclusive ser crítica em alguns casos. Esse tipo de tarefa pode ser facilitada com a utilização de alguns métodos, entre eles o escaneamento em 3D, que possibilita a geração desses modelos virtuais com grande percentual de automação, minimizando o trabalho manual, e consequentemente resultando em maior produtividade dentro das áreas que puderem se beneficiar desse tipo de construção automática. Existem vários métodos e técnicas para execução de tal tarefa, que geralmente se diferenciam pela troca de certas vantagem em virtude de outras, como tempo de execução, precisão e custo de equipamento necessário. O principal método para este fim é a visão computacional estéreo, a qual torna possível escanear objetos do mundo real diretamente para o computador, na forma de modelos virtuais tridimensionais, utilizando para isso duas ou mais câmeras, afim de se obter um sistema de visão estereoscópico. Esse processo exije uma sequência de etapas para que possa se concretizar. Primeiramente, deve-se ter um bom ambiente controlado para aquisição de imagens, com uma boa iluminação e câmeras condizentes com as necessidades. Alguns trabalhos já foram realizados em situações reais, onde não é possível controlar o ambiente, como na robótica e em controle automático de veículos, por exemplo. Nesses casos, essa falha é compensada com a utilização de equipamento de alta qualidade e, consequentemente, custo, uma vez que não se pode perder precisão ou velocidade de processamento, visto que a execução acontece em tempo real [1]. Após a obtenção das imagens são então utilizados algoritmos de casamento de imagens em estéreo para realizar a associação de cada ponto, ou região de pontos, da imagem direita com a imagem esquerda, sendo assim possível calcular a posição desse ponto nas coordenadas mundo [2, 3, 4] e gerar uma nuvem de vértices, que mais tarde se tornará o modelo virtual propriamente dito. Apesar de ser possível encontrar diversos trabalhos nessa área, o mesmo não se

15 SUMÁRIO 14 pode dizer quanto a um sistema de visão computacional com este intuito que seja de fácil acesso e baixo custo, utilizando ferramentas de uso aberto e hardware de baixo custo sem prejudicar a eficiência. Além disso, grande parte dos trabalhos acadêmicos da área consistem em processos ou metodologias relativas a uma das etapas isoladas, principalmente na área de Correspondência Estereoscópica (Stereo Matching). Porém, trabalhos que tratem de todo o processo de escaneamento 3D, abrangendo todas as etapas necessárias, desde a montagem do ambiente até a reprojeção no espaço 3D virtual, são um tanto quanto raros. Muitos dos trabalhos presentes na área dão ênfase aos fins alcançados, não abrangendo os meios utilizados para se chegar à eles, como o desenvolvido por Nárvaez e Ramírez em 2012 [5]. Este trabalho tem como objetivo a construção de um scanner 3D de baixo custo, apresentando de forma clara todo o processo de escaneamento, passando por todas as etapas, com informações sobre os métodos e algoritmos necessários para atingir um resultado aceitável, podendo este ser aprimorado futuramente. O trabalho aqui apresentado se divide em vários capítulos, cada qual abordando um tema necessário à construção do scanner ou ao entendimento do funcionamento de seus módulos. O primeiro capítulo consiste em uma introdução aos conceitos de visão estereoscópica e visão de máquina como um todo. No segundo, aborda-se o processo de correlação, dando ênfase à matemática por trás do processo e o estado da arte da área, que constitui uma das mais comumente abordadas em trabalhos de CV. O terceiro capítulo abrange a parte de montagem de ambiente de aquisição de imagens e hardware a ser utilizado, comparando-se as opções disponíveis e avaliando as melhores opções. No quarto é abordado o processo de calibração, a matemática por trás do mesmo e o algoritmo proposto por Zhang [6] para execução de tal tarefa. O quinto capítulo trata da configuração e implementação utilizada para confecção do scanner proposto, discutindo as escolhas realizadas nessa etapa. Por fim, no último capítulo, são mostrados os resultados obtidos após a execução de cada módulo e o resultado final, ou seja, a nuvem de pontos gerada pelo processo como um todo.

16 15 1 VISÃO DE MÁQUINA Visão de Máquina, do inglês Machine Vision, também conhecido como Computer Vision(CV), é um conceito utilizado para definir sistemas computacionais que captam informações a partir de uma cena real, na forma de imagens bidimensionais, e convertem em dados úteis à realização de tarefas específicas. Segundo Jain et al.[7], Um sistema de visão de máquina recupera informações úteis sobre uma cena a partir de suas projeções bidimensionais. A CV está diretamente ligada a diversos campos do conhecimento, possuindo muitas pesquisas e áreas de aplicação e integração. Exemplos de maior relevância são: Processamento de imagens, geralmente utilizado nas primeiras etapas do sistema de visão de máquina, com o intuito de melhorar de alguma forma as imagens adquiridas para os processos posteriores. Computação gráfica, já foi uma área bem distinta da Visão de Máquina, mas cada vez mais, técnicas de uma das áreas vem sendo utilizada na outra, principalmente com o surgimento de conceitos como Realidade Virtual e Aumentada. [7] Reconhecimento de Padrões e Inteligência Artificial também são áreas extremamente relacionadas, com aplicações mútuas e frequentes integrações com a área de Visão de Máquina. Além disso, diversas outras áreas tem um relacionamento indireto com esta, principalmente através de aplicações, como a Medicina, Agronomia e Engenharia, entre outras. [7] 1.1 Visão Estereoscópica Visão estereoscópica pode ser definida pela observação de uma mesma cena através de dois pontos de vistas diferentes simultâneos, com uma pequena diferença horizontal entre eles. Segundo autores diversos [7, 8, 2], a visão estereoscópica consiste na utilização de duas imagens distintas em conjunto, gerando a noção de profundidade devido à pequena disparidade entre as mesmas, como é possível ver no par de imagens da figura 1. Pode-se notar que as imagens representam a mesma cena, porém com uma pequena diferença de ponto de vista, gerada pela leve disparidade horizontal, e através delas é possível, por meio de cálculos matemáticos e conhecimento sobre geometria de projeção, determinar a distância de um determinado ponto em relação ao observador, ou às câmeras, ou seja, sua profundidade no espaço 3D. O cérebro humano realiza esta tarefa o tempo todo e atualmente não existe método mais eficiente do que o realizado por este, visto que o mesmo realiza a correspondência das imagens de forma mais rápida e precisa do que qualquer algoritmo ou tecnologia co-

17 Capítulo 1. Visão de Máquina 16 Figura 1 Exemplo de imagens em estéreo Fonte: produção própria nhecida [2], pois o faz com precisão ímpar e em tempo real, sem qualquer tipo de controle de ambiente ou pré-processamento. Dito isso, é possível realizar essa tarefa computacionalmente, inspirando-se no modelo biológico do ser-humano. Para isso, utiliza-se câmeras para aquisição de imagens e sobreposição das mesmas através de algoritmos de correlação estereoscópica (Stereo Matching), os quais podem ser classificados segundo diversos critérios pelo método taxonômico de Scharstein e Szeliski [9].

18 17 2 CASAMENTO DE IMAGENS ESTEREOSCÓ- PICAS Calcular a distância entre um ponto na cena e a câmera consiste em uma das tarefas mais importantes da CV. Várias técnicas podem ser usadas para esta tarefa. Em sistemas de visão ativa, a técnica mais difundida é a utilização de sensores que identificam a distância entre estes e o ponto da cena através de métodos como radares e triangulação. Nos sistemas de visão passiva, a técnica que se sobresai é o casamento de imagens em estéreo. Do inglês stereo matching, esta constitue numa parte importante, senão a mais importante, do processo de reconstrução 3D em sistemas de visão passiva. A área já foi e continua sendo uma das áreas da CV com maior investimento da acadêmico, buscando o aumento da eficácia e precisão através de novos métodos ou aprimoramento dos já conhecidos. [9, 7] 2.1 Projeção Mapear uma cena tridimensional para um plano é uma tarefa consideravelmente trivial. Um exemplo disso é uma fotografia, que nos tempos atuais pode ser tirada facilmente por qualquer máquina fotográfica, intrumento de comum uso a qualquer pessoa. Cada ponto visível da cena possui uma, e apenas uma, correspondência no plano da imagem, como podemos ver na Figura 2. Figura 2 Projeção dos pontos da cena para o plano Fonte: produção própria O ponto (a) é projetado no ponto (a ) do plano, assim como o ponto (b) é projetado

19 Capítulo 2. Casamento de Imagens Estereoscópicas 18 no ponto (b ). Todos os pontos da imagem visíveis pelo observador, uma câmera neste caso, são projetados da mesma forma sobre o plano da imagem. Mas o mesmo não se pode dizer do processo inverso, ou seja, remapear uma imagem bidimensional de volta à respectiva cena tridimensional que a originou. Isso acontece pelo simples fato de que qualquer ponto retirado arbitrariamente da imagem pode corresponder a infinitos pontos num espaço tridimensional, como mostrado na figura 3. Figura 3 Projeção dos pontos da imagem para a cena Fonte: produção própria Como é possível ver na figura 3, um ponto arbitrário (a) da imagem possui infinitas correspondências na cena, demonstrados por (a i ), sendo impossível realizar essa tarefa sem informações adicionais. É nesse ponto que entra a visão estereoscópica, que possibilita a visão dos mesmos pontos por um ângulo diferente, possibilitando a correspondência do ponto na imagem com o ponto da cena, como mostrado na figura 4. Considerando A a imagem esquerda e B a imagem direita, cada par de pontos correspondentes (a, b) a A e b B, possui um, e apenas um ponto c correspondente na cena. O plano que passa por a, b, c e pelo centro das lentes de ambas as câmeras é chamado plano epipolar. A intersecção entre o plano epipolar e os planos A e B é chamado de linha epipolar. O par de pontos (a, b) a A e b B, de forma que a e b sejam pontos correspondentes, é chamado de par conjugado. Considerando que as câmeras estejam alinhadas verticalmente, seja x a a posição de a no eixo x e x b a posição de b no eixo x, então x a x b quando as imagens são sobrepostas é chamado disparidade. [7]

20 Capítulo 2. Casamento de Imagens Estereoscópicas 19 Figura 4 Projeção dos pontos da cena em um sistema estereoscópico Fonte: produção própria 2.2 Geometria de Projeção Para entendermos melhor como é possível projetar os pontos das imagens para o espaço tridimensional, podemos utilizar uma representação geométrica do sistema estereoscópico, como pode ser visto na imagem 5. Figura 5 Projeção dos pontos da cena em um sistema estereoscópico Fonte: produção própria O ponto P é projetado nos planos L e R, esquerdo e direito, respectivamente nos

21 Capítulo 2. Casamento de Imagens Estereoscópicas 20 pontos P l e P r. C l e C r representam os centros das lentes das câmeras, L e R os pontos centrais dos planos L e R respectivamente, f a distância focal e x l e x r as distâncias dos pontos P l e P r dos pontos L e R, respectivamente. Se considerarmos que o centro do sistema de coordenadas da cena corresponde com C l, podemos comparar os triângulos semelhantes P MC l e P l LC l, como segue: x z = x l f (2.1) De forma similar, podemos também comparar os triângulos semelhantes do lado direito, P NC r e P r LC r, obtendo: x b z = x r f (2.2) Subtraindo as equações 2.1 e 2.2 e isolando a variável z, obtemos: z = bf (x l x r) (2.3) Podemos então concluir que utilizando-se duas câmeras sem disparidade vertical, separadas horizontalmente por uma distância b conhecida, com distância focal idêntica e conhecida, e conhecendo a disparidade de um ponto, é possível calcular a coordenada z do mesmo, ou seja, sua distância em relação à câmera.[7] Vale lembrar que em sistemas estereoscópicos computacionais, existe sempre um limite na precisão de medidas. Isso se deve ao fato de a medida de distância em uma imagem digital são os pixels, e estes são limitados. Alguns métodos permitem mensuração de distância a nível de subpixel. Devido à esta limitação, uma solução é aumentar a distância b entre as câmeras, aumentando consequentemente a disparidade e a precisão. Porém, o aumento excessivo da distância pode levar a erros de correlação, visto que quanto maior a diferença do ponto de vista das câmeras, menor a similaridade das imagens por elas capturadas. [7] 2.3 Estado da Arte As maiores dificuldades encontradas atualmente são oclusões, limites dos objetos, estruturas finas e texturas de baixa qualidade ou repetitivas, comuns em ambientes não controlados. Problemas mais prátivos recorrem da diferença da captura de uma câmera para outra, principalmente relativos à iluminação. Além disso, certas aplicações necessitam de velocidade de execução, seja devido ao fato de serem em tempo real, imagens muito grandes ou quantidade excessiva de imagens a serem computadas. [10]

22 Capítulo 2. Casamento de Imagens Estereoscópicas 21 Apesar de existirem estudos quanto ao casamento de mais de duas imagens, como os apresentados por Okutomi e Kanade em 1993[11] e suas generalizações feitas posteriormente por Collins em 1996[12] e por Szeliski e Golland em 1998[13], neste trabalho estaremos nos atendo aos algoritmos de apenas dois frames e que geram um mapa de disparidade, pois este será o tipo de método aqui adotado. Scharstein e Szelisk [9] desenvolveram um método taxinômico para classificação de tantos algoritmos de casamento de imagens, entitulado Middlebury Stereo Evaluation System, executando certos testes sobre tais técnicas afim de classificá-las segundo critérios específicos. O método separa qualquer algoritmo de casamento entre quatro etapas, sendo elas: Custo de Correlação, Custo de Agregação, Computação ou Otimização da Disparidade e Refinamento da Disparidade. Cada etapa já foi estudada diversas vezes pelos mais diversos autores, os quais apresentaram novas soluções ou propuseram formas de melhorar as soluções já existentes ao longo do tempo, mas alguns pontos cruciais podem ser aqui citados Custo de Correlação Os métodos de casamento estéreo dependem do Custo de Correlação, ou Matching Cost em inglês para determinar a similaridade de um par de localidades das imagens. Isto é, todo algoritmo de casamento de imagens necessita de uma forma de medir a similaridade entre dois pontos, ou grupo de pontos das imagens, sendo este método de mensuração denominado Custo de Correlação. O método provavelmente mais difundido e utilizado é a diferença de intensidade das cores dos pixels em questão [14]. A diferença pode ser absoluta (AD, de Absolute Difference), quadrada (SD, de Squared Difference ou insensível à amostra. A técnica de Informação Mútua, do inglês Mutual Information(MI) foi utilizada como custo de correlação por Egnal pela primeira vez em 2000 [15], e mais tarde aprimorado por Hirschmuller, em 2008 [10] Custo de Agregação O custo de agregação consiste no processo de agregar o custo de correlação à região no qual o pixel está situado. Geralmente isso é feito simplesmente somando os valores das diferenças de intensidade numa determinada janela de tamanho fixo. Essa etapa tem como objetivo reduzir o erro de correlação devido a pixels semelhantes e corrigir possíveis erros de alinhamento vertical, que podem ocasionar desalinhamento da linha epipolar. Os mais difundidos são chamados de Soma das Diferenças Absolutas (SAD, de Sum of Absolute Differences) e Soma das Diferenças Quadradas (SSD, de Sum of Square Differences), derivados do custos de correlação AD e SD, respectivamente.

23 Capítulo 2. Casamento de Imagens Estereoscópicas Computação da Disparidade Computação da Disparidade consiste na forma como o pixel correspondente é escolhido após o cálculo do custo de correlação e de agragação. Geralmente isso é feito apenas correspondendo o pixel com o melhor nivel de similaridade obtido na primeira etapa. Porém, existem outras técnicas, como a implementação de uma função de energia, geralmente adotada por algoritmos globais, onde não é somente a similaridade individual que importa Refinamento da Disparidade O refinamento da disparidade consiste em alguns pós-processamentos realizados afim de refinar o resultado obtido. Isso inclui interpolação para preenchimento de buracos não correlacionados, remoção de ruído e técnicas para mensuração a nível de sub-pixel, com intuito de aumentar a precisão dos cálculos de projeção.

24 23 3 AMBIENTE E HARWARE Uma escolha importante a se fazer é quanto à parte física do projeto. Não apenas o harware como também a forma como o ambiente será montado. Isso inclui a decisão do tipo de câmera a ser comprado, o modelo e a forma como estes serão posicionados dentro do ambiente construído, possibilitando assim a aquisição de imagens para utilização posterior. Existem vários modelos disponíveis e comumente utilizados na literatura, cada qual com vantagens e desvantagens singulares. Um dos sistemas mais utilizados é o scanner estereoscópico artificial, devido ao seu baixo custo em relação aos outros disponíveis, principalmente devido ao fato de não necessitar de qualquer hardware específico além das câmeras, como é o caso dos scanners de contato ou de visão ativa [16]. Esse modelo de scanner se inspira no sistema biológico da visão do ser humano [2], possuindo duas câmeras posicionadas na mesma direção, alinhadas verticalmente e com uma pequena diferença horizontal entre as mesmas, permitindo-se calcular a distância dos pontos na imagem através da disparidade gerada entre os pontos de ambas as câmeras, assim como é feito pelo cérebro do próprio ser-humano. Scanners com a utilização de câmeras PTZ(Pan-Tilt-Zoom) possuem algumas vantagens. Como as câmeras PTZ possuem a capacidade de adquirir imagens de vários ângulos, possiblita um campo de observação muito mais vasto, sendo muito útil em cenas panorâmicas e reconstrução 3D, e além disso, sua capacidade de zoom e captura de imagens multi-resolução possiblitam aumento significativo da precisão do scanner. Suas desvantagens, porém, são o alto custo e o aumento significativo da complexidade computacional, sendo necessário aumento dos recursos computacionais e maior dificuldade de instalação do sistema como um todo [17]. O configuração utilizada neste trabalho será semelhante à descrita por Narvaez e Ramírez[5]. Este consistirá em um sistema estereoscópico artificial, utilizando um par de webcams USB de baixo custo posicionadas em um suporte manufaturado em papel compacto, com intuito de garantir o alinhamento e disparidade horizontal desejada. As câmeras não terão posicionamento fixo em relação à cena, com o propósito de manter a generalidade e flexibilidade, sendo possível utilizar o sistema desenvolvido em qualquer computador com qualquer par de câmeras. Em contrapartida, é necessária a calibração cada vez que o posicionamento das câmeras em relação à cena for alterado.

25 Capítulo 3. Ambiente e Harware Tipos de scanner Existem diversos tipos de scanners tridimensionais conhecidos, cada qual com suas próprias vantagens e desvantagens sobre o demais. Em linhas gerais, um scanner 3D pode ser dividido em scanners com contato e scanners sem contato. O scanner com contato se caracteriza pelo toque físico do scanner com o objeto, possibilitando uma precisão espetacular, mas um tempo de aquisição proporcionalmente grande, muitas vezes não compensando o tempo gasto pela precisão adquirida, além de ocasionalmente resultar em danificação do objeto dependendo de sua fragilidade, como descrito por Vicedo e Linares em 2008[16]. Os sem contato são exatamente o oposto, onde não há nenhum tipo de contato físico. Esse tipo de scanner ainda pode ser dividido em dois subtipos: os de visão passiva e os de visão ativa. O primeiro exige a utilização de uma fonte de luz concentrada adicional, como um laser, e muitas vezes, hardware especializado, sendo estas suas maiores desvantagens, mas sendo preferíveis certas situações, como para utilização em robôs de resgate, por exemplo [1]. Finalmente, o scanner 3D sem contato baseado em visão passiva consiste na utilização apenas da visão das câmeras para todo o processo de aquisição, o qual inclui a captação das imagens e a identificação dos pontos correlacionados. Este último será o modelo ao qual estaremos adotando neste trabalho. 3.2 Câmeras Entre os possíveis modelos de câmeras, se destacam as PTZ, devido a flexibilidade dita anteriormente, sendo possível adquirir imagens de 360 graus de um objeto sem muito esforço. Além disso o zoom permite aumento significativo na resolução e consequentemente na precisão com os detalhes. Sua maior desvantagem é o maior custo e complexidade para utilização. As câmeras tradicionais também são bastante utilizadas, pois podem ser facilmente adquiridas, em especial webcams, que possibilitam fácil aquisição, instalação e manuseio. Suas desvantagens incluem a falta de mobilidade, sendo necessário rotacionar o objeto para fotografar os diversos ângulos, e a baixa qualidade de imagem, podendo prejudicar o resultado. Câmeras tradicionais de alta resolução representam outra possibilidade, pois a alta qualidade da imagem significa, na maioria dos casos, melhoria igualmente proporcional dos resultados finais. Seus contras incluem o preço significativamente maior e aumento do custo computacional, pois quanto maior as imagens, maior o tempo de processamento dos algoritmos que as utilizam.

26 Capítulo 3. Ambiente e Harware 25 Devido aos objetivos do nosso projeto em construir um modelo de baixo custo, estaremos optando pela segunda opção, webcams mais especificamente.

27 26 4 CALIBRAÇÃO A calibração das câmeras é um processo necessário para que se possa, a partir das imagens captadas, fazer a correspondência entre o sistema de coordenadas do mundo real e o sistema de coordenadas das imagens capturadas pelas câmeras e vice-versa, tarefa para a qual existem diversas técnicas em uma variedade de literaturas, cada qual com suas vantagens e desvantagens [7] [8] [2] [5] [18]. O processo de calibração consiste em adquirir certas matrizes com os parâmetros necessários para realização dos cálculos posteriores, possiblitando a mudança do sistema de coordenadas cartesianas para o espaço tridimensional. Os principais valores a serem adquiridos são os parâmetros intrínsicos, os parâmetros extrínsecos e os coeficientes de distorção. Os parâmetros intrínsecos consistem em uma matriz de valores próprios da câmera em questão, havendo assim, um para cada câmera dentro do sistema de visão estéreo, mas sendo estes provavelmente semelhantes quando as câmeras forem do mesmo modelo. Estes parâmetros são independentes da posição ou cena a ser observada, podendo assim ser calculados uma única vez e reutilizados em todos os procedimentos seguintes envolvendo a câmera em questão. Os parâmetros extrínsecos se referem ao posicionamento da câmera no espaço e a cena em si, sendo, portanto, uma para cada câmera, visto que estas se encontram em posições diferentes. Estes valores não podem ser reaproveitados, pois variam de cena para cena, devendo ser recalculados sempre que houver qualquer mudança no posicionamento das câmeras. Os coeficientes de distorção são também individuais de cada câmera, assim como os parâmetros intrínsecos. Mas estes têm a finalidade de corrigir a distorção natural da câmera, que geralmente consiste em distorção radia e uma leve distorção tangencial. Estes coeficientes permanecem inalterados se houver uma mudança de resolução, ao contrário dos parâmetros intrínsecos, que deveriam ser recalculados nesse caso. Basicamente, o modelo é dado por: sm = A[R t]m (4.1)

28 Capítulo 4. Calibração 27 Ou, na forma extendida: s u v 1 = f x 0 c x 0 f y c y r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 X Y Z 1 (4.2) onde: X, Y, Z são as coordenadas do ponto 3D em coordenadas mundo. u, v são as coordenadas do ponto projetado em pixels. A é a matriz dos parâmetros intrínsecos. c x, c y é o ponto principal, geralmente o centro da imagem. f x, f y são as distâncias focais x e y, expressas em pixels. [R t] é a matriz do parâmetros extrínsecos, usada para transladar o as coordenadas (X, Y, Z) para o sistema de coordenadas fixado na câmera. Essa transformação é equivalente à seguinte, quando z diferente de 0. x y z = R X Y Z + t (4.3) x = x z (4.4) y = y z (4.5) u = f x * x + c x (4.6) v = f y * y + c y (4.7) [19] 4.1 Coeficientes de Distorção Os coeficientes de distorção têm como utilidade corrigir a distorção natural causada pela maioria dos modelos de câmeras. Esta distorção é em sua maioria radial e

29 Capítulo 4. Calibração 28 levemente tangencial. Alguns preferem considerar os coeficientes de distorção como parâmetros intrínsecos, visto que estes também são próprios do modelo da câmera e não se alteram com o reposicionamento da mesma. Porém, é preferível tratá-los como categorias distintas, visto que sua maior diferença é o fato de que os coeficientes de distorção são também independentes da resolução da captura, enquanto os parâmetros intrínsecos devem ser recalculados caso haja mudança de resolução. Com isso em mente, o modelo descrito na equação 3.3 pode ser extendido para: x y z = R X Y Z + t (4.8) x = x z (4.9) y = y z (4.10) x = x l + k 1r 2 + k 2 r 4 + k 3 r 6 l + k 4 r 2 + k 5 r 4 + k 6 r 6 + 2p 1x y + p 2 (r 2 + 2x 2 ) (4.11) y = y l + k 1r 2 + k 2 r 4 + k 3 r 6 l + k 4 r 2 + k 5 r 4 + k 6 r 6 + 2p 2x y + p 1 (r 2 + 2y 2 ) (4.12) onde: r 2 = x 2 + y 2 (4.13) u = f x * x + c x (4.14) v = f y * y + c y (4.15) [19]. sendo k i coeficientes de distorção radial e p i os coeficientes de distorção tangencial 4.2 Tabuleiro de Xadrez Estaremos utilizando a técnica do tabuleiro de xadrez para calibração das câmeras, como feito anteriormente por Narvaez et al. [5] e descrito originalmente por Zhang [6]. Este

30 Capítulo 4. Calibração 29 método consiste na utilização de um padrão de tabuleiro de xadrez, com casas brancas e pretas alternadas e com um número arbitrário de linhas e colunas. Primeiramente, são capturadas várias imagens do padrão visto de vários ângulos. Este processo pode ser feito retirando-se frames específicos de um vídeo previamente gravado, ou utilizando fotos individuais, por exemplo. A partir dessas imagens, identifica-se os pontos de intersecção entre as linhas e colunas, colocando-os em uma matriz e então utliza-se estas matrizes para calcular as matrizes características de cada câmera (parâmetros intrínsecos) e os coeficientes de distorção [6].

31 30 5 CONSTRUÇÃO O ambiente foi projetado para obtenção de imagens com facilidade, sem necessidade de câmeras fixas e pré calibradas. A idéia foi propiciar uma fácil manutenção, transporte e flexibilidade do sistema, visando tornar possível a fácil desmontagem e execução em praticamente qualquer computador, contanto que este esteja conectado a um par de câmeras idênticas alinhadas verticalmente. A implementação foi feita em linguagem C++, utilizando as bibliotecas OpenGL[20] e OpenCV[19]. O opengl é um ambiente de desenvolvimento gráfico criado em Este tem o objetivo de proporcionar máxima performance em aplicações de computação visual [20]. OpenCV é uma biblioteca gráfica desenvolvida originalmente em C++, mas possui interfaces para utilização em C, Python e Java. O opencv foi desenvolvido visando a eficiência computacional e com forte foco em aplicações em tempo real [19]. Vários algoritmos conhecidos foram utilizados no decorrer do processo, visando atingir um resultado favorável. O ambiente como um todo foi inspirado no trabalho desenvolvido por Narváez e Ramirez em 2012 [5]. O processo como um todo segue o fluxograma da figura 6. Figura 6 Fluxograma de um scanner de visão passiva Fonte: produção própria

32 Capítulo 5. Construção Câmeras Foram utilizadas duas webcams de baixo custo da marca Leboss, modelo LB- GZE172. Por conta de um problema de alinhamento devido à haste flexível do modelo, foi necessária a montagem de um suporte para as câmeras. Este foi feito em papel compacto de 0.3mm, de forma a substituir o suporte fornecido originalmente pelo modelo da câmera, mantendo assim o par alinhado verticalmente e ângulo semelhante, algo que seria difícil alcançar com os suportes originais. Mesmo com a utilização de tais suportes, o resultado não foi satisfatório, devido ao alinhamento impreciso. Para comprovar a eficácia do sistema, foram utilizadas imagens originadas do dataset disponibilizado por Scharstein e Szeliski [9], já devidamente retificadas, simulando o sistema de câmeras que seria utilizado. Uma melhor escolha seriam câmeras fixas, com controle digital de foco. Além disso, vale lembrar que quanto maior a resolução, maior a precisão do processo de correlação, visto que o cálculo de disparidade é feito em medida de pixels. Logo, câmeras de alta resolução podem melhorar significativamente o resultado, podendo porém, deixar o processo igualmente mais lento e o custo dos dispositivos proporcionalmente mais elevado. Deve-se posicionar as câmeras seguindo o exemplo da figura 7, onde pode-se ver o sistema pronto para o escaneamento, composto pelas duas câmeras e um computador. Deve-se buscar o alinhamento vertical durante tal construção. Figura 7 Posicionamento das câmeras e do computador Fonte: produção própria Na figura 8, pode-se ver as câmeras alinhadas e prontas para o escaneamento de um objeto específico, posicionado à direita na imagem. É possível realizar o escaneamento de outra forma, apontando as câmeras para uma cena geral, sem o objetivo de escanear somente um objeto, mas a cena como um todo.

33 Capítulo 5. Construção 32 Figura 8 Aquisição de imagem Fonte: produção própria

34 33 6 RESULTADOS O primeiro passo do processo de escaneamento foi a calibração das câmeras utilizadas. Para isso é utilizado o processo desenvolvido por Zhang em 2000[6], que consiste numa forma simples e flexível de executar essa tarefa, necessitando apenas de um padrão de tabuleiro de xadrez impresso, e as duas câmeras fixadas na posição desejada. A partir de um conjunto de capturas desse padrão, nos mais diversos ângulos possíveis, basta identificar os pontos de intersecção entre as linhas do padrão e então o algoritmo faz o trabalho de calcular os parâmetros intrínsecos e extrínsecos, ou seja, a distância focal horizontal e vertical e a matriz de transformação entre as duas câmeras, a qual abrange a translação e rotação, além dos coeficientes de distorção, já discutidos anteriormente. Partindo-se de duas imagens em estéreo, como as apresentadas na figura 9, com as câmeras calibradas e as imagens devidamente remapeadas, removendo a distorção radial e tangencial causadas pelas lentes, o passo seguinte consiste em aplicar o algoritmo de correlação estereoscópica, nesse caso o desenvolvido por Hirschmuller e Szeliski [3], que aqui será chamado de SG (Semiglobal), pois utiliza correlação semi-global e informação mútua e o desenvolvido por Kosovo e Thorm em 2009 [4], o qual utiliza o método chamado de variacional, e portanto, será aqui nomeado de SV (Stereo Variational). Ambos os algoritmos fazem o mesmo trabalho, que consiste em associar cada pixel da imagem esquerda com seu respectivo da imagem direita, efetuando uma busca na epipolar e nas regiões adjacentes a esta. É evidente que o uso de apenas um dos algoritmos citados já seria suficiente para alcançar o resultado desejado, mas foram utilizados ambos para fins de comparação, podendo-se verificar qual dos dois apresenta resultado final mais consistente ou mais eficiente em termos computacionais. O objetivo do algoritmo é gerar, a partir da disparidade de cada ponto, um mapa de disparidade, o qual consiste simplesmente em uma imagem contendo o valor da disparidade horizontal em cada pixel, representado através de escalas de cinza. Quanto mais claro, maior a proximidade e quanto mais escuro, maior a distância. As áreas onde a correlação não pode ser encontrada aparecem em preto no mapa. O mapa de disparidade ótimo, ou ideal, é chamado de ground-truth disparity map e é como mostra a figura 10. Estes mapas ideais são construídos de forma a representarem como seria o mapa de disparidade perfeito para determinada cena, e geralmente são usados com o objetivo de testar a eficiência dos algoritmos de correlação, comparando-se os resultados obtidos com esses mapas ideais e verificando o seu nível de semelhança e, consequentemente, a porcentagem de erro obtido. Existem mapas de disparidade com ground-truth específicos

35 Capítulo 6. Resultados 34 Figura 9 Par de imagens estéreo originais Fonte: imagens retiradas do dataset disponibilizado por Hirschmuller e Scharstein [3] Figura 10 Par de mapas de disparidade com ground-truth das imagens da figura 9 Fonte: imagens retiradas do dataset disponibilizado por Hirschmuller e Scharstein [3] para certas características, como por exemplo para áreas de oclusão e locais de mudança de profundidade(bordas), visando testar a eficiência dos algoritmos em certas situações específicas, mas estes não são aqui abordados. Porém, em um caso real, o mapa de disparidade gerado nunca é o ideal. Buscase aproximar-se o máximo possível do mapa de disparidade ótimo, utilizando algoritmos mais eficazes, capturas de maior qualidade, melhor ambientação, etc. Além disso, considerando um certo algoritmo arbitrário, existem vários parâmetros próprios que podem ser ajustados, buscando aproximar-se ao máximo dos mapas com ground-truth.

36 Capítulo 6. Resultados 35 Figura 11 Mapas de disparidade calculados pelo mesmo algoritmo de correlação, com variação dos parâmetros até obtenção dos resultados desejados Fonte: produção própria, gerados a partir de imagens retiradas do dataset disponibilizado por Hirschmuller e Scharstein [3] Na figura 11, pode-se ver diferentes mapas de disparidade gerados pelo mesmo algoritmo, porém com variação nos parâmetros do mesmo, buscando ajustar tais parâmetros para se aproximar o máximo possível de um resultado aceitável. Existem métodos com o objetivo de encontrar os melhores parâmetros de certos algoritmos, dado um par de imagens estereoscópicas retificadas, utilizando as mais diversas técnicas, como redes neurais e programação dinâmica, mas tais métodos não fazem parte do escopo deste trabalho. Na figura 12 pode-se ver a diferença dos mapas de disparidade gerados por dois algoritmos de correlação distintos, SG e SV. Os resultados são similares, mas apresen-

37 Capítulo 6. Resultados 36 tam algumas diferenças essenciais. O primeiro apresenta menor quantidade de ruído, mas maior quantidade de erro, devido à sua natureza Semiglobal, que suaviza as diferenças de profundidade [3]. O segundo apresenta maior precisão no geral, mas maior quantidade de ruído. Este também tem maior velocidade de processamento, devido ao seu desenvolvimento original ter tido como foco principal as aplicações de tempo real [4]. Figura 12 Mapas de disparidade gerados por dois algoritmos de correlação, partindo das imagens retificadas da figura 9. À esquerda, SG. À direita, SV Fonte: produção própria, gerados a partir de imagens retiradas do dataset disponibilizado por Hirschmuller e Scharstein [3] A partir do mapa de disparidade e dos parâmetros obtidos no processo de calibração, é possível calcular as coordenadas (x, y, z) de cada ponto, considerando um sistema de coordenadas centrado na câmera da esquerda. Este processo não utiliza nenhum algoritmo específico, apenas conhecimentos sobre geometria de projeção e cálculos matemáticos, como mostrados anteriormente. Basta saber a posição x e y de cada ponto em cada uma das imagens, a distância focal das câmeras e a matriz de transformação das mesmas. O que resulta deste processo é uma nuvem de pontos, ou seja, um conjunto de pontos com coordenadas (x, y, z) representando sua posição na cena. Como o processo calcula a profundidade em cada pixel, a nuvem resultante e extremamente densa, com quantidade de pontos atingindo facilmente a casa dos milhares, podendo chegar a milhões. É possível diminuir drasticamente a quantidade de pontos afim de reduzir o tempo de processamento e espaço de alocação no manuseio dos mesmos, bastando para isso salvar apenas um ponto a cada n disponíveis, reduzindo a quantidade de pontos na nuvem para 1% do total, por exemplo, para n igual a 10. Apesar do processo de escaneamento tridimensional estar já concluído neste ponto, pode-se ainda efetuar outras atividades afim de refinar os resultados obtidos. A aquisição da cor de cada ponto, por exemplo, pode ser facilmente adquirida à partir das imagens coloridas originais, tornando a nuvem de pontos mais verossímil e, consequentemente, a

38 Capítulo 6. Resultados 37 Figura 13 Nuvens de pontos gerados a partir dos mapas de disparidade da figura 12. Em cima, SG. Em baixo, SV Fonte: produção própria, gerados a partir de imagens retiradas do dataset disponibilizado por Hirschmuller e Scharstein [3] identificação dos objetos mais fácil, como pode ser visto na figura 13. Outro refinamento interessante é a triangularização dos vértices presentes na nuvem, ou seja, a criação de arestas conectando os vértices e formando faces, ou polígonos, geralmente triângulos, formando assim um modelo virtual tridimensional propriamente dito, que pode ser facilmente manipulado em programas de edição 3D, se salvos devidamente em formato adequado, como por exemplo o Wavefront object file, com extensão.obj, que consiste numa sequencia de vértices com informações sobre suas coordenadas, seguidos pelas faces e os números dos vértices que as compõem.

39 Capítulo 6. Resultados 38 Todas essas funcionalidade relacionadas a nuvens de pontos podem ser facilmente implementadas com o uso da biblioteca especializada em nuvens de pontos Point Cloud Library (PCL), provavelmente a mais difundida nessa categoria. Com suporte para C++, pode ser facilmente adicionada ao projeto, afim de se gerar nuvens de pontos mais consistentes e executar os processos anteriormente citados facilmente. Além disso, ela ainda possui uma série de outras funções úteis, dependendo do que se deseja realizar, como a possibilidade de segmentação da nuvem de pontos, isolando certos objetos, identificação de pontos característicos ou junção de diversas nuvens de pontos, correlacionando os pontos destas para formação de uma única e maior nuvem, útil para fusão de nuvens geradas a partir de diversos ângulos de uma mesma cena, por exemplo [21].

40 39 7 CONCLUSÃO Pode-se concluir que o processo de construção de um scanner 3D não representa grandes dificuldades para aquele que o deseja. Neste trabalho, foi apresentado uma forma simples e significativamente fácil de efetuar o processo completo de montagem de um sistema estereoscópico artificial, abordando em detalhes cada uma das etapas a serem executadas, os maiores problemas encontrados em cada uma delas, e as soluções para tais problemas, alcançando assim o objetivo primário deste trabalho. O primeiro problema encontrado no processo de escaneamento é a própria aquisição das imagens. Essa etapa consiste uma das mais importantes, pois quando não é bem executada, resulta no malfuncionamento de todo o método. A solução para a aquisição consiste na utilização de um ambiente bem estruturado, com uma boa iluminação e disposição correta das câmeras, devidamente alinhadas horizontalmente, possibilitando a identificação correta da epipolar. Considerando duas câmeras retificadas e um ambiente estruturado, parte-se para a etapa de calibração, onde o problema de aquisição dos parâmetros das mesmas pode ser facilmente solucionado com a utilização do algoritmo proposto por Zhang em 2000 [6], o qual consiste em uma técnica simples e flexível para calibração, possibilitando a obtenção dos parâmetros intrínsecos, extrínsecos e dos coeficientes de distorção. Para o processo de correlação, existem vários algoritmos disponíveis para solução do problema, e a escolha do ideal pode ser feito levando em conta os fins desejados e a taxonomia proposta por Scharstein em 2002 [9]. Vale lembrar que grande parte dos algoritmos classificados por este método não são de uso livre, não sendo interessantes, portanto, neste trabalho, onde o objetivo é a confecção de um scanner de baixo custo. Pode-se ainda concluir que dos dois algoritmos comparados, o Semiglobal [3] e o variacional [4], o segundo tem execução mais rápida, enquanto o segundo tem menor quantidade de ruído devido à suavização por ele realizada. A etapa de reprojeção consiste em um problema já tratado há tempos pela computação e física, mais especificamente com o uso de conhecimentos sobre geometria de projeção. Conhecendo-se os parâmetros das câmeras e a profundidade dos pontos obtida pelo mapa de disparidade, a reprojeção dos pontos e criação da nuvem de vértices são conclusões triviais. O objetivo de confecção de um scanner 3D de baixo custo foi também perfeitamente atingido, visto que considerando a disponibilidade de um computador, o único gasto real é o que se tem com a compra das câmeras a serem utilizadas, que também foram de baixo custo. Os softwares e bibliotecas utilizados foram todos de uso livre, contribuindo

41 Capítulo 7. Conclusão 40 de maneira geral para esta proposta de baixo custo. Os resultados obtidos não foram as melhores possíveis, mas completamente aceitáveis dentro do escopo do trabalho e considerando o objetivo proposto pelo mesmo inicialmente. Muitas melhorias poderiam ser adicionadas com a disponibilidade de mais tempo e ainda podem ser agregadas em uma possível continuação deste trabalho. As câmeras de haste flexível tornam extremamente trabalhosa a aquisição de boas imagens para correlação, visto que dificultam muito o alinhamento vertical e angular das mesmas. Sendo assim, o uso de câmeras fixas e de prefferência com ajuste de foco digital é bastante recomendado, ou ainda a utlização de um equipamento especificamente para uso em sistemas estereoscópicos, os quais já são fornecidos com ambas as câmeras acopladas, possibilitando maior facilidade de transporte e montagem do sistema, visto que os parâmetros referentes as câmeras e á sua rotação e translação de uma com relação a outra são fixos. O uso de câmeras de baixa qualidade é completamente possível, mas evidentemente, câmeras de alta resolução apresentam resultados ainda melhores, sendo estas altamente recomentadas quando houver disponibilidade de recurso financeiro. Além disso, o projeto como um todo é dividido em módulos individuais que se conectam apenas através de suas entradas e saídas. Sendo assim, todos os módulos do sistema aqui construído têm funcionamento independente, podendo ser utilizados individualmente sem maiores problemas, apenas atentando-se para suas entradas e saídas. Logo, qualquer avanço acadêmico em uma das etapas possibilita a atualização de um dos módulos do sistema, com necessidade mínima ou nula de alteração dos outros módulos. No que se refere à calibração das câmeras e correlação estereoscópica, por exemplo, existem vários algoritmos disponíveis, sendo assim uma alternativa a utilização de outros métodos além dos aqui citados, podendo ser testados como substitutos, visando melhorar de alguma forma o resultado final. O processo de reprojeção foi bem sucedido, gerando um nuvem de pontos razoavelmente semelhante à imagem retratada. Porém, o processo poderia ser refinado utilizandose bibliotecas específicas de tratamento de nuvens de pontos, as quais também são recomendadas, como por exemplo a Point Cloud Library (PCL). Feita para C++, poderia ser adicionada ao projeto, afim de se gerar nuvens de pontos mais consistentes e agregar uma grande quantidade de funcionalidades, como a triangulação de vértices, texturização do modelo através de coloração de vértices e gradientes e ainda a possibilidade de segmentação da nuvem de pontos, isolando certos objetos ou junção de diversas nuvens de pontos, correlacionando os pontos destas para formação de uma única e maior nuvem [21]. Outra proposta ainda pode ser a utlilização de capturas em mais de dois ângulos da mesma cena, seja através do uso de três ou mais câmeras ou ainda da sucessão de

FREDERICO OLDEMBURGO PERES SCANNER 3D: PROBLEMAS E SOLUÇÕES

FREDERICO OLDEMBURGO PERES SCANNER 3D: PROBLEMAS E SOLUÇÕES FREDERICO OLDEMBURGO PERES SCANNER 3D: PROBLEMAS E SOLUÇÕES LONDRINA PR 2013 FREDERICO OLDEMBURGO PERES SCANNER 3D: PROBLEMAS E SOLUÇÕES Trabalho de Conclusão de Curso apresentado ao curso de Bacharelado

Leia mais

ESTEREOSCOPIA INTRODUÇÃO. Conversão de um par de imagens (a)-(b) em um mapa de profundidade (c)

ESTEREOSCOPIA INTRODUÇÃO. Conversão de um par de imagens (a)-(b) em um mapa de profundidade (c) ESTEREOSCOPIA INTRODUÇÃO Visão estereoscópica se refere à habilidade de inferir informações da estrutura 3-D e de distâncias da cena de duas ou mais imagens tomadas de posições diferentes. Conversão de

Leia mais

4 Segmentação. 4.1. Algoritmo proposto

4 Segmentação. 4.1. Algoritmo proposto 4 Segmentação Este capítulo apresenta primeiramente o algoritmo proposto para a segmentação do áudio em detalhes. Em seguida, são analisadas as inovações apresentadas. É importante mencionar que as mudanças

Leia mais

IW10. Rev.: 02. Especificações Técnicas

IW10. Rev.: 02. Especificações Técnicas IW10 Rev.: 02 Especificações Técnicas Sumário 1. INTRODUÇÃO... 1 2. COMPOSIÇÃO DO IW10... 2 2.1 Placa Principal... 2 2.2 Módulos de Sensores... 5 3. APLICAÇÕES... 6 3.1 Monitoramento Local... 7 3.2 Monitoramento

Leia mais

4 Experimentos Computacionais

4 Experimentos Computacionais 33 4 Experimentos Computacionais O programa desenvolvido neste trabalho foi todo implementado na linguagem de programação C/C++. Dentre as bibliotecas utilizadas, destacamos: o OpenCV [23], para processamento

Leia mais

Escolha da Objectiva. Quais as principais características das objectivas que servem de base para a escolha das suas lentes?

Escolha da Objectiva. Quais as principais características das objectivas que servem de base para a escolha das suas lentes? Escolha da Objectiva Quais as principais características das objectivas que servem de base para a escolha das suas lentes? As lentes, também conhecidas como objectivas, são a parte mais importante do seu

Leia mais

Cálculo de volume de objetos utilizando câmeras RGB-D

Cálculo de volume de objetos utilizando câmeras RGB-D Cálculo de volume de objetos utilizando câmeras RGB-D Servílio Souza de ASSIS 1,3,4 ; Izadora Aparecida RAMOS 1,3,4 ; Bruno Alberto Soares OLIVEIRA 1,3 ; Marlon MARCON 2,3 1 Estudante de Engenharia de

Leia mais

7.Conclusão e Trabalhos Futuros

7.Conclusão e Trabalhos Futuros 7.Conclusão e Trabalhos Futuros 158 7.Conclusão e Trabalhos Futuros 7.1 Conclusões Finais Neste trabalho, foram apresentados novos métodos para aceleração, otimização e gerenciamento do processo de renderização

Leia mais

ATENÇÃO: * Arquivos com tamanho superior a 500 KB NÃO SERÃO ACEITOS * SOMENTE serão aceitos documentos do formato: PDF

ATENÇÃO: * Arquivos com tamanho superior a 500 KB NÃO SERÃO ACEITOS * SOMENTE serão aceitos documentos do formato: PDF TUTORIAL DE DIGITALIZAÇÃO DIRIGIDO AO USO DO PROCESSO ELETRÔNICO Adaptado do tutorial elaborado pelo colega MAICON FALCÃO, operador de computador da subseção judiciária de Rio Grande. Introdução Este tutorial

Leia mais

Departamento de Matemática - UEL - 2010. Ulysses Sodré. http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

Departamento de Matemática - UEL - 2010. Ulysses Sodré. http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010. Matemática Essencial Extremos de funções reais Departamento de Matemática - UEL - 2010 Conteúdo Ulysses Sodré http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

Leia mais

Visão Computacional e Realidade Aumentada. Trabalho 3 Reconstrução 3D. Pedro Sampaio Vieira. Prof. Marcelo Gattass

Visão Computacional e Realidade Aumentada. Trabalho 3 Reconstrução 3D. Pedro Sampaio Vieira. Prof. Marcelo Gattass Visão Computacional e Realidade Aumentada Trabalho 3 Reconstrução 3D Pedro Sampaio Vieira Prof. Marcelo Gattass 1 Introdução Reconstrução tridimensional é um assunto muito estudado na área de visão computacional.

Leia mais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais Notas da Aula 17 - Fundamentos de Sistemas Operacionais 1. Gerenciamento de Memória: Introdução O gerenciamento de memória é provavelmente a tarefa mais complexa de um sistema operacional multiprogramado.

Leia mais

Funções de Posicionamento para Controle de Eixos

Funções de Posicionamento para Controle de Eixos Funções de Posicionamento para Controle de Eixos Resumo Atualmente muitos Controladores Programáveis (CPs) classificados como de pequeno porte possuem, integrados em um único invólucro, uma densidade significativa

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

6. Geometria, Primitivas e Transformações 3D

6. Geometria, Primitivas e Transformações 3D 6. Geometria, Primitivas e Transformações 3D Até agora estudamos e implementamos um conjunto de ferramentas básicas que nos permitem modelar, ou representar objetos bi-dimensionais em um sistema também

Leia mais

VCA Treinamento em Algoritmo

VCA Treinamento em Algoritmo Conteúdo VCA Treinamento em Algoritmo VCA Treinamento em Algoritmo Conteúdo Algoritmos Rastreador (tracker) Monitoramento Objeto Abandonado/Removido Pessoas Calibração Classificação Linha de contagem Auto

Leia mais

Universidade do Estado de Santa Catarina Departamento de Engenharia Civil TOPOGRAFIA II. Profa. Adriana Goulart dos Santos

Universidade do Estado de Santa Catarina Departamento de Engenharia Civil TOPOGRAFIA II. Profa. Adriana Goulart dos Santos Universidade do Estado de Santa Catarina Departamento de Engenharia Civil TOPOGRAFIA II Profa. Adriana Goulart dos Santos Aerofotogrametria Fotogrametria é a ciência aplicada que se propõe a registrar,

Leia mais

Disciplina: Programas de Edição de Textos Professora: Érica Barcelos

Disciplina: Programas de Edição de Textos Professora: Érica Barcelos Disciplina: Programas de Edição de Textos Professora: Érica Barcelos CAPÍTULO 4 4. RECURSOS PARA ILUSTRAÇÕES Uma característica que difere os processadores de textos dos editores é a possibilidade de gerar

Leia mais

Instalações Máquinas Equipamentos Pessoal de produção

Instalações Máquinas Equipamentos Pessoal de produção Fascículo 6 Arranjo físico e fluxo O arranjo físico (em inglês layout) de uma operação produtiva preocupa-se com o posicionamento dos recursos de transformação. Isto é, definir onde colocar: Instalações

Leia mais

Gestão do Conhecimento A Chave para o Sucesso Empresarial. José Renato Sátiro Santiago Jr.

Gestão do Conhecimento A Chave para o Sucesso Empresarial. José Renato Sátiro Santiago Jr. A Chave para o Sucesso Empresarial José Renato Sátiro Santiago Jr. Capítulo 1 O Novo Cenário Corporativo O cenário organizacional, sem dúvida alguma, sofreu muitas alterações nos últimos anos. Estas mudanças

Leia mais

2. Representação Numérica

2. Representação Numérica 2. Representação Numérica 2.1 Introdução A fim se realizarmos de maneira prática qualquer operação com números, nós precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos

Leia mais

Modelo Cascata ou Clássico

Modelo Cascata ou Clássico Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação

Leia mais

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior MRP II Introdução A lógica de cálculo das necessidades é conhecida há muito tempo Porém só pode ser utilizada na prática em situações mais complexas a partir dos anos 60 A partir de meados da década de

Leia mais

Processamento de Imagem. Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com

Processamento de Imagem. Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com Processamento de Imagem Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com Visão Computacional Não existe um consenso entre os autores sobre o correto escopo do processamento de imagens, a

Leia mais

Sumário. 1. Instalando a Chave de Proteção 3. 2. Novas características da versão 1.3.8 3. 3. Instalando o PhotoFacil Álbum 4

Sumário. 1. Instalando a Chave de Proteção 3. 2. Novas características da versão 1.3.8 3. 3. Instalando o PhotoFacil Álbum 4 1 Sumário 1. Instalando a Chave de Proteção 3 2. Novas características da versão 1.3.8 3 3. Instalando o PhotoFacil Álbum 4 4. Executando o PhotoFacil Álbum 9 3.1. Verificação da Chave 9 3.1.1. Erro 0001-7

Leia mais

CONTROLE DE QUALIDADE e VALIDAÇÃO DE PRODUTO CARTOGRÁFICO

CONTROLE DE QUALIDADE e VALIDAÇÃO DE PRODUTO CARTOGRÁFICO CONTROLE DE QUALIDADE e VALIDAÇÃO DE PRODUTO CARTOGRÁFICO Editar dados em vários formatos e armazenar estas informações em diferentes sistemas é provavelmente uma das atividades mais comuns para os profissionais

Leia mais

ADMINISTRAÇÃO I. Família Pai, mãe, filhos. Criar condições para a perpetuação da espécie

ADMINISTRAÇÃO I. Família Pai, mãe, filhos. Criar condições para a perpetuação da espécie 1 INTRODUÇÃO 1.1 ORGANIZAÇÃO E PROCESSOS A administração está diretamente ligada às organizações e aos processos existentes nas mesmas. Portanto, para a melhor compreensão da Administração e sua importância

Leia mais

LENTES E ESPELHOS. O tipo e a posição da imagem de um objeto, formada por um espelho esférico de pequena abertura, é determinada pela equação

LENTES E ESPELHOS. O tipo e a posição da imagem de um objeto, formada por um espelho esférico de pequena abertura, é determinada pela equação LENTES E ESPELHOS INTRODUÇÃO A luz é uma onda eletromagnética e interage com a matéria por meio de seus campos elétrico e magnético. Nessa interação, podem ocorrer alterações na velocidade, na direção

Leia mais

ARTIGO. O que tem o melhor zoom: 18x ou 36x?

ARTIGO. O que tem o melhor zoom: 18x ou 36x? ARTIGO O que tem o melhor zoom: 18x ou 36x? O que tem o melhor zoom: 18x ou 36x? No mundo das câmeras de segurança, o zoom 18x pode ser igual a 36x. Mais especificamente, uma câmera de segurança de alta

Leia mais

EXPERIMENTO N o 6 LENTES CONVERGENTES INTRODUÇÃO

EXPERIMENTO N o 6 LENTES CONVERGENTES INTRODUÇÃO EXPERIMENTO N o 6 LENTES CONVERGENTES INTRODUÇÃO Ao incidir em uma lente convergente, um feixe paralelo de luz, depois de passar pela lente, é concentrado em um ponto denominado foco (representado por

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Cruzeiro SP 2008 FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Projeto de trabalho de formatura como requisito

Leia mais

3 Arquitetura do Sistema

3 Arquitetura do Sistema 3 Arquitetura do Sistema Este capítulo irá descrever a arquitetura geral do sistema, justificando as decisões de implementação tomadas. Na primeira seção iremos considerar um conjunto de nós interagindo

Leia mais

Utilização do SOLVER do EXCEL

Utilização do SOLVER do EXCEL Utilização do SOLVER do EXCEL 1 Utilização do SOLVER do EXCEL José Fernando Oliveira DEEC FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO MAIO 1998 Para ilustrar a utilização do Solver na resolução de

Leia mais

Fotografia Digital Obtenção da Imagem e Impressão

Fotografia Digital Obtenção da Imagem e Impressão Fotografia Digital Obtenção da Imagem e Impressão 1 Diferenças entre o CCD e o Filme: O filme como já vimos, é uma película de poliéster, coberta em um dos lados por uma gelatina de origem animal com partículas

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

Leia mais

Profissionais de Alta Performance

Profissionais de Alta Performance Profissionais de Alta Performance As transformações pelas quais o mundo passa exigem novos posicionamentos em todas as áreas e em especial na educação. A transferência pura simples de dados ou informações

Leia mais

3 Classificação. 3.1. Resumo do algoritmo proposto

3 Classificação. 3.1. Resumo do algoritmo proposto 3 Classificação Este capítulo apresenta primeiramente o algoritmo proposto para a classificação de áudio codificado em MPEG-1 Layer 2 em detalhes. Em seguida, são analisadas as inovações apresentadas.

Leia mais

Primeiras Informações

Primeiras Informações Primeiras Informações Para que um trabalho escolar fique com melhor qualidade é importante registrálo, não apenas para ser apresentado aos pais, mas principalmente como arquivo. Guardar o registro de trabalhos

Leia mais

EAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS

EAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS EAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS Relatório Nº 03/2013 Porto Alegre, 22 de Agosto de 2013. ANÁLISE DE SOLUÇÕES: # RAID 1: O que é: RAID-1 é o nível de RAID que implementa o espelhamento

Leia mais

ATIVIDADES PRÁTICAS SUPERVISIONADAS

ATIVIDADES PRÁTICAS SUPERVISIONADAS ATIVIDADES PRÁTICAS SUPERVISIONADAS 6ª Série Teoria da Computação Ciência da Computação A atividade prática supervisionada (ATPS) é um método de ensinoaprendizagem desenvolvido por meio de um conjunto

Leia mais

O que é RAID? Tipos de RAID:

O que é RAID? Tipos de RAID: O que é RAID? RAID é a sigla para Redundant Array of Independent Disks. É um conjunto de HD's que funcionam como se fosse um só, isso quer dizer que permite uma tolerância alta contra falhas, pois se um

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling DIMENSIONANDO PROJETOS DE WEB-ENABLING Uma aplicação da Análise de Pontos de Função Dimensionando projetos de Web- Enabling Índice INTRODUÇÃO...3 FRONTEIRA DA APLICAÇÃO E TIPO DE CONTAGEM...3 ESCOPO DA

Leia mais

Aula 3 - Registro de Imagem

Aula 3 - Registro de Imagem 1. Registro de Imagens Aula 3 - Registro de Imagem Registro é uma transformação geométrica que relaciona as coordenadas da imagem (linha e coluna) com as coordenadas geográficas (latitude e longitude)

Leia mais

Tópico 11. Aula Teórica/Prática: O Método dos Mínimos Quadrados e Linearização de Funções

Tópico 11. Aula Teórica/Prática: O Método dos Mínimos Quadrados e Linearização de Funções Tópico 11. Aula Teórica/Prática: O Método dos Mínimos Quadrados e Linearização de Funções 1. INTRODUÇÃO Ao se obter uma sucessão de pontos experimentais que representados em um gráfico apresentam comportamento

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

APLICATIVOS GRÁFICOS (AULA 3)

APLICATIVOS GRÁFICOS (AULA 3) Prof. Breno Leonardo G. de M. Araújo brenod123@gmail.com http://blog.brenoleonardo.com.br APLICATIVOS GRÁFICOS (AULA 3) Introdução A possibilidade de utilizarmos imagens, gráficos, desenhos e textos artísticos

Leia mais

SCANNER DE TRIANGULAÇÃO LASER PARA PROTOTIPAGEM 3D

SCANNER DE TRIANGULAÇÃO LASER PARA PROTOTIPAGEM 3D SCANNER DE TRIANGULAÇÃO LASER PARA PROTOTIPAGEM 3D Autores: Evandro Francisco WEISS, Felipe Augusto SCHIQUETTI, Eduardo Bidese PUHL Identificação autores: Aluno da Ciência da Computação, Bolsista IFC Rio

Leia mais

SEGMENTAÇÃO DE IMAGENS EM PLACAS AUTOMOTIVAS

SEGMENTAÇÃO DE IMAGENS EM PLACAS AUTOMOTIVAS SEGMENTAÇÃO DE IMAGENS EM PLACAS AUTOMOTIVAS André Zuconelli 1 ; Manassés Ribeiro 2 1. Aluno do Curso Técnico em Informática, turma 2010, Instituto Federal Catarinense, Câmpus Videira, andre_zuconelli@hotmail.com

Leia mais

Forneça a próxima onda de inovações empresariais com o Open Network Environment

Forneça a próxima onda de inovações empresariais com o Open Network Environment Visão geral da solução Forneça a próxima onda de inovações empresariais com o Open Network Environment Visão geral À medida que tecnologias como nuvem, mobilidade, mídias sociais e vídeo assumem papéis

Leia mais

Introdução ao Modelos de Duas Camadas Cliente Servidor

Introdução ao Modelos de Duas Camadas Cliente Servidor Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos

Leia mais

5 Extraindo listas de produtos em sites de comércio eletrônico

5 Extraindo listas de produtos em sites de comércio eletrônico 5 Extraindo listas de produtos em sites de comércio eletrônico Existem diversos trabalhos direcionadas à detecção de listas e tabelas na literatura como (Liu et. al., 2003, Tengli et. al., 2004, Krüpl

Leia mais

4 Avaliação Econômica

4 Avaliação Econômica 4 Avaliação Econômica Este capítulo tem o objetivo de descrever a segunda etapa da metodologia, correspondente a avaliação econômica das entidades de reservas. A avaliação econômica é realizada a partir

Leia mais

AVALIAÇÃO À DISTÂNCIA 1 GABARITO

AVALIAÇÃO À DISTÂNCIA 1 GABARITO Fundação CECIERJ - Vice Presidência de Educação Superior a Distância Curso de Tecnologia em Sistemas de Computação UFF Disciplina INTRODUÇÃO À INFORMÁTICA... AD1 2 semestre de 2008. Data... AVALIAÇÃO À

Leia mais

Protocolo em Rampa Manual de Referência Rápida

Protocolo em Rampa Manual de Referência Rápida Protocolo em Rampa Manual de Referência Rápida 1 O que é o Protocolo em Rampa O protocolo em rampa é um protocolo para testes de esforço que não possui estágios. Nele o incremento da carga se dá de maneira

Leia mais

Top Guia In.Fra: Perguntas para fazer ao seu fornecedor de CFTV

Top Guia In.Fra: Perguntas para fazer ao seu fornecedor de CFTV Top Guia In.Fra: Perguntas para fazer ao seu fornecedor de CFTV 1ª Edição (v1.4) 1 Um projeto de segurança bem feito Até pouco tempo atrás o mercado de CFTV era dividido entre fabricantes de alto custo

Leia mais

Software livre: solução ou problema? Autores: Prates, C. F., Souza, C. H. F. B., Castro, C. V., Vilela, D. R. G., Almeida, N. M

Software livre: solução ou problema? Autores: Prates, C. F., Souza, C. H. F. B., Castro, C. V., Vilela, D. R. G., Almeida, N. M Software livre: solução ou problema? Autores: Prates, C. F., Souza, C. H. F. B., Castro, C. V., Vilela, D. R. G., Almeida, N. M Resumo Quando o tema da discussão são softwares livres, é possível perceber

Leia mais

CorelDRAW 11 1. UM PROGRAMA DE DESIGN

CorelDRAW 11 1. UM PROGRAMA DE DESIGN CorelDRAW 11 1. UM PROGRAMA DE DESIGN Com o Corel você vai trabalhar com um dos aplicativos mais usados no campo do design e da auto-edição, já que permite operar com dois tipos de gráficos (vetoriais

Leia mais

6 Conclusões e Trabalhos futuros 6.1. Conclusões

6 Conclusões e Trabalhos futuros 6.1. Conclusões 6 Conclusões e Trabalhos futuros 6.1. Conclusões Neste trabalho estudou-se o comportamento do sistema que foi denominado pendulo planar com a adição de uma roda de reação na haste do pendulo composta de

Leia mais

Processos Técnicos - Aulas 4 e 5

Processos Técnicos - Aulas 4 e 5 Processos Técnicos - Aulas 4 e 5 Trabalho / PEM Tema: Frameworks Públicos Grupo: equipe do TCC Entrega: versão digital, 1ª semana de Abril (de 31/03 a 04/04), no e-mail do professor (rodrigues.yuri@yahoo.com.br)

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO AGOSTO DE 2013 SUMÁRIO STI/UFF - Sistema de Gerenciamento de Projetos do PDI SUMÁRIO... 2 1 Introdução... 3 1.1 O que é e qual a finalidade

Leia mais

Esclarecimento: Não, a operação de matching ocorre no lado cliente da solução, de forma distribuída.

Esclarecimento: Não, a operação de matching ocorre no lado cliente da solução, de forma distribuída. 1 Dúvida: - Em relação ao item 1.2 da Seção 2 - Requisitos funcionais, entendemos que a solução proposta poderá funcionar em uma arquitetura Web e que na parte cliente estará apenas o componente de captura

Leia mais

O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO

O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO Prof. Leugim Corteze Romio Universidade Regional Integrada URI Campus Santiago-RS leugimcr@urisantiago.br Prof.

Leia mais

SERVIÇO DE ANÁLISE DE REDES DE TELECOMUNICAÇÕES APLICABILIDADE PARA CALL-CENTERS VISÃO DA EMPRESA

SERVIÇO DE ANÁLISE DE REDES DE TELECOMUNICAÇÕES APLICABILIDADE PARA CALL-CENTERS VISÃO DA EMPRESA SERVIÇO DE ANÁLISE DE REDES DE TELECOMUNICAÇÕES APLICABILIDADE PARA CALL-CENTERS VISÃO DA EMPRESA Muitas organizações terceirizam o transporte das chamadas em seus call-centers, dependendo inteiramente

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Dimensões de análise dos SI Ricardo de Sousa Britto rbritto@ufpi.edu.br + Introdução n Os sistemas de informação são combinações das formas de trabalho, informações, pessoas

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA

UNIVERSIDADE FEDERAL DE SANTA CATARINA UNIVERSIDADE FEDERAL DE SANTA CATARINA CIÊNCIAS DA COMPUTAÇÃO MÁQUINAS DE COMITÊ APLICADAS À FILTRAGEM DE SPAM Monografia submetida à UNIVERSIDADE FEDERAL DE SANTA CATARINA para a obtenção do grau de BACHAREL

Leia mais

Módulo 4. Construindo uma solução OLAP

Módulo 4. Construindo uma solução OLAP Módulo 4. Construindo uma solução OLAP Objetivos Diferenciar as diversas formas de armazenamento Compreender o que é e como definir a porcentagem de agregação Conhecer a possibilidade da utilização de

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

Prof. Marcelo Henrique dos Santos

Prof. Marcelo Henrique dos Santos POR QUE ESTUDAR COMPUTAÇÃO GRÁFICA? Quem quiser trabalhar em áreas afins: Entretenimento Jogos e filmes Visualização Simulação de fenômenos físicos Arte computadorizada Educação e treinamento Processamento

Leia mais

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Engenharia de Software Parte I Introdução Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Mitos do Desenvolvimento de Software A declaração de objetivos é suficiente para se construir um software.

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha

Leia mais

Núvem Pública, Privada ou Híbrida, qual adotar?

Núvem Pública, Privada ou Híbrida, qual adotar? Instituto de Educação Tecnológica Pós-graduação Gestão e Tecnologia da Informação - Turma 25 03/04/2015 Núvem Pública, Privada ou Híbrida, qual adotar? Paulo Fernando Martins Kreppel Analista de Sistemas

Leia mais

Aula 3 - Registro de Imagem

Aula 3 - Registro de Imagem Aula 3 - Registro de Imagem 1. Registro de Imagens Registro é uma transformação geométrica que relaciona coordenadas da imagem (linha e coluna) com coordenadas geográficas (latitude e longitude) de um

Leia mais

TIPOS DE REFLEXÃO Regular Difusa

TIPOS DE REFLEXÃO Regular Difusa Reflexão da luz TIPOS DE REFLEXÃO Regular Difusa LEIS DA REFLEXÃO RI = raio de luz incidente i normal r RR = raio de luz refletido i = ângulo de incidência (é formado entre RI e N) r = ângulo de reflexão

Leia mais

LSI tem célula de manufatura. Márcio Rillo e Reinaldo Bianchi. IPESI - Eletrônica e Informática, EDIB, São Paulo. Nov/Dez 95, p. 40-1.

LSI tem célula de manufatura. Márcio Rillo e Reinaldo Bianchi. IPESI - Eletrônica e Informática, EDIB, São Paulo. Nov/Dez 95, p. 40-1. LSI tem célula de manufatura. Márcio Rillo e Reinaldo Bianchi. IPESI - Eletrônica e Informática, EDIB, São Paulo. Nov/Dez 95, p. 40-1. O LSI desenvolve um sistema que poderá ser usado na montagem de produtos

Leia mais

Admistração de Redes de Computadores (ARC)

Admistração de Redes de Computadores (ARC) Admistração de Redes de Computadores (ARC) Instituto Federal de Educação, Ciência e Tecnologia de Santa Catarina - Campus São José Prof. Glauco Cardozo glauco.cardozo@ifsc.edu.br RAID é a sigla para Redundant

Leia mais

Solitaire Interglobal

Solitaire Interglobal Solitaire Interglobal POWERLINUX OU WINDOWS PARA IMPLANTAÇÃO SAP Escolher entre as plataformas concorrentes de sistema operacional Linux e Windows para SAP pode ser uma tarefa confusa para as organizações.

Leia mais

APOSTILA DE EXEMPLO. (Esta é só uma reprodução parcial do conteúdo)

APOSTILA DE EXEMPLO. (Esta é só uma reprodução parcial do conteúdo) APOSTILA DE EXEMPLO (Esta é só uma reprodução parcial do conteúdo) 1 Índice Aula 1 - Área de trabalho e personalizando o sistema... 3 A área de trabalho... 3 Partes da área de trabalho.... 4 O Menu Iniciar:...

Leia mais

Trabalho 2 Fundamentos de computação Gráfica

Trabalho 2 Fundamentos de computação Gráfica Trabalho 2 Fundamentos de computação Gráfica Processamento de Imagens Aluno: Renato Deris Prado Tópicos: 1- Programa em QT e C++ 2- Efeitos de processamento de imagens 1- Programa em QT e C++ Para o trabalho

Leia mais

ESTUDO DE VIABILIDADE. Santander, Victor - Unioeste Aula de Luiz Eduardo Guarino de Vasconcelos

ESTUDO DE VIABILIDADE. Santander, Victor - Unioeste Aula de Luiz Eduardo Guarino de Vasconcelos ESTUDO DE VIABILIDADE Santander, Victor - Unioeste Aula de Luiz Eduardo Guarino de Vasconcelos Objetivos O que é um estudo de viabilidade? O que estudar e concluir? Benefícios e custos Análise de Custo/Benefício

Leia mais

Taxa de Gravação da Memória RAM (MegaBytes / segundo) G5 2.7 Ghz (Mac) Linux Kernel 2.6 2799 1575

Taxa de Gravação da Memória RAM (MegaBytes / segundo) G5 2.7 Ghz (Mac) Linux Kernel 2.6 2799 1575 21 4 Análise É necessária uma análise criteriosa, que busque retornar as questões primordiais sobre o que é realmente preciso para a aquisição de uma plataforma de produção gráfica digital profissional.

Leia mais

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 3º PERÍODO - 5º MÓDULO AVALIAÇÃO A4 DATA 23/04/2009 ENGENHARIA DE SOFTWARE Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E DE TECNOLOGIA CCET CURSO DE ENGENHARIA DE COMPUTAÇÃO Henrique Soares Hinke José Eduardo da Silva Rodrigues Matheus Augusto de Queiroz

Leia mais

PLANEJAMENTO DA MANUFATURA

PLANEJAMENTO DA MANUFATURA 58 FUNDIÇÃO e SERVIÇOS NOV. 2012 PLANEJAMENTO DA MANUFATURA Otimizando o planejamento de fundidos em uma linha de montagem de motores (II) O texto dá continuidade à análise do uso da simulação na otimização

Leia mais

4 Orbitais do Átomo de Hidrogênio

4 Orbitais do Átomo de Hidrogênio 4 Orbitais do Átomo de Hidrogênio A aplicação mais intuitiva e que foi a motivação inicial para desenvolver essa técnica é a representação dos orbitais do átomo de hidrogênio que, desde então, tem servido

Leia mais

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS O termo metodologia não possui uma definição amplamente aceita, sendo entendido na maioria das vezes como um conjunto de passos e procedimentos que

Leia mais

O OBTURADOR 1. FUNCIONAMENTO:

O OBTURADOR 1. FUNCIONAMENTO: Esse anexo é um complemento do material didático exclusivo do Curso de Fotografia Digital - A fotografia sob uma nova óptica e função, com Célio Ricardo, constituindo uma parte que completa o total de

Leia mais

Mandrilamento. determinado pela operação a ser realizada. A figura a seguir mostra um exemplo de barra de mandrilar, também chamada de mandril.

Mandrilamento. determinado pela operação a ser realizada. A figura a seguir mostra um exemplo de barra de mandrilar, também chamada de mandril. A UU L AL A Mandrilamento Nesta aula, você vai tomar contato com o processo de mandrilamento. Conhecerá os tipos de mandrilamento, as ferramentas de mandrilar e as características e funções das mandriladoras.

Leia mais

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna O que é uma planilha eletrônica? É um aplicativo que oferece recursos para manipular dados organizados em tabelas. A partir deles pode-se gerar gráficos facilitando a análise e interpretação dos dados

Leia mais

Microsoft Access XP Módulo Um

Microsoft Access XP Módulo Um Microsoft Access XP Módulo Um Neste primeiro módulo de aula do curso completo de Access XP vamos nos dedicar ao estudo de alguns termos relacionados com banco de dados e as principais novidades do novo

Leia mais

QFD: Quality Function Deployment QFD: CASA DA QUALIDADE - PASSO A PASSO

QFD: Quality Function Deployment QFD: CASA DA QUALIDADE - PASSO A PASSO QFD: CASA DA QUALIDADE - PASSO A PASSO 1 - INTRODUÇÃO Segundo Akao (1990), QFD é a conversão dos requisitos do consumidor em características de qualidade do produto e o desenvolvimento da qualidade de

Leia mais

a 1 x 1 +... + a n x n = b,

a 1 x 1 +... + a n x n = b, Sistemas Lineares Equações Lineares Vários problemas nas áreas científica, tecnológica e econômica são modelados por sistemas de equações lineares e requerem a solução destes no menor tempo possível Definição

Leia mais