Python人脸检测与人脸数据集的生成
生活随笔
收集整理的這篇文章主要介紹了
Python人脸检测与人脸数据集的生成
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
最近想做個(gè)人臉識別的測試,主要是來識別自己的臉,那么在這之前就必須準(zhǔn)備我自己的人臉數(shù)據(jù)集。自己一張一張拍照片肯定是不好的,直接讓電腦自己來生成數(shù)據(jù)集。
現(xiàn)在網(wǎng)上已經(jīng)有很多檢測人臉的代碼了,并不復(fù)雜,基本上都是固定動作,我們直接拿這些代碼稍加修改就可以了。
# -*- coding: utf-8 -*- """ Created on Sat Apr 2 00:30:30 2022@author: 2540817538(有問題請聯(lián)系此QQ) """ import cv2 #調(diào)用分類器,都是一些現(xiàn)成的,如果實(shí)在找不到路徑可以直接用下面的網(wǎng)盤鏈接下載 face_cascade = cv2.CascadeClassifier("C:/Users/25408/anaconda3/pkgs/libopencv-4.0.1-hbb9e17c_0/Library/etc/haarcascades/haarcascade_frontalface_default.xml") cap=cv2.VideoCapture(0) count=0 num=int(input('想要多少張人臉照片')) while True:ret,img=cap.read()gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)faces = face_cascade.detectMultiScale(gray,1.3,5)for faceRect in faces:#x,y是左上角的坐標(biāo),w是寬,h是高x,y,w,h = faceRect#繪制矩形框框住人臉cv2.rectangle(img, (x, y), (x+w, y+w), (255, 0, 0))count=count+1 if (count<num):#將人臉截取下來并保存,自己設(shè)置保存地址cv2.imwrite("E:\\sptp\\"+str('face')+'.'+str(count)+'.jpg',gray[y:y+h,x:x+w]) cv2.imshow("img",img)if cv2.waitKey(1) & 0xFF == ord('q') :#鍵盤輸入q退出break cap.release() cv2.destroyAllWindows()分類器文件鏈接:https://pan.baidu.com/s/1Q6cQipb7QWb3f2_vQgGWEQ?
提取碼:xbxt
人臉檢測效果:
?數(shù)據(jù)集制作情況:
?有了人臉數(shù)據(jù)集,就可以進(jìn)行后面的步驟了。
總結(jié)
以上是生活随笔為你收集整理的Python人脸检测与人脸数据集的生成的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 归并排序算法(java实现)
- 下一篇: 计算机操作系统实验银行家算法,实验六 银