Cómo lidiar con la oclusión, deformación o distorsión de perspectiva para la detección de objetos

SIFT no me pareció tan robusto para detectar un objeto tan deformado y generalmente ocluido como un logotipo.

¿Consideraría usar Modelos de piezas deformables (DPM) propuestos por Pedro Felzenswalb?

Los modelos de piezas deformables modelan un objeto como la suma de las deformaciones geométricas del mismo. Así que tome el modelo de persona, por ejemplo:

Una persona es un objeto absolutamente deformable ya que tendemos a mover las partes de nuestro cuerpo, sin embargo, esto no nos hace menos humanos (una geometría menos rígida :))

En su caso, los logotipos están deformados por las personas que lo usan, por lo que creo que se puede aplicar una intuición similar aquí.

El documento está aquí: Modelos de piezas deformables discriminadamente capacitados (Versión 5)

Si tiene problemas de escala y desea evitar un lenguaje de script como Matlab, DPM también tiene una implementación de OpenCV: SVM latente – documentación de OpenCV 2.4.9.0

Pero esta implementación es solo para pruebas (no para capacitación, que es su caso). Sin embargo, entrenaría mi modelo DPM usando Matlab y convertiría este modelo (que es básicamente un archivo .mat) a un archivo .xml apropiado (obedeciendo la estructura de los archivos .xml fácilmente disponibles en OpenCV), luego usaría este modelo para probar mi modelo en imágenes usando OpenCV.

Una implementación alternativa de C, que no probé, también está aquí:
DPM: modelo de piezas deformables

More Interesting

¿Cuáles son las ventajas y desventajas de cada método de regresión no lineal existente?

¿Cómo podemos hacer que las redes profundas funcionen de manera eficiente en dispositivos de baja potencia (por ejemplo, teléfonos)?

¿Hay alguien aquí que pueda darme una lib correcta para R-Tree en Java?

¿Qué significa 'alineado suavemente' en un contexto de aprendizaje profundo?

¿Cuál sería la arquitectura más apropiada para entrenar una red neuronal basada en dos imágenes de entrada?

Quiero cambiar mi flujo de .NET a Big Data o Machine Learning. ¿Como empiezo?

¿Cuál es más rápido, Torch7 o Theano?

¿Cuáles son los pros y los contras de estos tres modelos de secuencia: modelo MaxEnt Markov, campos aleatorios condicionales y redes neuronales recurrentes?

¿Qué significa end to end en los métodos de aprendizaje profundo?

En la regresión cuadrática, ¿por qué tengo que mantener una variable y su aumento exponencial en el mismo modelo?

¿Pueden los métodos de aprendizaje profundo ser útiles para el seguimiento de múltiples objetos en una multitud?

¿Cuáles son algunas aplicaciones destacadas de los métodos de máxima verosimilitud?

¿Qué es la transformación logarítmica en el análisis de regresión?

¿Es útil el aprendizaje automático en el campo de la ingeniería eléctrica?

¿Cómo analizaría programáticamente una oración y decidiría si responde con "eso es lo que dijo"? Resuma un algoritmo que, dada una oración, devuelve verdadero o falso para determinar si la declaración es apropiada.