Я использую функцию scikit-images greycomatrix
, которую я хочу предоставить в качестве входных данных одного из компонентов, полученных в результате вейвлет-преобразования после фильтрации по Хаару.
import pywt
import cv2
from skimage.feature import greycomatrix
original = cv2.imread('img.jpg', cv2.IMREAD_GRAYSCALE)
coeffs2 = pywt.dwt2(original, 'haar')
LL, (LH, HL, HH) = coeffs2
cv2.imshow('image', HH)
gCoMat = greycomatrix(HH, [2], [0], 256, symmetric=True, normed=True)
Если я передаю HH
greycomatrix
, я получаю эту ошибку:
ValueError: плавающие изображения не поддерживаются greycomatrix. Преобразовать изображение в целочисленный тип без знака.
Я попытался преобразовать изображение, используя этот код:
from skimage import util
im = util.img_as_ubyte(HH)
im /= 32
gCoMat = greycomatrix(im, [2], [0], 256, symmetric=True, normed=True)
Но я получил эту ошибку:
повышение ValueError («Изображения типа float должны быть между -1 и 1.»)
ValueError: Изображения типа float должны быть в диапазоне от -1 до 1.