Есть ли какие-либо библиотеки распознавания изображений OK for.NET?
Я хочу иметь возможность сравнить изображение, сделанное с веб-камеры, с изображением, хранящимся на моем компьютере.
библиотека не должна быть на сто процентов точной, поскольку она не будет использоваться ни в чем критически важном (например, полицейское расследование), я просто хочу что-то хорошо, с чем я могу работать.
Я пробовал демонстрационный проект для распознавание изображений из CodeProject, и он работает только с маленькими изображениями / не работает вообще, когда я сравниваю ту же самую изображение 120x90 пикселей (это не классифицируется как OK :P ).
были ли какие-либо успехи с распознаванием изображений раньше?
Если да, то сможете ли вы предоставить ссылку на библиотеку, которую я мог бы использовать в C# или VB.NET?
3 ответа:
вы можете попробовать это:http://code.google.com/p/aforge/
Она включает в себя сравнительный анализ, который даст вам результат. Есть много других замечательных функций визуализации всех типов включены, а также.
// 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 }
вы можете использовать EmguCV for. NET.
Я сделал это просто. Просто скачайте библиотеку EyeOpen здесь. Затем используйте его в своем классе C# и напишите следующее:
use eyeopen.imaging.processing
написать
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"); }