本発明の実施の一形態について図1〜図13に基づいて説明すれば、以下のとおりである。
なお、本実施形態に係るデータ表示/センサ装置(画像処理装置)100は、画像を表示するとともに、近傍の像を検知することができる画面としてのセンサ内蔵液晶パネル301と、センサ内蔵液晶パネル301の背面に配設された、輝度の制御が可能なバックライト307とを含む、表示/光センサ部300を2つ備えているものとして説明する。
また、本実施形態では、データ表示/センサ装置100(画像処理装置)は、表示/光センサ部300(面状部材)を2つ備えるものとして説明するが、1つの表示/光センサ部300のみを備える構成であっても本発明を適用可能である。
なお、本明細書において、「表示/光センサ部300に(画像等を)表示する」と表記する場合は、「表示/光センサ部300の備えるセンサ内蔵液晶パネル301(面状部材)に(画像等を)表示する」ことを意味するものとする。
以下で、まず、データ表示/センサ装置100が備えるセンサ内蔵液晶パネル301の概要、および、データ表示/センサ装置100の要部構成について説明する。
(センサ内蔵液晶パネルの概要)
上記データ表示/センサ装置100が備えるセンサ内蔵液晶パネル301は、データの表示に加え、対象物の画像検出が可能な液晶パネルである。ここで、対象物の画像検出とは、例えば、ユーザが指やペンなどでポインティング(タッチ)した位置の検出や、印刷物等の画像の読み取り(スキャン)である。なお、表示に用いるデバイスは、液晶パネルに限定されるものではなく、有機EL(Electro Luminescence)パネルなどであってもよい。
図2を参照しながら、センサ内蔵液晶パネル301の構造について説明する。図2は、センサ内蔵液晶パネル301の断面を模式的に示す図である。なお、ここで説明するセンサ内蔵液晶パネル301は一例であり、表示面と読取面とが共用されているものであれば、任意の構造のものが利用できる。
図示のとおり、センサ内蔵液晶パネル301は、背面側に配置されるアクティブマトリクス基板51Aと、表面側に配置される対向基板51Bとを備え、これら基板の間に液晶層52を挟持した構造を有している。アクティブマトリクス基板51Aには、画素電極56、データ信号線57、光センサ回路32(図示せず)、配向膜58、偏光板59などが設けられる。対向基板51Bには、カラーフィルタ53r(赤)、53g(緑)、53b(青)、遮光膜54、対向電極55、配向膜58、偏光板59などが設けられる。また、センサ内蔵液晶パネル301の背面には、バックライト307が設けられている。
なお、光センサ回路32に含まれるフォトダイオード6は、青のカラーフィルタ53bを設けた画素電極56の近傍に設けられているが、この構成に限定されるものではない。赤のカラーフィルタ53rを設けた画素電極56の近傍に設けてもよいし、緑のカラーフィルタ53gを設けた画素電極56の近傍に設けてもよい。
次に、図3(a)および図3(b)を参照しながら、ユーザが、指やペンで、センサ内蔵液晶パネル301上をタッチした位置を検出する2種類の方法について説明する。
図3(a)は、反射像を検知することにより、ユーザがタッチした位置を検出する様子を示す模式図である。バックライト307から光63が出射されると、フォトダイオード6を含む光センサ回路32は、指などの対象物64により反射された光63を検知する。これにより、対象物64の反射像を検知することができる。このように、センサ内蔵液晶パネル301は、反射像を検知することにより、タッチした位置を検出することができる。
また、図3(b)は、影像を検知することにより、ユーザがタッチした位置を検出する様子を示す模式図である。図3(b)に示すように、フォトダイオード6を含む光センサ回路32は、対向基板51Bなどを透過した外光61を検知する。しかしながら、ペンなどの対象物62がある場合は、外光61の入射が妨げられるので、光センサ回路32が検知する光量が減る。これにより、対象物62の影像を検知することができる。このように、センサ内蔵液晶パネル301は、影像を検知することにより、タッチした位置を検出することもできる。
上述のように、フォトダイオード6は、バックライト307より出射された光の反射光(影像)を検知してもよいし、外光による影像を検知してもよい。また、上記2種類の検知方法を併用して、影像と反射像とを両方を同時に検知するようにしてもよい。
(データ表示/センサ装置の要部構成)
次に、図4を参照しながら、上記データ表示/センサ装置100の要部構成について説明する。図4は、データ表示/センサ装置100の要部構成を示すブロック図である。図示のように、データ表示/センサ装置100は、1または複数の表示/光センサ部300、回路制御部600、データ処理部700、主制御部800、記憶部901、一次記憶部902、操作部903、外部通信部907、音声出力部908、および音声入力部909を備えている。ここでは、データ表示/センサ装置100は、表示/光センサ部300を2つ(第1表示/光センサ部300Aおよび第2表示/光センサ部300B)備えているものとして説明する。なお、第1表示/光センサ部300Aおよび第2表示/光センサ部300Bを区別しないときは、表示/光センサ部300と表記する。
表示/光センサ部300は、いわゆる光センサ内蔵液晶表示装置である。表示/光センサ部300は、センサ内蔵液晶パネル301、バックライト307、それらを駆動するための周辺回路309を含んで構成される。
センサ内蔵液晶パネル301は、マトリクス状に配置された複数の画素回路31および光センサ回路32を含んで構成される。センサ内蔵液晶パネル301の詳細な構成については後述する。
周辺回路309は、液晶パネル駆動回路304、光センサ駆動回路305、信号変換回路306、バックライト駆動回路308を含む。
液晶パネル駆動回路304は、回路制御部600の表示制御部601からのタイミング制御信号(TC1)およびデータ信号(D)に従って、制御信号(G)およびデータ信号(S)を出力し、画素回路31を駆動する回路である。画素回路31の駆動方法の詳細については後述する。
光センサ駆動回路305は、回路制御部600のセンサ制御部602からのタイミング制御信号(TC2)に従って、信号線(R)に電圧を印加し、光センサ回路32を駆動する回路である。光センサ回路32の駆動方法の詳細については後述する。
信号変換回路306は、光センサ回路32から出力されるセンサ出力信号(SS)をデジタル信号(DS)に変換し、該変換後の信号をセンサ制御部602に送信する回路である。
バックライト307は、複数の白色LED(Light Emitting Diode)を含んでおり、センサ内蔵液晶パネル301の背面に配置される。そして、バックライト駆動回路308から電源電圧が印加されると、バックライト307は点灯し、センサ内蔵液晶パネル301に光を照射する。なお、バックライト307は、白色LEDに限らず、他の色のLEDを含んでいてもよい。また、バックライト307は、LEDに代えて、例えば、冷陰極管(CCFL:Cold Cathode Fluorescent Lamp)を含むものであってもよい。
バックライト駆動回路308は、回路制御部600のバックライト制御部603からの制御信号(BK)がハイレベルであるときは、バックライト307に電源電圧を印加し、逆に、バックライト制御部603からの制御信号がローレベルであるときは、バックライト307に電源電圧を印加しない。
次に、回路制御部600について説明する。回路制御部600は、表示/光センサ部300の周辺回路309を制御するデバイスドライバとしての機能を備えるものである。回路制御部600は、表示制御部601、センサ制御部602、バックライト制御部603、および表示データ記憶部604を備えている。
表示制御部601は、データ処理部700の表示データ処理部701から表示データを受信するとともに、表示データ処理部701からの指示に従って、表示/光センサ部300の液晶パネル駆動回路304に、タイミング制御信号(TC1)およびデータ信号(D)を送信し、上記受信した表示データをセンサ内蔵液晶パネル301に表示させる。
なお、表示制御部601は、表示データ処理部701から受信した表示データを、表示データ記憶部604に一次記憶させる。そして、当該一次記憶させた表示データに基づいて、データ信号(D)を生成する。表示データ記憶部604は、例えば、VRAM(video random access memory)などである。
センサ制御部602は、データ処理部700のセンサデータ処理部703からの指示に従って、表示/光センサ部300の光センサ駆動回路305に、タイミング制御信号(TC2)を送信し、センサ内蔵液晶パネル301にてスキャンを実行させる。
また、センサ制御部602は、信号変換回路306からデジタル信号(DS)を受信する。そして、センサ内蔵液晶パネル301に含まれる全ての光センサ回路32から出力されたセンサ出力信号(SS)に対応するデジタル信号(DS)に基づいて、画像データを生成する。つまり、センサ内蔵液晶パネル301の読み取り領域全体で読み取った画像データを生成する。そして、該生成した画像データをセンサデータ処理部703に送信する。
バックライト制御部603は、表示データ処理部701およびセンサデータ処理部703からの指示に従って、表示/光センサ部300のバックライト駆動回路308に制御信号(BK)を送信し、バックライト307を駆動させる。
なお、データ表示/センサ装置100が、複数の表示/光センサ部300を備える場合、表示制御部601は、データ処理部700から、どの表示/光センサ部300にて表示データを表示するかの指示を受けたとき、当該指示に応じた表示/光センサ部300の液晶パネル駆動回路304を制御する。また、センサ制御部602は、データ処理部700から、どの表示/光センサ部300にて対象物のスキャンを行なうかの指示を受けたとき、当該指示に応じた表示/光センサ部300の光センサ駆動回路305を制御するとともに、当該指示に応じた表示/光センサ部300の信号変換回路306からデジタル信号(DS)を受信する。
次に、データ処理部700について説明する。データ処理部700は、主制御部800から受信する「コマンド」に基づいて、回路制御部600に指示を与えるミドルウェアとしての機能を備えるものである。なお、コマンドの詳細については後述する。
データ処理部700は、表示データ処理部701およびセンサデータ処理部703を備えている。そして、データ処理部700が、主制御部800からコマンドを受信すると、該受信したコマンドに含まれる各フィールド(後述する)の値に応じて、表示データ処理部701およびセンサデータ処理部703の少なくとも一方が動作する。
表示データ処理部701は、主制御部800から表示データを受信するとともに、データ処理部700が受信したコマンドに従って、表示制御部601およびバックライト制御部603に指示を与え、上記受信した表示データをセンサ内蔵液晶パネル301に表示させる。なお、コマンドに応じた、表示データ処理部701の動作については、後述する。
センサデータ処理部703は、データ処理部700が受信したコマンドに従って、センサ制御部602およびバックライト制御部603に指示を与える。
また、センサデータ処理部703は、センサ制御部602から画像データを受信し、当該画像データをそのまま画像データバッファ704に格納する。そして、センサデータ処理部703は、データ処理部700が受信したコマンドに従って、画像データバッファ704に記憶されている画像データに基づいて、「全体画像データ」、「部分画像データ(部分画像の座標データを含む)」、および「座標データ」の少なくともいずれか1つを、主制御部800に送信する。なお、全体画像データ、部分画像データ、および座標データについては、後述する。また、コマンドに応じた、センサデータ処理部703の動作については、後述する。
次に、主制御部800は、アプリケーションプログラムを実行するものである。主制御部800は、記憶部901に格納されているプログラムを、例えばRAM(Random Access Memory)等で構成される一次記憶部902に読み出して実行する。
主制御部800で実行されるアプリケーションプログラムは、センサ内蔵液晶パネル301に表示データを表示させたり、センサ内蔵液晶パネル301にて対象物のスキャンを行わせるために、データ処理部700に対して、コマンドおよび表示データを送信する。また、コマンドに「データ種別」を指定した場合は、当該コマンドの応答として、全体画像データ、部分画像データ、および座標データの少なくともいずれか1つを、データ処理部700から受信する。
なお、回路制御部600、データ処理部700、および主制御部800は、それぞれ、CPU(Central Processing Unit)およびメモリ等で構成することができる。また、データ処理部700は、ASIC(application specific integrate circuit)などの回路で構成されていてもよい。
次に、記憶部901は、図示のように、主制御部800が実行するプログラムおよびデータを格納するものである。なお、主制御部800が実行するプログラムは、アプリケーション固有のプログラムと、各アプリケーションが共用可能な汎用プログラムとに分離されていてもよい。
次に、操作部903は、データ表示/センサ装置100のユーザの入力操作を受けつけるものである。操作部903は、例えば、スイッチ、リモコン、マウス、キーボードなどの入力デバイスで構成される。そして、操作部903は、データ表示/センサ装置100のユーザの入力操作に応じた制御信号を生成し、該生成した制御信号を主制御部800へ送信する。
なお、上記スイッチの例としては、筐体のヒンジ部分に設けられ、筐体の開閉状態を検出するヒンジ部スイッチ904、電源のオンとオフとを切り替える電源スイッチ905、予め所定の機能が割り当てられているユーザスイッチ906などのハードウェアスイッチを想定している。
その他、データ表示/センサ装置100は、無線/有線通信によって外部装置と通信を行なうための外部通信部907、音声を出力するためのスピーカ等の音声出力部908、音声信号を入力するためのマイク等の音声入力部909などを適宜備えていてもよい。
(コマンドの詳細)
次に、図5および図6を参照しながら、主制御部800からデータ処理部700に送信されるコマンドの詳細について説明する。図5は、コマンドのフレーム構造の一例を模式的に示す図である。また、図6は、コマンドに含まれる各フィールドに指定可能な値の一例、および、その概要を説明する図である。
図5に示すように、コマンドは、「ヘッダ」、「データ取得タイミング」、「データ種別」、「スキャン方式」、「スキャン画像階調」、「スキャン解像度」、「スキャンパネル」、「表示パネル」、および「予備」の各フィールドを含んでいる。そして、各フィールドには、例えば、図6に示す値が指定可能である。
「ヘッダ」フィールドは、フレームの開始を示すフィールドである。「ヘッダ」フィールドであることが識別可能であれば、「ヘッダ」フィールドの値は、どのような値であってもよい。
次に、「データ取得タイミング」フィールドは、データを主制御部800へ送信すべきタイミングを指定するフィールドである。「データ取得タイミング」フィールドには、例えば、“00”(センス)、“01”(イベント)、および“10”(オール)という値が指定可能である。
ここで、“センス”は、最新のデータを直ちに送信することを指定するものである。よって、センサデータ処理部703は、「データ取得タイミング」フィールドの値が“センス”であるコマンドを受信すると、「データ種別」フィールドにて指定されている最新のデータを、直ちに、主制御部800に送信する。
また、“イベント”は、センサ制御部602から受信する画像データに変化が生じたタイミングで送信することを指定するものである。よって、センサデータ処理部703は、「データ取得タイミング」フィールドの値が“イベント”であるコマンドを受信すると、「データ種別」フィールドにて指定されているデータを、センサ制御部602から受信する画像データに、所定の閾値より大きい変化が生じたタイミングで、主制御部800に送信する。
また、“オール”は、所定周期でデータを送信することを指定するものである。よって、センサデータ処理部703は、「データ取得タイミング」フィールドの値が“オール”であるコマンドを受信すると、「データ種別」フィールドにて指定されているデータを、所定周期で、主制御部800に送信する。なお、上記所定周期は、光センサ回路32にてスキャンを行なう周期と一致する。
次に、「データ種別」フィールドは、センサデータ処理部703から取得するデータの種別を指定するフィールドである。なお、「データ種別」フィールドには、例えば、“001”(座標)、“010”(部分画像)、および“100”(全体画像)という値が指定可能である。さらに、これらの値を加算することによって、“座標”と、“部分画像”/“全体画像”とを、同時に指定可能である。例えば、“座標”と“部分画像”とを同時に指定する場合、“011”と指定することができる。
センサデータ処理部703は、「データ種別」フィールドの値が“全体画像”であるコマンドを受信すると、画像データバッファ704に記憶している画像データそのものを主制御部800に送信する。画像データバッファ704に記憶している画像データそのものを、「全体画像データ」と称する。
また、センサデータ処理部703は、「データ種別」フィールドの値が“部分画像”であるコマンドを受信すると、センサ制御部602から受信する画像データから、所定の閾値より大きい変化が生じた部分を含む領域を抽出し、該抽出した領域の画像データを主制御部800に送信する。ここで、当該画像データを、「部分画像データ」と称する。なお、上記部分画像データが複数抽出された場合、センサデータ処理部703は、該抽出されたそれぞれの部分画像データを主制御部800に送信する。
さらに、センサデータ処理部703は、「データ種別」フィールドの値が“部分画像”であるコマンドを受信したとき、部分画像データにおける代表座標を検出し、当該代表座標の部分画像データにおける位置を示す座標データを主制御部800に送信する。なお、上記代表座標とは、例えば、上記部分画像データの中心の座標、上記部分画像データの重心の座標などが挙げられる。
次に、センサデータ処理部703は、「データ種別」フィールドの値が“座標”であるコマンドを受信すると、上記代表座標の全体画像データにおける位置を示す座標データを主制御部800に送信する。なお、上記部分画像データが複数抽出された場合、センサデータ処理部703は、該抽出された、それぞれの部分画像データの、全体画像データにおける代表座標を検出し、当該代表座標を示す座標データのそれぞれを主制御部800に送信する(多点検出)。
なお、全体画像データ、部分画像データ、および座標データの具体例については、模式図を参照しながら後述する。
次に、「スキャン方式」フィールドは、スキャン実行時に、バックライト307を点灯するか否かを指定するフィールドである。「スキャン方式」フィールドには、例えば、“00”(反射)、“01”(透過)、および“10”(反射/透過)という値が指定可能である。
“反射”は、バックライト307を点灯した状態でスキャンを行なうことを指定するものである。よって、センサデータ処理部703は、「スキャン方式」フィールドの値が“反射”であるコマンドを受信すると、光センサ駆動回路305とバックライト駆動回路308とが同期して動作するように、センサ制御部602とバックライト制御部603とに指示を与える。
また、“透過”は、バックライト307を消灯した状態でスキャンを行なうことを指定するものである。よって、センサデータ処理部703は、「スキャン方式」フィールドの値が“透過”であるコマンドを受信すると、光センサ駆動回路305を動作させ、バックライト駆動回路308と動作させないようにセンサ制御部602とバックライト制御部603とに指示を与える。なお、“反射/透過”は、“反射”と“透過”とを併用してスキャンを行なうことを指定するものである。
次に、「スキャン画像階調」フィールドは、部分画像データおよび全体画像データの階調を指定するフィールドである。「スキャン画像階調」フィールドには、例えば、“00”(2値)、および“01”(多値)という値が指定可能である。
ここで、センサデータ処理部703は、「スキャン画像階調」フィールドの値が“2値”であるコマンドを受信すると、部分画像データおよび全体画像データをモノクロデータとして、主制御部800に送信する。
また、センサデータ処理部703は、「スキャン画像階調」フィールドの値が“多値”であるコマンドを受信すると、部分画像データおよび全体画像データを多階調データとして、主制御部800に送信する。
次に、「スキャン解像度」フィールドは、部分画像データおよび全体画像データの解像度を指定するフィールドである。「スキャン解像度」フィールドには、例えば、“0”(高)および“1”(低)という値が指定可能である。
ここで、“高”は、高解像度を指定するものである。よって、センサデータ処理部703は、「スキャン解像度」フィールドの値が“高”であるコマンドを受信すると、部分画像データおよび全体画像データを高解像度で主制御部800に送信する。例えば、画像認識などの画像処理を行なう対象の画像データ(指紋などの画像データ)には、“高”を指定することが望ましい。
また、“低”は、低解像度を指定するものである。よって、センサデータ処理部703は、「スキャン解像度」フィールドの値が“低”であるコマンドを受信すると、部分画像データおよび全体画像データを低解像度で主制御部800に送信する。例えば、タッチした位置等が分かる程度でよい画像データ(タッチした指や手の画像データなど)には、“低”を指定することが望ましい。
次に、「スキャンパネル」フィールドは、どの表示/光センサ部300にて対象物のスキャンを行なうかを指定するフィールドである。「スキャンパネル」フィールドには、例えば、“001”(第1表示/光センサ部300A)、“010”(第2表示/光センサ部300B)という値が指定可能である。なお、これらの値を加算することによって、複数の表示/光センサ部300を同時に指定可能である。例えば、“第1表示/光センサ部300A”と“第2表示/光センサ部300B”とを同時に指定する場合、“011”と指定することができる。
ここで、センサデータ処理部703は、「スキャンパネル」フィールドの値が“第1表示/光センサ部300A”であるコマンドを受信すると、第1表示/光センサ部300Aの光センサ駆動回路305およびバックライト駆動回路308を制御するように、センサ制御部602およびバックライト制御部603に指示を与える。
次に、「表示パネル」フィールドは、どの表示/光センサ部300にて表示データを表示させるかを指定するフィールドである。「表示パネル」フィールドには、例えば、“001”(第1表示/光センサ部300A)、“010”(第2表示/光センサ部300B)という値が指定可能である。なお、これらの値を加算することによって、複数の表示/光センサ部300を同時に指定可能である。例えば、“第1表示/光センサ部300A”と“第2表示/光センサ部300B”とを同時に指定する場合、“011”と指定することができる。
ここで、表示データ処理部701は、例えば、「表示パネル」フィールドの値が“第1表示/光センサ部300A”であるコマンドを受信すると、第1表示/光センサ部300Aに表示データを表示させるために、第1表示/光センサ部300Aの液晶パネル駆動回路304およびバックライト駆動回路308を制御するように、表示制御部601およびバックライト制御部603に指示を与える。
次に、「予備」フィールドは、上述したフィールドにて指定可能な情報以外の情報をさらに指定する必要がある場合に、適宜指定されるフィールドである。
なお、主制御部800にて実行されるアプリケーションは、コマンドを送信するにあたり、上述したフィールドを全て使用する必要はなく、使用しないフィールドには無効値(NULL値など)を設定しておけばよい。
また、ユーザが指やペンなどでタッチした位置の座標データを取得したいときは、「データ種別」フィールドに“座標”を指定したコマンドをデータ処理部700に送信することとなるが、指やペンなどは動きがあるため、さらに、当該コマンドの「データ取得タイミング」フィールドに“オール”を指定し、座標データを取得するようにすることが望ましい。また、タッチした位置の座標データが取得できればよいため、スキャンの精度は高くなくてもよい。したがって、上記コマンドの「スキャン解像度」フィールドの値は“低”を指定しておけばよい。
また、コマンドの「データ種別」フィールドに“座標”を指定した場合において、例えば、ユーザが、複数の指やペンなどでセンサ内蔵液晶パネル301を同時にタッチした場合は、該タッチした位置の座標データのそれぞれを取得することができる(多点検出)。
また、原稿などの対象物の画像データを取得する場合、「データ種別」フィールドに“全体画像”を指定したコマンドをデータ処理部700に送信することとなるが、原稿などの対象物は、通常、静止させた状態でスキャンを実行することが一般的であるため、周期的にスキャンを実行する必要はない。従って、この場合は、「データ取得タイミング」フィールドに“センス”または“イベント”を指定することが望ましい。なお、原稿などの対象物をスキャンするときは、ユーザが文字を読みやすいように、スキャン精度は高い方が望ましい。したがって、「スキャン解像度」フィールドには“高”を指定することが望ましい。
(全体画像データ/部分画像データ/座標データ)
次に、図7を参照しながら、全体画像データ、部分画像データ、および座標データについて、例を挙げて説明する。図7(a)に示す画像データは、対象物がセンサ内蔵液晶パネル301上に置かれていないときに、センサ内蔵液晶パネル301全体をスキャンした結果として得られる画像データである。また、図7(b)に示す画像データは、ユーザが指でセンサ内蔵液晶パネル301をタッチしているときに、センサ内蔵液晶パネル301全体をスキャンした結果として得られる画像データである。
ユーザが指でセンサ内蔵液晶パネル301をタッチしたとき、当該タッチした近傍の光センサ回路32が受光する光量が変化するため、当該光センサ回路32が出力する電圧に変化が生じ、その結果として、センサ制御部602が生成する画像データのうち、ユーザがタッチした部分の画素値の明度に変化が生じることとなる。
図7(b)に示す画像データでは、図7(a)に示す画像データと比べると、ユーザの指に該当する部分の画素値の明度が高くなっている。そして、図7(b)に示す画像データにおいて、明度が所定の閾値より大きく変化している画素値を全て含む最小の矩形領域(領域PP)が、“部分画像データ”である。
なお、領域APで示される画像データが、“全体画像データ”である。
また、部分画像データ(領域PP)の代表座標Zの、全体画像データ(領域AP)における座標データは(Xa,Ya)であり、部分画像データ(領域PP)における座標データは(Xp,Yp)である。
(センサ内蔵液晶パネルの構成)
次に、図8を参照しながら、センサ内蔵液晶パネル301の構成、および、センサ内蔵液晶パネル301の周辺回路309の構成について説明する。図8は、表示/光センサ部300の要部、特に、センサ内蔵液晶パネル301の構成および周辺回路309の構成を示すブロック図である。
センサ内蔵液晶パネル301は、光透過率(輝度)を設定するための画素回路31、および、自身が受光した光の強度に応じた電圧を出力する光センサ回路32を備えている。なお、画素回路31は、赤色、緑色、青色のカラーフィルタのそれぞれに対応するR画素回路31r、G画素回路31g、B画素回路31bの総称として用いる。
画素回路31は、センサ内蔵液晶パネル301上の列方向(縦方向)にm個、行方向(横方向)に3n個配置される。そして、R画素回路31r、G画素回路31g、およびB画素回路31bの組が、行方向(横方向)に連続して配置される。この組が1つの画素を形成する。
画素回路31の光透過率を設定するには、まず、画素回路31に含まれるTFT(Thin Film Transistor)33のゲート端子に接続される走査信号線Giにハイレベル電圧(TFT33をオン状態にする電圧)を印加する。その後、R画素回路31rのTFT33のソース端子に接続されているデータ信号線SRjに、所定の電圧を印加する。同様に、G画素回路31gおよびB画素回路31bについても、光透過率を設定する。そして、これらの光透過率を設定することにより、センサ内蔵液晶パネル301上に画像が表示される。
次に、光センサ回路32は、一画素毎に配置される。なお、R画素回路31r、G画素回路31g、およびB画素回路31bのそれぞれの近傍に1つずつ配置されてもよい。
光センサ回路32にて光の強度に応じた電圧を出力させるためには、まず、コンデンサ35の一方の電極に接続されているセンサ読み出し線RWiと、フォトダイオード6のアノード端子に接続されているセンサリセット線RSiとに所定の電圧を印加する。この状態において、フォトダイオード6に光が入射されると、入射した光量に応じた電流がフォトダイオード6に流れる。そして、当該電流に応じて、コンデンサ35の他方の電極とフォトダイオード6のカソード端子との接続点(以下、接続ノードV)の電圧が低下する。そして、センサプリアンプ37のドレイン端子に接続される電圧印加線SDjに電源電圧VDDを印加すると、接続ノードVの電圧は増幅され、センサプリアンプ37のソース端子からセンシングデータ出力線SPjに出力される。そして、当該出力された電圧に基づいて、光センサ回路32が受光した光量を算出することができる。
次に、センサ内蔵液晶パネル301の周辺回路である、液晶パネル駆動回路304、光センサ駆動回路305、およびセンサ出力アンプ44について説明する。
液晶パネル駆動回路304は、画素回路31を駆動するための回路であり、走査信号線駆動回路3041およびデータ信号線駆動回路3042を含んでいる。
走査信号線駆動回路3041は、表示制御部601から受信したタイミング制御信号TC1に基づいて、1ライン時間毎に、走査信号線G1〜Gmの中から1本の走査信号線を順次選択し、該選択した走査信号線にハイレベル電圧を印加するとともに、その他の走査信号線にローレベル電圧を印加する。
データ信号線駆動回路3042は、表示制御部601から受信した表示データD(DR、DG、およびDB)に基づいて、1ライン時間毎に、1行分の表示データに対応する所定の電圧を、データ信号線SR1〜SRn、SG1〜SGn、SB1〜SBnに印加する(線順次方式)。なお、データ信号線駆動回路3042は、点順次方式で駆動するものであってもよい。
光センサ駆動回路305は、光センサ回路32を駆動するための回路である。光センサ駆動回路305は、センサ制御部602から受信したタイミング制御信号TC2に基づいて、センサ読み出し信号線RW1〜RWmの中から、1ライン時間毎に1本ずつ選択したセンサ読み出し信号線に所定の読み出し用電圧を印加するとともに、その他のセンサ読み出し信号線には、所定の読み出し用電圧以外の電圧を印加する。また、同様に、タイミング制御信号TC2に基づいて、センサリセット信号線RS1〜RSmの中から、1ライン時間毎に1本ずつ選択したセンサリセット信号線に所定のリセット用電圧を印加するとともに、その他のセンサリセット信号線には、所定のリセット用電圧以外の電圧を印加する。
センシングデータ出力信号線SP1〜SPnはp個(pは1以上n以下の整数)のグループにまとめられ、各グループに属するセンシングデータ出力信号線は、時分割で順次オン状態になるスイッチ47を介して、センサ出力アンプ44に接続される。センサ出力アンプ44は、スイッチ47により接続されたセンシングデータ出力信号線のグループからの電圧を増幅し、センサ出力信号SS(SS1〜SSp)として、信号変換回路306へ出力する。
(データ表示/センサ装置の筐体)
次に、例えば図10を参照しながら、本実施形態に係るデータ表示/センサ装置100の筐体の外観について説明する。
本実施形態に係るデータ表示/センサ装置100は、例えば、2つの表示/光センサ部300(第1表示/光センサ部300Aおよび第2表示/光センサ部300B)を備えている。データ表示/センサ装置100の筐体としては、例えば図10に示すように、当該筐体のヒンジ部分を軸として、2つの表示/光センサ部300がそれぞれ上下方向に開閉する形状のものを想定しているが、これに限定されるものではなく、どのような形状の筐体であってもよい。例えば、データ表示/センサ装置100としては、2つの表示/光センサ部300が観音開き可能な形状、スライド可能な形状のものであってもよい。
また、データ表示/センサ装置100は、例えば図10に示すように、筐体を開いたときに、第1表示/光センサ部300Aおよび第2表示/光センサ部300Bの、ヒンジ部から最も離れた端部(辺)に、音声出力部908および音声入力部909をそれぞれ1つずつ設けた構成となっている。さらに、音声出力部908および音声入力部909はそれぞれ、筐体を開いたときに、第1表示/光センサ部300Aおよび第2表示/光センサ部300Bの、当該筐体の中心に対して対称となる位置に設けられている。
これにより、データ表示/センサ装置100が外部装置との通話を行うことが可能な場合(例えば携帯電話機の場合)、ユーザは、従来のように音声出力部908および音声入力部909のどちらであるかを確認することなく、データ表示/センサ装置100を利用することができる。
本実施形態に係るデータ表示/センサ装置100は、後述のように、第1表示/光センサ部300Aおよび第2表示/光センサ部300Bのどちらにも操作入力画像(テンキー、キーボードなどの画像)を表示することができる。
つまり、データ表示/センサ装置100が従来の携帯電話機のように、テンキーが固定された領域に設けられた構成の場合、ユーザは、音声出力部908か音声入力部909かを確認してから通話を行う必要がある。従って、操作入力画像の表示位置が固定的でないデータ表示/センサ装置100の場合には、特に、ユーザの利便性を向上させることができる。
(データ表示/センサ装置のより詳細な構成)
次に、図1を参照しながら、データ表示/センサ装置100のより詳細な構成について説明する。なお、ここでは、説明を分かりやすくするために、主制御部800と表示/光センサ部300との間に位置するデータ処理部700および回路制御部600の動作については説明を省略する。ただし、正確には、操作入力画像を表示する処理、画像の表示方向を切り替える処理、編集画像を表示する処理を行うにあたり、主制御部800の各部が、データ処理部700にコマンドを送信し、データ処理部700がコマンドに基づいて回路制御部600を制御し、回路制御部600が表示/光センサ部300に対して信号を送信する。また、主制御部800は、データ処理部700に対して送信したコマンドに対する応答として、データ処理部700から、全体画像データ、部分画像データ、および座標データを取得する。
図1は、データ表示/センサ装置100のより詳細な構成を示すブロック図である。図示のように、主制御部800は、像取得部802(像取得手段)、特定領域決定部803(領域決定手段)、接触位置判定部804、画像方向決定部805(方向決定手段)、画像制御部806(画像制御手段)および入力操作処理部807を備えている。
像取得部802は、表示/光センサ部300が検知したユーザの指の像(以下、単に「像」と称する場合がある)をユーザ操作として取得するために、データ処理部700から全体画像データを取得するものである。言い換えれば、像取得部802は、取得した全体画像データを解析することにより当該全体画像データに含まれる像を取得することで、ユーザの指が表示/光センサ部300に接触したか否かを判定するものである。また、像取得部802は、全体画像データを取得するときに、表示/光センサ部300が検知した指の位置(像の位置)を示す座標データを取得する。
なお、像取得部802は、全体画像データの解析を行うにあたり、例えば一般的な画像認識技術(文字認識技術)を用いて当該像のエッジを抽出することで、当該エッジとなる画素の位置を示す位置情報を求めてもよい。
特定領域決定部803は、像取得部802が取得した像を含む近傍の領域を特定領域として決定するものである。具体的には、特定領域決定部803は、像取得部802が取得した全体画像データが第1表示/光センサ部300Aおよび第2表示/光センサ部300Bのどちらで取得したものであるのかを判定し、当該像を含む全体画像データを取得した方の表示/光センサ部300の表示領域(像を含む近傍の領域)を特定領域として決定する。例えば、ユーザが第1表示/光センサ部300Aを触れた場合には、特定領域決定部803は、第1表示/光センサ部300Aの表示領域を特定領域として決定する。
なお、一画面表示の場合には、特定領域として決定される候補領域として、表示領域内を少なくとも2つに分割した領域それぞれを示す候補領域情報(例えば領域の4隅を示す座標)が予め記憶部901に格納されているものとする。この場合、特定領域決定部803は、像取得部802が取得した全体画像データに含まれる像の位置を座標データにより取得し、記憶部901に格納された領域情報を参照することにより、当該像がどの領域に含まれるかを判定し、当該像を含む近傍の領域を特定領域として決定する。
また、特定領域決定部803は、像取得部802が取得した像を含む領域を特定領域として決定すると共に、当該特定領域とは異なる領域を非特定領域として決定するものである。
接触位置判定部804は、特定領域決定部803が特定領域を決定した後の像取得部802により取得された像が、特定領域および非特定領域(本実施形態では、第1表示/光センサ部300Aおよび第2表示/光センサ部300B)のどちらに含まれるのかを判定するものである。言い換えれば、接触位置判定部804は、ユーザが表示/光センサ部300を触れたときの接触位置が、特定領域および非特定領域のどちらに含まれるのかを判定する。
画像方向決定部805は、像取得部802が像を取得したときに、表示/光センサ部300にて表示される画像の表示方向を決定するものである。ここで、表示される画像とは、ユーザの指示入力を取得可能な操作入力領域(テンキー、キーボードなどにおける各キーを指す)を含む操作入力画像、コンテンツ画像(第2画像)など、どのような画像であってもよい。
また、画像方向決定部805は、表示/光センサ部300が有する複数の辺(ここでは4辺)のうち、表示/光センサ部300に表示される画像を正面から見たときの当該画像の下側に位置する辺を下辺とした場合に、像取得部802が取得した像の位置が当該下辺となるように当該画像の表示方向を決定するものである。
この場合、記憶部901には、例えば表示/光センサ部300の端部領域を示す端部領域情報(例えば表示/光センサ部300の表示領域における最外周一画素分の位置情報)が予め格納されているものとする。
画像方向決定部805は、記憶部901に格納されている端部領域情報を参照することにより、像取得部802が取得した全体画像データに含まれる像が、当該端部領域内に存在するか否かを判定した後、どの端部領域(表示/光センサ部300の表示領域を形成する4辺)に存在するかを特定する。
そして、画像方向決定部805は、特定した端部領域と、表示/光センサ部300に表示される画像を正面から見たときの当該画像の下側に位置する辺(すなわち下辺)とが一致する方向を表示方向として決定する。
また、画像方向決定部805は、画像の表示方向を決定する代わりに、像取得部802が取得した像の絶対座標系における位置(取得した像に対応する表示/光センサ部300の各画素の位置(例えば座標データ))に応じて、複数の候補座標系から1つの候補座標系を表示座標系として決定してもよい。このとき、画像方向決定部805は、後述の座標系対応テーブル(図14(a))および領域対応テーブル(図15(a))を参照することにより表示座標系を決定するが、その処理の詳細については後述する。
ここで、絶対座標系とは、表示/光センサ部300が画像(第2画像を含む)を表示する表示面(センサ内蔵液晶パネル301)に対する座標系を指し、データ表示/センサ装置100の持ち方によって変わることのない予め決められた絶対的な座標系を指す。一方、表示座標系とは、画像を表示する際の座標系を指し、候補座標系とは、表示座標系となり得る座標系を指すものである。つまり、表示座標系とは、表示/光センサ部300への触れ方によって画像の表示方向を切り替えることが可能なように、例えば表示/光センサ部300の表示面の4隅をそれぞれ原点とする4つの座標系のうちの1つを指すものであり、候補座標系とは、その4つの座標系を指すものである。また、画像方向決定部805が候補座標系を表示座標系として決定可能なように、絶対座標系と複数の候補座標系とが対応付けられて、記憶部901に格納されている。
画像制御部806は、像取得部802が取得したユーザ操作としての像に応じて、表示/光センサ部300に画像を表示させるものである。特に、画像制御部806は、特定領域決定部803が決定した特定領域に、ユーザの指示入力を取得可能な操作入力領域を含む操作入力画像を、表示/光センサ部300に表示される画像の少なくとも一部として表示させるものである。この場合、画像制御部806は、特定領域決定部803が決定した特定領域に、記憶部901に予め格納され、入力操作処理部807からの入力操作情報に対応した、ユーザの指示入力を取得可能な操作入力領域を含む操作入力画像を表示させるものである。
また、画像制御部806は、画像方向決定部805が決定した表示方向に基づいて、特定領域または非特定領域に表示されている画像(操作入力画像またはコンテンツ画像)の方向を切り替えた後の画像を表示させたり、表示/光センサ部300に表示される画像(操作入力画像またはコンテンツ画像)を編集可能な編集画像に切り替えたりするものである。
特に、画像制御部806における編集画像の切り替えは、像取得部802が特定領域および非特定領域それぞれにおいて少なくとも1つの像を取得した場合に、または、上記面積判定手段によって像の面積が所定の面積以上であると判定された場合に行われるものである。
また、画像制御部806は、画像方向決定部805が画像の表示方向を決定する代わりに表示座標系を決定する場合には、当該表示座標系を用いた画像を表示させてもよい。なお、画像方向決定部805が表示座標系を決定する処理、および、画像制御部806が当該表示座標系を用いて画像を表示する処理については後述する。
入力操作処理部807は、表示/光センサ部300に表示された操作入力画像に対してユーザの入力操作があった否か判定し、当該判定結果に応じて、画像制御部806に画像の作成を指示するものである。具体的には、入力操作処理部807は、像取得部802が取得した像が操作入力領域内にあるか否かを判定し、操作入力領域内にあると判定した場合には、当該操作入力領域に対応付けられた処理を記憶部901から読み出し、当該処理を行うための画像作成を画像制御部806に指示する。
また、入力操作処理部807は、特定領域決定部803が決定した特定領域に操作入力画像が表示されている場合には、接触位置判定部804が非特定領域に指が触れているとの判定結果を受けて、上記の処理を行うものとする。
なお、画像制御部806がコンテンツ画像を編集画像に切り替える処理は、上記のような方法に限らず、例えば表示/光センサ部300に触れた指の本数(面積)を確認し、本数が複数(所定の本数以上、例えば2以上)である場合にコンテンツ画像を編集画像に切り替えるようにしてもよい。
この場合、指の本数を確認するために、接触位置判定部804は、例えば面積算出部841(面積算出手段)および面積判定部842(面積判定手段)を備えている。
面積算出部841は、像取得部802が取得した全体画像データを解析することにより、全体画像データに含まれるすべての像の面積を算出するものである。
面積判定部842は、面積算出部841が算出した像の面積が、所定の面積以上であるか否かを判定するものである。ここで、所定の面積とは、表示/光センサ部300に触れた指の本数が所定の本数であるか否かを判定することが可能な程度の面積に設定されていればよく、例えば予めデータ表示/センサ装置100を利用するユーザの指(例えば人差し指)の面積を算出しておいてもよい。
そして、画像制御部806は、面積判定部842が面積算出部841により算出された像の面積が所定の面積以上であると判定した場合に、コンテンツ画像を編集画像に切り替える処理を行う。
ここでは、指の本数を確認するために、接触位置判定部804が面積算出部841および面積判定部842を備えた構成となっているが、これに限らず、例えば像取得部802が部分画像データを取得し、その取得した部分画像データの数を計数することにより、表示/光センサ部300に触れた指の本数を計数するようにしてもよい。
なお、記憶部901には、主制御部800が実行する(1)各部の制御プログラム、(2)OSプログラム、(3)アプリケーションプログラム、および、(4)これらプログラムを実行するときに読み出す各種データを記録するものである。記憶部901は、フラッシュメモリなどの不揮発性の記憶装置によって構成される。本実施形態では、記憶部901は、例えば全体画像データ、部分画像データ、座標データ、操作入力画像、コンテンツ画像、候補領域情報、端部領域情報、所定の面積、後述の座標系対応テーブル、領域対応テーブルなどが格納されるものである。また、以下の説明では、これらのデータを記憶部901に格納しているものとして説明するが、例えば全体画像データ、部分画像データ、座標データなど、主制御部800の処理において一時的に格納されるものについては一次記憶部902に格納される構成であってもよい。
また、画像制御部806が作成した画像を表示させるタイミングは、像取得部802が像を取得したときに(すなわちユーザが表示/光センサ部300を触れたときに)行われるものとして説明したが、これに限られたものではない。すなわち、画像制御部806は、像取得部802が像を取得した後に当該像のない全体画像データを取得したときに(すなわち表示/光センサ部300に触れていた指が離れたときに)、作成した画像を表示する構成であってもよい。なお、画像制御部806が画像を表示させる場合に限らず、データ表示/センサ装置100における処理全般についても同様である。
さらに、上記の処理では、データ表示/センサ装置100は、例えば一般的な画像認識技術を用いて表示/光センサ部300に触れた指の像を検知して、表示/光センサ部300に指が触れたことを判断する構成であるが、これに限られたものではない。すなわち、データ表示/センサ装置100は、画像認識技術のうちの1つである指紋認識技術を用いて表示/光センサ部300に指が触れたことを判断する構成であってもよい。この他、データ表示/センサ装置100は、液晶の温度を測定し、指の触れた領域の温度変化(周囲の液晶の温度よりも高くなること)を検出することにより、指が触れたことを検知する液晶の温度認識技術を用いてもよい。
以上のように、データ表示/センサ装置100(その制御方法)は、画像を表示するとともに、近傍の対象物の像を検知する表示/光センサ部300と、表示/光センサ部300が検知した像を取得する像取得部802(像取得ステップ)と、像取得部802が取得した像を含む近傍の領域を特定領域として決定する特定領域決定部803(領域決定ステップ)と、特定領域決定部803が決定した特定領域に、ユーザの指示入力を取得可能な操作入力領域を含む操作入力画像を表示させる画像制御部806(画像制御ステップ)と、を備える構成である。
ここで、ユーザは、表示/光センサ部300に触れたとき、データ表示/センサ装置100に対して何らかの処理を行わせることを所望していることが一般的である。このため、データ表示/センサ装置100は、ユーザが触れた位置を含む領域(特定領域)に操作入力画像を表示させることにより、ユーザがデータ表示/センサ装置100に対して所望する処理に応じた指示入力を容易に行わせることができる。すなわち、ユーザは、触れた位置の近傍に表示される操作入力画像に対して指示入力を行うことができる。
従って、データ表示/センサ装置100は、ユーザが表示/光センサ部300に触れただけで(すなわち直感的なユーザ操作で)、その触れた近傍に操作入力画像(ユーザが所望する画像)を表示させることができるため、触れた後の操作を行い易い状況をユーザに提供することが可能となる。すなわち、データ表示/センサ装置100は、直感的なユーザ操作で、ユーザが所望する画像を表示させることができるため、ユーザの利便性を向上させることができる。
特に、データ表示/センサ装置100が例えば携帯電話機である(または携帯電話機に含まれている)場合、操作入力画像が触れた側(通常の使用方法であれば下側)に表示されるので、ユーザは、その持ち方を意識することなくデータ表示/センサ装置100に対する操作を行うことができる。
なお、データ表示/センサ装置100は、表示/光センサ部300が検知した像をユーザ操作として取得する像取得部802と、像取得部802が取得したユーザ操作としての像に応じて、表示/光センサ部300に画像を表示させる画像制御部806と、を備える構成ともいえる。
この場合、画像制御部806は、表示/光センサ部300が検知し、像取得部802が取得したユーザ操作としての像に応じて画像を表示させる。例えば、画像制御部806は、像取得部802が取得した像に応じて、ユーザの指示入力を取得可能な操作入力領域を含む操作入力画像、表示/光センサ部300に画像が表示されているときの当該画像の表示方向を切り替えた後の画像、表示/光センサ部300に画像が表示されているときの当該画像を編集可能とする編集画像などを表示させる。つまり、画像制御部806は、ユーザが表示/光センサ部300に触れるというユーザ操作があったときに、ユーザが次の操作を行い易いような画像(すなわちユーザが所望する画像)を表示させることができる。
従って、データ表示/センサ装置100(その制御方法)は、ユーザが表示/光センサ部300に触れただけで(すなわち直感的なユーザ操作で)、ユーザが所望する画像を表示させることができるため、ユーザの利便性を向上させることができる。
(データ表示/センサ装置における処理の流れ)
次に、図9を参照しながら、本実施形態に係るデータ表示/センサ装置100における処理の流れを説明する。図9は、本実施形態に係るデータ表示/センサ装置100における処理の流れを示すフローチャートである。
まず、電源が入った状態で(S1)、像取得部802は、指801aが表示/光センサ部300に接触したかどうかを判定する(S2)。像取得部802は、指801aが表示/光センサ部300に接触したと判定すると(S2でYES)、表示/光センサ部300上における指801aの接触位置を示す接触位置情報を、特定領域決定部803に送信する。なお、ここでは、電源が入ったときに表示/光センサ部300には起動用の画像が表示された後、表示/光センサ部300に対してユーザ操作がなければ、画像が表示されない状態となるものとする。
一方、像取得部802は、指801aが表示/光センサ部300に接触していないと判定した場合には(S2でNO)、指801が触れるのを待つ。
なお、上記判定を行うために、像取得部802は、「データ取得タイミング」フィールドに、“イベント”または“オール”を指定し、「データ種別」フィールドに、“座標”または“全体画像”を指定したコマンドを、データ処理部700に送信する。また、座標データおよび全体画像データの両方を取得したい場合は、「データ種別」フィールドに、“座標”および“全体画像”の両方を指定する(“011”を指定する)。
そして、指801aが表示/光センサ部300上に置かれたとき、光センサ回路32が、指801aの影像および反射像の少なくともいずれかを検知するので、その結果、データ処理部700がセンサ制御部602から受信する画像データに変化が生じる。
したがって、データ処理部700は、上述したコマンドの応答として、座標データまたは全体画像データを像取得部802に送信する。像取得部802は、上記座標データまたは上記全体画像データを受け取ると、指801aが表示/光センサ部300に接触したと判定する。
特定領域決定部803は、像取得部802から受信した上記接触位置情報に含まれる指801の像の位置座標が、第1表示/光センサ部300Aおよび第2表示/光センサ部300Bのどちらにあるかを判断し、指801aが触れた側を、ユーザ操作を取得可能な領域としての特定領域であると決定する。そして、この特定領域を示す特定領域情報を画像制御部806に送信する(S3)。
なお、特定領域は、テンキー、キーボードなどのユーザ操作を取得可能なキーとしての複数の操作入力領域を含む操作入力画像を表示するための領域であり、特定領域とは異なる非特定領域は、ユーザが視聴するためのコンテンツ画像などを表示するための領域である。
画像制御部806は、上記特定領域情報に基づいて、記憶部901に格納されたテンキー等のユーザ操作を取得可能な操作入力画像と、コンテンツ画像とを含む初期画像としての画像データを作成する(S4)。そして、画像制御部806は、「表示パネル」フィールドで操作入力画像およびコンテンツ画像を表示する表示/光センサ部300をそれぞれ指定したコマンド(例えば第1表示/光センサ部300Aに表示する場合には“001”、第2表示/光センサ部300Bに表示する場合には“010”)とともに、その画像データを表示データとしてデータ処理部700へ送信する。これにより、画像制御部806は、表示/光センサ部300に指定した画像を表示させる(S5)。
その後、像取得部802は、再び指801aが表示/光センサ部300に接触したかどうか判定する(S6)。像取得部802は、再び指801aが表示/光センサ部300に接触したと判定すると(S6でYES)、指801aが接触した位置(接触位置)を示す座標データを接触位置判定部804に送信する。一方、像取得部802が、指801aが表示/光センサ部300に接触していないと判定した場合には(S6でNO)、画像制御部806は、操作入力画像およびコンテンツ画像の現在の表示状態を維持する。
S6でYESの場合、接触位置判定部804は、像取得部802から受信した座標データの示す接触位置が、S2において指801aが触れなかった側(非特定領域)であるかどうかを判定する(S7)。接触位置判定部804は、上記接触位置が非特定領域であると判定した場合には(S7でYES)、上記接触位置を示す座標データを画像方向決定部805に送信する。
画像方向決定部805は、接触位置判定部804から受信した座標データの示す接触位置および記憶部901に格納された端部領域情報を用いて、像取得部802が取得した全体画像データに含まれる像が、端部領域内に存在するか否かを判定する。また、このとき、画像方向決定部805は、上記像がどの端部領域(表示/光センサ部300の表示領域を形成する4辺)に存在するかを特定する(S8)。
なお、画像方向決定部805は、像取得部802が画像認識技術を用いて求めたエッジとなる画素の位置と、当該エッジとなる画素の位置と上記端部領域情報に示される画素の位置とが一致するか否かを判定することにより、当該像が端部領域内に存在するか否かを判定してもよい。
そして、画像方向決定部805は、特定した端部領域と、表示/光センサ部300に表示される画像を正面から見たときの当該画像の下側に位置する辺(すなわち下辺)とが一致する方向を表示方向として決定する。そして、画像方向決定部805は、決定した表示方向を示す表示方向情報を画像制御部806に送信する。画像制御部806は、上記表示方向情報の示す表示方向のコンテンツ画像(すなわち、特定された端部領域が上記下辺となるようなコンテンツ画像)を作成する(S9)。
そして、画像制御部806は、「表示パネル」フィールドで画像を表示する表示/光センサ部300を指定したコマンドとともに、作成されたコンテンツ画像データを表示データとしてデータ処理部700へ送信することにより、表示/光センサ部300に、作成された画像が表示される。
一方、接触位置判定部804が、上記接触位置が特定領域であると判定した(S7でNO)場合には、上記接触した指801aが離れる前に、さらに、非特定領域に指801aとは異なる他の指801bが触れたか否かを判定する(S10)。接触位置判定部804は、特定領域に指801aが触れた状態で非特定領域にも他の指801bが触れたと判定した場合は(S10でYES)、この判定結果(特定領域に指801aが触れた状態で、非特定領域にも他の指801bが触れたことを示す結果)を接触情報として画像制御部806に送信する。
画像制御部806は、S10でYESの場合、上記接触情報を接触位置判定部804から受信すると、表示させているコンテンツ画像を編集可能な編集画像を作成する(S11)。
そして、画像制御部806は、「表示パネル」フィールドで操作入力画像および編集画像を表示する表示/光センサ部300を指定するコマンドとともに、これらの画像データをそれぞれ表示データとしてデータ処理部700へ送信することにより、表示/光センサ部300に、作成された画像が表示される。
また、接触位置判定部804は、特定領域に触れていた指801aが先に離れたと判定した場合は(S10でNO)、この判定結果(特定領域に触れた指801aが離れたことを示す結果)を入力操作処理部807に送信する。入力操作処理部807は、この判定結果を受けて(すなわち指801aが離れたことをトリガーとして)、指801aの接触位置に割り当てられた入力操作に応じた処理を行う(S12)。上記入力操作処理部807が行う処理としては、例えば、電話番号の入力や、メニュー画面の呼び出しなどが挙げられる。
なお、S6以降の処理については、S5以前の処理に続く形である必要はなく、S5以前の処理からは独立して行うことが可能である。すなわち、電源が入った後、ユーザが表示/光センサ部300を触れた場合には、画像方向決定部805は、触れた方の表示/光センサ部300に表示されている画像(操作入力画像またはコンテンツ画像)の表示方向を決定する処理を行う構成であってもよい。また、電源が入った後、コンテンツ画像が表示されている表示/光センサ部300を触れた場合には、画像制御部806は、編集画像を表示させる処理を行う構成であってもよい。
次に、図10〜図12を参照しながら、表示/光センサ部300における画像の表示例について説明する。なお、図10〜図12における「画像」とは、表示/光センサ部300に表示されるコンテンツ画像の様子を便宜的に示したものであり、「画像」の文字の向きは、画像方向決定部805により決定される表示方向に基づいて決定される向きを示すものとする。
まず、図10を参照しながら、図9に示すS2〜S5の処理の結果、表示/光センサ部300に初期画像が表示される様子について説明する。図10は、図9に示すS2〜S5の処理の結果、表示/光センサ部300に初期画像が表示される様子を示す図である。
図示のように、図9に示すS1において、表示/光センサ部300には、指801aが触れていない場合には画像が何も表示されていない。この状態で、表示/光センサ部300に指801aが触れることで、図9のS2〜S5の処理が行われると、触れた方の画面(特定領域)(第1表示/光センサ部300A)にユーザ操作を取得可能なテンキーなどの操作入力画像が表示され、もう一方の画面(非特定領域)(第2表示/光センサ部300B)にはコンテンツ画像が表示される。
なお、ここでは、指801aが触れた方の画面を第1表示/光センサ部300Aとしているが、これに限らず、第2表示/光センサ部300Bでもよい。また、図11〜図13の説明においても同様である。
次に、図11を参照しながら、図9に示すS7〜S9の処理の結果、表示/光センサ部300に表示される画像の方向が切り替わる様子について説明する。図11は、図9に示すS7〜S9の処理の結果、表示/光センサ部300に表示される画像の方向が切り替わる様子を示す図である。
図示のように、指801aが表示/光センサ部300に接触していない場合には、画像が表示/光センサ部300の辺E2を下にして画像を見ると正面となるような方向に表示されている。指801aが非特定領域(ここでは第2表示/光センサ部300Bとしているが、第1表示/光センサ部300Aでもよい)の一辺に接触すると、非特定領域に表示されている画像は、その辺(図11における辺E1)を下にして画像を見ると正面となるような方向へと切り替わる。
また、S8、S9における処理については、図12に示す次のような例も挙げられる。図12は、図9に示すS7〜S9の処理の別例を示すものであり、指801aが表示/光センサ部300に触れるたびに、表示/光センサ部300に表示される画像の表示方向が切り替わる様子を示す図である。
図示のように、像取得部802が非特定領域への指801aの接触を検知すると、検知したことを画像方向決定部805に知らせる。画像方向決定部805は、コンテンツ画像の表示されている方向を例えば90度右回り方向に回転させるように、コンテンツ画像が現在表示されている方向に対して90度右を示す方向を表示方向情報として画像制御部806に知らせる。画像制御部806は、この表示方向情報を受信すると、現在表示されているコンテンツ画像を90度右回り方向に回転させたコンテンツ画像を作成する。そして、画像制御部806は、その画像データを表示データ処理部701へ送信し、非特定領域としての表示/光センサ部300に作成した画像を表示させる。
そして、像取得部802が非特定領域への指801aの接触を検知するたびに、画像方向決定部805は、コンテンツ画像が現在表示されている方向に対して90度右を示す方向を表示方向情報として画像制御部806に送信する。そして、画像制御部806は、この表示方向情報を受信するたびに、現在表示されているコンテンツ画像を90度右回り方向に回転させたコンテンツ画像を、非特定領域としての表示/光センサ部300に表示させる。
なお、上記では、画像方向決定部805は、コンテンツ画像を90度右回り方向に回転させるように表示方向を決定しているが、これに限らず、左回り方向に回転させるように決定してもよい。また、90度でなくてもよく、表示/光センサ部300に指801aが触れるたびに、例えば180度ごとに(この値は任意に設定されているものとする)コンテンツ画像を回転させるように表示方向を決定してもよい。
次に、図13を参照しながら、図9に示すS10〜S11の処理の結果、表示/光センサ部300に編集画像が表示される様子について説明する。図13は、図9に示すS10〜S11の処理の結果、表示/光センサ部300に編集画像が表示される様子を示す図である。
図示のように、特定領域(第1表示/光センサ部300A)を指801aが触れた状態で非特定領域(第2表示/光センサ部300B)に他の指801bが触れると、非特定領域には、表示されているコンテンツ画像を編集可能な編集画像が表示される。
(画像方向決定部での処理)
ここで、図14〜図16を参照しながら、本実施形態に係る画像方向決定部805が表示/光センサ部300に表示される画像の表示方向として表示座標系を決定するときの処理の一例を説明する。まず、図14を用いて、画像方向決定部805が表示座標系を決定する際に用いる、絶対座標系と複数の候補座標系(ここでは4つ)との対応付けを示す座標系対応テーブルについて説明する。図14(a)は、画像方向決定部805が表示座標系を決定する際に用いる座標系対応テーブルを示す図であり、図14(b)は、表示/光センサ部300の表示面における絶対座標系および候補座標系を概略的に示す図である。
ここでは、図13に示すようにデータ表示/センサ装置100を使用する際の最右上の画素の位置が、絶対座標系における原点(0,0)として設定されているものとして説明する。
図14(a)に示す座標系対応テーブルには、「絶対座標」および「候補座標系」を示す情報が格納されている。なお、座標系対応テーブルは、記憶部901に予め格納されているものである。
「絶対座標」には、各候補座標系の原点となる絶対座標系における座標を示す絶対座標情報が格納される。「絶対座標」には、例えば図14(a)に示すように、表示/光センサ部300の表示面の4隅の座標(図14(b)に示す(0,0)、(Xmax,0)、(0,Ymax)、(Xmax,Ymax))が格納されている。なお、「絶対座標」に格納される絶対座標情報は、これに限らず、絶対座標系と複数の候補座標系とをそれぞれ対応付ける情報であれば、どのような情報であってもよい。
「候補座標系」には、「絶対座標」に格納される絶対座標情報それぞれを原点とした候補座標系を示す座標系情報が格納される。「候補座標系」には、例えば図14(a)に示すように、「絶対座標」の4つの絶対座標情報それぞれに対応付けられた、候補座標系A(x−y座標系)、B(x1−y1座標系)、C(x2−y2座標系)、D(x3−y3座標系)を示す座標系情報が格納されている。「候補座標系」に格納される座標系情報は、例えば各候補座標系におけるx軸およびy軸に対応する辺やその方向など、候補座標系A〜Dであることを示す情報であれば、どのような情報が格納されていてもよい。なお、ここでは、候補座標系Aは、絶対座標系と同一の座標系である。
次に、図15を用いて、画像方向決定部805が表示座標系を決定する際に用いる、端部領域情報と複数の候補座標系との対応付けを示す領域対応テーブルについて説明する。図15(a)は、画像方向決定部805が表示座標系を決定する際に用いる領域対応テーブルを示す図であり、図15(b)は、表示/光センサ部300の表示面における端部領域を概略的に示す図である。
図15(a)に示す領域対応テーブルには、「端部領域(絶対座標)」および「候補座標系」を示す情報が格納されている。なお、領域対応テーブルは、記憶部901に予め格納されているものである。
「端部領域(絶対座標)」には、図15(b)に示す領域R1、R2、R3、R4を示す端部領域情報が格納される。「端部領域(絶対座標)」には、例えば当該領域ごとに、当該領域の4隅の座標が端部領域情報として格納される。
「候補座標系」には、図14(a)に示す座標系対応テーブルの「候補座標系」に格納される情報と同じ情報が、各端部領域情報に対応付けて格納される。
なお、座標系対応テーブルの「絶対座標」および「候補座標系」、並びに、領域対応テーブルの「端部領域(絶対座標)」および「候補座標系」は、ユーザが表示/光センサ部300を触れたときに当該ユーザから見易いように画像表示を行うことが可能なように、それぞれ対応付けされていればよい。また、各端部領域についても同様に、図15(b)に示す台形領域に限らず、ユーザが見易いように画像表示を行うことが可能なように領域が設定されていればよく、例えば表示/光センサ部300の表示面における最外周一画素分の位置情報が辺(4隅の画素を除く)ごとに設定されていてもよい。
次に、図14〜図16を用いて、画像方向決定部805が座標変換を行って画像の表示方向を決定する処理について具体的に説明する。図16は、画像を表示している表示/光センサ部300にユーザが触れたときに、当該画像の表示方向が切り替わる様子を示す図である。
まず、画像方向決定部805は、図9に示すS8において、対象物(ユーザの指801a)を示す像が端部領域内に存在すると判断した場合、当該像がどの端部領域(ここでは、端部領域R1〜R4)に存在するかを特定する。
例えば図16に示すように、画像方向決定部805は、指801aが図15(b)に示す端部領域R4内を触れていることを特定すると、領域対応テーブルを参照することによって、端部領域R4と対応付けられた候補座標系Dを表示座標系として決定する。そして、画像方向決定部805は、表示座標系としての候補座標系Dを画像制御部806に送信する。
S9において、画像制御部806は、表示座標系としての候補座標系Dを受信すると、図16に示すように、候補座標系Aを用いて表示されている画像を、候補座標系Dを用いて表示させるように画像データを作成する。具体的には、画像制御部806は、例えば候補座標系Aにおける座標(Xc,Yc)の画素値(輝度値)を候補座標系Dにおける(Xc,Yc)(絶対座標系における(Xd,Yd))の画素値とすることで、表示座標系としての候補座標系Dを用いた画像データを作成する。すなわち、画像制御部806は、候補座標系Aにおける全ての座標に対応する画素値を、当該座標に対応する候補座標系Dにおける座標の画素値とすることにより、表示座標系としての候補座標系Dを用いた画像データを作成する。
そして、画像制御部806は、「表示パネル」フィールドで画像を表示する表示/光センサ部300を指定したコマンドとともに、作成されたコンテンツ画像データを表示データとしてデータ処理部700へ送信することにより、表示/光センサ部300に、作成された画像が表示される。
なお、表示/光センサ部300の表示面が長方形である場合には、長辺と短辺との長さの割合に応じて、例えば各候補座標系の1目盛り当たりの大きさや、候補座標系間で対応する座標が予め決められていてもよい。また、画像制御部806は、上記割合に応じて、表示座標系としての候補座標系Dを用いて作成した画像に対して拡大縮小を行ってもよい。これにより、画像制御部806は、表示/光センサ部300の表示面が長方形であっても、表示方向にあわせた、ユーザにとって見易い画像を表示/光センサ部300に表示させることができる。
(補足)
また、上述したデータ表示/センサ装置100の各ブロック、特に像取得部802、特定領域決定部803、接触位置判定部804、画像方向決定部805、画像制御部806、入力操作処理部807は、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
すなわち、データ表示/センサ装置100は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるデータ表示/センサ装置100の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記データ表示/センサ装置100に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
また、データ表示/センサ装置100を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR(high data rate)、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
(本発明の別の表現)
なお、本発明は、以下のようにも表現できる。
すなわち、本発明に係る画像処理装置は、入力機能を備えた画面上に表示部と操作部を表示する装置であって、使用者の操作に応じて表示部と操作部の表示位置を制御する構成である。
さらに、本発明に係る画像処理装置は、2つの画面から構成されており、各々の画面は折り畳み可能に接続された筐体に設けられていることが好ましい。
さらに、本発明に係る画像処理装置は、使用者の操作により画面がタッチされた側を操作部とすることが好ましい。
さらに、本発明に係る画像処理装置は、使用者の操作により画面がタッチされた後に、表示部が選択されることにより選択位置に合わせて表示内容を回転することが好ましい。
さらに、本発明に係る画像処理装置は、使用者の操作により画面がタッチされた後に、操作部をタッチしたまま画面部をタッチすることにより編集モードとすることが好ましい。
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。