映像濾鏡藝術---暗調濾鏡,映像濾鏡藝術---
| 本文介紹暗調濾鏡的實現過程,這個濾鏡主要是呈現一種暗調,對比明顯的效果,原理很簡單,公式如下:newR = R*R/255;newG = G*G/255;newB = B*B/255;實現代碼如下: private Bitmap FilterProcess(Bitmap a) { Bitmap srcBitmap = new Bitmap(a); int w = srcBitmap.Width; int h = srcBitmap.Height; System.Drawing.Imaging.BitmapData srcData = srcBitmap.LockBits(new Rectangle(0, 0, w, h), System.Drawing.Imaging.ImageLockMode.ReadWrite, System.Drawing.Imaging.PixelFormat.Format32bppArgb); byte* pSrc = (byte*)srcData.Scan0; int offset = srcData.Stride - w * 4; int r, g, b; for (int j = 0; j < h; j++) { for (int i = 0; i < w; i++) { b = pSrc[0]; g = pSrc[1]; r = pSrc[2]; pSrc[2] = (byte)(r * r / 255); pSrc[1] = (byte)(g * g / 255); pSrc[0] = (byte)(b * b / 255); pSrc += 4; } pSrc += offset; } srcBitmap.UnlockBits(srcData); return srcBitmap; }效果如下: 原圖 暗調 最後,放上一個完整的C#/C程式DEMO下載連結:http://www.zealpixel.com/forum.php?mod=viewthread&tid=79&extra=page%3D1 |
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。