我正在研究人脸检测问题,我有工作代码,使用Android的FaceDetector找到脸,但我需要找出一种方法来实现OpenCV/JavaCV函数来检测脸部。这不是使用实时相机,它使用图库中的图像,我能够检索该图像路径,但我似乎无法获得CvHaarClassifierCascade分类器,并且CvMemStorage存储器已初始化,如果有人不能指向正确的方向或者提供一些在Java中正确初始化这些变量的源代码。 谢谢OpenCV/JavaCV Android人脸检测初始化
2
A
回答
1
你可以这样做:只需提供一个BufferedImage。
或者使用cvLoadImage(..)直接使用图像路径加载原始IplImage。
// provide an BufferedImage
BufferedImage image;
// Preload the opencv_objdetect module to work around a known bug.
Loader.load(opencv_objdetect.class);
// Path to the cascade file provided by opencv
String cascade = "../haarcascade_frontalface_alt2.xml"
CvHaarClassifierCascade cvCascade = new CvHaarClassifierCascade(cvLoad(cascade));
// create storage for face detection
CvMemStorage tempStorage = CvMemStorage.create();
// create IplImage from BufferedImage
IplImage original = IplImage.createFrom(image);
IplImage grayImage = null;
if (original.nChannels() >= 3) {
// We need a grayscale image in order to do the recognition, so we
// create a new image of the same size as the original one.
grayImage = IplImage.create(image.getWidth(), image.getHeight(),
IPL_DEPTH_8U, 1);
// We convert the original image to grayscale.
cvCvtColor(original, grayImage, CV_BGR2GRAY);
} else {
grayImage = original.clone();
}
// We detect the faces with some default params
CvSeq faces = cvHaarDetectObjects(grayImage, cvCascade,
tempStorage, 1.1, 3,
0;
// Get face rectangles
CvRect[] fArray = new CvRect[faces.total()];
for (int i = 0; i < faces.total(); i++) {
fArray[i] = new CvRect(cvGetSeqElem(faces, i));
}
// print them out
for(CvRect f: fArray){
System.out.println("x: " + f.x() + "y: " + f.y() + "width: " + f.width() + "height: " + f.height());
}
tempStorage.release();
1
类定义基本上是C中原始头文件的Java端口,以及仅由OpenCV的C++ API公开的缺失功能。你可以参考这个链接,它包括http://code.google.com/p/javacv/
和http://geekoverdose.wordpress.com/tag/opencv-javacv-android-haarcascade-face-detection/
相关问题
- 1. Android中的人脸检测?
- 2. Android中的人脸检测
- 3. Android人脸检测支持
- 4. Android的人脸检测
- 5. 如何检查安卓人脸检测中的人脸检测
- 6. 多人脸检测
- 7. opencv人脸检测
- 8. 人脸边界点检测人脸检测
- 9. Android - 人脸检测库不加载
- 10. Android中的实时人脸检测
- 11. Android,OpenCV:检测图像中的人脸
- 12. AVFoundation人脸检测框架
- 13. iPhone上的人脸检测
- 14. AI人脸检测技术
- 15. 人脸检测方法?
- 16. jQuery人脸检测和css
- 17. iOS人脸检测问题
- 18. Python的 - 人脸检测(detecMultiScale)
- 19. OpenCV中的人脸检测
- 20. iPhone OpenCV的人脸检测
- 21. 自动人脸检测
- 22. Python OpenCV人脸检测
- 23. 多视图人脸检测
- 24. iphone中的人脸检测
- 25. PHP中的人脸检测
- 26. 人脸检测算法
- 27. 机器人:人脸检测和比较
- 28. 15x15像素人脸的人脸检测算法?
- 29. Android - 脸部特征检测
- 30. 检测静态初始化阶段?