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

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

Тема: Получить массив прямоугольников, обводящих лица на изображении (пакет Emgu.CV)


Получить массив прямоугольников, обводящих лица на изображении (пакет Emgu.CV)

Код:
        public Rectangle[] GetRectanglesForFaces(Image<Gray, byte> src)
        {

            if (src == null)
                return null;


            Rectangle[] r = new Rectangle[1];

            try
            {
                r = face_anfas_classifier.classifier.DetectMultiScale(src, 1.1, 10, new Size(20, 20));
            }

            catch
            {


            }


            return r; 

        }
Admin добавил 23.09.2023 в 06:59
Наложить на лица прямоугольники (серая картинка)

Код:
      public Image<Gray, byte> GetRectangledImageGray(Image<Gray, byte> src, double gray_intensity = 500, int rect_width = 5)
        {

            Image<Gray, byte> ret = src;

            Rectangle[] recs = GetRectanglesForFaces(src);

            foreach (var rec in recs)
                src.Draw(rec, new Gray(gray_intensity), rect_width);



            return ret;


        }




Наложить на лица прямоугольники (цветная картинка)

Код:
       public Image<Rgb, byte> GetRectangledImageColor(Image<Rgb, byte> src, Color col, int rect_width = 5)
        {

            Image<Rgb, byte> ret = src;

            Image<Gray, byte> tmp = ConvertToGray(src);

            Rectangle[] recs = GetRectanglesForFaces(tmp);

            foreach (var rec in recs)
                src.Draw(rec, new Rgb(col), rect_width);



            return ret;


        }

Последний раз редактировалось Admin; 23.09.2023 в 07:04. Причина: Добавлено сообщение
Admin вне форума   Цитировать 12
 Нажмите здесь, чтобы написать комментарий к этому сообщению  
 

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