织梦培训机构网站模板,公司网站开发题目来源,电子商务网站开发的,客户资料管理软件免费版对图像进行平滑处理实则就是对图像进行滤波操作罢了
每张图片都有若干个像素点所构成#xff0c;滤波操作上就是将照片上的某些部分像素点进行修改从而达到平滑的效果
先展示一下原图
import cv2
img cv2.imread(E:\Jupyter_workspace\study\data/test1.png)cv2.imshow(te…对图像进行平滑处理实则就是对图像进行滤波操作罢了
每张图片都有若干个像素点所构成滤波操作上就是将照片上的某些部分像素点进行修改从而达到平滑的效果
先展示一下原图
import cv2
img cv2.imread(E:\Jupyter_workspace\study\data/test1.png)cv2.imshow(test1,img)#以test1为命名的窗口进行显示
cv2.waitKey(0)
cv2.destroyAllWindows()均值滤波
简单的平均卷积操作 先确定卷积核的大小然后把图像按照卷积核(也就是一个二维矩阵一般取奇数)的大小进行分组每一个卷积核作为一组再将每组的数值进行相加求平均值然后把该平均值代替这一组的所有数值 cv2.blur(img,(3,3)) 第一个参数输入的图像对象数据 第二个参数核的大小 一般的为奇数的二维数组然后把这个二维数组进行求均值分别替代这个二维数组里面的值每一个二维数组进行一次求均值把整个图像按照[3,3]的二维数组进行划分
import cv2blur cv2.blur(img,(3,3))cv2.imshow(JZLB,blur)
cv2.waitKey(0)
cv2.destroyAllWindows()方框滤波
基本和均值滤波一样可以选择归一化 cv2.boxFilter(img,-1,(3,3),normalizeTrue) cv2.boxFilter(img,-1,(3,3),normalizeFalse) 第一个参数输入的图像对象数据 第二个参数-1表示得到的颜色通道数和原图是一致的通常情况也都是-1 第三个参数卷积核[3,3]的矩阵 第四个参数是否要做归一化 True 当卷积求和越界时处理个均值滤波效果完全一致 False 当卷积求和越界时只要大于255时所有的值均取255
import cv2box cv2.boxFilter(img,-1,(3,3),normalizeTrue)cv2.imshow(FKLB_True,box)
cv2.waitKey(0)
cv2.destroyAllWindows()import cv2box cv2.boxFilter(img,-1,(3,3),normalizeFalse)cv2.imshow(FKLB_False,box)
cv2.waitKey(0)
cv2.destroyAllWindows()高斯滤波
高斯滤波实则就是正态分布那个图像也就是按权值进行划分 同样需要给出一个卷积核的大小然后取平均值之后在每个卷积核内离平均值越近的数值权值越大当然离平均值越远的数值权值越小 cv2.GaussianBlur(img,(5,5),1)
import cv2aussian cv2.GaussianBlur(img,(5,5),1)cv2.imshow(GSLB,aussian)
cv2.waitKey(0)
cv2.destroyAllWindows()中值滤波
在一个卷积核中选取中位数当成最后处理的结果 cv2.medianBlur(img,5)
import cv2median cv2.medianBlur(img,5)cv2.imshow(ZZLB,median)
cv2.waitKey(0)
cv2.destroyAllWindows()将所有的滤波方式展示在一块
import cv2
import numpy as np#res np.vstack((blur,aussian,median))#上下展示
res np.hstack((blur,aussian,median))#左右展示#print(res)cv2.imshow(JZ-GS-ZZ,res)
cv2.waitKey(0)
cv2.destroyAllWindows()