0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于TensorFlow Lite的幾項技術更新

Tensorflowers ? 來源:TensorFlow ? 作者:Yu-hui Chen ? 2021-09-23 15:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

自年初在 Google I/O 大會上宣布推出 MoveNet 以來,我們已經收到了眾多積極反饋和功能請求。今天,我們很高興能與大家分享以下幾項技術更新:

MoveNet 的 TensorFlow Lite 版本現(xiàn)已在 TensorFlow Hub 上推出。我們對該版本進行了一些可提升準確率的更新,并使其與硬件加速器兼容,其中包括 GPU 和獲得 Android NN API 支持的其他加速器。

TensorFlow Hub

http://hub.tensorflow.google.cn/s?deployment-format=lite&q=movenet

我們發(fā)布了可在 Android 環(huán)境下使用 Raspberry Pi 的全新姿態(tài)預測示例,可讓您在移動設備和 IoT 設備上試用 MoveNet。(即將支持 iOS 系統(tǒng))

Android

https://github.com/tensorflow/examples/tree/master/lite/examples/pose_estimation/android

Raspberry Pi

https://github.com/tensorflow/examples/tree/master/lite/examples/pose_estimation/raspberry_pi

同時,我們還發(fā)布了 Colab notebook,旨在教會您如何利用 MoveNet 對自定義姿勢進行分類(例如,識別不同的瑜伽姿勢)。您可以在上文提到的 Android、iOS 和 Raspberry Pi 應用中試用姿態(tài)分類。

notebook

https://tensorflow.google.cn/lite/tutorials/pose_classification

什么是姿態(tài)預測?

姿態(tài)預測是一項機器學習任務,即通過預測圖像或視頻中特定身體部位(關鍵點)的空間位置來預測人物姿態(tài)。MoveNet 是目前最先進的姿態(tài)預測模型,能夠檢測以下 17 個關鍵點:

鼻子

左眼和右眼

左耳和右耳

左肩和右肩

左肘和右肘

左腕和右腕

左臀和右臀

左膝和右膝

左腳踝和右腳踝

我們發(fā)布了以下兩個 MoveNet 版本:

MoveNet.Lightning 模型體積更小、速度更快,但在準確性方面不如 Thunder 模型。該模型能在現(xiàn)代智能手機上實時運行。

MoveNet.Lightning

http://hub.tensorflow.google.cn/google/movenet/singlepose/lightning/

MoveNet.Thunder 模型準確性更高,但體積較 Lightning 模型而言更大,速度也相對較慢。

MoveNet.Thunder

http://hub.tensorflow.google.cn/google/movenet/singlepose/thunder/

各種基準數(shù)據(jù)集(參見下文表中的評估/基準結果)中的數(shù)據(jù)表明,MoveNet 模型的表現(xiàn)優(yōu)于我們先前的 TensorFlow Lite 姿態(tài)預測模型 Posenet(論文、文章和模型)。

論文

https://arxiv.org/abs/1803.08225

文章

https://medium.com/tensorflow/track-human-poses-in-real-time-on-android-with-tensorflow-lite-e66d0f3e6f9e

模型

https://storage.googleapis.com/download.tensorflow.org/models/tflite/posenet_mobilenet_v1_100_257x257_multi_kpt_stripped.tflite

以上 MoveNet 模型支持 TensorFlow Lite FP16 和 INT8 量化格式,可最大限度與硬件加速器兼容。

此次 MoveNet 版本可識別輸入圖像中的單一姿態(tài)。如果圖像中的人數(shù)超過一個,該模型會通過剪裁算法將盡可能地聚焦在離圖像中心最近的人物身上。同時,我們還采用了智能剪裁算法,來提高視頻檢測的準確率。簡而言之,該模型將放大前一幀中檢測到姿態(tài)的區(qū)域,繼而查看更細節(jié)的部分,然后根據(jù)當前幀做出更準確的預測。

如果您想深入了解 MoveNet 的實現(xiàn)過程,請查看之前發(fā)布的文章,其中包括 MoveNet 模型架構和其訓練時用到的數(shù)據(jù)集。

Android 與 Raspberry Pi

的示例應用

我們發(fā)布了全新的姿態(tài)預測示例應用,便于您在所選平臺上快速試用不同的姿態(tài)預測模型(MoveNet Lightning、MoveNet Thunder 和 Posenet)。

Android 示例

iOS 示例

Raspberry Pi 示例

