访问图像像素值

时间:2013-05-25 19:55:43

标签: image opencv pixel

我想从已经纠正的opencv中的黑白图像中返回值。我使用.type()查看如何解决image.at<>(point())。它回复了0,所以我放入了image.at<int>()

但它所回馈的只是数百万的数字,而不是我的期望; 0255之间的内容。

我使用.channel()来检查频道数量;这是1,所以我认为应该没问题。

我可能做错了什么?

3 个答案:

答案 0 :(得分:2)

“它返回0,所以我放入了image.at<int>()。”

type == 0&lt; - &gt;那是uchar,而不是int。

尝试:

mat.at<uchar>(row,col); 

代替

答案 1 :(得分:1)

如果您的数据为unsigned char,则将像素编入索引为img.at<uchar>(row,col)

答案 2 :(得分:0)

也许您应该先尝试将其标准化为0到255之间的值?使用cv::normalize,alpha = 0和beta = 255。