我有一个opencv
项目,在框架上我正在使用cv2.putText()
显示一些文本。当前看起来像下面这样:
正如您在左上角看到的那样,该文本存在,但不清楚。是否可以将背景设为黑色,以便使文字看起来不错。如下图所示:
即使黑色背景一直覆盖到框架的右侧,也可以。以下是我用于在框架上放置文本的代码:
cv2.putText(frame, "Data: N/A", (5, 30), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)
cv2.putText(frame, "Room: C1", (5, 60), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)
opencv中是否有任何可用的预制方法/库可以做到这一点。有人可以建议一个好方法吗?
问题来源:stackoverflow
没有预先建立的方法,但是一个简单的方法是使用cv2.rectangle
+cv2.putText
。您需要做的就是在图像上绘制黑色矩形,然后放置文本。您可以根据想要矩形的大小来调整x,y,w,h参数。这是一个例子:
输入图片:
结果:
import cv2
import numpy as np
# Load image, define rectangle bounds
image = cv2.imread('1.jpg')
x,y,w,h = 0,0,175,75
# Draw black background rectangle
cv2.rectangle(image, (x, x), (x + w, y + h), (0,0,0), -1)
# Add text
cv2.putText(image, "THICC flower", (x + int(w/10),y + int(h/2)), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (255,255,255), 2)
# Display
cv2.imshow('image', image)
cv2.waitKey()
回答来源:stackoverflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。