公開されたので試してみました。使ってみようと思います。JavaScriptだけでディープラーニングを実行できるなんてすごい時代になりましたね。準備CDNからTensorFlow.js本体と、学習モデルを読み込みます。src="https://unpkg.com/@tensorflow-models/posenet"></script>以上。ドキュメントによると、これで使えるようになったので、画像を読み込ませればいいようです。outputStride)}).then(function(pose){console.log(pose);})</script>すると、推定された人物の姿勢の座標とスコアがオブジェクトで返ってきます。rightEyeなど)の位置も推定できるようなので、練習がてらつくってみました。Model)を用いて、読み込んだ画像の顔に目線を入れるというもの。動画やカメラで取得した映像をリアルタイムで解析できるみたいですが、今回は静止画に対してやってみます。チェックをいれれば、推定されたパーツの位置を表示できます。スマホでも動きますがパフォーマンスは悪いです。大きな画像だとブラウザがクラッシュするので、PC以外は画像を縮小する処理を挟んでからTensorFlowに投げているため、PCとスマホで結果が異なる場合があります。顔のパーツの位置がわかったので、いい感じに目線を引いてみましょう。耳と目の位置から目線を引く場所を求めます。人間の目は両耳の間に1:1:1:1くらいで配置されているはずなので、左耳から右耳の距離を目線の横幅として、両目の中点を中心に書くといい感じの目線になりました。動画をリアルタイムで解析できる程度の処理はできるようなので、それをブラウザで、JavaScriptで動かせるというのはいろんな可能性を感じさせます。立ち位置や向きさえ気をつければいい感じの精度になるので、決まった位置で動いてもらえば、たとえばキャラクターを動かしたりするゲームとかに使えるんじゃないでしょうか。これまでもJavaScriptによる画像解析はありましたが、ディープ・ラーニングと学習モデルで、より正確でより速い解析ができるようになりそうです。今回試しにつくったものはCodepenにも置いてます。