我遇到的问题是在检测到视频中人脸后,可以把人脸实时显示出来,但是怎么把这个值通过返回值实时返回呢? 类似于
import numpy as np import cv2 cap = cv2.VideoCapture(0) while(True): #capture frame-by-frame ret , frame = cap.read() 检测人脸操作略。。。 #display the resulting frame cv2.imshow('frame',gray) if cv2.waitKey(1) &0xFF ==ord('q'): #按 q 键退出 break #when everything done , release the capture cap.release() cv2.destroyAllWindows()
怎么改成一个其他人可以调用的函数,实时返回人脸的个数呢?因为返回的同时还要实时显示,非科班出身,思路受限,谷歌没得到想要的结果,希望大佬点拨下,给个思路
![]() | 1 cz5424 2019-07-08 08:35:34 +08:00 via iPhone 谷歌 dlib 库示例 |
2 chesterzzy 2019-07-08 09:24:51 +08:00 不是都拿到检测的结果了吗,直接一个 len 不就得到个数了。不拿到结果也不可能画在图上的啊 |
3 Xavier001 2019-07-08 10:04:08 +08:00 库函数得到结果里就包含所有检测到的脸啊 |
4 Ahs OP 老师让我把函数做成 API,供其他的函数调用,实时显示人脸框很好理解,如果返回此时刻的人脸识别结果,那么检测行为就结束了,能不能在不影响人脸检测过程的行为,同时把结果让其他函数知道,我现在的想法是,就检测到的人脸结果写到 txt 文件,其他函数可以读 txt 得到结果,感觉像非正规军做的 |
![]() | 5 moodasmood 2019-07-08 11:49:52 +08:00 via Android @Ahs 写到 txt 你可太秀了,你弄个静态变量,写变量里不就完事了,请求接口就返回变量值啊 |
![]() | 6 gauzung 2019-07-08 11:55:22 +08:00 返回的人脸数组,数组长度就是人脸个数 |
7 Ahs OP @moodasmood谢谢 我去试试 |