
Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-23 12:54

Bu təlimatların əsas məqsədi, MATLAB -ın köməyi ilə görüntü emalının nə qədər asan olacağını göstərməkdir.
Üz tanıma və izləmə vacib və aktiv bir araşdırma sahəsi idi, buna görə də bunun Matlab ilə necə edilə biləcəyini izah edəcəyəm.
Aşağıdakı dərslikdə aşağıdakı işləri edəcəyəm:
1. şəkildəki üzlərin aşkarlanması və sayılması.
2. bir görüntüdə insan gözlərinin aşkarlanması və sayılması.
3. görüntüdə insan ağzını aşkar etmək və saymaq.
4. Videoda üzlərin aşkarlanması və sayılması.
5. Videoda insan gözlərinin aşkarlanması və sayılması.
6. Videoda insan ağzını aşkar etmək və saymaq.
Addım 1: Bir Şəkildə Üzlərin Tapılması və Sayılması

MATLAB SKRİTİ:
hamısını silmək bütün obyektləri təmizləmək
FDetect = görmə. CascadeObjectDetector; Viola-Jones Alqoritmi istifadə edərək obyektləri aşkar edin
Giriş şəklini oxuyun
image = imread ('c: / Deskotp / HarryPotter.jpg'); %imread ('fayl yeri / name.jpg') istifadə edərək görüntünü yükləyin
BB = addım (FDetect, görüntü); Obyektlərin sayına əsaslanaraq Bounding Box dəyərlərini qaytarır
rəqəm, imshow (I);
gözlə
i = 1 üçün: ölçü (BB, 1)
düzbucaqlı ('Mövqe', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r -qırmızı, g-yaşıl, b-mavi
bitmək
başlıq ('Üz Algılama'); fiqurun adı %;
Nəticə, bu addımın özündə əlavə olunan şəkil kimi olacaq
Tapılan üzlərin sayını hesablamaq üçün:
hamısını silmək bütün obyektləri silmək
FDetect = görmə. CascadeObjectDetector; Viola-Jones Alqoritmi istifadə edərək obyektlərin aşkarlanması Giriş şəklini oxuyun
image = imread ('c: / Deskotp / HarryPotter.jpg'); %imread ('fayl yeri / name.jpg') istifadə edərək görüntünü yükləyin
BB = addım (FDetect, görüntü); Obyektlərin sayına əsaslanaraq Bounding Box dəyərlərini qaytarır
rəqəm,
imshow (I);
gözlə
i = 1 üçün: ölçü (BB, 1)
düzbucaqlı ('Mövqe', BB (i,:), 'LineWidth', 5, 'LineStyle', '-', 'EdgeColor', 'r'); %r -qırmızı, g-yaşıl, b-mavi
bitmək
mətn (10, 10, strcat ('\ color {red} No of face =', num2str (length (BB))))); Bu xətt sizə sayını verir
başlıq ('Üz Algılama'); rəqəmin adı %
dayandırmaq;
Addım 2: Bir Şəkildə İnsan Gözlərinin Algılanması və Sayılması

MATLAB SKRİTİ:
hamısını sil, hamısını təmizlə;
clc;
EyesEyeDetect aşkar etmək üçün = vision. CascadeObjectDetector ('EyePairBig');
Giriş oxuyun
image = imread ('c: / Deskotp / HarryPotter.jpg'); %imread ('fayl yeri / name.jpg') istifadə edərək görüntünü yükləyin
BB = addım (EyeDetect, görüntü);
rəqəm,
imshow (şəkil);
düzbucaqlı ('Mövqe', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
başlıq ('Gözlərin Algılanması');
Nəticə, bu addımın özündə əlavə olunan şəkil kimi olacaq
Aşkarlanan gözlərin sayını hesablamaq üçün:
hamısını təmizləyin; clc; Gözləri aşkar etmək üçün
EyeDetect = görmə. CascadeObjectDetector ('EyePairBig');
image = imread ('c: / Deskotp / HarryPotter.jpg'); %imread ('fayl yeri / name.jpg') istifadə edərək görüntünü yükləyin
BB = addım (EyeDetect, görüntü); rəqəm, imshow (şəkil); düzbucaqlı ('Mövqe', BB, 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'b');
mətn (10, 10, strcat ('\ color {red} No of eyes =', num2str (length (BB)))));
başlıq ('Gözlərin Algılanması');
Addım 3: Bir Görünüşdə İnsan Ağzının Algılanması və Sayılması

