求助用Gray world方法对彩色图像进行颜色均衡的Matlab代码! 15
1)计算图像的R、G、B三分量各自的平均值avgR、avgG、avgB。并得到图像的平均灰度值avgGray=(avgR+avgG+avgB)/3。2)对图像中每个像素C...
1)计算图像的R、G、B三分量各自的平均值avgR、avgG、avgB。并得到图像的平均灰度值avgGray=(avgR+avgG+avgB)/3。
2)对图像中每个像素C,计算调整其R、G、B分量C(R)、C(G)、C(B)为: ;
3)将计算后得到的C(R)、C(G) 、C(B)值调整到可显示的范围内,若分量值大于255,调整为255。 展开
2)对图像中每个像素C,计算调整其R、G、B分量C(R)、C(G)、C(B)为: ;
3)将计算后得到的C(R)、C(G) 、C(B)值调整到可显示的范围内,若分量值大于255,调整为255。 展开
1个回答
展开全部
I=imread('N.jpg');
y=GrayWorld(I);
figure(1);imshow(I);
figure(2);imshow(y);
function y=GrayWorld(Image)
r=Image(:,:,1);
g=Image(:,:,2);
b=Image(:,:,3);
avgR = mean(mean(r));
avgG = mean(mean(g));
avgB = mean(mean(b));
avgRGB = [avgR avgG avgB];
grayValue = (avgR + avgG + avgB)/3
scaleValue = grayValue./avgRGB;
newI(:,:,1) = scaleValue(1) * r;
newI(:,:,2) = scaleValue(2) * g;
newI(:,:,3) = scaleValue(3) * b;
y=newI
y=GrayWorld(I);
figure(1);imshow(I);
figure(2);imshow(y);
function y=GrayWorld(Image)
r=Image(:,:,1);
g=Image(:,:,2);
b=Image(:,:,3);
avgR = mean(mean(r));
avgG = mean(mean(g));
avgB = mean(mean(b));
avgRGB = [avgR avgG avgB];
grayValue = (avgR + avgG + avgB)/3
scaleValue = grayValue./avgRGB;
newI(:,:,1) = scaleValue(1) * r;
newI(:,:,2) = scaleValue(2) * g;
newI(:,:,3) = scaleValue(3) * b;
y=newI
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询