2009-03-05 85 views
2

我想通過使用傅立葉描述符來近似形狀邊界。我知道這是可以做到的,因爲我已經在課堂上了解了它,並在幾個來源中閱讀了它。使用傅立葉描述符近似形狀邊界

要獲得(x,y)座標邊界的傅里葉描述符,我做如下操作: 1)將(x,y)座標轉換爲x + iy形式的複數2)號寫入1D傅立葉的組變換 3)輸出是傅立葉描述符

爲了接近邊界,我簡單地刪除(設置爲零)的高頻率,然後應用逆傅里葉變換,然後將其轉換的複數回到(x,y)座標,然後從這組新的座標重建圖像。我的項目的目標是根據我設置爲零的多少條款來找出我可以如何近似邊界。

我的問題是,無論何時將任何頻率設置爲0,我的輸出圖像都非常小,並以非常奇怪的模式出現。

我已經在下面包含了一個例子。輸入圖像是一個正常的正方形。給出的第一個輸出圖像是正常情況下使用所有傅立葉描述符重建圖像。請注意,整個邊界不存在,因爲邊界像素的數量被採樣爲256,並且當我輸出時,我沒有打擾地連接這些點。另請注意,輸出被翻譯爲左下角,這是故意的。第二個輸出圖像是當我只使用前128個頻率。

Input Image http://img19.imageshack.us/my.php?image=square0.bmp

Output Image 1: All frequencies http://img27.imageshack.us/my.php?image=square0normal.bmp

Output Image 2: First half of frequencies http://img23.imageshack.us/my.php?image=square0out.bmp

沒有人有任何想法,爲什麼這可能發生?

編輯:第一次來這裏把圖片,不知道爲什麼他們沒有顯示出來..這裏是鏈接:
Input image
Output1
Output2

而且,這裏是一個link to a document that talks about this a bit,它從第5頁的末尾開始。

+0

我會嘗試在進行傅里葉變換之前將圖像座標歸一化爲[0,1]間隔,然後在輸出處進行非規格化處理。 – Ismael 2009-03-06 01:16:20

+0

看來你失去了精度,但它似乎與傅里葉變換沒有關係,因爲第一個輸出看起來是正確的。你嘗試了另一張照片嗎?我會建議一些不對稱的東西。 – Ismael 2009-03-06 01:18:47

回答

1

您得到的結果是如果您拋出低頻率而不是高頻率的結果。你確定哪個頻率是哪個?