欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#實現(xiàn)把彩色圖片灰度化代碼分享

 更新時間:2014年08月15日 08:55:36   投稿:junjie  
這篇文章主要介紹了C#實現(xiàn)把彩色圖片灰度化代碼分享,用在一些特殊場合中,需要的朋友可以參考下

彩色圖片轉(zhuǎn)為灰度圖的公式如下:

復(fù)制代碼 代碼如下:

gray(i,j) = 0.299 * Red(i,j)+0.587*Green(i,j)+0.114*Blue(i,j)

其中g(shù)ray(i,j) 為轉(zhuǎn)化后的灰度值  (i,j)為像素點的位置。

源代碼如下:

public static Bitmap ChangeGray(Bitmap b) 
 { 
  BitmapData bmData = b.LockBits(new Rectangle(0, 0, b.Width, b.Height), ImageLockMode.ReadWrite, 
   PixelFormat.Format24bppRgb); 
  int stride = bmData.Stride;   // 掃描的寬度 
  
  
  unsafe 
  { 
   byte* p = (byte*)bmData.Scan0.ToPointer(); // 獲取圖像首地址 
   int nOffset = stride - b.Width * 3;  // 實際寬度與系統(tǒng)寬度的距離 
   byte red, green, blue; 
   for (int y = 0; y < b.Height; ++y) 
   { 
    for (int x = 0; x < b.Width; ++x) 
    { 
     blue = p[0]; 
     green = p[1]; 
     red = p[2]; 
  
     p[0] = p[1] = p[2] = (byte)(.299 * red + .587 * green + .114 * blue); // 轉(zhuǎn)換公式 
     p += 3;  // 跳過3個字節(jié)處理下個像素點 
    } 
    p += nOffset; // 加上間隔 
   } 
  } 
  b.UnlockBits(bmData); // 解鎖 
  return b; 
 } 

相關(guān)文章

  • C#模擬實現(xiàn)QQ窗體功能

    C#模擬實現(xiàn)QQ窗體功能

    這篇文章主要為大家詳細(xì)介紹了如何通過C#實現(xiàn)類似QQ窗體的功能,當(dāng)窗體放置到屏幕的邊緣,可以將窗體隱藏,當(dāng)鼠標(biāo)再次放置到屏幕邊緣時,窗體可再次顯示,需要的可以參考一下
    2022-12-12
  • c#棧變化規(guī)則圖解示例(棧的生長與消亡)

    c#棧變化規(guī)則圖解示例(棧的生長與消亡)

    多數(shù)情況下我們不需要關(guān)心棧的變化,下文會給出一個具體的示例。另外,理解棧的變化對于理解作用域也有一定的好處,因為C#的局部變量作用域是基于棧的。
    2013-11-11
  • C#面向?qū)ο髮崿F(xiàn)圖書管理系統(tǒng)

    C#面向?qū)ο髮崿F(xiàn)圖書管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C#面向?qū)ο髮崿F(xiàn)圖書管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • c#讀寫注冊表示例分享

    c#讀寫注冊表示例分享

    這篇文章主要介紹了c#讀寫注冊表示例,示例中有詳細(xì)注釋,大家參考使用吧
    2014-01-01
  • C#簡單嵌套flash讀取數(shù)據(jù)的實現(xiàn)代碼

    C#簡單嵌套flash讀取數(shù)據(jù)的實現(xiàn)代碼

    這篇文章主要介紹了C#簡單嵌套flash讀取數(shù)據(jù)的實現(xiàn)代碼,有需要的朋友可以參考一下
    2013-11-11
  • C#中的隊列Queue<T>與堆棧Stack<T>

    C#中的隊列Queue<T>與堆棧Stack<T>

    這篇文章介紹了C#中的隊列Queue<T>與堆棧Stack<T>,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • 基于DateTime.ParseExact方法的使用詳解

    基于DateTime.ParseExact方法的使用詳解

    本篇文章是對DateTime.ParseExact方法的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C#影院售票系統(tǒng)畢業(yè)設(shè)計(3)

    C#影院售票系統(tǒng)畢業(yè)設(shè)計(3)

    這篇文章介紹了C#影院售票系統(tǒng)畢業(yè)設(shè)計,文章主要內(nèi)容是關(guān)于購票、座位顏色狀態(tài)的改變及場次座位狀態(tài)的顯示,需要的朋友可以參考下
    2015-11-11
  • C#加解密之DES算法的實現(xiàn)

    C#加解密之DES算法的實現(xiàn)

    DES算法為密碼體制中的對稱密碼體制,又被稱為美國數(shù)據(jù)加密標(biāo)準(zhǔn)。本文將用C#語言實現(xiàn)DES算法,文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2022-08-08
  • 探討c#中的unchecked是什么意思,起什么作用?

    探討c#中的unchecked是什么意思,起什么作用?

    本篇文章是對c#中的unchecked進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06

最新評論