00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef MAGICKCORE_COMPARE_H
00019 #define MAGICKCORE_COMPARE_H
00020
00021 #include "magick/image.h"
00022
00023 #if defined(__cplusplus) || defined(c_plusplus)
00024 extern "C" {
00025 #endif
00026
00027 typedef enum
00028 {
00029 UndefinedMetric,
00030 AbsoluteErrorMetric,
00031 MeanAbsoluteErrorMetric,
00032 MeanErrorPerPixelMetric,
00033 MeanSquaredErrorMetric,
00034 PeakAbsoluteErrorMetric,
00035 PeakSignalToNoiseRatioMetric,
00036 RootMeanSquaredErrorMetric,
00037 NormalizedCrossCorrelationErrorMetric,
00038 FuzzErrorMetric,
00039 UndefinedErrorMetric = 0,
00040 PerceptualHashErrorMetric = 0xff
00041 } MetricType;
00042
00043 extern MagickExport double
00044 *GetImageChannelDistortions(Image *,const Image *,const MetricType,
00045 ExceptionInfo *);
00046
00047 extern MagickExport Image
00048 *CompareImageChannels(Image *,const Image *,const ChannelType,
00049 const MetricType,double *,ExceptionInfo *),
00050 *CompareImages(Image *,const Image *,const MetricType,double *,
00051 ExceptionInfo *),
00052 *SimilarityImage(Image *,const Image *,RectangleInfo *,double *,
00053 ExceptionInfo *),
00054 *SimilarityMetricImage(Image *,const Image *,const MetricType,
00055 RectangleInfo *,double *,ExceptionInfo *);
00056
00057 extern MagickExport MagickBooleanType
00058 GetImageChannelDistortion(Image *,const Image *,const ChannelType,
00059 const MetricType,double *,ExceptionInfo *),
00060 GetImageDistortion(Image *,const Image *,const MetricType,double *,
00061 ExceptionInfo *),
00062 IsImagesEqual(Image *,const Image *);
00063
00064 #if defined(__cplusplus) || defined(c_plusplus)
00065 }
00066 #endif
00067
00068 #endif