Как сгладить 2d матрицу (nxn) в 1d массив в порядке кривой Гильберта? - PullRequest
1 голос
/ 02 апреля 2019

Я хочу сгладить 2d (nxn) матрицу в python в 1d массив, но вместо основного порядка строк я хочу, чтобы он следовал порядку кривой Гильберта?

Например, если мой вводданные 2x2 ->

    data[[a b] [c d]] 

Я хочу, чтобы вывод был 1x4 ->

    [c, a, b, d]

, но я хочу сделать это с изображением, скажем, размером 256 x 256

Другой пример - данные

    [[12 15  5  0]
     [ 3 11  3  7]
     [ 9  3  5  2]
     [ 4  7  6  8]]

Я хочу, чтобы вывод был

    [ 4  7  3  9  3 12 15 11  3  5  0  7  2  5  6  8]

Каков наилучший способ сделать это в Python?

...