如何在opencv Python中从中心(x,y)在图像中绘制正方形?

Mas*_*s17 1 python opencv python-3.x

我想square box (not filled, just line around)从给定的图像中绘制 a center (x,y)。我可以在 C++ 中看到类似的 opencv 实现。比如这个.. OpenCV 从中心 x,y 绘制矩形 我如何在 Python 中做到这一点?我可以从中心绘制一个圆,而不是一个方框。

im = cv2.imread("path_to_/img.png")
cv2.circle(im, (270, 2422), 50, (0, 255, 0), -1)
cv2.imwrite("path_to_write/img_test.png", im) 
Run Code Online (Sandbox Code Playgroud)

我想指定正方形的中心坐标和长度。

Mas*_*s17 5

我能够克服如下的问题......一个简单的数学似乎可以帮助它。如果其他人遇到这个问题,我会将其发布在这里。如果我们知道正方形的中心(x,y)和长度..我们可以像下面这样计算角点。

在此输入图像描述

由此我可以使用;

cv2.rectangle(im, (x-1, y+1), (x+1, y-1), (255, 255, 255), 2)
Run Code Online (Sandbox Code Playgroud)