如何在 MATLAB 中使用对数函数将三波段彩色图像量化为彩色图像
How do I quantize a three-band color image into a color image using logarithmic function in MATLAB
对数函数为I' =C*ln(I+1)(对每个波段),其中I为原始值(0~255),I'为量化值,C为常数将I'缩放为(0~255),ln为自然对数
到目前为止我试过这个:
C1 = double(C1);
C = 0;
I = (C*log(1+C1));
image(I);
figure;
结果是黑色图像。
您已设置 C=0
,然后乘以 C
。相反,通过考虑结果图像的最大值并确保它缩放到 1
.
来计算 C
I = log(C1+1);
C = 1/max(I(:));
I = C*I;
image(I);
对数函数为I' =C*ln(I+1)(对每个波段),其中I为原始值(0~255),I'为量化值,C为常数将I'缩放为(0~255),ln为自然对数
到目前为止我试过这个:
C1 = double(C1);
C = 0;
I = (C*log(1+C1));
image(I);
figure;
结果是黑色图像。
您已设置 C=0
,然后乘以 C
。相反,通过考虑结果图像的最大值并确保它缩放到 1
.
C
I = log(C1+1);
C = 1/max(I(:));
I = C*I;
image(I);