• Nenhum resultado encontrado

Deteção das características

No documento Scanner a 3D (páginas 77-81)

3. Fundamentos teóricos

3.7 Deteção das características

Os descritores de características (features) são representações de um determinado ponto ou posição tridimensional no espaço, eu descrevem padrões geométricos com base nas informações disponíveis em torno do ponto [79]. Uma boa representação de uma característica de um determinado ponto difere de uma má representação, por ser capaz de capturar as mesmas características locais da superfície na presença de [107]:

1. Transformações rígidas: rotações e translações 3D no conjunto de dados não devem influenciar a estimativa do vetor de características F;

2. Densidade de amostras variável: uma amostra da superfície mais ou menos densa deve ter a mesma assinatura no vetor de características;

3. Ruído: a representação da característica de um ponto deve manter os mesmos ou valores muito semelhantes no vetor de características na presença de ruído leve no conjunto de dados.

O PFH (Point Feature Histograms) e FPFH (Fast Point Feature Histograms) são os dois métodos mais amplamente utilizados para deteção de características geométricas de um ponto, sendo estimados a partir da curvatura e da nomal da superfície adjacente a um certo ponto. Ambos são considerados detetores de características locais, pois caracterizam um ponto utilizando a informação fornecida pelos seus vizinhos mais próximos. Para determinar a sua vizinhança de forma eficiente, o conjunto de dados é normalmente dividido em conjuntos menores usando técnicas de decomposição espaciais como octrees e kdtrees [79].

Nesta secção são descritos dois algoritmos de deteção de características geométricas locais, o PFH e o FPFH, e para complementar estes dois algoritmos é descrito inicialmente o método de estimação das normais da superfície (Normal Estimation).

3.7.1 Estimativa das normais da superfície

A estimação das normais da superfície é uma propriedade importante de uma superfície geométrica, e são vastamente utilizadas em aplicações de computação gráfica, por exemplo para determinar a orientação de um sistema de coordenadas ou para aplicar as fontes de luz corretas que originam sombras e outros efeitos visuais. O problema de determinar a normal a um certo ponto da superfície é aproximado pelo problema de estimação da normal de um plano tangente à superfície, que por sua vez representa um problema de mínimos quadrados da estimação do plano em 𝑃𝑘. O plano é representado por um ponto x e por um vetor normal 𝑛⃗ , sendo a distância a partir do ponto 𝑝𝑖 ∈ 𝑃𝑘 para o plano definida como 𝑑

𝑖 = (𝑝𝑖− 𝑥) ∗ 𝑛⃗ . Os

valores de x e 𝑛⃗ são calculados no sentido de mínimos quadrados, de modo a que 𝑑𝑖 = 0,

assumindo que:

𝑥 = 𝑝̅ = 1

𝑘∗ ∑ 𝑝𝑖

𝑘

𝑖=1

é o centroide de 𝑃𝑘 , a solução para 𝑛⃗ é conhecida através da análise dos valores e vetores

próprios da matriz de covariância 𝐶 ∈ ℝ3∗3 de 𝑃𝑘, expressa da seguinte forma:

𝐶 =1 𝑘∑ 𝜉𝑖 𝑘 𝑖=1 ∗ (𝑝𝑖− 𝑝̅) ∗ (𝑝𝑖 − 𝑝̅)𝑇, 𝐶 ∗ 𝑣 𝑗 ⃗⃗⃗⃗ = 𝜆𝑗∗ 𝑣⃗⃗⃗⃗ , 𝑗 ∈ {0, 1, 2} 𝑗

onde k é o número de pontos vizinhos considerados na vizinhança de 𝑝𝑖 e 𝑝 representa o centroide 3D dos vizinhos mais próximos. 𝜆𝑗 e 𝑣⃗⃗⃗⃗ é o valor próprio e vetor próprio do elemento 𝑗

j da matriz de covariância, respetivamente. O termo 𝜉 representa um possível peso de 𝑝𝑖 e, normalmente é igual a 1. Se 0 ≤ 𝜆0 ≤ 𝜆1 ≤ 𝜆2, o vetor próprio 𝑣⃗⃗⃗⃗ corresponde ao valor próprio 0

mais pequeno 𝜆0 , portanto é aproximadamente +𝑛⃗ = {𝑛𝑥, 𝑛𝑦, 𝑛𝑧} ou −𝑛⃗ [107], [117].

(3.10)

3.7.2 PFH (Point Feature Histograms)

