Orodha ya maudhui:

MATLAB Kugundua Uso Rahisi: Hatua 4
MATLAB Kugundua Uso Rahisi: Hatua 4

Video: MATLAB Kugundua Uso Rahisi: Hatua 4

Video: MATLAB Kugundua Uso Rahisi: Hatua 4
Video: Самомассаж лица и шеи cкребком Гуаша Айгерим Жумадилова. Скребковый массаж. 2024, Novemba
Anonim
MATLAB Kugundua Uso Rahisi
MATLAB Kugundua Uso Rahisi

Lengo kuu la mafundisho haya ni kuonyesha jinsi rahisi, usindikaji wa picha utakuwa, Kwa msaada wa MATLAB

Kugundua uso na ufuatiliaji kumekuwa uwanja muhimu wa utafiti, kwa hivyo ndio sababu nitaelezea jinsi inaweza kufanywa na Matlab.

Katika mafunzo yafuatayo nitafanya vitu vifuatavyo:

1. kugundua nyuso kwenye picha na kuhesabu.

2. kugundua macho ya mwanadamu kwenye picha na kuhesabu.

3. kugundua kinywa cha mwanadamu kwenye picha na kuhesabu.

4. kugundua nyuso kwenye Video na kuhesabu.

5. kugundua macho ya mwanadamu kwenye Video na kuhesabu.

6. kugundua kinywa cha mwanadamu kwenye Video na kuhesabu.

Hatua ya 1: Kugundua Nyuso katika Picha na Kuhesabu

Kugundua Nyuso katika Picha na Kuhesabu
Kugundua Nyuso katika Picha na Kuhesabu

MAANDIKO YA MATLABU:

futa yote% futa kila kitu wazisclc% skrini wazi

FDetect = maono. CascadeObjectDetector; Gundua vitu ukitumia algorithm ya Viola-Jones

Soma picha ya pembejeo

picha = imread ('c: / Deskotp / HarryPotter.jpg'); % pakia picha kwa kutumia imread ('eneo la faili jina.jpg')

BB = hatua (FDetect, picha); Hurejesha maadili ya Sanduku la Kupakana kulingana na idadi ya vitu

takwimu, imshow (I);

subiri

kwa i = 1: saizi (BB, 1)

mstatili ('Nafasi', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); % r -red, g-kijani, b-bluu

mwisho

kichwa ('Kugundua Uso'); % kichwa cha takwimu kimezimwa;

Matokeo yake yatakuwa kama picha ambayo iliambatanishwa katika hatua hii yenyewe

Ili kuhesabu idadi ya nyuso zilizogunduliwa:

futa yote% futa skrini zote wazi wazi

FDetect = maono. CascadeObjectDetector; Gundua vitu ukitumia Viola-Jones algorithm Soma picha ya kuingiza

picha = imread ('c: / Deskotp / HarryPotter.jpg'); % pakia picha kwa kutumia imread ('eneo la faili jina.jpg')

BB = hatua (FDetect, picha); Hurejesha maadili ya Sanduku la Kupakana kulingana na idadi ya vitu

takwimu

onyesha (I);

subiri

kwa i = 1: saizi (BB, 1)

mstatili ('Nafasi', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); % r -red, g-kijani, b-bluu

mwisho

maandishi (10, 10, strcat ('\ color {red} No of faces =', num2str (length (BB)))); Mstari huu hukupa hesabu

kichwa ('Kugundua Uso'); Jina la takwimu

shikilia;

Hatua ya 2: Kugundua Macho ya Binadamu katika Picha na Kuhesabu

Kugundua Macho ya Binadamu katika Picha na Kuhesabu
Kugundua Macho ya Binadamu katika Picha na Kuhesabu

MAANDIKO YA MATLABU:

wazi yote;

clc;

Kuchunguza EyesEyeDetect = maono. CascadeObjectDetector ('EyePairBig');

Soma pembejeo

picha = imread ('c: / Deskotp / HarryPotter.jpg'); % pakia picha kwa kutumia imread ('eneo la faili jina.jpg')

