显示llandmark点

本文介绍了一种使用MATLAB进行图像处理的方法,通过读取图像文件和形状文件,标注了人脸上的25个关键特征点,并展示了如何在图像中标记这些点。此过程涉及图像读取、形状文件解析及特征点的可视化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

clc
clear
I=imread('Aaron_Eckhart_0001.jpg');
fid=fopen('Aaron_Eckhart_0001.jpg.shape','rt');
if fid<0
    continue;
end
count=fscanf(fid,'%d',1);
shape2D=fscanf(fid,'%d %f %f',[3,inf]);
fclose(fid);
if size(shape2D,2)<25
    shapeFileName
    continue;
end
green(1, 1, :) = [0 255 0];
    for n2 = 1 : 25
        p(1)=round(shape2D(2,n2));
        p(2)=round(shape2D(3,n2));
        I(p(2) -1 :p(2) + 1, p(1) - 1 : p(1) + 1, :) = repmat(green, [3 3]);
        I(p(2) -1:  p(2) +1, p(1) - 1 : p(1) + 1, :) = repmat(green, [3 3]);
        imwrite(I,strcat(num2str(n2),'.jpg'));
    end
imshow(I)

出来的结果是:

 

从图上我们可以看出:

1-----25 点我们的这样定义:

第一个点:

第二个点:

第三个点:
右面眉毛的右边

第四个点:

右边眉毛的左边

第五个点:

左边眉毛的右边

第六个点:

左边眉毛的左边

第七个点:
forehead

第八个点:

nose top

第九个点-第十三个点:

第十四个点-十五点

鼻子两边的点

第十六店到第二十一点

左眼跟右眼下方的点6ge

第二十二点-第二十五点

显示的二十五个点应该是:

要切割的二十个点的位置。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值