学习 python_opencv图像去噪笔记
最近一直在跟OpenCV-Python 中文教程学习,在学到使用 cv2.fastNlMeansDenoisingColored()函数去噪时,在使用教程代码时发现结果不一样,原代码如下:
import numpy as np import cv2 from matplotlib import pyplot as plt img = cv2.imread('die.png') dst = cv2.fastNlMeansDenoisingColored(img,None,10,10,7,21) plt.subplot(121),plt.imshow(img) plt.subplot(122),plt.imshow(dst) plt.show()
运行结果如下:
而教程结果如下:
发现颜色不一样,原来是cv.imread()读取的图片格式是bgr的要想得到结果,可以利用cv2.cvtColor()函数将bgr转换到rgb,代码如下:
import cv2 from matplotlib import pyplot as plt img = cv2.imread('./data/die.jpg') img=cv2.cvtColor(img,cv2.COLOR_BGR2RGB) dst = cv2.fastNlMeansDenoisingColored(img,None,10,10,7,21) plt.subplot(121),plt.imshow(img) plt.subplot(122),plt.imshow(dst) plt.show()