大家好,又见面了,我是你们的朋友全栈君。
widthstep是指图像每行所占的字节数,
定义:
image->widthStep = (((image->width * image->nChannels *(image->depth & ~IPL_DEPTH_SIGN) + 7)/8)+ align – 1) & (~(align – 1));
图像宽度
3
3
5
5
7
7
4
4
主要要和width区别,width是指每行所含的像素个数,但是一个像素也可能占一个字节,也可能占三个字节或者四个,多个等
.imagedata是指向存储图像像素值数组的指针,内容是这个数组的首地址,pt.y指的是像素点的行坐标,所以Img->imageData + Img->widthStep*pt.y便是该像素点所在行的首地址,然后再加上该像素点所在的列,即pt.x,就得到了该像素点的地址,所以代码也可以写成
((uchar*)(Img->imageData + Img->widthStep*pt.y+pt.x)),都是指该像素点的像素值,至于强制类型转换,是因为会产生一些负值,而像素值是不能为负的.
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131738.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...