OPENCV图像遍历方法

IplImage *plate;

uchar* plate_data = (uchar*)plate->ImageData;

(1)逐列扫描图像像素点

for(i = 0; i < plate->width; i++)

{
    for(j = 0; j < plate->height; j++)

   {
                   plate_data[j * plate->widthStep + i];
    }
}

(1)逐行扫描图像像素点

for(i = 0; i < plate->height;; i++)

{
    for(j = 0; j < plate->width; j++)

   {
                   plate_data[i* plate->widthStep +j];
    }
}

一般情况下,图像的widthStep和width的值是一样的,但是在某些特殊情况下,如图像宽度不为4的整数倍,彩色图象等,这时图像指针的这两个参数并不一样,所以此时用width代替widthStep就会出错;


 

你可能感兴趣的:(OPENCV)