我有以下图片:
原始图像
我使用下面的代码来调整这个图像的大小为1600x1200。
img = cv2.imread('R.png')
gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
gray_image.resize(1600,1200)
然后返回以下图像:
最终的图像
我试图通过使用不同的图像格式(jpg, tif)来解决这个问题,但这似乎没有帮助。我还尝试使用不同的插值算法,如INTER_NEAREST和INTER_LINEAR,这些产生相同的结果。
有人有什么想法吗?
您正在调用表示灰度图像的numpy数组上的resize()
函数,该函数仅更改数组的形状。你应该使用OpenCV中的resize()
函数:
img = cv2.imread('R.png')
resized_image = cv2.resize(img, (1600, 1200), interpolation = cv2.INTER_LINEAR)
除此之外,我认为你错误地交换了图像的宽度和高度,它应该是1200 x 1200保持比例。