Esempio n. 1
0
        static public Bitmap SingleColor(Bitmap Source, BGRModel Type)
        {
            int Width = Source.Width, Height = Source.Height;

            BGR[,] Result = Img2BGR(Source);
            int X, Y, T;

            for (Y = 0; Y < Height; ++Y)
            {
                for (X = 0; X < Width; ++X)
                {
                    for (T = 0; T < 3; ++T)
                    {
                        if ((Type & BGRModel.R) != BGRModel.R)
                        {
                            Result[Y, X].R = 0;
                        }
                        if ((Type & BGRModel.G) != BGRModel.G)
                        {
                            Result[Y, X].G = 0;
                        }
                        if ((Type & BGRModel.B) != BGRModel.B)
                        {
                            Result[Y, X].B = 0;
                        }
                    }
                }
            }
            return(BGR2Img(Result));
        }
Esempio n. 2
0
        static public double Max(BGRComplexImg Source, BGRModel Model)
        {
            int    X, Y, Width = Source.Width, Height = Source.Height;
            double M = 0;
            int    I = (int)Model / 2;

            for (Y = 0; Y < Height; ++Y)
            {
                for (X = 0; X < Width; ++X)
                {
                    M = M < Source[I][Y, X].Magnitude ? Source[I][Y, X].Magnitude : M;
                }
            }
            return(M);
        }
Esempio n. 3
0
 public void IFFT2(BGRModel Type)
 {
     if ((Type & BGRModel.R) == BGRModel.R)
     {
         AMFT.FFT2(_R, AMFT.Direction.Backward);
     }
     if ((Type & BGRModel.G) == BGRModel.G)
     {
         AMFT.FFT2(_G, AMFT.Direction.Backward);
     }
     if ((Type & BGRModel.B) == BGRModel.B)
     {
         AMFT.FFT2(_B, AMFT.Direction.Backward);
     }
 }
Esempio n. 4
0
 public void BFFTShift(BGRModel Type)
 {
     if ((Type & BGRModel.R) == BGRModel.R)
     {
         ImgF.BFFTShift(_R);
     }
     if ((Type & BGRModel.G) == BGRModel.G)
     {
         ImgF.BFFTShift(_G);
     }
     if ((Type & BGRModel.B) == BGRModel.B)
     {
         ImgF.BFFTShift(_B);
     }
 }
Esempio n. 5
0
 public void Range(BGRModel Type)
 {
     if ((Type & BGRModel.R) == BGRModel.R)
     {
         ImgF.BGRRange(_R);
     }
     if ((Type & BGRModel.G) == BGRModel.G)
     {
         ImgF.BGRRange(_G);
     }
     if ((Type & BGRModel.B) == BGRModel.B)
     {
         ImgF.BGRRange(_B);
     }
 }
Esempio n. 6
0
 public void ToDouble(BGRModel Type)
 {
     if ((Type & BGRModel.R) == BGRModel.R)
     {
         ImgF.Divide(_R);
     }
     if ((Type & BGRModel.G) == BGRModel.G)
     {
         ImgF.Divide(_G);
     }
     if ((Type & BGRModel.B) == BGRModel.B)
     {
         ImgF.Divide(_B);
     }
 }
Esempio n. 7
0
 public void Exp(BGRModel Type)
 {
     if ((Type & BGRModel.R) == BGRModel.R)
     {
         ImgF.Exp(_R);
     }
     if ((Type & BGRModel.G) == BGRModel.G)
     {
         ImgF.Exp(_G);
     }
     if ((Type & BGRModel.B) == BGRModel.B)
     {
         ImgF.Exp(_B);
     }
 }
Esempio n. 8
0
        static public Bitmap StrongColor(Bitmap Source, BGRModel Type)
        {
            int Width = Source.Width, Height = Source.Height;

            BGR[,] Result = Img2BGR(Source);
            int  X, Y;
            byte Want = 0;

            for (Y = 0; Y < Height; ++Y)
            {
                for (X = 0; X < Width; ++X)
                {
                    Want            = DoubleToByte(Result[Y, X][(int)Type / 2]);
                    Result[Y, X][0] = Result[Y, X][1] = Result[Y, X][2] = Want;
                }
            }
            return(BGR2Img(Result));
        }