(57)【要約】【課題】  画像変換処理に必要なメモリ領域の削減を図った画像変換システムを提供する。【解決手段】  画像変換システムは、画像データが展開されるメモリと、前記メモリに展開されている画像データである入力画像データにおける各ラインのアドレスを特定する情報であるラインアドレス情報を取得する、ラインアドレス情報取得手段と、前記ラインアドレス情報取得手段で取得した各ラインのラインアドレス情報をインデックス形式でまとめたインデックスデータを生成する、インデックスデータ生成手段と、前記インデックスデータに基づいて、前記入力画像データの解像度の変換を行い、変換後の画像データを出力画像データとして、前記メモリに格納する、画像変換器と、を備えている。【選択図】  図１８
2006109399.tif 000002
【特許請求の範囲】
【請求項１】
画像データが展開されるメモリと、
前記メモリに展開されている画像データである入力画像データにおける各ラインのアドレスを特定する情報であるラインアドレス情報を取得する、ラインアドレス情報取得手段と、
前記ラインアドレス情報取得手段で取得した各ラインのラインアドレス情報をインデックス形式でまとめたインデックスデータを生成する、インデックスデータ生成手段と、
前記インデックスデータに基づいて、前記入力画像データの解像度の変換を行い、変換後の画像データを出力画像データとして、前記メモリに格納する、画像変換器と、
を備えることを特徴とする画像変換システム。
【請求項２】
前記メモリ上に、１ライン分の帯データを生成する、帯データ生成手段と、
前記帯データの１ライン分のアドレスを特定する情報である帯ラインアドレス情報を取得する、帯ラインアドレス情報取得手段と、
をさらに備えており、
前記入力画像データと前記出力画像データとの縦横比が異なる場合には、前記インデックスデータ生成手段は、前記出力画像データの縦横比に合うように、前記帯ラインアドレス情報を前記インデックスデータに付加する、
ことを特徴とする請求項１に記載の画像変換システム。
【請求項３】
前記帯データ生成手段が生成する前記帯データは、黒の１ライン分のデータである、ことを特徴とする請求項２に記載の画像変換システム。
【請求項４】
前記メモリに展開されている画像データの一部の領域を切り出して、これを入力画像データとする場合には、この切り出す領域を特定する、領域特定手段を、さらに備えており、
前記ラインアドレス情報取得手段は、前記領域特定手段で特定された領域内における各ラインのラインアドレス特定情報を取得する、
ことを特徴とする請求項１乃至請求項３のいずれかに記載の画像変換システム。
【請求項５】
前記出力画像データを格納する前記メモリ上のアドレスを特定する格納アドレス情報を、前記画像変換器に出力する、格納アドレス情報出力手段を、さらに備えており、
前記画像変換器は、この格納アドレス情報に基づいて特定された前記メモリ上のアドレスに、前記出力画像データを格納する、
ことを特徴とする請求項１乃至請求項４のいずれかに記載の画像変換システム。
【請求項６】
前記入力画像データのサイズと前記出力画像データのサイズとを、前記画像変換器に出力する、サイズ出力手段をさらに備えており、
前記画像変換器は、前記入力画像データのサイズと前記出力画像データのサイズに基づいて、前記入力画像データの解像度の変換を行う、ことを特徴とする請求項１乃至請求項５のいずれかに記載の画像変換システム。
【請求項７】
前記ラインアドレス情報は、前記入力画像データの左端のアドレスであり、前記帯ラインアドレス情報は、前記帯データの左端のアドレスである、ことを特徴とする請求項２乃至請求項６のいずれかに記載の画像変換システム。
【請求項８】
前記画像変換器が解像度の変換を行うことのできる前記入力画像データの縦横比は、固定である、ことを特徴とする請求項１乃至請求項７のいずれかに記載の画像変換システム。
【請求項９】
画像データを各ライン毎に前記メモリに展開する、画像データ展開手段であって、１ライン分以上の連続した空き領域が前記メモリ内にあれば、この空き領域に、各ラインの画像データを格納する、画像データ展開手段を、さらに備えることを特徴とする請求項１乃至請求項８のいずれかに記載の画像変換システム。
【請求項１０】
画像データをメモリに展開するステップと、
前記メモリに展開されている画像データである入力画像データにおける各ラインのアドレスを特定する情報であるラインアドレス情報を取得するステップと、
前記取得した各ラインのラインアドレス情報をインデックス形式でまとめたインデックスデータを生成するステップと、
ハードウェアにより構成された画像変換器において、前記インデックスデータに基づいて、前記入力画像データの解像度の変換を行い、変換後の画像データを出力画像データとして、前記メモリに格納するステップと、
を備えることを特徴とする画像変換方法。
【請求項１１】
前記メモリ上に、１ライン分の帯データを生成するステップと、
前記帯データの１ライン分のアドレスを特定する情報である帯ラインアドレス情報を取得するステップと、
前記入力画像データと前記出力画像データとの縦横比が異なる場合には、前記出力画像データの縦横比に合うように、前記帯ラインアドレス情報を前記インデックスデータに付加するステップと、
をさらに備えることを特徴とする請求項１０に記載の画像変換方法。
【請求項１２】
前記帯データを生成するステップでは、黒の１ライン分の帯データを生成する、ことを特徴とする請求項１１に記載の画像変換方法。
【請求項１３】
前記メモリに展開されている画像データの一部の領域を切り出して、これを入力画像データとする場合には、この切り出す領域を特定するステップを、さらに備えており、
前記ラインアドレス情報を取得するステップでは、前記特定された領域内における各ラインのラインアドレス特定情報を取得する、
ことを特徴とする請求項１０乃至請求項１２のいずれかに記載の画像変換方法。
【請求項１４】
前記出力画像データを格納する前記メモリ上のアドレスを特定する格納アドレス情報を、前記画像変換器に出力するステップを、さらに備えており、
前記画像変換器は、この格納アドレス情報に基づいて特定された前記メモリ上のアドレスに、前記出力画像データを格納する、
ことを特徴とする請求項１０乃至請求項１３のいずれかに記載の画像変換方法。
【請求項１５】
前記入力画像データのサイズと前記出力画像データのサイズとを、前記画像変換器に出力するステップを、さらに備えており、
前記画像変換器は、前記入力画像データのサイズと前記出力画像データのサイズに基づいて、前記入力画像データの解像度の変換を行う、ことを特徴とする請求項１０乃至請求項１４のいずれかに記載の画像変換方法。
【請求項１６】
前記ラインアドレス情報は、前記入力画像データの左端のアドレスであり、前記帯ラインアドレス情報は、前記帯データの左端のアドレスである、ことを特徴とする請求項１１乃至請求項１４のいずれかに記載の画像変換方法。
【請求項１７】
前記画像変換器が解像度の変換を行うことのできる前記入力画像データの縦横比は、固定である、ことを特徴とする請求項１０乃至請求項１６のいずれかに記載の画像変換方法。
【請求項１８】
画像データをメモリに展開する前記ステップでは、前記画像データを各ライン毎に前記メモリに展開するとともに、１ライン分以上の連続した空き領域が前記メモリ内にあれば、この空き領域に、各ラインの画像データを格納することを特徴とする請求項１０乃至請求項１７のいずれかに記載の画像変換方法。
【請求項１９】
入力画像データの解像度変換を行うためにハードウェアにより構成された画像変換器を有する情報処理端末で実行されるプログラムであって、
画像データをメモリに展開するステップと、
前記メモリに展開されている画像データを前記入力画像データとして、この入力画像データにおける各ラインのアドレスを特定する情報であるラインアドレス情報を取得するステップと、
前記取得した各ラインのラインアドレス情報をインデックス形式でまとめたインデックスデータを生成するステップと、
を前記情報処理端末に実行させ、
前記画像変換器に、前記インデックスデータに基づいて、前記入力画像データの解像度の変換を行わせて、変換後の画像データを出力画像データとして、前記メモリに格納させる、ことを特徴とするプログラム。
【請求項２０】
入力画像データの解像度変換を行うためにハードウェアにより構成された画像変換器を有する情報処理端末で実行されるプログラムが記録された記録媒体であって、
画像データをメモリに展開するステップと、
前記メモリに展開されている画像データを前記入力画像データとして、この入力画像データにおける各ラインのアドレスを特定する情報であるラインアドレス情報を取得するステップと、
前記取得した各ラインのラインアドレス情報をインデックス形式でまとめたインデックスデータを生成するステップと、
を前記情報処理端末に実行させ、
前記画像変換器に、前記インデックスデータに基づいて、前記入力画像データの解像度の変換を行わせて、変換後の画像データを出力画像データとして、前記メモリに格納させる、ことを特徴とするプログラムが記録された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像変換システムに関し、特に、画像変換処理に必要なメモリ領域の削減を図った画像変換システムに関する。
【背景技術】
【０００２】
デジタルカメラ等の普及により、デジタルの画像データを情報処理端末が扱うケースが多くなってきている。このようなデジタルの画像データを扱う情報処理端末は、ユーザの要求により、或いは、画面に表示させるために、画像データの解像度変換を行い、縮小した画像データや、拡大した画像データを生成することがある。例えば、表示画面が横６４０ピクセル×縦４８０ピクセルの場合、横３０７２ピクセル×縦２３０４ピクセルの画像データは、横６４０ピクセル×縦４８０ピクセルの画像データに変換した上で（サイズを縮小した上で）、表示画面で表示する必要がある。
【０００３】
また、画像データや、表示画面の縦横比には、３：２、１６：９、４：３（いずれも横：縦）などの様々なものが存在する。このため、画像データの縦横比と、表示画面の縦横比が異なる場合には、情報処理端末は、表示画面の縦横比に合うように、画像データの縦横比を変換して、表示画面で表示する必要がある。
【０００４】
より詳しく説明すると、まず、図１は、縦横比が同一のまま、画像データを縮小する場合の画像縮小処理を説明する図である。この図１に示すように、画像データを縮小する場合、情報処理端末は、メモリ１０に画像データＩＭ１を展開しておき、この画像データＩＭ１の入力サイズと、縮小した画像データＩＭ２の出力サイズと、画像データＩＭ１が格納されているメモリ１０内の先頭アドレスと、縮小した画像データを格納するメモリ１０の先頭アドレスとを、画像変換器２０に出力する。これらを取得した画像変換器２０は、指定された先頭アドレスから順次、画像データＩＭ１を取得して、画像の縮小を行い、縮小された画像データを、指定された先頭アドレスに順次格納する。これにより、メモリ１０には、縮小された画像データＩＭ２が格納される。
【０００５】
図２は、縦横比が異なる場合の画像縮小処理を説明する図である。この図２に示すように、情報処理端末は、メモリ１０に画像データＩＭ３を展開しておき、表示画面の縦横比に合うように、この画像データＩＭ３の上下にそれぞれ黒帯データを追加して、メモリ１０上に、画像データＩＭ４を生成する。続いて、情報処理端末は、この画像データＩＭ４の入力サイズと、縮小した画像データＩＭ５の出力サイズと、画像データＩＭ４が格納されているメモリ１０内の先頭アドレスと、画像データＩＭ５を格納するメモリ１０の先頭アドレスとを、画像変換器２０に出力する。これらを取得した画像変換器２０は、指定された先頭アドレスから順次、画像データＩＭ４を取得して、画像の縮小を行い、縮小された画像データを、指定された先頭アドレスに順次格納する。これにより、メモリ１０には、縮小された黒帯付きの画像データＩＭ５が格納される。
【０００６】
図３は、縦横比が同一の場合の画像切り出し処理を説明する図である。この図３に示すように、情報処理端末は、メモリ１０に画像データＩＭ６を展開しておき、ユーザに指定された部分を切り出して、画像データＩＭ７としてメモリ１０に格納する。続いて、情報処理端末は、この画像データＩＭ７の入力サイズと、拡大した画像データＩＭ８の出力サイズと、画像データＩＭ７が格納されているメモリ１０内の先頭アドレスと、画像データＩＭ８を格納するメモリ１０の先頭アドレスとを、画像変換器２０に出力する。これらを取得した画像変換器２０は、指定された先頭アドレスから順次、画像データＩＭ７を取得して、画像の拡大を行い、拡大された画像データを、指定された先頭アドレスに順次格納する。これにより、メモリ１０には、拡大された画像データＩＭ８が格納される。
【０００７】
図４は、縦横比が異なる場合の画像切り出し処理を説明する図である。この図４に示すように、情報処理端末は、メモリ１０に画像データＩＭ９を展開しておき、表示画面の縦横比に合うように、この画像データＩＭ９の上下にそれぞれ黒帯データを追加して、メモリ１０上に、画像データＩＭ１０を生成する。続いて、情報処理端末は、ユーザに指定された部分を切り出して、画像データＩＭ１１としてメモリ１０に格納する。続いて、情報処理端末は、この画像データＩＭ１１の入力サイズと、拡大した画像データＩＭ１２の出力サイズと、画像データＩＭ１１が格納されているメモリ１０内の先頭アドレスと、画像データＩＭ１２を格納するメモリ１０の先頭アドレスとを、画像変換器２０に出力する。これらを取得した画像変換器２０は、指定された先頭アドレスから順次、画像データＩＭ１１を取得して、画像の拡大を行い、拡大された画像データを、指定された先頭アドレスに順次格納する。これにより、メモリ１０には、拡大された画像データＩＭ１２が格納される。
【０００８】
このような画像表示処理は、ＣＰＵ等によりソフトウェアにより実行され、画像を拡大／縮小するための解像度変換は、ハードウェアにより構成された画像変換器により実行されている。また、このような画像変換処理を行うための技術は、例えば、特許文献１（特開２００３−２８３８１５号公報）に開示されている。
【特許文献１】特開２００３−２８３８１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述した画像変換処理においては、メモリ１０の領域が多大に必要となる問題が生じている。すなわち、画像データの縦横比の変換を伴う場合には、画像データの上下に黒帯を付けた画像データＩＭ４、ＩＭ１０をメモリ１０上に一旦形成しなければならず、その分、画像変換処理に必要なメモリ領域が増大していた。また、画像の切り出しを行う場合でも、切り出した画像データＩＭ７をメモリ１０上に一旦形成しなければならず、その分、画像変換処理に必要なメモリ領域が増大していた。
【００１０】
そこで本発明は、前記課題に鑑みてなされたものであり、画像変換処理に必要なメモリ領域の削減を図った画像変換システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明に係る画像変換システムは、
画像データが展開されるメモリと、
前記メモリに展開されている画像データである入力画像データにおける各ラインのアドレスを特定する情報であるラインアドレス情報を取得する、ラインアドレス情報取得手段と、
前記ラインアドレス情報取得手段で取得した各ラインのラインアドレス情報をインデックス形式でまとめたインデックスデータを生成する、インデックスデータ生成手段と、
前記インデックスデータに基づいて、前記入力画像データの解像度の変換を行い、変換後の画像データを出力画像データとして、前記メモリに格納する、画像変換器と、
を備えることを特徴とする。
【００１２】
この場合、前記メモリ上に、１ライン分の帯データを生成する、帯データ生成手段と、
前記帯データの１ライン分のアドレスを特定する情報である帯ラインアドレス情報を取得する、帯ラインアドレス情報取得手段と、
をさらに備えており、
前記入力画像データと前記出力画像データとの縦横比が異なる場合には、前記インデックスデータ生成手段は、前記出力画像データの縦横比に合うように、前記帯ラインアドレス情報を前記インデックスデータに付加するようにしてもよい。
【００１３】
この場合、前記帯データ生成手段が生成する前記帯データは、黒の１ライン分のデータであるようにしてもよい。
【００１４】
また、前記メモリに展開されている画像データの一部の領域を切り出して、これを入力画像データとする場合には、この切り出す領域を特定する、領域特定手段を、さらに備えており、
前記ラインアドレス情報取得手段は、前記領域特定手段で特定された領域内における各ラインのラインアドレス特定情報を取得するようにしてもよい。
【００１５】
また、前記出力画像データを格納する前記メモリ上のアドレスを特定する格納アドレス情報を、前記画像変換器に出力する、格納アドレス情報出力手段を、さらに備えており、
前記画像変換器は、この格納アドレス情報に基づいて特定された前記メモリ上のアドレスに、前記出力画像データを格納するようにしてもよい。
【００１６】
また、前記入力画像データのサイズと前記出力画像データのサイズとを、前記画像変換器に出力する、サイズ出力手段をさらに備えており、
前記画像変換器は、前記入力画像データのサイズと前記出力画像データのサイズに基づいて、前記入力画像データの解像度の変換を行うようにしてもよい。
【００１７】
また、前記ラインアドレス情報は、前記入力画像データの左端のアドレスであり、前記帯ラインアドレス情報は、前記帯データの左端のアドレスであるようにしてもよい。
【００１８】
また、前記画像変換器が解像度の変換を行うことのできる前記入力画像データの縦横比は、固定であるようにしてもよい。
【００１９】
また、画像データを各ライン毎に前記メモリに展開する、画像データ展開手段であって、１ライン分以上の連続した空き領域が前記メモリ内にあれば、この空き領域に、各ラインの画像データを格納する、画像データ展開手段を、さらに備えるようにしてもよい。
【００２０】
なお、本発明は、上述したように画像変換を行う方法としてとらえることもでき、上述したような画像変換を情報処理端末に行わせるためのプログラムとしてとらえることもでき、そのようなプログラムを記録した記録媒体としてとらえることもできる。
【発明を実施するための最良の形態】
【００２１】
〔第１実施形態〕
図５は、本実施形態に係る情報処理端末の構成の一例を説明するブロック図である。この図５に示すように、本実施形態に係る情報処理端末は、ＣＰＵ（Central Processing Unit）１０と、画像変換器１０２と、メモリ１０４と、ハードディスク１０６とを備えており、これらは内部バス１１０を介して相互に接続されている。さらに、本実施形態に係る情報処理端末においては、内部バス１１０にＬＣＤコントローラ１２２も接続されており、このＬＣＤコントローラ１２２に、ＬＣＤ（Liquid Crystal Display）１２０が接続されている。
【００２２】
本実施形態においては、画像変換器１０２はハードウェアにより構成されており、例えばＡＳＩＣ（Application Specific IC）により構成されている。この画像変換器１０２は、入力された画像データの解像度変換を行い、メモリ１０４に出力する機能を有している。また、メモリ１０４はＲＡＭ（Random Access Memory）により構成されている。
【００２３】
なお、本実施形態に係る画像変換器１０２は、解像度変換を行う画像の縦横比が３：２（横：縦）に固定されている。このため、この定められた縦横比と異なる画像の解像度変換をしようとする場合には、画像変換器１０２に画像データを渡す前に、画像の上下に黒帯を付加して、定められた縦横比になるように調整しなければならない。但し、この画像変換器１０２が解像度変換することのできる縦横比は、必ずしも固定でなくても、本発明を実現することはできる。
【００２４】
ハードディスク１０６は、本実施形態における補助記憶装置の一例であり、ＬＣＤ１２０は、本実施形態における表示画面の一例である。本実施形態におけるＬＣＤ１２０は、例えば、横６４０ピクセル×縦４８０ピクセルのサイズで構成されている。
【００２５】
また、この図１に示す情報処理端末は、例えば、ハードディスク１０６に格納されている画像データを、ＬＣＤ１２０で表示することができるフォトビューアという携帯用の情報処理端末を想定しているが、これ以外でも、ディスクトップ型のコンピュータや、ノート型のコンピュータ等であってもよい。
【００２６】
次に、この情報処理端末で実行される画像変換処理について説明する。図６乃至図８は、本実施形態に係る情報処理端末で実行される縦横比が同一の場合の画像縮小処理の内容を説明するための図である。具体的には、図６は、画像縮小処理の全体の流れを説明する図であり、図７は、変換される画像データの一例を示す図であり、図８は、この画像縮小処理で生成されるインデックスデータの一例を示す図である。
【００２７】
図６に示すように、情報処理端末は、元の画像データＩＭ２０をメモリ１０４に展開する。そして、この画像データＩＭ２０に基づいて、図８に示すようなインデックスデータＩＮＤ２０を生成する。すなわち、画像データＩＭ２０における各ラインの左端の画像データが格納されているアドレスを一覧形式でまとめて、インデックスデータＩＮＤ２０を生成する。この例では、図７から分かるように画像データＩＭ２０の第１のラインの左端のアドレスは、「０１０００００」であり、第２のラインの左端のアドレスは、「０１００１００」であり、最後のラインの左端のアドレスは「０１０ＦＦ００」である。したがって、図８のようなインデックスデータＩＮＤ２０が生成されることとなる。
【００２８】
そして、情報処理端末は、このインデックスデータＩＮＤ２０と、画像データＩＭ２０のサイズ（入力サイズ）と、縮小した画像データＩＭ２１のサイズ（出力サイズ）と、縮小した画像データＩＭ２１を格納するメモリ１０４内の先頭アドレスとを、画像変換器１０２に出力する。
【００２９】
これらを取得した画像変換器１０２では、入力サイズと出力サイズとに基づいて、倍率を算出し、また、インデックスデータＩＮＤ２０に基づいて、各ラインの画像データを取得して、縮小した画像データを生成し、指定された先頭アドレスから順次、画像データを格納していく。具体的には、アドレス「０１０００００」から画像データを取得して、算出された倍率で解像度の変換を行って、画像データを縮小する。そして、指定された先頭アドレスに縮小した画像データを格納する。次に、アドレス「０１００００１」から画像データを取得して、算出された倍率で解像度の変換を行って、画像データを縮小する。そして、指定された先頭アドレスの次のアドレスに縮小した画像データを格納する。この処理を１ライン分繰り返し、第１のラインが終了した場合には、第２のラインの左端であるアドレス「０１００１００」からこれと同様の処理を繰り返す。そして、最後のラインまでこの処理を行うことにより、縮小した画像データＩＭ２１が、メモリ１０４内に形成される。
【００３０】
本実施形態では、この画像データＩＭ２１は、ＬＣＤ１２０と同じ６４０×４８０ピクセルになっており、情報処理端末は、この画像データＩＭ２１をＬＣＤ１２０に表示することができる。
【００３１】
次に、図９乃至図１１に基づいて、本実施形態に係る情報処理端末で実行される縦横比が異なる場合の画像縮小処理の内容を説明する。具体的には、図９は、画像縮小処理の全体の流れを説明する図であり、図１０は、変換される画像データの一例を示す図であり、図１１は、この画像縮小処理で生成されるインデックスデータの一例を示す図である。
【００３２】
図９に示すように、情報処理端末は、元の画像データＩＭ３０をメモリ１０４に展開する。そして、画像データＩＭ３０の縦横比をＬＣＤ１２０に合わせるための黒帯の画像データＩＭ３１を１ライン分だけ、メモリ１０４に生成する。
【００３３】
次に、画像データＩＭ３０に基づいて、図１１に示すようなインデックスデータＩＮＤ３０を生成する。すなわち、画像データＩＭ３０における各ラインの左端の画像データが格納されているアドレスと、黒帯の画像データＩＭ３１の左端のアドレスとを一覧形式でまとめて、インデックスデータＩＮＤ３０を生成する。この例では、図１０から分かるように画像データＩＭ３０の第１のラインの左端のアドレスは、「０１０００００」であり、第２のラインの左端のアドレスは、「０１００１００」であり、最後のラインの左端のアドレスは「０１０ＡＦ００」である。
【００３４】
また、黒帯の画像データＩＭ３１の左端のアドレスは、「０２０００００」である。したがって、インデックスデータＩＮＤ３０を生成する際には、図１１に示すように、黒帯を形成するための領域である画像データＩＭ３０の上下には、黒帯の画像データの左端のアドレス「０２０００００」が格納される。
【００３５】
そして、情報処理端末は、このインデックスデータＩＮＤ３０と、画像データＩＭ３０のサイズ（入力サイズ）と、縮小した画像データＩＭ３２のサイズ（出力サイズ）と、縮小した画像データＩＭ３２を格納するメモリ１０４内の先頭アドレスとを、画像変換器１０２に出力する。
【００３６】
これらを取得した画像変換器１０２では、入力サイズと出力サイズとに基づいて、倍率を算出し、また、インデックスデータＩＮＤ３０に基づいて、各ラインの画像データを取得して、縮小した画像データを生成し、指定された先頭アドレスから順次、画像データを格納していく。具体的には、まず、アドレス「０２０００００」から画像データを取得して、算出された倍率で解像度の変換を行って、取得した画像データを縮小する。そして、指定された先頭アドレスに縮小した画像データを格納する。次に、アドレス「０２００００１」から画像データを取得して、算出された倍率で解像度の変換を行って、取得した画像データを縮小する。そして、指定された先頭アドレスの次のアドレスに縮小した画像データを格納する。この処理を１ライン分繰り返し、第１のラインが終了した場合には、第１のラインと同じアドレスである「０２０００００」から、画像データＩＭ３１のデータを取得して、同様の処理を繰り返す。そして、最後のラインまでこの処理を行うことにより、黒帯が付加されて、縮小された画像データＩＭ３２が、メモリ１０４内に形成される。
【００３７】
本実施形態では、この画像データＩＭ３２は、ＬＣＤ１２０と同じ６４０×４８０ピクセルになっており、情報処理端末は、この画像データＩＭ３２をＬＣＤ１２０に表示することができる。
【００３８】
次に、図１２乃至図１４に基づいて、本実施形態に係る情報処理端末で実行される縦横比が同一の場合の画像切り出し処理の内容を説明するための図である。具体的には、図１２は、画像切り出し処理の全体の流れを説明する図であり、図１３は、変換される画像データの一例を示す図であり、図１４は、この画像切り出し処理で生成されるインデックスデータの一例を示す図である。
【００３９】
図１２に示すように、情報処理端末は、元の画像データＩＭ４０をメモリ１０４に展開する。続いて、ユーザに、画像データＩＭ４０から切り出す画像の領域を指定させる。但し、この切り出す画像は、実際に切り出してメモリ１０４に展開し直すのではなく、切り出す領域を特定するだけである。また、ここでは、元の画像データＩＭ４０の縦横比と、切り出す画像の縦横比は、同じであり、これらはＬＣＤ１２０の縦横比と同じである。
【００４０】
次に、この画像データＩＭ４０から切り出した画像データに基づいて、図１４に示すようなインデックスデータＩＮＤ４０を生成する。すなわち、画像データＩＭ４０から切り出す画像データにおける各ラインの左端の画像データが格納されているアドレスを一覧形式でまとめて、インデックスデータＩＮＤ４０を生成する。この例では、図１３から分かるように画像データＩＭ４０から切り出す画像データの第１のラインの左端のアドレスは、「０１００３５０」であり、第２のラインの左端のアドレスは、「０１００４５０」であり、最後のラインの左端のアドレスは「０１０５９５０」である。したがって、図１４のようなインデックスデータＩＮＤ２０が生成されることとなる。
【００４１】
そして、情報処理端末は、このインデックスデータＩＮＤ４０と、画像データＩＭ４０から切り出す画像データのサイズ（入力サイズ）と、拡大した画像データＩＭ４１のサイズ（出力サイズ）と、拡大した画像データＩＭ４１を格納するメモリ１０４内の先頭アドレスとを、画像変換器１０２に出力する。
【００４２】
これらを取得した画像変換器１０２では、入力サイズと出力サイズとに基づいて、倍率を算出し、また、インデックスデータＩＮＤ４０に基づいて、各ラインの画像データを取得して、拡大した画像データを生成し、指定された先頭アドレスから順次、画像データを格納していく。具体的には、アドレス「０１００３５０」から画像データを取得して、算出された倍率で解像度を変換して、取得した画像データを拡大する。そして、指定された先頭アドレスに拡大した画像データを格納する。次に、アドレス「０１００３５１」から画像データを取得して、算出された倍率で解像度を変換して、取得した画像データを拡大する。そして、指定された先頭アドレスの次のアドレスに拡大した画像データを格納する。この処理を１ライン分繰り返し、第１のラインが終了した場合には、第２のラインの左端であるアドレス「０１００４５０」からこれと同様の処理を繰り返す。そして、最後のライン（アドレス「０１０５９５０」のライン）までこの処理を行うことにより、切り出した画像データＩＭ４１が、メモリ１０４内に形成される。
【００４３】
本実施形態では、この画像データＩＭ４１は、ＬＣＤ１２０と同じ６４０×４８０ピクセルになっており、情報処理端末は、この画像データＩＭ４１をＬＣＤ１２０に表示することができる。
【００４４】
次に、図１５乃至図１７に基づいて、本実施形態に係る情報処理端末で実行される縦横比が異なる場合の画像切り出し処理の内容を説明する。具体的には、図１５は、画像切り出し処理の全体の流れを説明する図であり、図１６は、変換される画像データの一例を示す図であり、図１６は、この画像切り出し処理で生成されるインデックスデータの一例を示す図である。
【００４５】
図１５に示すように、情報処理端末は、元の画像データＩＭ５０をメモリ１０４に展開する。そして、画像データＩＭ５０の縦横比をＬＣＤ１２０に合わせるための黒帯の画像データＩＭ５１を１ライン分だけ、メモリ１０４に生成する。続いて、ユーザに、画像データＩＭ５０から切り出す画像の領域を指定させる。但し、この切り出す画像は、実際に切り出してメモリ１０４に展開し直すのではなく、切り出す領域を特定するだけである。また、ここでは、元の画像データＩＭ４０の縦横比と、切り出す画像の縦横比は、同じであるが、これらはＬＣＤ１２０の縦横比と異なる。
【００４６】
次に、画像データＩＭ５０から切り出す画像データに基づいて、図１７に示すようなインデックスデータＩＮＤ５０を生成する。すなわち、画像データＩＭ５０から切り出す画像データにおける各ラインの左端の画像データが格納されているアドレスと、切り出す画像データの幅に対応する黒帯の画像データＩＭ５１の左端のアドレスとを一覧形式でまとめて、インデックスデータＩＮＤ５０を生成する。この例では、図１６から分かるように画像データＩＭ５０から切り出す画像データの第１のラインの左端のアドレスは、「０１０８０３０」であり、第２のラインの左端のアドレスは、「０１０８１３０」であり、最後のラインの左端のアドレスは「０１０Ａ０３０」である。
【００４７】
また、切り出す画像データの幅に対応する黒帯の画像データＩＭ５１の左端のアドレスは、「０２０００３０」である。したがって、インデックスデータＩＮＤ５０を生成する際には、図１７に示すように、黒帯を形成するための領域である画像データＩＭ５０の上下には、黒帯の画像データの左端のアドレス「０２０００３０」が格納される。
【００４８】
そして、情報処理端末は、このインデックスデータＩＮＤ５０と、画像データＩＭ５０から切り出した画像データのサイズ（入力サイズ）と、拡大した画像データＩＭ５２のサイズ（出力サイズ）と、拡大した画像データＩＭ５２を格納するメモリ１０４内の先頭アドレスとを、画像変換器１０２に出力する。
【００４９】
これらを取得した画像変換器１０２では、入力サイズと出力サイズとに基づいて、倍率を算出し、また、インデックスデータＩＮＤ５０に基づいて、各ラインの画像データを取得して、拡大した画像データを生成し、指定された先頭アドレスから順次、画像データを格納していく。具体的には、まず、アドレス「０２０００３０」から画像データを取得して、算出された倍率で解像度の変換を行い、取得した画像データを拡大する。そして、指定された先頭アドレスに拡大した画像データを格納する。次に、アドレス「０２０００３１」から画像データを取得して、算出された倍率で解像度の変換を行って、取得した画像データを拡大する。そして、指定された先頭アドレスの次のアドレスに縮小した画像データを格納する。この処理を１ライン分繰り返し、第１のラインが終了した場合には、第１のラインと同じアドレスである「０２０００３０」から、画像データＩＭ５１のデータを取得して、同様の処理を繰り返す。そして、最後のラインまでこの処理を行うことにより、黒帯が付加されて、拡大された画像データＩＭ５２が、メモリ１０４内に形成される。
【００５０】
本実施形態では、この画像データＩＭ５２は、ＬＣＤ１２０と同じ６４０×４８０ピクセルになっており、情報処理端末は、この画像データＩＭ５２をＬＣＤ１２０に表示することができる。
【００５１】
次に、図１８に基づいて、上述した画像変換処理を用いて画像データを表示する画像表示処理の内容を説明する。この画像表示処理は、例えば、ハードディスク１０６に格納されている画像表示処理プログラムをＣＰＵ１００が読み出して実行することにより、実現される処理である。
【００５２】
この図１８に示すように、情報処理端末は、まず、表示する画像データをメモリ１０４に展開する（ステップＳ１０）。本実施形態においては、メモリ１０４内における１枚分の画像データを格納することができる連続した空き領域に、画像データを展開する。次に、情報処理端末は、画像データの縦横比を変換する必要があるかどうかを判断する（ステップＳ１２）。具体的には、本実施形態のＬＣＤ１２０の縦横比が、４：３（６４０×４８０）であるので、画像データの縦横比が４：３であるかどうかを判断する。
【００５３】
画像データの縦横比を変換する必要がない場合（ステップＳ１２：Ｎｏ）には、情報処理端末は、この画像表示処理が画像切り出し処理を伴うものであるかどうかを判断する（ステップＳ１４）。この画像表示処理が画像切り出し処理を伴うものでない場合（ステップＳ１４：Ｎｏ）には、メモリ１０４に展開されている画像データに基づいて、インデックスデータを生成する（ステップＳ１６）。この処理は、上述した図６乃至図８に対応する処理である。
【００５４】
一方、ステップＳ１４で、この画像表示処理が画像切り出し処理を伴うものであると判断した場合（ステップＳ１４：Ｙｅｓ）には、ユーザが切り出した部分の画像データについて、インデックスデータを生成する（ステップＳ１８）。この処理は、上述した図１２乃至図１４に対応する処理である。
【００５５】
これに対して、上述したステップＳ１２で、画像データの縦横比を変換する必要があると判断した場合（ステップＳ１２：Ｙｅｓ）には、１ライン分の黒帯の画像データをメモリ１０４に生成する（ステップＳ２０）。つまり、画像データの幅と同じ幅の１ライン分の黒データを生成する。
【００５６】
次に、情報処理端末は、この画像表示処理が画像切り出し処理を伴うものであるかどうかを判断する（ステップＳ２２）。この画像表示処理が画像切り出し処理を伴うものでない場合（ステップＳ２２：Ｎｏ）には、メモリ１０４に展開されている画像データと、１ライン分の黒帯の画像データとに基づいて、画像データに黒帯を付加したインデックスデータを生成する（ステップＳ２４）。この処理は、上述した図９乃至図１１に対応する処理である。
【００５７】
一方、ステップＳ２２で、この画像表示処理が画像切り出し処理を伴うものであると判断した場合（ステップＳ２２：Ｙｅｓ）には、ユーザが切り出した部分の画像データと、１ライン分の黒帯の画像データとに基づいて、切り出した部分の画像データに黒帯を付加したインデックスデータを生成する（ステップＳ２６）。この処理は、上述した図１５乃至図１７に対応する処理である。なお、図１６からも分かるように、本実施形態では、黒帯の画像データの左端のアドレスの位置は、切り出す画像データの左端のアドレスの位置と合致するように設定するが、単純に黒帯の画像データそのものの左端に設定しても良い。この場合、図１７に示したインデックスデータＩＮＤ５０における黒帯の画像データのアドレスは「０２０００００」となる。
【００５８】
そして、これらステップＳ１６、ステップＳ１８、ステップＳ２４、又は、ステップＳ２５の処理の後、情報処理端末は、生成したインデックスデータと、画像データの入力サイズと、画像データの出力サイズと、出力画像データを格納するメモリ１０４内の先頭アドレスとを、画像変換器１０２に出力する（ステップＳ２８）。本実施形態においては、この時点で縦横比の変換に必要な処理は行われているので、画像データの入力サイズとして、入力する画像データの幅（或いは高さ）を出力し、画像データの出力サイズとして、出力する画像の幅（あるいは高さ）を出力する。ここでは、ＬＣＤ１２０に画像を表示するための処理を想定しているので、出力サイズは、幅６４０ピクセル（或いは高さ４８０ピクセル）で、固定である。
【００５９】
これにより、画像変換器１０２は画像変換処理を行い、指定された先頭アドレスが、変換処理後の画像データの先頭アドレスになるように、メモリ１０４に画像データを格納するので、情報処理端末はこの先頭アドレスから画像変換後の画像データ（６４０×４８０ピクセルの画像データ）を読み出して、６４０×４８０ピクセルのＬＣＤ１２０に表示する（ステップＳ３０）。これにより、本実施形態に係る画像表示処理が終了する。
【００６０】
次に、上述したハードウェアである画像変換器１０２で実行される画像変換処理について詳しく説明する。この画像変換処理には、様々なものが存在するが、ここでは単純に、画像を縮小する場合には、画像データの値の一部を間引くことにより解像度変換を行い、画像を拡大する場合には、適当な画像データの値を挿入することにより解像度変換を行う手法を説明する。なお、画像変換処理はこれ以外の様々な手法を採用することができる。
【００６１】
図１９は画像を縮小する場合の画像変換処理の内容を説明するための図である。この図１９に示すように、例えば、画像の一辺を１／２に縮小する場合には、出力画像データの座標（０，０）に、入力画像データの座標（０，０）の値を格納し、出力画像データの座標（１，０）に、入力画像データの座標（２，０）の値を格納し、出力画像データの座標（０，１）に、入力画像データの座標（０，２）の値を格納し、出力画像データの座標（１，１）に、入力画像データの座標（２，２）の値を格納する。
【００６２】
図２０は画像を拡大する場合の画像変換処理の内容を説明するための図である。この図２０に示すように、例えば、画像の一辺を２倍に拡大する場合には、出力画像データの座標（０，０）に、入力画像データの座標（０，０）の値を格納し、出力画像データの座標（１，０）に、入力画像データの座標（０，０）の値を格納し、出力画像データの座標（０，１）に、入力画像データの座標（０，０）の値を格納し、出力画像データの座標（１，１）に、入力画像データの座標（０，０）の値を格納する。
【００６３】
同様に、出力画像データの座標（２，０）、（３，０）、（２，１）、（３，１）のそれぞれに、入力画像データの座標（１，０）の値を格納し、出力画像データの座標（０，２）、（１，２）、（０，３）、（１，３）のそれぞれに、入力画像データの座標（０，１）の値を格納し、出力画像データの座標（２，２）、（３，２）、（２，３）、（３，３）のそれぞれに、入力画像データの座標（１，１）の値を格納する。
【００６４】
次に、このような処理を実現するために、画像変換器１０２で実行される処理内容を詳しく説明する。図２１は、上述した画像表示処理を受けて、画像変換器１０２でハードウェアにより実行される画像変換処理の内容を説明するフローチャートを示す図である。
【００６５】
この図２１に示すように、画像変換器１０２は、まず、ステップＳ２８で、ＣＰＵ１００から出力された、画像データの入力サイズと、画像データの出力サイズと、出力画像データを格納するメモリ１０４内の先頭アドレスと、インデックスデータとを受信して、取得する（ステップＳ５０）。
【００６６】
次に、画像変換器１０２は、入力サイズ／出力サイズを倍率αとして、算出する（ステップＳ５２）。続いて、画像変換器１０２は、変数Ｘの初期値を０にし、変数Ｙの初期値も０にする（ステップＳ５４）。
【００６７】
次に、画像変換器１０２は、インデックスデータを参照して、入力画像データの座標（α×Ｘ，α×Ｙ）の値を取得する（ステップＳ５６）。具体的には、画像変換器１０２は、インデックスデータにおける画像データの上端のラインにおける左端の位置を原点（０，０）とし、座標（α×Ｘ，α×Ｙ）の位置の値を取得する。
【００６８】
次に、ステップＳ５８で取得した値を、座標（Ｘ，Ｙ）の出力画像データとして、メモリ１０４に格納する（ステップＳ５８）。具体的には、画像変換器１０２は、出力画像データの先頭アドレスとして指定された位置を原点（０，０）とし、座標（Ｘ、Ｙ）の位置に、取得した値を格納する。
【００６９】
なお、実際には、これらステップＳ５６及びステップＳ５８の処理は、赤（Ｒ）、緑（Ｇ）、青（Ｂ）の各色毎に行われる。なぜなら、これら赤（Ｒ）、緑（Ｇ）、青（Ｂ）の各色毎に値を定めることにより、１つの画素の色が定まるからである。
【００７０】
次に、画像変換器１０２は、Ｘ座標の値が、ラインの右端に達しているかどうかを判断する（ステップＳ６０）。ここでは、ラインの右端の位置は、出力画像データの幅が６４０ピクセルであるので、Ｘ座標としては、６３９ピクセルの位置である。Ｘ座標の値がラインの右端に達していない場合（ステップＳ６０：Ｎｏ）には、Ｘに１を加えて（ステップＳ６２）、上述したステップＳ５６からを繰り返す。
【００７１】
一方、Ｘ座標の値がラインの右端に達している場合（ステップＳ６０：Ｙｅｓ）には、Ｙ座標の値が最後のライン（下端のライン）に達しているかどうかを判断する（ステップＳ６４）。ここでは、最後のラインの位置は、出力画像データの高さが４８０ピクセルであるので、Ｙ座標としては４７９ピクセルの位置である。Ｙ座標の値が最後のラインに達していない場合（ステップＳ６４：Ｎｏ）には、Ｘの値を０に戻し（ステップＳ６６）、Ｙの値に１を加えた後（ステップＳ６８）、上述したステップＳ５６からを繰り返す。
【００７２】
以上のように、本実施形態に係る情報処理端末によれば、画像表示処理において、切り出した画像データを一旦メモリ１０４に展開する必要がなくなり、また、黒帯データを付加した画像データを一旦メモリ１０４に展開する必要がなくなるので、画像表示処理において使用されるメモリ１０４の領域を削減することができる。
【００７３】
また、本実施形態に係る情報処理端末によれば、画像表示処理に必要なＣＰＵ１００の処理負荷を軽減することができ、処理の高速化を図ることができる。例えば、３０７２×２０４８ピクセルの画像データを、６４０×４８０ピクセルのＬＣＤ１２０に画像データを表示する場合を想定する。この場合、従来の手法では、次のような処理が発生する。
（Ａ１）３０７２×２０４８ピクセルの画像データを読み込んで、メモリ１０４に展開する。
（Ａ２）３０７２×２０４８ピクセルの画像データを、メモリ１０４上の別の領域にコピーする。
（Ａ３）コピーした画像データに、３０７２×２５６ピクセルの黒帯データを付加して、３０７２×２３０４ピクセルの画像データにする。つまり、上下に１２８ラインの黒帯データを付加する。
（Ａ４）この黒帯を付加した３０７２×２３０４ピクセルの画像データを、６４０×４８０ピクセルの画像データに、画像変換器が変換する。
【００７４】
これに対して、本実施形態では、次のような処理しか発生しない。
（Ｂ１）３０７２×２０４８ピクセルの画像データを読み込んで、メモリ１０４に展開する。
（Ｂ２）３０７２×１ピクセルの黒帯のデータを、メモリ１０４上に生成する。
（Ｂ３）２３０４ライン分のインデックスデータを生成する。
（Ｂ４）２３０４ライン分のインデックスデータに基づいて、６４０×４８０ピクセルの画像データを、画像変換器が生成する。
【００７５】
このことから分かるように、本実施形態によれば、大量の画像データをコピーしたり、生成したりする（Ａ２）、（Ａ３）の処理が発生しないので、その分、ＣＰＵ１００の処理負荷を軽減することができる。
【００７６】
〔第２実施形態〕
上述した第１実施形態では、画像データＩＭ２０、ＩＭ３０、ＩＭ４０、ＩＭ５０をメモリ１０４の連続した領域に格納することとしている。すなわち、上述した第１実施形態では、画像データＩＭ２０、ＩＭ３０、ＩＭ４０、ＩＭ５０をメモリ１０４の連続した領域に展開しなければならないという制約があり、メモリ１０４上に大きな空き領域を確保する必要がある。しかし、通常よく用いられているメモリ管理手法では、メモリ１０４に小さい空き領域が飛び飛びに発生しやすい傾向があり、上述した第１実施形態に係る情報処理端末では、メモリ１０４のメモリ領域を有効に活用することが困難なことも想定される。
【００７７】
そこで、第２実施形態では、メモリ１０４上で飛び飛びに発生した空き領域を有効に活用して、画像データＩＭ２０、ＩＭ３０、ＩＭ４０、ＩＭ５０をメモリ１０４に展開することができるようにしたものである。すなわち、１ライン分の画像データを格納できる連続した領域さえあれば、この領域に１ライン分の画像データを格納し、その画像データを格納したアドレスについてインデックスデータを用いて管理するようにしたものである。以下、上述した第１実施形態と異なる部分のみを説明する。
【００７８】
図２２は、本実施形態に係る画像表示処理の内容を説明するフローチャートを示す図であり、上述した第１実施形態における図１８に対応する図である。
【００７９】
この図２２に示すように、本実施形態に係る情報処理端末は、ステップＳ２１０において、画像データをメモリに展開する際には、メモリ１０４上の飛び飛びの領域も有効に活用して、画像データを展開する。具体的には、１ライン以上の画像データを格納できる連続した空き領域をメモリ１０４上から見つけ出し、この空き領域に画像データを各ライン毎に飛び飛びで格納していく。そして、画像データをメモリ１０４上に格納する際には、その格納したアドレスを各ライン毎に、オリジナルインデックスデータとして格納して、管理できるようにしておく。
【００８０】
図２３は、この際に生成されるオリジナルインデックスデータＩＮＤ２００の構成の一例を示す図であり、図２４は、メモリ１０４内のメモリ領域配置と画像縮小処理の全体の流れを説明する図であり、図２５は、メモリ１０４に展開される画像データＩＭ２０を示す図である。本実施形態においては、このオリジナルインデックスデータＩＮＤ２００も、メモリ１０４上に生成され格納される。
【００８１】
これら図２３乃至図２６の例では、最初の１ライン目の画像データがアドレス「００８００００」から始まる連続した領域に格納されている。続く２ライン目からの画像データは、アドレス「０１００１００」からアドレス「０１０ＦＤ００」の連続した領域に格納されている。そして、最後から２番目のラインの画像データは、アドレス「０１２００００」から始まる連続した領域に格納されており、最後のラインの画像データは、アドレス「０１２０１００」から始まる連続した領域に格納されている。このように、１ライン分の空き領域があれば、それが飛び飛びであっても有効に活用して、画像データを展開するのである。
【００８２】
そして、図２２に示すように、情報処理端末は、縦横比の変換が必要でなく、画像切り出し処理も必要でない場合（ステップＳ１２：Ｎｏ、ステップＳ１４：Ｎｏ）には、ステップＳ２１６において、画像データのインデックスデータを生成する。
【００８３】
図２６は、ステップＳ２１６で生成されるインデックスデータＩＮＤ２２０の一例を示す図である。この図２６から分かるように、ステップＳ２１６で生成されるインデックスデータ２２０は、ステップＳ２１０で生成したオリジナルインデックスデータＩＮＤ２００と同じである。このため、本実施形態においては、メモリ１０４上に格納されているオリジナルインデックスデータＩＮＤ２００を、そのまま、インデックスデータＩＮＤ２２０として用いることにしている。
【００８４】
一方、縦横比の変換が必要であり、画像切り出し処理は必要でない場合（ステップＳ１２：Ｙｅｓ、ステップＳ２２：Ｎｏ）には、情報処理端末は、ステップＳ２２４において、画像データのインデックスデータを生成する。
【００８５】
図２７は、メモリ１０４内のメモリ領域配置の一例と画像縮小処理の全体の流れを説明する図であり、図２８は、メモリ１０４に展開される画像データＩＭ３０の一例を示す図であり、図２９は、ステップＳ２２４で生成されるインデックスデータＩＮＤ２３０の一例を示す図である。
【００８６】
これら図２７乃至図２９に示すように、画像データＩＭ３０が飛び飛びの領域を有効に活用してメモリ１０４上に展開されており、この画像データＩＭ３０のオリジナルインデックスデータＩＮＤ３００もメモリ１０４上に格納されている。ステップＳ２２４においては、画像変換器１０２に出力する画像データの横と縦の比を３：２にするために、黒帯の画像データＩＭ３１を付加して、インデックスデータＩＮＤ２３０を生成する。具体的には、オリジナルインデックスデータＩＮＤ３００の上下に、黒帯の画像データＩＭ３１のアドレス「０２０００００」を付加したインデックスデータＩＮＤ２３０を生成する。
【００８７】
一方、縦横比の変換が必要でなく、画像切り出し処理は必要である場合（ステップＳ１２：Ｎｏ、ステップＳ１４：Ｙｅｓ）には、情報処理端末は、ステップＳ２１８において、画像データのインデックスデータを生成する。
【００８８】
図３０は、メモリ１０４内のメモリ領域配置の一例と画像切り出し処理の全体の流れを説明する図であり、図３１は、メモリ１０４に展開される画像データＩＭ４０の一例を示す図であり、図３２は、ステップＳ２１８で生成されるインデックスデータＩＮＤ２４０の一例を示す図である。
【００８９】
これら図３０乃至図３２に示すように、画像データＩＭ４０が飛び飛びの領域を有効に活用してメモリ１０４上に展開されており、この画像データＩＭ４０のオリジナルインデックスデータＩＮＤ４００もメモリ１０４上に格納されている。ステップＳ２１８においては、ユーザが切り出した部分の画像データについて、インデックスデータＩＮＤ２４０を生成する。この例においては、ユーザが切り出した部分の画像データは、オリジナルインデックスデータＩＮＤ４００を参照すると、アドレス「０１００３５０」〜アドレス「０１０５７５０」から始まる領域の部分と、アドレス「０１１００５０」及びアドレス「０１１０１５０」から始まる領域の部分であるので、これらのアドレスに基づいて、インデックスデータＩＮＤ２４０を生成する。
【００９０】
一方、縦横比の変換が必要であり、画像切り出し処理も必要である場合（ステップＳ１２：Ｙｅｓ、ステップＳ２２：Ｙｅｓ）には、情報処理端末は、ステップＳ２２６において、画像データのインデックスデータを生成する。
【００９１】
図３３は、メモリ１０４内のメモリ領域配置の一例と画像切り出し処理の全体の流れを説明する図であり、図３４は、メモリ１０４に展開される画像データＩＭ５０の一例を示す図であり、図３５は、ステップＳ２２６で生成されるインデックスデータＩＮＤ２５０の一例を示す図である。
【００９２】
これら図３３乃至図３５に示すように、画像データＩＭ５０が飛び飛びの領域を有効に活用してメモリ１０４上に展開されており、この画像データＩＭ５０のオリジナルインデックスデータＩＮＤ５００もメモリ１０４上に格納されている。ステップＳ２２６においては、画像変換器１０２に出力する画像データの横と縦の比を３：２にするために、ユーザが切り出した部分の画像データに、黒帯の画像データＩＭ５１を付加して、インデックスデータＩＮＤ２５０を生成する。この例においては、ユーザが切り出した部分の画像データは、オリジナルインデックスデータＩＮＤ５００を参照すると、アドレス「０１０８３０」〜アドレス「０１０８Ａ３０」から始まる領域の部分と、アドレス「０１２００３０」〜アドレス「０１２０Ａ３０」から始まる領域の部分であるので、これらのアドレスの上下に、黒帯の画像データＩＭ５１のアドレス「０２０００３０」を付加することにより、インデックスデータＩＮＤ２５０を生成する。
【００９３】
そして、上述した第１実施形態と同様に、これらステップＳ２１６、ステップＳ２１８、ステップＳ２２４、又は、ステップＳ２２６で生成したインデックスデータＩＮＤ２２０、ＩＮＤ２３０、ＩＮＤ２４０、ＩＮＤ２５０を、画像データの入力サイズと、画像データの出力サイズと、出力画像データを格納するメモリ１０４内の先頭アドレスとともに、画像変換器１０２に出力する（ステップＳ２８）。
【００９４】
この図２２に示した画像表示処理を受けて、画像変換器１０２で実行される画像変換処理は、上述した第１実施形態における図２１と同様である。
【００９５】
以上のように、本実施形態に係る情報処理端末によれば、元の画像データをメモリ１０４に展開する際に、１ライン分以上の画像データを格納できる空き領域があれば、この領域を有効に活用して、元の画像データを格納することができる。このため、メモリ１０４に形成されてしまう小さい空き領域でも、画像データを構成する各ラインのデータを格納することができるようになり、メモリ１０４の空き領域の有効活用が可能となる。換言すれば、元の画像データをメモリ１０４に展開する際に、各ラインの左端のアドレスをインデックスとして保持しているオリジナルインデックスデータを生成することにより、各ラインの画像データの格納場所を自由にすることができる。しかも、格納領域の順序も自由であるので、実際の画像の各ラインにおける上下の位置関係と、メモリ１０４上における各ラインの格納位置（アドレス）の上下関係とが、入れ替わっていても問題がなくなる。したがって、極めて自由度の高い画像データのメモリ展開を実現することができる。
【００９６】
なお、本発明は上記実施形態に限定されず種々に変形可能である。例えば、上述した実施形態では、ＣＰＵ１００により実行される画像表示処理と、画像変換器１０２と、メモリ１０４とにより、１つの画像変換システムを構成したが、これとは異なる構成で同様の処理を実現するようにしてもよい。例えば、上述した画像変換器１０２をハードウェアではなく、ソフトウェアとＣＰＵにより構成するようにしてもよい。すなわち、ＣＰＵが所定のプログラムを読み込んで、画像変換器１０２と同等の処理を実現するようにしてもよい。但し、上述した実施形態のように、画像変換処理をハードウェアである画像変換器１０２により実現し、それ以外の処理をソフトウェアにより実現した方が、ソフトウェアの処理負荷が軽くなるので、処理全体の高速化を図ることができる。
【００９７】
また、上述した実施形態では、入力画像データの各ラインを特定する情報であるラインアドレス情報として、各ラインの左端のアドレスを用いたが、これに限るものではない。例えば、各ラインの右端や中心のアドレスを用いてもよいし、これ以外の方法で特定するようにしてもよい。
【００９８】
同様に、１ライン分の黒帯データのラインを特定する情報である黒帯ラインアドレス情報として、黒帯データの左端のアドレスを用いたが、これに限るものではない。例えば、黒帯データの右端や中心のアドレスを用いてもよいし、これ以外の方法で特定するようにしてもよい。
【００９９】
また、上述した実施形態では、画像表示処理において、画像変換処理をする場合を説明したが、画像変換処理が必要な他の処理においても、本発明を適用することができる。さらには、例えば、プリンタなどの画像出力装置に本発明を適用してもよい。この場合、帯データとしては、黒帯データではなく、印刷用紙の色に合わせて白帯データを用いることとなる。すなわち、帯データの色は、画像データが出力される背景の色やユーザの好みなどに応じて、任意に選択することができる。
【０１００】
また、上述の実施形態で説明した画像表示処理については、この画像表示処理を実行するためのプログラムをフレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）、ＲＯＭ、メモリカード等の記録媒体に記録して、記録媒体の形で頒布することが可能である。この場合、この記録媒体に記録された画像表示のプログラムを情報処理端末に読み込ませ、実行させることにより、上述した実施形態を実現することができる。
【０１０１】
また、情報処理端末は、オペレーティングシステムや別のアプリケーションプログラム等の他のプログラムを備える場合がある。この場合、情報処理端末の備える他のプログラムを活用し、記録媒体には、その情報処理端末が備えるプログラムの中から、上述した実施形態と同等の処理を実現するプログラムを呼び出すような命令を記録するようにしてもよい。
【０１０２】
さらに、このようなプログラムは、記録媒体の形ではなく、ネットワークを通じて搬送波として頒布することも可能である。ネットワーク上を搬送波の形で伝送されたプログラムは、情報処理端末に取り込まれて、このプログラムを実行することにより上述した実施形態を実現することができる。
【０１０３】
また、記録媒体にプログラムを記録する際や、ネットワーク上を搬送波として伝送される際に、プログラムの暗号化や圧縮化がなされている場合がある。この場合には、これら記録媒体や搬送波からプログラムを読み込んだ情報処理端末は、そのプログラムの復号や伸張化を行った上で、実行する必要がある。
【図面の簡単な説明】
【０１０４】
【図１】従来の画像変換処理を説明するための図（縦横比不変、画像データ縮小）。
【図２】従来の画像変換処理を説明するための図（縦横比変換、画像データ縮小）。
【図３】従来の画像変換処理を説明するための図（縦横比不変、画像データ切り出し）。
【図４】従来の画像変換処理を説明するための図（縦横比変換、画像データ切り出し）。
【図５】第１実施形態に係る情報処理端末の構成を説明するブロック図。
【図６】第１実施形態に係る画像変換処理を説明するための図（縦横比不変、画像データ縮小）。
【図７】図６の画像変換処理で処理される画像データの一例を示す図。
【図８】図６の画像変換処理で生成されるインデックスデータの一例を示す図。
【図９】第１実施形態に係る画像変換処理を説明するための図（縦横比変換、画像データ縮小）。
【図１０】図９の画像変換処理で処理される画像データの一例を示す図。
【図１１】図９の画像変換処理で生成されるインデックスデータの一例を示す図。
【図１２】第１実施形態に係る画像変換処理を説明するための図（縦横比不変、画像データ切り出し）。
【図１３】図１２の画像変換処理で処理される画像データの一例を示す図。
【図１４】図１２の画像変換処理で生成されるインデックスデータの一例を示す図。
【図１５】第１実施形態に係る画像変換処理を説明するための図（縦横比変換、画像データ切り出し）。
【図１６】図１５の画像変換処理で処理される画像データの一例を示す図。
【図１７】図１５の画像変換処理で生成されるインデックスデータの一例を示す図。
【図１８】第１実施形態に係る情報処理端末で実行される画像表示処理の内容を説明するフローチャートを示す図。
【図１９】第１実施形態に係る画像変換器で実行される画像変換処理の一例を説明する図（画像データ縮小）。
【図２０】第１実施形態に係る画像変換器で実行される画像変換処理の一例を説明する図（画像データ拡大）。
【図２１】第１実施形態に係る画像変換器で実行される画像変換処理の内容を説明するフローチャートを示す図。
【図２２】第２実施形態に係る情報処理端末で実行される画像表示処理の内容を説明するフローチャートを示す図。
【図２３】図２５に示す画像データをメモリに展開した場合におけるオリジナルインデックスデータの構成の一例を示す図。
【図２４】図２５に示す画像データについての画像変換処理の一例を説明するための図（縦横比不変、画像データ縮小）。
【図２５】図２４の画像変換処理で処理される画像データの一例を示す図。
【図２６】図２４の画像変換処理で生成されるインデックスデータの一例を示す図。
【図２７】図２８に示す画像データについての画像変換処理の一例を説明するための図（縦横比変換、画像データ縮小）。
【図２８】図２７の画像変換処理で処理される画像データの一例を示す図。
【図２９】図２７の画像変換処理で生成されるインデックスデータの一例を示す図。
【図３０】図３１に示す画像データについての画像変換処理の一例を説明するための図（縦横比不変、画像データ切り出し）。
【図３１】図３０の画像変換処理で処理される画像データの一例を示す図。
【図３２】図３０の画像変換処理で生成されるインデックスデータの一例を示す図。
【図３３】図３４に示す画像データについての画像変換処理の一例を説明するための図（縦横比変換、画像データ切り出し）。
【図３４】図３３の画像変換処理で処理される画像データの一例を示す図。
【図３５】図３３の画像変換処理で生成されるインデックスデータの一例を示す図。
【符号の説明】
【０１０５】
１００  ＣＰＵ
１０２  画像変換器
１０４  メモリ
１０６  ハードディスク
１１０  内部バス
１２０  ＬＣＤ
１２２  ＬＣＤコントローラ
【図１】
2006109399.tif 000003
【図２】
2006109399.tif 000004
【図３】
2006109399.tif 000005
【図４】
2006109399.tif 000006
【図５】
2006109399.tif 000007
【図６】
2006109399.tif 000008
【図７】
2006109399.tif 000009
【図８】
2006109399.tif 000010
【図９】
2006109399.tif 000011
【図１０】
2006109399.tif 000012
【図１１】
2006109399.tif 000013
【図１２】
2006109399.tif 000014
【図１３】
2006109399.tif 000015
【図１４】
2006109399.tif 000016
【図１５】
2006109399.tif 000017
【図１６】
2006109399.tif 000018
【図１７】
2006109399.tif 000019
【図１８】
2006109399.tif 000020
【図１９】
2006109399.tif 000021
【図２０】
2006109399.tif 000022
【図２１】
2006109399.tif 000023
【図２２】
2006109399.tif 000024
【図２３】
2006109399.tif 000025
【図２４】
2006109399.tif 000026
【図２５】
2006109399.tif 000027
【図２６】
2006109399.tif 000028
【図２７】
2006109399.tif 000029
【図２８】
2006109399.tif 000030
【図２９】
2006109399.tif 000031
【図３０】
2006109399.tif 000032
【図３１】
2006109399.tif 000033
【図３２】
2006109399.tif 000034
【図３３】
2006109399.tif 000035
【図３４】
2006109399.tif 000036
【図３５】
2006109399.tif 000037