1 | import cv2 |
文章作者: YuKiFuHaNe
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 YuKiFuHaNeの博客!
相关推荐

2023-07-14
OpenCV 阈值处理
cv2.threshold(src,thresh,maxval,type) src = 输入图 dst = 输出图 thresh 阈值 maxval 当前像素超过了阈值(或者小于阈值,根据type决定),所赋予的值type 二值化操作的类型包含以下五种{ · cv2.THRESH_BINARY 超过阈值部分去maxval(最大值,否则取0)· cv2.THRESH_BINARY_INV (上面的反转)· cv2.THRESH_TRUNC 大于阈值部分设为阈值,否则不变· cv2.THRESH_TOZERO 大于阈值部分不变,否则设为0· cv2.THRESH_TOZERO_INV 上面的反转} 1234567891011121314151617181920212223242526272829303132333435import cv2import matplotlib as pltimport numpy as np'''ret,dst = cv2.threshold(s...

2023-07-14
傅里叶变换
傅里叶变换的作用 ·高频:变化剧烈的灰度分量,例如边界 ·低频:变化缓慢的灰度分量,例如一片大海 滤波 ·低通滤波器:只保留低频,会使图像变模糊 ·高通滤波器:只保留高频,会使图像细节增强 url:https://zhuanlan.zhihu.com/p/19763358 ·opencv中主要就是cv2.dft()和cv2.idft(),输入图像需要先转成np.float32格式 ·得到的结果中频率为0的部分会在左上角,通常要转换到中心位置,可以通过shift变换来实现 ·cv2.dft()返回的结果是双通道的(实部,虚部),通常还需要转成图像格式才能展示(0,255) 123456789101112131415161718import numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread('face.png',0)img_float32 = np.float32(img)dft = cv2.dft(img_...

2023-07-14
OpenCV 显示中文字体
1234567891011121314151617from PIL import ImageDraw,ImageFont,Imagedef img_writer(text_size,xy,text,text_color,fontStyle,img): draw = ImageDraw.Draw(img) # 字体的格式 这里的SimHei.ttf需要有这个字体 fontStyle = ImageFont.truetype(fontStyle, text_size, encoding='utff8') # 绘制文本 draw.text(xy, text, text_color, font=fontStyle)if __name__ == '__main__': text_size = 50 # 字体大小 xy = (56, 1700) # 起始位置 data = 'Menhenra酱,卡哇伊!' # 内容 text_color = (26, 42, 44) # ...

2023-07-14
图像平滑处理:均值滤波与方框滤波
1234567891011121314151617181920import cv2img = cv2.imread("lingbosize.png")#均值滤波#简单的平均卷积操作blur = cv2.blur(img,(3,3))#方框滤波#normalize = True和均值一样,选择归一化box = cv2.boxFilter(img,-1,(3,3),normalize=True) #-1表示得到颜色通道数一致#没有选则归一化,容易越界,超过255当作255处理box1 = cv2.boxFilter(img,-1,(3,3),normalize=False)cv2.imshow("blur",blur)cv2.waitKey(1000)cv2.imshow("box",box)cv2.waitKey(1000)cv2.imshow("box1",box1)cv2.waitKey(1000)cv2.waitKey(0) 平均卷积 方框滤波(未归一化) 方框滤波(归一化)

2023-07-14
OpenCV 读取图像与灰度化处理
12345678910import cv2import numpy as npimport matplotlib.pyplot as plt#读取图片imafePath = "a28.png"img = cv2.imread(imafePath) # img = cv2.imread(imafePath,0) 灰度读取#进行通道转换lenna_img = cv2.cvtColor(img,cv2.COLOR_BAYER_BG2BGR)

2023-07-14
形态学开运算与闭运算
开运算: 先腐蚀后膨胀 闭运算: 先膨胀后腐蚀 梯度运算: 开运算-闭运算 12345678910111213141516171819202122232425'''先腐蚀后膨胀'''#闭运算"""先膨胀后腐蚀"""import cv2import numpy as npimg = cv2.imread("a28.png")ret,thresh = cv2.threshold(img,127,255,cv2.THRESH_BINARY,0)cv2.imshow('THRESH',thresh)cv2.waitKey(500)#开kernel = np.ones((3,3),np.uint8)opening = cv2.morphologyEx(thresh,cv2.MORPH_OPEN,kernel)cv2.imshow('opening',opening)cv2.waitKey(300)#闭clo...
