TensorFlow2020: Tensorflow.js を使用してコンピューター ビジョン アプリケーションを実行する方法は?

TensorFlow2020: Tensorflow.js を使用してコンピューター ビジョン アプリケーションを実行する方法は?

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)から転載したものです。

多くの人がコンピューター ビジョン アプリケーションを実行できます。はい、学習して実行するのはそれほど難しくありません。このような強力なコンピューター ビジョン アプリケーションを実行するために利用できるライブラリは数多くあります。

最近、TensorFlow 2020 Summit に注目していますか? 今年、TensorFlow チームは非常に優れた製品を多数リリースしました。この記事では、tensorflow.js モデルを使用してコンピューター ビジョン アプリケーションを実行する方法を説明します。

TensorFlow.js とは何ですか?

TensorFlow.js は、機械学習アプリケーションおよび JavaScript での機械学習モデルの開発、およびブラウザまたは Node.js で直接機械学習を使用するためのオープンソース コード ライブラリです。

Tensorflow.js モデルとは何ですか?

Tensorflow.js モデルは事前トレーニング済みのモデルであり、ユーザーはモデルをトレーニングするためのデータを準備/収集する必要がありません。モデルは NPM (Network Performance Monitor) および unpkg でホストされており、既存のプロジェクトに適用できます。

この記事では、tensorflow.js の MediaPipeFacemesh モデルを紹介します。このモデルは、顔がフレームの大部分を占める傾向があるモバイル デバイスの前面カメラ用に設計されています。

フェイスメッシュモデルのデモンストレーション

フェイスメッシュ モデルは、顔の動きに基づいてビデオ フレームを移動します。次のコンピューター ビジョン アプリケーションを実行するには、どのような手順が必要ですか?

ステップ 1: これらは、コンピューター ビジョン アプリケーションを実行するために独立して実行される 3 つの重要なスクリプト タグ コードです。

  1. < scriptsrc scriptsrc = "https://cdn.jsdelivr.net/npm/@tensorflow/tfjs-core" > </スクリプト>  
  2. < scriptsrc scriptsrc = "https://cdn.jsdelivr.net/npm/@tensorflow/tfjs-converter" > </スクリプト>  
  3. < scriptsrc scriptsrc = "https://cdn.jsdelivr.net/npm/@tensorflow-models/facemesh" > </スクリプト>  
  • TensorFlow.js コアは、ニューラル ネットワークと数値計算用の柔軟な API です。
  • TensorFlow.js コンバーターは、TensorFlowSavedModel を TensorFlow.js にインポートするためのツールです。
  • facemesh パッケージは、画像内の顔の境界とランドマークを検出します。

ステップ 2: ウェブカメラを通じて顔を認識できるように、件名のコンテンツにビデオ HTML タグを含めます。

  1. <ビデオ幅ビデオ幅= 640  高さ= 480自動再生 ミュートid = "camera" > </ video >  

ステップ 3: スクリプト (通常は JavaScript) を使用して、キャンバス タグでグラフィックを動的に描画します。

  1. <キャンバス幅キャンバス幅= 640  高さ= 480   id = "拡張キャンバス" > </キャンバス>  

ステップ 4: キャンバス タグにビデオ タグを追加してビデオ フレームを再生し、顔の動きに応じてビデオ フレームを移動できるようにします。

  1. < videoautoplay loop id ="movie" style ="visibility: hidden" >  
  2. < sourcesrcsourcesrc = "TensorFlowjs.mp4" type = "video/mp4" > </ source >  
  3. </ビデオ>  

ステップ 5: 顔モデルを読み込み、顔のサイズを推定して、画像内の顔の境界とランドマークを見つけます。

  1. //カメラストリームを読み込む
  2. const frame = document .getElementById("camera"); // ムービーストリームを読み込む
  3. constムービー=ドキュメント.getElementById("ムービー");
  4. movie.play();//キャンバスを準備する
  5. constキャンバス= document .getElementById("augmented_canvas");
  6. const draw = canvas .getContext("2d");const result = awaitmodel .estimateFaces(frame, false);