在 Android 和 iOS 示例中,您也可以選擇使用加速器(GPU、NNAPI 或 CoreML)來運行姿態(tài)預測模型。

Android 示例應用屏幕截圖。圖像來自 Pixabay

MoveNet 性能

我們已對 MoveNet 進行優(yōu)化,使其能在由 TensorFlow Lite 提供支持的硬件加速器(包括 GPU 和獲得 Android NN API 支持的加速器)上更好地運行。MoveNet 的性能基準結果可助您選擇最適合您用例的運行時配置。

模型大小 (MB)mAP*延遲時間 (ms) **

Pixel 5 -

CPU 4 線程Pixel 5 - GPURaspberry Pi 4 -

CPU 4 線程

MoveNet.

Thunder

(FP16 量化)12.6MB72.0155ms45ms594ms

MoveNet.

Thunder

(INT8 量化)7.1MB68.9100ms52ms251ms

MoveNet.

Lightning

(FP16 量化)4.8MB63.060ms25ms186ms

MoveNet.

Lightning

(INT8 量化)2.9MB57.452ms28ms95ms

PoseNet(MobileNetV1

主干,F(xiàn)P32)13.3MB45.680ms40ms338ms

* 我們在 COCO 關鍵點數(shù)據(jù)集的子集上測量 mAP,并在其中篩選并裁剪每張圖像,使其只包含一個人像。

** 在持續(xù)負載下,我們使用帶有 TensorFlow 2.5 的 Android 和 Raspberry Pi 示例應用測量端到端的延遲時間。

選擇 Lightning 或 Thunder 模型。首先,您應該了解 Lightning 模型的準確率能否滿足您的用例。

對于您的用例而言,如果 Lightning INT8 模型的準確率足夠高,則可以選擇該模型,因為它是系列模型中體積最小、速度最快的模型。模型的越快則意味著其能耗越少。

如果準確率對于您的用例而言至關重要,Thunder FP16 模型則是理想之選。

選擇加速器。加速器的性能會因不同的制造商制造的 Android 設備而異。

CPU 是最為安全便捷的選擇,因為可以肯定的是,CPU 幾乎可以在任何能運行 TensorFlow Lite 的 Android 設備上正常工作。但在通常情況下,相較于在加速器上運行模型,在 CPU 運行模型時速度更慢,且耗能更高。所有 MoveNet 模型都能在 CPU 上運行良好,因此您應該根據(jù)自身的準確率需求選擇模型。

GPU 是應用最廣泛的加速器,能夠提供出色的性能提升。如果您想使用 GPU,F(xiàn)P16 量化模型則是理想之選。

Android NNAPI 是一種能在 Android 設備上支持其他 ML 加速器的便捷方式。如果您已經將 CPU 或 GPU 用于其他工作負載,并且用戶設備運行版本為 Android 10 或更高版本,則您可以選擇滿足您準確率需求的模型,并讓 NNAPI 選擇最適合您模型的路徑。

如果您是 IoT 開發(fā)者,不妨使用 Coral 來提升推理速度。請在此處查看 Coral 基準數(shù)據(jù)。

此處

https://coral.ai/models/pose-estimation/

對模型進行無線部署,而非將其捆綁在應用的二進制文件中。

由于 Android 生態(tài)系統(tǒng)的多元化,我們無法提供適用于所有用戶的統(tǒng)一模型。對于使用低端設備的用戶而言,Lightning INT8 模型是最佳選擇,因為該模型速度最快,且能耗最少。然而對于使用高端設備的用戶而言,不妨憑借 Thunder FP16 模型提供更為出色的性能。如果您想根據(jù)用戶設備更改模型,則可以考慮使用免費版Firebase ML 托管您的模型,而非將所有打算使用的模型捆綁到應用中。如果用戶開始使用需要 TFLite 模型的應用功能,則您可以編寫邏輯,為每個用戶設備下載最佳模型。

Firebase ML

https://firebase.google.com/docs/ml/manage-hosted-models

姿態(tài)分類

TensorBoard 是 TensorFlow 的可視化工具包。通過將 TensorFlow Quantum 模型與 TensorBoard 進行集成,您將獲得許多開箱可用的模型可視化數(shù)據(jù),例如訓練損失和準確性、可視化模型圖和程序分析。

