Por que a diferença de escala gaussiana é invariável?

15

Vou usar o recurso Escala invariante transformar algoritmo como um exemplo aqui. SIFT cria um espaço de escala com base na filtragem gaussiana em escala de uma imagem e calcula a diferença de gaussianos para detectar possíveis pontos de interesse. Esses pontos são definidos como mínimos locais e máximos na diferença de gaussianos.

Alega-se que essa abordagem é invariável em escala (entre outras invariâncias intrigantes). Por que é isso? Não está claro para mim por que esse é o caso.

água
fonte
Não sei o que é SIFT, encontrei isso no wiki en.wikipedia.org/wiki/Scale-invariant_feature_transform . "O método de Lowe para geração de recursos de imagem transforma uma imagem em uma grande coleção de vetores de recursos, cada um dos quais é invariável para tradução, redimensionamento e rotação de imagens, parcialmente invariável às mudanças de iluminação e robusto à distorção geométrica local". Essa é a explicação?
Niaren 11/11
Sim, é disso que estou falando
water
SIFT usa a teoria de escala-espaço. No entanto, não entendo o que se entende por invariância de "escala" nessa teoria. Você pode tentar a leitura de artigos de Tony Lindeberg nisso: csc.kth.se/~tony/earlyvision.html
maximus

Respostas:

7

O termo "invariável à escala" significa o seguinte aqui. Digamos que você tenha a imagem I e tenha detectado um recurso (também conhecido como ponto de interesse) f em algum local (x, y) e em alguns níveis de escala s . Agora, digamos que você tenha uma imagem I ' , que é uma versão em escala de I (redução da amostra, por exemplo). Então, se o seu detector de característica for invariável à escala, você poderá detectar a característica correspondente f ' em I' no local correspondente (x ', y') e na escala correspondente s ' , onde (x, y, s) e (x ', y', s ') são relacionados pela transformação de escala apropriada.

Em outras palavras, se o seu detector invariável em escala detectou um ponto de recurso correspondente ao rosto de alguém e, em seguida, você aumenta ou diminui o zoom com a câmera na mesma cena, você ainda deve detectar um ponto de recurso nesse rosto.

Obviamente, você também desejaria um "descritor de recursos" que permitisse combinar os dois recursos, exatamente o que o SIFT oferece a você.

Portanto, correndo o risco de confundi-lo ainda mais, há duas coisas que são invariáveis ​​em escala aqui. Um é o detector de ponto de interesse do DoG, que é invariável à escala, porque detecta um tipo específico de recurso de imagem (blobs), independentemente da sua escala. Em outras palavras, o detector DoG detecta bolhas de qualquer tamanho. A outra coisa invariante na escala é o descritor de recursos, que é um histograma de orientação de gradiente, que permanece mais ou menos semelhante para o mesmo recurso de imagem, apesar de uma mudança na escala.

A propósito, a diferença de gaussianos é usada aqui como uma aproximação ao filtro Laplaciano de Gaussiano.

Dima
fonte
Você pegou algumas informações da teoria do espaço de escala. Você pode descrever a explicação do que exatamente acontece na comparação de dois sinais usando a teoria de escala-espaço? O Lindeberg, em seus artigos: csc.kth.se/~tony/earlyvision.html, fez alguns exemplos de detecção de bolhas, etc. Como na verdade a obtenção de derivada pelo parâmetro scale ajuda na invariância da escala?
Maximus
Você está certo. Eu estava apenas tentando descrever a intuição por trás da teoria do espaço-escala. O que você está perguntando deve ser uma pergunta separada. :) Eu acho que o que você está falando é que derivativos tomados em escalas diferentes devem ser normalizados adequadamente. À medida que você escala mais grossa, o sinal é suavizado, diminuindo a amplitude. Isso significa que a magnitude dos derivativos também é reduzida. Assim, para comparar a resposta derivada entre as escalas, você precisa multiplicá-las por
Dima
o poder apropriado de sigma: primeira derivada por sigma, segundo por sigma ^ 2, etc. #
Dima
@ maximus, oops, eu nevoeiro o @. :)
Dima
Obrigado por sua resposta! Isso me ajudou, mas ainda há algumas perguntas que eu fiz como uma pergunta diferente aqui: dsp.stackexchange.com/questions/570/…
maximus
5

A diferença de gaussianos não é invariável em escala. SIFT (em grau limitado) invariante na escala, porque procura o DOG extremo em todo o espaço da escala - ou seja, encontrar escala no DoG extremal, tanto espacial quanto relativamente às escalas vizinhas. Como o DoG de saída é obtido para essa escala fixa (que não é uma função da escala de entrada), o resultado é independente da escala, ou seja, invariável na escala.

mirror2image
fonte
11
Certo. Mas ele procura apenas extremos em escalas vizinhas . Isso não é tudo, a menos que eu esteja enganado. Mesmo que fosse todas as escalas, ainda não está claro como ele de escala independente
água
@water, isso é exatamente correto. Você não quer um extremo em todas as escalas, deseja extremos locais. Isso permite detectar estruturas aninhadas, por exemplo, um pequeno círculo escuro dentro de um grande círculo brilhante sobre fundo cinza.
Dima
O Dog é usado em vez do LoG porque é mais rápido calcular o Dog.
maximus