999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于深度學習的指針式儀表的讀數檢測方法

2023-07-29 11:00:30陳凱迪
自動化與儀表 2023年7期
關鍵詞:檢測模型

虞 健,陳凱迪,施 展,孔 明

(1.中國計量大學 計量測試工程學院,杭州 310000;2.芋頭科技(杭州)有限公司,杭州 310000)

已有的指針式儀表的讀數檢測方法一般是先通過儀表的結構化特征,使用特征提取及匹配的方式進行儀表檢測和定位[1],例如包括使用Hough圓形檢測[2]、模板匹配[3]、特征點匹配[4]等方法來檢測圖像中的儀表位置,隨后通過旋轉角度法[5]、Hough直線檢測[6]、幀差剪影法[7]等方法檢測儀表中的指針位置,最后通過角度法或距離法[8],計算指針在兩個已知刻度位置之間的角度之比或距離之比來獲得指針式儀表的讀數。這些方法中,通常需要對圖像進行預處理,例如需要考慮待測儀表的傾斜角度[5]進行透視變換。如果通過深度學習模型獲得替換上述的步驟[9-11],由于指針式儀表結構不標準,對于訓練模型所需的數據量要求較高。另外,通過角度法或距離法計算指針式儀表的讀數是通過儀表圖像中的角度或距離信息來計算讀數,會受到儀表圖像拍攝角度而引起的圓形儀表盤變形以及因為指針投影到表盤上的位置差異而導致的讀數偏差。

因此,本文提出了一種新的算法框架,通過將指針式儀表讀數檢測拆分為儀表檢測、語義分割、讀數回歸3 個基于深度學習的步驟,利用小規模的標注數據量,快速、準確地實現對不同拍攝角度下對指針式儀表圖像進行讀數檢測。

1 儀表讀數的算法框架

本文算法框架的流程如圖1 所示。首先對儀表的圖像進行目標檢測,并對檢測后的圖像進行語義分割,從而得到僅包含刻度和指針信息的分割圖像,最后基于分割圖像進行指針讀數的回歸,得到儀表讀數。在儀表檢測和語義分割過程中,采用YOLOv5-s 網絡模型和Unet 網絡模型對實驗數據進行訓練。

圖1 算法流程Fig.1 Flow chart of algorithm

對于讀數回歸模型結構根據指針式儀表識別任務的特點進行了優化。具體地,由于需要輸出范圍為0~100 之間的儀表讀數,因此讀數回歸過程中,基于儀表讀數回歸任務對標準的Resnet18 模型進行了調整。在輸出層上,將標準的Resnet18 最后的全連接層的輸出結果修改為一維數據,并采用Sigmoid 函數將輸出的數據的值范圍約束在0~100 之間,以對應儀表讀數的區間。在模型訓練使用的損失函數上,將用于多分類任務的CrossEntropyLoss 修改為MSELoss,以適應儀表讀數的線性輸出結果;使用Adam 優化器,以動態調整訓練過程中的學習率。在本文中,將調整后的Resnet18 稱為Resnet18-CNN 模型。

2 實驗過程和結果討論

2.1 實驗平臺和所用設備

訓練神經網絡的服務器的硬件配置包括Intel(R)Xeon(R)Gold 6342 處理器、內存256 GB、Nvidia A100 顯卡,操作系統為Ubuntu 18.04,深度學習框架為Pytorch 1.12。

實驗用的指針式儀表主要選擇敞夢儀表有限公司生產的0~100 ℃的指針式的溫度計儀表,可以通過溫度控制方便的獲得不同指針位置的儀表圖像。

實驗用的圖像數據使用紅米K30 Pro 5G 手機的攝像模式拍攝,視頻分辨率為1920×1080。采用幀提取的方式從視頻圖像中提取圖像。

2.2 數據準備

2.2.1 儀表檢測數據集

儀表檢測的訓練數據集采用百度飛漿的開源項目提供的數據集(以下簡稱數據集1),其中共有標記好的訓練集儀表圖片725 張,驗證集儀表圖片58 張,其中包括單儀表、多儀表以及無儀表的干擾圖像場景。將其標注方式轉換為適合YOLOv5 模型的數據結構。

2.2.2 儀表語義分割數據集

通過控制溫度計儀表下端探頭的接觸溫度,手工采集了不同指針位置的儀表圖像,其中包括每間隔1 單位、0~100 單位范圍的101 張原始數據,并使用數據增強的方式擴大到2424 張(以下簡稱數據集2)。數據增強的方法使用了Python 的第三方庫imgaug 提供的方法,包括:像素點丟失(Dropout)、縮放、仿射變換、對比度調整、銳化、扭曲平滑方式中的隨機一種或多種。如圖2 所示,在對數據的標簽進行標注時,將整個指針作為一個類別進行標注,將所有刻度條所圍成了的環狀區域作為一個類別標注。

圖2 儀表語義分割數據集示例Fig.2 Examples of data for meter segmentation

2.2.3 儀表讀數回歸數據集

