(57)【要約】【課題】演算量を少なくし、高速処理を行うデジタル画像の任意倍率の拡大縮小方法を提供する。【解決手段】変換画像の注目画素の座標値に対応する原画素の整数座標値及び実数座標値を算出し、それぞれの座標値に対してシフト演算により算出するシフト整数座標演算ステップと、前記シフト整数座標演算ステップにより算出された座標値から整数化した重み係数を算出する重み係数算出ステップと、前記実数座標値の近傍の前記整数座標値の画素値と、前記整数化した重み係数とから前記注目画素の画素値を算出する重み付け平均画素値を算出するステップと、を設け、前記重み係数算出ステップ及び前記重み付け平均画素値を算出するステップは、全て整数演算に行う。【選択図】図６
2009038632.tif 000002
【特許請求の範囲】
【請求項１】
任意のピクセル数を有する原画像と変換画像間において、変換画像の四隅の座標値を原画像の四隅の座標値に対応させて拡大縮小を行う拡大縮小方法であって、
変換画像の注目画素に対応する原画素の座標値を整数演算により算出する整数演算ステップと、
前記算出された前記座標値の画素値から前記注目画素の画素値とするステップと、を設け、
前記整数演算ステップによって、算出された前記原画素の座標値は、前記変換画像の注目画素から最も近い距離の原画素の座標値であることを特徴とする任意倍率拡大縮小方法。
【請求項２】
任意のピクセル数を有する原画像と変換画像間において、変換画像の四隅の座標値を原画像の四隅の座標値に対応させて拡大縮小を行う拡大縮小方法であって、
変換画像の注目画素の座標値に対応する原画素の整数座標値及び実数座標値を算出し、それぞれの座標値に対してシフト演算により算出するシフト整数座標演算ステップと、
前記シフト整数座標演算ステップにより算出された座標値から整数化した重み係数を算出する重み係数算出ステップと、
前記実数座標値の近傍の前記整数座標値の画素値と、前記整数化した重み係数とから前記注目画素の画素値を算出する重み付け平均画素値を算出するステップと、を設け、
前記重み係数算出ステップ及び前記重み付け平均画素値を算出するステップは、全て整数演算に行うことを特徴とする任意倍率拡大縮小方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主に表示、再符号化などで使われるデジタル画像等の任意倍率拡大縮小方法に関する。
【背景技術】
【０００２】
近年、ハードディスクレコーダーやデジタル放送用ＴＶなどの普及により、家庭の情報機器において、デジタル動画像を扱うことが当然となってきているが、携帯電話や携帯ミュージックプレイヤーなどのモバイル機器においても、デジタル動画像を扱う機種が増えてきている。
【０００３】
また、企業で主に使われているＴＶ会議システムや携帯電話などのＴＶ電話においても、当然ながら、デジタル動画像の送受信が行われている。
【０００４】
このように、動画像は多種の情報機器で扱われているが、カメラやディスプレイのサイズや解像度にはさまざまなものがあること、規格が乱立していることなどから、動画像符号化されている画像サイズのフォーマットにはさまざまなものがある。
【０００５】
そのため、ある機器で最適な動画像を他の機器で再生する場合、他の機器毎に最適な表示の変換や再符号化などが行われている。例えば、家庭用のＴＶで最適なパラメータ（画像サイズ、ビットレート、フレームレートなど）であっても、モバイル機器では、メモリ容量が小さく、ディスプレイも小さく、ＣＰＵなどの処理速度も遅いため、これらのパラメータを変換する必要がある。
【０００６】
これらのパラメータのなかでも、ディプレイサイズは、機器間で必ずといっていいほど異なるため、再符号化する場合においても、また、表示の際に変換する場合においても、画像サイズの変換（拡大・縮小処理）は、必須のものとなっている。
【０００７】
従来、画像の任意サイズの拡大縮小法として、いくつか提案されており、例えば、ニアレストネイバー法、線形補間法等が挙げられる。
【０００８】
ニアリストネイバー法は、画像拡大した場合、画素数が増えるが、増えた画素値として、元からある画素のうち、物理的に距離が一番近い画素の値をそのまま使用するものである。
【０００９】
また、線形補間法とは、増えた画素の値として、上下左右の原画素値を用いて、距離に応じた重み付け平均を取ったものを使用する方法であり、この方法をベースにした技術が、下記の特許文献１に公開されている。
【特許文献１】特開平１１−２９８７２７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記記載のニアリストネイバー法や他の線形補間法を適用した従来技術では、演算処理が非常に重く、処理速度を重要視する場合には、その能力を発揮できない欠点がある。また、上記ニアリストネイバー法の場合は、変換画素が一番近い距離の画素に対応できない恐れもある。
【００１１】
さらに、演算処理が複雑であることによって、装置規模が増大したり、高コストとなったりする問題点もある。
【００１２】
そこで、本発明は、斯かる実情に鑑みて提案されたもので、演算量を少なくし、高速処理を行うデジタル画像の任意倍率の拡大縮小方法を提供しようとするものである。
【課題を解決するための手段】
【００１３】
本発明に係る任意倍率拡大縮小方法は、上記目的を達成するために、以下のような特徴を備えている。
【００１４】
本発明に係る任意倍率拡大縮小方法は、任意のピクセル数を有する原画像と変換画像間において、変換画像の四隅の座標値を原画像の四隅の座標値に対応させて拡大縮小を行う拡大縮小方法であって、変換画像の注目画素に対応する原画素の座標値を整数演算により算出する整数演算ステップと、前記算出された前記座標値の画素値から前記注目画素の画素値とするステップと、を設け、前記整数演算ステップによって、算出された前記原画素の座標値は、前記変換画像の注目画素から最も近い距離の原画素の座標値であることを特徴とする。
【００１５】
本発明に係る任意倍率拡大縮小方法は、任意のピクセル数を有する原画像と変換画像間において、変換画像の四隅の座標値を原画像の四隅の座標値に対応させて拡大縮小を行う拡大縮小方法であって、変換画像の注目画素の座標値に対応する原画素の整数座標値及び実数座標値を算出し、それぞれの座標値に対してシフト演算により算出するシフト整数座標演算ステップと、前記シフト整数座標演算ステップにより算出された座標値から整数化した重み係数を算出する重み係数算出ステップと、前記実数座標値の近傍の前記整数座標値の画素値と、前記整数化した重み係数とから前記注目画素の画素値を算出する重み付け平均画素値を算出するステップと、を設け、前記重み係数算出ステップ及び前記重み付け平均画素値を算出するステップは、全て整数演算に行うことを特徴とする。
【発明の効果】
【００１６】
上記構成された本発明の任意倍率拡大縮小方法によれば、原画像と変換画像の四隅の４点を対応させ、変換画像を原画像に投影した整数座標に、シフト演算による近似演算により、演算量を少なくし、高速に変換画像を生成することができる。
【００１７】
また、演算処理を簡易化することによって、装置規模が増大や高コストとなったりすることを防止することが可能である。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施形態について図面を参照して説明する。
図１〜図５は、本発明の実施形態の一例であって、図中、同一の符号を付した部分は同一物を表わす。
【００１９】
＜第１の実施形態の説明＞
本実施形態に係る任意倍率拡大縮小方法は、ニアリストネイバー法を適用したものであるが、本実施形態に係る任意倍率拡大縮小方法の基本の概念について、まず、説明する。
【００２０】
図１は、変換画像における任意の変換画素の座標と、この座標に対応する原画素の座標との関係を説明する図である。
【００２１】
図１に示すように、原画像１０の幅をＳｗｉｄｔｈ、高さをＳｈｅｉｇｈｔ、変換画像１１の幅をＤｗｉｄｔｈ、高さをＤｈｅｉｇｈｔとする。これらの幅と高さの単位はピクセル数である。
【００２２】
従って、原画像１０の座標の範囲は（０、０）から（Ｓｗｉｄｔｈ−１、Ｓｈｅｉｇｈｔ−１）であり、変換画像１１の座標の範囲は（０、０）から（Ｄｗｉｄｔｈ−１、Ｄｈｅｉｇｈｔ−１）までであるから、変換画像１１の注目画素のｘ座標をｊｄ、その対応する原画像１０の注目画素のｘ座標をｊｓで表すと、以下の式のようになる。
【００２３】
ｊｓ＝ｊｄ＊（Ｓｗｉｄｔｈ−１）／（Ｄｗｉｄｔｈ−１）・・・・（１）
ここで、＊は乗算、／は除算の記号である。
【００２４】
ところで、ソフトウエアによる演算では、一般に、浮動小数点演算よりも整数演算の方が高速なため、できるだけ整数演算が使われる。しかしながら、上記（１）式をそのまま使って、値がすべて整数で、乗算（＊）し、除算（／）による整数演算すると、除算の商は、切り捨てとなって、変換画像１１と原画像１０を重ね合わせ、変換画素と原画素を対応させたとき、変換画素が一番近い原画素と対応しなくなってしまう。
【００２５】
そこで、商が四捨五入になるように、（１）式の右辺に１／２を足し、
ｊｓ＝ｊｄ＊（Ｓｗｉｄｔｈ−１）／（Ｄｗｉｄｔｈ−１）＋１／２・・・（２）
上記（２）式の右辺全体に２を掛けて（２倍）、２で割った形にし、分母を２で通分する。
【００２６】
ｊｓ＝（２＊ｊｄ＊（Ｓｗｉｄｔｈ−１）／（Ｄｗｉｄｔｈ−１）＋１）／２
・・・・・（３）
これで、すべて整数演算になり、高速化が実現できる。同様に、ｙ座標についても、変換画像１１の注目画素の座標をｊｄ、これに対応する原画像１０の注目画素の座標をｉｓとすると以下の式（４）のようになる。
【００２７】
ｉｓ＝（２＊ｉｄ＊（Ｓｈｅｉｇｈｔ−１）／（Ｄｈｅｉｇｈｔ−１）＋１）／２
・・・・・（４）
上記（３）、（４）式により、変換画像１１の任意の座標（ｊｄ、ｉｄ）に対応する原画素１０の座標（ｊｓ、ｉｓ）が決定される。そして、任意の変換画素座標（ｊｓ、ｉｓ）の画素値は、上記演算した原画素座標（ｊｓ、ｉｓ）の画素値を採用する。
【００２８】
変換画像１１のすべての変換画素の画素値について、対応する原画像１０の原画素の画素値を算出する。
【００２９】
以上説明したように、変換画素と原画素を対応させたとき、変換画素が一番近い原画素と対応できなくなるという欠点を解決するとともに、重複やヌケがなく、高速に変換画像が得られる。
【００３０】
次に、上記基本概念に基づいて、本実施形態の任意倍率拡大縮小方法を実行する具体的な手段とその処理フローを図２及び図３を用いて説明する。
【００３１】
図２は、本実施形態に係る任意倍率拡大縮小方法を実行する手段を示す構成図である。
また、図３は、本実施形態に係る任意倍率拡大縮小方法の処理フローを示す図である。
【００３２】
図２に示すように、本実施形態に係る任意倍率拡大縮小方法を実行する手段は、原画像１０、変換画像１１の横幅、高さのピクセル数及び変換画像の任意の座標値（ｊｄ、ｉｄ）を入力するパラメータ入力手段２０と、上式（３）、（４）の内、２＊ｊｄ＊（Ｓｗｉｄｔｈ−１）／（Ｄｗｉｄｔｈ−１）及び２＊ｉｄ＊（Ｓｈｅｉｇｈｔ−１）／（Ｄｈｅｉｇｈｔ−１）の整数演算を行うＸ座標整数演算手段２１、Ｙ座標整数演算手段２５と、上式（３）、（４）の分子の計算において、整数「１」を加算する加算手段２２と、上式（３）、（４）の分母の「２」で除算（バイナリ形式で１ビット右シフト演算）するＸ座標シフト演算手段２３、Ｙ座標シフト演算手段２５と、Ｘ座標シフト演算手段２３、Ｙ座標シフト演算手段２５から算出される原画像１０の座標値（ｊｓ、ｉｓ）からその座標値の画素値を変換画像１１の座標値（ｊｄ、ｉｄ）の画素値として、出力する画素値出力手段２６と、を備えて構成される。
【００３３】
上記のように構成された本実施形態に係る任意倍率拡大縮小方法の処理フローについて図３を用いて説明する。
【００３４】
まず、原画像１０及び変換画像１１の横幅、高さのピクセル数をパラメータ入力手段２０により、入力し、変換画像１１の注目座標を（０、０）として、以下の計算を開始する（ステップＳ１００）。上記手段２１〜２４により、変換画像１１の注目座標（ｊｄ、ｉｄ）から原画像１０の座標値を算出する（ステップＳ１０１）。そして、ステップＳ１０２において、画素値出力手段２５により算出された原画像１０の座標値の画素値を変換画像１１の注目座標（ｊｄ、ｉｄ）の画素値として決定する（ステップＳ１０２）。変換画像１１の注目座標（ｊｄ、ｉｄ）の座標を１つ横方方向又は高さ方向にずらす（ステップＳ１０３）。次に、注目座標が（Ｄｗｉｄｔｈ−１、Ｄｈｅｉｇｈｔ−１）に達したか否かを判断し（ステップＳ１０４）、達していないと判断した場合（ステップＳ１０４；Ｎｏ）、ステップＳ１０１に処理を戻す。また、達したと判断した場合（ステップＳ１０４；Ｙｅｓ）、本処理を終了する。
このように、変換画素と原画素を対応させたとき、変換画素が一番近い原画素と対応ですることができ、重複やヌケがなく、また、整数演算のみで計算することができるため、高速に変換画像が得られる。
【００３５】
＜第２の実施形態の説明＞
本実施形態に係る任意倍率拡大縮小方法は、線形補間法を適用したものであるが、上記第１の実施形態と同様に、実数演算を用いずに、整数演算のみで変換画像を取得するものであり、主として、変換の際の処理の高速化を目的としている。
【００３６】
本実施形態に係る任意倍率拡大縮小方法の基本の概念について、まず、図４を用いて説明する。
【００３７】
図４は、変換画素を原画像に投影し、投影した変換画素と原画像の隣接した画素との距離を説明する図である。
【００３８】
図１に示すように、原画像１１の幅をＳｗｉｄｔｈ、高さをＳｈｅｉｇｈｔ、変換画像の幅をＤｗｉｄｔｈ、高さをＤｈｅｉｇｈｔとし（これらの幅と高さの単位はピクセル数である。）、以下の式により、変換画像１１の任意の座標（ｊｄ、ｉｄ）から整数演算の少数点切捨てにより、原画像の座標（ｊｓ、ｉｓ）を計算する。
【００３９】
ｊｓ＝ｊｄ＊（Ｓｗｉｄｔｈ−１）／（Ｄｗｉｄｔｈ−１）・・・・・・（５）
ｉｓ＝ｉｄ＊（Ｓｈｅｉｇｈｔ−１）／（Ｄｈｅｉｇｈｔ−１）・・・・（６）
ここで、上記（５）、（６）式で、乗算、除算を実数演算としたものを、（ｊｓＲ、ｉｓＲ）とする。
【００４０】
ｊｓＲ＝ｊｄ＊（Ｓｗｉｄｔｈ−１）／（Ｄｗｉｄｔｈ−１）・・・・・・（７）
ｉｓＲ＝ｉｄ＊（Ｓｈｅｉｇｈｔ−１）／（Ｄｈｅｉｇｈｔ−１）・・・・（８）
図４に示すように、変換画素は、原画像の座標に投影したものになり、原画像の座標（ｊｓ、ｉｓ）、（ｊｓ＋１、ｉｓ）、（ｊｓ、ｉｓ＋１）、（ｊｓ＋１、ｉｓ＋１）の４点の画素に囲まれる領域内に位置する。
【００４１】
次に、この変換画素の画素値を原画像の座標（ｊｓ、ｉｓ）、（ｊｓ＋１、ｉｓ）、（ｊｓ、ｉｓ＋１）、（ｊｓ＋１、ｉｓ＋１）の４点の画素の画素値から、線形補間により計算する。
【００４２】
座標（ｊｓ、ｉｓ）、（ｊｓ＋１、ｉｓ）、（ｊｓ、ｉｓ＋１）、（ｊｓ＋１、ｉｓ＋１）のそれぞれの画素値をＰ（ｊｓ、ｉｓ）、Ｐ（ｊｓ＋１、ｉｓ）、Ｐ（ｊｓ、ｉｓ＋１）、Ｐ（ｊｓ＋１、ｉｓ＋１）とし、それぞれの重み付けの値を、ｗ（ｊｓ、ｉｓ）、ｗ（ｊｓ＋１、ｉｓ）、ｗ（ｊｓ、ｉｓ＋１）、ｗ（ｊｓ＋１、ｉｓ＋１）とすると、変換画素の画素値Ｑ（ｊｄ、ｉｄ）は、以下の式で計算される。
【００４３】
Ｑ（ｊｄ、ｉｄ）＝（ｗ（ｊｓ、ｉｓ）＊Ｐ（ｊｓ、ｉｓ）＋ｗ（ｊｓ＋１、ｉｓ）＊Ｐ（ｊｓ＋１、ｉｓ）＋ｗ（ｊｓ、ｉｓ＋１）＊Ｐ（ｊｓ、ｉｓ＋１）＋ｗ（ｊｓ＋１、ｉｓ＋１）＊Ｐ（ｊｓ＋１、ｉｓ＋１））／（ｗ（ｊｓ、ｉｓ）＋ｗ（ｊｓ＋１、ｉｓ）＋ｗ（ｊｓ、ｉｓ＋１）＋ｗ（ｊｓ＋１、ｉｓ＋１））・・・・・・・・・・（９）
画素値Ｐ（ｊｓ，ｉｓ）の重み係数ｗ（ｊｓ，ｉｓ）は、反対側の画素値Ｐ（ｊｓ＋１、ｉｓ＋１）と、変換画素を投影して点（ｊｓＲ，ｉｓＲ）とのハミング距離に比例するものとすると、以下の式で表される。
【００４４】
ｗ（ｊｓ、ｉｓ）＝（ｊｓ＋１−ｊｓＲ）＋（ｉｓ＋１−ｉｓＲ）・・・・（１０）
ｗ（ｊｓ＋１、ｉｓ）＝（ｊｓＲ−ｊｓ）＋（ｉｓ＋１−ｉｓＲ）・・・・（１１）
ｗ（ｊｓ、ｉｓ＋１）＝（ｊｓ＋１−ｊｓＲ）＋（ｉｓＲ−ｉｓ）・・・・（１２）
ｗ（ｊｓ＋１、ｉｓ＋１）＝（ｊｓＲ−ｊｓ）＋（ｉｓＲ−ｉｓ）・・・・（１３）
ここで、ハミング距離とは、２点があったときｘ成分の差とｙ成分の差を足したものを言う。
【００４５】
ここで、式（８）、（９）（ｊｓＲ、ｉｓＲ）の代わりに、次式で表される（ｊｓＮ、ｉｓＮ）を使うことを考える。
【００４６】
ｊｓＮ＝（ｊｄ＊（Ｓｗｉｄｔｈ−１）＜＜Ｎ）／（Ｄｗｉｄｔｈ−１）・・（１４）
ｉｓＮ＝（ｉｄ＊（Ｓｈｅｉｇｈｔ−１）＜＜Ｎ）／（Ｄｈｅｉｇｈｔ−１）（１５）
ここで、＜＜は、左シフト演算を示す記号である。従って、ｊｓＮ，ｉｓＮは、それぞれｊｓＲ、ｉｓＲを２のＮ乗倍したものの、整数部分を取り出したものになる。
【００４７】
また、式（１０）のｗ（ｊｓ、ｉｓ）の代わりに、ｗＮ（ｊｓ、ｉｓ）＝ｗ（ｊｓ、ｉｓ）＜＜Ｎを定義すると、式（１０）〜式（１３）は、以下の式のようになる。
【００４８】
ｗＮ（ｊｓ、ｉｓ）＝（（ｊｓ＋１）＜＜Ｎ−ｊｓＮ）＋（（ｉｓ＋１）＜＜Ｎ−ｉｓＮ）・・・・・・・（１６）
ｗＮ（ｊｓ＋１、ｉｓ）＝（ｊｓＮ−ｊｓ＜＜Ｎ）＋（（ｉｓ＋１）＜＜Ｎ−ｉｓＮ）     ・・・・・・・・・（１７）
ｗＮ（ｊｓ、ｉｓ＋１）＝（（ｊｓ＋１）＜＜Ｎ−ｊｓＮ）＋（ｉｓＮ−ｉｓ＜＜Ｎ）     ・・・・・・・・・（１８）
ｗＮ（ｊｓ＋１、ｉｓ＋１）＝（ｊｓＮ−ｊｓ＜＜Ｎ）＋（ｉｓＮ−ｉｓ＜＜Ｎ）・・・・・・・・・・・（１９）
重み付け係数ｗの代わりに、シフト演算を施した上記式（１６）〜（１９）の重み付け係数ｗＮを式（９）（変換画素の画素値Ｑ（ｊｄ、ｉｄ）の算出）に代入すると、
Ｑ（ｊｄ、ｉｄ）＝（ｗＮ（ｊｓ、ｉｓ）＊Ｐ（ｊｓ、ｉｓ）＋ｗＮ（ｊｓ＋１、ｉｓ）＊Ｐ（ｊｓ＋１、ｉｓ）＋ｗＮ（ｊｓ、ｉｓ＋１）＊Ｐ（ｊｓ、ｉｓ＋１）＋ｗＮ（ｊｓ＋１、ｉｓ＋１）＊Ｐ（ｊｓ＋１、ｉｓ＋１））／（ｗＮ（ｊｓ、ｉｓ）＋ｗＮ（ｊｓ＋１、ｉｓ）＋ｗＮ（ｊｓ、ｉｓ＋１）＋ｗＮ（ｊｓ＋１、ｉｓ＋１））・・・（２０）
となる。
【００４９】
上記式（２０）に示すように、変換画素値Ｑ（ｊｄ、ｉｄ）の演算から実数演算がなくなり、全て整数演算で処理するため、高速化することができる。
【００５０】
また、すべての変換画素について、上記の演算を行うことにより、重複やヌケがなく、変換画像が得られる。
【００５１】
次に、上記基本概念に基づいて、本実施形態の任意倍率拡大縮小方法を実行する具体的な手段とその処理フローを図５及び図６を用いて説明する。
【００５２】
図５は、本実施形態に係る任意倍率拡大縮小方法を実行する手段を示す構成図である。
また、図６は、本実施形態に係る任意倍率拡大縮小方法の処理フローを示す図である。
【００５３】
図５に示すように、本実施形態に係る任意倍率拡大縮小方法を実行する手段は、原画像１０、変換画像１１の横幅、高さのピクセル数、変換画像１１の座標値（ｊｄ，ｉｄ）を入力する入力手段２０と、式（５）の演算を行うＸ座標整数演算手段３１及び式（７）の演算を行うＸ座標実数演算手段３２と、式（６）の演算を行うＹ座標整数演算手段３１及び式（８）の演算を行うＹ座標実数演算手段３２と、Ｘ座標整数演算手段３１及びＹ座標整数演算手段３４によって得られたＸ、Ｙ座標値をそれぞれ２のＮ乗倍（バイナリ表示でＮ桁、小数点の位置を右にシフトする演算）するＸ座標整数シフト演算手段３５及びＹ座標整数シフト演算手段３８と、同様に、式（１４）、（１５）の演算（２のＮ乗倍；２進数でＮ桁、小数点の位置を右にシフトする演算）を行うＸ座標実数シフト演算手段２６及びＹ座標実数シフト演算手段２６と、シフト演算したＸ，Ｙ座標からハミング距離を求め、重み付け係数を算出する整数化重み付け係数演算手段３９と、整数化重み付け係数演算手段３９により得られた整数化重み付け係数及び画素値入力手段４０により入力する原画像１０の整数座標値の画素値から注目する変換画像１１の座標（ｊｄ，ｉｄ）の画素値を定める画素値算出手段４１と、を備えて構成されている。
【００５４】
上記のように構成された本実施形態に係る任意倍率拡大縮小方法の処理フローについて図６を用いて説明する。
【００５５】
まず、上記第１の実施形態と同様に、原画像１０、変換画像１１の幅、高さ（ピクセル数）等のパラメータを入力し、変換画像１１の注目座標を（０、０）として、処理を開始する（ステップＳ２００）。
【００５６】
演算手段３１〜３４によって、変換画像１１の注目座標（ｊｄ、ｉｄ）に対応する原画像１０の整数座標（ｊｓ、ｉｓ）及び実数座標（ｊｓＲ、ｉｓＲ）を算出する（ステップＳ２０１）。これらの整数及び実数座標に対して、バイナリで表現した場合、Ｎ桁左シフト演算処理を行い、所定の桁数の整数値に変換する（ステップＳ２０２）。ステップＳ２０２の処理によって整数化された４つの原画像の座標（ｊｓ、ｉｓ）、（ｊｓ＋１、ｉｓ）、（ｊｓ、ｉｓ＋１）、（ｊｓ＋１、ｉｓ＋１）及び変換画像の注目座標（ｊｓＲ、ｉｓＲ）に基づいて、手段３５〜３８によって、整数化重み係数を算出する（ステップＳ２０３）。そして、上記整数化重み付け係数及び４つの原画像の座標（ｊｓ、ｉｓ）、（ｊｓ＋１、ｉｓ）、（ｊｓ、ｉｓ＋１）、（ｊｓ＋１、ｉｓ＋１）の画素値から変換画像１１の注目座標（ｊｄ、ｉｄ）の変換画素値Ｑを算出する（ステップＳ２０４）。その後、変換画像の注目座標を横方向又は高さ方向に１座標ずらし（ステップＳ２０５）、全ての注目座標について処理が終了した否かを判定する（ステップＳ２０６）。処理が終了していない場合には（ステップＳ２０６；Ｎｏ）、ステップＳ２０１の処理に戻り、処理終了した場合には（Ｓ２０６；Ｙｅｓ）、本処理を終了する。
【００５７】
このように、上記説明したように、変換画素値Ｑ（ｊｄ、ｉｄ）の演算から実数演算をなくし、全て整数演算で処理するため、高速化することができ、すべての変換画素について、上記の演算を行うことにより、重複やヌケがなく、変換画像が得られる。
【００５８】
尚、本発明の任意倍率拡大縮小方法は、上記した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【図面の簡単な説明】
【００５９】
【図１】変換画像における任意の変換画素の座標と、この座標に対応する原画素の座標との関係を説明する図である。
【図２】第１の実施形態に係る任意倍率拡大縮小方法を実行する手段を示す構成図である。
【図３】第１の実施形態に係る任意倍率拡大縮小方法の処理フローを示す図である。
【図４】変換画素を原画像に投影し、投影した変換画素と原画像の隣接した画素との距離を説明する図である。
【図５】第２の実施形態に係る任意倍率拡大縮小方法を実行する手段を示す構成図である。
【図６】第２の実施形態に係る任意倍率拡大縮小方法の処理フローを示す図である。
【符号の説明】
【００６０】
１０  原画像
１１  変換画像
２０  パラメータ入力手段
２１  Ｘ座標整数演算手段
２２  加算手段
２３  Ｘ座標シフト演算手段
２４  Ｙ座標整数演算手段
２５  Ｙ座標シフト演算手段
２６  画素値出力手段
３１  Ｘ座標整数演算手段
３２  Ｘ座標実数演算手段
３３  Ｙ座標実数演算手段
３４  Ｙ座標整数演算手段
３５  Ｘ座標整数シフト演算手段
３６  Ｘ座標実数シフト演算手段
３７  Ｙ座標実数シフト演算手段
３８  Ｙ座標整数シフト演算手段
３９  整数化重み演算手段
４０  Ｘ座標画素値入力手段
４１  Ｙ座標画素値入力手段
４２  画素値出力手段
【図１】
2009038632.tif 000003
【図２】
2009038632.tif 000004
【図３】
2009038632.tif 000005
【図４】
2009038632.tif 000006
【図５】
2009038632.tif 000007
【図６】
2009038632.tif 000008