gpt4 book ai didi

OpenCV - cvPutText 正在为我的图像添加噪音

转载 作者:太空宇宙 更新时间:2023-11-03 20:55:14 33 4
gpt4 key购买 nike

我是 OpenCV 的新手。我开始阅读 Learing OpenCV几天前,现在我想做一些测试。

我想编写一个 ASCII 艺术转换器。我已经完成图像迭代并按正方形对像素进行分组以计算每个区域的亮度以将其与相应的字符相关联。所以现在我需要知道一个字符有多亮,以便将每个图像区域链接到一个字符。我的想法是制作另一个程序,让我获得一些字符的亮度。方法如下:

  • 创建一个尺寸为 100*100 的图像(例如)- 黑色背景和 1 个 channel
  • 用白色在其中某处绘制字符 (cvPutText)
  • 迭代图像并计算白色像素的数量
  • 归一化结果

我认为我的程序没问题,但我得到了奇怪的结果...只是为了检查一下,我正在显示每个字符的图像,并且发生了一些奇怪的事情。图片显示了我在说什么。

cvPutText() result

这是我使用的代码:

... 
char c = 'a'; //or whatever
IplImage *img = cvCreateImage(cvSize(150, 150), IPL_DEPTH_8U, 1);

char buffer[7];
sprintf(buffer, "%c", c);

CvFont font;
cvInitFont(&font, CV_FONT_HERSHEY_SIMPLEX, 0.5, 0.5);
cvPutText(img, buffer, cvPoint(2, 15), &font, cvScalar(255));

//iteration to calculate brightness will go here

cvNamedWindow(buffer);
cvShowImage(buffer, img);
cvMoveWindow(buffer, 50*(c-first), 20);
...

我正在 MacOS Lion 上开发(如果有帮助...)。感谢您阅读(并提供帮助!)。

最佳答案

你没有初始化图像内容:你刚刚分配了内存,你看到了某种内存垃圾。

只需添加 cvSet (img, cvScalarAll(0)) 将图像设置为黑色。

关于OpenCV - cvPutText 正在为我的图像添加噪音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9457062/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com