<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      快速將彩色照片變成黑白照片(僅適用于jpg格式)

      上篇文章寫了將彩色圖片變成黑白照片的一個方法,該方法遍歷圖片色素,然后通過公式將彩色變成黑白,效率十分低下。
      今天做了下修改,效率大概提高了1000倍吧
      測試圖如下:

      214452542是上個方法的執(zhí)行時間
      250169是本次方法執(zhí)行時間
      圖如本次方法生成圖效果
      更改了公式為:Y=0.299*R+0.114*G+0.587B
      代碼:
       1/// <summary>
       2        /// 快速的將彩色圖像變成黑白圖像-目前僅適用于jpg格式的圖像 
       3        /// </summary>
       4        /// <param name="filePath">彩色圖像地址</param>
       5        /// <returns>返回的黑白圖像</returns>

       6        public static Bitmap QuickWhiteAndBlack(string filePath)
       7        {
       8
       9            // 從文件創(chuàng)建Bitmap對象
      10            Bitmap bmp = new Bitmap(filePath);
      11
      12            // 將Bitmap鎖定到系統(tǒng)內(nèi)存中
      13            Rectangle rect = new Rectangle(00, bmp.Width, bmp.Height);
      14            // 獲得BitmapData
      15            System.Drawing.Imaging.BitmapData bmpData =
      16                bmp.LockBits(rect, System.Drawing.Imaging.ImageLockMode.ReadWrite,
      17                bmp.PixelFormat);
      18
      19            // 位圖中第一個像素數(shù)據(jù)的地址。它也可以看成是位圖中的第一個掃描行
      20            IntPtr ptr = bmpData.Scan0;
      21
      22            // 將Bitmap對象的信息存放到byte數(shù)組中
      23            // 假設(shè)位圖中一個像素包含3byte,也就是24bit
      24            int bytes = bmp.Width * bmp.Height * 3;
      25            byte[] rgbValues = new byte[bytes];
      26
      27            //復制GRB信息到byte數(shù)組
      28            System.Runtime.InteropServices.Marshal.Copy(ptr, rgbValues, 0, bytes);
      29
      30            // 根據(jù)Y=0.299*R+0.114*G+0.587B,Y為亮度
      31            for (int counter = 0; counter < rgbValues.Length; counter += 3)
      32            {
      33                byte value = (byte)(rgbValues[counter] * 0.299 + rgbValues[counter + 2* 0.114 + rgbValues[counter + 1* 0.587);
      34                rgbValues[counter] = value;
      35                rgbValues[counter + 1= value;
      36                rgbValues[counter + 2= value;
      37            }

      38
      39            //將更改過的byte[]拷貝到原位圖
      40            System.Runtime.InteropServices.Marshal.Copy(rgbValues, 0, ptr, bytes);
      41
      42            // 解鎖位圖
      43            bmp.UnlockBits(bmpData);
      44            return bmp;
      45
      46        }
      上篇地址:http://www.rzrgm.cn/jillzhang/archive/2006/10/09/524571.html
      特別感謝:YaoTong 
                       ahnan 
                       沐楓
                       三位兄弟在上篇文章對我的幫助!
      posted @ 2006-10-13 23:28  Robin Zhang  閱讀(10769)  評論(17)    收藏  舉報
      主站蜘蛛池模板: 日本久久香蕉一本一道| 亚洲av影院一区二区三区| 色先锋av影音先锋在线| 国产肥臀视频一区二区三区| 顶级少妇做爰视频在线观看| 成人乱码一区二区三区四区| 中文字幕无码成人免费视频| 日韩精品区一区二区三vr| 亚洲熟妇无码八av在线播放| 久久欧洲精品成av人片| 九九热在线这里只有精品| 亚洲一区二区三区18禁| 精品一区二区三区蜜桃久| 亚洲第一狼人天堂网伊人| 五月婷婷久久中文字幕| 99精品国产一区二区三区| 日韩精品一区二区三区蜜臀| 欧美人人妻人人澡人人尤物| 好爽毛片一区二区三区四| 成年午夜无码av片在线观看| 中文字幕精品人妻av在线| 人妻日韩精品中文字幕| 亚洲欧洲日产国产 最新| 广东少妇大战黑人34厘米视频| 国产亚洲精品AA片在线播放天| 亚洲国产精品成人av网| 国产激情艳情在线看视频| 午夜av高清在线观看| 国产一区二区黄色激情片| 国产在线中文字幕精品| 影音先锋大黄瓜视频| 视频一区二区三区四区不卡 | 久久精品成人免费看| 亚洲成人网在线观看| 亚洲综合一区二区国产精品| 在线观看无码av五月花| 精品国产一区二区三区国产区| 东京热一区二区三区在线| а天堂中文最新一区二区三区 | 久久午夜夜伦鲁鲁片免费无码影院| 国产成人啪精品午夜网站|