(57)【特許請求の範囲】
【請求項１】
観察対象物が載置され撮像範囲の変更のために移動可能なステージを有する顕微鏡により得られた前記観察対象物の画像を、前記顕微鏡に接続された撮像素子に、前記撮像範囲を変更させながら連続的に撮像させる撮像素子制御部と、
前記撮像された画像を第１の通信路を介して連続的に送信するための第１の通信部と、
前記撮像された画像を読み出して保持する第１のメモリと
を有する撮像装置と、
前記第１の通信路を介して前記第１の通信部と接続され、前記撮像された画像を受信する第２の通信部と、
前記第２の通信部により受信された前記画像を保持する第２のメモリと、
前記第２のメモリに保持された画像について所定の画像処理を行う画像処理部と、
前記第２のメモリに保持された画像の容量が所定容量を超えている間は、前記撮像が中断されるように前記撮像素子を制御する撮像制御部と
を有する画像処理装置と
を具備し、
前記撮像素子制御部は、
前記ステージが移動しておらず、かつ、前記撮像素子が動作中でなく、かつ、前記第２のメモリに保持された画像の容量が前記所定容量を下回っている場合に、前記撮像素子に前記画像を撮像させ、かつ、前記第１のメモリに保持された前記画像を前記第１の通信部に送信させ、かつ、前記ステージを移動させ、
前記撮像された画像が前記第１のメモリへ読み出されている間に前記ステージの移動を完了させる
画像処理システム。
【請求項２】
請求項１に記載の画像処理システムであって、
前記撮像制御部は、前記ステージが移動中でないことを通知する第１の通知信号と、前記撮像素子が動作中でないことを通知する第２の通知信号とを前記撮像素子制御部からそれぞれ受信し、かつ、前記第２のメモリの前記画像の容量が前記所定容量を下回っていると判断したときに、前記画像の撮像を許可する撮像許可コマンドを生成して前記撮像素子制御部へ出力し、
前記撮像素子制御部は、前記撮像許可コマンドを受信したときに前記撮像素子に前記画像を撮像させる
画像処理システム。
【請求項３】
請求項１に記載の画像処理システムであって、
前記撮像制御部は、前記第２のメモリに保持された前記画像の容量が前記所定容量を下回っていることを通知する通知信号を前記撮像素子制御部へ出力し、
前記撮像素子制御部は、前記ステージが移動中でなく、前記撮像素子が動作中でないと判断し、かつ、前記通知信号が受信されたときに、前記画像の撮像を許可する撮像許可コマンドを生成して前記撮像素子に発行する
画像処理システム。
【請求項４】
請求項１に記載の画像処理システムであって、
前記第１の通信路は第１の帯域幅を有し、
前記撮像装置は、前記第１の帯域幅よりも小さい第２の帯域幅を有し前記撮像された画像を前記第１のメモリへ読み出すための第２の通信路を有する
画像処理システム。
【請求項５】
請求項１に記載の画像処理システムであって、
前記画像処理部は、前記所定の画像処理として複数の異なる画像処理をパイプライン化して実行するための複数の処理部を有する
画像処理システム。
【請求項６】
観察対象物が載置され撮像範囲の変更のために移動可能なステージを有する顕微鏡により得られた前記観察対象物の画像を、前記顕微鏡に接続された撮像素子により、撮像範囲を変更しながら連続的に撮像する撮像装置から、前記撮像された画像を通信路を介して連続的に受信する通信部と、
前記受信された前記画像を保持する第１のメモリと、
前記保持された画像について所定の画像処理を行う画像処理部と、
前記ステージが移動しておらず、かつ、前記撮像素子が動作中でなく、かつ、前記第１のメモリに保持された画像の容量が所定容量を下回っている場合に、前記撮像素子に前記画像を撮像させ、かつ、前記撮像装置が有する第２のメモリに保持された前記撮像された画像を前記通信路を介して送信させ、かつ、前記ステージを移動させ、
前記撮像された画像が前記第２のメモリへ読み出されている間に前記ステージの移動を完了させる
撮像制御部と
を具備する画像処理装置。
【請求項７】
観察対象物が載置され撮像範囲の変更のために移動可能なステージを有する顕微鏡により得られた前記観察対象物の画像を、前記顕微鏡に接続された撮像素子により、撮像範囲を変更しながら連続的に撮像し、
前記撮像された画像を第１のメモリに読み出して保持し、
前記第１のメモリに保持された画像を、通信路を介して連続的に送信し、
前記通信路を介して前記画像を受信し、
前記受信された前記画像を第２のメモリに保持し、
前記第２のメモリに保持された画像について所定の画像処理を行い、
前記ステージが移動しておらず、かつ、前記撮像素子が動作中でなく、かつ、前記第２のメモリに保持された画像の容量が所定容量を下回っている場合に、前記撮像素子に前記画像を撮像させ、かつ、前記第１のメモリに保持された画像を前記通信路を介して送信させ、かつ、前記ステージを移動させ、
前記撮像された画像が前記第１のメモリへ読み出されている間に前記ステージの移動を完了させる
画像処理方法。
【請求項８】
画像処理装置に、
観察対象物が載置され撮像範囲の変更のために移動可能なステージを有する顕微鏡により得られた前記観察対象物の画像を、前記顕微鏡に接続された撮像素子により撮像範囲を変更しながら連続的に撮像する撮像装置から、前記撮像された画像を通信路を介して連続的に受信するステップと、
前記受信された前記画像を第１のメモリに保持するステップと、
前記保持された画像について所定の画像処理を行うステップと、
前記ステージが移動しておらず、かつ、前記撮像素子が動作中でなく、かつ、前記第１のメモリに保持された画像の容量が所定容量を下回っている場合に、前記撮像素子に前記画像を撮像させ、かつ、前記撮像装置が有する第２のメモリに保持された前記撮像された画像を前記通信路を介して送信させ、かつ、前記ステージを移動させるステップと、
前記撮像された画像が前記第２のメモリへ読み出されている間に前記ステージの移動を完了させるステップと
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、医療、病理、生物、材料等の分野において顕微鏡により得られた画像情報を処理する情報処理装置、情報処理方法及びそのプログラムに関する。
【背景技術】
【０００２】
医療または病理等の分野において、光学顕微鏡により得られた、生体の細胞、組織、臓器等の観察対象物の画像をデジタル化し、そのデジタル画像に基づき、医師や病理学者等がその組織等を検査したり、患者を診断したりするシステムが提案されている。このようなシステムは一般にバーチャル顕微鏡と呼ばれている。
【０００３】
例えば、特許文献１に記載の方法では、顕微鏡のステージ上に載置されたスライド標本から光学的に得られた画像が、ＣＣＤ（Charge Coupled Device）を搭載したビデオカメラによりデジタル化され、そのデジタル信号がＰＣ（Personal Computer）に入力され、モニタに可視化される。病理学者はモニタに表示された画像を見て検査等を行う（例えば、特許文献１の段落［００２７］、［００２８］、図５参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−３７２５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記バーチャル顕微鏡システムにおいては、撮像装置により取得された画像のＲＡＷデータは、バスを介してＰＣ（画像処理装置）に転送される。ここで、このＲＡＷデータをＰＣのＨＤＤ（Hard Disk Drive）に直接保存するのは、ＨＤＤの書き込み速度の問題で困難である。したがってＰＣは、当該ＲＡＷデータについて、現像処理や、ＪＰＥＧ等の所定のフォーマットへの圧縮処理等の各種画像処理を行った上で、ＨＤＤに保存することが考えられる。
【０００６】
しかしながら、撮像装置が、ステージ上で観察対象物を移動させながら観察対象物の異なる領域を連続的に撮像し、それをＰＣがリアルタイムに処理する場合、そのＰＣ側の処理に負荷が掛かると、撮像装置側からコンピュータ側へのＲＡＷデータの転送中に画像データの一部に欠損が生じてしまうことが考えられる。
【０００７】
特に医療分野においては、バーチャル顕微鏡で扱われる画像は病理診断に直結するため、データ欠損はもちろん、部分的な画像の補完も許されない。また、データ欠損が発生した場合には、撮像装置側からＰＣ側へ画像データを再送することも可能であるが、この場合には、欠損が発生した画像分の、帯域の無駄及び待ち時間が生じる。
【０００８】
以上のような事情に鑑み、本発明の目的は、バーチャル顕微鏡において、撮像装置側からＰＣ側へ連続的に転送される画像データの欠損を防ぎながら、画像データを極力リアルタイムに処理することが可能な画像処理システム、画像処理装置、画像処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の一形態に係る画像処理システムは、撮像装置と画像処理装置とを有する。撮像装置は、撮像素子制御部と第１の通信部とを有する。撮像素子制御部は、顕微鏡により得られた観察対象物の画像を、上記顕微鏡に接続された撮像素子に、撮像範囲を変更させながら連続的に撮像させる。第１の通信部は、上記撮像された画像を第１の通信路を介して連続的に送信するためのものである。画像処理装置は、第２の通信部と、第１のメモリと、画像処理部と、撮像制御部とを有する。第２の通信部は、上記第１の通信路を介して上記第１の通信部と接続する。第１のメモリは、上記第２の通信部により受信された上記画像を保持する。画像処理部は、上記第１のメモリに保持された画像について所定の画像処理を行う。撮像制御部は、上記第１のメモリに保持された画像の容量が所定容量を超えている間は、上記撮像が中断されるように上記撮像部を制御する。
【００１０】
この構成により画像処理システムは、メモリに保持される画像の容量が所定容量を超えている間は撮像装置における撮像を中断させるため、メモリのオーバーフローを防ぐことができる。したがって画像処理システムは、第１の通信路を介した画像の連続転送中における画像データの欠損を防ぎながら、上記画像処理部により画像データを極力リアルタイムに処理することができる。ここで第１の通信路とは例えばＰＣＩｅ（Peripheral Component Interconnect Express）バスやＵＳＢ（Universal Serial Bus）３．０等の双方向信頼性通信路である。
【００１１】
上記顕微鏡は、上記観察対象物が載置され、上記撮像範囲の変更のために移動可能なステージを有してもよい。この場合上記撮像装置は、上記撮像された画像を読み出して保持する第２のメモリを有してもよい。この場合上記撮像素子制御部は、上記ステージが移動しておらず、かつ、上記撮像素子が動作中でなく、かつ、上記第１のメモリに保持された画像の容量が上記所定容量を下回っている場合に、上記撮像素子に上記画像を撮像させてもよい。またそれとともに撮像素子制御部は、上記第２のメモリに保持された上記画像を上記第１の通信部に送信させ、かつ、上記ステージを移動させてもよい。
【００１２】
これにより画像処理システムは、画像の撮像とステージの移動開始とを同期させることができ、また画像処理装置が画像を受信している間にステージを移動させることができる。したがって画像処理システムは、ステージの移動にかかる時間分の待ち時間を無くし、より高速に画像を撮像し処理することができる。
【００１３】
上記撮像制御部は、上記ステージが移動中でないことを通知する第１の通知信号と、上記撮像素子が動作中でないことを通知する第２の通知信号とを上記撮像素子制御部からそれぞれ受信し、かつ、上記第１のメモリの上記画像の容量が上記所定容量を下回っていると判断したときに、上記画像の撮像を許可する撮像許可コマンドを生成して上記撮像素子制御部へ出力してもよい。この場合上記撮像素子制御部は、上記撮像許可コマンドを受信したときに上記撮像素子に上記画像を撮像させてもよい。
【００１４】
これにより、画像処理装置が、撮像装置側からのステージ及び撮像素子の動作状態に関する通知を割り込みとして処理し、各通知を合成して撮像の許可条件を生成するため、撮像許可条件がより柔軟に調停される。
【００１５】
上記撮像制御部は、上記第１のメモリに保持された上記画像の容量が上記所定容量を下回っていることを通知する通知信号を上記撮像素子制御部へ出力してもよい。この場合上記撮像素子制御部は、上記ステージが移動中でなく、上記撮像素子が動作中でないと判断し、かつ、上記通知信号が受信されたときに、上記画像の撮像を許可する撮像許可コマンドを生成して上記撮像素子に発行してもよい。
【００１６】
これにより、撮像素子制御部は、画像処理装置側の第１のバッファの状態については画像処理装置からの通知信号により把握し、撮像装置側のステージ及び撮像素子の状態については自ら監視することで、画像処理装置と撮像装置との間で撮像の許可条件を調停して生成する。これにより、撮像が許可されるまでの撮像装置と画像処理装置との間のやり取りが最小化されるため、許可条件が画像処理装置側で生成される場合に比べて、画像処理装置のオーバーヘッドが減少するとともに、撮像までの待ち時間がより減少する。
【００１７】
上記第１の通信路は第１の帯域幅を有し、上記撮像装置は、上記第１の帯域幅よりも小さい第２の帯域幅を有し上記撮像された画像を上記第２のメモリへ読み出すための第２の通信路を有してもよい。
【００１８】
これにより、第２の通信路の帯域幅よりも第１の通信路の帯域幅が大きいことで、撮像装置により撮像された画像の画像処理装置への転送がよりスムーズに実行される。
【００１９】
上記画像処理部は、上記所定の画像処理として複数の異なる画像処理をパイプライン化して実行するための複数の処理部を有してもよい。
【００２０】
これにより画像処理システムは、大容量の画像が第１のメモリに連続的に供給された場合でも、当該画像に対する複数の異なる処理を複数の並列処理部でパイプライン化することで、オーバーフローを防ぎながら画像を極力リアルタイムで処理できる。
【００２１】
本発明の他の形態に係る画像処理装置は、通信部と、メモリと、画像処理部と、撮像制御部とを有する。上記通信部は、顕微鏡により得られた観察対象物の画像を、撮像範囲を変更しながら連続的に撮像する撮像装置から、上記撮像された画像を通信路を介して連続的に受信する。上記メモリは、上記受信された上記画像を保持する。上記画像処理部は、上記保持された画像について所定の画像処理を行う。上記撮像制御部は、上記保持された画像の容量が所定容量を超えている間は、上記撮像が中断されるように上記撮像装置を制御する。
【００２２】
本発明のまた別の形態に係る画像処理方法は、顕微鏡により得られた観察対象物の画像を、上記顕微鏡に接続された撮像素子により、撮像範囲を変更しながら連続的に撮像することを含む。上記撮像された画像は、通信路を介して連続的に送信され、上記通信路を介して受信される。上記受信された画像はメモリに保持される。上記メモリに保持された画像については、所定の画像処理が行われる。ここで、上記メモリに保持された画像の容量が所定容量を超えている間は、上記撮像が中断されるように上記撮像素子が制御される。
【００２３】
本発明のさらに別の形態に係るプログラムは、画像処理装置に、受信ステップと、保持ステップと、画像処理ステップと、制御ステップとを実行させる。上記受信ステップでは、顕微鏡により得られた観察対象物の画像を、撮像範囲を変更しながら連続的に撮像する撮像装置から、上記撮像された画像が、通信路を介して連続的に受信される。上記保持ステップでは、上記受信された上記画像が保持される。上記画像処理ステップでは、上記保持された画像について所定の画像処理が行われる。上記制御ステップでは、上記保持された画像の容量が所定容量を超えている間は、上記撮像が中断されるように上記撮像装置が制御される。
【発明の効果】
【００２４】
以上説明したように、本発明によれば、撮像装置側から画像処理装置側へ連続的に転送される画像データの欠損を防ぎながら、画像データを極力リアルタイムに処理することができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の一実施形態に係る画像処理システムの概要を示す図である。
【図２】本発明の一実施形態に係る画像処理システムにおける撮像装置のハードウェア構成及びその周辺のインタフェースを示したブロック図である
【図３】本発明の一実施形態に係るＰＣのハードウェア構成を示したブロック図である。
【図４】本発明の一実施形態に係るＰＣにおける各種画像処理の流れを示した図である。
【図５】本発明の一実施形態に係る撮像装置及びＰＣによる撮像処理の流れを示したフローチャートである。
【図６】本発明の一実施形態に係る撮像装置及びＰＣによる撮像処理における制御系統を示したブロック図である。
【図７】本発明の一実施形態に係るシステムの撮像処理における撮像タイミング等を示すタイミングチャートである。
【図８】図７の撮像処理においてバックプレッシャー処理が発生した場合を示すタイミングチャートである。
【図９】本発明の他の実施形態に係るシステムの撮像処理における撮像タイミング等を示すタイミングチャートである。
【図１０】図９の撮像処理においてバックプレッシャー処理が発生した場合を示すタイミングチャートである。
【発明を実施するための形態】
【００２６】
以下、図面を参照しながら、本発明の実施形態を説明する。
【００２７】
［画像処理システムの概要］
図１は、本発明の一実施形態に係る画像処理システムの概要を示す図である。同図に示すように、この画像処理システムは、撮像装置１００とＰＣ２００とを有する。撮像装置１００は顕微鏡３００と接続され、当該顕微鏡３００の動作を制御し、撮像された画像の読み出しを行う。
【００２８】
顕微鏡３００は、ＸＹＺステージ３１を有する。ＸＹＺステージ３１には、観察対象物である標本３０がＸＹＺ方向に移動自在に載置される。当該ＸＹＺステージ３１の移動は、撮像装置１００が有するステージ制御部により制御される。標本３０は例えば病理標本３０であり、薄くスライスされた人体の組織や臓器がスライドガラスに貼付され、染色されてプレパラート状に形成されている。
【００２９】
ＸＹＺステージ３１の下方には、撮像対象である光像を生成するための光を標本３０へ照射するフラッシュ光源３２及び当該フラッシュ光源３２からの光を標本３０に集光する照明光学系が設けられている。当該フラッシュ光源３２の動作も撮像装置１００により制御される。
【００３０】
ＸＹＺステージ３１の上方には、標本３０側から順に対物レンズ３３、結像レンズ３４及びＣＭＯＳ（Complementary Metal Oxide Semiconductor）基板３５が配置されている。対物レンズ３３は、標本３０を透過した光を集光して標本３０の光像を形成する。当該光像は、図示しない導光光学系を経て、結像レンズ３４により、ＣＭＯＳ基板３５に搭載されたＣＭＯＳセンサに結像される。
【００３１】
ＣＭＯＳ基板３５は、ＣＭＯＳセンサと、上記フラッシュ光源３２と連動する電子シャッターまたはメカニカルシャッターを有する。ＣＭＯＳセンサは、上記ＸＹＺステージ３１が移動する毎に、上記結像された標本３０の光像を、光電変換処理により画像データとして連続的に取得する。当該ＣＭＯＳセンサの代わりに、例えばＣＣＤ（Charge Coupled Device）イメージセンサ等の他の撮像素子が用いられても構わない。
【００３２】
ＣＭＯＳセンサにより逐次取得されたＲＡＷデータとしての画像は、撮像装置１００により読み出され、ＰＣ２００へ連続的に転送される。撮像装置１００とＰＣ２００とは、双方向性及び信頼性を有する高速通信路であるＰＣＩｅバス１０を介して接続されている。ＰＣ２００は、当該画像に種々の画像処理を施して記憶するとともに、当該ＰＣに外部接続されたディスプレイ４００に当該画像処理後の画像を表示する。ＰＣ２００の管理者は、当該ディスプレイに表示される画像処理後の画像を閲覧して、その品質等をチェックする。
【００３３】
図示しないが、当該ＰＣ２００は、ビューアとしての他のＰＣにネットワークを介して接続されており、観察者は当該他のＰＣに接続されたディスプレイによりＰＣ２００に記憶された画像を閲覧し、また各種編集処理等を行い、最終的な病理診断等を行うことができる。
【００３４】
［撮像装置のハードウェア構成］
図２は、当該撮像装置１００のハードウェア構成及びその周辺のインタフェースを示したブロック図である。
【００３５】
同図に示すように、撮像装置１００は、カメラ制御基板１１とＣＭＯＳ＿Ｉ／Ｆ（インタフェース）基板１４とを有する。カメラ制御基板１１には、カメラ制御部１２、メモリ１３が設けられる。カメラ制御部１２は、例えばＦＰＧＡ（Field Programmable Gate Array）として構成され、内部に論理回路を有する。メモリ（以下、カメラメモリと称する）１３は例えばＤＲＡＭ（Dynamic Random Access Memory）等であり、ＣＭＯＳ制御基板３８に搭載されたＣＭＯＳセンサ３６から読み出された画像を保持するバッファとして機能する。
【００３６】
カメラ制御基板１１及びＣＭＯＳ基板３５には所定の通信規格に準拠したＩｍａｇｅｒ＿Ｉ／Ｆ１６、３７がそれぞれ設けられており、当該カメラ制御基板１１とＣＭＯＳ基板３５とは、ＣＭＯＳ＿Ｉ／Ｆ基板１４及びケーブル１５を介して接続されている。カメラ制御部１２は、当該ケーブル１５を介して、ＣＭＯＳセンサ３６により撮像された画像を読み出し、カメラメモリ１３に保持する。またカメラ制御部１２は、ＰＣからの制御の下、上記ＣＭＯＳセンサ３６、上記ＸＹＺステージ３１、フラッシュ光源３２の動作を制御する。上記カメラ制御基板１１とは別に、上記ＸＹＺステージ専用の制御ボックスが別途設けられてもよい。
【００３７】
一方、ＰＣ２００には、カメラ制御基板１１と接続するためのカメラＩＦ基板２９と、メモリ（ＰＣメモリと称する）２３が設けられる。当該ＰＣ２００のカメラＩＦ基板２９と撮像装置１００のカメラ制御基板１１とは、上述したように、ＰＣＩｅバス１０により接続されている。カメラ制御部は、当該ＰＣＩｅバス１０を介して、カメラメモリ１３に保持された画像をＰＣ２００のＰＣメモリ２３へ転送する。このＰＣメモリ２３は、当該受信された画像のバッファとして機能する。
【００３８】
カメラメモリ１３とＰＣメモリ２３との間の画像の転送はＤＭＡ（Direct Memory Access）により行われる。そして、カメラメモリ１３、ＰＣＩｅバス１０、及びＰＣメモリ２３は、ＦＩＦＯ（First In, First Out）として構成される。すなわち、カメラメモリ１３は送信ＦＩＦＯバッファ、ＰＣメモリ２３は受信ＦＩＦＯバッファとしてそれぞれ機能する。
【００３９】
ここで、当該ＰＣＩｅバス１０による伝送の帯域幅（同図帯域Ｂ）は、上記ＣＭＯＳ基板３５とカメラ制御基板１１との間の上記ケーブル１５による伝送の帯域幅（同図帯域Ａ）よりも大きい。これにより、ＣＭＯＳセンサ３６により取得された病理画像等の大容量のＲＡＷデータがＰＣ２００側へスムーズに転送される。
【００４０】
［ＰＣのハードウェア構成］
図３は、上記ＰＣ２００のハードウェア構成を示したブロック図である。同図に示すように、ＰＣ２００は、例えばデュアルコアプロセッサとしてのＣＰＵ２１及びＣＰＵ２２と、各ＣＰＵ２１及び２２に対応した、上記バッファとしての２つのＰＣメモリ２３、２４とを有する。当該各ＰＣメモリ２３、２４には、撮像装置１００から受信した受信した画像を保持するためのバッファがそれぞれ形成される。このバッファは、例えばダブルバッファ、トリプルバッファ等の冗長バッファとして形成される。これにより、病理画像等の大容量のＲＡＷデータが撮像装置１００側からＰＣＩｅバス１０を介して連続して送信されてきても、それを吸収し、伝送中のエラーを極力防ぐことができる。
【００４１】
一方のＣＰＵ２２には、ＰＣＩｅブリッジ２８を介して、２つのＧＰＵ２５、２６が接続されている。詳細は後述するが、一方のＧＰＵ２５は、例えば撮像装置１００から受信した画像の現像処理を担い、他方のＧＰＵ２６は当該画像の、例えばＪＰＥＧ等のフォーマットへのエンコード処理を担う。
【００４２】
他方のＣＰＵ２１には、ＰＣＩｅブリッジ２７を介して、例えば上記カメラＩ／Ｆ基板２９及びＨＤＤ２０が接続される。ＨＤＤ２０には、撮像装置１００から受信し、上記現像、エンコード処理等を経た画像が記憶される。またＨＤＤ２０には、当該現像処理やエンコード処理等に必要な各種アプリケーションも記憶される。
【００４３】
［画像処理システムの動作］
次に、以上のように構成された画像処理システムの動作について説明する。
【００４４】
（パイプライン処理）
まず、ＰＣ２００における各種画像処理について説明する。図４は、当該画像処理の流れを示した図である。
【００４５】
本実施形態においてＰＣ２００は、撮像装置１００側から受信しＰＣメモリ２３及び２４に保持された画像について、上述した現像処理、エンコード処理のほか、入力処理、スティッチ処理、保存処理等の処理をパイプライン化して実行することが可能である。スティッチ処理とは、複数の画像をつなぎ合わせて１つの画像とする処理である。
【００４６】
すなわち、同図に示すように、ＰＣメモリ２３、２４からの画像（フレーム）の入力処理は例えば一方のＣＰＵ２１が担う。続いて、当該入力画像についての現像処理は例えば一方のＧＰＵ２５が担う。続いて、当該現像処理後の画像についてのスティッチ処理は他方のＣＰＵ２２が担う。さらに、当該スティッチ処理後の画像のエンコード（圧縮）処理は他方のＧＰＵ２６が担う。そしてエンコード処理後の画像のＨＤＤ２０への保存処理は、上記入力処理から開放されたＣＰＵ２１が再度担う。もちろん、これらの各種処理と、それを担うプロセッサとの組み合わせは同図に示したものに限られない。
【００４７】
このように、ＰＣ２００は、例えば５つの異なる処理を複数の並列プロセッサによりパイプライン化することで、ＰＣＩｅバス１０を介して受信された大容量のＲＡＷデータに対する画像処理を極力リアルタイムに実行することができる。同図に示すように、入力フレームレートを１フレームにつきＴｓとすると、このパイプライン処理により、１つの画像（フレーム）についての入力から保存までのレイテンシーは４×Ｔｓと、非常に小さくなる。
【００４８】
（撮像制御処理）
次に、上記パイプライン処理と並行して実行される、撮像装置１００による画像の撮像処理及び当該撮像処理についてのＰＣ２００による制御処理について説明する。図５は、当該撮像装置１００及びＰＣ２００による撮像処理の流れを示したフローチャートである。また図６は、当該撮像処理における制御系統を示したブロック図である。
【００４９】
図５に示すように、まず、ＰＣ２００のＣＰＵ２１または２２（以下、便宜上両者をまとめてＣＰＵ２１と称する）は、ＸＹＺステージ３１が停止状態であるか否か、すなわち移動が完了しているか否かを判断する（ステップ５１）。
【００５０】
停止状態であると判断した場合（Ｙｅｓ）、ＣＰＵ２１は、上記ＣＭＯＳセンサ３６が待ち状態であるか否か、すなわち、ＣＭＯＳセンサ３６がカメラメモリ１３への画像の読み出し動作状態にあるか否かを判断する（ステップ５２）。
【００５１】
ＣＭＯＳセンサ３６が待ち状態であると判断した場合（Ｙｅｓ）、ＣＰＵ２１は、上記ＰＣメモリ２３及び２４（以下、便宜上両者をまとめてＰＣメモリ２３と称する）のバッファに空きがあるか、すなわちバッファ内のデータ容量が所定容量以下であるか否かを判断する（ステップ５３）。
【００５２】
上記ＰＣメモリ２３のバッファに空きがあると判断した場合（Ｙｅｓ）、ＣＰＵ２１は、上記カメラ制御部１２に対して、シャッターＯＮコマンドを発行し、シャッター及びフラッシュ光源３２を動作させる（ステップ５４）。
【００５３】
続いて、上記シャッターＯＮコマンドによりシャッターが切られると、カメラ制御部１２は、ＸＹＺステージ３１の、次の撮像のための移動を開始させる（ステップ５５）。またカメラ制御部１２は、上記シャッターＯＮコマンドにより撮像された画像をＣＭＯＳセンサ３６から読み出し、カメラメモリ１３に保存する（ステップ５６、図６の（１）、（２））。
【００５４】
そしてカメラ制御部１２は、当該カメラメモリ１３に保存された画像を読み出し、ＰＣ２００のＰＣメモリ２３へＤＭＡ転送する（ステップ５７、図６の（３）、（４））。
【００５５】
ＰＣ２００では、ＰＣメモリ２３に保存された画像が読み出され、ＣＰＵ２１、ＧＰＵ２５等及び各種アプリケーションにより上述のパイプライン処理が実行される（図６の（５））。
【００５６】
撮像装置１００及びＰＣ２００は、以上の処理を、例えば規定の枚数の画像を撮像してＰＣ２００に保存するまで繰り返す。
【００５７】
以上の処理により、本実施形態に係る画像処理システムでは、ＣＭＯＳセンサ３６からカメラメモリ１３に画像が読み出されている間にＸＹＺステージ３１の移動が完了することとなる。またシャッタータイミングも当該ＸＹＺステージ３１の移動開始と同期することとなる。さらに、ＣＭＯＳセンサ３６からのカメラメモリ１３への画像読み出し処理の完了と、シャッタータイミングとも同期することとなる。これによりＸＹＺステージ３１の移動にかかる時間分の待ち時間が無くなり、より高速に画像が撮像され処理される。
【００５８】
さらに、本実施形態に係る画像処理システムでは、ＰＣメモリ２３に空きがあり、ＣＭＯＳセンサ３６が待ち状態にあり、かつ、ＸＹＺステージ３１が停止状態にある、という３つ条件が揃って初めてシャッターが切られることになる。そして、この制御により、ＰＣ２００は、ＰＣメモリ２３に空きがない場合には撮像装置１００によるシャッター動作を中断させる、バックプレッシャー処理を実行することができる。
【００５９】
図７は、当該撮像処理における撮像タイミング等を示すタイミングチャートである。また図８は、上記撮像処理においてバックプレッシャー処理が発生した場合を示すタイミングチャートである。
【００６０】
図６及び図７に示すように、カメラ制御部１２は、ＸＹＺステージ３１及びＣＭＯＳセンサ３６の状態を監視し、ＸＹＺステージ３１の停止及びＣＭＯＳセンサ３６からの読み出し動作完了（待ち状態）をそれぞれ通知する通知信号（ステージ移動状態通知コマンド、ＣＭＯＳセンサ動作完了通知コマンド）を割り込み信号としてＰＣ２００のＣＰＵ２１へ送信する。ＣＰＵ２１は、これらの通知信号を割り込みとして処理し、またＰＣメモリ２３のバッファの容量を監視して、バッファに空きが出た（解放された）と判断すると、これらの条件を合成して、シャッターＯＮコマンドを生成する。このシャッターＯＮコマンドの発行と同期して、上記図６の（１）〜（５）の処理が実行される。図示しないが、ＰＣ２００は、上記割り込み処理を実行するための割り込みコントローラを有する。ＰＣ２００は、このシャッターＯＮコマンドの生成のための条件を割り込み信号として処理することで、当該条件の調停をより柔軟に行うことができる。
【００６１】
一方、図８に示すように、上記ＣＰＵ２１及びＧＰＵ２５等による画像処理に負荷がかかり、ＰＣメモリ２３のバッファが所定容量を超えた場合には、ＣＰＵ２１は、シャッターＯＮコマンド生成のための３つ目の条件が満たされないため、上記ステージ移動状態通知コマンド及びＣＭＯＳセンサ動作完了通知コマンドが通知されても、シャッターＯＮコマンドの発行はサスペンドされ、バックプレシャー状態となる。
【００６２】
このバックプレッシャー状態ではない通常状態では、ＣＭＯＳセンサ３６からの読み出し完了サイクルがクリティカルパスとなるが、バックプレッシャー状態では、ＰＣメモリ２３のバッファ解放がクリティカルパスとなる。
【００６３】
これによりＰＣ２００は、パイプライン処理の負荷の増大により画像をＰＣメモリ２３で吸収しきれなくなった場合でも、ＰＣＩｅバス１０を介した画像の連続転送中における画像データの欠損を防ぐことができる。
【００６４】
上述のように、撮像装置１００のカメラメモリ１３とＰＣ２００のＰＣメモリ２３及び２４とはＦＩＦＯとして構成されている。したがって当該バックプレッシャーを実行する上で、両者間のハンドシェイクは必要なく、ＰＣ２００のＣＰＵ２１、２２は、当該ＦＩＦＯのキューが詰まっているか否かを管理するだけで、並列処理の種類や状態によらずに、バックプレッシャーを円滑に実行できる。
【００６５】
［変形例］
本発明は上述の実施形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更され得る。
【００６６】
上述の実施形態では、上記シャッターＯＮコマンドの生成のための条件をＰＣ２００が割り込み信号として処理し調停していた。しかし、この調停を、撮像装置１００側で実行しても構わない。図９は、この場合の撮像タイミング等を示すタイミングチャートであり、図１０は、図９の例でバックプレッシャー処理が発生した場合を示すタイミングチャートである。
【００６７】
両図に示すように、この例では、撮像装置１００に、調停器が設けられる。この調停器は、ハードウェアとして実現されてもよいし、ソフトウェアとして実現されてもよい。この調停器は、上記ＸＹＺステージ３１及びＣＭＯＳセンサ３６の動作状態を監視してこれらに関する条件を生成し、またＰＣ２００から、ＰＣメモリ２３の空き状態の条件に関する通知信号を受信する。そして調停器は、これらの条件を合成して、シャッターＯＮコマンドを生成し、カメラ制御部１２にシャッターを切らせる。
【００６８】
また、図１０に示すように、調停器は、上記ＸＹＺステージ３１及びＣＭＯＳセンサ３６の動作が完了しても、ＰＣ２００からＰＣメモリ２３の空き状態の条件に関する通知信号を受信しない限りシャッターＯＮコマンドの発行をサスペンドすることで、バックプレッシャー処理を行う。
【００６９】
このように、シャッターＯＮコマンド生成のための条件の調停を撮像装置１００側の調停器が担うことで、撮像装置１００とＰＣ２００との間のハンドシェイクが減少し、ＰＣ２００側のオーバーヘッドが減少する。また、シャッターＯＮコマンドがＰＣ２００を介さずに撮像装置１００側で発行されるため、シャッターを切るまでのレイテンシーが減少する。
【００７０】
また、上記条件の撮像装置１００側での生成処理とＰＣ２００側での生成処理が組み合わされてもよい。すなわち、ＰＣ２００側で生成した方がよい条件はＰＣ２００が生成し、撮像装置１００側に、ＰＣ２００側の条件と撮像装置１００側の条件とを合成する調停器が設けられてもよい。これにより、ＰＣ２００による柔軟な調停と、上記低レイテンシーの両立が可能となる。ＰＣ２００側でどの条件を生成するかは適宜変更される。
【００７１】
上述の実施形態では、撮像装置１００とＰＣ２００との間はＰＣＩｅにより接続されたが、これ以外にも、例えばＵＳＢ３．０等のその他の汎用高速インタフェースにより接続されてもよい。すなわち、撮像装置からＰＣへの画像の転送に用いられる通信路は、ＣＭＯＳセンサからの画像の読み出しに用いられる帯域幅よりも大きい帯域幅を有し、双方向信頼性を有していればどのようなものでもよい。
【符号の説明】
【００７２】
１０…ＰＣＩｅバス
１２…カメラ制御部
１３…メモリ（カメラメモリ）
１４…ＣＭＯＳ＿Ｉ／Ｆ基板
１５…ケーブル
２０…ＨＤＤ
２１、２２…ＣＰＵ
２３、２４…メモリ（ＰＣメモリ）
２５、２６…ＧＰＵ
２９…カメラＩ／Ｆ基板
３０…標本
３１…ＸＹＺステージ
３２…フラッシュ光源
３６…ＣＭＯＳセンサ
１００…撮像装置
２００…ＰＣ
３００…顕微鏡
【図２】
0005573145.tif 000002
【図３】
0005573145.tif 000003
【図４】
0005573145.tif 000004
【図５】
0005573145.tif 000005
【図６】
0005573145.tif 000006
【図７】
0005573145.tif 000007
【図８】
0005573145.tif 000008
【図９】
0005573145.tif 000009
【図１０】
0005573145.tif 000010
【図１】
0005573145.tif 000011