我们在学习编程语言的过程中,很多方法都得是自己整理和总结,编程语言中的函数的学习方法,分四步走:
1、功能说明
2、结果图显示
3、API详解
4、代码展示(包括详细的注释)
1、功能说明:
在图片上写入字。是不是很6呀。不多说了,直接上图。在效果图显示Hello。
2、结果图显示:
3、API详解:
原型 void putText( Mat& img, const string& text, Point org, int fontFace,double fontScale, Scalar color, int thickness=1, int lineType=8 )。
参数1:Mat& img,待写字的图片,我们写在img图上;
参数2:const string& text,待写入的字,我们下面写入Hello;
参数3: Point org, 第一个字符左下角坐标,我们设定在图片的Point(50,60)坐标。表示x = 50,y = 60;
参数4:int fontFace,字体类型,FONT_HERSHEY_SIMPLEX ,FONT_HERSHEY_PLAIN ,FONT_HERSHEY_DUPLEX 等等等;
参数5:double fontScale,字体大小,我们设置为2号;
参数6:Scalar color,字体颜色,颜色用Scalar()表示,不懂得去百度;
参数7: int thickness,字体粗细,我们下面代码使用的是4号;
参数8: int lineType,线型,我们使用默认值8。
C++版本:
#include <opencv2/opencv.hpp>
#include
using namespace std;
using namespace cv;
int main()
{
Mat img;
img = imread("image3.jpg",1);//参数1:图片路径。参数2:显示原图
namedWindow("显示原图",CV_WND_PROP_AUTOSIZE);//新建窗口
namedWindow("显示效果图",CV_WND_PROP_AUTOSIZE);
imshow("显示原图",img);
//在图片上添加Hello
putText(img,"Hello ",Point(50,60),FONT_HERSHEY_SIMPLEX,2,Scalar(0,0,255),4,8);
/*注释
在img图片上,显示Hello,位置在(50,60),字体类型为FONT_HERSHEY_SIMPLEX,字体大小为2,颜色为红色,字体厚度为4,线型默认为8.
*/
imshow("显示效果图",img);
waitKey(0);//等待按键响应后退出,0改为5000就是5秒后自动退出。
return 0;
python版本:
import cv2
cap = cv2.VideoCapture(0)
while(cap.isOpened()):
# read image
ret, img = cap.read()
# Display the text
cv2.putText(img, "Hello World!", (50, 150), cv2.FONT_HERSHEY_SIMPLEX, 3, 1)
# show appropriate images in windows
cv2.imshow('putText', img)
k = cv2.waitKey(10)
if k == 27:
break