我的图像F
大小为1044 * 1408,它只有3个整数值0、2和3。
我想将其缩小到360 * 480。现在我正在使用Z= cv2.resize(F,(480,380))
。但是Z
是插值的,它具有许多唯一值,不仅仅是0、2和3。我不能将插值取整到最接近的整数,因为我会得到1。
F
从tif文件读取并进行操作,现在是ndarray。所以我不能使用PIL:F = F.resize((new_width, new_height))
作为F
从不是F = Image.open(*)
。
Hum*_*awi 10
您可以使用INTER_NEAREST
:
Z= cv2.resize(F,(480,380),fx=0, fy=0, interpolation = cv2.INTER_NEAREST)
Run Code Online (Sandbox Code Playgroud)
或者,您也可以使用skimage.transform.resize
。参数order = 0
强制执行最近邻居插值。
Z = skimage.transform.resize(F,
(480,380),
mode='edge',
anti_aliasing=False,
anti_aliasing_sigma=None,
preserve_range=True,
order=0)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4063 次 |
最近记录: |