永发信息网

opencv使用imageData读取像素值问题

答案:2  悬赏:20  手机版
解决时间 2021-01-11 19:46
  • 提问者网友:记得曾经
  • 2021-01-10 20:51
opencv使用imageData读取像素值问题
最佳答案
  • 五星知识达人网友:低音帝王
  • 2021-01-10 22:05
IplImage* img=cvLoadImage(imageName);

coutfor(int y=0;yheight;y++)
{
unsigned char* p=(unsigned char*)(img->imageData+y*img->widthStep);
for(int x=0;xwidth*img->nChannels;x++)
{
printf("%d ",p[x]);
}

}
你为什么要改为int型呢,存储的是char,你使用int型导致寻址方式改变,访问了越界的内存。另外,你确定你的图像是单通道图像么?
全部回答
  • 1楼网友:三千妖杀
  • 2021-01-10 22:14
用CV_IMAGE_ELEM(src,uchar,y,x)追问我看过这个答案了,我想知道的是我这段程序的问题
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