画像処理装置、画像処理方法、および画像処理プログラム媒体
【課題】メニュー選択やアプリケーションプログラムの起動等の各種入力操作を容易に行うことができるようにする。
【解決手段】取得された対象画像の中から、所定の画像パターンが捕捉され、対象画像に対する相対的な捕捉位置情報が認識され、この捕捉位置情報に応じてメニュー画像が表示されて、予め関連付けられた処理を起動されるようにしたので、例えば、ユーザが所定の2次元コード101が印刷されたメニュー選択用カードを提示するだけで、その2次元コード101の位置が捕捉され、その捕捉位置情報に基づいて、メニュー選択やアプリケーションプログラムの起動等のリモート操作が可能となり、これにより各種入力操作を、従来の煩雑なマウス操作などを行うことなく、極めて容易に行うことが可能となる。
【解決手段】取得された対象画像の中から、所定の画像パターンが捕捉され、対象画像に対する相対的な捕捉位置情報が認識され、この捕捉位置情報に応じてメニュー画像が表示されて、予め関連付けられた処理を起動されるようにしたので、例えば、ユーザが所定の2次元コード101が印刷されたメニュー選択用カードを提示するだけで、その2次元コード101の位置が捕捉され、その捕捉位置情報に基づいて、メニュー選択やアプリケーションプログラムの起動等のリモート操作が可能となり、これにより各種入力操作を、従来の煩雑なマウス操作などを行うことなく、極めて容易に行うことが可能となる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法、および画像処理プログラム格納媒体に関し、特に、メニュー選択操作やアプリケーションプログラムの起動等の各種入力操作を容易とした画像処理装置、画像処理方法、および画像処理プログラム格納媒体に関する。
【背景技術】
【0002】
近年、米国マイクロソフト社製のWindows95(商標)やWindows98(商標)などのパーソナルコンピュータのオペレーティングシステムにおいては、アクティブ・ウィンドウを有するアプリケーション用に、各種タスクバーが用意されている。これにより、ボタンのような視覚的な手がかりをユーザに提供するようになされている。
【0003】
このタスクバーの使用に関する技術は、特開平8−255066号公報により詳細に開示されているので、その内容を引用してタスクバーの使用について簡単に説明する。
【0004】
例えばタスクバーには、現在アクティブになっているウィンドウについての情報を表示させるためのボタンが設けられている。またタスクバーには、プログラムのランチ、ドキュメントのオープン、およびシステムセッティングのためのメニューに対するユーザのアクセスを可能にするスタートメニューボタンなどが設けられている場合もある。
【0005】
例えば、マウス、キーボード及びビデオディスプレイ等の周辺装置と、中央処理装置(CPU)とを備えるコンピュータシステムにおいて、上記タスクバー上のスタートメニューボタンの操作について説明する。スタートメニューボタンは、プログラム、ドキュメント、システムのセッティング、ヘルプ情報等にアクセスするためのスタートメニューを表示する際に操作される。例えば、マウスのカーソルでスタートメニューボタンをポイントし、左マウスボタンをクリックすることで、スタートメニューが表示される。
【0006】
このようにして表示されたスタートメニューには、例えば「プログラム」、「検索」、「設定」、「ヘルプ」等のメニューアイテムが備えられている。このうち、例えば、「プログラム」メニューアイテムを選択することより、スタートメニューから階層表示されたプログラムメニューにアクセスすることが可能となる。プログラムメニューにはユーザが選択できる複数のアプリケーションプログラム及びプログラムグループが表示されている。
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上述したスタートメニューボタンを備えたタスクバー上をユーザが操作し、所望のアプリケーションプログラムを選択し、起動するまでには煩雑な操作を繰り返すことになる。
【0008】
例えば、上述したように、ユーザは、先ずタスクバー上のスタートメニューボタンをマウスのカーソルでポイントし、左マウスボタンをクリックし、スタートメニューを表示させる。その後、ユーザは、表示されたスタートメニューから「プログラム」メニューアイテムをマウスのカーソルでポイントし、左マウスボタンをクリックし、プログラムメニューを表示させる。そして、ユーザは、プログラムメニュー上の所望のアプリケーションプログラムの表示をマウスのカーソルでポイントし、左マウスボタンをクリックする。アプリケーションプログラムグループであったときにはさらにポイントとクリックを行う。このような操作により、ユーザが所望するアプリケーションプログラムが、CPUにより起動される。
【0009】
このようにユーザが所望するアプリケーションプログラムを起動させるためには、ユーザは、煩雑な操作を繰り返さなければならない課題があった。また、ユーザの片方の手が他の作業で塞がっているような状況下において、ユーザインターフェースとして使い難い課題があった。なお、スタートメニュープログラムから「ヘルプ」等のメニューアイテムをクリックし、所望の処理を行う場合にも同様の課題があった。
【0010】
ところで、例えば、物品の識別番号などを示す英数文字をバーコード化して物品に貼付しておき、その添付されたバーコードをバーコードスキャナと呼ばれる光学的認識装置によって読み取って、物品の識別情報を取得するバーコードシステムが、多くの産業分野に普及している。このシステムは、主に、商品販売店舗に設置されているキャッシュレジスタ等において用いられ、例えば、商品に貼付されているバーコードからその商品の識別番号を取得し、予め記憶されている対応する商品の価格をデータベースから読み出し、表示部に表示するようになされている。
【0011】
しかしながら、このバーコードシステムは、例えば、物品の識別番号をキー入力する際の操作者の手間を省く用途等で利用されており、汎用のパーソナルコンピュータのハードディスクドライブ(HDD)などに予め格納されているアプリケーションプログラムの中から所望のプログラムを指定して起動する際の、メニュー選択操作等の入力操作の手間を省くと言った目的では全く利用されていなかった。
【0012】
本発明はこのような状況に鑑みてなされたものであり、メニュー選択やアプリケーションプログラムの起動等の各種入力操作を容易とし、例えば、ユーザが所定の2次元コードが印刷されたメニュー選択用カードを提示するだけで、その2次元コードの位置が捕捉され、その捕捉位置情報に基づいて、メニュー選択やアプリケーションプログラムの起動等のリモート操作を可能とした画像処理装置、画像処理方法、およびプログラム格納媒体を提供することを目的としている。
【課題を解決するための手段】
【0013】
請求項1に記載の画像処理装置は、対象画像を取得する画像取得手段と、画像取得手段によって取得された対象画像を表示する表示手段と、画像取得手段によって取得された対象画像の中から、所定の画像パターンを認識すると共に、対象画像に対する、所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識手段と、捕捉位置情報認識手段により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、表示手段に表示されている対象画像に重畳して表示手段に表示させる表示制御手段と、表示制御手段によって表示させられている選択ボタンと、捕捉位置情報認識手段によって認識された位置情報に基づいて、位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動手段とを備えることを特徴とする。
【0014】
請求項6に記載の画像処理方法は、対象画像を取得する画像取得処理ステップと、画像取得処理ステップによって取得された対象画像を表示させる対象画像表示制御処理ステップと、画像取得処理ステップによって取得された対象画像の中から、所定の画像パターンを認識すると共に、対象画像に対する、所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識処理ステップと、捕捉位置情報認識処理ステップの処理により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、対象画像に重畳して表示させる選択ボタン表示制御処理ステップと、選択ボタン表示制御処理ステップによって表示させられている選択ボタンと、捕捉位置情報認識処理ステップによって認識された位置情報に基づいて、位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動処理ステップとを含むことを特徴とする。
【0015】
請求項7に記載の画像処理プログラム格納媒体は、対象画像を取得する画像取得処理ステップと、画像取得処理ステップによって取得された対象画像の表示を制御する対象画像表示制御処理ステップと、画像取得処理ステップによって取得された対象画像の中から、所定の画像パターンを認識すると共に、対象画像に対する、所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識処理ステップと、捕捉位置情報認識処理ステップの処理により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、対象画像に重畳して表示させる選択ボタン表示制御処理ステップと、選択ボタン表示制御処理ステップによって表示させられている選択ボタンと、捕捉位置情報認識処理ステップによって認識された位置情報に基づいて、位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動処理ステップとを含むことを特徴とする画像処理をコンピュータに実行させる画像処理プログラムが格納されている。
【0016】
請求項1に記載の画像処理装置、請求項6に記載の画像処理方法、および請求項7に記載のプログラム格納媒体においては、対象画像の中から、所定の画像パターンが認識されると共に、その画像パターンの対象画像に対する相対的な位置情報が認識され、この画像パターンに応じた処理を選択するための選択ボタンが対象画像に重畳して表示され、表示されている選択ボタンと、認識された位置情報に基づいて、位置情報に対応する位置に表示されている選択ボタンに対応する処理が起動される。
【発明の効果】
【0017】
請求項1に記載の画像処理装置、請求項6に記載の画像処理方法、および請求項7に記載のプログラム格納媒体においては、例えば、ユーザが所定の2次元コードが印刷されたメニュー選択用カードを提示するだけで、その2次元コードの位置が捕捉され、その捕捉位置情報に基づいて、メニュー選択やアプリケーションプログラムの起動等のリモート操作が可能となり、これにより各種入力操作を、従来の煩雑なマウス操作などを行うことなく、極めて容易に行うことが可能となる。
【図面の簡単な説明】
【0018】
【図1】本発明を適用したパーソナルコンピュータ1の使用例を表す図である。
【図2】2次元バーコードの仕様を説明する図である。
【図3】本発明を適用した携帯型パーソナルコンピュータの構成例の表示部を本体に対して開いた状態を示す外観斜視図である。
【図4】図3の平面図である。
【図5】図3の表示部を本体に対して閉塞した状態を示す左側側面図である。
【図6】図3の表示部を本体に対して180度開いた状態を示す右側側面図である。
【図7】図5の正面図である。
【図8】図6の底面図である。
【図9】図3のパーソナルコンピュータ1の内部構成を示す図である。
【図10】図9のHDD56の構成を示す図である。
【図11】リモートポインティング処理を説明するフローチャートである。
【図12】図3のLCD21における表示例を示す図である。
【図13】図3のLCD21における他の表示例を示す図である。
【図14】図3のLCD21における他の表示例を示す図である。
【発明を実施するための形態】
【0019】
以下に本発明の実施の形態を説明する。
【0020】
図1は、本発明を適用したパーソナルコンピュータ1の使用例を表している。
ここで、例えば、メニュー選択カード100には、所定パターンの2次元コード(以下、2Dコードと略称する)101が印刷され、もしくはこの2次元コード101が印刷されたラベルが貼付されることによって、この2次元コード101が設けられている。以下、この2次元コード101を、適宜2Dコードと略称する。
【0021】
2次元コード101には、図2に示すように、1ブロックを1単位とし、縦方向が9.5ブロック分の長さで、横方向が7ブロック分の長さの長方形の範囲内に、黒色のセル部Aとロゴ部Bが、1ブロック分離して配置されている。セル部Aには、縦方向と横方向が共に、7ブロック分の長さの正方形の範囲内に、方形のセルが2次元的にパターン化され配置されている。ロゴ部Bには、縦方向が1.5ブロック分の長さで、横方向が7ブロック分の長さの大きな長方形のセルが配置され、そのロゴ部Bには、2次元コード101のコード体系に付された名称、例えば、CyberCode(商標)などのロゴマークが白抜き文字で印刷されている。
【0022】
ここで、例えば、本願出願時点において、本出願人が提供している下記のURLでアクセス可能なインターネット上のホームページには、以下のような説明文が掲載されている。http://www.sony.co.jp/sd/ProductsPark/Consumer/PCOM/PCG-C1CAT/cybercode.html「「サイバーコード」は、ソニー独自の2次元バーコードで、約1,677万通り(24ビット)のパターンが存在します。このうち約100万通り(20ビット)を、任意のプログラム起動用として自由に登録することが可能。残りのコード分は、将来のサービス拡張用として予約されています。「サイバーコード」は、それが貼られたものから、対応するコンピューター上の情報を引き出すためのインデックスの役割をし、CyberCode Finderのファインダーを通して、プログラムが起動されることにより、あたかも「サイバーコード」が貼られたものから、対応する情報がコンピューター上に飛び出してくるという新しいインターフェースを提供します。」 パーソナルコンピュータ1は、ノート型コンピュータで、CCDビデオカメラ23が表示部3に設けられている。パーソナルコンピュータ1は、例えば、CCDビデオカメラ23により撮像され、その結果得られたオブジェクト100と2次元コード101の画像データから、2次元コード101のパターンを認識し、そのパターンに対応した所定の処理を実行するようになされている。
【0023】
図3乃至図8は、本発明を適用した携帯型パーソナルコンピュータの構成例を表している。このパーソナルコンピュータ1は、ミニノート型のパーソナルコンピュータとされ、基本的に、本体2と、本体2に対して開閉自在とされている表示部3により構成されている。図3は、表示部3を本体2に対して開いた状態を示す外観斜視図、図4は、図3の平面図、図5は、表示部3を本体2に対して閉塞した状態を示す左側側面図、図6は、表示部3を本体2に対して180度開いた状態を示す右側側面図、図7は、図5の正面図、図8は、図6の底面図である。
【0024】
本体2には、各種の文字や記号などを入力するとき操作されるキーボード4、マウスカーソルを移動させるときなどに操作されるスティック式ポインティングデバイス5が、その上面に設けられている。また、本体2の上面には、音を出力するスピーカ8と、表示部3に設けられているCCDビデオカメラ23で撮像するとき操作されるシャッタボタン10がさらに設けられている。
【0025】
表示部3の上端部には、ツメ13が設けられており、図5に示すように、表示部3を本体2に対して閉塞した状態において、ツメ13に対向する位置における本体2には、ツメ13が嵌合する孔部6が設けられている。本体2の前面には、スライドレバー7が前面に平行に移動可能に設けられており、スライドレバー7は孔部6に嵌合したツメ13と係合してロックし、またロック解除することができるようになっている。ロックを解除することにより、表示部3を本体2に対して回動することができる。ツメ13の隣りには、マイクロホン24が取り付けられている。このマイクロホン24は、図8にも示すように、背面からの音も収音できるようになされている。
【0026】
本体2の正面にはまた、プログラマブルパワーキー(PPK)9が設けられている。本体2の右側面には、図6に示すように、排気孔11が設けられており、本体2の前面下部には、図7に示すように、吸気孔14が設けられている。さらに、排気孔11の右側には、PCMCIA(Personal Computer Memory Card International Association)カード(PCカード)を挿入するためのスロット12が設けられている。
【0027】
表示部3の正面には、画像を表示するLCD(Liquid Crystal Display)21が設けられており、その上端部には、撮像部22が、表示部3に対して回動自在に設けられている。すなわち、この撮像部22は、LCD21と同一の方向と、その逆の方向(背面の方向)との間の180度の範囲の任意の位置に回動することができるようになされている。撮像部22には、CCDビデオカメラ23が取り付けられている。
【0028】
表示部3の下側の本体側には、電源ランプPL、電池ランプBL、メッセージランプML、その他のLEDよりなるランプが設けられている。なお、図5に示す符号40は、本体2の左側面に設けられた電源スイッチであり、図7に示す符号25は、CCDビデオカメラ23のフォーカスを調整する調整リングである。さらに、図8に示す符号26は、本体2内に増設メモリを取り付けるための開口部を被覆する蓋であり、符号41は、蓋26のロックツメを外すためのピンを挿入する小孔である。
【0029】
図9は、パーソナルコンピュータ1の内部の構成例を表している。内部バス51には、CPU(Central Processing Unit)52、必要に応じて挿入されるPCカード53、RAM(Random Access Memory)54、およびグラフィックチップ81が接続されている。この内部バス51は、外部バス55に接続されており、外部バス55には、ハードディスクドライブ(HDD)56、I/O(入出力)コントローラ57、キーボードコントローラ58、スティック式ポインティングデバイスコントローラ59、サウンドチップ60、LCDコントローラ83、モデム50等が接続されている。
【0030】
CPU52は、各機能を統括するコントローラであり、PCカード53は、オプションの機能を付加するとき適宜装着される。
【0031】
グラフィックチップ81には、CCDビデオカメラ23で取り込んだ画像データが、処理部82で処理された後、入力されるようになされている。グラフィックチップ81は、処理部82を介してCCDビデオカメラ23より入力されたビデオデータを、内蔵するVRAM81Aに記憶し、適宜、これを読み出して、LCDコントローラ83に出力する。LCDコントローラ83は、グラフィックチップ81より供給された画像データをLCD21に出力し、表示させる。バックライト84は、LCD21を後方から照明するようになされている。
【0032】
RAM54の中には、起動が完了した時点において、電子メールプログラム(アプリケーションプログラム)54A、オートパイロットプログラム(アプリケーションプログラム)54B、そしてOS(基本プログラム)54CがHDD56から転送され、記憶される。
【0033】
電子メールプログラム54Aは、電話回線のような通信回線等からネットワーク経由で通信文を授受するプログラムである。電子メールプログラム54Aは、特定機能としての着信メール取得機能を有している。この着信メール取得機能は、メールサーバ93に対してそのメールボックス93A内に自分(利用者)宛のメールが着信しているかどうかを確認して、自分宛のメールがあれば取得する処理を実行する。
【0034】
オートパイロットプログラム54Bは、予め設定された複数の処理(またはプログラム)等を、予め設定された順序で順次起動して、処理するプログラムである。
【0035】
OS(基本プログラムソフトウェア)54Cは、Windows95やWindouws98(商標)に代表される、コンピュータの基本的な動作を制御するものである。
【0036】
一方、外部バス55側のハードディスクドライブ(HDD)56には、図10に示すように、電子メールプログラム56A、オートパイロットプログラム56B、OS(基本プログラムソフトウェア)56C、2次元コードデータベース(以下、2Dコードデータベースと略称する)56D、ファインダアプリケーションプログラム(以下、FAプログラムと略称する)56E、N個の2次元コードアソシエートアプリケーションプログラム(以下、2Dコードプログラムと略称する)56F−1乃至56F−N(以下、個々に区別する必要がない場合、単に2Dコードプログラム56Fと記述する)、および2Dコードプログラムメニュー情報データベース(以下、メニュー情報データベースと略称する)56Gが記憶されている。
【0037】
2Dコードデータベース56Dには、予め登録されたメニュー選択カードに貼付されている2次元バーコードの識別番号(以下、2DコードIDと称する)、例えば、2Dコード101の2DコードIDが記憶されている。
【0038】
FAプログラム56Eは、例えば、グラフィックチップ81のVRAM81Aに記憶されている画像データから2次元バーコードを抽出し、その2DコードIDを取得する処理を実行したり、また、リモートポインティング処理(後述)を実行し、その処理に対応して、2Dコードプログラム56Fを起動する。このFAプログラム56Eは、2Dコードプログラム56Fを呼び出したり、各種メッセージを授受するためのAPI(Application Programming Interface)を有している。 2Dコードプログラム56F−1乃至56F−Nは、FAプログラム56Eにより起動されるアプリケーションプログラムである。これら2Dコードプログラム56Fは、FAプログラム56EのAPIを介して、FAプログラム56Eとデータの授受を行うことができる。これら2Dコードプログラム56Fの内、特に、2Dコードプログラム56F−1としては、後述するメニュー選択ボタンやポインティングカーソルを表示するためのメニュー選択プログラムが記憶されている。
【0039】
メニュー情報データベース56Gには、メニュー選択ボタンの表示上の位置(領域)情報が記憶されているとともに、それに対応して起動される2Dコードプログラム56FのプログラムIDや、その他、ワードプロセッサ等の一般的なアプリケーションプログラムを特定するためのプログラムIDが記憶されている。
【0040】
ハードディスクドライブ56内のOS56C、オートパイロットプログラム56Bおよび電子メールプログラム56Aは、起動(ブートアップ)処理の過程で、RAM54内に順次転送され、格納される。
【0041】
図9に戻り、I/Oコントローラ57は、マイクロコントローラ61を有し、このマイクロコントローラ61にはI/Oインタフェース62が設けられている。このマイクロコントローラ61はI/Oインタフェース62、CPU63、RAM64、ROM69が相互に接続されて構成されている。このRAM64は、キー入力ステイタスレジスタ65、LED(発光ダイオード)制御レジスタ66、設定時刻レジスタ67、レジスタ68を有している。設定時刻レジスタ67は、ユーザが予め設定した時刻(起動条件)になると起動シーケンス制御部76の動作を開始させる際に利用される。レジスタ68は、予め設定された操作キーの組み合わせ(起動条件)と、起動すべきアプリケーションプログラムの対応を記憶するもので、その記憶された操作キーの組み合わせがユーザにより入力されると、その記憶されたアプリケーションプログラム(例えば電子メール)が起動されることになる。
【0042】
キー入力ステイタスレジスタ65は、ワンタッチ操作用のプログラマブルパワーキー(PPK)9が押されると、操作キーフラグが格納されるようになっている。LED制御レジスタ66は、レジスタ68に記憶されたアプリケーションプログラム(電子メール)の立上げ状態を表示するメッセージランプMLの点灯を制御するものである。設定時刻レジスタ67は、所定の時刻を任意に設定することができるものである。
【0043】
なお、このマイクロコントローラ61にはバックアップ用のバッテリ74が接続されており、各レジスタ65,66,67の値は、本体2の電源がオフとされている状態においても保持されるようになっている。
【0044】
マイクロコントローラ61内のROM69の中には、ウェイクアッププログラム70、キー入力監視プログラム71、LED制御プログラム72が予め格納されている。このROM69は、例えばEEPROM(electrically erasable and programmable read only memory)で構成されている。このEEPROMはフラッシュメモリとも呼ばれている。さらにマイクロコントローラ61には、常時現在時刻をカウントするRTC(Real-Time Clock)75が接続されている。
【0045】
ROM69の中のウェイクアッププログラム70は、RTC75から供給される現在時刻データに基づいて、設定時刻レジスタ67に予め設定された時刻になったかどうかをチェックして、設定された時刻になると、所定の処理(またはプログラム)等の起動をするプログラムである。キー入力監視プログラム71は、PPK9が利用者により押されたかどうかを常時監視するプログラムである。LED制御プログラム72は、メッセージランプMLの点灯を制御するプログラムである。
【0046】
ROM69には、さらにBIOS(Basic Input/Output System)73が書き込まれている。このBIOSとは、基本入出力システムのことをいい、OSやアプリケーションソフトウェアと周辺機器(ディスプレイ、キーボード、ハードディスクドライブ等)の間でのデータの受け渡し(入出力)を制御するソフトウェアプログラムである。
【0047】
外部バス55に接続されているキーボードコントローラ58は、キーボード4からの入力をコントロールする。スティック式ポインティングデバイスコントローラ59はトラックポイント5の入力を制御する。
【0048】
サウンドチップ60は、マイクロホン24からの入力を取り込み、あるいは内蔵スピーカ8に対して音声信号を供給する。
【0049】
モデム50は、公衆電話回線90、インターネットサービスプロバイダ91を介して、インターネット等の通信ネットワーク92やメールサーバ93等に接続することができる。
【0050】
電源スイッチ40は、電源をオンまたはオフするとき操作される。半押しスイッチ85は、シャッタボタン10が半押し状態にされたときオンされ、全押しスイッチ86は、シャッタボタン10が全押し状態にされたときオンされる。反転スイッチ87は、撮像部22が180度回転されたとき(CCDビデオカメラ23がLCD21の反対側を撮像する方向に回転されたとき)、オンされるようになされている。
【0051】
次に、リモートポインティング処理を実行する場合のFAプログラム56Eと、2Dコードプログラム56F−1(メニュー選択プログラム)の連携処理手順を、図11のフローチャートを参照して説明する。
【0052】
HDD56に記憶されているFAプログラム56Eが起動されると、ステップS1において、CPU52によって実行されるFAプログラム56Eは、CCDビデオカメラ23によって撮像された画像を取得(キャプチャ)し、次のステップS2において、この取得された画像データを、処理部82で処理させ、グラフィックチップ81のVRAM81Aに描画させるとともに、LCDコントローラ83を制御し、図12に示すように、LCD21のファインダ画面201に、そのキャプチャ画像を表示させる。なお、以下において、FAプログラム56Eが、LCDコントローラ83を制御し、LCD21のファインダ画面201に画像を表示させることを、単に、FAプログラム56Eがファインダ画面201に画像を表示させると記述する。
【0053】
ステップS3において、FAプログラム56Eは、ステップS1においてCCDビデオカメラ23で撮像されて取得された対象画像の画像データから、2Dコード101を抽出し、その2DコードIDを認識する処理を実行すると共に、ファインダ画面201に表示されている対象画像に対する2Dコード101の相対的な位置情報(例えば、2Dコード101の中心点など)を認識する処理を実行する。図12の例の場合、CCDビデオカメラ23によりメニュー選択カード100の画像が取り込まれ、その2Dコード101が抽出されると共に、その2DコードIDと位置が捕捉され、その捕捉位置情報が取得される。そして、ステップS3において、FAプログラム56Eが2Dコード101のIDとその捕捉位置情報を認識した後、次のステップS4に進む。
【0054】
ステップS4においては、2Dコードデータベース56Dを検索し、ステップS3において認識した2DコードIDが、予めメニュー選択プログラム(2Dコードプログラム56F−1)に対応して設定された所定の2Dコードに相当する2DコードIDであるか否かを判定する。そして、このステップS4において、予め設定された所定の2Dコードに相当する2DコードIDであると判定された場合、次のステップS5に進む。
【0055】
ステップS5においては、メニュー選択プログラム(2Dコードプログラム56F−1)が起動中であるか否かを判定し、未だ起動していないと判定された場合は、ステップS6へ進む。
【0056】
ステップS6において、メニュー選択プログラム(2Dコードプログラム56F−1)が起動され、その後CPU52によって実行されるメニュー選択プログラムは、メニュー情報データベース56Gを検索し、検索された所定の選択ボタンを含むメニュー画像を、ステップS2で表示されたキャプチャ画像にオーバーレイ(重畳)させて表示させる。例えば、図13に示すように、ファインダ画面201上に表示される、4個のメニュー選択ボタン300−1乃至300−4のそれぞれの領域情報が、メニュー情報データベース56Gから読み出され、その読み出された領域情報に基づいて表示が行われる。
【0057】
このステップS6における処理の後、ステップS7に進み、FAプログラム56Eは、起動されたメニュー選択プログラムから、対応する2DコードIDの通知を受け取り、その後、上述したステップS3に戻る。
【0058】
一方、ステップS5において、メニュー選択プログラムが起動中であると判定された場合は、ステップS8に進む。
【0059】
ステップS8において、メニュー選択プログラム(2Dコードプログラム56F−1)は、ステップS3で認識した2Dコード101の捕捉位置情報に対応して、図13に示すような、ポインティングカーソル(以下、カーソルと略称する)301を表示させる。カーソル301は、この例の場合、2Dコード101の中心に点Aが位置し、それを中心に2つの円が描かれている。また、点Aを通るように、ファインダ画面201のX軸に平行な線とY軸に平行な線が描かれている。
【0060】
次に、ステップS9において、メニュー選択プログラム(2Dコードプログラム56F−1)は、ステップS8で表示させたカーソル301が指し示す位置、例えば、カーソル301の点Aが、メニュー選択ボタン300−1乃至300−4のいずれかの領域内に位置するか否かを判定する。ここで、例えば、図13に示すように、カーソル301の点Aが、メニュー選択ボタン300−i(図13の例では、i=1)の領域に位置していると判定した場合、ステップS10に進む。なお、以下において、図13に示したように、カーソル301の点Aが、メニュー選択ボタン300−iの領域に位置する状態を、カーソル301でメニュー選択ボタン300−iがポインティングされている記述する。
【0061】
次に、ステップS10において、メニュー選択プログラム(2Dコードプログラム56F−1)は、カーソル301でポインティングされているメニュー選択ボタン300−iの表示を、例えば、図14に示すように、ポインティングされているメニュー選択ボタン300−1のみをハイライト表示(強調表示)し、メニュー選択ボタン300−1が選択されたことを利用者に通知させる。
【0062】
次に、ステップS11において、メニュー選択プログラム(2Dコードプログラム56F−1)は、カーソル301でメニュー選択ボタン300−iがポインティングされている時間をカウントし、所定時間以上、ポインティングされていると判定した場合、ステップS12に進む。
【0063】
このように、カーソル301でポインティングされている状態が、所定時間以上経過したか否かが判定されることによって、メニュー選択カード100の提示位置が一定位置で定まらずに変化している過程で、誤って別のメニュー選択ボタン300−iがポインティングされたものと誤認識してしまい、以降の処理が誤って実行されてしまうという事態を未然に回避することができる。
【0064】
ステップS11で、所定の時間以上、カーソル301でポインティングされていると判定された場合、メニュー選択プログラム(2Dコードプログラム56F−1)は、ステップS12においてメニュー情報データベース56Gを検索し、カーソル301でポインティングされているメニュー選択ボタン300−iの領域情報に対応して記憶されているプログラムIDを読み出し、そのプログラムIDを有する2Dコードプログラム56Fや、その他、ワードプロセッサ等の一般的なアプリケーションプログラムを起動させる。その後、処理は終了される。
【0065】
ところで、前述したステップS4において、FAプログラム56Eは、2Dコードデータベース56Dを検索し、ステップS3において認識した2DコードIDが、予め設定された所定の2Dコードに相当する2DコードIDではないものと判定した場合、ステップS13に進み、そのプログラムIDを有するメニュー選択プログラム以外の2Dコードプログラム56Fや、その他、ワードプロセッサ等の一般的なアプリケーションプログラムを起動させ、その後、処理を終了させる。
【0066】
ステップS9において、カーソル301でメニュー選択ボタン300−iがポインティングされていないと判定した場合、または、ステップS11において、所定時間以上、カーソル301でメニュー選択ボタン300−iがポインティングされていないと判定した場合、ステップS3に戻り、それ以降の処理が、繰り返し実行される。
【0067】
以上のようにして、2Dコード101の表示上に位置に対応して表示されるカーソル301により、メニュー選択ボタン300をポインティングすることができ、キーボードやマウスなどを一切操作せずに、メニュー選択ボタン300に対応した処理を実行させることができる。
【0068】
なお、上述した一連の処理を実行するプログラムをコンピュータにインストールし、コンピュータによって実行可能な状態とするために用いられるプログラム格納媒体としては、例えば、フロッピーディスク、CD-ROM、DVDなどのパッケージメディアのみならず、プログラムが一時的もしくは永続的に格納される半導体メモリや磁気ディスクなどで実現してもよい。さらには、上述したプログラムをインストールする手段としては、ローカルエリアネットワークやインターネット、デジタル衛星放送などの有線および無線通信媒体、およびこれらの通信媒体を介して提供されるプログラムを転送もしくは受信するルーターやモデム等の各種通信インターフェイス等を利用することができる。
【符号の説明】
【0069】
1 パーソナルコンピュータ, 3 表示部, 21 LCD, 23 CCDビデオカメラ, 52 CPU, 56 HDD, 56E FA(ファインダアプリケーション)プログラム, 56F−1 2次元コードアソシエートアプリケーションプログラム(メニュー選択プログラム), 81 グラフィックチップ, 83 LCDコントローラ, 100 メニュー選択カード, 101 2次元コード, 201 ファインダ画面, 300−1〜300−4 メニュー選択ボタン, 301ポインティングカーソル
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法、および画像処理プログラム格納媒体に関し、特に、メニュー選択操作やアプリケーションプログラムの起動等の各種入力操作を容易とした画像処理装置、画像処理方法、および画像処理プログラム格納媒体に関する。
【背景技術】
【0002】
近年、米国マイクロソフト社製のWindows95(商標)やWindows98(商標)などのパーソナルコンピュータのオペレーティングシステムにおいては、アクティブ・ウィンドウを有するアプリケーション用に、各種タスクバーが用意されている。これにより、ボタンのような視覚的な手がかりをユーザに提供するようになされている。
【0003】
このタスクバーの使用に関する技術は、特開平8−255066号公報により詳細に開示されているので、その内容を引用してタスクバーの使用について簡単に説明する。
【0004】
例えばタスクバーには、現在アクティブになっているウィンドウについての情報を表示させるためのボタンが設けられている。またタスクバーには、プログラムのランチ、ドキュメントのオープン、およびシステムセッティングのためのメニューに対するユーザのアクセスを可能にするスタートメニューボタンなどが設けられている場合もある。
【0005】
例えば、マウス、キーボード及びビデオディスプレイ等の周辺装置と、中央処理装置(CPU)とを備えるコンピュータシステムにおいて、上記タスクバー上のスタートメニューボタンの操作について説明する。スタートメニューボタンは、プログラム、ドキュメント、システムのセッティング、ヘルプ情報等にアクセスするためのスタートメニューを表示する際に操作される。例えば、マウスのカーソルでスタートメニューボタンをポイントし、左マウスボタンをクリックすることで、スタートメニューが表示される。
【0006】
このようにして表示されたスタートメニューには、例えば「プログラム」、「検索」、「設定」、「ヘルプ」等のメニューアイテムが備えられている。このうち、例えば、「プログラム」メニューアイテムを選択することより、スタートメニューから階層表示されたプログラムメニューにアクセスすることが可能となる。プログラムメニューにはユーザが選択できる複数のアプリケーションプログラム及びプログラムグループが表示されている。
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上述したスタートメニューボタンを備えたタスクバー上をユーザが操作し、所望のアプリケーションプログラムを選択し、起動するまでには煩雑な操作を繰り返すことになる。
【0008】
例えば、上述したように、ユーザは、先ずタスクバー上のスタートメニューボタンをマウスのカーソルでポイントし、左マウスボタンをクリックし、スタートメニューを表示させる。その後、ユーザは、表示されたスタートメニューから「プログラム」メニューアイテムをマウスのカーソルでポイントし、左マウスボタンをクリックし、プログラムメニューを表示させる。そして、ユーザは、プログラムメニュー上の所望のアプリケーションプログラムの表示をマウスのカーソルでポイントし、左マウスボタンをクリックする。アプリケーションプログラムグループであったときにはさらにポイントとクリックを行う。このような操作により、ユーザが所望するアプリケーションプログラムが、CPUにより起動される。
【0009】
このようにユーザが所望するアプリケーションプログラムを起動させるためには、ユーザは、煩雑な操作を繰り返さなければならない課題があった。また、ユーザの片方の手が他の作業で塞がっているような状況下において、ユーザインターフェースとして使い難い課題があった。なお、スタートメニュープログラムから「ヘルプ」等のメニューアイテムをクリックし、所望の処理を行う場合にも同様の課題があった。
【0010】
ところで、例えば、物品の識別番号などを示す英数文字をバーコード化して物品に貼付しておき、その添付されたバーコードをバーコードスキャナと呼ばれる光学的認識装置によって読み取って、物品の識別情報を取得するバーコードシステムが、多くの産業分野に普及している。このシステムは、主に、商品販売店舗に設置されているキャッシュレジスタ等において用いられ、例えば、商品に貼付されているバーコードからその商品の識別番号を取得し、予め記憶されている対応する商品の価格をデータベースから読み出し、表示部に表示するようになされている。
【0011】
しかしながら、このバーコードシステムは、例えば、物品の識別番号をキー入力する際の操作者の手間を省く用途等で利用されており、汎用のパーソナルコンピュータのハードディスクドライブ(HDD)などに予め格納されているアプリケーションプログラムの中から所望のプログラムを指定して起動する際の、メニュー選択操作等の入力操作の手間を省くと言った目的では全く利用されていなかった。
【0012】
本発明はこのような状況に鑑みてなされたものであり、メニュー選択やアプリケーションプログラムの起動等の各種入力操作を容易とし、例えば、ユーザが所定の2次元コードが印刷されたメニュー選択用カードを提示するだけで、その2次元コードの位置が捕捉され、その捕捉位置情報に基づいて、メニュー選択やアプリケーションプログラムの起動等のリモート操作を可能とした画像処理装置、画像処理方法、およびプログラム格納媒体を提供することを目的としている。
【課題を解決するための手段】
【0013】
請求項1に記載の画像処理装置は、対象画像を取得する画像取得手段と、画像取得手段によって取得された対象画像を表示する表示手段と、画像取得手段によって取得された対象画像の中から、所定の画像パターンを認識すると共に、対象画像に対する、所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識手段と、捕捉位置情報認識手段により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、表示手段に表示されている対象画像に重畳して表示手段に表示させる表示制御手段と、表示制御手段によって表示させられている選択ボタンと、捕捉位置情報認識手段によって認識された位置情報に基づいて、位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動手段とを備えることを特徴とする。
【0014】
請求項6に記載の画像処理方法は、対象画像を取得する画像取得処理ステップと、画像取得処理ステップによって取得された対象画像を表示させる対象画像表示制御処理ステップと、画像取得処理ステップによって取得された対象画像の中から、所定の画像パターンを認識すると共に、対象画像に対する、所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識処理ステップと、捕捉位置情報認識処理ステップの処理により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、対象画像に重畳して表示させる選択ボタン表示制御処理ステップと、選択ボタン表示制御処理ステップによって表示させられている選択ボタンと、捕捉位置情報認識処理ステップによって認識された位置情報に基づいて、位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動処理ステップとを含むことを特徴とする。
【0015】
請求項7に記載の画像処理プログラム格納媒体は、対象画像を取得する画像取得処理ステップと、画像取得処理ステップによって取得された対象画像の表示を制御する対象画像表示制御処理ステップと、画像取得処理ステップによって取得された対象画像の中から、所定の画像パターンを認識すると共に、対象画像に対する、所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識処理ステップと、捕捉位置情報認識処理ステップの処理により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、対象画像に重畳して表示させる選択ボタン表示制御処理ステップと、選択ボタン表示制御処理ステップによって表示させられている選択ボタンと、捕捉位置情報認識処理ステップによって認識された位置情報に基づいて、位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動処理ステップとを含むことを特徴とする画像処理をコンピュータに実行させる画像処理プログラムが格納されている。
【0016】
請求項1に記載の画像処理装置、請求項6に記載の画像処理方法、および請求項7に記載のプログラム格納媒体においては、対象画像の中から、所定の画像パターンが認識されると共に、その画像パターンの対象画像に対する相対的な位置情報が認識され、この画像パターンに応じた処理を選択するための選択ボタンが対象画像に重畳して表示され、表示されている選択ボタンと、認識された位置情報に基づいて、位置情報に対応する位置に表示されている選択ボタンに対応する処理が起動される。
【発明の効果】
【0017】
請求項1に記載の画像処理装置、請求項6に記載の画像処理方法、および請求項7に記載のプログラム格納媒体においては、例えば、ユーザが所定の2次元コードが印刷されたメニュー選択用カードを提示するだけで、その2次元コードの位置が捕捉され、その捕捉位置情報に基づいて、メニュー選択やアプリケーションプログラムの起動等のリモート操作が可能となり、これにより各種入力操作を、従来の煩雑なマウス操作などを行うことなく、極めて容易に行うことが可能となる。
【図面の簡単な説明】
【0018】
【図1】本発明を適用したパーソナルコンピュータ1の使用例を表す図である。
【図2】2次元バーコードの仕様を説明する図である。
【図3】本発明を適用した携帯型パーソナルコンピュータの構成例の表示部を本体に対して開いた状態を示す外観斜視図である。
【図4】図3の平面図である。
【図5】図3の表示部を本体に対して閉塞した状態を示す左側側面図である。
【図6】図3の表示部を本体に対して180度開いた状態を示す右側側面図である。
【図7】図5の正面図である。
【図8】図6の底面図である。
【図9】図3のパーソナルコンピュータ1の内部構成を示す図である。
【図10】図9のHDD56の構成を示す図である。
【図11】リモートポインティング処理を説明するフローチャートである。
【図12】図3のLCD21における表示例を示す図である。
【図13】図3のLCD21における他の表示例を示す図である。
【図14】図3のLCD21における他の表示例を示す図である。
【発明を実施するための形態】
【0019】
以下に本発明の実施の形態を説明する。
【0020】
図1は、本発明を適用したパーソナルコンピュータ1の使用例を表している。
ここで、例えば、メニュー選択カード100には、所定パターンの2次元コード(以下、2Dコードと略称する)101が印刷され、もしくはこの2次元コード101が印刷されたラベルが貼付されることによって、この2次元コード101が設けられている。以下、この2次元コード101を、適宜2Dコードと略称する。
【0021】
2次元コード101には、図2に示すように、1ブロックを1単位とし、縦方向が9.5ブロック分の長さで、横方向が7ブロック分の長さの長方形の範囲内に、黒色のセル部Aとロゴ部Bが、1ブロック分離して配置されている。セル部Aには、縦方向と横方向が共に、7ブロック分の長さの正方形の範囲内に、方形のセルが2次元的にパターン化され配置されている。ロゴ部Bには、縦方向が1.5ブロック分の長さで、横方向が7ブロック分の長さの大きな長方形のセルが配置され、そのロゴ部Bには、2次元コード101のコード体系に付された名称、例えば、CyberCode(商標)などのロゴマークが白抜き文字で印刷されている。
【0022】
ここで、例えば、本願出願時点において、本出願人が提供している下記のURLでアクセス可能なインターネット上のホームページには、以下のような説明文が掲載されている。http://www.sony.co.jp/sd/ProductsPark/Consumer/PCOM/PCG-C1CAT/cybercode.html「「サイバーコード」は、ソニー独自の2次元バーコードで、約1,677万通り(24ビット)のパターンが存在します。このうち約100万通り(20ビット)を、任意のプログラム起動用として自由に登録することが可能。残りのコード分は、将来のサービス拡張用として予約されています。「サイバーコード」は、それが貼られたものから、対応するコンピューター上の情報を引き出すためのインデックスの役割をし、CyberCode Finderのファインダーを通して、プログラムが起動されることにより、あたかも「サイバーコード」が貼られたものから、対応する情報がコンピューター上に飛び出してくるという新しいインターフェースを提供します。」 パーソナルコンピュータ1は、ノート型コンピュータで、CCDビデオカメラ23が表示部3に設けられている。パーソナルコンピュータ1は、例えば、CCDビデオカメラ23により撮像され、その結果得られたオブジェクト100と2次元コード101の画像データから、2次元コード101のパターンを認識し、そのパターンに対応した所定の処理を実行するようになされている。
【0023】
図3乃至図8は、本発明を適用した携帯型パーソナルコンピュータの構成例を表している。このパーソナルコンピュータ1は、ミニノート型のパーソナルコンピュータとされ、基本的に、本体2と、本体2に対して開閉自在とされている表示部3により構成されている。図3は、表示部3を本体2に対して開いた状態を示す外観斜視図、図4は、図3の平面図、図5は、表示部3を本体2に対して閉塞した状態を示す左側側面図、図6は、表示部3を本体2に対して180度開いた状態を示す右側側面図、図7は、図5の正面図、図8は、図6の底面図である。
【0024】
本体2には、各種の文字や記号などを入力するとき操作されるキーボード4、マウスカーソルを移動させるときなどに操作されるスティック式ポインティングデバイス5が、その上面に設けられている。また、本体2の上面には、音を出力するスピーカ8と、表示部3に設けられているCCDビデオカメラ23で撮像するとき操作されるシャッタボタン10がさらに設けられている。
【0025】
表示部3の上端部には、ツメ13が設けられており、図5に示すように、表示部3を本体2に対して閉塞した状態において、ツメ13に対向する位置における本体2には、ツメ13が嵌合する孔部6が設けられている。本体2の前面には、スライドレバー7が前面に平行に移動可能に設けられており、スライドレバー7は孔部6に嵌合したツメ13と係合してロックし、またロック解除することができるようになっている。ロックを解除することにより、表示部3を本体2に対して回動することができる。ツメ13の隣りには、マイクロホン24が取り付けられている。このマイクロホン24は、図8にも示すように、背面からの音も収音できるようになされている。
【0026】
本体2の正面にはまた、プログラマブルパワーキー(PPK)9が設けられている。本体2の右側面には、図6に示すように、排気孔11が設けられており、本体2の前面下部には、図7に示すように、吸気孔14が設けられている。さらに、排気孔11の右側には、PCMCIA(Personal Computer Memory Card International Association)カード(PCカード)を挿入するためのスロット12が設けられている。
【0027】
表示部3の正面には、画像を表示するLCD(Liquid Crystal Display)21が設けられており、その上端部には、撮像部22が、表示部3に対して回動自在に設けられている。すなわち、この撮像部22は、LCD21と同一の方向と、その逆の方向(背面の方向)との間の180度の範囲の任意の位置に回動することができるようになされている。撮像部22には、CCDビデオカメラ23が取り付けられている。
【0028】
表示部3の下側の本体側には、電源ランプPL、電池ランプBL、メッセージランプML、その他のLEDよりなるランプが設けられている。なお、図5に示す符号40は、本体2の左側面に設けられた電源スイッチであり、図7に示す符号25は、CCDビデオカメラ23のフォーカスを調整する調整リングである。さらに、図8に示す符号26は、本体2内に増設メモリを取り付けるための開口部を被覆する蓋であり、符号41は、蓋26のロックツメを外すためのピンを挿入する小孔である。
【0029】
図9は、パーソナルコンピュータ1の内部の構成例を表している。内部バス51には、CPU(Central Processing Unit)52、必要に応じて挿入されるPCカード53、RAM(Random Access Memory)54、およびグラフィックチップ81が接続されている。この内部バス51は、外部バス55に接続されており、外部バス55には、ハードディスクドライブ(HDD)56、I/O(入出力)コントローラ57、キーボードコントローラ58、スティック式ポインティングデバイスコントローラ59、サウンドチップ60、LCDコントローラ83、モデム50等が接続されている。
【0030】
CPU52は、各機能を統括するコントローラであり、PCカード53は、オプションの機能を付加するとき適宜装着される。
【0031】
グラフィックチップ81には、CCDビデオカメラ23で取り込んだ画像データが、処理部82で処理された後、入力されるようになされている。グラフィックチップ81は、処理部82を介してCCDビデオカメラ23より入力されたビデオデータを、内蔵するVRAM81Aに記憶し、適宜、これを読み出して、LCDコントローラ83に出力する。LCDコントローラ83は、グラフィックチップ81より供給された画像データをLCD21に出力し、表示させる。バックライト84は、LCD21を後方から照明するようになされている。
【0032】
RAM54の中には、起動が完了した時点において、電子メールプログラム(アプリケーションプログラム)54A、オートパイロットプログラム(アプリケーションプログラム)54B、そしてOS(基本プログラム)54CがHDD56から転送され、記憶される。
【0033】
電子メールプログラム54Aは、電話回線のような通信回線等からネットワーク経由で通信文を授受するプログラムである。電子メールプログラム54Aは、特定機能としての着信メール取得機能を有している。この着信メール取得機能は、メールサーバ93に対してそのメールボックス93A内に自分(利用者)宛のメールが着信しているかどうかを確認して、自分宛のメールがあれば取得する処理を実行する。
【0034】
オートパイロットプログラム54Bは、予め設定された複数の処理(またはプログラム)等を、予め設定された順序で順次起動して、処理するプログラムである。
【0035】
OS(基本プログラムソフトウェア)54Cは、Windows95やWindouws98(商標)に代表される、コンピュータの基本的な動作を制御するものである。
【0036】
一方、外部バス55側のハードディスクドライブ(HDD)56には、図10に示すように、電子メールプログラム56A、オートパイロットプログラム56B、OS(基本プログラムソフトウェア)56C、2次元コードデータベース(以下、2Dコードデータベースと略称する)56D、ファインダアプリケーションプログラム(以下、FAプログラムと略称する)56E、N個の2次元コードアソシエートアプリケーションプログラム(以下、2Dコードプログラムと略称する)56F−1乃至56F−N(以下、個々に区別する必要がない場合、単に2Dコードプログラム56Fと記述する)、および2Dコードプログラムメニュー情報データベース(以下、メニュー情報データベースと略称する)56Gが記憶されている。
【0037】
2Dコードデータベース56Dには、予め登録されたメニュー選択カードに貼付されている2次元バーコードの識別番号(以下、2DコードIDと称する)、例えば、2Dコード101の2DコードIDが記憶されている。
【0038】
FAプログラム56Eは、例えば、グラフィックチップ81のVRAM81Aに記憶されている画像データから2次元バーコードを抽出し、その2DコードIDを取得する処理を実行したり、また、リモートポインティング処理(後述)を実行し、その処理に対応して、2Dコードプログラム56Fを起動する。このFAプログラム56Eは、2Dコードプログラム56Fを呼び出したり、各種メッセージを授受するためのAPI(Application Programming Interface)を有している。 2Dコードプログラム56F−1乃至56F−Nは、FAプログラム56Eにより起動されるアプリケーションプログラムである。これら2Dコードプログラム56Fは、FAプログラム56EのAPIを介して、FAプログラム56Eとデータの授受を行うことができる。これら2Dコードプログラム56Fの内、特に、2Dコードプログラム56F−1としては、後述するメニュー選択ボタンやポインティングカーソルを表示するためのメニュー選択プログラムが記憶されている。
【0039】
メニュー情報データベース56Gには、メニュー選択ボタンの表示上の位置(領域)情報が記憶されているとともに、それに対応して起動される2Dコードプログラム56FのプログラムIDや、その他、ワードプロセッサ等の一般的なアプリケーションプログラムを特定するためのプログラムIDが記憶されている。
【0040】
ハードディスクドライブ56内のOS56C、オートパイロットプログラム56Bおよび電子メールプログラム56Aは、起動(ブートアップ)処理の過程で、RAM54内に順次転送され、格納される。
【0041】
図9に戻り、I/Oコントローラ57は、マイクロコントローラ61を有し、このマイクロコントローラ61にはI/Oインタフェース62が設けられている。このマイクロコントローラ61はI/Oインタフェース62、CPU63、RAM64、ROM69が相互に接続されて構成されている。このRAM64は、キー入力ステイタスレジスタ65、LED(発光ダイオード)制御レジスタ66、設定時刻レジスタ67、レジスタ68を有している。設定時刻レジスタ67は、ユーザが予め設定した時刻(起動条件)になると起動シーケンス制御部76の動作を開始させる際に利用される。レジスタ68は、予め設定された操作キーの組み合わせ(起動条件)と、起動すべきアプリケーションプログラムの対応を記憶するもので、その記憶された操作キーの組み合わせがユーザにより入力されると、その記憶されたアプリケーションプログラム(例えば電子メール)が起動されることになる。
【0042】
キー入力ステイタスレジスタ65は、ワンタッチ操作用のプログラマブルパワーキー(PPK)9が押されると、操作キーフラグが格納されるようになっている。LED制御レジスタ66は、レジスタ68に記憶されたアプリケーションプログラム(電子メール)の立上げ状態を表示するメッセージランプMLの点灯を制御するものである。設定時刻レジスタ67は、所定の時刻を任意に設定することができるものである。
【0043】
なお、このマイクロコントローラ61にはバックアップ用のバッテリ74が接続されており、各レジスタ65,66,67の値は、本体2の電源がオフとされている状態においても保持されるようになっている。
【0044】
マイクロコントローラ61内のROM69の中には、ウェイクアッププログラム70、キー入力監視プログラム71、LED制御プログラム72が予め格納されている。このROM69は、例えばEEPROM(electrically erasable and programmable read only memory)で構成されている。このEEPROMはフラッシュメモリとも呼ばれている。さらにマイクロコントローラ61には、常時現在時刻をカウントするRTC(Real-Time Clock)75が接続されている。
【0045】
ROM69の中のウェイクアッププログラム70は、RTC75から供給される現在時刻データに基づいて、設定時刻レジスタ67に予め設定された時刻になったかどうかをチェックして、設定された時刻になると、所定の処理(またはプログラム)等の起動をするプログラムである。キー入力監視プログラム71は、PPK9が利用者により押されたかどうかを常時監視するプログラムである。LED制御プログラム72は、メッセージランプMLの点灯を制御するプログラムである。
【0046】
ROM69には、さらにBIOS(Basic Input/Output System)73が書き込まれている。このBIOSとは、基本入出力システムのことをいい、OSやアプリケーションソフトウェアと周辺機器(ディスプレイ、キーボード、ハードディスクドライブ等)の間でのデータの受け渡し(入出力)を制御するソフトウェアプログラムである。
【0047】
外部バス55に接続されているキーボードコントローラ58は、キーボード4からの入力をコントロールする。スティック式ポインティングデバイスコントローラ59はトラックポイント5の入力を制御する。
【0048】
サウンドチップ60は、マイクロホン24からの入力を取り込み、あるいは内蔵スピーカ8に対して音声信号を供給する。
【0049】
モデム50は、公衆電話回線90、インターネットサービスプロバイダ91を介して、インターネット等の通信ネットワーク92やメールサーバ93等に接続することができる。
【0050】
電源スイッチ40は、電源をオンまたはオフするとき操作される。半押しスイッチ85は、シャッタボタン10が半押し状態にされたときオンされ、全押しスイッチ86は、シャッタボタン10が全押し状態にされたときオンされる。反転スイッチ87は、撮像部22が180度回転されたとき(CCDビデオカメラ23がLCD21の反対側を撮像する方向に回転されたとき)、オンされるようになされている。
【0051】
次に、リモートポインティング処理を実行する場合のFAプログラム56Eと、2Dコードプログラム56F−1(メニュー選択プログラム)の連携処理手順を、図11のフローチャートを参照して説明する。
【0052】
HDD56に記憶されているFAプログラム56Eが起動されると、ステップS1において、CPU52によって実行されるFAプログラム56Eは、CCDビデオカメラ23によって撮像された画像を取得(キャプチャ)し、次のステップS2において、この取得された画像データを、処理部82で処理させ、グラフィックチップ81のVRAM81Aに描画させるとともに、LCDコントローラ83を制御し、図12に示すように、LCD21のファインダ画面201に、そのキャプチャ画像を表示させる。なお、以下において、FAプログラム56Eが、LCDコントローラ83を制御し、LCD21のファインダ画面201に画像を表示させることを、単に、FAプログラム56Eがファインダ画面201に画像を表示させると記述する。
【0053】
ステップS3において、FAプログラム56Eは、ステップS1においてCCDビデオカメラ23で撮像されて取得された対象画像の画像データから、2Dコード101を抽出し、その2DコードIDを認識する処理を実行すると共に、ファインダ画面201に表示されている対象画像に対する2Dコード101の相対的な位置情報(例えば、2Dコード101の中心点など)を認識する処理を実行する。図12の例の場合、CCDビデオカメラ23によりメニュー選択カード100の画像が取り込まれ、その2Dコード101が抽出されると共に、その2DコードIDと位置が捕捉され、その捕捉位置情報が取得される。そして、ステップS3において、FAプログラム56Eが2Dコード101のIDとその捕捉位置情報を認識した後、次のステップS4に進む。
【0054】
ステップS4においては、2Dコードデータベース56Dを検索し、ステップS3において認識した2DコードIDが、予めメニュー選択プログラム(2Dコードプログラム56F−1)に対応して設定された所定の2Dコードに相当する2DコードIDであるか否かを判定する。そして、このステップS4において、予め設定された所定の2Dコードに相当する2DコードIDであると判定された場合、次のステップS5に進む。
【0055】
ステップS5においては、メニュー選択プログラム(2Dコードプログラム56F−1)が起動中であるか否かを判定し、未だ起動していないと判定された場合は、ステップS6へ進む。
【0056】
ステップS6において、メニュー選択プログラム(2Dコードプログラム56F−1)が起動され、その後CPU52によって実行されるメニュー選択プログラムは、メニュー情報データベース56Gを検索し、検索された所定の選択ボタンを含むメニュー画像を、ステップS2で表示されたキャプチャ画像にオーバーレイ(重畳)させて表示させる。例えば、図13に示すように、ファインダ画面201上に表示される、4個のメニュー選択ボタン300−1乃至300−4のそれぞれの領域情報が、メニュー情報データベース56Gから読み出され、その読み出された領域情報に基づいて表示が行われる。
【0057】
このステップS6における処理の後、ステップS7に進み、FAプログラム56Eは、起動されたメニュー選択プログラムから、対応する2DコードIDの通知を受け取り、その後、上述したステップS3に戻る。
【0058】
一方、ステップS5において、メニュー選択プログラムが起動中であると判定された場合は、ステップS8に進む。
【0059】
ステップS8において、メニュー選択プログラム(2Dコードプログラム56F−1)は、ステップS3で認識した2Dコード101の捕捉位置情報に対応して、図13に示すような、ポインティングカーソル(以下、カーソルと略称する)301を表示させる。カーソル301は、この例の場合、2Dコード101の中心に点Aが位置し、それを中心に2つの円が描かれている。また、点Aを通るように、ファインダ画面201のX軸に平行な線とY軸に平行な線が描かれている。
【0060】
次に、ステップS9において、メニュー選択プログラム(2Dコードプログラム56F−1)は、ステップS8で表示させたカーソル301が指し示す位置、例えば、カーソル301の点Aが、メニュー選択ボタン300−1乃至300−4のいずれかの領域内に位置するか否かを判定する。ここで、例えば、図13に示すように、カーソル301の点Aが、メニュー選択ボタン300−i(図13の例では、i=1)の領域に位置していると判定した場合、ステップS10に進む。なお、以下において、図13に示したように、カーソル301の点Aが、メニュー選択ボタン300−iの領域に位置する状態を、カーソル301でメニュー選択ボタン300−iがポインティングされている記述する。
【0061】
次に、ステップS10において、メニュー選択プログラム(2Dコードプログラム56F−1)は、カーソル301でポインティングされているメニュー選択ボタン300−iの表示を、例えば、図14に示すように、ポインティングされているメニュー選択ボタン300−1のみをハイライト表示(強調表示)し、メニュー選択ボタン300−1が選択されたことを利用者に通知させる。
【0062】
次に、ステップS11において、メニュー選択プログラム(2Dコードプログラム56F−1)は、カーソル301でメニュー選択ボタン300−iがポインティングされている時間をカウントし、所定時間以上、ポインティングされていると判定した場合、ステップS12に進む。
【0063】
このように、カーソル301でポインティングされている状態が、所定時間以上経過したか否かが判定されることによって、メニュー選択カード100の提示位置が一定位置で定まらずに変化している過程で、誤って別のメニュー選択ボタン300−iがポインティングされたものと誤認識してしまい、以降の処理が誤って実行されてしまうという事態を未然に回避することができる。
【0064】
ステップS11で、所定の時間以上、カーソル301でポインティングされていると判定された場合、メニュー選択プログラム(2Dコードプログラム56F−1)は、ステップS12においてメニュー情報データベース56Gを検索し、カーソル301でポインティングされているメニュー選択ボタン300−iの領域情報に対応して記憶されているプログラムIDを読み出し、そのプログラムIDを有する2Dコードプログラム56Fや、その他、ワードプロセッサ等の一般的なアプリケーションプログラムを起動させる。その後、処理は終了される。
【0065】
ところで、前述したステップS4において、FAプログラム56Eは、2Dコードデータベース56Dを検索し、ステップS3において認識した2DコードIDが、予め設定された所定の2Dコードに相当する2DコードIDではないものと判定した場合、ステップS13に進み、そのプログラムIDを有するメニュー選択プログラム以外の2Dコードプログラム56Fや、その他、ワードプロセッサ等の一般的なアプリケーションプログラムを起動させ、その後、処理を終了させる。
【0066】
ステップS9において、カーソル301でメニュー選択ボタン300−iがポインティングされていないと判定した場合、または、ステップS11において、所定時間以上、カーソル301でメニュー選択ボタン300−iがポインティングされていないと判定した場合、ステップS3に戻り、それ以降の処理が、繰り返し実行される。
【0067】
以上のようにして、2Dコード101の表示上に位置に対応して表示されるカーソル301により、メニュー選択ボタン300をポインティングすることができ、キーボードやマウスなどを一切操作せずに、メニュー選択ボタン300に対応した処理を実行させることができる。
【0068】
なお、上述した一連の処理を実行するプログラムをコンピュータにインストールし、コンピュータによって実行可能な状態とするために用いられるプログラム格納媒体としては、例えば、フロッピーディスク、CD-ROM、DVDなどのパッケージメディアのみならず、プログラムが一時的もしくは永続的に格納される半導体メモリや磁気ディスクなどで実現してもよい。さらには、上述したプログラムをインストールする手段としては、ローカルエリアネットワークやインターネット、デジタル衛星放送などの有線および無線通信媒体、およびこれらの通信媒体を介して提供されるプログラムを転送もしくは受信するルーターやモデム等の各種通信インターフェイス等を利用することができる。
【符号の説明】
【0069】
1 パーソナルコンピュータ, 3 表示部, 21 LCD, 23 CCDビデオカメラ, 52 CPU, 56 HDD, 56E FA(ファインダアプリケーション)プログラム, 56F−1 2次元コードアソシエートアプリケーションプログラム(メニュー選択プログラム), 81 グラフィックチップ, 83 LCDコントローラ, 100 メニュー選択カード, 101 2次元コード, 201 ファインダ画面, 300−1〜300−4 メニュー選択ボタン, 301ポインティングカーソル
【特許請求の範囲】
【請求項1】
対象画像を取得する画像取得手段と、
前記画像取得手段によって取得された対象画像を表示する表示手段と、
前記画像取得手段によって取得された対象画像の中から、所定の画像パターンを認識すると共に、前記対象画像に対する、前記所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識手段と、
前記捕捉位置情報認識手段により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、前記表示手段に表示されている対象画像に重畳して前記表示手段に表示させる表示制御手段と、
前記表示制御手段によって表示させられている選択ボタンと、前記捕捉位置情報認識手段によって認識された位置情報に基づいて、前記位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動手段と
を備えることを特徴とする画像処理装置。
【請求項2】
前記捕捉位置情報認識手段は、前記画像取得手段によって取得された対象画像の中から、対象物に設けられた可視コードを認識すると共に、この可視コードの画像パターンの相対的な位置情報を認識する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記捕捉位置情報認識手段は、前記画像取得手段によって取得された対象画像の中から、対象物に設けられた2次元コードを認識すると共に、この2次元コードの画像パターンの相対的な位置情報を認識する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項4】
前記表示制御手段は、前記対象画像に前記選択ボタンを重畳すると共に、前記対象画像の前記捕捉位置情報認識手段によって認識された位置情報に対応した位置にポインティングカーソルを重畳して表示させる
ことを特徴とする請求項1に記載の画像処理装置。
【請求項5】
前記起動手段は、前記表示制御手段によって表示させられている選択ボタンの領域内に、所定時間以上、前記ポインティングカーソルが表示されていた場合、その選択ボタンに対応する処理を起動する
ことを特徴とする請求項4に記載の画像処理装置。
【請求項6】
対象画像を取得する画像取得処理ステップと、
前記画像取得処理ステップによって取得された対象画像を表示させる対象画像表示制御処理ステップと、
前記画像取得処理ステップによって取得された対象画像の中から、所定の画像パターンを認識すると共に、前記対象画像に対する、前記所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識処理ステップと、
前記捕捉位置情報認識処理ステップの処理により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、前記対象画像に重畳して表示させる選択ボタン表示制御処理ステップと、
前記選択ボタン表示制御処理ステップによって表示させられている選択ボタンと、前記捕捉位置情報認識処理ステップによって認識された位置情報に基づいて、前記位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動処理ステップと
を含むことを特徴とする画像処理方法。
【請求項7】
対象画像を取得する画像取得処理ステップと、
前記画像取得処理ステップによって取得された対象画像の表示を制御する対象画像表示制御処理ステップと、
前記画像取得処理ステップによって取得された対象画像の中から、所定の画像パターンを認識すると共に、前記対象画像に対する、前記所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識処理ステップと、
前記捕捉位置情報認識処理ステップの処理により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、前記対象画像に重畳して表示させる選択ボタン表示制御処理ステップと、
前記選択ボタン表示制御処理ステップによって表示させられている選択ボタンと、前記捕捉位置情報認識処理ステップによって認識された位置情報に基づいて、前記位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動処理ステップと
を含むことを特徴とする画像処理をコンピュータに実行させる画像処理プログラムが格納されている画像処理プログラム格納媒体。
【請求項1】
対象画像を取得する画像取得手段と、
前記画像取得手段によって取得された対象画像を表示する表示手段と、
前記画像取得手段によって取得された対象画像の中から、所定の画像パターンを認識すると共に、前記対象画像に対する、前記所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識手段と、
前記捕捉位置情報認識手段により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、前記表示手段に表示されている対象画像に重畳して前記表示手段に表示させる表示制御手段と、
前記表示制御手段によって表示させられている選択ボタンと、前記捕捉位置情報認識手段によって認識された位置情報に基づいて、前記位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動手段と
を備えることを特徴とする画像処理装置。
【請求項2】
前記捕捉位置情報認識手段は、前記画像取得手段によって取得された対象画像の中から、対象物に設けられた可視コードを認識すると共に、この可視コードの画像パターンの相対的な位置情報を認識する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記捕捉位置情報認識手段は、前記画像取得手段によって取得された対象画像の中から、対象物に設けられた2次元コードを認識すると共に、この2次元コードの画像パターンの相対的な位置情報を認識する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項4】
前記表示制御手段は、前記対象画像に前記選択ボタンを重畳すると共に、前記対象画像の前記捕捉位置情報認識手段によって認識された位置情報に対応した位置にポインティングカーソルを重畳して表示させる
ことを特徴とする請求項1に記載の画像処理装置。
【請求項5】
前記起動手段は、前記表示制御手段によって表示させられている選択ボタンの領域内に、所定時間以上、前記ポインティングカーソルが表示されていた場合、その選択ボタンに対応する処理を起動する
ことを特徴とする請求項4に記載の画像処理装置。
【請求項6】
対象画像を取得する画像取得処理ステップと、
前記画像取得処理ステップによって取得された対象画像を表示させる対象画像表示制御処理ステップと、
前記画像取得処理ステップによって取得された対象画像の中から、所定の画像パターンを認識すると共に、前記対象画像に対する、前記所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識処理ステップと、
前記捕捉位置情報認識処理ステップの処理により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、前記対象画像に重畳して表示させる選択ボタン表示制御処理ステップと、
前記選択ボタン表示制御処理ステップによって表示させられている選択ボタンと、前記捕捉位置情報認識処理ステップによって認識された位置情報に基づいて、前記位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動処理ステップと
を含むことを特徴とする画像処理方法。
【請求項7】
対象画像を取得する画像取得処理ステップと、
前記画像取得処理ステップによって取得された対象画像の表示を制御する対象画像表示制御処理ステップと、
前記画像取得処理ステップによって取得された対象画像の中から、所定の画像パターンを認識すると共に、前記対象画像に対する、前記所定の画像パターンの相対的な位置情報を認識する捕捉位置情報認識処理ステップと、
前記捕捉位置情報認識処理ステップの処理により認識された所定の画像パターンに応じた処理を選択するための選択ボタンを、前記対象画像に重畳して表示させる選択ボタン表示制御処理ステップと、
前記選択ボタン表示制御処理ステップによって表示させられている選択ボタンと、前記捕捉位置情報認識処理ステップによって認識された位置情報に基づいて、前記位置情報に対応する位置に表示されている選択ボタンに対応する処理を起動する起動処理ステップと
を含むことを特徴とする画像処理をコンピュータに実行させる画像処理プログラムが格納されている画像処理プログラム格納媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2009−217834(P2009−217834A)
【公開日】平成21年9月24日(2009.9.24)
【国際特許分類】
【出願番号】特願2009−114415(P2009−114415)
【出願日】平成21年5月11日(2009.5.11)
【分割の表示】特願平11−245195の分割
【原出願日】平成11年8月31日(1999.8.31)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成21年9月24日(2009.9.24)
【国際特許分類】
【出願日】平成21年5月11日(2009.5.11)
【分割の表示】特願平11−245195の分割
【原出願日】平成11年8月31日(1999.8.31)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]