OpenCV中在图片上输出中文一般需要借助FreeType库实现。FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件。但使用FreeType需要下载库并重新编译,过程麻烦一点。

在Python中,可以借助PIL(Python Imaging Library)模块实现,相对简单很多,需要做的只是对图像进行OpenCV格式和PIL格式的相互转换。

# -*- coding: utf-8 -*-

import cv2

import numpy

from PIL import Image, ImageDraw, ImageFont

if __name__ == '__main__':

img_OpenCV = cv2.imread('01.jpg')

# 图像从OpenCV格式转换成PIL格式

img_PIL = Image.fromarray(cv2.cvtColor(img_OpenCV, cv2.COLOR_BGR2RGB))

# 字体 字体*.ttc的存放路径一般是: /usr/share/fonts/opentype/noto/ 查找指令locate *.ttc

font = ImageFont.truetype('NotoSansCJK-Black.ttc', 40)

# 字体颜色

fillColor = (255,0,0)

# 文字输出位置

position = (100,100)

# 输出内容

str = '在图片上输出中文'

# 需要先把输出的中文字符转换成Unicode编码形式

if not isinstance(str, unicode):

str = str.decode('utf8')

draw = ImageDraw.Draw(img_PIL)

draw.text(position, str, font=font, fill=fillColor)

# 使用PIL中的save方法保存图片到本地

# img_PIL.save('02.jpg', 'jpeg')

# 转换回OpenCV格式

img_OpenCV = cv2.cvtColor(numpy.asarray(img_PIL),cv2.COLOR_RGB2BGR)

cv2.imshow("print chinese to image",img_OpenCV)

cv2.waitKey()

cv2.imwrite('03.jpg',img_OpenCV)

输出效果:

字体 *.ttc的存放路径一般是: /usr/share/fonts/opentype/noto/

可以使用locate指令查找本机上已经下载的字体:

python opencv 中文_OpenCV-Python在图片上输出中文相关推荐

  1. python opencv保存图片_OpenCV Python 保存图片

    By 凌顺 2019年9月12日 本示例使用的OpenCV版本是:4.1.1 运行Python的编辑器:Jupyter notebook 示例目的 通过无损和有损的方式进行图片保存. 实现代码 1,加 ...

  2. python opencv 摄像头_opencv python中摄像头参数的设置

    我正在使用Windows7 64位操作系统以及Python3和OpenCV.我的电脑连接到以下型号的两个罗技网络摄像头: 1)罗技高清网络摄像头C615 2) 罗技QuickCam Pro 9000 ...

  3. python: 在图片上 打印中文

    我整理的代码模板: # 指定字体文件地址 FONT_FILE_PATH = ...# 转换成PIL src_img = cv2.imread(img_path) img_PIL = Image.fro ...

  4. Python OpenCV:利用滚动条移动图片,利用鼠标缩放图片

    Python OpenCV:利用滚动条移动图片,利用鼠标缩放图片 一.实现目标 二.实现背景 三.实现方法 四.运行环境 五.运行代码 六.运行结果 七.不足 八.参考 一.实现目标   在OpenC ...

  5. 在屏幕上输出你好的python语句是_编程实现:在屏幕上输出中文字符“你好,世界”。(输出结果中不带双引号)_学小易找答案...

    [填空题]借战死者诉说战争灾难的汉乐府诗是( ). [判断题]15 的倍数有 15 . 30 . 45 . ( ) [填空题]表现贫民意欲反抗的汉乐府诗是( ). [判断题]不可以在同一台计算机上安装 ...

  6. JAVA Opencv在图片上添加中文

    问题描述: 将图片进行均值.中值.高斯滤波,高斯边缘检测,并在图片上添加中文文字. 一.算法思想 首先经过opencv的一系列操作,例如高斯模糊.均值模糊等操作后.用Imgcodecs.imwrite ...

  7. Python + opencv对拍照得到的图片进行背景去除的实现方法

    这篇文章主要介绍了Python + opencv对拍照得到的图片进行背景去除的实现方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 有时候我们 ...

  8. python绘制汉字_OpenCV Python 绘制中文字

    By 凌顺 2019年9月12日 本示例使用的OpenCV版本是:4.1.1 运行Python的编辑器:Jupyter notebook 示例目的 通过使用PLI在图片上添加中文字符. PIL(Pyt ...

  9. python以环状形式组合排列图片并输出的方法

    python以环状形式组合排列图片并输出的方法 本文实例讲述了python以环状形式组合排列图片并输出的方法.分享给大家供大家参考.具体分析如下: 这段代码可以自定义一个空白画板,然后将指定的图片以圆 ...

  10. Ubuntu中opencv图片上输出文字

    文章目录 一.汉字点阵字库原理 1.汉字编码 1.1区位码 1.2 机内码 2. 点阵字库结构 2.1 点阵字库存储 2.2 16*16 点阵字库 2.3 14*14 与 12*12 点阵字库 3.汉 ...

最新文章

  1. IO-5(InputStreamReader、OutputStreamWriter、序列化流、反序列化流、Serializable、transient)
  2. java 启动参数 配置,java程序启动参数设置
  3. java王大拿谢大脚_《乡村爱情1》:“王大拿”赵本山有3大亮点,追谢大脚根本不算啥...
  4. java 方法 示例_Java语言环境getISOCountries()方法与示例
  5. PostgreSQL / openGauss 数据库易犯的十个错误
  6. notepad++格式化插件安装
  7. {过时·留存}MS Office文档
  8. GPS 经纬度转换 百度、高德经纬度
  9. java多线程之Thread-Specific Storage模式
  10. ElasticSearch 倒排索引(Inverted Index)| 什么是倒排索引?
  11. android操作系统偷流量,运营商在“偷流量”?用实验告诉你真相!
  12. 车机软件测试ADBShell命令集合
  13. mysql分组语句的子句_MySQL 中的排序与分组 语句
  14. 基于STM32设计物联网在线智能称重系统(OneNet)_2022
  15. 9 摄像头视频实时传输
  16. 曾国藩:成大事者不纠结
  17. python中 glob.glob
  18. Unity3D游戏制作(一)——3D横版场景的角色移动控制
  19. 深入理解双亲委托机制
  20. 华为20万月薪“工资条”流出!官方回应来了

热门文章

  1. Coolite Toolkit学习笔记二:服务器端Alert,Confirm,Prompt
  2. python set集合与列表_python set集合的添加、删除、修改和访问操作/frozenset 集合,集合内置方法完整列表-立地货...
  3. 软考中级软件设计师笔记第一章计算机组成与体系结构
  4. okhttp post php,Android OkHttp 结合php 多图片上传实例
  5. 3 超链接_excel函数应用技巧:超链接函数HYPERLINK
  6. linux7配置永久路由,CentOS7添加永久静态路由
  7. mysql hash分区 子分区_mysql分区管理 - hash分区
  8. 解压rar_【RAR安卓】RAR解压v5.91.build93去广告版,解压多种压缩包 与WinRAR完美兼容!...
  9. java 解析mp4文件头_视频文件头解析--MP4-获取mp4 文件信息
  10. java 图片处理_java图片处理功能介绍