本開示は、一般には立体視覚化カメラ及びプラットフォームに関する。立体視覚化カメラはデジタル立体顕微鏡(「DSM」)と呼ばれることもある。一例のカメラ及びプラットフォームは、従来技術による顕微鏡(図1の外科用ルーペ100及び図2の外科用顕微鏡200等)よりもはるかに小型、軽量であり、操作しやすい自己充足型ヘッドユニットに顕微鏡光学要素及びビデオセンサを統合するように構成される。一例のカメラは、立体ビデオ信号を1つ又は複数のテレビジョンモニタ、プロジェクタ、ホログラフィックデバイス、スマートメガネ、仮想現実デバイス、又は外科環境内の他の視覚ディスプレイデバイスに送信するように構成される。
モニタ又は他の視覚的ディスプレイデバイスは外科環境内に位置決めされて、患者に手術を行っている間、外科医の視線内に容易にあるようにし得る。この柔軟性により、外科医は、個人の好み又は習慣に基づいてディスプレイモニタを配置することができる。加えて、本明細書に開示される立体視覚化カメラの柔軟性及びスリムな外形は、患者の上方で消費されるエリアを低減する。完全に、立体視覚化カメラ及びモニタ(例えば、立体視覚化プラットフォーム)は、外科医及び外科チームが上述した外科用顕微鏡200と比較して、移動を決定付けられず又は制限されずに患者に対して複雑な顕微鏡手術処置を行えるようにする。それに従って一例の立体視覚化プラットフォームは、外科医の目の延長として動作して、外科医が、従来既知の視覚化システムによって引き起こされるストレス、制限、及び制約に対応せずに傑作の顕微鏡手術を行えるようにする。
本明細書における開示は一般に、顕微鏡手術を参照する。一例の立体視覚化カメラは、例えば、頭蓋手術、脳外科手術、神経外科、脊髄手術、眼科手術、角膜移植、整形外科手術、耳、鼻、及び喉の手術、歯科手術、整形手術及び再建手術、又は一般的な手術を含め、略あらゆる顕微鏡手術処置に使用することができる。
本開示は、標的部位、シーン、又は視野も参照する。本明細書で使用される場合、標的部位又は視野は、一例の立体視覚化カメラにより記録又は他の方法で撮像されている物体(又は物体の部分)を含む。一般に、標的部位、シーン、又は視野は、一例の立体視覚化カメラの主対物レンズ組立体から作業距離分、離れており、一例の立体視覚化カメラと位置合わせされる。標的部位は、患者の生体組織、骨、筋肉、皮膚、又はそれらの組合せを含み得る。これらの場合、標的部位は、患者の解剖学的構造の進行に対応する深度成分を有することにより三次元であり得る。標的部位は、一例の立体視覚化カメラの較正又は検証に使用される1つ又は複数のテンプレートを含むこともできる。テンプレートは、紙(又はプラスチックシート)上のグラフィック設計等の二次元又は特定の領域での患者の解剖学的構造の近似等の三次元であり得る。
全体を通して、x方向、y方向、z方向、及びチルト方向も参照される。z方向は、一例の立体視覚化カメラから標的部位への軸に沿い、一般に深度と呼ばれる。x方向及びy方向は、z方向に入射する平面にあり、標的部位の平面を構成する。x方向は、y方向の軸から90°の軸に沿う。x方向及び/又はy方向に沿った運動は、平面内運動と呼ばれ、一例の立体視覚化カメラの運動、一例の立体視覚化カメラ内の光学要素の運動、及び/又は標的部位の運動を指し得る。
チルト方向は、x方向、y方向、及び/又はz方向に対してオイラー角(例えば、ヨー軸、ピッチ軸、及びロール軸)に沿った運動に対応する。例えば、完璧に位置合わせされたレンズは、x方向、y方向、及び/又はz方向に対して略0°を有する。換言すれば、レンズの面は、z方向に沿った光に対して90°、すなわち、直交する。加えて、レンズの縁部(レンズが矩形を有する場合)は、x方向及びy方向に沿って平行する。レンズ及び/又は光学画像センサは、ヨー運動、ピッチ運動、及び/又はルール運動を通してチルトすることができる。例えば、レンズ及び/又は光学画像センサは、z方向に対して、ピッチ軸に沿ってチルトして、上方又は下方に面し得る。z方向に沿った光は、非直角でレンズの面(上方又は下方にピッチされる)に接触する。ヨー軸、ピッチ軸、又はロール軸に沿ったレンズ及び/又は光学画像センサのチルトにより、例えば、焦点又はZRPを調整することができる。
I.一例の立体視覚化カメラ
図3及び図4は、本開示の実施形態例による立体視覚化カメラ300の斜視図の図を示す。一例のカメラ300は、光学要素、レンズモータ(例えば、アクチュエータ)、及び信号処理回路を囲むように構成された筐体302を含む。カメラ300は、幅(x軸に沿う)15センチメートル(cm)〜28cm、好ましくは約22cmを有する。加えて、カメラ300は、長さ(y軸に沿う)15cmから32cm、好ましくは約25cmを有する。さらに、カメラ300は、高さ(z軸に沿う)10cm〜20cm、好ましくは約15cmを有する。カメラ300の重さは3kg〜7kg、好ましくは約3.5kgである。
カメラ300は制御アーム304a及び304b(例えば、操作ハンドル)も含み、制御アームは、倍率レベル、フォーカス、及び他の顕微鏡特徴を制御するように構成される。制御アーム304a及び304bは、特定の特徴をアクティブ化又は選択する各制御機構305a及び305bを含み得る。例えば、制御アーム304a及び304bは、蛍光モードを選択し、標的部位に投影される光の量/タイプを調整し、ディスプレイ出力信号(例えば、1080p又は4K及び/又は立体視の選択)を制御する制御機構305a及び305bを含み得る。加えて、制御機構305a及び/又は305bは、較正手順の開始及び/又は実行及び/又は立体視覚化カメラ300に接続されたロボットアームの移動に使用し得る。幾つかの場合、制御機構305a及び305bは同じボタン及び/又は特徴を含み得る。他の場合、制御機構305a及び305bは異なる特徴を含み得る。さらに、制御アーム304a及び304bは、オペレータが立体視覚化カメラ300を位置決めできるようにするグリップとして構成することもできる。
各制御アーム304は、図3に示されるように、回転可能な支柱306を介して筐体302に接続される。この接続により、制御アーム304は筐体302に対して回転することができる。この回転は、外科医が制御アーム304を所望のように配置する柔軟性を提供し、外科性能と同期する立体視覚化カメラ300の適応性を更に強化する。
図3及び図4に示される一例のカメラ300は、2つの制御アーム304a及び304bを含むが、カメラ300が1つのみの制御アームを含んでもよく、又は制御アームを含まなくてもよいことを理解されたい。立体視覚化カメラ300が制御アームを含まない場合、制御機構は筐体302に統合し、及び/又は遠隔制御機構を介して提供し得る。
図4は、本開示の実施形態例による立体視覚化カメラ300の後ろ側の下から上への斜視図を示す。立体視覚化カメラ300は、支持体に接続するように構成された取り付けブラケット402を含む。図5及び図6においてより詳細に説明するように、支持体は、大きな可操作性を提供する1つ又は複数のジョイントを有するアームを含み得る。アームは、可動カートに接続してもよく、又は壁若しくは天井に固定してもよい。
立体視覚化カメラ300は、電力アダプタを受けるように構成された電力ポート404も含む。電力は、ACコンセント及び/又はカートの電池から受け取り得る。幾つかの場合、立体視覚化カメラ300は、内部電池を含み、コードなしの動作を促進し得る。これらの場合、電力ポート404は、電池の充電に使用し得る。代替の実施形態では、電力ポート404は、立体視覚化カメラ300が支持体内のワイヤ(又は他の導電性配線材料)を介して電力を受け取るように取り付けブラケット402に統合し得る。
図4は、立体視覚化カメラ300がデータポート406を含み得ることも示す。一例のデータポート406は、例えば、Ethernet(登録商標)インターフェース、高精細マルチメディアインターフェース(「HDMI(登録商標)」)インターフェース、ユニバーサルシリアルバス(「USB」)インターフェース、シリアルデジタルインターフェース(「SDI」)、デジタル光学インターフェース、RS−232シリアル通信インターフェース等を含む任意のタイプのポートを含み得る。データポート406は、立体視覚化カメラ300と、1つ又は複数の計算デバイス、サーバ、記録デバイス、及び/又はディスプレイデバイスに配線されたコードとの間に通信接続を提供するように構成される。通信接続は、更なる処理、記憶、及び/又は表示のために、立体ビデオ信号又は二次元ビデオ信号を送信し得る。データポート406は、制御信号を立体視覚化カメラ300に送信できるようにもし得る。例えば、接続されたコンピュータ(例えば、ラップトップコンピュータ、デスクトップコンピュータ、及び/又はタブレットコンピュータ)におけるオペレータは、操作の指示、較正の実行、又は出力ディスプレイ設定の変更を行う制御信号を立体視覚化カメラ300に送信し得る。
幾つかの実施形態では、データポート406は、無線インターフェースと置換(及び/又は無線インターフェースで補足)し得る。例えば、立体視覚化カメラ300は、Wi−Fiを介して立体ディスプレイ信号を1つ又は複数のディスプレイデバイスに送信し得る。内部電池と組み合わせた無線インターフェースの使用により、立体視覚化カメラ300をワイヤフリーにすることができ、それにより、外科環境内の可操作性を更に改善する。
図4に示される立体視覚化カメラ300は、主対物レンズ組立体の前部作業距離主対物レンズ408も含む。一例のレンズ408は、立体視覚化カメラ300内の光路の開始部にある。立体視覚化カメラ300内部の光源からの光は、レンズ408を通して標的部位に送られる。さらに、標的部位から反射された光は、レンズ408で受け取られ、下流の光学要素に渡される。
II.立体視覚化カメラの例示的な可操作性
図5及び図6は、本開示の実施形態例による、顕微鏡手術環境500内で使用される立体視覚化カメラ300の図を示す。示されるように、立体視覚化カメラ300の小さなフットプリント及び可操作性は(特に多度自由度アームと併せて使用される場合)、患者502に対する柔軟な位置決めを可能にする。立体視覚化カメラ300の図中の患者502の一部は、標的部位503を含む。外科医504は、患者502(仰臥位で横たわっている)の上方に十分過ぎるほどの手術空間を残しながら、立体視覚化カメラ300を略あらゆる向きで位置決めすることができる。それに従って立体視覚化カメラ300は最小の侵襲性で(又は非侵襲的に)外科医504が妨害又は邪魔なしで人生を変える顕微鏡手術処置を行えるようにする。
図5では、立体視覚化カメラ300は、取り付けブラケット402を介して機械アーム506に接続される。アーム506は、電子機械ブレーキを有する1つ又は複数の回転又は延長可能なジョイントを含み、立体視覚化カメラ300の容易な再位置決めを促進し得る。立体視覚化カメラ300を動かすために、外科医504又はアシスタント508は、アーム506の1つ又は複数のジョイントのブレーキ解放を作動させる。立体視覚化カメラ300が所望の位置に動かした後、ブレーキを係合させて、アーム506のジョイントを所定位置にロックし得る。
立体視覚化カメラ300の大きな特徴は、接眼レンズを含まないことである。これは、立体視覚化カメラ300を外科医504の目と位置合わせする必要がないことを意味する。この自由により、従来既知の外科用顕微鏡では実際的又は可能ではなかった所望の位置に立体視覚化カメラ300を位置決め方向付けることができる。換言すれば、外科医504は、外科用顕微鏡の接眼レンズにより決められる単に適切なビューに制限されるのではなく、処置を行うのに最適なビューを用いて顕微鏡手術を行うことができる。
図5に戻ると、立体視覚化カメラ300は、機械アーム506を介して、ディスプレイモニタ512及び514を有するカート510(集合的に立体視覚化プラットフォーム又は立体ロボットプラットフォーム516)に接続される。図示の構成では、立体視覚化プラットフォーム516は自己充足型であり、手術室間を含め、顕微鏡手術環境500内の任意の所望のロケーションに移動し得る。統合プラットフォーム516は、ディスプレイモニタ512及び514を接続することによりシステムを構成する必要な時間なしで、立体視覚化カメラ300を需要に応じて移動及び使用できるようにする。
ディスプレイモニタ512及び514は、高精細テレビジョン、超高精細テレビジョン、スマートメガネ、プロジェクタ、1つ又は複数のコンピュータ画面、ラップトップコンピュータ、タブレットコンピュータ、及び/又はスマートフォンを含む任意のタイプのディスプレイを含み得る。ディスプレイモニタ512及び514は、立体視覚化カメラ300と同様に、機械アームに接続されて、柔軟な位置決めを可能にし得る。幾つかの場合、ディスプレイモニタ512及び514はタッチスクリーンを含み得、オペレータが立体視覚化カメラ300にコマンドを送信し、及び/又はディスプレイの設定を調整できるようにする。
幾つかの実施形態では、カート516はコンピュータ520を含み得る。これらの実施形態では、コンピュータ520は、立体視覚化カメラ300に接続されたロボット機械アームを制御し得る。追加又は代替として、コンピュータ520は、ディスプレイモニタ512及び514に表示するために、立体視覚化カメラ300からのビデオ(又は立体ビデオ)信号(例えば、画像ストリーム又はフレームストリーム)を処理し得る。例えば、コンピュータ520は、立体視覚化カメラ300からの左ビデオ信号及び右ビデオ信号を結合又はインターリーブして、標的部位の立体画像を表示する立体信号を作成し得る。コンピュータ520はまた、ビデオ信号及び/又は立体ビデオ信号をビデオファイルに記憶する(メモリに記憶される)のに使用することもでき、それにより、外科医の施術を文書化し、再生することができる。さらに、コンピュータ520は、設定を選択及び/又は較正を実行する制御信号を立体視覚化カメラ300に送信することもできる。
幾つかの実施形態では、図5の顕微鏡手術環境500は眼科手術処置を含む。この実施形態では、機械アーム506は患者の目の周回掃引を実行するようにプログラムし得る。そのような掃引により、外科医は、硝子体網膜処置中、周辺部網膜を調べることができる。これとは対照的に、従来の光学顕微鏡を用いる場合、外科医が周辺部網膜を見ることができる唯一の方法は、強膜圧迫法として知られる技法を用いて目の横を視野内に押すことである。
図6は、後方到達法頭蓋底神経外科手術のために患者502が着座位置にある顕微鏡手術環境500の図を示す。図示の実施形態では、立体視覚化カメラ300は、患者502の後頭部に面するように水平位置に配置される。機械アーム506は、立体視覚化カメラ300を示されるように位置決めできるようにするジョイントを含む。加えて、カート510はモニタ512を含み、モニタ512は外科医の自然な閲覧方向と位置合わせし得る。
接眼レンズがないことにより、立体視覚化カメラ300を水平に、外科医504の目の高さのビューよりも低く位置決めすることができる。さらに、比較的軽量であり、柔軟性があることにより、他の既知の外科用顕微鏡では想像できないように立体視覚化カメラ300を位置決めすることができる。それにより、立体視覚化カメラ300は、任意の所望の位置及び/又は向きの患者502及び/又は外科医504に顕微鏡手術ビューを提供する。
図5及び図6は、立体視覚化カメラ300を位置決めする2つの実施形態例を示すが、立体視覚化カメラ300が、機械アーム506の自由度の数に応じて任意の数の位置に位置決め可能なことを理解されたい。幾つかの実施形態では、上に面する(例えば、逆さまになる)ように立体視覚化カメラ300を位置決めすることが完全に可能である。
III.既知の外科用顕微鏡との一例の立体視覚化プラットフォームの比較
図3から図6の立体視覚化カメラ300を図2の外科用顕微鏡200と比較すると、違いは容易に明らかである。外科用顕微鏡への接眼レンズ206の包含により、外科医は常に目を、スコープヘッド201及び患者に対して一定位置にある接眼レンズに向ける必要がある。さらに、外科用顕微鏡の嵩張り及び重量により、外科用顕微鏡は患者に対して概して垂直の向きでしか位置決めすることができない。これとは対照的に、一例の立体視覚化カメラ300は、接眼レンズを含まず、患者に対して任意の向き又は位置に位置決めすることができ、それにより、術中、外科医は自由に移動することができる。
他の臨床スタッフが顕微鏡手術標的部位を見られるようにするためには、外科用顕微鏡200では第2の接眼レンズ208を追加する必要がある。一般に、最も既知の外科用顕微鏡200では、第3の接眼レンズを追加することができない。これとは対照的に、一例の立体視覚化カメラ300は、無制限数のディスプレイモニタに通信可能に結合することができる。図5及び図6は先に、カート510に接続されたディスプレイモニタ512及び514を示したが、手術室は、立体視覚化カメラ300によって記録された顕微鏡手術ビューを全て示すディスプレイモニタで囲むことができる。したがって、ビューを1人又は2人に制限する(又は接眼レンズの共有を必要とする)代わりに、外科チーム全体が標的術部の拡大ビューを見ることができる。さらに、訓練室及び観察室等の他の部屋内の人々に、外科医に表示されたものと同じ拡大ビューを提示することができる。
立体視覚化カメラ300と比較して、2接眼レンズ外科用顕微鏡200は、衝突又は非意図的な移動をより受けやすい。術中、外科医は、接眼レンズを通して見るために、頭を接眼レンズ206及び208上に配置するため、スコープヘッド201は一定の力及び周期的な衝突を受ける。第2の接眼レンズ208の追加は、第2の角度からの力を倍にする。一緒に、外科医による一定の力及び定期的な衝突は、スコープヘッド201を動かし得、それにより、スコープヘッド201の再位置決めが必要になる。この再位置決めは、外科処置を遅延させ、外科医を不快にさせる。
一例の立体視覚化カメラ300は、接眼レンズを含まず、所定位置にロックされると、外科医からの接触を受け取る意図はない。これは、外科医の施術中、立体視覚化カメラ300が非意図的に動く又は衝突する可能性の大幅な低下に対応する。
第2の接眼レンズ208を促進するために、外科医用顕微鏡200は、ビームスプリッタ210を装備する必要があり、ビームスプリッタ210は、精密金属管内に収容されたガラスレンズ及びミラーを含み得る。ビームスプリッタ210の使用は第1の接眼レンズで受け取る光を低減させ、その理由は、光の幾らかが第2の接眼レンズ208に反射されるためである。さらに、第2の接眼レンズ208及びビームスプリッタ210の追加は、スコープヘッド201の重量及び嵩張りを増大させる。
外科用顕微鏡200とは対照的に、立体視覚化カメラ300は、センサの光路のみを含み、それにより、重量及び嵩張りを低減する。加えて、光の一部をリダイレクトするビームスプリッタが必要ないため、光学センサは入射光全てを受け取る。これは、一例の立体視覚化カメラ300の光学センサによって受信される画像が、可能な限り明るくクリアであることを意味する。
外科用顕微鏡の幾つかのモデルは、ビデオカメラを取り付けることができ得る。例えば、図2の外科用顕微鏡200は、ビームスプリッタ214を介して光路に接続された平面視ビデオカメラ212を含む。ビデオカメラ212は、Leica(登録商標)TrueVision(登録商標)3D視覚化システム眼科カメラ等の平面視又は立体視であり得る。ビデオカメラ212は、ディスプレイモニタに表示するためにビームスプリッタ214から受信した画像を記録する。ビデオカメラ212及びビームスプリッタ214の追加は、スコープヘッド201の重量を更に追加する。加えて、ビームスプリッタ214は、接眼レンズ206及び/又は208に向かう追加の光を消費する。
各ビームスプリッタ210及び214は、入射光を部分的に3つの経路に分割し、光を外科医のビューから除去する。外科医の目は、外科医に提示された術部からの光が、外科医が処置を行うことができるようにするのに十分でなければならないような、限られた低光感度を有する。しかしながら、外科医は、特に眼科処置では、患者の標的部位に適用される光の強度を上げることが常に可能であるわけではない。患者の目は限られた高光感度を有し、それを超えると光毒性が生じる。したがって、ビームスプリッタの数並びに割合及び補助デバイス208及び212を使用できるようにするために第1の接眼レンズ206から分割することができる光の量には制限がある。
図3から図6の一例の立体視覚化カメラ300はビームスプリッタを含まず、それにより、光学撮像センサは、主対物レンズ組立体からの全量の光を受け取る。これにより、事後処理によりモニタでの表示に十分明るく可視(及び調整可能)にすることができるため、低光感度を有するセンサ、さらには使用する可視光の波長外の感度を有する光学センサの使用が可能になる。
さらに、光路を画定する光学要素は、立体視覚化カメラ300それ自体内に含まれるため、カメラを通して制御することができる。この制御により、光学要素の配置及び調整を顕微鏡接眼レンズではなく三次元立体表示に向けて最適化することができる。カメラのこの構成により、制御をカメラ制御機構から又はリモートコンピュータから電子的に提供することができる。加えて、制御は、ズームしながらフォーカスを維持するように、又は光学欠陥及び/又は疑似視差に関して調整するように、光学要素を調整するように構成された、カメラ300に搭載される1つ又は複数のプログラムを通して自動的に提供することができる。これとは対照的に、外科用顕微鏡200の光学要素は、ビデオカメラ212の外部にあり、一般に接眼レンズ206を通した標的部位の閲覧に向けて最適化されたオペレータ入力を介してのみ制御される。
最後の比較では、外科用顕微鏡200は、視野又は標的部位を動かすX−Yパンデバイス220を含む。X−Yパンデバイス220は、外科用スコープヘッド201をしっかりと支持し移動させなければならないため、通常、大きく、重く、高価な電子機械モジュールである。加えて、スコープヘッド201を移動させると、接眼レンズ206の新しい位置に外科医の位置が変わる。
これとは対照的に、一例の立体視覚化カメラ300は、実行されると、プロセッサに、広いピクセルグリッドにわたりX−Yパンを可能にする光学センサのピクセルデータを選択あっせる命令を含むメモリを含む。加えて、一例の立体視覚化カメラ300は、主対物レンズ光学要素を制御して、カメラ300を移動させずに標的部位までの作業距離を偏向する小型のモータ又はアクチュエータを含み得る。
IV.立体視覚化カメラの一例の光学要素
図7及び図8は、本開示の実施形態例による、図3から図6の一例の立体視覚化カメラ300内の光学要素を示す図を示す。立体画像を構築するために、標的部位の左ビュー及び右ビューを取得することは比較的簡単に見え得る。しかしながら、入念な設計及び補償なしでは、多くの立体画像は左ビューと右ビューとの間の位置合わせ問題を有する。長時間にわたり見られる場合、位置合わせ問題は、左ビューと右ビューとの違いの結果として観察者の脳に混乱を生み出す恐れがある。この混乱は、頭痛、疲労、目眩、更には吐き気を生じさせる恐れがある。
一例の立体視覚化カメラ300は、他の左及び右光学要素が共通キャリアに固定されている間、幾つかの光学要素の独立した制御及び/又は調整を用いる右光路及び左光路を有することにより、位置合わせ問題を低減する(又はなくす)。実施形態例では、幾つかの左及び右ズームレンズは共通キャリアに固定して、左倍率及び右倍率が略同じであることを保証し得る。しかしながら、前部レンズ又は後部レンズは独立して、半径方向、回転、軸方向で調整可能であり、及び/又はチルトして、ズーム反復点の移動等のズーム浴び率の小さな差、視覚的欠陥、及び/又は疑似視差を補償し得る。調整可能なレンズにより提供される補償は、全ズーム倍率範囲を通して略完全に位置合わせされた光路を生じさせる。
追加又は代替として、位置合わせ問題は、ピクセル読み出し及び/又はレンダリング技法を用いて低減し得る(又はなくし得る)。例えば、右画像(右光学センサにより記録される)は、左画像(左光学センサにより記録される)に対して上方又は下方に調整されて、画像間の垂直位置合わせずれを補正し得る。同様に、右画像も左画像に対して左又は右に調整されて、画像間の水平位置合わせずれを補正し得る。
図7及び図8は、アーチファクト、疑似視差、及び歪みが略ない、位置合わせされた光路を提供する光学要素の一例の構成及び位置を以下に示す。後述するように、特定の光学要素は、較正及び/又は使用中に移動して、光路を更に位置合わせし、いかなる残留ひずみ、疑似視差、及び/又は欠陥も除去し得る。図示の実施形態では、光学要素は2つの並行路に位置決めされて、左ビュー及び右ビューを生成する。代替の実施形態は、折り畳まれ、偏向され、又は他の方法で平行ではない光路を含み得る。
図示の経路は、立体視ディスプレイに表示された左ビュー及び右ビューが、約4フィート(約1.2m)先にある物体を見ている成人である人間の目の集束角と同様である概ね6度の集束角を生み出す距離だけ隔てられるように見えるような人間の視覚系に対応し、それにより、立体視を生み出す。幾つかの実施形態では、左ビュー及び右ビューから生成される画像データは、ディスプレイモニタ512及び514で一緒に結合されて、標的部位又は標的シーンの立体画像を生成する。代替の実施形態は、左ビューが閲覧者の左目のみに提示され、対応する右ビューが右目のみに提示される他の立体ディスプレイを備える。適切な位置合わせ及び較正の調整及び検証に使用される例示的な実施形態では、両ビューとも両目に重ねて表示される。
立体ビューは、人間の視覚系をより密に模倣するため、平面ビューよりも優れている。立体ビューは、奥行き知覚、距離知覚、及び相対サイズ知覚を提供して、標的術部のよりリアルなビューを外科医に提供する。網膜手術等の処置では、外科的な運動及び力はあまりに小さく、外科医はそれらを感じることができないため、立体ビューは不可欠である。立体ビューの提供は、脳が奥行きを知覚しながら些少な運動を検知する場合、外科医の脳が触覚を拡大させるのに役立つ。
図7は、透明であり、光学要素を露出させる筐体302を有する一例の立体視覚化カメラ300の側面図を示す。図8は、図7に示される光学要素により提供された光路を示す図を示す。図8に示されるように、光路は右光路及び左光路を含む。図8における光路は、前方向に面し、立体視覚化カメラ300を見下ろす視点から示される。この図から、左光路は図8の右側に見え、一方、右光路は左側に示される。
図7に示される光学要素は、左光路の部分である。図7における右光路が一般に、光学要素の関係ロケーション及び構成に関して左光路と同一であることを理解されたい。上述したように、光路の中心間の瞳孔間距離は58mmから70mmであり、これは10mmから25mmにスケーリングし得る。各光学要素は、特定の直径(例えば、2mm〜29mm)を有するレンズを備える。したがって、光学要素自体間の距離は、1mm〜23mm、好ましくは約10mmである。
一例の立体視覚化カメラ300は、標的部位700(シーン又は視野(「FOV」又は標的手術部位とも呼ばれる)の画像を取得するように構成される。標的部位700は患者の解剖学的構造の位置を含む。標的部位700は、研究所生体試料、較正スライド/テンプレート等を含むこともできる。標的部位700からの画像は、主対物レンズ組立体702を介して立体視覚化カメラ300において受信され、主対物レンズ組立体702は、前部作業距離レンズ408(図4に示される)及び後部作業距離レンズ704を含む。
A.一例の主対物レンズ組立体
一例の主対物レンズ組立体702は、任意のタイプの屈折組立体又は反射組立体を含み得る。図7は、前部作業距離レンズ408が静止しており、後部作業距離レンズ704がz軸に沿って移動可能なアクロマート屈折組立体として対物レンズ組立体702を示す。前部作業距離レンズ408は、平凸(「PCX」)レンズ及び/又はメニスカスレンズを含み得る。後部作業距離レンズ704はアクロマートレンズを含み得る。主対物レンズ組立体702がアクロマート屈折組立体を含む例では、前部作業距離レンズ408は、半球レンズ及び/又はメニスカスレンズを含み得る。加えて、後部作業距離レンズ704は、アクロマートダブレットレンズ、レンズのアクロマートダブレット群、及び/又はアクロマートトリプレットレンズを含み得る。
主対物レンズ組立体702の倍率は6xから20xである。幾つかの場合、主対物レンズ組立体702の倍率は、作業距離に基づいて僅かに変化し得る。例えば、主対物レンズ組立体702は、200mm作業距離では倍率8.9x及び450mm作業距離では倍率8.75xを有し得る。
一例の後部作業距離レンズ704は、前部作業距離レンズ408に対して移動可能であり、それにより、後部作業距離レンズ704と前部作業距離レンズ408との間隔を変更するように構成される。レンズ408と704との間隔は、主対物レンズ組立体702の全体前方焦点距離、ひいては焦点面の位置を決める。幾つかの実施形態では、焦点距離は、レンズ408と704との間の距離に、前部作業距離レンズ408の厚さの半分を加えたものである。
前部作業距離レンズ408及び後部作業距離レンズ704は一緒に、下流の光学画像センサに最適なフォーカスを提供するために、無限共役像を提供するように構成される。換言すれば、標的部位700の厳密に焦点面に配置された物体は、その像を無限の距離に投影し、それにより、提供される作業距離において無限に結合される。一般に、物体は、焦点面から光路に沿って特定の距離にわたりピントが合って見える。しかしながら、特定の閾値距離を超えると、物体はぼやけるか、又はピンボケして見え始める。
図7は、前部作業距離レンズ408の外面と標的部位700の焦点面へとの間の距離である作業距離706を示す。作業距離706は視野角に対応し得、作業距離が長いほど、視野は広くなり、又は表示可能面積は大きくなる。それに従って作業距離706は、焦点が合った標的部位又はシーンの平面を設定する。図示の例では、作業距離706は、後部作業距離レンズ704を動かすことにより200mmから450mmまで調整可能である。一例では、視野は、作業距離が450mmである場合、上流のズームレンズを用いて20mm×14mm〜200mm×140mmで調整可能である。
図7及び図8に示される主対物レンズ組立体702は、左光路及び右光路の両方で、標的部位700の画像を提供する。これは、レンズ408及び704の幅が左右光路の少なくとも2倍であるべきことを意味する。代替の実施形態では、主対物レンズ組立体702は、左右別個の前部作業距離レンズ408及び左右別個の後部作業距離レンズ704を含み得る。別個の作業距離レンズの各対の幅は、図7及び図8に示されるレンズ408及び704の幅の1/4〜1/2であり得る。さらに、各後部作業距離レンズ704は独立して調整可能であり得る。
幾つかの実施形態では、主対物レンズ組立体702は置換可能であり得る。例えば、異なる主対物レンズ組立体を追加して、作業距離範囲、倍率、開口数、及び/又は屈折/反射タイプを変更し得る。これらの実施形態では、立体視覚化カメラ300は、下流の光学要素のポジショニング、光学画像センサの特性、及び/又は主対物レンズ組立体設置の際に基になる画像処理のパラメータを変更し得る。オペレータは、図3の制御機構305及び/又はユーザ入力デバイスの一方を用いて立体視覚化カメラ300にどの主対物レンズ組立体が設置されるかを指定し得る。
B.一例の照明源
標的部位700を照明するために、一例の立体視覚化カメラ300は1つ又は複数の照明源を含む。図7及び図8は、可視光源708a、近赤外線(「NIR」)光源708b、及び近紫外線(「NUV」)光源708cを含む3つの照明源を示す。他の例では、立体視覚化カメラ300は、追加の光源又はより少数の光源を含み得る(又は光源を含まないことがある)。例えば、NIR光源及びNUV光源は省くことが可能である。一例の光源708は、標的シーン700に投影される光を生成するように構成される。生成された光は標的シーンと相互作用し、標的シーンから反射され、光の幾らかは主対物レンズ組立体702に反射される。他の例は、外部光源又は環境からの周囲光を含み得る。
一例の可視光源708aは、可視領域外の波長を有する幾らかの光に加えて、光スペクトルの人間可視部分の光を出力するように構成される。NIR光源708bは、「近赤外線」とも呼ばれる、主に、可視スペクトルの赤色部分を僅かに超えた波長にある光を出力するように構成される。NUV光源708cは、「近紫外線」とも呼ばれる、主に、可視スペクトルの青色部分における波長における光を出力するように構成される。光源708により出力される光スペクトルは、後述する各コントローラにより制御される。光源708により発せられる光の輝度は、切り替え率及び/又は印加電圧波形により制御し得る。
図7及び図8は、可視光源708a及びNIR光源708bが主対物レンズ組立体702を通して直接、標的部位700に提供されることを示す。図8に示されるように、可視光源708aからの可視光は、可視経路710aに沿って伝搬する。さらに、NIR光源708bからのNIR光はNIR経路710bに沿って伝搬する。光源708a及び708bは主対物レンズ組立体702の背後(標的部位700に関して)にあるものとして示されているが、他の例では、光源708a及び708bは、主対物レンズ組立体702の前に提供し得る。一実施形態では、光源708a及び708bは、筐体302の外部に標的部位700に面して提供し得る。更に他の実施形態では、光源708は、例えば、Koeher照明セットアップ及び/又は暗視野照明セットアップを用いて立体視覚化カメラ300とは別個に提供し得る。
光源708a及び708bとは対照的に、NUV光源708cからのNUV光は、落射照明セットアップを用いて、偏向要素712(例えば、ビームスプリッタ)によって主対物レンズ組立体702に反射される。偏向要素712は、NUV波長範囲を超える光のみを反射するように塗膜又は他の方法で構成し得、それにより、NUV光を濾波する。NUV光源708cからのNUV光は、NUV経路710cに沿って伝搬する。
幾つかの実施形態では、NIR光源708b及びNUV光源708cは、フィルタ(例えば、フィルタ740)によってブロックされなかった光を更にフィルタリングする励起フィルタと併用し得る。フィルタは、主対物レンズ組立体702の前及び/又は主対物レンズ組立体の後で、光源708b及び708cの前に配置し得る。NUV光源708b及びNIR光源708cからの光は、濾波後、解剖学的物体の蛍光部位914(図9に示される)における蛍光を励起する波長を含む。さらに、NUV光源708c及びNIR光源708bからの光は、濾波後、蛍光部位914によって発せられるものと同じ範囲にはない波長を含み得る。
光源708から主対物レンズ組立体を通る光の投影は、作業距離706及び/又は焦点面に基づいて照明される視野を変更するという利点を提供する。光は主対物レンズ組立体702を通るため、光が投影される角度は、作業距離706に基づいて変わり、視野角に対応する。それに従ってこの構成は、作業距離又は倍率に関係なく、視野が光源708により適宜照明されることを保証する。
C.一例の偏向要素
図7及び図8に示される一例の偏向要素712は、主対物レンズ組立体702を通してNUV光源708cからの特定の波長の光を標的部位700に透過させるように構成される。偏向要素712は、標的部位700から受け取った光を、ズーム及び記録のために、前部レンズセット714を含む下流の光学要素に反射するようにも構成される。幾つかの実施形態では、偏向要素712は、特定の波長の光が前部レンズセット714に達するように、主対物レンズ組立体702を通して、標的部位700から受け取った光を濾波し得る。
偏向要素712は、光を指定された方向に反射する任意のタイプのミラー又はレンズを含み得る。一例では、偏向要素712はダイクロイックミラー又はフィルタを含み、ダイクロイックミラー又はフィルタは、異なる波長で異なる反射及び透過特性を有する。図7及び図8の立体視覚化カメラ300は、右光路及び左光路の両方に光を提供する1つの偏向要素712を含む。他の例では、カメラ300は、右光路及び左光路のそれぞれに別個の偏向要素を含み得る。さらに、別個の偏向要素をNUV光源708cに提供し得る。
図9は、本開示の実施形態例による、図7及び図8の偏向要素712の図を示す。簡潔にするために、主対物レンズ組立体702は示されていない。この例では、偏向要素712は、特定の波長の光を透過及び反射する2つの平行面902及び904を含む。平行面902及び904は、左右の光路(経路906として表される)に対して45°の角度に設定される。45°の角度は、この角度が反射光を透過光から90°の角度で伝搬させ、それにより、分離された光を下流の前部レンズセット714において検出させることなく最適な分離を提供するため、選択される。他の実施形態では、偏向要素712の角度は、非意図的に不要な波長の光を伝搬せずに、10度〜80度であることができる。
一例のNUV光源708cは偏向要素712の背後(標的部位700に関して)に配置される。光源708cからの光は、経路908に沿って伝搬し、偏向要素712に接触する。NUV光源708cの主な波長範囲前後のNUV光は、偏向要素712を透過し、経路910に沿って標的部位700に達する。NUV光源708cの主な波長範囲を超える(及び下回る)波長を有するNUV光源708cからの光は反射され、経路912に沿って光シンク又は筐体302の非使用領域に達する。
NUV光は、標的部位700に達すると、解剖学的物体の1つ又は複数の蛍光部位914によって吸収される。幾つかの場合、解剖学的物体には、NUV光を吸収し、異なる主波長の光を発するように構成された造影剤が注入されていることがある。他の場合、解剖学的物体は自然にNUV光を吸収し、異なる主波長の光を発し得る。蛍光部位914により反射又は発せられた光の少なくとも幾らかは、偏向要素712に接触するまで経路916に沿って伝搬する。光の大半は表面904から反射され、経路906に沿って前部レンズセット714に達する。NUV光源708cの主な波長範囲前後のNUV光を含む光の一部は、偏向要素712を透過し、経路918に沿って光シンク又は筐体302の非使用領域に送られる。それに従って図9に示される偏向要素712は、刺激光の大部分を下流の前部レンズセット714への伝達をブロックしながら、スペクトルのある領域を有する標的部位700における蛍光剤の光学刺激を可能にする。
偏向要素712の反射特性及び透過特性が、他の光スペクトル要件に合うように変更可能なことを理解されたい。幾つかの場合、筐体302は、所望の光反射特性及び透過特性に基づいて偏向要素712及び/又はNUV光源708cを交換できるようにするスロットを含み得る。経路908と経路910との間の偏向要素712内部の第1の経路及び経路916と経路918との間の偏向要素712内部の第2の経路がそれぞれ傾斜して、光が空気と偏向要素712の内部との間を移動する際の光の屈折を概略的に表すことも理解されたい。示される角度は、実際の反射角度を表す意図はない。
D.一例のズームレンズ
図7及び図8の一例の立体視覚化カメラ300は、標的部位700の焦点距離及び視野角を変更して、ズーム倍率を提供する1枚又は複数枚のズームレンズを含む。図示の例では、ズームレンズは、前部レンズセット714、ズームレンズ組立体716、及びレンズバレルセット718を含む。他の実施形態では、前部レンズセット714及び/又はレンズバレルセット718が省略可能であることを理解されたい。代替的には、ズームレンズは追加のレンズを含み得、更なる倍率及び/又は画像分解能を提供する。
前部レンズセット714は、右光路用の右前部レンズ720及び左光路用の左前部レンズ722を含む。レンズ720及び722はそれぞれ、偏向要素712からの光をズームレンズ組立体716内の各レンズに向ける正収束レンズを含み得る。それに従ってレンズ720及び722の側方位置は、ズームレンズ組立体716に伝搬する、主対物レンズ組立体702及び偏向要素712からのビームを定義する。
レンズ720及び722の一方又は両方は、左右の光路の光軸に合うように半径方向において調整可能であり得る。換言すれば、レンズ720及び722の一方又は両方は、光路に入射する平面において左右及び/又は上下に移動し得る。幾つかの実施形態では、レンズ720及び722の1枚又は複数枚は回転又はチルトして、画像光学欠陥及び/又は疑似視差を低減するか、又はなくし得る。ズーム中にレンズ720及び722のいずれか一方又は両方の移動は、各光路のズーム反復点(「ZRP」)をユーザにとって静止したままであるように見えるようにし得る。半径方向の運動に加えて、前部レンズ720及び722の一方又は両方は、光路の倍率に合うように軸方向に(各光路に沿って)移動し得る。
一例のズームレンズ組立体716は、レンズバレルセット718に伝搬する光線のサイズを変更することにより、視野(例えば、線形視野)のサイズを変更するアフォーカルズーム系を形成する。ズームレンズ組立体716は、右前部ズームレンズ726及び左前部ズームレンズ728を有する前部ズームレンズセット724を含む。ズームレンズ組立体716は、右後部ズームレンズ732及び左後部ズームレンズ734を有する後部ズームレンズセット730も含む。前部ズームレンズ726及び728は正収束レンズであり得、一方、後部ズームレンズ732及び734は負発散レンズを含む。
左右光路のそれぞれの画像ビームのサイズは、前部ズームレンズ726及び728、後部ズームレンズ732及び734、並びにレンズバレルセット718間の距離に基づいて決まる。一般に、光路のサイズは、後部ズームレンズ732及び734がレンズバレルセット718に向かって移動する(各光路に沿って)につれて低減し、それにより、倍率が下がる。加えて、前部ズームレンズ726及び728も、後部ズームレンズ732及び734がレンズバレルセット718に向かって移動するにつれて、レンズバレルセット718に向かって(又は離れて)移動して(放物線弧において等)、焦点面の位置を標的部位700上に維持し得、それにより、フォーカスを維持する。
前部ズームレンズ726及び728は、第1のキャリア内に含まれ得(例えば、前部ズームセット724)、一方、後部ズームレンズ732及び724は第2のキャリア内に含まれる(例えば、後部ズームセット730)。各キャリア724及び730は、左右の倍率が同時に変わるように、トラック(又はレール)上を光路に沿って移動し得る。この実施形態では、左右光路間のいずれの僅かな倍率差も、右前部レンズ720及び/又は左前部レンズ722を移動させることにより補正し得る。追加又は代替として、レンズバレルセット718の右レンズバレル736及び/又は左レンズバレル738は、軸方向に移動し得る。
代替の実施形態では、右前部ズームレンズ726は、左前部ズームレンズ728とは別個に軸方向に移動し得る。加えて、右後部ズームレンズ732は、左後部ズームレンズ734とは別個に軸方向に移動し得る。別個の移動により、特に前部レンズセット714及びレンズバレルセット718が光路に沿って静止しているとき、ズームレンズ組立体716により小さな倍率差を補正できるようにする。さらに、幾つかの実施形態では、右前部ズームレンズ726及び/又は左前部ズームレンズ728は、半径方向及び/又は回転方向に調整可能であり得(及び/又はチルトし得)、それにより、ZRPの見掛けの位置を光路内に維持する。追加又は代替として、右後部ズームレンズ732及び/又は左後部ズームレンズ734は、波形方向及び/又は回転方向に調整可能であり得(及び/又はチルトし得)、それにより、ZRPの見掛けの位置を光路内に維持する。
一例のレンズバレルセット718は、右レンズバレル736及び左レンズバレル738を含み、これらは、ズームレンズ組立体716に加えてアフォーカルズーム系の一部である。レンズ736及び738は、ズームレンズ組立体716からの光線を直線化又はフォーカスするように構成された正収束レンズを含み得る。換言すれば、レンズ736及び738は、ズームレンズ組立体716の無限結合出力をフォーカスする。
幾つかの例では、レンズバレルセット718は、筐体302内で半径方向及び軸方向において固定される。他の例では、レンズバレルセット718は、光路に沿って軸方向に移動可能であり、それにより、倍率の増大を提供し得る。追加又は代替として、レンズ736及び738のそれぞれは、半径方向及び/又は回転方向において調整可能であり得(及び/又はチルトし得)、それにより、例えば、前部レンズセット714、前部ズームレンズセット724、及び/又は後部ズームレンズセット730の左右レンズ間の光学特性差(倍率又は天然ガラスのずれ)を補正する。
一例の前部レンズセット714、ズームレンズ組立体716、及びレンズバレルセット718は一緒に、好ましくは回折限界分解能を有するズームレンズにおいて、5Xから約20Xの光学ズームを達成するように構成される。幾つかの実施形態では、前部レンズセット714、ズームレンズ組立体716、及びレンズバレルセット718は、画質を妥協することができる場合、より高いズーム範囲(例えば、25Xから100X)を提供し得る。これらの実施形態では、立体視覚化カメラ300は、選択された光学範囲が光学範囲外であり、画質の低下を受けることを示すメッセージをオペレータに出力し得る。
幾つかの実施形態では、前部レンズセット714、ズームレンズ組立体716、レンズバレルセット718、及び/又は主対物レンズ組立体702のレンズはそれぞれ、互いの光学歪みパラメータのバランスをとる材料を用いて、複数の光学サブ要素からダブレットとして構築し得る。ダブレット構築は、色収差及び光学収差を低減する。例えば、前部作業距離レンズ408及び後部作業距離レンズ702はそれぞれ、ダブレットとして構築し得る。別の例では、前部レンズ720及び722、前部ズームレンズ726及び728、後部ズームレンズ732及び734、並びにレンズバレル736及び738はそれぞれ、ダブレットレンズを含み得る。
更なる実施形態では、前部レンズセット714、ズームレンズ組立体716、レンズバレルセット718、及び/又は主対物レンズ組立体702のレンズは、異なるように調整し得、及び/又は異なる特性を有し得、それにより、異なる機能を有する2つの平行光路を提供する。例えば、ズームレンズ組立体716内の右レンズは、右光路に5Xから10Xの光学ズームを提供するように選択し得、一方、ズームレンズ組立体716内の左レンズは、左光路に15Xから20Xの光学ズームを提供するように選択される。そのような構成は、平面視ビューであるが、2つの異なる倍率を同時に及び/又は同じ画面上に表示できるようにし得る。
E.一例のフィルタ
図7及び図8の一例の立体視覚化カメラ300は、所望の波長の光を選択的に透過する1つ又は複数の光学フィルタ740(又はフィルタ組立体)を含む。図8は、1つのフィルタ740を左右光路に適用し得ることを示す。他の例では、各光路は別個のフィルタを有し得る。別個のフィルタの包含により、例えば、左右光路からの異なる波長の光を同時に濾波することができ、それにより、例えば、可視光画像と併せて蛍光画像を表示することができる。
図7は、フィルタ740が回転軸を中心として回転する車輪を含むことを示す。図示の実施形態では、フィルタ740は3つの異なる光学フィルタ対を収容することができる。しかしながら、他の実施形態では、フィルタ740は追加又はより少数のフィルタ対を含み得る。一般に、標的部位700からフィルタ740において受け取った光は、広帯域スペクトルの波長を含む。主対物レンズ組立体702、前部レンズセット714、ズームレンズ組立体716、及びレンズバレルセット718のレンズは、オペレータにとって関心がある波長及び望ましくない波長を含む比較的広帯域の光を透過するように構成される。加えて、下流の光学画像センサは特定の波長に対して感度を有する。それに従って一例のフィルタ740は、光スペクトルの特定の部分を透過及びブロックして、異なる所望の特徴を達成する。
車輪として、フィルタ740は、毎秒約4回で位置を変更可能な機械デバイスを備える。他の実施形態では、フィルタ740はデジタル微小ミラーを含み得、デジタル微小ミラーは、毎秒60回等のビデオフレームレートで移行路方向を変更することができる。これらの他の実施形態では、左右光路のそれぞれが微小ミラーを含む。左右の微小ミラーは、同期された切り替え又は同時切り替えを有し得る。
幾つかの実施形態では、フィルタ740は光源708と同期して、「時間インターリーブ」マルチスペクトル撮像を実現し得る。例えば、フィルタ740は、赤外線遮断フィルタ、近赤外線バンドパスフィルタ、及び近紫外線遮断フィルタを含み得る。異なるフィルタタイプが、光源708の異なるスペクトル並びに偏向要素712のハンスンは特性及び透過特性と併せて機能して、所定の回数、特定の所望の波長の光を透過するように選択される。
一モードでは、フィルタ740及び光源708は、可視光モードを提供するように構成される。このモードでは、可視光源708aは、可視領域からの光を標的部位700に押下させ、その幾らかは主対物レンズ組立体702に反射される。反射光は、光学画像センサに影響し得る可視スペクトルを超えた幾らかの光を含み得る。可視光は、偏向要素712により反射され、前部レンズセット714、ズームレンズ組立体716、及びレンズバレルセット718を透過する。この例では、フィルタ740は、赤外線遮断フィルタ又は近紫外線遮断フィルタを光路に適用して、可視スペクトル内の光のみが最終光学セット742及び光学画像センサ744を透過するように、可視スペクトル外の光を除去するように構成される。
別のモードでは、フィルタ740及び光源708は、狭波長の蛍光のみを光学センサ744に提供するように構成される。このモードでは、NUV光源708cは、スペクトルの藍色領域からの光を標的部位700に透過させる。偏向要素712は、藍色領域の所望の光を透過させ、その間、望ましくない光を反射する。藍色光は、蛍光が発せられるように標的部位700と相互作用する。幾つかの例では、δ−アミノレブリン酸(「5ala」)及び/又はプロトポルフィリンIXが標的部位700に適用されて、藍色光を受け取ったとき、蛍光を発するようにさせる。主対物レンズ組立体702は、反射された藍色光及び幾らかの可視光に加えて蛍光を受け取る。藍色光は左右光路から出て偏向要素712を透過する。したがって、可視光及び蛍光のみが、前部レンズセット714、ズームレンズ組立体716、及びレンズバレルセット718を透過する。この例では、フィルタ740は、近紫外線遮断フィルタを光路に適用して、可視光及び任意の残留NUV藍色光を含む所望の蛍光スペクトル外の光を除去するように構成される。したがって、狭波長の蛍光のみが光学画像センサ744に達し、相対強度に基づいて蛍光をより容易に検出し、区別できるようにする。
更に別のモードでは、フィルタ740及び光源708は、インドシアニングリーン(「ICG」)蛍光を光学センサ744に提供するように構成される。このモードでは、NIV光源708bは、可視スペクトルの遠赤領域(近赤外線とも見なされる)の光を標的部位700に送る。加えて、可視光源708aが、可視光を標的シーン700に送る。可視光及び遠赤光は、標的部位におけるICGを有する材料によって吸収され、ICGは次に、更に遠赤の領域の高刺激蛍光を発する。主対物レンズ組立体702は、反射されたNIR光及び可視光に加えて蛍光を受け取る。光は偏向要素712により前部レンズセット714、ズームレンズ組立体716、及びレンズバレルセット718に反射される。この例では、フィルタ740は、近赤外線バンドパスフィルタを光路に適用して、可視光及びNIR光の少なくとも幾らかを含む所望の蛍光スペクトル外の光を除去するように構成される。したがって、更に遠赤の領域の蛍光のみが光学画像センサ744に達し、相対強度に基づいて蛍光をより容易に検出し、区別できるようにする。
上記表1は、特定の所望の波長の光を光学センサ744に到達させる光源とフィルタとの可能な異なる組合せをまとめたものを示す。画像センサ744において受け取られる異なるタイプの光を更に増大させるために、他のタイプのフィルタ及び/又は光源を使用してもよいことを理解されたい。例えば、標的部位700に適用される特定の生物学的染料又は造影剤に対応する狭波長の光を透過するように構成されたバンドパスフィルタを使用し得る。幾つかの例では、フィルタ740は、連結されたフィルタ又は2つ以上のフィルタを含み得、それにより、2つの異なる範囲からの光を濾波できるようにする。例えば、第1のフィルタ740は、所望の波長範囲の可視光のみが光学センサ744に透過されるように、赤外線遮断フィルタ及び近紫外線遮断フィルタを適用し得る。
他の実施形態では、別個のフィルタ740を左右の光路に使用し得る。例えば、右フィルタは赤外線遮断フィルタを含み得、一方、左フィルタは近赤外線透過フィルタを含む。そのような構成では、IGC緑色蛍光波長と同時に、可視波長での標的部位700の表示が可能である。別の例では、右フィルタは赤外線遮断フィルタを含み得、一方、左フィルタは近紫外線遮断フィルタを含む。この構成では、標的部位700は、5ALA蛍光と同時に可視光で表示し得る。これらの他の実施形態では、右及び左画像ストリームはなお、結合して、可視光での標的部位700のビューと組み合わせた特定の解剖学的構造の蛍光ビューを提供する立体ビューにし得る。
F.一例の最終光学要素セット
図7及び図8の一例の立体視覚化カメラ300は、フィルタ740から受け取った光を光学画像センサ744にフォーカスする最終光学要素セット742を含む。最終光学要素セット742は、右最終光学要素745及び左最終光学要素747を含み、これらはそれぞれ正収束レンズを含み得る。光の収束に加えて、光学要素745及び747は、光が光学画像センサ744に達する前、左右光路における微小な収差を補正するように構成し得る。幾つかの例では、レンズ745及び747は、半径方向及び/又は軸方向に移動可能であり得、それにより、前部レンズセット714、ズームレンズ組立体716、及びレンズバレルセット718により生じる倍率及び/又は合焦収差を補正する。一例では、左最終光学要素747は半径方向において移動し得、一方、右の最終光学要素745は固定されて、倍率変更中、ZRP移動を除去する。
G.一例の画像センサ
図7及び図8の一例の立体視覚化カメラ300は、最終光学要素セット742から受け取った入射光を取得及び/又は記録する画像センサ744を含む。画像センサ744は、右光路に沿って伝搬する光を取得及び/又は記録する右光学画像センサ746及び左光路に沿って伝搬する光を取得及び/又は記録する左光学画像センサ748を含む。左光学画像センサ746及び右光学画像センサ748のそれぞれは、例えば、相補形金属酸化膜半導体(「CMOS」)検知要素、N型金属酸化膜半導体(「NMOS」)、及び/又は半導体電荷結合素子(「CCD」)検知要素を含む。幾つかの実施形態では、左光学センサ746及び右光学センサ748は同一であり、及び/又は同じ特性を有する。他の実施形態では、左光学センサ746及び右光学センサ748は、様々な機能を提供する異なる検知要素及び/又は特性を含む。例えば、右光学画像センサ746(第1のカラーフィルタアレイを使用する)は、青色蛍光により高感度であるように構成し得、一方、左光学画像センサ748(第2のカラーフィルタアレイを使用する)は、可視光により高感度であるように構成される。
図10は、本開示の実施形態例による、画像センサ744の右光学画像センサ746及び左光学画像センサ748の一例を示す。右光学画像センサ746は、感光要素(例えば、ピクセル)の第1の二次元グリッド又はマトリックス1002を含む。加えて、左光学画像センサ748は、感光要素の第2の二次元ピクセルグリッド1004を含む。各ピクセルは、特定の波長の光のみを透過し、それにより、下の光検出器に接触できるようにするフィルタを含む。異なる色のフィルタがセンサ746及び748にわたり拡散して、グリッドにわたり全波長の光検出を提供する。光検出器は、可視光並びに可視スペクトルの上及び下の追加の範囲に感度を有し得る。
グリッド1002及び1004の感光要素は、視野内にある標的部位700の表現として、様々な波長の光を記録するように構成される。感光要素に入射した光は、電荷を蓄積させる。電荷を読み出して、検知要素において受け取っている光の量を特定する。加えて、検知要素のフィルタ特性は製造許容誤差内であることが分かっているため、受け取った光の波長の範囲は既知である。標的部位700の表現は、各光学画像センサ746及び748のグリッド1002及び1004が標的部位700を空間的にサンプリングするように、感光要素に向けられる。空間サンプリングの分解能は、画質及びパリティに影響するパラメータである。
図10においてピクセルグリッド1002及び1004に示されるピクセルの数は、光学画像センサ746及び748における実際のピクセルの数を表さない。代わりに、センサは通常、1280×720ピクセル及び8500×4500ピクセル、好ましくは約2048×1560ピクセルの分解能を有する。しかしながら、グリッド1002及び1004の全てのピクセルが画像伝送に選択されるわけではない。代わりに、グリッド1002及び1004のサブセット又はピクセルセットが送信に選択される。例えば、図10では、ピクセルセット1006は、右画像としての伝送にピクセルグリッド1002から選択され、ピクセルセット1008は、左画像としての伝送にピクセルグリッド1004から選択される。示されるように、ピクセルセット1006は、各ピクセルグリッド1002及び1004に関連して、ピクセルセット1008と同じ位置に配置される必要はない。ピクセルセット1006及び1008の別個の制御により、左画像及び右画像を位置合わせし、及び/又は移動するZRP等の画像欠陥及び/又は疑似視差を補正することができる。
ピクセルグリッドからのピクセルセットの選択により、画像欠陥/疑似視差を補正し、及び/又は右光学画像及び左光学画像をより正確に位置合わせするピクセルグリッドの一部を選択することができる。換言すれば、ピクセルセットは、ピクセルグリッドに対して移動又は調整されて(リアルタイムで)、疑似視差を低減又はなくすことにより画質を改善し得る。代替的には、立体画像の左ビュー及び右ビューの一方又は両方は、画像処理パイプラインで垂直に動かして(例えば、表示のためのビューのレンダリング中)、同じ効果を達成することができる。センサの回転位置合わせずれも垂直に補正することができる。ピクセルセットは、使用中、ピクセルグリッドにわたっても移動して、視野をパンする外観を提供することもできる。一例では、2048×1560ピクセルを有するピクセルグリッドから、1920×1080ピクセルのウィンドウのピクセルセットを選択し得る。ピクセルウィンドウ又はセットの位置は、ソフトウェア/ファームウェアにより制御し得、セットアップ及び/又は使用中、移動し得る。それに従って光学画像センサ746及び748の分解能は、ピクセルセット又はウィンドウの長さ方向及び幅方向におけるピクセル数に基づいて指定される。
1.一例の画像センサを用いての色検知
上述したように、光学検知要素746及び748は、特定の色の光を検出する異なるフィルタを有するピクセルを含む。例えば、幾つかのピクセルは、主に赤色光を透過するフィルタで覆われ、幾つかは主に緑色光を透過するフィルタで覆われ、幾つかは主に青色光を透過するフィルタで覆われる。幾つかの実施形態では、ベイヤーパターンがピクセルグリッド1002及び1004に適用される。しかしながら、他の実施形態では、特定の波長の光に最適化された異なるカラーパターンを使用することもできることを理解されたい。例えば、各検知領域における緑色フィルタを広帯域フィルタ又は近赤外線フィルタで置換し、それにより、検知スペクトルを広げ得る。
ベイヤーパターンは、ピクセルの2行×2列をグループ化し、それぞれ碁盤の目パターンで1つを赤色フィルタで覆い、1つを青色フィルタで覆い、2つを緑色フィルタで覆うことにより実施される。したがって、赤及び青の分解能はそれぞれ、対象となる検知領域全体の1/4であり、一方、緑色分解能は、対象となる検知領域全体の半分である。
緑色は検知領域の半分に割り当てられて、光学画像センサ746及び748にルミナンスセンサとして動作させ、人間の視覚系を模倣させ得る。加えて、赤及び青は、人間の視覚系のクロミナンスセンサを模倣するが、緑色検知ほど重要ではない。特定の領域での赤、緑、及び青の量が特定されると、後述する図16のデベイヤープログラム1580aを併せて考察するように、赤値、緑値、及び青値を平均することにより、可視スペクトル内の他の色が特定される。
幾つかの実施形態では、光学画像センサ746及び748は、フィルタではなく、積層構成要素を使用して、色を検知し得る。例えば、検知要素は、ピクセルエリア内部に垂直に積み重ねられた赤、緑、及び青の検知構成要素を含み得る。幾つかの別の例では、プリズムは、特に塗膜されたビームスプリッタを使用して、検知要素が各分割ビーム経路に配置された状態で、入射光を成分に1回又は複数回(通常、少なくとも2回で、「3チップ」として知られる3成分色が生成される)分割する。他のセンサタイプは、緑色フィルタの1つを広帯域フィルタ又は近赤外線フィルタで置換する等の異なるパターンを使用し、それにより、デジタル外科用顕微鏡の検知可能性を広げる。
2.一例の画像センサを用いての可視範囲外の光の検知
光学画像センサ746及び748の一例の検知要素フィルタは、検知要素が検出することができる範囲内の近紫外線光を透過するようにも構成される。これにより、光学画像センサ746及び748は可視範囲外の少なくとも幾らかの光を検出することができる。そのような感度は、画像を「ウォッシュアウト」し、多くのタイプの画面でコントラストを下げ、色品質に悪影響を及ぼすため、スペクトルの可視部分における画質を低減させる恐れがある。その結果、フィルタ740は、赤外線遮断フィルタを使用して、可視波長を光学画像センサ746及び748に透過させながら、近赤外線波長をブロックし得る。
しかしながら、そのような近赤外線感度が望ましいことがある。例えば、ICG等の蛍光剤を標的部位700に導入することができる。ICGは、可視又は他の波長又は光で励起又は活性化し、近赤外線範囲の蛍光を発する。上述したように、NIR光源708bはNIR光を提供し、可視光源708aは可視光を提供して、ICGを用いる薬剤を励起させる。励起光は更に赤色スペクトルに沿い、これは、近赤外線バンドパス又はハイパスフィルタを使用してフィルタ740に透過し得る。次に、赤色スペクトルからの光は、光学画像センサ746及び748により検出される。フィルタ740のスペクトル特性を光源708及び蛍光剤の予期される挙動と合わせることにより、標的部位700における薬剤を含む血液等の薬剤及び生物学的構造を、薬剤を含まない他の構造から区別することができる。
なお、この例では、NIR光源708bは、フィルタ740内の近赤外線フィルタと異なる主波長を有する。特に、NIR光源708bは、約780ナノメートル(「nm」)(概ねこの前後に光の出力スペクトルの大半が存在する)の主波長を有する。これとは対照的に、フィルタ740の近赤外線フィルタは、約810nmから910nmの範囲の波長の光を透過する。NIR光源708bからの光及びフィルタ740を透過した光は両方とも「近赤外線」波長である。しかしながら、光波長は、一例の立体視覚化カメラ300が光源708を用いて刺激し、刺激光を濾波しながら光学画像センサ744を用いて検出することができるように分離される。それに従ってこの構成により、蛍光剤の使用が可能になる。
別の実施形態では、薬剤は青色、紫色、及び近紫外線領域で励起し、赤色領域の光を蛍光することができる。そのような薬剤の一例には、5ALAの導入によって生じる悪性神経膠腫内のポルフィリン蓄積がある。この例では、青色光を、残りのスペクトルを透過しながら濾波して除外する必要がある。この状況では近紫外線遮断フィルタが使用される。上述した「近赤外線」の場合と同様に、NUV光源708cは、フィルタ740内の近紫外線遮断フィルタとは異なる主波長を有する。
H.一例のレンズキャリア
先のセクションIV(D)では、前部レンズセット714、ズームレンズ組立体716、及び/又はレンズバレルセット718のレンズの少なくとも幾つかが、レールに沿って1つ又は複数のキャリアで移動し得ることを述べた。例えば、前部ズームレンズセット724は、前部ズームレンズ726及び728を一緒に軸方向に移動させるキャリアを備え得る。
図11及び図12は、本開示の実施形態例による一例のキャリアの図を示す。図11では、キャリア724は、支持構造体1102内に右前部ズームレンズ726及び左前部ズームレンズ728を含む。キャリア724は、レール1106に移動可能に接続するように構成されたレールホルダ1104を含む。力「F」が作動セクション1108に印加されて、キャリア724をレール1106に沿って移動させる。力「F」は、リードねじ又は他の線形作動デバイスにより印加し得る。図11に示されるように、力「F」はキャリア724のオフセットに印加される。レール1106とキャリア724との摩擦が、モーメントMyを生成し、モーメントMyは支持構造体1102を図11に示されるY軸の回りを僅かに移動させる。この僅かな移動は、右前部ズームレンズ726及び左前部ズームレンズ728を逆方向に僅かにシフトさせ、立体画像のビュー間の視差誤差である疑似視差を生じさせる恐れがある。
図12は別の例のキャリア724を示す。この例では、力「F」は、レールホルダ1104及び支持構造体1102に接続された中心構造体1202に対称に印加される。力「F」はモーメントMxを生成し、モーメントMxはキャリア724を図12に示されるX軸の回りを僅かに回転又は移動させる。回転運動は、右前部ズームレンズ726及び左前部ズームレンズ728を同じ度数の運動だけ同じ方向にシフトさせ、それにより、疑似視差の発生を低減する(又はなくす)。
図11及び図12は1つのキャリア内のレンズ726及び728を示すが、他の実施形態では、レンズ726及び728はそれぞれキャリア内にあり得る。これらの例では、各レンズは別個のトラック又はレール上にある。別個のリードねじを各レンズに提供して、各光路に沿った独立した軸方向運動を提供し得る。
I.一例の屈曲部
先のセクションIV(D)では、前部レンズセット714、ズームレンズ組立体716、及び/又はレンズバレルセット718のレンズの少なくとも幾つかが、半径方向に移動、回転、及び/又はチルトし得ることを述べた。追加又は代替として、光学画像センサ746及び748は、軸方向に移動し、及び/又は各入射光路に関してチルトし得る。軸方向運動及び/又はチルト運動は、1つ又は複数の屈曲部により提供し得る。幾つかの例では、屈曲部は、第1の屈曲部が第1の方向での運動を提供し、別個の屈曲部が第2の方向での独立した運動を提供するように連結し得る。別の例では、第1の屈曲部は、ピッチ軸に沿ったチルトを提供し、別個の屈曲部はヨー軸に沿ったチルトを提供する。
図13は、本開示の実施形態例による一例の二重屈曲部1300の図を示す。図13に示される屈曲部1300は、光学画像センサ744用のものであり、最終的なフォーカスのために、各光軸に沿って右光学画像センサ746及び左光学画像センサ748を独立して移動させるように構成される。屈曲部1300は、一例の立体視覚化カメラ300の筐体302に接続し、作動のための剛性ベースを提供するための支持梁1301を含む。屈曲部1300は、運動方向1310を除き全方向で剛性の、各チャネル(例えば、センサ746及び748)の梁1302も含む。梁1302は、梁1302を運動方向1310、この例では平行四辺形並進において移動できるようにする可撓性ヒンジ1303に接続される。
アクチュエータデバイス1304は、所望の方向に所望の距離だけ梁1302を屈曲させる。アクチュエータデバイス1304は、各チャネルに押しねじ1306及び引きねじ1308を含み、これらのねじは逆の力を梁1302に印加して、可撓性ヒンジ1303を移動させる。梁1302は、例えば、押しねじ1306を回して梁1302を押すことにより内側に移動し得る。図13に示される屈曲部1300は、右光学画像センサ746及び左光学画像センサ748を軸方向にそれぞれの光軸に沿って独立して移動させるように構成される。
梁1302が所望の位置に屈曲した後、ロック機構に係合して、更なる移動を阻止し、それにより、剛性カラムを生み出す。ロック機構は、押しねじ1306及びそれぞれの同心引きねじ1308を含み、これらのねじは、締められると、梁1302の剛性カラムを生じさせる大きな逆の力を生成する。
光学画像センサ746及び748は同じ屈曲部1300に接続されて示されるが、他の例では、センサは別個の屈曲部に接続し得る。例えば、図8に戻ると、右光学画像センサ746は屈曲部750に接続され、左光学画像センサ748は屈曲部752に接続される。別個の屈曲部750及び752の使用により、光学画像センサ746及び748は、例えば、左右の光学ビューを位置合わせし、及び/又は疑似視差を低減又はなくすように別個に調整することができる。
加えて、図13は屈曲部1300に接続された画像センサ746及び748を示すが、他の例では、前部レンズセット714、ズームレンズ組立体716、レンズバレルセット718、及び/又は最終光学要素セット742のレンズは、代わりに代替又は追加の屈曲部に接続し得る。幾つかの場合、前部レンズセット714、ズームレンズ組立体716、レンズバレルセット718、及び/又は最終光学要素セット742の左右の各レンズは、別個の屈曲部1300に接続されて、独立した半径方向、回転方向、及び/又はチルトの調整を提供し得る。
屈曲部1300は、1μm未満の運動分解能を提供し得る。非常に細かい運動調整の結果として、左右の光路からの画像は、4Kディスプレイモニタで数ピクセル、さらには1ピクセルの位置合わせ精度を有し得る。そのような精度は、左右のビューを重ね、立体視ではなく両ビューを両目で観測することにより、各ディスプレイ512、514で閲覧し得る。
幾つかの実施形態では、屈曲部1300は、「SYSTEM FOR THE SUB−MICRON POSITIONING OF A READ/WRITE TRANSDUCER」という名称の米国特許第5,359,474号明細書に開示される屈曲部に含むことができ、この特許を全体的に参照により本明細書に援用する。更に他の実施形態では、前部レンズセット714、ズームレンズ組立体716、レンズバレルセット718、及び/又は最終光学要素セット742のレンズは、半径方向において静止し得る。代わりに、光路において調整可能な偏向方向を有する偏向要素(例えば、ミラー)を使用して、右光路及び/又は左光路を操縦して、位置合わせ及び/又は疑似視差を調整し得る。追加又は代替として、チルト/シフトレンズを光路に提供し得る。例えば、光軸のチルトは、調整可能なウェッジレンズを用いて制御し得る。更なる実施形態では、前部レンズセット714、ズームレンズ組立体716、レンズバレルセット718、及び/又は最終光学要素セット742のレンズは、電子的に変更することができるパラメータを有する動的レンズを含み得る。例えば、レンズは、Invenios France SAS製のVarioptic液晶レンズを含み得る。
V.立体視覚化カメラの一例のプロセッサ
一例の立体視覚化カメラ300は、右光路及び左光路からの画像データを記録し、画像データを立体画像として表示するためにモニタ512及び/又は514に出力するように構成される。図14は、本開示の実施形態例による、画像データを取得し処理する一例の立体視覚化カメラ300のモジュールの図を示す。モジュールが、特定のハードウェア、コントローラ、プロセッサ、ドライバ、及び/又はインターフェースにより実行される動作、メソッド、アルゴリズム、ルーチン、及び/又はステップを示すことを理解されたい。他の実施形態では、モジュールは結合、更に分割、及び/又は削除し得る。さらに、モジュール(又はモジュールの部分)の1つ又は複数は、リモートサーバ、コンピュータ、及び/又は分散計算環境等の立体視覚化カメラ300の外部に提供し得る。
図14の図示の実施形態では、図7から図13における構成要素408、702〜750、及び1300はまとめて光学要素1402と呼ばれる。光学要素1402(特に光学画像センサ746及び748)は、画像捕捉モジュール1404及びモータ・照明モジュール1406に通信可能に結合される。画像捕捉モジュール1404は情報プロセッサモジュール1408に通信可能に結合され、情報プロセッサモジュール1408は、外部配置のユーザ入力デバイス1410及び1つ又は複数のディスプレイモニタ512及び/又は514に通信可能に結合し得る。
一例の画像捕捉モジュール1404は、光学画像センサ746及び748から画像データを受信するように構成される。加えて、画像捕捉モジュール1404は、各ピクセルグリッド1002及び1004内にピクセルセット1006及び1008を定義し得る。画像捕捉モジュール1404は、フレームレート及び露出時間等の画像記憶特性を指定することもできる。
一例のモータ・照明モジュール1406は、1つ又は複数のモータ(又はアクチュエータ)を制御して、光学要素1402の1つ又は複数の半径方向位置、軸方向位置、及び/又はチルト位置を変更するように構成される。例えば、モータ又はアクチュエータは、図11及び図12に示されるように、駆動ねじを回して、トラック1106に沿ってキャリア724を移動させ得る。モータ又はアクチュエータはまた、図13の屈曲部1300の押しねじ1306及び/又は引きねじ1308を回して、レンズ及び/又は光学画像センサの半径方向位置、軸方向位置、又はチルト位置を調整することもできる。モータ・照明モジュール1406は、光源708を制御する駆動装置を含むこともできる。
一例の情報プロセッサモジュール1408は、表示のために画像データを処理するように構成される。例えば、情報プロセッサモジュール1408は、色補正を画像データに提供し、画像データからの欠陥をフィルタリングし、及び/又は立体表示のために画像データをレンダリングし得る。情報プロセッサモジュール1408はまた、指定された調整を光学要素に対して実行する命令を画像捕捉モジュール1404及び/又はモータ・照明モジュール1406に提供することにより、1つ又は複数の較正ルーチンを実行して、立体視覚化カメラ300を較正することもできる。情報プロセッサモジュール1408は更に、画像位置合わせを改善し、及び/又は疑似視差を低減する命令を決定し、リアルタイムで画像捕捉モジュール1404及び/又はモータ・照明モジュール1406に提供し得る。
一例のユーザ入力デバイス1410は、立体視覚化カメラ300の動作を変更する命令を提供するコンピュータを含み得る。ユーザ入力デバイス1410は、立体視覚化カメラ300のパラメータ及び/又は特徴を選択する制御機構を含むこともできる。一実施形態では、ユーザ入力デバイス1410は図3の制御アーム304を含む。ユーザ入力デバイス1410は、情報プロセッサモジュール1408にハードワイヤードし得る。追加又は代替として、ユーザ入力デバイス1410は、情報プロセッサモジュール1408に無線又は光学的に通信可能に結合される。
一例のディスプレイモニタ512及び514は、例えば、三次元閲覧経験を提供するように構成されたテレビジョン及び/又はコンピュータモニタを含む。例えば、ディスプレイモニタはLG(登録商標)55LW5600テレビジョンを含み得る。代替的には、ディスプレイモニタ512及び514は、ラップトップ画面、タブレット画面、スマートフォン画面、スマートメガネ、プロジェクタ、ホログラフィックディスプレイ等を含み得る。
以下のセクションでは、画像捕捉モジュール1404、モータ・照明モジュール1406、及び情報プロセッサモジュール1408についてより詳細に説明する。
A.一例の画像捕捉モジュール
図15は、本開示の実施形態例による画像捕捉モジュール1404の図を示す。一例の画像捕捉モジュール1404は画像センサコントローラ1502を含み、画像センサコントローラ1502は、プロセッサ1504、メモリ1506、及び通信インターフェース1508を含む。プロセッサ1504、メモリ1506、及び通信インターフェース1508は一緒に、画像センサコントローラバス1512を介して通信可能に結合し得る。
プロセッサ1504には、メモリ1506内に永続的に記憶された1つ又は複数のプログラム1510をプログラム可能である。プログラム1510は、実行されると、プロセッサ1504に、1つ又は複数のステップ、ルーチン、アルゴリズム等を実行させる機械可読命令を含む。幾つかの実施形態では、プログラム1510は、情報プロセッサモジュール1408から及び/又はユーザ入力デバイス1410からメモリ1506に送信し得る。他の例では、プログラム1510は、情報プロセッサモジュール1408から及び/又はユーザ入力デバイス1410からプロセッサ1504に直接送信し得る。
一例の画像センサコントローラ1502は、光学要素1402の右光学画像センサ746及び左光学画像センサ748に通信可能に結合される。画像センサコントローラ1502は、タイミング制御データ及び/又はプログラミングデータに加えて、電力を光学画像センサ746及び748に提供するように構成される。加えて、画像センサコントローラ1502は、光学画像センサ746及び748から画像及び/又は診断データを受信するように構成される。
各光学画像センサ746及び748は、特定のパラメータ及び/又は特性を制御するプログラマブルレジスタを含む。レジスタの1つ又は複数は、図10の各ピクセルグリッド1002及び1004内のピクセルセット1006及び1008の位置を指定し得る。レジスタは、ピクセルグリッド1002及び1004の原点又は縁部点に対する開始位置の値を記憶し得る。レジスタはまた、ピクセルセット1006及び1008の幅及び高さを指定して、関心のある矩形領域を画定することもできる。画像センサコントローラ1502は、指定されたピクセルセット1006及び1008内にあるピクセルのピクセルデータを読み出すように構成される。幾つかの実施形態では、光学画像センサ746及び748のレジスタは、円、楕円、三角形等の他の形状のピクセルセットの指定を促進し得る。追加又は代替として、光学画像センサ746及び748のレジスタは、ピクセルグリッド1002及び1004のそれぞれに複数のピクセルセットを同時に指定できるようにし得る。
ピクセルグリッド1002及び1004のピクセルの感光部分は、埋め込み回路により制御され、埋め込み回路は異なる感光モードを指定する。モードはリセットモード、積分モード、及び読み出しモードを含む。リセットモード中、ピクセルの電荷蓄積構成要素は、既知の電圧レベルにリセットされる。積分モード中、ピクセルは「オン」状態に切り替えられる。検知エリア又はピクセルの要素に達した光は、電荷を電荷蓄積構成要素(例えば、キャパシタ)内に蓄積させる。蓄えられた電荷の量は、積分モード中、検知要素に入射した光の量に対応する。読み出しモード中、電荷量はデジタル値に変換され、埋め込み回路を介して光学画像センサ746及び748から読み出され、画像センサコントローラ1502に送信される。あらゆるピクセルを読み出すために、所与の領域内の各ピクセルの電荷蓄積構成要素は、切り替え内部回路により読み出し回路に順次接続され、読み出し回路は、アナログ値からデジタル値への電荷の変換を実行する。幾つかの実施形態では、ピクセルアナログデータは12ビットデジタルデータに変換される。しかしながら、分解能がノイズ許容度、整定時間、フレームレート、及びデータ送信速度に基づいてより高い又はより低いことがあることを理解されたい。各ピクセルのデジタルピクセルデータはレジスタに記憶し得る。
図15の画像センサコントローラ1502の一例のプロセッサ1504は、ピクセルセット1006及び1008内の各ピクセルからピクセルデータ(例えば、ピクセルの要素への入射光量に対応する、ピクセルに貯蔵された電荷を示すデジタルデータ)を受信するように構成される。プロセッサ1504は、右光学画像センサ746から受信したピクセルデータから右画像を形成する。加えて、プロセッサ1504は、左光学画像センサ748から受信したピクセルデータから左画像を形成する。代替的には、プロセッサ1504は、左画像及び右画像のそれぞれの一部のみ(例えば、一行又は数行)を形成してから、データを下流に送信する。幾つかの実施形態では、プロセッサ1504はレジスタ位置を使用して、画像内の各ピクセルの位置を特定する。
右画像及び左画像が作成された後、プロセッサ1504は右画像及び左画像を同期する。次に、プロセッサ1504は、右画像及び左画像の両方を通信インターフェース1508に送信し、通信インターフェース1508は画像を処理して、通信チャネル1514を介して情報プロセッサモジュール1408に送信するためのフォーマットにする。幾つかの実施形態では、通信チャネル1514は、USB2.0又は3.0規格に準拠し、銅線又は光ファイバケーブルを含み得る。通信チャネル1514は、最高で毎秒左右画像(立体分解能1920×1080及びデータ変換分解能12ビットを有する)約60対以上を1秒当たり送信することが可能であり得る。銅線USBの使用により、電力を情報プロセッサモジュール1408から画像捕捉モジュール1404に提供することができる。
以下のセクションでは、特定のプログラム1510を実行して、光学画像センサ746及び748から画像データを取得及び/又は処理する画像センサコントローラ1502のプロセッサ1504により提供される特徴について更に説明する。
1.一例の露出
一例のプロセッサ1504は、光学画像センサ746及び748が上述した積分モードである時間量を制御又はプログラムし得る。積分モードは、露出時間と呼ばれる時間期間にわたり行われる。プロセッサ1504は、光学画像センサ746及び748の露出レジスタに値を書き込むことにより露出時間を設定し得る。追加又は代替として、プロセッサ1504は、露出時間の開始及び終了を通知する命令を光学画像センサ746及び748に送信し得る。露出時間は、数ミリ秒(「ms」)〜数秒でプログラムし得る。好ましくは、露出時間は概ね、フレームレートの逆数である。
幾つかの実施形態では、プロセッサ1504は、ローリングシャッタ法を光学画像センサ746及び748に適用して、ピクセルデータを読み取り得る。この方法下では、ピクセルセット1006及び1008のピクセルの所与の行の露出時間は、その行内のピクセルが読み出され、次にリセットされた直後に開始される。短時間後、次の行(通常、設定されたばかりの行に物理的に最も近い)が読み出され、それに従ってリセットされ、その露出時間が再開される。各ピクセル行の順次読み出しは、ピクセルセット1006及び1008の最後又は最下行が読み出されリセットされるまで続けられる。次に、プロセッサ1504はピクセルセット1006及び1008の最上行に戻り、次の画像のピクセルデータを読み出す。
別の実施形態では、プロセッサ1504はグローバルシャッタ法を適用する。この方法下では、プロセッサ1504は、ローリングシャッタ法と同様にして読み出し及びリセットを実施する。しかしながら、この方法では、積分は、ピクセルセット1006及び1008内の全てのピクセルで同時に行われる。グローバルシャッタ法は、全てのピクセルが同時に露出されるため、ローリングシャッタ法と比較して、画像内の欠陥が減るという利点を有する。比較として、ローリングシャッタ法では、ピクセルセットのラインの露出間に僅かな時間遅延がある。小さな欠陥は、ライン露出間、特に読み出し間で標的部位700に小さな変化が生じ得る上のラインと下のラインとの間の時間中に生じる恐れがある。
2.一例のダイナミックレンジ
一例のプロセッサ1504は、1つ又は複数のプログラム1510を実行して、光学画像センサ746及び748のダイナミックレンジ外の光を検出し得る。一般に、極めて明るい光はピクセルの電荷貯蔵領域を完全に満たし、それにより、厳密な輝度レベルに関する画像情報を失うことになる。同様に、極めて低い光又は光がないことは、ピクセル内の有意味な電荷を影響することができず、これもまた画像情報の損失に繋がる。それに従ってこのピクセルデータからの作成された画像は、標的部位700における光強度を正確に反映しない。
ダイナミックレンジ外の光を検出するために、プロセッサ1504は、例えば、マルチ露出プログラム、マルチスロープピクセル積分プログラム、及びマルチセンサ画像融合プログラムを含む幾つかの高ダイナミックレンジ(「HDR」)プログラム1510の1つを実行し得る。一例では、マルチ露出プログラムは、光学画像センサ746及び748に統合又は埋め込まれたHDR特徴を利用し得る。この方法下では、ピクセルセット1006及び1008は、通常の露出時間にわたり積分モードになる。ピクセルセット1006及び1008のラインは読み出され、光学画像センサ746及び748のメモリ及び/又は画像センサコントローラ1502のメモリ1506に記憶される。読み出しがプロセッサ1504により実行された後、ピクセルセット1006及び1008内の各ラインは、通常の露出時間未満の第2の露出時間にわたり再びオンになる。プロセッサ1504は、第2の露出時間後、ピクセルの各ラインを読み出し、このピクセルデータを同じラインの通常露出時間からのピクセルデータと結合する。プロセッサ1504は、トーンマッピングを適用して、通常長さの露出時間からのピクセルデータか、及び長さの短い露出時間からのピクセルデータを選び(又は結合し)、生成されたピクセルデータを、下流の処理及び表示と互換性がある範囲にマッピングする。マルチ露出プログラムを使用する場合、プロセッサ1504は、光学画像センサ746及び748のダイナミックレンジを拡大し、表示のためにピクセルデータの結果としての範囲を圧縮することが可能である。
プロセッサ1510は、比較的暗い光の場合でも同様のプログラムを動作し得る。しかしながら、第2の露出時間が通常時間未満である代わりに、第2の露出時間は通常時間よりも長く、それにより、電荷を蓄積するより多くの時間をピクセルに提供する。プロセッサ1510はトーンマッピングを使用して、ピクセルデータ読み出しを調整し、より長い露出時間を補償し得る。
3.一例のフレームレート
一例のプロセッサ1510は、光学画像センサ746及び748のフレームレートを制御又は指定し得る。幾つかの実施形態では、光学画像センサ746及び748は、ピクセルセット1006及び1008内の各ピクセルが上述した撮像モードを通して循環する毎秒当たりの回数を指定するオンボードタイミング回路及びプログラマブル制御レジスタを含む。フレーム又は画像は、ピクセルセットが3つのモードを通して進む都度、形成される。フレームレートは、ピクセルセット1006及び1008内のピクセルが積分され、読み出され、リセットされる毎秒当たりの回数である。
プロセッサ1510は、読み出しが適切なときに行われるように、光学画像センサ746及び748と同期し得る。他の例では、プロセッサ1510は光学画像センサ746及び748と非同期である。これらの他の例では、光学画像センサ746及び748は、一時的なメモリ又はキューへのローカル読み出し後、ピクセルデータを記憶し得る。次に、ピクセルデータは、右画像及び左画像の同期のために、プロセッサ1510により周期的に読み出し得る。
時系列でのフレーム又は画像の処理(例えば、画像ストリームの作成)は、ビデオとして伝達される動きの錯覚を提供する。一例のプロセッサ1510は、観測者に滑らかなビデオの見た目を提供するフレームレートをプログラムするように構成される。低すぎるフレームレートは、任意の動きを途切れ途切れ又は不均等にする。最大閾値フレームレートを超える動画品質は、観測者にとって識別可能ではない。一例のプロセッサ1510は、典型的な外科視覚化で毎秒約20〜70フレーム、好ましくは毎秒50〜60フレームを生成するように構成される。
4.一例のセンサ同期
図15の一例のプロセッサ1504は、光学画像センサ746及び748の同期を制御するように構成される。プロセッサ1504は、例えば、光学画像センサ746及び748に電力を同時に提供し得る。次に、プロセッサ1504は、クロック信号を光学画像センサ746及び748の両方に提供し得る。クロック信号は、光学画像センサ746及び748が自由実行モードで独立して、しかし同期され及び/又は同時に動作できるようにする。したがって、光学画像センサ746及び748は、ピクセルデータを略同時に記録する。一例のプロセッサ1504は、ピクセルデータを光学画像センサ746及び748から受信し、画像及び/又はフレームの少なくとも一部を構築し、任意のわずかなタイミングずれを説明するように画像及び/又はフレーム(又はその一部)を同期させる。通常、光学画像センサ746及び748間のラグは、200マイクロ秒未満である。他の実施形態では、プロセッサ1504は同期ピンを使用して、例えば、各リセットモード後、光学画像センサ746及び748を同時にアクティブ化し得る。
B.一例のモータ・照明モジュール
図15の一例の立体視覚化カメラ300は、光学要素1402のレンズを移動させ、及び/又は光源708から出力される照明を制御する1つ又は複数のモータ又はアクチュエータを制御するモータ・照明モジュール1406を含む。一例のモータ・照明モジュール1406は、プロセッサ1522、メモリ1524、及び通信バス1528を介して通信可能に一緒に結合された通信インターフェース1526を含むモータ・照明コントローラ1520を含む。メモリ1524は、プロセッサ1522で実行可能であり、光学要素1402のレンズ及び/又は光源708の制御、調整、及び/又は較正を実行する1つ又は複数のプログラム1530を記憶する。幾つかの実施形態では、プログラム1530は、情報プロセッサモジュール1408及び/又はユーザ入力デバイス1410からメモリ1524に送信し得る。
通信インターフェース1526は、画像捕捉モジュール1404の通信インターフェース1508及び情報プロセッサモジュール1408の通信インターフェース1532に通信可能に結合される。通信インターフェース1526は、コマンドメッセージ、タイミング信号、ステータスメッセージ等を画像捕捉モジュール1404及び情報プロセッサモジュール1408から受信するように構成される。例えば、画像捕捉モジュール1404のプロセッサ1504は、タイミング信号をプロセッサ1522に送信して、照明制御と光学画像センサ746及び748の露出時間とのタイミングを同期させ得る。別の例では、情報処理モジュール1408は、特定の光源708にアクティブ化し及び/又は光学要素1402の特定のレンズを移動させるように命令するコマンドメッセージを送信し得る。コマンドは、例えば、ユーザ入力デバイス1410を介してオペレータから受信した入力に応答し得る。追加又は代替として、コマンドは、較正ルーチン及び/又はリアルタイム調整に応答して、疑似視差等の画像位置合わせずれ及び/又は欠陥を低減又はなくし得る。
一例のモータ・照明モジュール1406は、光学要素1402のレンズの軸方向及び/又は半径方向位置及び/又は光源708から出力される光を調整するモータを制御する電力を提供する駆動装置を含む。特に、モータ・照明モジュール1406は、NUV信号をNUV光源708cに送信するNUV光駆動装置1534、NIR信号をNIR光源708bに送信するNIR光駆動装置1536、及び可視光信号を可視光源708aに送信する可視光駆動装置1538を含む。
加えて、モータ・照明モジュール1406は、図7及び図8のフィルタ740を制御するフィルタモータ信号をフィルタモータ1542に送信するフィルタモータ駆動装置1540を含む。モータ・照明モジュール1406は、後部ズームレンズモータ信号を後部ズームレンズモータ1546に送信する後部ズームレンズモータ駆動装置1544、前部ズームレンズモータ信号を前部ズームレンズモータ1550に送信する前部ズームレンズモータ駆動装置1548、及び作業距離レンズモータ信号を作業距離レンズモータ1554に送信する後部作業距離レンズモータ駆動装置1552を含む。モータ・照明モジュール1406はまた、偏向要素712を移動及び/又はチルトさせるモータ及び/又はアクチュエータを含むこともできる。
後部ズームレンズモータ1546は、キャリア730をトラック又はレールに沿って軸方向に移動させる駆動ねじを回転するように構成される。前部ズームレンズモータ1550は、キャリア724を図11及び図12に示されるトラック1106に沿って軸方向に移動させる駆動ねじを回転するように構成される。作業距離レンズモータ1554は、後部作業距離レンズ702をトラック又はレールに沿って軸方向に移動させる駆動ねじを回転するように構成される。
駆動装置1536、1538、及び1540は、任意のタイプの照明駆動装置、変圧器、及び/又はバラストを含み得る。駆動装置1536、1538、及び1540は、光源708により出力される光の強度を制御するパルス幅変調(「PWM」)信号を出力するように構成される。幾つかの実施形態では、プロセッサ1522は、フィルタモータ駆動装置1540を使用して特定のフィルタを適用するタイミングに対応するように、駆動装置1536、1538、及び1540のタイミングを制御し得る。
一例の駆動装置1540、1544、1548、及び1552は、例えば、ステッパモータ駆動装置及び/又はDCモータ駆動装置を含み得る。同様に、モータ1542、1546、1550、及び/又は1554は、ステッパモータ、DCモータ、又は他の電気、磁気、熱、油圧、若しくは空気圧アクチュエータを含み得る。モータ1542、1546、1550、及び/又は1554は、例えば、フィードバック報告及び制御のために、ロータリエンコーダ、スロット型光学スイッチ(例えば、フォトインタラプタ)、及び/又は線形エンコーダを含み、シャフト及び/又は車軸の角度位置を報告し得る。代替の実施形態は、適した駆動装置を有するボイスコイルモータ、圧電モータ、リニアモータ、及びそれらの均等物を含み得る。
駆動装置1534、1536、1538、1540、1544、1548、及び1552を制御するために、プロセッサ1522は、コマンドメッセージをデジタル信号及び/又はアナログ信号に変換するプログラム1530を使用するように構成される。プロセッサ1522は、デジタル信号及び/又はアナログ信号を適切な駆動装置に送信し、駆動装置は、受信信号に対応するPWM信号等のアナログ電力信号を出力する。アナログ電力信号は、電力を適切なモータ又はアクチュエータに提供し、所望量だけモータ又はアクチュエータを回転させる(又は他の方法で移動させる)。
プロセッサ1522は、フィードバックを駆動装置1534、1536、1538、1540、1544、1548、及び1552、モータ1542、1546、1550、及び/又は1554、及び/又は光源708から受信し得る。フィードバックは、例えば、照明レベル又は照明出力に対応する。モータに関しては、フィードバックは、モータ(又は他のアクチュエータ)の位置及び/又は移動量に対応する。プロセッサ1522は、プログラム1530を使用して、受信信号をデジタルフィードバックに翻訳して、例えば、対応するモータ又はアクチュエータシャフトの角度位置に基づいてレンズの半径方向位置、チルト位置、及び/又は軸方向位置を特定する。次に、プロセッサ1522は、ユーザへの表示のために及び/又は較正のために光学要素1402のレンズの位置を追跡するために、位置情報と共にメッセージを情報プロセッサモジュール1408に送信し得る。
幾つかの実施形態では、モータ・照明モジュール1406は、光学要素1402内の個々のレンズの軸方向位置、チルト位置、及び/又は半径方向位置を変更する追加の駆動装置を含み得る。例えば、モータ・照明モジュール1406は、チルト及び/又は半径方向/軸方向調整のための光学画像センサ746及び748の屈曲部750及び752を作動させるモータを制御する駆動装置を含み得る。さらに、モータ・照明モジュール1406は、前部レンズ720及び722、前部ズームレンズ726及び728、後部ズームレンズ732及び734、レンズバレル736及び738、及び/又は最終光学要素745及び747を個々に、軸方向にx軸又はy軸に沿って及び/又は軸方向にチルト及び/又は調整するモータ(又はアクチュエータ)を制御する駆動装置を含み得る。レンズ及び/又はセンサの独立した調整により、例えば、モータ・照明コントローラ1520は画像欠陥を除去し、及び/又は左右画像を位置合わせすることができる。
以下のセクションでは、プロセッサ1552がいかに、1つ又は複数のプログラム1530を実行して、作業距離、ズーム、フィルタ位置、レンズ位置、及び/又は光出力を偏向するかを説明する。
1.一例の作業距離
図15のモータ・照明モジュール1406の一例のプロセッサ1522は、立体視覚化カメラ300の作業距離を調整するように構成される。作業距離は、後部作業距離レンズ704と前部作業距離レンズ408との間の距離を調整することにより設定される。プロセッサ1522は、後部作業距離レンズ704を前部作業距離レンズ408に対して移動させることにより距離を調整する。特に、プロセッサ1522は信号を後部作業距離レンズモータ駆動装置1552に送信し、この信号は、後部作業距離レンズ704を移動させる量に比例する所定の時間にわたり、作業距離レンズモータ1554をアクティブ化する。作業距離レンズモータ1554は、後部作業距離レンズ704を保持する摺動トラックに取り付けられたねじを通してリードねじを駆動する。作業距離レンズモータ1554は、レンズ704を所望の距離だけ移動させ、それにより、作業距離を調整する。作業距離レンズモータ1554は、フィードバック信号をプロセッサ1522に提供し得、プロセッサ1522は、後部作業距離レンズ704が所望量、移動したか否かを判断する。移動が所望未満又は所望を超える場合、プロセッサ1522は、後部作業距離レンズ704の位置を更に改良する命令を送信し得る。幾つかの実施形態では、情報プロセッサモジュール1408は、後部作業距離レンズ704のフィードバック制御を決定し得る。
後部作業距離レンズ704の位置を特定するために、プロセッサ1522は1つ又は複数の較正プログラム1530を動作し得る。例えば、アクティブ化されると、プロセッサ1522は、運動範囲の一端部における限度スイッチをトリガーするまで、作業距離レンズモータ1554にリードねじを駆動して、後部作業距離レンズ704をトラック又はレールに沿って移動させるように命令し得る。プロセッサ1522は、モータ1554のエンコーダのゼロ点としてこの停止位置を示し得る。後部作業距離レンズ704の現在位置及び対応するエンコーダ値を知ることで、プロセッサ1522は、後部作業距離レンズ704を所望位置に移動させるためのシャフト回転数を特定することが可能になる。シャフト回転数はアナログ信号で作業距離レンズモータ1554に送信され(駆動装置1552を介して)、それに従ってレンズ704を指定された位置に移動させる。
2.一例のズーム
図15の一例のプロセッサ1522は、1つ又は複数のプログラム1530を実行して、立体視覚化カメラ300のズームレベルを変更するように構成される。上述したように、ズーム(例えば、倍率変更)は、互いに対して並びに前部レンズセット714及びレンズバレルセット718に対して、前部ズームセット724及び後部ズームセット730の位置を変更することにより達成される。後部作業距離レンズ704について上述した較正手順と同様に、プロセッサ1522は、トラック又はレールに沿ったセット724及び730の位置を較正し得る。特に、プロセッサ1522は、後部ズームレンズモータ1546及び前部ズームレンズモータ1550にセット724及び730(例えば、キャリア)をレール(又は複数のレール)に沿って限度スイッチにおける停止位置まで移動させる命令を送信する。プロセッサ1522は、エンコーダフィードバックをモータ1546及び1550から受信して、セット724及び730の停止位置に関連するエンコーダ値を特定する。次にプロセッサ1522は、エンコーダ値をゼロにし、又は停止位置における既知のエンコーダ値を使用して、レールに沿ったセット724及び730の所望の位置を達成するために、モータ1546及び1550をどれくらいアクティブ化させるかを決定し得る。
停止位置の較正に加えて、プロセッサ1522は、所望のズームレベルを達成するためのセット724及び730の位置を定義するプログラム1530を実行し得る。例えば、較正手順中、距離設定と1組の所望のズーム値との既知のパターンをプログラム1530(又はルックアップテーブル)として記憶し得る。較正手順は、テンプレートを標的部位700に配置し、プロセッサ522に、特定の示されたマーカ又は文字が左右の画像又はフレームで特定のサイズになるまでセット724及び730を移動するように命令することを含み得る。例えば、較正ルーチンは、標的部位700におけるテンプレート上の文字「E」が、10ピクセル分の高さを有するものとして左右の画像に表示されるときに対応するレール上のセット724及び730の位置を特定し得る。
幾つかの実施形態では、情報プロセッサモジュール1408は、視覚的分析を実行し、ズームイン又はズームアウトに望ましいセット724及び730の移動に関する命令をプロセッサ1522に送信し得る。加えて、情報プロセッサ1408は、所望のズームレベルにある標的部位700が合焦されるように焦点面を移動させる命令を送信し得る。命令は、例えば、後部作業距離レンズ704を移動させる命令及び/又はセット724及び730を一緒に及び/又は個々に移動させる命令を含み得る。幾つかの代替の実施形態では、プロセッサ1522は、ユーザ入力デバイス1410又は別のコンピュータから、特定のズームレベルにおける前部ズームセット724及び後部ズームセット730のレール位置の較正パラメータを受信し得る。
一例のプロセッサ1522及び/又は情報プロセッサモジュール1408は、倍率が変更された場合、画像が合焦したままであるような命令を送信し得る。プロセッサ1522は、例えば、プログラム1530及び/又はルックアップテーブルを使用して、標的部位700へのフォーカスを維持するために、特定のレンズがいかに、光軸に沿って移動すべきかを決定し得る。プログラム1530及び/又はルックアップテーブルは、倍率レベル及び/又はレール上の設定ポイント及び焦点面を移動しないようにするために必要な対応するレンズ調整を指定し得る。
以下の表2は、倍率を変更しながら、プロセッサ1522がフォーカスを維持するために使用し得る一例のプログラム1530又はルックアップテーブルを示す。前部ズームレンズセット724及び後部ズームレンズセット730の位置は、各セット724及び730の停止位置までのレールの長さに基づいて正規化される。倍率を下げるには、後部ズームレンズセットはレンズバレルセット718に向かって移動し、それにより、レールに沿った位置を増大させる。前部ズームレンズセット724も移動する。しかしながら、その移動は後部ズームレンズセット730の移動と必ずしも等しいものである必要はない。代わりに、前部ズームレンズセット724の移動は、倍率を変更しながら、フォーカスを維持するよう焦点面の位置を保持するように、セット724と730との間の距離変更を説明する。例えば、倍率レベルを10Xから9Xに下げるには、プロセッサ1522は、後部ズームレンズセット730に位置10から位置11にレールに沿って移動するように命令する。加えて、プロセッサ1522は、前部ズームレンズセット724に位置5から位置4にレール(又はセット730と同じレール)に沿って移動するように命令する。倍率を変更するために、セット724及び730を移動させるのみならず、フォーカスを維持するために、セット724及び730は互いに対しても移動した。
セット724及び730をいかに移動し得るかの一例を表2が提供することを理解されたい。他の例では、表2は、より精密な倍率及び/又はセット724及び730の位置を説明するための追加の行を含み得る。追加又は代替として、表2は、後部作業距離レンズ704の列を含み得る。例えば、後部作業距離レンズ704は、フォーカスを維持するために、前部ズームレンズセット724への代替又は追加として移動し得る。さらに、表2は、作業距離を変更しながらフォーカスを維持するセット724及び730並びに後部作業距離レンズ704の位置を指定する行を含み得る。
表2中の値は、較正を通して決定し得、及び/又はリモートコンピュータ又はユーザ入力デバイス1410から受信し得る。較正中、情報プロセッサモジュール1408は、異なる倍率及び/又は作業距離を通して進む較正プログラム1560を動作し得る。情報プロセッサモジュール1408におけるプロセッサ1562は、画像自体の画像処理を実行し得、又は、ピクセルデータを受信して、例えば、所定の形状及び/又は文字を有するテンプレートを使用して、所望の倍率が達成されるときを判断し得る。プロセッサ1562は、受信した画像のピントが合っているか否かを判断する。画像がピンボケしているとの判断に応答して、プロセッサ1562は、前部ズームレンズセット724及び/又は後部作業距離レンズセット704を調整する命令をプロセッサ1522に送信する。調整は、プロセッサ1562により画像にピントが合っていると判断されるまでの光路に沿った前方向及び逆方向での反復移動を含み得る。画像にピントが合っていると判断するに、プロセッサ1562は、例えば、光の曖昧さが最小である画像を探し、及び/又は隣接するピクセル領域間の光の値の差(差が大きいほど、よりピントが合った画像に対応する)についてピクセルデータを分析する画像分析を実行し得る。所望の作業距離及び倍率で画像にピントが合っていると判断された後、プロセッサ1562及び/又はプロセッサ1522は次に、セット724及び730及び/又は後部作業距離レンズ704の位置及び対応する倍率レベルを記録し得る。
3.一例のフィルタ位置
図15のモータ・照明モジュール1406の一例のプロセッサ1522は、受信した命令に基づいてフィルタ740を左右の光路に移動させるように構成される。幾つかの例では、フィルタ740はミラーアレイを含み得る。これらの例では、プロセッサ1522は、1つ又は複数のモータ1542を作動させて、ミラーの位置を変更する命令をフィルタモータ駆動装置1540に送信する。幾つかの場合、駆動装置1540は、1つ又は複数の経路に沿ってフィルタ740に電荷を送信し、特定のミラー要素をオン又はオフ位置に切り替えさせ得る。これらの例では、フィルタタイプ選択は一般に、どのミラーを作動するかに二元的に基づく。
他の例では、フィルタ740は、赤外線遮断フィルタ、近赤外線バンドパスフィルタ、及び近紫外線遮断フィルタ等の異なるタイプのフィルタを有するホィールを含み得る。これらの例では、ホィールはフィルタモータ1542により回転される。プロセッサ1522は、異なるフィルタのパーテーションに対応するホィールの停止位置を決定する。プロセッサ1522はまた、各停止位置に対応するロータリエンコーダ値も決定する。
プロセッサ1522は較正プログラム1530を動作し得、及び/又はプロセッサ1562は較正プログラム1560を動作して、停止位置を決定し得る。例えば、プロセッサ1522は、フィルタホィール740をゆっくりと回転し得、プロセッサ1562は、ピクセルにおいて受け取られる光が変わるときを判断する(画像分析を使用して又は画像捕捉モジュール1404からピクセルデータを読み出して)。ピクセルにおける光値の変化は、光路に適用されているフィルタタイプの変更を示す)。幾つかの場合、プロセッサ1522は、どの光源708がアクティブ化されているかを変更し得、異なるフィルタタイプが適用される場合、ピクセルにおける更なる区別を生み出す。
4.一例の光制御及びフィルタ
先に開示したように、プロセッサ1522は、フィルタ740と併せて光源708を制御して、所望の波長の光を光学画像センサ746及び748に到達させ得る。幾つかの例では、プロセッサ1522は、光源708の1つ又は複数のアクティブ化とフィルタ740の1つ又は複数のアクティブ化との間のタイミングを制御又は同期し得る。タイミングを同期するために、プログラム1530は、特定のフィルタをアクティブ化する遅延時間を指定し得る。プロセッサ1522はプログラム1530を使用して、例えば、光源708をオンにする信号の送信と相対して、フィルタ740をアクティブ化する信号をいつ送信するかを決定する。スケジュールされたタイミングは、指定された光源708がアクティブ化される場合、適切なフィルタ740が適用されることを保証する。そのような構成により、ある光源708により強調表示された特徴(蛍光等)を、白色光又は周囲光等の第2の光源708下で表示される特徴の上に又は特徴と併せて表示することができる。
幾つかの場合、光源708は、光フィルタ740を変更し得る速度ほど高速に切り替え得、それにより、異なる光で記録された画像を併せて、互いの上に表示できるようにする。例えば、蛍光を発する(染料又は造影剤の投与に起因して)静脈又は他の解剖学的構造は、周囲照明下の画像の上に表示し得る。この例では、静脈は、可視光で示される背景の解剖学的特徴に対して強調表示される。この場合、情報プロセッサモジュール1408のプロセッサ1562及び/又はグラフィックス処理ユニット1564(例えば、ビデオカード又はグラフィックスカード)は、あるフィルタの適用中に記録された1つ又は複数の画像を、後続フィルタの適用中に記録された画像と結合し、又は重ね得る。
幾つかの実施形態では、プロセッサ1522は、複数の光源708を同時にアクティブ化し得る。光源708は同時又は順次アクティブ化されて、異なる波長の光を「インターリーブ」し、光学画像センサ746及び748における適切なピクセルを使用して異なる情報を抽出できるようにする。光源を同時にアクティブ化することは、暗視野の照明に役立ち得る。例えば、幾つかの用途は、UV光を使用して、標的部位700における蛍光を刺激する。しかしながら、UV光はオペレータにより非常に暗く知覚される。したがって、プロセッサ1522は、UV光に感度を有するが、幾らかの可視光を検出することもできるピクセルを圧倒せずに外科医が視野を観測できるように、可視光源1538を周期的にアクティブ化して、幾らかの可視光を視野に追加し得る。別の例では、複数の光源708を交互にすることにより、幾つかの場合、レンジの縁部で重複する感度を有する光学画像センサ746及び748のピクセルのウォッシュアウトが回避される。
5.光強度制御
図15の一例のプロセッサ1522は、1つ又は複数のプログラム1530を実行して、光源708により提供される照明レベルの強度を変更するように構成される。被写界深度が標的部位700における照明レベルに依存することを理解されたい。一般に、高い照明ほど大きな被写界深度を提供する。プロセッサ1522は、視野をウォッシュアウト又は過熱せずに、所望の被写界深度に適切な量の照明が提供されることを保証するように構成される。
可視光源708aは、可視光駆動装置1538により駆動され、スペクトルの人間可視部分の光及びその領域外の幾らかの光を出力する。NIR光源708bはNIR光駆動装置1536により駆動され、主に、近赤外線と呼ばれる波長の光を出力する。NUV光源708cはNUV光駆動装置1534により駆動され、主に、近紫外線と呼ばれる、可視スペクトルの藍色部分の波長の光を出力する。各光駆動装置1534、1536、及び1538は、プロセッサ1522により提供されるコマンドにより制御される。光源708の各出力スペクトルの制御は、PWM信号により達成され、制御電圧又は電流は最小(例えば、オフ)値と最大(例えば、オン)値との間で切り替えられる。光源708から出力される光の輝度は、切り替え率及び電圧又は電流がPWM信号のサイクル毎の最大レベルにある時間の割合を変更することにより制御される。
幾つかの例では、プロセッサ1522は、視野のサイズ又はズームレベルに基づいて光源708の出力を制御する。プロセッサ1522は、光強度がズームの関数になる特定の光の感度設定を指定するプログラム1530を実行し得る。プログラム1530は、例えば、ズームレベルを光強度値に相関付けるルックアップテーブルを含み得る。プロセッサ1522は、プログラム1530を使用して、選択された倍率レベルに基づいて光源708のPWM信号を選択する。幾つかの例では、プロセッサ1522は、倍率が上げられるにつれて光強度を低減して、単位面積当たりで視野に提供される光量を維持し得る。
C.一例の情報プロセッサモジュール
図15の立体視覚化カメラ300内の一例の情報プロセッサモジュール1408は、表示のために画像捕捉モジュール1404から受信した画像/フレームを分析し処理するように構成される。加えて、情報プロセッサモジュール1408は、異なるデバイスとインターフェースし、制御命令を画像捕捉モジュール1404及び/又はモータ・照明モジュール1406へのメッセージに翻訳するように構成される。情報プロセッサモジュール1408はまた、手動較正用のインターフェースを提供し、及び/又は光学要素1402の自動較正を管理し得る。
図15に示されるように、情報プロセッサモジュール1408は、画像捕捉モジュール1404及びモータ・照明モジュール1406に通信可能及び/又は電気的に結合される。例えば、通信チャネル1514は通信チャネル1566及び1568に加えて、USB2.0又はUSB3.0接続を含み得る。したがって、情報プロセッサモジュール1408は、モジュール1404及び1406への電力を調整し提供する。幾つかの実施形態では、情報プロセッサモジュール1408は、壁のコンセントからの110ボルト交流電流(「AC」)電力をモジュール1404及び1406用の5ボルト、10ボルト、12ボルト、及び/又は24ボルト直流電流(「DC」)供給に変換する。追加又は代替として、情報プロセッサモジュール1408は、立体視覚化カメラ300の筐体302内部の電池及び/又はカート510における電池から電力を受け取る。
一例の情報プロセッサモジュール1408は、画像捕捉モジュール1404及びモータ・照明モジュール1406と双方向通信するための通信インターフェース1532を含む。情報プロセッサモジュール1408は、1つ又は複数のプログラム1560を実行して、画像捕捉モジュール1404から受信した画像/フレームを処理するように構成されたプロセッサ1562も含む。プログラム1560はメモリ1570に記憶し得る。加えて、プロセッサ1562は、光学要素1402の較正を実行し、及び/又は光学要素1402を調整して、右画像及び左画像を位置合わせし、及び/又は視覚的結果を除去し得る。
画像及び/又はフレームを処理して、レンダリングされる三次元立体表示するために、一例の情報プロセッサモジュール1408はグラフィックス処理ユニット1564を含む。図16は、本開示の実施形態例によるグラフィックス処理ユニット1564の図を示す。動作中、プロセッサ1562は画像及び/又はフレームを画像捕捉モジュール1404から受信する。アンパックルーチン1602が、画像/フレームを、通信チャネル1514にわたる伝送に貢献するフォーマットから画像処理に貢献するフォーマットに変換又は他の方法で変更する。例えば、画像及び/又はフレームは、複数のメッセージにおいて通信チャネル1514にわたり伝送し得る。一例のアンパックルーチン1602は、複数のメッセージからのデータを結合して、フレーム/画像を再度組み立てる。幾つかの実施形態では、アンパックルーチン1602は、グラフィックス処理ユニット1564により要求されるまで、フレーム及び/又は画像をキューに配置し得る。他の例では、プロセッサ1562は、左右の画像/フレーム対のそれぞれを完全に受信しアンパックした後、送信し得る。
一例のグラフィック処理ユニット1564は、1つ又は複数のプログラム1580(図15に示される)を使用して、レンダリングに向けて画像を準備する。プログラム1580の例を図15及び図16に示す。プログラム1580は、グラフィックス処理ユニット1564のプロセッサにより実行し得る。代替的には、図16に示される各プログラム1580は、別個のグラフィックスプロセッサ、マイクロコントローラ、及び/又は特定用途向け集積回路(「ASIC」)により実行し得る。例えば、デベイヤープログラム1580aは、近傍ピクセルにわたりピクセル値を平滑化又は平均して、図7及び図8の左右の光学画像センサ746及び748のピクセルグリッド1002及び1004に適用されるベイヤーパターンを補償するように構成される。グラフィックス処理ユニット1564は、色補正及び/又はホワイトバランス調整のプログラム1580b、1580c、及び1580dを含むこともできる。グラフィックス処理ユニット1564は、ディスプレイモニタ512及び514への表示に向けて、色補正された画像/フレームを準備するレンダラープログラム1580eも含む。グラフィックス処理ユニット1564は、周辺入力ユニットインターフェース1574と更に対話し、及び/又はそれを含み得、周辺入力ユニットインターフェース1574は、標的部位700の立体表示と共に提示する他の画像及び/又はグラフィックスを結合、融合、又は他の方法で含むように構成される。プログラム1580及び情報プロセッサモジュール1408の更なる詳細についてより一般に以下で考察する。
一例の情報プロセッサモジュール1408は、1つ又は複数のプログラム1562を実行して、立体視覚化カメラ300の待ち時間をチェックし改善し得る。待ち時間は、標的部位700においてイベントが生じ、その同じイベントをディスプレイモニタ512及び514に表示するのにかかる時間量を指す。低待ち時間は、立体視覚化カメラ300が外科医の目の延長である感じを提供し、一方、高待ち時間は、顕微鏡外科処置から注意を逸らす傾向がある。一例のプロセッサ1562は、読み出された画像に基づいて結合された立体画像が、表示に向けて送信されるまで、光学画像センサ746及び748から読み出し中の画像間でどれくらいの時間が経過するかを追跡し得る。高待ち時間の検出は、プロセッサ1562にキュー時間を低減させ、フレームレートを増大させ、及び/又は幾つかの色補正ステップをスキップさせ得る。
1.一例のユーザ入力
図15の情報プロセッサモジュール1408の一例のプロセッサ1562は、ユーザ入力命令をモータ・照明モジュール1406及び/又は画像捕捉モジュール1402へのメッセージに変換するように構成される。ユーザ入力命令は、倍率レベル、作業距離、焦点面(例えば、フォーカス)の高さ、光源708、及び/又はフィルタ740のフィルタタイプを含む立体視覚化カメラ300の光学態様を変更する要求を含み得る。ユーザ入力命令は、ピントが合っている画像の表示、及び/又は画像位置合わせの表示、及び/又は左画像と右画像との間で位置合わせされたZRPの表示を含め、較正を実行する要求を含むこともできる。ユーザ入力命令は、フレームレート、露出時間、色補正、画像分解能等の立体視覚化カメラ300のパラメータへの調整を更に含み得る。
ユーザ入力命令は、ユーザ入力デバイス1410から受信し得、ユーザ入力デバイス1410は、図3の制御アーム304の制御機構305及び/又は遠隔制御機構を含み得る。ユーザ入力デバイス1410は、コンピュータ、タブレットコンピュータ等を含むこともできる。幾つかの実施形態では、命令は、ネットワークインターフェース1572及び/又は周辺入力ユニットインターフェース1574を介して受信される。他の実施形態では、命令は、有線接続及び/又はRFインターフェースから受信し得る。
一例のプロセッサ1562は、命令タイプを決定し、ユーザ入力がいかに処理されるべきかを決定するプログラム1560を含む。一例では、ユーザは、制御機構305のボタンを押下して、倍率レベルを変更し得る。オペレータが立体視覚化カメラ300を所望の倍率レベルに到達させるまでボタンを押下し続ける。これらの例では、ユーザ入力命令は、例えば、倍率レベルを増大すべきであることを示す情報を含む。受信される各命令で(又は命令を示す信号が受信された各時間期間で)、プロセッサ1562は、倍率の変更を示す制御命令をモータ・照明プロセッサ1406に送信する。プロセッサ1522は、プログラム1530から、例えば、表2を使用して、ズームレンズセット724及び730を移動させる量を決定する。それに従ってプロセッサ1522は、信号又はメッセージを後部ズームレンズモータ駆動装置1544及び/又は前部ズームレンズモータ駆動装置1548に送信して、後部ズームレンズモータ1546及び/又は前部ズームレンズモータ1550に、プロセッサ1562により指定された量だけ後部ズームレンズセット730及び/又は前部ズームレンズセット724を移動させて、所望の倍率レベルを達成する。
上記例では、立体視覚化カメラ300が、ユーザ入力に基づいて変更を提供するが、フォーカス及び/又は高画質を維持するように自動調整も行うことを理解されたい。例えば、倍率レベルを単に変更する代わりに、プロセッサ1522はまた、フォーカスを維持するために、ズームレンズセット724及び730をいかに移動させるべきかを決定し、それにより、オペレータがこのタスクを手動で実行する必要があることから救う。加えて、プロセッサ1562は、リアルタイムで、倍率レベルが変更される場合、左右画像内のZRPを調整及び/又は位置合わせし得る。これは、例えば、図10のピクセルグリッド1002及び1004に関してピクセルセット1006及び1008の位置を選択又は変更することにより行い得る。
別の例では、プロセッサ1562は、フレームレートを変更する命令をユーザ入力デバイス1410から受信し得る。プロセッサ1562は、メッセージを画像捕捉モジュール1404のプロセッサ1504に送信する。そして、プロセッサ1504は、新しいフレームレートを示すものを右画像センサ746及び左画像センサ748のレジスタに書き込む。プロセッサ1504はまた、新しいフレームレートで内部レジスタを更新して、ピクセルが読み出されるペースを変更することもできる。
更に別の例では、プロセッサ1562は、ZRPの較正ルーチンを開始する命令をユーザ入力デバイス1410から受信し得る。これに応答して、プロセッサ1562は、較正をいかに動作させるべきかを指定するプログラム1560を実行し得る。プログラム1560は、例えば、画質を検証するルーチンに加えて、倍率レベル及び/又は作業距離の進行又は反復を含み得る。ルーチンは、各倍率レベルで、ZRPに加えてフォーカスを検証すべきであることを指定し得る。ルーチンはまた、ピントの合った画像を達成するように、ズームレンズセット724及び730及び/又は後部作業距離レンズ704をいかに調整すべきかを指定することもできる。ルーチンは、右画像及び左画像のZRPを倍率レベルでいかにセンタリングすべきかを更に指定し得る。プログラム1560は、画質が検証されると、ピクセルセット1006及び1008の位置及び対応する倍率レベルに加えて、ズームレンズセット724及び/又は730及び/又は後部作業距離レンズ704の位置を記憶し得る(ルックアップテーブルに)。したがって、同じ倍率レベルが後に要求される場合、プロセッサ1562はルックアップテーブルを使用して、モータ・照明モジュール1406へのズームレンズセット724及び/又は730及び/又は後部作業距離レンズ704の位置及び画像捕捉モジュール1404へのピクセルセット1006及び1008の位置を指定する。幾つかの較正ルーチンでは、光学要素1402のレンズの少なくとも幾つかが、ZRPをセンタリングし、及び/又は左右画像を位置合わせするように半径方向/回転方向において調整し、及び/又はチルトし得ることを理解されたい。
2.一例のインターフェース
立体視覚化カメラ300と外部デバイスとの通信を促進するために、一例の情報プロセッサモジュール1408は、ネットワークインターフェース1572及び周辺入力ユニットインターフェース1574を含む。一例のネットワークインターフェース1572は、リモートデバイスを情報プロセッサモジュール1408に通信可能に結合して、例えば、記録されたビデオを記憶し、作業距離、ズームレベル、フォーカス、較正、又は立体視覚化カメラ300の他の特徴を制御できるようにするよう構成される。幾つかの実施形態では、リモートデバイスは、ルックアップテーブルを較正する値若しくはパラメータを提供し得、又はより一般には、較正パラメータを有するプログラム1530を提供し得る。ネットワークインターフェース1572は、Ethernet(登録商標)インターフェース、ローカルエリアネットワークインターフェース、及び/又はWi−Fiインターフェースを含み得る。
一例の周辺入力ユニットインターフェース1574は、1つ又は複数の周辺機器1576に通信可能に結合し、患者の生理学的データ等の周辺データを立体画像データと統合するのを促進するように構成される。周辺入力ユニットインターフェース1574は、Bluetooth(登録商標)インターフェース、USBインターフェース、HDMI(登録商標)インターフェース、SDI等を含み得る。幾つかの実施形態では、周辺入力ユニットインターフェース1574は、ネットワークインターフェース1572と結合し得る。
周辺機器1576は、例えば、データ又はビデオ記憶ユニット、患者生理学的センサ、医療撮像デバイス、輸液ポンプ、透析装置、及び/又はタブレットコンピュータ等を含み得る。周辺データは、専用二次元赤外線専用カメラからの画像データ、ユーザのラップトップコンピュータからの診断画像、及び/又はAlcon Constellation(登録商標)システム及びWaveTec Optiwave Refractive Analysis(ORA(登録商標))システム等の眼科デバイスからの画像又は患者診断テキストを含み得る。
一例の周辺入力ユニットインターフェース1574は、周辺機器1576からのデータを立体画像との併用に適切なデジタル形態に変換及び/又はフォーマットするように構成される。デジタル形態になると、グラフィックス処理ユニット1564は、周辺データを他のシステムデータ及び/又は立体画像/フレームと統合する。データは、ディスプレイモニタ512及び/又は514に表示するように立体画像と共にレンダリングされる。
立体画像への周辺データの包含を構成するために、プロセッサ1562は統合セットアップを制御し得る。一例では、プロセッサ1562は、グラフィックス処理ユニット1564に構成パネルをディスプレイモニタ512及び/又は514に表示させ得る。構成パネルは、オペレータが周辺機器1576をインターフェース1574及びプロセッサ1562に接続して、続けて、機器1576との通信を確立できるようにし得る。プロセッサ1564は次に、どのデータが利用可能かを読み出し得、又はオペレータが構成パネルを使用して、データディレクトリロケーションを選択できるようにし得る。ディレクトリロケーション内の周辺データは、構成パネルに表示される。構成パネルはまた、オペレータに、周辺データを立体画像データに重ねる又は別個のピクチャとして表示する選択肢を提供することもできる。
周辺データ(及びオーバーレイフォーマット)の選択は、プロセッサ1562にデータを読み出させ、グラフィックス処理ユニット1564に送信させる。グラフィックス処理ユニット1564は、オーバーレイグラフィック(リアルタイム立体画像との術前画像又はグラフィックスの融合等)、「ピクチャインピクチャ」、及び/又はメイン立体画像ウィンドウの横又は上のサブウィンドウとして提示するために周辺データを立体画像データに適用する。
3.一例のデベイヤープログラム
図16の一例のデベイヤープログラム1580aは、あらゆるピクセル値の赤色、緑色、及び青色の値を有する画像及び/又はフレームを生成するように構成される。上述したように、右光学画像センサ746及び左光学画像センサ748のピクセルは、赤色波長範囲、青色波長範囲、又は緑色波長範囲の光を透過するフィルタを有する。したがって、各ピクセルは光データの一部のみを含む。したがって、画像捕捉モジュール1404から情報プロセッサモジュール1408において受信される各画像及び/又はフレームは、赤色、青色、又は緑色ピクセルデータのいずれかを含むピクセルを有する。
一例のデベイヤープログラム1580aは、隣接及び/又は近傍ピクセルの赤色、青色、及び緑色ピクセルデータを平均して、各ピクセルのより完全な色データを特定するように構成される。一例では、赤色データを有するピクセル及び青色データを有するピクセルは、緑色データを有する2つのピクセル間に配置される。2つのピクセルの緑色ピクセルデータは平均され、赤色データを有するピクセル及び青色データを有するピクセルに割り当てられる。幾つかの場合、平均された緑色データは、各緑色ピクセルからの赤色データを有するピクセル及び青色データを有するピクセルの距離に基づいて加重し得る。較正後、元々赤色又は青色データのみを有するピクセルはここで、緑色データを含む。したがって、デベイヤープログラム1580aがグラフィックス処理ユニット1564により実行された後、各ピクセルは、赤色光、青色光、及び緑色光の量についてのピクセルデータを含む。異なる色のピクセルデータはブレンドされて、色スペクトルでの結果としての色を決定し、これは表示のためにレンダラープログラム1580e及び/又はディスプレイモニタ512及び514により使用し得る。幾つかの例では、デベイヤープログラム1580aは、結果色を決定し、色を示すデータ又は識別子を記憶し得る。
4.一例の色補正
一例の色補正プログラム1580b、1580c、及び1580dは、ピクセル色データを調整するように構成される。センサ色補正プログラム1580bは、光学画像センサ746及び748の色検知における変動性を説明又は調整するように構成される。ユーザ色補正プログラム1580cは、オペレータの知覚及びフィードバックに基づいてピクセル色データを調整するように構成される。さらに、ディスプレイ色補正プログラム1580dは、ディスプレイモニタタイプに基づいてピクセル色データを調整するように構成される。
センサ変動性について色を補正するために、一例の色補正プログラム1580bは、グラフィックス処理ユニット1564及び/又はプロセッサ1562により実行可能な較正ルーチンを指定する。センサ較正は、X−Rite,Inc.によるColorChecker(登録商標)Digital SG等の較正されたカラーチャートを標的部位700に配置することを含む。プロセッサ1562及び/又はグラフィックス処理ユニット1564はプログラム1580bを実行し、プログラム1580bは、カラーチャートの左右画像を記録する命令を画像捕捉モジュール1404に送信することを含む。左右画像からのピクセルデータ(デベイヤープログラム1580aによる処理後)は、ネットワークインターフェース1572を介して周辺ユニット1576及び/又はリモートコンピュータからメモリ1570に記憶し得るカラーチャートに関連するピクセルデータと比較し得る。プロセッサ1562及び/又はグラフィックス処理ユニット1564は、ピクセルデータ間の差を特定する。差は較正データ又はパラメータとしてメモリ1570に記憶される。センサ色補正プログラム1580bは、較正パラメータを続く左右画像に適用する。
幾つかの例では、差は、プログラム1580bが、光学画像センサ746及び748の全てのピクセルにグローバルに適用されて、可能な限りカラーチャートに近い色を生成することができる色補正データの最良適合を見つけるように、ピクセルの領域にわたり平均し得る。追加又は代替として、プログラム1580bは、ユーザ入力デバイス1410から受信したユーザ入力命令を処理して、色を補正し得る。命令は、オペレータの好みに基づいて、赤色、青色、及び緑色ピクセルデータへの局所的及び/又は大域的変更を含み得る。
一例のセンサ色補正プログラム1580bは、ホワイトバランスを補正するようにも構成される。一般に、白色光は、等しい値を有する赤色、緑色、及び青色ピクセルを生成するはずである。しかしながら、ピクセル間の差が、撮像中に使用される光の色温度、各ピクセルのフィルタ及び検知要素の固有の側面、及び例えば、図7及び図8の偏向要素712のスペクトル濾波パラメータから生じ得る。一例のセンサ色補正プログラム1580bは、光不均衡を補正する較正ルーチンを指定するように構成される。
ホワイトバランスを実行するために、プロセッサ1562は(プログラム1580bからの命令に従って)、オペレータがニュートラルカードを標的部位700に配置する命令をディスプレイモニタ512及び/又は514に表示し得る。次に、プロセッサ1562は、画像捕捉モジュール1404にニュートラルカードの1つ又は複数の画像を記録するように命令し得る。アンパックルーチン1602及びデベイヤープログラム1580aによる処理後、プログラム1580bは、各ピクセルが略等しい値の赤色、青色、及び緑色データを有するように、赤色、青色、及び緑色データのそれぞれの局所的及び/又は大域的ホワイトバランス較正重み値を決定する。ホワイトバランス較正重み値はメモリ1570に記憶される。動作中、グラフィックス処理ユニット1564は、プログラム1580bを使用して、ホワイトバランス較正パラメータを適用して、ホワイトバランスを提供する。
幾つかの例では、プログラム1580bは、右光学画像センサ746及び左光学画像センサ748で個々にホワイトバランス較正パラメータを決定する。これらの例では、プログラム1580bは、左画像及び右画像に別個の較正パラメータを記憶し得る。他の場合、センサ色補正プログラム1580bは、カラーピクセルデータが右光学画像センサ746及び左光学画像センサ748で略同一であるように右ビューと左ビューとの間の重みを決定する。決定された重みは、立体視覚化カメラ300の動作中、続けて使用するために、ホワイトバランス較正パラメータに適用し得る。
幾つかの実施形態では、図16のセンサ色補正プログラム1580bは、ホワイトバランス較正パラメータをデジタル利得として右光学画像センサ746及び左光学画像センサ748のピクセルに提供すべきであることを指定する。例えば、画像捕捉モジュール1404のプロセッサ1504は、デジタル利得を各ピクセルから読み出されたピクセルデータに適用する。他の実施形態では、ホワイトバランス較正パラメータは、各ピクセルの色検知要素のアナログ利得として適用すべきである。
一例のセンサ色補正プログラム1580bは、異なる光源708及び/又はフィルタタイプのフィルタ740がアクティブ化される場合、ホワイトバランス及び/又は色補正を実行し得る。その結果、メモリ1570は、どの光源708が選択されたかに基づいて異なる較正パラメータを記憶し得る。さらに、センサ色補正プログラム1580bは、ホワイトバランス及び/又は色補正を異なるタイプの外光に関して実行し得る。オペレータは、ユーザ入力デバイス1410を使用して、外部光源の特性及び/又はタイプを指定し得る。この較正により、立体視覚化カメラ300は、異なる照明環境での色補正及び/又はホワイトバランスを提供することができる。
一例のプログラム1580bは、各光学画像センサ746及び748に対して較正を別個に実行するように構成される。したがって、プログラム1580bは、動作中、異なる較正パラメータを左右の画像に適用する。しかしながら、幾つかの例では、較正は、一方のセンサ746又は748のみで実行されてもよく、較正パラメータは他方のセンサに使用される。
一例のユーザ色補正プログラム1580cは、輝度、コントラスト、ガンマ、色合い、及び/又は飽和等の画質パラメータに関するオペレータ提供フィードバックを要求するように構成される。フィードバックは、ユーザ入力デバイス1410から命令として受信し得る。ユーザにより行われる調整は、メモリ1570にユーザ較正パラメータとして記憶される。これらのパラメータは続けて、光学画像線さ746及び748の色補正後、ユーザ色補正プログラム1580cにより左右の光学画像に適用される。
図16の一例のディスプレイ色補正プログラム1580dは、例えば、Datacolor(登録商標)Spyderカラーチェッカを使用してディスプレイモニタに関して画像の色を補正するように構成される。プログラム1580dは、プログラム1580bと同様に、画像捕捉モジュール1404に、標的シーン700における表示色温度の画像を記録するように命令する。ディスプレイ色補正プログラム1580dは、ルーチンを動作させて、メモリ1570内のルックアップテーブルに記憶された予期されるディスプレイ出力に合うようにピクセルデータを調整する。調整されたピクセルデータは、ディスプレイ較正パラメータをメモリ1570に記憶し得る。幾つかの例では、カメラ又は他の撮像センサを周辺入力ユニットインターフェース1574に接続し得、周辺入力ユニットインターフェース1574は、ディスプレイモニタ512及び514から記録された色に関する画像又は他のフィードバックを提供し、画像又は他のフィードバックは、ピクセルデータの調整に使用される。
5.一例の立体画像ディスプレイ
図16のグラフィックス処理ユニット1564の一例のレンダラープログラム1580eは、三次元立体表示に向けて左右画像及び/又はフレームを準備するように構成される。左右画像のピクセルデータがプログラム1580b、1580c、及び1580dにより色補正された後、レンダラープログラム1580eは、左目及び右目データを立体表示に適したフォーマットにし、ディスプレイモニタ512又は514の一方に送信するために、最終的にレンダリングされたものを出力バッファに配置するように構成される。
一般に、レンダラープログラム1580eは、右画像及び/又はフレーム及び左画像及び/又はフレームを受信する。レンダラープログラム1580eは、右及び左の画像及び/又はフレームを結合して、1つのフレームにする。幾つかの実施形態では、プログラム1580eは、上下モードで動作し、左画像データを半分の高さに凝縮する。次に、プログラム1580eは、凝縮された左画像データを結合フレームの上半分に配置する。同様に、プログラム1580eは、右画像データを半分の高さに凝縮し、凝縮された右画像データを結合フレームの下半分に配置する。
他の実施形態では、レンダラープログラム1580eは横並びモードで動作し、左右の各画像は半分の幅に凝縮され、左画像データが画像の左半分に提供され、一方、右画像データが画像の右半分に提供されるように1つの画像に結合される。更に代替の実施形態では、レンダラープログラム1580eは、行インターリーブモードで動作し、左右フレーム内の1つ置きのラインは破棄される。左右フレームは一緒に結合されて、完全な立体画像を形成する。
一例のレンダラープログラム1580eは、結合された左右画像を接続された各ディスプレイモニタに別個にレンダリングするように構成される。例えば、両ディスプレイモニタ512及び514が接続される場合、レンダラープログラム1580eは、第1の結合立体画像をディスプレイモニタ512に向けてレンダリングし、第2の結合立体画像をディスプレイモニタ514に向けてレンダリングする。レンダラープログラム1580eは、ディスプレイモニタ及び/又は画面のタイプ及び/又は画面サイズと互換性があるように、第1及び第2の結合立体画像をフォーマットする。
幾つかの実施形態では、レンダラープログラム1580eは、ディスプレイモニタが立体データをいかに表示すべきかに基づいて画像処理モードを選択する。オペレータの脳による立体画像データの適切な解釈には、立体画像の左目データがオペレータの左目に伝達され、立体画像の右目データがオペレータの右目に伝達される必要がある。一般に、ディスプレイモニタは、第1の偏光を左目データに提供し、第2の逆の偏光を右目データに提供する。したがって、結合された立体画像は、ディスプレイモニタの偏光に一致しなければならない。
図17は、本開示の実施形態例によるディスプレイモニタ512の一例を示す。ディスプレイモニタ512は、例えば、画面1702を有するLG(登録商標)55LW5600三次元テレビジョンであり得る。一例のディスプレイモニタ512は、全ての奇数行1704が第1の偏光を有し、全ての偶数行1706が逆の偏光を有するように画面1702上に偏光フィルムを使用する。図17に示されるディスプレイモニタ512との互換性のために、レンダラープログラム1580eは、左右の画像データが交互のラインにあるような行インターリーブモードを選択する必要がある。幾つかの場合、レンダラープログラム1580eは、立体画像を準備する前、ディスプレイモニタ512の表示特性を要求(又は他の方法で受信)し得る。
画面1702に表示された立体画像を見るために、外科医504(図5から外科医を想起する)は、行1704の第1の偏光に一致する第1の偏光を含む左レンズ1714を含むメガネ1712を装着する。加えて、メガネ1712は、行1706の第2の偏光に一致する第2の偏光を含む右レンズ1716を含む。したがって、左レンズ1714は、左行1704からの左画像データからの光のみの大半を透過させながら、右画像データからの光の大半をブロックする。加えて、右レンズ1716は、右行1706からの右画像データからの光のみの大半を透過させながら、左画像データからの左の大半をブロックする。各目に到達する「誤った」ビューからの光の量は、「クロストーク」として知られ、一般に、快適な閲覧を可能にするのに十分に低い値に保持される。したがって、外科医504は、左目で左光学画像センサ748により記録された左画像データを見ながら、右目で右光学画像センサ746により記録された右画像データを見る。外科医の脳は2つのビューを一緒に融合して、三次元距離及び/又は奥行きの知覚を作り出す。さらに、そのようなディスプレイモニタの使用は、立体視覚化カメラ300の精度を観測するのに有利である。外科医又はオペレータがメガネを装着しない場合、左右の両ビューは両目で観測可能である。平らな標的が焦点面に配置される場合、2つの画像は理論上、位置合わせされる。位置合わせずれが検出される場合、プロセッサ1562により再較正手順を開始することができる。
一例のレンダラープログラム1580eは、円偏光に関して左右ビューをレンダリングするように構成される。しかしながら、他の実施形態では、レンダラープログラム1580eは、線形偏光と互換性がある立体画像を提供し得る。どのタイプの偏光が使用されるかに関係なく、一例のプロセッサ1562はプログラム1560を実行して、レンダラープログラム1580eにより出力された立体画像の偏光を検証又はチェックし得る。偏光をチェックするために、プロセッサ1562及び/又は周辺入力ユニットインターフェース1574は、診断データを左画像及び/又は右画像に挿入する。例えば、プロセッサ1562及び/又は周辺入力ユニットインターフェース1574は、「左」テキストを左画像に重ね、「右」テキストを右画像に重ね得る。プロセッサ1562及び/又は周辺入力ユニットインターフェース1574は、オペレータに、メガネ1712を装着しながら一度に片目を閉じて、左ビューが左目で受け取られ、右ビューが右目で受け取られていることを確認するように指示するプロンプトを表示し得る。オペレータは、ユーザ入力デバイス1410を介して偏光が正確であるか否かを示す確認を提供し得る。偏光が正確ではない場合、一例のレンダラープログラム1580eは、左右の画像を結合立体画像に挿入する位置を逆にするように構成される。
更に他の実施形態では、一例のレンダラープログラム1580eは、結合立体画像を作成する代わりに、フレームの順次投影を提供するように構成される。ここで、レンダラープログラム1580eは、右画像及び/又はフレームで順次インターリーブされた左画像及び又はフレームをレンダリングする。したがって、左右の画像は外科医504に交互に提示される。これらの他の実施形態では、画面1702は偏光されない。代わりに、メガネ1712の左右のレンズは電子的又は光学的にフレームシーケンスの各部分と同期し得、それにより、対応する左右のビューをユーザに提供して、奥行きを識別する。
幾つかの例では、レンダラープログラム1580eは、別個のディスプレイモニタに又は1つのディスプレイモニタ上の別個のウィンドウに表示するように右画像及び左画像の幾らかを提供し得る。そのような構成は、光学要素1402の左右の光路のレンズが独立して調整可能な場合、特に有利であり得る。一例では、右光路は第1の倍率レベル設定し得、一方、左光路は第2の倍率レベルに設定される。それに従って一例のレンダラープログラム1580eは、左ビューからの画像ストリームをディスプレイモニタ512に表示し、右ビューからの画像ストリームをディスプレイモニタ514に表示し得る。幾つかの場合、左ビューはディスプレイモニタ512の第1のウィンドウに表示し得、一方、右ビューは同じディスプレイモニタ512の第2のウィンドウに表示される(例えば、ピクチャインピクチャ)。したがって、立体ではないが、左右の画像の同時表示は有用な情報を外科医に提供する。
別の例では、光源708及びフィルタ740を素早く切り替えて、可視光及び蛍光を有する交互の画像を生成し得る。一例のレンダラープログラム1580eは、異なる光源下で左ビュー及び右ビューを結合して、立体表示を提供して、例えば、背景を可視光で表示しながら、染料剤を有する静脈を強調表示し得る。
更に別の例では、デジタルズームを右及び/又は左光学画像センサ746又は748に適用し得る。デジタルズームは一般に、画像の知覚される分解能に影響し、表示分解能及び閲覧者の好み等の要因に依存する。例えば、画像捕捉モジュール1404のプロセッサ1504は、デジタルズームピクセル間で同期され散在する補間ピクセルを作成することによりデジタルズームを適用し得る。プロセッサ1504は、光学画像センサ746及び748の選択及び補間ピクセルを調整するプログラム1510を動作し得る。プロセッサ1504は、続けてレンダリングし表示するために、デジタルズームを情報プロセッサモジュール1408に適用した状態の右画像及び左画像を送信する。
幾つかの実施形態では、プロセッサ1504は、デジタルズーム画像をデジタルズームのない画像間で記録して、標的部位700の関心領域のデジタルズームのピクチャインピクチャ(又は別個のウィンドウ)表示を提供すべきであるとの命令をプロセッサ1562から受信する。それに従ってプロセッサ1504は、デジタルズームをピクセルグリッド1002及び1004からの1つおきの読み出しに適用する。これにより、レンダラープログラム1580eは、デジタルズームされた立体画像に加えて、立体最高分解能画像を同時に表示することができる。代替的には、デジタル的にズームすべき画像は、現在の画像からコピーされ、スケーリングされ、レンダリングフェーズ中、現在の画像の上に重ねられた適切な位置に配置される。この代替の構成は、「交互」記録要件を回避する。
6.一例の較正
図14〜図16の一例の情報プロセッサモジュール1408は、1つ又は複数の較正プログラム1560を実行して、例えば、作業距離及び/又は倍率を較正するように構成し得る。例えば、プロセッサ1562は、較正ステップを実行して、主対物レンズ組立体702から標的部位700までの作業距離(ミリメートル単位で測定される)を作業距離レンズモータ1554の既知のモータ位置にマッピングする命令をモータ・照明モジュール1406に送信し得る。プロセッサ1562は、エンコーダカウント及び作業距離を記録しながら、光軸に沿って離散ステップで物体平面を順次移動させ、左右の画像を再フォーカスすることにより較正を実行する。幾つかの例では、作業距離は外部デバイスにより測定し得、外部デバイスは、周辺入力ユニットインターフェース1574及び/又はユーザ入力デバイス1410へのインターフェースを介して、測定された作業距離値をプロセッサ1562に送信する。プロセッサ1562は、後部作業距離レンズ704の位置(作業距離レンズモータ1554の位置に基づく)及び対応する作業距離を記憶し得る。
一例のプロセッサ1562はまた、プログラム1560を実行して、倍率較正を実行することもできる。プロセッサ1562は、モータ・照明モジュール1406を使用して倍率レベルを選択して光学要素1402を設定し得る。プロセッサ1562は、光学要素1402の位置又は各倍率レベルに関する対応するモータ位置を記録し得る。倍率レベルは、既知のサイズの物体の画像内で高さを測定することにより特定し得る。例えば、プロセッサ1562は、10ピクセル分の高さを有するものとして物体を測定し、ルックアップテーブルを使用して、10ピクセル高さが5X倍率に対応すると判断し得る。
2つの異なる撮像モダリティの立体視点を合わせるために、単純なピンホールカメラであるかのようにモデリングすることが望ましいことが多い。MRI脳腫瘍等の3Dコンピュータモデルの視点は、ユーザ調整可能な方向及び距離(例えば、画像が合成立体カメラにより記録されたかのように)から見ることができる。調整可能性を使用して、ライブ外科画像の視点を合わせることができ、したがって、ライブ外科画像の視点は既知でなければならない。一例のプロセッサ1562は、例えば、右光学画像センサ746及び左光学画像センサ748の投影中心(「COP」)等のこれらのピンホールカメラモデルパラメータの1つ又は複数を較正し得る。投影中心を特定するために、プロセッサ1562は、投影中心から物体平面へのフォーカス距離を特定する。まず、プロセッサ1562は、倍率レベルに光学要素1402を設定する。次にプロセッサ1562は、物体平面、物体平面距離未満の距離d、及び物体平面距離よりも大きい距離dを含む光軸に沿った3つの異なる距離における画像の高さの測定値を記録する。プロセッサ1562は、2つの最も極端な位置における同様の三角に代数数式を使用して、投影中心へのフォーカス距離を特定する。プロセッサ1562は、同じ方法を使用して、又は較正に使用される倍率間の比率を特定することにより、他の倍率でのフォーカス距離を特定し得る。プロセッサは投影中心を使用して、MRI腫瘍モデル等の所望の融合物体の画像の視点をライブ立体外科画像に合わせ得る。追加又は代替として、OpenCV calibrateCamera等の既存のカメラ較正手順を使用して、上記パラメータ及び光学要素1402の歪みモデル等の追加のカメラ情報を見つけ得る。
一例のプロセッサ1562は、左右の光軸を更に較正し得る。プロセッサ1562は、較正のために左光軸と右光軸との瞳孔間距離を特定する。瞳孔間距離を特定するために、一例のプロセッサ1562は左右の画像を記録し、ピクセルセット1006及び1008はピクセルグリッド1002及び1004にセンタリングされる。プロセッサ1562は、左右の画像のZRP(及び/又は変位された物体への距離)の位置を特定し、これは、画像位置合わせずれ及び視差の度数を示す。加えて、プロセッサ1562は、倍率レベルに基づいて視差及び/又は距離をスケーリングする。次に、プロセッサ1562は、視差の度数及び/又はディスプレイにおける物体へのスケーリングされた距離を考慮に入れて、三角測量計算を使用して瞳孔間距離を特定する。プロセッサ1562は次に、較正点として、瞳孔間距離を指定された倍率レベルでの光軸に関連付ける。
VI.画像位置合わせ及び疑似視差調整実施形態
人間の視覚と同様に、立体画像は、関心点で収束する右ビュー及び左ビューを含む。右ビュー及び左ビューは、関心点から僅かに異なる角度で記録され、それにより、2つのビュー間に視差が生じる。関心点の前又は後のシーン内のアイテムは、閲覧者からのアイテムの距離又は奥行きを推測することができるような視差を示す。知覚される距離の精度は、例えば、閲覧者の視力の明瞭さに依存する。大半の人間は、視力に何らかのレベルの不完全性を示し、右ビューと左ビューとの間に幾らかの不正確性を生じさせる。しかしながら、それでもなお立体を達成することが可能であり、脳は幾らかのレベルの精度でビューを融合する。
左画像及び右画像が、人間により見られるのではなく、カメラにより記録される場合、ディスプレイ画面上の結合画像間の視差は立体視を生み出し、二次元ディスプレイに三次元立体画像の見た目を提供する。視差の誤差は、三次元立体画像の品質に影響する恐れがある。理論上、好ましい視差と比較した観測視差の不正確性は、疑似視差として知られている。人間と異なり、カメラは、不正確性を自動的に補償する脳を持たない。
疑似視差が大きくなる場合、三次元立体画像は、目眩、頭痛、及び吐き気を誘導するポイントまで閲覧不可能になり得る。顕微鏡及び/又はカメラにおいて視差に影響し得る多くの要因がある。例えば、左右のビューの光学チャネルは、厳密に等しいわけではないことがある。光学チャネルは、不一致のフォーカス、倍率、及び/又は関心点の位置合わせずれを有し得る。これらの問題は、異なる倍率及び/又は作業距離で様々な深刻度を有し得、それにより、較正を通して補正する取り組みを低減する。
図2の外科用顕微鏡200等の既知の外科用顕微鏡は、接眼レンズ206を通して適切なビューを提供するように構成される。多くの場合、既知の外科用顕微鏡の光学要素の画質は、立体視カメラには十分ではない。この理由は、外科用顕微鏡の製造業者が、主な閲覧が接眼レンズを通しての閲覧であると仮定しているためである。任意のカメラ付属品(カメラ212等)は、平面視であり、疑似視差を受けないか、又は疑似視差がそれほど明白ではない低画像分解能で立体視である。
ISO10936−1:2000,Optics and optical instruments−Operation microscopes−Part 1:Requirements and test methods等の国際規格は、外科用顕微鏡の画質に仕様限度を提供するために作成された。仕様限度は一般に、外科用顕微鏡の接眼レンズを通して見ることについて設定され、三次元立体表示を考慮していない。例えば、疑似視差に関して、ISO10936−1:2000は、左右のビュー間の垂直軸の差は15分未満であるべきであると指定している。軸の小さな角度ずれは多くの場合、1/60度に対応する分又は1/60分に対応する秒で定量化される。15分仕様限度は、作業距離250mm及び視野35mm(視野角8°を有する)を有する典型的な外科用顕微鏡では左右のビュー間の3%差に対応する。
3%差は、外科医の脳が小さな程度の誤差を解消することが可能な接眼レンズ閲覧の場合、許容可能である。しかしながら、この3%差は、ディスプレイモニタ上で立体的に見られる場合、左右のビュー間に顕著な差を生じさせる。例えば、左右のビューが一緒に見られる場合、3%差は、分断されて見え、長時間にわたり見ることが難しい画像を生成する。
別の問題は、既知の外科用顕微鏡が、1つ又は少数の倍率レベルでのみ15分仕様限度を満たし得、及び/又は個々の光学要素のみが特定の仕様限度を満たし得ることである。例えば、個々のレンズは特定の基準を満たすように製造される。しかしながら、個々の光学要素が光路において組み合わせられると、規格からの小さなずれは、相殺されるのではなく増幅され得る。これは、共通の主対物レンズを含む5つ以上の光学要素が光路に使用される場合、特に顕著であり得る。加えて、平行チャネル上に光学要素を完全に一致させることは非常に難しい。せいぜい、製造中、外科用顕微鏡の光学要素は、1つ又は少数の特定の倍率レベルでのみ、15分仕様限度を満たすように較正される。したがって、外科用顕微鏡がISO10936−1:2000仕様を満たすということになっているにも拘わらず、較正ポイント間の誤差は大きいことがある。
加えて、ISO10936−1:2000仕様では、追加の構成要素が追加される場合、より大きな許容差が許されている。例えば、第2の接眼レンズ(例えば、接眼レンズ208)の追加は、疑似視差を2分増大させる。ここでも、誤差は、接眼レンズ206及び208を通して見るには許容可能であり得るが、画像位置合わせずれは、カメラを通して立体的に見た場合、より顕著になる。
既知の外科用顕微鏡と比較して、本明細書に開示される一例の立体視覚化カメラ300は、光学要素1402の少なくとも幾つかを自動的に調整して、疑似視差を低減又はなくすように構成される。光学要素を立体視覚化カメラ300に組み込むことにより、三次元立体表示に向けて微調整を自動的に(時にはリアルタイムで)行うことが可能になる。幾つかの実施形態では、一例の立体視覚化カメラ300は20秒〜40秒の精度を提供し得、これは、既知の外科用顕微鏡の15分精度と比較して、光学誤差の97%低減に近い。
精度の改善により、一例の立体視覚化カメラ300は、既知の立体顕微鏡では実行することが可能ではない特徴を提供することができる。例えば、多くの新しい顕微鏡外科処置は、最適なサイジング、位置決め、マッチング、配向、及び診断に生体の術部での正確な測定に頼っている。これは、血管のサイズ特定、円環眼内レンズ(「IOL」)の配置角度、術前画像からライブビューへの血管系の一致、動脈下の腫瘍の深さ等の特定を含む。それに従って一例の立体視覚化カメラ300は、例えば、グラフィカルオーバーレイ又は画像分析を使用して解剖学的構造のサイズを特定し、精密な測定を行えるようにする。
既知の外科用顕微鏡では、外科医が既知のサイズの物体(マイクロ定規等)を視野内に配置する必要がある。外科医は物体のサイズを周囲の解剖学的構造と比較して、おおよそのサイズを特定する。しかしながら、外科医は物体を適切な位置に配置し、次に、測定が行われた後、物体を取り出す必要があるため、この手順は比較的遅い。加えて、サイズは外科医の主観的比較及び測定に基づくため、測定は近似しか提供しない。幾つかの既知の立体視カメラは、サイズを特定するためのグラフィカルオーバーレイを提供する。しかしながら、疑似視差が左右のビュー間に存在する場合、これらのオーバーレイの精度は下がる。
A.疑似視差の原因としてのZRP
ZRP不正確性は、疑似視差を生じさせる左右の画像間の大きな誤差原因を提供する。ZRP又はズーム反復点とは、倍率レベルが変わっても同じ位置に留まる視野内の点を指す。図18及び図19は、異なる倍率レベルでの左右の視野でのZRPの例を示す。特に、図18は、低倍率レベルでの左視野1800及び高倍率レベルでの左視野1850を示す。加えて、図19は、低倍率レベルでの右視野1900及び高倍率レベルでの右視野1950を示す。
図18及び図19が、本開示での例示的な参照点を提供する十字線1802及び1902を示すことに留意されたい。十字線1802は、y方向又はy軸に沿って位置決めされる第1の十字線1802a及びx方向又はx軸に沿って位置決めされる第2の十字線1802bを含む。さらに、十字線1902は、y方向又はy軸に沿って位置決めされる第1の十字線1902a及びx方向又はx軸に沿って位置決めされる第2の十字線1902bを含む。実際の実施では、一例の立体視覚化カメラ300はデフォルトにより通常、オペレータにより要求される場合を除き、光路に十字線を含まないか、又は光路に十字線を追加しない。
理想的には、ZRPは中央位置又は原点に位置すべきである。例えば、ZRPは十字線1802及び1902にセンタリングされるべきである。しかしながら、光学要素1402の不正確性及び/又は光学要素1402間のわずかな位置合わせずれは、ZRPを十字線1802及び1902の中心から離れて配置させる。疑似視差の程度は、左右のビュー間で位置合わせズレしたZRPに加えて、左右のビューの各ZRPが各中心から離れて配置される程度に対応する。さらに、光学要素1402における不正確性は、倍率変更にともなってZRPをわずかに変動させ得、それにより、疑似視差の程度を更に大きくする。
図18は、図7の標的部位700の視野1800及び1850内の3つの三日月形物体1804、1806、及び1808を示す。視野1800及び1850が光学画像センサ746及び748に関して線形の視野であることを理解されたい。物体1804、1806、及び1808は視野1800内に配置されて、疑似視差が左右の画像の位置合わせずれからいかに生じるかを示した。物体1804は、十字線1802aに沿って十字形1802bの上に位置決めされる。物体1806は、十字線1802bに沿って十字線1802aの左側に位置決めされる。物体1808は、十字線1802bの僅かに下に十字線1802aの右側に位置決めされる。左視野1800のZRP1810は、物体1808の切り欠きに位置決めされる。
左視野1800は、一例の立体視覚化カメラ300のズームレンズ組立体716を使用して倍率レベルを上げる(例えば、ズームする)ことにより、左視野1850に変更される。倍率を上げると、視野1850に示されるように、物体1804、1806、及び1808は拡大又は成長するように見える。図示の例では、視野1850は視野1800の倍率レベルの約3Xである。
低倍率視野1800と比較して、高倍率視野1850内の物体1804、1806、及び1808は、ZRP1810に関して3X、互いから離れて移動しながら、約3X増大したサイズを有する。加えて、物体1804、1806、及び1808の位置は、十字線1802に相対して移動している。物体1804はここで、十字線1802aの左にシフトされ、十字線1802bから僅かに離れてシフトされる。加えて、物体1806はここで、十字線1802aの左に更にシフトされ、十字線1802bの僅かに上にシフトされる。一般に、物体1808は、十字線1802に関して同じ(又は略同じ)位置に配置され、ZRP1810は十字線1802及び物体1806に関して厳密に同じ(又は略同じ)位置に配置される。換言すれば、倍率が上がるにつれて、物体1804、1806、及び1808(及び視野1850内の他の何か)は、ZRP1810から離れて外側に移動するように見える。
物体1804、1806、及び1808は、図19に示される右視野1900及び1950に示される。しかしながら、ZRPの位置は異なる。特に、右視野1900及び1950において、ZRP1910は十字線1902bの上に、十字線1902aの左に配置される。したがって、ZRP1910は、左視野1800及び1850におけるZRP1810と異なる位置に配置される。図示の例では、左右の光路が好ましくは、第1の倍率レベルにおいて位置合わせされると仮定される。したがって、左視野1800内の同じ物体1804、1806、及び1808と同じ位置にある右視野1900に示される物体1804、1806、及び1808。左右のビューは位置合わせされるため、疑似視差は存在しない。
しかしながら、高倍率視野1950では、物体1804、1806、及び1808は拡大し、ZRP1910から離れて移動する。ZRP1910の位置を所与として、物体1804は右側に移動又はシフトし、物体1806は下方に移動又はシフトする。加えて、物体1808は、視野1900内の位置と比較して下方及び右に移動する。
図20は、高倍率左視野1850を高倍率右視野と比較するピクセル図を示す。グリッド2000は、左光学画像センサ746のピクセルグリッド1002上の物体1804(R)、1806(R)、及び1808(R)の位置が重ねられた左光学画像センサ748のピクセルグリッド1004上の物体1804(L)、1806(L)、及び1808(L)の位置を表し得る。図20は、物体1804、1806、及び1808が左視野1850及び右視野1950で異なる位置にあることを明らかに示す。例えば、物体1804(R)は、十字線1902aの右及び十字線1902bの上に配置され、一方、同じ物体1804(L)は、十字線1802aの左及び十字線1802bの更に上に配置される。
物体1804、1806、及び1808の位置差は疑似視差に対応し、疑似視差は、異なる位置にZRP1810及び1910を生成する光学要素1402の光学位置合わせの欠陥によって生じる。歪みがない又は他の撮像誤差がないと仮定すると、図20に示される疑似視差は一般に、画像内の全ての点で同じである。外科用顕微鏡(図2の顕微鏡200等)の接眼レンズを通して見る場合、物体1804、1806、及び1808の位置差は目立たないことがある。しかしながら、立体画像でディスプレイモニタ512及び514において見る場合、差は容易に明らかになり、頭痛、吐き気、及び/又は目眩を生じさせる恐れがある。
図21は、左右ZRPに関する疑似視差を示す図を示す。図は、図10の左ピクセルグリッド1002及び左ピクセルグリッド1004のオーバーレイを含むピクセルグリッド2100を含む。この図示の例では、左光路の左ZRP2102は、x軸に沿って+4及びy軸に沿って0に配置される。加えて、右光路の右ZRP2104は、x軸に沿って−1及びy軸に沿って0に配置される。原点2106は、x軸とy軸との交点に示される。
この例では、物体2108は、第1の低倍率で左右の画像に関して位置合わせされる。倍率が3X上がるにつれて、物体2108のサイズは増大し、ZRP2102及び2104から離れて移動した。輪郭物体2110は、ZRP2102及び2104が原点2106に位置合わせされることに基づいて、第2のより高い倍率では物体2108の理論上の位置を示す。特に、第1の倍率レベルでの物体2108の切り欠きは、x軸に沿った+2位置にある。3X倍率を用いる場合、切り欠きは、切り欠きがより高い倍率レベルでx軸に沿って+6に配置されるようにx軸に沿って3X移動する。加えて、ZRP2102及び2104は理論上、原点2106に位置合わせされるため、物体2110は、左右のビュー(オーバーレイを所与として1つの物体として図21に示される)の間に位置合わせされる。
しかしながら、この例では、左ZRP2102及び右ZRP2104の位置合わせずれは、物体2110をより高倍率で左右のビュー間で位置合わせずれさせる。右光路に関して、右ZRP2104は、低倍率において物体2108の切り欠きから3ピクセル分、離れるようにx軸に沿って−1に配置される。3Xで拡大される場合、この差は9ピクセルになり、これは物体2110(R)として示される。同様に、左ZRP2102はx軸に沿って+4ピクセルに配置される。3X倍率で、物体2108は、2ピクセル分離れることから6ピクセル分離れるように移動し、これはx軸に沿って−2における物体2110(L)として示される。
物体2110(L)及び物体2110(R)の位置差は、より高倍率での左右のビュー間の疑似視差に対応する。左右のビューが結合されて、表示される立体画像が生成される場合、レンダラープログラム1850eが行インターリーブモードを使用するとき、物体2110の位置は各行で位置合わせずれする。位置合わせずれは立体視の生成にとって有害であり、ぼやけて見え、又はオペレータを混乱させる画像を生成する恐れがある。
B.疑似視差の他の原因
左右の光路間のZRP位置合わせずれは疑似視差の大きな原因であるが、他の誤差原因も存在する。例えば、疑似視差は、左右の光路間の不等倍率変更から生じることがある。平行光路間の倍率差は、光学要素1402のレンズの光学特性又は特性の僅かなばらつきから生じることがある。さらに、僅かな差は、図7及び図8の左右の前部ズームレンズ726及び728のそれぞれ及び左右の後部ズームレンズ736及び738のそれぞれが独立して制御される場合、位置決めから生じることがある。
再び図18及び図19を参照すると、倍率変更差は、左右の光路で異なるサイズの物体及び物体間の異なる間隔を生み出す。例えば、左光路がより高い倍率変更を有する場合、物体1804、1806、及び1808は、図19の右視野1950内の物体1804、1806、及び1808と比較して大きく見え、ZRP1810からより長い距離移動する。ZRP1810及び1910が位置合わせられる場合であっても、物体1804、1806、及び1808の位置差は疑似視差を生み出す。
疑似視差の別の原因は、左右の光路の不等フォーカスから生じる。一般に、左右のビュー間の任意のフォーカス差は、画質の知覚される低下を生じさせ得、左ビューが優勢であるべきか、それとも右ビューが優勢であるべきかについて潜在的な混乱を生じさせ得る。フォーカス差が顕著である場合、ピントずれ(「OOF(Out−Of−Focus)」)状況を生じさせ得る。OOF状況は特に、左右のビューが同じ画像に示される立体画像で顕著である。加えて、OOF状況は容易に補正可能ではなく、その理由は、ピントずれ光路の再フォーカスにより通常、他の光路の焦点が合わなくなるためである。一般に、両光路がフォーカスされる点を特定する必要があり、これは、光路に沿って左右のレンズの位置を変更し、及び/又は標的部位700からの作業距離を調整することを含み得る。
図22は、OOF状況がいかに生じるかを示す図を示す。図は、知覚される分解能(例えば、フォーカス)を最適分解能セクション2202に対するレンズ位置に関連付ける。この例では、左後部ズームレンズ734は位置L1にあり、一方、右後部ズームレンズ732は位置R1にある。位置L1及びR1において、後部ズームレンズ732及び734は、左右の光路が一致したフォーカスレベルを有するような最適分解能2202の範囲内にある。しかしながら、距離ΔPに対応する、L1及びR1の位置に差がある。後に、作業距離706は、一点がピントずれするように変更される。この例では、両後部ズームレンズ732及び734は、距離ΔPが変わらないように位置L2及びR2に対して同じ距離、移動する。しかしながら、位置変化により、左後部ズームレンズ734が右後部ズームレンズ732よりも高い分解能(例えば、よりよいフォーカス)を有するように分解能は大きく変わる。分解能ΔRはOOF状況に対応し、これは、左右の光路間のフォーカス位置合わせずれから疑似視差を生じさせる。
疑似視差の更に別の原因は、標的部位700において移動している撮像物体から生じ得る。疑似視差は、右光学画像センサ746及び左光学画像センサ748の露出間の小さな同期誤差から生じる。左右のビューが同時に記録されない場合、物体は2つのビュー間で変位又は位置合わせずれして見える。結合された立体画像は、左右のビューで2つの異なる位置に同じ物体を示す。
さらに、疑似視差の別の原因は、拡大中に移動するZRP点が関わる。セクションIV(A)において上述した例では、左右のビューのZRPがx方向又はy方向で移動しないと仮定する。しかしながら、ZRPは、ズームレンズ726、728、732、及び/又は734が光路又は光軸と厳密に平行に(例えば、z方向において)移動しない場合、拡大中、シフトし得る。図11を参照して上述したように、力が作動セクション1108に印加されると、キャリア724はわずかにシフト又は回転し得る。この回転は、倍率レベルが変更される場合、左右のZRPを僅かに移動させ得る。
一例では、倍率変更中、キャリア730は一方向に移動し、一方、キャリア724は、倍率変更の一部では同じ方向に、フォーカス調整のための倍率変更の残りの部分では逆方向に移動する。キャリア724の移動軸が光軸からわずかにチルト又は回転する場合、左光路及び/又は右光路のZRPは、第1の部分にわたり一方向にシフトし、続けて、倍率変更の第2の部分にわたり逆方向にシフトする。加えて、力は不等に印加されるため、右前部ズームレンズ726及び左前部ズームレンズ728は、左右の光路間で様々な程度のZRPシフトを受け得る。ZRPの位置変化は一緒に、光路の位置合わせずれを生じさせ、それにより、疑似視差を生じさせる。
C.疑似視差の低減は、立体ビューとのデジタルグラフィックス及び画像の組み込みを促進する
外科用顕微鏡がよりデジタル化されるにつれて、設計者は、グラフィックス、画像、及び/又は他のデジタル効果をライブビュー画像に重ねる特徴を追加している。例えば、ガイダンスオーバーレイ、立体磁気共鳴撮像(「MRI」)画像の融合、及び/又は外部データを、カメラにより記録された画像、さらには接眼レンズ自体内に表示される画像と組み合わせ得る。疑似視差は、下の立体画像とのオーバーレイの精度を低減する。外科医は一般に、例えば、MRIを介して視覚化された腫瘍が、多くは三次元で、融合ライブ外科立体ビュー内に可能な限り正確に配置されることを要求する。そうでなければ、術前腫瘍画像は、外科医に殆ど情報を提供せず、それにより、手術の性能を損なう。
例えば、外科ガイドは、左ビューとの位置合わせがずれながら、右ビュー画像と位置合わせし得る。2つのビュー間で位置合わせずれした外科ガイドは、オペレータにとって容易に明らかである。別の例では、外科ガイドは、グラフィックス処理ユニット1564が結合立体画像を作成する前、情報プロセッサモジュール1408において左右のビューと別個に位置合わせし得る。しかしながら、左右のビュー間の位置合わせずれは、ガイド間に位置合わせずれを生み出し、それにより、ガイドの有効性を下げ、顕微鏡外科処置中、混乱及び遅延を生み出す。
「IMAGING SYSTEM AND METHODS DISPLAYING A FUSED MULTIDIMENSIONAL RECONSTRUCTED IMAGE」という名称の米国特許第9,552,660号明細書(参照により本明細書に援用される)には、術前画像及び/又はグラフィックスがいかに、立体画像と視覚的に融合されるかが開示されている。図23及び図24は、履帯画像に融合される場合、疑似視差がデジタルグラフィックス及び/又は画像の精度をいかに失わせるかを示す図を示す。図24は患者の目2402の正面図を示し、図23は、図24の平面A−Aに沿った目の断面図を示す。図23では、情報プロセッサモジュール1408は、焦点面2302から、例えば、目2402の後嚢上の関心物体2304までの尾側距離dを特定するように命令される。情報プロセッサモジュール1408は、例えば、距離dが目2402の左右のビューからの画像データの三角測量計算により特定されることを指定するプログラム1560を動作させる。ビュー2306は、左光学画像センサ748の視点から示され、ビュー2308は、右光学画像センサ746の視点から示される。左ビュー2306及び右ビュー2308は、目2402の前中心2310と一致すると仮定される。加えて、左ビュー2306及び右ビュー2308は、理論上の右投影2312及び理論上の左投影2314として焦点面2302に投影される物体2304の二次元ビューである。この例では、プロセッサ1562は、三角測量ルーチンを使用して理論上の右投影2312の外挿と理論上の左投影2314の外挿との交点を計算することにより、関心物体2304への距離dを特定する。
しかしながら、この例では、疑似視差が存在し、疑似視差は、図23及び図24に示されるように、実際の左投影2316を距離Pだけ、理論上の左投影2314の左に配置させる。プロセッサ1562は、実際の左投影2316及び右投影2312を使用し、三角測量ルーチンを使用して右投影2312の外挿と実際の左投影2316の外挿との交点2320への距離を特定する。交点2320への距離は、距離dに誤差距離eを加えたものに等しい。それに従って疑似視差は、立体画像からとられたデータを使用して誤った距離計算を生じさせる。図23及び図24に示されるように、小さな程度の疑似視差であっても、大きな誤差を生み出し得る。融合画像の状況では、誤った距離は、立体画像と融合する腫瘍三次元視覚化の不正確な配置に繋がる。不正確な配置は、手術を遅延させ、外科医の施術を妨げ、又は視覚化システム全体を無視させ得る。更に悪いことには、外科医は、腫瘍画像の不正確な配置に頼り、顕微鏡外科処置中、ミスを犯し得る。
D.一例の立体視覚化カメラは疑似視差を低減又はなくす
図3〜図16の一例の立体視覚化カメラ300は、視覚的欠陥、疑似視差、及び/又は通常、疑似視差を生じさせる位置合わせずれした光路を低減又はなくすように構成される。幾つかの例では、立体視覚化カメラ300は、左右の光路のZRPを左光学画像センサ746及び右光学画像センサ748のピクセルセット1006及び1008の各中心に位置合わせすることにより、疑似視差を低減又はなくす。追加又は代替として、立体視覚化カメラ300は、左右の画像の光路を位置合わせし得る。立体視覚化カメラ300が、較正中、疑似視差を低減する動作を実行し得ることを理解されたい。さらに、立体視覚化カメラ300は、使用中、検出された疑似視差をリアルタイムで低減し得る。
図25及び図26は、本開示の実施形態例による、疑似視差を低減又はなくす一例の手順2500を示す流れ図を示す。手順2500は図25及び図26に示される流れ図を参照して説明されるが、手順2500に関連するステップを実行する多くの他の方法を使用し得ることを理解されたい。例えば、ブロックの多くの順序は変更し得、特定のブロックは他のブロックと結合し得、記載されるブロックの多くは任意選択的である。さらに、手順2500に記載される動作は、例えば、一例の立体視覚化カメラ300の光学要素1402、画像捕捉モジュール1404、モータ・照明モジュール1406、及び/又は情報プロセッサモジュール1408を含む複数のデバイスの中で実行し得る。例えば、手順2500は、情報プロセッサモジュール1408のプログラム1560の1つにより実行し得る。
一例の手順2500は、立体視覚化カメラ300が、左右の光路を位置合わせする命令を受信した(ブロック2502)とき、開始される。命令は、立体視覚化カメラ300が較正ルーチンを実行することをオペレータが要求することに応答して、ユーザ入力デバイス1410から受信し得る。他の例では、命令は、左右の画像が位置合わせずれしていると判断された後、情報プロセッサモジュール1408から受信し得る。情報プロセッサモジュール1408は、左右の画像を重ね、ピクセルの大きなエリアにわたる大きな差は位置合わせがずれた画像を示す、ピクセル値の差を特定するプログラム1560を実行することにより、画像が位置合わせされていないと判断し得る。幾つかの例では、プログラム1560は、オーバーレイ機能を実行せずに左右の画像のピクセルデータを比較し得、例えば、左ピクセルデータが右ピクセルデータから減算されて、位置合わせずれの深刻度を判断する。
疑似視差を低減する命令を受信した後、一例の立体視覚化カメラ300は、左光路又は右光路の一方のZRPを見つける。例示を目的として、手順2500は、左光路のZRPをまず特定することを含む。しかしながら、他の実施形態では、手順2500は、右光路のZRPをまず特定し得る。左ZRPを特定するために、立体視覚化カメラ300は、少なくとも1枚のズームレンズ(例えば、左前部ズームレンズ728及び/又は左後部ズームレンズ734)を左光路のz軸に沿って第1の倍率レベルに移動させる(ブロック2504)。前部ズームレンズ726及び728が同じキャリア724に接続され、後部ズームレンズ732及び734が同じキャリア730に接続される場合、左レンズの移動は、右レンズも移動させる。しかしながら、手順2500のこのセクション中、左レンズのみの移動が考慮される。
第1の倍率レベルにおいて、立体視覚化カメラ300は、左ズームレンズをz方向に沿って移動させる(ブロック2506)。移動は、例えば、第1の倍率レベル周囲での前後運動を含み得る。例えば、第1の倍率レベルが5Xである場合、移動は4X〜6Xであり得る。移動は、5Xから4X等の一方向での移動を含むこともできる。この移動中、立体視覚化カメラ300は、1枚又は複数枚の他のレンズを調整して、標的部位700のフォーカスを維持し得る。ブロック2508において、左ズームレンズの移動中、立体視覚化カメラ300は、例えば、左光学画像センサ748を使用して、標的部位700の画像及び/又はフレーム2509のストリーム又はシーケンスを記録する。画像2509は、ピクセルグリッド1004の原点及び左ZRPの潜在的な位置を含むように較正されたオーバーサイズピクセルセット1008を使用して記録される。
情報プロセッサモジュール1408の一例のプロセッサ1562は、画像ストリームを分析して、画像間でx方向又はy方向において移動しないエリアの部分を見つける(ブロック2510)。エリアの部分は、1つ又は少数のピクセルを含み得、左ZRPに対応する。上述したように、倍率変更中、物体はZRPから離れて移動し、又はZRPに向かって移動する。ZRPにおける物体のみが、倍率が変更された場合、視野に関して一定位置に留まる。プロセッサ1562は、ピクセルデータを使用して各ピクセルについて画像ストリーム間のデルタを計算し得る。画像ストリームにわたり最小のデルタを有するエリアは、左ZRPに対応する。
情報プロセッサモジュール1408の一例のプロセッサ1562は次に、ピクセルグリッド1004に関して画像ストリーム間で移動しないエリアの部分の座標を特定する(例えば、左ZRPの位置を特定する)(ブロック2512)。他の例では、情報プロセッサモジュール1408のプロセッサ1562は、原点と左ZRPに対応するエリアの部分との間の距離を特定する。距離は、ピクセルグリッド1004上の左ZRPの位置を特定するのに使用される。左ZRPの位置が特定されると、情報プロセッサモジュール1408のプロセッサ1562は、左ZRPがピクセルセットの中心(1ピクセル以内)に配置されるような左光学画像センサ748のピクセルセット(例えば、ピクセルセット1008)を特定する(ブロック2514)。この時点で、左ZRPは左光路内でセンタリングされる。
幾つかの例では、ブロック2504〜2514は、左ZRPが原点のピクセル内にあり、疑似視差が最小になるまで、ピクセルセットを再選択することにより繰り返し実行し得る。ピクセルグリッドが特定された後、情報プロセッサモジュール1408のプロセッサ1562は、較正点として、ピクセルセットの座標及び/又は左ZRPの座標の少なくとも一方をメモリ1570に記憶する(ブロック2516)。情報プロセッサモジュール1408のプロセッサ1562は、立体視覚化カメラ300が第1の倍率レベルに戻る場合、同じピクセルセットが選択されるように第1の倍率レベルに較正点を関連付け得る。
図27は、左ZRPが、左光学画像センサ748のピクセルグリッドに関していかに調整されるかを示す図を示す。まず、原点2704にセンタリングされた初期(例えば、オーバーサイズ)ピクセルセット2702が選択される。ピクセルセット2702は、潜在的なZRPを画像ストリームに記録するのに十分に大きい。この図示の例では、左ZRP2706は、原点2704の右上に配置される。情報プロセッサモジュール1408のプロセッサ1562は、左ZRP2706の位置に基づいて、左ZRP2706がピクセルセット2708の中心に配置又は位置するようなピクセルセット2708を特定する。
図25において左ZRPが特定され、ピクセルセットの原点と位置合わせされた後、一例の手順2500は、図26において左右の画像を位置合わせする。画像を位置合わせするために、一例のプロセッサ1562は、左ZRPが原点と位置合わせされた後に記録された左右の画像からのピクセルデータを比較する。幾つかの実施形態では、プロセッサ1562は、左右の画像を重ねて、例えば、減算法及び/又はテンプレート法を使用して差を特定する。プロセッサ1562は、結果として生成される右画像が左画像と位置合わせされるか、又は一致するような、右光路のピクセルセットを選択又は特定する(ブロック2519)。
一例のプロセッサ1562は、図示の実施形態では、右ZRPを特定する。ステップは、左ZRPについてブロック2504〜2512において考察したステップと同様である。例えば、ブロック2518において、立体視覚化カメラ300は、右ズームレンズを第1の倍率レベルに移動させる。幾つかの実施形態では、右レンズの倍率レベルは、左ZRPの特定に使用された倍率レベルと異なる。次に、情報プロセッサモジュール1408の一例のプロセッサ1562は、右ズームレンズを倍率レベル前後に移動させ、移動中、右光学画像センサ746から画像2521のストリームを受信する(ブロック2520及び2522)。情報プロセッサモジュール1408の一例のプロセッサ1562は、画像間で移動しないエリアの部分を見つけることにより、画像の右ストリームから右ZRPを特定する(ブロック2524)。プロセッサ1562は次に、右ZRPの座標及び/又は位置合わせされたピクセルセット1006の中心と右ZRPとの間の距離を特定する(ブロック2526)。
次に、プロセッサ1562は、例えば、右ZRPの距離又は座標を使用して、x方向、y方向、及び/又はチルト方向の少なくとも1つにおいて右光路内で少なくとも1枚のレンズを移動させて、右ZRPを位置合わせされたピクセルセット1006の中心と位置合わせするように、モータ・照明モジュール1406に命令する(ブロック2528)。換言すれば、右ZRPは、位置合わせされたピクセルセット1006の中心と一致するように移動する。幾つかの例では、右前部レンズ720、右レンズバレル736、右最終光学要素745、及び/又は右画像センサ746は、右光路のz方向に関してx方向、y方向、及び/又はチルト方向に移動する(例えば、屈曲部を使用して)。移動の程度は、ピクセルセット1006の中心からの右ZRPの距離に比例する。幾つかの実施形態では、プロセッサ1562は、レンズ移動と同じ効果を有するように、右前部レンズ720、右レンズバレル736、及び/又は右最終光学要素745の属性をデジタルに変更する。プロセッサ1562はステップ2520〜2528を繰り返し、及び/又は続く右画像を使用して、右ZRPがピクセルセット1006の中心と位置合わせされることを確認し、及び/又はピクセルセットの中心と右ZRPを位置合わせするのに必要な更なるレンズ移動を繰り返し決定し得る。
一例のプロセッサ1562は、較正点として、右ピクセルセット及び/又は右ZRPの座標をメモリ1570に記憶する(ブロック2530)。プロセッサ1562は、右ZRPを位置合わせするために移動した右レンズの位置を較正点に記憶することもできる。幾つかの例では、右光路の較正点は、第1の倍率レベルと併せて左光路の較正点と共に記憶される。したがって、立体視覚化カメラ300が続けて第1の倍率レベルに設定される場合、プロセッサ1562は、較正点内のデータを光学画像センサ746及び748及び/又は1つ又は複数の光学要素1402の半径方向位置決めに適用する。
幾つかの例では、手順2500は、異なる倍率レベル及び/又は作業距離で繰り返し得る。したがって、プロセッサ1562は、別の倍率レベル又は作業距離でZRP較正が必要であるか否かを判断する(ブロック2532)。別の倍率レベルを選択すべき場合、手順2500は図25におけるブロック2504に戻る。しかしながら、別の倍率レベルが必要ない場合、一例の手順は終了する。
各較正点はルックアップテーブルに記憶し得る。テーブル内の各行は、異なる倍率レベル及び/又は作業距離に対応し得る。ルックアップテーブル内の列は、左ZRP、右ZRP、左ピクセルセット、及び/又は右ピクセルセットの座標を提供し得る。加えて、1つ又は複数の列は、位置合わせされた左右の画像に加えて、倍率レベルにおいてフォーカスを達成するための光学要素1402のレンズの関連位置(例えば、半径方向位置、回転方向位置、チルト位置、及び/又は軸方向位置)を指定し得る。
それに従って手順2500は、各光学画像センサ746及び748のピクセルグリッド並びに三次元立体画像において互いに位置合わせすべき標的部位のビューに加えて、右ZRP及び左ZRPを生成する。幾つかの場合、左右の画像及び対応するZRPは、1ピクセル以内の精度及び位置合わせを有する。そのような精度は、左右のビュー(例えば、左右の光路からの画像)を重ね、立体的にではなく両目で両ビューを観測することによりディスプレイ514又は514で観測可能であり得る。
幾つかの例では、右ZRPがピクセルセットの原点と位置合わせされ、又は一致するような右ピクセルセットがまず選択されることを理解されたい。次に、左右の光学画像は、光学要素1402の1枚又は複数枚の右レンズ及び/又は左レンズを移動させることにより位置合わせし得る。代替の手順はなお、互いの間で及び光学画像センサ746及び748に関してセンタリングされ位置合わせされた右ZRP及び左ZRPを提供する。
手順2500は最終的に、左右のZRPが位置合わせされたままであり、左右の画像が位置合わせされたままであることを保証することにより、全光学倍率範囲を通して立体視覚化カメラ300における疑似視差を低減又はなくす。換言すれば、左右の光学画像センサ746及び748の二重光学系は、左右の光路間の画像の中心における視差が焦点面において概ねゼロであるように位置合わせされる。さらに、各光路のZRPは各ピクセルセットの中心に割り当てられているため、一例の立体視覚化カメラ300は、倍率範囲にわたり同焦点であり、倍率及び作業距離範囲にわたり同中心である。したがって、倍率のみを変更することで、同じ中心点に合わせながら、両光学画像センサ746及び748において標的部位700のフォーカスを維持する。
上記手順2500は、外科処置が実行される前及び/又はオペレータにより要求されると、較正において実行し得る。一例の手順2500はまた、術前顕微鏡外科画像及び/又は外科ガイダンスグラフィックスとの画像見当合わせ前、実行することもできる。さらに、一例の手順2500は、立体視覚化カメラ300の動作中、リアルタイムで自動的に実行し得る。
1.一例のテンプレートマッチング
幾つかの実施形態では、情報プロセッサモジュール1408の一例のプロセッサ1562は、1つ又は複数のテンプレートと併せてプログラム1560を使用して、右ZRP及び/又は左ZRPの位置を特定するように構成される。図28は、プロセッサ1562が標的テンプレート2802をいかに使用して、左ZRPの位置を特定するかを示す図を示す。この例では、図28は、原点2804又は左画像センサ748の左ピクセルグリッド1004の中心と位置合わせされたテンプレート2802を含む第1の左画像を示す。テンプレート2802は、立体視覚化カメラ300を適切な位置に移動させることにより位置合わせし得る。代替的には、テンプレート2802は、位置合わせされるまで標的部位700において移動し得る。他の例では、テンプレート2802は、ピクセルグリッド1004の中心との位置合わせが必要ない別のパターンを含み得る。例えば、テンプレートは、グラフィカル波形パターン、グラフィカル呼吸計パターン、患者の術部のビュー、及び/又はx方向及びy方向の両方で幾らかの程度の非周期性を有する視覚的に区別可能な特徴を有するグリッドを含み得る。テンプレートは、周期性がある画像のサブセットが、複数の位置においてより大きな画像に完全に位置合わせされないようにするよう構成され、周期性がある画像のサブセットが、複数の位置においてより大きな画像に完全に位置合わせされることは、そのようなテンプレートをマッチングに不適なものにする。テンプレートマッチングに適するテンプレート画像は、「テンプレートマッチング可能」テンプレート画像として知られる。
図28に示されるテンプレート2802は、第1の倍率レベルで撮像される。左ZRP2806はテンプレート2802に関して示される。ZRP2806は、原点2804に関してLx、Lyの座標を有する。しかしながら、この時点で、プロセッサ1562はまだ左ZRP2806を識別していない。
ZRP2806を見つけるために、プロセッサ1562は、左ズームレンズ(例えば、左前部ズームレンズ728及び/又は左後部ズームレンズ734)に倍率を第1の倍率レベルから第2の倍率レベルに、特にこの例では、1Xから2Xに変更させる。図29は、倍率レベルが2倍になったピクセルグリッド1004上の標的2802を含む第2の左画像の図を示す。第1の倍率レベルから第2の倍率レベルに、標的2802の部分はサイズを増大させ、左ZRP2806から離れて均一に拡大し、左ZRP2806は第1及び第2の画像に関して静止したままである。加えて、ピクセルグリッド1004の原点2804と左ZRP2806との間の距離は同じままである。
一例のプロセッサ1562は、図29に示される第2の画像からデジタルテンプレート画像3000を同期する。デジタルテンプレート画像を作成するために、プロセッサ1562は、図29に示される第2の画像をコピーし、第1の倍率から第2の倍率への倍率変更の往復により、コピー画像をスケーリングする。例えば、第1の画像から第2の画像への倍率変更が、2倍であった場合、第2の画像は1/2にスケーリングされる。図30は、テンプレート2802を含むデジタルテンプレート画像3000の図を示す。図30のデジタルテンプレート画像3000におけるテンプレート2802は、図28に示される第1の左画像におけるテンプレート2802と同じサイズにスケーリングされる。
一例のプロセッサ1562は、デジタルテンプレート画像3000を使用して、左ZRP2806を見つける。図31は、ピクセルグリッド1004に記録された第1の左画像(又は第1の倍率レベルで記録された続く左画像)の上に重ねられたデジタルテンプレート画像3000を示す図を示す。第1の左画像とのデジタルテンプレート画像3000の組み合わせは、図31に示されるように、結果ビューを生成する。まず、デジタルテンプレート画像3000はピクセルグリッド1004の原点2804にセンタリングされる。
一例のプロセッサ1562は、デジタルテンプレート画像3000を下のテンプレート2802と比較して、位置合わせされたか、又は一致したか否かを判断する。次に、一例のプロセッサ1562は、デジタルテンプレート画像3000を1つ又は複数のピクセル分、水平又は垂直に移動させ、別の比較を実行する。プロセッサ1562はデジタルテンプレート画像3000を繰り返し移動させ、デジタルテンプレート画像3000が下のテンプレート2802にいかに密に一致するかに関する各位置でのメトリックのマトリックスを編纂する。プロセッサ1562は、最良に一致するメトリックに対応するマトリックス内の位置を選択する。幾つかの例では、プロセッサ1562はOpenCV(登録商標)Template Match機能を使用する。
図32は、テンプレート2802と位置合わせされたデジタルテンプレート画像3000を有する図を示す。最適なマッチングを達成するためにデジタルテンプレート画像3000が移動した距離は、Δx及びΔyとして示される。デジタルテンプレート画像3000がM1/M2(第1の倍率レベルを第2の倍率レベルで除算したもの)のスケールで合成されたことを知り、プロセッサ1562は、以下の式(1)及び(2)を使用して左ZRP2806の座標(Lx,Ly)を特定する。
Lx=Δx/(M1/M2)−式(1)
Ly=Δy/(M1/M2)−式(2)
左ZRP2806の座標(Lx,Ly)が特定された後、一例のプロセッサ1562は、図25及び図26の手順2500と併せて上述したように、左ZRP2806と位置合わせ又は一致する原点を有するピクセルサブセットを選択又は特定する。幾つかの実施形態では、プロセッサ1562は、テンプレートマッチングを繰り返し使用して、より高精度のZRP位置及び/又はピクセルサブセットに収束し得る。さらに、上記例は左ZRPの発見について考察したが、同じテンプレートマッチング手順を使用して、右ZRPを見つけることができる。
幾つかの実施形態では、上記テンプレートマッチングプログラム1560は、左右の画像の位置合わせに使用し得る。これらの実施形態では、左右の画像は、倍率レベルで記録される。両画像は、例えば、図28の標的テンプレート2802を含み得る。右画像の一部は選択され、左画像に重ねられる。次に、右画像の部分は、1つ又は複数のピクセル分、水平及び/又は垂直に左画像の前後でシフトされる。一例のプロセッサ1562は、右画像の部分の各位置において比較を実行して、左画像とどの程度密な一致があるかを判断する。最適位置が特定されると、右画像が一般に左画像と一致するような、右ピクセルグリッド1002のピクセルセット1006が特定される。左画像と一致するように、ピクセルセット1006の位置は、右画像の部分をどれくらい移動したかに基づいて特定し得る。特に、プロセッサ1562は、x方向、y方向、及び/又はチルト方向における移動量を使用して、右ピクセルセット1006の対応する座標を特定する。
2.一例の左右画像の位置合わせ
幾つかの実施形態では、図14〜図16の情報プロセッサモジュール1408の一例のプロセッサ1562は、ディスプレイモニタ512及び/又は514に左右の画像のオーバーレイを表示する。プロセッサ1562は、左右の画像を位置合わせするためにユーザフィードバックを受信するように構成される。この例では、左右の画像の各ピクセルデータは、例えば、グラフィックス処理ユニット1564を使用してディスプレイモニタ512の各ピクセルに精密にマッピングされる。重ねられた左右の画像の表示により、いかなる疑似視差もオペレータに容易に明らかになる。一般に、疑似視差がない場合、左右の画像は略厳密に位置合わせされるべきである。
オペレータは、疑似視差を検出する場合、制御機構305又はユーザ入力デバイス1410を作動させて、左右の画像のいずれかを移動させ、左右の画像の他方と位置合わせし得る。制御機構305からの命令は、後続画像がオペレータ入力を反映してディスプレイモニタ512に表示されるように、プロセッサ1562に、左右のピクセルセットの位置をリアルタイムでそれに従って調整させ得る。他の例では、命令は、プロセッサ1562に、半径方向調整、回転方向調整、軸方向調整、又はチルトを介して光学要素1402の1つ又は複数の位置を変更させ得る。オペレータは、左右の画像が位置合わせされるまで、制御機構305及び/又はユーザ入力デバイス1410を介して入力を提供し続ける。確認命令を受信すると、プロセッサ1562は、設定された倍率レベルでの画像位置合わせを反映した較正点をルックアップテーブルに記憶する。
追加又は代替として、上述したテンプレートマッチング法を使用して、立体視覚化カメラ300の立体光軸に概ね直交する平坦標的にフォーカスしながら、画像位置合わせを提供し得る。さらに、テンプレートマッチング法を使用して、「テンプレートマッチング可能」なシーンが左右の光路のビューにある場合は常に、左右のビューをリアルタイムで位置合わせし得る。一例では、テンプレート画像は、例えば、左ビューのサブセットからコピーされ、ビューの中心又はその近傍にセンタリングされる。ピントが合った画像の中心からのサンプリングにより、標的部位700の同様のビューが他方のビュー(この例では右ビュー)に提示されることが保証される。ピンボケ画像の場合、本実施形態での、オートフォーカス動作の成功後のみ、この位置合わせ方法が実行されるようなことは当てはまらない。次に、選択されたテンプレートは他のビュー(この例では右ビュー)の現在ビュー(又はそのコピー)においてマッチングされ、y軸のみが結果からとられる。ビューが垂直に位置合わせされると、テンプレートマッチのy値はゼロピクセル又はその近傍にある。非ゼロy値は、2つのビュー間の垂直位置合わせずれを示し、同じ値のyを使用した補正が適用されて、第1のビューのピクセル読み出しセットを選択するか、又は負の値のyを使用した補正が他のビューのピクセル読み出しセットに適用される。代替的には、補正は、視覚化パイプラインの他の部分に適用することができ、又はピクセル読み出しセットと上記パイプラインとの間で分割することができる。
幾つかの例では、オペレータは、右ZRPをピクセルグリッド1002の原点と手動で位置合わせすることもできる。例えば、右ZRPの位置を特定した後、プロセッサ1562(及び/又は周辺入力ユニットインターフェース1574又はグラフィックス処理ユニット1564)は、右ZRPをディスプレイモニタ512により表示される右画像においてグラフィカルに強調表示させる。プロセッサ1562はまた、ピクセルグリッド1002の原点を示すグラフィックを表示することもできる。オペレータは制御機構305及び/又はユーザ入力デバイス1410を使用して、右ZRPを原点に進ませる。プロセッサ1562は、制御機構305及び/又はユーザ入力デバイス1410からの命令を使用して、それに従って光学要素1402の1つ又は複数を移動させる。プロセッサ1562は、右ZRPの現在位置及び原点をグラフィカルに表示して、オペレータに位置決めに関する更新されたフィードバックを提供することに加えて、右画像ストリームをリアルタイムで提供し得る。オペレータは、右ZRPが位置合わせされるまで、制御機構305及び/又はユーザ入力デバイス1410を介して入力を提供し続ける。確認命令を受信すると、プロセッサ1562は、設定された倍率レベルでの光学要素1402の位置を反映した較正点をルックアップテーブルに記憶する。
3.位置合わせ誤差の比較
一例の立体視覚化カメラ300は、立体カメラを有する既知のデジタル外科用顕微鏡と比較して、左右の画像間でより少ない位置合わせ誤差を生成する。後述する分析は、カメラを有する既知のデジタル外科用顕微鏡のZRP位置合わせずれにより生成された疑似視と一例の立体視覚化カメラ300とを比較する。まず、両カメラは第1の倍率レベルに設定され、焦点面は患者の目の第1の位置に位置決めされる。以下の式(3)を使用して、各カメラから目への作業距離(「WD」)を特定する。
WD=(IPD/2)/tan(α)−式(3)
この式中、IPDは瞳孔間距離に対応し、約23mmである。加えて、αは、例えば、右光学画像センサ746と左光学画像センサ748との間の角度の半分であり、この例では2.50°である。集束角はこの角度の2倍であり、この例では5°である。その結果としての作業距離は263.39mmである。
カメラは第2の倍率レベルにズームインされ、患者の目の第2の位置において三角測量で測定される。この例では、第2の位置は、第1の位置とカメラから同じ物理的距離にあるが、第2の倍率レベルで提示される。倍率変更は、センサピクセルグリッドの中心へのZRPの一方又は両方の位置合わせずれに起因して水平疑似視差を生じさせる。既知のカメラシステムでは、疑似視差は、例えば、3分であると特定され、これは0.05°に対応する。上記式(3)中、0.05°値がαに追加され、これは作業距離258.22mmを生成する。作業距離差は5.17mm(263.39mm−258.22mm)であり、これは、カメラ付属品を有する既知のデジタル外科用顕微鏡の誤差に対応する。
これとは対照的に、一例の立体視覚化カメラ300は、ピクセルセット又はグリッドの中心の1ピクセル以内でZRPを自動的に位置合わせすることが可能である。視野角が5°であり、4Kディスプレイモニタと併用される4K画像センサを用いて記録される場合、1ピクセル精度は0.00125°(5°/4000)又は4.5秒に対応する。上記式(3)を使用して、0.00125°をαに追加し、それにより、作業距離は263.25mmになる。立体視覚化カメラ300の作業距離差は0.14mm(263.39mm−263.25mm)である。既知のデジタル外科用顕微鏡の5.17mm誤差と比較した場合、一例の立体視覚化カメラ300は位置合わせ誤差を97.5%低減する。
幾つかの実施形態では、立体視覚化カメラ300は、分解能が高いほど高精度であり得る。上記例では、分解能は5°視野で約4.5秒である。視野2°の8K超高精細システム(4000行のそれぞれに8000個のピクセルを有する)の場合、立体視覚化カメラ300の分解能は約1秒である。これは、左右のビューのZRPが1ピクセル又は1秒まで位置合わせし得ることを意味する。これは、分オーダの疑似視差を有する既知のデジタル顕微鏡外科システムよりもはるかに精密である。
4.疑似視差の他の原因の低減
上記例は、一例の立体視覚化カメラ300が、ZRP及び/又は左右の画像自体の位置合わせずれの結果としての疑似視差をいかに低減するかを考察している。立体視覚化カメラ300は、疑似視差の他の原因を低減するように構成することもできる。例えば、立体視覚化カメラ300は、略同じ瞬間に画像を記録するように左右の光学画像センサ746及び748を同時にクロッキングすることによる動きに起因した疑似視差を低減し得る。
一例の立体視覚化カメラ300は、左右の光路間の倍率が異なることに起因した疑似視差を低減することもできる。例えば、立体視覚化カメラ300は、左光路に基づいて倍率レベルを設定し得る。立体視覚化カメラ300は次に、右画像の倍率が左に合うように自動調整を行い得る。例えば、プロセッサ1562は画像データを使用して、例えば、左右の画像に共通する特定の特徴間のピクセル数を測定することにより制御パラメータを計算し得る。次に、プロセッサ1562は、デジタルスケーリング、補間ピクセルの挿入、及び/又は無関係ピクセルの削除により左右の画像の倍率レベルを等化し得る。一例のプロセッサ1562及び/又はグラフィックス処理ユニット1564は、倍率が左画像に一致するように右画像を再レンダリングし得る。追加又は代替として、立体視覚化カメラ300は、左右の光学要素1402の独立調整を含み得る。プロセッサ1562は、左右の光学要素1402を別個に制御して、同じ倍率を達成し得る。幾つかの例では、プロセッサ1562はまず、例えば、左倍率レベルを設定し、次に、右光学要素1402を別個に調整して、同じ倍率レベルを達成し得る。
一例の立体視覚化カメラ300は、フォーカスが異なることに起因する疑似視差を更に低減し得る。一例では、プロセッサ1562は、所与の倍率及び/又は作業距離での角光路の最良フォーカスを決定するプログラム1560を実行し得る。プロセッサ1562はまず、最良分解能ポイントへの光学要素1402のフォーカスを実行する。次に、プロセッサ1562は、適する非物体平面位置におけるOOF状況をチェックし、左右の画像のフォーカスを一致させ得る。次に、プロセッサ1562は、最良分解能でのフォーカスを再チェックし、左右両方の光学要素1402が物体平面上及び物体背面から離れての両方で十分に等しくフォーカスするまで、フォーカスを繰り返し調整する。
一例のプロセッサ1562は、左右の画像の一方又は両方のフォーカスに関連する信号をモニタすることにより最適なフォーカスを測定し検証し得る。例えば、左右の画像の「鮮鋭度」信号がグラフィックス処理ユニット1564により同時に及び/又は同期して生成される。信号は、フォーカス変更につれて変化し、画像分析プログラム、エッジ検出分析プログラム、パターン強度のフーリエ変換の帯域幅プログラム、及び/又は変調伝達関数(「MTF」)測定プログラムから特定し得る。プロセッサ1562は、鮮鋭画像を示す最大信号をモニタしながら、光学要素1402のフォーカスを調整する。
OOF状況を最適化するために、プロセッサ1562は、左右両方画像の鮮鋭信号をモニタし得る。フォーカスが物体平面から動き、例えば、左画像に関連する信号が増大するが、右画像に関連する信号が低減する場合、プロセッサ1562は、光学要素1402がフォーカスからずれて移動していると判断するように構成される。しかしながら、左右両方の画像に関連する信号が比較的高く、概ね等しい場合、プロセッサ1562は、光学要素1402がフォーカスのために適宜位置決めされていると判断するように構成される。
5.低疑似視差の利点
一例の立体視覚化カメラ300は、左右の画像間の疑似視差が低い結果として、既知のデジタル外科用顕微鏡よりも優れた幾つかの利点を有する。例えば、略完全に位置合わせされた左右の画像は、外科医に略完全な立体表示を生成し、それにより、目の疲労を低減する。これにより、立体視覚化カメラ300を面倒な器具ではなく外科医の目の延長として使用することが可能になる。
別の例では、精密に位置合わせされた左右の画像により、術部の正確な測定をデジタル撮影することができる。例えば、適切なサイズのIOLを決定し、正確に移植することができるように、患者の目の水晶体包のサイズを測定し得る。別の場合、赤外線蛍光オーバーレイを融合画像に正確に配置することができるように、動いている血管の動きを測定し得る。ここで、実際の移動速度は一般に、外科医の関心ではないが、オーバーレイ画像の配置及びリアルタイム位置合わせにとって重要である。重ねられた画像の適宜一致したスケール、位置合わせ、及び視点は全て、正確に有用された結合ライブ立体画像及び交互モード画像の提供にとって重要である。
幾つかの例では、プロセッサ1562は、オペレータがディスプレイモニタ512上で測定パラメータを描画できるようにし得る。プロセッサ1562は画面に描画された座標を受信し、それに従ってその座標を立体画像に変換する。プロセッサ1562は、ディスプレイモニタ512に描画された定規を立体画像に示される倍率レベルにスケーリングすることにより測定値を特定し得る。プロセッサ1562により行われる測定には、立体ディスプレイに表示される2つ又は3つの位置のポイント間測定、ポイントツーサーフェス測定、サーフェス特徴付け測定、ボリューム特定測定、速度検証測定、座標変換、機器及び/又は組織追跡等がある。
VII.立体視覚化カメラのロボットシステム例
図5及び図6と併せて考察したように、一例の立体視覚化カメラ300は、立体視覚化プラットフォーム又は立体視ロボットプラットフォーム516の一部として機械的又はロボットアーム506に接続し得る。一例のロボットアーム506は、1つ又は複数の処置中、オペレータが患者の上及び/又は隣に立体視覚化カメラ300を位置決め且つ/又は向けられるようにするよう構成される。したがって、ロボットアーム506は、オペレータが立体視覚化カメラ300を標的手術部位の所望の視野(「FOV」)に移動できるようにする。外科医は一般的に、画面に表示される画像と外科医のFOVとのより容易な視覚的向き及び対応性を可能にするように、外科医自身のFOVと同様のFOVにカメラを位置決め且つ/又は向けることを好む。本明細書に開示される一例のロボットアーム506は、外科医自身のFOVを遮ることなく外科医のFOVと一致又は一貫した位置決めを可能にするように構造的柔軟性及び補助付き制御を提供する。
本明細書に開示される立体視ロボットプラットフォーム516とは対照的に、既知の立体顕微鏡保持デバイスは、オペレータにより手動で移動する単純な機構を含む。これらのデバイスは、手動での再位置決めを可能にする電子機械的ブレーキを装備した複数の回転ジョイントを含む。さらに、オペレータがビューを容易且つ処置を邪魔せずに変更できるように、幾つかの既知の保持デバイスは電動ジョイントを有する。電動ジョイントは、例えば、単純なX−Y位置決めから、接続された剛性アームを操作する複数の独立した回転ジョイントを備えるデバイスまでの種々のレベルの複雑性を有する。大半の処置中、種々の方向からビューを素早く容易に取得することが望ましい。しかしながら、既知の立体顕微鏡保持デバイスは1つ又は複数の問題を有する。
既知の立体顕微鏡保持デバイスは、一般に画像の所望の側面を見るために顕微鏡を操作する外科医の手動能力により制限される限られた位置、方向、及び/又は向き精度を有する。複数のジョイントを有する保持デバイスは、デバイス操作により通常、全てのジョイントが一度に動くことになるため、特に操作が面倒であり得る。オペレータはしばしば、アームがいかに動くかを見ている。アームが所望のロケーションに位置決めされた後、オペレータは、撮像デバイスのFOVが所望のロケーションに位置合わせされたか否かをチェックする。多くの場合、デバイスが適宜位置合わせされた場合であっても、デバイスのフォーカスを調整する必要がある。更なる既知の立体顕微鏡保持デバイスは、標的手術部位にある他の物体に関して一貫したFOV又は焦点面を提供することができず、その理由は、処置中に患者が移動し、又はシフトする際、デバイスがアーム位置メモリを有さず、又はメモリが不正確であるためである。
既知の立体顕微鏡保持デバイスは一般に、制御が物体面焦点距離、倍率、及び照明等の顕微鏡パラメータから独立している位置決めシステムを有する。これらのデバイスでは、位置決め、例えばズームの調整は手動で実行しなければならない。一例では、オペレータは、フォーカスの際又は作業距離変更の際、レンズ限界に達し得る。オペレータは保持デバイスの位置を手動で変更し、次に立体顕微鏡を再フォーカスする必要がある。
既知の立体顕微鏡保持デバイスは、単に手術部位の観測を目的としている。既知のデバイスは、FOV内の組織のロケーション又はFOV内の組織からFOV外の別の物体までの距離を特定しない。既知のデバイスはまた、MRI画像とライブビューとの結合等の代替のビューイングモダリティを形成するための組織とライブ手術部位内の他の物体との比較も提供しない。代わりに、既知のデバイスからのビューは別個に表示され、他の医療画像又はテンプレートから位置合わせされない。
さらに、既知の立体顕微鏡保持デバイスは、観測を除き、精密さにあまり重きを置かないため、正確ではないことがあるパラメータを有する。ISO規格10936−1:2000(E)「Optics and optical instruments−Operation microscopes−Part 1:Requirements and test methods」における要件は大方、通常の人間であるオペレータが接眼レンズを使用して妥当な立体光学画像を達成するために導き出されたものである。オペレータの脳は、複数のビューを結合して頭の中で画像を生成し、立体視を達成する。ビューは一般に、他の方法では一緒に結合又は比較されない。オペレータが許容可能な画像を見、頭痛等の有害な影響を受けない限り、オペレータのニーズは満たされてきた。同じ事が、幾らかの不安定性、アームの垂れ下がり、及び不正確な移動制御が許されている立体顕微鏡保持デバイスに対しても言える。しかしながら、高分解能デジタルカメラが既知のデバイスと併用される場合、構造的不正確性は容易に観測可能であり、特に顕微鏡外科処置の場合、有用性が損なわれ得る。
上述したように、既知の立体顕微鏡保持デバイスは、カメラの重さに起因して垂れ下がり得る。一般に、既知のロボット位置決めシステムは較正されて、システム自体のみでの遵守性又は不正確性を特定する。立体顕微鏡保持デバイスは、カメラ又はカメラマウントと保持デバイスとの間のいかなる不正確性も考慮に入れない。垂れ下がりは一般に、画像をディスプレイで観測しながら、オペレータがカメラを手動で位置決めすることにより補償される。電動の動きを提供するシステムでは、例えば、軸の回りの復元トルクモーメントの方向が逆になる、カメラの重力中心(「CG」)がアームジョイントの回転軸の逆側に再位置決めされた場合、垂れ下がりの変化が生じる。続けて、カメラの位置、方向、及び/又は向きを調整することによりオペレータにより補償される機構におけるいかなる遵守又は垂れ下がりも、位置、方向、及び/又は向きの誤差を増大させる。幾つかの場合、例えば、カメラがロボット特異点を通って移動する場合、モーメント反転が素早く生じ、その結果として生成されるカメラ画像の誤差は素早く過度にシフトする。そのような誤差は、例えば、部位内の組織又は機器を正確に追従又は追跡する既知の立体顕微鏡保持デバイスの能力を制限する。
既知の立体顕微鏡保持デバイスは、手術危機を空間的に位置特定して追跡し、続けてそれらの代表的な表示をモニタに提供する特徴を含む。しかしながら、これらの既知のシステムでは、目立って配置される立体位置特定カメラ又は三角測量デバイス及び機器に目立つ基準デバイスが必要とされる。デバイスの追加は、複雑性、コスト、及び操作の目障りを増大させる。
本明細書に開示される一例の立体視ロボットプラットフォーム516は、機械的又はロボットアーム506に接続された一例の立体視覚化カメラ300を含む。図5及び図6は、一例の立体視ロボットプラットフォーム516を示す。カメラ300により記録された立体画像は、1つ又は複数のディスプレイモニタ512、514を介して表示される。ロボットアーム506はカート510に機械的に接続され、カート510はまた、ディスプレイモニタ512、514の1つ又は複数を支持し得る。ロボットアームは、例えば、サイズ、性質、機能、及び動作が一般に人間に類似した連結式ロボットアームを含み得る。
図33は、本開示の実施形態例による、図5の顕微鏡手術環境500の側面図を示す。図示の例では、ディスプレイモニタ512は、1つ又は複数のジョイントを有して柔軟な位置決めを可能にする機械的アーム3302を介してカート510に接続し得る。幾つかの実施形態では、機械的アーム3302は、術中、患者にわたって延びて、外科医の比較的接近したビューを提供するのに十分な長さであり得る。
図33はまた、立体視覚化カメラ300及びロボットアーム506を含め、立体視ロボットプラットフォーム516の側面図も示す。カメラ300は、結合板3304を介してロボットアーム506に機械的に結合される。幾つかの実施形態では、結合板3304は、カメラ300の更なる程度の位置決め及び又は向きを提供する1つ又は複数のジョイントを含み得る。幾つかの実施形態では、結合板3304は、オペレータにより手動で移動又は回転される必要がある。例えば、結合板3304は、カメラ300をz軸に沿って光軸を有すること(すなわち、患者に向かって下方を指す)とx軸又はy軸に沿った光軸を有すること(すなわち、患者に向かって側方を指す)との間で素早く位置決めできるようにするジョイントを有し得る。
一例の結合板3304は、カメラ300を移動させるためにオペレータにより付与された力及び/又はトルクを検出するように構成されたセンサ3306を含み得る。幾つかの実施形態では、オペレータは、制御アーム304a及び304b(図3に示される)を握ることによりカメラ300を位置決めし得る。オペレータが制御アーム304a及び304bを掴んだ後、ユーザは、ロボットアーム306からの補助を用いてカメラ300を位置決め且つ/又は向け得る。センサ3306は、オペレータにより提供される力ベクトル又はトルク角度を検出する。本明細書に開示される一例のプラットフォーム516は、検知された力/トルクを使用して、オペレータにより提供される力/トルクに対応するカメラ300の補助付き移動を提供するために、ロボットアーム506のどのジョイントを回転させるべきか(及びジョイントをいかに素早く回転させるべきか)を判断する。センサ3306は、結合板3304とカメラ300との間のインターフェースに配置されて、制御アーム304を介してオペレータにより付与された力及び/又はトルクを検出し得る。
幾つかの実施形態では、センサ3306は、例えば、自由度6の触力覚検知モジュールを含み得る。これらの実施形態では、センサ3306は、x軸、y軸、及びz軸での並進力又は並進運動を検出し得る。センサ3306はまた、ヨー軸、ピッチ軸、及びロール軸の回りの回転力又は回転運動を別個に検出することもできる。並進力と回転力との切り離しにより、立体視ロボットプラットフォーム516はロボットアーム506を制御するための順運動学及び/又は逆運動学をより容易に計算できるようになり得る。
ロボットアーム506はユーザ単独では移動可能ではないことがあるため、一例のセンサ3306は力を検出するように構成し得る。代わりに、センサ3306は、ユーザにより適用された並進力及び回転力を検出し、これらは、ロボットアーム506の補助付き移動制御を提供するのにどのジョイントを回転させるかを判断するために立体視ロボットプラットフォーム516により使用される。他の例では、ロボットアーム506は、補助なし又は少なくとも初期補助なしでのオペレータによる移動を可能にし得る。これらの他の例では、センサ3306は、ユーザにより付与された運動を検出し、これは、1つ又は複数のジョイントを続けて回転させ、それにより補助付き移動を提供するために立体視ロボットプラットフォーム516により使用される。運動又は運動を生じさせる力の初期検出から立体視ロボットプラットフォーム516がジョイントを回転させるまでの時間は、200ミリ秒(「ms」)未満、100ms未満、50ms未満、又はわずか10ms未満であり得、ユーザはロボットアーム506の非補助付き移動の初期時間に気付かない。
一例のセンサ3306は、回転力/運動を示すデジタルデータ及び並進力/運動を示すデジタルデータを出力し得る。この例では、デジタルデータは、各軸で検出された力/運動について8ビット、16ビット、32ビット、又は64ビット分解能を有し得る。代替的には、センサ3306は、検知された力及び/又は運動に比例するアナログ信号を送信し得る。一例のセンサ3306は、例えば、1ms、5ms、10ms、20ms、50ms、100ms等の定期的なサンプリングレートでデータを送信し得る。代替的には、センサ3306は力/運動データの略連続的なストリームを提供し得る。
幾つかの実施形態では、一例のセンサ3306は代わりに、制御アーム304a及び304bの1つ若しくは複数又は制御アーム304a及び304bと筐体302との間に配置し得る。制御アーム304a及び304bのそれぞれがセンサ3306を含む例では、一例の立体視ロボットプラットフォーム516は、2組の並進力又は並進運動及び回転力又は回転運動を受信し得る。これらの例では、立体視ロボットプラットフォーム516はセンサ3306からの値を平均し得る。
図示の実施形態では、ロボットアーム506の第1の端部はカート510に搭載され、一方、ロボットアームの第2の逆端部は、立体視覚化カメラ300(例えば、ロボット端部エフェクタ)に機械的に接続される。図33は、プラットフォーム516の残りの部分を外科医の邪魔にならないロケーションに維持しながら、立体視覚化カメラ300を手術部位の上方に位置決めする等、延長位置に立体視覚化カメラ300を保持するロボットアーム506を示す。カート510は、立体視ロボットプラットフォーム516をしっかりと保持するように構成され、規定の動作位置で倒れないような重量を有しバランスがとられる。
一例の立体視ロボットプラットフォーム516は以下の利点を提供するように構成される。
1.視覚化の強化。ロボットアーム506と立体視覚化カメラ300との間の通信により、プラットフォーム516は、手術部位を素早くより正確に視覚化するようにカメラ300を向け操縦することができる。例えば、ロボットアーム506は、カメラ300を光軸に沿って移動させて、単にカメラ内に含まれる場合を超えてフォーカス及びズームの範囲を拡張することができる。プラットフォーム516の比較的小さなサイズにより、より多種多様な外科処置及び向きでHeads−Up Surgery(登録商標)を提供し、それにより、手術効率及び外科医エルゴノミクスを改善する。
2.次元性能の強化。立体画像内の全ての点の正確な測定機能を有する一例の立体視覚化カメラ300は、測定情報をロボットアーム506に通信するように構成される。そしてロボットアーム506は、正確な位置、方向、及び/又は向き特定機能を有し、画像内及び画像間の次元を立体視ロボットプラットフォーム516及び患者の解剖学的構造に共通する座標系に関して正確に変換することができるようにカメラ300に見当合わせされる。
3.立体視覚化カメラ300からの立体画像の品質及び正確性により、種々のモダリティの外部ソースからの画像又は診断データと結合して、融合画像を構築することができる。そのような融合画像は、処置をより正確且つ効率的に実行し、よりよい患者結果を達成するために外科医により使用することができる。
4.立体視覚化カメラ300、ロボットアーム506、及び/又は画像及び運動プロセッサ(例えば、図14のプロセッサ1408)は、有利な処置適用に向けてプログラムすることができる。例えば、特定の視覚化部位位置、方向、及び/又は向きを保存し、後に処置に戻すことができる。例えば、組織の特定の長さ又はラインを辿るように精密な移動路をプログラムすることができる。他の例では、予めプログラムされたウェイポイントを設定することができ、それにより、オペレータが、医療処置中、どのステップが実行されているかに基づいてロボットアーム506の位置及び/又は向きを変更できるようにする。
5.立体視ロボットプラットフォーム516は、正確な画像位置情報の使用及び分析により本質的にガイドされる手術を提供する。そのようなガイダンスは、外科処置の少なくとも部分を実行する別のロボットシステム等の他のデバイスに通信することができる。そのような他のデバイスの構成要素と機能を共有する立体視ロボットプラットフォーム516の構成要素はパッケージに一緒に統合し得、性能の効率、正確性、及びコストを達成し得る。
A.ロボットアーム実施形態
図34は、本開示の実施形態例による一例のロボットアーム506の実施形態を示す。幾つかの実施形態では、ロボットアーム506は、Universal Robots S/AからのモデルUR5と同様であるか、又はモデルUR5を含む。ロボットアーム506の外面はアルミニウム及びプラスチック材料を含み、手術室での使用に関して互換性を有し、容易に清掃される。
ロボットアーム506は電子機械的なものとして本明細書に説明されるが、他の例では、ロボットアーム506は機械的、油圧的、又は空気圧的であり得る。幾つかの実施形態では、ロボットアーム506は、例えば、制御弁を有する真空チャックを使用してカメラ300を保持し操作する混合作動機構を有し得る。さらに、ロボットアーム506は、特定の数のジョイント及びリンクを含むものとして以下に説明されるが、ロボットアーム506が任意の数のジョイント、任意の長さのリンクを含み得、且つ/又は任意のタイプのジョイント又はセンサを含み得ることを理解されたい。
本明細書に記載されるように、患者の任意の外科処置で3D立体表示をオペレータに提供しながら、術野の制限のないビューを提供するように、ロボットアーム506は配置され、ジョイントは向けられる。重要性の低い運動でのロボットアーム506の運動は、オペレータにとって好都合であるのに十分高速であるが、それでも安全であるように提供される。ロボットアーム506の移動は、術中、細かく正確であるように制御される。加えて、ロボットアームの移動は、外科処置に必要とされる運動の全範囲を通してスムーズで予測可能であるように制御される。本明細書に記載されるように、ロボットアーム506の移動は、遠隔制御により又はアーム自体の手動操作を介して制御可能である。幾つかの実施形態では、ロボットアーム506は、最小の力で(例えば、補助付きガイダンス特徴を介して)、例えば小指1本だけを用いて位置決め可能であるように構成される。
幾つかの実施形態では、ロボットアーム506は、ジョイントに機械的又は電子的ロックブレーキを含み得る。オペレータにより設定された後、カメラ300の、一般にロケーション及び方向である目的又は「姿勢」ると、ブレーキを係合し得る。ロボットアーム506は、望ましくない手動又は非意図的な運動を回避するために、ロック若しくはアンロックスイッチ又は他の入力デバイスを含み得る。ロックされている場合、一例のロボットアームは、立体視覚化カメラ300が安定したクリアな画像を提供できるようにするのに十分な安定性を提供する。ロボットアーム506は追加又は代替として、立体視覚化カメラ300の新しい姿勢への移動に続く振動を吸収又は減衰させる1つ又は複数の減衰デバイスを含み得る。減衰デバイスは、例えば、流体充填線形又は回転抑制装置、ゴムベースの防振搭載抑制装置、及び/又は同調質量ばね抑制装置を含み得る。代替又は追加として、アーム506は、例えば、比例積分導関数(「PID」)サーボシステムの使用を通した電子機械的減衰を含み得る。
一例のロボットアーム506には、1つ又は複数のリンクが移送及び格納のために戻る格納位置を構成し得る。格納位置は、ロボットアームを簡潔なフットプリントで移送且つ格納できるようにし、それでもなお、幾つかの外科処置で必要とされる長いリーチで展開できるようにする。立体視覚化カメラ300の配線等のケーブルはロボットアーム506に沿って提供されて、外科処置への干渉を回避する。
図34に示される実施形態では、ロボットアーム506は、R1、R2、R3、R4、R5、及びR6と記される6つのジョイントを含む。他の実施形態では、ロボットアーム506はより少数又は追加のジョイントを含み得る。さらに、幾つかの実施形態では、ジョイントR1〜R6の少なくとも幾つかは+/−360°の回転運動機能を有する。回転運動は、各ジョイントについて、1つ又は複数のアンチバックラッシュジョイントギアボックスを通して機械的回転ジョイントを駆動するように構成された電気モータを含む電子機械的サブシステムにより提供し得る。ジョイントR1〜R6のそれぞれは、ジョイント位置を検出する1つ又は複数の回転センサを含み得る。さらに、各ジョイントはスリップクラッチ及び/又は電子機械的ブレーキを含み得る。
ジョイントR1〜R6のそれぞれは、1ミリメートル(「mm」)の約+/−1/10の運動の全体再現性を有し得る(カメラ300が取り付けられた状態で)。ジョイントは、毎秒0.5°〜180°に制御することができる可変回転速度を有しであり得る。これは一緒に、毎秒1mm〜毎秒1mのカメラ移動に置き換えられる。幾つかの実施形態では、立体視ロボットプラットフォーム516は、外科処置中、所定位置にあるジョイントR1〜R6の1つ又は複数の速度ガバナーを有し得る。ジョイントR1〜R6のそれぞれは、電源及び/又はロボットアーム506のコントローラ内のコマンド線に電気的に接続し得る。電力及びコマンド信号のワイヤは、ジョイント及びリンク内部で配線し得る。さらに、ジョイントの1つ又は複数は、リンクに接続するためのOリング等の抑制装置を含み得る。抑制装置は、例えば、ロボットアーム506における振動、カート510からの振動、及び/又は立体視覚化カメラ300を介して付与される振動を低減又は吸収し得る。
ジョイントR1は、フランジ3402に機械的に結合されるベースジョイントを含み、フランジ3402は静止構造3404に固定される。フランジ3402は任意のタイプの機械的コネクタを含み得る。静止構造3404は、例えば、図5のカート510、壁、天井、テーブル等を含み得る。ジョイントR1は、z軸を含み得る第1の軸3410の回りを回転するように構成される。
ジョイントR1は、リンク3430を介してジョイントR2に接続される。一例のリンク3430は、ロボットアーム506の下流セクションに構造的支持を提供するように構成された円筒体又は他の管状構造を含む。リンク3430は、ジョイントR2との回転固定接続を提供して、リンク3430がジョイントRへの接続により所定位置に保持されている間、ジョイントR2を回転できるようにするよう構成される。ジョイントR2は、例えば、軸3412の回りを回転するように構成されたショルダジョイントを含み得る。一例の軸3412は、軸3410に垂直(又は略垂直)であるように構成される。軸3412は、z軸の回りのジョイントR1の回転を所与として、x−y平面内にあるように構成される。
ジョイントR2は、リンク3432を介してジョイントR3に機械的に結合される。リンク3432は、リンク3430よりも長い長さを有するように構成され、ロボットアーム506の下流部分に構造的支持を提供するように構成される。ジョイントR3は、例えば、エルボジョイントを含み得る。ジョイントR2と一緒に、ジョイントR3は、ロボットアーム506の拡張可能な位置決め及び/又は向き決めを提供する。ジョイントR3は、軸3414の回りを回転するように構成され、軸3414は軸3410に垂直又は直交し、軸3412に平行する。
ジョイントR3はリンク3434を介してジョイントR4に接続され、リンク3434はロボットアーム506の下流部分に構造的支持を提供する。一例のジョイントR4は、例えば、軸3416の回りの回転を提供するように構成された第1のリストジョイントであり得、軸3416は軸3412及び3414に直交し得る。ジョイントR4はリンク3436を介してジョイントR5に機械的に接続される。ジョイントR5は、軸3416に直交する軸3418の回りの回転を提供するよう構成された第2のリストジョイントであり得る。ジョイントR5はリンク3438を介してジョイントR6に機械的に接続される。ジョイントR6は、軸3418に直交する軸3420の回りで回転するように構成された第3のリストジョイントであり得る。リストジョイントR4〜R6は一緒に、本明細書に記載される立体視覚化カメラ300を位置決めするに当たり精密な柔軟性を提供する。
一例のロボットアーム506はコネクタ3450を含む。一例のコネクタ3450はリンク3440を介してジョイントR6に接続される。幾つかの実施形態では、一例のリンク3440は、ジョイントR6がコネクタ3450を回転できるようにするスリーブを含み得る。本明細書に考察するように、コネクタ3450は、結合板3304又は結合板が使用されない場合には立体視覚化カメラ300に直接、機械的に結合するように構成し得る。コネクタ3450は、ロボットアーム506を結合板3304及び/又は立体視覚化カメラ300に固定する1つ又は複数のねじを含み得る。
幾つかの実施形態では、示される例のロボットアーム506は、人間の腕と大凡同様の向きで最大リーチ85mmを有し得る。アーム506は積載量5キログラムを有し得る。さらに、アーム506は、人間の近傍で安全な動作を可能にする「協働」デバイスとして構成し得る。例えば、ロボットアーム506が外面に対して及ぼすことができる最大力は制御される。万が一、ロボットアームの一部が別の物体に不意に接触した場合、衝突が検出され、運動は瞬時に停止する。例えば、停電という緊急停止状況中、ジョイントR1〜R6は、バックドライブすることができ、又はオペレータがロボットシステムの部分を掴み、邪魔にならない所にスイングするように手動で回転することができる。例えば、ジョイント内のスリップクランチは、動作中、ジョイントモータがアーム506に回転適用することができる最大トルクを制限する。電源がオフになると、手動操作される場合、ジョイントのスリップクラッチはスリップして、オペレータがロボットアーム506を邪魔にならない所に素早く移動させられるようにする。
図35〜図40は、本開示の実施形態例による、ロボットアーム506及び立体視覚化カメラ300の構成例を示す。図35は、フランジ3402を介してカート510に接続されたロボットアーム506の図を示す。この例では、立体視覚化カメラ300はコネクタ3540に直接接続される。この実施形態では、コネクタ3540及び/又は立体視覚化カメラ300は、オペレータにより立体視覚化カメラ300に付与された並進及び/又は回転の力/運動を検知する図33のセンサ3306を含み得る。コネクタ3540がセンサ3306を含む場合、力/運動出力データはロボットアーム506を介してコントローラに送信し得る。例えば、センサ3306が立体視覚化カメラ300に配置される場合、出力データは制御データと共に別個のコントローラに送信し得る。幾つかの実施形態では、コントローラはカート510内に提供されてもよく、又はサーバに別個に提供されてもよい。
図36は、ロボットアーム506がフランジ3402を介して天井板3404に搭載される実施形態を示す。ロボットアームは、手術室の天井から懸架されて、床空間の混雑を低減し得る。ロボットアーム506は、ジョイントを含め、上方に位置決めされ、手術活動が実行されるエリアから、外科医及び手術室スタッフの邪魔にならない所にトラバースすることができ、ディスプレイモニタ512及び514のクリアビューを提供しながら、それでもなおカメラ300の機能的な位置決め及び/又は向き決めを提供する。
図37は結合板3304の実施形態を示す。図示の例では、結合板3304の第1の端部3702はロボットアーム506のコネクタ3450に接続される。結合板3304の第2の端部3704は立体視覚化カメラ300に接続される。一例の結合板3304は、立体視覚化カメラ300を移動させる追加の自由度を提供するように構成される。結合板3304はまた、ロボットアーム506の最大リーチを拡張する。結合板3304は10cm〜100cmの長さを有し得る。
結合板3304は1つ又は複数のジョイントを含み得る。図示の例では、結合板3304はジョイントR7、R8、及びR9を含む。一例のジョイントは、各軸の回りの回転を提供する機械的ジョイントである。ジョイントR7〜R9は、オペレータがリリースボタン又はレバーを作動させた後、移動可能な回転可能ラッチ機構を含み得る。各ジョイントR7〜R9は、それ自体のリリースボタンを有してもよく、又は1つのボタンがジョイントR7〜R9のそれぞれをリリースしてもよい。
ジョイントR7〜R9は、各リンクを介して一緒に接続し得る。加えて、リンク3718は、ロボットアーム506のコネクタ3450への接続を提供する。ジョイントR7は軸3710の回りを回転するように構成され、一方、ジョイントR8は軸3712の回りを回転するように構成され、ジョイントR9は軸3714の回りを回転するように構成される。軸3710及び3714は互いに平行し、軸3712に直交する。ジョイントR7及びR9は、+/−360°回転を提供するように構成し得る。他の例では、ジョイントR7及びR9は各軸3710及び3714の回りの+/−90°、+/−180°回転、又は+/−270°回転を提供し得る。ジョイントR8は、軸3712の回りの+/−90°回転を提供し得る。幾つかの例では、ジョイントR8は+90°、0°、及び−90°のみに設定し得る。
幾つかの実施形態では、ジョイントR7〜R9は、連続移動を提供するモータを含み得る。ジョイントR7〜R9は、回転位置又は示すデータを通信又は提供するスイッチ又は位置センサ等の制御デバイスを含むこともできる。このようにして、ジョイントR7〜R9は、ロボットアーム506のジョイントR1〜R6と同様であり得、補助付き移動及びフィードバック制御のための位置検知を提供する。ジョイントR7〜R9の電力及び制御は、ロボットアーム506を通して配線されるワイヤ、コネクタ3450内の電力/ワイヤコネクタ、及び/又はロボットアーム506外部のワイヤを介して提供し得る。
図37は、光軸3720がz軸に沿って提供されるように、立体視覚化カメラ300が水平向きに位置決めされる一例を示す。水平向きは、横たわった患者の撮像に使用し得る。これとは対照的に、図38は、ジョイントR8が90°回転して、光軸3720がx軸又はx軸に直交するy軸に沿って提供されるようにカメラ300を垂直向きに位置決めする実施形態を示す。垂直向きは、座っている患者の撮像に使用し得る。ジョイントR8が立体視覚化カメラ300を処置に基づいて水平位置と垂直位置との間で素早く向き変更できるようにすることを理解されたい。
図36及び図37に示される例では、一例のセンサ3306は、例えば、ロボットアームのコネクタ3450(結合板3304トの接続)及び/又は結合板の第1の端部3702(コネクタ3450との接続における)に配置し得る。代替又は追加として、一例のセンサ3306は、例えば、結合板の第2の端部3704(カメラ300との接続において)及び/又は結合板3304の第2の端部3704との接続においてカメラ300に配置し得る。
図39及び図40は、水平向きであり、ジョイントR9の軸3714の回りを+90°回転した立体視覚化カメラ300を示す。図40は、水平向きであり、ジョイントR9の軸3714の回りを−90°回転した一例の立体視覚化カメラ300を示す。
図34〜図40に示されるように、一例のロボットアーム506は、立体視覚化カメラ300に支持を提供し、カメラの光軸の精密な位置決め及び/又は向き決め及び照準合わせを可能にするように構成される。立体視覚化カメラ300は接眼レンズを有さず、外科医の目に向けられる必要はないため、従来は実際的ではなかった、その撮像に望ましい多くの位置及び/又は向きを達成し得る。外科医は、接眼レンズへの外科医の向きに最適ではなくむしろ、処置に最適なビューで実行することができる。
一例のロボットアーム506は、立体視覚化カメラ300と併用される場合、外科医が、曲がり角及び容易には見えない他のロケーションを見られるようにする。ロボットアーム506はまた、仰向け、俯せ、座位、半座位等を含め、患者を異なる位置に配置できるようにもする。したがって、ロボットアーム506は、患者を特定処置に最もよい位置に配置できるようにする。一例のロボットアーム506は、立体視覚化カメラ300と併用される場合、最も妨げのない位置に設置することができる。したがって、アーム506及びカメラ300は、邪魔にならないように好都合に配置され向き決めされながら、見えるロケーション及び向きについて外科医に多くの可能性を提供する。
ロボットアーム506及び/又は結合板3304のリンク及びジョイントの配置は、一般的に電動化された自由度6(又は9)と共に、リンク及びジョイント構成がカメラの姿勢に対して独特ではない状態で、カメラ300を所望通りに位置決めできるようにする。より詳細に後述するように、アーム506及び/又は板3304のジョイント及びリンクは、カメラ300の姿勢又はFOVを変えずに、手動で再位置決め且つ/又は再向き決めし得る。この構成により、例えば、カメラ300を通しての手術部位のビューを変えずに、遮蔽視線から出るようにエルボジョイントを移動させることができる。さらに、制御システムは、カメラ300のロケーション及び姿勢を特定し、例えば、人員又はディスプレイの遮蔽を回避するようにロボットアーム506の代替の位置及び/又は向きを計算し表示することができる。表示された画像を反転、転回、又は他の方法で向き変更させる画像プロセッサの能力と共に、結合板3304の種々の位置及び/又は向きの使用により、ロボットアーム506の更に多くの位置及び/又は向きが可能になる。
ジョイント特異点が任意の一般的な移動で回避されるように、ロボットアーム506及び/又は結合板3304は一般に配置され、ジョイントは位置決めされる。ジョイント特異点の回避は、ヒステリシス及びバックラッシュのよりよいロボット制御を提供する。さらに、ロボットアーム506及び/又は結合板3304のリンク及びジョイントの長さ及び構成は、略あらゆる所望の運動パスに沿ったスムーズな移動を提供する。例えば、ロボットアーム506の再位置決め及び/又は再向き決めにより、焦点を変えずに手術部位内の標的点のカメラ300ビューの方向を変えることができ、それにより、外科医が異なる方向/向きから同じ標的点を見られるようにする。別の例では、ロボットアーム506は、カメラ300を視線に沿って標的点に向けて又は標的点から離れて並進させることにより、焦点を変えずに標的点までの作業距離を変更することが可能である。立体視ロボットプラットフォーム516の立体視覚化カメラ300と共にロボットアーム506及び/又は結合板3304を使用して多くの同様の運動パスを所望通りに達成可能である。
B.ロボット制御実施形態
図34〜図40の一例のロボットアーム506及び/又は結合板3304は、1つ又は複数のコントローラにより制御し得る。図41は、本開示の実施形態例による、図3〜図40の立体視ロボットプラットフォーム516の実施形態を示す。一例の立体視ロボットプラットフォーム516は、立体視覚化カメラ300と、図14及び図15と併せて説明した対応する画像捕捉モジュール1404及びモータ及び照明モジュール1406とを含む。
図示の実施形態では、立体視ロボットプラットフォーム516は、立体視覚化カメラ300からリモートに配置されるサーバ又はプロセッサ4102を含む。プロセッサ4102は、例えば、プロセッサ4102により実行されると、プロセッサ4102に本明細書に記載される動作を実行させるメモリ1570に記憶された命令により定義される1つ又は複数のソフトウェアプログラムが構成されたラップトップコンピュータ、ワークステーション、デスクトップコンピュータ、タブレットコンピュータ、スマートフォン等を含み得る。この例では、一例のプロセッサ4102は、図14〜図16の情報プロセッサモジュール1408、画像センサコントローラ1502、及び/又はモータ・照明コントローラ1520を含む(又はこれ(ら)に関連して説明された動作を実行する)ように構成される。
幾つかの例では、画像センサコントローラ1502及び/又はモータ・照明コントローラ1520の動作の少なくとも幾つかは、画像捕捉モジュール1404並びにモータ及び照明モジュール1406とそれぞれ共有し得る。例えば、プロセッサ4102は、フォーカス、倍率、及び/又は作業距離を変更するコマンドを生成し得、モータ・照明コントローラ1520の第1の部分並びにモータ及び照明モジュール1406内のモータ・照明コントローラ1520の第2の部分を介して、駆動装置1534〜1552を制御する。追加又は代替として、プロセッサ4102に動作可能に配置される情報プロセッサモジュール1408の第1の部分は、個々の左/右画像及び/又は立体画像を画像捕捉モジュール1404内の情報プロセッサモジュール1408の第2の部分から受信するように構成される。情報プロセッサモジュール1408の第1の部分は、画像をグラフィカルガイドライン/テキスト、MRI機、X線、又は他の撮像デバイスからの画像オーバーレイ、及び/又は蛍光画像と視覚的に融合することを含め、1つ又は複数のディスプレイモニタ512及び/又は514に表示するように画像を処理するように構成し得る。
プロセッサ4102は、ワイヤハーネス4102を介して立体視覚化カメラ300の画像捕捉モジュール1404並びにモータ及び照明モジュール1406に電気的且つ/又は通信可能に結合される。幾つかの実施形態では、ワイヤハーネス4102は、ロボットアーム内部にあってもよく、又はロボットアームを通して配線されてもよい。他の実施形態では、ワイヤハーネス4102は内部にあってもよく、又はロボットアームを通して配線されてもよい。更に他の実施形態では、画像捕捉モジュール1404並びにモータ及び照明モジュール1406は、例えば、Bluetooth(登録商標)を介してプロセッサ4102と無線通信し得る。
一例のプロセッサ4102はまた、ワイヤハーネス4102を介してセンサ3306に電気的且つ/又は通信可能に結合される。プロセッサ4102は、例えば、センサ3306から回転出力データ及び/又は並進出力データを受信するように構成される。データは、デジタルデータ及び/又はアナログ信号を含み得る。幾つかの実施形態では、プロセッサ4102は、検出された力及び/又は運動を示す出力データの略連続ストリームをセンサ3306から受信する。他の例では、プロセッサ4102は、定期的なサンプリング間隔で出力データを受信する。更に他の例では、プロセッサ4102は、出力データを要求する要求メッセージを定期的に送信する。
図示の例では、プロセッサ4102は、ディスプレイモニタ512、入力デバイス1410a、1410b、及び他のデバイス/システム4104(例えば、X線機械、コンピュータ断層撮影(「CT」)機械、磁気共鳴撮像(「MRI」)機械等の医療撮像デバイス、カメラ、画像又は手術ガイダンスを記憶するワークステーション等)の少なくとも1つに通信可能に更に結合される。入力デバイス1410aはタッチスクリーンデバイスを含み得、入力デバイス1410bはフットスイッチを含み得る。タッチスクリーン入力デバイス1410aは、ディスプレイモニタ512と統合してもよく、且つ/又は例えば図5のカート510における別個のデバイスとして提供されてよい。一例のディスプレイモニタ512は、立体視覚化カメラ300により記録された標的手術部位の立体ビデオ(又は別個の二次元左右ビデオ)を含む1つ又は複数のユーザインターフェースを表示するように構成される。
タッチスクリーン入力デバイス1410aは、立体視覚化カメラ300、結合板3304、及び/又はロボットアーム506の制御に関連するユーザ入力を受信する1つ又は複数のユーザインターフェースを提供するように構成される。入力デバイス1401aは、作業距離、フォーカス、倍率、照明のソース及びレベル、フィルタ、及び/又は立体視覚化カメラ300のデジタルズームを制御する命令をオペレータが指定、設定、又は他の方法で提供できるようにするよう構成された1つ又は複数のグラフィカル制御ボタン、スライダ等を含み得る。入力デバイス1410aはまた、ディスプレイモニタ512に表示された表示立体ビデオにフォーカス且つ/又は他の方法で重ねる手術ガイダンスグラフィックス/テキスト、ビデオ、及び/又は画像をオペレータが選択できるようにする1つ又は複数の制御ボタンを含むこともできる。入力デバイス1410aはまた、オペレータ入力又は外科処置視覚化テンプレートの作成を可能にするよう構成されたユーザインターフェースを含むこともできる。入力デバイス1410aは、速度、運動、展開/格納、較正、標的ロック等の動作パラメータの制御、ビュー位置の記憶、及び/又はカメラ300の向きの変更又は新しい向きの入力を行う選択肢を含め、ロボットアーム506及び/又は結合板3304を制御する1つ又は複数の制御ボタンを更に含み得る。ロボットアーム506及び/又は結合板3304のユーザインターフェース制御は、カメラ300を移動させる制御を含み得、カメラ300を移動させる制御は個々のジョイントR1〜R9のコマンドに変換される。追加又は代替として、ロボットアーム506及び/又は結合板3304のユーザインターフェース制御は、ジョイントR1〜R9のそれぞれを個々に移動させる制御を含み得る。入力デバイス1410aを介して受信される入力は、処理のためにプロセッサ4102に送信される。
一例のフットスイッチ入力デバイス1410は、例えば、立体視覚化カメラ300、結合板3304、及び/又はロボットアーム506の位置を制御する入力を受信するように構成されたフードペダルを含み得る。例えば、フットプレート入力デバイス1410bは、x軸、y軸、及び/又はz軸に沿ってカメラ300を移動させる制御を含み得る。フットプレート入力デバイス1410bはまた、カメラ300の位置を記憶し、且つ/又は前に記憶された位置を返す制御を含むこともできる。フットプレート入力デバイス1410bは、カメラ300のフォーカス、ズーム、倍率等を変更する制御を更に含み得る。
他の実施形態では、立体視ロボットプラットフォーム516は、ジョイスティック、マウス、又は他の同様の2D若しくは3D手動入力デバイス等の追加の入力デバイス1410及び/又は代替の入力デバイス1410を含み得る。入力デバイス1410は、X−Yパンデバイスと同様の入力を提供するように構成され、追加の自由度によりシステム運動の柔軟性が生じる。3Dマウス又は自由度6のコントローラ等の3D機能を有する入力デバイスは、柔軟で好都合な入力コマンドに適する。これらのユーザ制御デバイスの主な利点は、運動が生じている間、手術画像を容易に見ることができることである。さらに、外科医は、手術全体及び付近部位の周囲で何が起きているかを見て、例えば、カメラ300が手術スタッフ及び/又は付近の装備にぶつかることを回避することができる。
任意選択的に、入力デバイス1410は、頭部、目、又は眼鏡搭載追跡デバイス、音声認識デバイス、及び/又はジェスチャ入力デバイスを含み得る。これらのタイプの入力デバイス1410は、オペレータが滅菌グローブで何も触れる必要がないように「ハンズフリー」動作性を促進する。手術の特定の手の動きが認識され、カメラ300、結合板3304、及び/又はロボットアーム506への制御信号に変換されるジェスチャ認識制御を使用し得る。同様の機能が音声認識デバイスにより提供され、この場合、マイクロホンが「カメラを左に移動」等のオペレータからのコマンドを検知し、発話をコマンドとして認識し、それを適切なカメラ及び/又はロボット制御信号に変換する。代替の実施形態は、3Dディスプレイに対するオペレータの目の位置を特定し、表示されたシーンのどこをオペレータが見ているかに応じてビューを調整することができるように構成された目追跡デバイスを含む。
他の実施形態は、基準系においてオペレータの頭部(例えば、オペレータの3D眼鏡に搭載された追跡可能ターゲット又は1組のターゲットを介して)及び「頭部追跡」をアクティブ化するフットスイッチの位置を追跡するように構成されたデバイスを含む。一例の追跡入力デバイスは、作動時におけるオペレータの頭部の開始位置を記憶し、次に、何らかの短い時間間隔で頭部位置を連続して検出するように構成される。追跡入力デバイスはプロセッサ4102と併せて、現在位置と開始位置との間の運動デルタベクトルを計算し、ベクトルを対応するロボットアーム又はカメラレンズ移動に変換し得る。例えば、追跡入力デバイス1410及びプロセッサ4102は、画面上の画像が左/右に移動するように、左/右頭部移動をロボットアーム移動に変換し得る。追跡入力デバイス1410及びプロセッサ4102はまた、画面上の画像が上/下に移動するように、上/下頭部移動をロボットアーム又はカメラレンズ移動に変換し、画面上の画像がズームイン/ズームアウトされるように、前/後頭部移動をロボットアーム又はカメラレンズ移動に変換することもできる。例えば、頭部回転をロボットアーム506の「標的ロック」移動に変換することにより、他の移動変換も可能である。本明細書に記載されるように、標的ロックは、幾らかの許容差内でロボットプラットフォーム516の焦点をシーン又はFOV内の同じポイントに維持し、オペレータの頭部移動に類似する方向においてロボットアーム506(ひいてはビュー)を旋回させるように構成される。
特定の外科処置前、機器及び視覚化に望ましいパスを確立する手術計画が作成される。幾つかの実施形態では、入力デバイス1410は、オペレータからの更なる入力が略ない状態で、そのような所定のパスを辿るように構成される。したがって、オペレータは、手術部位のビューが予め計画されたように自動的に変わる間、動作を継続することができる。幾つかの実施形態では、手術計画は、カメラの位置、倍率、フォーカス等に対応する1組の予め計画されたウェイポイントを含み得る。オペレータは、外科処置が進むにつれて、入力デバイス1410を作動させて、ウェイポイントを通して進めさせ得る(プロセッサ4102にロボットアーム506、結合板3304、及び/又はカメラ300を計画通りに移動させる)。
図示の実施形態では、一例のセンサ3306は入力デバイスである。センサ3306は、立体視覚化カメラ300でのオペレータの運動又は力を検出し、検出された力/運動を回転及び/又は並進データに変換するように構成される。センサ3306は、ロボットアーム506がカメラ300へのオペレータの穏やかなプッシュに電子機械的に応答できるようにする自由度6触力覚検知モジュール又は光学センサ(例えば、力/トルクセンサ)等の運動予期入力デバイスを含み得る。光学センサは、与えられた力及び/又はトルクを電気信号に変換し、それにより、オペレータによる望ましい力/トルク入力を検知し、検知された線形及び/又は回転方向において提供される運動要求に変換できるようにするよう構成された電子光学デバイスを含み得る。他の実施形態では、他のセンサタイプをセンサ3306に使用し得る。例えば、センサ3306は、オペレータからの触覚要求を検知するように構成された歪ゲージ又は圧電デバイスを含み得る。
実施形態では、外科医は制御アーム304の1つ又は複数を保持し、又はリリースボタン(制御アーム304の一方又は両方に配置し得る)を押す。リリースボタンを作動させると、カメラ300は、オペレータが「補助付き移動」モードの開始を望むことを示すメッセージをプロセッサ4102に送信する。プロセッサ4102は、外科医がカメラ300を望む方向に穏やかに操縦できるようにロボットアーム506及び/又は結合板3304を構成する。この移動中、プロセッサ4102はロボットアーム506及び/又は結合板にカメラ300を「パワーステアリング」で移動させ、その重さを安全に支持し、どのジョイントをアクティブ化すべきであり、どのジョイントを制動すべきかを調整された様式で自動的に判断して、外科医が望む移動を達成する。
図示の例では、図41の立体視ロボットプラットフォーム516は、ロボットアーム506及び/又は結合板3304を制御するように構成されたロボットアームコントローラ4106を含む。ロボットアームコントローラ4106は、プロセッサ4102からの1つ又は複数のメッセージ又は命令を、ジョイントR1〜R9の任意の1つを回転させる1つ又は複数のメッセージ及び/又は信号に変換するように構成されたプロセッサ、サーバ、マイクロコントローラ、ワークステーション等を含み得る。ロボットアームコントローラ4106はまた、ロボットアーム506及び/又は結合板3304からのジョイントの位置及び/又は速度等のセンサ情報を受信し、プロセッサ4102への1つ又は複数のメッセージに変換するようにも構成される。
幾つかの実施形態では、ロボットアームコントローラ4106は、プロセッサ4102とロボットアーム506との間に配置されるスタンドアロンモジュールとして構成される。他の実施形態では、ロボットアームコントローラ4106はロボットアーム506内に含まれ得る。更に他の実施形態では、ロボットアームコントローラ4106はプロセッサ4102と共に含まれ得る。
一例のロボットアームコントローラ4106は、ロボットプロセッサ4122により実行可能な、メモリ4120に記憶された1つ又は複数の命令を含む。命令は、1つ又は複数のソフトウェアプログラム、アルゴリズム、及び/又はルーチンになるように構成し得る。メモリ4120は任意のタイプの揮発性メモリ又は不揮発性メモリを含み得る。一例のロボットプロセッサ4122は、プロセッサ4102に通信可能に結合され、ロボットアーム506及び/又は結合板3304の動作に関連する1つ又は複数のメッセージを受信するように構成される。一例のロボットプロセッサ4120はまた、ジョイントR1〜R9の位置及び/又は速度を示す1つ又は複数のメッセージをプロセッサ4102に送信するようにも構成される。1つ又は複数のメッセージはまた、ジョイントが移動ストップに達したこと又は移動が妨げられていることを示すこともできる。
一例のプロセッサ4120は、全てのジョイントの全ての運動が全体としてカメラ300における所望の撮像運動を生じさせるように調整されて、どのジョイントR1〜R9が給電されるかを決定するように構成される。「カメラを左に移動」例では、外科医の相対視点から左にシンプル且つ滑らかに並進するようにカメラの手術画像を見えさせる幾つかのジョイントの複雑な運動があり得る。「カメラを左に移動」例では、カメラ300が結合板3304を通してロボットアーム506にいかに接続されるかに応じて、特定のジョイントへの制御信号は位置/向きに応じて劇的に異なり得ることに留意されたい。
メモリ4120は、ジョイントR1〜R9がジョイントの既知の位置に基づいていかに移動するかを指定する1つ又は複数の命令を含み得る。ロボットアームコントローラ4106は、命令されたカメラ移動がジョイント移動にいかに変換されるかを決定する1つ又は複数の命令を実行するように構成される。一例では、ロボットアームコントローラ4106は、立体視覚化カメラ300がz軸に沿って下方に移動し、x−y平面において側方に移動すべきであることを示すメッセージをプロセッサ4102から受信し得る。換言すれば、プロセッサ4102は、カメラ300の所望の移動に関する入力デバイス1410を介して受信される入力を示す送信する。一例のロボットアームコントローラ4106は、3次元座標における移動ベクトルを、所望の位置/向きを達成するジョイント位置移動情報に変換するように構成される。ロボットアームコントローラ4106は、所望の移動と併せてロボットアーム506及び/又は結合板3304のリンク及びジョイントの現在位置(及び/又はカメラ300の位置/向き)を特定又は考慮に入れて、移動デルタベクトルを決定し得る。加えて、ロボットアームコントローラ4106は、1つ又は複数のチェックを実行して、所望の移動により、カメラ300が、アーム506及び結合板3304と同じ座標系において定義される1つ又は複数の三次元境界により指定される制限エリアに入らない又は近づかないことを保証し得る。境界に近いエリアは、移動信号がジョイントに送信される場合、ロボットアームコントローラ4106により提供される低減されたスケーリング係数を指定し得、低減されたスケーリング係数は、ロボットアーム506が境界に近づく場合、ジョイントをよりゆっくりと移動させ、境界を越えて移動させないようにする。
境界チェックが実行された後、ロボットアームコントローラ4106は移動デルタ及び各ジョイントR1〜R9の現在位置/向きを使用して、ジョイントの1つ又は複数を回転させて、ロボットアーム506にカメラ300を指定ロケーションに移動させるのに最適又は略最適な移動シーケンスを決定する。ロボットアームコントローラ4106は、例えば、移動デルタベクトルを満たすのに必要な最小量のジョイント移動を決定する最適化ルーチンを使用し得る。ジョイント移動量が決定された後、一例のロボットアームコントローラ4106は、1つ又は複数のメッセージ(任意のスケーリング係数を考慮に入れた回転量及び回転速度を示す)をモータコントローラ4124に送信するように構成される。ロボットアームコントローラ4106は、ロボットアーム506及び/又は結合板3304を定義又は調整されたシーケンスで移動させる一連のメッセージを送信し得る。一連のメッセージはまた、例えば、ロボットアーム506が仮想又は物理境界に近づく場合、ジョイント速度を変更させることもできる。
一例のモータコントローラ4124は、受信したメッセージを、ジョイントR1〜R9の1つ又は複数を回転させるパルス幅変調(「PWM」)信号等のアナログ信号に翻訳又は変換するように構成される。モータコントローラ4124は、例えば、適切なジョイントモータへの入力ラインを選択し得、パルス持続時間はモータが回転する時間量の制御に使用され、パルスの周波数、デューティサイクル、及び/又は振幅は回転速度の制御に使用される。モータコントローラ4124はまた、ジョイントモータ及び対応するジョイントセンサに電力を提供することもできる。
幾つかの実施形態では、ロボットアームコントローラ4106はモータコントローラ4124と併せて、ジョイントセンサ位置情報を受信又は読み取り、運動学を通してロボットジョイント及びカメラ300のロケーション及び向きを特定するように構成される。各ジョイントR1〜R9は、ジョイント位置、ジョイント回転速度、及び/又はジョイント回転方向を示すデータを検出し送信する少なくとも1つのセンサを含み得る。幾つかの実施形態では、センサは位置情報のみを送信し、速度/方向は、時間の経過に伴う位置情報差に基づいてロボットアームコントローラ4106により特定される。ロボットアームコントローラ4106は、移動情報を特定するためにセンサデータをプロセッサ4102に送信し得る。
ロボットアームコントローラ4106は、プロセッサ4102から移動命令を受信し、ヤコビアン、順運動学、及び/又は逆運動学を通して、どのモータ及びジョイントをアクティブ化すべきか、速度及び距離、並びに方向を決定する。次に、ロボットアームコントローラ4106は、適切なコマンド信号をモータコントローラ4124内のモータ電力増幅器に送信して、ロボットアーム506内のジョイントモータを駆動する。
一例のロボットアーム506は、適切なモータ電力信号を受信し、それに従って移動する。アーム506におけるセンサ及びブレーキは、ロボットアームコントローラ4106から種々の動作及びフィードバック情報に対して応答する。幾つかの実施形態では、ロボットアーム506は結合板3304に機械的且つ通信可能に接続され、結合板3304は結合器ステータス及び向き情報をロボットアームコントローラ4106に送信する。
幾つかの実施形態では、図41の一例のロボットアーム506は結合器コントローラ4130を含む。一例の結合器コントローラ4130は、ロボットプロセッサ4106を迂回し、制御情報をプロセッサ4102と結合板3304との間で制御情報を中継するように構成される。結合器コントローラ4130は、メッセージをプロセッサ4102から受信し、それに対応してジョイントR7〜R9を結合板3304上で回転させ得る。結合器コントローラ4130はまた、ジョイント位置及び/又は速度に関するセンサ情報を受信し、ジョイント位置及び/又は速度を示す1つ又は複数のメッセージをプロセッサ4102に送信することもできる。これらの実施形態では、プロセッサ4102は、ロボットアーム506を制御するメッセージと、結合板3304についての別個のメッセージとを送信し得る。
幾つかの実施形態では、ロボットアームコントローラ4106は、ジョイントR7〜R9がいかに動くべきかを決定するように構成される。しかしながら、結合板3304がロボットアーム506に直接、通信可能に結合されていない場合、ロボットプロセッサ4106は、プロセッサ4102を介して移動信号を結合器コントローラ4130に送信し得る。ロボットプロセッサ4106の少なくとも幾人かのオペレータがプロセッサ4102と共に配置される場合、結合器コントローラ4130は、ロボットアーム506が移動コマンド又は信号をプロセッサ4102から受信するのと併せて、移動コマンド又は信号をプロセッサ4102から受信する。
図41に示される実施形態では、一例の立体視覚化カメラ300、プロセッサ4102、結合板3304、ロボットアーム506、ロボットアームコントローラ4106、及び/又は入力デバイス1410は、入力電力モジュール4140を介して電力を受信する。一例のモジュール4140は、電源(壁のコンセントからの電力等)及び/又は電力線異常によるシステム性能の妨害を回避する絶縁トランスを含む。幾つかの場合、電源は電池電源を含むことができる。
立体視覚化プラットフォーム516はまた、電力を即時遮断するように構成された緊急停止スイッチ4142を含むこともできる。スイッチ4142は、ロボットアーム506及び/又は結合板3304への電力のみを遮断し得る。プロセッサ4106は、緊急停止スイッチ4142のアクティブ化を検出し、ジョイントブレーキを係合させて、ロボットアーム506の落下を防ぎ得る。幾つかの場合、ロボットアーム506は、電力損失を検出した後、ジョイントブレーキをアクティブ化するように構成される。幾つかの実施形態では、ロボットアーム506のジョイントR1〜R6は、閾値を超える力が適用された場合、スリップし、それにより、オペレータが、緊急時、電力あり又はなしでアームを邪魔にならない所に素早く移動させられるよう構成される。
幾つかの実施形態では、一例のプロセッサ4102は、ロボットアーム506、結合板3304、及び/又は立体視覚化カメラ300の1つ又は複数のグラフィカル表現を表示するように構成される。プロセッサ4102は、ロボットアーム506、結合板3304、及び/又はカメラ300の制御を提供する1つ又は複数のユーザインターフェースにグラフィカル表現を表示させ得る。プロセッサ4102は、ロボットアーム506、結合板3304、及び/又はカメラの現在位置を反映するようにグラフィカル表現を位置決めし向き決めし得る。プロセッサ4102は、例えば、ロボットアームコントローラ4106からのフィードバックメッセージを使用して、グラフィカル表現におけるどのジョイントを回転させるべきかを決定し、それにより、ディスプレイデバイスの向き及び/又は位置を変更する。幾つかの場合、プロセッサ4102は、例えば、オペレータがグラフィカル表現においてリンク、ジョイント、又はカメラ300を所望の位置に移動させることにより、グラフィカル表現を介してユーザ入力を受信するように構成される。立体視覚化カメラ300が移動する場合、プロセッサ4102は、カメラが移動したロケーションに対応する新しい座標を送信し得る。ジョイント又はリンクが移動した場合、プロセッサ4102は、ジョイントの回転及び/又はリンクの位置を示すメッセージをロボットアームコントローラ4106に送信し得る。
幾つかの実施形態では、プロセッサ4102は、ロボットアームコントローラ4106と併せて動作して、ロボットアーム506及び/又は結合板3304の移動に基づいて又はロボットアーム506及び/又は結合板3304の移動と協働して、カメラの1つ又は複数のレンズを調整するように動作する。例えば、ロボットアーム506が手術部位に向かって移動する場合、プロセッサ4102はロボットアームコントローラ4106と併せて動作して、立体視覚化カメラ300のレンズの1つ又は複数を移動させてフォーカスを維持することにより、作業距離又は焦点を変更する。プロセッサ4102は、ロボットアームコントローラ4106と併せて動作して、例えば、ロボットアーム506の移動により、作業距離が短くなると判断する。EPUプロセッサ4102は、ロボットアームコントローラ4106と併せて動作して、ロボットアーム506の移動により設定される新しい作業距離に基づいてレンズの新しい位置を決定する。これは、フォーカスを調整するために1つ又は複数のレンズを移動させることを含み得る。幾つかの実施形態では、プロセッサ4102は、ロボットアーム506の新しい位置に関して較正ルーチンを動作させて、例えば、疑似視差をなくすようにカメラ300に命令し得る。
幾つかの場合、オペレータは、立体視覚化カメラ300の1つ又は複数のレンズの位置を変更しており、レンズ移動限界に達し得る。レンズの位置はカメラ300からプロセッサ4102に送信され、限界に達したと判断する。限界に達したことを検出した後、プロセッサ4102は、オペレータからの入力に基づいてロボットアーム506を移動させ(コントローラ4106を介して)、それにより、コマンドをレンズ移動からアーム移動に拡張して、所望の倍率又は標的エリアに達し得る。したがって、ロボットアームコントローラ4106と併せて動作するプロセッサ4102は、オペレータが、ロボットアームのインターフェースとカメラとの間の変更ではなく1つのみのユーザインターフェースを使用できるようにする。プロセッサ4102及び/又はコントローラ4106が任意の所定の移動限界と突き合わせて所望の移動をチェックして、移動によりカメラ300又はロボットアーム506が制限された患者又はオペレータの空間に入らないことを保証することを理解されたい。限界違反が検出される場合、プロセッサ4102はロボットアームコントローラ4106と併せて、限界を示すアラートをオペレータに表示して、ロボットアーム506が停止した理由を示し得る(タッチスクリーン入力デバイス1410a及び/又はディスプレイモニタ512に表示されるユーザインターフェースを介して)。
C.ロボットアーム及び静止カメラ較正実施形態
上述したように、一例の立体視覚化カメラ300は、様々な倍率で標的手術部位の高分解能立体ビデオ画像を提供するように構成される。立体視覚化プラットフォーム516の一環として、立体視覚化カメラ300はロボットアーム506及び/又は結合板3304と併せて動作して、画像フォーカス、作業距離、倍率等を精密且つクリアに変更する。画像取得柔軟性を達成するために、立体視覚化プラットフォーム516は、1つ又は複数の較正、初期化、及び/又はリセットルーチンを動作させるように構成される。幾つかの実施形態では、立体視覚化カメラ300、ロボットアーム506、結合板3304、又はより一般的には立体視覚化プラットフォーム516は、製造中及び/又は設置後、較正される。ロボットアーム506と共にカメラ300の較正は、ロボットアーム506及びオペレータ空間に対するカメラ300の位置決め情報を提供する。幾つかの実施形態では、立体視覚化プラットフォーム516の電源投入後、カメラ300及び/又はロボットアーム506は、更なる較正/初期化を実行して、そのときのカメラ300のロケーション及び向きを測定し検証するように構成される。
一例のプロセッサ4102は、較正からの結果(例えば較正データ)を例えば、図41のメモリ1570及び/又はメモリ4120に記憶するように構成される。較正結果は、メモリ1570及び/又は4120内の較正レジスタ及び/又はルックアップテーブル(「LUT」)に記憶し得る。記憶された較正データは、光学特性、機能特性、及び/又は性能特性を、オペレータ又はプロセッサ4102により調整可能、測定可能、且つ/又は検証可能なカメラ300、ロボットアーム506、及び/又は結合板3304の属性に関連付け又はマッピングする。例えば、主対物レンズ組立体702(図7の)の作業距離アクチュエータモータエンコーダ位置が、LUTにおいて作業距離にマッピングされる。別の例では、ズームレンズ組立体716の線形エンコーダに沿ったズームレンズ軸位置が、LUTにおいて倍率レベルにマッピングされる。これらの各例について、一例のプロセッサ4102は、エンコーダ特性の適正レベルを決定し、調整し、特性が指定された又は所望の作業距離及び/又は倍率を提供することを検証するように構成される。幾つかの実施形態では、LUTは複合し得、その場合、カメラ300、ロボットアーム506、及び/又は結合板3304の全ての関連する態様の全体制御について、複数の性能特性がプラットフォーム516の複数の属性にマッピングされる。
ロボットアーム506と一例の立体視覚化カメラ300との組合せは、ロボットアーム506の基準系に関して高度に正確な位置、方向、及び/又は向き情報を提供する。以下のセクションに、視覚的ヒントを定義するために立体視覚化カメラ300がいかに較正されるかを説明する。視覚的ヒントが決定された後、立体視覚化カメラ300はロボットアーム506及び/又は結合板3306の基準系に見当合わせされる。したがって、較正及び見当合わせ後、手術部位の立体ビューは、ロボットアーム506及び/又は結合板3304の位置、方向、及び向きの制御と組み合わせた立体視覚化カメラ300の統合制御を用いて統一される。
幾つかの実施形態では、図41の一例のプロセッサ4102は、視覚的ヒントを含め、立体視覚化カメラ300の見当合わせをロボットアーム506の位置、方向、及び/又は向き較正と精密に統合して、規定の座標系に関して、取得された立体画像及びそれらの間の全ての点の統一された位置、方向、及び/又は向き認識を定義するように構成される。一例のプロセッサ4102は、立体視覚化カメラ300からの本質的な視覚的撮像データを使用して、ロボットアーム506の物理的な位置決め及び/又は向き決めを調整又は指示して、オペレータが望むように視覚化を提供するように構成される。加えて、プロセッサ4102により提供されるそのような指示及び調整は、フォーカス、作業距離、予め定義される位置、向き等の視覚化の好ましい特性を維持するように提供される。
幾つかの実施形態では、立体視覚化カメラ300、ロボットアーム506、及び/又は結合板3304の較正は一般に、(i)立体画像に影響する、立体視覚化プラットフォーム516の機能パラメータの不正確性を特定且つ/又は測定すること、(ii)立体画像の不正確性を所望レベル以下に最小化するように立体視覚化プラットフォーム516を較正又は調整すること、(iii)互いに対する又は較正テンプレートとの立体画像のデュアルチャネルの同時比較を通して所望レベルの較正精度内で調整が行われたことを検証すること、並びに(iv)タスクの実行に立体視覚化プラットフォーム516を使用することであって、較正の精度レベルは検出可能であり、維持される、使用することを含む。
代替の実施形態では、ロボットアーム506には、ロボットアーム506のジョイント及びリンクの互いとの物理的関係を精密に較正するとともに、ロボットアーム506及び/又は初期姿勢構成とのカメラ300の視覚的ヒントの関係を較正するのに使用される1つ又は複数の固定較正基準が提供される。ロボットプラットフォーム較正基準は、ロボットアーム506を手術室等の外部環境又は外部環境内の患者若しくは標的空間と見当合わせ又は統合するのに使用することができる。固定較正基準は、ロボットアーム506の本体の外側部分への専用アタッチメント又は搭載ポイント、ジョイント、角等のロボットアーム506の既知の外部特徴の組合せを含むことができる。
1.立体視覚化カメラの較正の実施形態
手術部位の立体ビューを一致させるために、一例のプロセッサ4102及び/又は立体視覚化カメラ300は、1つ又は複数の較正ルーチンを実行するように構成される。一例のルーチンは、プロセッサ4102により実行されると、プロセッサ4102に特定の作業距離、倍率(例えばズームレベル)、及びフォーカスレベルに対応するレンズ位置を決定させる、メモリ1570に記憶される1つ又は複数の命令により指定し得る。命令はまた、プロセッサ4102に、異なる作業距離及び/又は倍率での立体視覚化カメラ300の投影中心、立体光軸、及び/又はZRPを特定する1つ又は複数のルーチンを動作させることもできる。較正により、例えば、プロセッサ4102は、倍率及び/又は作業距離が変わった場合、標的手術部位にフォーカスした状態を保つことができる。
図42は、本開示の実施形態例による、立体視覚化カメラ300を較正する一例の手順4200又はルーチンを示す。手順4200について図42に示される流れ図を参照して説明するが、手順4200に関連するステップを実行する多くの他の方法が使用可能なことを理解されたい。例えば、ブロックの多くの順序は変更し得、特定のブロックは他のブロックと結合し得、記載されるブロックの多くは任意選択的なものである。さらに、手順4200に記載される動作は、例えば、一例の立体視覚化カメラ300の光学要素1402、画像捕捉モジュール1404、モータ及び照明モジュール1406、及び/又は情報プロセッサモジュール1408を含め、複数のデバイスの間で実行し得る。例えば、手順4200は、情報プロセッサモジュール1408のプログラム1560の1つにより実行し得る。
一例の手順4200は、立体視覚化カメラ300が電源投入される(ブロック4202)とき、又は他の方法で初期化されるとき、開始される。カメラ300はロボットアーム506に搭載し得る。代替的には、手順4200は、立体視覚化カメラ300が固定マウントに接続されるとき、実行することができる。一例の手順4200は次に、図25及び図26に関連して上述したように、ZRP位置合わせを実行する(ブロック4204)。一例のプロセッサ4102は、上述したようにZRPを自動的に位置合わせし、且つ/又はオペレータと併せて動作して、画像センサ746、748上の左右の光路の位置合わせを提供し得る。幾つかの例では、プロセッサ4102及び/又はオペレータは、ZRPをピクセルグリッド原点と位置合わせするように移動させるためのレンズ構成要素の傾斜に非常に小さな調整を行うのに十分な精度で、モータを介して小さな移動又は屈曲部(図13の屈曲部1300)の屈曲を生じさせ得る。半手動位置合わせ中、プロセッサ4102は、画像センサ746及び748からの左画像及び右画像をディスプレイモニタ512において重ねさせ得る。オペレータは入力デバイス1410を使用して画像を調整し、ZRPが適宜位置合わせされるまで、それに従ってセンサ746及び748のピクセルセットを移動させ得る。
位置合わせ中、ZRPは画像中心に位置合わせされて、疑似視差を回避するように設定される。ディスプレイでの約1ピクセル以内の位置合わせが可能である。左右ビューから画像中心への位置合わせの程度は、ズーム動作中を含め、重ねられた画像において可視である。8°FOVの例では、4K画像センサ746、748及びディスプレイモニタ512の対応する4K表示分解能(約4000ピクセル×約2000行を含む)の使用は、システム分解能8°/4000ピクセル=7秒角を生成する。しかしながら、ZRP位置合わせは大半の任意の倍率で実行することができ、分解能(同数のピクセル(例えば、4000))は低減(又は増大)されたFOV角で除算される。例えば、高倍率でのカメラ300の実施形態例は、約2°のFOV角を生成する。8K UHDディスプレイモニタ512並びにセンサ746及び748は、約4000行内に約8000ピクセルを有する。このシステムの分解能は2°/8000ピクセル=1秒角である。これは、分角単位で測定された分解能を有する許容差を有する、組み立てられた、個々に測定された構成要素の精度、従来技術の既知のシステムよりも約1桁以上良好である。画像センサ及びディスプレイモニタは、同じ物理的センサ又はディスプレイ空間において一般にピクセルが小さくなるほど高密度になるため、立体視覚化カメラ300の精度調整可能性は、より小さいピクセルサイズにスケーリングする。立体視覚化カメラ300の強化された高精度位置合わせは、より良好でより正確なデジタルエフェクトを提供する。
ZRPの位置合わせは、低倍率から高倍率に循環する際、左右の画像が所望の許容差範囲内で画像中心に留まり、標的手術部位の画像が正確である場合、完了する。ZRPが立体視覚化カメラ300の倍率性能全体を通して位置合わせされた後、各倍率レベルのピクセルセットロケーション及び/又はレンズロケーションは、例えば、LUT4203又は他のデータ構造に記憶される。他の例では、プロセッサ4102は、較正レジスタに、各倍率レベルのピクセルセットロケーション及び/又はレンズロケーションを書き込む。
ZRPが位置合わせされた後、一例のプロセッサ4102は、作業距離及び/又は倍率(例えばズーム)に関して較正する(ブロック4206)ように構成される。図15の作業距離及びズーム例に関連して上述したように、作業距離の精密な知識は、ロボットアーム506が所望の座標に対してカメラを精密に位置決めし得るように、カメラ300において重要である。幾つかの場合、正確な基準が、ロボットアーム506の機械的寸法と共に使用されて、画像からの物体面データを、本明細書ではロボット空間と呼ばれる立体視覚化プラットフォーム516を示す座標系に変換される。
一例の較正手順4200が実行されて、立体視覚化カメラ300の光学系の作業距離をマッピングし、作業距離は、共通モード対物(「CMO」)レンズ組立体(例えば、図4及び図7の前部作業距離主対物レンズ408)から物体面までミリメートル単位で計算又は測定し得る。作業距離は、例えば、物理的ストップ又は限界スイッチトリガー位置等の既知の「ホーム」ロケーションからのモータシャフトエンコードデバイスのカウントで測定されるフォーカスモータ位置等の既知の測定可能なパラメータにマッピングされる。
ブロック4206における較正は、プロセッサ4102が光軸に沿って離散ステップで物体面を順次移動させ、図43と併せてより詳細に考察するように、エンコーダカウント及び作業距離を記録しながら画像を再フォーカスすることにより実行される。プロセッサ4102は、CMOの正面から作業距離を外部から測定する。エンコーダカウント及び作業距離のマッピングは、LUT4203又は異なるLUT及び/又は較正レジスタに記憶される。この較正は、所望の作業距離を所与として、プロセッサ4102がエンコーダカウント位置をモータコントローラに出力できるようにする。立体視覚化カメラ300の例示的な実施形態は、高回転カウント数シャフトエンコードデバイスを使用し、作業距離の分解能は各エンコーダカウント当たり1μmのオーダである。代替の実施形態は、所望に応じてより高い又はより低い作業距離分解能を提供する異なるエンコーダ分解能を含み得る。
図43は、本開示の実施形態例による、離散ステップで物体面を移動させる一例の立体視覚化カメラ300の実施形態を示す。一例の立体視覚化カメラ300は、図7の主対物レンズ組立体702(例えばシングルCMO)を含み、これは、標的手術部位の左右ビューを提供するように構成される。図示の例では、主対物レンズ組立体702は、筐体4302内の静止前部作業距離レンズ408と、可動後部作業距離レンズ740とを有する色消しレンズ屈折組立体として示され、可動後部作業距離レンズ740はz軸(又は他の光学軸)に沿って移動可能である。後部作業距離704の移動は、前部作業距離レンズ408までの距離を変更させる。レンズ408と704との間の間隔は、主対物レンズ組立体702の全体前部焦点距離4304を決め、したがって、前部焦点面4306(又は単に「焦点面」)のロケーションを決める。前部焦点面4306は、主対物レンズ組立体702の主面4308から焦点距離4304に等しい距離に配置される。主面4308のロケーションの測定は難しいことがあり、したがって、筐体4302の底面から前部焦点面までの距離が作業距離4310として定義される。したがって、作業距離4310は、ピントが合った標的部位又はシーンの平面を正確に設定する。
前部焦点面4306における物体の撮像は、主対物レンズ組立体702の後ろ又は背後から無限遠に配置された連続画像を作成する。瞳孔間距離(「IPD」)4312により横方向に隔てられた、カメラ300の光学系及びセンサ714、716、718、744R、及び744Lを含む2つの平行光路は、主対物レンズ組立体702の光軸4324からわずかに異なる方向で左光軸4320及び右光軸4322に沿って左ビュー及び右ビューをそれぞれ生成する。2つの光路は、それぞれの外部収束左右軸が画像4330のFOVの中心と一致するように設定されるよう調整される。このポイント4330は、本明細書では、前部焦点面4306における立体視覚化カメラ300の「先端部」と呼ばれる。
後部作業距離レンズ740の位置の調整は、主対物レンズ組立体702前部焦点距離4304を変更させる。示されるように、後部作業距離レンズ740の位置変更は、新しい前部焦点面4306’の位置に配置された新しい作業距離4310’を生み出す。後部作業距離レンズ740の移動はまた、左光軸4320’及び右光軸4322’を再び位置合わせさせ、カメラ300の再配置先端部4330’を生じさせる。焦点面4306の上又は下でのカメラ300を用いての物体の視覚化は、物体のフォーカスを低減する。
作業距離較正と同様にして、プロセッサ4102が、既知のサイズの物体の画像高さを測定しながら、倍率を変えることにより、同様のLUT又は作業距離LUT4203内の追加の列を構築することができる。倍率は、物理的ストップ又は限界スイッチトリガー位置等の既知の「ホーム」ロケーションからのモータシャフトエンコードデバイスのカウントを特定することにより定量化することができる。プロセッサ4102は、例えば、各倍率位置でのセンサピクセル数で、画像高さを相対的に測定することができる。倍率は、例えば、ピクセル単位の高さをミリメートル単位の高さで除算することで特徴付けることができる。
図42に戻ると、立体視覚化カメラ300の作業距離及び倍率が較正された後、一例のプロセッサ4102は、投影中心を特定する(ブロック4208)ように構成される。投影中心(例えばCOP)は、図15に関連して上述したように、立体視覚化カメラ300をモデリングする1つ又は複数のルーチンを使用して特定し得る。手術部位の左右立体ビューを一致させるために、多くの場合、ソフトウェア、ファームウェア、ハードウェア、及び/又はプロセッサ4102のGPUコードに実装される数学的モデルを使用して物理的カメラ300をモデリングすることが望ましい。脳腫瘍のMRI画像等の3Dコンピュータモデルの視点は多くの場合、ユーザ調整可能な方向及び距離からレンダリングされ見ることができる(例えば、まるで画像が合成立体カメラにより捕捉されるかのように)。プロセッサ4102はモデルの調整可能性を使用して、ライブ手術画像の視点を一致させ得、したがって、ライブ手術画像の視点は既知でなければならない。
立体視覚化カメラ300及び/又はプロセッサ4102の例示的な実施形態は、各値の倍率及び作業距離でカメラモデルパラメータを正確に測定し計算するように構成される。これらの値は、立体視覚化カメラ300内に含まれる別個の光学系により制御される。デュアル光学系は、左右のチャネル/ビュー間の画像の中心における視差が焦点面4330において概ねゼロであるように位置合わせされる。さらに、立体視覚化カメラ300は、倍率範囲にわたり同焦点であり、倍率及び作業距離範囲にわたり同中心(par central)であり、その理由は、左右の各チャネルのZRPが各ピクセルグリッドの中心に位置合わせされているためである(ブロック4202において上述)。換言すれば、倍率のみを変更すると、両チャネルにおいて画像のピントは維持され、同じ中心点でトレーニングされる。同様に、作業距離のみを変更すると、標的及び立体視覚化カメラ300が静止したままである場合、画像において垂直視差は生じず、左右のビュー間の水平視差のみが増大するはずである。
図44は、本開示の実施形態例による、立体視覚化カメラ300のCOPを特定するプロセッサ4102により実行可能なルーチンを示すグラフ4400を示す。図示の例では、ピンホール又はモデリングされたカメラ300のCOPは、ピンホールの平面(O)において光軸4402に沿う。カメラモデルのCOPを特定するために、仮想ピンホールカメラモデルが使用され、ここでは、プロセッサ4102は、COPから物体面までの実際の焦点距離4404を特定するように構成される。較正ルーチン中、プロセッサ4102は、例えば、光軸4402に沿った3つの異なる距離における高さ4408の物体を用いた光学画像センサ744の平面、物体面、物体面距離未満の距離「d」、及び物体面距離超の距離「d」におけるピクセル数単位の画像高さ4406の測定値が記録されている間、カメラ300の倍率を維持する。プロセッサ4102は、2つの最も極端な位置における同様の三角形に基づいて、COP4410までの焦点距離4404を特定する代数を含むルーチンを使用する。プロセッサ4102は、較正に使用される倍率に対する代替の倍率の比率に基づいて、代替の倍率での焦点距離を特定し得る。
図42に戻ると、一例のプロセッサ4102は、様々な作業距離及び倍率でのCOPを特定するように構成される。プロセッサ4102は、LUT4203、異なるLUT、又は1つ若しくは複数の較正レジスタにおいてレンズのモータシャフトエンコーダカウントを様々な作業距離及び倍率でのCOPに関連付ける。幾つかの実施形態では、プロセッサ4102は、1つの倍率及び/又は作業距離のCOPの関連のみを記憶し、1つの既知のCOP関係を使用して他の倍率及び/又は作業距離を計算し得る。
COPについて較正した後、一例のプロセッサ4102は、立体左右光軸及び立体視覚化カメラ300の軸間の瞳孔間距離(「IPD」)を較正する(ブロック4210)ように構成される。立体視覚化カメラ300の光学系を特徴付けるために、左右のチャネル/ビュー間のIPDは既知であるべきである。実施形態では、IPDは、図7に示されるセンサ及び光学系を保持する機械的構成要素に設計し得る。したがって、IPDは機械的に設定される。しかしながら、実際の光軸は、光学要素及び光学要素のマウントの機械軸と異なり得る。他の実施形態では、IPDは立体視覚化カメラ300内で変更することができる。
幾つかの用途では、立体視覚化カメラ300の系における基準軸又は機械軸に対する立体光学軸の方向を精密に知ることが望ましい。これにより、例えば、プロセッサ4102は機械的手段を通して立体視覚化カメラ300を精密に照準付けることができる。照準付けることは、立体視覚化カメラ300の基準系に関して、立体光軸に同時に注目して幾何学的に定義されるビューベクトルにより特徴付けることができる。加えて、立体視覚化カメラ300を構成する光学センサ744の左右チャネルのクロッキングがビューベクトルに含まれる。
図45は、本開示の実施形態例による、立体視覚化カメラ300のIPDをいかに測定し較正し得るかを示す光学概略の平面図を示す。図示の例では、光軸4502は、機械軸4504と完全に位置合わせされる。右画像センサ746及び左画像センサ748(1つ又は複数のカメラモデルにより近似される)は、IPD4506だけ離間される。センサ746及び748は物体4508(標的手術部位内の)に位置合わせされフォーカスする。物体4508は、焦点面4512における物体の左ビュー又は右ビューの表示に示されるように、物体面における視差が理論上、ゼロであるように、センサ746及び748から焦点距離4510に配置される。この説明のための例では、明確にするために、物体4508は円盤であり、その正面図はアイテム4514として示される。
図45も、物体4508が機械軸に沿って距離「d」だけ変位し、アイテム4508’として示される別の例を示す。物体4508の変位は視差を生み出し、視差は左ビュー4520の表示ではPLとして右ビュー4522の表示ではPRとして現れる。この例では、機械軸及び光軸は一致し、視差の大きさは等しい。視差は、例えば、左ビュー4520と右ビュー4522との間の差分のピクセル数をカウントし、COP較正ステップにおいて特定された倍率係数ピクセル/mmで乗算することにより測定することができる。プロセッサ4102は、三角測量を使用してIPDを計算し得る。各ビューの変位距離d及び視差の測定精度は、立体視覚化カメラ300のIPDの精密な知識に寄与する。
図46は、本開示の実施形態例による、立体視覚化カメラ300の光軸をいかに測定し較正することができるかを示す光学概略の平面図を示す。この例では、光軸4502は、4602として示される角度(α)だけ機械軸4504からずれている。右画像センサ746及び左画像センサ748(1つ又は複数のカメラモデルで近似される)は、焦点面4604における物体4508の左ビュー又は右ビューの表示に示されるように、物体4508の平面における視差が理論上、ゼロであるように焦点距離に配置された物体4508(標的手術部位内の)に位置合わせされフォーカスする。
図46も、物体4508が機械軸に沿って距離「d」だけ変位し、物体4508’として示される別の例を示す。物体4508の変位は視差を生み出し、視差は左ビュー4610の表示ではPLとして及び右ビュー4612の表示ではPRとして現れる。機械軸4504及び光軸4502が一致しないこの例では、視差の大きさは等しくない。一例のプロセッサ4102は、三角測量を介してIPD及び位置合わせずれ角度α(例えば、立体光軸)を計算するように構成される。各ビューの変位距離d及び視差の測定精度により、プロセッサ4102は、立体視覚化カメラ300のIPD及び光軸を正確に決定することができる。
同様の手順は、例えば、垂直面における機械軸及び光軸の位置合わせずれを測定するのに使用することもできる。例えば、水平面又は垂直面における位置合わせずれの組合せは、機械軸に関してビューベクトルを正確に推測することができるように組み合わせることができる。幾つかの実施形態では、IPD及び光軸パラメータは、様々なレベルの作業距離及び/又は倍率で測定し得る。IPD、光軸、作業距離、及び/又は倍率間の関係は、プロセッサ4102によりLUT4203、別のLUT、及び/又は較正レジスタに記憶し得る。
図42に戻ると、一例の立体視覚化カメラ300の光軸及び/又はIPDが較正された後、一例のプロセッサ4102は、較正プロセスを完了して、カメラ300をロボットアーム506に接続できるようにする(ブロック4212)よう構成される。手順4200は次に終了し得る。幾つかの実施形態では、カメラ300が再初期化され、且つ/又は任意の較正を検証又は確認することができない場合、一例の手順4200の少なくとも部分は繰り返される。
幾つかの実施形態では、手順4200の上記ステップが手動又は半手動で実行可能なことを理解されたい。他の実施形態では、上記ステップは、プロセッサ4200により自動的に連続して実行し得る。幾つかの実施形態では、測定は、左右両方のビューにおける識別を可能にするのに十分なコントラストを含む十分な数の物体を有する、適した標的又は任意の標的の画像認識を通して行うことができる。加えて、プロセッサ4102は、立体視覚化カメラ300の光学要素の正確な相対位置を評価するために、視差測定値を特定又は計算し得る。プロセッサ4102は光学測定をリアルタイムで実行し得る。
幾つかの実施形態では、較正及び測定のこれら又は均等な方法を実行する自動化反復技法の使用は、精度を上げ、較正及び測定に必要な時間及び/又は労力を低減することができる。例えば、作業距離(ひいては変位d)は、上述したように、エンコーダカウントの数量とLUT4203により正確に既知である。倍率、及び例えばそのピクセル/mm変換係数も、上述したように、エンコーダカウントの数量とLUT4203により正確に既知である。差異又は物体サイズ特定のための画像におけるピクセルのカウントは、例えば、テンプレート照合を使用して上述したように、手動で正確に実行又は正確に自動化することができる。これらの値の測定及び記憶は、一例のプロセッサ4102により立体カメラモデルパラメータ及びビューベクトルを準リアルタイムで正確に推測することができるように組み合わせることができる。
図47は、光学パラメータが完全に特徴付けられる較正された立体視覚化カメラ300の図を示す。図示の実施形態では、カメラモデルを介して特定されるように、想像上の左右画像センサ位置4700に繋がる左右光軸が示されている。図47はまた、中央立体光軸又はビューベクトル4702も示す。カメラモデルの想像上の左右ビュー構成要素は、焦点距離Zに位置決めされている。加えて、カメラモデルの左右ビュー構成要素は、測定された有効IPDだけ離間される。図示の例では、焦点面における物体は、立体視覚化カメラ300内の画像センサ746及び748により記録される想像上の左右ビュー構成要素により同様の立体視点で見られる。
2.立体視覚化の較正により追加の画像との融合を可能にする
一例のプロセッサ4102は、高分解能クリア画像を提供するのみならず、ライブ立体画像を、外部デバイス4104から受信した1つ又は複数の画像/モデルと位置合わせするためにも較正パラメータ/情報を使用するように構成される。LUT4203及び/又は較正レジスタ内のカメラモデルパラメータに関連する較正データのマッピングにより、プロセッサ4102は、ソフトウェア、ファームウェア、ハードウェア、及び/又はコンピュータコードで実装される立体視覚化カメラ300の数学的モデルを作成することができる。一例では、プロセッサ4102は、例えば、図42と併せて考察した手順4200を使用してカメラモデルパラメータを受信、特定、又は評価するように構成される。較正が既に実行されている場合、プロセッサ4102は、1つ又は複数のメモリ1570及び/又は4120からのカメラモデルパラメータを評価する。プロセッサ4102はまた、デバイス4104から、術前画像、MRI画像、MRI又はCTデータからの手術部位の3Dモデル、X線画像、及び/又は手術ガイド/テンプレート等の代替のモダリティの画像データを受信する。プロセッサ4102は、カメラモデルパラメータを使用して代替モダリティデータの合成立体画像をレンダリングするように構成される。一例のプロセッサ4102はまた、モニタ512を介した表示に合成立体画像を提供するようにも構成される。幾つかの例では、プロセッサ4102は、合成立体画像を現在の立体視覚化と融合するように構成され、まるで1つの視覚化デバイスにより取得されたかのように同一の視点で、各モダリティの望ましい側面を見ることができ、且つ/又は重ねることができる。
幾つかの実施形態では、図47に示されるパラメータは、プロセッサ4102により、代替のモダリティの合成立体画像、例えばMRI画像データを立体視覚化カメラ300の立体視点と一致させるのに使用される。したがって、一例のプロセッサ4102は、記憶された光学較正パラメータを立体画像合成に使用する。一例では、プロセッサ4102は光学較正パラメータを使用して、ライブ立体画像を、MRIデバイスを使用して術前に撮像された脳腫瘍の三次元モデルと融合する。一例のプロセッサ4102は光学較正パラメータを使用して、立体画像に一致する脳腫瘍の三次元モデルの対応するロケーション、サイズ、及び又は向きを選択する。換言すれば、プロセッサ4102は、立体視覚化カメラ300により記録されたビューに対応する三次元モデルの一部を選択する。プロセッサ4102はまた、カメラ300の作業距離、倍率、及び/又は向きがいかに変わるかの検出に基づいて、モデルのどの部分が表示されるかを変更することもできる。
プロセッサ4102は、モデルのグラフィカル表現を立体画像に重ねさせ得、且つ/又はモデルのグラフィカル表現を立体画像と視覚的に融合して表示させ得る。プロセッサ4102により実行される画像処理は、モデルのグラフィカル表現とライブ立体ビューとの間の境界を平滑化することを含み得る。画像処理はまた、下にあるライブ立体ビューも外科医に見えるように、モデルのグラフィカル表現の少なくとも一部の透明度を上げることを含むこともできる。
幾つかの例では、プロセッサ4102は、立体画像におけるあらゆるピクセルの深度マップを生成且つ/又はレンダリングするように構成される。プロセッサ4102は較正パラメータを使用して、例えば、画像における組織深度を特定し得る。プロセッサ4102は、対象組織に注意するため且つ/又はカメラ300がロボットアーム506と嵌合したとき、非意図的な接触を回避するために機器のロケーションを識別するための画像認識に深度情報を使用し得る。深度情報はプロセッサ4102により、例えば、調整された少なくとも半自動化された外科処置を行うために、ロボット縫合デバイス、診断機器、処置モニタリング及び記録システム等に出力される。
3.ロボットアーム較正の実施形態
立体視覚化カメラ300は、上述したように較正された後、ロボットアーム506及び/又は結合板3304に接続し得る。後述するように、記憶された較正パラメータにより提供される焦点距離Zに関する作業距離の精密な知識は、立体視覚化カメラ300の位置及び/又は向きを特定するために、一例のプロセッサ4102及び/又はロボットプロセッサ4122により使用される。ロボットアームとの立体視覚化カメラ300の組合せは、標的手術部位のフォーカス又はビューを保ちながら、種々の作業距離のシームレスな遷移を提供するように構成される。
後述するロボットアーム506の較正手順は、ロボットアームタイプに関係なく実行し得る。例えば、較正手順は、単に1つ又は2つのリンク及びジョイントから、6つ以上のジョイントを含むジョイント構造までの回転ジョイントを介して互いに接続された機械的リンクを含む連結式ロボットシステムに対して実行し得る。較正手順はまた、X、Y、及びZ方向を有する座標系を使用する、線形ジョイントを有するガントレイを備えたデカルトロボットシステムに対して実行することもできる。デカルトロボットシステムの最後のジョイントは、リストタイプスイベルジョイントを含み得る。較正手順は、ベースに回転ジョイントを備え、1つ又は複数の追加の回転及び/又は線形ジョイントを備えて、円筒形作業空間を形成する円筒座標ロボットシステムに対して更に実行し得る。さらに、較正手順は、2つ以上の回転軸で動作し得るジョイントを介してベースに接続されたアームを備え、1つ又は複数の線形又はリストジョイントを更に備える極座標ロボットシステムに対して実行し得る。較正手順はさらに、組み立て用途に使用される主に円筒形で動作する選択的コンプライアンスアームを備える選択的コンプライアンス組立ロボットアーム(「SCARA(Selective Compliance Assembly Robot Arm)」)システムに対して実行し得る。
図48は、本開示の実施形態例による、ロボットアーム506を較正する一例の手順4800又はルーチンを示す。手順4800について図48に示される流れ図を参照して説明するが、手順4800に関連するステップを実行する多くの他の方法が使用可能なことを理解されたい。例えば、ブロックの多くの順序は変更し得、特定のブロックは他のブロックと結合し得、記載されるブロックの多くは任意選択的なものである。さらに、手順4800に記載される動作は、例えば、図14の一例の立体視覚化カメラ300の光学要素1402、画像捕捉モジュール1404、モータ及び照明モジュール1406、情報プロセッサモジュール1408、及び/又はジョイントR1〜R9、及び図41のロボットアームコントローラ4106を含め、複数のデバイスの間で実行し得る。例えば、手順4800は、ロボットアームコントローラ4106のメモリ4120に記憶されたプログラムにより実行し得る。
幾つかの実施形態では、結合板3304はロボットアーム506に接続される(ブロック4802)。結合板3304が使用されない場合、立体視覚化カメラ300はロボットアーム506の接続又は結合インターフェース3450に直接接続される。結合板3304が使用される場合、立体視覚化カメラ300は結合板に接続される(ブロック4804)。上述したように、結合板3304の第1の端部3702はロボットアーム506に接続され、結合板3304の第2の端部3704は立体視覚化カメラ300に接続される。
一例の立体視覚化カメラ300がロボットアーム506に接続された後、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ及びビューベクトルをロボットアーム506の静止ベース3404周囲に由来する座標系に較正する(ブロック4806)ように構成される。本明細書では、この座標系は「ロボティック空間」又は「ロボット空間」と呼ばれる。この較正ステップ中、ロボットアーム506への既知の移動は、プロセッサ4102及び/又はロボットアームコントローラ4106により使用されて、標的手術部位の視覚化中、カメラ300のビューベクトル及び物体面の向き及びロケーションを特定する。
幾つかの実施形態では、カメラ300、結合板3304、及びロボットアーム506の機械的特徴は、一緒に機械的に接続された場合、カメラ300、結合板3304、及びロボットアーム506間の関係が一意に特定され知られるように存在する。これらの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ300、結合板3304、及びロボットアーム506の既知の機械的ジオメトリからビューベクトルの位置、方向、及び/又は向きを特定する。
数学的特徴が存在しない他の実施形態では、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、ロボット空間においてカメラ300とロボットアーム506との間の空間関係を正確に特定するルーチンを実行するように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、立体視覚化カメラ300を開始位置に移動させ、開始位置は格納位置、再向き決め位置、又は手術位置を含み得る。立体視覚化カメラ300は次に、カメラを開始位置から、ロボットアーム506の静止ベース3404に配置された較正ターゲットを概ね視覚化する位置に移動させる。較正ターゲットは、例えば、ロボットアーム506のモーションスフィア内の位置におけるカート510の好都合なエリアに配置し得る。較正ターゲットの幾つかの例には、例えば、一意の既知の向きで互いに対して配置することができる(二次元画像又は立体画像において)小さなスフィア又は他の一意に認識可能な物体がある。スフィアの座標は、カート510及び静止ベース3404に対して固定され、既知であり、したがって、ロボット空間において既知である。プロセッサ4102及び/又はロボットアームコントローラ4106は、例えば、メモリ4120に座標を記憶するように構成される。
較正中、プロセッサ4102及び/又はロボットアームコントローラ4106は、作業距離、倍率、立体光軸、及び/又はIPDに関するビューベクトルデータ4807を受信する。立体視覚化カメラ300は、較正ターゲットにおけるスフィアを同時に視覚化し、立体画像における視差の使用を通してスフィアの位置を特定するように設定される。プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ300における基準(すなわち、「カメラ空間」)に関して初期座標系、例えば、X、Y、及びZにおけるスフィアの位置を記録する。X、Y、Z位置は、元のロケーションに対応し得、原点又は他の既知の座標値を有するものとしてファイル又はLUTにおいて定義し得る。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、ジョイントセンサからの出力データも使用して、ロボットアーム506におけるジョイント及びリンクの位置及び向きを特定する。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、位置情報を受信して、結合デバイス3304の位置及び向きも特定する。ロボットアーム506及び結合デバイス3304の位置及び向きは一緒に、プロセッサ4102及び/又はロボットアームコントローラ4106がカメラ300の姿勢を特定できるようにする。プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラにより記録された較正ターゲットのスフィアの位置及びロボットアーム506及び/又は結合板3304の位置として基づいて、カメラ空間とロボット空間との間で座標変換を実行するように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、座標変換をLUT4203、ロボットアーム506の異なるLUT、及び/又は1つ又は複数の較正レジスタに記憶し得る。
幾つかの実施形態では、カメラ300は移動して、カート510、天井、壁、及び/又は手術エリアに配置された複数の較正ターゲットの画像を記録する。各較正ターゲットは、物理的なX、Y、Zロケーションを識別できるようにする一意の向きを有し得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、各較正ターゲットに対して追加の座標変換を実行し、変換を1つ又は複数のLUT及び/又はレジスタに記憶する。
他の実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、代替の方法を使用して、ロボット空間に対してカメラ300を較正し得る。この状況では、「較正」とは、「見当合わせ」を意味するものとして解釈され、ここで、プロセッサ4102及び/又はロボットアームコントローラ4106は、見当合わせが変わり得る広い空間にわたり見当合わせを計算するように構成される。例えば、別個の立体カメラがカート510における較正ターゲット及びカメラ300及び/又は患者又は手術ベッドに設置された同様の較正ターゲットの観測及び位置特定に使用されるシステムを使用することができる。プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ300をモデリングし追跡するように構成され、カメラ300は、ビューベクトル及び作業距離と共に手術機器としてモデリングされ追跡される。ビューベクトル及び作業距離は、標的手術部位を正確に視覚化するためのパラメータを定義する。これらの他の実施形態では、他のカメラは、立体カメラ300等の基準系におけるそのような各機器の座標系のロケーション及び向き情報を特定し報告する。次に、線形代数を使用して、互いに対する機器の姿勢及び/又はロケーションがプロセッサ4102及び/又はロボットアームコントローラ4106により計算され、それにより、ロボット空間に対してカメラ300が較正されることになる。
幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106はまた、結合板3304に関しても較正するように構成される。幾つかの場合、結合板3304は、ジョイントR7〜R9の位置に応じてアクティブ化する1つ又は複数のスイッチを含む。スイッチの既知の位置は、座標変換の一環としてプロセッサ4102及び/又はロボットアームコントローラ4106により使用される。追加又は代替として、結合板3304は、カメラ300からの画像がモニタリングされている間、ロボットアーム506を移動させて、向きを特定することにより較正される。結合板3304が図37に示されるように向けられる例では、ロボットアーム506は、仮定された向きに相対する方向に移動(例えば、z軸に沿ってカメラ300を移動)するように命令される。仮定された向きが、カメラ300が下方に照準付けされた図37に示されるものである場合、ロボットアーム506の下方移動により、カメラ300が近づくにつれて画像内の物体は大きくなるはずである。例えば、画像内の物体が、代わりに横又は上/下に移動する場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、移動を検出し、仮定された向きが不正確であると判断するように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、エラーを生成し、正確な向きをオペレータにプロンプトし、且つ/又は画像において検出された移動に基づいて正確な向きを特定し得る。上述したように、カメラ300の移動からの画像内の変化は、例えば、画像テンプレート照合アルゴリズムの使用を通して自動的に復号化される。幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106によるテンプレート照合アルゴリズムの使用は、結合板3304におけるジョイントの向きを特定し、これは較正のためにLUTに記憶される。
図49は、本開示の実施形態例による、立体視覚化カメラ300及び/又はロボットアーム506がロボット空間に対していかに較正されるかを示す図を示す。図示の実施形態では、各ジョイントR1〜R9及び対応するリンクは、回転機能及び/又は長さに基づいてモデリングされる。メモリ4120は、モデルに関連する数学的パラメータを記憶し得る。さらに、プロセッサ4102及び/又はロボットアームコントローラ4106は、数学的モデルを使用して、例えば、ロボットアーム506及び/又はカメラ300の現在位置を特定し得、これ(ら)は、オペレータにより提供される意図される移動に基づいてジョイントがいかに回転すべきかの計算に使用し得る。
図示の例では、ジョイントR1は座標位置(0,0,0)に提供される。ジョイントR1〜R9の間の長さはリンクの長さに対応する。図示の例では、立体視覚化カメラ300は、9個の結合器に接続されたロボットエンドエフェクタとしてモデリングされる。図49に示される三次元空間は、行列乗算を含み得る一連の10個の同次変換を使用してモデリングされる。最初の6つのフレーム又はジョイントR1〜R6はロボットアーム506の順運動学を表し、ロボットアームのデナビット−ハーテンバーグパラメータを使用して計算し得る。次の3つのフレーム又はジョイントR7〜R9は、ロボットアーム506のツール先端部から結合板3304の先端部への変換を表す。最後のフレームR10は、結合板3304のツール先端部から立体視覚化カメラ300の制御点までの変換を表す。
フレーム又はジョイントR7は結合板3304のピッチジョイントを表し、0°〜90°で変更することができる。フレーム又はジョイントR8は結合板3304のヨージョイントを表し、ヨー構成に応じて−90°、0°、及び90°間で変更することができる。結合板のジョイントR7〜R9は電圧源及び電位差計を含み得る。ロボットアーム506のコネクタ3450及び/又は結合器コントローラ4130は、電位差計からの電圧出力を受信するように構成されたI/Oツール先端部コネクタを含み得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、出力電圧を受信し、それに対応して結合板3304のピッチ角及びヨー角を特定するように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、結合板のピッチ及びヨー情報をロボットアーム506のジョイントR1〜R6からのセンサ出力データと結合して、フレームR1〜R10の位置を計算し、ロボットアーム506、結合板3304、及び/又はカメラ300の三次元位置を特定する。
制御点は、運動学的連鎖の一番端にあるフレーム10を表し、どの特徴が選択されるかに基づいて位置に関して完全にプログラム可能である。例えば、オペレータが補助付き駆動特徴を選択する場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、制御アーム304の回転軸に沿ってカメラ内部にあるようにカメラ300を表す制御点を設定するように構成される。別の例では、オペレータが標的ロック特徴を選択する場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ300の制御点を光軸ビューベクトルの原点に設定するように構成される。
図48に戻ると、ロボット空間に対してカメラ300を較正した後、プロセッサ4102及び/又はロボットアームコントローラ4106は、患者空間に対してロボット空間を較正する(ブロック4808)ように構成される。患者空間の較正は、立体視覚化プラットフォーム516が、ロボットシステムと患者との間の向きが必要な患者の正確な視覚化を行うために必要である。幾つかの実施形態では、この向きは固定される。他の実施形態では、この向きは、変化する場合、検知され、分かる。幾つかの実施形態では、患者は手術室ベッドに配置され、1つ又は複数の基準4809を使用してベッドに見当合わせされる。例えば、患者が脳手術を受けている場合、患者はベッドに固定され、外部フレームが患者の頭蓋骨に固定される。フレームは立体視覚化カメラ300により観測可能であり、既知のロケーションの2つ以上の非共線形物体が同時に可視であり、それにより、フレームの位置及び向き、ひいては患者の頭蓋骨の位置及び向きを特定することが可能である較正ターゲットの配置等の配置で基準4809を含み得る。他の実施形態は、患者に移植され、MRI又は同様の画像で可視の基準4809を使用し得る。そのような基準4809は、正確に患者の頭蓋骨及びMRI画像を追跡し、患者空間を表す座標系に見当合わせするのに使用することができる。さらに、他の実施形態は、患者自体に生来の特徴の画像認識を使用し得る。例えば、バイオメトリックデータ、in−situ x線、又は同様の代替モダリティ撮像を使用した顔又は同様の認識を使用して、患者の位置及び向きを精密に特定することができる。別の例では、上述したように1つ又は複数の深度マップ計算及びプロセッサ4102及び/又はロボットアームコントローラ4106により実行される表面照合機能を使用して、患者の顔表面のモデルを特定することができる。
実施形態では、ロボット空間に関する手術室ベッドの位置及び向きは固定され、特定される。幾つかの実施形態は、例えば、ベッドを既知の位置及び向きでカート510の付属器具に機械的に見当合わせする剛性フレームを含む。代替として、ベッドはロボットアーム506に関して固定することができ、基準を使用して位置及び向きを特定することができる。例えば、ロボットカート510及びベッドは、床にアンカーで固定され、処置の持続時間にわたり固定することができる。
カメラ300により患者の基準4809を視覚化した後、ロボット空間におけるそれらの位置及び向きは、プロセッサ4102及び/又はロボットアームコントローラ4106により復号化、記憶することができ、ここで、ロボット空間から患者空間への座標変換が可能になる。なお、ある空間から別の空間への座標系変換は一般に、選択可能であり、可逆的である。例えば、プロセッサ4102及び/又はロボットアームコントローラ4106が離散したジョイント運動及び向きを特定できるようにするために、所望のカメラ運動又は姿勢からロボット空間に変換することがより効率的であり得る。代替的には、情報を患者空間においてディスプレイモニタ512上で外科医に提示することがより容易であり、より効率的であり得る。患者及びベクトルのロケーションは、プロセッサ4102及び/又はロボットアームコントローラ4106により大半の任意の座標系のそれぞれ、例えば、カート原点、患者基準系、GPS、及び/又は所望の他の座標系であるように変換することができる。
幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、自動化された反復技法を使用して、ロボット/患者空間較正及び測定のこれら又は均等な方法を実行して、精度を上げ、較正時間を短縮するように構成される。例示的な実施形態では、基準に対する立体視覚化カメラ300の変位及び向きは、プロセッサ4102及び/又はロボットアームコントローラ4106により正確に既知である。ロボットアーム506の運動は正確に実行することができ、続く基準の画像は正確に分析することができる。較正パラメータの視覚化及び知識は、測定、ひいては較正を自動的に正確に実行することができるように、プロセッサ4102及び/又はロボットアームコントローラ4106により結合することができる。これは、例えば、ある外科処置及びある患者から次の外科処置及び患者に正確な較正を維持するのに重要である。
幾つかの例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、患者空間及び/又はロボット空間に対するロボットアーム506及び/又はカメラ300の境界を決定するように構成される。境界は、ロボットアーム506及び/又はカメラ300が画定されたエリア若しくは空間に接触しない又は画定されたエリア若しくは空間から出ないようにするためにソフトウェアに実装される仮想限界を表す。幾つかの例では、限界は、プロセッサ4102及び/又はロボットアームコントローラ4106によりジョイント移動信号に適用されるスケーリング係数として、メモリ4120に記憶される1つ若しくは複数のLUT又はレジスタにおいて定義される。スケーリング係数の大きさは、個々の各境界への限界に近づくにつれてゼロに低減する。例えば、オペレータ入力に基づいてジョイント回転の量及び速度を決定し得る。しかしながら、プロセッサ4102及び/又はロボットアームコントローラ4106は、信号を適切なジョイントに送信する前、スケーリング係数でジョイント回転をスケーリングする。加えて、プロセッサ4102及び/又はロボットアームコントローラ4106は、ジョイントが所望の量、移動するが、ジョイントが境界に達するまで減速するように回転量を維持し得る。スケーリング係数が適用される回転エリアにおけるジョイントに、所望の移動が境界から離れる移動である場合、スケーリング係数が適用されないことがあることを理解されたい。したがって、プロセッサ4102及び/又はロボットアームコントローラ4106は、現在位置及びオペレータからの推定所望移動に基づいて、特定のジョイントにスケーリング係数を適用しながら、スケーリング係数「1」を他のジョイントに適用し得る。
スケーリング係数は厳密に0〜1であり、それにより、それらを一緒に繋げられ、ソフトウェアが無限数の可能な境界をサポートできるようにする。スケーリング係数は、境界に近づくにつれて線形に低減し得、ロボットアーム506が境界に近づくにつれて、ジョイントR1〜R9の回転を徐々に遅くさせる。他の例では、スケーリング係数は、境界に近づくにつれて指数的に低下し得る。
一般に、オペレータは通常、ディスプレイモニタ512上の術野又は立体画像に注目する。したがって、オペレータは通常、ロボットアーム506及び/又は結合板3304の個々のリンクの位置に気付かない。したがって、ロボットアーム506が限界に近づこうとしているとき又はロボットアーム506の別の部分に衝突しようとしているとき、常に直観的であるわけではない。したがって、ジョイント限界は常にアクティブであり得、ロボットアーム506の任意の部分がそれ自体に当たるか、又はジョイントをエルボロック等の特異点構成にするのを阻止し得る。一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506の現在位置に基づいてスケーリング係数を決定するように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、どのスケーリング係数を適用すべきかを判断するために、オペレータにより提供される意図される移動命令を考慮に入れることもできる。現在の移動及び/又は予期される移動に基づいて、プロセッサ4102及び/又はロボットアームコントローラ4106は、例えば、1つ又は複数のLUTを使用して、ジョイント角度空間における距離に基づいてスケーリング係数を計算する。ジョイント角度空間は、ジョイントロック又はロボットアーム506がそれ自体に当たることを生じさせることが分かっているジョイント角度の特定の組合せを定義し得る。したがって、ジョイント角度空間決定は、互いに対するジョイントの現在の移動(及び/又は予期される移動)を特定し比較することに基づく。
ロボットアーム506の境界に加えて、メモリ4120は、ロボットアーム506がカート510に当たらないようにし、ロボットアームがディスプレイモニタ512に当たらないようにし、且つ/又はカメラ300がロボットアーム506に当たらないようにするデカルト限界に関連する境界を記憶し得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、例えば、デカルト限界の決定及び/又は適用に図49と併せて考察した座標系を使用し得る。幾つかの例では、限界は特定のリンクに相対又は係留し得る。したがって、リンクが3D空間において移動した場合、リンクの周囲の境界もそれに従って移動する。他の例では、限界は静止し、図49に示される3D空間内で特定の座標平面又は線に固定される。プロセッサ4102及び/又はロボットアームコントローラ4106は、デカルト空間においてスケーリング係数を計算又は特定し、順運動学変換を適用することにより限界を適用し得る。
一例のプロセッサ4102及び/又はロボットアームコントローラ4106はまた、患者境界を決定することもでき、患者境界は、ロボットアーム506及び/又はカメラ300の点が違反することができない仮想的な配置を画定する。患者境界は、境界平面のロケーションまでのロボットアーム506及び/又は結合板3304上の各位置ジョイントの距離について、デカルト空間においてスケーリング係数を計算することにより決定し得る。境界平面は、図50の向き5002で示されるように、非ピッチ構成と同じある垂直Zロケーションに配置されるX、Y平面として実施される。図50の向き5004に示される半分座っている患者等のピッチ構成では、境界平面は、カメラ300が面する方向に応じて正又は負のX値に配置されたY、Z平面として設定される。
上述した一例の境界は、デフォルト境界としてメモリ4120に記憶し得、且つ/又は外科処置前に、プロセッサ4102及び/又はロボットアームコントローラ4106により決定し得る。幾つかの実施形態では、特定の境界は、実行する外科処置の入力されたタイプに基づいて評価又は決定し得る。例えば、患者境界は、カメラ300が患者を撮像し、較正情報/パラメータを使用して患者深度を特定することにより決定し得る。次に、プロセッサ4102及び/又はロボットアームコントローラ4106は、患者の上又は隣の指定されたロケーションへの境界を作成し適用し得る。モニタ、手術スタッフ、又は手術機器の検出後、同様の境界を作成し得る。
例えば、境界は、より大きなサイズの器具又は接触した場合に特定のリスクを課す器具のような特定の手術器具の使用の周囲に決定することができる。一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、器具タイプの入力を受信し、且つ/又は画像分析を使用して立体画像において器具を検出し得る。他の例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、手術器具に関連する深度情報を計算して、そのサイズ、向き、及び/又は位置を特定する。一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、手術機器の画像を図49に関連して考察した座標系等の座標系に変換する。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、「1」未満の値を有するスケーリング係数を手術機器のロケーションに対応するエリアに適用し、それにより、ロボットアーム506及び/又はカメラ300が手術器具に不注意で接触しないようにする。幾つかの場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、処置中、手術器具の移動を追跡し、それに従って境界を変更し得る。
図51は、本開示の実施形態例による、境界への距離に基づいてロボットアーム506及び/又は結合板3304の回転ジョイント速度がいかにスケーリングされるかの一例を示す。グラフ5102はジョイントR1の回転速度を示し、グラフ5104は、スケーリング係数が値「1」から下げられる境界に近いエリアに対応する第1のゾーン5112及びスケーリング係数が値「0」に下げられる境界に対応する第2のゾーン5114に関連するショルダ角度(例えば、回転位置)5110を示す。
図51は、ロボットアーム506、特にジョイントR1が少なくとも1つのリンク及び/又は立体視覚化カメラ300を第1のゾーン5112に近づける際、回転速度が第2のゾーン5114までの距離に関して動的にスケーリングされることを示す。次に、少なくとも1つのリンク及び/又は立体視覚化カメラ300が第2のゾーン5114に達すると、スケーリング係数は値「0」に下げられ、境界に向かう全ての回転ジョイント移動は停止する。換言すれば、ロボットアーム506及び立体視覚化カメラ300が限界又は境界に近づくにつれて、プロセッサ4102及び/又はロボットアームコントローラ4106はジョイントR1〜R9の少なくとも幾つかの回転速度を低減させ、第2のゾーン5114に達した(グラフ5102及び5104において20秒と30秒との間に示されるように)場合、最終的に速度「0」度/秒の速度に到達させる。グラフはまた、少なくとも1つのリンク及び/又は立体視覚化カメラ300が第2のゾーン5114から離れて移動する場合、第2のゾーン5114に近づいていないため、プロセッサ4102及び/又はロボットアームコントローラ4106がスケーリング係数「1」を使用することも示す。
幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、ディスプレイモニタ512又は他のユーザインターフェースにロボットアーム506のステータスを表す1つ又は複数のグラフィカルアイコンを表示させるように構成される。例えば、ロボットアーム506及び/又はカメラ300が、スケーリング係数が値「1」を有するゾーン又はエリアに配置されている場合、緑色のアイコンを表示し得る。さらに、ロボットアーム506及び/又はカメラ300が第1のゾーン5112内に配置されている場合、黄色のアイコンを表示して、ジョイント回転速度が減じられることを示し得る。さらに、ロボットアーム506が第2のゾーン5114又は境界/限界に達した場合、赤色のアイコンを表示して、境界を越えたそれ以上の移動が可能ではないことを示し得る。
図48に戻ると、ロボット空間境界が決定された後、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506が立体視覚化カメラと動作できるようにする(ブロック4812)よう構成される。これは、ロボットアーム506及び立体視覚化カメラ300を外科処置中に使用できるようにすることを含み得る。これはまた、補助付き駆動及び/又は標的ロック等の特徴を含むこともできる。追加又は代替として、これは、図41の入力デバイス1410の1つ又は複数における1つ又は複数のユーザ制御を可能にすることを含み得る。ロボットアーム506が立体視覚化カメラ300と共に可能になった後、一例の手順4800は終了する。立体視覚化プラットフォーム516が再初期化される場合、故障検出を受ける場合、又は較正を検証することができない場合、一例の手順4800を繰り返し得る。
D.立体視覚化カメラ及びロボットアーム動作の実施形態
一例の立体視覚化カメラ300は、ロボットアーム506及び/又は結合板3304と併せて動作して、強化された視覚化特徴を提供するように構成される。より詳細に後述するように、強化された特徴は、フォーカスの拡張、焦点先端部(focal tip)位置決めの自動化、画像内の物体間の距離測定の提供、視覚化と連合したロボット運動の提供、垂れ下がり補償、画像融合、及び視覚化位置/向きの記憶を含む。強化された視覚化特徴はまた、ロボットアーム506の補助付き駆動機能及びロボットアーム506及び/又は結合板3304の向きが変更可能でありながら、カメラを特定のビューにロックできるようにする標的ロック機能を含むこともできる。
1.フォーカス拡張実施形態
幾つかの実施形態では、ロボットアーム506及び/又は結合板3304は、カメラ300のフォーカス拡張を提供し得る。図43に関連して上述したように、立体視覚化カメラ300は、作業距離を変更する主対物レンズ組立体702を含む。手術部位における物体にフォーカスするために、主対物レンズ組立体702は、物体の直前から物体を超えたところまで焦点距離を変更する。しかしながら、幾つかの場合、主対物レンズ組立体702は、最良フォーカスを達成する前、前部作業距離レンズ408の機械的限界に達する。
一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、機械的限界に達したときを検出し、且つ/又はレンズ408の機械的限界に達しようとしていると判断し、それに従ってレンズ408の代わりにロボットアーム506の位置を調整するように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506を使用して、カメラ300のビューベクトルを計算し、光軸に沿ってロボットアーム506を作動させることによりフォーカスを拡張するように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、立体視覚化カメラ300の上記較正パラメータを使用して、フォーカスを達成するのに必要な距離を特定する。例えば、上述したように、前部作業距離レンズ408の位置は、標的物体までの主対物レンズ組立体702の物理的な作業距離にマッピングされる。この距離は、カメラ300の中心が標的物体からどれくらい遠いかについての推定を提供する。さらに、較正パラメータは、前部作業距離レンズ408のモータ又はエンコーダステップと作業距離との間のマッピングを含み得、特定の作業距離又はフォーカスの達成に必要な距離の推定を提供する。したがって、プロセッサ4102及び/又はロボットアームコントローラ4106は、前部作業距離レンズ408の現在のエンコーダ値を読み取り、カメラ300から標的物体までの垂直距離を表すメートル数を特定し得る。換言すれば、プロセッサ4102及び/又はロボットアームコントローラ4106は、レンズ移動(エンコーダカウント単位)をロボット空間内の物理的距離に変換する。プロセッサ4102及び/又はロボットアームコントローラ4106は次に、ロボットアーム506を光軸に沿って特定された距離移動させるためのジョイント回転速度、方向、及び/又は持続時間(例えば、移動シーケンス)を決定する。プロセッサ4102及び/又はロボットアームコントローラ4106は次に、1つ又は複数の信号を移動シーケンスに対応する適切なジョイントに送信して、ロボットアーム506にフォーカス拡張を提供させる。幾つかの場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、信号がロボットアーム506及び/又は結合板3304のジョイントR1〜R9に送信される前、スケーリング係数を適用し得る。
フォーカスの拡張がロボットアーム506の自動移動を生じさせることを理解されたい。換言すれば、ロボットアーム506は、最良フォーカス点を通してカメラ300の運動を継続することができる。加えて、ロボットアーム506の移動は、ロボットアームを移動させるオペレータからの入力なしで、むしろフォーカスの変更に関するオペレータ画像から行われる。幾つかの場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、クリアな画像を維持するようにフォーカスを自動的に調整し得る。
幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、入力デバイス1410を介した1つのボタン押下に応答してロボットアーム506をカメラの作業距離に沿って移動させるように構成される。この特徴は、オペレータが主対物レンズ組立体702のモータ位置を修正し、ロボットアーム506及び/又は結合板3304を移動させることによりフォーカスを得られるようにする。この「ロボットオートフォーカス」特徴又は手順は、図43に関連して上述したように、プロセッサ4102及び/又はロボットアームコントローラ4106が主対物レンズ組立体702の正面から標的までの距離を推定又は特定することにより達成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、特定された距離をフィードバック法則を用いて、特定された距離が値「0」に達するまで、ロボットアーム506の垂直速度(又はカメラ300の光軸に沿った速度)を命令するように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、処置中、このオートフォーカスアルゴリズムを随時使用して、標的物体にフォーカスし得る。幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、オートフォーカスの方向をサーチする際、オートフォーカスがシード又は開始点として使用された最後からのロボットアーム506及び/又は結合板3304の移動を使用し、それにより、標的物体にフォーカスする速度及び精度を改善し得る。
一例のプロセッサ4102及び/又はロボットアームコントローラ4106が、それぞれが位置、フォーカス、作業距離、及び/又は倍率にマッピングされたエンコーダカウントを有する各モータにより移動可能であり得る前部レンズセット714、レンズバレルセット718、及び/又は最終光学セット742の移動への追加又は代替として、ロボットアーム506及び/又は結合板3304を移動させるように構成し得ることを理解されたい。例えば、プロセッサ4102及び/又はロボットアームコントローラ4106は、前部レンズセット714、レンズバレルセット718、及び/又は最終光学セット742のいずれかが移動限界に近づこうとしている場合、ロボットアーム506を光軸に沿って移動させ得る。幾つかの例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506をまず、概ねフォーカス又はフォーカス近傍である位置に移動させ、次に前部レンズセット714、レンズバレルセット718、及び/又は最終光学セット742を調整して、標的画像に略理想的にフォーカスし得る。
2.フォーカス先端部自動位置決めの実施形態
幾つかの実施形態では、ロボットアーム506及び/又は結合板3304は、立体視覚化カメラ300と併せて動作して、フォーカス先端部自動位置決めを提供し得る。これらの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、特定の画像及びその内容の情報又はフィードバックなしで標的手術部位の視覚化に向けてカメラ300を位置決めするように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、図42及び図49に関連して上述した、較正されたカメラモデルパラメータを使用して、開ループカメラ位置決めを実行し得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラの焦点又はフォーカス先端部がシーン内にあるように、ロボットアーム506に立体視覚化カメラ300を位置決めさせ得る。立体視覚化カメラ300は、ロボットアーム506及び/又は結合板の姿勢に関する較正情報及びカメラ300の光学較正パラメータに基づいて、座標系に関してカメラ300の照準方向を決定する。プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506の座標系に関してカメラ300の立体光軸と一致して位置合わせされる、幾何学的に定義されるビューベクトルにより照準を特徴付け得る。
幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、初期化ルーチンを実行して、較正パラメータ及び/又は他のメモリデータを、先端部位置決めに使用し得る実際の物理的な基準位置に位置合わせするように構成される。例えば、プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506及び/又は結合板を、全ての位置データフィールドが0(又は三次元空間では0,0,0)に設定される「位置0」におけるハードスポットに移動させ得る。それ以上の運動は、この点に相対して行われ、位置データは、例えば、ロボットアーム506及び/又は結合板3304の種々のジョイントモータのエンコーダカウントに従って更新される。
他の実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、1つ又は複数の視覚化パラメータに基づいてカメラ300の先端部位置を決定又は設定し得る。例えば、プロセッサ4102及び/又はロボットアームコントローラ4106は、ビューベクトルの基端部(例えば、カメラ300を照準決めるための「開始点」)として投影中心ロケーションを使用し得る。幾つかの手術システムでは、手術機器におけるこの点は、「後(hind)」点と呼ばれ、先端部に関連して提供し得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、先端部及び後点からのビューベクトル方向を計算して、ロボットアーム506の座標系に関するカメラ300の照準を決定する。
追加又は代替として、プロセッサ4102及び/又はロボットアームコントローラ4106は、投影中心から立体画像の焦点面の範囲を計算する焦点距離を決定し得る。焦点面における画像の中心は「先端」点である。プロセッサ4102及び/又はロボットアームコントローラ4106は、較正された作業距離を使用して、カメラ300から先端点までの実際の物理的な空間距離を決定し得る。さらに、プロセッサ4102及び/又はロボットアームコントローラ4106は、倍率較正に関して上述したように、倍率を決定し得る。
3.距離測定の実施形態
幾つかの実施形態では、ロボットアーム506及び/又は結合板3304は、立体視覚化カメラ300と併せて動作して、立体画像における物体間の距離測定及び/又は深度測定を提供し得る。例えば、プロセッサ4102は、ロボット空間に変換された光学較正パラメータを使用してロボットアーム506の座標系に関してカメラ300の焦点又はフォーカス先端部の中心を位置関係的に決定し得る。図45及び図46に関連して上述したように、画像における任意の点のビューベクトル及び左/右視差情報はプロセッサ4102により使用されて、三角測量を通して先端部又は画像における任意の他の点に関する三次元におけるその位置を計算することができる。この三角測量により、プロセッサ4102は、画像における任意の点をロボット座標系にマッピングできるようになる。したがって、プロセッサ4102は、ロボットアーム506の同じ座標空間に関して複数の物体のロケーション及び/又は深度或いは/並びに物体の異なる部分のロケーションを計算することができ、それにより、物体間で距離測定及び/又は深度測定を行えるようになる。
プロセッサ4102は、立体画像上に且つ/又は立体画像と併せて視覚的に距離及び/又は深度測定情報を表示させ得る。幾つかの場合、オペレータは入力デバイス1410を使用して、画面上の物体を選択し、又は指若しくは手術機器を使用して患者における実際の物体を直接指すことにより2つ以上の物体を選択し得る。プロセッサ4102は選択の指示を受信し、それに従って物体の座標及び物体間の距離を特定する。プロセッサ4102は次に、立体画像と併せて定規グラフィック及び/又は距離を示す値(及び/又は選択された物体の表示)を表示し得る。
さらに、物体の追跡により、前に撮像された(又は前に他の画像で提供された)他の物体のロケーションを記憶し、後に比較することができる。例えば、カメラ300は、物体の少なくとも幾つかが現在FOVの外部にあるロケーションに移動し得る。しかしながら、オペレータは、FOV内の物体と、現在、FOV外部にある前に撮像された物体との間の距離を特定するようにプロセッサ4102に命令することができる。
幾つかの実施形態では、プロセッサ4102は、MRI画像、X線画像、手術テンプレート又はガイドライン、術前画像等の代替モダリティ視覚化からのデジタル画像又はモードと融合するために、物体の座標を使用し得る。一例にプロセッサ4102は、座標面における物体のロケーション及び深度情報を使用して、代替モダリティ視覚化を適宜スケーリング、向き決め、且つ位置決めするように構成される。プロセッサ4102は、表示される立体画像に同一の特徴(例えば、物体)を有する代替モダリティ視覚化の少なくとも一部を選択し得る。例えば、プロセッサ4102は、画像分析ルーチンを使用して、立体画像において血管パターン、傷、変形、又は他の見ることができる物理的な構造若しくは物体を見つけ得る。プロセッサ4102は次に、代替モダリティ視覚化において同一の特徴を見つけ得る。プロセッサ4102は、同一の特徴を含む代替モダリティ視覚化の一部を選択する。プロセッサ4102は次に、立体画像における座標、深度、及び/又は特徴間の距離を、代替モダリティ視覚化の選択された部分のスケーリング、回転、及び/又は向き決めに使用し得る。プロセッサは次に、代替モダリティ視覚化の調整された部分を立体画像と融合し得る。プロセッサ4102は、識別可能な物体が互いに対して及び/又はFOVに対していかに移動するかを追跡し、それに従って融合画像をいかに更新すべきかを決定し得る。例えば、別の手術ロケーションへのカメラ300の移動は、プロセッサ4102に、その別の手術ロケーションの立体画像との融合に術前画像の別の部分を選択させ得る。
幾つかの場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506を移動させて、FOV内の物体の移動を追跡させ得る。プロセッサ4102は、物体の座標位置を使用して、移動又は暗化(obfuscation)を検出する。移動又は暗化の検出に応答して、プロセッサ4102及び/又はロボットアームコントローラ4106は、物体の移動を追跡し、又は暗化を解消するために、ロボットアーム506及び/又は結合板3304がいかに移動すべきかを決定するように構成される。例えば、プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506を円形路で移動させて、複数の方向から患者の網膜上の点を視覚化して、器具からの反射又は暗化を回避し得る。
4.画像融合の実施形態
上述したように、プロセッサ4102は、代替モダリティからの画像をライブ立体画像に融合するように構成される。例えば、外科医は、深い脳腫瘍を有する患者に対して手術を行っている場合、プロセッサ4102が、ディスプレイモニタ512へのカメラ300からのライブ画像として、適切なロケーション、適切な深度、且つ立体視点における脳腫瘍のMRI画像を視覚化するように命令することができる。幾つかの実施形態では、プロセッサ4102は、FOV内の1つ又は複数の物体の距離及び/又は深度測定情報を代替モダリティビューとの融合に使用するように構成される。プロセッサ4102はまた、図42に関連して考察した較正ステップで計算され、1つ又は複数のLUTに記憶された立体光軸(例えば、ビューベクトル)、IPD、及び/又はカメラモデルパラメータを使用して撮像融合を提供することもできる。光学較正パラメータの使用により、プロセッサ4102は、まるで画像が立体視覚化カメラ300により取得されたかのように代替モダリティ画像を表示することができる。プロセッサ4102は、カメラの光学較正パラメータを使用して、カメラ300の適用される作業距離及び倍率を所与として、代替モダリティ画像が手術部位における焦点から距離Zにおいて見られるように、カメラ300の有効IPDに基づいて代替モダリティ画像をモデリング、スケーリング、又は変更し得る。
図52は、本開示の実施形態例による、代替モダリティ視覚化からの画像を立体画像と融合する一例の手順5200の図を示す。手順5200について図52に示される流れ図を参照して説明するが、手順5200に関連するステップを実行する多くの他の方法が使用可能なことを理解されたい。例えば、ブロックの多くの順序は変更し得、特定のブロックは他のブロックと結合し得、記載されるブロックの多くは任意選択的なものである。さらに、手順5200に記載される動作は、例えば、図14の一例の立体視覚化カメラ300の光学要素1402、画像捕捉モジュール1404、モータ及び照明モジュール1406、情報プロセッサモジュール1408、及び/又はジョイントR1〜R9、及び図41のロボットアームコントローラ4106を含め、複数のデバイスの間で実行し得る。例えば、手順5200は、プロセッサ4102のメモリ1570に記憶されたプログラムにより実行し得る。
手順5200の一例のプロセッサ4102は、光学較正パラメータを使用して、例えば、前に生成された患者の三次元MRIデータをカメラ300により記録された立体画像として適切な視点を有する立体画像としてレンダリングするように構成される。プロセッサ4102は、例えば、図41のデバイス4104からMRIデータ等の代替モダリティ視覚化を受信し得る(ブロック5202)。プロセッサ5202はまた、入力デバイス1410を介して、代替モダリティ視覚化を立体視覚化カメラ300により記録された立体画像と融合すべきであることを示す入力5203を受信することもできる(ブロック5204)。
手順5200中、外科医がカメラ300を所望の向きで外科処置の位置に位置決めした場合、姿勢データ5205がプロセッサ4102により取得される(ブロック5206)。姿勢データ5201は、ロボットアーム506、結合板3304、及び/又は立体視覚化カメラ300の位置を含み得る。プロセッサ4102はまた、図42のLUT4203つ等の1つ又は複数のLUTから、カメラ300に関連する倍率及び作業距離光学較正パラメータ5207にアクセスする(ブロック5208)。プロセッサ4102は、姿勢データ5205を倍率及び作業距離光学較正パラメータ5207と併せて使用して、カメラ300の立体軸及びIPDを決定する(ブロック5210)。プロセッサ4102は、姿勢データ、立体軸データ、IPDデータ、及び/又は光学較正パラメータを適用して、MRIデータの少なくとも一部を選択し、且つ/又は選択された部分が立体視覚化カメラ300により見られたものとして患者の脳のビューの視点で提供されるようにMRIデータの選択された部分を変更、スケーリング、向き決め、分割等する(ブロック5212)。プロセッサ4102は、立体光軸ビューベクトル及びIPDを適用して、MRIデータの選択された部分をカメラ300の現在ライブビューに対応する立体画像にレンダリングする(ブロック5114)ように構成される。プロセッサ4102は次に、本明細書で考察されるように、立体MRI画像をカメラ300からのライブ立体画像と融合し得る(ブロック5216)。
上述したように、プロセッサ4102は、レンダリングされたMRIデータの位置決め又は立体視覚化カメラ300からの立体画像との融合に物体又は特徴を使用し得る。例えば、プロセッサ4102は、1つ又は複数の画像分析ルーチンを使用して、立体画像における別個の特徴又は物体を識別し、レンダリングされた立体MRIデータにおいて同じ別個の特徴を見つけ、特徴又は物体が位置合わせされ、同じ縮尺、サイズ、深度、向き等を有するように、レンダリングされた立体MRIデータをカメラ立体画像の適切な部分に重ね得る。プロセッサ4102は、レンダリングされた立体MRIデータを少なくとも部分的に透明にして、ライブ画像も見られるようにし得る。追加又は代替として、プロセッサ4102は、レンダリングされた立体MRIデータの境界において陰影を調整して、レンダリングされた立体MRIデータとカメラ立体画像との間の視覚的コントラストを低減し得る。次に、図52の一例の手順5200は終了し得る。
一例の手順5200は、カメラ300の立体画像に相対して正確なロケーションに外科医が脳腫瘍を視覚化できるようにする。外科医は、外科処置を通して特に部分的にこの融合視覚化を使用し得る。例えば、外科医は、現在レベルの切開下の「x線ビジョン」として最もよく説明されるように、まだ露出されていない腫瘍を見ることができる。ライブ又はレンダリングされた立体MRI画像の透明度の制御は、融合画像の明確さを最適化するように入力デバイス1410を介して調整し得る。それに従って一例の手順は、より安全でより正確且つ効率的な腫瘍の切除を可能にする。
幾つかの実施形態では、FOV、焦点、作業距離、及び/又は倍率が変わった場合、手順5200を繰り返し得る。これらの実施形態では、プロセッサ4102は、更新された姿勢情報を使用し、ルックアップテーブルから対応する立体軸及びIPDを抽出して、MRIデータを更新された正確な立体画像に再レンダリングするように構成される。プロセッサ4102は、ライブビュー及び対応するMRIデータが適切な位置、深度、及び向きに配置されるように、新たにレンダリングされたMRIデータを現在の立体画像に融合するよう構成される。
幾つかの実施形態では、一例のプロセッサ4102は、立体視覚化カメラ300、ロボットアーム506、及び/又は結合板3304と共に動作して、ライブ断面融合視覚化を生成するように構成される。手術部位の断面視覚化は、他の方法では利用可能ではない大きく改善された視点を外科医に提供する。図53は、患者の頭部内部を仮想線で示す膠芽細胞腫5302を有する患者5300の図を示す。特に、膠芽細胞腫5302は、患者の脳5304内にあることがあり、明るい仮想線で示される。図53の図は、例えば、MRIデバイスからの術前診断画像に典型的なものであり、多くの画像スライスが積層され、患者の頭蓋5306の内部の3Dモデルがレンダリングされ視覚化される。
図示の例では、脳手術を通して膠芽細胞腫5302を除去すべきである。図54は、頭蓋5306へのアクセスを提供するために開頭処置5400を受けている患者5300の斜視図の図を示す。手順5400は、手術機器5402を使用した脳切除及び牽引も含む。一般に、手術アクセス部位5404は、膠芽細胞腫5302にアクセスするために深い円錐形に作られる。
図55は、本開示の実施形態例による、立体視覚化カメラ300及びロボットアーム506を含み、開頭処置5400を視覚化する立体視覚化プラットフォーム516の図を示す。示されるように、開頭処置5400は、ロボットアーム506が、頭蓋5306の上部を通して円錐手術部位5404の視覚化軸5500に沿って立体視覚化カメラ300を照準付けるように位置決めされるよう準備される。手術を行っている外科医のビューは一般に、図57に示されるように、頭蓋506の上部を通してである。図7から理解することができるように、手術の深度及び例えば手術機器5402の先端部は見ることが難しい。
図55に示される一例の立体視覚化カメラ300は、円錐手術アクセス部位の軸5500を下に見た高精度立体画像を提供する。上述したように、アクセス部位において両ビューに共通する全ての点でカメラ300の左ビューと右ビューとの間の視差情報がプロセッサ4102により使用されて、例えば、物体面等の既知の基準深度からの各点の深度を特定する。図示の例では、左ビューと右ビューとの間の視差は値「0」に等しく、それにより、プロセッサ4102は画像における各点の深度マップを特定することができる。深度マップは、まるでマップが異なる角度から見られたかのようにプロセッサ4102により再レンダリングすることができる。さらに、プロセッサ4102は、外科医及び/又はオペレータからの命令を受信すると、深度マップの少なくとも一部を透明にするように構成される。図示の例では、図57の断平面AA下の深度マップの一部は、プロセッサ4102により透明にすることができ、それにより、プロセッサ4102がライブ手術アクセス部位5404の断面図を生成できるようにする。
図56は、円錐形手術アクセス部位5404の局部透視図の図を示す。図示の手術アクセス部位5404は、この考察で明確にするために、段付き円錐セグメントを含む。この例では、部位5404の掃引円錐角は角度「α」で示されている。
図58は、開頭処置5400の円錐形手術アクセス部位5404の図を示す。手術機器5402のサイズ及び形状の事前知識は、その位置、方向、及び/又は向きの画像認識と共に、プロセッサ4102が図58に示される断面図で画像データを生成できるようにする。図57に表される立体ビューにおける機器5402の認識により、図58の断面図における精密な配置及び例えば、患者の脳5304の手術中、外科医には見えない機器の下側の視覚化が可能になる。
幾つかの実施形態では、プロセッサ4102は、膠芽細胞腫5302の画像を準ライブ又はライブ立体画像と融合するように構成される。上述したように、ロボットアーム506とカメラ300との組合せは、ロボット基準系又はロボット空間に対するビューの高精度の位置、方向、及び/又は向き情報を提供する。ロボットアーム506及びカメラ300を患者5300の基準系に見当合わせ又は較正した後、手術アクセス部位5404の正確な位置、方向、及び/又は向き情報及び患者に対するそれぞれの位置がプロセッサ4102により生成される。図59に示されるように、プロセッサ4102は画像融合を使用して、膠芽細胞腫5302のMRI画像の選択部分を断面ビューに重ねる。加えて、画像融合は、例えば、脳脈管又は画像への方眼が望まれる他の構造を含む他の関連するMRI画像の視覚化を可能にする。例示的な外科処置は、外科医が、機器5402の安全なスペーシング及びポジショニングに加えて、膠芽細胞腫5302の深度ロケーションを見て理解することができる状態で進められる。
図59は、手術アクセス部位5404の断面図の図を示す。この例では、膠芽細胞腫5302の一部5302’は立体視覚化カメラ300から見える。図60は、図57の平面AAに直交する断面ビューの図を示す。図は、手術アクセス部位5404のライブビューと融合されたMRIデータに基づいて、プロセッサ4102により生成された断面ビューを示し得る。プロセッサ4102による深度マップの使用により、図61に示されるように、種々の所望の断平面及び断平面の組合せでの手術アクセス部位5404のレンダリングが可能になる。レンダリングにより、プロセッサ4102は、可視部分5402’及びMRIデータからの残りの部分を含む完全な膠芽細胞腫5302を表示することができる。プロセッサ4102は、カメラ300の視点から又は図61に示されるように、断面ビューとして視覚化を表示し得る。
5.視覚化が連合したロボット運動の実施形態
幾つかの実施形態では、一例のプロセッサ4102は、ロボットアームコントローラ4106、立体視覚化カメラ300、ロボットアーム506、及び/又は結合板3304と関連して動作して、視覚化をロボット運動と連合させる。幾つかの例では、プロセッサ4012及び/又はロボットアームコントローラ4106は閉ループで動作して、ロボット運動に基づいて連合視覚化を提供する。これらの例では、プロセッサ4012及び/又はロボットアームコントローラ4106は、特定の画像及びその内容(例えば、物体、識別可能な特徴等)に基づいて手術部位の視覚化に向けてロボットアーム506、結合板3304、及び/又はカメラ300を位置決めするように構成される。上述したように、ロボットアーム506及びカメラ300の位置は、プロセッサ4012及び/又はロボットアームコントローラ4106に既知である。加えて、カメラにより記録された画像データは立体であり、深度データを提供する。その結果、プロセッサ4012及び/又はロボットアームコントローラ4106は、あらゆる視覚化点の患者又はロボット三次元空間内のロケーションを特定することができる。したがって、ロボットアーム506がカメラ300を所望の方向に、初期画像を有する初期位置から移動させると、所望の画像変化が第2の移動後の画像で見られることが予期される。
代替的には、予期される移動後画像は、所望の移動を表す式を初期画像データに適用するように構成されたプロセッサ4102及び/又はロボットアームコントローラ4106により較正することができ、それにより、計算された第2の画像が生成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、上述したように、テンプレート照合ルーチン又は関数を使用して移動後の実際の画像を計算された画像と比較する。誤差が検出される場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506及び/又はカメラ300をそれに従って動かすことにより誤差を補正することができる。例えば、初期画像及びオペレータから受信される所望の移動「100ピクセル右へ」を所与として、理論的に移動した画像の画像データは、プロセッサ4102及び/又はロボットアームコントローラ4106による100ピクセルの右シフトとして計算することができる。次に、開示されたように、種々の調整されたロボットジョイントへのコマンドを実行して、ロボットアーム506及び/又はカメラ300を理論上の望ましい位置に再配置することにより、物理的な移動が行われる。第2の画像がカメラ300により記録され、プロセッサ4102及び/又はロボットアームコントローラ4106により、例えば、テンプレート照合関数又はその均等物を使用して計算された画像データと比較される。移動が正確な場合、データはカメラ300の先端部において100%相関を示し、両画像は完全に位置合わせされる。しかしながら、実際の画像データが別のロケーション、例えば、101ピクセル右及び5ピクセル上に最良の相関を示す場合、プロセッサ4102及び/又はロボットアームコントローラ4106により移動を変更して、ロボットアーム506を介してカメラ300を1ピクセル左及び5ピクセル下に物理的に移動させることにより誤差を補正することができる。
6.垂れ下がり補償の実施形態
幾つかの実施形態では、ロボットアーム506及び/又は結合板3304のジョイントR1〜R9の少なくとも幾つかは、幾らかの垂れ下がりを受け得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム垂れ下がりの補正を提供するように構成し得る。幾つかの場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、運動精度がロボットアーム506の運動範囲にわたり保たれるように、一連の小さな動きで垂れ下がり補償を実行するよう構成される。例えば、垂れ下がりを特徴付けなくすために、垂れ下がり補償は、特定のロボットジョイントを運動させる運動方向において実行されて、実際のロボットジョイント回転位置の関数として誤差を分離する。カメラ300の負荷重量をモーメントアーム(又はリンク)長で乗算することにより計算されるトルクモーメントと誤差を比較することにより、そのジョイントのコンプライアンスを特定することができる。代替的には、ジョイントコンプライアンスは、分析技法例えば、有限要素解析(「FEA」)を使用して計算し得る。
上記コンプライアンス特徴付けを全ての回転位置における全てのジョイントについて使用し記憶して、プロセッサ4102及び/又はロボットアームコントローラ4106は、特定のカメラ位置での全体垂れ下がりを計算し得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、LUT及び/又は較正レジスタへの各カメラ位置の垂れ下がり補正係数を特定し得る。さらに、プロセッサ4102及び/又はロボットアームコントローラ4106は、垂れ下がり補正が移動コマンド/信号に組み込まれるように、垂れ下がり係数をロボットアーム移動コマンド又は移動シーケンス(スケーリング係数の適用前又は適用後)に適用し得る。補正係数は、進行中の運動手順で計算し得、それにより、カメラ300の正確な追跡及び追従を可能にする。この補正係数は更に、立体視覚化プラットフォーム516の較正/位置決めのための第2のカメラの必要性をなくし、カメラ300に基準ターゲットを有する必要性をなくし、ひいてはドレープインターフェースの問題をなくす。
7.視覚化位置/向きの保存の実施形態
幾つかの実施形態では、一例のプロセッサ4102は、立体視覚化カメラ300の特定の向き及び/又は位置に戻るために、視覚化パラメータを保存するように構成される。視覚化パラメータは、立体視覚化カメラ300、ロボットアーム506、及び/又は結合板3304のビューベクトル、ロケーション、倍率、作業距離、フォーカス、位置、及び/又は向きを含み得る。
一例では、外科医は、可視照明下で血管の一部の吻合中、小さな構造の高倍率視覚化を望むことがある。外科医は次に、開存性をチェックするために、赤外線照明下で血管全体のより広いビューにズームアウトしたいことがある。外科医は次に、縫合を完了するために、拡大視覚化に戻り得る。この例では、プロセッサ4102は、各位置の視覚化パラメータを保存するように構成される。プロセッサ4102は、2秒、5秒、30秒等の時間期間にわたり連続して見られたロケーションに対応する位置を記憶し得る。プロセッサ4102はまた、入力デバイス1410を介した外科医からの命令を受信した後、位置を記憶することもできる。
プロセッサ4102は、記憶したロケーション及び/又はウェイポイントのリストを表示し得る。記憶されたロケーションを選択すると、プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム及び/又は結合板3304を前のロケーションに移動させ、前に設定されたように、光照明及びフィルタリングを含め、光学パラメータを調整する。そのような構成により、外科医は、処置の表示された画像から目を離さずに又は手及び機器を部位から移動させずに、記憶された全てのロケーションを連続してシームレスに見ることができる。
幾つかの実施形態では、プロセッサ4102は、外科処置前、オペレータがウェイポイント又は位置/向きを作成できるようにするよう構成し得る。ウェイポイントはシーケンスで提供し得、それにより、プロセッサ4102は、処置中、オペレータから進む入力を受信した後、指定されたウェイポイントを通って進むことができる。プロセッサ4102は、タッチスクリーン入力デバイス1410aを介してロボットアーム506、結合板3304、及び/又はカメラ300の三次元表現を提供して、オペレータが立体視覚化プラットフォーム516を仮想的に位置決めできるようにし得る。これは、倍率、作業距離、及び/又はフォーカスを仮想化された患者に関連して且つ/又は患者の代替モダリティ視覚化に基づいて提供することを含み得る。プロセッサ4102は、視覚化パラメータを例えばメモリ1570及び/又は各ウェイポイントのメモリ4120に記憶するように構成される。
幾つかの実施形態では、プロセッサ4102は、特定の処置に固有の特定の視覚化を実行するように構成される。例えば、プロセッサ4102における画像認識機能を使用して、カメラ300を対象物体と自動的に位置合わせする。手術部幾つかの画像はプロセッサ4102により前の画像又は標的物体の画像と比較されて、立体画像内の所望の物体並びにその位置及び向きの認識を提供する。プロセッサ4102及び/又はロボットアームコントローラ4106は、例えば、ロボットアーム506を物体に向けて移動させ、物体に向けてカメラ300をズームさせ、特定の物体及び処置に所望の画像ビュー属性を設定するように構成される。例えば、眼科では、例えば、患者の網膜の視神経頭を画像認識から見つけることができるように、ライブ網膜画像を保存された画像と比較することができる。プロセッサ4102及び/又はロボットアームコントローラ4106は次に、ロボットアーム506及び/又は結合板3304を自動的に移動させ、カメラ300の先端部が診断する視神経頭を指すようにカメラ300をフォーカスし、且つ/又はカメラ300の倍率を変更する。プロセッサ4102は次に、カメラ300及び/又はモニタ512を赤変なしの画像表示に向けて設定し得、網膜の特徴を周囲組織からより容易に区別できるようにする。
記憶された視覚化の保存及び記憶された視覚化へのリターンに加えて、あるビューから別のビューへの運動パスも一例のプロセッサにより保存することができる。上述した吻合例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506及び/又はカメラ300に高倍率下で血管の全長を辿らせ、動脈瘤又は他の状況をチェックし得る。プロセッサ4102は、所望のように連続脈管を認識し辿るように構成し得る。プロセッサ4102は、テンプレート照合ルーチンを限られた組のピクセルに対して実行して、ロボットアーム506及び/又はカメラ300の運動方向を能動的に決定し得る。
一例のプロセッサ4102はまた、異なる視角からなされた物体の視覚化内の運津パスをプログラムし記憶することもできる。例えば、患者の目の眼科隅角検査は、眼内の点の回りを旋回するようにプロセッサ4102及び/又はロボットアームコントローラ4106をプログラムすることにより実行することができる。この例では、ロボットアーム506は、患者の目が多くの視角から見えるように一般的に円錐運動でカメラ300を掃引する。手術部位視覚化のそのような運動は、照明からの疑似反射を除外するか、又は代替視角で障害物周囲を見るのに最良の角度を選択するのに使用することができる。
幾つかの実施形態では、プロセッサ4102は、深度マップ計算において遮蔽を低減するように構成される。遮蔽は、第1のビューが他方のビューとは異なる幾らかの部分を見る、立体画像の2つのビューの視差に起因して深度マップ計算に固有である。その結果、各ビューは他のビューの幾らかの部分を見ない。ロボットアーム506を種々の配置間で移動させ、画像ピクセルの三次元ロケーションの知識を使用しながら深度マップを再計算することにより、遮蔽が低減する。深度マップは、既知の運動ステップが実行された後、予期されたマップ変更が計算された後、誤差が差により特定された後、及び平均マップが構築された後、マップを反復的に計算することにより深度マップをより正確にし得る。
E.補助付き駆動の実施形態
幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、メモリ1570及び/又は4120に記憶された命令により定義される1つ又は複数のアルゴリズム、ルーチン等を実行して、立体視覚化カメラ300を動かすためにオペレータにより与えられた、検出された力に基づいて、ロボットアーム506及び/又は結合板3304が電動ジョイント移動を提供できるようにするよう構成される。これらの実施形態では、補助付き駆動特徴は、立体視覚化カメラ300を所望のロケーション及び/又は向きに移動させることにより、ロボットアーム506を外科医の延長として動作できるようにする。後述するように、プロセッサ4102及び/又はロボットアームコントローラ4106は、オペレータにより付与される力/トルク/移動及びアームジョイントの位置をモニタして、オペレータの意図を推測し、それに従ってロボットアーム506及び/又は結合板3304を移動させるように構成される。
図62は、本開示の実施形態例による、立体視覚化カメラ300の補助付き駆動を提供するアルゴリズム、ルーチン、又は手順6200を示す図を示す。手順6200について図62に示される流れ図を参照して説明するが、手順6200に関連するステップを実行する多くの他の方法が使用可能なことを理解されたい。例えば、ブロックの多くの順序は変更し得、特定のブロックは他のブロックと結合し得、記載されるブロックの多くは任意選択的なものである。さらに、手順6200に記載される動作は、例えば、図14の一例の立体視覚化カメラ300の情報プロセッサモジュール1408及び/又は図41のジョイントR1〜R9及びロボットアームコントローラ4106を含め、複数のデバイス間で実行し得る。幾つかの例では、手順6200は、ロボットアームコントローラ4106のメモリ4120に記憶されたプログラムにより実行し得る。一例の手順6200は、フォーカスがカメラ300に適用される際、定期的に実行し得る。例えば、手順6200は、1(「ms」)、5ms、8ms、20ms、50ms等であり得るあらゆる更新サイクルで力/トルクデータをサンプリングし得る。
図示の実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、オペレータによりカメラ300に付与された力に関連する力/トルク出力データ6201をセンサ3306から受信する。プロセッサ4102及び/又はロボットアームコントローラ4106は、受信した出力データ6201をフィルタリングする(ブロック6202)ように構成される。出力データは力及び/又はトルクベクトルを含み得る。フィルタリングは、第1のローパスフィルタ、第2のローパスフィルタ、及び/又はカートの振動をターゲットとしたノッチフィルタを適用することを含み得る。他の例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、1つのローパスフィルタ及びノッチフィルタを使用し得る。
一例のプロセッサ4102及び/又はロボットアームコントローラ4106はまた、ロボットアーム506及び/又は結合板3304における1つ又は複数のジョイントセンサからジョイント位置データ6203も受信する。プロセッサ4102及び/又はロボットアームコントローラ4106は、ジョイント位置データ6203を使用して、フィルタリングされた力/トルク出力データの補償を提供する(ブロック6204)。補償は、重力補償及び/又は力付与点補償を含み得る。重力補償の場合、地球の重力の影響がフィルタリングされたデータがから除去される。力付与点補償の場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ300(例えば、制御アーム304)に力が付与された点に基づいてフィルタリングされたデータ(及び/又は重力補償されたデータ)に補償を提供する。図35に関連して上述したように、センサ3306は、制御アーム304からある角度であるオフセット距離だけ離れて配置される。オフセット距離及び角度は、制御アーム304に付与された力を、センサ3306で検出される際、方向及び角度だけわずかにシフトさせる。力付与補償は、まるで力が制御アーム304ではなくセンサ3306に直接付与されたかのように力値を調整する。力付与補償は、センサ3306と制御アーム304との間の既知の角度及び/又は距離に基づいて予め決定し得る。重力補償及び力付与点補償は一緒になって、フィルタリングされた力/トルクデータを変更し、オペレータがカメラの制御アーム304に提供した力/トルクに比例する力/トルクベクトルを生成する。
一例のプロセッサ4102及び/又はロボットアームコントローラ4106はまた、補償されフィルタリングされた力/トルク出力データと併せてジョイント位置データ6203を使用して、力/トルク系からグローバル系又はロボット空間への座標変換も実行する(ブロック6206)。変換は、既知のロボット空間及びセンサ3306の向きに基づく1つ又は複数の予め定義される式及び関係を含み得る。一例のプロセッサ4102及び/又はロボットアームコントローラ4106はまた、ジョイント位置データ6203を使用して、立体視覚化カメラ300のカメラ系とグローバル系又はロボット空間との間の座標変換も実行する(ブロック6208)。カメラ系の座標変換は、上述したように、ロボットアーム506のロボット空間にマッピングされた光学較正パラメータに基づき得る。
座標変換を実行した後、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、少なくとも1つのシグモイド関数を使用して力/トルクベクトルを1つ又は複数の並進/回転ベクトルに変換するように構成される(ブロック6210)。並進/回転ベクトルの作成は、オペレータの意図する方向の推測を生成する。並進及び回転情報は、オペレータの意図する移動をミラーリング、一致、且つ/又は近似するためにロボットアーム506のジョイントをいかに回転させるべきかの判断に使用される。
幾つかの例では、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、ロボット速度スケーリングを並進/回転ベクトルに適用する(ブロック6212)ように構成される。速度スケーリングは、例えば、ロボットアーム506の動作状況に基づき得る。例えば、速度スケーリングは、例えば、外科処置が開始されると、アームが手術室スタッフ、機器、及び/又は患者に比較的高速で非意図的に当たることを防ぐために、基づいて適用し得る。処置がまだ開始されていない場合、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、患者が存在しないとき、ロボットアーム506の較正又は設定により小さな速度スケーリングを提供し得る。
一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、スケーリングされた並進/回転ベクトルに基づいてロボットアーム506のジョイントの潜在的な移動シーケンスを決定する。可能なシーケンスを評価しながら、プロセッサ4102及び/又はロボットアームコントローラ4106は、回避するジョイント特異点を識別し、それにより、ロボットアーム506の対応する移動動作を除外する(ブロック6214)。上述したように、特異点は、エルボロック又はヒステリシス及びバックラッシュを受けやすい可能性がある他の位置を含み得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、例えば、ヤコビアン運動学(例えば、ヤコビアン行列の逆)を使用して移動特異点がなくなった後、移動シーケンスを選択する(ブロック6216)ように構成される。ヤコビアン運動学の式は、スケーリングされた並進/回転ベクトルに基づいて、ロボットアーム506及び/又は結合板506の特定のジョイントをいかに移動させるべきかを定義する。ヤコビアン運動学は速度制御を提供し、一方、後述する逆運動学は位置制御を提供する。幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は代わりに逆運動学又は他のロボットアーム制御ルーチンを使用し得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム及び/又は結合板3304の特定のジョイントを調整された様式でいかに移動させるべきかを指定し、例えば、ジョイント回転速度、ジョイント回転方向、及び/又はジョイント回転持続時間を指定する移動シーケンスを決定する。移動シーケンスはまた、ロボットアーム506及び/又は結合板3304のジョイントを回転すべきシーケンスを指定することもできる。ロボットアーム及び/又は結合板3304の任意のジョイントR1〜R9は移動シーケンスに応じて、個々に回転してもよく、又は重複した移動を有してもよい。
移動シーケンスが決定された後、プロセッサ4102及び/又はロボットアームコントローラ4106は、ジョイント速度スケーリング及び/又は許可胃を使用して衝突回避を実行するように構成される。例えば、プロセッサ4102及び/又はロボットアームコントローラ4106は、移動シーケンスがロボットアーム506及び/又は結合板3304の1つ又は複数のジョイント及び/又はリンクを境界又は患者若しくは機器の周囲の空間等の他の画定されたデカルト限界に近づけるか否かを判断するように構成される。図49に関連して上述したように、プロセッサ4102及び/又はロボットアームコントローラ4106は、移動シーケンスからのロボット空間におけるリンク及び/又はジョイントの位置の推定を1つ又は複数の定義された境界及び/又は角度限界と比較し得る。境界からの距離に基づいて、プロセッサ4102及び/又はロボットアームコントローラ4106は、スケーリング値を介して1つ又は複数のジョイント速度限界を適用する(ブロック6218)。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、例えば、ロボットアーム506のリンクが互いに当たらないようにし、且つ/又はロボットアーム506、結合板3304、及び/又はカメラ300が境界を越えないようにする1つ又は複数のジョイント位置限界を適用する(ブロック6220)こともできる。位置限界直前のロケーション(例えば、位置限界の1センチメートル(「cm」)前、2cm前、10cm前等)及び/又は位置限界のロケーションは、スケーリング係数の値が「0」であるデカルトロボット空間におけるロケーションに対応し得る。
幾つかの例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、式への入力として提供される境界を用いてヤコビアン運動学を実行し得、境界に近いエリアを通る移動にはより高い費用係数が提供される。境界費用係数の使用により、プロセッサ4102及び/又はロボットアームコントローラ4106は、移動シーケンスを決定する際、可能であれば、境界に近いロケーションを避けることができる。費用係数は、ロボット空間における特定のロケーションに関連するスケーリング係数の低減への反比例を含み得る。1つのスケーリング係数を各ジョイント/リンクに適用してもよく、又は別個のスケーリング係数がロボット空間内の同じロケーションの各ジョイントに存在してもよい。
衝突回避を提供した後、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506の比較的高速の反転の補正を提供する(ブロック6222)ように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、ゼロ位相遅延アルゴリズムを実施して、1つ又は複数のジョイントに回転方向を素早く変更させる指向性衝撃を拒絶し得る。ゼロ位相遅延アルゴリズムは、例えば、オペレータが方向を逆にする速度が速すぎる場合、ロボットアームが逆戻り又は揺動しないようにするフィルタにより実施し得る。
図62に示されるように、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、移動シーケンスのコマンドに確認する(ブロック6224)ように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106は、コマンドに確認して、コマンド(又はコマンドを示す信号)がジョイントモータの動作パラメータ(例えば、持続時間、回転速度等)以内にあることを保証し得る。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、コマンドを現在閾値と比較することによりコマンドに確認して、移動シーケンスのいかなるフェーズ中でもロボットアーム506が過剰な電流を消費しないことを保証することもできる。
一例のプロセッサ4102及び/又はロボットアームコントローラ4106はまた、1つ又は複数のアンチノイズフィルタを移動コマンド又は移動コマンドを示す信号に適用することもできる(ブロック6226)。フィルタは、ジョイントモータに過渡信号を誘導し得る高周波ノイズ成分を除去する高周波ローパスフィルタを含み得る。任意のフィルタリング後、プロセッサ4102及び/又はロボットアームコントローラ4106は、移動シーケンスに従って、1つ又は複数の信号又はメッセージを介して1つ又は複数のコマンドをロボットアーム及び/又は結合板3304の適切なジョイントモータに送信する(ブロック6228)。送信されたコマンドは、各ジョイントにおけるモータにロボットアーム506及び/又は結合板3304を移動させ、それにより、カメラ300をオペレータにより意図されるように移動させる。一例の手順6200は、オペレータが力をカメラ300に付与する限り、繰り返し得る。
図63は、本開示の実施形態例による、入力デバイス1410を介して一例の視覚化カメラ300を移動刺せる一例の手順6300の図を示す。一連の手順6300は図62の手順6200と略同一であるが、センサ3306に関連するブロック6202〜6206は削除されている。図示の例では、制御入力6301は、制御アーム304飢えのボタン、フットペダル、ジョイスティック、タッチスクリーンインターフェース等の入力デバイス1410から受信される。制御入力6301は、ロボットアーム506のデカルトロボット空間内のカメラの指向性移動を示す。
図63に示されるように、制御入力6301は、ロボットアーム506及び/又は結合板3304における1つ又は複数のジョイントセンサからのジョイント位置データ6203と結合されて、カメラ系からグローバル系及び/又はロボット空間への座標変換を実行する(ブロック6208)。一例の手順6300は次に、手順6200に関して考察したのと同じように続く。プロセッサ4102及び/又はロボットアームコントローラ4106はそれに従って、入力デバイス1410から受信した制御入力6301に基づいてロボットアーム506、結合板3304、及び/又はカメラ300を所望のロケーション及び/又は向きに移動させる。
F.標的ロック実施形態
幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、メモリ1570及び/又は4120に記憶された命令により定義される1つ又は複数のアルゴリズム、ルーチン等を実行して、ロボットアーム506及び/又は結合板3304が標的ロック特徴を提供できるようにするよう構成される。これらの実施形態では、標的ロック特徴は、標的手術部位にロックしながら、立体視覚化カメラ300を再び向けられるようにすることにより、ロボットアーム506が外科医の延長として動作できるようにする。後述するように、プロセッサ4102及び/又はロボットアームコントローラ4106は、オペレータにより付与される力/トルク/移動及びアームジョイントの位置をモニタして、オペレータの意図を推測し、それに従って、カメラ300の焦点がロック又は静止したままであるようにロボットアーム506及び/又は結合板3304を再び向けるように構成される。
標的ロック特徴は、全ての運動を仮想球の表面に制約させることにより、カメラ300を再び向けられるようにする。カメラ300の先端部は、仮想球の外面(例えば、仮想球の上半球)に配置され、カメラ300の焦点又は標的手術部位は仮想球の中心を構成する。一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ300を球の中心に向けた状態を維持し、それにより、移動中、標的手術部位にピントが合った状態を維持しながら、オペレータがカメラ300を仮想球の外面にわたり移動させられるようにする。標的ロック特徴は、オペレータが同じ標的部位の大きく異なるビューを容易に素早く取得できるようにする。
図64は、本開示の実施形態例による、立体視覚化カメラ300に標的ロックを提供するアルゴリズム、ルーチン、又は手順6400を示す図を示す。手順6400について図64に示される流れ図を参照して説明するが、手順6400に関連するステップを実行する多くの他の方法が使用可能なことを理解されたい。例えば、ブロックの多くの順序は変更し得、特定のブロックは他のブロックと結合し得、記載されるブロックの多くは任意選択的なものである。さらに、手順6400に記載される動作は、例えば、図14の一例の立体視覚化カメラ300の情報プロセッサモジュール1408及び/又は図41のジョイントR1〜R9及びロボットアームコントローラ4106を含め、複数のデバイス間で実行し得る。幾つかの例では、手順6400は、ロボットアームコントローラ4106のメモリ4120に記憶されたプログラムにより実行し得る。
一例の手順6400は補助付き駆動手順6200と同様である。しかしながら、手順6400は、カメラ300の焦点を維持するためのジョイント位置のコマンドを提供し、一方、一例の手順6200はジョイント速度の計算を提供する。一例の手順6400は、オペレータにより入力された所望の力/移動ベクトルを特定し、ロボットアーム506及び/又は結合板3304の1つ又は複数のジョイントがカメラ300を再び向けるように移動する間、カメラ300の焦点が静止したままであるように回転変換を計算する。カメラ300を再び向けることにより、標的手術部位を異なる角度から撮像することが可能になる。再び向けることは、第1のビューパスが、例えば、機器により塞がれ、外科医が現在の焦点の維持を望む場合、必要であり得る。
一例の手順6400は、オペレータが入力デバイス1410上の標的ロックボタンを選択した場合、開始され、標的ロックボタンの選択により、命令メッセージ又は信号がプロセッサ4102及び/又はロボットアームコントローラ4106に送信される。メッセージを受信した後、プロセッサ4102及び/又はロボットアームコントローラ4106は標的ロックモードで動作し、このモードでは、オペレータがカメラ300の向きを変更できるようにしながら、作業距離及び/又は焦点は静止したまま保持され、オペレータによるカメラ300の向き変更は、ロボットアーム及び/又は結合板3304の1つ又は複数のジョイントに補助付き移動を提供させる。命令が受信されると、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、現在の作業距離、倍率、力、及び/又はカメラ300の他の光学パラメータを記録し得る。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、FOVの現在の画像を記録することもできる。
手順6400が開始された後、プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ300のオペレータにより付与された力に関連する力/トルク出力データ6201をセンサ3306から受信する。図62に関連して考察したように、プロセッサ4102及び/又はロボットアームコントローラ4106は、データ6102をフィルタリングし、重力/力付与補償を提供する(ブロック6202及び6204)。また図62と同様に、プロセッサ4102及び/又はロボットアームコントローラ4106は、ジョイント位置データ6203を補償されフィルタリングされた力/トルク出力データと併せて使用して、力/トルク系とグローバル系又はロボット空間との間の座標変換を実行する(ブロック6206)。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、ジョイント位置データ6203を使用して、立体視覚化カメラ300のカメラ系とグローバル系又はロボット空間との間の座標変換も実行する(ブロック6208)。一例のプロセッサ4102及び/又はロボットアームコントローラ4106はまた、グローバル系又はロボット空間から、仮想球に対応する球座標への変換も実行する(ブロック6410)。
座標変換後、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、例えば、カメラ300の動作モードに基づいて軌道速度をスケーリングする(ブロック6412)ように構成される。スケーリングは図62のブロック6212において実行されたスケーリングと同様であり得る。図64の一例の手順6400は、プロセッサ4102及び/又はロボットアームコントローラ4106が球端点(sphere end point)を計算すること(ブロック6414)に続く。球端点の計算は、オペレータの望む移動方向についての推測を提供し、球を回転させずにカメラ300を仮想球にわたり移動させるべき程度を決定する。
図65は、本開示の実施形態例による、標的ロック特徴の仮想球6500を示す図を示す。図65に示されるように、立体視覚化カメラ300は、ジョイント位置データ6203から特定される現在位置に基づいて球6500に仮想的に配置される。カメラ300のビューベクトルは、球6500の中心に配置された、xyz標的として示される先端部を指す。プロセッサ4102及び/又はロボットアームコントローラ4106は、変換された力/トルクデータを使用して、xyz標的を指したビューベクトルを維持しながら球6500の表面に沿って球上のカメラ300をいかに移動させるべきかを決定するように構成され、球上の任意の所与の点は、回転球角度「v」及び「u」の関数である式により与えられる。力/トルクデータが使用される場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、並進力に対応する「x」成分及び「y」成分を使用して、球端点を特定するために、仮想球6500上でカメラ300をいかに移動させるべきかを直接決定する。
プロセッサ4102及び/又はロボットアームコントローラ4106は、異なる入力に対して球端点を別様に特定し得る。例えば、図63に示されるように、入力が入力デバイス1410を介して受信される場合、プロセッサ4102及び/又はロボットアームコントローラ4106は、「上」、「下」、「左」、及び「右」をカメラ座標からx、yベクトルとして提供されるロボット空間座標に変換する。力/トルクデータと同様に、x、yベクトルはプロセッサ4102及び/又はロボットアームコントローラ4106により、球端点を特定するために、カメラ300を仮想球6500でいかに移動させるべきかを直接決定するのに使用される。入力が入力デバイスを介して受信される場合、図63に示されるように、ブロック6202〜6206と併せて考察した動作を省き得ることを理解されたい。
幾つかの例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、軌道入力データを受信するように構成される。これらの例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、仮想球6500の球角度「u」に沿った移動を繰り返しながら、球角度「v」を一定に保つ。球角度「u」に沿った反復移動は、軌道入力での球端点を特定できるようにする。入力が仮想球6500に適用されるが、他の例では、入力を他の形状に適用し得ることを理解されたい。例えば、仮想球6500は代わりに、仮想円柱形、楕円形、卵形、ピラミッド/錐台等として定義し得る。
他の例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、レベルスコープ入力データを受信するように構成される。これらの例では、プロセッサ4102及び/又はロボットアームコントローラ4106は、仮想球6500の球角度「v」に沿った移動を繰り返しながら、球角度「u」を一定に保つ。球角度「v」に沿った反復移動は、カメラ300を仮想球6500の上部に移動させる。
図64に戻ると、球端点が特定された後、プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ300が特定された端点まで仮想球に沿って移動した後、カメラ300がx、y、z標的を見ることを維持するために必要な回転量を計算する(ブロック6416)ように構成される。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、この計算中、アンチヨー補正を提供する(ブロック6418)こともできる。換言すれば、プロセッサ4102及び/又はロボットアームコントローラ4106は、仮想球6500上のカメラ300の新しい位置を所与として、カメラ300のビューベクトル又は先端部が、標的手術部位又は焦点に対応する仮想球6500の中心を指す同じx、y、z標的に提供されるようにカメラ300をいかに向けるべきかを決定するよう構成される。
このステップ中、プロセッサ4102及び/又はロボットアームコントローラ4106は、所望の向きを達成するために必要なロボットアーム506及び/又は結合板3304のジョイント角度を決定する。x、y、z球端点がブロック6414において計算された後、プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ300のロール量及びピッチ量を決定する。幾つかの実施形態では、計算は2ステッププロセスである。まず、プロセッサ4102及び/又はロボットアームコントローラ4106は、x、y、z球端点を所与として、回転せずにカメラ300の移動を提供する初期4×4変換行列Tを計算する。次に、プロセッサ4102及び/又はロボットアームコントローラ4106は、続くジョイント回転サイクルでカメラ300がx、y、zに配置された(且つ/又はx、y、z球端点に位置決めされた)標的を見るのを維持するような局所ロール量及びピッチ量を計算する。プロセッサ4102及び/又はロボットアームコントローラ4106は、以下の式(4)及び(5)を使用して、ロール量及びピッチ量を計算し得、式中、T
nextは4×4変換行列に対応する。計算は各更新サイクル(例えば8ms)で実行することができる。
上記式(4)中、xtaregt_next、ytaregt_next、及びztaregt_nextは、Tnext行列への制約である。上記制約は、ロール角及びピッチ角が、上記x、y、z式が有効であるように選ばれることを指定する。換言すれば、ジョイント回転の次の更新されたサイクルにおける標的のx、y、zロケーションは、現在のサイクルにおける標的のx、y、zロケーションに等しいロケーションである必要がある。制約により、カメラ300はロール角及びピッチ角を介して回転できるようになるが、x、y、zロケーションに相対してロックされたままであることができる。
さらに式(5)の最初の行列の下の行における−sinθはピッチ角に対応し、一方、2番目の行列の下の行におけるsinθはロール角に対応する。ピッチの閉形式表現は、関数cos(roll)を所与として存在し得る。プロセッサ4102及び/又はロボットアームコントローラ4106は、反復方法を使用して、fn(cos(roll))に等しいピッチを用いて関数cos(roll)として計算されたロールを推定して、上記式の正確なロール/ピッチ解対を生成し得る。
ブロック6416及び6418に関連して説明した動作からロール量及びピッチ量が計算された後、一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、特異点回避を提供し、逆運動学を計算して、仮想球6500に沿ったカメラ300の新しいx、y、z位置に加えてロール量及びピッチ量を達成するジョイント回転を決定する(ブロック6214及び6420)ように構成される。逆運動学の計算により、プロセッサ4102及び/又はロボットアームコントローラ4106は、ロボットアーム506及び/又は結合板3304のジョイントの移動シーケンスを決定することができる。
一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、ジョイント速度限界及び/又は位置限界に加えて誤差補正を移動シーケンスに適用し得る(ブロック6418、6218、6220)。図62に関連して上述したように、限界及び誤差補正は、ロボットアーム506、カメラ300、及び/又は結合板3304がそれら自体に当たらず、1つ又は複数の境界を越えず、且つ/又は許容可能なジョイント位置内にないようにし得る。プロセッサ4102及び/又はロボットアームコントローラ4106はまた、移動シーケンスに基づいて、ロボットアーム506及び/又は結合板3304の1つ又は複数のジョイントR1〜R9にコマンド(又はコマンドを示す信号)を送信する前、移動シーケンスのジョイントへのコマンドがアンチノイズフィルタリングを提供することを確認する(ブロック6224、6226、6228)こともできる。一例の手順6400は次に、他の移動が検出されない場合、終了し得る。その他の場合、オペレータ入力が受信されるとき、手順6400は定期的な間隔(例えば、10ms、20ms等)で繰り返される。
幾つかの実施形態では、プロセッサ4102及び/又はロボットアームコントローラ4106は、機器の標的ロック追跡を提供し得る。これらの例では、仮想球6500の中心のxyz標的は、移動する標的に対応する動的軌道で置換される。そのような特徴は、例えば、脊椎器具の追跡を可能にし得る。これらの実施形態では、機器は1つ又は複数の基準及び/又は他のマーカを含み得る。一例の立体視覚化カメラ300は、基準を含む画像を記録する。プロセッサ4102及び/又はロボットアームコントローラ4106は、カメラ形空間からロボット空間への座標変換を実行して、機器がx、y、z軸に沿っていかに移動しているかを特定し得る。一例のプロセッサ4102及び/又はロボットアームコントローラ4106は、基準が画像においていかに移動するかを追跡し、対応するx、y、z移動ベクトルを決定し得る。幾つかの場合、x、y、zベクトルは、図64のブロック6414の球端点計算に入力されて、仮想球6500の中心ロケーションを変更し得る。球6500の移動に応答して、プロセッサ4102及び/又はロボットアームコントローラ4106は、新しい標的ロケーションで同じ作業距離及び/又は向きを維持するためにロボットアーム506をいかに位置決めすべきかを決定する。プロセッサ4102及び/又はロボットアームコントローラ4106は次に、逆運動学を適用して、標的の移動を追跡するためのロボットアーム506及び/又は結合板のジョイント回転を決定し得る。手順6200及び6400と同様に、プロセッサ4102及び/又はロボットアームコントローラ4106は、決定された移動シーケンスにおいて指定されたようにコマンドをジョイントに送信する前、誤差補正、ジョイント限界、フィルタ、及び/又は確認を適用し得る。
結論
本明細書に記載されたシステム、構造、方法、及び手順のそれぞれが、1つ又は複数のコンピュータプログラム又は構成要素を使用して実施し得ることが理解されよう。これらのプログラム及び構成要素は、ランダムアクセスメモリ(「RAM」)、読み取り専用メモリ(「ROM」)、フラッシュメモリ、磁気又は光学ディスク、光学メモリ、又は他の記憶媒体、並びにそれらの組み合わせ及び派生物を含め、任意の従来のコンピュータ可読媒体上の一連のコンピュータ命令として提供し得る。命令は、プロセッサにより実行されるように構成し得、プロセッサは、一連のコンピュータ命令を実行すると、開示された方法及び手順の全て又は一部を実行するか、又は実行を促進する。
本明細書に記載された実施形態例への様々な変更及び変形が当業者には明らかになることを理解されたい。そのような変更及び変形は、本趣旨及び範囲から逸脱せずに、意図される利点を低減せずに行うことができる。したがって、そのような変更及び変形が添付の特許請求の範囲によって包含されることが意図される。さらに、現在の米国法と一致して、「手段」又は「ステップ」が請求項において明示的に記載される場合を除き、米国特許法第112条(f)又はAIA改正前米国特許法第112条第6段落の発動が意図されないことを理解されたい。したがって、請求項は、本明細書に記載される対応する構造、材料、若しくは動作、又はそれらの均等物への限定を意図されない。