(57)【特許請求の範囲】
【請求項１】
ひとつの画像に対応する相異なる解像度を有し所定ピクセルサイズのタイルから構成される画像データを格納する格納手段と、
前記格納手段から読み出された画像データに基づいて画像を表示する表示手段と、
前記表示後ズーム倍率の変更指定が行なわれる前に、前記表示手段により表示される画像に含まれる文字の大きさを認識する認識手段と、
前記表示後ズーム倍率の変更指定が行なわれる前に、前記認識手段により認識された文字の大きさから、前記文字を前記表示手段に所定サイズで表示させるための画像解像度を計算する計算手段と、
前記表示後ズーム倍率の変更指定が行なわれる前に、前記画像解像度に従い、前記相異なる解像度を有する所定ピクセルサイズのタイルから構成される画像データのうち、少なくとも１種類の解像度の画像データを前記格納手段から読み出す読み出し手段と、
前記変更指定されたズーム倍率に従った解像度の画像データを得るための画像データが、前記読み出し手段により読み出されているか判断する判断手段と、
前記判断手段により、前記変更指定されたズーム倍率に従った解像度の画像データを得るための画像データとして２種類の解像度の画像データが必要であって、前記読み出されている画像データが前記２種類の解像度の画像データのいずれか一方のみと判断した場合、前記２種類の画像データの残りの解像度の画像データを読み出し、前記読み出されている画像データと該読み出された残りの解像度の画像データの中間の解像度の画像データを生成し、前記判断手段により、前記変更指定されたズーム倍率に従った解像度の画像データを得るための画像データとして異なる２種類の解像度の画像データが前記読み出し手段により既に読み出されたと判断した場合、前記異なる２種類の解像度の画像データから異なる２種類の解像度の画像データの中間の解像度の画像データを生成するズーム処理手段と
を備える画像表示装置であって、
前記読み出し手段は、前記表示手段により表示される画像領域の中心を基準として、前記表示手段により表示可能な画像領域について、該画像領域の左上から右下に向けて順次下がるように優先度を付与し、該優先度に従って所定ピクセルサイズのタイル単位で所定ピクセルサイズのタイルから構成される画像データを前記格納手段から読み出すことを特徴とする画像表示装置。
【請求項２】
ひとつの画像に対応する相異なる解像度を有し所定ピクセルサイズのタイルから構成される画像データを格納する格納手段と、
前記格納手段から読み出された画像データに基づいて画像を表示する表示手段と、
前記表示後ズーム倍率の変更指定が行なわれる前に、前記表示手段により表示される画像に含まれる文字の大きさを認識する認識手段と、
前記表示後ズーム倍率の変更指定が行なわれる前に、前記認識手段により認識された文字の大きさから、前記文字を前記表示手段に所定サイズで表示させるための画像解像度を計算する計算手段と、
前記表示後ズーム倍率の変更指定が行なわれる前に、前記画像解像度に従い、前記相異なる解像度を有する所定ピクセルサイズのタイルから構成される画像データのうち、少なくとも１種類の解像度の画像データを前記格納手段から読み出す読み出し手段と、
前記変更指定されたズーム倍率に従った解像度の画像データを得るための画像データが、前記読み出し手段により読み出されているか判断する判断手段と、
前記判断手段により、前記変更指定されたズーム倍率に従った解像度の画像データを得るための画像データとして２種類の解像度の画像データが必要であって、前記読み出されている画像データが前記２種類の解像度の画像データのいずれか一方のみと判断した場合、前記２種類の画像データの残りの解像度の画像データを読み出し、前記読み出されている画像データと該読み出された残りの解像度の画像データの中間の解像度の画像データを生成し、前記判断手段により、前記変更指定されたズーム倍率に従った解像度の画像データを得るための画像データとして異なる２種類の解像度の画像データが前記読み出し手段により既に読み出されたと判断した場合、前記異なる２種類の解像度の画像データから異なる２種類の解像度の画像データの中間の解像度の画像データを生成するズーム処理手段と
してコンピュータを機能させるためのコンピュータプログラムであって、
前記読み出し手段は、前記表示手段により表示される画像領域の中心を基準として、前記表示手段により表示可能な画像領域について、該画像領域の左上から右下に向けて順次下がるように優先度を付与し、該優先度に従って所定ピクセルサイズのタイル単位で所定ピクセルサイズのタイルから構成される画像データを前記格納手段から読み出すことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、たとえば複写機等、装置操作者による指示に応じて画像を迅速に拡大縮小処理して表示する画像表示装置および方法に関し、特に拡大縮小後の画像を表示する画像表示装置および画像表示方法に関するものである。
【背景技術】
【０００２】
従来、複写機など、画像処理結果を表示できる装置において、一般的に、表示される画像は画像圧縮されメモリまたはＰＣＩバスに接続されたハードディスクなどの記憶装置に格納されている。図９に従来技術での構成例を、図１０に従来技術での処理の流れを示す。
【０００３】
図９に示すように、従来の画像処理装置は、主演算装置（ＣＰＵ）１０１、メインメモリ１０２、画像処理結果の表示をおこなうＬＣＤＣ１０３、ＬＣＤディスプレイ１０７、減色処理を行う減色処理ユニット１０６、ズーム・スクロール処理ユニット１０５、ＪＰＥＧデコーダ１０４、ＰＣＩバスコントローラ１０８などがローカルバスに接続され、ＰＣＩバスコントローラ１０８に接続されたＰＣＩバス１０９、記憶装置１１０を備えている。
【０００４】
ＬＣＤディスプレイ１０７に表示するための画像は、記憶装置１１０に格納された２５ｄｐｉ、５０ｄｐｉ、１００ｄｐｉ、２００ｄｐｉの４種類のＪＰＥＧ画像圧縮データから生成される。これらの画像は、３２ピクセル×３２ピクセルのタイル状に分割され、タイルごとにＪＰＥＧ圧縮されている。なお、画像データの解像度（画像解像度）は、画像サイズ（長さ）を一定とした場合の画素密度を表している。たとえば、２００ｄｐｉの画像とは、１インチ当たり２００画素で出力されるべき画像データである。いいかえれば、２００ｄｐｉの画像とは２００ｄｐｉの表示解像度をもつ媒体で出力されると想定されている画像データをいう。あるひとつの画像について、相異なる解像度の画像データを一定の表示解像度を有する表示装置でそのまま表示した場合には、画像解像度の相違は画像サイズの相違として表れる。たとえば、２５ｄｐｉ、５０ｄｐｉ、１００ｄｐｉの各画像解像度を有する画像のサイズ（長さ）は、２００ｄｐｉを１として、それぞれ長さ比で１／８、１／４、１／２のサイズとなる。各サイズの画像を圧縮前の元画像のサイズに合わせて表示する場合には、たとえば元画像の画像解像度が２００ｄｐｉであれば、２５ｄｐｉ、５０ｄｐｉ、１００ｄｐｉの各画像解像度の画像は、それぞれ８倍、４倍、２倍に拡大して表示される。この場合、拡大後の画像は同一のサイズとなり、見かけ上は、それぞれの解像度で表示されているかのように見える。
【０００５】
ＬＣＤディスプレイ１０７へは、装置の操作者により指示された画像解像度の画像が表示される。表示される画像データは、その画像解像度がＪＰＥＧ圧縮されて記憶装置１１０に格納されている画像データの画像解像度と一致すればその画像データを用いて表示される。一致しなければ指定された画像解像度の画像データが生成されてそれが表示される。指定された画像解像度の画像データは、ＪＰＥＧ圧縮されている画像データのうち、指定された画像解像度の直上および直下の画像解像度の画像データから生成される。直上および直下の画像解像度の何れかの画像データがなければ、いずれか存在する方の画像データを用いて生成される。すなわち、上記例では、記憶装置１１０に格納された４種類の画像解像度のＪＰＥＧ画像圧縮データから生成される。（特許文献１等参照）
ここで、１５０ｄｐｉの画像解像度が指示された場合を例に図１０の処理を説明する。表示する画像の画像解像度が指示されると、ＪＰＥＧデコーダ１０４は、１５０ｄｐｉの直下の画像解像度１００ｄｐｉの画像圧縮データと直上の画像解像度２００ｄｐｉのＪＰＥＧ画像圧縮データとから、画像全体のうち表示に必要な部分のタイルのＪＰＥＧ圧縮データを記憶装置１１０から読み出す（Ｓ１００１）。読み出した圧縮画像データを伸張し、伸張した画像データをメインメモリ１０２へ書き出す（Ｓ１００２）。ズーム・スクロール処理ユニット１０５は、伸張された１００ｄｐｉと２００ｄｐｉの画像データから１５０ｄｐｉの画像データを生成してメインメモリ１０２へ書き出す（Ｓ１００３）。そして表示能力等に応じて生成された画像データについて減色処理を行い（Ｓ１００４）、生成された画像データをＬＣＤディスプレイ１０７へ表示する（１００５）。
【０００６】
図７にスクロール処理の一例を示す。１５０ｄｐｉのズーム画像７０１を表示しているときに、スクロール動作が発生すると、ＪＰＥＧデコーダ１０４は、スクロール方向に追加すべきデータ（タイル）を、記憶装置１１０に格納された１００ｄｐｉ及び２００ｄｐｉの圧縮画像データから読み出し、伸張したデータをメインメモリ１０２へ書き出す。ズーム・スクロール処理ユニット１０５は、伸張されたデータから１５０ｄｐｉのズーム画像を生成し、メインメモリ１０２へ書き出す。ＣＰＵ１０１は表示している画像のうち、スクロール後も表示される部分に生成された画像を追加し、新たな表示画像７０２をメインメモリ１０２へ書き出す。そしてＬＣＤディスプレイ１０７へ表示している画像を、新たに生成された表示画像に切り替え、スクロールが発生したように見せる。
【特許文献１】特開２００３−２０２８５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来の方法では操作者が解像度を指定してから必要なＪＰＥＧ画像圧縮データを読み出し指定解像度の画像を生成していたため、装置の操作者からの指示があってから画像を表示するまでに時間がかかるという問題があった。一方、装置の操作者は、表示領域内にテキストが含まれている場合、テキストを無理なく読むことができるサイズ（すなわち画像解像度）で画像処理結果を表示することが多い。細かい文字をたとえばＡ４版の文書全体が表示されるサイズで表示しつづけることは少なく、また逆に見出し文字のような大きな文字を拡大して表示しつづけることは少ない。このため、操作者はテキストの表示サイズに応じて画像の拡大あるいは縮小を指示するが、前述の問題のために、画像の拡大・縮小の指示に対して画像が表示されるまでの応答性が悪かった。
【０００８】
本発明は上記従来例に鑑みてなされたもので、画像内のテキスト文字を検出し、文字の大きさを認識するとともに、文字のサイズがおおむね一定となるよう画像を拡大あるいは縮小するために必要な解像度のＪＰＥＧ画像圧縮データを先読みすることで、操作者に指定された大きさの画像を、指示に応じて迅速に表示できる、応答性の良好な画像表示装置及び画像表示装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明は以下の構成を備える。
【００１０】
ひとつの画像に対応する相異なる解像度を有し所定ピクセルサイズのタイルから構成される画像データを格納する格納手段と、
前記格納手段から読み出された画像データに基づいて画像を表示する表示手段と、
前記表示後ズーム倍率の変更指定が行なわれる前に、前記表示手段により表示される画像に含まれる文字の大きさを認識する認識手段と、
前記表示後ズーム倍率の変更指定が行なわれる前に、前記認識手段により認識された文字の大きさから、前記文字を前記表示手段に所定サイズで表示させるための画像解像度を計算する計算手段と、
前記表示後ズーム倍率の変更指定が行なわれる前に、前記画像解像度に従い、前記相異なる解像度を有する所定ピクセルサイズのタイルから構成される画像データのうち、少なくとも１種類の解像度の画像データを前記格納手段から読み出す読み出し手段と、
前記変更指定されたズーム倍率に従った解像度の画像データを得るための画像データが、前記読み出し手段により読み出されているか判断する判断手段と、
前記判断手段により、前記変更指定されたズーム倍率に従った解像度の画像データを得るための画像データとして２種類の解像度の画像データが必要であって、前記読み出されている画像データが前記２種類の解像度の画像データのいずれか一方のみと判断した場合、前記２種類の画像データの残りの解像度の画像データを読み出し、前記読み出されている画像データと該読み出された残りの解像度の画像データの中間の解像度の画像データを生成し、前記判断手段により、前記変更指定されたズーム倍率に従った解像度の画像データを得るための画像データとして異なる２種類の解像度の画像データが前記読み出し手段により既に読み出されたと判断した場合、前記異なる２種類の解像度の画像データから異なる２種類の解像度の画像データの中間の解像度の画像データを生成するズーム処理手段と
を備える画像表示装置であって、
前記読み出し手段は、前記表示手段により表示される画像領域の中心を基準として、前記表示手段により表示可能な画像領域について、該画像領域の左上から右下に向けて順次下がるように優先度を付与し、該優先度に従って所定ピクセルサイズのタイル単位で所定ピクセルサイズのタイルから構成される画像データを前記格納手段から読み出す。
【発明の効果】
【００１７】
本発明によれば、表示されている画像内の文字が、一定の大きさとなるように画像を拡大或いは縮小するために必要な解像度の画像データを、拡大或いは縮小の指示に先んじて予め読んでおくことで、拡大或るいは縮小指示に対する表示の応答性を良好にすることができる。このため、画像表示装置の操作性・生産性を向上させることができる。
【発明を実施するための最良の形態】
【００１８】
＜装置構成＞
図１は本発明の実施形態にかかる画像処理装置の構成の一例を示すブロック図である。図１に示すように、この画像処理装置では、主演算ユニット（ＣＰＵ）３０１、メインメモリ３０２、ＬＣＤディスプレイ３０７を制御するＬＣＤコントローラ（ＬＣＤＣ）３０３、生成された画像データを画像として表示するためのＬＣＤディスプレイ（ＬＣＤ）３０７、減色処理を行う減色処理ユニット３０６、ズーム・スクロール処理ユニット３０５、ＪＰＥＧデコーダ３０４、ＰＣＩバスコントローラ３０８がローカルバスにより接続されている。そして、ＰＣＩバス３０９により、ハードディスクや不揮発性メモリなどの画像データの記憶装置３１０が接続されている。
【００１９】
ここで、ＣＰＵ３０１は、メモリ３０２に格納された、図４や図６，図１１等に示す手順のプログラムを実行し、装置全体を制御する。たとえば、プログラムの実行により、装置の操作者からの指示入力に応じて、各処理ユニットに対して指示を与える。メインメモリ３０２内には、プログラムのほかに、画像処理のための情報や、画像処理結果を表示するために必要な情報が格納される。特に、先読みされた画像データは、先読み領域３１１に格納される。ＪＰＥＧデコーダ３０４は、記憶装置３１０内に格納された、ＪＰＥＧ圧縮された画像データを伸張する。記憶装置３１０には、ＪＰＥＧのプログレッシブモードで、段階的なサイズ（画像解像度）で圧縮された画像データが保存されている。ズーム・スクロール処理ユニット３０５は、指示された解像度の画像の生成や、スクロールにともなう処理を行う。減色処理ユニット３０６は、誤差拡散による減色処理（量子化処理）を行う。なお、ＪＰＥＧデコーダ３０４，ズームスクロール処理ユニット３０５，減色処理ユニット３０６は、専用のハードウエアやスレーブＣＰＵにより実現することもできるし、ＣＰＵ３０１ににより各処理ユニットに応じたプログラムを、各処理ユニット毎に独立したプロセスとして実行することでも実現できる。記憶装置３１０には、ＪＰＥＧ圧縮された画像データが格納される。また、本実施形態では、ＬＣＤ３０７は１画素あたり８ビット入力のカラーディスプレイである。
【００２０】
図２にメインメモリ３０２内に格納されるデータを示す。メインメモリ３０２内には、画像データ先読み領域３１１が確保されている。また、メインメモリ３０２内には、ズーム・スクロール処理ユニット３０５により生成されるズーム画像を格納するズーム画像ワーク領域２０３、ズーム画像ワーク領域２０４、ＪＰＥＧデコーダ３０４による伸張データを格納するＪＰＥＧ伸張ワーク領域２０５、ＬＣＤ表示用に使用するデータを格納するＬＣＤワーク領域２０６、ＬＣＤワーク領域２０７が用意されている。
【００２１】
図３に記憶装置３１０内に格納されるデータを示す。記憶装置３１０には、ひとつの画像３０００について、２５ｄｐｉ、５０ｄｐｉ、１００ｄｐｉ、２００ｄｐｉの４種類の画像解像度を有する画像データ３００２〜３００５が格納される。またファイル名や属性値などを保存するための管理情報３００１も含まれている。各画像解像度の画像データは３２ピクセル×３２ピクセルのタイルに分割され、各タイルごとにＪＰＥＧ圧縮されて格納されている。この画像データは、例えば複写機であればファイル機能により取り込むことができ、汎用コンピュータであれば、接続されたスキャナデジタルカメラ等の画像入力デバイスから取り込むことができる。ＪＰＥＧ圧縮は、入力デバイスにより施されていても良いし、この画像処理装置により、取り込んだ画像データをＪＰＥＧ圧縮してもよい。
【００２２】
＜画像表示処理＞
図１１は、指定された画像を、指定された画像解像度（すなわちサイズ）で表示するために、ＣＰＵ３０１により実行される処理手順である。この手順は、画像と画像解像度とが指定され、表示実行が指示されると実行される。まず、指定されたサイズに応じた画像解像度の画像データを、記憶装置３１０から読み出して伸張し、メモリ３０２のズーム画像ワーク領域２０３に格納する（ステップＳ１１０１）。ズーム処理のために２種類の画像解像度の画像データが必要であれば、同様にズーム画像ワーク領域２０３に伸張した画像データを格納する。伸長処理には、ＪＰＥＧ伸長ワーク領域２０５が利用される。なお、メモリの余裕があれば、画像全体について画像データを読み出して伸張しても良いが、メモリに余裕がなければ、表示される領域を中心として読み出し、伸張する。
【００２３】
次に読み出された画像データをズーム処理する（ステップＳ１１０２）。従来の技術の欄で説明したように、必要があれば２種類の画像解像度の画像データから指定された画像解像度の画像データを生成する。そして、ＬＣＤディスプレイ３０７の表示能力に応じて、画像データの減色処理、すなわち量子化処理を行う（ステップＳ１１０３）。図８に、画像データのフォーマットの一例を示す。図８の例では、１ワードが４オクテットから構成される場合を例示している。画像データ８０１は、減色処理前の画像データであり、１画素当たりＲＧＢ（赤緑青）各色８ビットの２４ビットからなる。画像データ８９２は減色処理後の画像データであり、１画素は、Ｒが３ビット、Ｇが３ビット、Ｂが２ビットの８ビットから構成されている。減色処理では、たとえば、Ｒ，Ｇについては下５ビットが、Ｂについては下６ビットが切り捨てられて、詰められる。減色された画像データは、メモリ３０２の、未使用のＬＣＤワーク領域（たとえばＬＣＤワーク領域２０６）に格納される。
【００２４】
次に、メインメモリ３０２上のＬＣＤワーク領域２０６から減色された画像データを読み出し、ＬＣＤＣ３０３にその画像データを出力する。ＬＣＤＣ３０３は、画像データに対応する画像をＬＣＤ３０７へ表示する。
【００２５】
＜画像データの先読み処理＞
このように画像を表示した後、処理の合間に図４に示す手順で画像データの先読みが行われる。図１１では、説明の便宜上表示後直ちに先読み処理へ移行するよう記載されている。しかし、マルチタスクオペレーティングシステムが実行されているコンピュータにより本実施形態の画像処理装置を実現する場合には、たとえば、図１１の表示処理のタスクを終了する際に、図４の先読み処理のタスクを、図１１及び図６のズーム処理のタスクよりも低い優先順位でスケジュールする。このようにすることで、表示処理が実行されていないときに、図４の先読み処理が実行される。
【００２６】
図４の処理の流れに従い、本実施形態の画像処理装置による画像データの先読み動作を説明する。先読みは、図１１の手順で、あるいは後述の図６の手順で画像が表示された後に表示される蓋然性が高い画像データを対象とする。したがって、図４では、まず表示される蓋然性の高い画像データを選択し、その後選択された画像データを読み出す。
【００２７】
図１１の手順により、あるいは後述する図６の手順によりＬＣＤ３０７へズーム画像が表示されると、ＣＰＵ３０１は、メインメモリ３０２内のズーム画像ワーク領域内の画像データを対象として、画像内のテキストの認識を行い（ステップＳ４０１）、文字があるか否か判定し（Ｓ４０２）。文字があれば、その文字の大きさを判定する（ステップＳ４０３）。
【００２８】
ＣＰＵ３０１は、文字の大きさから画像表示領域内に一定数の文字を表示するための画像解像度を計算する（ステップＳ４０４）。ここで、表示領域内に、相異なるサイズの複数の文字があった場合、最小のサイズを基準とする。それは、最小サイズの文字を視認しやすいサイズになるまで画像を変倍する操作を操作者が行うであろうことが予想されるからである。また、画像表示領域内に一定数の文字を表示するための画像解像度は、表示媒体（本例ではＬＣＤ３０７）の解像度に応じて予め決定されている。ＬＣＤ３０７の解像度がたとえば１００ｄｐｉであり、操作者が読みやすい文字サイズがたとえば５ミリメートル（１／５インチ）平方程度であるとすれば、一文字のサイズは画素数にして１００／５＝２０画素平方となる。そこで、表示領域内において認識された最小の文字が２０画素平方になるように変倍率を決定する。
【００２９】
これを画像解像度を用いて説明すると、表示されている画像データの画像解像度がＸｄｐｉであり、認識された最小文字のサイズがｘ画素平方であるとする。見やすい文字のサイズがｙ（上記例では２０）画素平方であれば、文字のサイズがｙ画素平方となる画像解像度Ｙは、Ｙ＝Ｘ×（ｙ／ｘ）となる。
【００３０】
ここでＣＰＵ３０１により計算される画像解像度Ｙが１７０ｄｐｉであれば、先読みする対象として２００ｄｐｉと１００ｄｐｉのＪＰＥＧ画像圧縮データが指定される。ＣＰＵ３０１により計算される画像解像度が３０ｄｐｉであれば、５０ｄｐｉと２５ｄｐｉのＪＰＥＧ画像圧縮データが先読みする対象となる。もちろん先読み対象として決定された画像解像度（以下、先読み画像解像度と呼ぶ。）は、メモリ３０２等に格納されて先読み時に参照される。
【００３１】
次に、先読み画像解像度を持つ画像データから先読み対象となるタイルを決定する（ステップＳ４０５）。画像データはタイル単位に圧縮されて格納されているためである。先読み対象の画像タイルは、現在表示されている画像領域を中心に、予想される変倍後の画像を画像表示領域へ表示させるために必要なタイルである。その領域内のタイルについても、左上部のタイルから順に右上部のタイルへ優先付けが行われ、次に１段下のタイルに対し左端から右端へ優先度が付けられ、順次同じ要領で順位が受けられる。順位付けは、左上が高優先度であり、右下へ行くにつれて優先度は下がる。図５に優先順位付けの例を示す。先読み対象の領域５０１内において、タイルごとに優先順位が付される。優先順位は、たとえば先読み対象のタイルのタイル座標をならべた表（以下、先読みタイルテーブルと呼ぶ）で表される。その先読みタイルテーブルは、メモリ３０２に格納される。次に先読みタイルテーブルの作成方法を説明する。
【００３２】
先読み対象の範囲は、画像の表示範囲が一定であるとすれば、現在表示されている画像の範囲と、先読みされる画像データの画像解像度とから決定できる。その際に、たとえば表示領域の中心を基準として先読み範囲を決定する方法、あるいは表示領域の角点（たとえば左上角）を基準として決定する方法などが考えられる。基準とするとは、その点を現在の表示位置から変えない、ということである。たとえば、画像全体について、その左上角を原点として、表示領域の左上角点の座標を（ｘｌ，ｙｌ）、右下角点の座標を（ｘｒ，ｙｒ）とする。表示領域の左上角点を基準とし、変倍率をｎとすれば、変倍後に表示されると想定される範囲は、左上角が（ｘｌ，ｙｌ）、右下角が（ｘｌ＋（ｘｒ−ｘｌ）×ｎ，ｙｌ＋（ｙｒ−ｙｌ）×ｎ）となる。
【００３３】
この座標値を、先読み対象となる画像解像度の画像データにおける画素位置で表し、それを含むタイル座標を算出する。タイル座標は、画像におけるタイルの位置をタイルを単位とした座標で表したものである。また、画素位置で表した画像上の位置は、画像解像度に応じて変わる。たとえば、画像解像度が２００ｄｐｉの画像データにおいて或る位置を画素数の座標で表すと、その位置は、画像解像度が１００ｄｐｉの画像データにおいては、各座標成分を２分の１とすることで表される。画像解像度が５０ｄｐｉであれば、その位置の座標値は２００ｄｐｉにおける画素位置の４分の１で表される。たとえば、２００ｄｐｉの画像データにおける（２００，２００）の位置は、１００ｄｐｉの画像データにおいては（１００，１００）で、５０ｄｐｉの画像データにおいては（５０，５０）で表される。そして、タイルのサイズは画像解像度にかかわらず一定であるので、このように表される位置の各座標成分をタイルサイズ（画素数）で割って得た商がタイル座標の座標成分となる。たとえば、タイルサイズが３２×３２画素であれば、（２００，２００）の画素位置は、タイル座標にして（６，６）の位置にあるタイルに含まれる。こうして、先読み対象となる画像データの左上角のタイルのタイル座標と、右下角のタイル座標とが決定される。この後には、左上角のタイルのタイル座標と、右下角のタイル座標とで決まる矩形領域内のタイルの座標を、左上から右下に順次並べた先読みタイルテーブルを作成し、それをメモリに格納する。先読みタイルテーブルには、優先順に従ってタイル座標が並べられているので、優先順の情報も含まれる。先読みタイルテーブルは実際の先読み時に参照される。
【００３４】
先読み対象となる画像データおよびタイルが決定されると、次にメモリ３０２内の画像データ先読み領域２０１に空きがあるか判定する（ステップＳ４０６）。空きがなければ先読みはしない。そのため、ステップＳ４０６と同じ判定をステップＳ４０１の直前に行い、空きがなければ処理を終えるようにしても良い。
【００３５】
メモリに空きがあれば、ＣＰＵ３０１はＪＰＥＧデコーダ３０４に対し、画像データの先読み動作を行わせる（ステップＳ４０７）。具体的には、メモリ３０２内の画像データ先読み領域２０１に空きがある場合には、ＣＰＵ３０１は、ＪＰＥＧデコーダ３０４に指示を与え、先読み画像解像度の画像データから、先読みタイルテーブルにしたがって優先順位の高いものから、タイル毎にＪＰＥＧ圧縮データを読み出させる。そして、読み出したデータについて、ＪＰＥＧデコーダ３０４によりＪＰＥＧ伸張処理を行わせる。ＪＰＥＧデコーダ３０４で伸張されたデータは画像データ先読み領域２０１へ書き出される。
【００３６】
先読み領域２０１に書き出されたデータは、それがどのようなデータであるのか特定できなければならない。一例として、図１２にその先読みされたデータの形式を示す。伸張された画像データは、タイル単位に管理されており、タイル毎にタイル座標１２０３が付されている。そして、同一画像の同一画像解像度のデータについて、その画像解像度を表す解像度データ１２０２に関連づけられている。このように、タイルが各画像解像度ごとに管理されて、相異なる画像解像度の画像データが、ひとつの画像の画像データファイル名１２０１に関連づけられる。これにより、先読みされたデータが、どの画像の、どの画像解像度の、どの部分のデータであるのか特定できる。もちろん、管理の方法はこれに限らず、たとえば先読みした全タイルをつなげてひとつの領域を生成しそのファイル名と画像解像度、生成した領域を示す情報（矩形領域であれば対角の座標等）により、そのデータを管理することもできる。
【００３７】
ステップＳ４０９で先読みすべきデータがまだあるか判定し、あればステップＳ４０６から繰り返す。
【００３８】
先読み動作は、装置の操作者によるズーム倍率の変更およびスクロール動作といったＬＣＤ３０７へ表示する画像に対しての変更作業が発生しない間、メモリ３０２内の画像データ先読み領域２０１に空きがあり、先読みできるデータが残っている限りＣＰＵ３０１により継続される。
【００３９】
＜ズーム処理＞
次に先読みした画像データを使用したズーム動作を、図６の処理の流れに従い説明していく。
【００４０】
装置の操作者により、ズーム処理が開始されると、ＣＰＵ３０１によりメモリ３０２内の画像データ先読み領域２０１に、必要なデータが先読みされていないかどうか判断をおこなう（ステップＳ６０１）。指定されたズーム倍率で画像の変倍及び表示を行うために必要なデータの画像解像度およびタイルは、図４のステップＳ４０４，Ｓ４０５と同じ要領で決定できる。必要なデータを含むファイル名は、表示対象の画像のファイル名である。そして、図１２に示す構造において、ファイル名１２０１、画像解像度１２０２、タイル座標１２０３を参照して、指定されたズーム倍率で画像の変倍及び表示を行うために必要なデータのファイル名、画像解像度、タイル座標が先読みされたデータに含まれるか判断する。このようにして、ズーム処理によりＬＣＤ３０７に表示するために必要となる部分の画像データが、メモリ３０２内の画像データ先読み領域２０１に格納されている場合は、データが先読みされていると判断される。
【００４１】
装置の操作者により、指定された解像度の画像をＬＣＤ３０７に表示するため、ズーム・スクロール処理ユニット３０５は２種類の解像度のデータを用いる。ＣＰＵ３０１は、２種類の解像度のデータがメモリ３０２内の画像データ先読み領域２０１に格納されている場合と、１種類の解像度のデータのみが格納されている場合で異なる処理を行う。そこで、必要な解像度のデータが揃っているか判定する（ステップＳ６０７）。２種類の解像度のデータがどちらも格納されていない場合には、データが先読みされていないと判断され、ステップＳ６０２に分岐する。なお、本例では、ひとつの画像解像度のデータが先読みされているとは、その画像解像度の必要なデータ全てが先読みされていることを意味する。
【００４２】
ここでは、一例として、操作者により指定された画像解像度が１５０ｄｐｉであるとして説明する。画像解像度が１５０ｄｐｉの画像を生成するためには、画像解像度が１００ｄｐｉと２００ｄｐｉの２種類の画像データが必要になる。メインメモリ３０２内の画像データ先読み領域２０１内に、１００ｄｐｉ、２００ｄｐｉの２種類のデータが格納されている場合、ＣＰＵ３０１はズーム・スクロール処理ユニット３０５に対し、画像データ先読み領域２０１内にある１００ｄｐｉと２００ｄｐｉのデータから１５０ｄｐｉの画像データを生成させる。ズーム・スクロール処理ユニット３０５は、生成した画像データをズーム画像領域２２０４へ書き出し、ズーム後の画像を生成する（ステップＳ６１５）。不要となった先読みされたデータは、先読み領域から削除される（ステップＳ６１６）。
【００４３】
次に、ＣＰＵ３０１は減色処理ユニット３０６に指示を与え、減色処理を実行させる（ステップＳ６１７）。減色処理ユニット３０６はメインメモリ３０２内のズーム画像ワーク領域２２０４から画像を読み出し、減色処理を行った後、メインメモリ３０２内のＬＣＤワーク領域１２０６へデータを書き出し、ＬＣＤ３０７へ表示する画像を生成する（ステップＳ６１８）。なお、１種類のデータのみが必要な場合には、それが先読みされていればステップＳ６１５へと分岐する。
【００４４】
メインメモリ３０２内の画像データ先読み領域２０１内に、いずれか一方のデータのみ、本例では２００ｄｐｉの画像データのみが格納されている場合、ＣＰＵ３０１はＪＰＥＧデコーダ３０４に対し、記憶装置３１０内の１００ｄｐｉのＪＰＥＧ画像圧縮データを読み出させる（ステップＳ６０８）。ＪＰＥＧデコーダ３０４は、１００ｄｐｉのＪＰＥＧ画像圧縮データを伸張し（ステップＳ６１０９）、メインメモリ３０２内に確保されたＪＰＥＧ伸張ワーク領域２０５へデータを書き出す（ステップＳ６１０）。
【００４５】
ＣＰＵ３０１はズーム・スクロール処理ユニット３０５に対し、画像データ先読み領域２０１内の２００ｄｐｉの伸張データと、ＪＰＥＧ伸張ワーク領域２０５内の１００ｄｐｉの伸張データから１５０ｄｐｉの画像を生成させる。ズーム・スクロール処理ユニット３０５は、生成した画像データをズーム画像領域２２０４へ書き出し、ズーム後の画像を生成する（ステップＳ６１１）。不要となった先読みされたデータは、先読み領域から削除される（ステップＳ６１２）
次に、ＣＰＵ３０１は減色処理ユニット３０６に指示を与え、減色処理を実行させる（ステップＳ６１３）。減色処理ユニット３０６はメインメモリ３０２内のズーム画像ワーク領域２２０４から画像を読み出し、減色処理を行った後、メインメモリ３０２内のＬＣＤワーク領域１２０６へデータを書き出し、ＬＣＤ３０７へ表示する画像を生成する（ステップＳ６１４）。ＬＣＤＣ３０３は、メインメモリ３０２上のＬＣＤワーク領域１２０６から減色された画像を読み出し、ＬＣＤ３０７へ表示していく。
【００４６】
メインメモリ３０２内の画像データ先読み領域２０１内に、必要なデータが格納されていない場合は、従来技術と同様の動作となる。記憶装置３１０から必要なＪＰＥＧ圧縮されたデータを読み出し（ステップＳ６０２）、ＪＰＥＧデコーダ３０４でデータを伸張した後（ステップＳ６０３）、ズーム・スクロール処理ユニット３０５で表示する画像を生成し（ステップＳ６０４）、源色して（ステップＳ６０５）、ディスプレイに表示する（ステップＳ６０６）。
【００４７】
［本実施形態の効果］
以上説明したように、操作者は、表示領域内において文字をストレス無く読むことができ、かつ、テキストの内容を判断可能な文字数を表示させる傾向が高い。この傾向を利用し表示領域内に一定の文字数のテキストが収まる解像度（すなわち一定の文字サイズ）を計算し、そのサイズにズーム処理するために必要なデータを先読みするため、先読みしたデータの使用効率が高くなり、高速なズーム動作が可能となる。
【００４８】
［変形例１］
上記実施形態では、表示される蓋然性が高いと考える画像解像度ＹをＹ＝Ｘ×（ｙ／ｘ）として求めている。ｙ＞ｘなら拡大、ｙ＜ｘなら縮小、ｘ＝ｙなら変倍しないこととなる。ここで、画像解像度Ｙを一に定めず、一定の幅を持たせてもよい。すなわち、視認しやすい文字サイズｙとして、ｙ１＜ｙ２のように予め範囲を定めておく。そして、ｘ＜ｙ１であれば、文字をサイズｙ１にすべく画像解像度ＹをＹ＝Ｘ×（ｙ１／ｘ）として求め、ｘ＞ｙ２であれば、文字をサイズｙ２にすべく画像解像度ＹをＹ＝Ｘ×（ｙ２／ｘ）として求める。表示される蓋然性が高いと考える画像解像度Ｙが決定されれば、その他は上記実施形態と同様である。なおｙ１＜ｘ＜ｙ２であれば、現在表示されている画像は、それに含まれる文字は視認しやすいサイズであると判断して先読みをしない。
【００４９】
操作者が視認しやすい文字のサイズには、許容できる範囲があると考えられる。そのため、このように一定の幅をもたせて先読み処理を行わないようにすることで、無駄となる可能性の高い先読み処理を行わずに、他の処理のために資源を利用することができる。
【００５０】
［変形例２］
操作者が画像の変倍を指示する場合、その変倍率を整数倍あるいは整数分の１で指定するユーザインターフェースを有する画像処理装置や画像処理アプリケーションプログラムは多い。そのため、本変形例では、先読みする画像データも、指定される蓋然性の高い変倍率を文字サイズから判断し、該当する画像解像度の画像データを先読みする。
【００５１】
表示されている画像データの画像解像度がＸｄｐｉであり、認識された最小文字のサイズがｘ画素平方であるとする。見やすい文字のサイズがｙ１画素平方＜ｙ２画素平方の範囲にあるとする。ｘ＜ｙ１であれば、変倍率ｎ＝ｒｏｕｎｄｕｐ（ｙ１／ｘ）を求める。ｘ＞ｙ２であれば、変倍率ｎ＝１／（ｒｏｕｎｄｄｏｗｎ（ｘ／ｙ２））を求める。なおｒｏｕｄｕｐ，ｒｏｕｎｄｄｏｗｎはそれぞれ小数部の切り上げ、切り捨てを示す関数である。そして、求めた変倍率ｎが、利用者が当該画像に含まれる文字を読むために指定する蓋然性の高い整数倍、または整数分の１で与えられる変倍率である。そのため、現在表示されている画像をｎ倍に変倍した画像解像度Ｙは、Ｙ＝ｎ×Ｘとなる。そして、画像解像度Ｙの画像データを生成するために必要な画像データが先読みされる。このようにＹの決定の仕方を除き、実施形態の手順と同様である。なおｙ１＜ｘ＜ｙ２であれば、現在表示されている画像は、それに含まれる文字は視認しやすいサイズであると判断して先読みをしない。
【００５２】
以上のようにして、画像の変倍を、変倍率を指定して行うユーザインターフェースを持つ装置であっても、指定される蓋然性の高い変倍率で変倍した画像を生成するために必要な画像データを、予め読んでおくことができ、実際に変倍操作が行われたときの応答性を向上させることができる。
【００５３】
［変形例３］
図６では、必要な解像度のデータが先読みされていると判断されるのは、必要なタイルが全て先読みされている場合としていた。しかし、先読みされていないタイルのみをズーム処理時に読み出せば、先読みしたデータを無駄にすることはない。そこで、図６の手順において、ステップＳ６０８乃至ステップＳ６１４のみを実行する。ただし、ステップＳ６０８において記憶装置から読み出すＪＰＥＧデータは、必要なデータであって、先読みされていないデータである。図６のステップＳ６０１で説明した要領でズーム処理に必要なデータと先読みされているデータとを照合することで、必要なデータであって、先読みされていないデータをタイル単位で決定することができ、決定されたタイルを読むことができる。そしてそれをステップＳ９０９で伸張し、先読み領域に、必要なデータをすべて読み出しておく。こうして必要なデータが全て揃ったなら、ステップＳ６１０以降の処理を行う。
【００５４】
［他の実施形態］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体およびプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００５５】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【００５６】
【図１】本発明の実施形態の構成を表す図
【図２】メモリ内の情報を示す図
【図３】記憶装置内の情報を示す図
【図４】本発明の実施形態の先読み処理の流れを示す図
【図５】本発明の実施形態の先読み処理の優先順位付けを示す図
【図６】本発明の実施形態のスクロール処理の流れを示す図
【図７】スクロール処理の例を示す図
【図８】画像フォーマットを表す図
【図９】従来技術の構成を示す図
【図１０】従来技術の処理の流れを示す図
【図１１】画像表示処理の手順を示す図
【図１２】タイル単位で管理される先読みデータの構造の一例を示す図
【符号の説明】
【００５７】
１０１，３０１…  ＣＰＵ
１０２，３０２…  メインメモリ
１０３，３０３…  ＬＣＤコントローラ
１０４，３０４…  ＪＰＥＧデコーダ
１０５，３０５…  ズーム・スクロール処理ユニット
１０６，３０６…  減色処理ユニット
１０７，３０７…  ＬＣＤ
１０８，３０８…  ＰＣＩコントローラ
１０９，３０９…  ＰＣＩバス
１１０，３１０…  記憶装置
３１１…  先読み領域
２０１…  画像データ先読み領域
２０３…  ズーム画像ワーク領域１
２０４…  ズーム画像ワーク領域２
２０５…  ＪＰＥＧ伸張ワーク領域
２０６…  ＬＣＤワーク領域１
２０７…  ＬＣＤワーク領域２
【図１】
0004743820.tif 000002
【図２】
0004743820.tif 000003
【図３】
0004743820.tif 000004
【図４】
0004743820.tif 000005
【図５】
0004743820.tif 000006
【図６】
0004743820.tif 000007
【図７】
0004743820.tif 000008
【図８】
0004743820.tif 000009
【図９】
0004743820.tif 000010
【図１０】
0004743820.tif 000011
【図１１】
0004743820.tif 000012
【図１２】
0004743820.tif 000013