当前位置: 首页 > news >正文

OpenCV绘图函数(14)图像上绘制文字的函数putText()的使用

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

在图像上绘制指定的文本字符串。
cv::putText 函数在图像上绘制指定的文本字符串。无法使用指定字体渲染的符号会被问号(?)替换。关于文本渲染的具体示例可以参考 getTextSize 函数。

函数原型

void cv::putText	
(InputOutputArray 	img,const String & 	text,Point 	org,int 	fontFace,double 	fontScale,Scalar 	color,int 	thickness = 1,int 	lineType = LINE_8,bool 	bottomLeftOrigin = false 
)		

参数

  • 参数img I图像
  • 参数itext 要绘制的文本字符串。
  • 参数iorg 文本字符串在图像中的左下角位置。
  • 参数ifontFace 字体类型,参见 HersheyFonts。
  • 参数ifontScale 字体缩放因子,它与特定字体的基本尺寸相乘。
  • 参数icolor 文本颜色。
  • 参数ithickness 用于绘制文本的线条厚度。
  • 参数ilineType 线条类型。参见 LineTypes。
  • 参数ibottomLeftOrigin 当为真时,图像数据原点位于左下角。否则,位于左上角。

代码示例


#include <iostream>
#include <opencv2/opencv.hpp>int main( int argc, char** argv )
{// 加载一个图像文件,如果未提供,则使用默认的图像cv::Mat image = cv::imread( "/media/dingxin/data/study/OpenCV/sources/images/qiu.jpg" );if ( image.empty() ){std::cerr << "Error: Image cannot be loaded!" << std::endl;return -1;}// 创建一个窗口来显示图像cv::namedWindow( "Image with Text", cv::WINDOW_AUTOSIZE );// 定义要绘制的文本及其属性std::string text = "Hello, OpenCV!";cv::Point org( 10, 50 );                      // 文本的左下角起点double fontFace  = cv::FONT_HERSHEY_SIMPLEX;  // 字体类型double fontScale = 1;                         // 字体大小cv::Scalar color( 255, 0, 0 );                // 文本颜色(BGR)int thickness         = 2;                    // 文本线宽int lineType          = cv::LINE_8;           // 线条类型bool bottomLeftOrigin = false;                // 原点是否在左下角// 使用 cv::putText 绘制文本cv::putText( image, text, org, fontFace, fontScale, color, thickness, lineType, bottomLeftOrigin );// 显示带有文本的图像cv::imshow( "Image with Text", image );cv::waitKey( 0 );  // 等待按键按下return 0;
}

运行结果

在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 赞奇科技与华为云共襄828 B2B企业节,激活数字内容“云”创作
  • 理解并优化页面启动时的周期性数据发送代码
  • Java算法之堆排序(Heap Sort)
  • 跨部门协作:搭建共享型客服知识库
  • python网络爬虫(二)——数据的清洗与组织
  • 浅谈JAVA中的SPI机制
  • 制作 Docker 镜像
  • 有关树形结构数据的功能函数
  • Uniapp 调用aar、jar包
  • 什么是Jmeter ?Jmeter使用的原理步骤是什么?
  • Cobalt Strike 4.8 用户指南-第五节-获取初始访问
  • [数据集][目标检测]玻璃瓶塑料瓶检测数据集VOC+YOLO格式8943张2类别
  • 猫咪浮毛清理措施?希喂、安德迈、有哈宠物空气净化器数据大揭秘
  • html+css+js网页设计 翘珠宝微商城移动端20个页面
  • 正则表达式实现带有条件的爬取
  • JavaScript-如何实现克隆(clone)函数
  • angular学习第一篇-----环境搭建
  • create-react-app做的留言板
  • Docker 笔记(2):Dockerfile
  • Go 语言编译器的 //go: 详解
  • JavaScript-Array类型
  • JAVA之继承和多态
  • Solarized Scheme
  • spring cloud gateway 源码解析(4)跨域问题处理
  • 百度小程序遇到的问题
  • 测试如何在敏捷团队中工作?
  • 浅谈Golang中select的用法
  • 巧用 TypeScript (一)
  • -- 数据结构 顺序表 --Java
  • 原生js练习题---第五课
  • 追踪解析 FutureTask 源码
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • #100天计划# 2013年9月29日
  • (1)(1.8) MSP(MultiWii 串行协议)(4.1 版)
  • (1)Android开发优化---------UI优化
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (70min)字节暑假实习二面(已挂)
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (c语言+数据结构链表)项目:贪吃蛇
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (poj1.3.2)1791(构造法模拟)
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (七)glDrawArry绘制
  • (强烈推荐)移动端音视频从零到上手(上)
  • (全部习题答案)研究生英语读写教程基础级教师用书PDF|| 研究生英语读写教程提高级教师用书PDF
  • (十三)Flask之特殊装饰器详解
  • (四)linux文件内容查看
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (一)使用IDEA创建Maven项目和Maven使用入门(配图详解)
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • (转)拼包函数及网络封包的异常处理(含代码)
  • (转)四层和七层负载均衡的区别
  • .gitignore文件—git忽略文件