首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何画圆圈并在上面写字

如何画圆圈并在上面写字
EN

Stack Overflow用户
提问于 2020-03-22 12:32:22
回答 1查看 1K关注 0票数 0

这是参考图像:

我需要用和参考图像一样的方式画圆圈:

这是得到的图像:

这就是代码的样子:

代码语言:javascript
运行
复制
img = cv2.imread("foot.png")
cv2.circle(img,(112,71), 4, (0,0,0), -1)
font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(img, '1', (112,71), font, 1, (84, 29, 108), 1, cv2.LINE_AA)


cv2.imwrite("test.png",img)

如何将数字与参考图像中相同的方式放置在圆圈上?在代码中给出的像素为第一个位置。

编辑:我在堆栈溢出上尝试了这个解决方案,它给出了这个结果-- Draw Text inside circle OpenCV

编辑1:代码:

代码语言:javascript
运行
复制
img = cv2.imread("foot.png")

CENTER = (112, 71)

cv2.circle(img, CENTER, 2, (127,0,127), -1)

TEXT_FACE = cv2.FONT_HERSHEY_DUPLEX
TEXT_SCALE = 1
TEXT_THICKNESS =1
TEXT = "0"

text_size, _ = cv2.getTextSize(TEXT, TEXT_FACE, TEXT_SCALE, TEXT_THICKNESS)
text_origin = ( int(CENTER[0] - text_size[0] / 2), int(CENTER[1] + text_size[1] / 2))

cv2.putText(img, TEXT, text_origin, TEXT_FACE, TEXT_SCALE, (127,255,127), TEXT_THICKNESS, cv2.LINE_AA)

cv2.imwrite('centertext_out.png', img)

输出:

编辑:

这就是我到目前为止所取得的成就:

有没有办法不让第二线中的圆圈互相重叠?有没有可能不让圆圈覆盖文字?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-23 19:53:02

您可以使用不同的库。我认为,与opencv matplotlib相比,bokehseaborn更适合这类工作。您可以对其中的任何人做一个scatter plot用数字标记您的点数。我向你保证它会看起来好多了。

正如您所要求的,这里有一个简单的例子。

代码语言:javascript
运行
复制
import cv2
import matplotlib.pyplot as plt

img = cv2.imread("your_image_here.png")

我只使用opencv来读取图片。然后在数组中指定x和y的像素坐标。同时,标签值为n。

代码语言:javascript
运行
复制
x = [120,110,150,367,377,337]
y = [100,200,300,100,200,300]
n = [5.0,4.8,20.5,5.0,4.8,20.5]

然后,我用所需的选项,如点大小、颜色、不透明度和标签大小,绘制了图像顶部的点。

代码语言:javascript
运行
复制
fig, ax = plt.subplots(figsize=(10, 10))

ax.imshow(img)
ax.scatter(x, y, s=200, alpha=0.7, c = "orange")

for i, num in enumerate(n):
    ax.text(x[i], y[i], num, fontsize=12)

这只是一个简短的演示。您还可以定义一个函数来根据标签值来调整点的颜色,或者如果点太拥挤,您可以用另一个函数动态地使它们变小。我想指出的一点是,Opencv对于像您这样的任务不太实用。希望这能帮上忙。祝好运。:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60799343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档