使用OPENCV输出图像像素值的范围

初学CV,想输出一个图片的所有像素点的像素值用了宏CV_IMAGE_ELEM和另外一种方法((uchar*)(Img->imageData+Img->widthstep*... 初学CV,想输出一个图片的所有像素点的像素值
用了宏CV_IMAGE_ELEM和另外一种方法((uchar* )(Img->imageData + Img->widthstep *col))[row]两种方法 ,但是输出后数值明显不对 有负的 也有10位数的数字,我想问一下正常输出的数值应该是什么范围,还有这个输出跟图片本身的通道数量有关系么?还有就是怎么查看一个图片的通道数,不都应该是RGB的么
展开
 我来答
jackone32123
2012-02-16 · TA获得超过441个赞
知道小有建树答主
回答量:327
采纳率:0%
帮助的人:277万
展开全部
CvScalar cs;
cs = cvGet2D(img, y, x);
cs.val[0~4]对应4个通道的值。

img->nChannel 里面存的是通道数
追问
那输出的像素值是不是应该在0~255?
追答
不一定,要看你的image depth参数 IPL_DEPTH_8U是depth为1字节,值为0~255
如果是IPL_DEPTH_32F,值是0~1, 其他的不常用,不好说
qqibrow
2012-03-01
知道答主
回答量:1
采纳率:0%
帮助的人:1642
展开全部
你这么容易就满意了啊?

(如果是灰度的话)
unsigned char data = image->imageData[j*image->width + i];

这样不就是0~255了呗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式