如何在不更改原始坐标的情况下裁剪和调整图像大小

时间:2019-07-18 09:43:45

标签: python image numpy tensorflow

我有一堆图像,它们的X和Y坐标是用于训练的标记。我必须将图像调整为500 X500。如何在不影响原始位置的情况下更改尺寸?

我尝试过tf.image.resize_with_crop_or_pad,但是当我使用其x和Y绘制点到裁剪后的图像时,它显示的坐标在左上方。

Images with perfect points resized and cropped Image

newImage = tf.image.resize_with_crop_or_pad(
        image,
        500,
        500
    )

我希望原始图像不受到原始坐标的影响并且有空间,因此当我在图像上绘制原始点时,它就非常合适。

1 个答案:

答案 0 :(得分:2)

您可以使用

移动点
x += (500 - image.shape(0)) / 2
y += (500 - image.shape(1)) / 2

这应该起作用,因为该功能始终对图像进行裁剪和填充以使其居中。您可能必须检查原始图像大小为奇数时的工作方式,因为这会产生一个浮点数,并且可能离预期点有半个像素。