高宇杰,李武森,戚云菲,陳文建
(1.南京理工大學 電子工程與光電技術(shù)學院,江蘇 南京 210094;2.澳門城市大學 數(shù)據(jù)科學學院,澳門 999078)
在移動攝像及顯示系統(tǒng)中,當攝像頭發(fā)生旋轉(zhuǎn)的時候,顯示屏中的畫面也會隨之產(chǎn)生不可避免的旋轉(zhuǎn),從而對目標的觀察和操作產(chǎn)生較大的影響,此時就需要在顯示前,先對攝像頭傳輸過來的圖像進行消旋處理。為此,本文提出了一種基于坐標旋轉(zhuǎn)數(shù)字算法(Coordinate Rotation Digital Algorithm,CORDIC)的優(yōu)化的圖像消旋算法。
在硬件系統(tǒng)中,傳統(tǒng)的CORDIC 算法只需要通過加法和移位運算就可以實現(xiàn)三角計算。其基本思想是用一系列與運算基數(shù)相關(guān)的角度的不斷迭代來逼近所需旋轉(zhuǎn)的角度,從而避免三角函數(shù)表的查找操作。它的速度更快,占據(jù)的內(nèi)存量更少,每次旋轉(zhuǎn)的角度的精度也有了提升。CORDIC 算法還被用于線性、圓和雙曲函數(shù)的迭代運算,使得硬件系統(tǒng)可以計算更加復(fù)雜的數(shù)學函數(shù),廣泛應(yīng)用于無線電、雷達和濾波器[1-3]等領(lǐng)域。隨著現(xiàn)代科學技術(shù)的發(fā)展、電路集成度的提高,對計算速度、精度的要求也更高,而傳統(tǒng)CORDIC 算法的計算精度以及速度已經(jīng)滿足不了設(shè)計需求。為此,國內(nèi)外的學者也在通過減少迭代次數(shù)、增加計算精度、擴展使用范圍、免去迭代因子等方法來對CORDIC 算法進行優(yōu)化。
為了減少迭代次數(shù),文獻[4]提出了一種貪婪算法,通過挑選每一次的最優(yōu)解來跳過不必要的旋轉(zhuǎn),以減少迭代次數(shù),但這同時也增加了搜索模塊,使得每一次迭代的計算時間大量增加,并且使得本來固定的縮放因子變?yōu)橐粋€不確定的數(shù)。文獻[5]以及文獻[6]結(jié)合了貪婪算法以及查找表法,雖然相對于貪婪算法提升了精度,但查找表的地址依然需要對比搜索,而且縮放因子問題依然存在,并且又增加了內(nèi)存的使用。文獻[7]去掉了縮放因子的影響,也減少了迭代次數(shù),但