python cv2 imwrite_Python+OpenCV: cv2.imwrite

可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):

问题:

I'm trying to detect a face and write down area with the face in a separate file. How can I do it? I think that i must use "faces" (you can see this var in code). But how? from ffnet import mlgraph, ffnet, tmlgraph, imlgraph import pylab import sys import cv,cv2 import numpy cascade = cv.Load('C:\opencv\data\haarcascades\haarcascade_frontalface_alt.xml') def detect(image): bitmap = cv.fromarray(image) faces = cv.HaarDetectObjects(bitmap, cascade, cv.CreateMemStorage(0)) if faces: for (x,y,w,h),n in faces: cv2.rectangle(image,(x,y),(x+w,y+h),(255,255,255),3) return image if __name__ == "__main__": cam = cv2.VideoCapture(0) while 1: _,frame =cam.read() frame = numpy.asarray(detect(frame)) cv2.imshow("features", frame) if cv2.waitKey(1) == 0x1b: # ESC print 'ESC pressed. Exiting ...' break

回答1:

This following code should extract face in images and save faces on disk def detect(image): image_faces = [] bitmap = cv.fromarray(image) faces = cv.HaarDetectObjects(bitmap, cascade, cv.CreateMemStorage(0)) if faces: for (x,y,w,h),n in faces: image_faces.append(image[y:(y+h), x:(x+w)]) #cv2.rectangle(image,(x,y),(x+w,y+h),(255,255,255),3) return image_faces if __name__ == "__main__": cam = cv2.VideoCapture(0) while 1: _,frame =cam.read() image_faces = [] image_faces = detect(frame) for i, face in enumerate(image_faces): cv2.imwrite("face-" + str(i) + ".jpg", face) #cv2.imshow("features", frame) if cv2.waitKey(1) == 0x1b: # ESC print 'ESC pressed. Exiting ...' break

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值