成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

有了 TensorFlow.js,瀏覽器中就能進(jìn)行實(shí)時(shí)人體姿勢(shì)判斷

KaltZK / 1724人閱讀

摘要:反饋檢測(cè)到的每個(gè)人的置信度值以及檢測(cè)到的每個(gè)姿勢(shì)關(guān)鍵點(diǎn)。姿勢(shì)置信度這決定了姿勢(shì)判斷的整體置信度。在較高級(jí)別,這將控制回饋的姿勢(shì)較低置信度分?jǐn)?shù)。只有在調(diào)整姿勢(shì)置信度得分不夠好的情況下,為了過(guò)濾掉不太準(zhǔn)確的姿勢(shì),該數(shù)值應(yīng)該增加或減少。

文 / Dan Oved,Google Creative Lab 的自由創(chuàng)意技術(shù)專家,紐約大學(xué) ITP 的研究生。

編輯和插圖 / 創(chuàng)意技術(shù)專家 Irene Alvarado 和 Google Creative Lab 的自由平面設(shè)計(jì)師 Alexis Gallo

通過(guò)與 Google 創(chuàng)意實(shí)驗(yàn)室的合作,我很高興地宣布 TensorFlow.js 版本的 PoseNet1,2 發(fā)布了,這是一個(gè)允許在瀏覽器中進(jìn)行實(shí)時(shí)人體姿勢(shì)判斷的機(jī)器學(xué)習(xí)模型。 訪問(wèn) 這里 嘗試一下在線演示吧。

注:這里鏈接

https://storage.googleapis.com/tfjs-models/demos/posenet/camera.html

PoseNet 可以使用單一姿勢(shì)或多種姿勢(shì)算法檢測(cè)到圖像和視頻中的人物 - 所有這些均來(lái)自瀏覽器

?

那么究竟什么是姿勢(shì)判斷呢? 姿勢(shì)判斷是指在圖像和視頻中檢測(cè)人物形象的計(jì)算機(jī)視覺(jué)技術(shù),比如可以確定某個(gè)人的肘部出現(xiàn)在圖像中的位置。 需要澄清的是,這項(xiàng)技術(shù)無(wú)法識(shí)別圖像中的人物到底是誰(shuí) – 因?yàn)闆](méi)有任何與識(shí)別身份相關(guān)的個(gè)人身份信息。 該運(yùn)算法則僅僅是判斷人體主要關(guān)節(jié)的位置。

?

好吧,知道為什么這是一個(gè)令人興奮的開(kāi)始? 姿勢(shì)判斷有許多用途,從對(duì)身體做出反應(yīng)的交互式裝置到增強(qiáng)現(xiàn)實(shí),動(dòng)畫,健身用途等等。 我們希望此模型的可訪問(wèn)性能夠激發(fā)更多開(kāi)發(fā)人員和制造商嘗試將姿態(tài)檢測(cè)應(yīng)用到他們自己的項(xiàng)目中去。 雖然許多可選的姿勢(shì)檢測(cè)系統(tǒng)都已開(kāi)源,但都需要配備專門的硬件和/或攝像頭,以及繁復(fù)的系統(tǒng)設(shè)置。?

PensNet 在 TensorFlow.js 上運(yùn)行后,只要配備適合網(wǎng)絡(luò)攝像頭的 PC 或手機(jī),任何人可以在網(wǎng)絡(luò)瀏覽器中體驗(yàn)這項(xiàng)技術(shù)。 由于我們已經(jīng)開(kāi)源了該模型,因此 Javascript 開(kāi)發(fā)人員只要通過(guò)幾行代碼就能修補(bǔ)和使用這項(xiàng)技術(shù)。更重要的是,這實(shí)際上還能有助保護(hù)用戶隱私。由于 TensorFlow.js 上的 PoseNet 是在瀏覽器中運(yùn)行,因此任何姿勢(shì)數(shù)據(jù)都不會(huì)留在用戶的計(jì)算機(jī)上。

?

在深入研究該如何使用這個(gè)模型之前,對(duì)于那些將該項(xiàng)目付諸實(shí)現(xiàn)的人們,讓我們大聲歡呼向他們致敬:發(fā)布在 Wild and PersonLab 上有關(guān)于準(zhǔn)確的多人姿勢(shì)判斷的文章《自下而上,基于部分的幾何嵌入模型進(jìn)行人物姿勢(shì)判斷及實(shí)例分割》背后的谷歌研發(fā)人員 George Papandreou 和 Tyler Zhu, 以及 TensorFlow.js 庫(kù)背后的 Google Brain 團(tuán)隊(duì)的工程師 Nikhil Thorat 和 Daniel Smilkov。

