【图像变换】基于matlab实现HSI和RGB域图像转换附matlab代码
【图像变换】基于matlab实现HSI和RGB域图像转换附matlab代码
TT_Matlab
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。
1 内容介绍
色彩分析是数字图像处理过程中最基本的一种分析方法,目的是使数字图像获得更好的识别效果.本文介绍了色彩分析中的色彩空间转换方法,并利用MATLAB对具体的数字图像进行了色彩空间变换.
2 部分代码
function C = hsi2rgb( hsi )
%UNTITLED3 Summary of this function goes here
% Detailed explanation goes here
HV = hsi(:,:,1)*2*pi;
SV = hsi(:,:,2);
IV = hsi(:,:,3);
R = zeros(size(HV));
G = zeros(size(HV));
B = zeros(size(HV));
id = find((0<=HV)&(HV<2*pi/3));
B(id) = IV(id).*(1-SV(id));
R(id) = IV(id).*(1+SV(id).*cos(HV(id))./cos(pi/3-HV(id)));
G(id) = 3*IV(id)-(R(id)+B(id));
id = find((2*pi/3<=HV)&(HV<4*pi/3));
R(id) = IV(id).*(1-SV(id));
G(id) = IV(id).*(1+SV(id).*cos(HV(id)-2*pi/3)./cos(pi-HV(id)));
B(id) = 3*IV(id)-(R(id)+G(id));
id = find((4*pi/3<=HV)&(HV<2*pi));
G(id) = IV(id).*(1-SV(id));
B(id) = IV(id).*(1+SV(id).*cos(HV(id)-4*pi/3)./cos(5*pi/3-HV(id)));
R(id) = 3*IV(id)-(G(id)+B(id));
C = cat(3,R,G,B);
C = max(min(C,1),0);
C = uint8(C*255);
end
3 运行结果
4 参考文献
[1]王静. 基于变换域的图像压缩及Matlab实现[J]. 科技视界, 2011(22):3.
博主简介:擅长 智能优化算法 、 神经网络预测 、 信号处理 、 元胞自动机 、 图像处理 、 路径规划 、 无人机 、 雷达通信 、 无线传感器 等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26
