lak*_*esh 9 matlab opencv computer-vision face-detection matlab-cvst
我正在尝试使用MATLAB实现自动面部检测.我知道如何使用OpenCV实现它,但我想在MATLAB中实现它.
我看到两个网站:
1)http://www.mathworks.com/matlabcentral/fileexchange/11073.首先,这个网站很好,它适用于神经网络.它适用于与它一起提供的图像.但是,当我使用我的图像训练神经网络时,准确性非常差.
2)第二个是http://www.mathworks.com/matlabcentral/fileexchange/13716-face-eye-detection.当我用自己的图像测试时,准确性很差.
寻找更好的解决方案以及我应该做什么的建议.谢谢.
Amr*_*mro 11
从R2012a版本开始,计算机视觉系统工具箱包括一个基于Viola-Jones的人 脸检测器和vision.CascadeObjectDetector系统对象.

既然你提到过OpenCV,那么如何直接在MATLAB中使用它.结帐mexopencv项目.
以下是检测面部的示例代码:
%# Load a face detector and an image
detector = cv.CascadeClassifier('haarcascade_frontalface_alt.xml');
im = imread('myface.jpg');
%# Preprocess
gr = cv.cvtColor(im, 'RGB2GRAY');
gr = cv.equalizeHist(gr);
%# Detect
boxes = detector.detect(gr, 'ScaleFactor',1.3, 'MinNeighbors',2, 'MinSize',[30,30]);
%# Draw results
imshow(im);
for i = 1:numel(boxes)
rectangle('Position',boxes{i}, 'EdgeColor','g');
end
Run Code Online (Sandbox Code Playgroud)
值得一提的是,MATLAB的计算机视觉工具箱也在其实现中使用OpenCV.