Пример #1
0
        /// <summary>
        /// Apply filter.
        /// </summary>
        /// <param name="bmData">Bitmap data</param>
        public void Apply(BitmapData bmData)
        {
            Bitmap Max = (Bitmap)BitmapFormat.Bitmap(bmData).Clone();
            Bitmap Min = (Bitmap)Max.Clone();

            di.Apply(Max); er.Apply(Min);

            BitmapData bmMax = BitmapFormat.Lock32bpp(Max);
            BitmapData bmMin = BitmapFormat.Lock32bpp(Min);

            if (smoothing)
            {
                gb.Apply(bmMax);
            }
            gb.Apply(bmMin);

            Apply(bmData, bmMax, bmMin);

            BitmapFormat.Unlock(Max, bmMax);
            BitmapFormat.Unlock(Min, bmMin);

            Max.Dispose(); Min.Dispose();
            return;
        }
Пример #2
0
 /// <summary>
 /// Apply filter.
 /// </summary>
 /// <param name="bmData">Bitmap data</param>
 /// <param name="bmSrc">Bitmap data</param>
 public void Apply(BitmapData bmData, BitmapData bmSrc)
 {
     dilatation.Apply(bmSrc, bmData);
     erosion.Apply(bmData, bmSrc);
 }