一、自己opencv库有freetype
#include <opencv2/freetype.hpp> //编译的opencv是否包含,包含就能使用此方法,方便快捷,不包含就要使用方法二了。
cv::Ptr<cv::freetype::FreeType2> ft2;
//字体初始化
void init_font()
{
ft2 = cv::freetype::createFreeType2();
ft2->loadFontData( "../font/msyh.ttc", 0);
}
//加入字体文件后
ft2->putText(frame,data[0].vehicle_plate_server[i].number,
cv::Point(data[0].vehicle_plate_server[i].rect[0]+5, data[0].vehicle_plate_server[i].rect[3]+15),
20,cv::Scalar(r,g,b),1,8,false);
二、需要自己装freetype库
需要包含一个头文件和一个源文件,当然也可以封装为一个hpp文件。
CvxText.h:
#ifndef OPENCV_CVX_TEXT_HPP_
#define OPENCV_CVX_TEXT_HPP_
// 支持OpenCV中文汉字输入
#include <ft2build.h>
#include FT_FREETYPE_H
#include <opencv2/opencv.hpp>
class CvxText {
public:
/**
* 装载字库文件
*/
CvxText(const char* freeType);
virtual ~CvxText();
/**
* 获取字体.目前有些参数尚不支持.
*
* \param font 字体类型, 目前不支持
* \param size 字体大小/空白比例/间隔比例/旋转角度
* \param underline 下画线
* \param diaphaneity 透明度
*
* \sa setFont, restoreFont
*/
void getFont(int* type, cv::Scalar*

本文介绍如何使用OpenCV中的Freetype库在图片上绘制中文文本,包括直接利用OpenCV内置Freetype方法及自定义Freetype库的方法,并提供了完整的代码示例。
最低0.47元/天 解锁文章
595

被折叠的 条评论
为什么被折叠?



