typedef enum
{
- UndefinedKernel, /* also the 'no-op' kernel */
- GaussianKernel, /* Convolution Kernels */
+ UndefinedKernel, /* equivelent to UnityKernel */
+ UnityKernel, /* The no-op or 'original image' kernel */
+ GaussianKernel, /* Convolution Kernels, Gaussian Based */
+ DoGKernel,
+ LoGKernel,
BlurKernel,
CometKernel,
- DOGKernel,
- SobelKernel, /* Named Constant Convolution Kernels */
- LaplacianKernel,
- RectangleKernel, /* Shape Kernels */
+ LaplacianKernel, /* Convolution Kernels, by Name */
+ SobelKernel,
+ FreiChenKernel,
+ RobertsKernel,
+ PrewittKernel,
+ CompassKernel,
+ KirschKernel,
+ DiamondKernel, /* Shape Kernels */
SquareKernel,
- DiamondKernel,
+ RectangleKernel,
DiskKernel,
PlusKernel,
CrossKernel,
+ RingKernel,
PeaksKernel, /* Hit And Miss Kernels */
+ EdgesKernel,
CornersKernel,
+ ThinDiagonalsKernel,
LineEndsKernel,
LineJunctionsKernel,
+ RidgesKernel,
ConvexHullKernel,
SkeletonKernel,
ChebyshevKernel, /* Distance Measuring Kernels */
- ManhattenKernel,
+ ManhattanKernel,
EuclideanKernel,
UserDefinedKernel /* User Specified Kernel Array */
} KernelInfoType;
CloseMorphology, /* Erode then Dilate */
OpenIntensityMorphology, /* Pixel Pick using GreyScale Open */
CloseIntensityMorphology, /* Pixel Pick using GreyScale Close */
+ SmoothMorphology, /* Open then Close */
/* Difference Morphology methods */
EdgeInMorphology, /* Dilate difference from Original */
EdgeOutMorphology, /* Erode difference from Original */
KernelInfoType
type;
- unsigned long
+ size_t
width,
height;
- long
+ ssize_t
x,
y;
minimum,
maximum,
negative_range,
- positive_range;
+ positive_range,
+ angle;
struct KernelInfo
*next;
- unsigned long
+ size_t
signature;
} KernelInfo;
+
extern MagickExport KernelInfo
*AcquireKernelInfo(const char *),
*AcquireKernelBuiltIn(const KernelInfoType,const GeometryInfo *),
*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
- ScaleKernelInfo(KernelInfo *,const double,const GeometryFlags),
+ ScaleGeometryKernelInfo(KernelInfo *,const char *),
ShowKernelInfo(KernelInfo *);
#if defined(__cplusplus) || defined(c_plusplus)