為簡化姿態(tài)分類流程,我們還發(fā)布了 Colab notebook,該工具能夠教您如何通過結合 MoveNet 和 TensorFlow Lite,并根據(jù)自定義姿態(tài)數(shù)據(jù)集來訓練自定義姿態(tài)分類模型。這表示如果您想要識別瑜伽姿勢,您需要做的就是收集您想識別的姿態(tài)圖像并為其添加標簽,然后按照教程進行訓練,接著將瑜伽姿勢分類器部署到您的應用中。

姿態(tài)分類器由兩個階段構成:

1. 利用 MoveNet 檢測輸入圖像中的關鍵點。

2. 利用小型 TensorFlow Lite 模型,對已檢測到的關鍵點進行姿態(tài)分類。

利用 MoveNet 進行姿態(tài)分類的示例。輸入圖像來自 Pixabay

為訓練自定義姿態(tài)分類器,您需要準備姿態(tài)圖像,并將它們放入下圖所示的文件夾結構中。您可以根據(jù)想要識別的類別為每個子文件夾命名。然后運行 notebook 來訓練自定義姿態(tài)分類器,并將其轉換為 TensorFlow Lite 格式。

yoga_poses

|__ downdog

|______ 00000128.jpg

|______ 00000181.bmp

|______ 。..

|__ goddess

|______ 00000243.jpg

|______ 00000306.jpg

|______ 。..

。..

TensorFlow Lite 姿態(tài)分類模型非常小,其大小只有 30KB 左右。該模型從 MoveNet 中獲取標記點輸出,使姿態(tài)坐標標準化,并將坐標傳遞至幾個完全連接的層中。模型的輸出是一個概率列表,即姿態(tài)為每個已知的姿態(tài)類別。

TensorFlow Lite 姿態(tài)分類模型概覽

您可以在任何已發(fā)布的 Android 或 Raspberry Pi 姿態(tài)預測示例應用中試用姿態(tài)分類模型。

Android

https://github.com/tensorflow/examples/tree/master/lite/examples/pose_estimation/android

Raspberry Pi

https://github.com/tensorflow/examples/tree/master/lite/examples/pose_estimation/raspberry_pi#run-the-pose-classification-sample

未來計劃

我們的目標是提供核心的姿態(tài)預測技術以及動作識別引擎,讓開發(fā)者在此基礎上構建創(chuàng)新性應用。以下是我們目前正在積極研究的一些方向:

對 MoveNet 當前版本做出改進,使其能在同一轉接路徑中檢測多種姿態(tài)。

研發(fā)新型動作識別技術,使其能在多個幀上檢測姿態(tài)。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 模型
    +關注

    關注

    1

    文章

    3517

    瀏覽量

    50398
  • tensorflow
    +關注

    關注

    13

    文章

    330

    瀏覽量

    61170
  • TensorFlow Lite
    +關注

    關注

    0

    文章

    26

    瀏覽量

    747

原文標題:MoveNet 技術更新|基于 TensorFlow Lite 的姿態(tài)模型預測及分類

文章出處:【微信號:tensorflowers,微信公眾號:Tensorflowers】歡迎添加關注!文章轉載請注明出處。

