Опенцв Питхон програм за препознавање лица

Опенцв Питхон програм за препознавање лица

Циљ датог програма је да детектује објекат од интереса (лице) у реалном времену и да настави да прати исти објекат. Ово је једноставан пример како детектовати лице у Питхон-у. Можете покушати да користите узорке за обуку било ког другог објекта по вашем избору да бисте били откривени обучавањем класификатора на траженим објектима. Ево корака за преузимање захтева у наставку.

Кораци:

  1. Преузмите Питхон 2.7.к верзију нумпи и верзију Опенцв 2.7.к. Проверите да ли је ваш Виндовс 32-битни или 64-битни компатибилан и инсталирајте у складу са тим.
  2. Уверите се да је нумпи покренут у вашем Питхон-у, а затим покушајте да инсталирате опенцв.
  3. Ставите датотеке хаарцасцаде_еие.кмл & хаарцасцаде_фронталфаце_дефаулт.кмл у исти фолдер (везе дате у коду испод).

Имплементација



Python
   # OpenCV program to detect face in real time   # import libraries of python OpenCV    # where its functionality resides   import   cv2   # load the required trained XML classifiers   # https://github.com/opencv/opencv/tree/master   # data/haarcascades/haarcascade_frontalface_default.xml   # Trained XML classifiers describes some features of some   # object we want to detect a cascade function is trained   # from a lot of positive(faces) and negative(non-faces)   # images.   face_cascade   =   cv2  .  CascadeClassifier  (  'haarcascade_frontalface_default.xml'  )   # https://github.com/opencv/opencv/tree/master   # /data/haarcascades/haarcascade_eye.xml   # Trained XML file for detecting eyes   eye_cascade   =   cv2  .  CascadeClassifier  (  'haarcascade_eye.xml'  )   # capture frames from a camera   cap   =   cv2  .  VideoCapture  (  0  )   # loop runs if capturing has been initialized.   while   1  :   # reads frames from a camera   ret     img   =   cap  .  read  ()   # convert to gray scale of each frames   gray   =   cv2  .  cvtColor  (  img     cv2  .  COLOR_BGR2GRAY  )   # Detects faces of different sizes in the input image   faces   =   face_cascade  .  detectMultiScale  (  gray     1.3     5  )   for   (  x    y    w    h  )   in   faces  :   # To draw a rectangle in a face    cv2  .  rectangle  (  img  (  x    y  )(  x  +  w    y  +  h  )(  255    255    0  )  2  )   roi_gray   =   gray  [  y  :  y  +  h     x  :  x  +  w  ]   roi_color   =   img  [  y  :  y  +  h     x  :  x  +  w  ]   # Detects eyes of different sizes in the input image   eyes   =   eye_cascade  .  detectMultiScale  (  roi_gray  )   #To draw a rectangle in eyes   for   (  ex    ey    ew    eh  )   in   eyes  :   cv2  .  rectangle  (  roi_color  (  ex    ey  )(  ex  +  ew    ey  +  eh  )(  0    127    255  )  2  )   # Display an image in a window   cv2  .  imshow  (  'img'    img  )   # Wait for Esc key to stop   k   =   cv2  .  waitKey  (  30  )   &   0xff   if   k   ==   27  :   break   # Close the window   cap  .  release  ()   # De-allocate any associated memory usage   cv2  .  destroyAllWindows  ()   

Излаз:

излаз

Следећи чланак:

Опенцв Ц++ програм за детекцију лица Креирај квиз

Топ Чланци

Категорија

Занимљиви Чланци