Pregunta

Quiero poder comparar una imagen tomada de una cámara web con una imagen almacenada en mi computadora.

La biblioteca no necesita ser cien por ciento precisa, ya que no se utilizará en ninguna misión crítica (por ejemplo, investigación policial), solo quiero algo en lo que pueda trabajar.

He intentado un proyecto de demostración para Reconocimiento de imágenes de CodeProject , y solo funciona con imágenes pequeñas / no funciona en absoluto cuando comparo exactamente la misma imagen 120x90 píxeles (esto no está clasificado como OK: P).

¿Ha habido algún éxito con el reconocimiento de imágenes anteriormente?

Si es así, ¿podría proporcionar un enlace a una biblioteca que podría usar en C # o VB.NET?

¿Fue útil?

Solución

Puede intentar esto: http://code.google.com/p/aforge/

Incluye un análisis de comparación que le dará una puntuación. También se incluyen muchas otras funciones de imagen de todos los tipos.

// The class also can be used to get similarity level between two image of the same size, which can be useful to get information about how different/similar are images:
// Create template matching algorithm's instance

// Use zero similarity to make sure algorithm will provide anything
ExhaustiveTemplateMatching tm = new ExhaustiveTemplateMatching(0);

// Compare two images
TemplateMatch[] matchings = tm.ProcessImage( image1, image2 );

// Check similarity level
if (matchings[0].Similarity > 0.95)
{
    // Do something with quite similar images
}

Otros consejos

Puede usar exactamente EmguCV para .NET.

Lo hice simplemente. Simplemente descargue la biblioteca de EyeOpen aquí . Luego úselo en su clase de C # y escriba esto:

 use eyeopen.imaging.processing

Escribir

ComparableImage cc;

ComparableImage pc;

int sim;

void compare(object sender, EventArgs e){

    pc = new ComparableImage(new FileInfo(files));

    cc = new ComparableImage(new FileInfo(file));

    pc.CalculateSimilarity(cc);

    sim = pc.CalculateSimilarity(cc);

    int sim2 = sim*100

    Messagebox.show(sim2 + "% similar");
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top