簡體   English   中英

找到邊界框的中心

[英]Find center of bounding box

所以我試圖提取這個邊界框的中心,這是我得到的例子

...
dst = cv2.perspectiveTransform(pts, M)
print(dst)

Output

[[[548.70825 259.41586]]

 [[545.6091  334.8546 ]]

 [[623.4297  333.46515]]

 [[620.9301  260.8716 ]]]

我想找到 dst 變量的中心,感謝您的幫助!

如果您有帶坐標點(p1, p2, p3, p4)的邊界框

((x1, y1),(x2, y2),(x3, y3),(x4, y4)) ,其中點相應

p1-> left top corner, p2-> left bottom corner, p3-> right bottom corner, p4-> right top corner ,我相信在您的情況下,您可以將邊界框的中心視為對角線的交點.

您需要找到對角線所在的直線的方程式: Y1 = a1*X1+b1; Y2 = a2*X2+b2 Y1 = a1*X1+b1; Y2 = a2*X2+b2 基本上,您必須計算a1, b1, a2, b2系數。 它可以很容易地完成,因為你有積分。

之后你應該找到公共點的坐標所以Y0 = a1*X0+b1; Y0 = a2*X0+b2 Y0 = a1*X0+b1; Y0 = a2*X0+b2 在這種情況下:

(x0, y0) = ((b2-b1)/(a1-a2), a2*(b2-b1)/(a1-a2)+b2)

暫無
暫無

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

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