File numpy120.patch of Package python-pyssim

From fa854ac6b4c2a691a418cfac0eb5a2305731576c Mon Sep 17 00:00:00 2001
From: "adria.labay" <adria.labay@gmail.com>
Date: Wed, 8 Feb 2023 15:40:36 +0100
Subject: [PATCH] support numpy 1.20

---
 ssim/utils.py | 26 ++++++++++++--------------
 1 file changed, 12 insertions(+), 14 deletions(-)

Index: pyssim-0.5/ssim/utils.py
===================================================================
--- pyssim-0.5.orig/ssim/utils.py
+++ pyssim-0.5/ssim/utils.py
@@ -2,31 +2,29 @@
 
 from __future__ import absolute_import
 
-import numpy
-from numpy.ma.core import exp
+import numpy as np
 import scipy.ndimage
 
 from ssim.compat import ImageOps
 
+
 def convolve_gaussian_2d(image, gaussian_kernel_1d):
     """Convolve 2d gaussian."""
-    result = scipy.ndimage.filters.correlate1d(
+    result = scipy.ndimage.correlate1d(
         image, gaussian_kernel_1d, axis=0)
-    result = scipy.ndimage.filters.correlate1d(
+    return scipy.ndimage.correlate1d(
         result, gaussian_kernel_1d, axis=1)
-    return result
+
 
 def get_gaussian_kernel(gaussian_kernel_width=11, gaussian_kernel_sigma=1.5):
     """Generate a gaussian kernel."""
     # 1D Gaussian kernel definition
-    gaussian_kernel_1d = numpy.ndarray((gaussian_kernel_width))
-    norm_mu = int(gaussian_kernel_width / 2)
+    gaussian_kernel_1d = np.arange(0, gaussian_kernel_width, 1.)
+    gaussian_kernel_1d -= gaussian_kernel_width / 2
+    gaussian_kernel_1d = np.exp(-0.5 * gaussian_kernel_1d**2 /
+                                gaussian_kernel_sigma**2)
+    return gaussian_kernel_1d / np.sum(gaussian_kernel_1d)
 
-    # Fill Gaussian kernel
-    for i in range(gaussian_kernel_width):
-        gaussian_kernel_1d[i] = (exp(-(((i - norm_mu) ** 2)) /
-                                     (2 * (gaussian_kernel_sigma ** 2))))
-    return gaussian_kernel_1d / numpy.sum(gaussian_kernel_1d)
 
 def to_grayscale(img):
     """Convert PIL image to numpy grayscale array and numpy alpha array.
@@ -37,11 +35,11 @@ def to_grayscale(img):
     Returns:
       (gray, alpha): both numpy arrays.
     """
-    gray = numpy.asarray(ImageOps.grayscale(img)).astype(numpy.float)
+    gray = np.asarray(ImageOps.grayscale(img)).astype(float)
 
     imbands = img.getbands()
     alpha = None
     if 'A' in imbands:
-        alpha = numpy.asarray(img.split()[-1]).astype(numpy.float)
+        alpha = np.asarray(img.split()[-1]).astype(float)
 
     return gray, alpha
openSUSE Build Service is sponsored by