1. 程式人生 > 實用技巧 >如何助力工業生產安全?工人違規作業監測技術方案“大揭祕”

如何助力工業生產安全?工人違規作業監測技術方案“大揭祕”

點選左上方藍字關注我們

當下,人工智慧已逐漸成為引領新一輪科技革命和產業變革的戰略性技術。各行各業都在積極探索如何應用AI實現智慧化升級。作為我國國民經濟支柱產業的工業製造也不例外。面對複雜的製造現場環境,如何高效低成本地實現對違規行為的監測,保證人員安全?9月29日,在AIIA2020人工智慧開發者大會百度產業AI技術應用公開課上,上海音智達資訊科技有限公司高階資料科學家林瀟進行了《生產安全:工人違規作業監測技術方案》為主題的演講。

(圖示:上海音智達資訊科技有限公司

高階資料科學家林瀟發表演講)

以下為演講實錄:

工廠違規行為監測場景

的業務痛點

我是來自上海音智達的資料科學家林瀟,我們主要從事包括機器學習和生物學習產業落地的AI工作,應該算是最接地氣或者跟業務結合最深的AI開發者。今天我給大家分享的主題是工業違規行為監測場景應用。在工業製造現場,人員安全及行為規範有比較明確、或者非常嚴格的規定,例如在清掃化學藥品時是否穿戴防護服、操作裝置時動作是否規範、在崗或者離崗的狀態監測是否為疲勞工作。

大家可以想像到的主要解決方案可能就是人盯眼看,現在也許是巡視員檢查;或安裝監控攝像頭(但人還是要盯著裝置看)。在現場,實際上很難形成有效的監測規則,因為現場業務環境對業務規則要求比較多變,在這種情況下直接使用攝像頭監控並不能達到很好的效果,同時也會讓監測人員非常疲勞。

市場上現有的解決方案主要有兩種,一種是以智慧硬體為主的硬體裝置,這種方案可能沒有辦法滿足定製化的場景,因為每個工廠或者每個車間現場的環境及規則都不太一樣;第二種方式是比較通用的AI能力平臺,或者是AutoML平臺,這種平臺需要業務方或廠商有一定技術背景、技術能力,從這兩點看來,目前在業務現場沒有辦法進行很好的落地。

工廠違規行為監測場景

與技術選型

先和大家介紹一個業務場景,大致可分為三類。第一類是穿戴監測場景,即在淨化間裡面監測是否戴口罩、戴面罩或穿防護服等防護用具;第二類是離崗和到崗監測,主要判斷指定人員有沒有在指定崗位上,或者指定人員是不是離崗超過一定時間等類似場景;第三類是疲勞監測判斷。因為時間關係,沒有辦法對每個場景、對它的技術理解一一展開介紹,但可以提煉出這五個場景中共同的難點。

首先是有標註的資料量比較少,因為不太希望在開發專案或者開發模型時,打斷他們原有的作業流程,所以我們獲取到初期的標註資料比較少;第二是運動導致的模糊,會給資料的質量帶來一定影響;第三是顏色比較相近的問題,例如服裝以及背景、操作的目標、化學藥品桶等等,可能顏色比較相近就會對我們造成一定的干擾;第四是業務規則很多是定性的,不太好去做一個量化的指標;第五是因為攝像頭覆蓋範圍比較廣,可能會產生一些小目標監測問題;最後是違規發生時間不太容易確定,因為這裡面涉及到規則觸發的問題。

針對以上幾個共性問題,我們在設計架構上主要從三個方面考慮。一是可擴充套件性,作為試點專案,當前每個場景僅有一個攝像頭,應考慮後期接入更多攝像頭的可拓展性,針對這一點要求每個場景模組需要進行獨立開發,並有一個單獨管理的功能;第二是考慮到配置問題,希望能夠進行集中配置,在開發時使用配置檔案進行業務引數和規則條件的集中配置和管理;第三是與其他模型整合的能力,在違規事件的記錄出來之後,實際上是需要被類似於大屏顯示系統等其他系統進行消費的。

(圖示:智慧視覺系統整體架構)

