- Update to 0.5 * No release notes found OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-pyssim?expand=0&rev=9
70 lines
2.4 KiB
Diff
70 lines
2.4 KiB
Diff
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
|