|
|
#1 (ссылка) |
|
Crow indian
Регистрация: 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;
}
|
|
|
Цитировать 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) | |
|
|