MATLAB SKRİTİ:
hamısını sil, hamısını təmizlə;
clc;
Mouth aşkar etmək üçün
MouthDetect = vision. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16);
Giriş şəklini oxuyun = imread ('c: / Deskotp / HarryPotter.jpg'); %imread ('fayl yeri / name.jpg') istifadə edərək görüntünü yükləyin
BB = addım (MouthDetect, görüntü);
rəqəm, imshow (şəkil);
gözlə
i = 1 üçün: ölçü (BB, 1)
düzbucaqlı ('Mövqe', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
bitmək
başlıq ('Ağız Algılama');
dayandırmaq;
Nəticə, bu addımın özündə əlavə olunan şəkil kimi olacaq
Tapılan ağız sayını hesablamaq üçün:
hamısını sil, hamısını təmizlə; clc; Mouth aşkar etmək üçün
MouthDetect = vision. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16); Giriş oxuyun
image = imread ('c: / Deskotp / HarryPotter.jpg'); %imread ('fayl yeri / name.jpg') istifadə edərək görüntünü yükləyin BB = addım (MouthDetect, şəkil);
rəqəm, imshow (şəkil);
gözlə
i = 1 üçün: ölçü (BB, 1)
düzbucaqlı ('Mövqe', BB (i,:), 'LineWidth', 4, 'LineStyle', '-', 'EdgeColor', 'r');
bitmək
mətn (10, 10, strcat ('\ color {red} No mouths =', num2str (length (BB)))));
başlıq ('Ağız Algılama');
dayandırmaq;
Addım 4: Videoda Üzləri, Gözləri, Ağzını Tapmaq və Saymaq
hamısını sil, hamısını təmizlə;
hamısını bağlamaq;
clc;
Video giriş funksiyasından istifadə edərək video çərçivələri çəkin Çözünürlüyü və quraşdırılmış adapterinizin adını dəyişdirməlisiniz.
a = görmə. CascadeObjectDetector; üz aşkar etmək üçün
% a = vision. CascadeObjectDetector ('Mouth', 'MergeThreshold', 16); ağız aşkar etmək üçün
% a = görmə. CascadeObjectDetector ('EyePairBig'); %gözləri aşkar etmək üçün
%hər hansı birini istifadə edin (üz/göz/ağız)
vid = videoinput ('winvideo', 1, 'yuy2_320x240'); Video obyektinin xüsusiyyətlərini təyin edin
dəsti (vid, 'FramesPerTrigger', Inf);
set (vid, 'ReturnedColorspace', 'rgb');
vid. FrameGrabInterval = 5; burada video əldə etməyə başlayın
start (vid) % 100 kadr əldə etdikdən sonra dayanacaq bir döngə təyin edin
while (vid. FramesAcquired <= 200) % Cari çərçivənin anlıq görüntüsünü əldə edin
data = getsnapshot (vid);
imshow (məlumatlar);
b = addım (a, məlumat);
gözlə
i = 1 üçün: ölçü (b, 1)
düzbucaqlı ('mövqe', b (i,:), 'xətt genişliyi', 2, 'xətti üslub', '-', 'EdgeColor', 'r');
bitmək
dayanmaq
mətn (10, 10, strcat ('\ color {green} No of face =', num2str (length (b)))));
bitmək
dayandır (vid); Video əldə etməyi dayandırın
Tövsiyə:
Abellcadabra (Üz Tanıma Qapı Kilidi Sistemi): 9 addım

Abellcadabra (Üz Tanıma Qapı Kilidi Sistemi): Karantin zamanı evin qapısı üçün üz tanıma quraraq vaxtı öldürmək üçün bir yol tapmağa çalışdım. Adını Abellcadabra qoydum - bu, Abracadabra ilə qapının zəngi olan sehrli bir ifadənin birləşməsidir və mən yalnız zəng vururam. LOL
Opencv Üz Tanıma, Təlim və Tanıma: 3 addım

Opencv Üz Tanıma, Təlim və Tanıma: OpenCV, bulanıqlaşdırma, şəkil qarışdırma, görüntünün yaxşılaşdırılması, video keyfiyyətinin artırılması, eşikləmə və s. sübut edir
Üz Tanıma və Tanıma - OpenCV Python və Arduino istifadə edərək Arduino Face ID: 6 Addım

Üz Tanıma və Tanıma | OpenCV Python və Arduino istifadə edərək Arduino Face ID: Üz tanıma AKA üz ID indiki zamanda cib telefonlarında ən əhəmiyyətli xüsusiyyətlərdən biridir. Beləliklə, bir sualım var idi: "Arduino layihəm üçün üz idim ola bilərmi?" və cavab bəli … Səyahətim belə başladı: Addım 1: Bizə giriş
DIY MusiLED, Bir klik Windows və Linux Tətbiqi (32 bit və 64 bit) ilə Sinxronizasiya edilmiş LEDlər. Yenidən Yaratmaq, İstifadəsi Asan, Porta Asan .: 3 Addım

DIY MusiLED, Bir klik Windows və Linux Tətbiqi (32 bit və 64 bit) ilə Sinxronizasiya edilmiş LEDlər. Yenidən Yaratmaq, İstifadəsi Kolay, Portu Asan.: Bu layihə Arduino Kartına 18 LED (6 Qırmızı + 6 Mavi + 6 Sarı) bağlamağa və kompüterinizin Səs Kartının real vaxt siqnallarını təhlil etməyə və onları Diod effektlərinə görə onları işıqlandırmaq üçün LEDlər (Tələ, Yüksək Şapka, Kick)
Üz Tanıma+Tanıma: 8 Addım (Şəkillərlə birlikdə)

Üz Algılama+tanıma: Bu, bir kameradan OpenCV ilə üz tanıma və tanıma işlərinin sadə bir nümunəsidir. DİQQƏT: BU PROJƏNİ SENSOR MÜSABİQƏSİ ÜÇÜN YAPDIM VƏ YÜZLƏRİ İZLƏMƏK VƏ TANIŞI YÜZÜNÜN KAMERASINDAN İSTİFADƏ ETDİM