是否有人可以替代OpenCV
putText(支持UTF-8字符)?如上所述,putText
仅适用于ASCII字符,但不适用于UTF-8
,例如šŠčČžŽ
?
答案 0 :(得分:3)
如果使用Qt支持构建 OpenCV ,您可以使用cv::addText()
来编写该字符串:
cv::Mat img = cv::imread("C:\\snowflake.jpg");
if (img.empty())
{
std::cout << "!!! Failed imread()" << std::endl;
return;
}
cv::addText(img, "áéőúöüóí", cv::Point(100, 50), cv::fontQt("Times"));
但是,如果OpenCV构建没有Qt支持,则调用cv::addText()
会使应用程序崩溃,并且以下错误将打印到控制台:
OpenCV Error: The function/feature is not implemented (The library is compiled without QT support) in cv::fontQt, file C:\builds\2_4_PackSlave-win32-vc12-shared\opencv\modules\highgui\src\window.cpp, line 409
答案 1 :(得分:2)
您没有指定使用的语言。从Python我将使用PIL的文本绘图功能:
draw.text((0, 0), unicode("áéőúöüóí","utf-8"), font=font, fill=(255,255,255))