コード例 #1
0
        private void ScaleSpectrum(SpectralImage spetralImage, Func <float, float, float> scalingFunction)
        {
            float max = spetralImage.Image.Max(f => Math.Abs(f));

            for (int i = 0; i < spetralImage.Image.Length; ++i)
            {
                spetralImage.Image[i] = scalingFunction(spetralImage.Image[i], max);
            }
        }
コード例 #2
0
        private float[][] Transform2D(SpectralImage spectralImage)
        {
            float[][] transformed = new float[spectralImage.Rows][];

            for (int i = 0; i < spectralImage.Rows; ++i)
            {
                transformed[i] = new float[spectralImage.Cols];
                Buffer.BlockCopy(spectralImage.Image, i * spectralImage.Cols * sizeof(float), transformed[i], 0, spectralImage.Cols * sizeof(float));
            }

            return(transformed);
        }