試作 · Apache-2.0 · ブラウザで動くデモ
ayaka-hand
触れる前に把持の形を決める義手の制御システムです。手首のカメラがこれから掴む物を見て、手が届くまでのあいだに適切な握りを作ります。
解こうとしている問題
筋電式の上肢義手は、およそ 23 パーセントが日常のなかで使われなくなります。繰り返し挙げられる理由が、認知的な負担です。従来の制御は、握り方と力の強さを選ぶために筋肉の収縮を意識して加減することを求めます。物を持つたび、一日じゅう。
ここでの役割分担は意図的なものです。筋電信号は一つの二値信号にまで絞ってあります。いつ閉じるかは装着者が決めます。どう握るかは視覚系が決めます。
仕組み
教師と反射の二層構成です。大きな視覚言語モデル(Qwen3-VL-32B-Instruct、Apache-2.0)が、物体が何であり、どういう状態にあるかを判断して、構造化された把持ラベルを出します。これは学習データに印をつけるためにオフラインで動きます。実時間の制御ループには入りません。
ループの中で動くのは、そのラベルから蒸留した二つのヘッドを持つ MobileNetV2 です。2,232,839 パラメータ、8.9 MB の ONNX、ONNX-Runtime Web を通してブラウザ上で実行します。入力は手首のカメラの画素だけ。何を見ているかを教えるものはありません。
体の一部のように感じられるには、把持が 125 ミリ秒以内に決まっていなければなりません。
その枠にクラウドのモデルは入りません。だから入れていません。
計測結果
比較対象は意図的に有利にしてあります。正解の物体クラス名、つまり完璧な検出器の出力を渡され、それに対応する標準的な握りを引くだけの仕組みです。生徒モデルに渡るのは画素だけです。
| 指標 | ベースライン · 正解の物体名あり | 生徒 · 223万、画素のみ |
|---|---|---|
| 把持精度 | 70.5 % | 72.3 % |
| 把持 macro-F1 | 0.581 | 0.659 |
| 把持力精度 | 65.4 % | 81.1 % |
| 把持力 macro-F1 | 0.595 | 0.806 |
つまみ持ちでベースラインは 0.000
つまみ持ちにきれいに対応する物体クラスは存在しません。物そのものを見るしかない、ということです。クラス名からは原理的に辿り着けないため、ベースラインはこの分類で F1 が正確にゼロになります。生徒モデルは 0.323 に届きます。
把持力では 15.7 ポイントの差
どれだけの力で握るかは、物の分類ではなく状態によって決まります。中身の入ったカップと空のカップは同じクラス名で、必要な力は違います。その違いは画素には表れますが、ラベルには表れません。
これが何ではないか
医療機器ではありません。ハッカソン(AMD Developer Hackathon, Act II)への提出から生まれた研究用の試作です。怪我を防ぐという主張はしていませんし、そのように読まれるべきものでもありません。
物理的な手は作っていません。デモがブラウザ上に描くのはシミュレーションの手です。ここに載っている計測はすべて記録済みの映像に対するもので、人が装着した機器に対するものではありません。
危険の表示は何も動かしません。教師モデルは注意の表示を出せます。高温、鋭利、割れ物など。これは表示のみで、生徒モデルには蒸留されず、駆動系につながることもありません。危険を検知も防止もしませんし、そのために頼るべきものでもありません。
データとライセンス
教師モデルが印をつけた COCO 2017 の切り出し 11,004 枚で学習しました。ライセンスで絞ってあり、CC BY、CC BY-SA、および既知の制限がないものだけを使い、NonCommercial と NoDerivatives はすべて除いています。検証は取り置いた 613 枚で行いました。
コードと文書は Apache-2.0 です。