?

基于Hough 變換及卷積神經網絡的工程圖圖線識別技術及應用研究

2022-06-07 06:30石林坤田懷文蒲虹林
科技創新與應用 2022年16期
關鍵詞:圖線工程圖線型

石林坤,田懷文,蒲虹林

(西南交通大學 可視化研究中心,四川 成都 610031)

工程類圖紙識別一直是工程領域研究的熱點,其廣泛應用于電氣工程、機械工程等不同行業。林銘德等人[1]利用對圖紙的識別,自動獲取圖紙中電氣構件數據。唐虹等人[2]通過對汽車線束圖紙的識別,達到了線束分類識別的目的。YANG 等人[3]提出了一種從工程圖紙生成語義豐富的結構模型的半自動方法。文獻[4]利用AutoCAD 軟件讀取考生答案中的圖元,進行試卷的批改。直線和曲線是工程圖紙中重要的幾何元素,對直線和曲線的自動識別研究是實現圖紙完整、快速識別的關鍵技術。因此,有效的直線和曲線檢測方法對工程領域研究具有重要意義。LIU 等人[5]提出了一種基于錨點的Hough 變換,其在檢測較為簡單的工程圖圖紙的直線中有較好的效果,但用于檢測較為復雜的工程圖圖紙時,仍需較大改進。CUNEYT 等人[6]采用最小二乘法對錨點形成的邊緣映射進行直線擬合,但仍存在少量虛假直線。馬俊俊[7]提出了基于種子段的動態步長直線矢量化算法,通過跟蹤種子段進行直線識別,但其檢測結果容易受到直線連續性的影響。劉璧鉞等人[8]提出了一種基于LSD 算法的直線檢測。ALlWAN 等人[9]提出了一種基于遺傳算法的工程圖元檢測,該方法能夠較為準確地提取工程圖中的圓弧和直線,但對于圖元重疊部分其提取效果較差。SALMON 等人[10]提出了一種從曲率剖面中檢測圓弧和線段的方法。文獻[11]提出一種基于教與學的優化算法和梯度分析實現對圖像的圓檢測。文獻[12]提出了一種基于模擬退火和差分演化的自動圓檢測算法,該算法能夠較為準確地檢測圖像中的圓,但其對噪聲較為敏感。

本文針對工程圖圖線語義較為豐富、實際情況較為復雜等問題提出了一種基于Hough 變換的工程圖圖線識別技術。如圖1 所示,基于Hough 變換的工程圖圖線識別具體步驟:(1)對采集的工程圖進行預處理;(2)利用Hough 變換、RANSAC 算法、最小二乘法檢測圖像中的直線;(3)利用形態學開閉運算及漫水填充算法檢測并分離曲線;(4)利用卷積神經網絡對各圖線ROI進行圖線線型分類,得出線型關系。

圖1 圖線識別算法流程圖

最后結合工程制圖類課程試卷自動評閱需求,在識別算法的基礎上增加坐標轉換算法及曲線一致性判斷,對30 名學生的工程圖圖紙考卷進行評分,并與人工評分結果進行對比,其評分差距在10%以內,表明該算法的可行性且在機械制圖中有較好的應用價值。

1 工程圖采集及預處理

為模擬真實工程圖應用場景,本文通過掃描設備采集手繪圖紙或打印圖紙。實際采集過程中,因人為繪制習慣、設備誤差等問題容易使采集的圖像產生干擾,因此需要對圖像進行預處理操作,其流程圖如圖2 所示。

圖2 工程圖預處理流程圖

本文采用的圖像預處理包括:(1)圖像二值化,二值化可以極大地減少圖像中的數據量,突顯出目標輪廓;(2)HSV 空間轉換,去除人為繪制誤差產生的陰影干擾;(3)形態學膨脹,達到去除噪聲的效果。其各步驟結果如圖3 所示。預處理后的結果相較于采集圖像,在保證原始工程圖基本圖元的情況下,大量減少了干擾點數量,且有更好的線條對比度,滿足后續處理要求。

圖3 工程圖預處理過程結果

2 圖線識別關鍵技術

2.1 Hough 變換直線檢測

