Jor*_*dan 5 python opencv image-processing matplotlib
我有一个numpy数组格式(标准 OpenCV 格式)的灰度图像。正常图像,uint80 到 255 之间的所有值。当我运行时:
import cv2
cv2.imshow('', image)
Run Code Online (Sandbox Code Playgroud)
我得到:
但是当我运行时:
from matplotlib import pyplot
pyplot.imshow(image, cmap="gray")
pyplot.show()
Run Code Online (Sandbox Code Playgroud)
我得到:
真正奇怪的是,如果我调整pyplot图像窗口的大小,那些线条伪影的宽度会发生变化。这是怎么回事?我不知道它展示了这些文物。
要消除锯齿效应,您可以添加抗锯齿滤波器:
from matplotlib import pyplot
pyplot.imshow(image, cmap="gray", interpolation='hanning')
pyplot.show()
Run Code Online (Sandbox Code Playgroud)
在这种情况下,它并不是真正的插值,而是平滑原始数据。