コード例 #1
0
        public override Tile DoAction(Tile input)
        {
            byte[,] x, y, z;
            this.Input = new[] { input };

            Triplet <short[, ]> triplet = input.GetMatrices <short>();

            RFXDecoderWrapper.YUVToRGB(triplet.X, triplet.Y, triplet.Z, out x, out y, out z);

            var  resultTriplet = new Triplet <byte[, ]>(x, y, z);
            Tile output        = Tile.FromMatrices <byte>(resultTriplet);

            this.Result = new[] { output };
            return(output);
        }
コード例 #2
0
        public override Tile DoAction(Tile input)
        {
            short[,] x, y, z;
            this.Input = new[] { input };

            Triplet <short[, ]> triplet = input.GetMatrices <short>();

            RFXDecoderWrapper.Dequantization(triplet.X, QuantArray.quants[0], out x);
            RFXDecoderWrapper.Dequantization(triplet.Y, QuantArray.quants[1], out y);
            RFXDecoderWrapper.Dequantization(triplet.Z, QuantArray.quants[2], out z);

            var  resultTriplet = new Triplet <short[, ]>(x, y, z);
            Tile output        = Tile.FromMatrices <short>(resultTriplet);

            this.Result = new[] { output };
            return(output);
        }
コード例 #3
0
        public override Tile DoAction(Tile input)
        {
            short[] x, y, z;
            this.Input = new[] { input };

            Triplet <byte[]> triplet = input.GetArrays <byte>();

            //// better use foreach, instead of repeating the code..
            RFXDecoderWrapper.RLGRDecode(triplet.X, this.Mode, out x);
            RFXDecoderWrapper.RLGRDecode(triplet.Y, this.Mode, out y);
            RFXDecoderWrapper.RLGRDecode(triplet.Z, this.Mode, out z);

            var  resultTriplet = new Triplet <short[]>(x, y, z);
            Tile output        = Tile.FromArrays <short>(resultTriplet);

            this.Result = new[] { output };
            return(output);
        }
コード例 #4
0
        public override Tile DoAction(Tile input)
        {
            short[,] x, y, z;
            this.Input = new[] { input };

            Triplet <short[]> triplet = input.GetArrays <short>();

            //// better use foreach, instead of repeating the code..
            RFXDecoderWrapper.SubBandReconstruction(triplet.X, out x);
            RFXDecoderWrapper.SubBandReconstruction(triplet.Y, out y);
            RFXDecoderWrapper.SubBandReconstruction(triplet.Z, out z);

            var  resultTriplet = new Triplet <short[, ]>(x, y, z);
            Tile output        = Tile.FromMatrices <short>(resultTriplet);

            this.Result = new[] { output };
            return(output);
        }