説明

信号処理装置および信号処理方法、撮影装置、並びにプログラム

【課題】被写体を撮影する距離を容易に制御できるようにする。
【解決手段】 ドライバ42は、ステージコントローラ43から制御信号が1パルス供給される度にモータ24を制御し、ステージ21の位置を予め定められた所定の距離移動させる。信号処理部41のカウンタ51は、ドライバ42に供給される制御信号の1パルスを検知し、座標管理部52は、カウンタ51が1パルスを検知する度にステージ21の座標値を更新し、その更新された座標値を記憶することにより、座標値を管理する。また、格納処理部53は、ディジタルカメラ23による撮影により得られ、供給された被写体の画像に、座標管理部52により管理される、被写体の画像が得られた撮影時の座標値を関連付ける。本発明は、位置を変えて画像を撮影する装置に適用することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、信号処理装置および信号処理方法、撮影装置、並びにプログラムに関し、特に、撮影された画像に基づいて、被写体を撮影する距離を容易に制御できるようにした信号処理装置および信号処理方法、撮影装置、並びにプログラムに関する。
【背景技術】
【0002】
顕微鏡用のオートフォーカス装置においては、被写体までの距離を変えて撮影された被写体の画像に基づいて、最適なフォーカス位置を求める方法がある(例えば、特許文献1)。
【0003】
このような顕微鏡用のオートフォーカス装置においては、例えば、被写体を載せたテーブルを一定の速度で移動させるとともに、カメラが被写体を連続して順次撮影し(例えば、1秒に5回撮影し)、その結果得られた撮影画像の中からピントが合っている撮影画像に対するテーブルの位置が最適なフォーカス位置として決定される。
【0004】
しかしながら、カメラによる撮影時にテーブルが一定の速度で移動しているため、ピントが合っているとされた撮影画像に対するテーブルの位置を正確に求めたり、制御するのは困難であるという課題があった。
【0005】
そこで、被写体を載せたテーブルを一定の距離だけ移動させて停止させ、カメラにより被写体を撮影させた後、再度、テーブルを一定の距離だけ移動させて停止させ、カメラにより被写体を撮影する処理を繰り返すことで、撮影画像とテーブルの位置の関係を正確に求める方法が提案されている。
【特許文献1】特許第2971892号
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、カメラによる撮影の度にテーブルを停止させる場合、迅速にフォーカス位置を検出したり、制御することは困難であるという課題があった。
【0007】
本発明はこのような状況に鑑みてなされたものであり、迅速かつ確実に被写体までの距離を制御できるようにするものである。
【課題を解決するための手段】
【0008】
本発明の情報処理装置は、パルスの数によって、駆動部が撮影部または配置部の位置を移動させる距離を制御するパルスが1つ供給される度に撮影装置の駆動部を制御し、撮影部または配置部の位置を予め定められた所定の距離移動させる駆動部制御手段と、駆動部制御手段に供給されるパルスを検知する検知手段と、検知手段によりパルスが1つ検知される度に撮影装置の撮影部または配置部の座標値を更新し、その更新された座標値を記憶することにより、座標値を管理する管理手段と、撮影装置の撮影部による撮影により得られ、供給された被写体の画像に、管理手段により管理される、被写体の画像が得られた撮影時の座標値を関連付ける関連付け手段とを備えることを特徴とする。
【0009】
関連付け手段は、被写体の画像のデータの所定の位置に座標値のデータを格納することにより、被写体の画像に座標値を関連付けるものとすることができる。
【0010】
関連付け手段により座標値を関連付けられた被写体の画像を指定する指令である指定指令を受け付ける指定指令受付手段と、指定指令受付手段により受け付けられた指定指令により指定された被写体の画像に関連付けられた座標値を取得する第1の座標値取得手段と、管理手段により管理されている現在の座標値を取得する第2の座標値取得手段と、第1の座標値取得手段により取得された、被写体の画像に関連付けられた座標値、および第2の座標取得手段により取得された現在の座標値に基づいて、撮影部または配置部の移動量を演算し、移動量に対応するパルスの数を算出する移動量演算手段と、移動量演算手段により演算された移動量に対応する数のパルスを駆動部制御手段に供給する制御信号供給手段とをさらに備え、駆動部制御手段は、制御信号供給手段により供給された移動量に対応する数のパルスに基づいて、駆動部を制御するものとすることができる。
【0011】
撮影装置より供給された被写体の画像に基づいて、被写体の画像の合焦度を算出する合焦度算出手段をさらに備え、関連付け手段は、被写体の画像に、さらに、合焦度算出手段により算出された合焦度を関連付けるものとすることができる。
【0012】
本発明の情報処理方法は、パルスの数によって、駆動部が撮影部または配置部の位置を移動させる距離を制御するパルスが1つ供給される度に撮影装置の駆動部を制御し、撮影部または配置部の位置を予め定められた所定の距離移動させる駆動部制御ステップと、駆動部制御ステップの処理により供給されるパルスを検知する検知ステップと、検知ステップの処理によりパルスが1つ検知される度に撮影装置の撮影部または配置部の座標値を更新し、その更新された座標値を記憶することにより、座標値を管理する管理ステップと、撮影装置の撮影部による撮影により得られ、供給された被写体の画像に、管理ステップの処理により管理される、被写体の画像が得られた撮影時の座標値を関連付ける関連付けステップとを含むことを特徴とする。
【0013】
本発明のプログラムは、パルスの数によって、駆動部が撮影部または配置部の位置を移動させる距離を制御するパルスが1つ供給される度に撮影装置の駆動部を制御し、撮影部または配置部の位置を予め定められた所定の距離移動させる駆動部制御ステップと、駆動部制御ステップの処理により供給されるパルスを検知する検知ステップと、検知ステップの処理によりパルスが1つ検知される度に撮影装置の撮影部または配置部の座標値を更新し、その更新された座標値を記憶することにより、座標値を管理する管理ステップと、撮影装置の撮影部による撮影により得られ、供給された被写体の画像に、管理ステップの処理により管理される、被写体の画像が得られた撮影時の座標値を関連付ける関連付けステップとを含む処理をコンピュータに実行させることを特徴とする。
【0014】
第1の本発明においては、パルスが1つ供給される度に撮影装置の駆動部が制御され、撮影部または配置部の位置が予め定められた所定の距離移動され、パルスが1つ検知される度に撮影装置の撮影部または配置部の座標値が更新され、座標値が管理される。また、撮影装置の撮影部による撮影により得られ、供給された被写体の画像に、被写体の画像が得られた撮影時の座標値が関連付けられる。
【0015】
本発明の撮影装置は、撮影部を制御して、配置部に配置された被写体を撮影する撮影制御手段と、パルスの数によって、駆動部が撮影部または配置部の位置を移動させる距離を制御するパルスが1つ供給される度に駆動部を制御し、撮影部または配置部の位置を予め定められた所定の距離移動させる駆動部制御手段と、駆動部制御手段に供給されるパルスを検知する検知手段と、検知手段によりパルスが1つ検知される度に撮影部または配置部の座標値を更新し、その更新された座標値を記憶することにより、座標値を管理する管理手段と、撮影制御手段により制御されて撮影部が行う撮影により得られた被写体の画像に、管理手段により管理される、撮影時の座標値を関連付ける関連付け手段とを備えることを特徴とする。
【0016】
第2の本発明においては、配置部に配置された被写体の撮影が制御され、パルスが1つ供給される度に駆動部が制御されて、撮影部または配置部の位置を予め定められた所定の距離移動され、パルスが1つ検知される度に撮影部または配置部の座標値が更新され、その更新された座標値が管理される。また、制御されて撮影部が行う撮影により得られた被写体の画像に、撮影時の座標値が関連付けられる。
【発明の効果】
【0017】
本発明によれば、被写体までの距離を制御することができる。特に、本発明によれば、迅速かつ確実に被写体までの距離を制御することができる。
【発明を実施するための最良の形態】
【0018】
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が、本明細書に記載されていることを確認するためのものである。したがって、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【0019】
更に、この記載は、本明細書に記載されている発明の全てを意味するものでもない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。
【0020】
請求項1に記載の情報処理装置は、被写体を配置する配置部(例えば、図2のステージ21)、前記配置部に配置された被写体を撮影する撮影部(例えば、図2のディジタルカメラ23)、および、前記撮影部または前記配置部の位置を移動させる駆動部(例えば、図2のモータ24)を有する撮影装置(例えば、図2の顕微鏡11)に対して、前記駆動部を制御することにより、前記撮影部による前記被写体の撮影時における、前記撮影部と前記被写体との距離を制御する情報処理装置(例えば、図2の信号処理装置12)であって、パルスの数によって、前記駆動部が前記撮影部または前記配置部の位置を移動させる距離を制御するパルスが1つ供給される度に前記撮影装置の前記駆動部を制御し、前記撮影部または前記配置部の位置を予め定められた所定の距離移動させる駆動部制御手段(例えば、図2のドライバ42)と、前記駆動部制御手段に供給される前記パルスを検知する検知手段(例えば、図2のカウンタ52)と、前記検知手段により前記パルスが1つ検知される度に前記撮影装置の前記撮影部または前記配置部の座標値を更新し、その更新された座標値を記憶することにより、前記座標値を管理する管理手段(例えば、図2の座標管理部52)と、前記撮影装置の前記撮影部による撮影により得られ、供給された被写体の画像(例えば、撮影画像)に、前記管理手段により管理される、前記被写体の画像が得られた撮影時の前記座標値を関連付ける関連付け手段(例えば、図2の格納処理部53)とを備えることを特徴とする。
【0021】
請求項2に記載の情報処理装置の前記関連付け手段(例えば、図2の格納処理部53)は、前記被写体の画像のデータの所定の位置に前記座標値のデータ(例えば、座標値Z)を格納することにより、前記被写体の画像に前記座標値を関連付けることを特徴とする。
【0022】
請求項3に記載の情報処理装置は、前記関連付け手段により前記座標値を関連付けられた前記被写体の画像を指定する指令である指定指令を受け付ける指定指令受付手段(例えば、図12のステップS148の処理を実行する図2の操作入力部61)と、前記指定指令受付手段により受け付けられた前記指定指令により指定された前記被写体の画像に関連付けられた前記座標値(例えば、座標値Z')を取得する第1の座標値取得手段(例えば、図12のステップS150の処理を実行する図2の移動指令部62)と、前記管理手段により管理されている現在の前記座標値(例えば、座標値Z)を取得する第2の座標値取得手段(例えば、図9のステップS101の処理を実行する図2の移動量演算部45)と、前記第1の座標値取得手段により取得された、前記被写体の画像に関連付けられた座標値(例えば、座標値Z')、および前記第2の座標取得手段により取得された前記現在の座標値(例えば、座標値Z)に基づいて、前記撮影部または前記配置部の移動量を演算し、前記移動量に対応する前記パルスの数(例えば、パルス数N)を算出する移動量演算手段(例えば、図9のステップS102の処理を実行する移動量演算部45)と、前記移動量演算手段により演算された前記移動量に対応する数のパルスを前記駆動部制御手段に供給する制御信号供給手段(例えば、図9のステップS103に対応する図6のステップS51の処理を実行する図2のステージコントローラ43)とをさらに備え、前記駆動部制御手段は、前記制御信号供給手段により供給された前記移動量に対応する数のパルスに基づいて、前記駆動部を制御する(例えば、図4のステップS22)ことを特徴とする。
【0023】
請求項4に記載の情報処理装置は、前記撮影装置より供給された前記被写体の画像に基づいて、前記被写体の画像の合焦度を算出する合焦度算出手段(例えば、図2のピント値算出部44)をさらに備え、前記関連付け手段は、前記被写体の画像に、さらに、前記合焦度算出手段により算出された前記合焦度を関連付けることを特徴とする。
【0024】
請求項5に記載の情報処理方法は、被写体を配置する配置部(例えば、図2のステージ21)、前記配置部に配置された被写体を撮影する撮影部(例えば、図2のディジタルカメラ23)、および、前記撮影部または前記配置部の位置を移動させる駆動部(例えば、図2のモータ24)を有する撮影装置(例えば、図2の顕微鏡11)に対して、前記駆動部を制御することにより、前記撮影部による前記被写体の撮影時における、前記撮影部と前記被写体との距離を制御する情報処理装置(例えば、図2の信号処理装置12)の情報処理方法であって、パルスの数によって、前記駆動部が前記撮影部または前記配置部の位置を移動させる距離を制御するパルスが1つ供給される度に前記撮影装置の前記駆動部を制御し、前記撮影部または前記配置部の位置を予め定められた所定の距離移動させる駆動部制御ステップ(例えば、図4のステップS22)と、前記駆動部制御ステップの処理により供給される前記パルスを検知する検知ステップ(例えば、図6のステップS52)と、前記検知ステップの処理により前記パルスが1つ検知される度に前記撮影装置の前記撮影部または前記配置部の座標値を更新し、その更新された座標値を記憶することにより、前記座標値を管理する管理ステップ(例えば、図6のステップS53)と、前記撮影装置の前記撮影部による撮影により得られ、供給された被写体の画像(例えば、撮影画像)に、前記管理ステップの処理により管理される、前記被写体の画像が得られた撮影時の前記座標値を関連付ける関連付けステップ(例えば、図7のステップS66)とを含むことを特徴とする。
【0025】
請求項6に記載のプログラムは、被写体を配置する配置部(例えば、図2のステージ21)、前記配置部に配置された被写体を撮影する撮影部(例えば、図2のディジタルカメラ23)、および、前記撮影部または前記配置部の位置を移動させる駆動部(例えば、図2のモータ24)を有する撮影装置(例えば、図2の顕微鏡11)に対して、前記駆動部を制御することにより、前記撮影部による前記被写体の撮影時における、前記撮影部と前記被写体との距離を制御するプログラムであって、パルスの数によって、前記駆動部が前記撮影部または前記配置部の位置を移動させる距離を制御するパルスが1つ供給される度に前記撮影装置の前記駆動部を制御し、前記撮影部または前記配置部の位置を予め定められた所定の距離移動させる駆動部制御ステップ(例えば、図4のステップS22)と、前記駆動部制御ステップの処理により供給される前記パルスを検知する検知ステップ(例えば、図6のステップS52)と、前記検知ステップの処理により前記パルスが1つ検知される度に前記撮影装置の前記撮影部または前記配置部の座標値を更新し、その更新された座標値を記憶することにより、前記座標値を管理する管理ステップ(例えば、図6のステップS53)と、前記撮影装置の前記撮影部による撮影により得られ、供給された被写体の画像(例えば、撮影画像)に、前記管理ステップの処理により管理される、前記被写体の画像が得られた撮影時の前記座標値を関連付ける関連付けステップ(例えば、図7のステップS66)とを含む処理をコンピュータに実行させることを特徴とする。
【0026】
請求項7に記載の撮影装置は、被写体を配置する配置部(例えば、図2のステージ21)、前記配置部に配置された被写体を撮影する撮影部(例えば、図2のディジタルカメラ23)、および、前記撮影部または前記配置部の位置を移動させる駆動部(例えば、図2のモータ24)を有する撮影装置(例えば、図2のオートフォーカスシステム1)であって、前記撮影部を制御して、前記配置部に配置された前記被写体を撮影する撮影制御手段(例えば、図2の顕微鏡11)と、パルスの数によって、前記駆動部が前記撮影部または前記配置部の位置を移動させる距離を制御するパルスが1つ供給される度に前記駆動部を制御し、前記撮影部または前記配置部の位置を予め定められた所定の距離移動させる駆動部制御手段(例えば、図2のドライバ42)と、前記駆動部制御手段に供給される前記パルスを検知する検知手段(例えば、図2のカウンタ52)と、前記検知手段により前記パルスが1つ検知される度に前記撮影部または前記配置部の座標値を更新し、その更新された座標値を記憶することにより、前記座標値を管理する管理手段(例えば、図2の座標管理部52)と、前記撮影制御手段により制御されて前記撮影部が行う撮影により得られた被写体の画像(例えば、撮影画像)に、前記管理手段により管理される、前記撮影時の前記座標値を関連付ける関連付け手段(例えば,図2の格納処理部53)とを備えることを特徴とする。
【0027】
以下、図を参照して、本発明の実施の形態について説明する。
【0028】
図1は、本発明を適用したオートフォーカスシステムの全体の構成例を示す図である。
【0029】
このオートフォーカスシステム1においては、顕微鏡11に信号処理装置12が(ケーブルを介して)接続されている。また、信号処理装置12には、パーソナルコンピュータ13が(ケーブルを介して)接続されている。
【0030】
顕微鏡11には、主に、ステージ21、レンズ22、ディジタルカメラ23、およびモータ(モータカプラ)24が設けられている。被写体を配置する(載せる)ステージ21は、モータ24と接続されており、モータ24の駆動に伴って図中上または下に移動する。すなわち、モータ24は、ステージ21の位置を、信号処理装置12からの制御に基づいて移動させる。ディジタルカメラ23は、レンズ22を介して入射された被写体の光学像を撮影し、撮影して得られた画像(以下、撮影画像と称する)を信号処理装置12に供給する。すなわち、ディジタルカメラ23は、ステージ21に配置された被写体を撮影する。なお、本実施の形態では、モータ24が、ステージ21を移動させるようにしたが、ディジタルカメラ23を移動させて、ディジタルカメラ23による被写体の撮影時における、ディジタルカメラ23と被写体との距離を制御するようにしてもよい。
【0031】
信号処理装置12には、信号処理装置12に対してユーザが指令を入力するためのコントローラ31が接続されている。信号処理装置12は、このコントローラ31またはパーソナルコンピュータ13に入力された、ユーザからの指令に基づいて、モータ24を駆動させる制御信号をモータ24に出力したり、ディジタルカメラ23から供給される撮影画像を取得し、所定の処理を実行する。例えば、信号処理装置12は、ディジタルカメラ23から供給される撮影画像のデータに、ステージ21の位置の座標を示す値である座標値Zを関連付けてパーソナルコンピュータ13に供給する。また例えば、信号処理装置12は、ディジタルカメラ23から供給される撮影画像のデータに、その撮影画像の合焦度(ピント合い具合を値にしたピント値AFV(Auto Focus Value))を関連付けてパーソナルコンピュータ13に供給する。
【0032】
パーソナルコンピュータ13は、ユーザからの指令を受け付け、その指令に基づく制御信号を信号処理装置12に供給する。また、パーソナルコンピュータ13は、信号処理装置12から供給される、ステージ21の座標値Zが関連付けられた撮影画像のデータを取得し、撮影画像を表示する。
【0033】
なお、図1の顕微鏡11は、汎用の顕微鏡であり、ディジタルカメラ23とモータ(モータカプラ)24を装着した状態である。
【0034】
図2は、図1のオートフォーカスシステム1の機能的構成例を示すブロック図である。
【0035】
顕微鏡11には、ステージ21、レンズ22、ディジタルカメラ23、およびモータ)モータカプラ)24が設けられている。ステージ21は、被写体を配置する。ディジタルカメラ23は、レンズ22を介して入射された被写体の光学像を撮影し、撮影して得られた撮影画像を信号処理部12の信号処理部41とピント値算出部44に供給する。モータ24はステージ21と接続されており、ステージの位置を移動させる。具体的には、モータ24は、信号処理装置12から制御信号(パルス)を受け付け、駆動する。この制御信号は、所定の周波数の周期信号(パルス)であり、その周期数によって、モータ24の駆動量が変化する。例えば、モータ24に制御信号が1周期分供給される度に(パルスが1つ供給される度に)、ステージ21の位置が予め定められた所定の距離だけ移動する。すなわち、モータ24は、1周期分(1パルス)の制御信号に対して、一定量だけ駆動する。換言すれば、モータ24の駆動量と、パルスの数(制御信号1周期分の数)とは、比例関係にある。このように、図2の例においては、ステージ21とモータ24により、ディジタルカメラ23から被写体までの距離が制御される。
【0036】
信号処理装置12には、信号処理部41、ドライバ42、ステージコントローラ43、ピント値算出部44、および移動量演算部45が設けられている。また、信号処理部41には、カウンタ51、座標管理部52、および格納処理部53がさらに設けられており、信号処理部41内部では、それぞれデータの授受が可能である。
【0037】
移動量演算部45は、コントローラ31またはパーソナルコンピュータ13に入力された、ユーザからのステージ21の移動の指令(すなわち、ディジタルカメラ23からステージ21までの距離の変更の指令)に基づいて、移動量を演算する。例えば、移動量演算部45は、ユーザからのステージ21の移動の指令に基づいて、ステージ21の移動量を演算し、その移動量に対応する制御信号の周期数(パルス数N)を算出する。
【0038】
ユーザが行う移動の指令には2種類あり、1つ目は、粗い(アバウトな)移動の指令(以下、粗移動の指令と称する)であり、2つ目は、細かい移動の指令(以下、微移動の指令と称する)である。粗移動は、被写体の撮影を初めて行う場合に指令され、微移動は、粗移動の指令に基づく撮影により一通り被写体の撮影が行われた後、さらに細かい位置を指定して撮影するとき等に指令される。より具体的には、粗移動の指令は、例えば、ステージ21を1cm(センチメートル)上に移動させるような、パルスの数に誤差が生じる指令であり、微移動の指令は、例えば、ステージ21の座標値(目標となる座標値Z')を指定するような、パルスの数に誤差が生じない指令である。
【0039】
このような粗移動または微移動の指令に基づいて、移動量演算部45は、ユーザにより指令された移動量が、ステージコントローラ43が発生する制御信号の何周期分(何パルス)に該当するかを演算する(後述するパルス数Nを演算する)。また、移動量演算部45は、演算した結果(必要なパルスの数N)を、ステージコントローラ43に供給する。また、移動量演算部45は、信号処理部41の座標管理部52から供給される現在のステージ21の座標値Zと、ユーザにより指令されたステージ21の座標値Z'(すなわち、目的とするステージ21の座標値Z')に基づいて、ステージ21の移動量を演算する。
【0040】
ステージコントローラ43は、移動量演算部45から供給された移動量の演算結果(パルス数N)に対応する数のパルスを(1パルスずつ)ドライバ42と信号処理部41に供給する。例えば、ステージコントローラ43は、移動量演算部45により演算された移動量に対応する周期数分の制御信号をドライバ42に供給する。
【0041】
ドライバ42は、ステージコントローラ43により供給された移動量に対応する数のパルスに基づいて、モータ24を制御する。例えば、ドライバ42は、所定の周波数の周期信号であり、その周期数(パルスの数)によって、モータ24がステージ21の位置を移動させ、距離を制御する制御信号が1周期分(1パルス)供給される度に顕微鏡11のモータ24を制御し、ステージ21の位置を予め定められた所定の距離移動させる。すなわち、ステージコントローラ43が発生するパルスの数と、モータ24の駆動量は比例関係にある。
【0042】
ピント値算出部44は、ディジタルカメラ23から供給されてきた撮影画像の輝度のクラス間分散値を算出し、算出した輝度のクラス間分散値をピント値(AFV)とする。このピント値は、撮影画像のピント合い具合を値で表わすものであり、その値が大きい値であるほど、ピントが合っている。
【0043】
信号処理部41は、ステージコントローラ43からの制御信号、移動量演算部45からの現在のステージ21の位置(座標値)の問い合わせ、顕微鏡11のディジタルカメラ23から供給される撮影画像、またはピント値算出部44から供給される撮影画像のピント値AFVを受け付け、これに対応する各種の処理を実行する。例えば、信号処理部41のカウンタ51は、ドライバ42に供給される制御信号の1周期(パルス)を検知する。すなわち、カウンタ51は、ステージコントローラ43から供給される制御信号の1周期分(1パルス)を検出する。座標管理部52は、カウンタ51により制御信号の1周期(1パルス)が検知される度に顕微鏡11のステージ21の座標値を更新し、その更新された座標値を記憶することにより、その座標値を管理する。すなわち、座標管理部52は、ステージ21の座標を、ステージコントローラ43からの制御信号に基づいて管理する。例えば、座標管理部52は、カウンタ51により1パルスが検出された場合に、ステージ21の位置に対応する値である座標値Zを更新する。換言すれば、座標管理部52は、現在のステージ21の座標を保持している。
【0044】
格納処理部53は、顕微鏡11のディジタルカメラ23から供給された撮影画像を受け付け、撮影画像に、その撮影画像を撮影した時点における座標値Z(座標管理部52が保持している現在のステージ21の位置を示す座標値Z)を格納(付加)する。すなわち、格納処理部53は、ディジタルカメラ23による撮影により得られ、供給された被写体の画像に、座標管理部52により管理される、被写体の画像が得られた撮影時の座標値を関連付ける。なお、格納処理部53は、撮影画像のデータ(例えば、撮影画像の上部の横方向の1ライン分のデータを、座標値Zで置き換えることで、座標値Zを格納するようにしてもよいし、撮影画像そのものの上部に、数値を表す画像のデータを埋め込むことで、座標値Zを格納するようにしてもよい。すなわち、後段の座標値取得部65や表示制御部66が、撮影画像に格納された座標値Zを読み取り可能な形式であれば、どのような形式で格納が行われてもよい。また、格納処理部53は、ピント値算出部44から供給されるピント値AFVを取得し、これを、撮影画像に格納する。これにより、撮影された時点のステージ21の位置を示す座標値が、撮影画像に関連付けられる。信号処理部41は、格納処理部53により座標値(撮影画像が撮影された時点における座標値)が格納された撮影画像を、パーソナルコンピュータ13の画像取得部63に供給する。
【0045】
コントローラ31は、例えば、ディジタルカメラ23の移動に関する指令(粗移動の指令)を受け付ける。
【0046】
パーソナルコンピュータ13には、操作入力部61、移動指令部62、画像取得部63、記憶部64、座標値取得部65、表示制御部66、および表示部67が設けられている。
【0047】
操作入力部61は、ユーザからの操作入力を受け付ける。操作入力部61は、例えば、ユーザからのステージ21の移動(被写体からディジタルカメラ23までの距離の変更)に関する指令(粗移動の指令)を受け付け、受け付けた操作入力に対応する信号を、移動指令部62に供給する。また、操作入力部61は、ステージ21の移動の指令として、信号処理装置12により座標値が関連付けられた被写体の画像の指定を受け付ける。なお、実際には、操作入力部61に、ステージ21の移動を指令する操作(粗移動の指令と微移動の指令)以外の操作として、例えば、ディジタルカメラ23による撮影の頻度、被写体への光量などの変更を指令する操作も入力されると考えられる。この場合には、これらの操作入力に対応する処理が適宜実行されるが、その処理の詳細については、直接本発明とは関係ないため、省略している。
【0048】
移動指令部62は、操作入力部61から供給された操作入力に対応する信号に基づいて、ステージ21の移動を指令する。例えば、ステージ21の位置を1cm上に上げるような操作入力に対応する信号が供給された場合(すなわち、ユーザが粗移動の指令を行った場合)、ステージ21を1cm上に上げる指令を、信号処理装置12の移動量演算部45に対して行う。また、例えば、ステージの位置21を変更するために、画像が選択されたことを示す信号が供給された場合(すなわち、ユーザが微移動の指令として目的の画像を選択した場合)、移動指令部62は、選択された画像に対応する座標値Z'を、座標値取得部65から取得し、取得した座標値Z'と移動の指令とをあわせて信号処理装置12の移動量演算部45に供給する。また、例えば、ステージの位置21を変更するために、座標値Z'が入力されたことを示す信号が供給された場合(すなわち、ユーザが微移動の指令として目的の座標値Z'を入力した場合)、移動指令部62は、入力された座標値Z'と移動の指令とをあわせて信号処理装置12の移動量演算部45に供給する。このように、移動指令部62は、粗移動または微移動を、信号処理装置12の移動量演算部45に対して指令する。また、移動指令部62は、微移動を指令する場合には、目的の座標値Z'と移動の指令とをあわせて信号処理装置12の移動量演算部45に供給する。
【0049】
これに対して、信号処理装置12の移動量演算部45は、移動量演算部45から供給される移動の指令に基づいて、ステージの移動量に対応して、発生するパルス数Nを演算(算出)する。例えば、移動指令部62により取得された、被写体の画像に関連付けられた座標値Z'、および信号処理装置12の座標管理部52により取得された現在の座標値Zに基づいて、ステージ21の移動量を演算し、移動量に対応するパルスの数Nを算出する。例えば、移動量演算部45は、移動指令部62から微移動として目的の座標値Z'が供給されてきた場合、信号処理装置12の座標管理部52に管理されている現在のステージ21の座標値Zを取得し、これらに基づいて、移動量を演算し、発生するパルス数N(必要なパルス数N)を算出する。
【0050】
画像取得部63は、信号処理部41から供給される撮影画像(撮影画像に座標値およびピント値が格納された画像)を取得する。また、画像取得部63は、取得した撮影画像(撮影画像に座標値が格納された画像)を、記憶部64に供給する。記憶部64は、画像取得部63から供給された、座標値およびピント値が格納された撮影画像を記憶する。この記憶部64は、例えば、バッファメモリである。
【0051】
座標値取得部65は、記憶部64に記憶されている、座標値およびピント値が格納されている撮影画像を読み出し、この撮影画像から、座標値を取得する。また例えば、座標値取得部65は、表示部67に表示されている画像に対応する座標値を取得する。
【0052】
表示制御部66は、記憶部64に記憶されている、座標値およびピント値が格納された撮影画像を読み出し、座標値およびピント値が格納されている撮影画像の表示部67への表示を制御する。すなわち、表示制御部66は、撮影画像を表示部67へ表示するよう制御する。また、表示制御部66は、撮影画像に格納されている座標値およびピント値を、撮影画像とともに表示部67に表示するよう制御する。
【0053】
図2をまとめると、以下のようになる。最初にユーザにより粗移動の指令が行われると、ステージコントローラ43は、移動量演算部45から供給される移動量(パルス数N)に基づいてパルスを順次発生する。ドライバ42は、このパルスに基づいて顕微鏡11のステージ21を移動させる制御信号を発生する。また、信号処理部41は、ステージコントローラ43からのパルスを検出して、正確な座標を管理するとともに、撮影された時点におけるステージ21の座標値Zを撮影画像に格納し、パーソナルコンピュータ13に出力する。これにより、粗移動に基づいて撮影された撮影画像と、座標値とが表示部67に表示される。次に、ユーザは、この表示部67の表示を見て、より細かく撮影を行いたいものについて、微移動の指令を行う。この微移動の指令は、表示部67に表示された画像を選択するものであってもよいし、表示部67に表示された座標値を指定するものであってもよい。このユーザの微移動の指令に基づいて、移動指令部62が目的の座標値Z'を、微移動の指令とともに移動量演算部45に供給する。そして、移動量演算部45は、現在の座標値Zと目的の座標値Z'に基づいて移動量を演算するとともに、移動量に対応するパルスの数Nを算出する。ステージコントローラ43は、演算された結果の移動量に対応する数のパルス(Nパルス)を発生し、ドライバ42に供給する。このように、信号処理部41が、ステージコントローラ43からのパルスを検出して、正確な座標を管理するとともに、撮影された時点における座標値Zを撮影画像に格納するようにしたので、より細かくステージ21の位置を制御することができる。また、ステージ21を移動させながら撮影を行った場合においても、ステージ21の位置と撮影画像を、より、正確に関連付けることができる。さらに、撮影した時点における座標値を撮影画像に格納するようにしたので、撮影した時点におけるステージ21の位置の再現を、容易に行うことができる。
【0054】
すなわち、ステージコントローラ43が発生する1パルス(1周期分の制御信号)の入力に対する、モータ24の移動量は一定であるので、信号処理部41のカウンタ51がパルスを検出し、座標管理部52が、カウンタ51によりパルスが検出された場合に、現在のステージの座標値Zを更新することで、ステージ21の座標値Zを正確に把握することができる。ディジタルカメラ23は、ステージ21の上に配置されている被写体を撮影し、撮影画像を得る。このとき、座標管理部52が保持している座標値Aと、ディジタルカメラ23から供給された撮影画像は、ステージ21の位置と座標値が対応している。そこで、信号処理部41の格納処理部53は、この座標値Zを、撮影画像に格納することで、ステージ21の位置と撮影画像を確実に関連付ける。これにより、撮影画像とステージ21の位置を容易に制御することができる。
【0055】
次に、図2のオートフォーカスシステム1の各部(顕微鏡11、信号処理装置12、およびパーソナルコンピュータ13)の処理について説明する。
【0056】
最初に、図3と図4を参照して、図2の顕微鏡11における処理について説明する。図3は、図2の顕微鏡11における撮影処理を説明するフローチャートである。なお、この処理は、ユーザにより顕微鏡11の電源がオンされたとき開始される。
【0057】
ステップS11において、ディジタルカメラ23は、ステージ21の上に載せられている被写体を撮影する。
【0058】
ステップS12において、ディジタルカメラ23は、撮影して得られた画像である撮影画像を、信号処理装置12に供給する。この撮影画像は、信号処理装置12の信号処理部41とピント値算出部44とにより受け付けられる。
【0059】
ステップS13において、ディジタルカメラ23は、撮影処理を終了するか否かを判定する。例えば、ユーザにより撮影処理の終了が指令された場合、または顕微鏡11の電源をオフするような指令がされた場合に、ディジタルカメラ23は、撮影処理を終了すると判定する。ステップS13において、撮影処理を終了しないと判定された場合、処理はステップS11に戻り、それ以降の処理が繰り返される。ステップS13において、撮影処理を終了すると判定された場合、処理は終了される。
【0060】
なお、ステップS11におけるディジタルカメラ23の撮影は、動画像の撮影(例えば、1秒間に30回撮影)するようなものであってもよいし、静止画像の撮影(例えば、0.2秒に1回撮影)するようなものであってもよい。
【0061】
図4は、図2の顕微鏡11におけるステージ21移動処理を説明するフローチャートである。なお、この処理は、ユーザにより顕微鏡11の電源がオンされたとき開始される。また、図4の処理は、図3の処理と並行して実行される処理である。
【0062】
ステップS21において、モータ24は、信号処理装置12のドライバ42から制御信号が供給されたか否かを判定し、制御信号が供給されるまで待機する。例えば、ユーザからステージ21の位置の移動(すなわち、ディジタルカメラ23から被写体までの距離の変更)が指令された場合に、所定の処理が実行されて、モータ24に制御信号が(例えば、1パルスずつ)供給されてくるので、モータ24は、この制御信号が供給されてくるまで処理を待機する。
【0063】
ステップS21において、制御信号が供給されたと判定された場合、処理はステップS22に進み、モータ24は、供給されてきた制御信号に基づいて駆動し、ステージ21の位置を移動させる。モータ24は、供給されてきたパルスの数に応じて、一定量だけ駆動することで、ステージ21の位置を一定の量だけ移動させる。例えば、1パルスが(制御信号が1周期分)供給されてきた場合、モータ24は、1パルスに対応する量だけ駆動し、ステージ21を、一定の量だけ移動させる。なお、上述したように、このモータ24の駆動量、すなわち、ステージ21の移動量は、パルスの数に比例している。換言すれば、例えば、パルスが5つ供給されてきた場合、モータ24は5パルスに対応する量だけ駆動し、ステージ21を、1パルスに対応する移動量の、5倍の移動量を移動させる。
【0064】
ステップS23において、モータ24は、ステージ移動処理を終了するか否かを判定する。例えば、ユーザにより顕微鏡11の電源をオフするような指令がされた場合に、モータ24は、ステージ移動処理を終了すると判定する。ステップS23において、ステージ21移動処理を終了しないと判定された場合、処理はステップS21に戻り、それ以降の処理が繰り返される。ステップS23において、撮影処理を終了すると判定された場合、処理は終了される。
【0065】
図3と図4の処理により、被写体までの距離(ステージ21までの距離)が順次変更されるとともに、ディジタルカメラ23により順次撮影が行われる。すなわち、ディジタルカメラ23は、被写体までの距離を変えて、順次撮影を行うことで、異なる位置から被写体を撮影した撮影画像を出力する。なお、撮影とステージ21の移動を、同期させるようにしてもよいし、非同期とさせるようにしてもよい。
【0066】
次に、図5乃至図9を参照して、図2の信号処理装置12における処理について説明する。図5は、図2の信号処理装置12における粗移動処理を説明するフローチャートである。なお、この処理は、図2の信号処理装置12に粗移動の指令が供給されてきた場合に開始される。例えば、図2の信号処理装置12の移動量演算部45に、コントローラ31またはパーソナルコンピュータ13の移動指令部62から、ユーザからの粗移動の指令に基づく信号が供給されてきたとき開始される。
【0067】
ステップS31において、移動量演算部45は、パーソナルコンピュータ13の移動指令部62またはコントローラ31から供給された粗移動の指令(例えば、ステージ21を1cm上に上げる指令)に基づいて、移動量に対するパルス数Nを演算する。例えば、移動量演算部45には、コントローラ31または移動指令部62から、所定の距離だけステージ21を移動させるような粗移動の指令が供給されるので、移動量演算部45は、その移動距離に対応するパルスの数Nを演算する。より具体的には、ユーザにより、ステージ21を1cm上に移動させるような粗移動が指令された場合、移動量演算部45は、1cm上に移動させるために必要となるパルスの数を演算し、これをNパルス(例えば、N=50パルス)とする。移動量演算部45は、演算結果(移動に必要なパルスの数N)を、ステージコントローラ43に供給する。
【0068】
ステップS32において、ステージコントローラ43は、移動量演算部45から演算結果(指令された移動量だけ移動するために必要なパルス数N)を取得し、これまでに発生したパルスの数nをn=0とする(nを初期化)。すなわち、必要なパルスNに対して、まだパルスを発生していない(発生回数が0)であるので、n=0と設定する。
【0069】
ステップS33において、信号処理装置12は、パルス発生処理を開始する。具体的には、ステージコントローラ43が制御信号を1パルスずつ発生し、信号処理部41のカウンタ51がパルスを検出するとともに座標管理部52が座標を管理し、ドライバ42が1パルスに対応する量だけモータ24を駆動させる制御信号を出力する。なお、この処理の詳細は、図6を参照して後述する。
【0070】
ステップS34において、信号処理装置12は、格納処理を開始する。具体的には、撮影された時点における座標値を、撮影画像に格納し、パーソナルコンピュータ13に出力する。なお、この処理の詳細は、図7を参照して後述する。この後、処理は(例えば、電源がオフされたとき)終了される。
【0071】
なお、ステップS33とステップS34の処理は、並行して実行される。すなわち、パルスの発生処理と、撮影画像への座標値の格納の処理は、並行して実行される。
【0072】
次に、図6のフローチャートを参照して、図5のステップS33の処理において開始される、パルス発生処理の詳細を説明する。
【0073】
ステップS51において、ステージコントローラ43は、1パルス(制御信号1周期分)を発生し、発生したパルスの数nをn=n+1とする。すなわち、1回目のステップS51の処理では、n=0であるので(図5のステップS32でnが初期化されたので)、n=0+1=1とする。換言すれば、パルスを1発生する毎に、ステージコントローラ43は、nの数を1だけ加算する。ステージコントローラ43により発生されたパルス(制御信号)は、ドライバ42と信号処理部41に供給される。
【0074】
ステップS52において、信号処理部41のカウンタ51は、ステージコントローラ43からの制御信号に基づいて1パルスを検出する。
【0075】
ステップS53において、座標管理部52は、座標を更新する。すなわち、ステップS52の処理で、カウンタ51によりパルスが検出されたので、座標管理部52は、検出された1パルスに対応する距離に対する座標値(ステージ21の位置)を更新する。例えば、1パルスの入力によって移動するステージ21の移動量を1とした場合であって、現在の座標値が100である場合、座標管理部52は、100+1=101を、現在の座標値Zとして保持する。
【0076】
ステップS54において、ドライバ42は、ステップS51の処理でステージコントローラ43から発生されたパルスの数(1パルス)に対応する量だけモータ24を駆動(回転)させるための制御信号を出力する。これに対して、上述した図4のステップS21で、ドライバ42から制御信号が供給されたと判定され、ステップS22でステージ21が移動される。すなわち、ステージコントローラ43による1パルスの発生により、結果的に、ステージ21が一定量だけ移動する。
【0077】
ステップS55において、ステージコントローラ43は、N(必要なパルス数)=n(ステージコントローラ43が発生したパルス数)であるか否かを判定する。すなわち、ステージコントローラ43は、必要なパルス数(N)だけ発生したか否かを判定する。N=nでないと判定された場合、処理はステップS51に戻り、それ以降の処理が繰り返される。
【0078】
具体的には、2回目のステップS51で、1パルスが発生されるとともにn=1+1=2とされ、発生されたパルスがドライバ42と信号処理部41のカウンタ51に供給される。カウンタ51は、2回目のステップS52で1パルスを検出すると、座標管理部52が座標値を101+1=102とし(ステップS53)、ドライバ42が、ステップS54で制御信号を発生した結果、ステージ21が移動される。そして、再び、ステップS55では、N=nであるか否かが判定され、N=nでないと判定された場合には、ステップS51に戻り、それ以降の処理が繰り返される。例えば、N=50である場合には、ステップS51乃至ステップS54の処理が50回繰り返される。
【0079】
なお、ステップS51の処理で発生するパルスの数は、1パルスに限らず、例えば、数パルスずつ発生するようにしてもよい。例えば、1回のステップS51の処理で、10パルス発生するようにし、総パルス数NをN=50とした場合、ステップS51乃至ステップS54の処理は5回繰り返される。より具体的には、ステップS51の処理では、ステージコントローラ43により10パルスが発生され、座標管理部52は、座標値を10ずつ加算する。
【0080】
なお、ステップS52およびステップS53の処理と、ステップS54の処理は、並行して実行してもよいし、その処理の順番を逆にして実行してもよい。
【0081】
次に、図7のフローチャートを参照して、図5のステップS34の処理において開始される、格納処理の詳細を説明する。
【0082】
ステップS61において、信号処理部41は、撮影画像が供給されてきたか否かを判定し、供給されてくるまで待機する。具体的には、図3のステップS12の処理により顕微鏡11から撮影画像が供給されるので、図3のステップS12の処理が実行されるまで処理は待機される。
【0083】
ステップS61において、撮影画像が供給されてきたと判定された場合、ステップS62において、ピント値算出部44は、顕微鏡11から供給されてきた撮影画像を取得する。この処理で取得された撮影画像と、座標管理部52が保持している座標値は対応しており、この座標値は、撮影が行われた時点における座標値である。
【0084】
また、ステップS63において、信号処理部41は、顕微鏡11から供給されてきた撮影画像を取得する。この撮影画像は、ステップS62の処理でピント値算出部44に取得された画像と同じ画像である。
【0085】
ステップS64において、ピント値算出部44は、撮影画像のピント値AFVを算出し、ピント値を信号処理部41に供給する。ピント値の算出方法については、図14と図15を参照して後述するが、この処理により、ピント値算出部44は、撮影画像の輝度のクラス間分散値をピント値AFVとして算出し、ピント値を信号処理部41に供給する。
【0086】
ステップS65において、信号処理部41は、ピント値算出部44から供給されるピント値AFVを取得する。
【0087】
ステップS66において、格納処理部53は、座標値Zとピント値AFVを撮影画像に格納する。具体的には、格納処理部53は、座標管理部52が保持している現在のステージ21の座標に対応する座標値Zを取得し、取得した座標値Zを、ステップS63の処理で取得した撮影画像に格納するとともに、ステップS65の処理で取得したピント値AFVを、撮影画像に格納する。ここで格納とは、撮影画像のデータ(実際のデータ)の一部に座標値Zとピント値AFVを置き換えることを示してもよいし、実際表示される撮影画像そのものに、座標値Zとピント値AFVが合成されて表示されるようなデータを入れることを示してもよい。これにより、撮影画像に対する座標値Zとピント値AFVが撮影画像に格納されるので、撮影画像に座標値Zとピント値AFVを関連付けることができる。この座標値Zは、撮影画像が撮影された時点における座標値Zを示す。
【0088】
ステップS67において、信号処理部41は、座標値Zとピント値AFVを格納した撮影画像を、パーソナルコンピュータ13に出力する。
【0089】
ここまでの処理で、1枚の撮影画像に対応する座標値Z(すなわち、撮影された時点におけるステージ21の位置を示す値)とピント値AFV(その撮影画像のピントの合い具合を表す値)が、撮影画像に格納され、パーソナルコンピュータ13に出力される。
【0090】
このときパーソナルコンピュータ13に出力される画像(撮影画像に座標値Zとピント値AFVを格納した画像)の例を図8に示す。
【0091】
図8の画像91は、例えば、ステップS61乃至ステップS67の処理が1回実行されることでパーソナルコンピュータ13に出力される画像の例である。画像91の左上の枠92には、座標値Zが格納されており、座標値Zの右側(図8の画像91の中上)の枠93には、ピント値AFVが格納されている。また、画像91の中央には、被写体の像94が表示されている。図8の例の場合、被写体の像(撮影画像)94に対する座標値Zは1であり、被写体の像(撮影画像)94に対するピント値AFVは10である。このように、信号処理装置12は、撮影画像94に、座標値Zとピント値AFVとを格納した画像91を、パーソナルコンピュータ13に出力する。
【0092】
なお、撮影画像データの1列目(例えば、撮影画像のデータの先頭の16ビットの部分)に、座標値Zとピント値AFVをディジタル値で格納して、画像91とするようにしてもよいし、実際に、撮影画像そのものに、座標値Zとピント値AFVを数字として表示されるように(例えば、表示部67に表示させた場合にその値が図8のように表示されるように)、格納してもよい。図8の例では、分かりやすくするために、後者の場合の画像を示している。
【0093】
図7に戻って、ステップS68において、信号処理部41は、撮影画像が供給されてきたか否かを判定する。撮影画像が供給されてきたと判定された場合、処理はステップS62に戻り、それ以降の処理が繰り返される。すなわち、撮影画像ピント値AFVが算出され、撮影した時点における座標値Zとピント値AFVが撮影画像に格納され(関連付けられ)、パーソナルコンピュータ13に出力される。ステップS68において、撮影画像が供給されてこないと判定された場合、処理は終了される。
【0094】
図7の処理により、撮影画像に、撮影画像が得られた撮影時(撮影した時点)の座標値Zが関連付けられてパーソナルコンピュータ13に送信される。また、撮影画像に、撮影画像のピント値が関連付けられてパーソナルコンピュータ13に送信される。これにより、撮影した時点におけるステージ21の位置を正確に管理することができる。
【0095】
なお、ステップS62とステップS63の処理は、同時に実行してもよいし、その処理の順番を逆にして実行してもよい。
【0096】
また、図6と図7の処理を並行して実行する場合、実際には、撮影時におけるステージ21に対応する座標値Zと、撮影画像の取得のタイミングのタイムラグが生じる可能性があるので、例えば、被写体が撮影されたとき(例えば、図3のステップS11の処理時)に、ディジタルカメラ23が制御信号(トリガ)を、信号処理装置12に出力するようにして、撮影した時点における座標値Zを保持しておいて、格納するようにしてもよい。
【0097】
次に、図9のフローチャートを参照して、図2の信号処理装置12における微移動処理を説明する。なお、この処理は、図2の信号処理装置12に微移動の指令が供給されてきた場合に開始される。例えば、図2の信号処理装置12の移動量演算部45に、パーソナルコンピュータ13の移動指令部62から、ユーザからの微移動の指令に基づく信号(目的の座標値Z')が供給されてきたとき開始される。
【0098】
すなわち、ユーザは、ステージ21の微移動の指令を、パーソナルコンピュータ13の表示部67に表示された画像を見ながら操作入力部61に入力する。例えば、ユーザは、表示部67の表示を見ながら、微移動の指令として、目的位置に対応する座標値Z'の入力か、目的位置に対応する画像を選択する入力を、操作入力部61に対して行う。パーソナルコンピュータ13の操作入力部61に、ユーザからの微移動を指令する操作が入力されると、移動指令部62が、目的の位置に対応する座標値Z'を信号処理装置12の移動量演算部45に供給してくる。このとき、ユーザからの操作入力が、目的の画像の選択であった場合には、移動指令部62が、その画像に対応する座標値Z'を取得して、移動量演算部45に供給する。すなわち、移動量演算部45には、微移動の指令に対応する信号として、微移動の指令と、目的の位置に対応する座標値Z'が供給されてくるので、これを受け付け、図9の処理を開始する。
【0099】
ステップS101において、移動量演算部45は、座標管理部52から座標値Zを取得する。具体的には、座標管理部52は現在のステージ21の位置に対応する座標値Zを保持しているので、移動量演算部45は、この座標値Zを取得する。
【0100】
ステップS102において、移動量演算部45は、取得した座標値Z(現在のステージ21の位置)と、目的の座標値Z'(移動指令部62から供給された目的のステージ21の位置に対応する座標値Z')とに基づいて、移動量に対するパルス数Nを演算する。例えば、Z=1000、Z'=1500である場合、移動量演算部45は、1500−1000=500を演算し、移動量に対するパルス数NをN=500とする。移動量演算部45は、演算結果(移動に必要なパルスの数N)を、ステージコントローラ43に供給する。
【0101】
ステップS103において、信号処理装置12は、パルス発生処理を開始する。具体的には、ステージコントローラ43が制御信号を1パルスずつ発生し、信号処理部41のカウンタ51がパルスを検出するとともに座標管理部52が座標を管理し、ドライバ42が1パルスに対応する量だけモータ24を駆動させる制御信号を出力する。なお、この処理は、上述した図6の処理と同様である。
【0102】
ステップS104において、信号処理装置12は、格納処理を開始する。具体的には、撮影された時点における座標値を、撮影画像に格納し、パーソナルコンピュータ13に出力する。なお、この処理は、上述した図7の処理と同様である。この後、処理は(例えば、電源がオフされたとき)終了される。
【0103】
図9の処理により、ユーザにより指令されたステージ21の位置をより細かく指定する指令(微移動の指令)に基づいて、目的のステージ21の位置に対応する座標値Z'と現在のステージ21の位置に対応する座標値Zから、ステージ21の位置を決定するための正確なパルス数Nを算出することができるので、容易、かつ、確実に、ステージ21の位置を制御することができる。
【0104】
なお、ステップS103とステップS104の処理は、同時に実行してもよいし、その処理の順番を逆にして実行してもよい。
【0105】
図5乃至図7、並びに図9の処理により、ユーザからの粗移動の指令に基づいて、移動量に対応するパルス数Nが演算され(図5のステップS32)、ステージコントローラ43によりパルスが発生され(図6のステップS51)、パルスが検出されて座標が管理される(図6のステップS52,ステップS53)とともに、ドライバ42によりパルスの量に対応する量だけモータを駆動させる制御信号が発生される(ステップS54)。そして、ドライバ42による制御信号の発生により、上述した図4の処理、すなわち、ステージ21の移動が行われる。また、図3の撮影処理が行われ、撮影画像が信号処理装置12に供給される。そこで、信号処理装置12のピント値算出部44が、撮影画像のピント値AFVを算出し(図7のステップS64)、格納処理部53が、ピント値AFVと座標値Z(撮影された時点におけるステージ21の位置を示す座標値)を、撮影画像に格納し、撮影画像をパーソナルコンピュータ13に出力する(ステップS66,ステップS67)。そして、この処理が、ユーザにより指令された移動量分だけ実行される。
【0106】
また、ユーザからの微移動の指令に基づいて、座標値Zと目的の座標値Z'から移動量に対応するパルスの数Nが演算され(図9のステップS102)、ステージコントローラ43によりパルスが発生され(図6のステップS51)、ドライバ42によりパルスの量に対応する量だけモータを駆動させる制御信号が発生され(図6のステップS54)、パルスに基づいて座標値Zが更新される。そして、ドライバ42による制御信号の発生により、上述した図4の処理、すなわち、ステージ21の移動と被写体の撮影が行われる。また、図3の撮影処理が行われ、撮影画像が信号処理装置12に供給される。そこで、信号処理装置12のピント値算出部44が、撮影画像のピント値AFVを算出し(図7のステップS64)、格納処理部53が、ピント値AFVと座標値Zを、撮影画像に格納し、撮影画像をパーソナルコンピュータ13に出力する(図7のステップS67)。そして、この処理が、ユーザにより指令された移動量分だけ実行される。
【0107】
これにより、ディジタルカメラ23による撮影により得られ、供給された撮影画像に、撮影画像が得られた撮影時の座標値を関連付ける(撮影画像に座標値Zを格納する)ことができる。すなわち、撮影画像と、その撮影画像を取得した時点におけるステージ21の位置とを、確実に関連付けることができ、もって、ステージ21の位置の制御を容易に行うことができる。
【0108】
次に、図10のフローチャートを参照して、コントローラ31におけるステージ21移動指令処理を説明する。なお、この処理は、ユーザにより、粗移動の指令が入力されたとき開始される。
【0109】
ステップS121において、コントローラ31は、ユーザからのステージ21の粗移動の指令を受け付ける。上述したように、この粗移動の指令は、例えば、ステージ21の位置を1cmだけ上に上げる、というような指令である。
【0110】
ステップS122において、コントローラ31は、ステップS71の処理で受け付けた指令に対応して、信号処理装置12に、移動を指令する信号を出力する。この移動を指令する信号は、信号処理装置12の移動量演算部45に供給される。その後、処理は終了される。
【0111】
この処理により、コントローラ31に入力されたユーザからの粗移動の指令が信号処理装置12の移動量演算部45に供給される。なお、本実施の形態では、コントローラ31には、粗移動の指令のみが入力されるものとして(すなわち、微移動の指令は入力されないものとして)いるが、微移動の指令も入力されるものとしてもよい。
【0112】
次に、図11と図12のフローチャートを参照して、パーソナルコンピュータ13における処理を説明する。なお、この処理は、パーソナルコンピュータ13の電源がオンされたとき開始される。
【0113】
ステップS141において、操作入力部61は、ユーザからステージ21の粗移動が指令されたか否かを判定する。例えば、操作入力部61は、受け付けたユーザからの操作入力がステージ21の粗移動の指令であるか否かを判定する。ステップS141において、ステージ21の粗移動が指令されたと判定された場合、操作入力部61は、ユーザからのステージ21の粗移動の指令に対応する信号を、移動指令部62に供給する。
【0114】
ステップS142において、移動指令部62は、信号処理装置12の移動量演算部45に粗移動を指令する(粗移動を指令する信号を供給する)。
【0115】
ステップS141において、ユーザからステージ21の粗移動が指令されていないと判定された場合(例えば、ユーザが、コントローラ31に対して粗移動の指令を入力した場合)、またはステップS142の処理の後、処理はステップS143に進む。
【0116】
ステップS143において、画像取得部64は、信号処理装置12から画像が供給されてきたか否かを判定し、供給されるまで待機する。この処理は、上述した図7のステップS67の処理に対応する処理であり、信号処理装置12により画像が出力され、パーソナルコンピュータ13に供給された場合にYESと判定される。このとき供給される画像は、例えば、図8に示される画像91、すなわち、座標値Zとピント値AFVが格納された撮影画像である。ステップS143において、画像が供給されてきたと判定された場合、ステップS144に進み、画像取得部64は、画像(例えば、図8の画像91)を取得する。
【0117】
ステップS145において、記憶部64は、画像取得部64により取得された画像を記憶する。ステップS146において、座標値取得部65は、記憶部64に記憶されている画像(例えば、図8の画像91)を読み出し、画像から座標値Z'を取得する。この座標値Z'は、読み出した画像(例えば、図8の画像91)が撮影された時点におけるステージ21の位置に対する値である。
【0118】
ステップS147において、表示制御部66は、記憶部64に記憶されている画像(例えば、図8の画像91)を読み出し、読み出した画像を表示部67に表示させる。表示制御部66は、例えば、図8の画像91を表示部66に表示させる。図8の画像91には、撮影画像に座標値とピント値が含まれている。なお、画像のデータに、デジタルデータとして座標値Z'とピント値AFV'が含まれていた場合には、表示制御部66が、その座標値Z'とピント値AFV'とを取得し、これを、表示する画像(数字)に変換するとともに、その数字の画像を、撮影画像に合成して表示するようにしてもよい。
【0119】
ステップS148において、操作入力部61は、ユーザによりステージ21の微移動が指令されたか否かを判定する。ステージ21の微移動の指令は、ユーザが、表示部66に表示された画像(例えば、図8の画像91)を見て、操作入力部61に、座標値Z'を指定する操作、または図8の画像91を選択する操作を入力した場合に指令することができる。すなわち、操作入力部61は、ユーザにより、座標値Z'を指定する入力か、画像を選択する操作入力が行われたか否かを判定する。ステップS148において、操作入力部61が受け付けたユーザからの指令が、ステージ21の微移動を指令するものであると判定された場合、操作入力部61はこの指令に対する信号を移動指令部62に供給し、処理をステップS149に進める。
【0120】
ステップS149において、移動指令部62は、操作入力部61が受け付けた微移動を指令する操作入力は、座標値Z'であったか否かを判定する。上述したように、微移動の指令には、座標値Z'を指定する操作と画像を選択する操作があるので、移動指令部62は、その微移動の指令が、座標値Z'を指定するものであったか否かを判定する。ステップS149において、受け付けた操作入力が座標値でないと判定された場合(すなわち、画像の選択であると判定された場合)、ステップS150において、移動指令部62は、選択された画像の座標値Z'を座標値取得部65から取得する。座標値取得部65は、上述したステップS146の処理で、表示部67に表示させる画像に対する座標値Z'を取得しているので、この座標値Z'を、移動指令部62に供給する。これにより、ユーザに選択された画像に対する座標値Z'、すなわち、ステージ21の位置を特定する情報を取得することができる。
【0121】
ステップS151において、移動指令部62は、ステップS150の処理で取得した座標値Z'を微移動の指令とともに信号処理装置12の移動量演算部45に供給する。
【0122】
ステップS149において、操作入力部61が受け付けた操作入力が座標値Z'であると判定された場合、処理はステップS152に進み、移動指令部62は、入力された座標値Z'を微移動の指令とともに信号処理装置12の移動量演算部45に供給する。
【0123】
ステップS151またはステップS152の処理により、パーソナルコンピュータ13の移動指令部62から、信号処理装置12の移動量演算部45に対して、微移動を指令する操作入力に対応する座標値Z'が出力される。この座標値Z'は、目的のステージ21の位置に対応する座標値である。これに対して、信号処理装置12では、移動量演算部45が実行する図5のステップS31の処理で、移動量に対するパルス数Nが算出され、図6の処理で、Nパルスが発生されて、それに対応して顕微鏡11のステージ21が移動される。すなわち、指定された画像または座標値Z'に対する位置にステージ21を移動するよう、確実に制御することができる。
【0124】
ステップS151またはステップS152の処理の後、処理はステップS143に戻り、それ以降の処理が繰り返される。すなわち、画像が受け付けられ、表示が行われ、微移動が指令されたときに、その指令に対応する座標値Z'(目的のステージ21の位置を特定するための値)が信号処理装置12に供給される。
【0125】
また、ステップS148において、ユーザからステージ21の微移動が指令されていないと判定された場合、処理はステップS153に進み、画像取得部64は、次の画像が供給されてきたか否かを判定し、次の画像が供給されて来たと判定された場合、処理はステップS144に戻り、それ以降の処理が繰り返される。ステップS153において、次の画像が供給されて来ないと判定された場合、処理は終了される。
【0126】
なお、表示制御部66は、ステップS88の処理の繰り返しにより記憶部64に記憶された複数の画像を、縮小し、サムネイルとして順次表示させるようにしてもよい。例えば、表示制御部66は、図13に示されるような画像101−1乃至101−5を表示部67にまとめて表示するよう制御してもよい。図13の画像101−1乃至画像101−5の構成は、上述した図8の画像91と同様である。図13の例の場合、画像101−3のピント値が一番大きく、画像101−3は、これらの5つの画像の中で、最もピントが合っている画像とされている。
【0127】
図13においては、画像101−1が最も時間的に早く撮影され、得られた画像であり、画像101−2が2番目、画像101−3が3番目、画像101−4が4番目、画像101−5が5番目にそれぞれ、撮影され、得られた画像である。ここで、表示部67に表示される画像の数を5枚とすると、画像101−5の後に撮影され、得られた画像がパーソナルコンピュータ13に入力された場合、1番目に撮影され、得られた画像である画像101−1は表示が削除され、新たに撮影された画像が表示される。
【0128】
ユーザは、例えば、図13の画像101−3に含まれる撮影画像を撮影したときの、ステージ21の位置を再現したいと思った場合(例えば、画像101−3を撮影したステージ21の位置の付近で、撮影を行いたいと思った場合)、操作入力部61に、この座標値Z'の値を入力したり、画像101−3そのものを選択する操作を行う。この画像101−3に格納されている座標値Z'が、ステージ21の位置に対応しているので、ユーザは、容易、かつ正確にステージ21の位置(パルスの数)が分かる。
【0129】
次に、図2のピント値算出部44により算出されるピント値の算出方法の例を、図14と図15のフローチャートを参照して説明する。なお、図14と図15の処理においては、ピント値を、AFV(輝度平均に対する分散値)と称している。なお、このフローチャートは、上述した図7のステップS64の処理においてピント値を算出する場合に、このAFVの演算が行われる。すなわち、ピント値算出部44が、撮影画像を取得した後(図7のステップS62の処理の後)に実行される。
【0130】
ステップS201において、ピント値算出部44は、サンプリングされたフレームの画像の各画素の輝度成分のヒストグラムhist[i]を求める。具体的には、輝度レベルiにおける面積(画素数)であるA(i)が求められる(i=0乃至255)。
【0131】
ステップS202において、ピント値算出部44は、全画素の輝度平均Utと全画素数St(輝度レベル255までの総面積(総画素数)St)を求める。
【0132】
ステップS203において、ピント値算出部44は、k=0,Wk=0,Uk=0と初期設定する。
【0133】
ステップS204において、ピント値算出部44は、Wk=Wk+hist[k]を演算する。この式の右辺は、直前の輝度kにおける値を表わしているが、k=0の場合、それより前の輝度は存在しないので、ステップS203の処理によりWk=0、k=0とされており、W0=hist[0]×0(すなわち、W0=A(0))とされる。
【0134】
ステップS205において、ピント値算出部44は、Uk=Uk+hist[k]×kを演算する。いまの場合、ステップS203の処理によりUk=0とされているので、U0=hist[0]×0=0とされる。
【0135】
ステップS206において、Wk=0であるか否かが判定される。Wkは輝度k毎の画素数のkまでにおける総和である。ステップS206において、Wk=0であると判定された場合、処理はステップS207に進み、ピント値算出部44は、dk(いまの場合、dk=d0)=0と設定する。dkは、kにおけるクラス間分散σB(k)2と等価であり、この値が0とされる。その後、処理はステップS210に進む。
【0136】
ステップS210において、ピント値算出部44は、演算されたdkを記憶する。いまの例の場合、ステップS207の処理によりd0=0とされたので、d0=0が記憶される。
【0137】
ステップS211において、ピント値算出部44は、k=k+1と設定する。すなわち、kに1が加算される。いまの例の場合、ステップS203の処理によりk=0とされていたので、この処理によりk=1とされる。その後、処理はステップS204に戻り、それ以降の処理が繰り返される。すなわち、k=1の場合の演算が行なわれる。
【0138】
ステップS204において、ピント値算出部44は、Wk=Wk+hist[k]を演算する。いまの例の場合、ステップS211の処理によりk=1とされたので、W1=W0+hist[0]が演算される。その後、ステップS205において、ピント値算出部44は、Uk=Uk+hist[k]×kを演算する。いまの例の場合、k=1とされるので、U1=U0+hist[0]が演算される。
【0139】
ステップS206において、ピント値算出部44は、Wk=0であるか否かを判定する。いまの場合、ステップS206により、W1=W0+hist[0]とされるので、hist[0]の値が0であれば、W1=0となり、ステップS207で、再びd1=0とされる。hist[0]の値が0でなければ、W1は0ではなくなるので、Wk=0ではないと判定される。Wk=0ではないと判定された場合、処理はステップS208に進む。
【0140】
ステップS208において、ピント値算出部44は、Wk=Stであるか否かを判定する。Stは総面積(全画素数)である。Wk=Stとされる場合、エラーとなるので、この処理が行なわれる。Wk=Stではないと判定された場合、ステップS209において、ピント値算出部44は、dk=(Ut×Wk−Uk)2/Wk(St−Wk)を演算する。すなわち、ピント値算出部44は、kにおけるクラス間分散を求める。
【0141】
ステップS209の処理の後、または、ステップS207の処理の後、ステップS210において、ピント値算出部44は、dkを記憶する。具体的には、dkは、ステップS209の処理により演算されたdk、または、ステップS207の処理により設定されたdk(=0)とされる。いまの例の場合、ステップS209の処理により演算されたdkが記憶される。
【0142】
ステップS211において、ピント値算出部44は、k=k+1と設定する。すなわち、kに1を加算する。いまの例の場合、前回のステップS211の処理によりk=1とされていたので、この処理によりk=2とされる。その後、処理はステップS204に戻り、それ以降の処理が繰り返される。すなわち、k=2における処理が行なわれ、同様の処理が、ステップS208においてWk=Stである(全画素についての処理が行なわれた)と判定されるまで繰り返される。
【0143】
ステップS208において、Wk=Stであると判定された場合、ステップS212において、ピント値算出部44は、dk=0と設定する。
【0144】
ステップS213において、ピント値算出部44は、dkの値(いまの場合、dk=0)を記憶する。
【0145】
ステップS214において、ピント値算出部44は、記憶している複数のdkの中から、最大のdkの値(輝度のクラス間分散の最大値)を求める。このことは、kにおけるクラス間分散の閾値を求めることと等価である。
【0146】
ステップS215において、ピント値算出部44は、最大のdkが得られるkまでの画素数WkをALpと設定する。
【0147】
ステップS216において、ピント値算出部44は、ステップS215の処理により求めたALpと、全画素数Stが等しいか否か(ALp=Stであるか否か)を判定する。ALpと全画素数Stが等しい場合、処理はステップS217に進められる。
【0148】
ステップS216において、ALp=Stであると判定された場合、ステップS217において、ピント値算出部44は、AFVp=0と設定する。すなわち、その点において求められるAFVの値は0であるとされる。
【0149】
ステップS216において、ALp=Stではないと判定された場合、ステップS218において、ピント値算出部44は、AFVp=ALp/(St−ALp)を演算する。すなわち、その位置pにおけるAFVが求められる。
【0150】
図14と図15の処理により、閾値と閾値以下の面積を求めるようにして、AFV(ピント値)を算出することができる。
【0151】
以上のように、被写体を配置するステージ21(配置部)、ステージ21に配置された(載せられた)被写体を撮影するディジタルカメラ23(撮影部)、および、ステージ21の位置を移動させるモータ24(駆動部)を有する顕微鏡11に対して、モータ24を制御することにより、ディジタルカメラ23による被写体の撮影時におけるディジタルカメラ23と被写体との距離を制御する信号処理装置12において、モータ24がステージ21の位置を移動させる距離を制御する制御信号が1周期分供給される度に(パルスが1つ供給される度に)ディジタルカメラ23のモータ24を制御し、ステージ21の位置を予め定められた所定の距離だけ移動させるドライバ42と、ドライバ42に供給される制御信号の1周期を検知するカウンタ51と、カウンタ51により制御信号の1周期が検知される度に顕微鏡11のステージ21の座標値を更新し、その更新された座標値を記憶することにより、座標値を管理する座標管理部52と、顕微鏡11のディジタルカメラ23による撮影により得られ、供給された被写体の画像(撮影画像)に、座標管理部52により管理される、被写体の画像が得られた撮影時の座標値を格納する格納処理部53を設けるようにしたので、ステージ21の位置の確実に制御することができる。また、撮影画像を取得したときのステージ21の位置と撮影画像とを、正確に関連付けることができる。
【0152】
また、ステージ21の位置を移動させながら、撮影した場合においても、ステージ21の位置と撮影画像を、より正確に関連付けることができる。
【0153】
なお、本実施の形態では、格納処理部53が、撮影画像に、撮影画像が得られた撮影時の座標値(ステージ21の位置に対する値)を格納するようにしたが、関連付けるようにする(例えば、同じIDを付す)ようにしてもよいし、関連付けて記憶するようにしてもよい。
【0154】
さらに、本実施の形態では、モータ24がテーブル21の位置を移動させることで、ディジタルカメラ23と被写体との距離を制御するようにしたが、モータ24が、ディジタルカメラ23の位置を移動させることで、ディジタルカメラ23と被写体との距離を制御するようにしてもよい。
【0155】
また、本実施の形態では、パーソナルコンピュータ13の表示部67に、撮影画像に関連づけられた座標値Z'を、撮影画像とともに表示させるようにしたが、少なくとも一方を表示させるようにしてもよい。
【0156】
さらに、微移動の指令では、目的の撮影画像に格納された座標値Z'の指定によりステージ21の位置の変更を指令するだけでなく、目的の撮影画像の指定を受け付けるようにし、指定された撮影画像の座標値を取得するようにしたので(座標値取得部65)、ユーザは、より、見た目(撮影画像の見た目)でステージ21の位置の移動の指令を判断することができる。
【0157】
また、移動量演算部45は、目的の座標値Z'と、現在の座標値Zに基づいて、ステージ21の移動量を演算するとともに、移動量に対応する制御信号の周期数を算出し、ステージコントローラ43が、演算された移動量に対応する周期数分の制御信号をドライバ42に供給し、ドライバ42が、供給された移動量に対応する周期数分の制御信号に基づいて、モータ24を制御するようにしたので、より、ステージ21の位置を正確に制御することができる。
【0158】
さらに、撮影画像に基づいて、被写体の画像の合焦度(ピント値)を算出するピント値算出部44をさらに備え、格納処理部53が、撮影画像に、さらに、合焦度(ピント値)を関連付けるようにしたので、例えば、表示部67に表示する場合に、ピント値に対応するグラフなどもあわせて表示をすることができ、ユーザに、撮影画像のピントに関する情報を与えることができる。また、ユーザは、微移動の指令を容易に行うことができる。さらに、ユーザは、複数の撮影画像の合焦度が不明な場合においても、ピント値を見ることで、ピントの合い具合を参考にすることができる。
【0159】
また、表示制御部66が、撮影画像とともに座標値Z'の表示部67への表示を制御するようにしたので、ユーザは、ステージ21の位置の細かい移動の指定を行うことができる。
【0160】
さらに、ディジタルカメラ23による撮影時にテーブル21が一定の速度で移動していても、ピントが合っているとされた撮影画像に対するテーブル21の位置を正確に求めたり、制御することができる。すなわち、迅速に撮影するとともに、テーブル21の位置を正確に求めることができ、もって、被写体からディジタルカメラ23までの位置を正確に制御することができる。
【0161】
また、専用のハードウェアを設けることなく、パーソナルコンピュータ13で取り込んで上述した処理を実行することができるため、コストを抑えて、確実に被写体からディジタルカメラ23までの位置を正確に制御することができる。
【0162】
さらに、モータカプラ(モータ24)とディジタルカメラ23とを、汎用の顕微鏡に装着するようにすれば、汎用の顕微鏡を利用することができるため、より、コストを抑えることができる。
【0163】
なお、座標値Z'が表示部67に表示されないようにしてもよい。この場合、ユーザは、目的とする画像を選択することで、その画像に対応する座標値Z'が移動指令部62により(座標値取得部65を介して)取得されるので、この場合においても、ユーザは、細かい位置の指定を行うことができる。
【0164】
また、以上の例では、例えば、図7のステップS66で説明したように、格納処理部53が、座標値Zの他に、ピント値算出部44により算出されたピント値AFVをも撮影画像に格納するようにしたが、座標値Zのみを撮影画像に格納するようにして、ピント値AFVは別途、パーソナルコンピュータ13に供給するようにしてもよいし、信号処理装置12の内部のメモリ(図示せぬ)に記憶しておくようにしてもよい。
【0165】
さらに、以上の例では、ユーザが微移動の指令を、座標値の入力か、画像の指定により行うようにしたが、ピント値の指定により指令するようにしてもよい。
【0166】
また、ピントが最も合っている撮影画像(ピント値が最大値である撮影画像)を撮影した位置に、ステージ21を自動的に移動させるようにしてもよく、この場合についても、より、ステージ21の位置を正確に制御することができる。
【0167】
さらに、以上の例では、モータカプラ(モータ24)とディジタルカメラ23とを、汎用の顕微鏡に装着するようにしたがモータとディジタルカメラを内蔵した顕微鏡を用いるようにしてもよい。
【0168】
なお、本発明は、位置を変えて画像を撮影する装置に適用することができる。また、信号処理装置に限らず、情報を処理する情報処理装置に適用することもできる。さらに、顕微鏡11を、被写体を撮影する撮影装置としてもよい。
【0169】
また、本実施の形態では、ユーザが、表示部67の表示を見ながら操作入力部61に対して微移動の指令を入力するようにしたが、ユーザは、表示部67の表示を見ながらコントローラ31に微移動の指令を入力するようにしてもよい。
【0170】
なお、図2の信号処理装置12の信号処理部41を、顕微鏡11に内蔵するようにしてもよい。この場合の例を図16に示す。図中、図2と対応する部分については同一の符号を付してあり、その説明は繰り返しになるので省略する。
【0171】
図16と図2を比較するに、図16の顕微鏡11には、ステージ21、レンズ22、ディジタルカメラ23、およびモータ24の他に、信号処理部41(カウンタ51、座標管理部52、格納処理部53を含む信号処理部41)、およびピント値算出部44がさらに設けられている。また、図16のパーソナルコンピュータ13には、操作入力部61、移動指令部62、画像取得部64、記憶部64、座標値取得部65、表示制御部66、および表示部67の他に、ドライバ42とステージコントローラ43がさらに設けられている。
【0172】
このような構成にした場合についても、上述した処理が実行され、撮影画像と、撮影時における被写体とディジタルカメラ23との距離が関連づけられる。
【0173】
図16の構成にした場合には、別途信号処理装置を設ける必要がなく、コストを抑えることができる。
【0174】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。この場合、上述した一連の処理は、図17に示されるようなパーソナルコンピュータ200により実行される。
【0175】
図17において、CPU201は、ROM202に記憶されているプログラム、または、記憶部208からRAM203にロードされたプログラムに従って各種の処理を実行する。RAM203にはまた、CPU201が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【0176】
CPU201、ROM202、およびRAM203は、内部バス204を介して相互に接続されている。この内部バス204にはまた、入出力インターフェース205も接続されている。
【0177】
入出力インターフェース205には、キーボード、マウスなどよりなる入力部206、CRT,LCDなどよりなるディスプレイ、スピーカなどよりなる出力部207、ハードディスクなどより構成される記憶部208、並びに、モデム、ターミナルアダプタなどより構成される通信部209が接続されている。通信部209は、電話回線やCATVを含む各種のネットワークを介しての通信処理を行う。
【0178】
入出力インターフェース205にはまた、必要に応じてドライブ210が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどによりなるリムーバブルメディア221が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部208にインストールされる。
【0179】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【0180】
この記録媒体は、図17に示されるように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されているリムーバブルメディア221よりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM202や記憶部208が含まれるハードディスクなどで構成される。
【0181】
なお、本明細書において、コンピュータプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0182】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表わすものである。
【図面の簡単な説明】
【0183】
【図1】本発明を適用したオートフォーカスシステムの全体の構成例を示す図である。
【図2】図1のオートフォーカスシステムの機能的構成例を示すブロック図である。
【図3】図2の顕微鏡11における撮影処理を説明するフローチャートである。
【図4】図2の顕微鏡11におけるステージ移動処理を説明するフローチャートである。
【図5】図2の信号処理装置における粗移動処理を説明するフローチャートである。
【図6】図2の信号処理装置におけるパルス発生処理を説明するフローチャートである。
【図7】図2の信号処理装置における格納処理を説明するフローチャートである。
【図8】座標値とピント値が格納された画像の例を説明する図である。
【図9】図2の信号処理装置における微移動処理を説明するフローチャートである。
【図10】図2のコントローラにおけるステージ移動指令処理を説明するフローチャートである。
【図11】図2のパーソナルコンピュータにおける処理を説明するフローチャートである。
【図12】図2のパーソナルコンピュータにおける処理を説明するフローチャートである。
【図13】表示部に表示される画像の例を説明する図である。
【図14】AFV演算処理を説明するフローチャートである。
【図15】AFV演算処理を説明するフローチャートである。
【図16】図1のオートフォーカスシステムの他の機能的構成例を示すブロック図である。
【図17】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【0184】
11 顕微鏡
12 信号処理装置
13 パーソナルコンピュータ
24 モータ
42 ドライバ
43 ステージコントローラ
45 移動量演算部
51 カウンタ
52 座標管理部
53 格納処理部
61 操作入力部
65 座標値取得部
66 表示制御部

