在监控里我们可以看到实时的时间,那我们也可以在相机的视频或图片上显示实时的时间。
代码如下:
#include <windows.h>
#include<time.h>
#include<opencv2/opencv.hpp>
#include<iostream>
using namespace cv;
using namespace std;
int main(int argc, char** argv)
{
while (1)
{
Mat temp = Mat::zeros(Size(800, 600), CV_8UC3); //定义一张图片
temp = Scalar(0, 0, 0); //图片是黑色
//获取系统时间
SYSTEMTIME sys;
GetLocalTime(&sys);
//打印系统时间
cout<<sys.wYear<<"/"<< sys.wMonth<<"/"<<sys.wDay<<" "<<sys.wHour<<":"<<sys.wMinute<<":"<<sys.wSecond<<" "<< sys.wMilliseconds<<" week:"<<sys.wDayOfWeek<<endl;
/*把时间转换成字符串,在图片上输出 */
string a, b, c, d, e, f,g, time_str;
a = to_string(sys.wYear);
b = to_string(sys.wMonth);
c = to_string(sys.wDay);
d = to_string(sys.wHour);
e= to_string(sys.wMinute);
f = to_string(sys.wSecond);
g = to_string(sys.wDayOfWeek);
time_str = a + "/" + b + "/" + c +" "+ d + ":" + e + ":" + f + " "+"week:"+g ; //时间字符串
putText(temp, time_str, Point(130, 350), FONT_HERSHEY_SIMPLEX, 1, Scalar(0, 0, 255), 1, LINE_AA, 0);//显示时间
imshow(" Clock", temp);//显示图片
waitKey(1);
}
return 0;
}