Recentemente, comecei a usar momentos de imagem para o processamento de imagens binárias. Eu li que o momento do contorno da ordem de é o perímetro e o momento da área da ordem de é a área . Esses momentos brutos são dados por:
.
Isso significa que se eu tiver uma imagem como esta (mas os pixels binários em primeiro plano mostrados em azul), o momento corresponderá ao perímetro, pois é uma imagem de um contorno :
Por outro lado, se eu tiver uma imagem como esta (primeiro plano mostrado como while), obterá a área do objeto como o momento:
Como quero usar os contornos para obter mais propriedades, também calculo o momento do contorno bruto da ordem mais alta ( , , ) . Eu quero usá-los para obter os momentos centrais.
As fórmulas que estou usando para obter os momentos centrais são:
Além disso, posso calcular os momentos centrais com base nos momentos brutos do contorno ?
fonte
Respostas:
Na verdade, fiquei surpreso com o quão difícil foi deduzir uma definição adequada de contorno versus momentos "normais" e sem contorno de uma imagem. Depois de ler um monte de materiais, aqui estão minhas conclusões.
Primeiramente, para entender os momentos , e especialmente a diferença e o uso de momentos normalizados espaciais (o que o OP chama de "brutos"), centralizados e centralizados , encontrei dois materiais muito bons:
(manual) Johannes Kilian: "Análise simples de imagens por momentos"
Excelente manual com matemática simples. Não se assuste com as integrais - você pode ler todas elas como resumos.
Além disso, possui uma pequena visão geral das funções OpenCV usadas para operar com esses momentos. Como o material é muito antigo (2001), o manual do OpenCV a que se refere é um pouco antigo, mas ainda ajuda.
E há o maravilhoso terceiro capítulo, especificando qual momento é usado para descrever qual característica de um momento.
(blog de processamento de imagem) Utkarsh: momentos da imagem
Simples, curto e amigável. Eu encontrei muito material bom neste blog antes.
Isenção de responsabilidade O AI Shack parecia estar offline em algum momento. Aqui está a página inicial do autor do AI Shack , onde ele fala sobre esse projeto, por isso ainda parece ser suportado. Espero que volte a ficar on-line em breve, mas se não, talvez possa ser rastreado na página do autor.
Em pouco tempo, os momentos espaciais fornecem informações sobre o objeto na imagem , isto é, relacionadas (dependentes) da posição do objeto .
Os momentos centrais são ajustados para a invariância da tradução , movendo a origem do "sistema de coordenadas" usado nos cálculos para o centróide (centro de gravidade) do objeto em questão.
Finalmente, os momentos normalizados centrais são dimensionados pela área do objeto e, portanto, são invariáveis em escala , além da invariância translacional.
Agora, para a parte da pergunta real: e os momentos de contorno?
As deduções desta parte são baseadas principalmente em
Gary Bradski, Adrian Kaehler: "Aprendendo o OpenCV: Visão por Computador com a Biblioteca OpenCV"
(O link é para o google books, mas as páginas relevantes são acessíveis. A seção que eu vinculei e as próximas 2 a 3 seções são relevantes. Isso significa cerca de 3 páginas no total)
E as citações mais importantes dessas fontes:
(Manual de referência OpenCV)
(wiki para verde)
(Livro de Bradski Kaehler)
Com base nisso, deduziria que os momentos do contorno não se referem a medidas especiais dos contornos do objeto, mas a uma maneira específica de calcular os momentos da imagem , usando apenas as informações do contorno (em vez das informações de pixel para toda a imagem).
A diferença, no caso fundamental, seria como ambos são calculados.
Isso tornaria as medidas ligeiramente diferentes para imagens reais, porque os métodos difeririam em: sensibilidade a: ruído, escala, discretização (grade de pixels em vez de imagem contínua). Além disso, a velocidade : calcular usando contornos é mais rápido do que usar a abordagem direta. Eu especularia que eles dariam resultados perfeitamente iguais para uma imagem em preto e branco contínua (idealizada) sem ruído.
Portanto, para responder às suas perguntas: os momentos devem ser os mesmos (diferentes por causa do barulho, etc.). Você pode usar momentos espaciais (brutos) calculados pelos dois métodos para determinar momentos centrais (que ainda descreverão a mesma coisa).
Um suporte adicional a essas alegações é a existência deste artigo (apenas li o resumo, mas deve ser muito relevante e até o resumo é informativo) de 1994:
É claro que todas as medidas adicionais difeririam se você usasse esse momento ainda mais.
fonte
Independentemente de momentos de contorno ou de área, momentos centrais significam momentos que são computados em um quadro de referência centralizado, ou seja, um quadro centralizado na média do seu fenômeno.
Também relacionada, esta pergunta sobre vocabulário.
fonte