From e80f15f81c00c84f6bd9537b1a799ccdecc4b561 Mon Sep 17 00:00:00 2001 From: cristy Date: Thu, 30 Jan 2014 19:13:38 +0000 Subject: [PATCH] --- MagickCore/compare.c | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/MagickCore/compare.c b/MagickCore/compare.c index cce674949..785d5eba8 100644 --- a/MagickCore/compare.c +++ b/MagickCore/compare.c @@ -1103,11 +1103,10 @@ static MagickBooleanType GetPeakSignalToNoiseRatio(const Image *image, return(status); } -static Image *PerceptualHashImage(const Image *image, +static Image *PerceptualImageHash(const Image *image, const ColorspaceType colorspace,ExceptionInfo *exception) { Image - *clone_image, *phash_image; MagickBooleanType @@ -1116,19 +1115,13 @@ static Image *PerceptualHashImage(const Image *image, /* Transform colorspace then blur perceptual hash image. */ - clone_image=CloneImage(image,0,0,MagickTrue,exception); - if (clone_image == (Image *) NULL) + phash_image=BlurImage(image,0.0,1.0,exception); + if (phash_image == (Image *) NULL) return((Image *) NULL); - status=TransformImageColorspace(clone_image,colorspace,exception); + status=TransformImageColorspace(phash_image,colorspace,exception); + phash_image->depth=8; if (status == MagickFalse) - { - clone_image=DestroyImage(clone_image); - return((Image *) NULL); - } - phash_image=BlurImage(clone_image,0.0,1.0,exception); - clone_image=DestroyImage(clone_image); - if (phash_image != (Image *) NULL) - phash_image->depth=8; + phash_image=DestroyImage(phash_image); return(phash_image); } @@ -1148,14 +1141,14 @@ static MagickBooleanType GetPerceptualHashDistortion(const Image *image, /* Compute perceptual hash in the native image colorspace. */ - phash_image=PerceptualHashImage(image,image->colorspace,exception); + phash_image=PerceptualImageHash(image,image->colorspace,exception); if (phash_image == (Image *) NULL) return(MagickFalse); image_moments=GetImageMoments(phash_image,exception); phash_image=DestroyImage(phash_image); if (image_moments == (ChannelMoments *) NULL) return(MagickFalse); - phash_image=PerceptualHashImage(reconstruct_image, + phash_image=PerceptualImageHash(reconstruct_image, reconstruct_image->colorspace,exception); if (phash_image == (Image *) NULL) { @@ -1200,14 +1193,14 @@ static MagickBooleanType GetPerceptualHashDistortion(const Image *image, /* Compute perceptual hash in the HCLP colorspace. */ - phash_image=PerceptualHashImage(image,HCLpColorspace,exception); + phash_image=PerceptualImageHash(image,HCLpColorspace,exception); if (phash_image == (Image *) NULL) return(MagickFalse); image_moments=GetImageMoments(phash_image,exception); phash_image=DestroyImage(phash_image); if (image_moments == (ChannelMoments *) NULL) return(MagickFalse); - phash_image=PerceptualHashImage(reconstruct_image,HCLpColorspace,exception); + phash_image=PerceptualImageHash(reconstruct_image,HCLpColorspace,exception); if (phash_image == (Image *) NULL) { image_moments=(ChannelMoments *) RelinquishMagickMemory(image_moments); -- 2.50.1