PoseNet 入門

PoseNet 可用于判斷單一姿勢(shì)或多個(gè)姿勢(shì), 這就意味著會(huì)有一個(gè)檢測(cè)圖像/視頻中單人算法版本以及另一個(gè)可以檢測(cè)圖像/視頻中多個(gè)人的版本。 為什么有兩個(gè)版本? 單人姿勢(shì)檢測(cè)器更快更簡(jiǎn)單,但是需要圖像中只有一個(gè)主體(稍后會(huì)深入探討)。 我們首先來(lái)講一講簡(jiǎn)單易用的單一姿勢(shì)版本。

?

姿勢(shì)判斷在上層會(huì)分成兩個(gè)階段進(jìn)行:

1. 輸入 RGB 圖像通過(guò)卷積神經(jīng)網(wǎng)絡(luò)饋送。

2. 單一姿勢(shì)或多姿勢(shì)解碼算法用于從模型輸出解碼姿勢(shì),姿勢(shì)置信度得分,關(guān)鍵點(diǎn)位置和關(guān)鍵點(diǎn)置信度得分。

?

稍等一下,這些關(guān)鍵字的含義是什么? 讓我們回顧一下最重要的內(nèi)容:

姿勢(shì) - 在別,PoseNet 將每個(gè)檢測(cè)到的人的關(guān)鍵點(diǎn)列表和實(shí)例級(jí)置信度分?jǐn)?shù)反饋給一個(gè)姿勢(shì)對(duì)象。

PoseNet 反饋檢測(cè)到的每個(gè)人的置信度值以及檢測(cè)到的每個(gè)姿勢(shì)關(guān)鍵點(diǎn)。 Image Credit:“Microsoft Coco:Context Dataset 中的公共對(duì)象”,https://cocodataset.org。

姿勢(shì)置信度 – 這決定了姿勢(shì)判斷的整體置信度。 范圍介于 0.0 到 1.0 之間。 它可以用來(lái)隱藏那些幅度不夠大的姿勢(shì)。

?

關(guān)鍵點(diǎn) – 它是判斷人體姿勢(shì)的一部分,例如鼻子,右耳,左膝,右腳等。它包含了位置和關(guān)鍵點(diǎn)置信度分?jǐn)?shù)。 PoseNet 目前可檢測(cè)到下圖所示的 17 個(gè)關(guān)鍵點(diǎn):

PoseNet 檢測(cè)到的 17 個(gè)姿勢(shì)關(guān)鍵點(diǎn)

關(guān)鍵點(diǎn)置信度得分 - 這決定了估計(jì)關(guān)鍵點(diǎn)位置準(zhǔn)確的置信度。 范圍在 0.0 到 1.0 之間。 它可用于隱藏那些不夠強(qiáng)大的關(guān)鍵點(diǎn)。

?

關(guān)鍵點(diǎn)位置 – 檢測(cè)到的關(guān)鍵單在原始輸入圖像中的 ?x 和 y 二維坐標(biāo)。

第1步:導(dǎo)入 TensorFlow.js 和 PoseNet 庫(kù)

將模型的復(fù)雜性抽象化并將功能封裝為易于使用的方法,這方面已經(jīng)做了很多的工作。 讓我們回顧一下如何設(shè)置 PoseNet 項(xiàng)目的基礎(chǔ)知識(shí)。

該庫(kù)可以使用 npm 安裝:

npm install @tensorflow-models/posenet

并使用 es6 模塊導(dǎo)入:

import * as posenet from "@tensorflow-models/posenet";

const net = await posenet.load();

或通過(guò)頁(yè)面中的 bundle:

? ?

? ? ? ?

? ? ? ?

? ? ? ?

? ? ? ?

? ? ? ?

? ? ?

第 2a 步:?jiǎn)稳俗藨B(tài)判斷

應(yīng)用于圖像的單人姿勢(shì)判斷算法示例

Image Credit:“Microsoft Coco:Context Dataset 中的通用對(duì)象”,https://cocodataset.org