霍夫變換是由Paul Hough 于1962 年首次提出,僅僅用于圖像中直線的檢測?,F在使用的廣義霍夫變換不僅能檢測直線,還可以檢測其他形狀的幾何特征。由于Hough 變換檢測直線是基于邊緣特征提取,因此需要先對圖像進行邊緣檢測??紤]原圖像的分辨率是變化的,因此采用自適應閾值Canny 邊緣檢測算法[13]。如圖4 所示,Hough 變換檢測到的直線往往包含多段直線,導致其檢測精度低,剔除這些多段直線對直線檢測精度至關重要。在Hough 變換檢測到的每條直線中,都有著對應的起點和終點。假定直線空間為XY 空間,點空間為KB 空間,XY 空間中的直線唯一對應的KB空間中的起點及終點。使用擬合算法剔除KB 空間中的“局外點”,從而對XY 空間進行直線去重。常用的擬合算法有最小二乘法和RANSAC 算法等。

圖4 Hough 變換處理結果圖

2.2 基于RANSAC 算法的直線擬合

由圖4 可知,通過Hough 變換檢測出的直線對應的KB 空間存在部分“外點”,這些干擾點會直接影響直線的擬合精度。本文采用RANSAC 算法[14]對“局外點”剔除。RANSAC 算法是一種通過不斷迭代,從一組數據中找出“局內點”,排除“局外點”,并通過“局內點”估計數學模型參數的算法。RANSAC 算法結果具有隨機性[15],檢測不夠精準。

最小二乘法是一種通過最小化理論值與觀測值之間的誤差平方和去尋找最佳匹配函數的算法,但由于最小二乘法會考慮所有樣本點進行擬合,當存在“局外點”時,擬合結果較差。

二者區別主要在于,最小二乘法會盡量擬合所有點,RANSAC 算法排除“局外點”后,僅利用“局內點”計算模型。由于在空間中存在部分的“局外點”,若單獨使用最小二乘法進行直線擬合,其擬合結果與理想情況會有較大誤差,二者算法擬合結果對比圖如圖5 所示。

圖5 RANSAC 算法和最小二乘法對比圖

基于此,本文結合上述兩種算法進行直線擬合。先隨機地從測試集中選取一個子集進行參數估計,以此為基礎估計參數化模型M,此時認為該子集中的點均為“局內點”。后用其余點測試該模型,如果某個點適用于該模型,即認為該點也是“局內點”,當有足夠多的點被歸類為“局內點”時,就證明估計的模型足夠合理。擴充后的“局內點”重新估計模型,通過估計局內點與模型的錯誤率來評估模型,如果當前的模型錯誤率比之前最優的模型錯誤率低,即將當前模型置為最優模型,否則舍棄。重復一定的次數K 次后,有足夠的樣本點被歸為“局內點”,得到最優模型M,假設需要“局內點”個數為n,置信度為P,θ 為n 個點適用于該模型的概率,則K 的計算公式如下:

通過不斷地建立假設與檢驗的迭代,以期獲得一組最優的“局內點”點集,再利用最小二乘法擬合“局內點”,得到擬合直線,其算法流程如圖6 所示。

圖6 直線擬合流程圖

其檢測結果如圖7 所示,將應用上述算法直線檢測結果圖7 與Hough 變換檢測結果圖4(b)比較,可見該算法直線檢測效果較好。

圖7 直線擬合結果

2.3 曲線檢測

在機械工程類圖紙中,曲線常常包括圓、圓弧、一般曲線等。Hough 變換圓檢測在檢測圓方面有較好的檢測效果,但對于圓弧及一般曲線的檢測效果較差。若直接將原始圖像和上述直線檢測結果圖7 進行布爾差運算,其結果如圖8 所示。該結果中包含大量不易去除的干擾點,且單條曲線也被分離成多條曲線,這些誤差會降低曲線檢測精度。

圖8 布爾差運算結果

對此本文采用形態學開閉運算進行曲線檢測。形態學開閉運算是圖像處理中常用的處理手段之一[16],本文利用圖像中的曲線特征,采用橫向及縱向矩形結構元從圖像中提取曲線邊緣。使用該方法得到的曲線邊緣為R3,其計算公式如下。

