face_detector.py 文件源码

python
阅读 27 收藏 0 点赞 0 评论 0

项目:key-face 作者: gabrielilharco 项目源码 文件源码
def detectCascade(self, img, roiOnly=False):
        if roiOnly:
            searchArea = self.getSubRect(img, self.trackedFaceROI)
        else:
            searchArea = img

        width = searchArea.shape[0]
        faces = self.faceCascade.detectMultiScale(searchArea,
            scaleFactor = settings.cascadeScaleFactor,
            minNeighbors = settings.cascadeMinNeighbors,
            minSize = (int(width*settings.minimumFaceSize), int(width*settings.minimumFaceSize)),
            maxSize = (int(width*settings.maximumFaceSize), int(width*settings.maximumFaceSize)))

        if len(faces) == 0:
            if roiOnly and not self.isTemplateMatchingRunning:
                self.isTemplateMatchingRunning = True
                self.templateMatchingStartTime = cv2.getTickCount()
            elif not roiOnly:
                self.foundFace = False
                self.trackedFace = None;
            return

        self.foundFace=True
        # track only the largest face
        self.trackedFace = self.largestFace(faces)
        # adjust face position if necessary
        if roiOnly:
            self.trackedFace[0] += self.trackedFaceROI[0]
            self.trackedFace[1] += self.trackedFaceROI[1]
        self.trackedFaceTemplate = self.scaleRect(self.trackedFace, img, 0.5)
        self.trackedFaceROI = self.scaleRect(self.trackedFace, img, 2)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号