Atitit 颜色平均值cloor grb hsv模式的区别对比

使用hsv模式平均后会变得更加的靓丽一些。。2

public class imgT {

public static void main(String[] args) {

Color c = new Color(100, 250, 55);

Color c2 = new Color(69, 176, 216);

List<Color> li_c = Lists.newArrayList();

li_c.add(c);

li_c.add(c2);

Color c_avg = ColorUtil.avgClr_byLiClr(li_c);

HSV h = ColorUtil.rgb2hsv(c.getRGB());

HSV h2 = ColorUtil.rgb2hsv(c2.getRGB());

List<HSV> li_h = Lists.newArrayList();

li_h.add(h);

li_h.add(h2);

HSV h_avg = ColorUtil.avgHsv(li_h);

Color h2c=ColorUtil.HSVtoRGBColorV2(h_avg);

System.out.println(c_avg);

System.out.println(h_avg);

System.out.println(h2c);

}java.awt.Color[r=84,g=213,b=135]

{

"h":151,

"s":0.7302778,

"v":0.9137255,

"x":0,

"y":0

}

java.awt.Color[r=63,g=233,b=151]

使用hsv模式平均后会变得更加的靓丽一些。。

/AtiPlatf_cms/src/com/attilax/img/other/ColorUtil.java

public static Color avgClr_byLiClr(List<Color> li_c) {

int r_sum = 0;int g = 0;int b = 0;

//Color cl = null;

for (Color c1 : li_c) {

r_sum=c1.getRed()+r_sum;

g=c1.getGreen()+g;

b=c1.getBlue()+b;

}

int len=li_c.size();

int avg_r=r_sum/len;

int avr_g=g/len;

int avr_b=b/len;

//int rgb = .getRGB();

return  new Color(avg_r, avr_g, avr_b);

//return avgClr(ca);

}

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 )

汉字名:艾提拉(艾龙),   EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

Atiend

Atitit 颜色平均值cloor grb hsv模式的区别对比的更多相关文章

  1. Atitit blend mode COLOR_DODGE 混合模式  “颜色减淡”模式

    Atitit blend mode COLOR_DODGE 混合模式  "颜色减淡"模式 1.1. 混合模式是图像处理技术中的一个技术名词1 1.2. 目录1 1.3. 颜色减淡C ...

  2. 颜色的RGB-计算HSV公式色度/饱和度/亮度 简化代码

    计算颜色的HSV值 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新! ...

  3. Atitit 图像处理类库安装与安装模式的前世今生与未来大趋势attilax总结.docx

    Atitit 图像处理类库安装与安装模式的前世今生与未来大趋势attilax总结.docx 1. 安装的原理,主要是解压,复制,设置三大步1 2. 目前我们常见的三大种安装模式,二进制模式与源码安装模 ...

  4. Atitit. 状态模式(State)attilax 总结 跟个策 略模式的区别

    Atitit. 状态模式(State)attilax 总结 跟个策 略模式的区别 1. 状态模式(State)概览 1 2. 状态的维护和转换:① 在Context 中.② 在状态的处理类中.2 3. ...

  5. BGR 与 HSV 模式的转换规则

    HSV模式中的H.S.V分别表示色调.饱和度.亮度 RGB转化到HSV的算法:max=max(R,G,B) min=min(R,G,B) if R = max, H = (G-B)/(max-min) ...

  6. Atitit 代理CGLIB 动态代理 AspectJ静态代理区别

    Atitit 代理CGLIB 动态代理 AspectJ静态代理区别 1.1. AOP 代理主要分为静态代理和动态代理两大类,静态代理以 AspectJ 为代表:而动态代理则以 spring AOP 为 ...

  7. Atitit mtp ptp rndis midi协议的不同区别

    Atitit mtp ptp rndis midi协议的不同区别 1. PTP:1 2. MTP:1 3. Mtp 与usb区别2 4. 不过和UMS相比,MTP也有不足之处:3 5.  MTP协议介 ...

  8. atitit.印度教与java宗教的特点与观念对比 attilax总结

    atitit.印度教与java宗教的特点与观念对比 attilax总结 1. Java就是一种宗教 1 2. Java的教义思想,社区理念,价值观念 2 2.1. 教学语言,类似与印度教的祭祀万能 2 ...

  9. HSV和HSI区别

    HSV (色相hue, 饱和度saturation, 明度value), 也称HSB (B指brightness) 是艺术家们常用的,因为与加法减法混色的术语相比,使用色相,饱和度等概念描述色彩更自然 ...

随机推荐

  1. Echarts给柱状图每一条顶部都添加数值

    在 series中添加 itemStyle : { normal: {label : {show: true}}}, 不过目测要把markPoint等去掉,不然最大值和最小值会和label冲突,应该有 ...

  2. 51nod 1138 连续整数的和(数学公式)

    1138 连续整数的和 #include <iostream> #include <cmath> #include <cstdio> using namespace ...

  3. zTree+EasyUi做权限遇到的小问题

    最近需要做一个zTree+EasyUi的权限管理系统,以前有过接触,在做这一块时,用到了ztree,树来加载咱们的菜单栏,后台获取登录用户信息的权限列表,转换成json对象来加载到咱们的树当中,代码如 ...

  4. MyEclipse快捷键敏感设置

    对于一个程序员来说,敲代码没有快捷键是很难受的.自从我装了MyEclipse之后发现快捷键敏感性太差了比如说我打输出语句System.out.println();一般打syso就会有提示,但是我的My ...

  5. javaWeb开发小工具---MailUtils及其单元测试

    本次介绍的是,在javaWeb开发中,我们不免会遇到发送邮件的需求,比如:用户注册账号,需要激活登录,以及服务器定期向会员发送礼品信息等.所以参考有关资料,写了这个MailUtils工具类. 1.Ma ...

  6. 对偶理论、拉格朗日对偶问题、LP线性规划对偶性质

    Lagrange 对偶问题 定义其的对偶问题: Lagrange函数 考虑线性规划问题 若取集合约束D={x|x≥0},则该线性规划问题的Lagrange函数为 线性规划的对偶问题为: 对偶定理原问题 ...

  7. android ontouch事件分发机制

    最近开发一个项目中,banner图左右切换和下拉刷新手势有冲突,为此去研究了事件分发,网上资料一大抄,有些讲的不对有些讲的不全,结合了网上一些博文以及源码总结如下  一个完整的触摸事件包含down,m ...

  8. P1905生活大爆炸版 石头剪刀布

      P1905生活大爆炸版 石头剪刀布 描述 石头剪刀布是常见的猜拳游戏:石头胜剪刀,剪刀胜布,布胜石头.如果两个人出拳一 样,则不分胜负.在<生活大爆炸>第二季第 8 集中出现了一种石头 ...

  9. css横向导航条

    css横向导航条有两种方法 1. ul li a li{float:left} #navlist li, #navlist a{height:44px;display:block;} a{width: ...

  10. javascript基础知识-类和模块

    在JavaScript中可以定义对象的类,让每个对象都共享这些属性. 在JavaScript中,类的实现是基于其原型继承机制的.如果两个实例都从同一个原型对象上继承了属性,我们就说它们是同一个类的实例 ...