儀表讀數回歸數據集采用的是將數據集2 中的原始數據通過語義分割模型生成的灰度的分割圖像作為回歸數據集里面的圖像數據,并將圖像所對應的實際讀數作為數據標簽,并處理為Pytorch框架中Dataset 數據類型。

由于讀數回歸是從儀表的結構特征中獲取指針式儀表的讀數值,為了避免對數據預處理過程中的分辨率調整導致儀表圖像產生畸變,影響最終結果,在對數據集的預處理中,加入了對圖像數據進行了Padding(填充)處理以獲得正方形的圖片,隨后再對Padding 后的正方形圖像進行縮放,以得到適合神經網絡處理的圖片尺寸大小。在本文使用的Resnet18-CNN 模型中,采用224×224 分辨率的圖片作為模型的輸入。

2.3 使用YOLOv5s 進行儀表檢測

訓練過程中,將Batch Size(批數量)設定為4,Epoch(迭代次數)設定為50,圖像的分辨率設定為640。在判斷網絡的訓練結果的時候,采用mAP 對模型進行評估,mAP 為平均精度的簡稱,其主要代表是在不同的IOU(交疊率)閾值下,物體檢測的準確率。例如mAP_0.5-0.95 指在IOU 從0.5~0.95 之間的平均精度;如果mAP_0.5-0.95 越大,則代表該模型訓練結果的準確率越高。

基于數據集1 的訓練結果如圖3 所示,可以看到訓練集的訓練損失函數隨著Epoch 增加而不斷下降,證明模型成功收斂。同時mAP_0.5:0.95 隨著訓練的Epoch 增加也提升,證明模型的識別準確率不斷提升。而mAP_0.5:0.95 則在40 個Epoch 時候穩定在0.995,說明40 個Epoch 之后模型已經達到最優狀態。

圖3 YOLOv5 訓練結果Fig.3 Training result of YOLOv5

2.4 使用Unet 進行儀表的語義分割

在進行Unet 模型的訓練過程中,將Batch Size設置為1,Epoch 設定為20。在判斷Unet 網絡的訓練結果的時候,采用Validation Dice(驗證骰)對模型進行評估,Validation Dice 是用來評價語義分割任務的常用參數,其意義是分割區域和真值區域之間重合面積的2 倍和這兩個區域的面積之和的比值,如果Validation Dice 越大,則模型對圖像的語義分割的準確性約高,當Validation Dice 為1 的時候,則表示是分割后的圖像和真值完全重合。

針對數據集2 的訓練結果如圖4 所示,從圖4(a)可以看到,當訓練開始之后,Validation Dice 迅速上升,當第5 個Epoch 后,整個模型的Validation Dice 數值為0.97,已經接近1;從圖4(b)訓練的損失函數也可以看到在第5 個Epoch 后,Loss 已經接近于0,證明模型已經收斂且分割的效果較好。

圖4 Unet 訓練結果Fig.4 Training result of Unet

2.5 使用Resnet18-CNN 進行儀表讀數檢測

在使用Resnet18-CNN 進行訓練的時候,將Batch Size 設定為8,Epoch 設定為100,將數據集的80%作為訓練集,20%作為測試集。在每個Epoch 結束之后對測試集進行一次推理計算,并將測試集中所有圖像數據的推理結果和真值之間差做平均,得到均值偏差。以均值偏差來判斷模型的識別準確率,即均值偏差越低,認為模型的準確性越高。

訓練集的訓練結果如圖5 所示。從圖5(a)可以看到隨著Epoch 增加,損失函數呈現出下降的趨勢,在達到80 個Epoch 時,損失函數的波動趨于穩定,并在1 附近跳動,證明模型已經收斂;從圖5(b)可以看到均值偏差也隨著訓練的過程逐漸降低,盡管在訓練初期,均值偏差偶爾有較大的波動,但是在80 個Epoch 之后,其主要在0.6 左右波動,選取了均值偏差最低的點0.48 作為最佳模型參數,來進行結果驗證。

圖5 Resnet18-CNN 模型的訓練結果Fig.5 Training result of Resnet18-CNN model

3 實驗研究

另行拍攝了不同角度的儀表的數據對上述方法訓練的模型進行驗證。如圖6 所示,其中包括通過YOLOv5 模型檢測出來的指針式儀表的正面拍攝圖片、左側拍攝圖片和右側拍攝圖片。將通過YOLOv5 模型檢測到的儀表圖像送入訓練好的Unet模型之后,獲得儀表的分割圖像如圖6 第2 行所示,可以看到正面拍攝圖片的分割結果基本完美,指針和刻度都得到了準確的分割,而左側拍攝圖片和右側拍攝圖片的指針中心位置有一些信息丟失,但是刻度線基本做到了準確的分割。將分割后的圖片送入ResNet18-CNN 模型后,即可得到相應的儀表讀數。

圖6 對于Unet 的驗證結果Fig.6 Demonstration result of Unet

