public static MyImage Convert(MyImage source)
 {
     Parallel.For(0, source.Height, i =>
     {
         Parallel.For(0, source.Width, j =>
         {
             var res = 0.21 * source.red[i, j] + 0.72 * source.green[i, j] + 0.07 * source.blue[i, j];
             source.SetValue(i, j, res);
         });
     });
     return(source);
 }
Пример #2
0
        public static MyImage Convert(MyImage source)
        {
            var th     = GetOtsuThreshold(source);
            var width  = source.Width;
            var height = source.Height;

            Parallel.For(0, source.Height, i =>
            {
                Parallel.For(0, source.Width, j =>
                {
                    var value = source.red[i, j] > th ? 255 : 0;
                    source.SetValue(i, j, value);
                });
            });
            return(source);
        }