c# OpenCv 2-使用haarcascade模型进行人脸识别
2018-12-01 23:00
471 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/csharp25/article/details/84679632
Test:
1. 读取cascade模型文件
2. 对输入的图片进行灰度处理
3. 使用cascade以及模型文件(本例使用的是人脸正面)对图片进行预测
TestCrop:
步骤如Test,截取出人脸照片
haarcascades的模型可以从opencv获得:
https://github.com/opencv/opencv/tree/master/data
[code]... public class FRTest { private CascadeClassifier _cascadeClassifier; private Capture _capture; public void Test(Bitmap bmp) { //_capture = new Capture(); var imageFrame = new Image<Bgr, byte>(bmp); //_capture.QueryFrame(); _cascadeClassifier = new CascadeClassifier(Application.StartupPath + "/haarcascades/haarcascade_frontalface_default.xml"); //using (var imageFrame = _capture.QueryFrame().ToImage<Bgr, Byte>()) //{ if (imageFrame != null) { var grayframe = imageFrame.Convert<Gray, byte>(); var faces = _cascadeClassifier.DetectMultiScale(grayframe, 1.1, 10, Size.Empty); //the actual face detection happens here foreach (var face in faces) { imageFrame.Draw(face, new Bgr(Color.BurlyWood), 3); //the detected face(s) is highlighted here using a box that is drawn around it/them } } ImageViewer.Show(imageFrame); // imgCamUser.Image = imageFrame; } public void TestCrop(Bitmap bmp) { //_capture = new Capture(); var imageFrame = new Image<Bgr, byte>(bmp); //_capture.QueryFrame(); _cascadeClassifier = new CascadeClassifier(Application.StartupPath + "/haarcascades/haarcascade_frontalface_default.xml"); //using (var imageFrame = _capture.QueryFrame().ToImage<Bgr, Byte>()) //{ var result = new List<Image<Bgr, byte>>(); var grayframe = imageFrame.Convert<Gray, byte>(); var faces = _cascadeClassifier.DetectMultiScale(grayframe, 1.1, 10, Size.Empty); //the actual face detection happens here foreach (var face in faces) { var copyImg = imageFrame.Copy(); copyImg.ROI = face; result.Add(copyImg.Copy()); //imageFrame.Draw(face, new Bgr(Color.BurlyWood), 3); //the detected face(s) is highlighted here using a box that is drawn around it/them } ImageViewer.Show(imageFrame); foreach (var image in result) { ImageViewer.Show(image); } // imgCamUser.Image = imageFrame; } } ...
阅读更多
相关文章推荐
- 使用opencv进行人脸识别
- 怎样使用OpenCV进行人脸识别
- 怎样使用OpenCV进行人脸识别 [停止更新]
- Java使用OpenCV进行人脸识别
- OpenCV学习记录(一):使用haar分类器进行人脸识别
- 使用OpenCV进行人脸识别的三种方法
- 怎样使用OpenCV进行人脸识别
- C# OpenCV 3- 使用EigenFaceRecognizer人脸识别
- OpenCV中使用Eigenfaces 或 Fisherfaces进行人脸识别
- python使用opencv进行人脸识别
- OpenCV3与深度学习实例-使用GoogLeNet模型进行图片分类识别
- 怎样使用OpenCV进行人脸识别
- OpenCV 使用FaceRecognizer类来进行人脸识别
- 怎样使用OpenCV进行人脸识别
- 使用OpenCV进行人脸识别的例子
- python使用opencv进行人脸识别
- OpenCV学习记录(一):使用haar分类器进行人脸识别 标签: opencv脸部识别c++ 2017-07-03 15:59 26人阅读
- 使用OpenCV+PCA+KNN/SVM进行人脸检测和识别-Python
- 使用opencv进行人脸识别
- 使用OpenCV进行人脸识别的三种算法(官方网翻译)