zebra_zzh 2017-06-05 15:54 采纳率: 71.4%
浏览 2824
已采纳

关于opencv 中cvPutText函数的使用

他可以在图片上显示文字。我现在需要在视频显示,即显示鼠标所点击处的像素值,然而这个函数只能显示在每一帧上,很快就会被后一帧覆盖了,有什么办法能让他一直显示到下一次点击。。就剩一个c币了

  • 写回答

4条回答 默认 最新

  • 一个纸杯 2017-06-05 16:04
    关注

    你视频播放应该是一个while循环显示每一帧吧,你在每一次循环的每一帧显示之前也就是imshow函数之前都调用cvPutText,显示相同的内容,直到下一次点击再改变它的内容。大致像下面这样吧,1.8的opencv不太熟,建议使用2.4以后版本的opencv吧。

    IplImage * frame;//帧
    string your_string;
    cvNamedWindow("img",0);
    
    CvFont font;
    cvInitFont(&font,CV_FONT_HERHEY_COMPLEX,0.5,0.5,1,2,8);
    while(1){
    cvPutText(frame,your_string,cvPoint(50, 50), &font, CV_RGB(255,0,0));
    cvShowImage("img",frame);
    cvWaitKey(0);
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?