首页 > 其他分享 >使用matlab机器视觉工具箱实现人脸特征的检测和定位,识别并标注眉毛,眼睛,鼻子,嘴巴

使用matlab机器视觉工具箱实现人脸特征的检测和定位,识别并标注眉毛,眼睛,鼻子,嘴巴

时间:2023-03-18 22:32:08浏览次数:53  
标签:Detect Img Mouth matlab 视觉 人脸 工具箱 hold Nose

1.算法描述 机器视觉工具箱(MVTB)提供了许多在机器视觉和基于视觉的控制中有用的功能。这是一个有点折衷的收藏品,反映了作者对光度学、摄影测量学、色度学等领域的个人兴趣。它包括100多个功能,包括图像文件读写、采集、显示、过滤、斑点、点和线特征提取、数学形态学、单应、视觉雅可比、摄像机校准和颜色空间转换等操作。

   机器视觉工具箱(MVT的)规定,在机器视觉和基于视觉的控制有益的多种功能。这是一个有点折衷收集反映作者在光度学,摄影测量,色度学 方面的个人利益。它包括文件的 阅读和写作,采集,显示,过滤,一滴,点和线特征提取,数学形态学,homographies,视觉的Jacobian,摄像机校准和色彩空间转换遍及 90多个业务功能,如图像。工具箱,Matlab与现代计算机工作站相结合,是一个有益的环境和便利的机器视觉算法研究。温和的图像大小处理率可以得到充分的``实时'',以便闭环控制。如焦点动态窗口(未提供),可用于增加处理速度注意方法。

工具箱的优点是:

代码是成熟的,并且为相同算法的其他实现提供了一个比较点; 这些例程通常是以一种简单明了的方式编写的,这样可以方便地理解,可能会以牺牲计算效率为代价。如果你对计算效率有强烈的感觉,那么你可以重写函数以提高效率,使用MATLAB编译器编译M-file,或者创建一个MEX版本; 由于源代码是可用的,因此有利于理解和教学。 2.仿真效果预览 matlab2022a仿真结果如下:

3.png1.png2.png

3.MATLAB核心程序

Face = step(Face_Detect,Img);
figure,
imshow(Img); hold on
for i = 1:size(Face,1)
    rectangle('Position',Face(i,:),'LineWidth',5,'LineStyle','-','EdgeColor','r');
end
title('Face Detection');
hold off;
 
%% To detect Nose
Nose_Detect = vision.CascadeObjectDetector('Nose','MergeThreshold',16);
Nose = step(Nose_Detect,Img);
figure,
imshow(Img); hold on
for i = 1:size(Nose,1)
    rectangle('Position',Nose(i,:),'LineWidth',4,'LineStyle','-','EdgeColor','b');
end
title('Nose Detection');
hold off;
 
%% To detect Mouth
Mouth_Detect = vision.CascadeObjectDetector('Mouth','MergeThreshold',16);
 
Mouth = step(Mouth_Detect,Img);
figure,
imshow(Img); hold on
for i = 1:size(Mouth,1)
 rectangle('Position',Mouth(i,:),'LineWidth',4,'LineStyle','-','EdgeColor','r');
end
title('Mouth Detection');
hold off;

标签:Detect,Img,Mouth,matlab,视觉,人脸,工具箱,hold,Nose
From: https://blog.51cto.com/matworld/6129836

相关文章