JPH08251400A - Digital image interpolation circuit provided with plurality of interpolation kernels - Google Patents
Digital image interpolation circuit provided with plurality of interpolation kernelsInfo
- Publication number
- JPH08251400A JPH08251400A JP8007862A JP786296A JPH08251400A JP H08251400 A JPH08251400 A JP H08251400A JP 8007862 A JP8007862 A JP 8007862A JP 786296 A JP786296 A JP 786296A JP H08251400 A JPH08251400 A JP H08251400A
- Authority
- JP
- Japan
- Prior art keywords
- interpolation
- digital image
- output
- input
- data
- 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.)
- Withdrawn
Links
- 230000015654 memory Effects 0.000 claims abstract description 45
- 238000000034 method Methods 0.000 claims abstract description 34
- 239000007787 solid Substances 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 28
- 239000000872 buffer Substances 0.000 description 20
- 230000008569 process Effects 0.000 description 20
- 230000010076 replication Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 11
- 230000008901 benefit Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 238000012952 Resampling Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
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/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/17—Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
- G06F17/175—Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method of multidimensional data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Algebra (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
- Facsimile Image Signal Circuits (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、デジタル画像処理
のための補間に係り、特に、例えばX線画像のようなデ
ジタル画像を拡大あるいは縮小するようなデジタル画像
の高速処理用の補間回路に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to interpolation for digital image processing, and more particularly to an interpolation circuit for high speed processing of a digital image such as enlarging or reducing a digital image such as an X-ray image.
【0002】[0002]
【従来の技術および発明が解決しようとする課題】共通
に譲渡され、1992年6月23日にKerr氏他に付与さ
れたアメリカ合衆国特許5,125,042 号には、第1に行方
向の画像データを補間する画像処理方法が開示されてい
る。その後、この方法においては、複数行の補間された
画素値が列方向に補間される。この方法では、列方向の
補間を実施するための入力工程において、多数のライン
バッファが必要となっている。また、上記の特許で記載
された補間方法は非常に有効なものではあるが、256
の離間した位置に対して補間係数が離散化して設定さ
れ、この補間係数値がメモリ内に記憶される。写真画像
程度の画質を実現するためには、望ましい滑らかさで連
続的に変化する補間係数を用いる必要がある。BACKGROUND OF THE INVENTION US Pat. No. 5,125,042, commonly assigned and issued to Kerr et al. On June 23, 1992, first interpolates row-wise image data. An image processing method is disclosed. Then, in this method, the interpolated pixel values of a plurality of rows are interpolated in the column direction. In this method, a large number of line buffers are required in the input process for performing the interpolation in the column direction. Also, although the interpolation method described in the above patent is very effective, 256
Interpolation coefficients are discretely set for the positions spaced apart from each other, and the interpolation coefficient values are stored in the memory. In order to realize the image quality of a photographic image, it is necessary to use an interpolation coefficient that continuously changes with a desired smoothness.
【0003】1986年6月17日にAnderson Jr.氏他
に付与されたアメリカ合衆国特許4,595,958 号には、写
真フィルムあるいは紙のようなハードコピー出力媒体上
に1つ以上のデジタル画像を記録する方法が開示されて
いる。利用可能な出力媒体に画像を記録する工程におい
ては、出力媒体のサイズに合わせて、補間によって画像
を拡大あるいは縮小する必要がある。しかし、この特許
においては、線形補間を実施するための特定のハードウ
エアに関しては記載されてはいない。US Pat. No. 4,595,958 issued to Anderson Jr. et al. On June 17, 1986 describes a method of recording one or more digital images on a hardcopy output medium such as photographic film or paper. It is disclosed. In the process of recording an image on an available output medium, it is necessary to enlarge or reduce the image by interpolation according to the size of the output medium. However, this patent does not describe specific hardware for performing linear interpolation.
【0004】1986年3月25日にYui氏に付与され
たアメリカ合衆国特許4,578,812号には、立体コンボル
ーションを用いてデジタル画像の2次元的な補間を高速
で実現するハードウエアに関して記載されている。原画
像の2次元アレイにおいて、補間位置を囲む16の画素
の強度値が、対応する(重み付け係数として知られる)
補間係数値に対して同時に乗じられ、これにより生成さ
れた16の積が加算(合計)されて、補間位置に対する
補間(画素)値が算出される。2次元の立体コンボルー
ション補間カーネルのサンプル値を示す補間係数は、デ
ジタルメモリ内に記憶される。立体コンボルーションカ
ーネルは、原画像内の隣接する画素間において、32×
32のサンプル値を有するように離散化されている。サ
ンプル値は、12ビットで記憶されるから、結果的に、
補間係数のための記憶容量として、32×32×12×
16による積、すなわち196,608 ビットが必要になる。
ここで、”16”は、補間値を算出するために16の画
素値に対して16の補間係数が適用されることを示して
いる。それゆえ、補間係数に対する記憶容量は、192
Kビットが必要となる。US Pat. No. 4,578,812 issued to Yui on Mar. 25, 1986 describes hardware for realizing high speed two-dimensional interpolation of a digital image by using stereoscopic convolution. In the two-dimensional array of original images, the intensity values of the 16 pixels surrounding the interpolation position correspond (known as the weighting factor).
The interpolation coefficient value is simultaneously multiplied, and the products of 16 generated thereby are added (summed) to calculate the interpolation (pixel) value for the interpolation position. The interpolation coefficient indicating the sample value of the two-dimensional cubic convolution interpolation kernel is stored in the digital memory. The stereoscopic convolution kernel is 32 × between adjacent pixels in the original image.
Discretized to have 32 sample values. Since the sample value is stored in 12 bits, as a result,
The storage capacity for the interpolation coefficient is 32 × 32 × 12 ×
A product of 16 or 196,608 bits is required.
Here, “16” indicates that 16 interpolation coefficients are applied to 16 pixel values to calculate the interpolation value. Therefore, the storage capacity for the interpolation coefficient is 192
K bits are required.
【0005】診断用X線画像のような高解像度のデジタ
ル画像に関しては、正確な補間を与えて拡大画像との間
に良好な関連を示すために、立体コンボルーションカー
ネルのサンプル値の離散度を例えば256×256と
し、補間係数を例えば16ビットを用いて精密に記録す
るのが好適である。このような条件を実現するために
は、補間係数を記憶するために、約16Mビット(25
6×256×16×16)のメモリが必要となる。この
ような大容量のメモリを設けることにより、勿論、コス
トが高くなるとともに、アドレスすることが困難とな
る。For high resolution digital images, such as diagnostic X-ray images, the discreteness of the sample values of the stereoscopic convolution kernel has been calculated in order to provide accurate interpolation and good correlation with the magnified image. For example, it is preferable that the size is 256 × 256 and the interpolation coefficient is precisely recorded using 16 bits, for example. In order to realize such a condition, about 16 Mbits (25
6 × 256 × 16 × 16) memory is required. Providing such a large capacity memory, of course, increases the cost and makes addressing difficult.
【0006】さらに、ある種の画像に対しては、立体コ
ンボルーションにより、最適な補間画像が生成できない
ことが知られている。このような画像に対しては、線形
補間やレプリケーション(replication )のような他の補
間アルゴリズムを適用するのが好適である。Further, it is known that an optimum interpolated image cannot be generated for a certain type of image due to stereoscopic convolution. For such images, it is preferable to apply other interpolation algorithms such as linear interpolation and replication.
【0007】[0007]
【課題を解決するための手段】本発明は、上記のような
欠点を解消して、デジタル画像に対する立体コンボルー
ションを実行するための装置および方法を提供すること
を目的とする。SUMMARY OF THE INVENTION It is an object of the present invention to provide an apparatus and method for solving the above-mentioned drawbacks and performing stereoscopic convolution on a digital image.
【0008】さらに、本発明は、立体コンボルーショ
ン、デシメーション(decimation)、線形補間、およびレ
プリケーションのような複数の種類の補間を実現可能と
する補間装置および補間方法を提供することを目的とす
る。A further object of the present invention is to provide an interpolating device and an interpolating method capable of realizing a plurality of types of interpolation such as stereoscopic convolution, decimation, linear interpolation, and replication.
【0009】上記および他の目的を実現するために、本
発明によれば、離間された一連の画素値により構成され
る入力デジタル画像の補間を実行するためのデジタル画
像処理装置および処理方法が提供される。この際、所定
の増分間隔で離間された出力画素位置の画素値を算出す
るために、離間された入力画素値を用いて、補間が実行
される。メモリには、カーネルを形成する少なくとも1
組の補間係数が記憶されている。それぞれの出力画素位
置における1組の補間係数は、(1)入力画素値間の距
離、(2)出力画素位置間の所定の増分間隔、および
(3)それぞれの出力画素位置における望ましい補間方
法とに基づいて決定される。そして、一連の離間された
画素値に対して、対応する補間係数値を乗ずることで、
入力デジタル画像の画素値に対する補間が実行される。To achieve the above and other objects, the present invention provides a digital image processing apparatus and method for performing interpolation of an input digital image composed of a series of spaced pixel values. To be done. At this time, interpolation is executed using the separated input pixel values in order to calculate the pixel values of the output pixel positions separated by a predetermined increment interval. At least one that forms the kernel in memory
A set of interpolation coefficients is stored. The set of interpolation coefficients at each output pixel position is (1) the distance between the input pixel values, (2) the predetermined increment interval between the output pixel positions, and (3) the desired interpolation method at each output pixel position. It is decided based on. Then, by multiplying a series of spaced pixel values by the corresponding interpolation coefficient value,
Interpolation is performed on the pixel values of the input digital image.
【0010】本発明の他の特徴によれば、水平方向に離
間された画素値列が垂直方向に離間されて構成される2
次元の入力デジタル画像に対する補間を実行する装置が
提供される。この際、垂直方向および水平方向に所定の
増分間隔で離間された出力画素位置の画素値を算出する
ために、各行内で水平方向に離間された入力画素値、お
よび垂直方向に離間された行に対する入力画素値を用い
て、補間が実行される。メモリには、垂直方向の補間の
ためのカーネルを定義する補間方程式を表す少なくとも
1組の補間係数、および水平方向の補間のためのカーネ
ルに対する少なくとも1組の補間係数が記憶されてい
る。それぞれの出力画素位置における1組の補間係数
は、(1)入力画素値の行間の垂直方向間隔と、(2)
行内の入力画素値間の水平方向間隔と、(3)出力画素
の行位置間の所定の垂直方向増分間隔と、(4)出力画
素位置間の所定の水平方向増分間隔と、(5)それぞれ
の出力画素位置における望ましい垂直方向補間方法と、
(6)それぞれの出力画素位置における望ましい水平方
向補間方法とに基づいて決定される。そして、一連の離
間された入力画素値に対して、対応する補間係数値を乗
ずることで、出力デジタル画像の画素値が算出される。
複数のカーネルのなかには、立体コンボルーション、線
形補間、デシメーション、およびレプリケーションを実
行するためのカーネルが含まれている。According to another feature of the present invention, the pixel value rows separated in the horizontal direction are arranged in the vertical direction.
An apparatus is provided for performing interpolation on a two-dimensional input digital image. At this time, in order to calculate the pixel values of the output pixel positions separated by a predetermined increment in the vertical direction and the horizontal direction, the input pixel values separated in the horizontal direction and the rows separated in the vertical direction in each row. Interpolation is performed using the input pixel values for. The memory stores at least one set of interpolation coefficients representing an interpolation equation defining a kernel for vertical interpolation and at least one set of interpolation coefficients for a kernel for horizontal interpolation. The set of interpolation coefficients at each output pixel position is (1) the vertical spacing between rows of input pixel values and (2)
Horizontal spacing between input pixel values within a row, (3) predetermined vertical increment between output pixel row positions, (4) predetermined horizontal increment between output pixel locations, (5) respectively A desired vertical interpolation method at the output pixel position of
(6) Based on the desired horizontal interpolation method at each output pixel position. Then, the pixel value of the output digital image is calculated by multiplying the series of spaced input pixel values by the corresponding interpolation coefficient value.
Among the kernels are kernels for performing stereoscopic convolution, linear interpolation, decimation, and replication.
【0011】本発明の好適な実施の形態によれば、立体
コンボルーション、線形補間、デシメーション、および
レプリケーション等の補間を実行するための複数の異な
る固有のカーネルをそれぞれ定義する複数の組の補間係
数が記憶されている。また、決定手段には、記憶された
複数組の補間係数のなかから1組の補間係数を選択する
手段が設けられている。In accordance with a preferred embodiment of the present invention, a plurality of sets of interpolation coefficients each defining a plurality of different unique kernels for performing interpolation such as cubic convolution, linear interpolation, decimation, and replication. Is remembered. Further, the determining means is provided with means for selecting one set of interpolation coefficients from the stored plurality of sets of interpolation coefficients.
【0012】本発明の目的および利点は、以下の好適な
実施の形態に関する詳細な記載において、より明確にさ
れる。The objects and advantages of the present invention will be made clearer in the following detailed description of the preferred embodiments.
【0013】[0013]
【発明の実施の形態】本発明の好適な実施の形態に関す
る以下の詳細な記載においては、次の図が参照される。
図1は、本発明による補間回路を示すブロック図であ
る。図2は、図1に示された論理・制御ユニットを示す
ブロック図である。図3は、立体コンボルーションの補
間カーネルを示すグラフである。図4は、立体コンボル
ーションによる補間方法を説明するために用いられるグ
ラフである。図5は、補間係数を記憶するためのメモリ
の配列を示すブロック図である。図6は、線形補間の補
間カーネルを示すグラフである。図7は、レプリケーシ
ョンの補間カーネルを示すグラフである。図8は、出力
画像のレイアウト例を示す図である。図9は、図1に示
された補間回路の一部である入力ラインコントローラお
よびマルチプレクサの配置を示すブロック図である。図
10は、図9に示された入力ラインコントローラの制御
工程を示すフローチャートである。図11は、垂直方向
補間回路の制御工程を示すフローチャートである。図1
2は、水平方向補間回路の制御工程を示すフローチャー
トである。In the following detailed description of the preferred embodiment of the invention, reference is made to the following figures.
FIG. 1 is a block diagram showing an interpolation circuit according to the present invention. FIG. 2 is a block diagram showing the logic / control unit shown in FIG. FIG. 3 is a graph showing an interpolation kernel of a stereoscopic convolution. FIG. 4 is a graph used to explain an interpolation method by stereoscopic convolution. FIG. 5 is a block diagram showing an array of a memory for storing interpolation coefficients. FIG. 6 is a graph showing an interpolation kernel of linear interpolation. FIG. 7 is a graph showing an interpolation kernel for replication. FIG. 8 is a diagram showing a layout example of an output image. FIG. 9 is a block diagram showing an arrangement of an input line controller and a multiplexer which are a part of the interpolation circuit shown in FIG. FIG. 10 is a flowchart showing a control process of the input line controller shown in FIG. FIG. 11 is a flowchart showing a control process of the vertical direction interpolation circuit. FIG.
2 is a flowchart showing a control process of the horizontal direction interpolation circuit.
【0014】以下の記載においては、本発明による装置
の一部を構成する部材、あるいは本発明による装置に直
接に関連する部材に関して、特に説明がなされる。ここ
で、特に説明がなされない部材に関しては、このような
部材が当業者に周知である種々の形態を取り得ることが
解されるであろう。In the following description, particular reference will be made to parts which form part of the device according to the invention or which are directly related to the device according to the invention. It will be appreciated that, with respect to components not specifically described, such components may take various forms well known to those skilled in the art.
【0015】図1は、本発明の好適な実施の形態による
補間回路を示すブロック図である。補間回路には、例え
ば(図示されない)フレームメモリ(frame store memor
y)からデジタル画像画素データPが入力される。この
際、1回の動作において、入力部10を通して1行の入
力データが送られ、そして、出力部12を通して補間さ
れた1行のデジタル画像データP”が出力される。補間
されたデジタル画像データは、(図示されない)プリン
タに出力されるか、あるいは例えば(図示されない)第
2のフレームメモリ内に、次の処理のために記憶され
る。FIG. 1 is a block diagram showing an interpolation circuit according to a preferred embodiment of the present invention. The interpolation circuit includes, for example, a frame memory (frame store memor (not shown)).
The digital image pixel data P is input from y). At this time, in one operation, one line of input data is sent through the input unit 10 and one line of interpolated digital image data P ″ is output through the output unit 12. Interpolated digital image data Are output to a printer (not shown) or stored, for example, in a second frame memory (not shown) for subsequent processing.
【0016】補間回路は、垂直方向補間回路14と、水
平方向補間回路16と、複数の1次元の補間カーネルを
有する垂直方向補間係数メモリ18と、同様に複数の1
次元の補間カーネルを有する水平方向補間係数メモリ2
0と、垂直方向補間用入力バッファ22と、垂直方向補
間用出力バッファ24とを有して構成されている。The interpolation circuit includes a vertical direction interpolation circuit 14, a horizontal direction interpolation circuit 16, a vertical direction interpolation coefficient memory 18 having a plurality of one-dimensional interpolation kernels, and a plurality of 1's.
Horizontal interpolation coefficient memory 2 with three-dimensional interpolation kernel
0, a vertical direction interpolation input buffer 22, and a vertical direction interpolation output buffer 24.
【0017】図2に詳細に示されるように、論理・制御
ユニット26は、論理・制御セクションと、入力ライン
コントローラと、垂直方向補間コントローラと、水平方
向補間コントローラとを有して構成されている。動作時
においては、論理・制御ユニット26には、特定の出力
フォーマットに対してプリントされる入力画像の数およ
びサイズに関する情報が入力される。この際、入力ライ
ンコントローラ情報、水平方向および垂直方向補間係数
データ、垂直方向補間回路用出力バッファ制御情報、お
よび出力画素および出力ラインの数に関する数値がロー
ドされる。そして、論理・制御ユニット26の入力ライ
ンコントローラにより、垂直方向補間用入力バッファ2
2にデータが入力されるとともに、マルチプレクサ28
の制御に関連する独立した読込みおよび書込みポインタ
の適切な保持が実現される。As shown in detail in FIG. 2, the logic / control unit 26 comprises a logic / control section, an input line controller, a vertical interpolation controller, and a horizontal interpolation controller. . In operation, logic and control unit 26 is populated with information regarding the number and size of input images to be printed for a particular output format. At this time, input line controller information, horizontal direction and vertical direction interpolation coefficient data, vertical direction interpolation circuit output buffer control information, and numerical values relating to the number of output pixels and output lines are loaded. Then, by the input line controller of the logic / control unit 26, the vertical direction interpolation input buffer 2
2 is input with data, and the multiplexer 28
Proper holding of independent read and write pointers associated with the control of
【0018】次に、垂直方向補間回路14により、入力
ラインコントローラにデータ入力要求が出されるととも
に、垂直方向補間係数メモリからの垂直方向補間係数の
入力に関する要求が出される。そして、垂直方向補間回
路により、列方向の複数の入力画素データ(画素値)に
対してそれぞれ対応する補間係数値が乗じられ、この積
を合計して補間画素値P’を出力することで、列方向の
補間が実行される。Next, the vertical direction interpolation circuit 14 issues a data input request to the input line controller and a request for inputting the vertical direction interpolation coefficient from the vertical direction interpolation coefficient memory. Then, the vertical direction interpolation circuit multiplies a plurality of input pixel data (pixel values) in the column direction by the corresponding interpolation coefficient values, sums the products, and outputs the interpolated pixel value P ′. Column-wise interpolation is performed.
【0019】垂直方向補間回路14から出力された補間
画素値P’は、2ラインの垂直方向補間用出力バッファ
24へ与えられる。このように、垂直方向補間回路から
の出力は2ラインのバッファへ送られるから、一方の行
の補間データが読み出される際に、他方の行の補間デー
タがメモリに書込み可能となる。この分野では周知であ
るように、一対のラインバッファおよび未使用のバッフ
ァ出力の3状態制御を用いることで、ダブルバッファリ
ング(double buffering)が実現される。The interpolated pixel value P'output from the vertical direction interpolation circuit 14 is given to the 2-line vertical direction interpolation output buffer 24. In this way, since the output from the vertical direction interpolation circuit is sent to the buffer of two lines, when the interpolation data of one row is read, the interpolation data of the other row can be written in the memory. As is well known in the art, double buffering is achieved by using a tri-state control of a pair of line buffers and unused buffer output.
【0020】次に、水平方向補間回路16により、垂直
方向補間用出力バッファ24から補間画素データ(画素
値)が行単位で取込まれ、4画素用パイプライン30を
用いて、水平方向補間回路のそれぞれの処理工程に対し
て、データが1画素(クロック)ずつ遅延される。そし
て、水平方向補間回路16により、垂直方向補間回路1
4で実行された処理工程と同様に、垂直方向補間用出力
バッファ24から読み出され遅延されたそれぞれの画素
値に対して、水平方向補間係数メモリ20から取込まれ
たカーネルのそれぞれ対応する補間係数値を乗じて、そ
の後これらの積を合計することで、水平方向に補間され
たデータからなる行データが生成される。Next, the horizontal direction interpolation circuit 16 fetches the interpolated pixel data (pixel value) from the vertical direction interpolation output buffer 24 in units of rows, and the horizontal direction interpolation circuit is used by using the 4-pixel pipeline 30. The data is delayed by one pixel (clock) for each processing step. Then, the horizontal interpolation circuit 16 causes the vertical interpolation circuit 1
Similar to the processing step executed in 4, the respective pixel values read from the vertical direction interpolation output buffer 24 and delayed are interpolated corresponding to the respective kernels fetched from the horizontal direction interpolation coefficient memory 20. Row data consisting of horizontally interpolated data is generated by multiplying the coefficient values and then summing these products.
【0021】次に、メモリ18およびメモリ20に記憶
された補間係数を用いた1次元の補間に関して説明す
る。補間処理は、以下の式を用いて表される。Next, one-dimensional interpolation using the interpolation coefficients stored in the memory 18 and the memory 20 will be described. The interpolation process is expressed using the following equation.
【0022】[0022]
【数1】 [Equation 1]
【0023】ここで、P’(x)は補間された画素値を
示し、C(x−xk /h)は位置(x−xk )における
カーネルの補間係数値を示す。また、hは補間関数に対
するサンプル間隔(増分間隔)を示し、xk は入力デー
タのサンプル点(補間節点とも称される)位置を示して
いる。さらに、Pk は補間節点における入力画素値を示
している。Here, P '(x) represents the interpolated pixel value, and C (x- xk / h) represents the interpolation coefficient value of the kernel at the position (x- xk ). Further, h represents a sample interval (incremental interval) with respect to the interpolation function, and x k represents a sample point (also referred to as an interpolation node) position of input data. Further, P k represents the input pixel value at the interpolation node.
【0024】補間カーネルは、サンプル化されたデータ
を連続的に定義するための連続関数であり、補間用サン
プル値を導出するために、この連続関数を用いてリサン
プリングが実行される。立体コンボルーションでは、区
間(−2,−1)、(−1,0)、(0,1)、および
(1,2)において区分的に設定された3次多項式によ
り定義されたカーネルが用いられている。このカーネル
においては、区間(−2,2)外の範囲のカーネルの値
はゼロとなっている。The interpolation kernel is a continuous function for continuously defining sampled data, and resampling is executed using this continuous function in order to derive sample values for interpolation. In the stereoscopic convolution, the kernel defined by the cubic polynomial set piecewise in the intervals (-2, -1), (-1, 0), (0, 1), and (1, 2) is used. Has been. In this kernel, the value of the kernel outside the interval (−2,2) is zero.
【0025】立体コンボルーションのカーネルに関し
て、式(1)から数値をもとめるためには、原画像デー
タから4つの連続的なサンプルデータ(画素値)を入力
する必要がある。図3には、区間(−2,2)で定義さ
れた立体コンボルーションのカーネル34を表すグラフ
が示されている。図3におけるX軸方向目盛りは、原画
像のサンプルデータの間隔に等しくなるようにとられて
いる。Regarding the kernel of the stereoscopic convolution, in order to obtain the numerical value from the equation (1), it is necessary to input four continuous sample data (pixel values) from the original image data. FIG. 3 shows a graph representing the kernel 34 of the stereoscopic convolution defined by the interval (-2, 2). The scale in the X-axis direction in FIG. 3 is set to be equal to the interval of the sample data of the original image.
【0026】図4には、位置xにおける補間画素値を算
出するために、補間カーネル34が如何に用いられるか
が示されている。原画像データからの連続的な4つの画
素値が、A,B,C,Dで示されている。位置xにおけ
る補間画素値を算出するために、補間カーネル34の中
心が位置xに位置決めされ、原画像のそれぞれのサンプ
ルデータ(画素値)の位置におけるカーネル値が算出さ
れる。これらのカーネル値CA,CB,CC,CDは、補間
係数値として算出される。そして、位置xにおける補間
画素値が、以下の式から導かれる。FIG. 4 shows how the interpolation kernel 34 is used to calculate the interpolated pixel value at position x. Four consecutive pixel values from the original image data are indicated by A, B, C and D. In order to calculate the interpolated pixel value at the position x, the center of the interpolation kernel 34 is positioned at the position x, and the kernel value at the position of each sample data (pixel value) of the original image is calculated. These kernel values C A , C B , C C and C D are calculated as interpolation coefficient values. Then, the interpolated pixel value at the position x is derived from the following equation.
【0027】[0027]
【数2】 [Equation 2]
【0028】原画像のサンプル点Bとサンプル点Cとの
間の任意の位置における補間画素値は、同様にして算出
される。補間画素値をもとめる度に、補間係数値を算出
する手間を省くために、カーネルを定義する区画された
3次多項式から補間係数値が算出され、この補間係数値
が、(図1に示されるように、)垂直方向補間係数メモ
リ18および水平方向補間係数メモリ20に個々に記憶
される。本発明の好適な実施の形態では、ソフトウエア
的なレイヤ(layer )が設けられ、このレイヤにより補間
係数値の要求に対する応答がなされるとともに、コード
化された適切な制御ビットを備えた適正な補間係数値が
導出される。Interpolated pixel values at arbitrary positions between the sample points B and C of the original image are calculated in the same manner. Each time the interpolation pixel value is obtained, in order to save the trouble of calculating the interpolation coefficient value, the interpolation coefficient value is calculated from the partitioned cubic polynomial defining the kernel, and this interpolation coefficient value is (see FIG. 1). Thus, the vertical interpolation coefficient memory 18 and the horizontal interpolation coefficient memory 20 are individually stored. In the preferred embodiment of the invention, a software layer is provided, which is responsible for responding to the request for interpolation coefficient values and which has the proper coded control bits. Interpolation coefficient values are derived.
【0029】本発明の好適な実施の形態によれば、それ
ぞれの出力レベルの画素位置に対応する補間係数値は、
(1)入力画素値間の間隔、(2)出力画素位置間の所
定の増分間隔、および(3)カーネルに基づいて算出さ
れる。補間係数値は、16ビットの精度で計算され、ハ
ードウエアにより12ビットに打切られる。そして、こ
れら複数の補間係数は、水平方向および垂直方向それぞ
れにおいて、カーネルのそれぞれの区間(−2,−
1)、(−1,0)、(0,1)、(1,2)で設定さ
れるセグメントを表す4つのグループに分類される。こ
れらの4つのグループに分類された補間係数は、8バン
ク(bank)のメモリに記憶されている。この際、4バンク
のメモリが水平方向の補間係数を記憶するために用いら
れ、残り4バンクのメモリが垂直方向の補間係数を記憶
するために用いられ、これらすべてのメモリが、論理・
制御ユニットにより同時にアドレスされる。図5には、
補間カーネルの参照テーブルの配列が示されている。こ
の際、図にグラフ的に示されるように、第1のメモリバ
ンク36には、区間(−2,−1)においてカーネルを
定義する複数の補間係数が記憶されている。同様に、第
2のメモリバンク38には、コンボルーションカーネル
の区間(−1,0)に対応する複数の補間係数が記憶さ
れている。さらに、メモリバンク40およびメモリバン
ク42に関しても、同様のことがあてはまる。そして、
図5に示されるように、補間係数C1,C2,C3,C4を
導出するために、読出し要求が4つのメモリバンクすべ
てに対して同時に与えられる。補間係数値がパターンを
有して反復する場合には、メモリをより有効に使用する
ことが可能となる。この際、補間係数メモリ内のビット
データが、論理・制御ユニット26へ送られ、補間係数
の先頭位置へ補間係数メモリのポインタを再初期化する
時期が決定される。反復パターンの存在は、以下の式か
ら確定される。According to the preferred embodiment of the present invention, the interpolation coefficient value corresponding to the pixel position of each output level is
It is calculated based on (1) the spacing between input pixel values, (2) the predetermined increment spacing between output pixel positions, and (3) the kernel. The interpolation coefficient value is calculated with a precision of 16 bits and truncated to 12 bits by hardware. Then, the plurality of interpolation coefficients are respectively applied to the respective sections (−2, −) of the kernel in the horizontal direction and the vertical direction.
1), (-1, 0), (0, 1), and (1, 2) are classified into four groups representing the segments. The interpolation coefficients classified into these four groups are stored in the memory of 8 banks. At this time, four banks of memory are used to store horizontal interpolation coefficients, and the remaining four banks of memory are used to store vertical interpolation coefficients.
Addressed simultaneously by the control unit. In Figure 5,
An array of lookup tables for the interpolation kernel is shown. At this time, as shown graphically in the figure, the first memory bank 36 stores a plurality of interpolation coefficients that define a kernel in the interval (-2, -1). Similarly, the second memory bank 38 stores a plurality of interpolation coefficients corresponding to the interval (-1,0) of the convolution kernel. Further, the same applies to the memory banks 40 and 42. And
As shown in FIG. 5, a read request is simultaneously applied to all four memory banks in order to derive the interpolation coefficients C 1 , C 2 , C 3 , C 4 . When the interpolation coefficient value has a pattern and repeats, the memory can be used more effectively. At this time, the bit data in the interpolation coefficient memory is sent to the logic / control unit 26, and the time for re-initializing the pointer of the interpolation coefficient memory to the start position of the interpolation coefficient is determined. The existence of the repeating pattern is determined by the following equation.
【0030】[0030]
【数3】 (Equation 3)
【0031】そして、反復値は以下の式から算出され
る。Then, the iteration value is calculated from the following equation.
【0032】[0032]
【数4】 [Equation 4]
【0033】ここで、Nは固有の値を有する補間係数の
総数を示し、LCDは最小公倍数を示す。Here, N represents the total number of interpolation coefficients having a unique value, and LCD represents the least common multiple.
【0034】次に、図1に示されるように、補間カーネ
ル参照テーブルとしては、例えば線形補間およびレプリ
ケーションのような他の種類の補間カーネルを設定する
ことが可能であり、これらの補間カーネルには、異なる
型の立体コンボルーションも含まれている。本発明の好
適な実施の形態においては、垂直方向補間係数メモリ1
8および水平方向補間係数メモリ20には、(符号44
で示される)a=−1である立体コンボルーションカー
ネルと(符号46で示される)a=−0.5である立体
コンボルーションカーネルとの2つの立体コンボルーシ
ョンカーネルが用意されている。ここで、”a”は、補
間カーネルを示す多項式に含まれる定数値であり、この
際補間カーネルは以下の式のように定義される。Next, as shown in FIG. 1, it is possible to set other kinds of interpolation kernels such as linear interpolation and replication as the interpolation kernel reference table. , Different types of 3D convolution are also included. In the preferred embodiment of the present invention, the vertical interpolation coefficient memory 1
8 and the horizontal direction interpolation coefficient memory 20 (reference numeral 44
Two solid convolution kernels are prepared: a solid convolution kernel with a = -1 (denoted by) and a solid convolution kernel with a = -0.5 (denoted by reference numeral 46). Here, “a” is a constant value included in the polynomial representing the interpolation kernel, and the interpolation kernel is defined as the following equation at this time.
【0035】[0035]
【数5】 (Equation 5)
【0036】また、垂直方向補間係数メモリ18および
水平方向補間係数メモリ20には、(符号48で示され
る)線形補間用のカーネルや(符号50で示される)レ
プリケーション用のカーネルも登録されている。図6に
は、線形補間用カーネル48が示されており、図形的に
は、区間(−1,1)では三角形の波形として表され、
他の区間においてはゼロの値をとる。また、図7には、
レプリケーション用カーネル50が示されており、図形
的には、区間(−2,−1)で1の値をとり他の区間で
はゼロの値をとるステップ関数として表されている。Further, in the vertical direction interpolation coefficient memory 18 and the horizontal direction interpolation coefficient memory 20, a kernel for linear interpolation (denoted by numeral 48) and a kernel for replication (denoted by numeral 50) are also registered. . A linear interpolation kernel 48 is shown in FIG. 6, and is graphically represented as a triangular waveform in the interval (−1,1).
It takes a value of zero in other intervals. In addition, in FIG.
The replication kernel 50 is shown, and is graphically represented as a step function that takes a value of 1 in the interval (-2, -1) and a value of zero in the other intervals.
【0037】また、図1に示されるように、望ましい補
間処理工程を特定するオペレータの入力に応じて、論理
・制御回路26により、垂直方向補間回路14および水
平方向補間回路16からアドレスされるメモリが選定さ
れる。例えば、文書データのような2値画像の補間に関
しては、レプリケーションによる補間が好適な結果を出
すことが知られている。それゆえ、画像の文書領域の補
間を実行するためには、レプリケーションに最も近い補
間カーネルが選定される。Further, as shown in FIG. 1, the memory addressed by the logic / control circuit 26 from the vertical direction interpolation circuit 14 and the horizontal direction interpolation circuit 16 in response to an operator's input specifying a desired interpolation processing step. Is selected. For example, regarding interpolation of a binary image such as document data, it is known that interpolation by replication gives a preferable result. Therefore, in order to perform the interpolation of the document area of the image, the interpolation kernel closest to the replication is chosen.
【0038】補間関数のサンプリング間隔(増分間
隔)”h”は、ユーザが拡大係数Mx,Myを第1に決定
することで確定される。これらの拡大係数MxおよびMy
は、それぞれ比x’/xおよびy’/yとして定義され
ており、ここで、xは原画像の水平方向の画素数を示
し、x’は原画像をプリントする際に出力プリンタで使
用可能である水平方向画素数を示している。この際、出
力媒体上の望ましい画素数は、出力媒体の幅および出力
画像の1ページにプリントされる入力画像数等に関する
出力フォーマットに応じて決定される。同様に、yは入
力画像の垂直方向の画素数を示し、y’は画像をプリン
トする際に望まれる垂直方向の画素数を示している。こ
れによりサンプリング間隔”h”は、以下の式により確
定される。The sampling interval (incremental interval) "h" of the interpolation function is determined by the user first determining the expansion factors M x and M y . These magnification factors M x and M y
Are defined as the ratios x '/ x and y' / y, respectively, where x is the number of pixels in the horizontal direction of the original image and x'is available on the output printer when printing the original image. Shows the number of pixels in the horizontal direction. At this time, the desired number of pixels on the output medium is determined according to the width of the output medium and the output format regarding the number of input images printed on one page of the output image. Similarly, y represents the number of vertical pixels of the input image, and y ′ represents the number of vertical pixels desired when printing the image. As a result, the sampling interval "h" is determined by the following equation.
【0039】[0039]
【数6】 (Equation 6)
【0040】個々の画素が水平方向あるいは垂直方向に
おいて、同じ尺度で拡大あるいは縮小されない場合があ
るので、サンプリング間隔を異なるように設定すること
も可能である。hが1より小さい場合は拡大処理を示
し、hが1より大きい場合は縮小処理を示している。Since individual pixels may not be enlarged or reduced in the horizontal direction or the vertical direction by the same scale, it is possible to set different sampling intervals. When h is smaller than 1, the enlargement process is shown, and when h is larger than 1, the reduction process is shown.
【0041】好適な実施の形態においては、出力画像フ
ォーマットがユーザにより選定可能となっており、この
場合、出力画像が1つ以上の領域を有して構成されてい
る。この領域は画像データ領域と文書データ領域との2
つの種類の領域に分類される。それぞれの文書データ領
域は、その領域の画素を単位とした高さにより特定さ
れ、それぞれの領域は、領域内に含まれる画像数により
特徴付けられる。そして、論理・制御ユニット26によ
り、水平方向および垂直方向における画像間の最小境界
間隔が自動的に決定される。このような出力フォーマッ
トの例が、図8に示されている。出力画像52は、y1
画素数高さを有して3つの画像56,58,60からな
る第1の領域54と、y2 画素数高さを有して2つの画
像64,66からなる第2の領域62と、それぞれがy
3 画素数高さを有する3つの文書データ領域68,7
0,72とを有して構成されている。In the preferred embodiment, the output image format is user selectable, in which case the output image is constructed with one or more regions. This area consists of an image data area and a document data area.
It is divided into two types of areas. Each document data area is specified by the height in pixels of that area, and each area is characterized by the number of images included in the area. The logic and control unit 26 then automatically determines the minimum boundary spacing between images in the horizontal and vertical directions. An example of such an output format is shown in FIG. The output image 52 is y 1
A first region 54 consisting of three images 56, 58, 60 with pixel height and a second region 62 consisting of two images 64, 66 with y 2 pixel height. Each is y
Three document data areas 68, 7 having a height of 3 pixels
0 and 72 are included.
【0042】図9に示されるように、垂直方向補間回路
から、次のラインが処理可能となる前に他のラインの取
込みを要求する信号が送られると、図2に示される論理
・制御ユニット26の一部である入力ラインコントロー
ラにより、新しいラインデータがロードされる。また、
サンプルデータに関する連続関数の置換は、対応する補
間係数を選択することで確定される。さらに、1つの特
定の補間モードから他の特定の補間モードへの切り換え
は、ロードされたデータのライン数に基づいて実施され
る。特に、(1)データの第1のラインが利用可能であ
る場合には、出力フォーマットとしてレプリケーション
が適用可能となり、(2)データの第2のラインが利用
可能である場合には、出力フォーマットとしてレプリケ
ーションあるいは線形補間が適用可能となり、(3)デ
ータの第3のラインが利用可能である場合には、レプリ
ケーション、線形補間、あるいは2次補間が適用可能と
なり、(4)データの第4あるいはそれ以後のラインが
利用可能である場合には、レプリケーション、線形補
間、2次補間、あるいは立体コンボルーション補間が適
用可能となる。入力ラインコントローラ74により、垂
直方向補間回路からデータの終わりに関する信号が出力
されるまで、図10に示されるアルゴリズムに基づい
て、フレームメモリからラインデータが取込まれる。こ
の場合、補間回路を遅延させることなく、1ライン時間
内に次のラインデータの取込みを可能とするために、5
つの入力ラインバッファ110,112,114,11
6,118が設けられている。As shown in FIG. 9, when the vertical interpolation circuit sends a signal requesting the acquisition of another line before the next line can be processed, the logic / control unit shown in FIG. New line data is loaded by the input line controller, which is part of 26. Also,
The permutation of the continuous function on the sample data is established by selecting the corresponding interpolation coefficient. Further, switching from one particular interpolation mode to another particular interpolation mode is performed based on the number of lines of loaded data. In particular, (1) when the first line of data is available, replication can be applied as an output format, and (2) when the second line of data is available, as an output format. If replication or linear interpolation is applicable, and (3) a third line of data is available, replication, linear interpolation, or quadratic interpolation is applicable, (4) the fourth or the fourth of the data. If subsequent lines are available, replication, linear interpolation, quadratic interpolation, or stereo convolutional interpolation can be applied. The input line controller 74 fetches line data from the frame memory based on the algorithm shown in FIG. 10 until the vertical interpolation circuit outputs a signal regarding the end of data. In this case, in order to enable the acquisition of the next line data within one line time without delaying the interpolation circuit, 5
Two input line buffers 110, 112, 114, 11
6, 118 are provided.
【0043】特に、図10に示されるように、機能ブロ
ック82では、入力ラインコントローラによりバッファ
ポインタが初期化される。そして、(機能ブロック84
において、)1行(ライン)のデータ要求が受容されな
い場合には、コントローラにより、(機能ブロック86
において、)さらなるデータが存在するかどうかがチェ
ックされる。また、1行のデータ要求が受容された場合
には、機能ブロック88において、1行のデータが垂直
方向補間用入力バッファ22に入力される。そして、機
能ブロック90において、バッファポインタが増加さ
れ、入力ラインコントローラが、次の1行のデータ要求
に対して待機する状態に入る。In particular, as shown in FIG. 10, in function block 82, the input line controller initializes the buffer pointer. Then, (function block 84
If the request for a line of data is not accepted, the controller causes (function block 86
(At)) it is checked if more data is present. If the data request for one row is accepted, the data for one row is input to the vertical interpolation input buffer 22 in the function block 88. Then, in function block 90, the buffer pointer is incremented and the input line controller enters a state of waiting for the next row of data requests.
【0044】次に、論理・制御ユニット26により実行
される垂直方向補間回路に対する制御が、図11に示さ
れている。図11の機能ブロック92で示される初期化
工程においては、論理・制御ユニット26により、第1
の領域に対する領域パラメータがまず与えられる。この
領域パラメータには、領域内の行(ライン)数、領域内
の画像数、および垂直方向補間回路で処理される画像当
りの出力画素数に関する情報が含まれている。そして、
機能ブロック94において、論理・制御ユニットによ
り、関連する補間係数が選択される。Next, the control for the vertical interpolation circuit executed by the logic / control unit 26 is shown in FIG. In the initialization process indicated by the function block 92 in FIG. 11, the logic / control unit 26 causes the first
The domain parameters for the domain of are first given. This area parameter includes information about the number of lines (lines) in the area, the number of images in the area, and the number of output pixels per image processed by the vertical direction interpolation circuit. And
In function block 94, the logic and control unit selects the relevant interpolation factor.
【0045】次に、機能ブロック96において、論理・
制御ユニットにより、垂直方向補間用入力バッファ22
から、1行のデータの取込みが要求される。さらに、機
能ブロック98においては、補間を開始するために充分
な行数のデータが設定されるまで、論理・制御ユニット
により、入力バッファからの1行のデータの取込みが要
求される。充分な行数のデータが設定されると、初期化
工程が完了する。Next, in function block 96, logic /
The control unit controls the input buffer 22 for vertical direction interpolation.
Requires a row of data to be fetched. In addition, in function block 98, the logic and control unit requires the fetching of one row of data from the input buffer until a sufficient number of rows of data have been set to start the interpolation. When a sufficient number of rows of data are set, the initialization process is completed.
【0046】そして、機能ブロック100において、論
理・制御ユニットにより、1行のデータの取込みが要求
されると、機能ブロック102に進んで、論理・制御ユ
ニットから垂直方向補間回路へ、補間を開始するととも
に入力ラインコントローラから1行のデータを取込む要
求を行わせる信号が出力される。そして、垂直方向補間
係数メモリ18から、4つの補間係数C1,C2,C3,
C4が、垂直方向補間回路14に並列に入力される。垂
直方向補間回路では、補間画素値P’を以下の式に基づ
いて算出する。Then, in the function block 100, when the logic / control unit requests the fetching of one row of data, the process proceeds to the function block 102 to start the interpolation from the logic / control unit to the vertical direction interpolation circuit. At the same time, the input line controller outputs a signal for requesting to take in one row of data. Then, from the vertical direction interpolation coefficient memory 18, four interpolation coefficients C 1 , C 2 , C 3 ,
C 4 is input to the vertical direction interpolation circuit 14 in parallel. The vertical direction interpolation circuit calculates the interpolated pixel value P ′ based on the following equation.
【0047】[0047]
【数7】 (Equation 7)
【0048】この際、行全体に対して補間が継続され、
次の1行の取込み要求に対して待機するために処理が停
止される。そして、次の行の取込み要求が受容される
と、補間回路が再起動される。At this time, the interpolation is continued for the entire row,
The process is stopped to wait for the next row fetch request. Then, when the fetch request of the next row is accepted, the interpolation circuit is restarted.
【0049】機能ブロック104において、論理・制御
ユニット26から領域の終わりを示す信号が受容される
と、機能ブロック106に進んで、垂直方向補間回路コ
ントローラにより、画像の最終領域に対して補間処理が
終了したか否かのチェックが行われる。最終領域に対す
る処理が終わっていない場合には、機能ブロック94に
戻ることで、次の領域に対する初期化工程が実行され、
そして、上記と同様の処理が反復される。最終領域に対
する補間が終了した場合には、処理が終了される。ま
た、機能ブロック104において、領域の終わりを示す
信号が受容されない場合には、機能ブロック102にお
いて、次の1行のデータ取込み要求に対して待機する状
態となる。When the signal indicating the end of the region is received from the logic / control unit 26 in the function block 104, the process proceeds to the function block 106, and the vertical interpolation circuit controller performs the interpolation process on the final region of the image. A check is made to see if it has finished. If the processing for the final area has not been completed, the process returns to the function block 94 to execute the initialization process for the next area.
Then, the same processing as described above is repeated. When the interpolation for the final area is completed, the processing is completed. If the function block 104 does not accept the signal indicating the end of the area, the function block 102 waits for the next data acquisition request for one row.
【0050】次に、図12を参照して、水平方向補間回
路16に関して詳細に説明する。まず、論理・制御ユニ
ットから、第1の領域に対する領域パラメータが与えら
れる。この領域パラメータには、領域内の行(ライン)
数、領域内の画像数、および水平方向補間回路で処理さ
れる画像当りの出力画素数に関する情報が含まれてい
る。第1に、機能ブロック110において、水平方向補
間回路コントローラにより、ユーザに要求された補間形
態および関連する補間係数が選択される。そして、垂直
方向補間用出力バッファ24内でデータが利用可能な状
態になると、コントローラにより、垂直方向補間用出力
バッファ24から(論理・制御ユニット26において、
選択された補間形態に基づいて決定される)必要となる
画素数のデータを取込むための要求が出される。このよ
うに適切な数の画素データを取込む要求を出すことで、
初期化が完了される。Next, the horizontal direction interpolation circuit 16 will be described in detail with reference to FIG. First, the area parameter for the first area is given from the logic and control unit. This region parameter includes the lines (lines) in the region
It contains information about the number, the number of images in the region, and the number of output pixels per image processed by the horizontal interpolation circuit. First, in function block 110, the horizontal interpolation circuit controller selects the interpolation form and associated interpolation factors required by the user. Then, when data becomes available in the vertical interpolation output buffer 24, the controller causes the vertical interpolation output buffer 24 (in the logic / control unit 26,
A request is made to capture the required number of pixels of data (determined based on the selected interpolation scheme). By issuing a request to fetch an appropriate number of pixel data,
Initialization is completed.
【0051】水平方向補間回路16が実行可能とされ、
水平方向補間係数メモリ20からの水平方向補間係数値
が補間回路内で画素データ(画素値)と対応付けて処理
されることで、画素出力値P”が算出される。このよう
な処理が、対象となる行のすべての画素に対して反復さ
れ、出力画素値データが要求に応じて生成される。行の
終わりでは、機能ブロック112において、それが”領
域の終わり”であるかどうかのチェックが実行され、領
域の終わりの場合にはそれを示す信号が出力される。論
理・制御ユニット26から領域の終わりを示す信号が受
容されると、機能ブロック114において、水平方向補
間回路コントローラにより、画像の最終領域の補間が終
了したか否かのチェックが実行される。最終領域の補間
が終了していない場合には、機能ブロック110に戻っ
て、次の領域に対する初期化工程が実行され、上記と同
様の処理が反復される。最終領域に対する処理が終了し
た場合には、処理が終了される。また、機能ブロック1
12において、領域の終わりを示す信号が受容されない
場合には、機能ブロック116において、次の垂直方向
補間用出力バッファが選択される。The horizontal direction interpolation circuit 16 can be executed,
The pixel output value P ″ is calculated by processing the horizontal interpolation coefficient value from the horizontal interpolation coefficient memory 20 in association with the pixel data (pixel value) in the interpolation circuit. Output pixel value data is generated on demand, repeated for all pixels in the row of interest At the end of the row, in function block 112 it is checked whether it is "end of region". Is executed and a signal indicating the end of the region is output.When the signal indicating the end of the region is received from the logic / control unit 26, the horizontal interpolation circuit controller is operated by the horizontal interpolation circuit controller in the function block 114. A check is performed to see if interpolation of the final region of the image has been completed, and if interpolation of the final region has not been completed, then return to function block 110 to enter the next region. That initialization process is executed, when the process for. The final area of the processing similar to the above are repeated is finished, the processing is terminated. In addition, the functional block 1
If at 12, the signal indicating the end of the region is not accepted, then at function block 116 the next output buffer for vertical interpolation is selected.
【0052】デシメーションを用いた補間においては、
出力画素数は入力画素数よりも少なくなる。この場合、
下流側の出力装置にこのような状態が生じていることを
示す信号を出力するために、有効データフラグ(valid d
ata flag )が生成される。この機能は、対象とする分野
において周知の技術であり、従来的な幾つかの方法のな
かから選択することが可能である。In interpolation using decimation,
The number of output pixels is smaller than the number of input pixels. in this case,
In order to output a signal indicating that such a condition has occurred to the output device on the downstream side, the valid data flag (valid d
ata flag) is generated. This function is a technology well known in the target field, and can be selected from several conventional methods.
【0053】[産業的応用性および利点]本発明による
補間回路は、診断用のラジオグラフ(放射線写真)のよ
うなデジタル画像を拡大および縮小するのに有効であ
る。この補間回路は、最小サイズの補間係数メモリを用
いて、高い分解能の補間を実質的に実行できるという利
点を有している。さらに、本発明の補間回路では、従来
技術の2次元の補間係数メモリに対してサイズが縮小さ
れた補間係数メモリを用いることで、メモリ内に複数の
補間カーネルを記憶することが可能となり、これによ
り、異なる種類の補間形態に容易に切り換えることが可
能となる。[Industrial Applicability and Advantages] The interpolation circuit according to the present invention is effective for enlarging and reducing a digital image such as a diagnostic radiograph (radiograph). This interpolator has the advantage that it can substantially perform high resolution interpolation using a minimum size interpolation coefficient memory. Further, the interpolation circuit of the present invention can store a plurality of interpolation kernels in the memory by using the reduced size interpolation coefficient memory as compared with the conventional two-dimensional interpolation coefficient memory. This makes it possible to easily switch to a different type of interpolation form.
【0054】好適な実施の形態を特に参照して、本発明
が詳細に説明されたが、本発明の範囲内において、種々
の変形および修正が有効であることが解されるであろ
う。Although the present invention has been described in detail with particular reference to the preferred embodiments, it will be understood that various variations and modifications are effective within the scope of the invention.
【図1】本発明による補間回路を示すブロック図であ
る。FIG. 1 is a block diagram showing an interpolation circuit according to the present invention.
【図2】図1に示された論理・制御ユニットを示すブロ
ック図である。FIG. 2 is a block diagram showing a logic / control unit shown in FIG.
【図3】立体コンボルーションの補間カーネルを示すグ
ラフである。FIG. 3 is a graph showing an interpolation kernel for stereoscopic convolution.
【図4】立体コンボルーションによる補間方法を説明す
るために用いられるグラフである。FIG. 4 is a graph used to explain an interpolation method by stereoscopic convolution.
【図5】補間係数を記憶するためのメモリの配列を示す
ブロック図である。FIG. 5 is a block diagram showing an array of memories for storing interpolation coefficients.
【図6】線形補間の補間カーネルを示すグラフである。FIG. 6 is a graph showing an interpolation kernel for linear interpolation.
【図7】レプリケーションの補間カーネルを示すグラフ
である。FIG. 7 is a graph showing an interpolation kernel for replication.
【図8】出力画像のレイアウト例を示す図である。FIG. 8 is a diagram showing a layout example of an output image.
【図9】図1に示された補間回路の一部である入力ライ
ンコントローラおよびマルチプレクサの配置を示すブロ
ック図である。9 is a block diagram showing an arrangement of an input line controller and a multiplexer which are a part of the interpolation circuit shown in FIG.
【図10】図9に示された入力ラインコントローラの制
御工程を示すフローチャートである。10 is a flowchart showing a control process of the input line controller shown in FIG.
【図11】垂直方向補間回路の制御工程を示すフローチ
ャートである。FIG. 11 is a flowchart showing a control process of a vertical direction interpolation circuit.
【図12】水平方向補間回路の制御工程を示すフローチ
ャートである。FIG. 12 is a flowchart showing a control process of a horizontal direction interpolation circuit.
14 垂直方向補間回路 16 水平方向補間回路 18 垂直方向補間係数メモリ 20 水平方向補間係数メモリ 14 Vertical Direction Interpolation Circuit 16 Horizontal Direction Interpolation Circuit 18 Vertical Direction Interpolation Coefficient Memory 20 Horizontal Direction Interpolation Coefficient Memory
Claims (1)
入力デジタル画像の補間を実行するために用いられるデ
ジタル画像処理装置において、 所定の増分間隔を有して離間される出力画素位置におけ
る画素値を算出するために、離間された画素値間で補間
が実行され、 前記デジタル画像処理装置が、カーネルを定義する補間
方程式を表す少なくとも1組の補間係数を記憶するため
のメモリと、 (1)入力画素値の間隔、(2)出力画素位置間の所定
の増分間隔、および(3)それぞれの出力画素位置にお
ける望ましい補間方法に基づいて、それぞれの出力画素
位置における1組の補間係数を決定する手段と、 一連の離間された画素値に対して対応する補間係数値を
乗ずることで、入力デジタル画像の画素値を補間する手
段とを有して構成されていることを特徴とするデジタル
画像処理装置。1. A digital image processing device used to perform interpolation of an input digital image represented as a series of spaced pixel values, wherein the pixel values at output pixel locations are spaced apart by a predetermined increment spacing. A memory for storing at least one set of interpolation coefficients representing an interpolation equation defining a kernel, wherein interpolation is performed between spaced pixel values to calculate Determine a set of interpolation coefficients at each output pixel location based on the spacing of the input pixel values, (2) a predetermined increment spacing between the output pixel locations, and (3) the desired interpolation method at each output pixel location. And a means for interpolating the pixel values of the input digital image by multiplying a series of spaced pixel values by the corresponding interpolation coefficient value. Digital image processing apparatus characterized by being.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US375,882 | 1989-07-06 | ||
US37588295A | 1995-01-20 | 1995-01-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08251400A true JPH08251400A (en) | 1996-09-27 |
Family
ID=23482755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8007862A Withdrawn JPH08251400A (en) | 1995-01-20 | 1996-01-19 | Digital image interpolation circuit provided with plurality of interpolation kernels |
Country Status (3)
Country | Link |
---|---|
JP (1) | JPH08251400A (en) |
DE (1) | DE19601564A1 (en) |
GB (1) | GB2297216B (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6068746A (en) * | 1996-09-04 | 2000-05-30 | Denso Corporation | Oxygen sensor having a solid electrolyte applicable to an internal combustion engine |
US6765587B1 (en) | 1999-06-29 | 2004-07-20 | Sharp Kabushiki Kaisha | Image processing apparatus |
US10387997B2 (en) | 2016-11-28 | 2019-08-20 | Fujitsu Limited | Information processing device, information processing method, and storage medium |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR0157566B1 (en) * | 1995-09-30 | 1998-11-16 | 김광호 | Interpolation method and apparatus for hdtv |
DE69942193D1 (en) * | 1998-04-20 | 2010-05-12 | Seiko Epson Corp | MEDIUM ON WHICH PRESSURE CONTROL PROGRAM IS TAKEN, PRESSURE MONITORING AND PRESSURE CONTROL PROCEDURE |
AU748831B2 (en) * | 1998-12-18 | 2002-06-13 | Canon Kabushiki Kaisha | A modified kernel for image interpolation |
AU729482B2 (en) * | 1998-12-18 | 2001-02-01 | Canon Kabushiki Kaisha | Image interpolation with a continuous two-dimensional kernel |
GB2356506A (en) * | 1999-09-25 | 2001-05-23 | Eastman Kodak Co | Multiple dimension interpolator |
DE10009536A1 (en) * | 2000-02-29 | 2001-09-06 | Cgk Comp Ges Konstanz Mbh | Transforming images in two coordinate systems involves determining auxiliary coordinates in two consecutive source image pixels from two coordinates to calculate target image pixels |
US7496242B2 (en) | 2004-12-16 | 2009-02-24 | Agfa Inc. | System and method for image transformation |
US7848597B2 (en) * | 2006-09-08 | 2010-12-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Data processing |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0429634B1 (en) * | 1989-06-16 | 1996-08-14 | Eastman Kodak Company | Digital image interpolator |
US5008752A (en) * | 1989-06-16 | 1991-04-16 | Eastman Kodak Company | Digital image interpolator with multiple interpolation algorithms |
-
1996
- 1996-01-17 GB GB9600931A patent/GB2297216B/en not_active Expired - Fee Related
- 1996-01-17 DE DE1996101564 patent/DE19601564A1/en not_active Withdrawn
- 1996-01-19 JP JP8007862A patent/JPH08251400A/en not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6068746A (en) * | 1996-09-04 | 2000-05-30 | Denso Corporation | Oxygen sensor having a solid electrolyte applicable to an internal combustion engine |
US6765587B1 (en) | 1999-06-29 | 2004-07-20 | Sharp Kabushiki Kaisha | Image processing apparatus |
US10387997B2 (en) | 2016-11-28 | 2019-08-20 | Fujitsu Limited | Information processing device, information processing method, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
DE19601564A1 (en) | 1996-07-25 |
GB9600931D0 (en) | 1996-03-20 |
GB2297216B (en) | 1999-11-24 |
GB2297216A (en) | 1996-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5125042A (en) | Digital image interpolator using a plurality of interpolation kernals | |
US5008752A (en) | Digital image interpolator with multiple interpolation algorithms | |
JP2612939B2 (en) | Interpolator for image display system and image display system | |
Gribbon et al. | A novel approach to real-time bilinear interpolation | |
KR101386767B1 (en) | Apparatus and method for displaying a warped version of a source image | |
JP3276886B2 (en) | Generating pixel values for enlarged destination images | |
EP0302930A1 (en) | Fast bitonal to gray scale image scaling. | |
JPH10105723A (en) | Memory constitution for texture mapping | |
US5930407A (en) | System and method for efficiently generating cubic coefficients in a computer graphics system | |
EP3494542B1 (en) | Method and system for correcting a distorted input image | |
JPH10304184A (en) | Image processor and image processing method | |
JP2008512767A (en) | General two-dimensional spatial transformation expression system and method | |
JPH08251400A (en) | Digital image interpolation circuit provided with plurality of interpolation kernels | |
JP3203124B2 (en) | Image data value storage method | |
US5889526A (en) | Interpolation apparatus and method, and image generation apparatus including such an apparatus | |
JP3869779B2 (en) | Digital video processing apparatus and method | |
US20030030646A1 (en) | Trilinear texture filtering method with proper texel selection | |
US20120050820A1 (en) | Image processing apparatus, control method of the same, and program | |
EP0908845B1 (en) | Image sharpening and re-sampling method | |
US6222173B1 (en) | Image sharpening and re-sampling method | |
EP0511606B1 (en) | Parallel interpolator for high speed digital image enlargement | |
JP2000187726A (en) | Data interpolation method and its device and storage medium | |
Fahmy | Generalised parallel bilinear interpolation architecture for vision systems | |
US5506693A (en) | Addressing mechanism for interfacing spatially defined imagery data with sequential memory | |
JP2946360B2 (en) | Image data interpolation method and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20030401 |