zoukankan      html  css  js  c++  java
  • 图片的灰与彩

    在linux里用file查看一张jpg图片

    frames表示通道 =1表示channel=1, =3同理

    channel=1,所谓单通道图,俗称灰度图,每个像素点只能有一个值表示颜色,像素值在0~255,0=黑,255=白,中间值是一些不同等级的灰色。也有3通道的灰度图,这种情况只有一个通道有值,其他两个通道的值=0

    channel=3,每个像素点有3个值表示,RGB图片就是三通道图片。

    R=G=B的值叫灰度值,灰度图像每个像素只需要一个字节存放灰度值,范围0~255

    任何颜色都有红、绿、蓝三原色组成,假如原来某点的颜色为RGB(R,G,B),那么,我们可以通过下面几种方法,将其转换为灰度:

    1.浮点算法:Gray=R*0.3+G*0.59+B*0.11;

    2.整数方法:Gray=(R*30+G*59+B*11)/100;

    3.移位方法:Gray =(R*76+G*151+B*28)>>8;

    4.平均值法:Gray=(R+G+B)/3;

    5.仅取绿色:Gray=G;

    通过上述任一种方法求得Gray后,将原来的RGB(R,G,B)中的R,G,B统一用Gray替换,形成新的颜色RGB(Gray,Gray,Gray),用它替换原来的RGB(R,G,B)就是灰度图了

  • 相关阅读:
    最小生成树算法
    并查集
    背包问题
    木桶排序
    STL之vector
    STL中的queue用法与stack用法对比
    快速幂求模
    归并排序+典型例题(逆序对)
    负进制转换
    冒泡排序
  • 原文地址:https://www.cnblogs.com/sayiqiu/p/10641191.html
Copyright © 2011-2022 走看看