説明

画像縮小装置および画像縮小方法

【目的】縮小画像のエッジの違和感を軽減する。
【構成】JPEG圧縮されてブロックごとに記録されている直交変換係数が読み取られ,縮小率に応じて縮小処理に利用される直交変換係数が決定される。決定された直交変換係数が逆直交変換されて縮小画像ブロックが得られる。縮小画像ブロックのうち,パディング・データが付加されているパディング画像ブロックにもとづいて得られたパディング縮小画像ブロックから縮小画像のエッジ部分を表す画素ブロック52が抽出される。画素ブロック52を構成する画素のうちエッジに相当するエッジ画素IBの本来の幅が0.5未満の場合には,エッジ画素IBの幅とレベルに応じたレベルとなるように,エッジが素IBに隣接する画素IAのレベルが調整された画素ICとされる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は,画像縮小装置,画像縮小方法および画像縮小装置を制御するコンピュータ・プログラムに関する。
【背景技術】
【0002】
JPEG(Joint Photographic Experts Group)にもとづく圧縮は,画像データに直交変換処理が行われる。直交変換により得られた直交変換係数が記録媒体に記録される。JPEGにもとづく圧縮により得られた圧縮画像を縮小する場合ものとして,縮小率に応じて縮小に用いる直交変換係数を決定し,決定された直交変換係数を利用して縮小処理を行うものがある(特許文献1)。
【特許文献1】特開2006-60540号公報
【0003】
JPEGにもとづく圧縮は8画素×8画素の画像ブロックで直交変換されているから,画像ブロックが直交変換された直交変換ブロックも8×8の64個の直交変換係数から構成されている。直交変換係数を利用して画像の縮小処理を行う場合,圧縮前の原画像の横方向の画素数または縦方向の画素数が8の倍数でないときには,縮小画像の横方向の長さまたは縦方向の長さが整数画素とならない。このために,縮小処理により得られる縮小画像のエッジを表すエッジ画素の幅または高さは理論上では小数で示される長さとなってしまう。小数で示される長さは表現できないので切り上げ処理が行われ,エッジ画素は1画素で表現される。理論上での縮小画像ではエッジ部分が1画素分の幅または高さが無い(非整数画素)にもかかわらず1画素で示されるので,縮小画像のエッジ部分に違和感が生じることがある。
【発明の開示】
【0004】
この発明は,縮小画像のエッジ部分に生じる違和感を減少させることを目的とする。
【0005】
この発明による画像縮小装置は,横方向および縦方向がいずれも所定の画素数からなる矩形の画像ブロックであり,かつ一駒の原画像を構成する複数の画像ブロックのそれぞれの画像ブロックが直交変換された複数の直交変換係数から構成される複数の直交変換ブロックのそれぞれの直交変換ブロックについて,横方向および縦方向にn/所定の画素数(但し,nは所定の画素数未満の自然数)に縮小するときに使用する直交変換係数を決定する直交変換係数決定手段,上記直交変換係数決定手段によって決定された直交変換係数を用いて複数の直交変換ブロックに逆直交変換処理を行い,複数の縮小画像ブロックを生成する縮小画像ブロック生成手段,上記縮小画像ブロック生成手段によって生成された複数の縮小画像ブロックのうち,上記複数の画像ブロックの中の,横方向および縦方向のいずれも所定の画素数となるようにパディング・データが付与されたパディング画像ブロックにもとづいて得られたパディング縮小画像ブロックについては,パディング縮小画像ブロックに含まれる画素のうち縮小画像のエッジに相当するエッジ画素が非整数画素になるべきであった場合には非整数値が0.5未満のときにはそのエッジ画素に隣接する縮小画像の画素のレベルにそのエッジ画素のレベルを加えてそのエッジ画素を削除し,非整数値が0.5以上のときには非整数画素に隣接する縮小画像の画素のレベルをそのエッジ画素に加える加算処理を行い,縮小画像のエッジに相当するエッジ画素がもともと整数画素のものであった場合には上記加算処理を停止するパディング縮小画像ブロック修正手段,ならびに上記縮小画像ブロック生成手段によって生成された複数の縮小画像ブロックのうちパディング縮小画像ブロックを除く完全縮小画像ブロックと,上記パディング縮小画像ブロック修正手段による加算処理が行われたパディング縮小画像ブロックと,上記パディング縮小画像ブロック修正手段による加算処理が停止されたパディング縮小画像ブロックと,を用いて縮小画像を生成する縮小画像生成手段を備えていることを特徴とする。
【0006】
この発明は,上記画像縮小装置に適した縮小画像生成方法も提供している。すなわち,この方法は,直交変換係数決定手段が,横方向および縦方向がいずれも所定の画素数からなる矩形の画像ブロックであり,かつ一駒の原画像を構成する複数の画像ブロックのそれぞれの画像ブロックが直交変換された複数の直交変換係数から構成される複数の直交変換ブロックのそれぞれの直交変換ブロックについて,横方向および縦方向にn/所定の画素数(但し,nは所定の画素数未満の自然数)に縮小するときに使用する直交変換係数を決定し,縮小画像ブロック生成手段が,上記直交変換係数決定手段によって決定された直交変換係数を用いて複数の直交変換ブロックに逆直交変換処理を行い,複数の縮小画像ブロックを生成し,縮小画像ブロック修正手段が,上記縮小画像ブロック生成手段によって生成された複数の縮小画像ブロックのうち,上記複数の画像ブロックの中の,横方向および縦方向のいずれも所定の画素数となるようにパディング・データが付与されたパディング画像ブロックにもとづいて得られたパディング縮小画像ブロックについては,パディング縮小画像ブロックに含まれる画素のうち縮小画像のエッジに相当するエッジ画素が非整数画素になるべきであった場合には非整数値が0.5未満のときにはエッジ画素に隣接する縮小画像の画素のレベルにそのエッジ画素のレベル加えてそのエッジ画素を削除し,非整数値が0.5以上のときには非整数画素に隣接する縮小画像の画素のレベルをそのエッジ画素のレベルに加える加算処理を行い,縮小画像のエッジに相当するエッジ画素がもともと整数画素のものであった場合には上記加算処理を停止し,縮小画像生成手段が,上記縮小画像ブロック生成手段によって生成された複数の縮小画像ブロックのうちパディング縮小画像ブロックを除く完全縮小画像ブロックと,上記パディング縮小画像ブロック修正手段による加算処理が行われたパディング縮小画像ブロックと,上記パディング縮小画像ブロック修正手段による加算処理が停止されたパディング縮小画像ブロックと,を用いて縮小画像を生成するものである。
【0007】
この発明は,上記画像縮小装置を制御するコンピュータ・プログラムも提供している。
【0008】
この発明によると,直交変換ブロックを構成する直交変換係数のうち縮小するときに使用する直交変換係数が決定される。決定された直交変換係数を用いて逆直交変換処理が行われて複数の縮小画像ブロックが生成される。横方向および縦方向のいずれも所定の画素数となるようにパディング・データが付与されたパディング画像ブロックにもとづいて得られたパディング縮小画像ブロックについては,パディング縮小画像ブロックに含まれる画素のうち縮小画像のエッジに相当するエッジ画素が非整数画素になるべきであったかどうかが判定され,非整数画素になるべきであった場合には非整数値が0.5未満のときにはエッジ画素に隣接する縮小画像の画素のレベルにそのエッジ画素のレベルを加えてそのエッジ画素を削除し,非整数値が0.5以上のときには非整数画素に隣接する縮小画像の画素のレベルをそのエッジ画素のレベルに加える加算処理が行われる。縮小画像のエッジに相当する画素がもともと整数画素のものであった場合には,この加算処理は停止させられる。完全縮小画像ブロックと加算処理が行われたパディング縮小画像ブロックと加算処理が停止されたパディング縮小画像ブロックとを用いて縮小画像が生成される。
【0009】
このように,縮小画像のエッジに相当するエッジ画素が非整数画素になるべきであった場合には非整数値が0.5未満のときには非整数画素に隣接する縮小画像の画素のレベルにエッジ画素のレベルを加えてそのエッジ画素を削除し,非整数値が0.5以上のときには非整数画素に隣接する縮小画像の画素のレベルをエッジ画素のレベルに加える加算処理が行われる。理論上での縮小画像ではエッジ部分が1画素分の幅または高さが無いにもかかわらず生成された縮小画像のエッジ部分が1画素で示されても,そのエッジ部分の1画素のレベルが近傍の画素と比べて目立たないようなレベルに調整されるので,縮小画像のエッジ部分に生じる違和感を軽減できる。
【0010】
上記縮小ブロック生成手段は,パディング画像ブロックが直交変換された修正直交変換ブロックについて逆直交変換処理を行い,パディング画像ブロックを復元するパディング画像ブロック復元手段,および上記パディング画像ブロック復元手段によって復元されたパディング画像ブロックに含まれるパディング・データを,パディング画像ブロックに含まれる原画像データをコピーしたデータに置き換えた修正画像ブロックを生成する修正画像ブロック生成手段を備え,上記修正画像ブロック生成手段によって生成された修正画像ブロックを,縮小率に応じて縮小して縮小画像ブロックを生成することが好ましい。
【実施例】
【0011】
図1は,この発明の実施例を示すもので,画像縮小装置の電気的構成を示すブロック図である。
【0012】
画像縮小装置1の全体の動作は,CPU6によって統括される。
【0013】
画像縮小装置1には,メモリ・カード・インターフェイス8が含まれている。メモリ・カード9には,JPEG圧縮された画像データが格納されている。メモリ・カード・インターフェイス8により,メモリ・カード9に格納されている圧縮画像データが読み取られる。読み取られた圧縮画像データが伸長されて,圧縮画像データによって表される画像が表示装置2の表示画面に表示される。とくに,この実施例においては,圧縮画像データによって表される画像の縮小画像が生成される。生成された縮小画像も表示装置2の表示画面に表示される。縮小画像の生成方法について詳しくは後述する。また,メモリ・カード9に画像縮小装置1の処理プログラムが格納されていれば,そのプログラムを読み取り,画像縮小装置1にインストールすることもできる。もちろん,その他の方法により処理プログラムを画像縮小装置1にインストールすることもできる。
【0014】
画像縮小装置1には,キーボードなどのような入力装置7が含まれている。入力装置7から出力された指令は,CPU6に与えられる。
【0015】
また,画像縮小装置1には,ハードディスク5およびハードディスク5に格納されている圧縮画像データ等を読み取る,あるいはハードディスク5に圧縮画像データ等を書き込むハードディスク・ドライブ4も含まれている。ハードディスク5に記録されている圧縮画像データによって表される画像およびその縮小画像を表示装置2の表示画面に表示させることもできる。
【0016】
さらに,画像縮小装置1には,画像データ等を一時的に記憶するメモリ3も含まれている。
【0017】
図2は,画像表示の処理手順を示すフローチャートである。
【0018】
図2に示す処理においては,メモリ・カード9にJPEGにもとづく圧縮画像データが記録されており,その圧縮画像データによって表される画像の縮小画像を表示するものとする。JPEGにもとづく圧縮だけでなく,直交変換にもとづく圧縮が行なわれていればよい。
【0019】
メモリ・カード9に記録されている多数駒の画像を表す圧縮画像データの中から所望の圧縮画像データが読み取られる(ステップ11)。たとえば,圧縮画像データのデータ名(ファイル名)が指定されることにより,その指定されたデータ名をもつ圧縮画像データがメモリ・カード9から読み取られる。
【0020】
読み取られた圧縮画像データについて画像縮小処理が行われる(ステップ12)。この画像縮小処理について詳しくは後述する。画像縮小処理により生成された縮小画像が表示装置2の表示画面に表示される(ステップ13)。縮小画像の縮小率は,あらかじめ定められていてもよいし,入力装置7から入力できるようにしてもよい。
【0021】
図3(A)〜(D),図4(A)〜(D),および図5(A)〜(F)は,この実施例による縮小画像の生成の原理を示している。
【0022】
図3(A)は,圧縮画像が生成される前の原画像15を示している。
【0023】
原画像15についてJPEGにもとづく圧縮が行われる場合,原画像15は横方向も縦方向も8画素(所定の画素数)ずつの64画素から構成される多数の画像ブロック16に分けられる。原画像15の右端のブロック20は8画素×8画素のブロックとはならずに横方向は9画素,縦方向8画素のブロック20となったものとする。
【0024】
図3(B)は,図3に示す原画像19の右端のブロック20のうちの一つのブロック20を示している。
【0025】
ブロック20は,上述のように横方向9画素,縦方向8画素から構成されている。ブロック20を構成する画素のうち,黒く塗りつぶされている画素22および32は,画素レベルが100パーセントのものであり,白の画素23および33は画素レベルが0パーセントのものである。ブロック20を構成する画素を左側の8画素×8画素の画像ブロック21と右側の1列の8画素から構成される画素群30とに分けることができる。
【0026】
図3(C)は,図3(B)に示すブロック20を構成する画素のうち左側の8画素×8画素の画像ブロック21を示している。図3(C)に示す画像ブロック21は,画像ブロック21を構成する画素22または23がすべて図3(A)に示す原画像15を表しており,完全画像ブロックということにする。
【0027】
図3(D)は,図3(B)に示すブロック20を構成する画素のうち右側の1列の8画素から構成される画素群30が一番左側の一列に含まれている画像ブロック31を示している。画像ブロック31の一番左側に位置している画素群30の右側には,パディング・データ(画素)34と呼ばれるデータが付加されている。JPEGにもとづく圧縮では8画素×8画素の64画素の画像ブロックを単位で圧縮処理が行われるから画像ブロックが8画素×8画素の64画素となるように付加されるデータがパディング・データ34である。パディング・データが付加されたブロックをパディング画像ブロックということにする。
【0028】
図4(A)は,図3(C)に示す完全画像ブロック21を直交変換することにより得られる完全直交変換ブロック25を示している。完全直交変換ブロック25には,8×8の64個の直交変換係数C1〜C64が含まれている。左上ほど低周波数成分の直交変換係数であり,右下ほど高周波数成分の直交変換係数である。直交変換ブロック25が符号化されて記録媒体に記録される。
【0029】
図4(B)は,図3(D)に示すパディング画像ブロック31を直交変換することにより得られるパディング直交変換ブロック35を示している。パディング画像ブロック31も8画素×8画素の64画素から構成されているから,パディング直交変換ブロック35にも8×8の64個の直交変換係数C65〜C128が含まれている。
【0030】
図4(A)および(B)に示す完全直交変換ブロック25およびパディング直交変換ブロック35が符号化されてメモリ・カード9に記録されている。
【0031】
JPEG圧縮された原画像の縮小画像を生成する場合には,図4(A)に示すように完全直交変換ブロック25については,完全直交変換ブロック25を構成する直交変換係数C1〜C64の中から縮小率に応じて低周波数成分のものから直交変換係数が決定される。たとえば,横方向および縦方向がいずれも原画像の1/2となる縮小画像を生成する場合には,完全直交変換ブロック25が8×8の64個の直交変換係数C1〜C64から構成されているから横方向および縦方向のいずれも1/2となるような4×4のブロック25Aに含まれる直交変換係数C1〜C4,C9〜C12,C17〜C20,およびC25〜C28が縮小画像の生成に使用される直交変換係数として決定される。
【0032】
決定された4×4の16個の直交変換係数C1〜C4,C9〜C12,C17〜C20,およびC25〜C28が逆直交変換されることにより,図4(B)に示す完全縮小画像ブロック26が得られる。完全縮小画像ブロック26には,白塗りの画素27,クロス・ハッチングで示す画素28,および縦縞で示す画素29が含まれている。白塗りの画素27は図3(C)に示す完全画像ブロック21に含まれる白塗りの画素23と同様に0パーセントの画素レベルのものであり,クロス・ハッチングで示す画素28は75パーセントの画素レベルのものであり,縦縞で示す画素29は25パーセントの画素レベルのものである。完全縮小画像ブロック26は,図3(C)に示す完全画像ブロック21を構成する画素22または23のうち,互いに隣接する4つの画素を縮小した画素から構成されると考えられるから,図3(C)に示す画像ブロック21が直交符号化された完全直交ブロック25から縮小画像ブロックを生成することにより,図4に示す完全縮小画像ブロック26が生成されるのは理解できよう。
【0033】
図4に示すパディング画像ブロック35については,パディング画像ブロック35を構成するすべての直交変換係数C65〜C128が縮小画像に使用する直交変換係数として決定されて逆直交変換が行われる。図4(C)に示すパディング画像ブロック35が逆直交変換されることにより,図4(D)に示すパディング画像ブロック31(図3(D)に示すパディング画像ブロックと同じものである)が復元される。この実施例においては,パディング画像ブロック31を構成するパディング・データ34が,原画像15を構成する画素32および33がコピーされたものに置き換えられる。
【0034】
図5(B)は,パディング・データが,原画像15を構成する画素32および33に置き換えられた修正パディング画像ブロック35を示している。
【0035】
修正パディング画像ブロック35の第1行は画素レベルが100パーセントの画素32となっており,同じく第2行から第8行は画素レベルが0パーセントの画素33となるようにパディング・データ34が置き換えられている。修正パディング画像ブロック35が縮小される。
【0036】
図5(C)は,修正パディング画像ブロック35が縮小されたパディング縮小画像ブロック36を示している。
【0037】
パディング縮小画像ブロック36は,画素レベルが50パーセントの画素37と画素レベルが0パーセントの画素38とが含まれている。図5(B)に示す修正パディング画像ブロック35が縮小されることにより,図5(C)に示すパディング縮小画像ブロック36が得られるのは理解できよう。
【0038】
図3(D)に示す原画像ブロック31のうち原画像15を構成する画素は最も左側の1列の画素群30である。原画像15が横方向および縦方向のいずれも1/2に縮小される場合,この1列の画素群30幅も高さも1/2となる。したがって,横方向に1/2画素,縦方向に4画素の縮小ブロックがパディング縮小画像ブロック36から抽出されなければならないが,非整数の画素を抽出することができないので,図5(D)に示すように,パディング縮小画像ブロック36から切り上げた幅をもつ調整画素ブロック39が抽出される。
【0039】
図5(E)に示すように,図5(A)に示す完全縮小画像ブロック26と図5(D)に示す調整画素ブロック39とが組み合わされて図3(B)に示す画像ブロックの縮小画像ブロック40が生成される。
【0040】
図3(B)に示す画像ブロック20は横方向9画素,縦方向8画素であり,このような画像ブロック20を横方向および縦方向いずれも1/2に縮小する場合には,図5(F)に示すように,横方向4.5画素,縦方向4画素の縮小画像ブロック41となるべきであるが,非整数画素数の縮小画像ブロックを生成することはできないから,上述したように,パディング縮小画像ブロック36から,切り上げた画素数をもつ調整画像ブロック39が抽出されて,図5(E)に示すように横方向5画素,縦方向4画素の縮小画像ブロック40が生成されている。
【0041】
図5(F)の右端の画素37A,38Aに示すように,本来は幅0.5画素の非整数画素が,図5(E)の右端のエッジ画素(縮小画像のエッジに相当するためにエッジ画素ということにする)37,38に示すように幅1画素の画素となっているから,これらのエッジ画素が目立ってしまい,縮小画像を閲覧する場合に,違和感を生じることがある。このために,この実施例においては,次に述べる処理が行われる。
【0042】
上述した実施例では,パディング直交変換ブロック35についてはパディング画像ブロック31に復元してパディング縮小画像ブロック36を生成しているが,パディング画像ブロック31を復元することなく完全直交変換ブロック25と同様に縮小率に応じた直交変換係数を決定し,パディング縮小画像ブロックを生成してもよい。
【0043】
図6は,パディング縮小画像ブロックから抽出された調整画素ブロックを構成するエッジ画素の本来の幅(非整数値)が0.5画素未満の場合の処理を示している。
【0044】
調整画素ブロック52を構成するエッジ画素IBの本来の幅が0.5未満の場合には,エッジ画素IBはその調整画素ブロック52に隣接する完全縮小画像ブロック50の右端の画素IAに,画素エッジIBの幅に応じた割合で加算される。画素IAにエッジ画素IBが加算されることにより,完全縮小画像ブロック50の画素IAは完全縮小画像ブロック50Aの画素ICとなる。エッジ画素IBは削除される。完全縮小画像ブロック50と画素ブロック52とから構成される横方向5画素,縦方向4画素の縮小画像部分から横方向4画素,縦方向4画素の完全縮小画像ブロック50Aとなり,横方向の画素数が減少する。エッジ画素IB以外の画素ブロック52のエッジ画素についても同様に,完全縮小画像ブロック50の右端の画素に加算されて削除される。
【0045】
図7は,パディング縮小画像ブロックから抽出された調整画素ブロックを構成するエッジ画素の本来の幅が0.5画素以上の場合の処理を示している。
【0046】
調整画素ブロック62を構成するエッジ画素IYの本来の幅が0.5以上の場合には,その調整画素ブロック62に隣接する完全縮小画像ブロック60の右端の画素IXが,エッジ画素IYの幅に応じた割合でエッジ画素IYに加算される。画素IXがエッジ画素IYに加算されることにより,画像ブロック62のエッジ画素IYは新たな画像ブロック62Aの画素IZとなる。完全縮小画像ブロック60と画素ブロック62とから構成される横方向5画素,縦方向4画素の縮小画像部分の画素数は変わらずに,完全縮小画像ブロック60と画像ブロック62Aから構成される横方向5画素,縦方向4画素の大きさが維持される。
【0047】
図8は,画像縮小処理手順(図2ステップ12の処理手順)を示すフローチャート,図9および図10は,原画像が縮小される様子を示している。図9および図10のいずれも,原画像Io(w0,h0)は横方向17画素,縦方向16画素のものであり,図9では横方向および縦方向がいずれも1/4になる縮小画像が生成される様子を示し,図10では横方向および縦方向がいずれも3/4になる縮小画像が生成される様子を示している。後述する計算上での理想縮小画像の画素数が非整数とならずに整数となる場合には,上述した加算処理は停止する。
【0048】
JPEG圧縮された原画像Ioは直交変換されているが,分かりやすくするために直交変換係数から逆直交変換して縮小画像の生成に使用する直交変換係数を決定して縮小処理が行われる処理については省略するが,上述のように逆直交変換等が行われているのはいうまでもない。まず,1/4の縮小画像が生成される場合について説明する。
【0049】
原画像Ioから縮小画像が生成される場合に,計算上での理想縮小画像の画素数が非整数となるときに画素数が整数となるように切り上げられた横方向の画素w1(5画素),縦方向の画素h1(4画素)の切り上げ縮小画像Ir1が生成される(ステップ71)。また,原画像Ioの横方向の画素w0(17画素),縦方向の画素ho(16画素)の大きさが算出される(ステップ72)。
【0050】
つづいて,出力用縮小画像Irの横方向の画素w(4画素)および縦方向の画素h(4画素)が算出される(ステップ73)。この出力用縮小画像Irは,原画像Ioを縮小して得られる理想縮小画像Ir2の横方向の画素数および縦方向の画素数が非整数となった場合に,小数点以下第1位を四捨五入することによって得られる。
【0051】
さらに,切り上げ縮小画像Ir1を構成する内部の画素が,右端および下端のそれぞれの画素を除いてコピーされて出力用縮小画像Irの画素とされる(ステップ74,図9においてハッチング81で示す)。
【0052】
つづいて,切り上げ縮小画像Irの右端および下端から理想縮小画像Ir2の右端および下端までの距離d1およびd2が式1および式2から算出される(ステップ75)。
【0053】
d1=w1−w0×n/8・・・式1
d2=h1−h0×n/8・・・式2
但し,nは1から7までの整数であり,n/8が縮小率を示し,図9に示す例ではnは2となる。
【0054】
図9に示すものでは,切り上げ縮小画像Ir1の下端と理想縮小画像Ir2の下端とは同じであるので,切り上げ縮小画像Ir1の下端から理想縮小画像Ir2の下端までの距離は0となる。d1は,3/4である。
【0055】
つづいて,出力用画像Irの右端の画素wの画素レベルが式3にしたがって算出される(ステップ76)。但し,yは,画素w1,w1−1,およびwのy座標値がそれぞれ同じであることを示している。
Ir(w,y)=d1×Ir1(w1−1,y)+(1−d1)×Ir1(w1,y)
・・・式3
【0056】
同様に,出力用画像Irの下端の画素hの画素レベルが式4にしたがって算出される(ステップ77)。但し,xは,画素h1,h1−1,およびhのx座標値がそれぞれ同じであることを示している。
Ir(x,h)=D2×Ir1(x,h1−1)+(1−d1)×Ir1(x,h1)
・・・式4
【0057】
このようにして生成された出力用縮小画像Irが出力(表示)される(ステップ78)。理想縮小画像Ir2であれば,右端に幅0.25の画素が存在する筈であるが,その0.25画素の幅をもつ画素が切り捨てられる。画素出力用縮小画像Irは,切り上げ用縮小画像Ir1よりも横方向に1画素小さくなるが,出力用縮小画像Ir1のエッジ画素は,レベル調整されているので,違和感が生じなくなる。
【0058】
図10を参照して,原画像Ioの3/4の縮小画像が生成される場合には,理想縮小画像Ir2は,横方向17画素×3/4=12.75画素,縦方向16画素×12画素となる。切り上げ縮小画像Ir1および出力用縮小画像Irはいずれも横方向13画素,縦方向12画素となる。出力用画像Ir2の右端の画素については,本来は幅が0.75画素のものが1画素になっているが,上述したように,レベル調整されているので,違和感が軽減される。切り上げ縮小画像Ir1と出力用縮小画像Irとは同じ大きさであるがわかりやすくするためにずらしている。
【0059】
上述した実施例では,縮小画像の右端についてのみ述べているが,下端についても同様の処理が行われるのはいうまでもない。また,原画像Io等は,右方向をX座標系の正方向,下方向をY座標の正方向と規定し,XY座標系の原点を原画像Io等の左上の頂点に合わせているので,右端と下端について上述した処理が行われるが,XY座標系の方向が変わることにより,そのXY座標系の方向に応じて縮小画像の右端と上端について上述した処理等が行われるのはいうまでもない。
【図面の簡単な説明】
【0060】
【図1】画像縮小装置の電気的構成を示すブロック図である。
【図2】画像表示処理手順を示すフローチャートである。
【図3】(A)から(D)は,縮小画像が生成される様子を示している。
【図4】(A)から(D)は,縮小画像が生成される様子を示している。
【図5】(A)から(F)は,縮小画像が生成される様子を示している。
【図6】画素レベル調整処理を示している。
【図7】画素レベル調整処理を示している。
【図8】画像縮小処理の処理手順を示すフローチャートである。
【図9】縮小画像が生成される様子を示している。
【図10】縮小画像が生成される様子を示している。
【符号の説明】
【0061】
1 画像縮小装置
6 CPU
16,20,21 画像ブロック
26 完全縮小画像ブロック
31 パディング画像ブロック
36 パディング縮小画像ブロック