ステップ 6: 検出された顔に次のコードを使用してビデオ フレームを描画します。

  1. // カメラストリームをキャンバスにコピー
  2. draw.drawImage(frame,0, 0, 640, 480);//顔が検出されているかどうかを確認します
  3. (結果の長さ 0)の場合
  4. {
  5. i = 0とすると、i <  結果.長さ; i++) {
  6. const start =結果[i].topLeft;
  7. 定数end =結果[i].bottomRight;
  8. const size = [end[0] — start[0], end[1] — start[1]]; //検出された各顔の上に四角形をレンダリングします。
  9. draw.drawImage(ムービー、開始[0]、開始[1]、サイズ[0]、サイズ[1]);
  10. }
  11.   
  12. }

以上です。上記の 6 つの手順に従って、コンピューター ビジョン アプリケーションを実行します。データ サイエンティストになるには Python または R プログラミング言語に精通している必要があると誰もが考えていますが、今では JavaScript を使用して機械学習アプリケーションを実行できます。

<<:  AI時代、私たちは将来の仕事にどう備えればいいのでしょうか?

>>:  AIが製造業に力を与え、PowerLeader Serverは製品、サービス、生産に焦点を当てる

ブログ    
ブログ    
ブログ    

推薦する

このアルゴリズムは顔認識の「マスク」問題を解決し、2日間で1,000人のコミュニティで97%の精度を達成しました | AIが疫病と戦う

ますます成熟する人工知能は、新型コロナウイルス感染症対策の最前線で「逆転者」と呼ばれる特別な集団とな...

2019年の機械学習と人工知能産業の発展動向のレビュー

[[257231]]新年を迎えるにあたり、2019 年を形作る業界のトレンドに注目する時期が来ました...

スマートビルディングのためのビルディングオートメーションと IoT

[[350210]]今日、私たちが建物について語るとき、それは単なる外殻を意味するのではなく、さま...

...

人工知能(AI)はアパレル業界をどのように変えるのでしょうか?

衣服のデザインから将来のファッショントレンドの発見、パーソナルスタイリストになること、そして消費者の...

スタートアップ企業がAIを活用して声優の「デジタルツイン」を開発し、声優自身の声を使ったコンテンツを生成する

ブルームバーグが14日に報じたところによると、声優のシッキー・ジョーンズがAIスタートアップ企業モー...

LLaMA 2 エンドツーエンド推論が利用可能になりました。中国チームより

Buddy CompilerのエンドツーエンドLLaMA2-7B推論例がbuddy-mlirリポジト...

...

...

プログラマーアルゴリズムの基礎 - 貪欲アルゴリズム

序文貪欲は人間が本来持つ能力であり、貪欲アルゴリズムとは貪欲な意思決定に基づいた全体計画の総称です。...

AR/VRが製造業の自動化とロボット工学の発展を促進する方法

この記事では、AR/VR テクノロジーがロボットにどのように貢献し、工場や産業にどのようなメリットを...

専門家の洞察: AI を活用して配送をスピードアップする方法

毎分250人の赤ちゃんが生まれ、世界では4回の地震が発生し、シンガポール港では1,000トンを超える...

海外のJavaエンジニアがGPT-4が論理パズルを解くことはできないが推論能力はあることを証明

GPT-4 または LLM には推論機能がありますか?これは長年議論されてきた問題です。 LLM は...

Google のアルゴリズムにどんな恥ずかしいことが起こったのでしょうか?

ここには Google が意図的に行ったジョークがあると思われます。周知のとおり、Google の柱...

人工知能がまだできない5つのこと

人工知能(AI)は、さまざまな産業の変革と複雑なタスクの簡素化において目覚ましい進歩を遂げてきました...