你还没有登录,登录后可以看到更多精彩内容
您需要 登录 才可以下载或查看,没有账号?新成员注册
×
本帖最后由 李金凤 于 2017-12-15 11:31 编辑
在我们日常工作中,特别是界面developer,经常需要对图片做一些简单的处理,达到美观的视觉效果。如果运气好的话,开发平台为你提供现成的处理函数,你只需要调用这些函数即可达到目的;但是在有时候,平台没有提供(特别是终端嵌入式平台,这类情况比较常见),这时候就需要你自己实现这些功能。本文收集了一些常用的图形处理技术,浅显易懂,用起来方便,快速。 基础知识 由于后面介绍的技术用来一些色彩基础理论,所以本文先讲一下这些理论知识。 色彩空间模型:关于色彩模型,至少有个10种以上;这里只介绍本文需要用到的3种:RGB模型,HSL、YUV色彩模型。 RGB色彩模型: 应用最广泛的色彩模型。这是根据三原色原理创建的模型。由三种基色(R,G,B)三种颜色通道的变化以及他们之间的相互叠加可以组成任何一种颜色。每个颜色分量范围是0-255,可以显示16777216种颜色。
HSL色彩模型: HSL色彩模式是工业界的一种颜色标准,是通过对色调(H——hue)、饱和度(S——saturation)、亮度(L—— lightness )三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的。由于人的视觉对亮度的敏感程度远强于对颜色浓淡的敏感程度,为了便于色彩处理和识别,所以人的视觉系统经常采用HSI色彩空间, 它比RGB色彩空间更符合人的视觉特性。 常用下图中椎体模型表示HSL模型。中心轴方向用来表示亮度,取值范围0~1,从下往上,越来越亮; 半径方向表示饱和度,取值范围0~1,从里到外,色彩越来越饱和,例如浅蓝到深蓝;角速度方向表示色调,取值范围0-240(通常我们实际计算按照360计算,然后在转成240),H的变化表示颜色的变化,例如红色到蓝色转变。 YUV色彩模型:应用广泛度仅次于RGB色彩模型。其中的Y,U,V几个字母不是英文单词的组合词,Y代表亮度,也就是我们常说的灰度,uv代表色差。YUV的发明是在黑白电视箱彩色电视过渡时期发明。黑白电视只有Y分量,即黑白电视图像都是灰度图。彩色电视中加入了UV彩色度。YUV解决了彩色电视与黑白电视兼容的机制问题。
|