Example #1
0
        public override Image ToUInt16()
        {
            ImageUInt16HSV uint16Image = new ImageUInt16HSV(Width, Height);
            double         multiplier  = (double)ushort.MaxValue + 1;

            for (int x = 0; x < Width; x++)
            {
                for (int y = 0; y < Height; y++)
                {
                    uint16Image.H[x, y] = (ushort)(H[x, y] * multiplier);
                    uint16Image.S[x, y] = (ushort)(S[x, y] * multiplier);
                    uint16Image.V[x, y] = (ushort)(V[x, y] * multiplier);
                }
            }
            return(uint16Image);
        }
        public override Image ToUInt16()
        {
            ImageUInt16HSV uint16Image = new ImageUInt16HSV(Width, Height);
            long           divider     = ((long)uint.MaxValue + 1) / (ushort.MaxValue + 1);

            for (int x = 0; x < Width; x++)
            {
                for (int y = 0; y < Height; y++)
                {
                    uint16Image.H[x, y] = (ushort)(H[x, y] / divider);
                    uint16Image.S[x, y] = (ushort)(S[x, y] / divider);
                    uint16Image.V[x, y] = (ushort)(V[x, y] / divider);
                }
            }
            return(uint16Image);
        }