Skocz do zawartości

[opencv] rozpoznawanie dloni


Pomocna odpowiedź

Witam. Jestem tutaj nowy wiec na początku chciałem się przywitać 😉

ostatnio walczę z pewnym problemem i powoli tracę pomysły.

Potrzebuje stworzyć algorytm, który rozpoznaje dłoń na podstawie linii po jej wewnętrznej stronie. Nie papilarnych, te największe linie na dłoni. Dłoń wczytywana jest ze zdjecia/ filmu.

Obecnie zrobiłem to tak ( niestety nie działa jak powinno, może macie jakieś lepsze propozycje)

1. Wczytuje film i przerabia na skalę szarości.

2. Lekki gauss

3. Filtr wysokoczestotliwosciowy - próbowałem sobel i laplacian.

4. Wartość bezwzględna obrazu

5. Progowanie i obraz binarny.

6. Wykrywanie konturów i opisywanie okręgów na nich.

7. Usuwanie konturów którenie nie spełniają warunków średnicy - żeby analizować tylko glowne linie na dłoni. Bez palców etc,

8. Drugi obraz (dłoń referencyjna przechodzi takie same kroki)

9. Porównywanie konturów obu dłoni.

10. Jeżeli 3 cechy się zgadzają informacja, ze zaakceptowano.

Niby filtr wysokoczestotliwosciowy wykrywa linie i kontury, ale na tyle nie są odcięte, że nie da się sprogowac, żeby w wyniku powstał obraz konturu dłonii z liniami na niej. Co radzicie, jaką funkcję dodać, co zamienić, jakiś inny filtr? Tło nie jest problemem, mogę przyjąć stałe tło np. jednolite czarne.

proszę o pomoc i rady 😉

Link to post
Share on other sites

Myślę, że Twoja analiza jest po prostu za krótka. Moim zdaniem kroki które opisałeś są tylko wstępem do czegoś, co powinno następować później a mianowicie do etapu ekstrakcji pewnych abstrakcyjnych cech dystynktywnych. Porównywanie z wzorcem nie powinno być przeprowadzane na etapie zabawy w grafikę bitmapową. Po przygotowaniu typowymi algorytmami obróbki obrazu powinieneś użyć jakiegoś pomysłu (lub kilku) który zamieni rozwlekły obrazek najpierw na zbiór np. krzywych opisanych analitycznie a potem np. na graf. Popatrz na analizę linii papilarnych - tam nikt nie bawi się w obrazki, tylko jak najszybciej przechodzi do wzajemnego położenia pewnych punktów charakterystycznych takich jak rozwidlenia, pętle i zakończenia linii, które w niesamowity sposób upraszczają proces porównywania a jednocześnie zawierają na tyle dużo informacji z początkowego obrazu, że praktycznie uniemożliwiają podjęcie błędnej decyzji. Taki mocno skompresowany opis zawierający w Twoim przypadku np. miejsca przecięć (tego w odciskach palców nie ma), rozdwojenia czy zakończenia moim zdaniem bardzo dobrze nadawałby się jako zestaw danych wejściowych dla klasyfikatora/korelatora. Zauważ też, że wzorce mogą być przygotowywane o wiele dłużej niż trwa proces rozpoznawania on-line. Dlatego też można im poświęcić dużo więcej mocy obliczeniowej i przygotować je tak, by późniejsze poszukiwanie wzorca w bazie było wystarczająco efektywne.

Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.