Съдържание:
- Стъпка 1: Откриване на лица в изображение и преброяване
- Стъпка 2: Откриване на човешки очи в изображение и преброяване
- Стъпка 3: Откриване на човешка уста в изображение и преброяване
- Стъпка 4: Откриване на лица, очи, уста във видео и броене
Видео: MATLAB Лесно разпознаване на лице: 4 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
Основната цел на тези инструкции е да покаже колко лесно ще бъде обработката на изображението с помощта на MATLAB
Откриването и проследяването на лица е важно и активно поле за изследване, затова ще обясня как може да се направи с Matlab.
В следния урок ще направя следните неща:
1. откриване на лица в изображение и броене.
2. откриване на човешки очи в изображение и преброяване.
3. откриване на човешка уста в изображение и преброяване.
4. откриване на лица във видео и броене.
5. откриване на човешки очи във видео и броене.
6. откриване на човешка уста във видео и броене.
Стъпка 1: Откриване на лица в изображение и преброяване
Сценарий на MATLAB:
изчисти всички % изчисти всички обектиclc % изчисти екрана
FDetect = vision. CascadeObjectDetector; %Откриване на обекти с помощта на алгоритъма на Viola-Jones
%Прочетете входното изображение
image = imread ('c: / Deskotp / HarryPotter.jpg'); %заредете изображението, като използвате imread ('file location / name.jpg')
BB = стъпка (FDetect, изображение); %Връща стойностите на рамката за ограничаване въз основа на броя обекти
фигура, имишоу (I);
дръж се
за i = 1: размер (BB, 1)
правоъгълник ('Position', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r -червено, g-зелено, b-синьо
край
заглавие („Откриване на лица“); %заглавие на цифрата off;
Резултатът ще бъде като изображението, което е прикачено в самата тази стъпка
За да преброите броя открити лица:
изчисти всички % изчисти всички обектиclc % изчисти екрана
FDetect = vision. CascadeObjectDetector; %Откриване на обекти с помощта на алгоритъма на Viola-Jones %Прочетете входното изображение
image = imread ('c: / Deskotp / HarryPotter.jpg'); %заредете изображението, като използвате imread ('file location / name.jpg')
BB = стъпка (FDetect, изображение); %Връща стойностите на рамката за ограничаване въз основа на броя обекти
фигура,
imshow (I);
дръж се
за i = 1: размер (BB, 1)
правоъгълник ('Position', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r -червено, g-зелено, b-синьо
край
текст (10, 10, strcat ('\ color {red} Брой лица =', num2str (дължина (BB)))); Този ред ви дава броя
заглавие („Откриване на лица“); %заглавие на фигурата
задържам;
Стъпка 2: Откриване на човешки очи в изображение и преброяване
Сценарий на MATLAB:
изчисти всичко;
clc;
%За откриване на EyesEyeDetect = vision. CascadeObjectDetector ('EyePairBig');
%Прочетете входа
image = imread ('c: / Deskotp / HarryPotter.jpg'); %заредете изображението, като използвате imread ('file location / name.jpg')
BB = стъпка (EyeDetect, изображение);
фигура,
imshow (изображение);
правоъгълник ('Position', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
заглавие („Откриване на очите“);
Резултатът ще бъде като изображението, което е прикачено в самата тази стъпка
За да преброите броя на откритите очи:
изчисти всичко; clc; %За откриване на очи
EyeDetect = vision. CascadeObjectDetector ('EyePairBig');
image = imread ('c: / Deskotp / HarryPotter.jpg'); %заредете изображението, като използвате imread ('file location / name.jpg')
BB = стъпка (EyeDetect, изображение); фигура, imshow (изображение); правоъгълник ('Position', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
text (10, 10, strcat ('\ color {red} No of eyes =', num2str (length (BB))));
заглавие („Откриване на очите“);
Стъпка 3: Откриване на човешка уста в изображение и преброяване
Сценарий на MATLAB:
изчисти всичко;
clc;
%За откриване на уста
MouthDetect = vision. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16);
%Прочетете входното изображение = imread ('c: / Deskotp / HarryPotter.jpg'); %заредете изображението, като използвате imread ('file location / name.jpg')
BB = стъпка (MouthDetect, изображение);
фигура, имишоу (изображение);
дръж се
за i = 1: размер (BB, 1)
правоъгълник ('Position', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
край
заглавие („Откриване на уста“);
задържам;
Резултатът ще бъде като изображението, което е прикачено в самата тази стъпка
За да преброите броя на откритите уста:
изчисти всичко; clc; %За откриване на уста
MouthDetect = vision. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16); %Прочетете входа
image = imread ('c: / Deskotp / HarryPotter.jpg'); %заредете изображението, като използвате imread ('file location / name.jpg') BB = step (MouthDetect, image);
фигура, имшоу (изображение);
дръж се
за i = 1: размер (BB, 1)
правоъгълник ('Position', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
край
text (10, 10, strcat ('\ color {red} No of mouths =', num2str (length (BB))));
заглавие („Откриване на уста“);
задържам;
Стъпка 4: Откриване на лица, очи, уста във видео и броене
изчисти всичко;
затвори всички;
clc;
% Заснемане на видео кадрите с помощта на функцията за видео вход % Трябва да смените разделителната способност и името на инсталирания адаптер.
a = vision. CascadeObjectDetector; %за откриване на лице
% a = vision. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16); %за откриване на устата
% a = vision. CascadeObjectDetector ('EyePairBig'); %за откриване на очите
%използвайте само някой (лице/очи/уста)
vid = videoinput ('winvideo', 1, 'yuy2_320x240'); % Задайте свойствата на видео обекта
set (vid, 'FramesPerTrigger', Inf);
set (vid, 'ReturnedColorspace', 'rgb');
vid. FrameGrabInterval = 5; %започнете придобиването на видео тук
start (vid) % Задайте цикъл, който спира след 100 кадъра на придобиване
while (vid. FramesAcquired <= 200) % Вземете моментната снимка на текущия кадър
data = getsnapshot (vid);
imshow (данни);
b = стъпка (a, данни);
дръж се
за i = 1: размер (b, 1)
правоъгълник ('position', b (i,:), 'linewidth', 2, 'linestyle', '-', 'EdgeColor', 'r');
край
задържам
текст (10, 10, strcat ('\ color {зелен} Брой лица =', num2str (дължина (b))));
край
стоп (vid); % Спрете придобиването на видео
Препоръчано:
Огледало за разпознаване на лице със секретно отделение: 15 стъпки (със снимки)
Огледало за разпознаване на лица с тайно отделение: Винаги съм бил заинтригуван от вечно творческите тайни отделения, използвани в истории, филми и други подобни. Така че, когато видях конкурса за тайни отделения, реших сам да експериментирам с идеята и да направя обикновено изглеждащо огледало, което отваря
Заключване на вратата за разпознаване на лице: 8 стъпки
Заключване на врата за разпознаване на лице: Представям около месец заключване на вратата за разпознаване на лица! Опитах се да изглежда възможно най-спретнато, но мога да направя само на 13-годишно дете. Това заключване на вратата за разпознаване на лице се управлява от Raspberry Pi 4, със специална преносима бат
Opencv разпознаване на лица, обучение и разпознаване: 3 стъпки
Откриване, обучение и разпознаване на лица с Opencv: OpenCV е библиотека за компютърно зрение с отворен код, която е много популярна за изпълнение на основни задачи по обработка на изображения, като замъгляване, смесване на изображения, подобряване на изображението, както и качество на видеото, праг и т.н. В допълнение към обработката на изображения, доказва се
Разпознаване на лице на практика: 21 стъпки
Разпознаване на лица на практика: Това е тема, от която съм толкова очарован, че ме кара да губя сън: Компютърно зрение, откриване на обекти и хора чрез предварително обучен модел
Разпознаване на лице+разпознаване: 8 стъпки (със снимки)
Face Detection+разпознаване: Това е прост пример за стартиране на разпознаване и разпознаване на лица с OpenCV от камера. ЗАБЕЛЕЖКА: НАПРАВИХ ТОЗИ ПРОЕКТ ЗА СЪДЕЖДАНЕ НА СЕНЗОРИ И ИЗПОЛЗВАХ КАМЕРАТА КАТО СЕНЗОР ЗА ПРОСЛЕДВАНЕ И ПРИЗНАВАНЕ НА ЛИЦА. И така, нашата цел В тази сесия, 1. Инсталирайте Anaconda