如何在Tensorflow中将图像裁剪到边界框?我使用的是Python API。
从文档中,
tf.image.crop_to_bounding_box(image, offset_height, offset_width, target_height, target_width)
将图像裁剪到指定的边界框。
此操作从图像中剪切出一个矩形部分。返回图像的左上角位于图像中的offset_height,offset_width处,其右下角位于offset_height + target_height,offset_width + target_width处。
我可以得到一个边界框在标准化坐标中的坐标,
ymin = boxes[0,i,0]
xmin = boxes[0,i,1]
ymax = boxes[0,i,2]
xmax = boxes[0,i,3]
并将其转换为绝对坐标,
(xminn, xmaxx, yminn, ymaxx) = (xmin * im_width, xmax * im_width, ymin * im_height, ymax * im_height)
然而,我不知道如何在crop_to_bounding_box
函数中使用这些坐标。
2条答案
按热度按时间iyfamqjs1#
由于我们将
x
视为水平方向,将y
视为垂直方向,因此下面将使用指定框裁剪图像。kgsdhlau2#
下面是在tensorflow中裁剪和保存边界框的工作代码