亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在電子中使用張量流.js的posenet

在電子中使用張量流.js的posenet

慕田峪9158850 2022-08-27 15:25:42
我正在嘗試在電子應用程序中使用posenet MobileNetV1網絡。我希望能夠從文件系統中讀取圖像(無論它是png還是jpg都沒關系),并通過網絡運行它。到目前為止,我做了什么:我正在使用以下模塊:import * as posenet from '@tensorflow-models/posenet';var imageToBase64 = require('image-to-base64');var toUint8Array = require('base64-to-uint8array')并通過以下方式初始化網絡:var net = posenet.load();為了讀取圖像,我將其轉換為base64而不是Uint8Array,而不是使用它們來創建對象 ,這符合ImageData的定義。{data: bytes, width: width, height: height}一切都在運行,但百分比的結果非常低:{  score: 0.002851587634615819,  keypoints: [    { score: 0.0007664567674510181, part: 'nose', position: [Object] },    {      score: 0.0010295170359313488,      part: 'leftEye',      position: [Object]    },    {      score: 0.0006740405224263668,      part: 'rightEye',      position: [Object]    },請注意,將來我打算構建這個應用程序,所以像這樣的模塊是不好的,因為它不能很好地構建。Canvas如果有人能給我一個工作poc,那就太好了,因為我已經為此工作了很長時間。
查看完整描述

2 回答

?
慕田峪7331174

TA貢獻1828條經驗 獲得超13個贊

電子有兩個獨立的上下文;一個可以被視為服務器端上下文的上下文,稱為主上下文和呈現器上下文,其中調用瀏覽器及其腳本。雖然這個問題不夠精確,但它試圖在電子的主要上下文中執行posenet,這可以進行比較,就好像有人試圖在nodejs中運行此代碼一樣。


主渲染器中的 posenet


const data = Buffer.from(base64str, 'base64')

const t = tf.node.decodeImage(data)

const net = await posenet.load()

const poses = net.estimateMultiplePoses(t, {

      flipHorizontal: false,

      maxDetections: 2,

      scoreThreshold: 0.6,

      nmsRadius: 20})

  })

  // do whatever with the poses

來自瀏覽器執行的腳本的posenet


const im = new Image()

im.src = base64str

const net = await posenet.load()

im.onload = async() => {

 const poses = await net.estimateMultiplePoses(im, {

      flipHorizontal: false,

      maxDetections: 2,

      scoreThreshold: 0.6,

      nmsRadius: 20})

  })

  // do whatever with the poses

}


查看完整回答
反對 回復 2022-08-27
?
MYYA

TA貢獻1868條經驗 獲得超4個贊

即使您復制了結構,也許PoseNet正在檢查對象是否屬于某個類,除非您實際創建ImageData對象然后設置字段,否則它不會是。這就是我對它為什么不喜歡它的猜測。

您是否嘗試過:

let clamped = Uint8ClampedArray.from(someframeBuffer);
let imageData = new ImageData(clamped, width, height);

PoseNet似乎接受ImageData|HTMLImageElement|HTMLCanvasElement|HTMLVideoElement 對象,可以傳遞給其預測函數。


查看完整回答
反對 回復 2022-08-27
  • 2 回答
  • 0 關注
  • 128 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號