(57)【要約】【課題】マウスのノイズ成分を最小化してＰＣの画面上にカーソルの動きの不自然さを克服した光マウスのイメージデータ処理方法を提供すること。【解決手段】イメージピクセルアレイから連続的に入力されるイメージデータとしてのモーションベクトルのＸ軸及びＹ軸に対し方向及び大きさをそれぞれフィルタでフィルタリングする段階と、前記フィルタで変換されて出力される一定個数のモーションベクトルを累積して、マウスの速度に応じてノイズ成分を減衰させ且つ方向性を増幅させるための変換値をマッパーでマッピングして出力する段階と、前記マッパーでマッピングされた値をパイプを介して格納しており、格納された複数の値を加算した後、変換倍率で割って得られた値をＰＣインタフェース（ＵＳＢまたはＰＳ／２）へ伝達する段階とを含む。【選択図】        図４
2004164560.tif 000002
【特許請求の範囲】
【請求項１】
光マウスのイメージデータ処理方法において、
イメージピクセルアレイ（１）から連続的に入力されるイメージデータとしてのモーションベクトルのＸ軸及びＹ軸に対して方向及び大きさをそれぞれフィルタ（４０）でフィルタリングする段階と、
該フィルタで変換されて出力される一定個数のモーションベクトルを累積して、マウスの速度に応じてノイズ成分を減衰させ且つ方向性を増幅させるための変換値をマッパー（５０）でマッピングして出力する段階と、
該マッパーでマッピングされた値を複数のパイプ（６０）を介して格納しており、格納された複数の値を加算した後変換倍率で割って得られた値をＰＣインタフェース（４）（ＵＳＢまたはＰＳ／２）へ伝達する段階とを含むことを特徴とする光マウスのイメージデータ処理方法。
【請求項２】
前記フィルタリングのためのフィルタ（４０）は、
一連のモーションベクトルの方向を累積する方向計数器（４２）と、
該方向計数器に累積された方向値を判断して方向を決定する方向決定系（４６）と、
該方向計数器の方向値及び方向決定系で決定された方向に応じて値を決定する方向フィルタ（４４）と、
該方向フィルタで決定された値をバッファリングして格納した後、方向決定系の状態を参照して中間値を以前に格納された値及び以後に入力される値と比較して出力値を変える平坦化フィルタ（４８）とを含むことを特徴とする請求項１記載の光マウスのイメージデータ処理方法。
【請求項３】
該方向決定系は、方向のない状態、（＋）方向状態、（−）方向状態に区分され、
方向決定系が（＋）方向状態のとき、（−）入力値（モーションベクトル）は０に変わり、
方向決定系が（−）方向状態のとき、（＋）入力値（モーションベクトル）は０に変わり、
平坦化フィルタ（４８）ではモーションベクトルの急激な変化（±２以上の変化）を±１以下の変化に変えるが、変えられる値は方向決定系の状態に応じて異なって処理されるようにしたことを特徴とする請求項２記載の光マウスのイメージデータ処理方法。
【請求項４】
前記マッパーは、連続した１５〜３０個の入力値の和を低速、中速、高速に分け、低速の場合にはマッピングされる値が１ずつ増加し、中速の場合にはマッピングされる値が２ずつ増加し、高速の場合にはマッピングされる値が３ずつ増加することを特徴とする請求項１記載の光マウスのイメージデータ処理方法。
【請求項５】
前記低速と中速、中速と高速の境界点が繋がるようにマッピング方程式を作ってマッピングすることを特徴とする請求項４記載の光マウスのイメージデータ処理方法。
【請求項６】
前記複数のパイプ（６０）を３〜６個のレジスタで具現し、各レジスタに格納された値を加えた後、以前計算結果の残りも累積して８で割ってマッピングに対する影響を減少させたことを特徴とする請求項１記載の光マウスのイメージデータ処理方法。
【請求項７】
前記８で割った商はＰＣに伝達し、余りはレジスタに格納することを特徴とする請求項６記載の光マウスのイメージデータ処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、光マウスに関し、より詳細には、向上した軌跡曲線を持たせる光マウスのイメージデータ処理方法に関する。
【０００２】
【従来の技術】
図１は従来の光マウスのイメージ処理回路を示すブロック図である。
【０００３】
現在、光マウスのイメージ処理回路５は、イメージピクセルアレイ１、ピクセルアレイを制御するアナログ回路、アナログ／デジタルコンバータ２、モーションベクトル（マウスの動きまたは移動座標）演算部３、及びＰＣ６とのインタフェースのためのＰＣインタフェース４から構成されている。
【０００４】
イメージピクセルアレイ１は、マウスの動きに応じてピクセルが光に反応して、反応に対する値を抽出するもので、ここでは１８＊１８（３２４個）のピクセルからなり、各ピクセルサイズ５３μｍ＊５３μｍのイメージピクセルアレイを例として使用する。
【０００５】
前記ピクセルアレイから出力される値がアナログ値なので、このアナログ値をアナログ／デジタルコンバータ（Ａｎａｌｏｇ  Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ）２を用いてデジタル値に変換する過程が必要である。この際、１８＊１８に該当するピクセルアレイのデータは、一度に入力されるものではなく、１つずつ順次入力されてアナログ／デジタル変換される。各ピクセルに対するデジタル変換値は、アナログ／デジタルコンバータの分解能（Ｒｅｓｏｌｕｔｉｏｎ）に応じて４ビット或いは８ビットに実現することができる。
【０００６】
モーションベクトル演算部３はモーションベクトル（Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ）の算出に使用するものである。算出する過程は１８＊１８のイメージ値のうち１１＊１１のイメージ値を基準フレームとして使用するが、以前バッファ（１８＊１８）を格納しており、次のフレームが入力されると、１１＊１１のイメージデータを用いて以前バッファ（１８＊１８）上で移動しながら比較、計算する。この際、１８＊１８の以前バッファ値のうち１ビットに減らす過程によって１７＊１７の値が残り、基準フレーム（１１＊１１）と比較した際に差異値の変位は基準時間間隔の間に−３〜＋３の範囲となり、モーションベクトルは−３、−２、−１、０、１、２、３の値の一つとなる。
【０００７】
このように決定されたモーションベクトル値を一定の時間毎に読み込んで連続的に値を羅列してマウスの軌跡を決定するが、連続的なベクトル値の差異が急激に変化する場合には誤りと認識し調節するようになっている。このため、実際に方向の変わるデータが一時的に入力される場合には正常にマウスの動きが検出できずに、モニタ上でマウスの軌跡が不自然になる場合が多かった。例えば、０３０の値が入力された場合、０は動きのない状態を意味し、３は急な動きを意味するが、短時間で急な動きは発生することができないので、３を誤りと認識し、０に強制調整して動きを良くする。ところが、マウスが実際正の方向に動いているが、左に動いたこととモーションベクトルが間違って算出された場合、例えば０（−１）０の場合は急激な値の変化ではないので、誤りと認識することができないため、マウス軌跡が不自然になる場合が多い。このようなデータの誤りは、光マウスのデータを読み込む部分でアナログ的処理による不明確性によって発生する。これは、マウスで四角形を描いた場合に現われるマウスポインタの軌跡と、マウスで円形を描いた場合に現われるマウスポインタの軌跡をそれぞれ示した図２ａ及び図２ｂを参照すると、明らかになる。
【０００８】
【発明が解決しようとする課題】
本発明は、かかる従来の問題点を解消するためのもので、その目的は、光マウスのイメージピクセルアレイから入力されるイメージ信号をモーションベクトル処理アルゴリズムを介してＰＣへ出力し、より向上した特性を有するマウスの軌跡曲線を提供することにある。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本発明は、モーションベクトル（マウスの移動座標を示し、このマウスの移動座標は、光マウスの場合、マウスの底面から反射される光の量に応じて反応し、底面の明暗を区分するイメージピクセルアレイの電圧値の変化から算出する）をＸ軸及びＹ軸に対してそれぞれフィルタリング、マッピング及びパイピングして得た値をインタフェースを介してＰＣへ出力することにより、マウスのノイズ成分を最小化した光マウスのイメージデータ処理方法を提供する。
【００１０】
すなわち、本発明は、イメージピクセルアレイから連続的に入力されるイメージデータとしてのモーションベクトルのＸ軸及びＹ軸に対して方向及び大きさをそれぞれフィルタでフィルタリングする段階と、前記フィルタで変換されて出力される一定個数のモーションベクトルを累積して、マウスの速度に応じてノイズ成分を減衰させ且つ方向性を増幅させるための変換値をマッパーでマッピングして出力する段階と、前記マッパーでマッピングされた値をパイプを介して格納しており、格納された複数の値を加算した後変換倍率で割って得られた値をＰＣインタフェース（ＵＳＢまたはＰＳ／２）へ伝達する段階とによってマウスのノイズ成分を最小化した光マウスのイメージデータ処理方法を提供する。
【００１１】
【発明の実施の形態】
以下、本発明を添付図に基づいてより具体的に説明する。
【００１２】
図３は本発明に係るイメージ処理回路のブロック図である。図４はモーションベクトルの処理過程を示すブロック図で、モーションベクトル処理部１６を三つの段階に区分したものである。
【００１３】
イメージピクセルアレイ１０からのイメージデータを一定の時間間隔（ここでは５８８μｓｅｃ）で出力する。イメージデータはアナログ信号なので、アナログ／デジタルコンバータ１２でデジタル信号に変換させる。デジタル信号に変換されたイメージデータをモーションベクトル算出部１４に入力してモーションベクトルとして算出する。このように算出されたモーションベクトルをモーションベクトル処理部１６のフィルタ４０、マッパー５０及びパイプ６０を経て処理することにより、ＰＣインタフェース１８を介してＰＣ３０に伝達する。これにより、特性の良いマウスポインタの軌跡が得られるようにした。光マウスのイメージ処理回路２０は光マウス用ＩＣ内に含まれていることが好ましい。
【００１４】
次に、フィルタ、マッパー及びパイプを経る各段階によるイメージデータＶ（ｘ）の処理方法について詳細に説明する。
【００１５】
フィルタ４０の構成は図５に示す通りである。方向計数器４２は一連のモーションベクトルＶ（ｘ）の方向を累積する。（＋）値が１回入力されると、方向計数器は（＋）方向に１となり、２回入力されれば２、３回入力されれば３となる。そして、（−）値が入力されると、方向計数器４２は１となり、（−）方向になる。０の値（例えば、Ｖ（ｘ））が１０回以上連続的に入力されると、方向計数器４２は０となる。
また、方向計数器４２に対し（＋）方向に８回以上の値が入力されると、方向決定系４６は（＋）値を有し、（＋）値の状態で方向計数器４２に対し（−）方向に４回以上の値が入力されると、方向決定系４６は（０）の状態になる。さらに、方向決定系４６が（０）の状態で方向計数機４２に対し（−）方向に８回以上の値が入力されると、方向決定系４６は（−）の状態になる。
従って、方向決定系４６は（＋）、（−）及び（０）の三つの状態で表現される。方向決定系４６が（＋）方向を有しＶ（ｘ）値が負数（−）であれば、Ｖ（ｘ）値は方向フィルタ４４で０値に変わる。
【００１６】
平坦化フィルタ４８は、３段のバッファからなり、方向フィルタ４４からの連続した三つのＶ（ｘ）値を格納した後、方向決定系４６の状態を参照して中間Ｖ（ｘ）値を以前のＶ（ｘ）値及び次のＶ（ｘ）値と比較することにより、中間Ｖ（ｘ）値を該当の値に変える。例えば、方向決定系４６が（＋）方向の時、Ｖ（ｘ）値が連続して０、３、０と入力されると、０、１、０に変わるが、方向決定系４６が０であれば０、０、０に変わる。
【００１７】
もし、方向決定系４６が（−）方向であれば、連続したＶ（ｘ）値０、３、０は方向フィルタ４４で既に０、０、０に変わって平坦化フィルタ４８へ伝達される。表１は平坦化フィルタ４８に含まれた３段バッファの計算過程を例示したものである。
【００１８】
【表１】
2004164560.tif 000003
＠０１１
前記表１はフィルタに入力されるＶ（ｘ）値と、その値がフィルタ４０で変形されて出るＶ１（ｘ）値とをまとめた一例である。表１にまとめられた３回の連続したＶ（ｘ）値の入力はそれぞれの変化量が１より大きく変化した場合であって、３段バッファの中央Ｖ（ｘ）値とその前に格納されたＶ（ｘ）値（バッファの最終段）との差異が２以上の場合に、その前に格納されたＶ（ｘ）値との差異が１以下にのみ変わるように中央Ｖ（ｘ）値を調整した。この際、調整される値は方向決定系４６の状態と現在入力されたＶ（ｘ）値（バッファの最初段）によって異なる。
【００１９】
例えば、表１において、連続して入力された３つのＶ（ｘ）値が０３１の場合、現在Ｖ（ｘ）値は１であり、この前に入力されたＶ（ｘ）値は３であり、その前に入力されたＶ（ｘ）値は０である。
【００２０】
表１をまとめると、前記方向決定系４６が方向のない状態の場合、連続した３つのＶ（ｘ）値（例えば、正（＋）の値である０３０、０３１、０３２、０３３、０２０、０２１、０２２、０２３、１３０、１３１、１３２、１３３と、負（−）の値である０（−３）０、０（−３）（−１）、０（−３）（−２）、０（−３）（−３）、０（−２）０、０（−２）（−１）、０（−２）（−２）、０（−２）（−３）、（−１）（−３）０、（−１）（−３）（−１）、（−１）（−３）（−２）、（−１）（−３）（−３）が入力されても、マウスが止まった状態と認識して０００を平坦化フィルタ４８に伝達し、方向決定系４６が（＋）方向状態の際に連続した３つのＶ（ｘ）値が入力され、Ｖ（ｘ）値が正（＋）の値を有する場合には、１または２を平坦化フィルタ４８へ伝達し、方向決定系４６が（＋）方向状態の際に連続した３つのＶ（ｘ）値が入力され、Ｖ（ｘ）値が負（−）の値を有する場合には、０００を平坦化フィルタ４８へ伝達し、方向決定系４６が（−）方向状態の際に連続した３つのＶ（ｘ）値が入力され、Ｖ（ｘ）値が正（＋）値を有する場合には、０００を平坦化フィルタ４８へ伝達し、方向決定系４６が（−）方向状態の際に連続した３つのＶ（ｘ）値が入力され、Ｖ（ｘ）値が負（−）の値を有する場合には、−１または−２を平坦化フィルタ４８へ伝達する。
【００２１】
マッパー５０は、前記フィルタ４０から入力される一定個数のモーションベクトルを累積して、マウス速度に応じてノイズ成分を減衰させ且つ方向性を増幅させるための変換値を出力するものである。
【００２２】
前記フィルタ４０を経て出たＶ１（ｘ）値はマッピング段階を経る。まず、５８８μｓｅｃ毎に出力されるＶ１（ｘ）値をｎ回、好ましくは２１回加算する。この値をＡｄｄ２１Ｖ１（ｘ）とすれば、Ａｄｄ２１Ｖ１（ｘ）は０〜±３の値を２１回加えるので、０〜±６３の値になる。Ａｄｄ２１Ｖ１（ｘ）はマッピングによって適当な値に変換される。
【００２３】
低速（Ａｄｄ２１Ｖ１（ｘ）の絶対値が小さい時）の場合にはマッピングされる値Ｖ２（ｘ）が１ずつ増加するようにマッピングし、中速の場合には２ずつ増加するようにマッピングし、高速（Ａｄｄ２１Ｖ１（ｘ）の絶対値が大きい時）の場合には３ずつ増加するようにマッピングする。このようにしてノイズ成分の比率が少なくて方向性が明確な高速を大きく増幅してより明確な方向性を得ることができ、ノイズ減衰効果も得ることができる。例えば、図６の如くマッピングすることができる。すなわち、５８８μｓｅｃ毎に出るＶ１（ｘ）値を２１回加えるので、マッピングを経たＶ２（ｘ）値は１２．３４８ｍｓ毎に１回ずつ出力される。
【００２４】
つまり、前記マッパー５０は、入力値（Ａｄｄ２１Ｖ１（ｘ））の絶対値が１〜５である低速の場合には、Ｖ１（ｘ）がＶ１（ｘ）を２１回加えて得られたＶ２（ｘ）にマッピングされるように動作し、入力値の絶対値が６〜２１である中速の場合には、Ｖ１（ｘ）がＶ１（ｘ）を２１回加えた値から３を減算して２を掛けた後１を加算して得られたＶ２（ｘ）にマッピングされるように動作し、入力値の絶対値が２２〜３６である高速の場合には、Ｖ１（ｘ）がＶ１（ｘ）を２１回加えた値から９を減算して３を掛けて得られたＶ２（ｘ）にマッピングされるように動作し、入力値の絶対値が３７〜６３である超高速の場合には、Ｖ１（ｘ）がＶ１（ｘ）を２１回加えた値から１６を減算して４を掛けて得られたＶ２（ｘ）にマッピングされるように動作する。
【００２５】
次に、パイプ６０は、前記マッパー５０でマッピングされた値を格納しており、格納された複数の値を加算した後変換倍率で割って得られた値をＰＣインタフェース１８を介してＰＣ３０へ伝達するものである。
【００２６】
前記パイプ６０には４つのレジスタを含み、各レジスタに格納された値を加えた後、以前計算結果の残りも累積して８で割ってマッピングに対する影響を減少させる。これに対する数式１は次の通りである。
【００２７】
【数１】
2004164560.tif 000004
＠０１２
前記マッパー５０を経て出たＶ２（ｘ）値はパイプを介してＶ３（ｘ）値に変換されてＰＣ３０に伝達される。パイプは、図７に示すように、４段階のパイプ６１〜６４からなっている。Ｖ２（ｘ）値は１２．３４８ｍｓ毎に次の段階に移動して格納され、４段階以後には削除される。全段階のＶ２（ｘ）値とＲｅｍ＿ｒｅｇｉｓｔｅｒに格納された値を加えて８で割る。この際、商はＶ３（ｘ）になってＰＣ３０に伝達され、余りはＲｅｍ＿ｒｅｇｉｓｔｅｒ６５に格納される。Ｖ２（ｘ）値が４段階のパイプ６１〜６４を経て出力されるが、８で割るため、Ｖ２（ｘ）値の半分値のみＶ３（ｘ）値に変換されるという効果がある。
【００２８】
前記マッピング段階において、低速は１ずつ増加し、中速は２ずつ増加し、高速は３ずつ増加するようにマッピングされたため、低速は０．５倍、中速は１倍、高速は１．５倍に変換される効果を有する。モーションベクトルのノイズ成分比率が高速に比べて相対的に多い低速の場合には入力される値の半分値のみＰＣに送るので、ＰＣ画面にマウスポインタの異常動き現象を軽減させることができる。
【００２９】
また、モーションベクトルのノイズ成分の比率が低速に比べて相対的に少ない高速の場合には、１．５倍でＰＣに送るので、マウスポインタの方向性が向上する。すなわち、モーションベクトルの変換倍率を、低速は０．５倍、高速は１．５倍としてマウスポインタの異常動き現象を減らし、方向性の明確な動きを得ることができる。また、Ｖ２（ｘ）値を１度に送らず、４回に分けて送るため、マウスポインタがよりスムースに動く。例えば、Ｖ２（ｘ）値が４回連続して８、０、０、０と入力される場合、ＵＳＢまたはＰＳ／２インタフェースを介してＰＣに伝達されるＶ３（ｘ）値は１、１、１、１となってより滑らかなマウスポインタの軌跡曲線を得ることができる。
【００３０】
このように本発明で提示したモーションベクトル処理部を経たマウスポインタの軌跡は、図８ａの如く四角形を表示した場合に現われるマウスポインタの軌跡と、図８ｂの如く円を表示した場合に現われるマウスポインタの軌跡とを参照すれば、図２ａ及び図２ｂのマウスポインタの軌跡より滑らかなマウスポインタの軌跡が示されることが分る。
【００３１】
上述した具体的な例は、本発明の理解を助けるために提示された実施例であって、本発明の範疇を限定せず、単純な変形ないし変更は全て本発明の領域に属するもので、本発明の具体的な保護範囲は特許請求の範囲によって明確になるであろう。
【００３２】
【発明の効果】
本発明は、連続的に入力されるマウスのモーションベクトル（移動座標）をＸ軸及びＹ軸に対してそれぞれフィルタリング、マッピング及びパイピングして得た値をＰＣインタフェース（ＵＳＢまたはＰＣ／２）を介してＰＣへ出力することにより、マウスのノイズ成分を最小化してＰＣの画面上におけるカーソルの動きの不自然さを克服した効果を有する。また、本発明は、光マウスに限定されず、他の種類のマウスにも適用可能である。
【図面の簡単な説明】
【図１】従来の光マウスのイメージ処理回路を示すブロック図である。
【図２】従来のＰＣ画面上に現われるマウスポインタの軌跡曲線を示す参考図である。
【図３】従来のＰＣ画面上に現われるマウスポインタの軌跡曲線を示す参考図である。
【図４】本発明のイメージ処理回路を示すブロック図である。
【図５】本発明のモーションベクトルの処理過程を示すブロック図である。
【図６】本発明のフィルタの構成を示すブロック図である。
【図７】本発明のマッピングの実施例を示す説明図である。
【図８】本発明のパイピングの実施例を示すブロック図である。
【図９】本発明のモーションベクトル処理部を経た場合にＰＣ画面上に現われるマウスポインタの軌跡曲線を示す参考図である。
【図１０】本発明のモーションベクトル処理部を経た場合にＰＣ画面上に現われるマウスポインタの軌跡曲線を示す参考図である。
【符号の説明】
１０  イメージピクセルアレイ
１２  アナログ／デジタルコンバータ
１４  モーションベクトル算出部
１６  モーションベクトル処理部
１８  ＰＣインタフェース
２０  イメージ処理回路
３０  ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）
４０  フィルタ
４２  方向計数器
４４  方向フィルタ
４６  方向決定系
４８  平坦化フィルタ
５０  マッパー（ｍａｐｐｅｒ）
６０  パイプ
【図１】
2004164560.tif 000005
【図２】
2004164560.tif 000006
【図３】
2004164560.tif 000007
【図４】
2004164560.tif 000008
【図５】
2004164560.tif 000009
【図６】
2004164560.tif 000010
【図７】
2004164560.tif 000011
【図８】
2004164560.tif 000012
【図９】
2004164560.tif 000013
【図１０】
2004164560.tif 000014