如前所述,兩個(gè)版本中,單一姿勢(shì)判斷算法更簡(jiǎn)單,更快速。 它的理想場(chǎng)景是只有一個(gè)人居于輸入圖像或視頻中間。 缺點(diǎn)是,如果圖像中有多個(gè)人,那么來(lái)自兩個(gè)人的關(guān)鍵點(diǎn)可能被判斷為同一個(gè)單一姿勢(shì)的一部分 – 意思就是,例如,第 1 個(gè)人的左臂和第 2 個(gè)人的右膝通過(guò)算法被判斷屬于相同的姿勢(shì)而被混淆。 如果輸入圖像中包含多人,則應(yīng)該使用多姿勢(shì)判斷的算法。

?

讓我們回顧一下單一姿勢(shì)判斷算法的輸入:?

輸入圖像元素 - 包含用于預(yù)測(cè)姿勢(shì)的圖像的 html 元素,例如視頻或圖像標(biāo)簽。 重要的一點(diǎn)是,輸入的圖像或視頻元素必須是方形的。

?

圖像比例系數(shù) – 是介于 0.2 和 1 之間的數(shù)字。默認(rèn)為 0.50。 在輸入到網(wǎng)絡(luò)之前的縮放圖像比例。 將此數(shù)值設(shè)置得較低可以縮小圖像,以犧牲精度為代價(jià)從而提高速度。

?

水平翻轉(zhuǎn) - 默認(rèn)為 false。 姿勢(shì)應(yīng)該是水平翻轉(zhuǎn)/鏡像。 對(duì)于視頻默認(rèn)水平翻轉(zhuǎn)的視頻(即網(wǎng)絡(luò)攝像頭),如果您希望姿勢(shì)得以正確的方向回饋,應(yīng)將此設(shè)置為 true。

?

輸出步幅 - 必須為 32,16 或 8。默認(rèn)值為 16。在內(nèi)部,此參數(shù)會(huì)影響神經(jīng)網(wǎng)絡(luò)中圖層的高度和寬度。 在上層來(lái)看,它會(huì)影響姿勢(shì)判斷的精度和速度。 輸出值越低,精度越高但速度越慢;輸出值越高,速度越快但精度越低。 查看輸出步幅對(duì)輸出質(zhì)量影響的較佳方法是嘗試使用這個(gè)單一姿勢(shì)判斷的實(shí)例。

?

現(xiàn)在讓我們回顧一下單一姿勢(shì)判斷算法的輸出:

包含姿勢(shì)置信度得分和 17 個(gè)關(guān)鍵點(diǎn)數(shù)組的姿勢(shì)。

?

每個(gè)關(guān)鍵點(diǎn)包含關(guān)鍵點(diǎn)位置和關(guān)鍵點(diǎn)置信度得分。 同樣,所有關(guān)鍵點(diǎn)位置在輸入圖像空間中都有 x 和 y 坐標(biāo),并且可以直接映射到圖像上。

?

這個(gè)簡(jiǎn)短的代碼塊展示了如何使用單一姿勢(shì)判斷算法:

const imageScaleFactor = 0.50;

const flipHorizontal = false;

const outputStride = 16;

const imageElement = document.getElementById("cat");

// load the posenet model

const net = await posenet.load();

const pose = await net.estimateSinglePose(imageElement, scaleFactor, flipHorizontal, outputStride)

示例輸出姿勢(shì)如下所示:

{

?"score": 0.32371445304906,

?"keypoints": [

? ?{ // nose

? ? ?"position": {

? ? ? ?"x": 301.42237830162,

? ? ? ?"y": 177.69162777066

? ? ?},

? ? ?"score": 0.99799561500549

? ?},

? ?{ // left eye

? ? ?"position": {

? ? ? ?"x": 326.05302262306,

? ? ? ?"y": 122.9596464932

? ? ?},

? ? ?"score": 0.99766051769257

? ?},

? ?{ // right eye

? ? ?"position": {

? ? ? ?"x": 258.72196650505,

? ? ? ?"y": 127.51624706388

? ? ?},

? ? ?"score": 0.99926537275314

? ?},

? ?...

?]

}

第 2b 步: 多人姿勢(shì)判斷

應(yīng)用于圖像的示例多人姿勢(shì)判斷算法

Image Credit: “Microsoft Coco: Common Objects in Context Dataset”,?https://cocodataset.org

