目標(biāo)檢測技術(shù)作為視覺技術(shù)屆的頂梁柱,不僅單兵作戰(zhàn)在人臉、車輛、商品、缺陷檢測等場景中有著出色的表現(xiàn),也是文本識別、圖片搜索、視頻分析、目標(biāo)跟蹤等復(fù)合技術(shù)的核心模塊,應(yīng)用場景可謂是遍地開花。
各界開發(fā)人員對高精度、高效率的目標(biāo)檢測算法和便利高效的開發(fā)、配置方式的追求是終極的。然而,該行業(yè)缺乏全面兼顧高性能算法、便捷開發(fā)、高效培訓(xùn)和完善部署的開源目標(biāo)測試項目。百度飛槳端到端目標(biāo)檢測開發(fā)套件PaddleDetection重磅升級為2.0版本后,終于全面兼顧業(yè)界開發(fā)者的需求,成長為中國產(chǎn)業(yè)實踐中目標(biāo)檢測領(lǐng)域一柄重器。
讓我們先來概覽一下PaddleDetection2.0本次升級內(nèi)容:
一、全明星算法陣容:
新增超越Y(jié)OLOv4、YOLOv5 的PP-YOLOv2,1.3M 超超超輕量目標(biāo)檢測算法PP-YOLO Tiny,全面領(lǐng)先同類框架的RCNN系列算法,以及SOTA 的Anchor Free算法:PAFNet(Paddle Anchor Free)
二、全面功能覆蓋:
除全系列通用目標(biāo)檢測算法外,額外覆蓋旋轉(zhuǎn)框檢測、實例分割、行人檢測、人臉檢測、車輛檢測等垂類任務(wù)。
三、易用性全面提高:
全面支持動態(tài)圖開發(fā)、壓縮、配置等全過程方案,大大提高了用戶開發(fā)的易用性,加快了算法產(chǎn)業(yè)的應(yīng)用落地速度。
本篇也詳細(xì)解讀了paddledection2.0的升級內(nèi)容,初步體驗了該檢查重器的殺傷力:
一、更好的算法
1.PPP-YOLOv2,比YO4、YOLOV4更強!
自去年P(guān)P-YOLO成為產(chǎn)業(yè)實踐的最佳目標(biāo)檢測模型以來,隨著PaddleDetection2.0的發(fā)布,PP-YOLO也發(fā)布了v2版本。繼續(xù)v1版本的理念,PP-YOLOv2在產(chǎn)業(yè)實踐中需要考慮算法的精度和速度,PP-YOLOv2(R50)mAP從45.9%達(dá)到49.5%,與v1相比提高了3.6個百分點,F(xiàn)PS達(dá)到了106.5FPS使用RestNet101作為骨架網(wǎng)絡(luò),PP-YOLOv2(R101)的mAP達(dá)到50.3%,比同等精度的YOLOv5x快15.9%。
不需要比較眼花繚亂的目標(biāo)檢查算法,使用PP-YOLOv2即可!
隨著物聯(lián)網(wǎng)的快速發(fā)展,端芯片配置輕量化深度學(xué)習(xí)算法的需求越來越強烈,基于此,PaddlDettion2.0經(jīng)過深度優(yōu)化,推出了體積僅為1.3M的超輕量目標(biāo)檢測算法PP-YOLOTiny。如下表所示,在cocoval2017數(shù)據(jù)集中測試中,輸入尺寸320px版本,mAP達(dá)到20.6,單張預(yù)測延遲10.83ms(92.3FPS),輸入尺寸416px版本,mAP達(dá)到22.7,單張預(yù)測延遲15.48ms(64.6FPS)。它比YOLO-Fastest和NanoDet。
3.RCNN系列算法全面超越同類開發(fā)工具!
除YOLO系列外,PaddleDetection2.0還提升了目標(biāo)檢測的基礎(chǔ)兩個階段系列算法-RCNN。表1可以清楚地看到RCNN系列模型在PaddleDetection培訓(xùn),比mmDetection和Detectron2更短的時間內(nèi)獲得更高的精度。
表1:RCNN系列模型在PaddleDetection、mmDetection和Detectron2開發(fā)套件下,在COCO 2017 val集上的mAP對比結(jié)果
4. SOTA Anchor Free算法:PAFNet(Paddle Anchor Free)amp; PAFNet-Lite
相較于SSD、RCNN等系列各種Anchor-Based算法,Anchor-Free算法擁有更少的超參、更易配置、對多尺度目標(biāo)檢測效果更好等優(yōu)點,但也存在檢測結(jié)果不穩(wěn)定、訓(xùn)練時間長等問題,是近些年科研領(lǐng)域的熱點方向。飛槳當(dāng)然一直緊跟全球科研動向,基于TTFNet進(jìn)行多維度的優(yōu)化,推出了在COCO數(shù)據(jù)集精度42.2,V100預(yù)測速度67FPS, 處于anchor free領(lǐng)域SOTA水平的PAFNet(Paddle Anchor Free)算法!同時提供移動端輕量級模型PAFNet-Lite,COCO數(shù)據(jù)集精度達(dá)到23.9,麒麟990芯片延時26ms。
圖 4 PAFNet網(wǎng)絡(luò)結(jié)構(gòu)
5. 旋轉(zhuǎn)框檢測算法S2ANet
在一般的的目標(biāo)檢測項目中,我們通常使用水平矩形框為檢測框?qū)δ繕?biāo)進(jìn)行框定。在產(chǎn)業(yè)場景中,如質(zhì)量檢查和遙感圖像,目標(biāo)通常是在任何方向排列和高寬比差異較大的情況下,在使用水平矩形框架時,會有大量空白的非目標(biāo)區(qū)域,并且會丟失目標(biāo)的方向信息,例如圖5的精度不能滿足業(yè)務(wù)需求。旋轉(zhuǎn)框的目標(biāo)檢測算法可以很好地解決這樣的問題,在檢測四邊形矩形框的同時可以獲得旋轉(zhuǎn)角度。PaddleDetection2.0本次升級增加了性價比高的旋轉(zhuǎn)框檢測算法-S2ANet,開發(fā)人員可以直接采用或進(jìn)一步開發(fā)。
到目前為止,Paffffdledection包括19種共計231種模型算法,其中動態(tài)圖70種,靜態(tài)圖161種。其中包括PP-YOLO、RCNN、PAFNet系列等明星算法,復(fù)蓋通用目標(biāo)檢查、面部檢查、行人檢查、車輛檢查、旋轉(zhuǎn)框檢查、實例分割任務(wù),由于飛行框架和PaddleDetection套件本身的設(shè)計,算法訓(xùn)練的效率也超過了同類開發(fā)工具
二、更好的易用性
1. 動態(tài)圖開發(fā),靈活調(diào)試代碼
PaddleDetection 2.0基于PaddlePaddle 2.0.1版本,默認(rèn)使用動態(tài)圖進(jìn)行開發(fā),在這種模式下,每次執(zhí)行一個運算,可以立即得到結(jié)果,而不是事先定義好網(wǎng)絡(luò)結(jié)構(gòu)再執(zhí)行。用戶還可以快速獲取網(wǎng)絡(luò)結(jié)構(gòu)、各層輸入輸出、對應(yīng)梯度信息等,對應(yīng)快速調(diào)整。這樣用戶可以更快地組織代碼,更容易地調(diào)整程序。
2.更便捷的安裝方式
除了傳統(tǒng)的git clone方式,PaddleDetection 2.0這次還新增了whl包的發(fā)布,用戶可以直接通過pip install的方式安裝,由此可以通過import ppdet的方式調(diào)用PaddleDetection 2.0下的API快速完成自己的檢測任務(wù)。
三、訓(xùn)練、壓縮、部署全流程打通
為了進(jìn)一步加速深度學(xué)習(xí)算法的產(chǎn)業(yè)落地,PaddleDetection 2.0動態(tài)圖順暢打通了算法的全流程部署。
圖7 PPDet全流程方案
在完成模型訓(xùn)練過程中或之后,PaddleDetection2.0方便支持開發(fā)者使用PaddleSlim對算法進(jìn)行量化、蒸餾、裁剪等壓縮優(yōu)化,并支持快速將模型由動態(tài)圖轉(zhuǎn)化為靜態(tài)圖,實現(xiàn)模型的高效多平臺預(yù)測部署。
1.模型壓縮能力
為了滿足開發(fā)者對計算量、模型體積、運算速度等的終極追求,在PaddleDetection2.0動態(tài)圖模型下,在PaddleSlim的基礎(chǔ)上,可以根據(jù)PadleSlim追加多種模型的壓縮能力,包括裁剪、量化、蒸餾、蒸餾共同戰(zhàn)略的壓縮方案從下表可以看出,量化戰(zhàn)略給模型帶來1.7%的精度提高,同時體積壓縮3.71倍,速度提高1.46倍!采用蒸餾裁剪的聯(lián)合戰(zhàn)略,在精度幾乎沒有損傷的情況下,體積壓縮了3.05倍,加速了1.58倍!
2.top預(yù)測配置能力
得益于飛槳預(yù)測庫系列產(chǎn)品的Paddlenference、Paddlelite和PaffffdleServing的能力,Paddledtection2.0支持開發(fā)人員快速在Linux、Windows、News、Veten等多個系統(tǒng)中,同時提供了主流預(yù)測方法和計算法。另外,適應(yīng)TensorRT,支持TensorRT動態(tài)尺寸輸入和TensorRTINT8的量化預(yù)測,全面支持用戶加速硬件。
小結(jié):
本次Paddledtion2.0重磅升級,為開發(fā)人員提供目標(biāo)檢測領(lǐng)域的新開發(fā)體驗,mapp50.3的P-YOLOv2超越Y(jié)OLOv4、YOLOV5、1.3M超輕量PP-YOLOLOTin超越Y(jié)OF領(lǐng)域的新開發(fā)體驗動態(tài)圖的升級和全過程方案的開通大大提高了用戶開發(fā)的易用性。無論你是學(xué)術(shù)科研人員還是產(chǎn)業(yè)開發(fā)人員,無論你是剛?cè)腴T的萌新,還是已經(jīng)成為大神,PaddleDetection2.0都能更快地進(jìn)行算法實驗,獲得高性能的目標(biāo)檢測算法,投入產(chǎn)業(yè)實用。
如此精心制作的高水平產(chǎn)品,期待業(yè)界開發(fā)者參與共同建設(shè)!
課程預(yù)告
百度槳幫助您快速、深入、全面了解目標(biāo)檢測技術(shù),5月13日、14日特別開設(shè)目標(biāo)檢測2日直播課程。資深研究開發(fā)工程師教授多年煉丹經(jīng)驗,配套真正的工業(yè)落地場景案例,最先進(jìn)的優(yōu)化方式、訓(xùn)練技術(shù)、優(yōu)化技術(shù)和工業(yè)配置方案,決不能錯過!感興趣的學(xué)生可以參加QQ群1136406895,了解更多課程和產(chǎn)品動態(tài)。