СЦБИСТ - железнодорожный форум, блоги, фотогалерея, социальная сеть
Вернуться   СЦБИСТ - железнодорожный форум, блоги, фотогалерея, социальная сеть > Программирование и системное администрирование > С# .Net > OpenCV
Закладки ДневникиПоддержка Сообщество Комментарии к фото Сообщения за день
Ответить в этой теме   Перейти в раздел этой темы   Translate to English    
 
Translate to English В мои закладки Подписка на тему по электронной почте Отправить другу по электронной почте Опции темы Поиск в этой теме
Старый 23.09.2023, 07:02   #1 (ссылка)
Crow indian
 
Аватар для Admin

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

Тема: Выделить лица из фото (пакет Emgu.CV)


Выделить лица из фото (пакет Emgu.CV)


storagefolder - папка с файлами фото, которые будут сохранены


Код:
public Image<Gray, byte>[] ExtractFacesFromPhoto(Image<Rgb, byte> img, string file_prefix, string storagefolder, bool savetofile = false)
        {

//  массив Image с лицами, IsFaceOnPhoto(img) возвращает количество лиц
            Image<Gray, byte>[] ret = new Image<Gray, byte>[IsFaceOnPhoto(img)];


            Image<Gray, byte> gray_img = ConvertToGray(img);

            Rectangle[] rec = GetRectanglesForFaces(gray_img);

            if (rec.Length != ret.Length)
                return ret;


            for (int i = 0; i < rec.Length; i++)
                ret[i] = gray_img.GetSubRect(rec[i]);


            if (savetofile)
            {


                for (int i = 0; i < rec.Length; i++)
                {
                   
                    AddToErrorLog("Сохранение в файл: " + FilesAndFolders.GenerateUniqueFilename(file_prefix, $"{Directory.GetCurrentDirectory()}\\{storagefolder}\\", "jpg", "_"));

               //     MessageBox.Show(FilesAndFolders.GenerateUniqueFilename(file_prefix, $"{Directory.GetCurrentDirectory()}\\{storagefolder}\\", "jpg", "_"));
                    ret[i].Save(FilesAndFolders.GenerateUniqueFilename(file_prefix, $"{Directory.GetCurrentDirectory()}\\{storagefolder}\\", "jpg", "_"));

                }
            }

            return ret;

        }
Admin вне форума   Цитировать 12
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить массив прямоугольников, обводящих лица на изображении (пакет Emgu.CV) Admin OpenCV 0 23.09.2023 06:59
Найти лица на фото и вернуть их количество (пакет Emgu.cv) Admin OpenCV 0 23.09.2023 06:56
Работа с изображениями пакета Emgu.CV Admin OpenCV 0 23.09.2023 06:54
[ОМ] Наши лица Admin Газета "Октябрьская магистраль" 0 01.03.2012 17:55

Ответить в этой теме   Перейти в раздел этой темы   Translate to English


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.



Часовой пояс GMT +3, время: 17:12.

Яндекс.Метрика Справочник 
сцбист.ру сцбист.рф

СЦБИСТ (ранее назывался: Форум СЦБистов - Railway Automation Forum) - крупнейший сайт работников локомотивного хозяйства, движенцев, эсцебистов, путейцев, контактников, вагонников, связистов, проводников, работников ЦФТО, ИВЦ железных дорог, дистанций погрузочно-разгрузочных работ и других железнодорожников.
Связь с администрацией сайта: admin@scbist.com
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 
Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Powered by NuWiki v1.3 RC1 Copyright ©2006-2007, NuHit, LLC Перевод: zCarot