在圆内绘制文本OpenCV

2024-10-03 13:21:21 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有什么方便的方法可以直接将文本绘制到OpenCV圆中?在谷歌没有找到类似的答案。在

如果我简单地使用circle的质心质心来实现putText我会得到类似于下图的效果,但我希望文本完全符合圆,并且找不到任何优雅的方式在圆内绘制文本。在

cv2.putText(frame, text, (cX, cY), FONT, 1.5, TEXT_COLOUR, int(TEXT_THICKNESS), cv2.LINE_AA)

enter image description here


Tags: 方法答案text文本方式绘制cv2frame
1条回答
网友
1楼 · 发布于 2024-10-03 13:21:21

这个问题的出现是因为给^{}的位置定义了原点(适合绘制文本的矩形区域的左下角)。在

为了使文本围绕某个给定点居中,首先需要测量该矩形区域(边界框)的大小。这可以使用函数^{}来完成。在

现在,要使文本居中,原点需要向下移动到花束框高度的一半,向左移动边界框宽度的一半。在

text_origin = (CENTER[0] - text_size[0] / 2, CENTER[1] + text_size[1] / 2)

代码:

^{pr2}$

输出图像:

相关问题 更多 >