python OpenCV 设置文字大小
时间: 2023-10-13 13:17:50 浏览: 471
在 OpenCV 中,可以使用 `cv2.putText()` 函数来在图像上添加文本。该函数的参数中有一个 `fontScale` 参数,可以用来设置文字大小。该参数的值为浮点数类型,表示文字大小相对于字体尺寸的比例系数。
例如,以下代码将在图像的左上角添加一段文本,并设置文本大小为 1.2 倍的字体尺寸:
```python
import cv2
img = cv2.imread('image.jpg')
font = cv2.FONT_HERSHEY_SIMPLEX
text = 'Hello, World!'
size = cv2.getTextSize(text, font, 1, 2)[0]
cv2.putText(img, text, (10, size[1] + 10), font, 1.2, (255, 0, 0), 2)
cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
其中,`cv2.getTextSize()` 函数用于计算文本的实际大小,其参数中的 `1` 表示字体大小,`2` 表示字体粗细。最终的文本大小为 `1.2 * size`。
相关问题
opencv 设置字体大小
在OpenCV库中,设置字体大小通常用于文本标注或者绘制信息时调整文字的显示大小。你可以使用`cv.putText()`函数来添加文本,并通过`fontFace`参数结合`fontScale`参数来控制字体大小。`fontFace`枚举包含了不同类型的字体,如`cv.FONT_HERSHEY_SIMPLEX`表示简洁体;`fontScale`是一个浮点数,范围从0到无穷大,值越大字体越大。例如:
```python
import cv2
import numpy as np
# 创建一个图像窗口
img = np.zeros((500, 500), dtype=np.uint8)
cv2.putText(img, 'Hello, OpenCV!', (50, 50), cv2.FONT_HERSHEY_SIMPLEX,
1, (255, 255, 255), 2) # 参数依次为:图片、文本、位置、字体、缩放比例、颜色、线宽
cv2.imshow('Text Example', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个例子中,`fontScale=1`意味着默认字体大小,如果你想增大字体,可以将其设置为大于1的数值。
python opencv 中文_Python OpenCV实现图片上输出中文
要在OpenCV中输出中文,需要先在电脑上安装中文字体,并且使用Python的PIL库将中文转换为图片。然后,将生成的中文图片与原始图片合并,最后使用OpenCV显示合并后的图片。
以下是示例代码:
```python
import cv2
from PIL import Image, ImageDraw, ImageFont
import numpy as np
# 读取原始图片
img = cv2.imread('input.jpg')
# 定义中文字符集和字体大小
chars = '你好,世界!'
font_size = 40
# 创建中文图片
font = ImageFont.truetype('simsun.ttc', font_size)
img_ch = Image.new('RGB', (font_size*len(chars), font_size), (255, 255, 255))
draw = ImageDraw.Draw(img_ch)
draw.text((0, 0), chars, font=font, fill=(0, 0, 0))
img_ch = np.array(img_ch)
# 合并图片
h, w, _ = img.shape
h_ch, w_ch, _ = img_ch.shape
img[h-h_ch-10:h-10, w-w_ch-10:w-10] = img_ch
# 显示图片
cv2.imshow('output', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在示例代码中,我们首先读取了原始图片,然后使用PIL库创建了中文图片。在创建中文图片时,我们指定了中文字符集和字体大小,并使用`simsun.ttc`字体文件来渲染中文字符。接着,我们将中文图片与原始图片合并,并在合并后的图片上显示。最后,使用OpenCV显示合并后的图片。
注意,要在代码中指定正确的字体文件路径,以确保中文字符能够正确地渲染。
阅读全文