У меня есть более 100 изображений, каждое из которых находится под разным углом. Я написал базовый код Python для поворота каждого изображения по одному с любого угла до нуля градусов (я имею в виду, чтобы сделать их плоскими). Код Python, который я приложил, представляет собой простой код, и, к сожалению, он не находит угол автоматически и не делает его точным нулем. В любое время для любого изображения я должен найти угол и запустить код много раз, чтобы сделать его равным нулю (иногда я не могу сделать его точно плоским или то, что мы установили в нулевой градус). Согласно изображениям, которые я прикрепил, image1 является одним из образцов изображения в качестве входных данных, а image_2 — это повернутое изображение, которое я хочу получить в конце в качестве вывода. Я хотел бы попросить любого, кто может помочь мне изменить текущий код или предоставить мне новый код Python (который я предпочитаю новому коду), чтобы я мог поворачивать свои изображения под любым углом до нуля градусов. Пожалуйста, не стесняйтесь спрашивать меня о дополнительных объяснениях, если хотите.
мой код opencv-python:
import cv2
import numpy as np
img = cv2.imread('image1.tif')
num_rows, num_cols = img.shape[:2]
rotation_matrix = cv2.getRotationMatrix2D((num_cols/2, num_rows/2),69.4, 1)
img_rotation = cv2.warpAffine(img, rotation_matrix, (num_cols, num_rows))
cv2.imshow('Rotation', img_rotation)
cv2.imwrite('image_2.tif',img_rotation)
cv2.waitKey()
Примечание: входные и выходные изображения удалены.