While trying to improve PerceptualHash performance, I came across a couple errors. With very large images, PerceptualHash takes forever to compute. I'm submitting the errors as separate issues with the same code sample.
Resize(Percent), as seen below, doesn't change the size of the image.
Doesn't resize no matter what image I use, but here's a link to one I've tested this on - http://www.nasa.gov/images/content/378535main_lands.jpg
```
public static ImageMagick.PerceptualHash PHash(this FileInfo file, int imageSizeConstraint = 5000)
{
if (imageSizeConstraint < 1000)
imageSizeConstraint = 1000;
using (MagickImage image = new MagickImage(file.FullName))
{
if (image.Width > imageSizeConstraint || image.Height > imageSizeConstraint)
{
double percent;
if (image.Width > image.Height)
percent = imageSizeConstraint / (double)image.Width;
else
percent = imageSizeConstraint / (double)image.Height;
Percentage p = new Percentage(percent);
image.Resize(p);
}
return image.PerceptualHash();
}
}
```
Comments: Using the Resize below, it resizes properly. ``` image.Resize((int)(image.Width * percent), (int)(image.Height * percent)); ```
Resize(Percent), as seen below, doesn't change the size of the image.
Doesn't resize no matter what image I use, but here's a link to one I've tested this on - http://www.nasa.gov/images/content/378535main_lands.jpg
```
public static ImageMagick.PerceptualHash PHash(this FileInfo file, int imageSizeConstraint = 5000)
{
if (imageSizeConstraint < 1000)
imageSizeConstraint = 1000;
using (MagickImage image = new MagickImage(file.FullName))
{
if (image.Width > imageSizeConstraint || image.Height > imageSizeConstraint)
{
double percent;
if (image.Width > image.Height)
percent = imageSizeConstraint / (double)image.Width;
else
percent = imageSizeConstraint / (double)image.Height;
Percentage p = new Percentage(percent);
image.Resize(p);
}
return image.PerceptualHash();
}
}
```
Comments: Using the Resize below, it resizes properly. ``` image.Resize((int)(image.Width * percent), (int)(image.Height * percent)); ```