Opencv使用指针遍历图像运用提高图像亮度

在对图像进行整张遍历时,用指针会相对高效点。

opencv中如何获取图指针呢?可以用ptr函数来获取第j行首地址。

ptr函数是Mat类中的一个成员函数,用于获取第几行首地址

ptr函数
ptr函数

以下是Opencv使用指针遍历图像提高图像亮度的一个例子

指针遍历图像提高图像亮度测试结果

图像提高亮度
图像提高亮度

注: if (image.isContinuous()) { //判断在内存中是否连续 nc = nc * nr; nr = 1; }大家可能会看到段有些不明白。这里要讲的是opencv图像在内存中并不一定是连续的,因为有字节对齐的问题,这也是为了提高效率的作法。但有时图像在内存中又刚好是连续的,加了这句判断后,可以将二维for循环转成一维for循环,提高效率。