我的思路太窄了,想了一个遍历的方法。也可以先做通道分解,分析单个通道的log变换。
菜鸟一个,若是有好的想法,还请赐教。
Mat log_image;
log_image.create(512,512,CV_8UC1);
cvtColor(input_image, input_image, CV_BGR2GRAY);
for (int i = 0; i <512; i++)
{
for (int j = 0; j < 512; j++)
{
log_image.at<uchar>(i,j) = (uchar)log(input_image.at<uchar>(i,j)+1.0);
}
}
这里需要注意一下:这里的log是以自然对数e为底的。