Szegmentálás

  1. HSV szintéren alapuló szegmentálás

    1. RGB -> HSV szintér konverzió

    2. Intervallumos szegmentálást - hsv_min és hsv_max paraméterek vektorok

    3. 1


      2

      H, S és V csatornák

    4. Medián szűrés

    5. Eredmény:

    6. 3

      Gyenge fényviszonyok


      4

      Jó fényviszonyok

  2. 2D normalizált színtéren alapuló szegmentálás

    1. RGB -> 2D normalizált szintér konverzió

    2. 5


    3. Eredmény:

    4. 6

      RG szintérben történő szegmentálás (mesterséges fény mellett)

      7

      A szegmentált kép mediánszűrés után

Kontúr, konvex burok, ujjhegyek

  1. cvFindContours() fgv. a kontúrok keresésére


  2. cvContourArea() fgv. a kéz kontúr megtalálására


  3. 8


  4. Konvex burok számítása - cvConvexHull2() fgv.


  5. 9

    Konvex burok

  6. Ujjhegyek keresése - konvex burok töréspontjai/ritkítás


  7. 10

Kurzor mozgása és kattintás

  1. Mozgatás - SetCursorPos() fgv.

    1. szegmentált mutató ujj koordinátáinak megkeresése

    2. megtalált pont felskálázása a képernyőre

    3. apró remegés kiküszöbölése

  2. Klikkelés - mouse_event() fgv.

    1. MOUSEEVENTF_LEFTDOWN - bal gomb lenyomva

    2. MOUSEEVENTF_LEFTUP - bal gomb felengedve

    3. MOUSEEVENTF_RIGHTDOWN - jobb gomb lenyomva

    4. MOUSEEVENTF_RIGHTUP - jobb gomb felengedve

  3. Hiányosságok

    1. az egérkurzor mozgatásának pontossága

    2. webkamera felbontás - > képernyő felbontás felskálázás során a webkamera képe nem használható ki teljes terjedelmében

    3. kattintás során a kéz bemozdul

    4. jobb klikk kivitelezés