СЦБИСТ - железнодорожный форум, блоги, фотогалерея, социальная сеть
Это сообщение показано отдельно, перейти в тему, где размещено сообщение: Поиск лица на фото (пакет Emgu.CV)
Старый 23.09.2023, 07:07   #1 (ссылка)
Crow indian
 
Аватар для Admin

Регистрация: 21.02.2009
Возраст: 40
Сообщений: 29,997
Поблагодарил: 398 раз(а)
Поблагодарили 5988 раз(а)
Фотоальбомы: 2576 фото
Записей в дневнике: 698
Репутация: 126089

Тема: Поиск лица на фото (пакет Emgu.CV)


Поиск лица на фото (пакет Emgu.CV)

ищет на картинке face_to_find лица и кладет их выделенные прямоугольниками фото в словарь faces


Код:
        public List<string> FindFace(Dictionary<Image<Gray, byte>, string> faces, Image<Gray, byte> face_to_find, double dist = 0)
        {
            if (dist == 0)
                dist = recognition_accuracy;

            List<string> ret = new List<string>();



            EigenFaceRecognizer recognizer = new EigenFaceRecognizer(0, dist);

            Mat[] imgs = new Mat[faces.Count];
            int[] labels = new int[faces.Count];

            for(int i = 0; i < faces.Count; i++)
            {
                imgs[i] = faces.ElementAt(i).Key.Mat;
                labels[i] = i;
            }


           recognizer.Train(imgs, labels);

           FaceRecognizer.PredictionResult res = recognizer.Predict(face_to_find);


            if (res.Distance <= dist && res.Label >= labels[0] && res.Label < labels[faces.Count])
                ret.Add(faces.ElementAt(res.Label).Value);



            return ret;
        }
Admin вне форума   Цитировать 12
 Нажмите здесь, чтобы написать комментарий к этому сообщению  
 

Яндекс.Метрика