作為對比,在使用Unet 分割后的圖像的基礎上,模擬了文獻[11]上的距離法來獲得儀表讀數,使用指針附近的2 個已知標記刻度的位置和使用Hough 直線法檢測出來的指針位置,使用2 個刻度點到指針直線的距離之比來計算讀數。選取了2 個讀數值在不同角度拍攝的7 個儀表圖像樣本,將Resnet18-CNN 模型輸出結果、距離法輸出的結果和肉眼人工讀數結果進行比較,如表1 所示。可以看出,由于圖片拍攝角度的不同,因為指針投影在刻度平面上的位置產生偏差,導致人工讀數會產生約1 個刻度左右的讀數偏差。相比于人工讀數和距離法讀數的結果,通過本文的ResNet18-CNN 回歸模型的讀數結果的讀數偏差更小。

表1 本方法讀數和距離法讀數、人工讀數的結果比較Tab.1 Comparison of results of this method with the distance method reading and manual reading

由于分割后的圖形僅保留了指針讀數相關的結構特征,使用深度神經網絡從分割好的儀表圖像中直接進行讀數回歸,因此相比于直接從原始圖像回歸出讀數[9-10],本方法讀數回歸模型訓練的模型復雜度降低、且訓練所需要的人工標注的數據量可以大大減少。由于攝像機拍攝角度、指針式儀表安裝位置的影響,采集到的表盤圖像通常具有一定的傾斜角度,這會影響讀數的精確度,因此傳統的方法需要對圖像中的表盤先進行旋轉校正,以提高讀數的精確度。通過本方法的Resnet18-CNN 模型,無需對于圖像進行預先旋轉矯正,即可以得到比較準確的結果。對此,認為可能的原因是在Resnet18-CNN 的訓練過程中,對訓練數據的數據增強包括隨機的仿射變換,因此模型在訓練過程中已經對于不同仿射變換的圖像進行了學習。

4 結語

本文設計了一種基于深度學習的指針式儀表識別方法。該方法的優勢在于,圖像無需額外預處理的情況下,可以在較少數據量的情況下,通過3個神經網絡處理步驟可以獲得準確的指針式儀表讀數結果,特別是針對語義分割和讀數回歸的模塊,僅使用了101 張人工標注的數據。針對測試數據,通過本方法得到的指針儀表讀數結果和人工讀數以及距離法讀數相比,對于不同角度拍攝的儀表獨享的讀數偏差更低。進一步,由于本方法通過語義分割后的儀表圖像進行讀數回歸,而無需具體檢測儀表中的指針位置和刻度信息,如果在模型訓練中增加不同的儀表數據,本方法將可適用于不同種類儀表的讀數檢測。

猜你喜歡
檢測模型
一半模型
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 久久青草精品一区二区三区| 免费看久久精品99| 久久国产精品影院| 国产成熟女人性满足视频| 一级香蕉人体视频| 性色一区| 欧美一区二区啪啪| 国产精品不卡永久免费| 国产精品永久免费嫩草研究院| 高清无码一本到东京热| 国产99视频精品免费视频7| av性天堂网| 国产精鲁鲁网在线视频| 99re66精品视频在线观看| 亚洲精品动漫| 欧美成a人片在线观看| 国产女人18毛片水真多1| 久久不卡精品| 99色亚洲国产精品11p| 91伊人国产| 色亚洲成人| 99re视频在线| 蜜桃视频一区二区三区| 久草性视频| 国产噜噜在线视频观看| 怡红院美国分院一区二区| 国产v欧美v日韩v综合精品| 美女毛片在线| 91丝袜在线观看| 青青热久麻豆精品视频在线观看| h网址在线观看| 久久亚洲美女精品国产精品| 重口调教一区二区视频| 97国产精品视频自在拍| 丁香五月亚洲综合在线| 亚洲日本精品一区二区| 国产精品亚洲一区二区在线观看| 91在线精品麻豆欧美在线| 有专无码视频| 久久国产黑丝袜视频| 国产精品lululu在线观看| 欧美综合激情| 欧美一区中文字幕| 免费99精品国产自在现线| 在线国产91| 亚洲精品成人7777在线观看| 欧美色图久久| 日本精品影院| 亚洲欧美在线综合一区二区三区 | 亚洲综合片| 国产成人av大片在线播放| 欧美中文字幕在线视频| 久久精品视频一| 欧美亚洲国产视频| 亚洲婷婷在线视频| 中文字幕欧美成人免费| 久久国产香蕉| 婷婷综合色| 亚洲码在线中文在线观看| 好紧好深好大乳无码中文字幕| 91毛片网| 伊人久久大香线蕉成人综合网| 无码专区第一页| 不卡无码网| 97精品国产高清久久久久蜜芽| 亚洲福利视频网址| 色综合久久88色综合天天提莫 | 欧美精品色视频| 中文字幕啪啪| 国产视频 第一页| 亚洲欧美日本国产综合在线| 91福利一区二区三区| 72种姿势欧美久久久大黄蕉| 毛片久久久| 五月综合色婷婷| 亚洲人成影院在线观看| 亚洲国产成人精品一二区| 国产精品美女网站| 激情网址在线观看| 91精品人妻互换| 国产婬乱a一级毛片多女| 午夜天堂视频|