www.1862.net > jAvA rgB转hsi公式

jAvA rgB转hsi公式

这是用matlab算图像RGB和HSI的程序。 R=im(:,:,1); G=im(:,:,2); B=im(:,:,3); R=reshape(R,[s(1),s(2)]); G=reshape(G,[s(1),s(2)]); B=reshape(B,[s(1),s(2)]); r=mean(mean(R));%求R分量的均值 g=mean(mean(G));%求G分量的均值 b=mean(mean(B...

一般可以在W式的分母下增加一个值很小变量sigma=0.000000001,这样就可以解决分母为零的问题了,即是W = arccos( (2*R-G-B) / ( 2*sqrt((R-G)*(R-G) + (R-B)*(G-B)) +sigma ))

如果直接对R、G、B处理,其处理过程中很可能会引起三个量不同程度的变化,这样就会产生色差问题,甚至带来颜色上的失真。HSI模型的出现,使得在保持色彩无失真的情况下实现图像处理成为可能。

网上有这个内容哎。比如说http://blog.csdn.net/xiaojidan2011/article/details/7968883 还有http://blog.163.com/crazyzcs@126/blog/static/12974205020104802332549/

PS

TIFF是一种比较灵活的图像格式,它的全称是Tagged Image File Format,文件扩展名为TIF或TIFF。该格式支持256色、24位真彩色、32位色、48位色等多种色彩位,同时支持RGB、CMYK以及YCbCr等多种色彩模式,支持多平台。TIFF文件可以是不压缩的,文...

HSI是用来做处理的中间颜色模型,因为它更接近人的视觉系统,可以很直观的做出相应处理。比如亮度增强(I分量调节),亮度均衡等等。处理结束后应该转化为RGB然后显示。 因为imshow/image等内建函数并没有直接显示HSI的map。

这个是因为H最大值是360,而八位char最大值是255,所以就溢出了!这就解释了为什么绿色偏多,你用公式算算就知道了

hsi=cat(3,H,S,I);%cat函数用于连接两个矩阵或数组,第一个参数表示按第几维进行连接

直接用Color结构的方法即可。 Color c = Color.Red;int Hue = c.GetHue();

网站地图

All rights reserved Powered by www.1862.net

copyright ©right 2010-2021。
www.1862.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com