BB = hatua (EyeDetect, picha);

takwimu

imshow (picha);

mstatili ('Nafasi', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');

kichwa ('Kugundua Macho');

Matokeo yake yatakuwa kama picha ambayo iliambatanishwa katika hatua hii yenyewe

Ili kuhesabu idadi ya macho yaliyopatikana:

wazi yote; Kugundua Macho

EyeDetect = maono. CascadeObjectDetector ('EyePairBig');

picha = imread ('c: / Deskotp / HarryPotter.jpg'); % pakia picha kwa kutumia imread ('eneo la faili jina.jpg')

BB = hatua (EyeDetect, picha); takwimu, imshow (picha); mstatili ('Nafasi', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');

maandishi (10, 10, strcat ('\ color {red} No of eyes =', num2str (length (BB))));

kichwa ('Kugundua Macho');

Hatua ya 3: Kugundua Kinywa cha Binadamu kwa Picha na Kuhesabu

Kugundua Kinywa cha Binadamu katika Picha na Kuhesabu
Kugundua Kinywa cha Binadamu katika Picha na Kuhesabu

MAANDIKO YA MATLABU:

wazi yote;

clc;

Kuchunguza Kinywa

MouthDetect = maono. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16);

Soma picha ya ingizo = imread ('c: / Deskotp / HarryPotter.jpg'); % pakia picha kwa kutumia imread ('eneo la faili jina.jpg')

BB = hatua (KinywaKutafuta, picha);

takwimu, imshow (picha);

subiri

kwa i = 1: saizi (BB, 1)

mstatili ('Nafasi', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');

mwisho

kichwa ('Kugundua Kinywa');

shikilia;

Matokeo yake yatakuwa kama picha ambayo iliambatanishwa katika hatua hii yenyewe

Ili kuhesabu idadi ya Kinywa kilichogunduliwa:

wazi yote; clc; Kuchunguza Kinywa

MouthDetect = maono. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16); Soma pembejeo

picha = imread ('c: / Deskotp / HarryPotter.jpg'); % pakia picha kwa kutumia imread ('eneo la faili jina.jpg') BB = hatua (MouthDetect, picha);

takwimu, imshow (picha);

subiri

kwa i = 1: saizi (BB, 1)

mstatili ('Nafasi', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');

mwisho

maandishi (10, 10, strcat ('\ color {red} No of mouths =', num2str (length (BB))));

kichwa ('Kugundua Kinywa');

shikilia;

Hatua ya 4: Kugundua Nyuso, macho, mdomo kwenye Video na Kuhesabu

wazi yote;

funga zote;

clc;

Nasa muafaka wa video ukitumia kazi ya kuingiza video% Lazima ubadilishe azimio na jina lako la adapta iliyosanikishwa.

a = maono. CascadeObjectDetector; kugundua uso

% a = maono. CascadeObjectDetector ('Kinywa', 'Unganisha Kizingiti', 16); kugundua kinywa

% a = maono. CascadeObjectDetector ('EyePairBig'); kugundua macho

Tumia moja tu (uso / macho / mdomo)

vid = videoinput ('winvideo', 1, 'yuy2_320x240'); Kuweka mali ya kitu video

kuweka (vid, 'FramesPerTrigger', Inf);

kuweka (vid, 'ReturnedColorspace', 'rgb');

vid. FrameGrabInterval = 5; % anza upatikanaji wa video hapa

Anza kitanzi kinachoacha baada ya muafaka 100 wa ununuzi

wakati (vid. FramesAcured <= 200)% Pata picha ya fremu ya sasa

data = anapata picha (vid);

imshow (data);

b = hatua (a, data);

subiri

kwa i = 1: saizi (b, 1)

mstatili ('msimamo', b (i,:), 'linewidth', 2, 'linestyle', '-', 'EdgeColor', 'r');

mwisho

shikilia

maandishi (10, 10, strcat ('\ color {green} No of faces =', num2str (length (b))));

mwisho

kuacha (vid); Acha upatikanaji wa video

Ilipendekeza: