1.【改变图像的对比度和亮度】
cv.addWeighted(image,c,blank,1-c,b)
image原图像地址;c表示调整对比度;b表示调整亮度;blank表示原图像像素点全填充为0.
2.图像展示
cv.imshow("",src)
““表示窗口title;src表示图像地址
3.读取图像
cv.imread(””)
4.图像或运算
cv.bitwise_not(image)
cv.bitwise_and(image1,image2)
cv.bitwise_or(image1,image2)
5.返回图像的均值和标准差
M1,dev1 = cv.meanStdDev(image)
6.泛洪填充与ROI(Region of Interest)
mask = np.zeros([h+2,w+2],np.unit8)
原图像宽高+2:保证扫描后周边像素都能处理(有可能)
cv.floodFill(copyImg,mask,(),(),(),(),cv.FLOODFIL_FIXED_RANGE)
7.模糊操作
def blur_demo(image):
dst = cv.blur(image,(5,5))
cv.imshow("blur_demo",dst)
def median_blur_demo(image):
dst = cv.medianBlur(image,5)
cv.imshow("blur_demo",dst)
自定义中值模糊:
高斯模糊(对噪声有抑制作用):
void GaussianBlur(InputArray src, OutputArray dst, Size ksize, double sigmaX, double sigmaY=0, int borderType=BORDER_DEFAULT )
参数:
. InputArray src: 输入图像,可以是Mat类型,图像深度为CV_8U、CV_16U、CV_16S、CV_32F、CV_64F。
. OutputArray dst: 输出图像,与输入图像有相同的类型和尺寸。
. Size ksize: 高斯内核大小,这个尺寸与前面两个滤波kernel尺寸不同,ksize.width和ksize.height可以不相同但是这两个值必须为正奇数,如果这两个值为0,他们的值将由sigma计算。
. double sigmaX: 高斯核函数在X方向上的标准偏差
. double sigmaY: 高斯核函数在Y方向上的标准偏差,如果sigmaY是0,则函数会自动将sigmaY的值设置为与sigmaX相同的值,如果sigmaX和sigmaY都是0,这两个值将由ksize.width和ksize.height计算而来。具体可以参考getGaussianKernel()函数查看具体细节。建议将size、sigmaX和sigmaY都指定出来。
. int borderType=BORDER_DEFAULT: 推断图像外部像素的某种便捷模式,有默认值BORDER_DEFAULT,如果没有特殊需要不用更改,具体可以参考borderInterpolate()函数。
8.