コード例 #1
0
        private static void ProcessMiddleRows(RawBGGRMap <ushort> file, ColorMapUshort res)
        {
            // Middle Rows
            Parallel.For(0, (res.Height - 2) / 2, yy =>
            {
                var y = yy * 2 + 1;
                ProcessMiddleOddRows(file.GetRow(y), res.Width, res.GetRow(y));

                y++;

                ProcessMiddleEvenRows(file.GetRow(y), res.Width, res.GetRow(y));
            });
        }
コード例 #2
0
ファイル: FiltersPipeline.cs プロジェクト: Rambalac/photodev
 private static VectorMap ApplyCurve(ColorMapUshort map, Vector3[] curve)
 {
     var result = new VectorMap(map.Width, map.Height);
     Parallel.For(0, result.Height, y =>
     {
         var input = map.GetRow(y);
         var output = result.GetRow(y);
         for (var x = 0; x < result.Width; x++)
         {
             output.SetAndMoveNext(curve[input.R].X, curve[input.G].Y, curve[input.B].Z);
             input.MoveNext();
         }
     });
     return result;
 }
コード例 #3
0
ファイル: FiltersPipeline.cs プロジェクト: Rambalac/photodev
 private static ColorMapUshort ApplyCurve(ColorMapUshort map, ushort[][] curve)
 {
     var result = new ColorMapUshort(map.Width, map.Height, map.MaxBits);
     Parallel.For(0, result.Height, y =>
     {
         var input = map.GetRow(y);
         var output = result.GetRow(y);
         for (var x = 0; x < result.Width; x++)
         {
             output.SetAndMoveNext(curve[0][input.R], curve[1][input.G], curve[2][input.B]);
             input.MoveNext();
         }
     });
     return result;
 }
コード例 #4
0
ファイル: FiltersPipeline.cs プロジェクト: Rambalac/photodev
        private static VectorMap ApplyCurve(ColorMapUshort map, Vector3[] curve)
        {
            var result = new VectorMap(map.Width, map.Height);

            Parallel.For(0, result.Height, y =>
            {
                var input  = map.GetRow(y);
                var output = result.GetRow(y);
                for (var x = 0; x < result.Width; x++)
                {
                    output.SetAndMoveNext(curve[input.R].X, curve[input.G].Y, curve[input.B].Z);
                    input.MoveNext();
                }
            });
            return(result);
        }
コード例 #5
0
ファイル: FiltersPipeline.cs プロジェクト: Rambalac/photodev
        private static ColorMapUshort ApplyCurve(ColorMapUshort map, ushort[][] curve)
        {
            var result = new ColorMapUshort(map.Width, map.Height, map.MaxBits);

            Parallel.For(0, result.Height, y =>
            {
                var input  = map.GetRow(y);
                var output = result.GetRow(y);
                for (var x = 0; x < result.Width; x++)
                {
                    output.SetAndMoveNext(curve[0][input.R], curve[1][input.G], curve[2][input.B]);
                    input.MoveNext();
                }
            });
            return(result);
        }