Я получаю сообщение об ошибке:
"Ошибка типа: строковые индексы должны быть целыми числами"
при попытке обрезать изображение
Я пытаюсь написать функцию, которая обрезает прямоугольное изображение, чтобы сделать квадратное изображение по центру.
def squared_and_resized(img,resized_dim):
image = cv2.imread(img)
img_height,img_width = image.shape[:2]
if (img_width > img_height):
start_row = 0
end_row = img_height
start_col = math.floor((img_width - img_height) /2)
end_col = math.floor((img_width + img_height) /2)
else:
start_col = 0
end_col = img_width
start_row = math.floor((img_height-img_width)/2)
end_row = start_row + img_width
squared_img = img[start_row:end_row , start_col:end_col]
resized_img = cv2.resize(squared_img,(resized_dim, resized_dim))
return resized_img