多人姿勢(shì)判斷算法可以判斷圖像中許多的姿勢(shì)/人。 它比單一姿勢(shì)算法更為復(fù)雜,且速度稍慢,不過(guò)它的優(yōu)點(diǎn)是,如果圖片中出現(xiàn)多個(gè)人,他們檢測(cè)到的關(guān)鍵點(diǎn)不太可能與錯(cuò)誤的姿勢(shì)相關(guān)聯(lián)。 因此,即使用例是檢測(cè)單個(gè)人的姿勢(shì),這個(gè)算法可能更合乎需要。

?

此外,該運(yùn)算法則一個(gè)引人入勝的特性是其性能不會(huì)因輸入圖像中的人數(shù)多少而受到影響。 不管是檢測(cè) 15 個(gè)人或 5 個(gè)人,計(jì)算的時(shí)間是相同的。

?

我們來(lái)看一下輸入:

輸入圖像元素 - 與單一姿勢(shì)判斷相同

圖像比例系數(shù) - 與單一姿勢(shì)判斷相同

水平翻轉(zhuǎn) - 與單一姿勢(shì)判斷相同

輸出步幅 - 與單一姿勢(shì)判斷相同?

幅度較大的姿勢(shì)檢測(cè) - 整數(shù)。 默認(rèn)為 5. 要檢測(cè)的幅度較大的姿勢(shì)數(shù)值。

姿勢(shì)置信度得分閾值 - 0.0 到 1.0。 默認(rèn)為 0.5。 在較高級(jí)別,這將控制回饋的姿勢(shì)較低置信度分?jǐn)?shù)。?

非較大抑制(NMS)半徑 – 這是一個(gè)以像素為單位的數(shù)字。在上層,它會(huì)控制返回姿勢(shì)之間的最小距離。其默認(rèn)值為 20,這在大多數(shù)情況下均表現(xiàn)良好。只有在調(diào)整姿勢(shì)置信度得分不夠好的情況下,為了過(guò)濾掉不太準(zhǔn)確的姿勢(shì),該數(shù)值應(yīng)該增加或減少。

?

查看這些參數(shù)影響的較佳方法是嘗試一下多姿勢(shì)判斷的演示。

?

讓我們?cè)倏匆幌螺敵觯?/p>

一個(gè)通過(guò)一系列姿勢(shì)來(lái)解決的承諾。

每個(gè)姿勢(shì)包含與單人判斷算法中相同描述的信息。

?

這個(gè)短代碼塊展示了如何使用多姿勢(shì)判斷算法:

const imageScaleFactor = 0.50;

const flipHorizontal = false;

const outputStride = 16;

// get up to 5 poses

const maxPoseDetections = 5;

// minimum confidence of the root part of a pose

const scoreThreshold = 0.5;

// minimum distance in pixels between the root parts of poses

const nmsRadius = 20;

const imageElement = document.getElementById("cat");

// load posenet

const net = await posenet.load();

const poses = await net.estimateMultiplePoses(

? ? ?imageElement, imageScaleFactor, flipHorizontal, outputStride, ? ?

? ? ?maxPoseDetections, scoreThreshold, nmsRadius);

姿勢(shì)的示例輸出數(shù)組如下所示:

// array of poses/persons

[?

?{ // pose #1

? ?"score": 0.42985695206067,

? ?"keypoints": [

? ? ?{ // nose

? ? ? ?"position": {

? ? ? ? ?"x": 126.09371757507,

? ? ? ? ?"y": 97.861720561981

? ? ? ? },

? ? ? ?"score": 0.99710708856583

? ? ?},

? ? ?...?

? ?]

?},

?{ // pose #2

? ?"score": 0.13461434583673,

? ?"keypositions": [

? ? ?{ // nose

? ? ? ?"position": {

? ? ? ? ?"x": 116.58444058895,

? ? ? ? ?"y": 99.772533416748

? ? ? ?},

? ? ?"score": 0.9978438615799

? ? ?},

? ? ?...

? ?]

?},

?...?

]

如果您已經(jīng)閱讀過(guò)這篇文章,那么您就已經(jīng)了解了 PoseNet 演示的全部?jī)?nèi)容。 這也許是一個(gè)很好的停止點(diǎn)。 如果您想深入了解有關(guān)模型和實(shí)施的技術(shù)細(xì)節(jié)的更多信息,我們邀請(qǐng)您繼續(xù)閱讀下文。

