Автоматическая обрезка и поворот прямоугольника из изображения TIFF - PullRequest
0 голосов
/ 16 июня 2020

Я хочу сделать автоматические c кадрирования набора данных спутниковых изображений. Каждые данные представляют собой 4-мерное 32-битное изображение (на самом деле полосы находятся в отдельных файлах, но я хочу объединить их в один тензор).

im_array = cv2.imread(path, cv2.IMREAD_UNCHANGED)

plt.pcolormesh(im)
plt.axis('equal')
plt.colorbar()
plt.show()
plt.close()

Участок изображения (одна полоса)

И мне нужно что-то вроде:

Желаемый результат

Я пробовал несколько подходов, используя cv2.minAreaRect() и cv2.findCountours(), но я всегда застреваю на каком-то этапе, когда выскакивает ошибка с форматом изображения или количеством каналов.

Если вы, ребята мог бы сказать мне хороший подход к решению этой проблемы. Я ценю это.

Вот скриншот с данными (все четыре полосы). Я буду использовать их в алгоритме машинного обучения, чтобы сделать регрессор.

Четыре полосы

Вот некоторые ссылки, которые я просмотрел: Как выпрямить повернутую прямоугольную область изображения с помощью OpenCV в Python? OpenCV Python: рисовать minAreaRect (RotatedRect не реализован)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...