ARM NEON技術(shù)在車位識別算法中的應(yīng)用
由優(yōu)化后程序代碼可見,循環(huán)跳轉(zhuǎn)次數(shù)為原來的1 4 ,但是由于使用了NEON 相關(guān)的vld1q_u32 函數(shù),一次可在NEON的128位寄存器中裝入4個(gè)32位數(shù)值,調(diào)用vaddq_u32可對4個(gè)數(shù)據(jù)時(shí)同時(shí)進(jìn)行加法運(yùn)算,在一個(gè)指令周期就完成了4次加法運(yùn)算,理論上加法運(yùn)算次數(shù)為原來的1 4 ,大大提高了運(yùn)算性能。
對于第二個(gè)for循環(huán)也可以采用類似方法優(yōu)化,只是調(diào)用的函數(shù)略有不同,具體考參考GCC的技術(shù)文檔,有詳細(xì)的使用說明。
其他函數(shù)如預(yù)處理、角點(diǎn)、相關(guān)度函數(shù)的優(yōu)化和此方法類似,重點(diǎn)針對循環(huán)和可以并行運(yùn)算的代碼進(jìn)行優(yōu)化。
表3 中給出了Cortex-A8 平臺使用NEON 技術(shù)優(yōu)化后與ARM11測試時(shí)間的對比。
4 結(jié)語
通過使用ARM NEON 技術(shù),對于圖像處理這類矩陣運(yùn)算進(jìn)行并行優(yōu)化,可大大提高處理速度,進(jìn)行優(yōu)化后,速度較優(yōu)化前提升了達(dá)2倍之多,較ARM11提升了8 倍的速度。ARM COTEX-A 系列所使用的NEON 技術(shù),不僅使車位圖像檢測算法的速度有很大提升,在信號處理等多媒體處理算法中,也有廣闊的應(yīng)用前景。
評論