Как сдвинуть прямоугольный массив с надписью нулями в Matlab или Python? - PullRequest
1 голос
/ 13 мая 2019

У меня есть массив данных топографии (nxm), который является прямоугольным, но вписан в массив нулей (axb).Я хочу удалить нули и сдвинуть массив прямоугольника.

изображение массива , где белый - это данные, которые я хочу, а черный - дополнительные нули.

Как мне сдвинуть данные и избавиться не только отнули, но также и дополнительные индексы (таким образом, это будут все данные без нулей формы nxm)?

Простое удаление нулей не поможет, поскольку они просто становятся дополнительными индексами.Я думал о смещении, перемещая их вверх или вниз на определенную величину, но я понял, что это нужно вращать вокруг центральной точки, что я понятия не имею, как это сделать.

Любая помощь очень ценится (я знаком как с python, так и с matlab).

1 Ответ

0 голосов
/ 13 мая 2019

С Matlab вы можете повернуть изображение на -21 град, а затем обрезать изображение.Обратите внимание, что это не идеальный прямоугольник.

img = imread('NkiuNE9.png');
% rotate by -21deg
img = imrotate(img,-21);
% clip the image
img = img(75:445,123:367);
imshow(img)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...