File : morphological.ads




-- Package d'opérators morphologiques

-- Créateur : Freydiere Patrice

-- License GPL



with Open_Image.Greyscale_Image; use Open_Image.Greyscale_Image;


Package Morphological is

   function Dilate(Imgin : in Unbounded_image ;Pattern : in Unbounded_image )
                  return Unbounded_image;
   function Erode(Imgin : in Unbounded_image ;Pattern : in Unbounded_image)
                 return Unbounded_image;
   function TopHat(Imgin: in Unbounded_image ; Pattern : in Unbounded_image )
                  return Unbounded_image;
   function Closing(Imgin: in Unbounded_image ; Pattern : in Unbounded_image )
                   return Unbounded_image;
   function Opening(Imgin: in Unbounded_image ; Pattern : in Unbounded_image )
                   return Unbounded_image;

   function "-"(Left,Right:in Unbounded_Image)
               return Unbounded_Image;
   function "+"(Left,Right:in Unbounded_Image)
               return Unbounded_Image;

   function Inverse(Imgin : in Unbounded_Image)
                   return Unbounded_Image;


   function Erode(Imgin : in Unbounded_image ;Size : in Integer )
                       return Unbounded_Image;
   function TopHat(Imgin: in Unbounded_image ; Size : in Integer )
                        return Unbounded_Image;

   function Dilate(Imgin : in Unbounded_Image ; Size : in Integer )
                        return Unbounded_Image;

   function Closing(Imgin : in Unbounded_Image; Size : in Integer)
                   return Unbounded_Image;

   function Opening(Imgin : in Unbounded_Image; Size : in Integer)
                   return Unbounded_Image;

    Invalid_Size: exception ;

end Morphological;