首先查看一下opencv中是如何做的,后来发现opencv提供了在图像上绘制文字。这个函数即是cv::putText()。
void cv::putText(
cv::Mat& img, // 待绘制的图像
const string& text, // 待绘制的文字
cv::Point origin, // 文本框的左下角
int fontFace, // 字体 (如cv::FONT_HERSHEY_PLAIN)
double fontScale, // 尺寸因子,值越大文字越大
cv::Scalar color, // 线条的颜色(RGB)
int thickness = 1, // 线条宽度
int lineType = 8, // 线型(4邻域或8邻域,默认8邻域)
bool bottomLeftOrigin = false // true=’origin at lower left’
);
其中opencv支持的文字字体有以下几种:
在Python中也是可以调用这个函数,只是在传参数时,写法与C++有所区别而已。好了,直接上代码:
import cv2
img = cv2.imread('1.png')