NMS非极大值抑制:
关键词:线性插值法;梯度离散;IOU交并比;
双阈值检测:
Canny边缘检测中对图像像素点进行筛选,取x>=maxVal的像素梯度进行保留,作为边缘值,对虽连接确定边缘但位于minVal<=x<maxVal的像素作为待确定边缘值,进行连续判定,若确定与边缘值有关的保留,否则将丢弃。参考下图:
A大于maxVAl,确定为边缘值,对其进行保留;
B大于minVal但未与确定边缘连接,全部舍弃;
C与确定边缘链接,为待确定边缘,因与确定边缘A连接,固然获得保留,以获取完整的边缘曲线。
参考:[图像处理]-Canny边缘检测算法_orangezs的博客-CSDN博客_canny边缘检测算法
图像金字塔:
图像金字塔可以以多分辨率、多维度解释图像。常用于图像分割、图像缩放(下采样)
原图:
原图大小尺寸为(537,609,3)
高斯金字塔(Gaussian pyramid):
下采样:Gi=cv2.pyrDown(img) 缩小:
下采样分为两个步骤:
- 对img进行高斯内核卷积(高斯模糊)
- 将所有偶数列、行去掉[丢失信息]
效果:
pyr_Down=cv2.pyrDown(img)
print(pyr_Down.shape)
cv_show(pyr_Down,'Down')
plt.imshow(pyr_Down)
可以看见pyr_Down 的shape值变成了(269,305,3)
上采样:Gi=cv2.pyrUp(img) 放大:
上采样的步骤:
- 将img在每个方向扩大2倍,新增的行、列将以0填充,获得img1
- 使用先前同样的高斯内核(*4)与img1卷积,获得新增像素值的近似值
效果:
shape值变成(1074,1218,3)
拉普拉斯金字塔:
前面讲到,高斯金字塔中,上采样与下采样并不是互逆的,即上采样并不是下采样的逆操作,我们可以看一下先Up后Down或先Down后Up会有什么区别
Up_Down=cv2.pyrUp(pyr_Down)
Down_Up=cv2.pyrDown(pyr_Up)
print(img.shape)
print(Up_Down.shape)
print(Down_Up.shape)
拉普拉斯金字塔的实现代码:
G1=cv2.pyrDown(pyr_Up)
L1=img-G1
print(L1.shape)
cv_show(L1,'l1')
plt.imshow(L1)