其中,R·B1表示B1對R 的開運算,R·B2表示B2對R的開運算,R1?B3表示B3對R1的閉運算,R1?B4表示B4對R1的閉運算,|表示或運算,R 為原始圖像,B1、B3是橫向矩形結構元,B2、B4是縱向矩形結構元,其曲線檢測結果如圖9 所示。

當圖像中存在多段曲線時,為實現后續圖線線型識別,需要將多段曲線進行分離。本文采用漫水填充算法[17]對曲線進行分離。該算法適用于對內定義區域的填充。漫水填充算法能夠將該區域中全部像素值設置為新值。通過一定規則確定一種子點,然后通過判斷種子點的鄰域像素是否和種子點構成聯通區域,從而決定是否對該區域進行填充,直至找到該區域內所有像素或達到輪廓線的邊界。其分離的結果如圖10 所示。

圖10 曲線分離結果

2.4 線型判斷

本文討論的機械工程類圖紙線型如下[18]:粗實線、細實線、點畫線、虛線。如圖11 所示,其中ab 為粗實線,cd 為點畫線,ef 為虛線。

圖11 輸入圖像

受人為繪制習慣不同,使用傳統的圖像識別算法對線型判斷具有很大的誤差,故本文采用基于卷積神經網絡的圖像分類算法對工程圖圖像進行識別。

2.4.1 數據集構建

為較好地還原手繪工程圖實際情況,本文選取的數據集均來自實際手繪工程圖及其圖線線型。對每張工程圖中每條圖線建立ROI 區域,并截取ROI 區域構建工程圖數據集。其部分ROI 區域如圖12 所示。

圖12 ROI 區域示意圖

本文對50 張工程圖,共計2 000 條圖線建立ROI區域,共得到2 000 張數據集,在實驗過程中隨機劃分其中的70%作為訓練集、20%作為測試集、10%作為驗證集,對于每張圖片隨機采用圖像旋轉、亮度變化、圖像正則化等圖線增強算法后,輸入到構建的分類神經網絡中。其數據集類別及其特征見表1。

表1 數據集類別及特征

2.4.2 分類神經網絡構建

卷積神經網絡(CNN)是目前最為常見的一種神經網絡模型,其主要被用于目標分類、目標檢測、追蹤等領域。卷積神經網絡利用圖片之間的相關性對圖像進行輪廓提取操作,目前經典卷積神經網絡有AlexNet、VGG、ResNet 等[19]。本文基于常見CNN 網絡設計的工程圖圖線分類網絡模型如圖13 所示。將輸入圖片縮放到100×100 像素,工程圖圖線圖像具有R、G、B 三個維度通道,因此網絡將原始工程圖圖像轉化為100×100×3的三維矩陣。同時利用具有8 層卷積層、4 層池化層的CNN 網絡將轉化后的三維矩陣卷積成6×6×128 的多維矩陣。利用3 個全連接層及Softmax 函數將多維矩陣展平并分類,分別獲得節點數為512、256、4,最終將輸入圖像分為4 類,即粗實線、細實線、點畫線、虛線。

圖13 分類卷積神經網絡結構圖

2.4.3 分類實驗結果與分析

在本文圖線分類實驗中,網絡設計參數如下:初始學習率為0.000 1,迭代次數為100 次,采用Droupout及Adam 優化算法。圖線分類訓練過程準確率及Loss變化曲線圖如圖14 所示。

由圖14 可知,經過100 次迭代,模型在訓練集上的準確率為98.96%,其最終Loss 值為0.003 2。表2 給出測試集中4 種線型類別的混淆矩陣。其中每一行表示每一類圖線識別為其他類別的概率,對角線表示每一類圖線識別為本類別的概率,由該表可知,4 類圖線的識別準確率均在90%左右,其中虛線的識別準確率達到93.2%。但在某些特殊情況下,粗實線和細實線之間可能會存在識別錯誤,點畫線和虛線間可能會存在識別錯誤。

表2 圖線圖像分類混淆矩陣

圖14 訓練準確率及Loss 曲線圖

