コード例 #1
0
ファイル: Program.cs プロジェクト: studosi-fer/MAIS
 private static void PrintOutputToTextFile(CalculationQuantization calculatedQuantization, string outputFileName)
 {
     using (StreamWriter streamWriter = new StreamWriter(outputFileName))
     {
         Print2DArray(calculatedQuantization.ArrayY, streamWriter);
         streamWriter.WriteLine();
         Print2DArray(calculatedQuantization.ArrayCb, streamWriter);
         streamWriter.WriteLine();
         Print2DArray(calculatedQuantization.ArrayCr, streamWriter);
     }
 }
コード例 #2
0
ファイル: Program.cs プロジェクト: studosi-fer/MAIS
        private static CalculationQuantization CalculateQuantization(CalculationDCT calculationDCT)
        {
            var arrayHeight = calculationDCT.ArrayY.GetLength(0);
            var arrayWidth  = calculationDCT.ArrayY.GetLength(1);

            int[,] arrayY  = new int[arrayHeight, arrayWidth];
            int[,] arrayCb = new int[arrayHeight, arrayWidth];
            int[,] arrayCr = new int[arrayHeight, arrayWidth];

            for (var i = 0; i < arrayHeight; i++)
            {
                for (var j = 0; j < arrayWidth; j++)
                {
                    arrayY[i, j]  = (int)Math.Round((calculationDCT.ArrayY[i, j] / K1Table[i, j]));
                    arrayCb[i, j] = (int)Math.Round((calculationDCT.ArrayCb[i, j] / K2Table[i, j]));
                    arrayCr[i, j] = (int)Math.Round((calculationDCT.ArrayCr[i, j] / K2Table[i, j]));
                }
            }
            CalculationQuantization calculatedQuantization = new CalculationQuantization(arrayY, arrayCb, arrayCr);

            return(calculatedQuantization);
        }