首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >cvGetSubRect没有放入框架中

cvGetSubRect没有放入框架中
EN

Stack Overflow用户
提问于 2013-02-05 05:29:53
回答 1查看 347关注 0票数 1

我是一个使用OpenCV人脸检测器的新手。人脸检测效果很好,但我正在尝试使用生成的矩形在人脸周围制作一个框架,并将其剪切以将人脸保存在新的归档中。我一直将getSubRect与"haarcascade_frontalface_default“返回的值(左、上、宽、高)一起使用。假设图像的参数是( GetSubRect,(左、上、右、下),但它不起作用,因为生成的图像没有使面部居中。我的错误是什么?

代码如下:

代码语言:javascript
运行
复制
import sys
   import cv
   imcolor = cv.LoadImage('C:\\Temp\\camera_test2.jpg') # input image
   # loading the classifier
   haarFace = cv.Load('c:\opencv\data\haarcascades\haarcascade_frontalface_default.xml')
   # running the classifier
   storage = cv.CreateMemStorage()
   detectedFace = cv.HaarDetectObjects(imcolor, haarFace, storage, 1.1)
   if detectedFace:
     arg1 = detectedFace[0][0][0]
     arg2 = detectedFace[0][0][1]
     arg3 = detectedFace[0][0][2]
     arg4 = detectedFace[0][0][3]
     Izq = arg1 - arg3/10
     Sup = arg2 - arg4/6
     Der = arg1 + arg3 #+ (arg3/10)
     Inf = arg2 + arg4 +(arg4/6)
     print detectedFace
     print Izq
     print Sup
     print Der
     print Inf
   imcolor2 = cv.GetSubRect(imcolor,(Izq, Sup, Der, Inf))
   cv.SaveImage('C:\\temp\\test_1.JPG', imcolor2)
   cv.WaitKey()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-05 20:26:58

cv.GetSubRect需要(x, y, width, height)

代码语言:javascript
运行
复制
for face, neighbors in detectedFace:
    im_face = cv.GetSubRect(imcolor, face)

另请参阅documentationOpenCV Cookbook

也就是说,为什么不使用cv2

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14695998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档