見出し画像

骨格推定AIをサクッとつくる→簡易アプリにして使ってもらってみた

オープンソースがどんどん公開されて、簡単にAIが作れる(使える)ようになりました。
実際にIroribiで取り組んでるプロジェクトでも、はじめからガリガリとAIをつくるのではなく、簡単に使える色々なものを組み合わせてまず”やってみる”(その結果を受けてまた考える)という進め方をしています。
ということで今回は、天下のGoogleさんが無料公開しているmediapipeというライブラリを使って、人間の骨格を推定するAIを作ってみたいと思います!
「作ったぜ!」だなんておこがましいほど、簡単にできちゃうんです。

mediapipeと骨格を推定する技術

mediapipeというのは、Googleが提供しているオープンソースの画像系AIライブラリです。
簡単に言うと、「画像AIを簡単に使えるようにしたもの」です。


簡単とはいえ、少しだけプログラミングが必要ですが、その分アイディア次第でいろんな使い方ができちゃいます!

顔の検知や手の検知などが提供されており、ホームページを見るだけでワクワクしてきます。

では今回は、その中の「Pose」を用いてみます。
これは、人間が写っている画像から、人間の骨格位置を推定する技術です。

そして、さらに!
2次元の画像から、3次元の骨格位置を推定できちゃうんです。

もう、この感動はやってみないと伝わらないので、やってみます!
Python使ってプログラミング!

骨格推定AIをやってみた

Googleさんがサンプルコードまで用意してくれています、、。
至れり尽くせりですね。
参考にしながら、JupyterNotebookでやってみます!

まずは、元の画像を読み込んでみると、こんな感じです。
(まだAIは使っていないです)

では、AIいってこ~い!

たった、数行、、、、。恐るべし、、。
AIが予測した骨格の位置を繋いだ線がついています。

ですがこのままだと、ちょっと線が見にくいですね。
これを3次元で表示してみることにしました。

縮尺の問題で横長に見えますが…太っているとかではない…はず…汗

微調整が必要なものの、
ちゃんと、斜めになっているのが分かりますよね?

ここまで本当に数行しかコーディングしていません。
いやはや、すごい時代だよ、、。

streamlitを使ってアプリっぽくしてみる

ちょっと面白そうだなと軽い気持ちでつくってみたのですが、
結構使えるかも?と思い、簡易的にですがアプリっぽくして、他のメンバーにつかってみてもらうことにしました。

ということで、streamlitというライブラリを使ってみます。
トップページには、

A faster way to build and share data apps

https://streamlit.io/

の文字が。



データサイエンティストやAIエンジニアは、Pythonを使う人が多いのですが、アプリを作るためには別のプログラミング言語が必要となることが一般的です。

ただ、このstreamlitは、Pythonを使って簡単にアプリ(っぽいもの)を作ることができるのです。
コードの説明はしませんが、こんな風に出来上がりました!

左側で骨格推定したい動画を読み込むと、骨格推定の結果をアニメーションで表示してくれます。
そして、Gif動画で出力することもできるようにしました!
それが、これ!


これを使って何ができるか?使ってみてもらう


こうして画像や動画などで見ると、「骨格推定」という言葉だけ聞く(見る)よりも、どんなものなのかイメージが出来ますよね。

例えば、スポーツでのフォーム確認や、何か動作が伴うゲームみたいなものも作れそう。

ということで、何に使えるかを探るために、非エンジニアの方にも使ってみてもらいました。
最近の趣味がゴルフということで、試しに素振り動画を読ませてみました。

こういうアプリで日常の中で自分のフォームを確認できるのは便利そう。コーチにとっても、これを見せることでもっと具体的なアドバイスにつながるんじゃないかな。

という感想でした。
確かに、客観的なアドバイスにつながるというのは双方にとってとても良いことになりそうです。

と、・・・ちょっと良い事を思いついてしまったので、その話はまた別の機会にご報告したいと思います!!


Iroribiでやってる技術のお試し

ちょっと良いかなと思う技術や事例に出会ったとき、
(ちょっと)やってみる→試してもらう→可能性を探る→またやってみる
というサイクルの中で、技術をどんなふうに活かせるのかを私たちは考えています。

つくる側にとっても、使う側にとっても、体験してみることで出てくるアイディアや要望などがきっとあるので、実際のプロジェクト内においても基本的な技術に対する姿勢は同じです。

今回やってみたように、たった数行でAIが使える便利な時代になったので、アイデアを広げるためにも、まずはつくってみて、それから活用やビジネスを考えてみるという流れ、ぜひ試してみて欲しいです!

この記事が気に入ったらサポートをしてみませんか?