“Rastreamento de Reconstrução de
Dutos em Ambientes Submarinos”
Por
Vinícius Miranda César
Dissertação de Mestrado
Universidade Federal de Pernambuco [email protected] www.cin.ufpe.br/~posgraduacao
RECIFE 2015
Universidade Federal de Pernambuco
CENTRO DE INFORMÁTICA
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO
Vinícius Miranda César
“RASTREAMENTOS E RECOSNTRUÇÃO DE
DUTOS EM AMBIENTES SUBMARINOS”
ORIENTADOR(A): Profª Dr. Judith Kelner
RECIFE 2015
Este trabalho foi apresentado à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco como requisito parcial para obtenção do grau de Mestre em Ciência da Computação.
Catalogação na fonte
Bibliotecária Jane Souto Maior, CRB4-571
C421r César, Vinícius Miranda
Rastreamento e reconstrução de dutos em ambiente submarino / Vinícius Miranda César. – Recife: O Autor, 2015.
104 f.: il. fig., tab.
Orientador: Judith Kelner.
Dissertação (Mestrado) – Universidade Federal de
Pernambuco. CIn, Ciência da computação, 2015. Inclui referências.
1. Ciência da computação. 2. Visão computacional. 3.
Reconstrução 3D. 4. Processamento de imagem. I. Kelner, Judith (orientadora). II. Título.
004 CDD (23. ed.) UFPE- MEI 2015-152
Dissertação de apresentada por Vinícius Miranda César à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco, sob o título “Rastreamento e Reconstrução de Dutos em Ambiente Submarino” orientada pela Profa. Judith Kelner e aprovada pela Banca Examinadora formada pelos professores:
______________________________________________ Prof. George Darmiton da Cunha Cavalcanti
Centro de Informática/UFPE
______________________________________________ Prof. Alberto Barbosa Raposo
Departamento de Ciência da Computação / PUC/RJ
_______________________________________________ Profa. Judith Kelner
Centro de Informática / UFPE
Visto e permitida a impressão. Recife, 7 de agosto de 2015.
___________________________________________________ Profa. Edna Natividade da Silva Barros
Coordenadora da Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco.
A conclusão desta dissertação de mestrado foi possível graças ao apoio de diversas pessoas e entidades. A primeira entidade é o de grupo de pesquisa GRVM, liderado pela Professora Dra. Judith Kelner. Aproveito para agradecer a todos os membros que colaboraram de forma direta ou indireta para o desenvolvimento desta pesquisa. A CAPES e a FINEP/Petrobras que contribuíram financeiramente através de bolsas e projetos de pesquisa o meu mais sincero agradecimento. Por fim, agradeço aos membros do laboratório TES no Cenpes, do laboratório LabOceano da COPPE/UFRJ e da Sapura que permitiram a realização de diversos experimentos. Esses experimentos colaboraram imensamente para os resultados finais apresentados neste trabalho. Finalmente agradeço ao prof. Silvio Melo pela sua coorientação e ao Dr. Ismael Santos pelas suas intervenções, ambos contribuíram para a finalização da pesquisa.
If everything seems under control, you’re just not going fast enough (Mario Andretti)
A instalação de dutos flexíveis em ambiente submarino de alta profundidade é realizada recorrentemente pelas indústrias de óleo e gás. Estes dutos transportam fluidos como água, gases e óleo. Durante o minucioso processo de instalação dos dutos flexíveis, é necessário o monitoramento constante de sua geometria a fim de evitar a propagação de esforços e consequentemente danos aos equipamentos envolvidos. Para que este monitoramento seja eficiente, podem ser utilizadas técnicas de reconstrução 3D que usam como entrada as imagens capturadas por um par de câmeras estéreo instaladas nos robôs que acompanham a operação. Esta dissertação de mestrado propõe o desenvolvimento dos algoritmos de rastreamento e reconstrução para dutos flexíveis com o intuito de permitir o monitoramento em tempo real da operação.
O algoritmo de rastreamento proposto tem a função de determinar um conjunto de pontos que representam a projeção do eixo medial do duto em cada imagem do par estéreo. Para alcançar esse objetivo, o algoritmo utiliza características da iluminação em ambientes submarinos e de marcações realizadas no duto. A etapa de reconstrução utiliza os pontos rastreados para estimar uma curva B-spline racional não-uniforme (NURBS) sobre um plano tridimensional. Essa aproximação simplifica o processo de reconstrução e permite obter resultados mais precisos.
Experimentos realizados em ambiente aquático e aéreo, utilizando uma escala reduzida, permitiram uma análise da acurácia e robustez dos algoritmos propostos. O erro médio alcançado foi menor que meio centímetro em todos os casos analisados. Além disso, concluiu-se que a disposição dos pontos da curva e a posição do plano influenciam na estimativa da reconstrução. Testes com imagens reais da operação foram também realizados e permitiram validar as técnicas propostas neste ambiente. Os resultados obtidos foram robustos em casos de baixa iluminação, ruidosos e com elevada obliquidade. Os métodos propostos são eficientes computacionalmente e permitem a obtenção do resultado a uma taxa superior a 30 quadros por segundo.
ABSTRACT
Installing flexible pipes in deep underwater environments is a recurrent task in oil produc-tion industry. Such flexible pipes are responsible for transporting fluids such as water, gases and oil. The installation pipe connections is a meticulous process that requires continuous monitoring of the pipe’s geometry in order to prevent excessive tension along the line that may cause costly damages to the end equipment.
This master thesis develops a 3D reconstruction method to ensure the success of this critical operation. The model makes use of images captured by a stereo rig mounted on the robots supporting the operation. At the heart of the model is a novel algorithm for tracking and reconstructing flexible pipes in order to allow real time pipe monitoring during the installation operation.
Our approach tracks a set of points that represents the pipe’s projected medial axis in each image provided by the stereo rig. This is achieved using the scene’s specifications including the as deep-water environment illumination and marks pre-painted over the used pipes. The reconstruction stage uses the tracked points to estimate a plane non-uniform rational B-spline (NURBS) in 3D space. This approximation simplifies the reconstruction and i8s shown to improve accuracy.
Underwater and aerial experiments were performed in a reduced scale scenario to evaluate the proposed method’s accuracy and robustness. In all test cases, the mean of reconstruction error was less than 1 centimeter. Furthermore, we conclude that the points’ distribution along the pipeline and the curve plane position impact the reconstruction’s accuracy. In addition, tests carried out using real operation videos were performed. They allowed us to validate our technical proposal in this harsh environment. The results obtained were robust in almost all the analyzed cases. The proposed methods are computationally efficient and allow obtaining results at a rate of 30 frames per second or higher.
Figura 1 – Padrão de pintura em regiões brancas e pretas usada para marcar o duto. 21
Figura 2 – Câmera submarina de baixa iluminação . . . 23
Figura 3 – Imagem de um duto real . . . 24
Figura 4 – Exemplos de imagens utilizadas por trabalhos de rastreamento e detec-ção de dutos. . . 26
Figura 5 – Projeção de um ponto amostral na curva. . . 41
Figura 6 – Corte longitudinal e transversal na imagem do duto . . . 43
Figura 7 – Ilustração da entrada e saída do algoritmo de rastreamento . . . 44
Figura 8 – Região de projeção do duto na imagem . . . 45
Figura 9 – Curva superior e inferior no espaço tridimensional . . . 46
Figura 10 – Ilustração da transformação da imagem. . . 47
Figura 11 – Ilustração do rastreamento longitudinal . . . 48
Figura 12 – Esquemático do rastreamento transversal . . . 51
Figura 13 – Região de incerteza na triangulação de um ponto . . . 57
Figura 14 – Gráfico do erro na triangulação de um ponto . . . 58
Figura 15 – Incerteza na reconstrução da curva pelo método de Xiao e Li . . . 59
Figura 16 – Ilustração da projeção de uma curva planar em um par de câmeras estéreo 59 Figura 17 – Ilustração de imagens com trechos diferentes de duto sendo rastreados. 61 Figura 18 – Obliquidade . . . 64
Figura 19 – Região de incerteza da reconstrução de um segmento de reta . . . 65
Figura 20 – Gráficos do erro da reconstrução de um segmento de reta . . . 66
Figura 21 – Ilustração das componentes principais dos pontos da curva . . . 66
Figura 22 – Suporte utilizado para movimentação das câmeras. . . 70
Figura 23 – Cenário criado para experimentos em laboratório . . . 70
Figura 24 – Resultado do rastreamento em amostra de quadros do Vídeo 1 capturado em ambiente aquático. . . 72
Figura 25 – Gráfico de erro da reconstrução obtido no Vídeo 1 nos experimentos submersos.. . . 72
Figura 26 – Resultado do rastreamento em amostra de quadros do Vídeo 2 capturado em ambiente aquático. . . 73
Figura 27 – Gráfico de erro da reconstrução obtido no Vídeo 2 nos experimentos em ambiente aquático. . . 74
Figura 28 – Gráfico da obliquidade estimado no Vídeo 2 do experimento em ambiente aquático. . . 75
Figura 29 – Resultado do rastreamento em amostra de quadros do Vídeo 3 capturada em ambiente aquático. . . 75
Figura 30 – Gráfico de erro da reconstrução da curva obtido no Vídeo 3 nos experi-mentos em ambiente aquático . . . 76
Figura 31 – Gráfico da obliquidade estimado no Vídeo 3 obtido na captura do experimento realizado em ambiente aquático. . . 77
Figura 32 – Resultado do rastreamento em amostras de quadros do Vídeo 4 captu-rado em ambiente aquático. . . 78
Figura 33 – Gráfico de erro da reconstrução obtido no Vídeo 4 capturado nos expe-rimentos em ambiente aquático . . . 78
Figura 34 – Gráfico da obliquidade no Vídeo 4 estimado no experimento realizado em ambiente aquático. . . 79
Figura 35 – Ilustração do erro entre a curva reconstruída e a curva do gabarito quando o erro máximo se localiza nas extremidades. . . 80
Figura 36 – Quadros capturados nos experimentos no laboratório e em ambiente aéreo. . . 82
Figura 37 – Ilustração da estimativa dos graus de liberdade do movimento da câmera nos experimentos em laboratório e no ar . . . 83
Figura 38 – Resultado do rastreamento em amostras de quadros do Vídeo 1 captu-rado em ambiente real. . . 86
Figura 39 – Resultado do rastreamento em amostra de quadro do Vídeo 1, capturado em ambiente real, sem o uso da função de pesos. . . 86
Figura 40 – Resultado do rastreamento em amostras de quadros do Vídeo 2, captu-rado em ambiente real. . . 87
Figura 41 – Imagens transformadas pelo algoritmo de rastreamento . . . 88
Figura 42 – Resultado do rastreamento em amostras de quadros do Vídeo 3, captu-rado em ambiente real. . . 88
Figura 43 – Resultado do rastreamento em amostras de quadros do Vídeo 4, captu-rado em ambiente real. . . 89
Figura 44 – Resultado do rastreamento em amostras de quadros do Vídeo 5, captu-rado em ambiente real. . . 90
Tabela 1 – Medidas de erro de reconstrução da curva no experimento em laboratório realizado em ambiente aquático. . . 80
Tabela 2 – Parâmetros utilizados em cada vídeo nos experimentos realizados em ambiente aéreo. . . 81
Tabela 3 – Tabela de estimativas da amplitude do movimento do duto em cada grau de liberdade nos experimentos realizados em ambiente aéreo . . . 84
Tabela 4 – Tabela do erro da estimativa das amplitudes dos movimentos nos experimentos em laboratório e em ambiente aéreo. . . 84
Tabela 5 – Tabela de erros de reconstrução da curva nos experimentos em labora-tório e em ambiente aéreo . . . 85
SUMÁRIO
1 INTRODUÇÃO . . . 14
1.1 Motivação . . . 15
1.2 Objetivo . . . 16
1.3 Visão geral dos algoritmos propostos . . . 16
1.3.1 Rastreamento . . . 17 1.3.2 Reconstrução . . . 17 1.4 Principais desafios . . . 18 1.5 Contribuições . . . 18 1.6 Estrutura do documento. . . 18 2 CENÁRIO . . . 20 2.1 Posicionamento . . . 20 2.2 Duto . . . 20 2.3 Sistema de câmeras . . . 21 2.4 Câmeras . . . 22 2.5 Iluminação . . . 23 2.6 Imagens . . . 23 2.7 Considerações finais . . . 24 3 TRABALHOS RELACIONADOS . . . 25
3.1 Mapeamento interno de dutos . . . 25
3.2 Rastreamento e detecção de dutos e cabos . . . 26
3.3 Reconstrução de curvas . . . 28 3.4 Considerações finais . . . 30 4 FUNDAMENTOS . . . 31 4.1 Notação . . . 31 4.2 Visão computacional . . . 32 4.2.1 Geometria Projetiva . . . 32 4.2.1.1 Coordenadas homogêneas . . . 32 4.2.1.2 Transformações projetivas . . . 33
4.2.2 Modelo de câmera pinhole . . . 34
4.2.3 Geometria epipolar . . . 34
4.2.4 Retificação estéreo . . . 35
4.2.5 Relação entre projeções de pontos coplanares . . . 35
4.3.2 Invariância a transformações projetivas . . . 38
4.4 Mínimos quadrados. . . 39
4.5 Ajuste de curva . . . 40
4.6 Considerações finais . . . 41
5 TÉCNICA PROPOSTA DE RASTREAMENTO DE DUTOS . . . . 43
5.1 Formulação . . . 43
5.2 Região de projeção do duto . . . 45
5.3 Transformação da imagem . . . 46
5.4 Rastreamento longitudinal . . . 47
5.5 Rastreamento transversal . . . 49
5.5.1 Função de pesos . . . 49
5.5.2 Solução utilizando mínimos quadrados . . . 50
5.6 Aproximações . . . 51
5.7 Implementação . . . 52
5.8 Considerações finais . . . 53
6 TÉCNICA PROPOSTA PARA RECONSTRUÇÃO DE CURVAS PLA-NARES . . . 54
6.1 Reconstrução estéreo de NURBS . . . 55
6.2 Restrição de planaridade da curva . . . 57
6.3 Impondo a restrição de planaridade . . . 58
6.4 Parametrização da curva . . . 60
6.5 Número de pontos de controle . . . 62
6.6 Algoritmo . . . 63
6.7 Fatores que influenciam a acurácia da curva reconstruída . . . 64
6.8 Considerações finais . . . 67
7 RESULTADOS . . . 68
7.1 Implementação . . . 68
7.2 Metodologia dos experimentos . . . 68
7.3 Experimentos em laboratório . . . 69 7.3.1 Ambiente aquático . . . 71 7.3.1.1 Vídeo 1. . . 71 7.3.1.2 Vídeo 2. . . 73 7.3.1.3 Vídeo 3. . . 74 7.3.1.4 Vídeo 4. . . 76
7.3.1.5 Principais conclusões do experimento . . . 77
7.3.2.1 Descrição do experimento . . . 80
7.3.2.2 Análise dos resultados . . . 82
7.4 Experimentos em ambiente real . . . 85
7.4.1 Vídeo 1 . . . 85 7.4.2 Vídeo 2 . . . 87 7.4.3 Vídeo 3 . . . 87 7.4.4 Vídeo 4 . . . 89 7.4.5 Vídeo 5 . . . 90 7.4.6 Casos de estresse . . . 90 7.5 Análise geral . . . 92 7.5.1 Erro de reprojeção . . . 92 7.5.2 Iterações . . . 92 7.5.3 Tempo . . . 93 7.6 Considerações finais . . . 94 8 CONCLUSÃO . . . 95 8.1 Principais conclusões . . . 95 8.2 Principais contribuições . . . 96 8.3 Trabalhos futuros . . . 97 REFERÊNCIAS . . . 98
1 INTRODUÇÃO
Mesmo sendo um ambiente de difícil acesso para o homem, o fundo do mar, principalmente em águas profundas, vem sendo cada vez mais explorado devido às riquezas que este espaço oferece. Dentre as principais tarefas desenvolvidas nesse meio, podemos citar a indústria de óleo e gás; atividades militares; instalação de cabos de energia e telecomunicação; e pesquisa da flora e fauna marinha.
Algumas dessas tarefas requerem que sejam realizadas operações de manutenção, instalação e inspeção de equipamentos no leito marinho. Por se tratar de um ambiente hostil ao ser humano devido às suas características físicas, estas tarefas, normalmente, são realizadas por robôs, denominados UUV (Uninhabited Undersea Vehicle). Os UUV podem ser classificados em duas classes: os AUV (Autonomous Underwater Vehicle) e os ROV (Remotely Operated Vehicles).
Os AUV são robôs autônomos, ou seja, possuem sua própria fonte de energia e tomam decisões para realizar seus movimentos e definir sua trajetória sem utilização de cabos. Eles são úteis em buscas de destroços e levantamento de dados do terreno, tendo em vista que conseguem varrer uma grande área com autonomia. São robôs leves, velozes e com menor liberdade de movimento. Um dos desafios dos AUV é otimizar a trajetória percorrida para maximizar a eficiência energética, uma vez que sua energia é armazenada
em baterias (WHITCOMB, 2000).
De outro modo, os ROV são veículos operados remotamente a partir de um navio. A sua alimentação e os dados são transportados através de um cabo, denominado umbilical. Estes robôs têm grande liberdade de movimentos e muitos possuem braços e garras hidráu-licas que auxiliam as operações. Os ROV são grandes e pesados, facilmente personalizáveis e permitem a instalação de outros dispositivos (braços hidráulicos e ferramentas, por exemplo) e sensores (tais como: sonares, acelerômetros, termômetros e câmeras de vídeo) em seu chassi.
Os UUV são sempre equipados com vários sensores para auxiliar sua navegação, como acelerômetros, giroscópios, bússolas, altímetros, etc. Dentre os sensores que obtêm informações do ambiente marinho, podemos citar magnetômetros, sonares e câmeras. Magnetômetros são sensores sensíveis a campos eletromagnéticos e muito utilizados para localizar e seguir cabos no leito marinho. São sensores grandes, de alto custo e muito
sensíveis a ruído (ORTIZ; SIMÓ; OLIVER, 2002).
Os sonares são mais úteis para varrer grandes áreas, porém não são eficientes para mapear áreas pequenas, principalmente devido à sua baixa taxa sinal/ruído. Além disso, também são sensores grandes, pesados e de custo elevado.
Capítulo 1. Introdução 15
Os sensores ópticos, também são utilizados, sendo de baixo custo e facilmente instalados em um ROV ou AUV. Devido ao decaimento da luz na água, estes sensores são ineficientes em grandes distâncias, porém apresentam boa precisão quando consideradas regiões a poucos metros do robô. A grande maioria dos ROV é equipado com pelo menos
uma câmera de vídeo que fornece imagens a um operador remoto (BONIN; BURGUERA;
OLIVER, 2014).
Observando as vantagens dos sensores ópticos (câmera de vídeo), aplicações de
visão computacional vêm sendo cada mais exploradas (HORGAN; TOAL, 2009). Por
exemplo, estabilizar o ROV a partir de imagens do solo marinho (GARCIA et al., 2001);
seguir cabos e dutos (ZHANG et al., 2012); mensurar distâncias (SUN; YU; XU, 2013);
realizar mapeamento 3D do fundo do mar (DRAP et al., 2015); auxiliar o processo de
manutenção de equipamentos (CHEN et al.,2014); estimar o posicionamento e localização
do ROV para facilitar a navegabilidade (BURDINSKY; MYAGOTIN, 2015), entre outros.
O processamento das imagens capturadas por sensores ópticos não é trivial, pois é preciso decodificar a informação de interesse dentre um conjunto complexo de dados, geralmente contendo grande quantidade de ruído. Nesse contexto, a área do conhecimento responsável por processar, analisar e compreender imagens é a de visão computacional. Diversos conhecimentos de outras áreas como matemática, estatística, física, inteligência
artificial e processamento de imagens, são englobados nessa área (DAVID; JEAN, 2002).
1.1
MOTIVAÇÃO
A instalação de dutos é uma das recorrentes operações que são realizadas no fundo do mar pelas indústrias de óleo e gás. Esses dutos interligam dois pontos no fundo do mar (um poço a um ponto de distribuição, por exemplo) ou um ponto no fundo do mar a outro localizado na superfície (um poço a uma plataforma, por exemplo) e servem para
transportar fluidos como água, gases e óleo. Detalhes da operação são dados em (NAGLE
et al., 1993).
Esses dutos são flexíveis, possuem de 20 a 50 centímetros de diâmetro e podem alcançar quilômetros de comprimento. A instalação é realizada através de navios especiali-zados denominados PLSV, que transportam e instalam os dutos interligando equipamentos submarinos. Esse tipo de instalação usa o auxílio de um ROV para realizar diversas tarefas, dentre estas a de prover imagens do ambiente aos engenheiros e operadores.
O procedimento de instalação se torna muito delicado devido às dimensões e peso do duto. Uma tensão excessiva pode ser propagada ao longo do duto e atingir os conectores, podendo danificar os equipamentos. Para minimizar estes riscos, simulações físicas são realizadas previamente à operação para estimar configurações seguras de acoplamento (XAVIER, 2006).
Entretanto, verificar se o duto segue corretamente as configurações definidas pela simulação física ainda é um processo realizado através de comparação visual com as imagens capturadas do ROV. Essa comparação consome muito tempo e é suscetível a erros, pois é uma tarefa manual intensa e que não considera as distorções radial e de perspectiva produzidas pela câmera.
1.2
OBJETIVO
O objetivo principal é prover uma comparação automática e em tempo real que avalia se o duto está geometricamente de acordo com as configurações preestabelecidas, esta dissertação de mestrado propõe um método para rastrear e reconstruir o Eixo Medial do Duto (EMD) no espaço 3D utilizando câmeras estéreo.
Por se tratar de um corpo deformável ao longo do tempo é necessário usar pelo menos duas câmeras para se obter duas ou mais imagens em um mesmo instante de tempo. Para que a solução proposta seja útil, foi estipulado que o resultado da reconstrução deve apresentar acurácia igual ou menor a 1 centésimo do comprimento do duto, dados obtidos da experiência dos engenheiros envolvidos na operação. Além disso, o resultado deve atender aos requisitos de tempo real, ou seja, os algoritmos devem fornecer o resultado a uma taxa igual ou superior à da captura das câmeras.
Como o cenário de uso dos algoritmos (descrito no Capítulo2) é bem definido, as
técnicas foram concebidas explorando peculiaridades do problema, em busca de maximizar a acurácia e performance do resultado final.
O algoritmo de rastreamento proposto visa determinar um conjunto de pixels ordenados que consistem na imagem do EMD. Para atingir esse objetivo específico, é estabelecido um modelo de projeção do duto na imagem. Com base nas condições de iluminação do ambiente e da marcação do duto, é realizado um ajuste dessa região sobre a imagem do duto.
O processo como o duto é instalado permite que o EMD possa ser estimado como uma aproximação de uma curva planar. Sendo assim, o algoritmo de reconstrução proposto
adaptou o método de Xiao e Li (XIAO; LI, 2005), que reconstrói NURBS a partir de
imagens estéreo. A adaptação consistiu em modificar a parametrização dos pontos de controle para que a curva reconstruída seja planar.
1.3
VISÃO GERAL DOS ALGORITMOS PROPOSTOS
Além das imagens, os algoritmos recebem como dados de entrada: o raio do duto e as calibrações das câmeras (parâmetros intrínsecos e pose relativa entre as câmeras). Para o correto funcionamento do algoritmo de rastreamento, é necessária uma etapa de
Capítulo 1. Introdução 17
inicialização, essa etapa fornece um palpite para a posição do duto na imagem. O palpite inicial pode ser obtido através da marcação de pontos na imagem pelo usuário ou utilizando
técnicas automáticas para detecção de dutos, como em (PESSOA et al., 2015).
A partir da etapa de inicialização é possível triangular um conjunto esparso de pontos que representam o EMD no espaço e assim obter uma estimativa inicial para a posição do duto. Embora o conjunto de pontos esparso obtido pela inicialização identifique corretamente a posição do duto na imagem, esses pontos não atendem aos requisitos de acurácia estabelecidos para o problema.
O algoritmo de rastreamento tem a função de: dada uma posição inicial do duto localizar com precisão a projeção do EMD na imagem. O duto é rastreado em cada imagem do par estéreo e o resultado será usado como entrada do algoritmo de reconstrução. Para reconstruir o duto utilizam-se as calibrações da câmera e os pontos rastreados em cada imagem do par estéreo. Como resultado obtém-se uma curva analítica NURBS que representa o EMD no espaço e o plano desta curva. Esse resultado será também usado para inicializar o algoritmo de rastreamento no quadro seguinte.
1.3.1
Rastreamento
O algoritmo de rastreamento tem por função, dado um palpite inicial, localizar com precisão menor que 1 pixel, um conjunto de pontos 2D que representa a posição da EMD na imagem. Uma região bidimensional que representa a projeção do duto parametrizada nas direções longitudinais e transversais é delimitada, utilizando o raio do duto e sua posição em relação à câmera.
O rastreamento é dividido em duas fases. Na primeira fase, a região é contraída ou expandida na direção longitudinal, utilizando o padrão de pintura existente sobre o duto
descrito na Seção 2.2. Em seguida, com base nas características de iluminação da cena, o
rastreamento ajusta a região na direção transversal. Como as transformações aplicadas à região são complexas e expressas de forma analítica, a curva que descreve a projeção do EMD é dada como um conjunto de pontos 2D.
1.3.2
Reconstrução
A reconstrução da curva é realizada utilizando os pontos resultantes do rastreamento em cada imagem do par estéreo e os parâmetros de calibração das câmeras.
Xiao e Li (XIAO; LI, 2005) apresentaram um algoritmo de reconstrução de curvas
NURBS no espaço a partir de câmeras estéreo que se aplica diretamente ao problema deste trabalho.
Entretanto, o peso e a forma pela qual o duto é suspenso permite que o EMD seja descrito aproximadamente como uma curva planar. Para incorporar esta restrição
ao algoritmo de Xiao e Li foi realizada uma adaptação na parametrização dos pontos de controle na função que computa o erro de reprojeção.
1.4
PRINCIPAIS DESAFIOS
Como discutido na Seção2.6, o background das imagens possuem pixels com menor
intensidade do que os pixels pertencentes ao duto. Essa propriedade da imagem sugere que o problema possa ser resolvido através de técnicas de limiarização. Porém essas técnicas não apresentam resultados satisfatórios devido às características das imagens capturadas em ambiente aquático: neve marinha, iluminação não uniforme e perda de contraste (mais
detalhes sobre estes efeitos são dados na Seção 2.6).
Diante destas dificuldades, o algoritmo de rastreamento foi proposto para ser robusto ao tipo de ruído mencionados acima. Baseando-se na projeção do duto na imagem estimada a partir do quadro anterior, o EMD é determinado de forma mais acurada. Além disso, o método proposto utiliza toda a informação presente na imagem, dado que não possui uma etapa de limiarização que elimina os valores de intensidade dos pixels da imagem.
1.5
CONTRIBUIÇÕES
A primeira contribuição é a técnica de rastreamento voltada para dutos, que considera a forma da projeção de um duto na imagem. Embora ela possa ser utilizada apenas em imagens de background mais escuro que a região do que contem o duto, o método pode ser adaptado para imagens genéricas a partir da ideia de estratificação do rastreamento em eixos longitudinais e transversais. Além disso, a adaptação empregada no algoritmo de reconstrução de Xiao e Li pode ser utilizada em outros cenários de reconstrução de curvas de planares.
Por fim, esta dissertação de mestrado originou a publicação de um artigo completo intitulado "Stereo Tracking and 3D Reconstruction of Underwater Pipes", a aparecer nos anais da conferência British Machine Vision Conference (BMVC), setembro de 2015.
1.6
ESTRUTURA DO DOCUMENTO
As demais partes deste documento estão organizadas da seguinte forma: o Capítulo
2 apresenta o cenário em que o problema está inserido abordando detalhes como câmeras,
iluminação, etc. O Capítulo3descreve uma revisão geral da literatura apresentando algumas
propostas similares a esse trabalho. No Capítulo 4são apresentados os principais conceitos
Capítulo 1. Introdução 19
do duto é detalhado no Capítulo 5, e no Capítulo 6 o algoritmo de reconstrução do eixo
medial do duto é descrito. No Capítulo 7 são apresentados os experimentos e resultados
obtidos durante esta dissertação de mestrado. Finalmente, no Capítulo 8são apresentadas
2 CENÁRIO
Este capítulo descreve os aspectos do cenário real do problema, características como posicionamento, iluminação e câmeras serão levados em consideração para conceber os algoritmos que serão descritos nesta dissertação e especificar o cenário dos experimentos.
2.1
POSICIONAMENTO
Durante o procedimento de análise da geometria do duto, o posicionamento do ROV e do duto em relação ao solo marinho é menor que 30 metros, e a profundidade está compreendida entre 1 e 4 mil metros. O ROV está equipado com duas câmeras muito bem fixadas à sua estrutura e é controlado a partir do navio de operação, onde as imagens são recebidas e processadas pela ferramenta em tempo real.
Para uma completa visualização da área de interesse do duto, o ROV se posiciona a uma distância entre 5 e 15 metros do duto e realiza movimentos para observar o equipamento de diversos pontos de vista. Esses movimentos são sempre muito lentos e suaves devido à resistência mecânica da água.
2.2
DUTO
Os dutos são constituídos de material flexível, e portanto assumem diversas formas. Seu diâmetro é aproximadamente constante ao longo de sua extensão podem variar de 20 a 50 cm de diâmetro. O comprimento pode atingir alguns quilômetros, porém apenas os trechos entre 10 e 30 metros na extremidade do duto serão analisados, considerando que esta é a região que gera maior esforço, e portanto, denominada de região de interesse.
Na região de interesse do duto, existe uma pintura regular e intercalada de regiões
brancas e pretas ao longo de sua extensão, como ilustrado na Figura 1. As regiões brancas
têm comprimento aproximadamente igual ao diâmetro d do duto, enquanto as regiões pretas possuem comprimento aproximadamente igual a d/2. Esse padrão de pintura provê uma textura de desambiguação longitudinal, facilitando a visualização do duto pelo operador e servindo também para detectar o duto na imagem pela ferramenta de monitoramento. Este padrão de pintura será utilizado pelo algoritmo de rastreamento proposto nesta dissertação para determinar a porção longitudinal do duto que deve ser seguida.
Embora o duto seja um corpo tridimensional (com altura, comprimento e largura), o escopo deste trabalho foca na reconstrução do eixo medial do mesmo (EMD), que consiste em uma curva unidimensional. O EMD pode ser representado através de uma
Capítulo 2. Cenário 21
Figura 1 – Padrão de pintura em regiões brancas e pretas usada para marcar o duto.
. . .
d
~d/2 ~d
Fonte: O autor
curva matemática no espaço tridimensional e a partir das equações da curva são obtidas propriedades do duto, como a posição e curvatura.
Durante a operação grande parte da massa do duto é suspensa por suas extremida-des, e com a ação da gravidade, o EMD se torna uma curva praticamente planar. Embora o duto esteja sujeito a movimentos, estes por sua vez não alteram significativamente esta característica. Sendo assim, o EMD é considerado para fins práticos uma curva plana inserida em um espaço 3D.
Embora seja flexível, o duto apresenta uma certa rigidez que o impede de se
comportar como uma curva catenária (LOCKWOOD, 1971) (curva que, por exemplo,
descreve cordas ideais suspensas por suas extremidades). Uma abordagem para determinar a
curva do EMD é utilizar simulações físicas e sistemas de elementos finitos (FRITZKOWSKI;
KAMINSKI, 2010), informando as propriedades do material que compõe o duto. Porém, esta abordagem requer uma grande quantidade de parâmetros do duto e do ambiente. Para evitar essa complexidade, o duto será modelado através de curvas matemáticas como splines, permitindo assim representá-lo de diversas formas.
2.3
SISTEMA DE CÂMERAS
Do ponto de vista teórico, apenas uma câmera seria necessária para reconstruir o duto. Considerado que o raio do duto é conhecido, a distância de cada ponto do EMD para a câmera poderia ser determinada pela espessura da projeção do duto na imagem. Entretanto, do ponto de vista prático, esse método seria muito impreciso uma vez que o raio do duto é muito menor que a distância entre a câmera e o objeto. Essa característica impede que sejam estabelecidas restrições suficientes para extrair informação tridimensional. Um exemplo disto é o fato de que grandes movimentos de aproximação do duto para a câmera resulta em alterações muito pequenas na imagem. Dessa maneira, para obter um resultado válido devem ser utilizadas duas ou mais câmeras calibradas para triangular a posição do EMD no espaço.
O sistema de câmeras utilizado no escopo desta pesquisa composto por duas câmeras
câmeras estão bem fixadas à estrutura do ROV para impedir movimento relativo entre as mesmas. Ambas as câmeras estão posicionadas com eixos óticos paralelos e com distância (baseline) horizontal igual a 80 cm. Esta medida foi adotada para que seja possível obter uma triangular pontos distantes mais de 5 metros da câmera com acurácia (detalhes sobre
a influência da distância na precisão da reconstrução são dados na Seção 6.7).
O par estéreo é previamente calibrado antes de cada operação para obter os parâmetros intrínsecos de cada câmera, assim como o posicionamento relativo entre as duas câmeras (pose). O procedimento de calibração considera a variação do índice de refração do meio aquático e aéreo.
2.4
CÂMERAS
Como o ambiente onde é realizado a operação está a mais de mil metros de profundidade, é preciso utilizar câmeras submarinas de baixa iluminação, que são específicas para este fim. Esse tipo de câmera possui duas características principais para lidar com esse tipo de ambiente. A primeira é sua estrutura reforçada que deve suportar pressões de grandes profundidades.
A segunda característica é sua sensibilidade à luz. Como a luz natural não chega a essas profundidades, a única fonte de luz existente no ambiente são os iluminadores do ROV. Porém, como a atenuação da luz na água é elevada, o ambiente ainda assim é escasso em iluminação. Sendo assim, para que seja possível visualizar em distâncias compreendidas entre 5 e 20 metros, é preciso utilizar câmeras de baixa iluminação que
têm sensibilidade de 10−2 a 10−5 LUX.
Devido à dificuldade em avistar em grandes distâncias, câmeras submarinas de
baixa iluminação costumam ser grande angulares, com FOV (field of view) maior que 80◦.
Isto permite a visualização da maior parte da cena, mesmo que a câmera esteja localizada perto dos objetos. Lentes grandes angulares geralmente possuem distorção radial mais
acentuada, deformando principalmente as bordas da imagem (SZELISKI, 2010). Para
transmitir a imagem até o barco, utiliza-se o formato analógico – NTSC ou PAL. Outra característica deste tipo de câmera é que a imagem produzida é monocromática.
As informações referentes a essa categoria de câmeras foram obtidas através de uma pesquisa entre os modelos das marcas: Kongsberg, Bowtech e Imenco. O modelo de câmera utilizadas nos experimentos desse trabalho é a Kongsberg OE15-101c, ilustrada na
Figura 2, e possui 84◦ de FOV diagonal quando submersa e sensibilidade de 1.3 × 10−3
Capítulo 2. Cenário 23
Figura 2 – Câmera submarina de baixa iluminação utilizada em operações reais e nos experimentos desta dissertação.
Fonte: Kongsberg Maritme
2.5
ILUMINAÇÃO
Imagens obtidas em meio aquático possuem aspectos diferentes daquelas capturadas em meio aéreo. A luz sofre forte atenuação na água, impedindo assim a visualização de objetos mais distantes. Além disso, o espalhamento que a luz sofre na água cria
imagens embaçadas e com pouco contraste (ANCUTI et al., 2012). Além da intensidade
e contraste, as cores também sofrem alterações, pois as ondas com menores frequências (como o vermelho) sofrem maior atenuação tornando assim as imagens mais azuladas ou
esverdeadas (IQBAL et al.,2007). Outro aspecto dessas imagens é o ruído que surge a partir
de partículas em suspensão na água (efeito conhecido como neve marinha) (HORGAN;
TOAL, 2006).
Em profundidades superiores a 30 metros não há luz natural e é necessário a utilização de iluminadores como fontes de luz, geralmente fixados no UUV, próximos às câmeras. Esse tipo de iluminação provoca um aumento da visibilidade em relação a um cenário iluminado com luz natural abundante, pois os raios de luz refletidos pelo objeto visualizado não se somam à luz do ambiente. Em contrapartida, os iluminadores tendem a causar uma iluminação não uniforme. Além disso, o posicionamento entre iluminadores e câmeras favorecem a reflexão da luz na neve marinha, criando vários pontos de máximo na imagem.
2.6
IMAGENS
Um exemplo de imagem obtida pelas câmeras está ilustrado na Figura3. São quadros
monocromáticos que, após serem digitalizados, possuem resolução igual a 640 × 480 pixels e aspecto 4 : 3. Pode-se verificar na imagem borrada com pontos de máximo oriundos da reflexão da luz na neve marinha.
Figura 3 – Imagem de um duto obtida no cenário real a 1300 metros de profundidade.
Fonte: Petrobras
Devido às condições de iluminação, a imagem possui um background mais escuro que os objetos da cena que difundem maior quantidade de luz. Desta forma pixels pertencentes ao duto possuem intensidade maior do que a sua vizinhança. Essa característica da imagem será utilizada na função de custo do algoritmo de rastreamento.
2.7
CONSIDERAÇÕES FINAIS
O cenário da instalação de dutos possui diversas características específicas que devem ser levadas em consideração no momento de especificar os algoritmos mais adequados para que os objetivos sejam cumpridos. E se bem exploradas, estas características podem aprimorar o resultado da reconstrução. Além disso, a definição exata do cenário permite avaliar a relevância de trabalhos relacionados, apresentados no próximo capítulo.
25
3 TRABALHOS RELACIONADOS
Este capítulo apresenta o levantamento de trabalhos correlatos no contexto desta dissertação de mestrado. Dentre os trabalhos relacionados com a proposta de rastreamento,
destacam-se: o mapeamento 3D da superfície interna de dutos, apresentado na Seção 3.1;
e o rastreamento e detecção de dutos, na Seção 3.2. O primeiro reconstrói a superfície
interna do duto através de pequenos robôs e o segundo utiliza a imagem duto para localizar e orientar os UUV. Mas nenhum deles possui o foco no rastreamento do eixo medial do duto.
Um dos temas abordados nesta dissertação, que se refere a reconstrução da curva,
é amplamente estudado na literatura de visão computacional, como descrito na Seção 3.3.
Nesta seção buscou-se detalhar desde trabalhos focados no estabelecimento de correspon-dências de curvas utilizando primitivas como cônicas até reconstrução utilizando curvas do tipo splines.
3.1
MAPEAMENTO INTERNO DE DUTOS
No procedimento de inspeção da superfície interna de dutos são utilizados pequenos
robôs equipados com sensores e que se locomovem pelo interior do duto (ROH et al.,
2001). Para reconstruir a geometria interna do duto são utilizadas abordagens monoculares
(HANSEN et al.,2013) e estéreo (HANSEN et al., 2011). Nestas abordagens, após extrair correspondência de pontos característicos entre as imagens, empregam-se técnicas SfM (Structure from Motion) para obter uma nuvem de pontos 3D. Um refinamento não linear minimiza o erro de reprojeção global (bundle adjustment) a fim de obter um resultado mais acurado.
O trabalho de insperação geralmente consiste em averiguar a integridade da su-perfície interna do duto. Arranhões, rachaduras, oxidação e encrustação são exemplos de fenômenos que devem ser detectados por estes algoritmos. Por isso métodos para esse fim
requisitam precisão menor que 1 milímetro, como alcançado em (HANSEN et al., 2011).
Além disso, a nuvem de pontos reconstruída deve ser densa para que se possa extrair toda a geometria da superfície interna do duto.
Como o interior do duto compõe uma cena rígida, é possível realizar uma mini-mização global do erro de reprojeção. Cada ponto é amostrado em diversas imagens e uma otimização dos pontos e os parâmetros de câmera permite determinar com precisão o caminho realizado pelo robô (odometria) e pontos 3D. Porém esta abordagem impede que o resultado seja fornecido em tempo real porque apenas ao final da análise de todo vídeo
o resultado será obtido.
3.2
RASTREAMENTO E DETECÇÃO DE DUTOS E CABOS
A grande maioria dos trabalhos presentes na literatura sobre rastreamento e detecção de dutos e cabos em ambientes submarinos lida com imagens semelhantes àquelas
apresentadas na Figura 4. Estas imagens mostram os dutos com formato praticamente reto
sobre o chão marinho, e geralmente cruzam a imagem da parte inferior até a parte superior. Sendo assim, estes trabalhos utilizam metodologias semelhantes para localizar e rastrear o duto. Nesse procedimento, primeiramente, realiza-se um processamento da imagem com a finalidade de localizar as arestas e detectar pares de retas quase paralelas que representam as bordas do duto na imagem. A partir da equação das retas pode-se estimar a posição da câmera em relação ao duto. A seguir uma breve descrição dos principais trabalhos neste escopo.
Figura 4 – Exemplos de imagens utilizadas por trabalhos de rastreamento e detecção de dutos em ambiente submarino. Nestas imagens os dutos repousam sobre o chão marinho e podem ser localizados através da detecção das suas bordas que descrevem linhas retas na imagem.
(a)
Fonte: (FORESTI; GENTILI,2000)
(b)
Fonte: (ORTIZ; OLIVER; FRAU,
1997) (c)
Fonte: (KIA; ARSHAD,2006)
Em alguns trabalhos são detectadas as arestas da imagem utilizando o
gradi-ente(NGUYEN; KAOMEA; JR, 1988; ASIF; ARSHAD, 2006), operador LoG (Laplacian
Capítulo 3. Trabalhos relacionados 27
URA, 1999) e filtro de Sobel (NARIMANI; NAZEM; LOUEIPOUR, 2009;ZHANG et al.,
2012). No passo seguinte, aplica-se a transformada de Hough para detectar as bordas do
duto. Em (ZINGARETTI et al., 1996; ZINGARETTI; ZANOLI, 1998) são detectadas
arestas na direção vertical e uma abordagem de subdivisão da imagem é adotada para
localizar apenas as bordas do duto. Enquanto em (GRAU; CLIMENT; ARANDA,1998)
utilizaram-se descritores de textura para detecção das bordas.
Na abordagem proposta por Ortiz (ORTIZ; OLIVER; FRAU, 1997;ORTIZ; SIMÓ;
OLIVER, 2002; ANTICH; ORTIZ,2003) realiza-se uma transformada na imagem para o espaço de {escala de cinza × módulo do gradiente}. A imagem transformada é então segmentada utilizando clusterização e a partir da fronteira das regiões segmentadas são determinados os contornos da imagem. Em uma outra etapa deste processo, realiza-se uma seleção de contornos na forma de linhas retas para determinar as bordas do duto na imagem e estimar sua posição em relação à câmera.
Em (KIA; ARSHAD,2006) utiliza-se uma limiarização a partir de dois thresholds que busca maximizar a área de componentes conexos. A imagem limiarizada será usada como entrada para o sistema de lógica fuzzy que determina um conjunto de pontos característicos do duto. A partir da análise desses pontos obtém-se a direção do duto na imagem.
Em (FORESTI; GENTILI, 2000) é proposto um sistema que utiliza redes neurais para guiar AUV através das arestas do duto e inferir que porção do cabo está sendo observada a partir de objetos característicos (ânodos). Utilizando dois perceptrons
multi-camada (MLP) (RIPLEY,1996), um para detecção de arestas e outro para detecção de
ânodos, os pixels da imagem são classificados como background ou não. Através de uma contagem de pixels executa-se o reconhecimento de linhas e ânodos na imagem. A posição do cabo em relação à câmera pode ser inferida através de um par de retas convergentes que representam as arestas do cabo.
Para rastrear o duto após realizada a detecção do mesmo, muitos trabalhos utilizam
ROI (region of interest), tais como: (ORTIZ; SIMÓ; OLIVER,2002; ORTIZ; OLIVER;
FRAU, 1997;BALASURIYA; URA, 1999), para minimizar o espaço de busca do duto no
quadro seguinte do vídeo. Outra abordagem é a utilização do filtro de Kalman (ORTIZ;
SIMÓ; OLIVER, 2002; ANTICH; ORTIZ,2003; ASIF; ARSHAD, 2006;ZINGARETTI; ZANOLI, 1998; ZHANG et al., 2012) para prever a ROI no próximo quadro ou realizar uma inicialização do algoritmo de rastreamento.
Uma abordagem para detecção de dutos em fábricas é descrita em (THIRION et
al., 2000), e é realizada a partir de um conjunto de imagens de treinamento. Através das
características aprendidas e algumas filtragens, é construído um mapeamento que relaciona cada pixel com a sua probabilidade de pertencer ao duto. Um algoritmo de graph cut é utilizado para segmentar apenas os pixels pertencentes ao duto.
Embora bem-sucedidos, os trabalhos apresentados não se aplicam ao cenário alvo dessa dissertação. Primeiramente, porque os dutos e cabos detectados por esses algoritmos são encontrados apenas através da segmentação de linhas retas, pois possuem um raio de
curvatura muito grande. Em contrapartida, como ilustrado na Figura 3, as arestas dos
dutos tratados nesta dissertação não podem ser aproximadas para retas. Além disso, os algoritmos apresentados se preocupam em localizar a câmera em relação ao duto para auxiliar a navegação de UUV. Para isso o eixo medial do duto é aproximado para uma reta. Esta dissertação, por sua vez, tem um propósito diferente, pois encarrega-se de recuperar a geometria do eixo medial desconsiderando a posição da câmera.
3.3
RECONSTRUÇÃO DE CURVAS
A grande maioria dos algoritmos de reconstrução utiliza correspondências de pontos característicos entre imagens para obter uma estrutura 3D, porém outras primitivas podem ser utilizadas como retas e curvas. A dificuldade na utilização destas outras primitivas é que o estabelecimento de correspondência não é direto como em pontos devido ao problema de abertura (aperture problem). A ideia é que um ponto em uma curva não apresenta características suficientes para poder determinar-se um ponto correspondente em outra curva. Um exemplo deste problema é a impossibilidade de distinguir pontos de uma circunferência entre si, se não forem observados outros fatores como sua vizinhança.
O estabelecimento de correspondência e reconstrução de cônicas como primitivas
foi investigado em (MA, 1993; KAMINSKI; SHASHUA, 2000; QUAN, 1996). Porém o
potencial de representatividade dos distintos tipos de curvas da natureza através das
cônicas é relativamente pequeno. Outra primitiva utilizada são curvas algébricas (LI; MA,
1996; AN; LEE, 1996; KAMINSKI; SHASHUA, 2000). Para reconstruir curvas algébricas
não planares, (KAMINSKI et al.,2001) utilizou as equações de Kruppa. Estas abordagens,
embora sejam reconstruções analíticas, mostram-se muito complexas à medida que o grau da curva aumenta. Além disso, não é obtida uma reconstrução ótima segundo o erro de reprojeção.
Muitos trabalhos usam a seguinte abordagem: através da utilização de detectores de arestas e contornos, são obtidas amostras de pontos da curva na imagem, na qual cada ponto é a projeção de pontos da curva no espaço. Porém em outra imagem da curva dificilmente serão amostrados os mesmos pontos 2D correspondentes com os da primeira imagem. Sendo assim não é possível estabelecer correspondências diretas entre os pontos detectados nas imagens. Neste caso, deve ser realizada uma interpolação de pontos, tentando mitigar o problema da abertura para assim determinar um conjunto de correspondências de pontos. Através da triangulação das correspondências estabelecidas é gerada uma nuvem de pontos que forma a curva no espaço.
Capítulo 3. Trabalhos relacionados 29
Para câmeras calibradas, utiliza-se a intersecção de linhas epipolares com a curva para interpolar correspondências. Porém não é uma tarefa fácil considerando que uma linha epipolar pode intersectar várias curvas. Sendo assim, outros aspectos das curvas e da imagem precisam ser observados para estabelecer as correspondências, como feito em (DERICHE; FAUGERAS, 1990; NASRABADI; LIU; CHIANG, 1988; BRINT; BRADY,
1989; NASRABADI; LIU; CHIANG, 1988;PAJARES; CRUZ; LÓPEZ-OROZCO,2000;
LI; ZUCKER,2006;PORRILL; POLLARD,1991;KEDEM; YARMOVSKI,1996). Dentre os aspectos observados, pode-se citar curvatura e informação de contexto na vizinhança da curva.
Uma dificuldade ao se utilizar a geometria epipolar para este fim é o caso em que a linha epipolar é tangente à curva. Nessa situação é obtida uma singularidade, desde que há várias correspondências de pontos possíveis. Com a finalidade de estabelecer uma medida
de similaridade entre pontos da curva e eliminar a singularidade, (DERICHE; FAUGERAS,
1990; LI; ZUCKER, 2006) utilizou valores de curvatura e (KEDEM; YARMOVSKI, 1996) usou a distância de Hausdorff.
No caso de câmeras não calibradas, o problema é mais desafiador pois as restrições
epipolares precisam ser calculadas. Para isso, (WU; YU, 2005; SHAN; ZHANG, 2002;
JIAN-DONG et al., 2009) utilizaram pontos presentes na imagem ou marcadores para
calibrar as câmeras. Em (SCHMID; ZISSERMAN, 2000;ROBERT; FAUGERAS, 1991;
MAI; HUNG, 2010; KAMINSKI et al., 2001; XIAO; DING; PENG, 2001) é utilizada uma abordagem mais aperfeiçoada, pois estabelece correspondências entre as curvas, realiza
a reconstrução e estima a posição das câmeras. Em (FAUGERAS; PAPADOPOULO,
1993; PAPADOPOULO; FAUGERAS,1996) Faugeras et al descreve o comportamento do campo de movimento da projeção de uma curva 3D na imagem, para determinar
as correspondências e reconstruir curvas no espaço. Alguns trabalhos, como em (SATO;
CIPOLLA, 1998; HONG; MA; YU, 2004), utilizam a premissa de simetria do objeto para estabelecer restrições e realizar a reconstrução.
Métodos que triangulam independentemente correspondências de pontos da curva tendem a ser menos robustos a outliers e podem gerar resultados não suaves devido ao ruído
intrínseco no processo de detecção. Por este fato (BERTHILSSON; ASTROM; HEYDEN,
1999;BERTHILSSON; ÅSTRÖM; HEYDEN,2001;XIAO; LI,2005;XIAO; DING; PENG,
2001) utilizam curvas paramétricas (B-splines e NURBS) como primitivas. Cada ponto na
imagem é a projeção de um ponto 3D parametrizado da curva. Desta maneira, otimiza-se a parametrização dos pontos 3D e o erro de reprojeção através de um algoritmo de bundle adjustment para obter uma reconstrução. Esta abordagem apresenta resultados precisos e estáveis, pois otimiza o erro de reprojeção. Além disso, apresenta uma formulação mais simples das demais abordagens, como curvas algébricas por exemplo. Porém devido ao número de variáveis envolvidas, trata-se de uma solução de custo computacional bastante
elevado. Devido às vantagens apresentadas nesta abordagem, a proposta do algoritmo de
reconstrução dessa dissertação se baseia na técnica de Xiao e Li (XIAO; LI, 2005) que
utiliza NURBS para realizar a reconstrução do eixo medial do duto.
3.4
CONSIDERAÇÕES FINAIS
Este capítulo abordou os principais trabalhos relacionados com esta dissertação de mestrado. Verificou-se que, embora exista na literatura enfoque na reconstrução e no rastreamento de dutos, a estimativa do eixo medial de dutos através de técnicas baseadas em visão computacional não é explorada. Porém o problema de reconstrução de curvas a partir de imagens estéreo é um problema amplamente investigado. Dentre esses trabalhos, destacam-se aqueles que focam na reconstrução estéreo utilizando splines.
Para fornecer os conceitos essenciais para o entendimento da proposta desta dis-sertação, o próximo capítulo apresenta os fundamentos básicos em visão computacional, métodos dos mínimos quadrados e ajuste de curvas.
31
4 FUNDAMENTOS
Neste capítulo serão apresentados os principais fundamentos para contextualizar essa dissertação de mestrado com o objetivo de criar um documento autocontido.
Inicial-mente, a Seção 4.1 descreve a notação matemática utilizada ao longo do trabalho. Em
seguida, a Seção 4.2 explora a geometria projetiva e epipolar em visão computacional,
discutindo-se os principais conceitos para se estudar a geometria em duas vistas.
O modelo de curva utilizado para modelar o eixo medial do duto é discorrido na
Seção 4.3, onde apresenta-se NURBS, generalização de curvas como B-splines e Bézier. A
Seção 4.4 aborda o método dos mínimos quadrados, forma na qual muitos problemas são
modelados, inclusive as técnicas de rastreamento e reconstrução propostas nessa dissertação.
Por fim, a Seção 4.5 combina NURBS e mínimos quadrados para tratar sobre o problema
de ajuste de curvas, problema central no algoritmo de reconstrução de curvas proposto por esta pesquisa.
Para uma leitura mais aprofundada acerca dos assuntos deste capítulo, o autor
recomenda algumas referências: (HARTLEY; ZISSERMAN, 2004) e (SZELISKI, 2010)
ambas contém um rico material sobre geometria em múltiplas vistas e visão computacional.
Quanto a NURBS e ajuste de curvas, recomenda-se os livros (PIEGL; TILLER, 2012)
e (FARIN, 2014), além dos artigos (WANG; POTTMANN; LIU, 2006) e (HARON et
al., 2012). O livro (FLETCHER, 2013) é uma referência tradicional em problemas de
otimização.
4.1
NOTAÇÃO
A notação utilizada ao longo dessa dissertação é similar àquela empregada em (HARTLEY; ZISSERMAN, 2004). Valores escalares são representados através de letras do alfabeto inglês ou grego, maiúsculas ou minúsculas como w, W , θ e γ. Vetores são representados por matrizes colunas e são denotados em negrito, como w, W, θ e γ. Para
enumerar elementos de um vetor, utiliza-se colchetes: x = [x1, x2, x3]>. Matrizes que não
possuem apenas uma coluna serão representadas utilizando letras do alfabeto inglês como Q, q e R.
Notação de funções serão sempre acompanhadas de parênteses e seu parâmetro e retorno seguem a mesma notação acima. Por exemplo N(t) é uma função que recebe um escalar e retorna uma matriz. A função φ(s, t; q) recebe como entrada dois escalares e um vetor e retorna um vetor como resultado.
a parte inteira da parte decimal de um número. Por exemplo, o número 12.34 lê-se doze inteiros e trinta e quatro centésimos.
4.2
VISÃO COMPUTACIONAL
Nesta seção serão abordados os fundamentos de visão computacional com enfoque em geometria epipolar, essencial para formulação de problemas de reconstrução estéreo. Porém, antes é preciso formalizar alguns conceitos básicos da geometria projetiva e geometria para uma única vista.
4.2.1
Geometria Projetiva
A forma mais comum de representar pontos em um plano ou no espaço é através da geometria euclidiana. Porém esta geometria apresenta alguns desafios para modelar as transformações que uma câmera realiza ao projetar pontos do espaço em uma imagem. Dentre estes desafios, podemos citar a difícil representação da intersecção de retas paralelas. Outro problema é que o espaço euclidiano não é invariante para transformações projetivas. Por estes motivos, a geometria projetiva se torna mais atrativa. A representação em coordenadas homogêneas e a dualidade entre pontos e retas permitem a simplificação de muitos cálculos em relação à geometria euclidiana.
4.2.1.1 Coordenadas homogêneas
Em coordenadas homogêneas pontos e retas são representados através de vetores.
Um ponto [x, y]> no espaço euclidiano é definido em coordenadas homogêneas como o
vetor x = kx ky k , (4.1)
em coordenadas homogêneas, onde k é um número real diferente de 0. Observe que há uma variedade de vetores que representam um mesmo ponto, e para cada representação
atribui-se um valor de escala k diferente. De forma similar, um ponto [x, y, w]> em coordenadas
homogêneas é mapeado para o espaço euclidiano através da divisão [x/w, y/w]>.
Uma reta que contém o ponto x = [x, y, w]> definida pela equação ax + by + cw = 0
pode ser representada pelo vetor
l = a b c , (4.2)
obtendo assim a relação
Capítulo 4. Fundamentos 33
A partir da Eq.4.3, é determinada a intersecção entre duas retas l e l0 como l × l0.
De forma similar, a reta que passa pelos pontos x e x0 é calculada como x × x0.
A intersecção de retas paralelas no espaço euclidiano possui uma representação na geometria projetiva e é dada pelos pontos com coordenada w = 0. Os pontos em que w = 0 são chamados de pontos no infinito e formam a reta do infinito [0, 0, c]>. Note que o
produto [0, 0, c][x, y, 0]> = 0, ou seja, pontos no infinito pertencem à reta do infinito. Uma
interpretação para o espaço projetivo é que ele é a composição do espaço euclidiano com a reta do infinito.
Até então foi descrita a geometria projetiva planar, denotada por P2. De forma
análoga podemos definir P3 de modo que um ponto é representado por quatro coordenadas
[x, y, z, w]> e o vetor [a, b, c, d]> corresponde a um plano.
4.2.1.2 Transformações projetivas
As transformações projetivas ou homografias representam as perspectividades, ou seja, o efeito produzido ao se observar uma cena de um único ponto. Para transformar um
ponto x em x0 através da homografia H, utiliza-se a relação
x0 = h11 h12 h13 h21 h22 h23 h31 h32 h33 x = Hx, (4.4)
onde x em x0 são expressos em coordenadas homogêneas e pertencem ao P2. Como x e x0
estão descritos em coordenadas homogêneas, a igualdade da Eq. 4.4 é verdadeira a menos
de uma escala.
A homografia consiste em uma transformação linear no espaço projetivo, porém ao mapear o ponto para coordenadas não homogêneas, realiza-se uma operação de racio-nalização (divisão por w). Logo, homografias são transformações não lineares no espaço euclidiano. Por fim, homografias preservam apenas a razão de razões (cross ratio) de comprimentos em uma linha.
Um subconjunto das homografias são as afinidades, que apresentam comportamento
linear no espaço euclidiano. Um mapeamento afim HA que mapeia o ponto x em x0 é
escrito como x0 = h11 h12 h13 h21 h22 h23 0 0 1 x = HAx. (4.5)
As afinidades englobam translações, reflexões, escalas, rotações e cisalhamentos. Estas transformações não preservam ângulos e distância entre dois pontos, porém preservam o paralelismo entre retas e a razão de comprimentos e áreas.
Embora as transformações apresentadas correspondam ao P2, elas são facilmente
generalizadas para o Pn, mantendo todas as propriedades citadas anteriormente.
4.2.2
Modelo de câmera pinhole
Matematicamente, uma imagem é formada através da projeção de pontos 3D, pertencentes a um objeto, por exemplo, em pontos 2D da imagem. O modelo de projeção que se aplica à grande maioria das câmeras existente é o modelo pinhole. Neste modelo os pontos são projetados sobre o plano de projeção segundo a igualdade a menos de uma escala
x = KR[I| − C]X = PX, (4.6)
onde x é o ponto da imagem e X é o ponto no espaço 3D, ambos em coordenadas homogêneas. A matriz P é chamada de matriz de projeção por encapsular toda informação necessária para projetar um ponto na imagem e pode ser decomposta nas matrizes K, R e no vetor C.
A matriz R e o vetor C são chamados de parâmetros extrínsecos da câmera e determinam a posição e orientação da câmera no espaço. R é uma matriz de rotação 3 × 3 e o vetor C corresponde ao centro de câmera. O conjunto dessas duas informações também é chamado de pose. O vetor de translação t = −RC representa o centro de câmera expresso no sistema de coordenadas de câmera.
A matriz K encapsula os parâmetros intrínsecos da câmera na forma
K = fx 0 xc 0 fy yc 0 0 1 . (4.7)
O foco é a distância entre o plano de projeção e o centro da câmera. Como muitas câmeras
não possuem os pixels quadrados, utiliza-se um valor de foco fx no eixo x diferente do
foco fy no eixo y. A interseção entre o eixo ótico (dado pela última linha de R) e o plano
de projeção determina o ponto [xc, yc]>, chamado de ponto principal.
As câmeras convencionais possuem um conjunto de lentes pelas quais os raios de luz refratam. A variação da direção dos raios de luz provocam efeitos de distorção radial e
tangencial na imagem, que apresentam comportamento não linear (SZELISKI, 2010). A
abordagem convencional para tratar estas distorções é removê-la a partir da calibração dos parâmetros de distorção e assim obter uma imagem que segue o modelo pinhole.
4.2.3
Geometria epipolar
A geometria epipolar descreve as propriedades geométricas existentes entre duas imagens da mesma cena. Ela é independente dos pontos que formam a cena, mas dependente dos parâmetros intrínsecos e extrínsecos das câmeras.
Capítulo 4. Fundamentos 35
As propriedades epipolares entre duas imagens é encapsulada em uma matriz F 3 × 3 de posto 2 chamada de matriz fundamental. Dado um ponto 3D X projetado na
primeira imagem em x e na segunda imagem em x0, ambos em coordenadas homogêneas,
é sempre respeitada a seguinte relação
x0>Fx = 0. (4.8)
A matriz fundamental também mapeia pontos da primeira imagem em linhas na segunda imagem e vice-versa. Estas linhas são denominadas linhas epipolares. Dado a linha
epipolar l0 = Fx na segunda imagem, o ponto x0 pertence a l0 já que x0>l0 = x0>Fx = 0.
De forma análoga, podemos definir l = F>x0 como a linha epipolar na primeira imagem.
4.2.4
Retificação estéreo
Retificação de imagens estéreo é muito utilizada em problemas de estabelecimento de correspondência estéreo. O procedimento de retificação garante que os pontos
corres-pondentes x = [x, y, 1]> e x0 = [x0, y0, 1]> em cada imagem sejam sujeitos a
y = y0. (4.9)
Em uma imagem digital é análogo dizer que os pontos x e x0 estarão na linha da matriz
de pixels de mesmo índice. A retificação simplifica o estabelecimento de correspondências estéreo, pois facilita o processo de busca em uma dimensão.
Retificação estéreo consiste na transformação da primeira e segunda imagens pelas homografias retificantes H e H0, respectivamente. Duas imagens são ditas retificadas se a matriz fundamental entre as imagens for igual a
¯ F = 0 0 0 0 0 1 0 −1 0 . (4.10)
Observe que x0>Fx = y¯ 0− y = 0, corroborando assim a igualdade da Eq. 4.9.
Os algoritmos para calcular as homografias retificantes se dividem em duas classes: calibrados e não calibrados. Aqueles que possuem o conhecimento da calibração das câmeras
a priori são denominados calibrados, como (FUSIELLO; TRUCCO; VERRI, 2000). Os
algoritmos não calibrados utilizam correspondências estéreo para estimar as homografias,
como (FUSIELLO; IRSARA, 2008; HARTLEY, 1998; LOOP; ZHANG, 1999). Como no
escopo deste trabalho, o par estéreo utilizado é previamente calibrado, aplica-se a primeira classe de algoritmos.
4.2.5
Relação entre projeções de pontos coplanares
Se um conjunto de pontos 3D pertencem a um plano π, suas projeções na primeira e segunda imagem são relacionadas por uma homografia H. Ou seja, dado o ponto x na
primeira imagem e x0 na segunda, obtemos a relação
x0 = Hx. (4.11)
Essa propriedade é explorada amplamente em rastreamento de planos, onde o movimento da câmera é estimado a partir da homografia entre planos correspondentes em duas imagens (DAME; MARCHAND, 2010; BENHIMANE; MALIS, 2004).
A homografia H pode ser determinada através do plano e das matrizes de projeção das câmeras segundo a equação
H = K0R − tn>/dK−1, (4.12)
onde π = [n>, d]> corresponde ao plano e as matrizes de projeções da câmera esquerda e
direita são dadas respectivamente por K[I|0] e K0[R|t].
Um caso particular da matriz H é obtido quando as imagens estão retificadas. Dada
a restrição epipolar na Eq. 4.8, temos que
x0>Fx =
(Hx)>Fx =
x>H>Fx = 0.
(4.13)
Se os pontos x e x0 tiverem sido retificados, a matriz fundamental é dada por ¯F na Eq.
4.10. Sendo a matriz H formada por elementos h1, . . . , h9 (como na Eq. 4.4), é estabelecido
a partir da Eq. 4.13 que
−h7xy − h8y2− h9y + h4x + h5y + h6 = 0, (4.14)
onde x = [x, y, 1]>.
Para satisfazer a Eq. 4.14, para todo x e y pertencentes a R é necessário que
h4 = h6 = h7 = h8 = 0, h9 = h5 e os valores de h1, h2 e h3 sejam livres. Dessa forma, a
homografia que relaciona as projeções de pontos de um plano quando as imagens estão retificadas tem a forma
H = a b c 0 1 0 0 0 1 , (4.15)
onde h1, h2 e h3 foram substituídos por a, b e c, respectivamente. Logo, neste caso, H é
uma transformação afim que modifica apenas a coordenada x de um ponto.
Essa particularidade é explorada no Capítulo6para relacionar os pontos da projeção
do EMD, que é uma curva planar, nas duas imagens. Esta curva por sua vez é modelada como uma NURBS.