
Tartalomjegyzék:
2025 Szerző: John Day | [email protected]. Utoljára módosítva: 2025-01-23 14:47

Ennek az oktatóanyagnak a fő célja, hogy megmutassa, mennyire egyszerű lesz a képfeldolgozás, a MATLAB segítségével
Az arcfelismerés és -követés fontos és aktív kutatási terület volt, ezért fogom elmagyarázni, hogyan lehet ezt megtenni a Matlab segítségével.
A következő oktatóanyagban az alábbi dolgokat fogom elvégezni:
1. arcok felismerése a képen és számlálás.
2. az emberi szemek felismerése egy képen és számolás.
3. az emberi száj felismerése képen és számolás.
4. arcok felismerése egy videóban és számlálás.
5. az emberi szemek felismerése egy videóban és számolás.
6. az emberi száj felismerése videóban és számlálás.
1. lépés: Arcok észlelése a képen és számolás

MATLAB SCRIPT:
tiszta minden % törli az összes objektumot clc % törli a képernyőt
FDetect = látás. CascadeObjectDetector; %Objektumok észlelése Viola-Jones algoritmus segítségével
%Olvassa el a bemeneti képet
image = imread ('c: / Deskotp / HarryPotter.jpg'); %betölti a képet az imread használatával ('fájl helye / név.jpg')
BB = lépés (FDetect, kép); %Visszaadja a határoló doboz értékeit az objektumok száma alapján
ábra, imshow (I);
kitartás
i = 1 esetén: méret (BB, 1)
téglalap ('Position', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r -piros, g-zöld, b-kék
vége
title ('Arcfelismerés'); a figura %címe ki;
Az eredmény olyan lesz, mint a kép, amelyet ebben a lépésben csatoltak
Az észlelt arcok számolásához:
tiszta minden % törli az összes objektumot clc % törli a képernyőt
FDetect = látás. CascadeObjectDetector; %Objektumok észlelése Viola-Jones algoritmus használatával %Olvassa el a bemeneti képet
image = imread ('c: / Deskotp / HarryPotter.jpg'); %töltse be a képet az imread használatával ('fájl helye / név.jpg')
BB = lépés (FDetect, kép); %Visszaadja a határoló doboz értékeit az objektumok száma alapján
ábra,
imshow (I);
kitartás
i = 1 esetén: méret (BB, 1)
téglalap ('Position', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r -piros, g-zöld, b-kék
vége
text (10, 10, strcat ('\ color {red} Arcok száma =', num2str (hossz (BB)))); Ez a sor adja meg a számot
title ('Arcfelismerés'); %ábra címe
távol tartja magát;
2. lépés: Az emberi szemek felismerése a képen és számolás

MATLAB SCRIPT:
mindent kitöröl;
clc;
%EyesEyeDetect észlelése = látás. CascadeObjectDetector ('EyePairBig');
%Olvassa el a bemenetet
image = imread ('c: / Deskotp / HarryPotter.jpg'); %töltse be a képet az imread használatával ('fájl helye / név.jpg')
BB = lépés (EyeDetect, kép);
ábra,
imshow (kép);
téglalap ('Position', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
title ('Szemfelismerés');
Az eredmény olyan lesz, mint a kép, amelyet ebben a lépésben csatoltak
Az észlelt szemek számolásához:
minden törlése; clc; %A szem észlelése
EyeDetect = látás. CascadeObjectDetector ('EyePairBig');
image = imread ('c: / Deskotp / HarryPotter.jpg'); %töltse be a képet az imread használatával ('fájl helye / név.jpg')
BB = lépés (EyeDetect, kép); ábra, imshow (kép); téglalap ('Position', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
text (10, 10, strcat ('\ color {red} A szemek száma =', num2str (hossz (BB))));
title ('Szemfelismerés');
3. lépés: Az emberi száj kimutatása képen és számlálás

MATLAB SCRIPT:
mindent kitöröl;
clc;
%A száj felismerése
MouthDetect = látás. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16);
%Olvassa el a bemeneti képet = imread ('c: / Deskotp / HarryPotter.jpg'); %töltse be a képet az imread használatával ('fájl helye / név.jpg')
BB = lépés (MouthDetect, kép);
ábra, imshow (kép);
kitartás
i = 1 esetén: méret (BB, 1)
téglalap ('Position', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
vége
title ('Szájfelismerés');
távol tartja magát;
Az eredmény olyan lesz, mint a kép, amelyet ebben a lépésben csatoltunk
Az észlelt száj számának kiszámításához:
mindent kitöröl; clc; %A száj felismerése
MouthDetect = látás. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16); %Olvassa el a bemenetet
image = imread ('c: / Deskotp / HarryPotter.jpg'); %töltse be a képet az imread használatával ('fájl helye / name.jpg') BB = step (MouthDetect, image);
ábra, imshow (kép);
kitartás
i = 1 esetén: méret (BB, 1)
téglalap ('Position', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
vége
text (10, 10, strcat ('\ color {red} A száj száma =', num2str (hossz (BB))));
title ('Szájfelismerés');
távol tartja magát;
4. lépés: Arcok, szemek, száj felismerése videóban és számlálás
mindent kitöröl;
minden bezárása;
clc;
% Rögzítse a képkockákat a videó bemeneti funkcióval % Le kell cserélnie a felbontást és a telepített adapter nevét.
a = látás. CascadeObjectDetector; %arc felismerésére
% a = látás. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16); %a száj felismerésére
% a = látás. CascadeObjectDetector ('EyePairBig'); %a szem észlelésére
%csak bármelyiket használja (arc/szem/száj)
vid = video bemenet ('winvideo', 1, 'yuy2_320x240'); % Állítsa be a videoobjektum tulajdonságait
set (vid, 'FramesPerTrigger', Inf);
set (vid, 'ReturnedColorspace', 'rgb');
vid. FrameGrabInterval = 5; %itt kezdje el a videófelvételt
start (vid) % Állíts be egy ciklust, amely 100 képkocka után leáll
while (vid. FramesAcquired <= 200) % Szerezd meg az aktuális kép pillanatképét
adatok = pillanatfelvétel (vid);
imshow (adatok);
b = lépés (a, adatok);
kitartás
i = 1 esetén: méret (b, 1)
téglalap ('position', b (i,:), 'linewidth', 2, 'linestyle', '-', 'EdgeColor', 'r');
vége
távol tartja magát
text (10, 10, strcat ('\ color {green} Arcok száma =', num2str (hossz (b))));
vége
stop (vid); % Állítsa le a videófelvételt
Ajánlott:
Opencv arcfelismerés, képzés és felismerés: 3 lépés

Opencv arcfelismerés, képzés és felismerés: Az OpenCV egy nyílt forráskódú számítógépes látáskönyvtár, amely nagyon népszerű olyan alapvető képfeldolgozási feladatok elvégzéséhez, mint az elmosódás, képkeverés, a kép javítása, valamint a videó minősége, küszöbértékek stb. A képfeldolgozás mellett bizonyít
Arcfelismerés és azonosítás - Arduino arcazonosító OpenCV Python és Arduino használatával: 6 lépés

Arcfelismerés és azonosítás | Arduino arcazonosító az OpenCV Python és Arduino használatával .: Arcfelismerés Az AKA arcazonosító manapság az egyik legfontosabb funkció a mobiltelefonokban. Tehát felmerült bennem egy kérdés, " kaphatok arcazonosítót az Arduino projektemhez " és a válasz igen … Utazásom a következőképpen kezdődött: 1. lépés: Hozzáférés
Arcfelismerés a gyakorlatban: 21 lépés

Arcfelismerés a gyakorlatban: Ez a téma annyira lenyűgöz, hogy elveszítem az alvásomat: A számítógépes látás, a tárgyak és emberek észlelése egy előre betanított modell segítségével
Arcfelismerés Smart Lock LTE Pi HAT segítségével: 4 lépés

Intelligens arcfelismerő zár az LTE Pi HAT segítségével: Az arcfelismerést egyre szélesebb körben használják, ezzel intelligens zárat készíthetünk
ESP32 CAM arcfelismerés MQTT támogatással - AI-gondolkodó: 4 lépés

ESP32 CAM arcfelismerés MQTT támogatással | AI-Thinker: Helló! Meg akartam osztani a kódomat egy projekthez, ha szükségem lenne egy ESP CAM-ra, arcfelismeréssel, amely adatokat küldhet az MQTT-nek. Nos, hátha 7 óra után több kódpéldán keresztül néztem, és megkerestem, mi az, befejeztem