1、图像旋转注意
图像旋转之前一定要有坐标平移,避免信息丢失
旋转后会有许多空洞点,要对其进行填充处理,或者称为插值
2、图像滤波一些概念:
信号处理--二维信号、高频、低频、高通及低通滤波、
滤波:高通滤波用于边缘检测,低通滤波用于平滑去噪
线性滤波:
方框(使用时一定要注意是否需要归一化,不归一化可能会溢出即大部分都变白)、
均值(一般kernel取奇数)、
高斯(kernel的值不同,中心点较大)滤波
高斯滤波相比均值滤波效率低,但可以消除高斯噪声,能保留更多图像细节,用的也比较多
非线性滤波:中值、双边滤波(结合图像的空间邻近度和像素值相似度的一种折中法,保边去躁,简单,非迭代,局部处理)
3、plt显示的图片格式是RGB,OpenCV读取的是BGR格式,需要转换才能正常显示
4、图像在窗口显示
cv2.imshow("",img)
cv2.waitKey(0)
cv2.destroyAllWindows()
小结:不同滤波得到的不一样效果,也可以进行叠加
5、伽马变化:提升暗部细节,非线性变化后使人眼看着舒服
6、形态学操作:从图像中提取对表达和描述区域形状有意义的图像分量,抓住本质特征
7、膨胀腐蚀不仅会变胖变瘦,还会将原本有空隙的地方变小变大或者补起来
膨胀:大部分应用在二值图像,而且相对于二值图像来说,相当于白的是领土,领土扩张
击中:膨胀元素中为1的部分(1)和主元素任何一个地方有交点就算击中,击中就要把锚点处(2)进行标记,标记的话取最大(3)值进行标记
腐蚀:相当于黑的是领土,领土扩张,腐蚀一定会变小
灰度图腐蚀时对模板内的像素排序,取最值放在模板的中心点:锚点(B)-----腐蚀过程经常被面试到
图中的阴影部分就是被腐蚀的结果,X表示最大的正方形框,B表示圆形,B完全在X内就留下,其他部分被腐蚀
腐蚀过程:1、先判断锚点是否和前景点有交集,有交集的话2、再判断是1的部分是不是都被放在前景中,都满足就保留
8、开运算--断开
先腐蚀再以相同的元素进行膨胀运算,去缝隙作用
瘦(腐蚀)下来的如果消失了就不会再出现(膨胀)了
结构元素的选择,大小,形状的选择会得到不同的结果
9、闭运算--封闭
正好相反
两个有缝的地方进行连接
10、形态学梯度
基础梯度、内部梯度、外部梯度
顶帽、黑帽
这些操作是为了看到操作之后得到了什么,失去了什么