Features.ImageInfo.createImb C# (CSharp) 메소드

createImb() 개인적인 메소드

**** THIS FUNCTION CAN BE CALLED ONLY ONES IN THE OBJECT LIFE TIME*** creates an AForge.Math.Histogram object from _imGray into _hist
private createImb ( ) : byte[]
리턴 byte[]
        private byte[] createImb()
        {
            lock (imbLock)
            {
                if (_imb != null) return _imb;

                // get image data (for the raw data pointer)
                BitmapData imGrayData =
                    _imGray.LockBits(new Rectangle(0, 0, _imGray.Width, _imGray.Height),
                                    System.Drawing.Imaging.ImageLockMode.ReadOnly,
                                    _imGray.PixelFormat);
                _imb = new byte[_imGray.Width * _imGray.Height];
                // copy image gray val's into normalized float (0.....1)
                unsafe
                {
                    for (int i = 0; i < imGrayData.Height; i++)
                    {
                        byte* row = (byte*)imGrayData.Scan0 + (i * imGrayData.Stride);
                        for (int j = 0; j < imGrayData.Width; j++)
                        {
                            _imb[i * imGrayData.Width + j] = row[j];
                        }

                    }
                }
                _imGray.UnlockBits(imGrayData);
                return _imb;
            }
        }