人工知能搭載ケーキカッター “FAIRCUT” のご紹介

人工知能搭載ケーキカッター “FAIRCUT” のご紹介

人工知能搭載ケーキカッター “FAIRCUT”とは

2019年8月3日から2日間、東京ビッグサイトにてMaker Faire Tokyo 2019が開催されました。そこで初公開した作品が「人工知能搭載ケーキカッター “FAIRCUT”」 です。

Maker Faire Tokyo 2018で公開を行った「スマートCNCピザカッター “iPizza”」に引き続き、2年目の出展です。

「おいしいものをフェアに切り分けたい!」という願いは、人類にとっての大きなテーマです。

我々がMaker Faire Tokyo 2018で出展した「スマートCNCピザカッター “iPizza”」では、独自に開発したピザ画像認識システムとCNC機構により、ピザを「平等に」切り分けることができました。その一方で、今回の「人工知能搭載ケーキカッター  “FAIRCUT”」は、全自動でバウムクーヘンを「公平に」切り分けることができます。

FAIRCUT_image2

FAIRCUTでは、搭載されたAIが集合写真からBMIを推論し、その比率に基づいた「カロリーの再分配」を行います。 そこでBMIが比較的に高いと勝手に判断されてしまった人は、食べる量を減らされてしまいます。

AIが導き出した最適なバウムクーヘンの分配は時に賢く正確ですが、その判断がいつも適切とは限りません。食糧などを「公平に」そしてフェアに分配するには、絶対的な存在による判断が必要です。しかし、猫も杓子もAI搭載の時代だからといって、このような行いまでもをAIに任せてしまったら、一体どうなってしまうのでしょうか?

FAIRCUT 動作の流れ

FAIRCUTの起動

FAIRCUTは、サーバアプリケーションが動作する本体と、クライアントアプリケーションが動作するMacの2点で構成されています。

FAIRCUT本体に電源を入れたら、さながらFA機器のようなキースイッチを回して運転許可を与えます。FAIRCUTは全自動で動作しますが、他にもいらないスイッチ類が無駄についているのは、カッコイイからにほかなりません。

keyswitch
FAIRCUT後部

本体がニューラルネットワークのモデルをロードし終えると、前部のディスプレイの表示が以下のように変わります。

Loading2Ready
本体前部ディスプレイの表示

また、macOS専用のクライアントアプリケーションを立ち上げ、ウェルカムメッセージが聞こえたら準備完了です。

集合写真の撮影

FAIRCUTを使ってバウムクーヘンを切り分けるには、まずMacで集合写真を撮影します。撮影された集合写真から全員の顔写真が切り取られ、ローカルネットワーク経由で本体に送信されます。

なお、FAIRCUTでは、MacBookに搭載されたFaceTimeカメラのほか、UVC (USB Video Class)に対応したウェブカメラならどれでも使用できます。

分配結果の表示

本体に搭載されたAIが全員のBMIの推論を終えると、クライアントアプリケーションに結果表示がなされます。この画面では、円グラフの番号と顔写真に記載された番号が一対一で対応しています。

resultView
分配結果の表示

バウムクーヘンの切り分け

Macにおける結果表示と同時に、本体では切り分けが開始されます。ここではバウムクーヘンを載せたテーブルが回転し、ワイヤーがゆっくりと上下してバウムクーヘンをカットしていきます。

FAIRCUT-is-Cutting
バウムクーヘンを切り分けるFAIRCUT

おいしく頂く

多く割り当てられた人もいれば、少なく割り当てられた人もいることでしょう。AIによる勝手な分配に様々な感情を抱きつつ、おいしくいただきます。

Maker Faire Tokyoの現場では、デモンストレーション用の特大バウムをスタッフが1人1本ずつおいしくいただきました。

FAIRCUTの技術

概要

チラシに掲載された概要です。

FlyerNoteBook
FAIRCUT Technical Note

BMI推論AI

FAIRCUTに搭載されたAIでは、MIT CSAILで行われた研究 Face-to-BMI: Using Computer Vision to Infer Body Mass Index on Social Media で使用された顔写真とBMIのデータセットを提供していただき、これにWHOによって定められたBMIの分類を適用して利用しています。

このデータセットをrcmalli/keras-vggface: VGGFace implementation with Keras Framework [github]  のVGGFace16と組み合わせ、Google Colaboratory上で転移学習させました。

クライアントアプリケーション

クライアントアプリケーションにはAppKitが使われていて、Swiftで書かれています。またWebsocketの通信には daltoniam/Starscream: Websockets in swift for iOS and OSX [github]を、円グラフの描画には danielgindi/Charts: Beautiful charts for iOS/tvOS/OSX! The Apple side of the crossplatform MPAndroidChart. [github] を使用しています。

Jetson本体にクライアントアプリケーションを搭載しても良いのですが、CocoaやSwift・Aquaの美しさには敵わないためMacで作成しました。

ハードウェア

FAIRCUT本体のフレームには、20×20のミスミ製アルミフレーム 5シリーズが使用されています。また、筐体上部は3mm厚のアクリル版、筐体下部は1.5mm厚のSUS304製板金パネルで覆うことで、切断時の安全性を確保しています。また、板金パネルへのレーザー加工と樹脂コーティングにより、美しい見た目が実現しました。その他のパーツは、主に3Dプリンタで作成されています。

RenderingImage
レンダリング画像

上下運動と回転運動のアクチュエータには、12Vの3Dプリンタ用ステッピングモータが使用されています。バウムクーヘンをカットする部分には、Amazonで購入したチーズカッターを利用しました。

機械設計やおもて面のレンダリング画像の出力には、AUTODESK の3DCADである Fusion 360が使用されています。

 

最後に

このプロジェクトは、ミスミの学生ものづくり支援 様による援助によって進められました。また、沼津高専ロボコン部FAkikiフェスティバル 様にも併せて感謝を申し上げます。