matlab图像配准

所谓图像配准就是将同一场景的两幅或多幅图像进行对准,比如航空照片的配准,以及在很多人脸自动分析系统中的人脸归一化,即要使各张照片中的人脸具有近似的大小,尽量处于相同的位置。

一般来说,我们以基准图像为参照,并通过一些基准点(fiducial points)找到恰当的空间变换关系s和t,对输入图像进行相应的几何变换,从而实现它与基准图像在这些基准点位置上的对齐。

人脸图像配准的matlab实现:

1、读入基准图像和要配准的输入图像

>> Iin=imread('E:\表情数据库\SRC\ORL\s1_7.bmp');
>> Ibase=imread('E:\表情数据库\SRC\ORL\s1_9.bmp');

>> figure 
>> subplot(1,2,1),imshow(Iin);
>> subplot(1,2,2),imshow(Ibase);

2、标准基准点对,将其保存至工作空间。

利用matlab提供的cpselect函数可以交互式地选择基准点。在命令行中按照以下方式调用cpselect启动交互工具

>>  cpselect(Iin,Ibase);


在该control point select窗口中,点击tool里面的add point一项进行手工标注点,然后在file菜单里export  points to workspace 即可输出表定点的坐标位置。

>>  cpselect(Iin,Ibase);
Variables have been created in the current workspace.

然后在工作空间里可以找到标注点的数据信息。我标定了4个配对点如下:

>> input_points2


input_points2 =


   39.3125   63.9375
   49.4375   64.0625
   60.3125   83.5625
   29.6875   84.4375


>> base_points2


base_points2 =


   40.1875   73.9375
   52.1875   74.0625
   59.6875   89.4375
   31.4375   89.0625





注意:调用cpselect()函数要将需要配准的图像作为第一参数,将基准图像作为后一个参数。并且cpselect只接受灰度图像,如果需要处理RGB彩色图像,可以只给CPselect函数传递一个图像的层。

>>cpselect(Irgb(:,:,1),Ibase);%只传递输入图像的红色分量图

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值