(57)【要約】【課題】位置を表す位置データと画像を表す画像データとの対応精度を向上させる。【解決手段】装置は、所定の検出タイミングで装置の位置を検出する位置検出部と、検出タイミングに同期した発光タイミングで発光する光源部と、発光された光を利用して被写体を撮像する撮像部と、検出された装置の位置を表す位置データと撮像により取得された画像データとを対応付ける画像処理部と、を備える。【選択図】図３
2010154088.tif 000002
【特許請求の範囲】
【請求項１】
装置であって、
所定の検出タイミングで前記装置の位置を検出する位置検出部と、
前記検出タイミングに同期した発光タイミングで発光する光源部と、
前記発光された光を利用して被写体を撮像する撮像部と、
検出された前記装置の位置を表す位置データと前記撮像により取得された画像データとを対応付ける画像処理部と、を備える、装置。
【請求項２】
請求項１に記載の装置であって、
前記撮像部は、互いに露光期間が異なる複数の画素群を含むエリアイメージセンサを有し、
前記発光タイミングは、前記エリアイメージセンサのすべての前記画素群が露光状態にある期間内における前記検出タイミングに同期したタイミングである、装置。
【請求項３】
請求項１または請求項２に記載の装置であって、
前記検出タイミングは、予め設定された時間経過毎のタイミングである、装置。
【請求項４】
請求項１ないし請求項３のいずれかに記載の装置であって、さらに、
コンピュータと接続するインタフェース部と、
検出された前記装置の位置に応じた信号を、ユーザ指示を表す信号として前記コンピュータに伝達するユーザ指示入力部と、を備える、装置。
【請求項５】
方法であって、
（ａ）所定の検出タイミングで位置を検出する工程と、
（ｂ）前記検出タイミングに同期した発光タイミングで光源を発光させる工程と、
（ｃ）前記発光された光を用いて被写体を撮像する工程と、
（ｄ）前記検出された位置を表す位置データと前記撮像により取得された画像データとを対応付ける工程と、を備える、方法。
【請求項６】
プログラムであって、
所定の検出タイミングで位置を検出する機能と、
前記検出タイミングに同期した発光タイミングで光源を発光させる機能と、
前記発光された光を用いて被写体を撮像する機能と、
前記検出された位置を表す位置データと前記撮像により取得された画像データとを対応付ける機能と、をコンピュータに実現させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置と画像とを対応付ける画像処理を行う技術に関する。
【背景技術】
【０００２】
位置センサとリニアイメージセンサを有し、ポインティングデバイス（マウス）として機能すると共に、イメージスキャナとして機能する装置が知られている（例えば特許文献１参照）。この装置では、装置を移動させつつ撮像により画像データを取得し、取得された複数の列（または行）の画像データと位置センサにより検出された位置を表す位置データとが対応付けられる。この画像データは、対応付けられた位置データに基づき合成され、１つの２次元画像を表す画像データが生成される。
【０００３】
【特許文献１】特開平１１−３４５０７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記従来の技術では、位置を表す位置データと画像を表す画像データとの対応精度に向上の余地があった。位置データと画像データとの対応精度が低い場合には、例えば、位置データに基づく画像データの合成により生成される画像の質を十分に高くすることができない。
【０００５】
なお、このような問題は、位置データに基づき画像データを合成する場合に限らず、位置を表す位置データと画像を表す画像データとを対応付ける場合に共通の問題であった。
【０００６】
本発明は、上述した従来の課題を解決するためになされたものであり、位置を表す位置データと画像を表す画像データとの対応精度を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
上記課題の少なくとも一部を解決するために、本発明は、以下の形態または適用例として実現することが可能である。
【０００８】
［適用例１］装置であって、
所定の検出タイミングで前記装置の位置を検出する位置検出部と、
前記検出タイミングに同期した発光タイミングで発光する光源部と、
前記発光された光を利用して被写体を撮像する撮像部と、
検出された前記装置の位置を表す位置データと前記撮像により取得された画像データとを対応付ける画像処理部と、を備える、装置。
【０００９】
この装置では、位置検出部による位置検出タイミングに同期した発光タイミングで光源部が発光し、発光された光を利用して被写体が撮像され、検出された装置の位置を表す位置データと撮像により取得された画像データとが対応付けられるため、位置を表す位置データと画像を表す画像データとの対応精度を向上させることができる。
【００１０】
［適用例２］適用例１に記載の装置であって、
前記撮像部は、互いに露光期間が異なる複数の画素群を含むエリアイメージセンサを有し、
前記発光タイミングは、前記エリアイメージセンサのすべての前記画素群が露光状態にある期間内における前記検出タイミングに同期したタイミングである、装置。
【００１１】
この装置では、互いに露光期間が異なる複数の画素群を含むエリアイメージセンサを用いて撮像を行う場合にも、エリアイメージセンサのすべての画素群が露光状態にある期間内において光源部の発光タイミングが設定されるため、撮像により取得される画像における歪みを抑制することができる。
【００１２】
［適用例３］適用例１または適用例２に記載の装置であって、
前記検出タイミングは、予め設定された時間経過毎のタイミングである、装置。
【００１３】
この装置では、検出タイミングが予め設定された時間経過毎のタイミングである位置検出部を用いて装置の位置を検出する場合においても、位置検出部による位置検出タイミングに同期した発光タイミングで光源部を発光させることにより、位置を表す位置データと画像を表す画像データとの対応精度を向上させることができる。
【００１４】
［適用例４］適用例１ないし適用例３のいずれかに記載の装置であって、さらに、
コンピュータと接続するインタフェース部と、
検出された前記装置の位置に応じた信号を、ユーザ指示を表す信号として前記コンピュータに伝達するユーザ指示入力部と、を備える、装置。
【００１５】
この装置では、位置検出部により検出された装置の位置に応じた信号をユーザ指示を表す信号としてコンピュータに伝達する機能を有する装置において、位置を表す位置データと画像を表す画像データとの対応精度を向上させることができる。
【００１６】
なお、本発明は、種々の態様で実現することが可能であり、例えば、画像処理を行う方法および装置、画像を生成する方法および装置、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体等の形態で実現することができる。
【発明を実施するための最良の形態】
【００１７】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．実施例：
Ｂ．変形例：
【００１８】
Ａ．実施例：
図１は、本発明の実施例におけるマウススキャナ１００の外観を示す説明図である。また、図２は、マウススキャナ１００を含むコンピュータシステム１０の機能的構成を示すブロック図である。図２に示すように、コンピュータシステム１０は、マウススキャナ１００と、パーソナルコンピュータ（以下「ＰＣ」とも呼ぶ）２００と、を備えている。
【００１９】
本実施例のマウススキャナ１００は、ユーザ指示入力装置としてのマウス機能と画像読み取り装置（画像生成装置）としてのイメージスキャナ機能とを有し、マウス機能を提供するマウスモードとイメージスキャナ機能を提供するスキャナモードとの間で動作モードを切り替えつつ動作する。
【００２０】
マウススキャナ１００は、マウス機能を実現するマウス機構１２０と、イメージスキャナ機能を実現するスキャナ機構１３０と、ボタンやホイールといった操作部１４０と、デバイスコントローラ１５２を含むＵＳＢインタフェース（ＵＳＢ  Ｉ／Ｆ）１５０と、マウススキャナ１００全体を制御する制御部１１０と、を有している。また、ＰＣ２００は、ホストコントローラ２５２を含むＵＳＢインタフェース（ＵＳＢ  Ｉ／Ｆ）２５０と、ＰＣ２００全体を制御する制御部２１０と、を有している。
【００２１】
本実施例のマウススキャナ１００およびＰＣ２００は、ＵＳＢインタフェースに対応する装置である。マウススキャナ１００のＵＳＢインタフェース１５０とＰＣ２００のＵＳＢインタフェース２５０とは、ＵＳＢケーブル１６０を介して接続される。この状態で、ＰＣ２００はＵＳＢホストとして機能し、マウススキャナ１００はＵＳＢデバイスとして機能する。
【００２２】
マウススキャナ１００のマウス機構１２０は、自身の位置を検出する位置センサ１２２を含んでいる。位置センサ１２２は、マウススキャナ１００に固定されており、位置センサ１２２が自身の位置を検出することは、マウススキャナ１００の位置を検出することと実質的に同義である。位置センサ１２２は、所定の検出タイミングで、マウススキャナ１００の位置（基準となる位置からの移動方向および移動量）を表す位置データを出力する。
【００２３】
マウススキャナ１００のスキャナ機構１３０は、エリアイメージセンサとしてのＣＭＯＳセンサ１３２と光源としてのＬＥＤ１３４とを含んでいる。ＣＭＯＳセンサ１３２は、６４０列（ロー）×４８０行（ライン）の２次元画素配列のそれぞれの画素に配置されたフォトダイオードを有しており、被写体を撮像して画像を取得する。ＣＭＯＳセンサ１３２は、いわゆるローリングシャッター方式を採用しており、後述するように、画素のライン毎に露光期間がずれている。
【００２４】
制御部１１０は、図示しないＣＰＵおよびメモリを有している。制御部１１０は、メモリ内の所定のコンピュータプログラムを読み出して実行することにより、マウスモードにおいてはマウスとしてのマウススキャナ１００の動作を制御するマウス制御部１１２として機能し、スキャナモードにおいてはイメージスキャナとしてのマウススキャナ１００の動作を制御するスキャナ制御部１１４として機能する。
【００２５】
具体的には、マウス制御部１１２は、マウスモードにおいて、位置センサ１２２により出力される位置データやユーザによる操作部１４０の操作（ボタンの押下等）を検知した信号を、ユーザ指示を表す信号としてＰＣ２００に伝達する。ＰＣ２００の制御部２１０は、マウススキャナ１００からユーザ指示を表す信号を受信し、受信した信号の内容に応じて、例えば図示しないディスプレイに表示されるポインタの位置を移動したり、所定の処理の実行を開始したりする。
【００２６】
また、スキャナ制御部１１４は、スキャナモードにおいて、スキャナ機構１３０のＣＭＯＳセンサ１３２やＬＥＤ１３４を制御して、マウススキャナ１００の底面に設けられたウィンドウ（不図示）に対向する被写体を撮像し、画像データを取得する。また、スキャナ制御部１１４は、位置センサ１２２により出力される位置データと取得された画像データとを対応付け、対応付けられた位置データおよび画像データをＰＣ２００に送信する。なお、スキャナモードにおいて、スキャナ制御部１１４は、本発明における画像処理部として機能する。ＰＣ２００の制御部２１０は、マウススキャナ１００から位置データおよび画像データを受信し、例えば、位置データに基づく画像合成処理（スティッチング）を行う。ここで、スティッチングと呼ばれる画像合成処理は、位置データに基づき複数の画像相互の位置関係を特定し、複数の画像を合成してより広い範囲の被写体を表す画像を生成する処理である。スキャナモードにおいて、マウススキャナ１００を移動させつつ撮像を行い、ＰＣ２００においてスティッチングを行うことにより、広範囲な被写体の読み取りが可能となる。
【００２７】
マウススキャナ１００の操作部１４０は、ユーザによる動作モードの切り替え指示を受領する切り替えスイッチ１４２を含んでいる。本実施例のマウススキャナ１００では、マウスモードでの動作中に切り替えスイッチ１４２がユーザにより押下されると、マウスモードからスキャナモードへと動作モードが切り替えられる。反対に、スキャナモードでの動作中に切り替えスイッチ１４２がユーザにより押下されると、スキャナモードからマウスモードへと動作モードが切り替えられる。
【００２８】
図３は、スキャナモードにおけるタイミングチャートの一例を示す説明図である。図３における各信号の内、「Ｖｓｙｎｃ」はＣＭＯＳセンサ１３２の垂直同期信号を示しており、「Ｈｓｙｎｃ」はＣＭＯＳセンサ１３２の水平同期信号を示しており、「出力」はＣＭＯＳセンサ１３２の画像信号出力タイミングを示しており、「ラインｉ露光」（ただしｉ＝０〜４７９）はＣＭＯＳセンサ１３２のｉ番目の画素ラインの露光タイミングを示しており、「ＬＥＤフラッシュ」はＬＥＤ１３４の発光タイミングを示しており、「位置センサ読み取り」は位置センサ１２２の位置検出タイミングを示している。
【００２９】
図３に示すように、ＣＭＯＳセンサ１３２の露光期間は、ライン毎にずれている。すなわち、ＣＭＯＳセンサ１３２の０番目のライン（ライン０）については、Ｈｓｙｎｃの０番目の立ち下がりから１番目の立ち下がりの期間が電荷転送のためのシフト期間であり、その他の期間が露光期間となっている。また、１番目のライン（ライン１）については、Ｈｓｙｎｃの１番目の立ち下がりから２番目の立ち下がりの期間が電荷転送のためのシフト期間であり、その他の期間が露光期間となっている。なお、４７９番目のライン（ライン４７９）のシフト期間終了から０番目のラインのシフト期間開始までの期間（図３の期間ｔｆ）においては、ＣＭＯＳセンサ１３２のすべてのラインが露光状態となる。
【００３０】
位置センサ１２２は、図３に示す位置センサ読み取り信号の立ち上がりのタイミングでマウススキャナ１００の位置を検出する。本実施例では、位置センサ１２２の位置検出タイミングは、２ミリ秒経過毎のタイミングで固定されている。
【００３１】
ＬＥＤ１３４は、図３に示すＬＥＤフラッシュ信号の立ち上がりのタイミングで発光する。ＬＥＤ１３４の発光継続期間は、マウススキャナ１００のスキャナモードにおける想定最大移動速度と発光継続期間におけるＣＭＯＳセンサ１３２の許容画素ずれ量とに基づき算出され、本実施例では１００マイクロ秒に設定されている。また、本実施例では、ＬＥＤ１３４の発光タイミングは、ＣＭＯＳセンサ１３２のすべてのラインが露光状態となる期間ｔｆ内であって、かつ、位置センサ１２２の位置検出タイミングと同期したタイミングとなっている。
【００３２】
ＬＥＤ１３４の発光期間においては、ＣＭＯＳセンサ１３２のすべてのラインが露光状態であるため、ＣＭＯＳセンサ１３２のすべてのフォトダイオイードにおいて、対向する被写体の色に応じた電荷が蓄積される。蓄積された電荷は、ライン毎のシフト期間においてシフトされ、収集されたすべてのライン分の電荷に基づき、ＣＭＯＳセンサ１３２全体に対応する画像データが生成される。また、ＬＥＤ１３４の発光タイミングと同期した検出タイミングで検出されたマウススキャナ１００の位置を表す位置データが、ＬＥＤ１３４の発光により撮像・生成された画像データと対応付けられる。
【００３３】
以上説明したように、本実施例のマウススキャナ１００では、ＬＥＤ１３４の発光タイミングが位置センサ１２２の位置検出タイミングと同期したタイミングとされている。そのため、本実施例では、位置センサ１２２により出力される位置データの表すマウススキャナ１００の位置と、ＬＥＤ１３４の発光を利用したＣＭＯＳセンサ１３２による撮像時のマウススキャナ１００の位置とのずれを最小化することができる。従って、本実施例では、位置を表す位置データと画像を表す画像データとの対応精度を向上させることができる。そのため、例えば、上述したように画像データに対応付けられた位置データに基づき画像の合成を行う場合に、画像同士の位置ずれを最小化することができ、合成画像の質を向上させることができる。
【００３４】
また、本実施例のマウススキャナ１００では、ＣＭＯＳセンサ１３２のすべてのラインが露光状態となる期間（図３の期間ｔｆ）においてＬＥＤ１３４が発光する。ＬＥＤ１３４の発光期間が、ある画素（例えば１番目のラインの画素）のシフト期間に当たる場合には、当該画素は受光できず、当該画素の画像信号は前回の発光時に対応する信号のままとなる。このとき、前回の発光時から今回の発行時までの間にマウススキャナ１００が移動した場合には、画像に歪みが発生してします。本実施例のマウススキャナ１００では、ＣＭＯＳセンサ１３２のすべてのラインが露光状態となる期間においてＬＥＤ１３４が発光するため、撮像により取得される画像の歪みを抑制することができる。
【００３５】
なお、イメージセンサの中にはＶｓｙｎｃの周期を変更可能なものがあり、そのようなイメージセンサを採用する場合には、イメージセンサのＶｓｙｎｃの周期を位置センサ１２２の検出タイミングの周期（本実施例では２ミリ秒）の整数倍に調整することによっても、位置データと画像データとの対応精度を向上させることができる。しかしながら、本実施例では、イメージセンサとしてのＣＭＯＳセンサ１３２のＶｓｙｎｃの周期が変更できない場合であっても、ＬＥＤ１３４の発光タイミングを位置センサ１２２の位置検出タイミングと同期させることにより、位置データと画像データとの対応精度を向上させることができる。
【００３６】
なお、上述したように、本実施例のマウススキャナ１００では、ＬＥＤ１３４の発光継続期間におけるＣＭＯＳセンサ１３２の画素ずれを低減するために、ＬＥＤ１３４の発光継続期間を１００マイクロ秒という比較的短い時間に設定している。また、ＬＥＤ１３４は、ＵＳＢケーブル１６０を介してＰＣ２００から供給される１００ミリアンペアのＵＳＢバスパワーを電源として発光する。そのため、スキャナ機構１３０は、図４に示すストロボ回路を有する。ＬＥＤ１３４の発光継続期間以外の期間においては、電源供給側のスイッチが接続されてキャパシタＣに電荷が蓄積される。ＬＥＤ１３４の発光タイミングにおいて、ＬＥＤ制御側のスイッチが接続され、キャパシタＣに蓄積された電荷がＬＥＤ１３４に供給される。スキャナ機構１３０は、このようなストロボ回路を有するため、ＵＳＢバスパワーを電源としつつ、比較的短い発光継続期間においてＬＥＤ１３４の発光に必要な電流を供給することができる。
【００３７】
Ｂ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００３８】
Ｂ−１．変形例１：
上記実施例では、マウススキャナ１００を例に用いて説明したが、本発明はマウススキャナ１００に限らず、位置検出部と光源部と撮像部と画像処理部とを有する装置一般に適用可能である。例えば、本発明は、マウスとしての機能を有さないハンディスキャナにも適用可能である。
【００３９】
Ｂ−２．変形例２：
上記実施例では、マウススキャナ１００は互いに対応付けられた位置データおよび画像データをＰＣ２００に送信し、ＰＣ２００が位置データおよび画像データを用いてスティッチングを行うとしているが、マウススキャナ１００自身が位置データおよび画像データを用いてスティッチングを行い、画像合成後の画像をＰＣ２００に送信するものとしてもよい。
【００４０】
Ｂ−３．変形例３：
上記実施例におけるコンピュータシステム１０の構成はあくまで一例であり、コンピュータシステム１０の構成は種々変更可能である。例えば、ＣＭＯＳセンサ１３２のサイズ（画素数）は上述したものに限られない。また、スキャナ機構１３０がＣＭＯＳセンサ１３２以外のイメージセンサであって、互いに露光期間が異なる複数の画素群を含むエリアイメージセンサを撮像部として有しているとしてもよい。また、スキャナ機構１３０が撮像部としてラインイメージセンサを有する場合にも、本発明は適用可能である。また、スキャナ機構１３０が、ＬＥＤ１３４以外の光源を有しているとしてもよい。また、マウススキャナ１００は、ＵＳＢインタフェースに対応している必要はなく、他のインタフェースによりＰＣ２００と接続されるものとしてもよい。
【００４１】
Ｂ−４．変形例４：
上記実施例のスキャナモードにおけるタイミングチャート（図３）はあくまで一例であり、タイミングチャートにおける各信号は種々変更可能である。例えば、本実施例では、ライン４７９のシフト期間の後の期間ｔｆにおいてＬＥＤ１３４の発光が行われているが、位置センサ１２２の検出タイミングに同期したタイミングであれば、他のタイミングで発光するものとしてもよい。また、ＬＥＤ１３４の発光タイミングは、必ずしも、ＣＭＯＳセンサ１３２のすべてのラインが露光状態となる期間内である必要ない。ただし、ＬＥＤ１３４の発光タイミングをＣＭＯＳセンサ１３２のすべてのラインが露光状態となる期間内に設定すれば、取得される画像における歪みを抑制することができる。また、上述した位置センサ１２２の検出タイミングの間隔や、ＬＥＤ１３４の発光継続期間の長さは種々変更可能である。
【００４２】
Ｂ−５．変形例５：
上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【００４３】
また、本発明の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア（コンピュータプログラム）は、コンピュータ読み取り可能な記録媒体に格納された形で提供することができる。コンピュータ読み取り可能な記録媒体とは、フレキシブルディスクやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種のＲＡＭやＲＯＭ等のコンピュータ内の内部記憶装置や、ハードディスク等のコンピュータに固定されている外部記憶装置も含んでいる。
【図面の簡単な説明】
【００４４】
【図１】本発明の実施例におけるマウススキャナ１００の外観を示す説明図である。
【図２】マウススキャナ１００を含むコンピュータシステム１０の機能的構成を示すブロック図である。
【図３】スキャナモードにおけるタイミングチャートの一例を示す説明図である。
【図４】ストロボ回路の構成を示す説明図である。
【符号の説明】
【００４５】
１０…コンピュータシステム
１００…マウススキャナ
１１０…制御部
１１２…マウス制御部
１１４…スキャナ制御部
１２０…マウス機構
１２２…位置センサ
１３０…スキャナ機構
１３２…ＣＭＯＳセンサ
１３４…ＬＥＤ
１４０…操作部
１４２…切り替えスイッチ
１５０…ＵＳＢインタフェース
１５２…デバイスコントローラ
１６０…ＵＳＢケーブル
２００…ＰＣ
２１０…制御部
２５０…ＵＳＢインタフェース
２５２…ホストコントローラ
【図１】
2010154088.tif 000003
【図２】
2010154088.tif 000004
【図３】
2010154088.tif 000005
【図４】
2010154088.tif 000006