したがって、私はpythonで要素の多次元配列をソートしようとしています。配列は難しいものですが、残念ながらopencv関数が返すものです。Pythonのx、y座標の多次元次元配列を並べ替える
これらは
[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の配列の最初の要素である(...後方Iが知っている)Y、X座標である(それを呼び出すことができA)、およびDESCENDING内のaのSECOND要素。私は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]]])]
になってしまうだろう、私はそれぞれがアクセスnparrayがある
items[each][first][0][Y_POS(or X_POS)]
を使用して、これらの要素にアクセスする方法を考え出した(そのうちの6があります) であり、Y_POSはy位置を指し、X_POSはx位置を指す。
他の2つの変数firstと0は決して変更されません。
これを効率的に実行するには、どこから始めたらいいのか分からないので、助けてください。座標はY、X表記であることに注意してください。
ありがとうございます。