RGB2HSI转换算法

转自:http://blog.sina.com.cn/s/blog_6c41e2f30100xuy1.html

转换原理:采用圆锥模型公式

function HSI = RGB2HSI( RGB , Hexc , Sexc , Iexc )
  
    % RGB 表示输入RGB图像矩阵
    % Hexc 、Sexc、Iexc 分别表示 HSI 中 H S I 的偏移(度)
   
    RGB = im2double(RGB); % 数据类型转换 整形->浮点

    R   = RGB(:,:,1);      % 红
    G   = RGB(:,:,2);      % 绿
    B   = RGB(:,:,3);      % 蓝

    % 根据公式计算 H S I
    I   = (R + G + B) / sqrt(3);  
    S   = sqrt( (R - G).^2 + (G - B).^2 + (B - R).^2 );
    H   = ( R .* 2 - (G + B) )./sqrt( sqrt(2) * ( (R - G).^2 + (G - B).^2 + (B - R).^2 ) );
    H( G<B ) = 2 * pi - H( G<B );
   
    % 根据输入进行调整
    H = H + Hexc;
    S = S + Sexc;
    I = I + Iexc;
   
    % 重组图像矩阵
    HSI = cat(3,H,S,I);  



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值