首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mac山狮跑开CV人脸检测中的问题

Mac山狮跑开CV人脸检测中的问题
EN

Stack Overflow用户
提问于 2013-10-12 17:56:26
回答 2查看 868关注 0票数 1

我遇到了一个问题,让标准的公开简历人脸检测(facedetect)工作。网络摄像头的灯亮了,但是注意到,这个程序是用这样一个很小的窗口来启动的:

我在优秀博客帖子样本代码工作。我在这里所做的是:

  1. 安装OpenCV &获取OpenCV源代码 brew tap家庭/科学brew安装-与-tbb opencv wget http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.6/opencv-2.4.6.tar.gz tar xvzf opencv-2.4.6.tar.gz
  2. 使用标准分类器运行facedetect示例。 cd ~/opencv-2.4.6/samples/c chmod +x --cascade="../../data/haarcascades/haarcascade_frontalface_alt.xml“./build_all.sh ./facedetect --cascade=”../../data/haarcascades/haarcascade_frontalface_alt.xml“

我可以修改C++示例代码并重新编译和运行,但我不知道问题是什么。

有人有什么建议吗?

更新问题是来自cvQueryFrame的图像是空的:

代码语言:javascript
复制
IplImage* iplImg = cvQueryFrame( capture );
frame = iplImg;
if( frame.empty() ) 
{
    cout << "FRAME EMPTY\n";  // This is getting logged
    break;
}

更新:当源是静态图像时,它工作正常,所以这个问题与摄像头源有关。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-12 18:20:57

您可以尝试本地化问题,您是否尝试从和网络摄像头显示的图像,而不运行任何其他操作?

通过OpenCV从网络摄像头获取图像似乎存在问题,这类问题可能是由于硬件原因造成的,例如我的朋友macbook捕获的图像是320x240,而我的则是640x480。我的朋友刚刚改变了一个简单的配置,从相机的设置,他的问题解决了。你的问题可能是这样的。

或者,您可以尝试使用一些图像来运行人脸检测器,您需要更改代码,这样它就可以从磁盘加载一个图像,并尝试在它们上检测脸。如果它不能这样工作,我们可以说,你的问题不是相机,有一个更大的问题,如果它有效,我们肯定可以说,问题是网络摄像头。

编辑

如果您使用的是IplImage类型,一定要从相机中获得更多的图像,有时第一个图像是空的。

票数 5
EN

Stack Overflow用户

发布于 2013-12-16 15:57:29

这是由于OpenCV中的一个bug --它已经修复了(这里的bug报告是http://code.opencv.org/issues/3156),但是在自制/科学中的版本是修复之前的版本。

您可以通过编辑opencv的brew公式来安装一个较新的版本(基于这个拉请求https://github.com/Homebrew/homebrew-science/pull/540 )

编辑/usr/local/Library/opencv.rb/opencv.rb,并替换以下行:

代码语言:javascript
复制
url 'http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.6.1/opencv-2.4.6.1.tar.gz'
sha1 'e015bd67218844b38daf3cea8aab505b592a66c0'

带着这些

代码语言:javascript
复制
url 'https://github.com/Itseez/opencv/archive/2.4.7.1.tar.gz'
sha1 'b6b0dd72356822a482ca3a27a7a88145aca6f34c'

那就去做

代码语言:javascript
复制
brew remove opencv 
brew install opencv

小牛的作品(至少对我来说),应该在山狮上工作

更新: OpenCV版本的自制/科学现在已经更新,所以这个答案现在已经过时了!

代码语言:javascript
复制
brew upgrade opencv

将使自制获得最新版本,与固定摄像头捕获。

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

https://stackoverflow.com/questions/19337401

复制
相关文章

相似问题

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