首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么我的dlib.get_frontal_face_detector()的输出(rectangles[])为空?

为什么我的dlib.get_frontal_face_detector()的输出(rectangles[])为空?
EN

Stack Overflow用户
提问于 2022-06-21 05:39:30
回答 1查看 384关注 0票数 3

我尝试使用Dlib shape_predictor_68_landmark来标记我的照片。我使用OpenCV来读取和调整照片的大小(所有的照片都是从视频中获取的肖像照片)。然后,我使用这些处理过的照片运行函数dlib.get_frontal_face_detector()

这是我的代码:

代码语言:javascript
运行
复制
detector=dlib.get_frontal_face_detector()
for filename in os.listdir("/content/drive/MyDrive/new"):
  frame = cv2.imread("/content/drive/MyDrive/new/" + filename)
  frame = cv2.resize(frame, (720, 720), interpolation=cv2.INTER_NEAREST)
  faces = detector(frame, 0) 
  print('File name:',filename)
  print('Face=',faces)

faces = detector(frame, 0)应该输出一个rectangles[],但是当我打印它以进行检查时,它的输出结果是一个空的rectangles[]。结果(部分)如下:

代码语言:javascript
运行
复制
File name: frame_484.jpg
Face= rectangles[]

我不知道如何让它输出正确的输出(换句话说,不是空的rectangles[])。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-21 07:05:16

该模型不输出矩形,这意味着模型无法检测到给定图像中的任何人脸,但是可以尝试改进结果:

在使用rgb_image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

  • Try进行预测之前,
  • 隐写图像为RGB,而不是将图像调整为(720,720)或调整大小,以便原始图像的纵横比保持完整的

如果所有这些都不起作用,那么您可以尝试dlib的CNN模块,它比frontal_face模块dlib.cnn_face_detection_model_v1具有更高的精度

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

https://stackoverflow.com/questions/72695821

复制
相关文章

相似问题

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