簡體   English   中英

在python中裁剪圖像

[英]Cropping an image in 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

您可以使用上述值(即xybbxWidthbbxHeight )在原始圖像上繪制邊界框。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM