]> granicus.if.org Git - imagemagick/blobdiff - magick/morphology.h
(no commit message)
[imagemagick] / magick / morphology.h
index af6b924375c7e5df5cf44a64116f04abcfad79b6..f215ccad025bfb944ebaf92ac2102dfe519e2cd4 100644 (file)
@@ -1,5 +1,5 @@
 /*
-  Copyright 1999-2010 ImageMagick Studio LLC, a non-profit organization
+  Copyright 1999-2011 ImageMagick Studio LLC, a non-profit organization
   dedicated to making software imaging solutions freely available.
   
   You may not use this file except in compliance with the License.
@@ -26,13 +26,12 @@ extern "C" {
 
 typedef enum
 {
-  UndefinedKernel,    /* equivelent to UnityKernel */
+  UndefinedKernel,    /* equivalent to UnityKernel */
   UnityKernel,        /* The no-op or 'original image' kernel */
   GaussianKernel,     /* Convolution Kernels, Gaussian Based */
-  DOGKernel,
-  LOGKernel,
+  DoGKernel,
+  LoGKernel,
   BlurKernel,
-  DOBKernel,
   CometKernel,
   LaplacianKernel,    /* Convolution Kernels, by Name */
   SobelKernel,
@@ -44,6 +43,7 @@ typedef enum
   DiamondKernel,      /* Shape Kernels */
   SquareKernel,
   RectangleKernel,
+  OctagonKernel,
   DiskKernel,
   PlusKernel,
   CrossKernel,
@@ -51,13 +51,16 @@ typedef enum
   PeaksKernel,         /* Hit And Miss Kernels */
   EdgesKernel,
   CornersKernel,
+  DiagonalsKernel,
   LineEndsKernel,
   LineJunctionsKernel,
-  ThinningKernel,
+  RidgesKernel,
   ConvexHullKernel,
+  ThinSEKernel,
   SkeletonKernel,
   ChebyshevKernel,    /* Distance Measuring Kernels */
-  ManhattenKernel,
+  ManhattanKernel,
+  OctagonalKernel,
   EuclideanKernel,
   UserDefinedKernel   /* User Specified Kernel Array */
 } KernelInfoType;
@@ -89,7 +92,9 @@ typedef enum
 /* Recursive Morphology methods */
   HitAndMissMorphology,        /* Foreground/Background pattern matching */
   ThinningMorphology,          /* Remove matching pixels from image */
-  ThickenMorphology            /* Add matching pixels from image */
+  ThickenMorphology,           /* Add matching pixels from image */
+/* Experimental Morphology methods */
+  VoronoiMorphology
 } MorphologyMethod;
 
 typedef struct KernelInfo
@@ -97,11 +102,11 @@ typedef struct KernelInfo
   KernelInfoType
     type;
 
-  unsigned long
+  size_t
     width,
     height;
 
-  long
+  ssize_t
     x,
     y;
 
@@ -116,7 +121,7 @@ typedef struct KernelInfo
   struct KernelInfo
     *next;
 
-  unsigned long
+  size_t
     signature;
 } KernelInfo;
 
@@ -128,10 +133,10 @@ extern MagickExport KernelInfo
   *DestroyKernelInfo(KernelInfo *);
 
 extern MagickExport Image
-  *MorphologyImage(const Image *,const MorphologyMethod,const long,
+  *MorphologyImage(const Image *,const MorphologyMethod,const ssize_t,
     const KernelInfo *,ExceptionInfo *),
   *MorphologyImageChannel(const Image *,const ChannelType,
-    const MorphologyMethod,const long,const KernelInfo *,ExceptionInfo *);
+    const MorphologyMethod,const ssize_t,const KernelInfo *,ExceptionInfo *);
 
 extern MagickExport void
   ScaleGeometryKernelInfo(KernelInfo *,const char *),