致孜孜不倦的鉆研者:技術(shù)深潛

在本節(jié)中,我們將詳細(xì)介紹單一姿勢(shì)判斷算法。在上層,該過(guò)程如下所示:

使用 PoseNet 的單人姿勢(shì)探測(cè)器通道

需要注意的一個(gè)重要細(xì)節(jié)是,研究人員同時(shí)訓(xùn)練了 PoseNet 上的一個(gè) ResNet 模型和一個(gè) MobileNet 模型。 雖然 ResNet 模型具有更高的準(zhǔn)確性,但對(duì)于實(shí)時(shí)應(yīng)用程序來(lái)說(shuō),其大尺寸和多層面使頁(yè)面加載時(shí)間和推理時(shí)間變得不太理想。我們使用 MobileNet 模型,因?yàn)樗菍橐苿?dòng)設(shè)備上運(yùn)行而設(shè)計(jì)的。

注: ResNet 模型鏈接

https://arxiv.org/abs/1512.03385

MobileNet 模型鏈接

https://arxiv.org/abs/1704.04861

再看一下單一姿勢(shì)判斷算法

處理模型輸入:輸出步幅的解釋

首先,我們將討論如何通過(guò)輸出步幅來(lái)獲得 PoseNet 模型輸出(主要是熱圖和偏移矢量)。

?

PoseNet 模型可以方便地保持圖像大小恒定,意思是不管圖像是否縮小,它能夠以與原始圖像相同的比例預(yù)測(cè)姿勢(shì)位置。 這就意味著通過(guò)設(shè)置我們?cè)谶\(yùn)行上面提到的輸出步幅時(shí),在犧牲了性能的情況下,可以將 PoseNet 配置成更高的精度。

?

輸出步幅決定了我們相對(duì)于輸入圖像大小縮小輸出的程度。 它會(huì)影響圖層的大小和模型輸出。 輸出步幅越高,網(wǎng)絡(luò)中的層的分辨率和輸出越小,相應(yīng)地它們的精度也越高。 在此應(yīng)用中,輸出步幅可以取值 8,16 或 32。換句話說(shuō),在輸出步幅為 32 的情況下,能夠取得最快的表現(xiàn)但是精度卻是較低,而 8 則相反,精度較高但表現(xiàn)最慢。 我們建議從 16 開(kāi)始。

輸出步幅決定了我們相對(duì)于輸入圖像大小縮小輸出的程度。 輸出步幅更高,表現(xiàn)更快,但精度更低

在后臺(tái)中,當(dāng)輸出步幅設(shè)置為 8 或 16 時(shí),減少層中步幅的輸入量就能創(chuàng)建更大的輸出分辨率。 然后使用帶孔卷積核使后續(xù)層中的卷積濾波器具有更寬的視場(chǎng)(當(dāng)輸出步幅為 32 時(shí)不適用帶孔卷積核)。 雖然 Tensorflow 支持帶孔卷積核,但 TensorFlow.js 卻不支持,為此我們添加了一個(gè) PR 來(lái)包含它。

模型輸出: 熱圖和偏移矢量

當(dāng) PoseNet 處理圖像時(shí),實(shí)際上反饋的是熱圖以及偏移矢量,可以對(duì)其進(jìn)行解碼,用以在圖像中找到與姿勢(shì)關(guān)鍵點(diǎn)對(duì)應(yīng)的高置信度區(qū)域。 我們可以快速討論其中每一個(gè)意味著什么,但眼下我們?cè)诟呒?jí)別情況下捕獲的如下圖演示了每個(gè)姿勢(shì)關(guān)鍵點(diǎn)如何與一個(gè)熱圖張量和偏移矢量張量相關(guān)聯(lián)。

PoseNet 反饋的 17 個(gè)姿勢(shì)關(guān)鍵點(diǎn)中的每一個(gè)都與一個(gè)熱圖張量和一個(gè)偏移矢量張量相關(guān)聯(lián),用于確定關(guān)鍵點(diǎn)的確切位置

這兩個(gè)輸出都是具有高度和寬度的 3D 張量,我們將其稱為分辨率。 分辨率根據(jù)以下公式由輸入圖像大小和輸出步幅決定:

Resolution = ((InputImageSize - 1) / OutputStride) + 1

// Example: an input image with a width of 225 pixels and an output

// stride of 16 results in an output resolution of 15

