OpenCV----对图像进行幂次变换

uchar T[256];
 for(int i = 0;i < 256;i++)
 {
  T[i] = (uchar) (255 * pow(i,r) / pow(255.0f,r)); //幂次变换
 }
 CvMat *T_mat = cvCreateMatHeader(1,256,CV_8UC1); //定义单通道,类型为8位无符号字符型的数组
 cvSetData(T_mat,T,0);//指派用户数据给数组头
 cvLUT(GrayImage,GrayImage,T_mat);//使用查表的值填充输出数组
 cvReleaseMat(&T_mat);//释放数组内存

 

r:定义的幂次方

GrayImage:IplImage指针

你可能感兴趣的:(OpenCV----对图像进行幂次变换)