【特許請求の範囲】
【請求項1】
横方向および縦方向がいずれも所定の画素数からなる矩形の画像ブロックであり,かつ一駒の原画像を構成する複数の画像ブロックのそれぞれの画像ブロックが直交変換された複数の直交変換係数から構成される複数の直交変換ブロックのそれぞれの直交変換ブロックについて,横方向および縦方向にn/所定の画素数(但し,nは所定の画素数未満の自然数)に縮小するときに使用する直交変換係数を決定する直交変換係数決定手段,
上記直交変換係数決定手段によって決定された直交変換係数を用いて複数の直交変換ブロックに逆直交変換処理を行い,複数の縮小画像ブロックを生成する縮小画像ブロック生成手段,
上記縮小画像ブロック生成手段によって生成された複数の縮小画像ブロックのうち,上記複数の画像ブロックの中の,横方向および縦方向のいずれも所定の画素数となるようにパディング・データが付与されたパディング画像ブロックにもとづいて得られたパディング縮小画像ブロックについては,パディング縮小画像ブロックに含まれる画素のうち縮小画像のエッジに相当するエッジ画素が非整数画素になるべきであった場合には非整数値が0.5未満のときにはそのエッジ画素に隣接する縮小画像の画素のレベルにそのエッジ画素のレベルを加えてそのエッジ画素を削除し,非整数値が0.5以上のときには非整数画素に隣接する縮小画像の画素のレベルをそのエッジ画素のレベルに加える加算処理を行い,縮小画像のエッジに相当するエッジ画素がもともと整数画素のものであった場合には上記加算処理を停止するパディング縮小画像ブロック修正手段,ならびに
上記縮小画像ブロック生成手段によって生成された複数の縮小画像ブロックのうちパディング縮小画像ブロックを除く完全縮小画像ブロックと,上記パディング縮小画像ブロック修正手段による加算処理が行われたパディング縮小画像ブロックと,上記パディング縮小画像ブロック修正手段による加算処理が停止されたパディング縮小画像ブロックと,を用いて縮小画像を生成する縮小画像生成手段,
を備えた画像縮小装置。
【請求項2】
直交変換係数決定手段が,横方向および縦方向がいずれも所定の画素数からなる矩形の画像ブロックであり,かつ一駒の原画像を構成する複数の画像ブロックのそれぞれの画像ブロックが直交変換された複数の直交変換係数から構成される複数の直交変換ブロックのそれぞれの直交変換ブロックについて,横方向および縦方向にn/所定の画素数(但し,nは所定の画素数未満の自然数)に縮小するときに使用する直交変換係数を決定し,
縮小画像ブロック生成手段が,上記直交変換係数決定手段によって決定された直交変換係数を用いて複数の直交変換ブロックに逆直交変換処理を行い,複数の縮小画像ブロックを生成し,
縮小画像ブロック修正手段が,上記縮小画像ブロック生成手段によって生成された複数の縮小画像ブロックのうち,上記複数の画像ブロックの中の,横方向および縦方向のいずれも所定の画素数となるようにパディング・データが付与されたパディング画像ブロックにもとづいて得られたパディング縮小画像ブロックについては,パディング縮小画像ブロックに含まれる画素のうち縮小画像のエッジに相当するエッジ画素が非整数画素になるべきであった場合には非整数値が0.5未満のときにはエッジ画素に隣接する縮小画像の画素のレベルにそのエッジ画素のレベルを加えてそのエッジ画素を削除し,非整数値が0.5以上のときには非整数画素に隣接する縮小画像の画素のレベルをそのエッジ画素のレベルに加える加算処理を行い,縮小画像のエッジに相当するエッジ画素がもともと整数画素のものであった場合には上記加算処理を停止し,
縮小画像生成手段が,上記縮小画像ブロック生成手段によって生成された複数の縮小画像ブロックのうちパディング縮小画像ブロックを除く完全縮小画像ブロックと,上記パディング縮小画像ブロック修正手段による加算処理が行われたパディング縮小画像ブロックと,上記パディング縮小画像ブロック修正手段による加算処理が停止されたパディング縮小画像ブロックと,を用いて縮小画像を生成する,
縮小画像生成方法。
【請求項3】
画像縮小装置を制御するコンピュータ・プログラムであって,
横方向および縦方向がいずれも所定の画素数からなる矩形の画像ブロックであり,かつ一駒の原画像を構成する複数の画像ブロックのそれぞれの画像ブロックが直交変換された複数の直交変換係数から構成される複数の直交変換ブロックのそれぞれの直交変換ブロックについて,横方向および縦方向にn/所定の画素数(但し,nは所定の画素数未満の自然数)に縮小するときに使用する直交変換係数を決定させ,
決定された直交変換係数を用いて複数の直交変換ブロックに逆直交変換処理を行わせることにより,複数の縮小画像ブロックを生成させ,
生成された複数の縮小画像ブロックのうち,上記複数の画像ブロックの中の,横方向および縦方向のいずれも所定の画素数となるようにパディング・データが付与されたパディング画像ブロックにもとづいて得られたパディング縮小画像ブロックについては,パディング縮小画像ブロックに含まれる画素のうち縮小画像のエッジに相当するエッジ画素が非整数画素になるべきであった場合には非整数値が0.5未満のときにはそのエッジ画素に隣接する縮小画像の画素のレベルにそのエッジ画素のレベルを加えてそのエッジ画素を削除し,非整数値が0.5以上のときには非整数画素に隣接する縮小画像の画素のレベルをそのエッジ画素のレベルに加える加算処理を行い,縮小画像のエッジに相当するエッジ画素がもともと整数画素のものであった場合には上記加算処理を停止させ,
生成された複数の縮小画像ブロックのうちパディング縮小画像ブロックを除く完全縮小画像ブロックと,上記加算処理が行われたパディング縮小画像ブロックと,上記加算処理が停止されたパディング縮小画像ブロックと,を用いて縮小画像を生成させるように画像縮小装置を制御するコンピュータ・プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2009−159032(P2009−159032A)
【公開日】平成21年7月16日(2009.7.16)
【国際特許分類】
【出願番号】特願2007−331998(P2007−331998)
【出願日】平成19年12月25日(2007.12.25)
【出願人】(306037311)富士フイルム株式会社 (25,513)
【Fターム(参考)】