O objetivo do descritor PFH consiste em codificar as propriedades geométricas da vizinhança de um determinado ponto generalizando a curvatura em redor do ponto utilizando histogramas de valores multi-dimensionais [118]. A representação de um descritor PFH é baseada na relação entre os pontos da vizinhança e nas normais da superfície estimadas. A computação deste descritor é feita da seguinte forma [119]:

1. Para cada ponto 𝑝𝑞, todos os pontos vizinhos que se encontrem dentro de uma esfera de

raio r são selecionados (vizinhança) (Figura 38);

2. Para cada par de pontos 𝑝𝑖 e 𝑝𝑗 (𝑖 ≠ 𝑗) dentro da vizinhança do ponto 𝑝𝑞, e as suas

normais associadas 𝑛𝑖 e 𝑛𝑗, é definido um sistema de coordenadas fixo para um dos

pontos, assumindo que: a. 𝑢 = 𝑛𝑖

b. 𝑣 = (𝑝𝑗− 𝑝𝑖) ∗ 𝑢 c. 𝑤 = 𝑢 ∗ 𝑣

3. Por fim, para cada par de pontos dentro da vizinhança é calculado as variações angulares de 𝑛𝑖 e 𝑛𝑗 da seguinte forma:

a. 𝛼 = 𝑣 ∗ 𝑛𝑗

b. ∅ = (𝑢 ∗ (𝑝𝑗− 𝑝𝑖))/‖𝑝𝑗− 𝑝𝑖‖

c. 𝜃 = arctan (𝑤 ∗ 𝑛𝑗, 𝑢 ∗ 𝑛𝑗)

3.7.3 FPFH (Fast Point Feature Histograms)

A complexidade computacional do método de deteção de características PFH para uma determinada nuvem de pontos P composta por n pontos é definida por 𝑂(𝑛 ∗ 𝑘2), onde k representa o número de vizinhos para cada ponto p da nuvem de pontos P. Uma otimização simples deste processo consiste em armazenar os valores dos descritores de características (features) e reordenar o conjunto de dados da nuvem de pontos de forma que a realização de pesquisas num grupo de dados se torne mais rápida do que o processo de recalcular esses valores. Para aplicações em tempo real ou perto disso, o cálculo dos descritores das características recorrendo ao método PFH em vizinhanças densas pode representar um grande problema [119].

Este método, FPFH (Fast Point Feature Histograms), representa um modelo simplificado que reduz o custo computacional do algoritmo para 𝑂(𝑛 ∗ 𝑘), enquanto mantem a maior parte do poder discriminativo do método PFH. Para simplificar o processo de deteção de características, procede-se do seguinte modo:

1. Para cada ponto 𝑝𝑞, calcula-se as variações angulares (𝛼, ∅, 𝜃) entre si e os seus

vizinhos, tal como foi mencionado no método PFH. Este passo é denominado SPFH (Simplified Point Feature Histogram);

2. Para cada ponto, os seus vizinhos são recalculados, e os valores do SPFH são utilizados para pesar o histograma final de 𝑝𝑞 (denominado FPFH), da seguinte forma:

𝐹𝑃𝐹𝐻 (𝑝𝑞) = 𝑆𝑃𝐹𝐻 (𝑝𝑞) + ∑

1

𝜔𝑘∗ 𝑆𝑃𝐹𝐻 (𝑝𝑘) 𝑘

𝑖−1

onde o peso 𝜔𝑘 representa a distância entre o ponto 𝑝𝑞 e um ponto vizinho 𝑝𝑘 num dado

espaço métrico. Para melhor compreender a importância deste sistema, a Figura 39 representa o diagrama da região de influência de uma vizinhança a partir do ponto 𝑝𝑞[107], [119], [120].

Figura 39: Diagrama da região de influência para o FPFH [107]

3.7.4 Diferenças entre PFH e FPFH

As principais diferenças entre o método PFH e FPFH são descritos de seguida:

O método FPFH não consegue interligar todos os vizinhos do ponto 𝑝𝑞. A ausência de alguns destes pares pode influenciar a captura geométrica em torno do ponto 𝑝𝑞;

Os modelos PFH são precisamente determinados em torno do ponto 𝑝𝑞, enquanto o FPFH inclui pares de pontos adicionais fora da esfera de raio r (no máximo 2r);

Devido ao esquema de reponderação, o FPFH combina os valores SPFH e volta a determinar os valores de alguns dos pares de pontos vizinhos [107].

No documento Scanner a 3D (páginas 77-81)