基于嵌入式ARMS3C2440的裂紋實(shí)時(shí)測量系統的設計
本文引用地址:http://dyxdggzs.com/article/272367.htm

ARM運行測量結果截圖
2 基于Linux的QT界面設計算法
前文討論的是主要的算法部分,完整的裂紋測量系統還包括用戶(hù)接口部分,即圖形界面接口。在A(yíng)RM上采用QT進(jìn)行界面設計已經(jīng)比較成熟,它具有以下主要特點(diǎn):
(1)入門(mén)容易、學(xué)習成本低。了解基本概念后就可以邊查文檔邊寫(xiě)程序。
(2)跨平臺效果好。本來(lái)是Linux下的工具庫,Linux是一類(lèi)Unix計算機操作系統的統稱(chēng)。Linux操作系統的內核的名字也是“Linux”。Linux操作系統也是自由軟件和開(kāi)放源代碼發(fā)展中最著(zhù)名的例子。嚴格來(lái)講,Linux這個(gè)詞本身只表示Linux內核,但在實(shí)際上人們已經(jīng)習慣了用Linux來(lái)形容整個(gè)基于Linux內核,并且使用GNU 工程各種工具和數據庫的操作系統。Linux得名于計算機業(yè)余愛(ài)好者Linus Torvalds。
3 軟件移植與程序優(yōu)化
由于最終的程序是運行在A(yíng)RM系統上,而由于A(yíng)RM處理圖像時(shí)的速度慢與裂縫測量?jì)x器的實(shí)時(shí)性要求,必須對程序進(jìn)行優(yōu)化,并將算法移植到ARM系統上,使之可以正確運行。
程序的優(yōu)化是一個(gè)問(wèn)題,雖然現在的ARM速度已經(jīng)提高了很多,但是在處理圖像時(shí)還是很吃力,加上算法中需要對原圖像兩次獨立處理,相當于加倍了ARM的負擔。通過(guò)對大量裂縫圖像的分析,針對前文中提出的裂縫特點(diǎn)以及結合ARM本身的運算速度條件,提出剔除處理全部圖像的算法。采用了只處理給定行位置上下10行的區域。通過(guò)只處理這20行圖像,極大地提高了程序的運行速度。以上方法并行,還采用多線(xiàn)程編程方法,通過(guò)將圖像采樣與圖像的處理分為兩個(gè)進(jìn)程完成,有效地提高了程序的運行速度。
4 實(shí)驗結果分析
該程序分別在PC機和ARM開(kāi)發(fā)板上運行,效果如圖7,圖8所示。
通過(guò)大量的實(shí)驗發(fā)現該算法能較好地檢測出裂縫的分布和寬度。在算法中采用了結合OTSU圖像分割與Sobel邊緣檢測的混合算法進(jìn)行裂紋檢測與寬度測量。這種算法能分別有效利用邊緣檢測與圖像分割兩種方法各自的優(yōu)點(diǎn)。
5 結 語(yǔ)
針對墻體裂紋測量,設計出了一套適用于裂縫寬度檢測的算法。該算法能較好地檢測出裂縫的分布和寬度。采用邊緣檢測與圖像分割混合的方法并通過(guò)對大量圖像進(jìn)行分析,對算法添加了一系列符合圖像裂縫特征的約束條件,極大地提高了算法的準確性與健壯性。分別將程序運行于PC機系統與ARM系統,并針對ARM系統的特點(diǎn)對算法進(jìn)行了一系列優(yōu)化,引入了并行處理技術(shù),在提高ARM運行速度的同時(shí),使得ARM系統檢測出的結果達到與PC機系統幾乎同等的效果。
網(wǎng)線(xiàn)測試儀相關(guān)文章:網(wǎng)線(xiàn)測試儀原理
評論