Пример #1
0
 public static void binary_dilate_circle(Bytearray image, int r)
 {
     if (r == 0)
         return;
     Bytearray outa = new Bytearray();
     outa.Copy(image);
     for (int i = -r; i <= r; i++)
         for (int j = -r; j <= r; j++)
         {
             if (i * i + j * j <= r * r)
                 binary_or(outa, image, i, j);
         }
     image.Move(outa);
 }
Пример #2
0
        public static void binary_erode_circle(Bytearray image, int r)
        {
            if (r == 0)
            {
                return;
            }
            Bytearray outa = new Bytearray();

            outa.Copy(image);
            for (int i = -r; i <= r; i++)
            {
                for (int j = -r; j <= r; j++)
                {
                    if (i * i + j * j <= r * r)
                    {
                        binary_and(outa, image, i, j);
                    }
                }
            }
            image.Move(outa);
        }