Sam*_*uel 4 python image-processing tensorflow
我的网络拍摄100 x 100像素大小的图像。因此,我必须调整不同大小的数据集图像的大小。我希望能够从给定的图像中提取最大的中心正方形区域,然后将其大小调整为100 x 100.
更准确地说,假设图像具有200像素的宽度和像素的高度50。然后我想提取本例中最大的中心正方形区域,50 x 50然后将图像大小调整为100 x 100像素。
使用 Tensorflow 做到这一点的正确方法是什么?现在我正在使用tf.image.resize_images()它扭曲图像,我想摆脱它。
听起来像是crop_to_bounding_box在做你需要的事情:
import tensorflow as tf
def crop_center(image):
h, w = image.shape[-3], image.shape[-2]
if h > w:
cropped_image = tf.image.crop_to_bounding_box(image, (h - w) // 2, 0, w, w)
else:
cropped_image = tf.image.crop_to_bounding_box(image, 0, (w - h) // 2, h, h)
return tf.image.resize_images(cropped_image, (100, 100))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1871 次 |
| 最近记录: |