收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【Milk-V Duo S 開發(fā)板免費體驗】開箱、介紹、系統(tǒng)更新

    地為張量處理單元核心提供高帶寬數(shù)據(jù)流。 為用戶提供了強大的深度學習模型編譯器和軟件 SDK 開發(fā)套件。 Caffe、Pytorch、ONNX、MXNet、TensorFlowLite)等主流深度學習
    發(fā)表于 06-28 09:18

    無法將Tensorflow Lite模型轉換為OpenVINO?格式怎么處理?

    Tensorflow Lite 模型轉換為 OpenVINO? 格式。 遇到的錯誤: FrontEnd API failed with OpConversionFailure:No translator found for TFLite_Detection_PostP
    發(fā)表于 06-25 08:27

    客戶說 為什么我們淘汰了某某某網(wǎng)關選擇深控技術? ——某跨國食品集團數(shù)字化轉型負責人訪談實錄

    深控技術憑借其成熟的維護成本直降68%的奧秘成本對比數(shù)據(jù)表和無限可能的協(xié)議兼容性實測,解決某乳品產線的“七年之癢”,讓企業(yè)從束手束腳到“無限可能”。此外,深控技術的邊緣處理能力也遠超某某品牌,支持TensorFlow
    的頭像 發(fā)表于 04-21 14:39 ?154次閱讀
    客戶說 為什么我們淘汰了某某某網(wǎng)關選擇深控<b class='flag-5'>技術</b>? ——某跨國食品集團數(shù)字化轉型負責人訪談實錄

    FlexBuild構建Debian 12,在“tflite_ethosu_delegate”上構建失敗了怎么解決?

    /workspace/tn_debian_FlexBuild 構建/components_lsdk2412/apps/ml/tflite/tensorflow/lite/tools/cmake
    發(fā)表于 04-01 06:53

    用樹莓派搞深度學習?TensorFlow啟動!

    介紹本頁面將指導您在搭載64位Bullseye操作系統(tǒng)的RaspberryPi4上安裝TensorFlow。TensorFlow是一個專為深度學習開發(fā)的大型軟件庫,它消耗大量資源。您可以在
    的頭像 發(fā)表于 03-25 09:33 ?437次閱讀
    用樹莓派搞深度學習?<b class='flag-5'>TensorFlow</b>啟動!

    可以使用OpenVINO?工具包將中間表示 (IR) 模型轉換為TensorFlow格式嗎?

    無法將中間表示 (IR) 模型轉換為 TensorFlow* 格式
    發(fā)表于 03-06 06:51

    OpenVINO?是否與TensorFlow集成支持Raspberry Pi?

    無法確定OpenVINO?是否與 TensorFlow* 集成支持 Raspberry Pi。
    發(fā)表于 03-05 08:26

    EE-217:更新ADSP-TS101S TigerSHARC EZ-KIT Lite固件

    電子發(fā)燒友網(wǎng)站提供《EE-217:更新ADSP-TS101S TigerSHARC EZ-KIT Lite固件.pdf》資料免費下載
    發(fā)表于 01-14 16:39 ?0次下載
    EE-217:<b class='flag-5'>更新</b>ADSP-TS101S TigerSHARC EZ-KIT <b class='flag-5'>Lite</b>固件

    請問為ADC選Driver主要要看哪幾項技術指標呢?

    to 20-Bit, Differential, High-Speed SAR Drivers,這時說THS4561就不適合做Delta-Sigma (ΔΣ) ADC Drivers嗎?請問為ADC選Driver主要要看哪幾項技術指標呢?
    發(fā)表于 12-16 06:00

    FLIR Ex Pro熱像儀的OTA無線更新技術

    手機換代迅速,系統(tǒng)更新頻繁 讓人不禁遐想:若熱像儀也能如此 檢測人員是否就能隨時掌握最新科技? 今日為您揭秘 FLIR Ex Pro熱像儀的OTA無線更新技術 它讓您的熱像儀輕松升級至最新版 確保您
    的頭像 發(fā)表于 12-04 11:39 ?512次閱讀

    連接器選型的幾項基本原則

    在連接器的領域連接器的選型是每個連接器人都必須要經歷的事情,在連接器選型的道路上有很多需要注意的東西,稍有不慎就會導致最終選擇的連接器無法投入使用。蓬生電子給大家整理了連接器選型的幾項基本原則,來
    的頭像 發(fā)表于 10-17 17:29 ?811次閱讀

    快速部署Tensorflow和TFLITE模型在Jacinto7 Soc

    電子發(fā)燒友網(wǎng)站提供《快速部署Tensorflow和TFLITE模型在Jacinto7 Soc.pdf》資料免費下載
    發(fā)表于 09-27 11:41 ?0次下載
    快速部署<b class='flag-5'>Tensorflow</b>和TFLITE模型在Jacinto7 Soc

    第四章:在 PC 交叉編譯 aarch64 的 tensorflow 開發(fā)環(huán)境并測試

    本文介紹了在 PC 端交叉編譯 aarch64 平臺的 tensorflow 庫而非 tensorflow lite 的心酸過程。
    的頭像 發(fā)表于 08-25 11:38 ?2586次閱讀
    第四章:在 PC 交叉編譯 aarch64 的 <b class='flag-5'>tensorflow</b> 開發(fā)環(huán)境并測試

    MESH-LITE子節(jié)點如何連接父節(jié)點?

    在探索MESH-LITE組網(wǎng)時發(fā)現(xiàn)下面這句話: “ESP-MESH-LITE 正式開始構建網(wǎng)絡前,必須確保網(wǎng)絡中所有節(jié)點具有相同的配置(見 esp_mesh_lite_config_t)。每個節(jié)點
    發(fā)表于 07-19 07:19

    stm32mp135d的板子可不可以跑tensorflow的模型???

    請問是stm32mp135d的板子可不可以跑tensorflow的模型?。?/div>
    發(fā)表于 07-18 06:49

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品