JPH09231351A - 画像のリサイジング方法及びそのためのコンピュータプログラム製品 - Google Patents
画像のリサイジング方法及びそのためのコンピュータプログラム製品Info
- Publication number
- JPH09231351A JPH09231351A JP8325884A JP32588496A JPH09231351A JP H09231351 A JPH09231351 A JP H09231351A JP 8325884 A JP8325884 A JP 8325884A JP 32588496 A JP32588496 A JP 32588496A JP H09231351 A JPH09231351 A JP H09231351A
- Authority
- JP
- Japan
- Prior art keywords
- variable
- interpolation data
- data
- computer
- horizontal interpolation
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
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
スケーリングを効率的に行えるようにする。 【解決手段】 MSR入力ストリームから2つの変数を
抽出する。これらの変数を選択的にインターリーブす
る。このインターリーブ結果の高位バイト及び下位バイ
トを定数乗算によって16ビット表現に変換する。この
変換結果を2つずつ加算することによって水平補間デー
タを生成する。前の繰返しにおける水平補間データをバ
ッファに保持しておく。現在と前回の水平補間データを
互いに加算することにより垂直補間データを形成する。
次に、水平補間データを2倍して、垂直補間データと水
平補間データの間で精度を等しく保つ。パッキング関数
を用いて、データをデスティネーションに出力するため
の8ビット表現に逆変換する。精度は同じであるから、
パッキング命令中のただ1つの除数で水平と垂直の両方
の補間データを扱うことができる。
Description
ジング(サイズ変更)に関するものである。より詳しく
は、本発明は、ソース画像のズーム画像を得るための画
像のバイリニア(bi-linear )スケーリング方法に関す
る。
野においておおむね周知である。画像をリサイジングす
ると、ソースピクセルはデスティネーションピクセルに
対して程度の異なる寄与をする。このような寄与は、ソ
ースピクセルの寄与係数として知られている。通常、こ
のような寄与に関わるソースピクセルが2つ以上ある場
合、4つまたは16のピクセルがこの寄与をなすものと
考えられる。これは、それぞれバイリニアフィルタリン
グ及びバイキュービック(bi-cubic)フィルタリングに
相当する。一般に、スケーリングは別々に行うことがで
きるということは周知である。たとえば、ある特定の画
像は、ソースピクセルに対して適切な係数を選択するこ
とによって、まず横方向にスケーリングした後、縦方向
にスケーリングすることができる。
心である幾何学的点を選択し、ソース中の点をデスティ
ネーションにマップ(写像)する関数を立てることによ
り、デスティネーションのスケーリングされた変換をx
及びyの一次関数として生成することによって選択され
る。この関数の逆関数が、データを生じたソース中の点
を与える。選択された点がソースピクセルの中心でなけ
れば、ソースデータを補間してソースピクセル中心間の
相対距離を求め、それに応じて重みを付ける必要があ
る。このように、フィルタ係数は逆マッピングされたデ
スティネーション点のサブピクセル位置の関数である。
必要な場合は数多くある。このような場合においては、
バイリニアフィルタリングを行うと、各隣接ピクセルに
よって水平補間ピクセルの半分が得られると考えること
ができるので、寄与係数の計算が簡単になる。同様に、
垂直方向の隣接ピクセルでも、各々垂直補間ピクセルの
半分が得られると考えることができる。中心のピクセル
は、リサイジングに寄与する各ソースピクセルの4分の
1の形で得られる。残念なことには、既存のスケーリン
グ技法では、画像データの緩慢なピクセル単位画像デー
タ操作、すなわち1ピクセル毎の操作が避けられず、一
部のようとで要求される迅速性及び効率を確保すること
ができない。
えるようにすることが強く要望されている。さらに、多
数のピクセルを同時に処理できるようにすることに対す
る要望も強い。
め、本発明は、画像を2倍にスケーリングする方法を提
供するものである。たとえば、本発明の一実施態様にお
いては、無整列の入力ストリームから2つの変数を抽出
する。無整列入力ストリームは、最初の有効データが同
時にアクセス可能なデータ数の偶数倍数のアドレスに存
在することが確実でない場合に生じる。出発ピクセルが
水平補間ピクセルかどうかに応じて、第1の変数または
第2の変数がその変数自体とマージされる。また、第1
及び第2の変数は、どちらの場合も相互にマージされ
る。各マージは、それぞれの変数の高位バイト及び下位
バイトに対して別々に行われる。従って、マージの結
果、各々8ビット表現の8つの値を各々含む4つの新し
い変数が生じる。
じめ選択した定数をかけることによって16ビット表現
に変換する。この定数は、その後の処理でそれ以上の計
算を必要としない出力が得られるように選択される。さ
らに、この定数乗算の結果、変数の数が4から8に倍増
する。次に、これら8つの変数を2つずつ加算すること
によって、水平方向に補間されたデータ(以下水平補間
データとする)が生成される。
されている前の水平方向に補間された行に加える。この
加算が完了すると、その水平補間データによってバッフ
ァに保持された対応するデータ置換される。この加算に
よって、垂直方向に補間されたデータ(以下垂直補間デ
ータとする)が生成される。バッファ格納データへの加
算は、実際には垂直補間データを「2倍する」ので、水
平補間データも2倍して、両方のデータ間の関係を保つ
必要がある。この2倍処理は、水平補間データをそれ自
体に加えることによって行われる。
クしてデスティネーションへ出力しなければならない。
このパッキング関数では、暗黙の除算が可能となり、こ
れはユーザが設定することができる。前記の選択される
定数とパッキング関数の間の調整は、最大効率を達成す
るために重要である。垂直補間データと水平補間データ
との間では同じ精度が保たれているので、1つのパッキ
ング除数を両方のデータタイプに対して有効に働かせる
ことができる。このパッキングは16ビット表現を8ビ
ット表現に変換し、データをデスティネーションラスタ
への出力にとって適切な形式にする。
システムにおいて図形画像をリサイジングするための方
法をその実施形態により説明する。以下の説明において
は、説明の便宜上、具体的な応用例、数、及び構成を記
載して本発明の十分な理解を図る。しかしながら、当業
者にとっては、本発明がそのような特定の詳細事項の記
載がなくても実施可能なことは明らかであろう。その他
の場合においては、本発明が必要以上に不明確にならな
いように、周知のシステムは模式図またはブロック図形
式で示す。
の画像データを取り出し、2倍にスケーリングするかと
いうことである。図1は、そのような任意の画像を本発
明を用いてスケーリングするプロセスの一例を代数的に
示。図中a0,a1,....,b0,b
1,....,c0,c1,....は、ソース画像の
ピクセルデータを表す。図2は、本発明を用いた2×2
のピクセルブロックのスケーリングプロセスを図式化し
て示す。水平方向の隣接ピクセル1と2及び3と4をそ
れぞれ互いに加算し、2で割ることによって水平補間ピ
クセル5及び6が生成される。同様に、ソース画像の垂
直方向の隣接ピクセル1と3及び2と4をそれぞれ互い
に加算し、2で割ることによって垂直補間ピクセル7及
び8が生成される。次に、水平補間ピクセル5と6を互
いに加算し、2で割ることによって中心補間ピクセル9
を得ることができる。垂直補間ピクセル7と8を互いに
加算し、2で割っても同じ結果が得られるということ
は、当業者ならば理解できよう。所望のスケーリングを
効率よく行うために、本発明の方法は、新規なハードウ
ェア基本要素を用いてピクセルデータを処理することに
より演算の並行処理性を高める一方、必要な補間ピクセ
ルを生成するために互いに加算することができる変数を
効率的に生成するものである。
2または(p0+q0)/2またはp0+p1+q0+
q1)/2の形の出発ピクセルに対応しなければならな
いので、多少複雑である。最初のピュアピクセル及び水
平補間ピクセルの両方に対応するためには、主ループを
ツインで保持することが必要である。最初の垂直補間ピ
クセルの処理については、最初の走査線に関わる特殊な
ケースに出力ポインタを入れることによって対応するこ
とができる。
可能なシステムを示す。図示システムにおいて、プロセ
ッサ(CPU)10は、バス12を介して主メモリ11
及びキャッシュ13に接続されている。プロセッサ10
中の制御レジスタ20は、以下により詳細に説明するよ
うに、align命令に応答して2つのオペランドのど
の部分が戻されるかを決定する値を記憶するために用い
られる。ULTRASPARC(登録商標)ワークステ
ーションにおいては、この制御レジスタはグラフィック
ス状態レジスタ(“GSR”)として知られている。他
のアーキテクチャでは、この制御レジスタ20は別の呼
び方をされることもある。図示のように、主メモリ11
中にはバッファ15の領域が割り当てられている。BU
F0〜BUF3のバッファは、リサイジングで前の行か
らの水平補間データを記憶するために使用される。JU
NK(ジャンク)のバッファは不必要な出力データを書
き込むための安全な場所を確保するために使用される。
これらのどちらのバッファについても、以下により詳し
く説明する。
TRASPARC(登録商標)ビジュアル命令セット
(“VIS”)に関連して記載し、かつこの命令セット
を使用する。本発明の一実施形態においては、CPU1
0は、ビジュアル命令セット(“VIS”)を用いたサ
ン・マイクロシステムズ(Sun Microsyst
ems)社のULTRASPARC(登録商標)であ
る。ULTRASPARC(登録商標) 及びVISに
関しては、「統合グラフィックス機能を有する中央処理
装置(CENTRAL PROCESSING UNI
T WITH INTEGRATED GRAPHIC
FUNCTIONS)」という名称の本願の同時係属
出願(出願番号第08/236,572号;出願日19
95年4月29日)により詳しく記載されている。他の
命令セット及びアーキテクチャが同じ機能性をサポート
することは十分予期される。従って、それらの機能性
は、どのように形態で明示されている場合も、当然本願
の範囲及び本願によって予想される範囲に包括されるも
のである。
ための概略フローチャートを示す。図4は本発明のシス
テムの初期化及び最初の走査線に関わる特殊なケースの
始めを示す。機能ブロック100は、入ってくるピクセ
ル値を16ビット値に変換するために掛ける定数の初期
化に相当する。この定数を適切に選択することによっ
て、正しくスケーリングされた最終結果が得られる。本
発明の一実施形態においては、この定数として8192
を用いる。これは、5桁の桁移動に相当する。以下に、
さらに詳しく説明するpack命令では、パッキングに
伴って移動する桁数の指定が可能である。8192に等
しい定数によれば、パッキングプロセスにおける7桁の
桁移動で所望の結果が得られる。他の定数も同様に使用
することができるが、定数の選択に際しては、解像度が
失われないように、結果的に得られるあらゆる小数ピク
セル値を表すのに十分な数のビットを用いる必要がある
ということに留意すべきである。
lignaddr命令を用いて初期化することができ
る。GSRの設定は、連続する2つの8バイトの各オペ
ランドが、faligndata命令の結果に何バイト
寄与するかを指示する。たとえば、alignaddr
(0,5)は、GSRのalignビットを5にセット
し、その後2つの連続する8バイト値r及びsについて
faligndata命令を使用すると、falign
data(r,s)の結果としてr5-7s0-4が得られ
る。このfaligndata命令は、無整列入力スト
リームから適切に整列されたデータを得るのに広範に用
いられている。
及びこれらのバッファに対応するポインタが生成され
る。始めの4つのバッファは、垂直補間で使用する中間
結果を格納するために用いられる。5番目のバッファ
「ジャンク」は、不必要な出力データを書き込むための
安全な場所である。各バッファは、ソース走査線の2倍
の長さにするべきである。
バイトを書き込むよう設計されているので、最初のデス
ティネーションバイトが8の倍数のアドレスに位置する
ようにデスティネーションを整列することが必要であ
る。本発明の一実施形態においては、最初のデスティネ
ーションがそのようなアドレスに来るまで、Cコードを
用いて値を生成する。機能ブロック102はこの整列に
相当する。機能ブロック103は、デスティネーション
の最初の行が偶数行で、水平補間に対応するのか、ある
いは奇数行で、垂直補間が必要かを決定することに相当
する。いずれのケースも、最初の走査線は、バッファに
有効なデータが書き込まれていないので、一つの特殊な
ケースである。そのために、バッファの全桁に書き込む
ための値をバッファ記憶値を全く用いることなく生成し
なければならない。バッファ記憶値は全くないので、垂
直補間値を生成することは不可能であり、従って、機能
ブロック104は、出力ポインタをジャンクに設定し
て、デスティネーションの記憶場所への無効なデータの
書込みを防止することに相当する。これに対して、最初
の行が偶数行の場合、水平補間値はバッファ記憶データ
を使わずに生成できる。従って、機能ブロック105
は、同じ出力ポインタをそのデスティネーションアドレ
スに設定することに相当する。
始めが読み込まれる。機能ブロック107では、変数p
0_p7が抽出される。機能ブロック108では、走査
線からの8つの無整列バイトが中間変数“PREV”に
入れておく一方、次の8つの無整列バイトが中間変数
“NEXT”に読み込まれる。これらのPREV及びN
EXT変数から、機能ブロック110で変数p8_p1
5が抽出される。p8_p15は、p0_p7と共に、
変数p1_p8を抽出するためのfaligndata
オペランドとして使用される。図7は、本発明における
水平補間に必要な変数の取込み及び抽出のプロセスを図
式的に示したものである。整列されたメモリからは、f
aligndata及び前と次の中間変数を用いて、8
バイトの2つの変数p0_p7及びp8_p15が要求
される。変数p0_p7は直接使用されるが、直接使用
される2番目の変数p1_p8は、図示のように、変数
p0_p7及びp8_p15とともにfalignda
taを用いて得ることができる。
プロセスが示されている。判断ブロック111では、デ
スティネーションに出力される最初のピクセルがピュア
ピクセルであるか、補間ピクセルであるか、すなわちp
0または(p0+p1)/2のどちらの形の最初のピク
セルであるか確認される。その判断結果に基づいて、ブ
ロック113または112中の機能ブロックの緊密に関
係するマクロがそれぞれ適用される。
ピクセルがピュアピクセルである特殊な初期ケースで使
用するマクロが入っている。機能ブロック113には、
走査線の最初のピクセルが水平補間ピクセルである初期
ケースで使用するマクロが入っている。これらのマクロ
については、以下に一般的なケースと関連させて詳細に
説明する。ここで、初期ケースでは、上に述べたよう
に、バッファに有効なデータが書き込まれていないの
で、垂直マクロはないということに留意すべきである。
従って、初期ケースでは垂直補間は全く不可能である。
g及びedge命令を用いて最初の8バイトの結果がデ
スティネーションラスタに書き込まれる。また、デステ
ィネーションポインタがデスティネーションの終端を超
えると、他の必要データがオーバーライトされるので、
デスティネーションポインタがデスティネーションの終
端を絶対に超えないようにすることも必要である。この
ポインタは各書込み後にインクリメントされるので、機
能ブロック115は、前記デスティネーションポインタ
の条件が満たされないと(test不合格の場合)、各
パスの2回目の書込みを阻止する。判断ブロック114
がこの条件チェック(test)に相当する。前記チェ
ックで条件が満たされていれば、機能ブロック116b
で2番目の8バイトの結果がデスティネーションに書き
込まれる。ここでも、masking及びedge命令
が用いられる。機能ブロック117は、変数p8_p1
5と次の変数の再循環動作に相当する。この機能ブロッ
クでは、p8_p15がp0_p7になり、NEXTが
次の繰返しにおけるPREVになる。機能ブロック11
8では、この走査線が終了したかどうかが確認される。
走査線が終了していなければ、さらに8つの無整列バイ
トがNEXTに読み込まれ、機能ブロック109に戻っ
て処理が続けられる。走査線が終了した場合は、最初の
走査線に関する特殊ケースはより一般的なケースに移行
する。まず、判断ブロックまたはボックス119で、走
査線が実際にデスティネーションレジスタに書き込まれ
たかどうかの判断が行われる。走査線が書き込まれなか
った場合は、最初のピクセルは垂直補間ピクセルである
から、その前の走査線はジャンクに送られている。判断
ボックス119の結果は、HまたはH−1の走査線がそ
の後さらに機能ブロック120及び121でそれぞれ処
理されるかどうかを指示する。Hとは、デスティネーシ
ョンの高さである。最後の繰返しで奇数本の走査線が処
理されるために残っている場合は、対応するポインタを
ジャンクに振り向けることによって2番目の出力行を阻
止しなければならない。そして、デスティネーション
は、機能ブロック102におけると同様に、機能ブロッ
ク122で整列される。同様にして、機能ブロック12
3では、特殊ケースの機能ブロック107及び108に
おけると同様に、PREV及び変数p0_p7が初期化
される。
発明により達成される効率の相当部分はこれらの主ルー
プから得られる。最初のピクセルがピュアピクセルかど
うかは最初の走査線に関わる特殊ケースで指示されるの
で、判断ブロック124は、実際には暗黙判断になる。
ピュアピクセルの場合は、機能ブロック126でNEX
Tがロードされ、p1_p8が抽出される。この抽出の
後には、機能ブロック128のCASE1マクロの実行
が続く。機能ブロック128には、ピュアピクセルの一
般ケースのためのマクロが入っている。
MPLE_CASE1は、本発明にとって非常に重要で
ある。RESAMPLE_CASE1(201)におい
ては、p0_p7がそれ自体とマージされる。VISの
fpmerge命令が、2つの4バイトオペランドを取
ってインターリーブすることにより、1つの8バイトの
結果を生成する。このように、p0_p7は、それ自体
とマージされるとき、2つの別個の命令でマージされ、
同じ高位バイト及び同じ下位バイト同士が互いにマージ
される。これによって、変数p0p0p1p1p2p2
p3p3、及びp4p4p5p5p6p6p7p7が生
成される。この関係を図8に図式化して示す。図9は、
変数p0_p7を変数p1_p8とマージするためのR
ESAMPLE_CASE1(201)の第2のステッ
プを示す。上に説明した場合同様、この結果として、変
数p0p1p1p2p2p3p3p4及びp4p5p5
p6p6p7p7p8が生成される。
らかじめ選択された定数をかけることによって16ビッ
ト表現に変換される。もう一つの実施形態においては、
この変換は、同様に、32ビット表現、または以後の加
算によってオーバーフローを生じないだけの十分なビッ
ト数の任意の表現に変換することもできる。前記乗算
は、前記4つの変数の高位バイト及び下位バイトに対し
て行われる。その結果、次の8つの変数が得られる:p
0p0p1p1_2;p0p1p1p2_2;p2p2
p3p3_2;p2p3p3p4_2;p4p4p5p
5_2;p4p5p5p6_2;p6p6p7p7_
2;及びp6p7p7p8_2。次に、これらの変数を
2つずつ互いに加算することによって次の4つの変数が
得られる:p0_p0p1_p1_p1p2;p2_p
2p3_p3_p3p4;p4_p4p5_p5_p5
p6;及びp6_p6p7_p7_p7p8。たとえ
ば、Hp0_p0p1_p1_p1p2は、16ビット
形式で値2*p0,(p0+p1),2*p1,(p1+
p2)を含む。
D_VERTICALLY_CASE1であり、このマ
クロは、前の水平補間行が書き込まれたバッファの内容
に、これと対応する、すなわち現在の水平補間行から垂
直方向に隣接する値を加算することによって垂直補間行
が生成される。次に、マクロ203でバッファのsto
reを実行すると、バッファの前の内容が水平補間行の
現在の値に置換される。ケース1とケース2とで共用さ
れる垂直packマクロ204は、fpack命令を用
いて垂直方向加算の結果を8ビット表現の出力値に変換
する。垂直方向加算の関数を垂直パックのプロセスと結
合した形で図12に示す。fpack関数は、4での暗
黙の除算を行って、正しい垂直補間出力値を与える。
ASEマクロが実行されず、fpack関数の暗黙除数
を変えることは相対的に高くつくので、水平補間行を2
倍して、4での除算によって水平補間行でも正しい結果
が得られるようにすることが望ましい。この機能は、マ
クロDOUBLE_OUTPUTS_CASEによって
行われ、このマクロでは、偶数行変数がそれ自体に加算
される。水平補間行を4の暗黙除数で8ビット表現に変
換するには、PACK_HORIZONTAL_CAS
E1(206)が使用される。偶数出力の2倍処理及び
水平行のパッキングプロセスを図11に示す。CASE
1ループ132またはCASE2ループ130の繰返し
毎に2本のデスティネーション行が生成される。ループ
に各パスを通す毎に各デスティネーション行の16バイ
トが生成される。これらのバイトは機能ブロック128
で出力される。次に、機能ブロック129では、NEX
T及びp8_p15を再循環させる。デスティネーショ
ンのデータ出力がデスティネーションの終端から16バ
イト以内になるまで、CASE1ループ(131)また
はこれに対応するCASE2ループ(130)が反復さ
れる。デスティネーションの長さを求めて、繰返しを少
な目な回数で行うことができるので、これらの主ループ
では明示条件付きにする必要はない。そのために、非常
に効率的な並列処理が可能である。結果がデスティネー
ションの終端から16バイト以内に書き込まれていれ
ば、最初の走査線に関する特殊ケースで使用したのと同
様に、masking命令を用いて最後のクリーンアッ
プパスが実行される。
は、機能ブロック125でCASE2がロードされ、p
1_p8が抽出され、機能ブロック127でCASE2
マクロが実行される。機能ブロック127にはケース2
マクロが入っている。これらのマクロは、p0_p7と
p1_p8がマージされて初期変数が形成されるよう
に、またp1_p8がそれ自体とマージされて次の一組
の変数が形成されるようにして、RESAMPLE_C
ASE2(211)の初期入力がマージされるという点
においてだけ、ケース1のマクロと異なっている。この
違いは、ADD_VERTICALLY_CASE2
(212)、STORE_BUFFERS_CASE2
(213)、DOUBLE_OUTPUTS_CASE
2(215)、及びPACK_HORIZONTAL_
CASE2(216)の全体にわたって影響する。その
他の点では、CASE2マクロはCASE1のマクロと
全面的に同じである。最初のピクセルがピュアピクセル
の場合、CASE2ループ131は完全に無視される。
の実施形態に関連して説明した。しかしながら、特許請
求の範囲に記載するより広義の本発明の精神並びに範囲
を逸脱することなく、本発明のシステムの様々な修正態
様及び変形態様を実施することが可能なことは自明であ
ろう。従って、本願明細書及び図面は、限定的な意味で
はなく例示説明的な意味で解釈すべきものである。故
に、本発明の範囲は特許請求の範囲の記載によってのみ
限定されるべきである。
るプロセスを示す説明図である。
リングするプロセスを示す説明図である。
例のブロック図である。
である。
一部である。
ートである。
説明図である。
を示す、説明図である。
ロセスを示す説明図である。
ト表現に変換するための乗算プロセスを示す説明図であ
る。
パックするプロセスを示す説明図である。
ロセスを示す説明図である。
ャッシュ、15バッファ、20 制御レジスタ。
Claims (11)
- 【請求項1】 コンピュータシステムで画像を2倍にス
ケーリングする方法において: a) 選択的に第1の変数または第2の変数をそれ自体
とマージして、少なくとも1つのマージ変数を生成する
ステップと; b) 前記第1の変数と前記第2の変数とをマージし
て、少なくとも1つのもう一つのマージ変数を生成する
ステップと; c) 前記少なくとも1つのマージ変数及び前記少なく
とも1つのもう一つのマージ変数にあらかじめ選択され
た定数を各々乗じて、拡張表現形式の複数の拡張変数に
変換するステップと; d) 前記複数の拡張変数を2つずつ互いに加算して水
平補間データを生成するステップと;を具備した方法。 - 【請求項2】e) 前記水平補間データに前の走査線か
らの対応する水平補間データを加算して垂直補間データ
を生成するステップ;をさらに具備した請求項1記載の
方法。 - 【請求項3】f) 前記水平補間データを2倍するステ
ップ;をさらに具備した請求項2記載の方法。 - 【請求項4】g) 前記2倍した水平補間データをパッ
クするステップと; h) 前記垂直補間データをパックするステップと; i) 前記パックされた垂直補間データ及び前記パック
され水平補間データをデスティネーションの相続く行に
書き込むステップと;をさらに具備した請求項3記載の
方法。 - 【請求項5】 無整列ストリームから前記第1及び第2
の変数を取り込むステップ;をさらに具備した請求項1
記載の方法。 - 【請求項6】 バスによってメモリに接続されたプロセ
ッサを有するコンピュータシステムで画像をスケーリン
グするためのコンピュータ使用可能コードが記録された
コンピュータ使用可能媒体を含むコンピュータプログラ
ム製品において:選択的に第1の変数または第2の変数
をそれ自体とマージして、少なくとも1つのマージ変数
を生成するためのコンフィギュレーションを有するコン
ピュータ可読プログラムコード手段と;前記第1の変数
と前記第2の変数をマージして、少なくとも1つのもう
一つのマージ変数を生成するためのコンフィギュレーシ
ョンを有するコンピュータ可読プログラムコード手段
と;前記少なくとも1つのマージ変数及び前記少なくと
も1つのもう一つのマージ変数にあらかじめ選択された
定数を各々乗じて、拡張表現形式の複数の拡張変数に変
換するためのコンフィギュレーションを有するコンピュ
ータ可読プログラムコード手段と;前記複数の拡張変数
を2つずつ互いに加算して水平補間データを生成するた
めのコンフィギュレーションを有するコンピュータ可読
プログラムコード手段と;を具備したコンピュータプロ
グラム製品。 - 【請求項7】 前記水平補間データに前の走査線からの
対応する水平補間データを加算して垂直補間データを生
成するためのコンフィギュレーションを有するコンピュ
ータ可読プログラムコード手段;をさらに具備した請求
項6記載のコンピュータプログラム製品。 - 【請求項8】 前記水平補間データを2倍するためのコ
ンフィギュレーションを有する請求項7記載のコンピュ
ータ可読プログラムコード手段;をさらに具備した請求
項7記載のコンピュータプログラム製品。 - 【請求項9】 前記2倍した水平補間データをパックす
るためのコンフィギュレーションを有するコンピュータ
可読プログラムコード手段;をさらに具備した請求項8
記載のコンピュータプログラム製品。 - 【請求項10】 前記垂直補間データをパックするため
のコンフィギュレーションを有するコンピュータ可読プ
ログラムコード手段;をさらに具備した請求項6記載の
コンピュータプログラム製品。をさらに具備した方法。 - 【請求項11】 無整列ストリームから前記第1及び第
2の変数を取り込むためのコンフィギュレーションを有
するコンピュータ可読プログラムコード手段;をさらに
具備した請求項6記載のコンピュータプログラム製品
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/562,693 US5745123A (en) | 1995-11-27 | 1995-11-27 | Method for resizing an image by a factor of two |
| US08/562693 | 1995-11-27 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH09231351A true JPH09231351A (ja) | 1997-09-05 |
| JPH09231351A5 JPH09231351A5 (ja) | 2004-11-18 |
Family
ID=24247363
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8325884A Pending JPH09231351A (ja) | 1995-11-27 | 1996-11-22 | 画像のリサイジング方法及びそのためのコンピュータプログラム製品 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US5745123A (ja) |
| EP (1) | EP0775976B1 (ja) |
| JP (1) | JPH09231351A (ja) |
| CA (1) | CA2191297A1 (ja) |
| DE (1) | DE69632712D1 (ja) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5850227A (en) * | 1996-12-20 | 1998-12-15 | Compaq Computer Corporation | Bit map stretching using operand routing and operation selective multimedia extension unit |
| US5953021A (en) * | 1997-05-22 | 1999-09-14 | Sun Microsystems, Inc. | Microprocessor system for data channel extraction |
| US5886712A (en) * | 1997-05-23 | 1999-03-23 | Sun Microsystems, Inc. | Data channel extraction in a microprocessor |
| US6252576B1 (en) | 1998-08-06 | 2001-06-26 | In-System Design, Inc. | Hardware-efficient system for hybrid-bilinear image scaling |
| US20040181503A1 (en) * | 2003-03-13 | 2004-09-16 | Motorola, Inc. | Information storage and retrieval method and apparatus |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0179203B1 (en) * | 1984-10-24 | 1992-04-29 | International Business Machines Corporation | Method for enlarging an image stored in run representation form |
| US4988984A (en) * | 1988-10-31 | 1991-01-29 | International Business Machines Corporation | Image interpolator for an image display system |
| JPH0660173A (ja) * | 1992-06-11 | 1994-03-04 | Internatl Business Mach Corp <Ibm> | 画像を縮小する方法および装置 |
| DE4309471A1 (de) * | 1993-03-24 | 1994-09-29 | Miro Computer Prod Ag | Verfahren zur Wiedergabe von Videobildern |
| US5542038A (en) * | 1993-07-29 | 1996-07-30 | Cirrus Logic, Inc. | Method and system for generating dynamic zoom codes |
| US5577181A (en) * | 1995-06-07 | 1996-11-19 | E-Systems, Inc. | Method for autonomous determination of tie points in imagery |
-
1995
- 1995-11-27 US US08/562,693 patent/US5745123A/en not_active Expired - Lifetime
-
1996
- 1996-11-22 JP JP8325884A patent/JPH09231351A/ja active Pending
- 1996-11-26 EP EP96308519A patent/EP0775976B1/en not_active Expired - Lifetime
- 1996-11-26 CA CA002191297A patent/CA2191297A1/en not_active Abandoned
- 1996-11-26 DE DE69632712T patent/DE69632712D1/de not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| EP0775976B1 (en) | 2004-06-16 |
| DE69632712D1 (de) | 2004-07-22 |
| EP0775976A3 (en) | 1998-01-28 |
| EP0775976A2 (en) | 1997-05-28 |
| US5745123A (en) | 1998-04-28 |
| CA2191297A1 (en) | 1997-05-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2921659B2 (ja) | ビデオ・イメージの寸法変更装置及び方法 | |
| US4809345A (en) | Method of and apparatus for enlarging/reducing two-dimensional images | |
| US6333743B1 (en) | Method and apparatus for providing image and graphics processing using a graphics rendering engine | |
| IL154450A (en) | 3D simulation processing is suitable for systems without hardware support | |
| JP2002171401A (ja) | 間引き演算命令を備えたsimd型演算装置 | |
| KR100283413B1 (ko) | 텍스처 매핑시스템 | |
| JP4728744B2 (ja) | 画像処理装置 | |
| JPS61136177A (ja) | 像データを計算する為に使う装置 | |
| JPH09231351A (ja) | 画像のリサイジング方法及びそのためのコンピュータプログラム製品 | |
| JPH0846865A (ja) | プログラマブル・ビデオ変換レンダリング方法及び装置 | |
| US5179647A (en) | Method and apparatus for implementing adaptive forward differencing using integer arithmetic | |
| JP2814860B2 (ja) | 画像拡大縮小装置 | |
| JP2000187726A (ja) | デ―タ補間方法および装置及び記憶媒体 | |
| US9286654B2 (en) | Image scaling processor and image scaling processing method | |
| KR101219103B1 (ko) | 프로그래밍 가능한 프로세서, 및 디지털 신호 처리 동작을 수행하는 방법 | |
| AU704659B2 (en) | Method of transposing data | |
| EP1032883B1 (en) | Data resampler for data processing system | |
| JP2613364B2 (ja) | 図形処理システム | |
| KR100665485B1 (ko) | 디지털 신호 처리 장치 및 디지털 신호 처리 방법 | |
| JPH081556B2 (ja) | 画像メモリ装置 | |
| JPH04354068A (ja) | 画像データ補間方法及び装置 | |
| JPH09147097A (ja) | データ補間装置 | |
| JPS5887655A (ja) | パイプライン高速フ−リエ変換装置 | |
| JPH0480428B2 (ja) | ||
| JP2604711B2 (ja) | 画像変換装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060913 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060926 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061212 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070116 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070413 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20070524 |
|
| A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20070615 |