直播預(yù)告!生鮮與零售商品識(shí)別系統(tǒng)產(chǎn)業(yè)實(shí)踐與部署詳解
生鮮零售作為民生消費(fèi)的重要一環(huán),在促進(jìn)行業(yè)新消費(fèi)升級(jí)的進(jìn)程中有著至關(guān)重要的作用。在超市等無(wú)人零售場(chǎng)景中,目前結(jié)算方式主要有以下幾種:

但是以上幾種方法存在如下缺點(diǎn):
條形碼方式:對(duì)于成品包裝的商品較為成熟,但生鮮產(chǎn)品本身“無(wú)碼可掃”;
RFID方式:所需的額外費(fèi)用難以長(zhǎng)期承擔(dān);
生鮮稱重方式:對(duì)于相同品種不同單價(jià)的商品無(wú)法很好區(qū)分,需要人工辨別商品品種,效率較低。
因此,選擇一種既能大規(guī)模支持各種商品識(shí)別,又能方便管理,同時(shí)維護(hù)成本不高的識(shí)別系統(tǒng),顯得尤為重要。
針對(duì)以上的行業(yè)需求,飛槳聯(lián)合Intel提供了一套基于飛槳圖像分類開(kāi)發(fā)套件PaddleClas和OpenVINO?工具套件的生鮮與零售商品識(shí)別系統(tǒng),滿足商品識(shí)別場(chǎng)景需要兼顧擴(kuò)展性的要求。在此方案中,只需訓(xùn)練一套模型,在后續(xù)使用過(guò)程中,無(wú)需頻繁重新訓(xùn)練模型,僅需要在檢索庫(kù)中,配置少量有代表性的新增產(chǎn)品圖像,就能夠很好地解決新增商品問(wèn)題,同時(shí)也無(wú)需添加輔助設(shè)備,極大降低了維護(hù)及使用成本。
項(xiàng)目鏈接
https://aistudio.baidu.com/projectdetail/6649316
本項(xiàng)目中,飛槳聯(lián)合Intel建設(shè)了生鮮與零售商品識(shí)別系統(tǒng)產(chǎn)業(yè)實(shí)踐范例,基于PP-ShiTuV2 Pipeline詳解模型訓(xùn)練,新品種入庫(kù),以及如何基于Intel OpenVINO?快速部署,優(yōu)化CPU推理任務(wù)性能,極致利用Intel x86硬件資源。
場(chǎng)景難度
物體形狀千差萬(wàn)別,如何找到待檢測(cè)的商品?
商品及生鮮品種繁多,如何準(zhǔn)確識(shí)別對(duì)應(yīng)種類?
使用過(guò)程中,商品及生鮮品類迭代速度快,如何減少模型更新成本?
方案設(shè)計(jì)
如圖所示,針對(duì)以上問(wèn)題,我們使用圖中的Pipeline以解決上述問(wèn)題。整個(gè)Pipeline中,主要分為三部分:
主體檢測(cè)
檢測(cè)出待識(shí)別的商品,去掉冗余的背景信息,提高生鮮品識(shí)別的精度;
特征提取
將待識(shí)別的生鮮品圖像進(jìn)行提取特征;
檢索模塊
將待檢索的特征與庫(kù)中的生鮮品特征比對(duì),得到待檢索生鮮品的標(biāo)簽。

模型優(yōu)化策略和效果
主體檢測(cè)
主題檢測(cè)是目前應(yīng)用非常廣泛的一種檢測(cè)技術(shù),它指的是檢測(cè)出圖片中一個(gè)或者多個(gè)主體的坐標(biāo)位置,然后將圖像中的對(duì)應(yīng)區(qū)域裁剪下來(lái)進(jìn)行識(shí)別。主體檢測(cè)是識(shí)別任務(wù)的前序步驟,輸入圖像經(jīng)過(guò)主體檢測(cè)后再進(jìn)行識(shí)別,可以過(guò)濾復(fù)雜背景,有效提升識(shí)別精度??紤]到檢測(cè)速度、模型大小、檢測(cè)精度等因素,最終選擇 PaddleDetection 自研的輕量級(jí)模型 PicoDet-LCNet_x2_5 作為PP-ShiTuV2 的主體檢測(cè)模型,PicoDet系列模型融合了ATSS、Generalized Focal Loss、余弦學(xué)習(xí)率策略、Cycle-EMA、輕量級(jí)檢測(cè) head等優(yōu)化算法,此外為了更好地兼顧檢測(cè)速度與效果,PicoDet-LCNet_x2_5將neck 中的 CSP module 換成了LCNet module。
特征提取
特征提取是圖像識(shí)別中的關(guān)鍵一環(huán),它的作用是將輸入的圖片轉(zhuǎn)化為固定維度的特征向量,用于后續(xù)的向量檢索??紤]到特征提取模型的速度、模型大小、特征提取性能等因素,最終選擇 PaddleClas 自研的PPLCNetV2_base作為特征提取網(wǎng)絡(luò)。PP-LCNetV2 模型是在 PP-LCNetV1 的基礎(chǔ)上優(yōu)化而來(lái),主要使用重參數(shù)化策略組合了不同大小卷積核的深度卷積,并優(yōu)化了點(diǎn)卷積、Shortcut等。相比 PP-ShiTuV1 所使用的 PPLCNet_x2_5, PPLCNetV2_base 基本保持了較高的分類精度,并節(jié)省了40%的推理時(shí)間。
模型部署
使用OpenVINO?作為推理后端,倍數(shù)級(jí)提升任務(wù)在CPU側(cè)的處理速度。
采用通用性極高的x86的平臺(tái)作為模型部署設(shè)備,可充分利用并實(shí)現(xiàn)多任務(wù)負(fù)載,無(wú)需購(gòu)置額外的加速卡設(shè)備,大大節(jié)省項(xiàng)目成本。
本項(xiàng)目的最終部署環(huán)境為:Intel x86平臺(tái)設(shè)備。考慮開(kāi)發(fā)便捷性,本次示例使用python部署開(kāi)發(fā)環(huán)境,該系統(tǒng)是商品檢測(cè)、商品特征提取以及商品檢索三大任務(wù)所構(gòu)建的Pipeline,可以實(shí)現(xiàn)基于本地?cái)?shù)據(jù)倉(cāng)庫(kù)的輕量化零售商品識(shí)別系統(tǒng)。在星河社區(qū)也提供了完整的使用示例與開(kāi)發(fā)說(shuō)明,可參考該教程快速學(xué)習(xí),并針對(duì)實(shí)際項(xiàng)目進(jìn)行開(kāi)發(fā)和集成。

精彩課程預(yù)告
為了讓小伙伴們更便捷地應(yīng)用范例教程,OpenVINO?軟件開(kāi)發(fā)工程師Ethan將于8月31日(周四)19:00為大家深度解析從數(shù)據(jù)準(zhǔn)備、方案設(shè)計(jì)到模型優(yōu)化部署的開(kāi)發(fā)全流程,手把手教大家進(jìn)行代碼實(shí)踐。想要關(guān)注直播、加入技術(shù)交流群,請(qǐng)?jiān)陲w槳公眾號(hào)發(fā)布的本推文中獲取相關(guān)信息。
