はじめに
前回の記事で、TeachableMachineを利用した結晶粒度の評価についてご紹介しました。記事の内容は次のようなものです。
- 種々の粒度番号に相当する金属組織の画像(組織画像)をデータセットとして作成
- データセットをTeachableMachineで学習
- 学習後のモデルをダウンロード
- Python言語のプログラムにモデルを読み込ませて、組織画像の粒度番号を推論
今回は、ウェブ上で組織画像の粒度番号を推定するため、次のような内容にしました。
- TeachableMachineで学習したモデルをウェブ上にアップロード
- html言語(javascript含む)のプログラムにモデルを読み込ませて、組織画像の粒度番号を推論
ここで、前回の記事では、画像の倍率などの情報を画像ファイルと同じフォルダに格納している「cond.ini」から取得しましたが、今回はアプリ上で情報を直接入力することにしました。
使い方
-
はじめに、粒度番号を評価したい組織画像を用意します。以下URLのimgフォルダ内にサンプル画像があるので、それらを使うこともできます。
https://github.com/repositoryfiles/EvaluationGrainSizeUsingDeepLearning_BrowserVersion
imgフォルダ内の画像ファイル名は、材料名_熱処理_倍率_画像の幅 になっています。
-
次のサイトにアクセスします。自動的にウェブアプリが立ち上がります。
https://repositoryfiles.github.io/EvaluationGrainSizeUsingDeepLearning_BrowserVersion/ -
組織画像の「倍率」とその倍率で表示させたときの「画像の幅(mm)」を設定します。デフォルトでは500倍、142mmとなっています。サンプル画像の粒度番号を評価する場合、ファイル名の「mag」と「size」に続く数値を「倍率」と「画像の幅(mm)」にそれぞれ入力します。
-
ファイルを選択して画像ファイルを読み込みむと、TeachableMachineのモデルでの粒度番号の推論値が表示されます。粒度番号の表示には少し時間がかかる場合があります。粒度番号に続くカッコ内の数値は、推論結果の確率を表示したものです。
-
別の画像を評価する場合など、ページをリロードする場合は「ページをリロードする」をクリックします。
このプログラムについて
imgが格納されているURLにある「index.html」がプログラムです。
TeachableMachineからindex.htmlへのモデルの読み込みは、次のように行っています。
-
TeachableMachineで作成されるモデルを「Tensorflow.js」の形式でクラウド上にアップロードします(「モデルをアップロード」をクリックします)。
-
このURLをindex.htmlで指定します(28行目)。
おわりに
- 当サイトの利用結果について、当方は責任を負いません。
- インターネットが使える環境でしたら、index.htmlはローカルパソコン上で実行できると思います。お使いの環境に合うように改良・活用していただけたら幸いです。