劉兵 關(guān)騰騰 曾健波 李慶飛
背景
工業(yè)智能相機可以通過WEB管理軟件實現(xiàn)在工業(yè)現(xiàn)場端與控制室端的遠程跨平臺快速部署及查看的功能,進一步實現(xiàn)數(shù)據(jù)融合及大數(shù)據(jù)分析。通過WEB端實現(xiàn)本地端與云端數(shù)據(jù)互聯(lián)互享,互通互用。通過多機組網(wǎng)共同管理實現(xiàn)多工位智能聯(lián)控管理及實時任務(wù)跟蹤,進一步為智能工廠實現(xiàn)工業(yè)4.0的柔性性。
為了跨平臺實現(xiàn)MVX201智能相機在工業(yè)現(xiàn)場的遠程部署工作,設(shè)計一款用于配置MVX201智能相機的WEB服務(wù)軟件。WEB服務(wù)軟件主要用于智能相機圖像處理算子、工程配置,實現(xiàn)工業(yè)自動化場景下的條碼識別、物體的分類檢測,識別等應(yīng)用,代替人眼做檢查、定位、測量、識別等功能,給機器賦予“眼睛”的新定義。
硬件平臺
MVX201型智能相機平臺上,采用軟件和硬件高度結(jié)合的嵌入式系統(tǒng)。
配合相機其他軟硬件的設(shè)計,可以方便的對復(fù)雜應(yīng)用場景進行算法編制,實現(xiàn)視覺項目快速實施落地。
系統(tǒng)概述
此平臺為 MVX201智能相機提供可視化方案,包含圖像采集、提供可供選擇的OpenCV算子、算法模塊、深度學(xué)習(xí)推理算子配置功能。可配置通信模塊包括Ethernet、CAN、UART、GPIO等等。具有操作簡易、實時采集圖像、穩(wěn)定可靠、功能完備等特點,集合了大量的算子及通信方式選擇。在平臺上可建立工程,大大的提高了視覺開發(fā)人員的效率。
方案設(shè)計
設(shè)計流程
使用WEB平臺化實現(xiàn)并簡化視覺深度學(xué)習(xí)的相關(guān)工作,是通過WEB配置深度學(xué)習(xí)相關(guān)算法模型及參數(shù)并使用WEB驅(qū)動后端相關(guān)進程的運行。在這個過程中,需要對WEB相關(guān)功能進行設(shè)計開發(fā),以滿足功能的實現(xiàn);在WEB設(shè)計完整的情況下,加入前后端數(shù)據(jù)交互功能以實現(xiàn)平臺通過WEB平臺化實現(xiàn)圖像采集分析的目的。
WEB設(shè)計包括前端界面設(shè)計和后端設(shè)計。前端界面包括:用戶界面、相機主頁、相機管理界面;后端包括經(jīng)過WEB的各種邏輯和數(shù)據(jù)庫操作等。WEB設(shè)計如圖2。
用戶管理
1.創(chuàng)建用戶模型表并存入密碼。
2.初始化用戶模型的SQL:
CREATE TABLE `aeye_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user` varchar(200) DEFAULT NULL,
`password` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name_UNIQUE` (`user`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8
3.配置數(shù)據(jù)庫的代碼:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'smart_camera',
'USER': 'root',
'PASSWORD': '123456',
'HOST': 'localhost',
'PORT': 3306,
}
}
創(chuàng)建登錄頁面
系統(tǒng)啟動后,瀏覽器訪問相機IP:8000,瀏覽器將渲染出登錄頁面。
用戶管理界面
用戶管理界面主要用于用戶的注冊與密碼管理。如下圖所示:
相機主頁
相機監(jiān)控其主要包含以下幾個功能區(qū)域:相機信息、圖像顯示區(qū)、工程列表運行控制、工程配置。WEB界面如圖5。
相機信息
相機信息包括序列號、用戶ID、物理地址、IP地址、子網(wǎng)掩碼、固件版本號。
圖像顯示區(qū)
可選擇工程的流程中的相關(guān)輸出圖像作為顯示圖像,默認為流程最終輸出圖像(原圖加結(jié)果的復(fù)合)。
工程列表
顯示所有工程及其狀態(tài)及相關(guān)備注信息,可編輯工程、刪除工程、運行工程。
運行控制
運行控制包括3種模式,即單步模式、循環(huán)模式停止模式。
工程配置
將相機參數(shù)按類別分為不同條目,選擇相應(yīng)的條目進行參數(shù)配置。相機參數(shù)配置WEB界面如圖6。
添加相機圖像CV算子(相機原圖、上傳圖像、相機本地圖像、圖像相加、圖像相減、圖像相乘、圖像相除、圖像對比、通道分割、色彩轉(zhuǎn)換、加權(quán)相加、閾值分割、自適應(yīng)分割、均值平滑、中值平滑、高斯平滑、雙邊平滑、膨脹圖像、腐蝕圖像、形態(tài)學(xué)處理、上下采樣、圖像梯度、提取邊緣、霍夫線變換、霍夫圓變換、掃描條碼、直方圖均衡、對齊圖像、圖像清晰度、圖像縮放)并配置。
添加AI神經(jīng)網(wǎng)絡(luò)模型(儀表檢測模型、汽車零部件缺陷模型、超市貨架商品分類模型、人臉識別模型等)。
點擊某一算子圖標,在“流程管控區(qū)”生成一條帶序號的記錄,并在“流程單元配置區(qū)”顯示該算子的配置詳情。該處的算子分為兩個部分:一是為工程流程使用的圖像處理和深度學(xué)習(xí)推理算子,二是輸出信息配置算子。
顯示及管理工程中的流程算子,包括流程算子的刪除、修改、移動操作。刪除:用戶可通過刪除圖標對流程進行刪除;修改:點擊“流程管控區(qū)”中的某一條流程記錄,在“流程單元配置區(qū)”中顯示其配置詳情;移動:對于流程記錄可通過鼠標左鍵進行拖拽移動改變流程順序。注意:移動、修改、刪除后,流程的序列標號應(yīng)連續(xù)有序;如圖7。
提供相關(guān)通信模塊,當(dāng)前主要通信協(xié)議支持Ethernet、CAN、UART、GPIO。用戶可直接選擇相應(yīng)模塊進行相關(guān)的參數(shù)配置,完成后在通信流程管控區(qū)生產(chǎn)相關(guān)記錄,界面如圖8。
在對工程進行相機配置、運行配置、外部配置后保存,如圖9。
相機管理
工程管理
工程管理包含“相機運行狀態(tài)監(jiān)控--工程運行信息”的功能,額外增加導(dǎo)入、新建工程操作。導(dǎo)入:可使用工業(yè)智能相機導(dǎo)出的工程進行導(dǎo)入;新建工程:可點擊“新建工程”后,界面跳轉(zhuǎn)到“相機運行工程配置”界面。
模型管理
模型管理以列表的形式顯示相機中所有導(dǎo)入的模型的狀態(tài)(序號、導(dǎo)入時間、最后使用時間、當(dāng)前使用情況,模型描述;按使用的最新時間進行排序),提供相關(guān)操作(導(dǎo)入、導(dǎo)出、刪除;導(dǎo)入:可通過點擊“導(dǎo)入”、選擇要導(dǎo)入的模型、選擇模型的分類實現(xiàn)模型的導(dǎo)入;導(dǎo)出:在模型列表中找到要導(dǎo)出的模型,在其操作項中點擊“導(dǎo)出”、選擇外部保存路徑實現(xiàn)模型導(dǎo)出;刪除:在確保模型未被工程使用的情況下,通過點擊模型的操作項中“刪除”實現(xiàn)模型的刪除操作)
圖像管理
圖像管理是顯示相機中所有導(dǎo)入、本機保存到指定目錄的圖像的狀態(tài)(序號、導(dǎo)入時間、最后使用時間,使用情況,圖像描述),按最后使用時間進行排序;對該區(qū)域圖像提供相關(guān)操作(導(dǎo)入、導(dǎo)出、刪除、查看);導(dǎo)入:可通過點擊“導(dǎo)入”、選擇要導(dǎo)入的圖像并修改圖像文件名,將其保存到固定目錄下;導(dǎo)出:在圖像列表中找到要導(dǎo)出的圖像,在其操作項中點擊“導(dǎo)出”、選擇外部保存路徑實現(xiàn)圖像的導(dǎo)出;刪除:在確認圖像未被工程使用時可直接通過點擊“刪除”執(zhí)行刪除操作,若圖像已被使用將彈出提示窗口詢問用戶“是否刪除、刪除后相應(yīng)工程功能可能會受影響”,是否執(zhí)行刪除操作根據(jù)用戶選擇。
如圖10。
前后端數(shù)據(jù)交互設(shè)計
前后端數(shù)據(jù)交互主要是以前端與數(shù)據(jù)庫進行信息交互,后端通過消息訂閱和發(fā)布的形式從json文件或者數(shù)據(jù)庫中提取或傳遞消息。前后端數(shù)據(jù)交互設(shè)計如圖11。
總結(jié)
在工業(yè)視覺的應(yīng)用場景下,采用WEB配置MVX201智能相機進行CV算子、深度學(xué)習(xí)模型適配,形成新的多層深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)組合,可以模擬人類識別任務(wù)時的判斷能力,從而使視覺系統(tǒng)能夠識別圖像、感知趨勢和理解表面缺陷的能力,智能相機賦予了機器人眼的能力。