2

2D 画像を平坦化するために、Python で (Matlab のものから) Hilbert-Peano 空間充填曲線の実装を作成しました。

def hilbert_peano(n):
    if n<=0:
        x=0
        y=0
    else:
        [x0, y0] = hilbert_peano(n-1)
        x = (1/2) * np.array([-0.5+y0, -0.5+x0, 0.5+x0, 0.5-y0])
        y = (1/2) * np.array([-0.5+x0, 0.5+y0, 0.5+y0, -0.5-y0])

    return x,y

ただし、従来の Hilbert-Peano 曲線は、形状が 2 のべき乗である多次元配列に対してのみ機能します (例: 2D 配列の場合は 256*256 または 512*512 (画像))。

これを任意のサイズの配列に拡張する方法を知っている人はいますか?

4

3 に答える 3

1

Lutz Tautenhahn によるこのページを見つけました。

「任意のサイズの空間充填曲線を描く」 ( http://lutanho.net/pic2html/draw_sfc.html )

アルゴリズムには名前がなく、彼は他の誰にも言及しておらず、スケッチは彼が自分で思いついたことを示唆しています.

これはz次数曲線で可能で、どのように可能ですか?

[1]任意の大きさの空間充填曲線を描く

于 2016-07-19T16:08:39.467 に答える