我有以下问题:
我想在图像上打印变量,我知道OpneCV中有一个putText函数,但是该函数只能打印我一开始设置的文本。我要打印的内容如下:
Mat img;
for(int i=0; i<=10; i++)
{
imshow("IMG",img);
}
我想在图像“img”上打印每个i值,这意味着img需要显示0到10之间的i。
有什么功能可以在图像上打印变量而不是设置的字?
最佳答案
documentation已经为您提供了一个广泛的示例:
string text = "Funny text inside the box";
int fontFace = FONT_HERSHEY_SCRIPT_SIMPLEX;
double fontScale = 2;
int thickness = 3;
Mat img(600, 800, CV_8UC3, Scalar::all(0));
int baseline=0;
Size textSize = getTextSize(text, fontFace,
fontScale, thickness, &baseline);
baseline += thickness;
// center the text
Point textOrg((img.cols - textSize.width)/2,
(img.rows + textSize.height)/2);
// draw the box
rectangle(img, textOrg + Point(0, baseline),
textOrg + Point(textSize.width, -textSize.height),
Scalar(0,0,255));
// ... and the baseline first
line(img, textOrg + Point(0, thickness),
textOrg + Point(textSize.width, thickness),
Scalar(0, 0, 255));
// then put the text itself
putText(img, text, textOrg, fontFace, fontScale,
Scalar::all(255), thickness, 8);
步骤:基本使用
putText
关于image - 使用opencv将变量放在图像上,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35841111/