opencv 打开摄像头在视频上添加动态信息(如速度等)

嗯,这里是简介,主题配置内可以修改,如留空则不显示

opencv 打开摄像头在视频上添加动态信息(如速度等)

首先我是想在视频上添加动态信息,这个信息是有固定文字+动态数字组成的,其中代码如下:

#include "stdafx.h"
#include "highgui.h"
#include "cv.h"
#include "cxcore.h"

CvCapture* g_capture;

int main(int argc, char* argv[])
{
	printf("hello world\n");
	cvNamedWindow("show");

	//g_capture=cvCreateFileCapture("c:\\1.avi");
	g_capture=cvCreateCameraCapture(0);
	char a[50];
	CvFont font;

	IplImage *frame;
	int frame_num=1;

	double fps,t=0;
	while(1)
	{
		t=(double)cvGetTickCount();
		frame=cvQueryFrame(g_capture);		
		if (!frame)
		{	
			break;
		}

		t=((double)cvGetTickCount()-t)/cvGetTickFrequency();
		fps=1000000.0/t;

		printf("frame_num-->: %d\n",frame_num);
		sprintf(a,"FPS:%1f",fps);
		//printf("the s: %s\n",a);

		cvInitFont(&font,CV_FONT_HERSHEY_COMPLEX,1.0f,1.0f,0,1,CV_AA);
		cvPutText(frame,a,cvPoint(10,350),&font,cvScalar(23,66,234));

		cvShowImage("show",frame);
		char c=cvWaitKey(33);
		if (c==27)
		{
			break;
		}
		frame_num++;
	}

	cvWaitKey(0);
	cvDestroyWindow("show");
	cvReleaseImage(&frame);
	cvReleaseCapture(&g_capture);
	return 0;
}

执行的结果如下:

blob.png


其中代码片段:

sprintf(a,"FPS:%5f",fps);

定义是:char a[50];    fps表示的float类型

表示的是是将两个类型合并为字符串的类型的数据。


发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Hello world. 豫ICP备16008819号-1.

Power by Z-BlogPHP  Theme by wzdaxue