计算机视觉项目实战(一)、图像滤波和图像混合 Image Filtering and Hybrid Images

项目要求

  1. 通过滤波分离图像的高频和低频。
  2. 将不同图像的高频和低频合并以创建相关尺度的图像。
    在这里插入图片描述

项目原理

  1. 图像的频率:
    频率是灰度值变化剧烈程度的指标,是灰度在平面空间上的梯度。

    图像中的低频信号和高频信号也叫做低频分量和高频分量。

  2. 低频:
    低频就是颜色缓慢地变化,也就是灰度缓慢地变化,就代表着那是连续渐变的一块区域,这部分就是低频。 对于一幅图像来说,除去高频的就是低频了,也就是边缘以内的内容为低频,而边缘内的内容就是图像的大部分信息,即图像的大致概貌和轮廓,是图像的近似信息。

    所以说低频分量主要对整幅图像的强度的综合度量。

  3. 高频:
    反过来,高频就是频率变化快。当相邻区域之间灰度相差很大,这就是变化得快。图像中,一个影像与背景的边缘部位,通常会有明显的差别,也就是说变化那条边线那里,灰度变化很快,也即是变化频率高的部位。因此,图像边缘的灰度值变化快,就对应着频率高,即高频显示图像边缘。图像的细节处也是属于灰度值急剧变化的区域,正是因为灰度值的急剧变化,才会出现细节。

    所以说高频分量主要是对图像边缘和轮廓的度量。

    另外噪声(即噪点)也是这样,当一个像素所在的位置与正常的点颜色不一样(该像素点灰度值明显不一样,也就是灰度有快速地变化)时可视为噪声。

主要函数

my_imfilter()

函数解释

my_imfilter函数目的是实现类似于scipy.ndimage.filters.correlate函数的功能。在对于彩色图像(即三通道RGB图像)进行处理时,应该分别对每一个通道分别进行滤波处理。

输入参数

  1. 待处理图像(255 * 255 * 3)
  2. 滤波器(3 * 3)

输出参数

滤波处理后的图像(255 * 255 * 3)

主要实现步骤

  • 通过numpy的shape函数得图像和滤波器的尺寸(长和宽)

    	im_dim=image.shape
    	flt_dim=imfilter.shape
    	img_dim1=im_dim[0]
    	img_dim2=im_dim[1]
    	flt_dim1=flt_dim[0]
    	flt_dim2=flt_dim[1]
    
    • 为了避免因为卷积运算导致输出图像缩小和图像边缘信息丢失,常常采用图像边缘填充技术,即在图像四周边缘填充0,使得卷积运算后图像大小不会缩小,同时也不会丢失边缘和角落的信息。其中,长度和宽度的增加量取决于过滤器的大小
    	pad_dim1=int<
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ace Cheney

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值