我想拍摄一张图像并更改图像的比例,而它是一个 numpy 数组。
例如,我有一个可口可乐瓶的图像: bottle-1
转换为形状的 numpy 数组 (528, 203, 3)
我想调整它的大小来说明第二张图像的大小: bottle-2
形状为 (140, 54, 3)
。
如何在保持原始图像的同时将图像的大小更改为某种形状?其他答案建议剥离每隔一行或第三行,但我想要做的基本上是通过图像编辑器但在 python 代码中缩小图像。在 numpy/SciPy 中是否有任何库可以做到这一点?
原文由 Brian Hamill 发布,翻译遵循 CC BY-SA 4.0 许可协议
是的,你可以安装
opencv
(这是一个用于图像处理和计算机视觉的库),并使用cv2.resize
函数。例如使用:这里
img
是一个包含原始图像的numpy数组,而res
是一个包含 调整大小 图像的numpy数组。一个重要的方面是interpolation
参数:有几种方法可以调整图像大小。特别是因为您缩小了图像,并且原始图像的大小 不是 调整后图像大小的倍数。可能的插值模式是:与大多数选项一样,没有“最佳”选项,因为对于每个调整大小的模式,存在一种策略可以优于另一种策略的情况。