Dgital Image Processing hm2

T1

Description

给定图像car.png和模版图像wheel.png,利用相关检测实现对car图像中的
wheel检测,具有最大相关值的位置可以解释为所检测到的wheel位置。程序的输入是图像和模版,要求:
(i)显示图像的相关值结果;
(ii)列出在图像中检测到的所有目标的(x,y)坐标。

Analysis

利用两幅图像的相关值来解决图像匹配的问题,因为把被匹配图像作为kernel,然后需要检测的图像作为pattern,相关可以用来检测和定位一个由kernel表示的pattern,被检测处pattern响应强。

具体实现

  1. 首先,把car和wheel两张图片读入进来,存储到两个矩阵中。
  2. 因为用imread函数都进来的矩阵都是uint8表示形式,相关操作的数值会比较大,容易溢出,所以把两个矩阵转换成double的表示形式。
  3. 可以选择用padding的方式对矩阵进行扩充,但由于这次的操作不是检测边缘,所以也可以不填充,直接用模板进行相关值计算操作。
  4. 相关值的计算公式为:
    G[i,j]=ku=kkv=kH[u,v]F[i+u.j+v]
    1. 因为相关值可能没有十分精确地反映真正的相关程度,所以,我们进行了归一化处理,利用:
      R[i,j]=(ku=kkv=kH[u,v]F[i+u.j+v])2(ku=kkv=k(H[u,v])2)×(ku=kkv=k(F[i+u.j+v])2)
    2. 然后把大于0.99的坐标筛选出来,以它为中心,按照wheel图像的大小尺寸,提取出匹配矩阵出来,然后再show出来。

(i)相关值结果保存在pdf中
(ii)x的坐标从107变化到127
y的坐标从139变化到161
这里写图片描述
提取出来的图像为:
这里写图片描述

T2

Description

这里写图片描述
(i)利用randi()函数随机产生两个不等的整数,把大的值赋值给 t1(x,y) ,把小的值赋值给 t2(x,y) .
(ii)读入图像,根据要求,如果 f(x,y) 大于 t1(x,y) 就赋值为255,小于 t2(x,y) 就赋值为0,在两者中间就保持原来的值不变。
(iii)在添加了椒盐噪声的图像上,以3x3的窗口作中值滤波。首先在矩阵上tiquchu3x3的子矩阵,然后转换成一维的向量,直接用median函数取出中值,然后用此中值替换掉3x3窗口正中心的元素。不需要做padding,直接以3x3窗口的左上角对准矩阵的左上角开始。
(iv)这里写图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值