JP2005228332A - 縮小画像のための方法及び装置 - Google Patents
縮小画像のための方法及び装置 Download PDFInfo
- Publication number
- JP2005228332A JP2005228332A JP2005035186A JP2005035186A JP2005228332A JP 2005228332 A JP2005228332 A JP 2005228332A JP 2005035186 A JP2005035186 A JP 2005035186A JP 2005035186 A JP2005035186 A JP 2005035186A JP 2005228332 A JP2005228332 A JP 2005228332A
- Authority
- JP
- Japan
- Prior art keywords
- image
- pixel
- reduced image
- data
- original
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000012545 processing Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 43
- 238000010586 diagram Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000000926 separation method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4023—Scaling of whole images or parts thereof, e.g. expanding or contracting based on decimating pixels or lines of pixels; based on inserting pixels or lines of pixels
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【課題】オリジナル画像から縮小画像を生成する方法及び装置を提供する。
【解決手段】サムネイル画像を生成するための方法であって、オリジナルドキュメントのオリジナル画像の線の一部のデータを捨てることと、オリジナル画像に対応するサムネイル画像を生成するために、捨てられなかったデータを結合することとを備えた、方法によって実現する。これにより、非常に速くかつ効率的に、最小限のメモリで、良好な画像品質の縮小画像を得ることができる。
【選択図】 図11
【解決手段】サムネイル画像を生成するための方法であって、オリジナルドキュメントのオリジナル画像の線の一部のデータを捨てることと、オリジナル画像に対応するサムネイル画像を生成するために、捨てられなかったデータを結合することとを備えた、方法によって実現する。これにより、非常に速くかつ効率的に、最小限のメモリで、良好な画像品質の縮小画像を得ることができる。
【選択図】 図11
Description
本発明は、縮小画像に関する。
サムネイル等の縮小画像は、すべての画像データの表示をサポートするための資源を消費せずに画像を都合良く観察するために、一般的に使用される。縮小画像の生成における更なる改良が要求されている。
米国特許第4,849,914号
米国特許第5,515,452号
米国特許第5,583,659号
米国特許第5,745,596号
米国特許第5,900,953号
米国特許第6,058,214号
米国特許第6,324,305B1号
米国特許第6,343,154B1号
米国特許第6,400,844B1号
米国特許第6,633,670号B1
EP特許出願公開第071294A2号
EP特許出願公開第1006716A2号
R.ドゥ クェリオッツ(R.De Querioz)著「複合ドキュメントの圧縮(Compression of Compound Documents)」IEEE発行、1999年10月、P.209〜213。
縮小画像は、画像データをオリジナル画像全体に及ぶ次元に沿って結合することによって生成されても良い。たとえば、二次元画像では、x及びy次元の各々に沿って出力ピクセルを生成するために、画素(ピクセル)は補間プロセスを介して結合されても良い。このようなプロセスは容認可能な縮小画像(サムネイル)を生成できるが、このようなサムネイルを生成するために必要とされる処理時間は所望の時間よりも長いかも知れない。
縮小画像を生成するために必要とされる時間を短くするために、1つ以上の次元の各群内のデータが他の群のデータと別に処理されても良いように、オリジナル画像全体に及ぶ次元は、複数の群に分割されても良い。たとえば、画素(ピクセル)が行及び列(ピクセルの線及び線に沿ったピクセル)それぞれで配列されるように、二次元画像はy及びx次元全体に及んでいても良い。この場合には、選択された線のピクセルは完全に捨てられるか又は省かれても良く、他方、縮小画像又はサムネイルを得るために、残りの線はx次元に沿って処理されても良い。
データは、多数の連続したピクセルを対応する重みで乗算し、乗算結果を合計し、合計を正規化因子によって除算することによる、補間によって処理されても良い。すべての重みを「1」に設定してピクセルの二乗以上合計することによって、さらなる速度の改善を得ても良い。合計されたピクセルの数を二乗まで制限することは、除算を二進シフトまで単純化する。このようにして、縮小画像の品質を管理しつつ、縮小画像はより高い効率及び速度で生成されても良い。
本発明の第1の態様は、サムネイル画像を生成するための方法であって、オリジナルドキュメントのオリジナル画像の線の一部のデータを捨てることと、オリジナル画像に対応するサムネイル画像を生成するために、捨てられなかったデータを結合することとを備えた、方法である。
本発明の第2の態様は、縮小画像を生成するための方法であって、オリジナルドキュメントのオリジナル画像全体に及ぶ複数の次元の一つ以上の第1の次元の一部が及ぶすべてのデータを捨てることと、オリジナル画像に対応する縮小画像を生成するために、捨てられなかったデータを結合することとを備えた、方法である。
本発明の第3の態様は、補間回路と、補間回路に結合された位置制御装置とを備える装置であって、一つ以上の位置の値が位置制御装置に結合されており、捨てられたデータを省くために、位置の値を処理することによって、オリジナルドキュメント全体に及ぶ複数の次元の第1の次元の一部が及ぶオリジナルドキュメントのオリジナル画像内のすべてのデータを位置制御装置が捨て、オリジナル画像の縮小画像を生成するために補間回路は捨てられなかったデータを結合する、装置である。
本発明の第4の態様は、縮小画像を生成するために使用されるオリジナルドキュメントのオリジナル画像のデータポイントを識別するための位置制御手段と、位置制御手段によって識別されたデータポイントに基づいて縮小画像の出力データポイントを生成するための補間手段とを備える、装置である。
本発明の第5の態様は、サムネイル画像を生成するソフトウェアプログラムであって、オリジナルドキュメントのオリジナル画像の線の一部のデータを捨てる動作と、オリジナル画像に対応するサムネイル画像を生成するために、捨てられなかったデータを結合する動作と、を実行するプログラムである。
添付の図を参照して、例示的な実施の形態について次に説明する。
図1は、縮小画像まで縮小されたオリジナル画像に変換された、オリジナルドキュメントを示す。図1は、オリジナルドキュメントと、オリジナル画像と、縮小画像とが二次元であるとして示されているが、いかなる数の次元でも良い。説明を容易にするために、次の説明は、わかりやすさと親しみ易さのために、二次元の例を用いても良く、縮小画像は、サムネイル又はサムネイル画像と呼ばれる場合がある。
図2は、たとえば、スキャナ100によってオリジナルドキュメントが走査されてRBG色空間内のデータ等のオリジナル画像データを生成する、例示的なプロセスを示す。この色空間は、色変換装置102によってYCC色空間に変換されても良い。周知のように、YCC色空間は、輝度成分(Y)と2つの色成分(CC)とを含む。色成分は、両方向でないにせよ少なくとも1つの方向で2:1比でサブサンプルされても良く、その結果、輝度成分にあるのと比較して、色成分では、データポイント数は半分である。縮小画像を生成するために、YCC色空間内のオリジナル画像は、縮小画像生成装置104によって入力されても良い。たとえばLab等の他の色空間が使用されても良い。
図3は、縮小画像生成装置104の例示的なブロック図を示す。縮小画像生成装置104は、CPU106と、メモリ108と、管理パラメータ記憶装置110と、補間回路112と、位置制御装置114と、入力/出力ポート116とを備えていても良い。前記部品106〜116は、バス118を介して互いに接続されていても良い。縮小画像生成装置104はバスアーキテクチャ図を用いて図示されているが、1つ以上の部品を実行するために特定用途向け集積回路(ASIC)等を使用するか、又は縮小画像生成装置等のすべての機能を実行するためにCPU106内で実行するコンピュータプログラムの記述等をする、他の任意の種類のハードウェア構成を使用しても良い。
縮小画像制御装置104は、入力/出力ポート116を介して、オリジナル画像のデータと管理パラメータとを受信する。画像データはメモリ108内に保存されても良く、管理パラメータは管理パラメータ記憶装置110内に保存されても良い。管理パラメータ記憶装置110が不揮発性メモリの場合には、管理パラメータは、入力/出力ポート116を介して受信される代わりに、管理パラメータ記憶装置110内にプリストアされても良い。オリジナル画像データは、スキャナ100によって生成されたピクセル値を含む。これらのピクセルは、オリジナルドキュメントと相対的な所定の位置を有する。これらの位置は、オリジナルドキュメントの基準点と相対的に決定されても良い。たとえば、二次元のオリジナルドキュメント(たとえば、8.5x11の紙のシート)については、所定の基準点は、紙のシートの左上隅に設定されても良い。オリジナル画像内のすべてのピクセルは、この所定の基準点と相対的に割り当てられても良い。
図4は、縮小画像生成装置104を制御するために使用されても良い二次元のオリジナル画像についての例示的な管理パラメータの表200を示す。x_startパラメータ及びy_startパラメータは、オリジナルドキュメント内の開始位置を特定する。たとえば、色変換装置102は、コンテキストを必要とする処理の種類によって、オリジナル画像の周囲に沿って複製されたピクセルを有しても良い。よって、x_startパラメータ及びy_startパラメータは、縮小画像生成装置104が縮小画像の生成を開始しても良いオリジナル画像内のピクセルに対応するオリジナルドキュメント内の位置(たとえば、二次元内の左上のピクセル)を識別する。
x_startパラメータ及びy_startパラメータは、縮小画像を生成するために使用されても良いオリジナル画像の量を制御するために使用されても良い。たとえば、x_start及びy_startをオリジナルドキュメントの内点に配置すると、縮小画像では求められないオリジナル画像の一部を効果的に切り取ることができる。オリジナル画像がヘッダとフッタとを有する印刷されたドキュメントである場合には、たとえば、x_startパラメータ及びy_startパラメータは、ヘッダが縮小画像内に含まれないように、ヘッダの下にある位置を識別するために使用されても良い。
interpolation_sizeパラメータ及びinterporation_averageパラメータは、縮小画像の1つのピクセルを生成するために使用されるオリジナル画像からの多数のピクセルを決定するために使用されても良い。interpolation_sizeパラメータは、縮小画像内に一つのピクセルを生成するために使用されるオリジナル画像内の連続したピクセルの数を特定する(二次元以上のオリジナル画像については、interpolation_sizeパラメータは、各次元内の連続したピクセルの数のタプル(tuple)であっても良い)。interpolation_averageパラメータは、補間プロセス内で正規化因子として使用されても良い。
たとえば、interpolation_sizeパラメータが4である場合には、縮小画像内に1つのピクセルを生成するために、オリジナル画像の線に沿って4つのピクセルが使用されても良い。オリジナル画像内の各ピクセルは、対応する重みと乗算され、乗算結果が合計され、合計はinterpolation_averageによって除算されても良い。特に効果的に実行するために、interpolation_sizeパラメータは二乗まで制限されても良く、及び/又はすべての補間の重みは「1」に設定されても良い。これらの条件の下で、interpolation_averageは、interpolation_sizeによって特定された二乗に対応する右シフトの数に設定されるべきである。よって、interpolation_sizeが4である場合には、interpolation_averageは2である。この例については、オリジナル画像内の4つのピクセルが合計され、次に、縮小画像内に一つのピクセルを得るために、合計が2つ右シフトされる。
縮小画像の次のピクセルを生成するためにオリジナル画像内の次のピクセルのセットのをそこから選択しても良いオリジナルドキュメント内の位置を決定するために、x_incrementパラメータ及びy_incrementパラメータが使用されても良い。たとえば、速い及び遅い走査方向を有するスキャナ100によってオリジナル画像内のピクセルが生成された場合には、各線(y次元)についての速い走査方向(たとえば、x次元で左から右へ)でのピクセルは、補間のために選択されても良い。現在の線の端に達した時には、遅い走査方向における次の線が選択されても良い。よって、interpolation_size=4であってx_position及びy_positionが現在のピクセルに対応する現在の線の現在の位置を示している場合には、縮小画像の次のピクセルを生成するために、現在のピクセルと現在のピクセルの次の3つの連続するピクセルとが補間のために選択されても良く、縮小画像の次のピクセルを生成するために、x_positonは現在の線の中の次の4つのピクセルのセットを得るためにx_incrementによってインクリメントされる。現在の線の端に達した時に、y_positionは、新しい現在の線のy次元内の位置について、y_incrementによってインクリメントされ、次の4つのピクセルのセットの位置を得るために、x_positionはx_startまでリセットされる。縮小画像のすべてのピクセルが生成されるまで、このプロセスは続く。x_positionとy_positionとの間の関係及び対応するピクセルについては、後述の図5と関連して説明する。
x_countパラメータ及びy_countパラメータは、縮小画像内のどのピクセルが縮小画像生成装置104によって出力されているかを識別する。たとえば、縮小画像生成装置104がオリジナル画像内のピクセルをx次元に沿って処理すると、x_countが、縮小画像内で生成された各ピクセルについて1つずつインクリメントされる。オリジナル画像内の現在の線の端に達して、x_positionがx_startに設定された時には、x_countが0等の所定の値にリセットされ、y_countが1つインクリメントされても良い。
line_widthパラメータは、縮小画像を生成するために使用可能な線(x次元)内の多数のピクセルを特定する。よって、x_startパラメータ及びy_startパラメータと同様に、line_widthパラメータは、縮小画像を生成するため又は単に線内の数を示すために使用されないように、オリジナル画像の一部を切り取る。残りを説明すると、x_position、x_positionパラメータ、又はx_position値は、x次元内の位置を示すために同義的に使用されても良い。他のパラメータすべてについて、同様に使用される。
図5は、x次元内に3900のピクセル位置を、y次元内に1350のピクセル位置を有するオリジナル画像のピクセル図を示す。左上の数字の連続に示されるように、x及びy次元内のピクセル位置は、左から右へ及び上から下へと0から始まる番号が付されている。
x_startパラメータ及びy_startパラメータは、オリジナルドキュメント内の所定の基準点から参照される。この所定の基準点は、最も左上の位置であっても良い。この位置はオリジナル画像内の最も左上のピクセルに対応していても良いが、必ずしもオリジナルスキャナグリッド上のいずれかのピクセル位置(たとえば、整数であってもよい)に対応している必要はない。さらに、x_startパラメータ及びy_startパラメータは、隣接ピクセル間のピクセル分離距離の整数の倍数ではない値であっても良い。図5に示すように、所定の基準点300は最も左上のピクセル位置ではなく、x_start及びy_startパラメータの大きさはx及びy次元内のピクセル分離距離の整数の倍数ではない。同様に、x_increment及びy_incrementは、x及びy次元内のピクセル分離距離の整数の倍数ではない。
x_start、y_start、x_increment、及びy_incrementのパラメータは、x及びy次元内のピクセル分離距離の整数の倍数ではない値を有するから、x_poisitionパラメータ及びy_positionパラメータはオリジナルドキュメント内の正確な現在位置を把握するために使用されても良く、x_pixelパラメータ及びy_pixelパラメータは、オリジナル画像内の現在のピクセルを識別するために使用されても良い。x_pixelは、x_pixel=0が線内の最も左のピクセルを識別する位置における、左から右へ数える時のピクセル数(列数)である。y_pixelは、y_pixel=0がオリジナル画像内の最も上の線を識別する位置における、現在の線を識別する。x_pixelパラメータは、もっとも近い整数位置に四捨五入されたx位置パラメータに設定される。x_positionが丁度2つのピクセル位置間にある時には、x_pixel値を得るために、その値は下方に四捨五入される。図5は、x_positionがピクセル3に最も近いことを示している。よって、x_pixel値は、3に設定される。同様に、y_pixel値は、最も近い整数に四捨五入されたy_positionに設定されており、現在の線を識別する。
図5は、y_position値が線4に最も近いことを示す。よって、y_pixelは4に設定される。したがって、図5に示される例については、(x=3,y=4)におけるピクセルは、縮小画像内の最初のピクセルを生成するために使用される4つのピクセルの最初である(interpolation_size=4の場合)。よって、x_position及びinterpolation_sizeは、縮小画像内にピクセルを生成するためにその中でピクセルが選択される近隣を定義する。近隣の境界は、上述のように定義されている。
図3に戻ると、位置制御装置114は、サムネイル画像等の縮小画像を生成するために使用されるオリジナル画像のデータ位置(たとえば、ピクセル)を識別する。補間回路112は、位置制御装置114によって識別されたデータ位置に基づいて、縮小画像の出力データ位置(たとえば、ピクセル)を生成する。縮小画像生成プロセスを開始する時には、CPU106は、管理パラメータ記憶装置110から必要なパラメータを取り出すことと、x_position、y_position、x_pixel、及びy_pixelの値を維持することとを指示する。x_pixel値及びy_pixel値は、メモリ108からオリジナル画像の適切なピクセル値を取り出すために使用され、CPU106から指示されると、取り出されたピクセル値は補間回路112に与えられ、縮小画像について補間された値の生成を開始する。上述の記載ではオリジナル画像がメモリ108内に記憶されているが、縮小画像は、スキャナ100の出力(色変換が必要でない場合)又は色変換装置102の出力から直接生成されても良い。この場合には、オリジナル画像はメモリ108内に記憶される必要はなく、中間値のみが一時的に記憶される必要がある。メモリは、たとえばCPU106内のレジスタ等の補間の合計を保持するために要求されても良い。
縮小画像の各ピクセルが補間回路112によって生成された後に、位置制御装置114は、x_incrementでx_positionをインクリメントし、x_pixel値を更新する。縮小画像の次のピクセル値を生成するために、位置制御装置114は次にオリジナル画像の適切なピクセルをメモリ108から取り出して補間回路112に供給する。y_pixel値によって識別された現在の線に対応するすべてのピクセルが使い果たされるまで又はx次元内の所定の数の縮小画像ピクセルに達するまでのいずれか早い方まで、このプロセスは続く。所定の数は、図4に示される表に追加された、追加の管理パラメータであるx_count_limitであっても良い。同様の理由から、対応する管理パラメータであるy_count_limitがy次元について追加されても良い。ここで、位置制御装置114は、y_incrementの値でy_positionをインクリメントし、縮小画像の次の線を生成するために使用されても良いオリジナル画像の次のピクセルの線を識別するy_pixel値を決定する。よって、現在の線のx次元内のピクセルは補間されるが、y次元内のピクセルは縮小画像を生成するために省かれて捨てられる。
たとえば、右側又は下のマージンが縮小画像に含まれない時には、x_count_limit及びy_count_limitは、右側及び下側それぞれのオリジナル画像を効果的に切り取るために使用されても良い。当然のことながら、オリジナル画像寸法から縮小画像寸法への縮小比は大きくても良く、それゆえ、オリジナル画像の非常に多くの線の中で得られる情報は、このような情報を縮小画像内に表示する能力をはるかに超えていても良く、サムネイルを生成する目的が構造又は形状によってドキュメントの識別を容易にするためだけである時には特にそうである。
図6は、縮小画像の最初のピクセル(x_countが0であり、y_countが0である)を補間するためにオリジナル画像の線4とピクセル3〜10(interpolation_sizeが8)とが選択された場合の例を示す。位置制御装置114はメモリ108からオリジナル画像のピクセル3〜10を取り出し、補間回路112は、各ピクセル3〜10を対応する重み値で乗算し、乗算結果を合計し、合計結果をinterpolation_average値に対応する値で除算することによって、対応するピクセルを縮小画像内に生成する。所望の縮小画像の品質と補間プロセスの所望の速度とに従って、乗算せずにピクセル3〜10に対するピクセル値を補間回路112が単に合計するように、すべての重みが1の値に設定されても良い。この特定の例ではinterpolation_sizeは2の累乗(23)であるから、interpolation_averageに対応する値による除算は、たとえばLSBが右側にある場合には、合計を単に3ビット右シフトすることによって容易に得られることがある。interpolation_sizeが2の累乗のみに抑えられている場合には、たとえば除算プロセスを実行するために、interpolation_average値は右シフトの数に均しい値であっても良い。このようにして、補間プロセスの速度は増やされても良く、次に、縮小画像を生成するために必要な時間を減らす。
図7は、現在のx_position値をx_increment値でインクリメントすることによって次の現在のx_positionに更新されている、現在のx_positionを示す。図7はx_increment値が5つのピクセル位置よりもわずかに大きいことを示し、その結果、次の現在のx_position値がピクセル7の位置よりわずかに大きくなる。よって、縮小画像の次のピクセルを生成するために、x_pixel値は7に設定され、ピクセル7〜14は位置制御装置114によって選択される。図7に示すように、ピクセル7〜10は二度使用される。ピクセル3〜10とグループ化された時に一度、ピクセル7〜14とグループ化された時に再度、である。よって、ピクセル7〜10は、縮小画像内に2つのピクセルを生成するために使用される。縮小画像を生成するためにピクセルが二度より多く使用される場合がないようにx_increment値が設定されても良い。
図8は、x_positionがピクセル12の最も近くにあるようなx_increment値を示す。この場合には、ピクセル11が縮小画像内のいかなるピクセル値にも貢献しないように、ピクセル11は省かれる。
図9は、x_positionがline_width値に近い状況を示す。図示のように、x_positionはピクセル3896に最も近い。しかしながら、位置制御装置114がinterpolation_sizeパラメータによって特定されたオリジナル画像の多数のピクセル、この例では8の値、を取り出そうとする時には、オリジナル画像内ではピクセル3896〜3899のみが得られる。この場合には、ピクセル3896〜3899が選択され、縮小画像のピクセルを生成するために補間回路について十分なピクセル値が存在するまで、ピクセル3899は複製される。最後のピクセルを複製する代わりに、位置制御装置114又は補間回路112は、最後のピクセルを単に繰り返して使用しても良い。オリジナル画像内にline_widthを越える十分な数のピクセルが得られるようにline_width値が設定されている場合には、複製プロセスが必要とされず、位置制御装置114は、補間プロセスについて、line_widthを越えるオリジナル画像内のピクセルを取り出しても良い。
図10は、x_positionプラスx_incrementがline_widthを越える状況を示す。この場合には、x_positionはx_startまでリセットされており、y_positionはy_incrementでインクリメントされる。y_pixelは、y_positionに最も近い位置のy次元値を有する線まで選択される。図示のように、線11が選択され、縮小画像の次のピクセルを生成するために、列11のピクセル3〜10が位置制御装置114によって取り出される。上述のように、y_position値がインクリメントされる時には、たとえば、x_countが0等の所定値に設定され、y_countは1でインクリメントされる。よって、たとえば図10に示すように、x_countは0であり、y_countは1である。
y_countを1でインクリメントした後にy_countがy_count_limitを越える場合には、縮小画像内の線の最大数を越える。この場合には、縮小画像生成プロセスは完了して、縮小画像が次のプロセスに出力される。縮小画像のピクセルが、生成されるとおりに出力された場合には、縮小画像生成プロセスは終了するか又は他の縮小画像を生成し始める。y_count_limitパラメータは、任意であっても良い。使用されない場合には、オリジナル画像内の多数の線が使い果たされるまで、縮小画像生成プロセスは単に継続するだけである。
補間回路112によって生成される縮小画像についてのピクセルが最初にメモリ108内に記憶され、完全な縮小画像が生成された後のプロセスの次の段階まで入力/出力ポート116を通って出力されても良い。しかしながら、縮小画像の各プロセスが補間回路112によって生成されるから、システム設計によっては、縮小画像のピクセルは、入力/出力ポート116によって次のプロセスまで出力されても良い。
上述の説明では、位置制御装置114及び補間回路112等の種々のハードウェア部品によって実行される機能を記述しているが、これらの機能は、例えばCPU106等の適切なプロセッサ内で作動するソフトウェア内で実行可能である。このようなシステム設計においては、ソフトウェアは、縮小画像内に対応するピクセルを生成するために、オリジナル画像内のどのデータポイント(ピクセル)を補間用に使用するかを決定する。x_start、y_start、x_position、y_position、x_increment、y_increment、x_size、y_size、line_width、x_count、y_count、x_count_limit、y_count_limit等の管理パラメータは、縮小画像生成プロセスを実行するためにソフトウェアによって処理される変数であっても良い。ハードウェア又はソフトウェアのいずれかによって実行されるプロセスは本質的に同一であり、次に説明されるフローチャートによって概説されても良い。
図11は、縮小画像を生成するためのプロセスのフローチャートである。ステップS100では、図4等に示される管理パラメータ等は、縮小画像生成を制御するために受信され、プロセスはステップS102に進む。上述のように、これらの管理パラメータはプリストアされていても良く、よって、ステップS100は不要なことがある。ステップS102では、オリジナルドキュメント内の所定の基準点に対する開始点は、現在のx_positionの値及び現在のy_positionの値を、x_startパラメータ及びy_startパラメータの値に設定することによって得られる。上述のように、現在のx_position及び現在のy_positionによって識別された位置にもっとも近いオリジナル画像内のピクセルは、開始ピクセルとして選択される。x_pixelパラメータ及びy_pixelパラメータも、x_position及びy_positionに最も近いピクセル番号及び線番号に対応して設定される。x_pixel値及びy_pixel値は、縮小画像内に特定のピクセルを生成するために使用されるピクセルを正確に識別するために使用される。ステップS102の後で、プロセスはステップS104に進む。
ステップS104では、現在の線のオリジナル画像内に補間プロセスを完了するために十分な数のピクセルがあるかどうかが検証される。不十分な場合には、プロセスはステップS106に進み、さもなければプロセスはステップS108に進む。ステップS106では、補間プロセス用に十分な数のピクセルがあるまで現在の線の最後のピクセルが複製され、プロセスはステップS108に進む。上述のように、補間プロセスの間は、別の準備的なステップS108ではなく、線毎(line−by−line)のベースでピクセルが複製可能である。メモリ資源が不十分な場合には、いくつかの出力線用に多数の複製されたピクセルを予め算定して記憶するのではなく、現在の線の上の最後のピクセルに頼ることが好ましいかも知れない。
ステップS108では、プロセスは、interpolation_sizeパラメータによって特定された現在の線(x次元)に沿ったオリジナル画像内の多数のピクセルを選択し、補間プロセスは縮小画像のピクセルを生成する。補間プロセスは、選択された各ピクセルを対応する重みで乗算し、乗算結果を合計し、合計をinterpolation_shiftパラメータに対応する値で除算しても良い。速度の増加については、すべての重みが1に設定されていてもよく、interpolation_sizeパラメータは2の乗数に設定されていても良く、選択されたピクセルの平均値を得るためにinterpolation_shiftパラメータは多数のバインダリシフト(bindery shift)に均しくても良い。次に、プロセスはステップS109に進む。ステップS109では、次の現在のx_positionを得るために現在のx_positionはx_incremenntでインクリメントされ、プロセスはステップS110に進む。
ステップS110では、次の現在のx_positionをline_widthパラメータの値で比較することによって、現在の線の端に達したかが検証される。又はピクセルのx_countがx_count_limitを越えているかが検証され、規定されている場合には、どちらが先に行なわれても良い。次の現在のx_positionがline_widthパラメータの値以下である場合には、現在の線には達しておらず、プロセスはステップS104に戻る。さもなければ、現在の線の端に達しており、プロセスはステップS112に進む。ステップS112では、縮小画像のすべてのピクセルが生成されたかが検証される。すべてのピクセルが生成された場合には、プロセスはステップS116に進み、終了する。さもなければ、プロセスはステップS114に進む。管理パラメータは、縮小画像の総数のピクセルを含んでいても良い。パラメータが与えられる場合には、生成されたピクセルの数のカウントが維持されても良く、このカウントがピクセルの必要な総数と均しい時には、ステップS112内の検証は成功し、プロセスはステップS116に進む。ステップS114では、x_positionパラメータはx_startの値に設定され、y_positionパラメータはy_incrementの値でインクリメントされる。次に、プロセスはステップS104に戻る。
上述の方法は、YCC色空間内のオリジナル画像の各色成分について行なわれる。色の値が例えば2:1の比でサブサンプルされた場合には、x_increment、y_increment、interpolation_size、及びline_widthのパラメータは、対応して、それらの値の半分にまで減らされるべきであり、多数の右シフトに対応する場合には、補間合計を正規化するために、interpolation_averageパラメータは、1つ減らされるべきである。
本発明を例示的な実施の形態と共に説明してきたが、これらの実施の形態は説明のためだけに見るべきであり、制限するものではない。本発明の精神及び範囲内で種々の変更、代替物等が可能である。特に、三次元画像等二次元よりも多い範囲に及ぶ画像については、z次元の一部内のx−y画像面は捨てられてもよく、よって、処理のために残りのx−y画像面を選択する。選択されたx−y面の各々の中のx_size by y_sizeブロックは、選択された各ブロックを平均化することによって処理されても良く、又は、縮小画像のデータポイントを生成するために種々の他の二次元補間プロセスが使用されても良い。
さらに、x_,y_start、x_,y_position、x_,y_incrementのパラメータがオリジナルドキュメント内の所定の基準点に対応する値を有するとして説明したが、左上のピクセルが所定の基準点である場合には、これらのパラメータはピクセルによって単に位置を特定しても良い。この場合には、x_,y_startはx及びy次元内のピクセルの数であっても良く、x_,y_incrementはx及びy次元内のピクセル総数であっても良い。x_position及びy_positionは、x_pixel及びy_pixelと同じであっても良い。
Claims (5)
- サムネイル画像を生成するための方法であって、
オリジナルドキュメントのオリジナル画像の線の一部のデータを捨てることと、
前記オリジナル画像に対応する前記サムネイル画像を生成するために、捨てられなかったデータを結合することとを備えた、
方法。 - 縮小画像を生成するための方法であって、
オリジナルドキュメントのオリジナル画像全体に及ぶ複数の次元の一つ以上の第1の次元の一部が及ぶすべてのデータを捨てることと、
前記オリジナル画像に対応する縮小画像を生成するために、捨てられなかったデータを結合することとを備えた、
方法。 - 補間回路と、
前記補間回路に結合された位置制御装置とを備える装置であって、
一つ以上の位置の値が前記位置制御装置に結合されており、捨てられたデータを省くために、前記位置の値を処理することによって、オリジナルドキュメント全体に及ぶ複数の次元の第1の次元の一部が及ぶオリジナルドキュメントのオリジナル画像内のすべてのデータを前記位置制御装置が捨て、前記オリジナル画像の縮小画像を生成するために前記補間回路は捨てられなかったデータを結合する、
装置。 - 縮小画像を生成するために使用されるオリジナルドキュメントのオリジナル画像のデータポイントを識別するための位置制御手段と、
前記位置制御手段によって識別されたデータポイントに基づいて前記縮小画像の出力データポイントを生成するための補間手段とを備える、
装置。 - サムネイル画像を生成するソフトウェアプログラムであって、
オリジナルドキュメントのオリジナル画像の線の一部のデータを捨てる動作と、
前記オリジナル画像に対応するサムネイル画像を生成するために、捨てられなかったデータを結合する動作と、を実行するプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/776,620 US7302116B2 (en) | 2004-02-12 | 2004-02-12 | Method and apparatus for reduced size image |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005228332A true JP2005228332A (ja) | 2005-08-25 |
Family
ID=34711835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005035186A Pending JP2005228332A (ja) | 2004-02-12 | 2005-02-10 | 縮小画像のための方法及び装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7302116B2 (ja) |
EP (1) | EP1566764B1 (ja) |
JP (1) | JP2005228332A (ja) |
CN (1) | CN1655577B (ja) |
TW (1) | TWI360346B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009534760A (ja) * | 2006-04-20 | 2009-09-24 | クゥアルコム・インコーポレイテッド | 画像スケーリングの方法と装置 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006074155A (ja) * | 2004-08-31 | 2006-03-16 | Mitsubishi Electric Corp | 画像処理装置および画像処理方法ならびに画像表示装置 |
JP3781050B1 (ja) * | 2005-02-22 | 2006-05-31 | 三菱電機株式会社 | 画像処理装置、画像処理方法、および画像表示装置 |
US7715657B2 (en) * | 2006-02-17 | 2010-05-11 | Microsoft Corporation | Method, device and program for detecting perceptual features of a larger image and incorporating information of the detected perceptual features into a smaller preview image |
US7941002B2 (en) * | 2006-12-01 | 2011-05-10 | Hewlett-Packard Development Company, L.P. | Apparatus and methods of producing photorealistic image thumbnails |
US7859708B2 (en) * | 2006-12-14 | 2010-12-28 | Xerox Corporation | Method and multi-function machine having capability of generating and printing thumbnails corresponding to scanned documents |
JP4807401B2 (ja) * | 2008-10-24 | 2011-11-02 | 富士ゼロックス株式会社 | 画像処理装置、画像形成装置およびプログラム |
US8305653B2 (en) * | 2009-09-24 | 2012-11-06 | Xerox Corporation | Printing system with improved scanning functionality |
CN102568443B (zh) * | 2010-12-29 | 2013-10-09 | 无锡华润矽科微电子有限公司 | 一种数字图像缩放方法 |
CN103902730B (zh) * | 2014-04-15 | 2017-05-03 | 中国科学院自动化研究所 | 一种缩略图生成方法和系统 |
CN105930052B (zh) * | 2016-04-14 | 2018-10-19 | 北京搜狐新媒体信息技术有限公司 | 一种截图方法及装置 |
JP2017215629A (ja) * | 2016-05-30 | 2017-12-07 | ソニー株式会社 | 画像処理装置、画像処理方法、および、プログラム |
CN108304241B (zh) * | 2018-01-31 | 2021-05-25 | 广州酷狗计算机科技有限公司 | 一种显示对话框的方法和装置 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4610026A (en) * | 1982-04-30 | 1986-09-02 | Hitachi, Ltd. | Method of and apparatus for enlarging/reducing two-dimensional images |
JPS623372A (ja) * | 1985-06-27 | 1987-01-09 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 画像変換装置 |
US4849914A (en) | 1987-09-22 | 1989-07-18 | Opti-Copy, Inc. | Method and apparatus for registering color separation film |
US4872064A (en) * | 1987-10-19 | 1989-10-03 | Interand Corporation | System for selective scaling of digital video images |
US5363213A (en) * | 1992-06-08 | 1994-11-08 | Xerox Corporation | Unquantized resolution conversion of bitmap images using error diffusion |
US5515452A (en) | 1992-12-31 | 1996-05-07 | Electroglas, Inc. | Optical character recognition illumination method and system |
US5583659A (en) | 1994-11-10 | 1996-12-10 | Eastman Kodak Company | Multi-windowing technique for thresholding an image using local image properties |
US5745596A (en) | 1995-05-01 | 1998-04-28 | Xerox Corporation | Method and apparatus for performing text/image segmentation |
JP3747523B2 (ja) * | 1996-07-02 | 2006-02-22 | ソニー株式会社 | 画像処理装置および処理方法 |
KR100214332B1 (ko) * | 1996-09-02 | 1999-08-02 | 윤종용 | 영상 배율 임의 변경 방법 |
US6043802A (en) * | 1996-12-17 | 2000-03-28 | Ricoh Company, Ltd. | Resolution reduction technique for displaying documents on a monitor |
US5900953A (en) | 1997-06-17 | 1999-05-04 | At&T Corp | Method and apparatus for extracting a foreground image and a background image from a color document image |
US6058214A (en) | 1998-01-20 | 2000-05-02 | At&T Corp. | Compression of partially masked still images |
US6400844B1 (en) | 1998-12-02 | 2002-06-04 | Xerox Corporation | Method and apparatus for segmenting data to create mixed raster content planes |
US6324305B1 (en) | 1998-12-22 | 2001-11-27 | Xerox Corporation | Method and apparatus for segmenting a composite image into mixed raster content planes |
US6633670B1 (en) | 2000-03-31 | 2003-10-14 | Sharp Laboratories Of America, Inc. | Mask generation for multi-layer image decomposition |
EP1351189A1 (en) * | 2002-04-02 | 2003-10-08 | Telefonaktiebolaget Lm Ericsson | Image processing |
US7272258B2 (en) * | 2003-01-29 | 2007-09-18 | Ricoh Co., Ltd. | Reformatting documents using document analysis information |
US7149353B2 (en) * | 2003-09-23 | 2006-12-12 | Amazon.Com, Inc. | Method and system for suppression of features in digital images of content |
-
2004
- 2004-02-12 US US10/776,620 patent/US7302116B2/en not_active Expired - Fee Related
-
2005
- 2005-02-05 TW TW094103878A patent/TWI360346B/zh not_active IP Right Cessation
- 2005-02-08 CN CN200510008069XA patent/CN1655577B/zh not_active Expired - Fee Related
- 2005-02-09 EP EP05100882.9A patent/EP1566764B1/en not_active Expired - Fee Related
- 2005-02-10 JP JP2005035186A patent/JP2005228332A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009534760A (ja) * | 2006-04-20 | 2009-09-24 | クゥアルコム・インコーポレイテッド | 画像スケーリングの方法と装置 |
US8111268B2 (en) | 2006-04-20 | 2012-02-07 | Qualcomm Incorporated | Image scaling method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
US7302116B2 (en) | 2007-11-27 |
EP1566764B1 (en) | 2017-06-07 |
CN1655577B (zh) | 2012-06-27 |
EP1566764A2 (en) | 2005-08-24 |
CN1655577A (zh) | 2005-08-17 |
TW200539681A (en) | 2005-12-01 |
US20050180658A1 (en) | 2005-08-18 |
EP1566764A3 (en) | 2008-04-02 |
TWI360346B (en) | 2012-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005228332A (ja) | 縮小画像のための方法及び装置 | |
US8169656B2 (en) | Image processing devices and methods for resizing an original image therefor | |
JP5020474B2 (ja) | フィルタリング方法、コンピュータ可読媒体又は変調信号、フィルタ装置、及びデジタルコピー機 | |
US8649064B2 (en) | Printing device capable of printing image of image file | |
JP2005202593A (ja) | 画像処理装置、プログラム及び方法 | |
US7480071B2 (en) | Maximizing performance in a hardware image scaling module | |
CN111917934A (zh) | 图像处理方法、装置、图像形成装置及存储介质 | |
US8379268B2 (en) | Image enlargement method, image enlargement apparatus, and image forming apparatus | |
JP2005038046A (ja) | シェーディング補正装置、シェーディング補正方法、シェーディング補正プログラム、シェーディング補正装置に用いる補間演算装置、補間演算方法、補間演算プログラム、並びにその応用装置 | |
JP2000270208A (ja) | 画像処理装置及び画像処理方法 | |
US20040201863A1 (en) | Enhanced scaling range for standalone all-in-one devices | |
JP2008035455A (ja) | 画像処理装置、画像処理プログラム | |
JP2004213100A (ja) | 色変換処理装置及び色変換処理方法 | |
JP5477769B2 (ja) | 画像処理装置、及び画像処理プログラム | |
JP2002259960A (ja) | 画像処理装置及び画像処理方法 | |
JP4277764B2 (ja) | 画像処理装置 | |
JP2007088686A (ja) | 画像処理装置、画像処理方法及びそのプログラム | |
JP4239447B2 (ja) | 画像変換処理方法、画像変換処理プログラム、画像変換処理プログラムを記録した記録媒体、及び画像変換処理システム。 | |
JP4458757B2 (ja) | 画像処理装置 | |
JP5135297B2 (ja) | 画像処理装置および画像処理方法 | |
JP3941729B2 (ja) | 画像処理装置 | |
JPH1084472A (ja) | 画像処理装置 | |
JP3972614B2 (ja) | 画像処理装置 | |
JPH10341334A (ja) | 画像拡大方法及びその装置並びにプログラムを記録した記憶媒体 | |
JP2009089176A (ja) | 情報処理装置及び情報処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090623 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090807 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20091027 |