Пытаюсь пробежаться по всему изображению и выбирать квадратик, размером n*n, который с каждым разом увеличивается. Но даже самый маленький квадратик мне нужно перемасштабировать в 64*64 пикселей размером. Когда цикл доходи до строчки ресайза, то она просто игнорируется(по крайней мере никакого результата её работы я не вижу).
Узнал я это, сохранив изображение (посмотрел его размер). По идее он должен быть 64*64, но он отличается от этого и даже не в пропорциях квадрата. С чем это связано и как это исправить, есть ли аналогичный параметр вроде detectMultiScale, но не для каскада Хаара?
P.S. под словом "квадратик" я имею ввиду получение фрагмента изображения в пропорциях квадрата, размер которого увеличивается
Вот код моей программы:
import cv2 # подключаем OpenCV
import numpy as np # подключаем numpy
img = cv2.imread("test.jpg") # загрузка изображения
img = np.array(img) # перевод его в массив
for i in range(4, 100): # изменяет размер квадрата с каждым разом
height = np.size(img, 0) # высота изображения
width = np.size(img, 1) # ширина изображения
while heigh % i != 0: # делаем так, чтобы квадратик мог пробежаться по высоте
height = height + 1
while width % i != 0: # делаем так, чтобы квадратик мог пробежаться по ширине
width = width + 1
cv2.resize(img, (width, height)) # переделываем в новое изображение, удобное квадрату
for r in range(0, int(height / i)): # пробег по ширине
for q in range(0, int(width / i)): # по этой ширине создаем квадратик
roi = img[r*i:r*i+i, q*i:q*i+i] # создание квадратика
cv2.imshow("ROI", roi) # для проверки
cv2.resize(roi, (64, 64)) # то, чо не работает
cv2.imwrite("DELETE.jpg", roi) #для проверки