这是显示正确的结果,但它是用灰色和阴影着色的对象,我希望它们是不同的颜色而不是灰色阴影,如红色,蓝色,绿色,粉红色,黄色等。我应该这样做吗?另外,我想知道,如果有可能看到图像的矩阵像0s,1s形式?
答案 0 :(得分:2)
您的问题是您正在尝试在相同的黑白图像上绘制轮廓。你应该制作一个不同的图像:
image = cvCreateImage(cvSize(img_bw->width, img_bw->height), IPL_DEPTH_8U, 3);
这将是一个3通道图像,您将能够绘制BGR颜色。
如果你想看到代表b& w图像中所有像素的强度矩阵,你可以在文本文件或其他东西中输出它们。你可以访问这样的任何元素:
unsigned char* dataRow = (unsigned char*)img_bw->imageData + i * img_bw->width;
unsigned char value = dataRow[j];