java 根據圖片的rgb求灰度值

  • 作者:由 匿名使用者 發表于 攝影
  • 2022-10-29

java 根據圖片的rgb求灰度值微笑向日葵2020.03.15 回答

public int filterRGB(int x, int y, int rgb) {

int a = rgb & 0xff000000;//將最高位(24-31)的資訊(alpha通道)儲存到a變數

int r = (rgb >> 16) & 0xff;//取出次高位(16-23)紅色分量的資訊

int g = (rgb >> 8) & 0xff;//取出中位(8-15)綠色分量的資訊

int b = rgb & 0xff;//取出低位(0-7)藍色分量的資訊

rgb = (r * 77 + g * 151 + b * 28) >> 8; // NTSC luma,算出灰度值

return a | (rgb << 16) | (rgb << 8) | rgb;//將灰度值送入各個顏色分量

}

Top