1. 程式人生 > >如何用指標遍歷影象中的每一個畫素

如何用指標遍歷影象中的每一個畫素

用指標訪問影象中的每一個畫素點其實是個很簡單的問題,它和訪問二維數組裡面數據辦法是基本一樣的。
首先獲取圖片資料每一行的首地址:


for (int i = 0; i < rowNumber; i++)
{
uchar*data = outputImage.ptr<uchar>(i);
}

然後再以每一行的首地址作為該行資料即陣列的首地址來訪問該行資料。

for (int i = 0; i < rowNumber; i++)
{
uchar*data = outputImage.ptr(i);//獲得第i行的首地址,uchar為畫素中的資料型別。
for (int j = 0; j < colNumber; j++){
data[j] = data[j] / div*div + div / 2;//data為行首地址,則data[j]為該行的第j列個數據。
}}