我需要為我的專案使用 selectROI 功能。但是,我似乎無法理解坐標的格式。根據此鏈接,坐標陣列應采用以下形式:[Top_X, Top_Y, Bottom_X, Bottom_Y]。假設 (x,y) 的左上角從 (0,0) 開始,為什么當我使用 selectROI 函式繪制 3 個不同的邊界框時我的坐標如此偏離?
這是我用來創建邊界框并輸出坐標的:
import cv2
image = cv2.imread("path")
# Select ROI
r = cv2.selectROI("select the area", image, fromCenter=False)
print('Selected bounding boxes: {}'.format(r))
輸出了以下內容(參見圖片以獲取框的參考):
box 1: (42, 18, 212, 303)
box 2: (463, 314, 108, 226)
box 3: (1215, 801, 79, 161)
圖片
為什么 x 值從 42 -> 212 -> 464 -> 回傳 108 -> 1125 -> 回傳 79... x 的坐標不應該增加嗎?y 也是如此。
uj5u.com熱心網友回復:
geeksforgeeks 上的解釋是錯誤的,或者至少很容易誤解:最后兩個值不是右下角的坐標,它們是矩形的寬度和高度。請注意,例如對于第三個矩形,高度 (161) 大約是寬度 (79) 的兩倍,這與矩形的外觀相匹配。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/424711.html