// 15 = ((225 - 1) / 16) + 1

熱圖

每個(gè)熱圖是尺寸為分辨率 x 分辨率 x 17 的 3D 張量,因?yàn)?17 是 PoseNet 檢測(cè)到的關(guān)鍵點(diǎn)的數(shù)量。 例如,圖像大小為 225,輸出步幅為 16,那么就是 15x15x17。 第三維(17)中的每個(gè)切片與特定關(guān)鍵點(diǎn)的熱圖對(duì)應(yīng)。 該熱圖中的每個(gè)位置都有一個(gè)置信度分?jǐn)?shù),即該關(guān)鍵點(diǎn)類型的一部分存在于該位置的概率。 可以視作原始圖像被分解成 15x15 網(wǎng)格,而熱圖分?jǐn)?shù)將對(duì)每個(gè)網(wǎng)格方塊中每個(gè)關(guān)鍵點(diǎn)存在的可能性進(jìn)行分類。

偏移矢量

每個(gè)偏移矢量是尺寸分辨率 x 分辨率 x 34 的 3D 張量,其中 34 是關(guān)鍵點(diǎn)的數(shù)量 * 2。圖像尺寸為 225,輸出步幅為 16,那么就是 15x15x34。 由于熱圖是關(guān)鍵點(diǎn)所在的近似值,因此偏移矢量在位置上對(duì)應(yīng)于熱圖點(diǎn),并用于通過(guò)沿相應(yīng)熱圖點(diǎn)的矢量行進(jìn)來(lái)預(yù)測(cè)關(guān)鍵點(diǎn)的確切位置。 偏移矢量的前 17 個(gè)切片包含矢量的 x,最后的 17 個(gè) y。 偏移矢量大小與原始圖像的比例相同。

從模型的輸出判斷姿勢(shì)

圖像通過(guò)模型后,我們會(huì)執(zhí)行一系列計(jì)算來(lái)判斷輸出的姿勢(shì)。 例如,單一姿勢(shì)判斷算法會(huì)回饋?zhàn)藙?shì)置信度得分,其本身包含關(guān)鍵點(diǎn)陣列(由部件 ID 索引),每個(gè)關(guān)鍵點(diǎn)具有置信度得分和 x,y 位置。

?

要獲得姿勢(shì)的關(guān)鍵點(diǎn):

在熱圖上進(jìn)行 S 形激活以獲得分?jǐn)?shù)。得分= heatmap.sigmoid()

argmax2d 在關(guān)鍵點(diǎn)置信度得分上完成,以獲得熱圖中的x和y索引,每個(gè)部分的得分較高,這實(shí)際上是該部分最可能存在的位置。這會(huì)產(chǎn)生一個(gè)大小為 17x2 的張量,每一行都是熱圖中的 y 和 x 索引,每個(gè)部分的得分較高。heatmapPositions = scores.argmax(y,x)

通過(guò)從對(duì)應(yīng)于該部件的熱圖中的 x 和 y 索引的偏移量獲取 x 和 y 來(lái)檢索每個(gè)部件的偏移矢量。這會(huì)產(chǎn)生一個(gè)大小為 17x2 的張量,每行是相應(yīng)關(guān)鍵點(diǎn)的偏移量。例如,對(duì)于索引 k 處的部分,當(dāng)熱圖位置為 y 和 d 時(shí),偏移矢量為:offsetVector = [offsets.get(y,x,k),offsets.get(y,x,17 + k)]

為了得到關(guān)鍵點(diǎn),每個(gè)部件的熱圖 x 和 y 乘以輸出步幅,然后加到它們相應(yīng)的偏移矢量,該矢量與原始圖像的比例相同。keypointPositions = heatmapPositions * outputStride + offsetVectors

最后,每個(gè)關(guān)鍵點(diǎn)置信度得分是其熱圖位置的置信度得分。姿勢(shì)置信度得分是關(guān)鍵點(diǎn)得分的平均值。

多人姿勢(shì)判斷

多姿勢(shì)判斷運(yùn)算法則的詳細(xì)內(nèi)容就不在本文中一一贅述。 大體來(lái)說(shuō),該運(yùn)算法則的不同之處在于它使用了貪婪過(guò)程,通過(guò)沿著基于部分的圖形來(lái)跟隨位移矢量來(lái)將關(guān)鍵點(diǎn)分組成姿勢(shì)。 確切地說(shuō),就是它使用了研究論文 PersonLab 中的快速貪婪解碼算法:人物姿勢(shì)判斷和實(shí)例分割與自下而上,基于部分的幾何嵌入模型。 有關(guān)多姿勢(shì)運(yùn)算法則的更多信息,請(qǐng)閱讀完整的研究論文或查看 代碼。