【特許請求の範囲】
【請求項1】
被写体を配置する配置部、前記配置部に配置された被写体を撮影する撮影部、および、前記撮影部または前記配置部の位置を移動させる駆動部を有する撮影装置に対して、前記駆動部を制御することにより、前記撮影部による前記被写体の撮影時における、前記撮影部と前記被写体との距離を制御する情報処理装置であって、
パルスの数によって、前記駆動部が前記撮影部または前記配置部の位置を移動させる距離を制御するパルスが1つ供給される度に前記撮影装置の前記駆動部を制御し、前記撮影部または前記配置部の位置を予め定められた所定の距離移動させる駆動部制御手段と、
前記駆動部制御手段に供給される前記パルスを検知する検知手段と、
前記検知手段により前記パルスが1つ検知される度に前記撮影装置の前記撮影部または前記配置部の座標値を更新し、その更新された座標値を記憶することにより、前記座標値を管理する管理手段と、
前記撮影装置の前記撮影部による撮影により得られ、供給された被写体の画像に、前記管理手段により管理される、前記被写体の画像が得られた撮影時の前記座標値を関連付ける関連付け手段と
を備えることを特徴とする情報処理装置。
【請求項2】
前記関連付け手段は、前記被写体の画像のデータの所定の位置に前記座標値のデータを格納することにより、前記被写体の画像に前記座標値を関連付ける
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記関連付け手段により前記座標値を関連付けられた前記被写体の画像を指定する指令である指定指令を受け付ける指定指令受付手段と、
前記指定指令受付手段により受け付けられた前記指定指令により指定された前記被写体の画像に関連付けられた前記座標値を取得する第1の座標値取得手段と、
前記管理手段により管理されている現在の前記座標値を取得する第2の座標値取得手段と、
前記第1の座標値取得手段により取得された、前記被写体の画像に関連付けられた座標値、および前記第2の座標取得手段により取得された前記現在の座標値に基づいて、前記撮影部または前記配置部の移動量を演算し、前記移動量に対応する前記パルスの数を算出する移動量演算手段と、
前記移動量演算手段により演算された前記移動量に対応する数のパルスを前記駆動部制御手段に供給する制御信号供給手段と
をさらに備え、
前記駆動部制御手段は、前記制御信号供給手段により供給された前記移動量に対応する数のパルスに基づいて、前記駆動部を制御する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記撮影装置より供給された前記被写体の画像に基づいて、前記被写体の画像の合焦度を算出する合焦度算出手段をさらに備え、
前記関連付け手段は、前記被写体の画像に、さらに、前記合焦度算出手段により算出された前記合焦度を関連付ける
ことを特徴とする請求項1に記載の情報処理装置。
【請求項5】
被写体を配置する配置部、前記配置部に配置された被写体を撮影する撮影部、および、前記撮影部または前記配置部の位置を移動させる駆動部を有する撮影装置に対して、前記駆動部を制御することにより、前記撮影部による前記被写体の撮影時における、前記撮影部と前記被写体との距離を制御する情報処理装置の情報処理方法であって、
パルスの数によって、前記駆動部が前記撮影部または前記配置部の位置を移動させる距離を制御するパルスが1つ供給される度に前記撮影装置の前記駆動部を制御し、前記撮影部または前記配置部の位置を予め定められた所定の距離移動させる駆動部制御ステップと、
前記駆動部制御ステップの処理により供給される前記パルスを検知する検知ステップと、
前記検知ステップの処理により前記パルスが1つ検知される度に前記撮影装置の前記撮影部または前記配置部の座標値を更新し、その更新された座標値を記憶することにより、前記座標値を管理する管理ステップと、
前記撮影装置の前記撮影部による撮影により得られ、供給された被写体の画像に、前記管理ステップの処理により管理される、前記被写体の画像が得られた撮影時の前記座標値を関連付ける関連付けステップと
を含むことを特徴とする情報処理方法。
【請求項6】
被写体を配置する配置部、前記配置部に配置された被写体を撮影する撮影部、および、前記撮影部または前記配置部の位置を移動させる駆動部を有する撮影装置に対して、前記駆動部を制御することにより、前記撮影部による前記被写体の撮影時における、前記撮影部と前記被写体との距離を制御するプログラムであって、
パルスの数によって、前記駆動部が前記撮影部または前記配置部の位置を移動させる距離を制御するパルスが1つ供給される度に前記撮影装置の前記駆動部を制御し、前記撮影部または前記配置部の位置を予め定められた所定の距離移動させる駆動部制御ステップと、
前記駆動部制御ステップの処理により供給される前記パルスを検知する検知ステップと、
前記検知ステップの処理により前記パルスが1つ検知される度に前記撮影装置の前記撮影部または前記配置部の座標値を更新し、その更新された座標値を記憶することにより、前記座標値を管理する管理ステップと、
前記撮影装置の前記撮影部による撮影により得られ、供給された被写体の画像に、前記管理ステップの処理により管理される、前記被写体の画像が得られた撮影時の前記座標値を関連付ける関連付けステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
【請求項7】
被写体を配置する配置部、前記配置部に配置された被写体を撮影する撮影部、および、前記撮影部または前記配置部の位置を移動させる駆動部を有する撮影装置であって、
前記撮影部を制御して、前記配置部に配置された前記被写体を撮影する撮影制御手段と、
パルスの数によって、前記駆動部が前記撮影部または前記配置部の位置を移動させる距離を制御するパルスが1つ供給される度に前記駆動部を制御し、前記撮影部または前記配置部の位置を予め定められた所定の距離移動させる駆動部制御手段と、
前記駆動部制御手段に供給される前記パルスを検知する検知手段と、
前記検知手段により前記パルスが1つ検知される度に前記撮影部または前記配置部の座標値を更新し、その更新された座標値を記憶することにより、前記座標値を管理する管理手段と、
前記撮影制御手段により制御されて前記撮影部が行う撮影により得られた被写体の画像に、前記管理手段により管理される、前記撮影時の前記座標値を関連付ける関連付け手段と
を備えることを特徴とする撮影装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2006−154451(P2006−154451A)
【公開日】平成18年6月15日(2006.6.15)
【国際特許分類】
【出願番号】特願2004−346531(P2004−346531)
【出願日】平成16年11月30日(2004.11.30)
【出願人】(391000896)株式会社フローベル (10)
【Fターム(参考)】