找到一篇讲解的很好地博客,网址为:OpenCV像素点处理
同时写了一点自己的理解。
获得像素点的值便可以更加灵活的进行图像处理,在OpenCV里可以通过cvGet2D()和cvSet2D()两个函数加上一个CvScalar结构体做到。
opencv中,CvScalar结构为:
typedef struct CvScalar
{
double val[4];
}
CvScalar;
4个double型变量,其中.val[0],.val[1],.val[2]分别表示BGR值,是我们常用的,算法处理时不至于被强制类型转换而降低精度了。
再来看读写函数的定义:
cvGet2D 获得某个像素点的值, idx0=hight,表示行值, idx1=width,表示列值。
CVAPI(CvScalar) cvGet2D( const CvArr* arr, int idx0,