根据原作者提供的信息,本文使用的是VS2022 .Net6 Asp.Net WebForm,用来网页端上传头像,后端先保存网页传入的照片再进行照片处理。
一.添加引用三个Nuget包
1.Emgu.CV
2.Emgu.CV.runtime.windows
3.Emgu.CV.Bitmap
此处版本,我使用的是4.4.0.4061(如下图)
二.下载OpenCV训练好的XML
haarcascade_frontalface_alt.xml
三、代码块
var face = new CascadeClassifier("haarcascade_frontalface_alt.xml");
//加载要识别的图片
var img = new Image<Bgr, byte>(@"C:\Users\Administrator\Pictures\Saved Pictures\微信图片_20210401213647.jpg");
//在这一步就已经识别出来了,返回的是人脸所在的位置和大小
var facesDetected = face.DetectMultiScale(img, 1.1, 10, new Size(50, 50));
//循环把人脸部分切出来并保存
int count =