Я новичок в emgu cv, и я видел несколько видео о чем-то, называемом LandMarks, с обучающим файлом
в opencv
, но я нашел около python - только opencv, поэтому я искал в Google, если есть это в c# emgu
, и я нашел этот код в другом вопросе по стеку через поток
CascadeClassifier faceDetector = new CascadeClassifier(@"C:\Users\iP\Downloads\hearcasc\haarcascade_frontalface_default.xml");
FacemarkLBFParams fParams = new FacemarkLBFParams();
fParams.ModelFile = @"C:\Users\iP\Downloads\Compressed\kaka\shape_predictor_68_face_landmarks.dat";
fParams.NLandmarks = 68; // number of landmark points
fParams.InitShapeN = 10; // number of multiplier for make data augmentation
fParams.StagesN = 5; // amount of refinement stages
fParams.TreeN = 6; // number of tree in the model for each landmark point
fParams.TreeDepth = 5; //he depth of decision tree
FacemarkLBF facemark = new FacemarkLBF(fParams);
//facemark.SetFaceDetector(MyDetector);
Image<Bgr, Byte> image = img.Clone();
Image<Gray, byte> grayImage = image.Convert<Gray, byte>();
grayImage._EqualizeHist();
VectorOfRect faces = new VectorOfRect(faceDetector.DetectMultiScale(grayImage));
VectorOfVectorOfPointF landmarks = new VectorOfVectorOfPointF();
facemark.LoadModel(fParams.ModelFile);
bool success = facemark.Fit(grayImage, faces, landmarks);
if (success)
{
Rectangle[] facesRect = faces.ToArray();
for (int i = 0; i < facesRect.Length; i++)
{
image.Draw(facesRect[i], new Bgr(Color.Blue), 2);
FaceInvoke.DrawFacemarks(image, landmarks[i], new Bgr(Color.Blue).MCvScalar);
}
}
imageBox2.Image = image;
, и я искал, чтобы получить файл, и я нашел его и скачайте его с dlib gihup
, но когда я запускаю этот код, я получаю ошибку в методе LoadModel "файл импута пуст"