zoukankan      html  css  js  c++  java
  • 高效取图片像素的方法

     public static short搜索[][] GetPixs(Bitmap bitmap)
            {
                int height = bitmap.Height;
                int width = bitmap.Width;
                byte tempB, tempG, tempR;
                short[][] spOriginData = new short[height][];
                for (int i = 0; i < height; i++)
                {
                    spOriginData[i] = new short[width];
                }

                BitmapData dataOut = bitmap.LockBits(new Rectangle(0, 0, width, height), ImageLockMode.ReadWrite, PixelFormat.Format24bppRgb);
                int offset = dataOut.Stride - dataOut.Width * 3;
                try
                {
                    unsafe
                    {
                        byte* pOut = (byte*)(dataOut.Scan0.ToPointer());

                        for (int y = 0; y < height; y++)
                        {
                            for (int x = 0; x < width; x++)
                            {
                                tempB = pOut[0];
                                tempG = pOut[1];
                                tempR = pOut[2];
                                double data=0.31 * tempR + 0.59 * tempG + 0.11 * tempB;
                                if (data > 255)
                                    spOriginData[y][x] = 255;
                                else
                                    if (data < 0)
                                        spOriginData[y][x] = 0;
                                    else
                                        spOriginData[y][x] = (short)data;
                                pOut += 3;
                            }
                            pOut += offset;
                        }
                        bitmap.UnlockBits(dataOut);
                    }
                }
                catch
                {
                }
                return spOriginData;
            }

  • 相关阅读:
    JDK 动态代理分析
    java class 文件解析
    ARM体系结构和汇编指令
    待整理
    Nand Flash,Nor Flash,CFI Flash,SPI Flash 之间的关系
    CPU与内存的那些事
    关于DMA和它的仇家
    BSS段 data段 text段 堆heap 和 栈stack
    关于常用序号的几点说明(数字序号顺序)
    word表格自动编号,前面加章节号
  • 原文地址:https://www.cnblogs.com/harry0914/p/3435936.html
Copyright © 2011-2022 走看看