• 图象处理算法(五)


    五、马赛克
      在指定大小的范围内,图象的颜色取成相同的。
     1        public static bool Mosaic(Bitmap b, int PixelSize)
     2        {
     3            BitmapData bmData = b.LockBits(new Rectangle(00, b.Width, b.Height), 
     4                ImageLockMode.ReadWrite, PixelFormat.Format24bppRgb);
     5            int stride = bmData.Stride;
     6            System.IntPtr Scan0 = bmData.Scan0;
     7            unsafe
     8            {
     9                byte * p = (byte *)(void *)Scan0;
    10                int nOffset = stride - b.Width*3;
    11                int blue = 0, green = 0, red = 0;
    12                Random rad = new Random();
    13                for(int y=0;y<b.Height;++y)
    14                {
    15                    for(int x=0; x < b.Width; ++x )
    16                    {
    17                    if (y % PixelSize == 0)
    18                    {
    19                         if (x % PixelSize == 0)
    20                         {
    21                          blue = p[0]; green = p[1]; red = p[2];
    22                         }
        
    23                         else
    24                         {
    25                          p[0= (byte)blue;
    26                          p[1= (byte)green;
    27                          p[2= (byte)red;
    28                         }

    29                    }

    30                    else
    31                    
    32                         byte * pTemp = p - bmData.Stride;
    33
    34                         p[0= (byte)pTemp[0];
    35                         p[1= (byte)pTemp[1];
    36                         p[2= (byte)pTemp[2];
    37                        }

    38                        p += 3;
    39                    }

    40                    p += nOffset;
    41                }

    42            }

    43            b.UnlockBits(bmData);
    44            return true;
    45        }
  • 相关阅读:
    #2019120500009-LG 数据结构 优先队列(1)
    #2019120500008-LG 数据结构 栈(1)
    2019D1T1 格雷码
    #2019120500006-LG 迷宫
    #2019120500004-LG 单词方阵
    #2019110700005
    hdu 1827强连通分量
    HDU 5691 状压dp
    HDU 4734--基础数位dp(递推)
    HDU 4638--莫队算法
  • 原文地址:https://www.cnblogs.com/faib/p/661049.html
Copyright © 2020-2023  润新知