Так что я пытаюсь сортировать многомерный массив элементов в python. Массив - это беспорядок, что и делает его настолько сложным, но, к сожалению, это то, что возвращает функция opencv.Сортировка многомерного размерного массива координат x, y в python
Это у, координаты х (назад я знаю ....)
[array([[[ 13, 178]],[[ 50, 179]],[[ 49, 258]],[[ 12, 257]]]),
array([[[ 58, 93]],[[105, 94]],[[104, 171]],[[ 57, 170]]]),
array([[[ 13, 93]],[[ 50, 94]],[[ 49, 171]],[[ 12, 170]]]),
array([[[ 58, 9]],[[105, 10]],[[104, 86]],[[ 57, 85]]]),
array([[[13, 9]], [[50, 10]],[[49, 86]],[[12, 85]]]),
array([[[ 58, 178]],[[105, 179]],[[104, 257]],[[ 57, 257]]])]
Теперь путь мне нужно это сортируется является первым элементом каждого Numpy массива (позволяет называть его), и затем ВТОРОЙ элемент a в DESCENDING. И мне нужно, чтобы все связи были разбиты на ПЕРВЫЙ элемент a в порядке ASCENDING.
Так что это будет в конечном итоге
[array([[[ 13, 178]],[[ 50, 179]],[[ 49, 258]],[[ 12, 257]]]),
array([[[ 58, 178]],[[105, 179]],[[104, 257]],[[ 57, 257]]]),
array([[[ 13, 93]],[[ 50, 94]],[[ 49, 171]],[[ 12, 170]]]),
array([[[ 58, 93]],[[105, 94]],[[104, 171]],[[ 57, 170]]]),
array([[[13, 9]], [[50, 10]],[[49, 86]],[[12, 85]]]),
array([[[ 58, 9]],[[105, 10]],[[104, 86]],[[ 57, 85]]])]
Теперь я понял, как получить доступ к этим элементам с помощью
items[each][first][0][Y_POS(or X_POS)]
, где каждый является nparray доступа (есть 6 из них) и Y_POS относится к позиции y, а X_POS относится к позиции x.
Остальные две переменные сначала и 0 никогда не будут меняться.
Я действительно не знаю, с чего начать, чтобы он работал эффективно, поэтому любая помощь приветствуется. Имейте в виду, что координаты обозначаются Y, X.
Заранее благодарен всем.