(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022029274
(43)【公開日】2022-02-17
(54)【発明の名称】情報処理装置、プログラム、学習モデル及び学習モデルの生成方法
(51)【国際特許分類】
A61B 34/32 20160101AFI20220209BHJP
A61B 1/00 20060101ALI20220209BHJP
A61B 1/045 20060101ALI20220209BHJP
B25J 13/00 20060101ALI20220209BHJP
【FI】
A61B34/32
A61B1/00 655
A61B1/045 614
A61B1/00 552
B25J13/00 Z
【審査請求】未請求
【請求項の数】23
【出願形態】OL
(21)【出願番号】P 2020132532
(22)【出願日】2020-08-04
(71)【出願人】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】特許業務法人酒井国際特許事務所
(72)【発明者】
【氏名】横山 和人
(72)【発明者】
【氏名】黒田 容平
(72)【発明者】
【氏名】福島 哲治
(72)【発明者】
【氏名】糸谷 侑紀
(72)【発明者】
【氏名】杉本 克文
【テーマコード(参考)】
3C707
4C161
【Fターム(参考)】
3C707AS35
3C707BS12
3C707JS03
3C707KS03
3C707KS04
3C707KS08
3C707KT01
3C707KT05
3C707LW12
3C707LW15
4C161AA24
4C161BB03
4C161CC06
4C161DD01
4C161FF02
4C161GG13
4C161JJ11
4C161LL01
(57)【要約】
【課題】適切にラベル付けされた機械学習のためのデータを大量に収集して、学習モデルを効率的に構築することができる、情報処理装置を提供する。
【解決手段】回避すべき動作であるとラベル付けされた、医療用アームの動作に関する複数の状態情報を機械学習して生成された第1の学習モデルを用いて、前記医療用アームを自律的に動作させるように制御する制御部を備える、情報処理装置を提供する。
【選択図】
図9
【特許請求の範囲】
【請求項1】
回避すべき動作であるとラベル付けされた、医療用アームの動作に関する複数の状態情報を機械学習して生成された第1の学習モデルを用いて、前記医療用アームを自律的に動作させるように制御する制御部を備える、情報処理装置。
【請求項2】
前記第1の学習モデルを生成する第1の機械学習部をさらに備える、請求項1に記載の情報処理装置。
【請求項3】
前記医療用アームは、医療用観察装置を支持する、請求項1に記載の情報処理装置。
【請求項4】
前記医療用観察装置は、内視鏡である、請求項3に記載の情報処理装置。
【請求項5】
前記医療用アームは、医療用器具を支持する、請求項1に記載の情報処理装置。
【請求項6】
前記複数の状態情報は、前記医療用アームの位置、姿勢、速度、加速度、及び画像のうちの少なくともいずれか1つの種類の情報を含む、請求項1に記載の情報処理装置。
【請求項7】
前記複数の状態情報は、同一種類の異なる状態の情報を含む、請求項6に記載の情報処理装置。
【請求項8】
前記複数の状態情報は、術者の生体情報を含む、請求項1に記載の情報処理装置。
【請求項9】
前記生体情報は、前記術者の、発話音声、動作、視線、心拍、脈拍、血圧、脳波、呼吸、発汗、筋電位、皮膚温度、皮膚電気抵抗のうちの少なくともいずれか1つを含む、請求項8に記載の情報処理装置。
【請求項10】
前記第1の学習モデルは、前記医療用アームの位置、姿勢、速度、加速度、及び画像の特徴量、撮像条件のうちの少なくともいずれか1つに関する情報を推定する、請求項2に記載の情報処理装置。
【請求項11】
前記制御部は、前記第1の学習モデルが推定する状態を避けるように、前記医療用アームを自律動作させる、請求項2に記載の情報処理装置。
【請求項12】
前記医療用アームの動作目標を決定する動作目標決定部をさらに備え、
前記制御部は、前記動作目標に基づき、前記医療用アームを自律動作させる、
請求項11に記載の情報処理装置。
【請求項13】
複数の前記状態情報を取得する状態情報取得部と、
前記第1の学習モデルに基づいて、前記複数の状態情報から、回避しなくてもよい動作であるとラベル付けされる複数の状態情報を抽出する第1の抽出部と、
をさらに備える、請求項11に記載の情報処理装置。
【請求項14】
前記回避しなくてもよい動作であるとラベル付けされた複数の状態情報を機械学習して、第2の学習モデルを生成する第2の機械学習部をさらに備える、請求項13に記載の情報処理装置。
【請求項15】
前記制御部は、前記第2の学習モデルを用いて前記医療用アームを自律動作させる、請求項14に記載の情報処理装置。
【請求項16】
前記制御部は、前記第1及び第2の学習モデルの推定に対して重みづけを行う、請求項15に記載の情報処理装置。
【請求項17】
前記制御部は、前記第1の学習モデルに従って、前記医療用アームを自律動作させ、次いで、前記第2の学習モデルに従って、前記医療用アームを自律動作させる、請求項15に記載の情報処理装置。
【請求項18】
複数の前記状態情報を取得する状態情報取得部と、
前記複数の状態情報から、回避すべき動作であるとラベル付けされる複数の状態情報を抽出する第2の抽出部と、
をさらに備える、請求項2に記載の情報処理装置。
【請求項19】
前記第2の抽出部は、前記複数の状態情報に含まれる画像、発話音声、停止操作情報のうちのいずれか1つに基づいて、前記複数の状態情報から、回避すべき動作であるとラベル付けされる前記複数の状態情報を抽出する、請求項18に記載の情報処理装置。
【請求項20】
前記第1の学習モデルに従って、前記医療用アームの動作を評価する評価部をさらに備える、請求項2に記載の情報処理装置。
【請求項21】
コンピュータに、
回避すべき動作であるとラベル付けされた、医療用アームの動作に関する複数の状態情報を機械学習して生成された第1の学習モデルを用いて、前記医療用アームの自律的動作の制御を実行させる、
プログラム。
【請求項22】
学習モデルに基づいて出力される状態を避けるように医療用アームを自律的に動作させるように制御するよう、コンピュータを機能させる学習モデルであって、
回避すべき動作であるとラベル付けされた、前記医療用アームの動作に関する複数の状態情報を機械学習することによって抽出された特徴量に関する情報を含む、
学習モデル。
【請求項23】
学習モデルに基づいて出力される状態を避けるように医療用アームを自律的に動作させるように制御するよう、コンピュータを機能させるための学習モデルの生成方法であって、
前記医療用アームが回避すべき動作とラベル付けされた、前記医療用アームの動作に関する複数の状態情報を機械学習することにより、前記学習モデルを生成する、
学習モデルの生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、プログラム、学習モデル及び学習モデルの生成方法に関する。
【背景技術】
【0002】
近年、内視鏡手術においては、内視鏡を用いて患者の腹腔内を撮像し、内視鏡が撮像する撮像画像をディスプレイに表示しながら手術が行われている。例えば、下記特許文献1には、内視鏡を支持するアームの制御と、内視鏡の電子ズームの制御とを連動させる技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、近年、医療用観察システムにおいては、内視鏡を支持するロボットアーム装置を自律的に動作させるための開発が進められている。例えば、学習器に、手術内容等とそれに対応する執刀医やスコピストの動作に関する情報を機械学習させ、学習モデルを生成させる。そして、このようにして得られた学習モデルや、制御ルール等を参照して、ロボットアーム装置を自律制御するための制御情報を生成する。
【0005】
しかしながら、上記動作特有の性質から動作に対して適切にラベル付けすることが難しい。従って、動作に関する情報を大量に収集することが難しいことから、上記動作に関する学習モデルを効率的に構築することが難しい。
【0006】
そこで、本開示では、適切にラベル付けされた機械学習のためのデータを大量に収集して、学習モデルを効率的に構築することができる、情報処理装置、プログラム、学習モデル及び学習モデルの生成方法を提案する。
【課題を解決するための手段】
【0007】
本開示によれば、回避すべき動作であるとラベル付けされた、医療用アームの動作に関する複数の状態情報を機械学習して生成された第1の学習モデルを用いて、前記医療用アームを自律的に動作させるように制御する制御部を備える、情報処理装置が提供される。
【0008】
また、本開示によれば、コンピュータに、回避すべき動作であるとラベル付けされた、医療用アームの動作に関する複数の状態情報を機械学習して生成された第1の学習モデルを用いて、前記医療用アームの自律的動作の制御を実行させる、プログラムが提供される。
【0009】
また、本開示によれば、学習モデルに基づいて出力される状態を避けるように医療用アームを自律的に動作させるように制御するよう、コンピュータを機能させる学習モデルであって、回避すべき動作であるとラベル付けされた、前記医療用アームの動作に関する複数の状態情報を機械学習することによって抽出された特徴量に関する情報を含む、学習モデルが提供される。
【0010】
さらに、本開示によれば、学習モデルに基づいて出力される状態を避けるように医療用アームを自律的に動作させるように制御するよう、コンピュータを機能させるための学習モデルの生成方法であって、前記医療用アームが回避すべき動作とラベル付けされた、前記医療用アームの動作に関する複数の状態情報を機械学習することにより、前記学習モデルを生成する、学習モデルの生成方法が提供される。
【図面の簡単な説明】
【0011】
【
図1】本開示に係る技術が適用され得る内視鏡手術システムの概略的な構成の一例を示す図である。
【
図2】
図1に示すカメラヘッド及びCCU(Camera Control Unit)の機能構成の一例を示すブロック図である。
【
図3】本開示の実施形態に係る斜視鏡の構成を示す模式図である。
【
図4】本開示の実施形態に係る医療用観察システム10の構成の一例を示す図である。
【
図5】本開示の実施形態の概要を説明するための説明図である。
【
図6】本開示の第1の実施形態に係る学習装置200の構成の一例を示すブロック図である。
【
図7】本開示の第1の実施形態に係る反面教師モデルの生成方法の一例を示すフローチャートである。
【
図8】本開示の第1の実施形態に係る反面教師モデルの生成方法の一例を説明するための説明図である。
【
図9】本開示の第1の実施形態に係る制御装置300の構成の一例を示すブロック図である。
【
図10】本開示の第1の実施形態に係る制御方法の一例を示すフローチャートである。
【
図11】本開示の第1の実施形態に係る制御方法を説明するための説明図である。
【
図12】本開示の第2の実施形態に係る教師モデルの生成方法を説明するための説明図である。
【
図13】本開示の第2の実施形態に係る制御方法の一例を示すフローチャートである。
【
図14】本開示の第2の実施形態に係る制御方法を説明するための説明図である。
【
図15】本開示の第3の実施形態に係る制御方法を説明するための説明図(その1)である。
【
図16】本開示の第3の実施形態に係る制御方法を説明するための説明図(その2)である。
【
図17】本開示の第4の実施形態に係る評価装置400の構成の一例を示すブロック図である。
【
図18】本開示の第4の実施形態に係る評価方法の一例を示すフローチャートである。
【
図19】本開示の第4の実施形態に係る評価方法を説明するための説明図である。
【
図20】本開示の第4の実施形態に係る表示画面の一例を説明するための説明図(その1)である。
【
図21】本開示の第4の実施形態に係る表示画面の一例を説明するための説明図(その2)である。
【
図22】本開示の実施形態に係る反面教師モデルの生成機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0012】
以下に、添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。また、本明細書及び図面において、実質的に同一又は類似の機能構成を有する複数の構成要素を、同一の符号の後に異なるアルファベットを付して区別する場合がある。ただし、実質的に同一又は類似の機能構成を有する複数の構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。
【0013】
なお、説明は以下の順序で行うものとする。
1. 内視鏡手術システム5000の構成例
1.1 内視鏡手術システム5000の概略的な構成
1.2 支持アーム装置5027の詳細構成例
1.3 光源装置5043の詳細構成例
1.4 カメラヘッド5005及びCCU5039の詳細構成例
1.5 内視鏡5001の構成例
2. 医療用観察システム10の構成例
3. 本開示の実施形態を創作するに至る背景
4. 第1の実施形態
4.1 反面教師モデルの生成
4.2 反面教師モデルによる自律制御
5. 第2の実施形態
5.1 教師モデルの生成
5.2 反面教師モデルによる自律制御
6. 第3の実施形態
7. 第4の実施形態
7.1 評価装置400の詳細構成例
7.2 評価方法
8. まとめ
9. ハードウェア構成
10. 補足
【0014】
<<1. 内視鏡手術システム5000の構成例>>
<1.1 内視鏡手術システム5000の概略的な構成>
まず、本開示の実施形態の詳細を説明する前に、
図1を参照して、本開示に係る技術が適用され得る内視鏡手術システム5000の概略的な構成について説明する。
図1は、本開示に係る技術が適用され得る内視鏡手術システム5000の概略的な構成の一例を示す図である。
図1では、執刀医5067が、内視鏡手術システム5000を用いて、患者ベッド5069上の患者5071に手術を行っている様子が図示されている。
図1に示すように、内視鏡手術システム5000は、内視鏡5001と、その他の術具(医療用器具)5017と、内視鏡(医療用観察装置)5001を支持する支持アーム装置(医療用アーム)5027と、内視鏡下手術のための各種の装置が搭載されたカート5037とを有する。以下、内視鏡手術システム5000の詳細について、順次説明する。
【0015】
(術具5017)
内視鏡手術では、腹壁を切って開腹する代わりに、例えば、トロッカ5025a~5025dと呼ばれる筒状の開孔器具が腹壁に複数穿刺される。そして、トロッカ5025a~5025dから、内視鏡5001の鏡筒5003や、その他の術具5017が患者5071の体腔内に挿入される。
図1に示す例では、その他の術具5017として、気腹チューブ5019、エネルギー処置具5021及び鉗子5023が、患者5071の体腔内に挿入されている。また、エネルギー処置具5021は、高周波電流や超音波振動により、組織の切開及び剥離、又は血管の封止等を行う処置具である。ただし、
図1に示す術具5017はあくまで一例であり、術具5017としては、例えば攝子、レトラクタ等、一般的に内視鏡下手術において用いられる各種の術具を挙げることができる。
【0016】
(支持アーム装置5027)
支持アーム装置5027は、ベース部5029から延伸するアーム部5031を有する。
図1に示す例では、アーム部5031は、関節部5033a、5033b、5033c、及びリンク5035a、5035bから構成されており、アーム制御装置5045からの制御により駆動される。そして、アーム部5031によって内視鏡5001が支持され、内視鏡5001の位置及び姿勢が制御される。これにより、内視鏡5001の安定的な位置の固定が実現され得る。
【0017】
(内視鏡5001)
内視鏡5001は、先端から所定の長さの領域が患者5071の体腔内に挿入される鏡筒5003と、鏡筒5003の基端に接続されるカメラヘッド5005とから構成される。
図1に示す例では、硬性の鏡筒5003を有するいわゆる硬性鏡として構成される内視鏡5001を図示しているが、内視鏡5001は、軟性の鏡筒5003を有するいわゆる軟性鏡として構成されてもよく、本開示の実施形態においては、特に限定されるものではない。
【0018】
鏡筒5003の先端には、対物レンズが嵌め込まれた開口部が設けられている。内視鏡5001には光源装置5043が接続されており、当該光源装置5043によって生成された光が、鏡筒5003の内部に延設されるライトガイドによって当該鏡筒の先端まで導かれ、対物レンズを介して患者5071の体腔内の観察対象に向かって照射される。なお、本開示の実施形態においては、内視鏡5001は、前方直視鏡であってもよいし、斜視鏡であってもよく、特に限定されるものではない。
【0019】
カメラヘッド5005の内部には光学系及び撮像素子が設けられており、観察対象からの反射光(観察光)は当該光学系によって当該撮像素子に集光される。当該撮像素子によって観察光が光電変換され、観察光に対応する電気信号、すなわち観察像に対応する画像信号が生成される。当該画像信号は、RAWデータとしてカメラコントロールユニット(CCU:Camera Control Unit)5039に送信される。なお、カメラヘッド5005には、その光学系を適宜駆動させることにより、倍率及び焦点距離を調整する機能が搭載される。
【0020】
なお、例えば立体視(3D表示)等に対応するために、カメラヘッド5005には撮像素子が複数設けられてもよい。この場合、鏡筒5003の内部には、当該複数の撮像素子のそれぞれに観察光を導光するために、リレー光学系が複数系統設けられることとなる。
【0021】
(カートに搭載される各種の装置について)
まず、表示装置5041は、CCU5039からの制御により、当該CCU5039によって画像処理が施された画像信号に基づく画像を表示する。内視鏡5001が、例えば4K(水平画素数3840×垂直画素数2160)又は8K(水平画素数7680×垂直画素数4320)等の高解像度の撮影に対応したものである場合、及び/又は、3D表示に対応したものである場合には、表示装置5041として、それぞれに対応する、高解像度の表示が可能なもの、及び/又は、3D表示可能なものが用いられる。また、用途に応じて、解像度、サイズが異なる複数の表示装置5041が設けられていてもよい。
【0022】
また、内視鏡5001によって撮影された患者5071の体腔内の術部の画像は、当該表示装置5041に表示される。執刀医5067は、表示装置5041に表示された術部の画像をリアルタイムで見ながら、エネルギー処置具5021や鉗子5023を用いて、例えば患部を切除する等の処置を行うことができる。なお、図示を省略しているが、気腹チューブ5019、エネルギー処置具5021及び鉗子5023は、手術中に、執刀医5067又は助手等によって支持されてもよい。
【0023】
また、CCU5039は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等によって構成され、内視鏡5001及び表示装置5041の動作を統括的に制御することができる。具体的には、CCU5039は、カメラヘッド5005から受け取った画像信号に対して、例えば現像処理(デモザイク処理)等の、当該画像信号に基づく画像を表示するための各種の画像処理を施す。さらに、CCU5039は、当該画像処理を施した画像信号を表示装置5041に提供する。また、CCU5039は、カメラヘッド5005に対して制御信号を送信し、その駆動を制御する。当該制御信号は、倍率や焦点距離等、撮像条件に関する情報を含むことができる。
【0024】
光源装置5043は、例えばLED(Light Emitting Diode)等の光源から構成され、術部を撮影する際の照射光を内視鏡5001に供給する。
【0025】
アーム制御装置5045は、例えばCPU等のプロセッサによって構成され、所定のプログラムに従って動作することにより、所定の制御方式に従って支持アーム装置5027のアーム部5031の駆動を制御する。
【0026】
入力装置5047は、内視鏡手術システム5000に対する入力インターフェイスである。執刀医5067は、入力装置5047を介して、内視鏡手術システム5000に対して各種の情報の入力や指示入力を行うことができる。例えば、執刀医5067は、入力装置5047を介して、患者の身体情報や、手術の術式についての情報等、手術に関する各種の情報を入力する。また、例えば、執刀医5067は、入力装置5047を介して、アーム部5031を駆動させる旨の指示や、内視鏡5001による撮像条件(照射光の種類、倍率及び焦点距離等)を変更する旨の指示、エネルギー処置具5021を駆動させる旨の指示等を入力することができる。なお、入力装置5047の種類は限定されず、入力装置5047は各種の公知の入力装置であってよい。入力装置5047としては、例えば、マウス、キーボード、タッチパネル、スイッチ、フットスイッチ5057、及び/又は、レバー等が適用され得る。例えば、入力装置5047としてタッチパネルが用いられる場合には、当該タッチパネルは表示装置5041の表示面上に設けられていてもよい。
【0027】
あるいは、入力装置5047は、例えば、メガネ型のウェアラブルデバイスやHMD(Head Mounted Display)等の、執刀医5067の身体の一部に装着されるデバイスであってもよい。この場合、これらのデバイスによって検出される執刀医5067のジェスチャや視線に応じて、各種の入力が行われることとなる。また、入力装置5047は、執刀医5067の動きを検出可能なカメラを含むことができ、当該カメラによって撮像された画像から検出される執刀医5067のジェスチャや視線に応じて、各種の入力が行われてもよい。さらに、入力装置5047は、執刀医5067の声を収音可能なマイクロフォンを含むことができ、当該マイクロフォンを介して音声によって各種の入力が行われてもよい。このように、入力装置5047が非接触で各種の情報を入力可能に構成されることにより、特に清潔域に属するユーザ(例えば執刀医5067)が、不潔域に属する機器を非接触で操作することが可能となる。また、執刀医5067は、所持している術具から手を離すことなく機器を操作することが可能となるため、執刀医5067の利便性が向上する。
【0028】
処置具制御装置5049は、組織の焼灼、切開又は血管の封止等のためのエネルギー処置具5021の駆動を制御する。気腹装置5051は、内視鏡5001による視野の確保及び執刀医5067の作業空間の確保の目的で、患者5071の体腔を膨らめるために、気腹チューブ5019を介して当該体腔内にガスを送り込む。レコーダ5053は、手術に関する各種の情報を記録可能な装置である。プリンタ5055は、手術に関する各種の情報を、テキスト、画像又はグラフ等各種の形式で印刷可能な装置である。
【0029】
<1.2 支持アーム装置5027の詳細構成例>
さらに、支持アーム装置5027の詳細構成の一例について説明する。支持アーム装置5027は、基台であるベース部5029と、ベース部5029から延伸するアーム部5031とを有する。
図1に示す例では、アーム部5031は、複数の関節部5033a、5033b、5033cと、関節部5033bによって連結される複数のリンク5035a、5035bとから構成されているが、
図1では、簡単のため、アーム部5031の構成を簡略化して図示している。具体的には、アーム部5031が所望の自由度を有するように、関節部5033a~5033c及びリンク5035a、5035bの形状、数及び配置、並びに関節部5033a~5033cの回転軸の方向等が適宜設定され得る。例えば、アーム部5031は、好適に、6自由度以上の自由度を有するように構成され得る。これにより、アーム部5031の可動範囲内において内視鏡5001を自由に移動させることが可能になるため、所望の方向から内視鏡5001の鏡筒5003を患者5071の体腔内に挿入することが可能になる。
【0030】
関節部5033a~5033cにはアクチュエータが設けられており、関節部5033a~5033cは当該アクチュエータの駆動により所定の回転軸まわりに回転可能に構成されている。当該アクチュエータの駆動がアーム制御装置5045によって制御されることにより、各関節部5033a~5033cの回転角度が制御され、アーム部5031の駆動が制御される。これにより、内視鏡5001の位置及び姿勢の制御が実現され得る。この際、アーム制御装置5045は、力制御又は位置制御等、各種の公知の制御方式によってアーム部5031の駆動を制御することができる。
【0031】
例えば、執刀医5067が、入力装置5047(フットスイッチ5057を含む)を介して適宜操作入力を行うことにより、当該操作入力に応じてアーム制御装置5045によってアーム部5031の駆動が適宜制御され、内視鏡5001の位置及び姿勢が制御されてよい。なお、アーム部5031は、いわゆるマスタースレイブ方式で操作されてもよい。この場合、アーム部5031(スレーブ)は、手術室から離れた場所または手術室内に設置される入力装置5047(マスターコンソール)を介して執刀医5067によって遠隔操作され得る。
【0032】
ここで、一般的には、内視鏡下手術では、スコピストと呼ばれる医師によって内視鏡5001が支持されていた。これに対して、本開示の実施形態においては、支持アーム装置5027を用いることにより、人手によらずに内視鏡5001の位置をより確実に固定することが可能になるため、術部の画像を安定的に得ることができ、手術を円滑に行うことが可能になる。
【0033】
なお、アーム制御装置5045は必ずしもカート5037に設けられなくてもよい。また、アーム制御装置5045は必ずしも1つの装置でなくてもよい。例えば、アーム制御装置5045は、支持アーム装置5027のアーム部5031の各関節部5033a~5033cにそれぞれ設けられてもよく、複数のアーム制御装置5045が互いに協働することにより、アーム部5031の駆動制御が実現されてもよい。
【0034】
<1.3 光源装置5043の詳細構成例>
次に、光源装置5043の詳細構成の一例について説明する。光源装置5043は、内視鏡5001に術部を撮影する際の照射光を供給する。光源装置5043は、例えばLED、レーザ光源又はこれらの組み合わせによって構成される白色光源から構成される。このとき、RGBレーザ光源の組み合わせにより白色光源が構成される場合には、各色(各波長)の出力強度及び出力タイミングを高精度に制御することができるため、光源装置5043において撮像画像のホワイトバランスの調整を行うことができる。また、この場合には、RGBレーザ光源それぞれからのレーザ光を時分割で観察対象に照射し、その照射タイミングに同期してカメラヘッド5005の撮像素子の駆動を制御することにより、RGBそれぞれに対応した画像を時分割で撮像することも可能である。当該方法によれば、当該撮像素子にカラーフィルタを設けなくても、カラー画像を得ることができる。
【0035】
また、光源装置5043は、出力する光の強度を所定の時間ごとに変更するようにその駆動が制御されてもよい。その光の強度の変更のタイミングに同期してカメラヘッド5005の撮像素子の駆動を制御して時分割で画像を取得し、その画像を合成することにより、いわゆる黒つぶれ及び白とびのない高ダイナミックレンジの画像を生成することができる。
【0036】
また、光源装置5043は、特殊光観察に対応した所定の波長帯域の光を供給可能に構成されてもよい。特殊光観察では、例えば、体組織における光の吸収の波長依存性を利用して、通常の観察時における照射光(すなわち、白色光)に比べて狭帯域の光を照射することにより、粘膜表層の血管等の所定の組織を高コントラストで撮影する、いわゆる狭帯域光観察(Narrow Band Imaging)が行われる。あるいは、特殊光観察では、励起光を照射することにより発生する蛍光により画像を得る蛍光観察が行われてもよい。蛍光観察では、体組織に励起光を照射し当該体組織からの蛍光を観察するもの(自家蛍光観察)、又は、インドシアニングリーン(ICG)等の試薬を体組織に局注するとともに当該体組織にその試薬の蛍光波長に対応した励起光を照射し蛍光像を得るもの等が行われ得る。光源装置5043は、このような特殊光観察に対応した狭帯域光、及び/又は、励起光を供給可能に構成され得る。
【0037】
<1.4 カメラヘッド5005及びCCU5039の詳細構成例>
次に、
図2を参照して、カメラヘッド5005及びCCU5039の詳細構成の一例について説明する。
図2は、
図1に示すカメラヘッド5005及びCCU5039の機能構成の一例を示すブロック図である。
【0038】
詳細には、
図2に示すように、カメラヘッド5005は、その機能として、レンズユニット5007と、撮像部5009と、駆動部5011と、通信部5013と、カメラヘッド制御部5015とを有する。また、CCU5039は、その機能として、通信部5059と、画像処理部5061と、制御部5063とを有する。そして、カメラヘッド5005とCCU5039とは、伝送ケーブル5065によって双方向に通信可能に接続されている。
【0039】
まず、カメラヘッド5005の機能構成について説明する。レンズユニット5007は、鏡筒5003との接続部に設けられる光学系である。鏡筒5003の先端から取り込まれた観察光は、カメラヘッド5005まで導光され、当該レンズユニット5007に入射する。レンズユニット5007は、ズームレンズ及びフォーカスレンズを含む複数のレンズが組み合わされて構成される。レンズユニット5007は、撮像部5009の撮像素子の受光面上に観察光を集光するように、その光学特性が調整されている。また、ズームレンズ及びフォーカスレンズは、撮像画像の倍率及び焦点の調整のため、その光軸上の位置が移動可能に構成される。
【0040】
撮像部5009は撮像素子によって構成され、レンズユニット5007の後段に配置される。レンズユニット5007を通過した観察光は、当該撮像素子の受光面に集光され、光電変換によって、観察像に対応した画像信号が生成される。撮像部5009によって生成された画像信号は、通信部5013に提供される。
【0041】
撮像部5009を構成する撮像素子としては、例えばCMOS(Complementary Metal Oxide Semiconductor)タイプのイメージセンサであり、Bayer配列を有するカラー撮影可能なものが用いられる。なお、当該撮像素子としては、例えば4K以上の高解像度の画像の撮影に対応可能なものが用いられてもよい。術部の画像が高解像度で得られることにより、執刀医5067は、当該術部の様子をより詳細に把握することができ、手術をより円滑に進行することが可能となる。
【0042】
また、撮像部5009を構成する撮像素子は、3D表示に対応する右目用及び左目用の画像信号をそれぞれ取得するための1対の撮像素子を有するように構成されてもよい(ステレオ方式)。3D表示が行われることにより、執刀医5067は術部における生体組織(臓器)の奥行きをより正確に把握することや、生体組織までの距離を把握することが可能になる。なお、撮像部5009が多板式で構成される場合には、各撮像素子に対応して、レンズユニット5007も複数系統設けられてもよい。
【0043】
また、撮像部5009は、必ずしもカメラヘッド5005に設けられなくてもよい。例えば、撮像部5009は、鏡筒5003の内部に、対物レンズの直後に設けられてもよい。
【0044】
駆動部5011は、アクチュエータによって構成され、カメラヘッド制御部5015からの制御により、レンズユニット5007のズームレンズ及びフォーカスレンズを光軸に沿って所定の距離だけ移動させる。これにより、撮像部5009による撮像画像の倍率及び焦点が適宜調整され得る。
【0045】
通信部5013は、CCU5039との間で各種の情報を送受信するための通信装置によって構成される。通信部5013は、撮像部5009から得た画像信号をRAWデータとして伝送ケーブル5065を介してCCU5039に送信する。この際、術部の撮像画像を低レイテンシで表示するために、当該画像信号は光通信によって送信されることが好ましい。手術の際には、執刀医5067が撮像画像によって患部の状態を観察しながら手術を行うため、より安全で確実な手術のためには、術部の動画像が可能な限りリアルタイムに表示されることが求められるからである。光通信が行われる場合には、通信部5013には、電気信号を光信号に変換する光電変換モジュールが設けられる。画像信号は当該光電変換モジュールによって光信号に変換された後、伝送ケーブル5065を介してCCU5039に送信される。
【0046】
また、通信部5013は、CCU5039から、カメラヘッド5005の駆動を制御するための制御信号を受信する。当該制御信号には、例えば、撮像画像のフレームレートを指定する旨の情報、撮像時の露出値を指定する旨の情報、及び/又は、撮像画像の倍率及び焦点を指定する旨の情報等、撮像条件に関する情報が含まれる。通信部5013は、受信した制御信号をカメラヘッド制御部5015に提供する。なお、CCU5039からの制御信号も、光通信によって伝送されてもよい。この場合、通信部5013には、光信号を電気信号に変換する光電変換モジュールが設けられ、制御信号は当該光電変換モジュールによって電気信号に変換された後、カメラヘッド制御部5015に提供される。
【0047】
なお、上記のフレームレートや露出値、倍率、焦点等の撮像条件は、取得された画像信号に基づいてCCU5039の制御部5063によって自動的に設定される。つまり、いわゆるAE(Auto Exposure)機能、AF(Auto Focus)機能及びAWB(Auto White Balance)機能が内視鏡5001に搭載される。
【0048】
カメラヘッド制御部5015は、通信部5013を介して受信したCCU5039からの制御信号に基づいて、カメラヘッド5005の駆動を制御する。例えば、カメラヘッド制御部5015は、撮像画像のフレームレートを指定する旨の情報、及び/又は、撮像時の露光を指定する旨の情報に基づいて、撮像部5009の撮像素子の駆動を制御する。また、例えば、カメラヘッド制御部5015は、撮像画像の倍率及び焦点を指定する旨の情報に基づいて、駆動部5011を介してレンズユニット5007のズームレンズ及びフォーカスレンズを適宜移動させる。カメラヘッド制御部5015は、さらに、鏡筒5003やカメラヘッド5005を識別するための情報を記憶する機能を有していてもよい。
【0049】
なお、レンズユニット5007や撮像部5009等の構成を、気密性及び防水性が高い密閉構造内に配置することで、カメラヘッド5005について、オートクレーブ滅菌処理に対する耐性を持たせることができる。
【0050】
次に、CCU5039の機能構成について説明する。通信部5059は、カメラヘッド5005との間で各種の情報を送受信するための通信装置によって構成される。通信部5059は、カメラヘッド5005から、伝送ケーブル5065を介して送信される画像信号を受信する。この際、上記のように、当該画像信号は好適に光通信によって送信され得る。この場合、光通信に対応して、通信部5059には、光信号を電気信号に変換する光電変換モジュールが設けられる。通信部5059は、電気信号に変換した画像信号を画像処理部5061に提供する。
【0051】
また、通信部5059は、カメラヘッド5005に対して、カメラヘッド5005の駆動を制御するための制御信号を送信する。当該制御信号も光通信によって送信されてよい。
【0052】
画像処理部5061は、カメラヘッド5005から送信されたRAWデータである画像信号に対して各種の画像処理を施す。当該画像処理としては、例えば現像処理、高画質化処理(帯域強調処理、超解像処理、NR(Noise Reduction)処理、及び/又は、手ブレ補正処理等)、及び/又は、拡大処理(電子ズーム処理)等、各種の公知の信号処理が含まれる。また、画像処理部5061は、AE、AF及びAWBを行うための、画像信号に対する検波処理を行う。
【0053】
画像処理部5061は、CPUやGPU等のプロセッサによって構成され、当該プロセッサが所定のプログラムに従って動作することにより、上述した画像処理や検波処理が行われ得る。なお、画像処理部5061が複数のGPUによって構成される場合には、画像処理部5061は、画像信号に係る情報を適宜分割し、これら複数のGPUによって並列的に画像処理を行う。
【0054】
制御部5063は、内視鏡5001による術部の撮像、及びその撮像画像の表示に関する各種の制御を行う。例えば、制御部5063は、カメラヘッド5005の駆動を制御するための制御信号を生成する。この際、撮像条件が執刀医5067によって入力されている場合には、制御部5063は、当該執刀医5067による入力に基づいて制御信号を生成する。あるいは、内視鏡5001にAE機能、AF機能及びAWB機能が搭載されている場合には、制御部5063は、画像処理部5061による検波処理の結果に応じて、最適な露出値、焦点距離及びホワイトバランスを適宜算出し、制御信号を生成する。
【0055】
また、制御部5063は、画像処理部5061によって画像処理が施された画像信号に基づいて、術部の画像を表示装置5041に表示させる。この際、制御部5063は、各種の画像認識技術を用いて術部画像内における各種の物体を認識する。例えば、制御部5063は、術部画像に含まれる物体のエッジの形状や色等を検出することにより、鉗子等の術具、特定の生体部位、出血、エネルギー処置具5021使用時のミスト等を認識することができる。制御部5063は、表示装置5041に術部の画像を表示させる際に、その認識結果を用いて、各種の手術支援情報を当該術部の画像に重畳表示させる。手術支援情報が重畳表示され、執刀医5067に提示されることにより、より安全かつ確実に手術を進めることが可能になる。
【0056】
カメラヘッド5005及びCCU5039を接続する伝送ケーブル5065は、電気信号の通信に対応した電気信号ケーブル、光通信に対応した光ファイバ、又は、これらの複合ケーブルである。
【0057】
ここで、図示する例においては、伝送ケーブル5065を用いて有線で通信が行われているものとしていたが、カメラヘッド5005とCCU5039との間の通信は無線で行われてもよい。両者の間の通信が無線で行われる場合には、伝送ケーブル5065を手術室内に敷設する必要がなくなるため、手術室内における医療スタッフ(例えば、執刀医5067)の移動が当該伝送ケーブル5065によって妨げられる事態が解消され得る。
【0058】
<1.5 内視鏡5001の構成例>
続いて、
図3を参照して、内視鏡5001の一例として斜視鏡の基本的構成について説明する。
図3は、本開示の一実施形態に係る斜視鏡4100の構成を示す模式図である。
【0059】
詳細には、
図3に示すように、斜視鏡4100は、カメラヘッド4200の先端に装着されている。斜視鏡4100は
図1及び
図2で説明した鏡筒5003に対応し、カメラヘッド4200は、
図1及び
図2で説明したカメラヘッド5005に対応する。斜視鏡4100とカメラヘッド4200は互いに独立して回動可能とされている。斜視鏡4100とカメラヘッド4200の間には、各関節部5033a,5033b,5033cと同様にアクチュエータが設けられており、斜視鏡4100はアクチュエータの駆動によってカメラヘッド4200に対して回転する。
【0060】
斜視鏡4100は、支持アーム装置5027によって支持される。支持アーム装置5027は、スコピストの代わりに斜視鏡4100を保持し、また執刀医5067や助手の操作によって斜視鏡4100を所望の部位が観察できるように移動させる機能を有する。
【0061】
なお、本開示の実施形態においては、内視鏡5001は、斜視鏡4100に限定されるものではない。例えば、内視鏡5001は、内視鏡の先端部の前方を捉える前方直視鏡(図示省略)であってもよく、さらには、内視鏡で捉えた広角画像から画像を切り出す機能(広角/切り出し機能)を有していてもよい。また、例えば、内視鏡5001は、内視鏡の先端部が執刀医5067の操作に従って自由に湾曲することにより視野を可変することができる先端湾曲機能付きの内視鏡(図示省略)であってもよい。また、例えば、内視鏡5001は、内視鏡の先端部に、視野の異なる複数のカメラユニットを内蔵させて、それぞれのカメラによって異なる画像を得ることができる他方向同時撮影機能付きの内視鏡(図示省略)であってもよい。
【0062】
以上、本開示に係る技術が適用され得る内視鏡手術システム5000の一例について説明した。なお、ここでは、一例として内視鏡手術システム5000について説明したが、本開示に係る技術が適用され得るシステムはかかる例に限定されない。例えば、本開示に係る技術は、顕微鏡手術システムに適用されてもよい。
【0063】
<<2. 医療用観察システム10の構成例>>
さらに、
図4を参照して、上述した内視鏡手術システム5000と組み合わせることが可能な、本開示の実施形態に係る医療用観察システム10の構成の一例について説明する。
図4は、本開示の実施形態に係る医療用観察システム10の構成の一例を示す図である。
図4に示すように、医療用観察システム10は、内視鏡ロボットアームシステム100と、学習装置200と、制御装置300と、評価装置400と、提示装置500と、執刀医側装置600とを主に含む。以下、医療用観察システム10に含まれる各装置について説明する。
【0064】
まず、医療用観察システム10の構成の詳細を説明する前に、医療用観察システム10の動作の概要について説明する。当該医療用観察システム10においては、内視鏡ロボットアームシステム100を用いて、アーム部102(上述した支持アーム装置5027に対応する)を制御することにより、人手によらずに、アーム部102に支持された撮像部104(上述した内視鏡5001に対応する)の位置を好適な位置に固定することができる。従って、当該医療用観察システム10によれば、術部の画像を安定的に得ることができることから、執刀医5067は、手術を円滑に行うことを可能にする。なお、以下の説明においては、内視鏡の位置を移動させたり、固定させたりする人をスコピストと呼び、人手又は機械での制御に関係なく、内視鏡5001の動作(移動、停止、姿勢の変化や、ズームイン、ズームアウト等を含む)をスコープワークと呼ぶ。
【0065】
(内視鏡ロボットアームシステム100)
内視鏡ロボットアームシステム100は、撮像部104(内視鏡5001)を支持するアーム部102(支持アーム装置5027)であって、詳細には、
図4に示すように、アーム部(医療用アーム)102と、撮像部(医療用観察装置)104と、光源部106とを主に有する。以下に、内視鏡ロボットアームシステム100に含まれる各機能部について説明する。
【0066】
アーム部102は、複数の関節部と複数のリンクから構成される多リンク構造体である多関節アーム(
図1に示すアーム部5031に対応する)を有し、当該アーム部102を可動範囲内で駆動させることにより、当該アーム部102の先端に設けられる撮像部104(内視鏡5001)の位置及び姿勢の制御することができる。また、アーム部102は、アーム部102の位置や姿勢のデータを得るために、加速度センサ、ジャイロセンサ、地磁気センサ等を含むモーションセンサ(図示省略)を有していてもよい。
【0067】
撮像部104は、アーム部102の先端に設けられ、各種の撮像対象物の画像を撮像する。言い換えると、アーム部102は、撮像部104を支持している。なお、撮像部104は、先に説明したように、例えば、斜視鏡4100、広角/切り出し機能付きの前方直視鏡(図示省略)、先端湾曲機能付きの内視鏡(図示省略)、他方向同時撮影機能付きの内視鏡(図示省略)であってもよく、もしくは、顕微鏡であってもよく、特に限定されるものではない。
【0068】
さらに、撮像部104は、例えば、患者の腹腔内の各種の医療用器具(術具)、臓器等を含む術野画像を撮像することができる。具体的には、撮像部104は、撮影対象を動画や静止画の形式で撮影することのできるカメラであり、広角光学系で構成された広角カメラであることが好ましい。例えば、通常の内視鏡の画角が80°程度であることに対し、本実施形態に係る撮像部104の画角は140°であってもよい。なお、撮像部104の画角は80°を超えていれば140°よりも小さくてもよいし、140°以上であってもよい。また、撮像部104は、撮像した画像に対応する電気信号(画像信号)を制御装置300等に送信することができる。なお、
図4において、撮像部104は内視鏡ロボットアームシステム100に含まれる必要はなく、アーム部102に支持されていればその態様は限定されない。さらに、アーム部102は、鉗子5023等の医療用器具を支持していてもよい。
【0069】
また、本開示の実施形態においては、撮像部104は、測距することが可能なステレオ方式の内視鏡であってもよい。もしくは、撮像部104に、又は、撮像部104とは別個に、depthセンサ(測距装置)(図示省略)が設けられていてもよい。depthセンサは、例えば、被写体からのパルス光の反射の戻り時間を用いて測距を行うToF(Time of Flight)方式や、格子状のパターン光を照射して、パターンの歪みにより測距を行うストラクチャードライト方式を用いて測距を行うセンサであることができる。
【0070】
さらに、光源部106は、撮像部104が撮像対象物に光を照射する。光源部106は、例えば、広角レンズ用のLED(Light Emitting Diode)で実現することができる。光源部106は、例えば、通常のLEDと、レンズとを組み合わせて構成し、光を拡散させてもよい。また、光源部106は、光ファイバ(ライトガイド)で伝達された光をレンズで拡散させる(広角化させる)構成であってもよい。また、光源部106は、光ファイバ自体を複数の方向に向けて光を照射することで照射範囲を広げてもよい。なお、
図4において、光源部106は必ずしも内視鏡ロボットアームシステム100に含まれる必要はなく、アーム部102に支持される撮像部104に照射光を導光できればその態様は限定されるものではない。
【0071】
(学習装置200)
学習装置200は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、上記内視鏡ロボットアームシステム100を自律動作させるための自律動作制御情報生成する際に用いられる学習モデルを生成する装置である。また、本開示の実施形態においては、各種の入力情報が有する特徴に基づいて、入力情報の分類や分類結果に応じた処理を行う学習モデルが生成される。学習モデルは、入力層と、複数の中間層(隠れ層)と、出力層とを含む複数のノードを有する多層のニューラルネットワークであるDNN(Deep Neural Network)等により実現されてもよい。例えば、学習モデルの生成は、まず、入力層を介して各種の入力情報が入力され、直列に接続された複数の中間層において入力情報が有する特徴の抽出処理等を行う。次に、出力層を介して、中間層が出力した情報に基づく分類結果等の各種処理結果を入力された入力情報に対応する出力情報として出力することによって、学習モデルを生成することができる。しかしながら、本開示の実施形態においては、これに限定されるものではない。
【0072】
なお、学習装置200の詳細構成については後述する。また、学習装置200は、上述した、
図4に示す内視鏡ロボットアームシステム100、制御装置300、評価装置400、提示装置500、執刀医側装置600のうちの少なくともいずれか1つと一体の装置であってもよく、別体の装置であってもよい。もしくは、学習装置200は、クラウド上に設けられ、内視鏡ロボットアームシステム100、制御装置300、評価装置400、提示装置500、執刀医側装置600と通信可能に接続された装置であってもよい。
【0073】
(制御装置300)
制御装置300は、上述した学習装置200で生成した学習モデルに基づいて、内視鏡ロボットアームシステム100の駆動を制御する。制御装置300は、例えば、CPUやMPU等によって、後述する記憶部に記憶されたプログラム(例えば、本開示の実施形態に係るプログラム)がRAM(Random Access Memory)等を作業領域として実行されることにより実現される。また、制御装置300は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
【0074】
なお、制御装置300の詳細構成については後述する。また、制御装置300は、上述した、
図4に示す内視鏡ロボットアームシステム100、学習装置200、評価装置400、提示装置500、執刀医側装置600のうちの少なくともいずれか1つと一体の装置であってもよく、別体の装置であってもよい。もしくは、制御装置300は、クラウド上に設けられ、内視鏡ロボットアームシステム100、学習装置200、評価装置400、提示装置500、執刀医側装置600と通信可能に接続された装置であってもよい。
【0075】
(評価装置400)
評価装置400は、上述した学習装置200で生成した学習モデルに基づいて、内視鏡ロボットアームシステム100の動作を評価する。評価装置400は、例えば、CPUやMPU等によって、後述する記憶部に記憶されたプログラム(例えば、本開示の実施形態に係るプログラム)がRAM等を作業領域として実行されることにより実現される。なお、評価装置400の詳細構成については後述する。また、評価装置400は、上述した、
図4に示す内視鏡ロボットアームシステム100、学習装置200、制御装置300、提示装置500、執刀医側装置600のうちの少なくともいずれか1つと一体の装置であってもよく、別体の装置であってもよい。もしくは、評価装置400は、クラウド上に設けられ、内視鏡ロボットアームシステム100、学習装置200、制御装置300、提示装置500、執刀医側装置600と通信可能に接続された装置であってもよい。
【0076】
(提示装置500)
提示装置500は、各種の画像を表示する。提示装置500は、例えば、撮像部104によって撮像された画像を表示する。提示装置500は、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)または有機EL(Organic Electro-Luminescence)ディスプレイ等を含むディスプレイであることができる。なお、提示装置500は、上述した、
図4に示す内視鏡ロボットアームシステム100、学習装置200、制御装置300、評価装置400、執刀医側装置600のうちの少なくともいずれか1つと一体の装置であってもよい。もしくは、提示装置500は、内視鏡ロボットアームシステム100、学習装置200、制御装置300、評価装置400、執刀医側装置600のうちの少なくともいずれか1つと、有線又は無線で通信可能に接続された、別体の装置であってもよい。
【0077】
(執刀医側装置600)
執刀医側装置600は、執刀医5067の近傍に設置される、又は、執刀医5067の身体に装着された装置(ウェアラブルデバイス)であって、詳細には、例えば、センサ602やユーザーインタフェース(UI)604であることができる。
【0078】
例えば、センサ602は、執刀医5067の発話音声を検出するサウンドセンサ(図示省略)、執刀医5067の視線を検出する視線センサ(図示省略)、執刀医5067の動作を検出するモーションセンサ(図示省略)等であることができる。ここで、サウンドセンサは、具体的には、執刀医5067の発話音声等を収音することができるマイクロフォン等の収音装置であることができる。視線センサは、例えば、レンズ及び撮像素子等によって構成された撮像装置であることができる。さらに具体的には、当該撮像センサによって、執刀医5067の眼球運動、瞳孔径の大きさ、凝視時間等の視線の情報を含むセンシングデータを取得することができる。
【0079】
また、モーションセンサは、執刀医5067の動作を検出するセンサであり、具体的には、加速度センサ(図示省略)や、ジャイロセンサ(図示省略)等であることができる。詳細には、当該モーションセンサは、執刀医5067の動作に伴って発生する加速度や角速度等の変化を検出し、検出されたこれらの変化を示すセンシングデータを取得する。より具体的には、当該モーションセンサによって、例えば、執刀医5067の、頭の動きや姿勢、身体の揺れ等の情報を含むセンシングデータを取得することができる。
【0080】
生体情報センサは、執刀医5067の生体情報を検出するセンサであり、例えば、執刀医5067の身体の一部に直接的に装着され、執刀医5067の、心拍、脈拍、血圧、脳波、呼吸、発汗、筋電位、皮膚温度、皮膚電気抵抗等を測定する各種センサであることができる。また、生体情報センサは、上述したような撮像装置(図示省略)を含んでもよく、この場合、当該撮像装置によって、執刀医5067の脈拍、表情筋の動き(表情)等の情報を含むセンシングデータを取得してもよい。
【0081】
さらに、UI604は、執刀医の入力を受け付ける入力装置であってもよい。具体的には、UI604は、執刀医5067からのテキスト入力を受け付ける操作スティック(図示省略)、ボタン(図示省略)、キーボード(図示省略)、フットスイッチ(図示省略)、タッチパネル(図示省略)、マスターコンソール(図示省略)や、執刀医5067からの音声入力を受け付ける収音装置(図示省略)であることができる。
【0082】
<<3. 本開示の実施形態を創作するに至る背景>>
ところで、近年、上述した医療用観察システム10においては、内視鏡ロボットアームシステム100を自律的に動作させるための開発が進められている。詳細には、医療用観察システム10における内視鏡ロボットアームシステム100の自律的動作は、様々な段階にレベル分けすることができる。例えば、執刀医(術者)5067をシステムによってガイドするレベル、システムによって、撮像部104の位置を移動させる、術部の縫合を行う等といった手術における一部の動作(タスク)を自律的に実行するレベルを挙げることができる。さらには、システムによって手術における動作内容を自動生成し、自動生成した動作から医師が選択した動作を内視鏡ロボットアームシステム100が行うレベル等を挙げることができる。そして、将来的には、医師の監視下、もしくは、医師の監視なしに、内視鏡ロボットアームシステム100が手術における全てのタスクを実行するレベルも考えられる。
【0083】
なお、以下に説明する本開示の実施形態においては、内視鏡ロボットアームシステム100が、スコピストの代わりに、撮像部104の位置を移動させるタスク(スコープワーク)を自律的に実行し、執刀医5067が、移動させた撮像部104による画像を参照して、直接的に手術、又は、遠隔操作により手術を行う場合での利用を想定している。例えば、内視鏡手術においては、適切でないスコープワークは、執刀医5067の疲労や画面酔い等、執刀医5067への負担増加につながり、さらに、スコープワークのスキル自体の難しさや熟練者不足の問題もあることから、内視鏡ロボットアームシステム100によるスコープワークの自律化が強く求められている。
【0084】
内視鏡ロボットアームシステム100の自律的動作のためには、自律動作のための制御情報(例えば、目標値等)を予め生成することが求められる。そこで、学習器に、手術内容等とそれに対応する執刀医5067の手術動作やスコピストのスコープワーク等の動作に関するデータを機械学習させ、学習モデルを生成させる。そして、このようにして得られた学習モデルや、制御ルール等を参照して、制御情報を生成する。より具体的には、例えば製造ライン等で使用されるようなロボット等に対する従来から存在する自律制御手法を、スコープワークの自律制御に適用しようとする場合、学習器に、大量の良いスコープワークの動作のデータ(正解データ)を入力して、機械学習させることとなる。
【0085】
しかしながら、スコープワークは、執刀医5067等によって好みや程度感が異なるため、その正解がわかり難い。言い換えると、スコープワークの良し悪しは、人(執刀医5067やスコピスト等)の感性に関わるため、スコープワークの良さを定量的に評価することができる好適な方法が存在しない。従って、良いとされるスコープワークの動作のデータを大量に収集することが難しい。そして、良いスコープワークの動作のデータに基づいて学習モデルを構築できたとしても、機械学習したデータの少なさから偏った動作のデータによって構築されることから、得られた学習モデルは、すべての状態(執刀医5067の好み、術式、患部の状態等)を好適にカバーすることが難しい。言い換えると、スコープワーク特有の性質から、スコープワークに対して適切にラベル付けすることが難しい。また、良いスコープワークの動作のデータを大量に収集することが困難であることから、スコープワークに関する学習モデルを効率的に構築することが難しい。すなわち、従来から存在する自律制御手法をスコープワークの自律制御に適用することが難しい。加えて、医療現場においては、使用することができる機器や時間に制約があり、さらに、患者のプライバシーを保護する必要があることから、手術時のスコープワークの動作のデータを大量に得ることは難しい。
【0086】
そこで、上述のような状況において、本発明者らは、学習器に、大量の良いスコープワークの動作のデータ(正解データ)の代わりに、大量の悪い(回避すべき)スコープワークの動作のデータを入力して、機械学習させることを、独自に着想した。先に説明したように、スコープワークの良し悪しは、人の感性に関わるため、人が異なると、良いとされるスコープワークも異なることとなる。一方、悪い(回避すべき)スコープワークは、人が異なっても、見解が共通、一致しやすい。従って、人の感性を考慮した上であっても、悪いスコープワークのデータを大量に収集することは、良いスコープワークに比べて容易である。そこで、本発明者らの創作した本開示の実施形態においては、学習器に、大量の悪いスコープワークの動作のデータを用いて機械学習させるようにすることで、人の感性を考慮した学習モデル(反面教師モデル)を効率的に構築することができる。さらに、本実施形態においては、このようにして得られた学習モデルが出力した状態(回避すべき状態)を避けるように目標値を定め、内視鏡ロボットアームシステム100の自律制御を行う。
【0087】
以上のような、本発明者らが創作した本開示の実施形態によれば、適切にラベル付けされた機械学習のためのデータを大量に収集することができることから、学習モデルを効率的に構築することができる。
【0088】
以下の説明において、「回避すべきスコープワーク」とは、内視鏡下手術において、執刀医5067が手術を実行するにあたって適切な視野が得られてないスコープワークを意味する。より具体的には、「回避すべきスコープワーク」は、例えば、術部や、執刀医5067が担持する医療用器具の画像等が得られていないスコープワークを含み得る。本実施形態においては、「回避すべきスコープワーク」は、医者やスコピストだけでなく、一般の人にとっても、明らかに適切でないと判断されるスコープワークであることが好ましい。また、以下の説明において、「回避しなくてもよいスコープワーク」とは、様々なスコープワークから、上述した「回避すべきスコープワーク」を除いたスコープワークを意味するものとする。また、本明細書においては、「良いスコープワーク」は、執刀医等が適切であると判断するスコープワークを意味するが、先に説明したように、スコープワークの良し悪しは人の感性に関わるため、明確に一意的に定まるスコープワークではないとする。さらに、以下の説明においては、上記「回避すべきスコープワーク」のデータを機械学習して生成される学習モデルを反面教師モデル(learning models for teaching negative cases)(第1の学習モデル)と呼ぶ。
【0089】
また、本開示の各実施形態の詳細を説明する前に、
図5を参照して、本発明者らが創作した本開示の実施形態の概要を説明する。
図5は、本実施形態の概要を説明するための説明図である。以下に説明する本開示の実施形態においては、まず、第1の実施形態として、「回避すべきスコープワーク」を機械学習することにより反面教師モデルを生成し、生成した反面教師モデルを用いて、内視鏡ロボットアームシステム100の自律制御を行う(
図5の左側に示す流れ)。また、第2の実施形態として、反面教師モデルを用いて「回避しなくてもよいスコープワーク」のデータを収集し、収集したデータを機械学習することにより教師モデル(第2の学習モデル)を生成し、生成した教師モデルを用いて、内視鏡ロボットアームシステム100の自律制御を行う(
図5の右側に示す流れ)。また、第3の実施形態として、第1の実施形態に係る反面教師モデルと第2の実施形態に係る教師モデルを用いて、内視鏡ロボットアームシステム100の自律制御を行う(
図5の下段に示す)。さらに、本開示においては、
図5では図示していないものの、第4の実施形態として、反面教師モデルを利用して、スコピストのスコープワークに対して評価を行う。以下、このような本開示の実施形態の詳細を順次説明する。
【0090】
<<4. 第1の実施形態>>
<4.1 反面教師モデルの生成>
~学習装置200の詳細構成~
まずは、
図6を参照して、本開示の実施形態に係る学習装置200の詳細構成例について説明する。
図6は、本実施形態に係る学習装置200の構成の一例を示すブロック図である。当該学習装置200は、自律動作制御情報を生成する際に用いられる反面教師モデルを生成することができる。詳細には、
図6に示すように、学習装置200は、情報取得部(状態情報取得部)212と、抽出部(第2の抽出部)214と、機械学習部(第1の機械学習部)216と、出力部226と、記憶部230とを主に有する。以下に、学習装置200の各機能部の詳細について順次説明する。
【0091】
(情報取得部212)
情報取得部212は、上述した、内視鏡ロボットアームシステム100や、センサ602及びUI604を含む執刀医側装置600から、内視鏡ロボットアームシステム100の状態や執刀医5067の状態等に関する各種データ(状態情報)を取得することができる。さらに、情報取得部212は、後述する抽出部214に取得したデータを出力する。
【0092】
本実施形態においては、データ(状態情報)としては、例えば、撮像部104で取得した画像データやTOF方式センサの受光部(図示省略)で取得した画素データを含む、画素データをあげることができる。本実施形態においては、情報取得部212が取得するデータには、少なくとも画像(画像データ)といった画素データが含まれていることが好ましい。また、本実施形態においては、画素データは、実際の手術した際に取得したデータに限定されるものではなく、例えば、医療用ファントム(模型)を用いた模擬手術に際に取得したデータでもよく、もしくは、三次元グラフィックス等で表現される手術シミュレータで取得したデータであってもよい。さらに、本実施形態においては、画素データには、必ずしも医療用器具(図示省略)又は臓器のデータが含まれていることに限定されるものではなく、例えば、医療用器具のデータだけ、もしくは、臓器のデータだけが含まれていてもよい。また、本実施形態においては、画像データは、撮像部104が取得した生データに限定されるものではなく、例えば、撮像部104が取得した生データに対して処理(輝度や彩度の調整処理や、画像から医療用器具又は臓器の位置・姿勢・種類の情報を抽出する処理や、セマンティックセグメンテーション等)を施すことで得られたデータであってもよい。加えて、本実施形態においては、画素データに、認識又は推定した手術のシーケンスやコンテキスト等の情報(例えば、メタデータ)を紐づけてもよい。
【0093】
また、本実施形態においては、データ(状態情報)としては、例えば、アーム部102の先端部や関節部(図示省略)、撮像部104の位置、姿勢、速度、加速度等であってもよい。このようなデータは、スコピストによる手動操作又は自律動作の際に内視鏡ロボットアームシステム100から取得してもよく、もしくは、内視鏡ロボットアームシステム100に設けられたモーションセンサから取得してもよい。なお、内視鏡ロボットアームシステム100の手動操作としては、スコピストがUI604に対して操作を行う方法でもよく、もしくは、スコピストがアーム部102の一部を直接的に物理的に把持して力を加えることで、アーム部102がその力にしたがって受動的に動作する方法であってもよい。さらに、本実施形態においては、データとしては、撮像部104で取得した画像に対応する撮像条件(例えば、フォーカス等)であってもよい。また、データとしては、アーム部102に支持された医療用器具(図示省略)の種類、位置、姿勢、速度、加速度等であってもよい。
【0094】
さらに、データ(状態情報)としては、例えば、内視鏡ロボットアームシステム100を手動操作するスコピストや執刀医5067の操作情報(例えば、UI操作等)や生体情報であってもよい。より具体的には、生体情報としては、スコピストや執刀医5067の視線、瞬き、心拍、脈拍、血圧、脳波、呼吸、発汗、筋電位、皮膚温度、皮膚電気抵抗、発話音声、姿勢、動作(例えば、頭や体の揺れ)等を挙げることができる。例えば、内視鏡ロボットアームシステム100を自律動作させて手術を行っている際に、執刀医5067等が回避すべきスコープワークに陥ったと判断した場合は、スイッチ操作や、アーム部102に対して直接力を加える等の操作を行い、内視鏡ロボットアームシステム100の自律動作を停止させたり、自律動作モードから手動操作モードに変更したりすることがある。上記操作情報は、このような執刀医5067の操作に関する情報を含んでもよい。当該操作情報は、例えば、後述する記憶部230に格納される際に、当該データを明示的に他のデータと区別できるような形態形で格納されることが好ましい。なお、このように格納されるデータとしては、例えば、執刀医5067が内視鏡ロボットアームシステム100の自律動作を停止させた瞬間のデータだけでなく、その状態に至る過渡的な時間のデータ(例えば、停止させた時刻1秒前から停止までの時刻のデータ等)も含めてもよい。また、上記発話音声については、例えば、手術中の執刀医5067から発せられた「この見え方は良くない」、「もっと近づいて欲しい」等、内視鏡画像に対するネガティブな表現を含む発話音声とすることができ、すなわち、回避すべきスコープワークと関連が深いと想定される発話音声であることができる。
【0095】
すなわち、本実施形態においては、情報取得部212は、回避すべきスコープワークの動作のデータを抽出する手掛かりとなるデータであれば、特に限定することなく、取得することが好ましい。そして、本実施形態においては、このようなデータを用いて回避すべきスコープワークの動作のデータを抽出することとなる。従って、本実施形態によれば、内視鏡ロボットアームシステム100を用いて手術を行う中で特別なことをすることなく自然と取得することができるデータを用いて、回避すべきスコープワークの動作のデータを抽出することができることから、効率的に当該データを収集することが可能となる。
【0096】
(抽出部214)
抽出部214は、情報取得部212から出力された複数のデータから、所定の動作であるとラベル付けされるデータを抽出し、後述する機械学習部216へ出力することができる。より具体的には、抽出部214は、例えば、スコピストによって内視鏡ロボットアームシステム100を手動操作した際に取得されたデータから、回避すべき動作であると判断されるスコープワークの動作(例えば、撮像部104によって術部が撮像されていないスコープワーク等)のデータを、画像解析等を利用して抽出することができる。この際、抽出部214は、生体情報を解析して得られた、執刀医5067やスコピスト等のストレス度、酔い等のバイタル値や、発話解析して得られた「この見え方は良くない」等の回避すべきスコープワークと関連が深いと想定される文言、UI操作等(例えば、緊急停止操作等)を参照して、より精度よく、回避すべくスコープワークの動作のデータを抽出してもよい。さらに、回避すべきスコープワークと相関がある情報(例えば、時間帯等)が既知である場合には、抽出部214は、このような相関がある情報を参照して、回避すべきスコープワークの動作のデータを抽出してもよい。
【0097】
(機械学習部216)
機械学習部216は、抽出部214から出力された、回避すべきスコープワークの動作のデータ(回避すべき動作であるとラベル付けされた、医療用アームの動作に関する複数の状態情報)を機械学習して、反面教師モデルを生成することができる。当該反面教師モデルは、後述する制御装置300において、反面教師モデルから出力された状態を避けるように内視鏡ロボットアームシステム100を自律的に動作させるように制御する際に用いられることとなる。そして、機械学習部216は、生成した反面教師モデルを後述する出力部226や記憶部230へ出力する。なお、本実施形態においては、機械学習部216は、回避すべき動作であるとラベル付けされた、異なる種類(例えば、位置、姿勢、速度等)の複数のデータを用いて機械学習を行うこともでき、さらには、回避すべき動作であるとラベル付けされた、同一種類の異なる状態の複数のデータを用いて機械学習を行うこともできる。
【0098】
より詳細には、機械学習部216は、例えば、サポートベクターレグレッションやディープニューラルネットワーク(DNN)等の教師付き学習器であるものとする。機械学習部216は、例えば、回避すべきスコープワークの動作のデータを多変量解析することにより、回避すべきスコープワークの動作を特徴づける特徴量(例えば、アーム部102や撮像部104の位置、姿勢、速度、加速度等についての特徴量や、撮像部104で取得した画像についての特徴量や、当該画像に対応する撮像条件についての特徴量)を取得し、取得した特徴量に関する、現状の状態から、回避すべきスコープワークである場合に次に想定される状態との相関関係を示す反面教師モデルを生成することができる。従って、このような反面教師モデルを用いることによって、現状の状態から、例えば、回避すべきスコープワークである場合に、次に生じ得る、撮像部104で取得した画像等の画素データ、アーム部102の先端部や関節部(図示省略)、撮像部104の位置、姿勢、速度、加速度等の状態や画像の状態(特徴量)を推定することができる。
【0099】
具体例としては、機械学習部216は、時刻t+Δtにおける上記データを教師データとし、時刻tにおける上記データを入力データとして、機械学習を行うことができる。また、本実施形態においては、機械学習部216は、より解析的な扱いが可能なガウス過程回帰(Gaussian Process Regression)モデル等の数式ベースのアルゴリズムを用いてもよく、また、半教師付き学習器や弱教師付き学習器であってもよく、特に限定されるものではない。
【0100】
(出力部226)
出力部226は、機械学習部216から出力された反面教師モデルを後述する制御装置300や評価装置400へ出力することができる。
【0101】
(記憶部230)
記憶部230は、各種の情報を格納することができる。記憶部230は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
【0102】
なお、本実施形態においては、学習装置200の詳細構成は、
図6に示す構成に限定されるものではない。本実施形態においては、学習装置200は、例えば、情報取得部212から出力された複数のデータから、例えば、画像解析等を用いることにより、執刀医5067が使用する医療用器具(図示省略)の、種類、位置、姿勢等を認識する認識部(図示省略)を有していてもよい。さらに、学習装置200は、例えば、情報取得部212から出力された複数のデータから、例えば、画像解析等を用いることにより、執刀医5067が処置する術部の、臓器の種類、位置、姿勢等を認識する認識部(図示省略)を有していてもよい。
【0103】
~反面教師モデルの生成方法~
次に、
図7及び
図8を参照して、本実施形態に係る、反面教師モデルの生成方法について説明する。
図7は、本実施形態に係る反面教師モデルの生成方法の一例を示すフローチャートであり、
図8は、本実施形態に係る反面教師モデルの生成方法の一例を説明するための説明図である。詳細には、
図7に示すように、本実施形態に係る反面教師モデルの生成方法は、ステップS101からステップS103までの複数のステップを含む。以下に、本実施形態に係るこれら各ステップの詳細について説明する。
【0104】
まずは、学習装置200は、
図8に示すように、内視鏡ロボットアームシステム100や、センサ602及びUI604を含む執刀医側装置600から、内視鏡ロボットアームシステム100の状態や執刀医5067の状態等に関する各種データをデータセットxとして取得する(ステップS101)。
【0105】
次に、学習装置200は、スコピストによって内視鏡ロボットアームシステム100を手動操作した際に取得されたデータxから、回避すべきスコープワークの動作(例えば、撮像部104によって術部が撮像されていないスコープワーク等)のデータx´を抽出する(ステップS102)。例えば、執刀医5067等が、撮像部104による画像を確認して回避すべきスコープワークであると判断した場合に、手動操作により指定することで、当該スコープワークに係るデータx´を抽出してもよい。また、学習装置200は、回避すべきスコープワークと相関のあるとされる情報(例えば、執刀医5067の頭の動きや心拍数等)に基づき、当該層間のある情報と同時に取得されたデータを回避すべきスコープワークの動作のデータx´として抽出してもよい。なお、本実施形態においては、回避すべきスコープワークの動作のデータx´を抽出するだけでなく、そこに至る手前の過渡的な時間帯のデータも併せて抽出してもよい。このようにすることで、本実施形態においては、スコープワークが悪くない状況であっても、その状況から今後陥り得る悪い状態(回避すべきスコープワーク)を学習モデルで予測することが可能となる。
【0106】
そして、学習装置200は、回避すべきスコープワークの動作のデータx´を用いて教師あり機械学習して、反面教師モデルを生成する(ステップS103)。詳細には、本実施形態においては、後述する制御装置300は、当該反面教師モデルに基づいて出力される状態を避けるよう内視鏡ロボットアームシステム100を制御することとなる。また、本実施形態においては、反面教師モデルは、内視鏡ロボットアームシステム100の制御の際に着目される特徴量に合わせて設定される。以下においては、回避すべきスコープワークの動作の状態を特徴量として表現したベクトルをs´´として説明する。
【0107】
例えば、一例として、執刀医5067の右手に担持された医療用器具(図示省略)の先端位置を画面の中央になるようにし、且つ、撮像部104と当該医療用器具との距離を所定の距離に移動させるようなアルゴリズムで、内視鏡ロボットアームシステム100を自律制御させる場合を説明する。この場合、回避すべきスコープワークの動作のデータx´から取得される教師データs´´は、右手に担持された医療用器具の先端の位置座標と、撮像部104と当該医療用器具との距離情報とであって、これらを並べてベクトルとしたものであることができる。より具体的には、
図8に示すように、回避すべきスコープワークの動作のデータx´から学習に用いるものだけ抽出した入力データx´´と教師データs´´との組み合わせは、例えば、以下のデータであることができる。
【0108】
教師データ:時刻t+Δtにおける、執刀医5067の右手に担持された医療用器具の先端の画面上の座標と、撮像部104と当該医療用器具との距離情報と、医療用器具の種類を示す情報との組み合わせ(=s´´(t+Δt))
入力データ:時刻tにおける、執刀医5067の右手及び左手に担持された医療用器具の先端の画面上の座標と、撮像部104と当該各医療用器具との距離情報と、各医療用器具の種類を示す情報との組み合わせ(=x´´(t))
【0109】
なお、ここでΔtは時間幅である。Δtは、取得データのサンプリング時間幅であってもよく、当該サンプリング時間幅より長い時間であってもよい。さらに、本実施形態においては、教師データと入力データとは必ずしも時系列上の前後関係にあるデータであることに限定されるものではない。また、本実施形態においては、教師データs´´は、内視鏡ロボットアームシステム100の制御の際に着目される特徴量に合わせて選択されるが、入力データx´´に関しては、回避すべきスコープワークの動作のデータだけでなく、執刀医5067の生体情報等、関連する他のデータを柔軟に追加してもよい。
【0110】
次に、学習装置200が、教師データs´´と入力データx´´から学習モデルを生成する具体的な方法の一例を説明する。ここでは、これまで取得したデータ点の個数はNであるとし、nを1≦n≦Nとした場合、n個目のデータ点をs´´n、x´´nと表現するものとする。また、s´´nの第i成分をs´´niと表現すると、ベクトルtiは以下の数式(1)で表現することができる。
【0111】
【0112】
また、ガウス過程回帰モデルに基づき、新しい入力データx´´N+1が与えられたとき、回避すべきスコープワークの動作の状態の推定値s´の第i要素の期待値s´i及びこれに対応する分散σ´2は、以下の数式(2)で表現することができる。
【0113】
【0114】
ここで、CNは共分散行列であり、第n行m列要素CNmnは、以下の数式(3)で表現される。
【0115】
【0116】
また、数式(3)のkは、カーネル関数であり、数式(3)で与えられる共分散行列CNが正定値であるように選択すればよい。より具体的には、kは、例えば、以下の数式(4)で与えられることができる。
【0117】
【0118】
なお、数式(4)において、θ0、θ1、θ2、θ3は、調整可能なパラメータである。
【0119】
また、数式(3)のβは、s´´niの観測時に重畳するノイズがガウス分布に従うとした場合の精度(分散の逆数)をあらわすパラメータである。また、数式(3)のδnmはクロネッカーのデルタである。
【0120】
また、数式(2)のcは、以下の数式(5)で表すことができる。
【0121】
【0122】
式(2)のkは、k(xn、xN+1)を第n要素として持つベクトルであるといえる。
【0123】
以上説明したアルゴリズムにより、本実施形態においては、学習装置200は、回避すべきスコープワークの動作の状態の推定値s´及び分散σ´2を出力することができる反面学習モデルを得ることができる。ここで、分散σ´2は、回避すべきスコープワークの動作の状態の推定値s´の確度を示すものであるとすることができる。
【0124】
以上のように、本実施形態においては、回避すべきスコープワークの動作のデータに基づき、回避すべきスコープワークの動作の状態を出力することができる反面教師モデルを生成することができる。先に説明したように、回避すべきスコープワークは、人が異なっても、その見解が共通、一致しやすい。従って、本実施形態においては、多量の回避すべきスコープワークの動作のデータを効率よく収集し、収集したデータを用いて、人の感性を考慮した反面教師モデルを効率的に構築することができる。
【0125】
<4.2 反面教師モデルによる自律制御>
~制御装置300の詳細構成~
まずは、
図9を参照して、本開示の実施形態に係る制御装置300の詳細構成例について説明する。
図9は、本実施形態に係る制御装置300の構成の一例を示すブロック図である。当該制御装置300は、反面教師モデルを用いて、内視鏡ロボットアームシステム100を自律制御することができる。詳細には、
図9に示すように、制御装置300は、処理部310と、記憶部330とを主に有する。以下に、制御装置300の各機能部の詳細について順次説明する。
【0126】
(処理部310)
処理部310は、
図9に示すように、情報取得部312と、画像処理部314と、目標状態計算部(動作目標決定部)316と、特徴量計算部318と、反面教師モデル取得部320と、教師モデル取得部322と、統合処理部(制御部)324と、出力部326とを主に有する。
【0127】
情報取得部312は、上述した、内視鏡ロボットアームシステム100や、センサ602及びUI604を含む執刀医側装置600から、内視鏡ロボットアームシステム100の状態や執刀医5067の状態等に関する各種データを内視鏡ロボットアームシステム100の動作中にリアルタイムで取得することができる。本実施形態においては、データとしては、例えば、撮像部104で取得した画像等の画素データや、アーム部102の先端部や関節部(図示省略)、撮像部104の位置、姿勢、速度、加速度等、撮像部104で取得した画像に対応する撮像条件、アーム部102に支持された医療用器具(図示省略)の種類、位置、姿勢、速度、加速度等、スコピストや執刀医5067の操作情報(例えば、UI操作等)や生体情報等を挙げることができる。例えば、情報取得部312が取得するデータは、上記データの全てを取得することに限定されるものではなく、撮像部104が現在取得した画像や、当該画像を処理して得られたデータ、もしくは、アーム部102の先端部や関節部の位置、姿勢、速度、加速度等だけであってもよい。さらに、情報取得部312は、後述する、画像処理部314、目標状態計算部316及び特徴量計算部318に取得したデータを出力する。
【0128】
画像処理部314は、撮像部104によって撮像された画像に対して種々の処理を実行することができる。具体的には、例えば、画像処理部314は、撮像部104によって撮像された画像のうち表示対象領域を切り出して拡大することで新たな画像を生成してもよい。そして、生成された画像は、後述する出力部326を介して、提示装置500へ出力される。
【0129】
さらに、処理部310は、内視鏡ロボットアームシステム(医療用アーム)100の動作目標を決定する目標状態計算部316及び特徴量計算部318を有する。目標状態計算部316は、次の瞬間にあるべき、制御したい特徴量の目標値s*を計算し、後述する統合処理部324に出力することができる。例えば、目標状態計算部316は、撮像部104の視野内に存在する医療用器具(図示省略)の組み合わせ等に応じて、予め定めたルールに基づき、所定の医療用器具の先端が当該視野の中央に位置するような状態を目標値s*として計算する。もしくは、目標状態計算部316は、執刀医5067の動作等を分析して、当該執刀医5067の右手左手に担持された医療用器具が適切に撮像部104で撮像可能な位置を目標値s*としてもよい。なお、本実施形態においては、目標状態計算部316のアルゴリズムは、特に限定されるものではなく、これまで得られた知見に基づくルールベースや、学習ベース、もしくはそれらを複合させたもの等であってもよい。また、本実施形態においては、上記目標値s*には、回避すべきスコープワークの動作の状態を含む可能性があるものとする。
【0130】
特徴量計算部318は、情報取得部312から出力されたデータから、制御したい特徴量の現在の状態sを抽出し、後述する統合処理部324に出力することができる。例えば、画像上の、執刀医5067の右手に担持された医療用器具(図示省略)の先端の位置と、当該医療用器具の距離を制御しようとする場合には、情報取得部312から出力されたデータからそれらに関するデータを抽出、計算を行い、特徴量sとする。なお、本実施形態においては、特徴量sの種類は、上述した目標状態計算部316で計算された目標値s*と同じにすることが求められる。
【0131】
反面教師モデル取得部320は、学習装置200から反面教師モデルを取得して、後述する統合処理部324へ出力することができる。また、教師モデル取得部322も、学習装置200から教師モデルを取得して、後述する統合処理部324へ出力することができる。なお、教師モデル取得部322の詳細動作については、後述する本開示の第2の実施形態で説明する。
【0132】
統合処理部324は、関節部やリング部からなるアーム部102の駆動を制御したり(統合処理部324は、例えば、関節部のアクチュエータにおけるモータに対して供給される電流量を制御することにより、当該モータの回転数を制御し、関節部における回転角度及び発生トルクを制御する)、撮像部104の撮像条件(例えば、フォーカス、拡大率等)を制御したり、光源部106の照射光の強度等を制御したりすることができる。さらに、統合処理部324は、反面教師モデル取得部320から出力された反面教師モデルにいって推定される状態を避けるように、内視鏡ロボットアームシステム100を自律制御することができる。統合処理部324は、制御したい特徴量sが、回避すべきスコープワークの動作の状態に対して所定のクリアランスを確保するような制御をしつつ、目標状態計算部316で決定された動作目標(目標値s*)に近づけるように、内視鏡ロボットアームシステム100の制御を行う。より詳細には、統合処理部324は、目標値s*と、回避すべきスコープワークの動作の状態の推定値s´に基づき、最終的に、内視鏡ロボットアームシステム100に与える制御指令uを決定する。決定した制御指令uは、後述する出力部326を介して、内視鏡ロボットアームシステム100に出力される。この際、統合処理部324は、例えば、評価関数等を用いて制御を行うこととなるが、反面教師モデルとして、例えば、上述した分散σ´2等の、回避すべきスコープワークの動作の状態の推定値s´の確度を用いることができるならば、評価関数を確度に応じて変形して用いてもよい。
【0133】
出力部326は、画像処理部314で処理された画像を提示装置500へ出力したり、統合処理部324から出力された制御指令uを内視鏡ロボットアームシステム100に出力したりすることができる。
【0134】
(記憶部330)
記憶部330は、各種の情報を格納することができる。記憶部330は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
【0135】
なお、本実施形態においては、制御装置300の詳細構成は、
図9に示す構成に限定されるものではない。本実施形態においては、制御装置300は、例えば、情報取得部312から出力された複数のデータから、例えば、画像解析等を用いることにより、執刀医5067が使用する医療用器具(図示省略)の、種類、位置、姿勢等を認識する認識部(図示省略)を有していてもよい。さらに、制御装置300は、例えば、情報取得部312から出力された複数のデータから、例えば、画像解析等を用いることにより、執刀医5067が処置する術部の、臓器の種類、位置、姿勢等を認識する認識部(図示省略)を有していてもよい。
【0136】
~制御方法~
次に、
図10及び
図11を参照して、本実施形態に係る制御方法について説明する。
図10は、本実施形態に係る制御方法の一例を示すフローチャートであり、
図11は、本実施形態に係る制御方法を説明するための説明図である。
図10に示すように、本実施形態に係る制御方法は、ステップS201からステップS203までの複数のステップを含むことができる。以下に、本実施形態に係るこれら各ステップの詳細について説明する。
【0137】
制御装置300は、内視鏡ロボットアームシステム100や、センサ602及びUI604を含む執刀医側装置600から、内視鏡ロボットアームシステム100の状態や執刀医5067の状態等に関する各種データをリアルタイムで取得する(ステップS201)。
【0138】
制御装置300は、制御指令uを計算する(ステップS202)。この際の、具体的な計算方法の例について、以下に説明する。
【0139】
例えば、撮像部104の画像出力をmとし、撮像条件や既知の被写体のサイズや形状等の被写体に関するパラメータをaとし、内視鏡ロボットアームシステム100のアーム部102の位置や姿勢等のパラメータをqとする。なお、qとしては、必要に応じて、アーム部102の位置・姿勢等の時間微分も要素に含めてもよい。また、qとしては、撮像部104のズーム量調整や、画像の特定領域を切り出すような、光学的・電子的な状態量の要素も含めてもよい。このような前提において、内視鏡ロボットアームシステム100の制御系をゼロへと収束させるように制御する際の制御偏差eは、以下の数式(6)で表現することができる。
【0140】
【0141】
制御したい状態sを決定する変数のうち、上述したqは、アーム部102が有するダイナミクス、アーム部102に搭載されたアクチュエータへの制御入力によって決定される。一般的には、qは、以下の数式(7)の微分方程式で表現することができる。
【0142】
【0143】
数式(7)の関数fは、制御系設計の考え方に応じて、適切なロボットモデルを表現するように設定すればよい。例えば、関数fとして、ロボットアームの力学の理論から導出される非線形運動方程式を当てはめるとともに、アーム部102へ制御指令uを伝達した際に、各関節部(図示省略)に配置したアクチュエータで発生するトルクとして考えることができる。また、関数fには、必要に応じて、非線形運動方程式を線形化したものを当てはめることもできる。
【0144】
また、関数fには、必ずしもロボットの運動方程式そのものを当てはめる必要はなく、ロボットの運動制御系によって制御されたダイナミクスを当てはめてもよい。具体的な例としては、撮像部104は、患者の腹部に設けたトロッカを通して体内に挿入されることから、撮像部104を支持するアーム部102は、撮像部104がトロッカによって仮想的な拘束(腹壁上の1点における平面2自由度拘束)を受けるように制御されることが適切である。従って、関数fとしては、アーム部102の先端に位置する撮像部104がトロッカ上で拘束され、且つ、撮像部104の挿抜や姿勢変更などの応答速度が制御系によって人為的に設定されたことを反映したダイナミクスを数式モデル化して用いてもよい。このとき、制御指令uは、必ずしもアーム部102のアクチュエータで発生するトルクである必要はなく、運動制御系によって人為的に設定した新しい制御入力であってもよい。例えば、運動制御系は撮像部104の視野の移動量を指令として受け取った上で、それを実現するために必要なアーム部102の各関節部(図示省略)のトルクを決定する構成である場合、制御指令uは視野の移動量として考えることができる。
【0145】
次に、制御装置300は、内視鏡ロボットアームシステム100の制御を行う(ステップS203)。ここで、内視鏡ロボットアームシステム100の制御として、現時点での状態sを目標値s*へと近づける制御のアルゴリズムの例を説明し、次に、反面教師モデルが出力する回避すべきスコープワークの動作の状態の推定値s´を回避する制御のアルゴリズムの例を説明する。
【0146】
~目標値s*に近づける制御のアルゴリズムの例~
当該制御は、以下の数式(8)の評価関数Vが最小となるようなアーム部102の状態qを探索しつつ、アーム部102の状態をqに収束させる制御指令uを計算するといった、最適化問題の一種として捉えることができる。
【0147】
【0148】
なお、数式(8)においては、Qvは重み行列である。ただし、qとuとは自由に決定することができるわけではなく、拘束条件として、少なくとも先に説明した数式(7)が課せられることとなる。
【0149】
このような最適化問題を解く方法として、制御理論の分野で実用化されている解法として、モデル予測制御がある。モデル予測制御とは、有限時間区間の最適制御問題を実時間で数値的に解くことによってフィードバック制御を行う手法であり、receding horizon 制御とも呼ばれる。
【0150】
そこで、上記数式(8)を、モデル予測制御を適用できる形式で評価関数を書き直した場合、以下の数式(9)で表現することができる。
【0151】
【0152】
また、拘束条件は、以下の数式(10)で表現される。
【0153】
【0154】
数式(9)及び数式(10)においては、Q、R、Qfinは重み行列であり、関数φは終端コストを表す。qm(τ)とum(τ)はあくまでモデル予測制御の演算を実行するための状態と制御入力であり、必ずしも現実のシステムの状態と制御入力とは一致しない。ただし、初期時刻においてのみ、数式(10)の下段の式が成立する。
【0155】
そして、Jを最小化する制御入力u*
m(τ)、(t≦τ≦t+T)を実時間で計算する最適化のアルゴリズムとしては、例えばモデル予測制御に適するとされているGMRES(Generalized Minimal Residual)法を用いることができる。このようにして、時刻tにおいて実際にアーム部102に与える実際の制御指令u(t)は、例えば時刻tでの値のみを用いて、以下の数式(11)で決定することができる。
【0156】
【0157】
~反面教師モデルが出力する回避すべきスコープワークの動作の状態の推定値s´を回避する制御のアルゴリズムの例~
次に、反面教師モデルに基づいて出力される、回避すべきスコープワークの動作の状態の推定値s´を回避する制御のアルゴリズムの例を説明する。このような制御を実現するためには、例えば、状態sが推定値s´の値に近づくと評価関数の値が増加するように、先に説明した目標値s*に近づける制御のアルゴリズムを拡張すればよい。具体的には、数式(9)の中段に示される評価関数Lを、以下の数式(12)に書き換えることで実現することができる。
【0158】
【0159】
数式(12)の関数Pは、最適化理論におけるいわゆるペナルティ関数であり、Kは、ペナルティの効果を調整するためのゲインである。このようにして、本実施形態においては、
図11に示すように、状態sを目標値s
*に収束させる制御の過程において、回避すべきスコープワークの動作の状態の推定値s´になるべく近づかないように制御することが可能となる。
【0160】
なお、反面教師モデルに基づいて出力された回避すべきスコープワークの動作の状態の推定値s´を用いた制御においては、現在の内視鏡ロボットアームシステム100の状態情報xと反面教師モデルを学習するときに用いた入力データx´´とが大きくかけ離れていた場合には、予期しない方向へと内視鏡ロボットアームシステム100が制御され、好適に制御できない可能性がある。そこで、本実施形態においては、このような場合を考慮して、推定値s´の確度σ´2を併せて利用するような制御を行うことが好ましい。例えば、上述したガウス過程回帰モデルでは、学習装置200は、期待値(推定値)s´に加えて分散σ´2も出力することができる。また、先に説明したように、分散σ´2が大きいときは、期待値(推定値)s´の確度が低いことを意味する。そこで、本実施形態においては、例えば、分散σ´2が所定の値よりも大きいときは、上記評価関数L´(数式12)のペナルティ項を無視するように制御してもよい。もしくは、本実施形態においては、上記評価関数L´のペナルティ項のゲインKを分散σ´2に依存するように定義してもよい。より具体的には、分散σ´2が大きいときはゲインKを小さくなるようにすることで、確度が低い場合には反面教師モデルによる、回避すべきスコープワークの動作の状態の推定値s´を自動的に考慮しないように制御してもよい。なお、本実施形態においては、このような方法以外にも、バリア法や乗数法等、拘束条件つきの最適化問題を解くための各種方法を適用してもよい。
【0161】
以上のように、本実施形態においては、回避すべきスコープワークの動作のデータに基づく反面教師モデルに基づいて出力された、回避すべきスコープワークの動作の状態の推定値s´を避けるように内視鏡ロボットアームシステム100を制御することができる。従って、本実施形態によれば、数式的なアプローチでは扱いが困難な人の感性や感覚的な側面まで考慮した反面教師モデルを利用することができることから、人の感性等まで考慮して、内視鏡ロボットアームシステム100を自律制御することが可能となる。
【0162】
<<5. 第2の実施形態>>
次に説明する本開示の第2の実施形態においては、上述した反面教師モデルを用いて「回避しなくてもよいスコープワーク」のデータを収集し、収集したデータを機械学習することにより教師モデルを生成する。そして、本実施形態においては、生成した教師モデルを用いて、内視鏡ロボットアームシステム100の自律制御を行う。
【0163】
<5.1 教師モデルの生成>
~学習装置200aの詳細構成~
まずは、
図12を参照して、本実施形態に係る学習装置200aの詳細構成例について説明する。
図12は、本実施形態に係る教師モデルの生成方法を説明するための説明図である。当該学習装置200aは、自律動作制御情報を生成する際に用いられる教師モデルを生成することができる。詳細には、
図12に示すように、学習装置200aは、情報取得部(状態情報取得部)212と、抽出部(第1の抽出部)214aと、機械学習部(第2の機械学習部)216aと、出力部226(
図12では図示省略)と、記憶部230(
図12では図示省略)とを主に有する。以下に、学習装置200aの各機能部の詳細について順次説明する。なお、本実施形態においては、情報取得部212と、出力部226と、記憶部230とは、第1の実施形態と共通するため、ここでは、これらの説明を省略する。
【0164】
(抽出部214a)
抽出部214aは、スコピストによって内視鏡ロボットアームシステム100を手動操作した際に取得されたデータ(状態情報)xから、回避しなくてもよいスコープワーク(例えば、撮像部104によって術部が撮像されているスコープワーク等)の動作のデータ(回避しなくてもよい動作であるとラベル付けされる状態情報)y´を、上述した反面教師モデルに基づいて抽出することができる。さらに、抽出部214aは、抽出したデータy´を後述する機械学習部216aに出力することができる。従来の技術においては、回避しなくてもよいスコープワークの動作のデータy´は、少なくとも多数のデータxから、手動で、回避すべきコープワークの動作のデータx´を除去することでしか得ることができなかった。しかしながら、本実施形態においては、上記反面教師モデルを用いることにより、自動で、回避しなくてもよいスコープワークの動作のデータy´を抽出することができる。加えて、本実施形態によれば、このようにして得らえたデータy´を用いることにより、教師モデルの生成を可能にし、当該教師モデルを用いることにより、内視鏡ロボットアームシステム100の自律制御の精度を向上させることができる。
【0165】
ここで、回避しなくてもよいスコープワークの動作のデータy´の自動抽出の具体例を説明する。抽出部214aは、
図12に示すように、反面教師モデル(推定値s´、分散σ´
2)を取得し、以下の数式(13)に示すように、多数のデータの状態sと推定値s´との差分ノルムを計算する。次に、抽出部214aは、差分ノルムが閾値s
d以下の場合には、そのデータを多数のデータから除外することにより、回避しなくてもよいスコープワークの動作のデータy´の自動抽出を行うことができる。
【0166】
【0167】
なお、本実施形態においては、他の方法として、反面教師モデルの分散σ´2等を利用して、回避しなくてもよいスコープワークの動作のデータy´の自動抽出を行ってもよい。
【0168】
(機械学習部216a)
機械学習部216aは、第1の実施形態と同様に、教師付き学習器であり、抽出部214aから出力された、回避しなくてもよいスコープワークの動作のデータ(回避しなくてもよい動作であるとラベル付けされた状態情報)y´´を機械学習して、教師モデルを生成することができる。当該教師モデルは、後述する制御装置300aの統合処理部324(
図14 参照)において、内視鏡ロボットアームシステム100を自律的に動作させるように制御する際に用いられることとなる。そして、機械学習部216aは、教師モデルを出力部226や記憶部230へ出力する。
【0169】
なお、本実施形態においては、学習装置200aの詳細構成は、
図12に示す構成に限定されるものではない。
【0170】
なお、本実施形態においては、教師モデルの生成方法は、第1の実施形態と共通するため、ここでは、教師モデルの生成方法の説明を省略する。
【0171】
<5.2 教師モデルによる自律制御>
次に、教師モデルを用いた内視鏡ロボットアームシステム100の自律制御を説明するが、本実施形態に係る制御装置300は、第1の実施形態と共通するため、ここでは制御装置300の詳細構成例についての説明を省略する。
【0172】
図13及び
図14を参照して、本実施形態に係る教師モデルによる制御方法について説明する。
図13は、本実施形態に係る制御方法の一例を示すフローチャートであり、
図14は、本実施形態に係る制御方法を説明するための説明図である。
図13に示すように、本実施形態に係る制御方法は、ステップS301からステップS306までの複数のステップを含むことができる。以下に、本実施形態に係るこれら各ステップの詳細について説明する。
【0173】
本実施形態においては、回避しなくてもよいスコープワークの動作のデータに基づく教師モデルから得られた推定値r´を考慮して、目標値s*を決定し、アーム部102への制御指令uを決定する。詳細には、第1の実施形態においては、数式等のルールベースに基づいて目標値s*を決定していたが、本実施形態においては、回避しなくてもよいスコープワークの動作のデータに基づく教師モデルから得られた推定値r´を目標値s*として用いることにより、内視鏡ロボットアームシステム100の自律動作を執刀医5067の感性をより反映したスコープワークに近づけることができる。
【0174】
ただし、本実施形態においては、回避しなくてもよいスコープワークの動作のデータに基づく教師モデルから得られた推定値r´は、必ずしも良いスコープワークの動作のデータに基づく推定値であるとは限らない。従って、教師モデルから得られた推定値r´を用いて制御を行った場合、必ずしも好適に内視鏡ロボットアームシステム100が自律制御できるとは限らない。そこで、本実施形態においては、
図14に示すように、所定の規則に基づいて、回避しなくてもよいスコープワークの動作のデータに基づく教師モデルから得られた推定値r´と、第1の実施形態と同様の方法で決定された目標値s
*とのどちらを制御の目標値として用いるかを判定する。
【0175】
まずは、制御装置300は、第1の実施形態と同様に、内視鏡ロボットアームシステム100等から、内視鏡ロボットアームシステム100の状態等に関する各種データをリアルタイムで取得する(ステップS301)。次に、制御装置300は、第1の実施形態と同様に、目標値s*を計算する(ステップS302)。そして、制御装置300は、学習装置200aから教師モデルを取得する(ステップS303)。
【0176】
次に、制御装置300は、ステップS303で取得された教師モデルから得られた推定値r´を目標値として制御を行うかどうかを判定する(ステップS304)。例えば、ステップS302で算出された目標値s*と、教師モデルから得られた推定値r´とが近い場合、教師モデルから得られた推定値r´は、経験的に、数式等のルールベースで仮定した良いスコープワークの動作の状態から外れていないと推定される。従って、教師モデルから得られた推定値r´は、信頼性が高く、且つ、執刀医5067の感覚も反映したスコープワークの状態になっている可能性が高いため、目標値として制御に用いることができる。より具体的には、ステップS302で算出された目標値s*と、教師モデルから得られた推定値r´との近さは、上述した差分ノルムを用いて判定することができる。また、本実施形態においては、教師モデルから得られた分散σ2等の確度が所定の値以下であれば、教師モデルから得られた推定値r´を目標値として制御に用いてもよい。
【0177】
制御装置300は、ステップS303で取得された教師モデルから得られた推定値r´を目標値として使用して制御すると判定した場合(ステップS304:Yes)には、ステップS305へ進み、教師モデルから得られた推定値r´を目標値として使用して制御しないと判定した場合(ステップS304:No)には、ステップS306へ進む。
【0178】
制御装置300は、ステップS303で取得された教師モデルから得られた推定値r´を目標値として使用して、内視鏡ロボットアームシステム100を制御する(ステップS305)。制御装置300は、ステップS302で算出された目標値s*を使用して、内視鏡ロボットアームシステム100を制御する(ステップS306)。制御方法の詳細については、第1の実施形態と同様であるため、ここでは詳細な説明を省略する。
【0179】
以上のように、本実施形態においては、反面教師モデルを用いることにより、回避しなくてもよいスコープワークの動作のデータy´を自動で抽出することができる。加えて、本実施形態によれば、このようにして得らえたデータy´を用いることにより、教師モデルの生成を可能にし、当該教師モデルを用いることにより、内視鏡ロボットアームシステム100の自律制御の精度を向上させることができる。
【0180】
<<6. 第3の実施形態>>
次に、
図15及び
図16を参照して、上述した第1の実施形態に係る反面教師モデルと、第2の実施形態に係る教師モデルとを用いた内視鏡ロボットアームシステム100の自律制御を説明する。
図15及び
図16は、本実施形態に係る制御方法を説明するための説明図である。本実施形態においては、反面教師モデルを用いた自律制御と、教師モデルを用いた自律制御を併用することにより、両方の自律制御の利点を享受することができることから、数式では表現することが難しい、スコープワークに対する執刀医5067の感覚を反映した自律制御を実現することができる。
【0181】
より具体的には、本実施形態においては、
図15に示すように、統合処理部324は、第1の実施形態と同様に、回避すべきスコープワークの動作の状態の推定値s´を避けるように内視鏡ロボットアームシステム100を制御する。この際、統合処理部324は、回避しなくてもよいスコープワークの動作のデータに基づく教師モデルから得られた推定値r´を目標値として用いて制御することができる。なお、本実施形態においても、上述した第2の実施形態と同様に、所定の規則に基づいて、回避しなくてもよいスコープワークの動作のデータに基づく教師モデルから得られた推定値r´と、第1の実施形態と同様の方法で決定された目標値s
*とのどちらを制御の目標値として用いるかを判定することが好ましい。また、本実施形態においては、統合処理部324は、反面教師モデルによる推定値s´及び教師モデルによる推定値r´に対して重みづけを行って、内視鏡ロボットアームシステム100を制御してもよい。
【0182】
また、本実施形態においては、最初に、反面教師モデルによる推定値s´の状態を避けるように内視鏡ロボットアームシステム100を制御し、次いで、教師モデルによる推定値r´の状態に近づけるように内視鏡ロボットアームシステム100を制御してもよい。さらに、本実施形態においては、反面教師モデルによる推定値s´を用いた制御と、教師モデルによる推定値r´を用いた制御とをループ状に繰り返し用いて、内視鏡ロボットアームシステム100を制御してもよい。
【0183】
詳細には、
図16に示すように、まずは、本実施形態に係る医療用観察システム10は、反面教師モデルを用いた自律制御(教師モデルを用いた自律制御を並行して実施してもよい)を実行、検証を行うことで、新しいデータxを取得する。検証の手法は、執刀医5067自身が内視鏡ロボットアームシステム100を用いた患者に対する手術を通じて行ってもよく、もしくは、内視鏡ロボットアームシステム100にて医療用ファントム(模型)を用いて行ってもよい。さらに、検証は、シミュレータを用いてもよい。例えば、シミュレータを用いることにより、仮想空間上に、患者、術部、撮像部104、アーム部102、医療用器具等を仮想的に再現し、医師によって仮想的に術部に対して手術を行うことができる。ここで取得されたデータxは、少なくとも反面教師モデルから得られた回避すべきスコープワークの動作の状態を避けるように自律制御された結果である。ただし、当初得られるデータxの中には、反面教師モデルではカバーしきれない回避すべきスコープワークの動作の状態が含まれていることが考えられる。
【0184】
そこで、本実施形態においては、反面教師モデルによる推定値s´を用いた制御と、教師モデルによる推定値r´を用いた制御とをループ状に繰り返し用いる。繰返しのループの初期では、取得データxに回避すべきスコープワークの動作のデータが多く含まれることから、回避すべきスコープワークの動作のデータの抽出、収集には時間がかかることとなる。しかしながら、上記ループを複数回繰り返すことにより、反面教師モデル及び教師モデルが熟成し、これらのモデルによる自律制御の質が向上することから、同時に、データxに含まれる回避すべきスコープワークの動作のデータが減少することとなる。従って、回避すべきスコープワークの動作のデータの抽出、収集の負荷が順次減り、反面教師モデルの質の向上が促進される。さらに、回避しなくてもよいスコープワークの動作のデータの質も向上することから、回避しなくてもよいスコープワークの動作のデータに基づく教師モデルの質も向上する。そして、最終的には、反面教師モデル及び教師モデルがより熟成すると、良質なスコープワークの動作のデータのみを抽出、収集することが可能になることから、これらのデータだけに基づく教師データのみを用いて、内視鏡ロボットアームシステム100を自律制御することが可能となる。
【0185】
なお、本実施形態においては、上述の検証手法によって新しいデータxを取得することに限定されるものではなく、例えば、別の学習モデルや制御アルゴリズムを用いた結果であってもよく、実際に、執刀医5067とスコピストとが手動で実施した手術の測定データであってもよい。
【0186】
以上のように、本実施形態によれば、反面教師モデルを用いた自律制御と、教師モデルを用いた自律制御を併用することにより、両方の自律制御の利点を享受することができることから、数式では表現することが難しい、スコープワークに対する執刀医5067の感覚を反映した自律制御を実現することができる。
【0187】
<<7. 第4の実施形態>>
本実施形態においては、上記反面教師モデルを用いて、実際のスコピストのスコープワークを評価し、その評価結果を当該スコピストに向けて提示する。本実施形態においては、例えば、実際のスコープワークが、回避すべきスコープワークである場合、掲示装置500等を介してスコピストに通知したりすることができる。また、本実施形態においては、スコピストのトレーニングの際(実際のスコープワークの際や、他のスコピストが実施したスコープワーク映像を用いた教材等も含む)に、評価結果をフィードバックすることができる。従って、本実施形態によれば、スコピストのスキル向上を促すことができる。
【0188】
<7.1 評価装置400の詳細構成例>
まずは、
図17を参照して、本開示の実施形態に係る評価装置400の詳細構成例について説明する。
図17は、本実施形態に係る評価装置400の構成の一例を示すブロック図である。詳細には、
図17に示すように、評価装置400は、情報取得部412と、評価計算部(評価部)414と、モデル取得部420と、出力部426と、記憶部430とを主に有する。以下に、評価装置400の各機能部の詳細について順次説明する。
【0189】
(情報取得部412)
情報取得部412は、内視鏡ロボットアームシステム100等から、内視鏡ロボットアームシステム100の状態に関する各種データをリアルタイムで取得することができる。
【0190】
(評価計算部414)
評価計算部414は、後述するモデル取得部420から出力された反面教師モデル(推定値s´等)に従って、スコープワークの評価を行い、評価結果を後述する出力部426に出力することができる。例えば、評価計算部414は、各瞬間の特徴量の状態sと、反面教師モデルから得られる回避すべきスコープワークの動作の状態の推定値s´とのノルム差を評価値として計算する。この場合、評価値が小さいほど、回避すべきスコープワークに近いと解釈することができる。
【0191】
(モデル取得部420)
モデル取得部420は、学習装置200から反面教師モデル(推定値s´、分散σ´2等)を取得して、評価計算部414へ出力することができる。
【0192】
(出力部426)
出力部426は、上述した評価計算部414からの評価結果を提示装置500へ出力することができる。なお、本実施形態においては、評価結果を例えば提示装置500で表示することに限定されるものではない。例えば、評価結果をリアルタイムでスコピストに提示する方法としては、評価結果が一定の指標よりも悪い状態になった場合に、スコピストに装着したウェアラブルデバイス(図示省略)が振動する又は音声を出力したり、提示装置500に搭載されたランプが点滅したり等であってもよい。
【0193】
また、本実施形態においては、評価結果をリアルタイムに提示するのではなく、一連の手術が終了した後に、総合的な評価結果を提示してもよい。例えば、各瞬間の特徴量の状態sと、回避すべきスコープワークの動作の推定値s´とのノルム差を計算し、これらの時間平均値を評価結果として提示してもよい。このようにすることで、時間平均値が高い場合には、スコープワークの質が低いという通知をスコピストに提示することができる。
【0194】
(記憶部430)
記憶部430は、各種の情報を格納する。記憶部430は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
【0195】
なお、本実施形態においては、評価装置400の詳細構成は、
図17に示す構成に限定されるものではない。
【0196】
<7.2 評価方法>
次に、
図18から
図21を参照して、本実施形態に係る評価方法について説明する。
図18は、本実施形態に係る評価方法の一例を示すフローチャートであり、
図19は、本実施形態に係る評価方法を説明するための説明図である。さらに、
図20及び
図21は、本実施形態に係る表示画面の一例を説明するための説明図である。
図18に示すように、本実施形態に係る評価方法は、ステップS401からステップS403までの複数のステップを含むことができる。以下に、本実施形態に係るこれら各ステップの詳細について説明する。
【0197】
まずは、評価装置400は、内視鏡ロボットアームシステム100等から、内視鏡ロボットアームシステム100の状態に関する各種データをリアルタイムで取得する(ステップS401)。さらに、評価装置400は、
図19に示すように、学習装置200から反面教師モデル(推定値s´、分散σ´
2等)を取得する。
【0198】
次に、評価装置400は、
図19に示すように、反面教師モデル(推定値s´等)に従って、ステップS401で取得したデータに基づき、スコープワークの評価を行い、評価結果を出力する(ステップS402)。
【0199】
そして、評価装置400は、評価結果をスコピストに提示する(ステップS403)。
本実施形態においては、例えば、リアルタイムで評価結果を表示する際には、
図20に示すように、提示装置500の表示部に、医療用器具800等の画像が含まれる手術映像700が表示される。さらに、本実施形態においては、スコピストのスコープワークを妨げないように、評価結果は、表示部の隅に位置する評価表示702にリアルタイムに表示される。
【0200】
本実施形態においては、例えば、手術完了後に評価結果を表示する場合には、
図21に示すように、評価結果の時系列変化を示す評価表示704を表示してもよい。この場合、手術映像700と評価結果とを時間同期させるために、例えば、ユーザ(例えば、スコピスト等)が評価表示704上のカーソル900の位置を移動させることにより、カーソル900の位置に応じた時刻の手術映像700の映像が再現されるようになっていることが好ましい。さらに、本実施形態においては、提示装置500の表示部には、当該手術映像700又は評価結果等により、当該手術映像700に係るスコープワークが、回避すべきスコープワークであると判断できる場合に、当該手術映像700を回避すべきスコープワークのデータとして登録するための操作を行うボタン902を表示させることが好ましい。なお、本実施形態においては、このような登録作業は、手術中にリアルタイムで実施してもよいし、手術後にオフラインで実施してもよい。
【0201】
以上のように、本実施形態においては、反面教師モデルを用いて、スコピストのスコープワークを評価し、その評価結果を当該スコピストに向けて提示することができる。従って、本実施形態によれば、スコピストのスコープワークがどのようなときに悪い状態に陥る傾向があるかを定量的なデータとしてフィードバックすることができることから、スコピストのスキル向上のトレーニングに活かすことができる。
【0202】
<<8. まとめ>>
以上のように、本開示の実施形態によれば、適切にラベル付けされた機械学習のためのデータ(回避すべきスコープワークの動作のデータや回避しなくてもよいスコープワークの動作のデータ)を大量に収集して、学習モデル(反面教師モデル、教師モデル)を効率的に構築することができる。
【0203】
<<9. ハードウェア構成>>
上述してきた各実施形態に係る学習装置200等の情報処理装置は、例えば
図22に示すような構成のコンピュータ1000によって実現される。以下、本開示の実施形態に係る学習装置200を例に挙げて説明する。
図22は、本開示の実施形態に係る反面教師モデルの生成機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び、入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
【0204】
CPU1100は、ROM1300又はHDD1400に保存されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に保存されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
【0205】
ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を保存する。
【0206】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係る医療用アーム制御方法のためのプログラムを記録する記録媒体である。
【0207】
通信インターフェイス1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインターフェイスである。例えば、CPU1100は、通信インターフェイス1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
【0208】
入出力インターフェイス1600は、入出力デバイス1650とコンピュータ1000とを接続するためのインターフェイスである。例えば、CPU1100は、入出力インターフェイス1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インターフェイス1600を介して、ディスプレイやスピーカーやプリンタ等の出力デバイスにデータを送信する。また、入出力インターフェイス1600は、コンピュータ読み取り可能な所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインターフェイスとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0209】
例えば、コンピュータ1000が本開示の実施形態に係る学習装置200として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされた反面教師モデルを生成するためのプログラムを実行することにより、反面教師モデルを生成する機能を実現する。また、HDD1400には、本開示に実施形態に係る教師モデルを生成するためのプログラムが格納されてもよい。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置から情報処理プログラムを取得してもよい。
【0210】
また、本実施形態に係る学習装置200は、例えばクラウドコンピューティング等のように、ネットワークへの接続(または各装置間の通信)を前提とした、複数の装置からなるシステムに適用されてもよい。
【0211】
以上、学習装置200のハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更され得る。
【0212】
<<10. 補足>>
なお、先に説明した本開示の実施形態は、例えば、上記で説明したような情報処理装置又は情報処理システムで実行される情報処理方法、情報処理装置を機能させるためのプログラム、及びプログラムが記録された一時的でない有形の媒体を含みうる。また、当該プログラムをインターネット等の通信回線(無線通信も含む)を介して頒布してもよい。
【0213】
また、上述した本開示の実施形態の情報処理方法における各ステップは、必ずしも記載された順序に沿って処理されなくてもよい。例えば、各ステップは、適宜順序が変更されて処理されてもよい。また、各ステップは、時系列的に処理される代わりに、一部並列的に又は個別的に処理されてもよい。さらに、各ステップの処理についても、必ずしも記載された方法に沿って処理されなくてもよく、例えば、他の機能部によって他の方法により処理されていてもよい。
【0214】
上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0215】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0216】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0217】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【0218】
なお、本技術は以下のような構成も取ることができる。
(1)
回避すべき動作であるとラベル付けされた、医療用アームの動作に関する複数の状態情報を機械学習して生成された第1の学習モデルを用いて、前記医療用アームを自律的に動作させるように制御する制御部を備える、情報処理装置。
(2)
前記第1の学習モデルを生成する第1の機械学習部をさらに備える、上記(1)に記載の情報処理装置。
(3)
前記医療用アームは、医療用観察装置を支持する、上記(1)又は(2)に記載の情報処理装置。
(4)
前記医療用観察装置は、内視鏡である、上記(3)に記載の情報処理装置。
(5)
前記医療用アームは、医療用器具を支持する、上記(1)に記載の情報処理装置。
(6)
前記複数の状態情報は、前記医療用アームの位置、姿勢、速度、加速度、及び画像のうちの少なくともいずれか1つの種類の情報を含む、上記(1)~(5)のいずれか1つに記載の情報処理装置。
(7)
前記複数の状態情報は、同一種類の異なる状態の情報を含む、上記(6)に記載の情報処理装置。
(8)
前記複数の状態情報は、術者の生体情報を含む、上記(1)~(7)のいずれか1つに記載の情報処理装置。
(9)
前記生体情報は、前記術者の、発話音声、動作、視線、心拍、脈拍、血圧、脳波、呼吸、発汗、筋電位、皮膚温度、皮膚電気抵抗のうちの少なくともいずれか1つを含む、上記(8)に記載の情報処理装置。
(10)
前記第1の学習モデルは、前記医療用アームの位置、姿勢、速度、加速度、及び画像の特徴量、撮像条件のうちの少なくともいずれか1つに関する情報を推定する、上記(2)に記載の情報処理装置。
(11)
前記制御部は、前記第1の学習モデルが推定する状態を避けるように、前記医療用アームを自律動作させる、上記(2)に記載の情報処理装置。
(12)
前記医療用アームの動作目標を決定する動作目標決定部をさらに備え、
前記制御部は、前記動作目標に基づき、前記医療用アームを自律動作させる、
上記(11)に記載の情報処理装置。
(13)
複数の前記状態情報を取得する状態情報取得部と、
前記第1の学習モデルに基づいて、前記複数の状態情報から、回避しなくてもよい動作であるとラベル付けされる複数の状態情報を抽出する第1の抽出部と、
をさらに備える、上記(11)に記載の情報処理装置。
(14)
前記回避しなくてもよい動作であるとラベル付けされた複数の状態情報を機械学習して、第2の学習モデルを生成する第2の機械学習部をさらに備える、上記(13)に記載の情報処理装置。
(15)
前記制御部は、前記第2の学習モデルを用いて前記医療用アームを自律動作させる、上記(14)に記載の情報処理装置。
(16)
前記制御部は、前記第1及び第2の学習モデルの推定に対して重みづけを行う、上記(15)に記載の情報処理装置。
(17)
前記制御部は、前記第1の学習モデルに従って、前記医療用アームを自律動作させ、次いで、前記第2の学習モデルに従って、前記医療用アームを自律動作させる、上記(15)に記載の情報処理装置。
(18)
複数の前記状態情報を取得する状態情報取得部と、
前記複数の状態情報から、回避すべき動作であるとラベル付けされる複数の状態情報を抽出する第2の抽出部と、
をさらに備える、上記(2)に記載の情報処理装置。
(19)
前記第2の抽出部は、前記複数の状態情報に含まれる画像、発話音声、停止操作情報のうちのいずれか1つに基づいて、前記複数の状態情報から、回避すべき動作であるとラベル付けされる前記複数の状態情報を抽出する、上記(18)に記載の情報処理装置。
(20)
前記第1の学習モデルに従って、前記医療用アームの動作を評価する評価部をさらに備える、上記(2)に記載の情報処理装置。
(21)
コンピュータに、
回避すべき動作であるとラベル付けされた、医療用アームの動作に関する複数の状態情報を機械学習して生成された第1の学習モデルを用いて、前記医療用アームの自律的動作の制御を実行させる、
プログラム。
(22)
学習モデルに基づいて出力される状態を避けるように医療用アームを自律的に動作させるように制御するよう、コンピュータを機能させる学習モデルであって、
回避すべき動作であるとラベル付けされた、前記医療用アームの動作に関する複数の状態情報を機械学習することによって抽出された特徴量に関する情報を含む、
学習モデル。
(23)
学習モデルに基づいて出力される状態を避けるように医療用アームを自律的に動作させるように制御するよう、コンピュータを機能させるための学習モデルの生成方法であって、
前記医療用アームが回避すべき動作とラベル付けされた、前記医療用アームの動作に関する複数の状態情報を機械学習することにより、前記学習モデルを生成する、
学習モデルの生成方法。
【符号の説明】
【0219】
10 医療用観察システム
100 内視鏡ロボットアームシステム
102 アーム部
104 撮像部
106 光源部
200、200a 学習装置
212、312、412 情報取得部
214、214a 抽出部
216、216a 機械学習部
226、326、426 出力部
230、330、430 記憶部
300 制御装置
310 処理部
314 画像処理部
316 目標状態計算部
318 特徴量計算部
320 反面教師モデル取得部
322 教師モデル取得部
324 統合処理部
400 評価装置
414 評価計算部
420 モデル取得部
500 提示装置
600 執刀医側装置
602 センサ
604 UI
700 手術映像
702、704 評価表示
800 医療用器具
900 カーソル
902 ボタン