Essa resposta chega um pouco tarde, mas acho que é necessário esclarecer um pouco da confusão sobre o que é a estrutura própria de um Laplaciano e como é calculada.
Antes de tudo, é importante enfatizar que não se trata de propriedades do kernel local usado para calcular derivadas discretas. Em vez disso, você precisa entender o Laplaciano como operador linear em um espaço vetorial cujos elementos são, no seu caso, os conjuntos de dados volumétricos.
Isso significa que a aplicação do operador Laplace é um mapa linear que mapeia um vetor (conjunto de dados) para outro vetor (conjunto de dados). Nesse contexto, os vetores próprios do Laplaciano são novamente vetores (conjuntos de dados) no mesmo espaço vetorial. Portanto, a resposta para sua pergunta seria um conjunto de conjuntos de dados volumétricos, na verdade até a dimensão do seu espaço vetorial (ou seja, o número de voxels independentes ).
Vamos considerar um exemplo muito simples. Tire uma imagem unidimensional, ou seja, uma única linha de pixels, e vamos usar apenas muito poucos pixels, ou seja, 4. Então, os dois pixels centrais precisam direcionar os vizinhos, enquanto o primeiro e o último pixel têm apenas um vizinho cada.
1 - 2 - 3 - 4
Com essa geometria de pixels, podemos fornecer o resultado discreto do operador Laplace para os dois pixels centrais 2 e 3 como funções lineares dos valores dos pixels:
l [ 2 ] = p [ 1 ] - 2 ∗ p [ 2 ] + p [ 3 ]
l [ 3 ] = p [ 2 ] - 2 ∗ p [ 3 ] + p [ 4 ]
Os outros dois pixels 1 e 4 não têm vizinhos diretos suficientes para calcular a segunda derivada discreta. Poderíamos consertar isso assumindo que os pixels 1 e 4 são vizinhos diretos, fechando a topologia em um círculo e impondo o que é chamado de condição de contorno circular. Ou simplesmente pegamos os segundos derivativos nos limites para desaparecer. Vamos fazer as duas coisas, mas comece com a condição de contorno cíclico. Então nós temos:
l [ 1 ] = p [ 4 ] - 2 ∗ p [ 1 ] + p [ 2 ]
l [ 4 ] = p [ 3 ] - 2 ∗ p [ 4 ] + p [ 1 ]
Este mapa é linear e podemos escrevê-lo como uma equação matricial, mapeando o vetor da coluna p : = ( p [ 1 ] , p [ 2 ] , p [ 3 ] , p [ 4 ] ) para l = ( L [ 1 ] , L [ 2 ] , L [ 3 ] , L [ 4 ] ) por multiplicação com a matriz M.
L = M⋅ p
Chamamos essa matriz de representação discreta do operador Laplace e, para o nosso caso, é
M=⎛⎝⎜⎜⎜- 21 10 01 11 1- 21 10 00 01 1- 21 11 10 01 1- 2⎞⎠⎟⎟⎟
Os autovetores dessa matriz são
v1 1= ( - 1 , 1 , - 1 , 1 )
v2= ( 0 , - 1 , 0 , 1 )
v3=(−1,0,1,0)
v4=(1,1,1,1)
com os autovalores associados
λ1=4,λ1=2,λ1=2,λ1=0
Você pode reconhecer esses vetores como o vetor base da transformada de Fourier discreta nesse vetor e os valores próprios como suas frequências discretas. Isso é verdade em geral e, de fato, a decomposição de um vetor (ou mais geralmente, uma função) no espectro eigens de um operador de Laplace generaliza a idéia da transformação de Fourier.
Agora vamos investigar o que acontece se usarmos as condições de contorno alternativas em que l[1]=0 e l[4]=0. O MatrixM é então
M=⎛⎝⎜⎜⎜01000−21001−200010⎞⎠⎟⎟⎟
Certamente, essa matriz tem um conjunto diferente de vetores próprios e valores próprios. Eles não são tão intuitivos e interessantes, então não os listarei explicitamente. No entanto, vale a pena notar que agora obtemos o valor próprio0 duas vezes, isso significa que o espaço próprio onde o laplaciano desaparece é bidimensional.
Então, como as coisas mudam se tivermos uma imagem adequada em vez de uma única linha de pixels? Não muito. Precisamos apenas escrever o Laplaciano para cada pixel único, considerando a relação direta com o vizinho, ou topologia, da imagem. Para tornar as coisas um pouco mais complicadas, vamos com uma imagem bidimensional de formato irregular.
4|9−−1|5|10|14−−−−2|6|11|15−−−−3|7|12|16−−8|13
Obviamente agora temos que pegar um laplaciano bidimensional somando as segundas derivadas parciais nas direções horizontal e vertical. Para isso, exigimos os dois vizinhos diretos em cada direção. Os pontos internos5,6,7,10,11,12portanto, possui uma expansão laplace 2-d completa. Para ponto5 fica assim por exemplo:
l[5]=p[4]−2p[5]+p[6]+p[1]−2p[5]+p[10]=p[4]+p[6]+p[1]+p[10]−4p[5]
Para os pontos de canto 1,3,4,8,9,13,14,16 como não podemos construir uma segunda derivada discreta, usamos uma condição de contorno, por exemplo l[1]=0
Restam dois pontos, 2 e 15. Ambos têm dois vizinhos diretos na direção horizontal, mas não na direção vertical. Podemos, portanto, aplicar uma condição de contorno que afeta apenas a direção vertical, definindo a segunda derivada vertical como zero, enquanto avaliamos a segunda derivada discreta horizontalmente e obtemosl[2]=p[1]−2p[2]+p[3] e da mesma forma para l[15].
Após essa construção, obtemos uma equação linear para cada ponto que a relaciona aos valores de pixel. Novamente, escrevemos como uma equação matricialL=Mp, onde a matriz neste caso tem 16×16entradas. Para ser específico, é
M=⎛⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜01001000000000000−200010000000000010000100000000000001000000000000000−41000100000000001−41000100000000001−400001000000000010000000000000000001000000000010000−41000000000010001−41000000000010001−400000000000000010000000000000100001000000000001000−200000000000010010⎞⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟
E, novamente, podemos resolver o sistema próprio dessa matriz. Uma boa interpretação física das imagens que você obtém como autovetores é que elas representam os modos vibracionais de uma membrana em forma de imagem, com frequências dadas pelos valores próprios.
Você pode facilmente escalar este jogo para qualquer número de dimensões, desde que conheça as relações de vizinhança entre seus voxels. Simplesmente formule a equação linear individual como acima, construa uma matriz, encontre o sistema próprio.
Com as informações obtidas dos vetores próprios do Laplaciano, as equações das diferenças envolvendo o Laplaciano discreto podem ser bastante simplificadas. Uma vez que a estrutura própria é encontrada, dependendo apenas da geometria da região, todos os conjuntos de dados podem ser facilmente decompostos na base própria e as equações das diferenças se tornam triviais.