見出し画像

da Vinci(第2回:目):技術多め医療ロボット紹介

第2回目は、da Vinciシステムの「目」について見てみたいです。

(改めて自己紹介はこちらです)

が、調べるうちにかなり基礎的な原理の部分に興味を持ってしまい、そちらの紹介をさせてください笑

とはいえ、ちゃんとda Vinciの「目」の話から入ります!

da Vinciの「目」のまわり

da Vinciの特徴の一つとして、術者が実際のロボットと少し離れた「操縦席」に座り、市販のVRゴーグルのようなものを両眼で見て操作する、というものがあります。

患者さんの体内には挿入孔の一つから内視鏡が入れられており、内蔵される2つのカメラからの映像によって術者に立体的な映像を見せることができる、というものです。

以上が全体像で、「人間の目のように2つあるから奥行きがわかるんやな」と一瞬納得しました。が、「そういえば、そもそも何で目が2つあると奥行きがわかる?」という疑問が湧いてきてしまいました。

もちろん、何となくはイメージはできますし、物体認識などに取り組まれてる方には当然の話かとは思いますが、しっかり説明してみろと言われると意外と難しいなと思いました。

実際、調べてみると非常にシンプルではありましたが、ぜひここで個人メモを兼ねてご紹介したいです。


両眼で「奥行き」が分かる仕組み

ここで「立体的に見えること」ということを、「対象までの距離がわかること」と解釈することとし、状況を整理します。
※全体として以下のWebサイトを参考にしています。

カメラが2つあり、対象物との距離$${d}$$が求めたい値とします。ここでそれぞれのカメラから対象物への線分を引くと三角形ができます。ここで注意が必要なのは底辺を2と3の線分(長さ: $${b}$$)と考える必要があり、123の三角形を考えることとなります。2,3はそれぞれカメラの焦点距離の位置ですが、ここを基準に考えるというのが一番理解が一瞬遅れる部分かなと思います。なぜこの位置を考える必要があるかは後ほど述べることとして先に進みます。

参考サイト3つでの解説を参考に再作成

ここで線分12に並行な線分34を考えると、三角形123と三角形345が相似の関係になります。最後に必要になるのが「視差: $${v}$$」ですが、これは「それぞれのカメラ画像上の対象物位置を比較した際の差」ということとなります(図右下)。そのため視差 $${v}$$は計測可能ということとなりますので、相似関係にある三角形の比を考えることによって以下の式が得られ、$${d}$$が求まります。(当然ながら右辺はすべて既知です)

$$
d = \frac{bf}{v}
$$

「視差」という言葉は何度も聞いたことがありましたが、お恥ずかしながらちゃんと意味はわかっていませんでした、、、笑

焦点距離を考える必要がある理由

最後に焦点距離がなぜ関わるかについて触れたいと思います。理科などで習った光路の図をしっかり書けば明らかではあると思いますが、ざっくりと言ってしまえば、「焦点の位置に仮想的なカメラがあると考える必要がある」ということです。写真など詳しい方はイメージし易いかと思いますが、焦点距離は画像上において「対象がどの程度遠くに見えるか」に影響します。今回、対象物との距離を求めることが目的であったため、焦点距離が画像上の距離に及ぼす影響を考える必要がありました。その対応として、焦点に仮想カメラを置くという考えが必要となったということです。

da Vinciそのものからは少し離れてしまいましたが、手術ロボットではもちろん、ロボティクス、自動運転など色々な場所で活用されている基礎原理だと思いますので、頭の片隅に置いておいても損はしないのかなと思います。

では、次はda Vinciを操作する「操縦席」について考えてみたいと思います。

※ 図など厳密性にかける部分があるかもしれませんので、間違いがありましたら是非ご指摘いただけますとありがたいです。修正します。

参考Webサイト


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