Satura rādītājs:
- 1. darbība: sejas noteikšana attēlā un skaitīšana
- 2. darbība. Cilvēka acu noteikšana attēlā un skaitīšana
- 3. darbība: cilvēka mutes noteikšana attēlā un skaitīšana
- 4. solis: sejas, acu, mutes noteikšana videoklipā un skaitīšana
Video: MATLAB Vienkārša sejas noteikšana: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
Šīs instrukcijas galvenais mērķis ir parādīt, cik vienkārša būs attēlu apstrāde, izmantojot MATLAB
Sejas noteikšana un izsekošana ir bijusi svarīga un aktīva pētniecības joma, tāpēc es paskaidrošu, kā to var izdarīt ar Matlab.
Šajā apmācībā es darīšu šādas lietas:
1. sejas noteikšana attēlā un skaitīšana.
2. cilvēka acu noteikšana attēlā un skaitīšana.
3. cilvēka mutes noteikšana attēlā un skaitīšana.
4. seju noteikšana videoklipā un skaitīšana.
5. cilvēka acu noteikšana video un skaitīšana.
6. cilvēka mutes noteikšana videoklipā un skaitīšana.
1. darbība: sejas noteikšana attēlā un skaitīšana
MATLAB SCRIPT:
notīrīt visus % notīrīt visus objektusclc % notīrīt ekrānu
FDetect = redze. CascadeObjectDetector; Atklāt objektus, izmantojot Viola-Jones algoritmu
%Lasīt ievades attēlu
attēls = imread ('c: / Deskotp / HarryPotter.jpg'); %ielādējiet attēlu, izmantojot imread ('faila atrašanās vieta / name.jpg')
BB = solis (FDetect, attēls); %Atgriež ierobežojošā lodziņa vērtības, pamatojoties uz objektu skaitu
skaitlis, imshow (I);
uzgaidi
i = 1: izmērs (BB, 1)
taisnstūris ('Position', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r-sarkans, g-zaļš, b-zils
beigas
title ('Sejas noteikšana'); figūras nosaukums %izslēgts;
Rezultāts būs tāds pats kā šajā solī pievienotais attēls
Lai saskaitītu konstatēto seju skaitu:
notīrīt visus % notīrīt visus objektusclc % notīrīt ekrānu
FDetect = redze. CascadeObjectDetector; %Noteikt objektus, izmantojot Viola-Jones algoritmu %Lasīt ievades attēlu
attēls = imread ('c: / Deskotp / HarryPotter.jpg'); %ielādējiet attēlu, izmantojot imread ('faila atrašanās vieta / name.jpg')
BB = solis (FDetect, attēls); %Atgriež ierobežojošā lodziņa vērtības, pamatojoties uz objektu skaitu
figūra,
imshow (I);
uzgaidi
i = 1: izmērs (BB, 1)
taisnstūris ('Position', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r-sarkans, g-zaļš, b-zils
beigas
text (10, 10, strcat ('\ color {red} Seju skaits =', num2str (garums (BB)))); Šī rinda sniedz jums skaitli
title ('Sejas noteikšana'); %figūras nosaukums
noturēties;
2. darbība. Cilvēka acu noteikšana attēlā un skaitīšana
MATLAB SCRIPT:
nodzēst visu;
clc;
%Lai noteiktu EyesEyeDetect = redze. CascadeObjectDetector ('EyePairBig');
%Izlasiet ievadi
attēls = imread ('c: / Deskotp / HarryPotter.jpg'); %ielādējiet attēlu, izmantojot imread ('faila atrašanās vieta / name.jpg')
BB = solis (EyeDetect, attēls);
skaitlis,
imshow (attēls);
taisnstūris ('Position', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
nosaukums (“Acis noteikšana”);
Rezultāts būs tāds pats kā šajā solī pievienotais attēls
Lai saskaitītu konstatēto acu skaitu:
notīrīt visu; clc; %Lai noteiktu acis
EyeDetect = redze. CascadeObjectDetector ('EyePairBig');
attēls = imread ('c: / Deskotp / HarryPotter.jpg'); %ielādējiet attēlu, izmantojot imread ('faila atrašanās vieta / name.jpg')
BB = solis (EyeDetect, attēls); skaitlis, imshow (attēls); taisnstūris ('Position', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
text (10, 10, strcat ('\ color {red} Acu skaits =', num2str (garums (BB))));
nosaukums (“Acis noteikšana”);
3. darbība: cilvēka mutes noteikšana attēlā un skaitīšana
MATLAB SCRIPT:
nodzēst visu;
clc;
%Mutes noteikšanai
MouthDetect = redze. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16);
%Izlasiet ievades attēlu = imread ('c: / Deskotp / HarryPotter.jpg'); %ielādēt attēlu, izmantojot imread ('faila atrašanās vieta / name.jpg')
BB = solis (MuteDetect, attēls);
attēls, imshow (attēls);
uzgaidi
i = 1: izmērs (BB, 1)
taisnstūris ('Position', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
beigas
nosaukums ("Mutes noteikšana");
noturēties;
Rezultāts būs tāds pats kā šajā solī pievienotais attēls
Lai saskaitītu konstatēto mutes dobumu skaitu:
nodzēst visu; clc; %Mutes noteikšanai
MouthDetect = redze. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16); %Izlasiet ievadi
attēls = imread ('c: / Deskotp / HarryPotter.jpg'); %ielādēt attēlu, izmantojot imread ('faila atrašanās vieta / name.jpg') BB = solis (MouthDetect, attēls);
attēls, imshow (attēls);
uzgaidi
i = 1: izmērs (BB, 1)
taisnstūris ('Position', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
beigas
text (10, 10, strcat ('\ color {red} Mutes skaits =', num2str (garums (BB))));
nosaukums ("Mutes noteikšana");
noturēties;
4. solis: sejas, acu, mutes noteikšana videoklipā un skaitīšana
nodzēst visu;
aizvērt visu;
clc;
% Uzņemiet video kadrus, izmantojot video ievades funkciju % Jums ir jāaizstāj izšķirtspēja un instalētā adaptera nosaukums.
a = redze. CascadeObjectDetector; %sejas noteikšanai
% a = vīzija. CascadeObjectDetector ('Mute', 'MergeThreshold', 16); %, lai noteiktu muti
% a = redze. CascadeObjectDetector ('EyePairBig'); %, lai noteiktu acis
%izmanto tikai vienu (seju/acis/muti)
vid = video ieeja ('winvideo', 1, 'yuy2_320x240'); % Iestatiet video objekta rekvizītus
set (vid, 'FramesPerTrigger', Inf);
set (vid, 'ReturnedColorspace', 'rgb');
vid. FrameGrabInterval = 5; %sāciet video iegūšanu šeit
sākums (vid) % Iestatiet cilpu, kas apstājas pēc 100 kadru iegūšanas
while (vid. FramesAcquired <= 200) % Iegūstiet pašreizējā kadra momentuzņēmumu
dati = momentuzņēmums (vid);
imshow (dati);
b = solis (a, dati);
uzgaidi
i = 1: izmērs (b, 1)
taisnstūris ('position', b (i,:), 'linewidth', 2, 'linestyle', '-', 'EdgeColor', 'r');
beigas
turies
text (10, 10, strcat ('\ color {green} Seju skaits =', num2str (garums (b))));
beigas
stop (vid); % Pārtrauciet video iegūšanu
Ieteicams:
Sejas noteikšana Raspberry Pi 4B 3 soļos: 3 soļi
Sejas noteikšana Raspberry Pi 4B 3 soļos: Šajā instrukcijā mēs veiksim sejas noteikšanu Raspberry Pi 4 ar Shunya O/S, izmantojot Shunyaface bibliotēku. Shunyaface ir sejas atpazīšanas/noteikšanas bibliotēka. Projekta mērķis ir sasniegt visātrāko atklāšanas un atpazīšanas ātrumu, izmantojot
Opencv sejas noteikšana, apmācība un atpazīšana: 3 soļi
Opencv sejas noteikšana, apmācība un atpazīšana: OpenCV ir atvērtā pirmkoda datora redzes bibliotēka, kas ir ļoti populāra, lai veiktu tādus pamata attēlu apstrādes uzdevumus kā aizmiglošana, attēlu sajaukšana, attēla uzlabošana, kā arī video kvalitāte, sliekšņa noteikšana utt. tas pierāda
Sejas atpazīšana un identifikācija - Arduino sejas ID, izmantojot OpenCV Python un Arduino .: 6 soļi
Sejas atpazīšana un identifikācija | Arduino sejas ID, izmantojot OpenCV Python un Arduino .: Sejas atpazīšana AKA sejas ID ir viena no svarīgākajām mūsdienu mobilo tālruņu funkcijām. Tātad, man radās jautājums " vai man var būt sejas ID savam Arduino projektam " un atbilde ir jā … Mans ceļojums sākās šādi: 1. solis: piekļuve mums
Reālā laika sejas noteikšana RaspberryPi-4: 6 soļi (ar attēliem)
Reālā laika sejas noteikšana RaspberryPi-4: Šajā instrukcijā mēs veiksim sejas noteikšanu reālā laikā Raspberry Pi 4 ar Shunya O/S, izmantojot Shunyaface bibliotēku. Izmantojot šo apmācību, RaspberryPi-4 varat sasniegt noteikšanas kadru ātrumu 15–17
Sejas noteikšana+atpazīšana: 8 soļi (ar attēliem)
Sejas noteikšana+atpazīšana: Šis ir vienkāršs sejas noteikšanas un atpazīšanas piemērs ar OpenCV no kameras. PIEZĪME: Es šo projektu izstrādāju sensoru konkursam, un es izmantoju kameru kā sensoru, lai izsekotu un atpazītu sejas. Tātad, mūsu mērķis šajā sesijā: 1. Instalējiet Anaconda