強力推薦!飛槳產業級PaddleCV最新全景圖
- 2019 年 10 月 8 日
- 筆記
導讀:PaddleCV是飛槳開源的產業級CV工具與預訓練模型集,提供了依託於百度實際產品打磨,能夠極大地方便 CV 研究者和工程師快速應用。使用者可以使用PaddleCV 快速實現影像分類、目標檢測、影像分割、影片分類和動作定位、影像生成、度量學習、場景文字識別和關鍵點檢測8大類任務,並且可以直接使用百度開源工業級預訓練模型進行快速應用於工業、農業、醫療、零售、媒體、駕駛等領域。用戶在極大地減少研究和開發成本的同時,也可以獲得更好的基於產業實踐的應用效果。
一張圖了解PaddleCV!

https://github.com/PaddlePaddle/models/tree/v1.5.1/PaddleCV
PaddleCV全解讀
1. 影像分類
影像分類是根據影像的語義資訊對不同類別影像進行區分,是電腦視覺中重要的基礎問題,是物體檢測、影像分割、物體跟蹤、行為分析、人臉識別等其他高層視覺任務的基礎,在許多領域都有著廣泛的應用。如:安防領域的人臉識別和智慧影片分析等,交通領域的交通場景識別,互聯網領域基於內容的影像檢索和相冊自動歸類,醫學領域的影像識別等。
在深度學習時代,影像分類的準確率大幅度提升,在影像分類任務中,我們向大家介紹了如何在經典的數據集ImageNet上,訓練常用的模型,包括AlexNet、VGG、GoogLeNet、ResNet、Inception-v4、MobileNet、SE-ResNeXt、ShuffleNet模型,也開源了預訓練的模型方便用戶下載使用。
經典的分類模型架構圖:

AlexNet結構圖

VGG系列結構圖

GoogleNet結構圖

ResNet系列結構圖

Inception-v4結構圖

MobileNet核心結構圖

SE-ResNeXt系列核心結構圖

ShuffleNet系列結構圖
性能評測(在ImageNet-2012驗證集合上的top-1/top-5精度):

影像分類系列模型評估結果
傳送門 :https://github.com/PaddlePaddle/models/tree/v1.5.1/PaddleCV/image_classification
2. 目標檢測
目標檢測任務的目標是給定一張影像或是一個影片幀,讓電腦找出其中所有目標的位置,並給出每個目標的具體類別。對於人類來說,目標檢測是一個非常簡單的任務。然而,電腦能夠「看到」的是影像被編碼之後的數字,很難解影像或是影片幀中出現了人或是物體這樣的高層語義概念,也就更加難以定位目標出現在影像中哪個區域。與此同時,由於目標會出現在影像或是影片幀中的任何位置,目標的形態千變萬化,影像或是影片幀的背景千差萬別,諸多因素都使得目標檢測對電腦來說是一個具有挑戰性的問題。
在目標檢測任務中,經典的模型包括SSD、PyramidBox、Faster RCNN、MaskRCNN等。

SSD目標檢測模型結構

Pyramidbox 人臉檢測模型

YOLOv3 結構

Faster RCNN 結構

Mask RCNN結構
性能評測

傳送門:
https://github.com/PaddlePaddle/models/tree/v1.5.1/PaddleCV/PaddleDetection
3. 影像語義分割
影像語意分割顧名思義是將影像像素按照表達的語義含義的不同進行分組/分割,影像語義是指對影像內容的理解,例如,能夠描繪出什麼物體在哪裡做了什麼事情等,分割是指對圖片中的每個像素點進行標註,標註屬於哪一類別。近年來用在無人車駕駛技術中分割街景來避讓行人和車輛、醫療影像分析中輔助診斷等。分割任務主要分為實例分割和語義分割,實例分割是物體檢測加上語義分割的綜合體,上文介紹的MaskRCNN是實例分割的經典網路結構之一。在影像語義分割任務中,我們介紹了兼顧準確率和速度的ICNet,DeepLab中最新、執行效果最好的DeepLab v3+。

DeepLabv3+基本結構

ICNet網路結構

U-Net基本結構
性能評測