注:代碼鏈接

https://github.com/tensorflow/tfjs-models/tree/master/posenet/src

最后

我們希望隨著越來(lái)越多的模型被移植導(dǎo)入到 TensorFlow.js,機(jī)器學(xué)習(xí)的世界變得對(duì)新的編碼員和制造者來(lái)說(shuō)更容易接近,更受歡迎,更有趣。 TensorFlow.js 上的 PoseNet 是一個(gè)小嘗試,使之成為可能。 我們將很樂(lè)意看到你的制作 - 并且不要忘記使用 #tensorflowjs 和 #posenet 來(lái)分享你的精彩項(xiàng)目!

聲明:文章收集于網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系小編及時(shí)處理,謝謝!

歡迎加入本站公開(kāi)興趣群

商業(yè)智能與數(shù)據(jù)分析群

興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價(jià)值的辦法,實(shí)際應(yīng)用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉(cāng)庫(kù),數(shù)據(jù)挖掘工具,報(bào)表系統(tǒng)等全方位知識(shí)

QQ群:81035754

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/4801.html

相關(guān)文章

  • Move Mirror:使用 TensorFlow.js覽器中預(yù)測(cè)姿勢(shì)之 AI 實(shí)驗(yàn)

    摘要:文和,創(chuàng)意實(shí)驗(yàn)室創(chuàng)意技術(shù)專家在機(jī)器學(xué)習(xí)和計(jì)算機(jī)視覺(jué)領(lǐng)域,姿勢(shì)預(yù)測(cè)或根據(jù)圖像數(shù)據(jù)探測(cè)人體及其姿勢(shì)的能力,堪稱最令人興奮而又最棘手的一個(gè)話題。使用,用戶可以直接在瀏覽器中運(yùn)行機(jī)器學(xué)習(xí)模型,無(wú)需服務(wù)器。 文 / ?Jane Friedhoff 和 Irene Alvarado,Google 創(chuàng)意實(shí)驗(yàn)室創(chuàng)意技術(shù)專家在機(jī)器學(xué)習(xí)和計(jì)算機(jī)視覺(jué)領(lǐng)域,姿勢(shì)預(yù)測(cè)或根據(jù)圖像數(shù)據(jù)探測(cè)人體及其姿勢(shì)的能力,堪稱最令人興...

    MiracleWong 評(píng)論0 收藏0
  • 用 Python+openpose 實(shí)現(xiàn)抖音尬舞機(jī)

    摘要:而另一款網(wǎng)紅產(chǎn)品抖音,也在去年底上線過(guò)一個(gè)尬舞機(jī)的音樂(lè)體感游戲現(xiàn)在成了隱藏功能游戲開(kāi)始后,隨著音樂(lè)會(huì)給出不同的動(dòng)作提示,用戶按照提示擺出正確動(dòng)作即可得分。 如今說(shuō)到體感游戲,大家一定都不陌生,比如微軟的 Kinect、任天堂的 Switch,都曾是游戲業(yè)的革命性產(chǎn)品。而另一款網(wǎng)紅產(chǎn)品—抖音,也在去年底上線過(guò)一個(gè)尬舞機(jī)的音樂(lè)體感游戲(現(xiàn)在成了隱藏功能): showImg(https://...

    Rocture 評(píng)論0 收藏0
  • 決勝圣誕,女神心情不用猜!

    摘要:萬(wàn)萬(wàn)沒(méi)想到,在圣誕節(jié)前夕,女神居然答應(yīng)了在下的約會(huì)請(qǐng)求。想在下正如在座的一些看官一樣,雖玉樹(shù)臨風(fēng)風(fēng)流倜儻,卻總因猜不透女孩的心思,一不留神就落得個(gè)母胎單身。在內(nèi)部將張量表示為基本數(shù)據(jù)類型的維數(shù)組。 showImg(https://segmentfault.com/img/remote/1460000017498745); 本文將結(jié)合移動(dòng)設(shè)備攝像能力與 TensorFlow.js,在瀏覽...

    nanfeiyan 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<