3 算法應用

隨著我國大力發展機械、電氣、建筑等工程事業,越來越多的學生報選工科專業。其中制圖類課程是眾多工科專業重點必修課,國內從事制圖類課程的授課老師數量眾多,存在大量的課后作業和期末試卷需要老師修改。因此較好的工程圖圖線識別技術在制圖教學領域具有重要意義[20]。本文通過在上述算法基礎上增加坐標轉換及曲線一致性判斷算法對30 張學生試題答案進行自動評分,其算法應用流程如圖15 所示。

圖15 算法應用流程圖

3.1 坐標轉換

通常工程類作業對答案繪制位置有一定要求,本文通過在試卷答題區域附近繪制“L”型符號進行試題定位。在單幅工程圖中所得出的點坐標均為絕對坐標,為和試題答案進行對比,應按照一定規則將檢測出的直線端點的絕對坐標及曲線上所有點的絕對坐標轉換為相對坐標。本文采取的轉換規則如圖16 所示,以定位點O為原點,按X 方向和Y 方向各點到該點的距離大小進行點的坐標轉換,例如轉換后點A 的相對坐標為(x0-x,y0-y)。

圖16 坐標轉換示意圖

3.2 曲線一致性判斷

對于直線而言,兩點間最多存在一條直線,因此只需判斷端點及線型是否正確。但兩點間的曲線可能存在無數條。因此采用如下算法進行曲線一致性判斷:

如圖17 所示,假設λP={P0,P1,P2,...,Pn}是標準曲線上所有點的集合,λQ={Q0,Q1,Q2,...,Qn}是比對曲線上所有點的集合。從曲線最左端遍歷到曲線最右端,若其中超過一定比例點的坐標差△y 小于設定閾值,則可近似認為該兩段曲線一致性判斷正確,反之則認為兩段曲線一致性判斷錯誤。

圖17 曲線一致性判斷

3.3 實驗結果

本文選取了機械制圖考卷中30 幅補畫第三視圖題型答案作為實驗對象,該題型要求考生根據題目中給出的兩幅視圖繪制物體的第三個視圖,其總分為15分,部分測試圖紙如圖18 所示。

圖18 試題答案及部分考生測試圖紙

本文采用的評分規則如下:(1)考卷直線及答案直線的兩端點相對坐標值及線型關系相同則計分,反之則扣分;(2)考卷曲線與答案曲線的曲線一致性判斷結果正確則記分,反之則扣分。采用上述算法及評分原則對測試試題進行自動評分。將自動評分結果與5 名人工評判得分的平均分進行比對,其評分結果對比圖如圖19 所示,其誤差在10%以內,故本文算法在機械制圖試卷自動評分方面具有一定的應用價值。

圖19 評分結果對比圖

4 結束語

本文提出了一種基于Hough 變換的工程圖圖線識別技術。對采集的工程圖預處理后,利用Hough 變換、RANSAC 算法、最小二乘法檢測出圖像中直線,采用形態學開閉運算及漫水填充算法檢測并分離曲線。采用卷積神經網絡對各圖線ROI 進行線型分類,得出工程圖中線型關系。最后利用本文算法對選取的30 張機械類特定題型答案進行自動評分,并將其與人工評分結果進行對比,表明基于Hough 變換的工程圖圖線識別技術在教學領域具有一定的應用價值。本文算法在以下方面還存在不足:(1)當工程圖較為復雜時,圖線識別效果和理想結果會有較大差距;(2)工程圖圖線的識別速度還能進一步提升。

猜你喜歡
圖線工程圖線型
通過三維軟件PDF自適應轉換實現工藝卡片二維工程簡圖的高清顯示
四合一鉛筆刀設計
變化環境下考慮線型不確定性的水文設計值估算分析
材料力學剪力、彎矩圖“一筆畫”
面向工程認證的機制專業工程圖學(一)課程教學探索
微流控法低溫保護劑添加及去除線型優化研究
MASTERCAM工程圖出圖功能研究
大直徑半球容器纖維纏繞線型研究
高等級公路幾何線型優化設計分析與評價
靜電場中幾種圖線的分析
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合