傳送門:
https://github.com/PaddlePaddle/PaddleSeg
4. 影片分類
影片分類是影片理解任務的基礎,與影像分類不同的是,分類的對象不再是靜止的影像,而是一個由多幀影像構成的、包含語音數據、包含運動資訊等的影片對象,因此理解影片需要獲得更多的上下文資訊,不僅要理解每幀影像是什麼、包含什麼,還需要結合不同幀,知道上下文的關聯資訊。影片分類方法主要包含基於卷積神經網路、基於循環神經網路、或將這兩者結合的方法。
在影片分類任務中,我們介紹影片分類方向的多個主流領先模型,其中Attention LSTM,Attention Cluster和NeXtVLAD是比較流行的特徵序列模型,TSN和StNet是兩個End-to-End的影片分類模型。Attention LSTM模型速度快精度高,NeXtVLAD是2nd-Youtube-8M比賽中最好的單模型, TSN是基於2D-CNN的經典解決方案。Attention Cluster和StNet是百度自研模型,分別發表於CVPR2018和AAAI2019,是Kinetics600比賽第一名中使用到的模型。

AttentionCluster模型結構

Attention LSTM模型結構

NeXtVLAD模型結構

StNet模型結構

TSN模型結構
性能評測
基於Youtube-8M數據集的影片分類模型評估結果

基於Kinetics數據集的影片分類模型 評估結果

基於ActivityNet的動作定位模型:

傳送門:
https://github.com/PaddlePaddle/models/tree/v1.5.1/PaddleCV/PaddleVideo
5. 影像生成
影像生成是指根據輸入向量,生成目標影像。這裡的輸入向量可以是隨機的雜訊或用戶指定的條件向量。具體的應用場景有:手寫體生成、人臉合成、風格遷移、影像修復、超分重建等。當前的影像生成任務主要是藉助生成對抗網路(GAN)來實現。生成對抗網路(GAN)由兩種子網路組成:生成器和識別器。生成器的輸入是隨機雜訊或條件向量,輸出是目標影像。識別器是一個分類器,輸入是一張影像,輸出是該影像是否是真實的影像。在訓練過程中,生成器和識別器通過不斷的相互博弈提升自己的能力。
在影像生成任務中,我們介紹了如何使用DCGAN和ConditioanlGAN來進行手寫數字的生成,另外還介紹了用於風格遷移的CycleGAN。

Pix2Pix生成網路結構圖

ConditioanlGAN結構

DCGAN結構

CycleGAN 結構

AttGAN的網路結構[8]


StarGAN的生成網路結構[上]和判別網路結構[下]

STGAN的網路結構[9]
傳送門:
https://github.com/PaddlePaddle/models/tree/v1.5.1/PaddleCV/PaddleGAN
6. 度量學習
度量學習也稱作距離度量學習、相似度學習,通過學習對象之間的距離,度量學習能夠用於分析對象時間的關聯、比較關係,在實際問題中應用較為廣泛,可應用於輔助分類、聚類問題,也廣泛用於影像檢索、人臉識別等領域。以往,針對不同的任務,需要選擇合適的特徵並手動構建距離函數,而度量學習可根據不同的任務來自主學習出針對特定任務的度量距離函數。度量學習和深度學習的結合,在人臉識別/驗證、行人再識別(human Re-ID)、影像檢索等領域均取得較好的性能,在這個任務中我們主要介紹了基於Fluid的深度度量學習模型,包含了三元組、四元組等損失函數。

傳送門 :https://github.com/PaddlePaddle/models/tree/v1.5.1/PaddleCV/metric_learning
7. 場景文字識別
許多場景影像中包含著豐富的文本資訊,對理解影像資訊有著重要作用,能夠極大地幫助人們認知和理解場景影像的內容。場景文字識別是在影像背景複雜、解析度低下、字體多樣、分布隨意等情況下,將影像資訊轉化為文字序列的過程,可認為是一種特別的翻譯過程:將影像輸入翻譯為自然語言輸出。場景影像文字識別技術的發展也促進了一些新型應用的產生,如通過自動識別路牌中的文字幫助街景應用獲取更加準確的地址資訊等。
在場景文字識別任務中,我們介紹如何將基於CNN的影像特徵提取和基於RNN的序列翻譯技術結合,免除人工定義特徵,避免字元分割,使用自動學習到的影像特徵,完成字元識別。當前,介紹了CRNN-CTC模型和基於注意力機制的序列到序列模型。

CRNN-CTC模型結構

基於注意力機制的序列到序列模型結構:

OCR模型評估結果
傳送門 :https://github.com/PaddlePaddle/models/tree/v1.5.1/PaddleCV/ocr_recognition
8. 人體關鍵點檢測
人體關鍵點檢測,通過人體關鍵節點的組合和追蹤來識別人的運動和行為,對於描述人體姿態,預測人體行為至關重要,是諸多電腦視覺任務的基礎,例如動作分類,異常行為檢測,以及自動駕駛等等,也為遊戲、影片等提供新的交互方式。
在人體關鍵點檢測任務中,我們介紹了網路結構簡單的coco2018關鍵點檢測項目的亞軍方案。
Simple Baselines for Human Pose Estimation in Fluid,coco2018關鍵點檢測項目的亞軍方案,沒有華麗的技巧,僅僅是在ResNet中插入了幾層反卷積,將低解析度的特徵圖擴張為原圖大小,以此生成預測關鍵點需要的Heatmap。沒有任何的特徵融合,網路結構非常簡單,但是達到了state of theart 效果。
影片:Demo: BrunoMars – That』s What I Like [官方影片]
傳送門:
https://github.com/PaddlePaddle/models/tree/v1.5.1/PaddleCV/human_pose_estimation
歷史PaddleCV文章傳送門:
- PaddleCV-1. 百度PaddlePaddle開源影片分類模型Attention Cluster,曾奪挑戰賽冠軍
- PaddleCV-2. 電腦視覺八大任務全概述:PaddlePaddle工程師詳解熱門視覺模型PaddleCV-3. ActivityNet Kinetics奪冠 | PaddlePaddle影片聯合時空建模方法開源
- PaddleCV-4. PaddlePaddle實戰 | 經典目標檢測方法Faster R-CNN和Mask R-CNN
- PaddleCV-5. PaddlePaddle實戰 | WIDER FACE三料冠軍 – Pyramidbox模型實現
- PaddleCV-6. 基於PaddlePaddle的圖片分類實戰 |深度學習基礎任務教程系列(一)
- PaddleCV-7. PaddlePaddle升級解讀 |開源業界首個影片識別工具集,提供七個預訓練模型
- PaddleCV-8. 勞動節致敬特別的你-YOLO v3 實現紅脂大小蠹蟲識別監測
- PaddleCV-9. 勞動節致敬特別的你 – Faster R-CNN實現精準農業遙感監測
- PaddleCV-10. 勞動節致敬特別的你 – ICNET 實現工業零件快速檢測
- PaddleCV-11. 勞動節致敬特別的你 – 影片識別工具集讓影片分類告別人工
- PaddleCV-12. 快到沒朋友的YOLO v3有了PaddlePaddle實現
- PaddleCV-13. 基於PaddlePaddle的人體關鍵點檢測(SimpleBaselines)
- PaddleCV-14. 飛槳實戰 | DCGAN生成手寫數字圖片全解析
- PaddleCV-15. 飛槳帶你玩轉目標檢測
- PaddleCV-16. 飛槳帶你使用度量學習,提升人臉識別準確率
- PaddleCV-17. 開源 | Google AI地標檢索識別競賽雙料大獎,獲獎方案全解析
- PaddleCV-18. 不止有top-1近80%的ResNet50,基於飛槳(PaddlePaddle)的多種分類預訓練模型強勢發布
- PaddleCV-19. 飛槳PaddleDetection物體檢測統一框架解讀詳解
- PaddleCV-20. 業界首個影片識別與定位工具集PaddleVideo重磅更新
- PaddleCV-21. 神奇的變臉術|飛槳PaddleGAN重磅發布(附程式碼)
- PaddleCV-22. 自動分類打標籤!飛槳TSM模型幫你做影片理解
- PaddleCV-23. 影片分類哪家強?高效NeXtVLAD在飛槳!
- PaddleCV-24. 如何讓機器讀懂圖片上的文字?飛槳助您快速了解OCR
- PaddleCV-25. 超多,超快,超強!百度飛槳發布工業級影像分割利器PaddleSeg
想與更多的深度學習開發者交流,請加入飛槳官方QQ群:796771754。
如果您想詳細了解更多相關內容,請參閱以下文檔。
官網地址:https://www.paddlepaddle.org.cn
項目地址:
https://github.com/PaddlePaddle/models/tree/v1.5.1/PaddleCV