在python中裁剪图像



我正在使用Azure自定义视觉进行对象检测项目。我得到的一个边界框的例子是[0.053913698, 0.6198375, 0.09218301, 0.13308609]

这里选择的答案不适合我的任务,因为所有的值都小于0。

有人能帮忙吗?

原因

一个装订框列表告诉你["left", "top", "width", "height"],它们中的每一个都是,占图像原始大小的百分比.

解决方案假设图像尺寸为800 x 600(即图像宽度为800,图像高度为600)。因此,您需要做的是将宽度和高度乘以相应的值。阅读下面的Python代码:

imageWidth  = 800
imageHeight = 600
bbx = {
"left": 0.053913698,
"top": 0.6198375,
"width": 0.09218301,
"height": 0.13308609
}
# top-left point position
(x, y) = (bbx["left"]*imageWidth, bbx["top"]*imageHeight) 
# bounding box's width and height
bbxWidth  = bbx["width"]  * imageWidth
bbxHeight = bbx["height"] * imageHeight

您可以使用上述值(即x,y,bbxWidthbbxHeight)在原始图像上绘制边界框。

相关内容

  • 没有找到相关文章

最新更新