Inhoudsopgave:
- Stap 1: Gezichten in een afbeelding detecteren en tellen
- Stap 2: Menselijke ogen detecteren in een afbeelding en tellen
- Stap 3: Menselijke mond detecteren in een afbeelding en tellen
- Stap 4: Gezichten, ogen, mond detecteren in een video en tellen
Video: MATLAB Eenvoudige gezichtsdetectie: 4 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
Het belangrijkste doel van deze instructables is om te laten zien hoe gemakkelijk de beeldverwerking zal zijn, met behulp van MATLAB
Gezichtsdetectie en -tracking is een belangrijk en actief onderzoeksveld geweest, daarom ga ik uitleggen hoe het kan met het Matlab.
In de volgende tutorial ga ik de onderstaande dingen doen:
1. gezichten in een afbeelding detecteren en tellen.
2. menselijke ogen detecteren in een afbeelding en tellen.
3. menselijke mond detecteren in een afbeelding en tellen.
4. gezichten detecteren in een video en tellen.
5. menselijke ogen detecteren in een video en tellen.
6. menselijke mond detecteren in een video en tellen.
Stap 1: Gezichten in een afbeelding detecteren en tellen
MATLAB-SCRIPT:
alles wissen % alle objecten wissenclc %scherm wissen
FDetect = visie. CascadeObjectDetector; %Detecteer objecten met behulp van het Viola-Jones-algoritme
%Lees de invoerafbeelding
afbeelding = imread('c:\Deskotp\HarryPotter.jpg'); %laad de afbeelding met imread('file location\name.jpg')
BB = stap (FDetect, afbeelding); %Retourneert Bounding Box-waarden op basis van het aantal objecten
figuur, imshow(I);
vasthouden
voor i = 1: maat (BB, 1)
rechthoek('Positie', BB(i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r -rood, g-groen, b-blauw
einde
title('Gezichtsdetectie'); %titel van de figuur afhouden;
Het resultaat zal zijn zoals de afbeelding die in deze stap zelf is bijgevoegd
Het aantal gedetecteerde gezichten tellen:
alles wissen % alle objecten wissenclc %scherm wissen
FDetect = visie. CascadeObjectDetector; %Detecteer objecten met behulp van het Viola-Jones-algoritme %Lees de invoerafbeelding
afbeelding = imread('c:\Deskotp\HarryPotter.jpg'); %laad de afbeelding met imread('file location\name.jpg')
BB = stap (FDetect, afbeelding); %Retourneert Bounding Box-waarden op basis van het aantal objecten
figuur,
imshow(ik);
vasthouden
voor i = 1: maat (BB, 1)
rechthoek('Positie', BB(i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r -rood, g-groen, b-blauw
einde
text(10, 10, strcat('\color{red} Aantal vlakken =', num2str(length(BB)))); Deze regel geeft je de telling
title('Gezichtsdetectie'); %titel van de figuur
wacht af;
Stap 2: Menselijke ogen detecteren in een afbeelding en tellen
MATLAB-SCRIPT:
wis alles;
clc;
%Om EyesEyeDetect = vision te detecteren. CascadeObjectDetector('EyePairBig');
%Lees de invoer
afbeelding = imread('c:\Deskotp\HarryPotter.jpg'); %laad de afbeelding met imread('file location\name.jpg')
BB=stap (Oogdetectie, afbeelding);
figuur,
imshow(afbeelding);
rechthoek('Positie', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
title('Ogendetectie');
Het resultaat zal zijn zoals de afbeelding die in deze stap zelf is bijgevoegd
Het aantal gedetecteerde ogen tellen:
alles wissen;clc; %Ogen detecteren
EyeDetect = visie. CascadeObjectDetector('EyePairBig');
afbeelding = imread('c:\Deskotp\HarryPotter.jpg'); %laad de afbeelding met imread('file location\name.jpg')
BB=step(Oogdetectie, afbeelding);figuur, imshow(afbeelding); rechthoek('Positie', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
text(10, 10, strcat('\color{red} No of eyes =', num2str(length(BB))));
title('Ogendetectie');
Stap 3: Menselijke mond detecteren in een afbeelding en tellen
MATLAB-SCRIPT:
wis alles;
clc;
%Om mond te detecteren
MouthDetect = vision. CascadeObjectDetector('Mouth', 'MergeThreshold', 16);
%Lees de invoerafbeelding = imread('c:\Deskotp\HarryPotter.jpg'); %laad de afbeelding met imread('file location\name.jpg')
BB=stap (Monddetectie, afbeelding);
figuur, imshow(afbeelding);
vasthouden
voor i = 1: maat (BB, 1)
rechthoek('Positie', BB(i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
einde
title('Monddetectie');
wacht af;
Het resultaat zal zijn zoals de afbeelding die in deze stap zelf is bijgevoegd
Het aantal gedetecteerde monden tellen:
wis alles; clc; %Om mond te detecteren
MouthDetect = vision. CascadeObjectDetector('Mouth', 'MergeThreshold', 16); %Lees de invoer
afbeelding = imread('c:\Deskotp\HarryPotter.jpg'); %laad de afbeelding met imread('file location\name.jpg') BB=step(MouthDetect, image);
figuur, imshow(afbeelding);
vasthouden
voor i = 1: maat (BB, 1)
rechthoek('Positie', BB(i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
einde
text(10, 10, strcat('\color{red} Aantal monden =', num2str(length(BB))));
title('Monddetectie');
wacht af;
Stap 4: Gezichten, ogen, mond detecteren in een video en tellen
wis alles;
sluit alles;
clc;
% Leg de videoframes vast met de video-invoerfunctie % U moet de resolutie en de naam van uw geïnstalleerde adapter vervangen.
a=vision. CascadeObjectDetector; %om gezicht te detecteren
% a=vision. CascadeObjectDetector('Mouth', 'MergeThreshold', 16); %om mond te detecteren
% a=vision. CascadeObjectDetector('EyePairBig'); %om ogen te detecteren
%gebruik alleen een (gezicht/ogen/mond)
vid = video-invoer ('winvideo', 1, 'yuy2_320x240'); % Stel de eigenschappen van het video-object in
set(vid, 'FramesPerTrigger', Inf);
set(vid, 'ReturnedColorspace', 'rgb');
vid. FrameGrabInterval = 5; %start de video-acquisitie hier
start(vid) % Stel een lus in die stopt na 100 frames van acquisitie
while(vid. FramesAcquired<=200) % Haal de momentopname van het huidige frame op
data = krijgtnapshot(vid);
imshow(gegevens);
b=stap(a, gegevens);
vasthouden
voor i=1:maat(b, 1)
rechthoek('position', b(i,:), 'linewidth', 2, 'linestyle', '-', 'EdgeColor', 'r');
einde
wacht af
text(10, 10, strcat('\color{green} Aantal vlakken =', num2str(length(b))));
einde
stop(video); % Stop de video-acquisitie
Aanbevolen:
Gezichtsdetectie op Raspberry Pi 4B in 3 stappen: 3 stappen
Gezichtsdetectie op Raspberry Pi 4B in 3 stappen: In deze Instructable gaan we gezichtsdetectie uitvoeren op Raspberry Pi 4 met Shunya O/S met behulp van de Shunyaface-bibliotheek. Shunyaface is een bibliotheek voor gezichtsherkenning/detectie. Het project streeft naar de hoogste detectie- en herkenningssnelheid met
IP-camera met gezichtsdetectie met behulp van de ESP32-CAM-kaart - Ajarnpa
IP-camera met gezichtsdetectie met behulp van het ESP32-CAM-bord: dit bericht is anders dan de andere en we bekijken het zeer interessante ESP32-CAM-bord dat verrassend goedkoop is (minder dan $ 9) en gemakkelijk te gebruiken is. We creëren een eenvoudige IP-camera die kan worden gebruikt om een live videofeed te streamen met behulp van de 2
Opencv Gezichtsdetectie, training en herkenning: 3 stappen
Opencv-gezichtsdetectie, training en herkenning: OpenCV is een open source computer vision-bibliotheek die erg populair is voor het uitvoeren van elementaire beeldverwerkingstaken zoals vervaging, beeldmenging, verbetering van zowel de beeld- als videokwaliteit, drempelwaardering enz. Naast beeldverwerking, het bewijst
Realtime gezichtsdetectie op de RaspberryPi-4 - Ajarnpa
Realtime gezichtsdetectie op de RaspberryPi-4: in deze Instructable gaan we realtime gezichtsdetectie uitvoeren op Raspberry Pi 4 met Shunya O/S met behulp van de Shunyaface-bibliotheek. U kunt een detectieframesnelheid van 15-17 op de RaspberryPi-4 bereiken door deze tutorial te volgen
Gezichtsdetectie + herkenning - Ajarnpa
Gezichtsdetectie + herkenning: dit is een eenvoudig voorbeeld van het uitvoeren van gezichtsdetectie en -herkenning met OpenCV vanaf een camera. OPMERKING: IK HEB DIT PROJECT GEMAAKT VOOR SENSORWEDSTRIJD EN IK GEBRUIK DE CAMERA ALS SENSOR OM GEZICHTEN TE VOLGEN EN TE HERKENNEN. Dus, ons doelIn deze sessie, 1. Installeer Anaconda