やりたいこと: mobileNetでTensorFlow.jsの画像分類から最も確率の高いclassNameを取得したい。クラス名を文字列として取得したい。
問題: className を文字列として分離する方法がわかりません。これに対するコマンドはありますか?または、私の問題を解決する方法を知っていますか?
私のコード:
theAi();
async function theAi() {
const tf = require('@tensorflow/tfjs'),
mobilenet = require('@tensorflow-models/mobilenet'),
tfnode = require('@tensorflow/tfjs-node'),
fs = require('fs-extra');
const imageBuffer = await fs.readFile("./jesus.jpg"),
tfimage = tfnode.node.decodeImage(imageBuffer),
mobilenetModel = await mobilenet.load();
const results = await mobilenetModel.classify(tfimage);
console.log(results);
};
そして出力:
[
{
className: 'chain mail, ring mail, mail, chain armor, chain armour, ring armor, ring armour',
probability: 0.5979475378990173
},
{ className: 'vestment', probability: 0.14261281490325928 },
{ className: 'fountain', probability: 0.03441018983721733 }
]
したがって、この場合、文字列 (「チェーン メール、リング メール、メール、チェーン アーマー、チェーン アーマー、リング アーマー、リング アーマー」) を取得する必要があります。