opencvputText绘字

摘要:
cv::Matsrc(500500,cv_8UC3,cv:标量(0,0,0));std::stringtext=“HelloWorld!

opencvputText绘字第1张

    cv::Mat src(500, 500, CV_8UC3, cv::Scalar(0,0,0));
    std::string text = "Hello World!";
    cv::putText(src,text, cv::Point(10,50), cv::FONT_HERSHEY_PLAIN,4, cv::Scalar(255,0,0),3);
    /*参数1:待绘制的图像
    参数2:待绘制的文字
    参数3:文本框的左下角
    参数4:字体    支持的字体见下图
    参数5:尺寸因子,值越大文字越大
    参数6:线条的颜色
    参数7:线条宽度
    参数8:线型(4邻域或8邻域,默认8邻域)
    参数9:bool bottomLeftOrigin = false // true='origin at lower left'
    */
    cv::imshow("src", src);

opencvputText绘字第2张

    cv::Mat src(500, 500, CV_8UC3, cv::Scalar(255,0,0));
    std::string text = "Hello World!";

    intbaseline;
    cv::Size text_size = cv::getTextSize(text, 3, 2, 2, &baseline);//获取文本框的长宽
    /*参数1:待绘制的文字
    参数2: int fontFace: 文字字体类型
    参数3:double fontScale: 字体缩放系数
    参数4:int thickness: 字体笔画线宽
    参数5:CV_OUT int* baseLine: 文字最底部y坐标
    */
    cv::putText(src, text, cv::Point(10, 50), 3, 2, cv::Scalar(0, 255, 255), 2, 8, 0);

    std::cerr << text_size <<std::endl;
    std::cerr << baseline <<std::endl;

    cv::imshow("src", src);

opencvputText绘字第3张

绘制中文

opencv默认不能使用中文,要使用中文请下载插件:https://download.csdn.net/download/lm68140318/39694201

解压后把两个文件复制到工程中opencvputText绘字第4张

添加头文件和源文件opencvputText绘字第5张

导入头文件:#include "puttextzh.h"

    cv::Mat src(500, 500, CV_8UC3, cv::Scalar(0,0,0));
    putTextZH(src, "欢迎你使用中文", cv::Point(10,50), cv::Scalar(255,0,0),30, "黑体", true,true);
    /*参数1:待绘制的图像
    参数2:待绘制的文字
    参数3:文本框的左下角
    参数4:字体颜色
    参数5:字体大小,值越大文字越大
    参数6:字体(默认使用Arial字体,也可以设置成操作系统中已经安装的字体,如“宋体”、“微软雅黑”、“Times New Roman”等;默认显示非斜体、非下划线)
    参数7:是否斜体
    参数8:是否有下划线
    
    */
    cv::imshow("src", src);

opencvputText绘字第6张

opencvputText绘字第7张

免责声明:文章转载自《opencvputText绘字》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Nacos配置的多环境管理Windows下部署Appium教程(Android App自动化测试框架搭建)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android画图并保存图片(转载)

Canvas是一个画布,你可以建立一个空白的画布,就直接new一个Canvas对象,不需要参数。 也可以先使用BitmapFactory创建一个Bitmap对象,作为新的Canvas对象的参数,也就是说这个画布不是空白的, 如果你想保存图片的话,最好是Bitmap是一个新的,而不是从某个文件中读入进来的,或者是Drawable对象。   然后使用Canva...

关于Vue中img的src属性绑定的一些坑

不少人在vue的开发中遇到这样一个问题: img的src属性绑定url变量,然而图片加载失败。 大部分的情况中,是开发者使用了错误的写法,例如: ? 1 <img src="{{ imgUrl }}"/> 这样写肯定是不对的,正确的写法应该使用v-bind: ? 1 <img v-bind:src="imgUrl"/&g...

js传递数据一些方式

1.用Image对象的src属性 var img = new Image(); img.src = "http://www.xxx.con/?data1=1"; 创建Image对象,通过其src属性可以向xxx地址传递数据,后台php可以通过GET方法获取src属性中“?”以后的数据。 2.script标签的src属性 var sc = document....

vue常用插件之图片预览

v-viewer(1.4.2) 非常实用的图片预览插件,支持旋转、缩放、翻转等操作 一、npm安装 npm i v-viewer -S 二、全局引入(main.js中) import 'viewerjs/dist/viewer.css' import Viewer from 'v-viewer' Vue.use(Viewer) //配置项 Viewer.s...

Golang 里的 AES、DES、3DES 加解密,支持 ECB、CBC 等多种模式组合

Openssl encryption:OpenSSL库的功能包装,用于对称和非对称加密和解密。 AES-ECB AES-CBC DES-ECB DES-CBC 3DES-ECB 3DES-CBC 安装 go get -u github.com/thinkoner/openssl 用法 AES 密钥的长度可以是16/24/32个字符(128/192/2...

图片像素的数值运算和逻辑运算及对比度调节

         一、算术运算:这个主要包括---------加、减 、乘、除;                 1、进行两张照片相加处理,利用它自带的add()函数处理: 1 import cv2 as cv 2 3 def shu_image(m1,m2): 4 src=cv.add(m1,m2) #进行相加处理 5...