接上篇文章:对图像每个像素的操作
对比度增强:I(i; j) = 5 I(i; j) - [I(i - 1; j) + I(i + 1; j) + I(i; j - 1) + I(i; j + 1)]
#include "cv.h"
#include "highgui.h"
using namespace std;
using namespace cv;
int main(int argc,char *argv[])
{
Mat src,dst,dst1,key;
int i,j;
double t;
src=imread("src.jpg"); //读入图像可为灰度和彩色
int channals=src.channels();
int rows=src.rows;
int cols=src.cols;
uchar *prePtr,*curPtr,*nexPtr,*objPtr;
dst.create(src.size(),src.type());
t=(double)getTickCount();
for (i=1;i<rows-1;i++)
{
prePtr=src.ptr<uchar>(i-1);
curPtr=src.ptr<uchar>(i);
nexPtr=src.ptr<uchar>(i+1);
objPtr=dst.ptr<uchar>(i);
for (j=channals;j<channals*(cols-1);j++)
{
objPtr[j]=saturate_cast<