系統組成上,主要分為四個層級,最下面是硬體層,這裡涉及到GPU伺服器,還有網路接入的硬體;再往上是作業系統層,主要是一些GPU支援元件;在這上面最主要的AI框架層中,使用了百度PaddleDetection預訓練模型,最上面就是演算法的一個應用。

(圖示:智慧視覺系統組成)

在資料層面比較重要的是考慮到資料閉環,待資料採集後進行標註時會有兩個迴圈,一個是資料標註、檢查修改到模型訓練形成小的迴圈,主要用於改善資料標註質量;另一個是迴圈標註及模型訓練、上線試執行、結果分析到Bad case收集,主要為了提升模型數量,剛開始資料收集的數量並不是特別夠。

深度學習與業務規則結合

第二部分是演算法設計部分。從整體思路來看,把違規檢測的問題分解成單幀影象物體檢測問題與聚合到時間緯度的規則判斷問題。首先,我們使用的基礎模型是YOLOv3增強版,考慮到實時性要求及GPU視訊記憶體要求,這五個場景跑在同一個GPU上面,GPU視訊記憶體並不是特別大;第二點是規則引擎,首先考慮涉及違規規則定義,將業務規則轉換成單幀物體檢測的規則,如用邊框的overlapping作接觸判斷,其次是單幀影象違規規則判斷,當前這一幀是否產生違規行為,最後就是特定的時間窗口裡面判斷是否產生違規行為,以防止模型在一兩幀裡面做出誤判;最後考慮希望快速開發出基準模型,在試執行的時候收集Bad case進行多次迭代優化。

首先很快速的進行Baseline的構建,我們技術路線在Baseline用的是比較主流,或者說是很直接的想法,通過物體檢測之後進行接觸判斷,再應用我們的業務規則,最後得到一個違規事件的記錄,快速建立Baseline。重點是對Baseline的結果進行分析之後做的一些優化措施,主要在這四個場景裡面做了比較多的優化措施,比如口罩檢測這塊,把口罩檢測分為人臉檢測和口罩檢測兩個任務來進行,還有在淨化間穿戴檢測時由於運動產生模糊問題進行資料分析工作,類似情況就是在分析問題時著眼於Bad case進行有針對性的分析和有針對性的優化措施。

(圖示:演算法方案優化措施)

最佳實踐與下一步

現在,總結一下這個專案並看看後續工作情況。第一點我覺得方法論是最重要的,在專案開發當中第一步是對問題進行定義跟分析、影象的預先處理等常規的處理,最重要的是要快速建立起基準模型,這個基準模型的結果可能並不一定很好,但首先流程上要完整,把整個模型開發流程都給打通。其次是效能迭代環節,這裡面會考慮是不是做一些資料增廣,還有對超引數據調節等等。

(圖示:最佳實踐方法論)

最後分享下另外幾個經驗,第一點是在現場安全場景的業務規則當中,我們可以把問題轉換成計算機視覺的任務和邏輯規則相結合的技術需求;第二,在資料收集或者資料準備上要考慮到資料閉環的思想應用,主要在質量和數量上面都需要進行不斷迭代的優化。考慮到場景規則的多樣還有多變問題,我們一般要進行規則和引數的集中配置,以及演算法模組儘量降低耦合程度。還有就是使用PaddleDetection提供的模型庫,預訓練模型能夠快速幫我們建立起來Baseline,而PaddleDetection則提供了很多適用於工業部署的API,大大加速了我們部署上面的時間,謝謝大家。

課程回放連結:

https://aistudio.baidu.com/aistudio/education/group/info/1561

如在使用過程中有問題,可加入飛槳官方QQ群進行交流:1108045677。

如果您想詳細瞭解更多PaddleDetection的相關內容,請參閱以下文件。

·飛槳官網地址·

https://www.paddlepaddle.org.cn/

·PaddleDetection開源框架專案地址·

GitHub:

https://github.com/PaddlePaddle/PaddleDetection

Gitee:

https://gitee.com/paddlepaddle/PaddleDetection


掃描二維碼 |關注我們

微訊號 : PaddleOpenSource

點選下方“閱讀原文”,進入AI快車道全國巡迴報名頁面

↓↓↓