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)); }); }
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; }
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; }
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); }
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); }