Pracowałem nad aplikacją, która porównuje twarz zapisaną na karcie SD z obrazem wyświetlanym w podglądzie kamery za pomocą widoku powierzchni. Napisałem kod, aby wykryć twarz i stworzyłem bitmapę, która będzie zawierała tylko twarz. Muszę porównać tę bitmapę i obraz na karcie SD. Szukałem biblioteki Java i uzyskałem kilka linków, takich jak opencv, Eigenface. Która będzie lepszą biblioteką? Proszę dać mi kilka dobrych samouczków, byłoby lepiej, gdyby wyjaśniało proces za porównanie obrazu.Porównywanie dwóch twarzy w Androidzie
5
A
Odpowiedz
0
Spróbuj tego:
http://www.lac.inpe.br/JIPCookbook/6050-howto-compareimages.jsp
Tutorial jest bardzo łatwe i przykład działa bardzo dobrze.
+0
Czy możesz zaktualizować link? –
Myślę, ale nie jestem pewien, czy powinieneś porównywać wektory absolutne. W przeciwnym razie, jeśli porównasz piksele, będziesz miał problem z powodu różnych rozdzielczości obrazów. Ten link może być pomocny: 'http: // developer.android.com/reference/java/util/Vector.html'. Również o tej ostatniej części, spójrz na to: 'http: // stackoverflow.com/questions/6248044/c-comparing-two-vectors'. – g00dy
Twoje prawo porównujące piksel może mieć problemy. Ale jak możemy przedstawić obraz jako wektor? – Linson
Kształt wektorowy w systemie Android może być/jest reprezentowany jako dostępny do rysowania. Teraz, gdy to już działa, myślę, że to tylko kwestia skalowania dwóch obiektów (nie jest to trudne, gdy mamy do czynienia z wektorami) i porównania różnych jego części. W każdym razie, jaki rodzaj algorytmu zaprojektował/wykorzystał w celu porównania twarzy? – g00dy