JP2009010656A - データ補間装置および方法、画像拡大縮小装置 - Google Patents
データ補間装置および方法、画像拡大縮小装置 Download PDFInfo
- Publication number
- JP2009010656A JP2009010656A JP2007169762A JP2007169762A JP2009010656A JP 2009010656 A JP2009010656 A JP 2009010656A JP 2007169762 A JP2007169762 A JP 2007169762A JP 2007169762 A JP2007169762 A JP 2007169762A JP 2009010656 A JP2009010656 A JP 2009010656A
- Authority
- JP
- Japan
- Prior art keywords
- interpolation
- value
- pixel
- target
- distance
- 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 description 21
- 238000004364 calculation method Methods 0.000 claims abstract description 78
- 230000006870 function Effects 0.000 claims description 25
- 238000000605 extraction Methods 0.000 claims description 13
- 239000000284 extract Substances 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 description 15
- 238000010586 diagram Methods 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 6
- 238000005070 sampling Methods 0.000 description 5
- 238000012952 Resampling Methods 0.000 description 2
- 230000008602 contraction Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/387—Composing, repositioning or otherwise geometrically modifying originals
- H04N1/393—Enlarging or reducing
- H04N1/3935—Enlarging or reducing with modification of image resolution, i.e. determining the values of picture elements at new relative positions
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【課題】少ない計算量で、原画像に対して斜め方向のジャギーが目立たない良好な拡大/縮小を行うことができるようにする。
【解決手段】注目位置rと補間位置qとを直径の両端とする円上にある任意の位置を仮想位置sとして設定し、注目位置rおよび補間位置qの両方から見て斜め方向に存在する仮想位置sと注目位置rとの間の第1の空間距離d1および仮想位置sと補間位置qとの間の第2の空間距離d2をそれぞれ所定の補間関数F(d)に代入して補間位置qのデータ値を求めることにより、斜め方向に対する補間を行うことができるようにする。また、注目位置rと補間位置qとを直径の両端とする円上に仮想位置sを設定することにより、計算負荷が大きい平方根演算を行わずに、簡単な三角関数演算によって空間距離d1,d2を求めることができるようにする。
【選択図】 図2
【解決手段】注目位置rと補間位置qとを直径の両端とする円上にある任意の位置を仮想位置sとして設定し、注目位置rおよび補間位置qの両方から見て斜め方向に存在する仮想位置sと注目位置rとの間の第1の空間距離d1および仮想位置sと補間位置qとの間の第2の空間距離d2をそれぞれ所定の補間関数F(d)に代入して補間位置qのデータ値を求めることにより、斜め方向に対する補間を行うことができるようにする。また、注目位置rと補間位置qとを直径の両端とする円上に仮想位置sを設定することにより、計算負荷が大きい平方根演算を行わずに、簡単な三角関数演算によって空間距離d1,d2を求めることができるようにする。
【選択図】 図2
Description
本発明は、データ補間装置および方法、画像拡大縮小装置に関し、例えば、デジタル画像の拡大および縮小を行う装置に用いて好適なものである。
従来、画像の拡大あるいは縮小を簡単な処理によって行う方法として、所定間隔で同じ画素を繰り返したり間引いたりする手法が知られている。例えば、X方向およびY方向のそれぞれについて、5画素毎にこの5画素目と同じ画素値を有する画素を挿入することにより、簡易的に1.2倍の拡大画像を得ることができる。反対に、5画素毎に1画素を削除することにより、簡易的に0.8倍の縮小画像を得ることができる。
しかし、このように一定間隔で画素を挿入したり、間引いたりした場合には、拡大後あるいは縮小後の画像が歪むという欠点がある。そのため、画像の拡大や縮小を高精度に行う手法として、このような欠点のない補間処理を用いた手法が提供されている(例えば、特許文献1参照)。
特開平11−353473号公報
上記特許文献1に記載の技術では、例えば画像をα倍に拡大(または縮小)する処理の場合、まずは原画像の画素間隔に対して1/α倍の間隔で補間位置を定める。次に、補間位置の周囲にある複数の注目位置の画素値を用いて、補間位置の画素値を補間演算により求める。この補間演算は、X方向とY方向とに分解して行っている。
すなわち、まず、補間位置とその周囲にある複数の注目画素の位置とのX方向に沿った距離を注目画素毎にそれぞれ計算するとともに、この計算した距離に基づいてX方向標本化関数の値を注目画素毎にそれぞれ計算する。次に、注目画素毎に求めた複数のX方向標本化関数の値に、それぞれに対応する注目画素の画素値を乗算し、その結果をY座標が同一の系列毎に加算することにより、X方向に沿った畳み込み演算を行う。この畳み込み演算によって得られる値が、X方向毎の補間値となる。
さらに、このようにして算出された複数のX方向補間値に対応する画素の位置と補間位置とのY方向に沿った距離をそれぞれ計算するとともに、この計算した距離に基づいて各X方向補間値に対応したY方向標本化関数の値をそれぞれ計算する。次に、X方向補間値毎に求めた複数のY方向標本化関数の値のそれぞれに、対応するX方向補間値を乗算し、その結果を加算することにより複数のX方向補間値に対応する畳み込み演算を行う。この畳み込み演算によって得られる補間値が、補間位置の画素値となる。
また、上述のように補間演算をX方向とY方向とに分解して行わずに、ダイレクトに行う手法も提案されている。すなわち、画像の拡大/縮小率αに応じて補間位置を設定し、その設定した補間位置とその周囲にある複数の注目画素の位置との空間距離を注目画素毎にそれぞれ算出する。そして、その空間距離に応じた係数値を所定の補間関数から求める。さらに、各注目画素の画素値と、当該注目画素毎に求めた係数値とをそれぞれ乗算して、それらの乗算結果を全て加算することにより、補間位置の画素値を求める。
しかしながら、上記従来の技術では、X方向(水平方向)とY方向(垂直方向)にしかデータを補間することができず、斜め方向にデータを補間することができない。そのため、画像内で斜め方向に存在する線や輪郭部などが補間によって拡大または縮小されると、斜め方向に階段状のギザギザ(ジャギー)が目立って現われてしまうという問題があった。
また、補間演算をX方向とY方向とに分解して行う方法では、距離の算出、標本化関数値の算出、畳み込み演算をそれぞれ2回繰り返して行う必要がある。注目画素と補間画素との空間距離をダイレクトに計算して補間する手法でも、空間距離を算出するのに平方根演算を複数回行わなければならない。そのため、従来の技術では計算量が多くなってしまうという問題もあった。
本発明は、このような問題を解決するために成されたものであり、少ない計算量で、原画像に対してジャギーの目立たない良好な拡大/縮小を行うことができるようにすることを目的とする。
上記した課題を解決するために、本発明のデータ補間装置は、注目位置と補間位置とを直径の両端とする円上にある位置を仮想位置として、注目位置と仮想位置との間の第1の空間距離および補間位置と仮想位置との間の第2の空間距離を求める距離演算部と、第1の空間距離および第2の空間距離をそれぞれ所定の補間関数に代入して第1の補間値および第2の補間値を求め、注目位置のデータ値と第1の補間値と第2の補間値とを乗算することによって補間位置のデータ値を得る補間演算部とを備えている。
また、本発明の画像拡大縮小装置では、補間画素の周囲にある複数の注目画素毎に上記データ補間装置と同様の演算によって求めた補間画素のデータ値を加算することによって補間画素の画素値を求める。その演算の一例として、複数の注目画素毎に求めた第1の補間値と第2の補間値とを乗算することによって補間画素に対する係数値を求め、複数の注目画素の各画素値と複数の注目画素毎に求めた各係数値とを積和演算することにより補間画素の画素値を求める。
上記のように構成した本発明によれば、注目位置と補間位置とを直径の両端とする円上に設定される仮想位置は、注目位置から見ても補間位置から見ても斜め方向に存在する。その斜め方向に存在する仮想位置と注目位置との空間距離および仮想位置と補間位置との空間距離を利用して補間演算が行われるので、斜め方向に対する補間が行われることとなる。これにより、斜め方向に対するジャギーは殆ど発生せず、原画像に対してジャギーの目立たない良好な拡大/縮小を行うことができる。
しかも、本発明によれば、仮想位置は、注目位置と補間位置とを直径の両端とする円上に設定されるので、仮想位置と注目位置との間の第1の空間距離および仮想位置と補間位置との間の第2の空間距離は何れも、計算負荷の少ない三角関数演算によって求めることができる。すなわち、煩雑な演算を繰り返し行う必要がなく、空間距離を算出するのに平方根演算を行う必要もないので、計算量を削減することができる。
以下、本発明の一実施形態を図面に基づいて説明する。図1は、本実施形態によるデータ補間装置の機能構成例を示すブロック図である。図2は、本実施形態によるデータ補間方法を説明するための模式図である。以下、これらの図1および図2に従って説明する。
図1に示すように、本実施形態のデータ補間装置は、その機能構成として、仮想位置設定部1、距離演算部2および補間演算部3を備えている。本実施形態のデータ補間装置は、実際にはコンピュータのCPUあるいはMPU、ROM、RAMなどを備えて構成され、RAMやROMに記憶されたプログラムが動作することによって上述の機能が実現される。なお、上述の機能は、ロジックによるハードウェア構成またはDSP(Digital Signal Processor)によっても実現することが可能である。
仮想位置設定部1は、2次元空間上の注目位置rのデータ値から補間位置(目標位置)qのデータ値を補間演算によって求める際に、注目位置rと補間位置qとを直径の両端とする円を想定し、当該円上にある位置sを仮想位置として設定する。ここで、図2に示すように、注目位置rと仮想位置sとを結ぶ線分の水平方向(図2の例で注目位置rから右水平方向に向かうベクトル)に対する角度をθとした場合、仮想位置sを設定するということは、角度θの値を設定することに相当する。角度θは任意であるが、0≦θ≦π/2とすることが好ましい。
距離演算部2は、注目位置rと仮想位置sとの間の第1の空間距離d1および補間位置qと仮想位置sとの間の第2の空間距離d2を求める。具体的には、注目位置rと補間位置qとの間の水平方向の距離をx、注目位置rと補間位置qとの間の垂直方向の距離をyとして、第1の空間距離d1および第2の空間距離d2を次の式1および式2に示す演算によって求める。
d1=|ysinθ−xcosθ| ・・・式1
d2=xsinθ+ycosθ ・・・式2
d1=|ysinθ−xcosθ| ・・・式1
d2=xsinθ+ycosθ ・・・式2
以下に、式1および式2によって第1の空間距離d1および第2の空間距離d2が求まる理由を説明する。図2に示すように、仮想位置sを通って垂直方向に平行な補助線L1を引く。また、線分(円の直径)rqを斜辺として持ち円に内接する三角形であって、底辺および垂線がそれぞれ水平方向および垂直方向に平行な三角形の頂角に当たる点をtとして、点tを通り線分rsに平行な補助線L2を引く。そして、補助線L1と補助線L2との交点をu、補助線L2と線分rqとの交点をvとする。
この場合、四角形rsutは平行四辺形となり、補助線L2と線分qsとは交点vにおいて垂直に交わる。これにより、図2に示す角度θ1(∠vsu)および角度θ2(∠vtq)は、それぞれ角度θに等しくなる。したがって、線分の長さを||で表すとすると、第1の空間距離d1は、
d1=|rs|=|tu|=||vu|−|vt||
=||su|sinθ1−|qt|cosθ2|
=|ysinθ−xcosθ| ・・・式1
となる。また、第2の空間距離d2は、
d2=|qs|=|qv|+|vs|
=|qt|sinθ2+|su|cosθ1
=xsinθ+ycosθ ・・・式2
となる。
d1=|rs|=|tu|=||vu|−|vt||
=||su|sinθ1−|qt|cosθ2|
=|ysinθ−xcosθ| ・・・式1
となる。また、第2の空間距離d2は、
d2=|qs|=|qv|+|vs|
=|qt|sinθ2+|su|cosθ1
=xsinθ+ycosθ ・・・式2
となる。
なお、本実施形態では、仮想位置設定部1を設け、角度θをユーザが任意に指定できる(例えば、角度θの値をコンピュータに入力して設定する)ようにしているが、角度θはあらかじめ決められた値に固定しても良い。角度θを固定の値とする場合、仮想位置設定部1は不要である。
補間演算部3は、距離演算部2により求められた第1の空間距離d1および第2の空間距離d2をそれぞれ所定の補間関数F(d)に代入して、第1の補間値F(d1)および第2の補間値F(d2)を求める。そして、注目位置rのデータ値と第1の補間値F(d1)と第2の補間値F(d2)とを乗算することによって、補間位置qのデータ値(補間値)を求める。ここで使用する補間関数F(d)は任意である。線形補間関数であっても良いし、スプライン関数などの曲線補間関数であっても良い。
次に、上記のように構成した本実施形態によるデータ補間装置の動作について説明する。図3は、本実施形態によるデータ補間装置の動作、すなわち、データ補間方法の処理手順を示すフローチャートである。
図3において、まず、仮想位置設定部1は、注目位置rと補間位置qとを直径の両端とする円上にある位置を仮想位置sとして設定する(ステップS1)。次に、距離演算部2は、ステップS1で設定した仮想位置sと注目位置rとの間の第1の空間距離d1および補間位置qと仮想位置sとの間の第2の空間距離d2を求める(ステップS2)。
最後に、補間演算部3は、ステップS2で求めた第1の空間距離d1および第2の空間距離d2をそれぞれ所定の補間関数F(d)に代入して第1の補間値F(d1)および第2の補間値F(d2)を求め、注目位置rのデータ値と第1の補間値F(d1)と上記第2の補間値F(d2)とを乗算することによって、補間位置qの補間値を求める。以上のような極めて簡単な処理でデータ補間を行うことができる。
次に、以上のように構成した本実施形態によるデータ補間装置を適用した画像拡大縮小装置について説明する。図4は、本実施形態による画像拡大縮小装置の構成例を示す図である。図5は、本実施形態において用いるユニットマトリクスとデータ生成エリアについて説明するための図である。図6は、原画像の注目画素と補間画素との位置関係を説明するための図である。
本実施形態の画像拡大縮小装置は、2次元空間上に等間隔に配置された複数の画素によって構成される原画像について、所定の倍率αに応じて設定される補間位置(補間画素)qの画素値を補間位置qの周囲にある複数の注目位置(注目画素)rの画素値から補間演算によって求めることにより、画像の拡大/縮小を行うものである。ここでの画像の拡大/縮小処理は、ユニットマトリクスを単位とした補間演算によって実行する。
ユニットマトリクスは、画像の拡大縮小処理を行う最小画素ブロックであり、図5にその構成の一例を示している。図5において、四角で示したa〜pの16個(縦4個×横4個)の画素がユニットマトリクスの構成画素(本発明の注目画素に相当)である。水平方向の隣接画素のクロック間隔はck0であり、垂直方向の隣接画素のクロック間隔は1水平クロックである。データ生成エリアは、ユニットマトリクスの中央部における正方形エリア(4つの互いに隣接する画素f,g,j,kで囲まれるエリア)であり、補間画素qの画素値(補間画素値)はこのデータ生成エリア内で生成する。
補間画素値の生成方法の概略は、以下の通りである。すなわち、画像の拡大/縮小率αに応じてデータ生成エリア内に補間画素qを設定し、その補間画素qの周囲にある16個の注目画素a〜pの位置をそれぞれ注目位置rとする。そして、補間画素qと注目画素a〜pとの16個の組毎に、図2で説明したのと同様の演算によって補間画素qの補間値を算出する。そして、こうして求めた16個の補間値を全て加算することによって、補間画素qの画素値を生成する。
ここで、原画像の注目画素と補間画素との位置関係について説明する。図6において、●印は原画像の画素を示し、×印は画像を水平方向にαH倍、垂直方向にαV倍した場合(αH,αVは任意の正数である。図6はαH≠αV,1<αH<2,1<αV<2の例)の補間画像の画素を示す。また、原画像の4つの画素で囲まれる点線の矩形領域の1つ1つがデータ生成エリアを示している。
水平方向に画像をαH倍するということは、原画像の水平方向の画素間隔に対して1/αH倍の間隔で補間位置を設定し、その補間位置の画素値を補間演算により求めて、求めた補間位置の画素値を原画像と同じ元の画素間隔で描くことに相当する。1/αH倍の間隔で設定した補間位置の画素値を求めるというのは、言い換えると、基準クロックck0に対してαH倍周波数のクロックck1(=αH・ck0)の間隔でリサンプリングし、そのリサンプル点の補間データを求めることに相当する。
この場合、データ生成エリア内でのリサンプル点の水平方向の位置は、図6に示すように1クロックck1毎に1/αHの間隔でずれていく。そして、ck1の数クロック後には元の画素位置と一致する。図6の例の場合、データ生成エリア内でのリサンプル点の水平方向の位置は、補間画素が5つ離れたところ(原画像の画素では4つ離れたところ)で元の画素位置と一致する。
また、垂直方向に画像をαV倍するということは、原画像の垂直方向の画素間隔に対して1/αV倍の間隔で補間位置を設定し、その補間位置の画素値を補間演算により求めて、求めた補間位置の画素値を原画像と同じ元の画素間隔で描くことに相当する。1/αV倍の間隔で設定した補間位置の画素値を求めるというのは、言い換えると、基準クロックck0に対してαV倍周波数のクロックck1’(=αV・ck0)の間隔でリサンプリングし、そのリサンプル点の補間データを求めることに相当する。
この場合、データ生成エリア内でのリサンプル点の垂直方向の位置は、図6に示すように1クロックck1’毎に1/αVの間隔でずれていく。そして、ck1’の数クロック後には元の画素位置と一致する。図6の例の場合、データ生成エリア内でのリサンプル点の垂直方向の位置は、補間画素が5つ離れたところ(原画像の画素では3つ離れたところ)で元の画素位置と一致する。
以下では、データ生成エリア内でのリサンプル点の位置が元の画素位置と一致するまでの一巡のサイクル中に含まれるクロックck1,ck1’の数を、クロックサイクルと呼ぶ。1つのクロックサイクル内に含まれる補間位置の数は、画像の拡大/縮小率αに応じて異なる。また、拡大/縮小率αによっては、クロックサイクル内に含まれるデータ生成エリア毎に、その中に含まれる補間位置の数が異なることもある。図6に示した例では、水平方向のクロックサイクルccx内に含まれる4つのデータ生成エリアのうち、1つ目と4つ目のデータ生成エリアでは水平方向の補間位置が2つであるが、2つ目と3つ目のデータ生成エリアでは水平方向の補間位置が1つのみとなっている。
そこで、補間画素値を求める際に、1つ目と4つ目のデータ生成エリアでは補間画素値を2つずつ求め、2つ目と3つ目のデータ生成エリアでは補間画素値を1つずつ求める必要がある。すなわち、1つ目と4つ目のデータ生成エリアはデータクロックck1を2つカウントしたタイミングで水平方向に移動させ、2つ目と3つ目のデータ生成エリアはデータクロックck1を1つカウントしたタイミングで水平方向に移動させる必要がある。
図6において、○で囲んだ×印の補間画素について画素値を求める場合、その周囲にある原画像の16個の画素範囲(実線の四角で示す範囲)がユニットマトリクスであり、そのユニットマトリクスを構成する16個の各画素が注目画素ということになる。
なお、ここではユニットマトリクスの例として縦4個×横4個のマトリクスを挙げているが、これに限定されない。例えば、縦3個×横3個あるいは縦2個×横2個のマトリクスであっても良い。後者の場合、ユニットマトリクスとデータ生成エリアとが一致する。
次に、本実施形態による画像拡大縮小装置の構成について説明する。図1に示すように、本実施形態による画像拡大縮小装置は、注目画素値抽出部11、係数演算部12および積和演算部13を備えて構成されている。また、係数演算部12は、仮想位置設定部21、距離演算部22および補間演算部23を備えて構成されている。本実施形態の画像拡大縮小装置は、実際にはコンピュータのCPUあるいはMPU、ROM、RAMなどを備えて構成され、RAMやROMに記憶されたプログラムが動作することによって上述の機能が実現される。なお、上述の機能は、ロジックによるハードウェア構成またはDSPによっても実現することが可能である。
注目画素値抽出部11は、補間画素qの周囲にある複数の注目画素a〜pの画素値を入力画像信号から抽出する。すなわち、注目画素値抽出部11は、入力画像信号からユニットマトリクスを構成する16個の注目画素a〜pの画素値を抽出する。係数演算部12は、注目画素値抽出部11により抽出された複数の注目画素a〜p毎に、補間画素qに対する係数値を求める。
注目画素a〜pの1つ(これが注目位置rの画素に相当する)を用いて補間画素qの係数値を求める演算は、図2で説明した演算と同様である。すなわち、係数演算部12の仮想位置設定部21は、注目画素rと補間画素qとを直径の両端とする円上にある位置を仮想位置sとして設定する。距離演算部22は、注目画素rと仮想位置sとの間の第1の空間距離d1および補間画素qと仮想位置sとの間の第2の空間距離d2を、上述の式1および式2に基づいて求める。
また、補間演算部23は、距離演算部22により求められた第1の空間距離d1および第2の空間距離d2をそれぞれ所定の補間関数F(d)に代入して第1の係数値F(d1)および第2の係数値F(d2)を求め、当該第1の補間値F(d1)と第2の補間値F(d2)とを乗算することによって補間画素qに対する係数値F(=F(d1)*F(d2))を得る。
係数演算部12は、以上のような演算を16個の注目画素a〜p毎に行うことによって、16個の注目画素a〜pに対応して16個の係数値Fa〜Fpを求める。積和演算部13は、注目画素値抽出部11により抽出された複数の注目画素a〜pの各画素値Ia〜Ipと、係数演算部12により16個の注目画素a〜p毎に求められた各係数値Fa〜Fpとを積和演算することによって補間画素qの画素値を求める。この場合の積和演算は、Ia*Fa+Ib*Fb+・・・+Ip*Fpという演算である。
1つの補間画素qについて補間画素値を求めたら、次の補間画素qについても同様にして補間画素値を求める。このとき、必要に応じてユニットマトリクス(データ生成エリア)を水平方向あるいは垂直方向に1クロック分移動させる。例えば、ユニットマトリックスを水平方向に1クロックずつ移動させて補間画素値を順次求めていき、1水平ライン分の処理が終わったら、ユニットマトリクスを垂直方向に1クロック分移動させて、再び補間画素値を求めていく。
なお、ここでは原画像の上端から下端に向かって水平方向の1ラインずつ順番に補間画素値を求めていく例について説明したが、これに限定されない。例えば、原画像の左端から右端に向かって垂直方向の1ラインずつ順番に補間画素値を求めていくようにしても良い。また、個々のデータ生成エリア毎に水平方向および垂直方向の補間画素値を順番に求めていくようにしても良い。
図7は、本実施形態による画像拡大縮小装置の他の構成例を示す図である。なお、この図7において、図4に示した符号と同一の符号を付したものは同一の機能を有するものであるので、ここでは重複する説明を省略する。図7に示す画像拡大縮小装置は、注目画素値抽出部11、係数記憶部32および積和演算部33を備えて構成されている。
係数記憶部32は、注目画素値抽出部11により抽出される16個の注目画素a〜p毎に、当該16個の注目画素a〜pに対応する係数値をあらかじめ記憶している。この係数記憶部32に記憶される係数値は、図4の係数演算部12と同様の演算によって求められた係数値Fa〜Fpである。積和演算部33は、注目画素値抽出部11により抽出された16個の注目画素a〜pの各画素値Ia〜Ipと、係数記憶部32より読み出される16個の係数値Fa〜Fpとを積和演算することによって、補間画素qの画素値を求める。この場合の積和演算は、Ia*Fa+Ib*Fb+・・・+Ip*Fpという演算である。
なお、画像の拡大/縮小率αの値をいくつか設定して、拡大/縮小率α毎に16個の係数値Fa〜Fpを求めることにより、様々な拡大/縮小率αの値に応じた係数値をあらかじめ係数記憶部32に格納しておくことが可能である。この場合、積和演算部33は、設定された拡大/縮小率αの値に応じて該当する係数値Fa〜Fpの組を読み出して積和演算を実行する。
以上詳しく説明したように、本実施形態によれば、注目位置rおよび補間位置qの両方から見て斜め方向に存在する仮想位置sと注目位置rとの間の第1の空間距離d1および仮想位置sと補間位置qとの間の第2の空間距離d2を利用して補間演算が行われるので、斜め方向に対する補間を行うことができる。これにより、原画像を拡大あるいは縮小しても、斜め方向に対するジャギーは殆ど発生せず、ジャギーの目立たない良好な拡大/縮小を行うことができる。
しかも、本実施形態によれば、仮想位置sは、注目位置rと補間位置qとを直径の両端とする円上に設定しているので、仮想位置sと注目位置rとの間の第1の空間距離d1および仮想位置sと補間位置qとの間の第2の空間距離d2は何れも、式1および式2のように計算負荷の少ない三角関数演算によって求めることができる。すなわち、煩雑な演算を繰り返し行ったり、空間距離を算出するのに平方根演算を行ったりする必要がなく、計算量を削減することができる。
その他、上記実施形態の画像拡大縮小装置によれば、以下のようなメリットも有する。
・拡大と縮小を同じアルゴリズムで実行できる。
・倍率選択範囲が広く、小数点以下の比率の設定も可能である。
・水平方向および垂直方向の倍率を個々に選択することができる。
・拡大と縮小を同じアルゴリズムで実行できる。
・倍率選択範囲が広く、小数点以下の比率の設定も可能である。
・水平方向および垂直方向の倍率を個々に選択することができる。
なお、上記実施形態では、2次元空間上に等間隔に配置された複数の画素によって構成される原画像の拡大/縮小を行う例について説明したが、これに限定されない。例えば、3次元空間上に等間隔に配置された複数の画素によって構成される原画像の拡大/縮小を行うことも可能である。3次元画像の拡大/縮小を行う場合、ユニットマトリクスを構成する各画素を3次元配置とし、円を球体とし、角度θとして線分qrを軸とする円板の回転角度を用いることで、3次元画像の拡大/縮小アルゴリズムを構築できる。3次元状の等間隔に配置された複数の画素の位置は、1個の動径および複数の偏角から成る極座標で表しても良い。
また、上記実施形態では、図2において注目位置rの画素値(Irと記す)から補間位置qの画素値(Iqと記す)を求める際に、
Iq=Ir*F(d1)*F(d2)
なる演算を用いていたが、これに限定されない。例えば、斜め方向の線分rsに関する第1の空間距離d1および斜め方向の線分qsに関する第2の空間距離d2の他に、注目位置rと補間位置qとの間の水平方向の距離xおよび垂直方向の距離yを更に用いて、例えば
Iq=Ir*(F(x)*F(y)+F(d1)*F(d2))/2
なる演算によって補間位置qの画素値Iqを求めるようにしてもよい。この演算式によれば、縦方向、横方向および斜め方向に対する補間を合わせて行うことができる。なお、係数F(x)*F(y)の値と係数F(d1)*F(d2)の値とを重み付け加算するようにしてもよい。
Iq=Ir*F(d1)*F(d2)
なる演算を用いていたが、これに限定されない。例えば、斜め方向の線分rsに関する第1の空間距離d1および斜め方向の線分qsに関する第2の空間距離d2の他に、注目位置rと補間位置qとの間の水平方向の距離xおよび垂直方向の距離yを更に用いて、例えば
Iq=Ir*(F(x)*F(y)+F(d1)*F(d2))/2
なる演算によって補間位置qの画素値Iqを求めるようにしてもよい。この演算式によれば、縦方向、横方向および斜め方向に対する補間を合わせて行うことができる。なお、係数F(x)*F(y)の値と係数F(d1)*F(d2)の値とを重み付け加算するようにしてもよい。
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその精神、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明のデータ補間装置は、n次元空間上に離散的に配置されたデータの補間を行う装置に有用である。また、本発明の画像拡大縮小装置は、デジタル画像の拡大/縮小を行う装置に有用である。
1 仮想位置設定部
2 距離演算部
3 補間演算部
11 注目画素値抽出部
12 係数演算部
13 積和演算部
21 仮想位置設定部
22 距離演算部
23 補間演算部
32 係数記憶部
33 積和演算部
2 距離演算部
3 補間演算部
11 注目画素値抽出部
12 係数演算部
13 積和演算部
21 仮想位置設定部
22 距離演算部
23 補間演算部
32 係数記憶部
33 積和演算部
Claims (9)
- n次元空間上(nは2または3)の注目位置のデータ値から補間位置のデータ値を補間演算によって求めるデータ補間装置であって、
上記注目位置と上記補間位置とを直径の両端とする円上にある位置を仮想位置として、上記注目位置と上記仮想位置との間の第1の空間距離および上記補間位置と上記仮想位置との間の第2の空間距離を求める距離演算部と、
上記距離演算部により求められた上記第1の空間距離および上記第2の空間距離をそれぞれ所定の補間関数に代入して第1の補間値および第2の補間値を求め、上記注目位置のデータ値と上記第1の補間値と上記第2の補間値とを乗算することによって上記補間位置のデータ値を得る補間演算部とを備えたことを特徴とするデータ補間装置。 - 上記距離演算部は、上記注目位置と上記補間位置との間の水平方向の距離をx、上記注目位置と上記補間位置との間の垂直方向の距離をy、上記注目位置と上記仮想位置とを結ぶ線分の上記水平方向に対する角度をθとして、上記第1の空間距離を|ysinθ−xcosθ|なる演算によって求めるとともに、上記第2の空間距離をxsinθ+ycosθなる演算によって求めることを特徴とする請求項1に記載のデータ補間装置。
- ユーザからの指示に従って上記仮想位置を設定する仮想位置設定部を更に備えたことを特徴とする請求項1に記載のデータ補間装置。
- n次元空間上(nは2または3)の注目位置のデータ値から補間位置のデータ値を補間演算によって求めるデータ補間方法であって、
上記注目位置と上記補間位置とを直径の両端とする円上にある位置を仮想位置として、上記注目位置と上記仮想位置との間の第1の空間距離および上記補間位置と上記仮想位置との間の第2の空間距離を求める距離演算ステップと、
上記距離演算部により求められた上記第1の空間距離および上記第2の空間距離をそれぞれ所定の補間関数に代入して第1の補間値および第2の補間値を求め、上記注目位置のデータ値と上記第1の補間値と上記第2の補間値とを乗算することによって上記補間位置のデータ値を得る補間演算ステップとを有することを特徴とするデータ補間方法。 - n次元空間上(nは2または3)に等間隔に配置された複数の画素によって構成される原画像について、指定の倍率に応じて設定される補間画素の画素値を上記補間画素の周囲にある上記原画像の注目画素の画素値から補間演算によって求めることによって画像の拡大/縮小を行う画像拡大縮小装置であって、
上記補間画素の周囲にある複数の注目画素の画素値を抽出する注目画素値抽出部と、
上記注目画素値抽出部により画素値が抽出された複数の注目画素毎に、上記補間画素に対する係数値を求める係数演算部と、
上記注目画素値抽出部により抽出された複数の注目画素の各画素値と上記係数演算部により上記複数の注目画素毎に求められた各係数値とを積和演算することによって上記補間画素の画素値を求める積和演算部とを備え、
上記係数演算部は、上記注目画素と上記補間画素とを直径の両端とする円上にある位置を仮想位置として、上記注目画素と上記仮想位置との間の第1の空間距離および上記補間画素と上記仮想位置との間の第2の空間距離を求める距離演算部と、
上記距離演算部により求められた上記第1の空間距離および上記第2の空間距離をそれぞれ所定の補間関数に代入して第1の補間値および第2の補間値を求め、上記第1の補間値と上記第2の補間値とを乗算することによって上記係数値を得る補間演算部とを備えたことを特徴とする画像拡大縮小装置。 - 上記距離演算部は、上記注目位置と上記補間位置との間の水平方向の距離をx、上記注目位置と上記補間位置との間の垂直方向の距離をy、上記注目位置と上記仮想位置とを結ぶ線分の上記水平方向に対する角度をθとして、上記第1の空間距離を|ysinθ−xcosθ|なる演算によって求めるとともに、上記第2の空間距離をxsinθ+ycosθなる演算によって求めることを特徴とする請求項5に記載の画像拡大縮小装置。
- ユーザからの指示に従って上記仮想位置を設定する仮想位置設定部を更に備えたことを特徴とする請求項5に記載の画像拡大縮小装置。
- n次元空間上(nは2または3)に等間隔に配置された複数の画素によって構成される原画像について、指定の倍率に応じて設定される補間画素の画素値を上記補間画素の周囲にある上記原画像の注目画素の画素値から補間演算によって求めることによって画像の拡大/縮小を行う画像拡大縮小装置であって、
上記補間画素の周囲にある複数の注目画素の画素値を抽出する注目画素値抽出部と、
上記注目画素値抽出部により画素値が抽出される複数の注目画素毎に、上記補間画素に対する係数値を記憶する係数記憶部と、
上記注目画素値抽出部により抽出された複数の注目画素の各画素値と上記係数記憶部より読み出される上記複数の注目画素の各係数値とを積和演算することによって上記補間画素の画素値を求める積和演算部とを備え、
上記係数記憶部は、上記注目画素と上記補間画素とを直径の両端とする円上にある位置を仮想位置として、上記注目画素と上記仮想位置との間の第1の空間距離および上記補間画素と上記仮想位置との間の第2の空間距離を求め、上記第1の空間距離および上記第2の空間距離をそれぞれ所定の補間関数に代入して求めた第1の補間値と第2の補間値とを乗算することによって算出された係数値を記憶することを特徴とする画像拡大縮小装置。 - 上記注目位置と上記補間位置との間の水平方向の距離をx、上記注目位置と上記補間位置との間の垂直方向の距離をy、上記注目位置と上記仮想位置とを結ぶ線分の上記水平方向に対する角度をθとした場合に、上記第1の空間距離は|ysinθ−xcosθ|なる演算によって求められる値であり、上記第2の空間距離はxsinθ+ycosθなる演算によって求められる値であることを特徴とする請求項8に記載の画像拡大縮小装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007169762A JP2009010656A (ja) | 2007-06-27 | 2007-06-27 | データ補間装置および方法、画像拡大縮小装置 |
PCT/JP2008/061283 WO2009001755A1 (ja) | 2007-06-27 | 2008-06-13 | データ補間装置および方法、画像拡大縮小装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007169762A JP2009010656A (ja) | 2007-06-27 | 2007-06-27 | データ補間装置および方法、画像拡大縮小装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009010656A true JP2009010656A (ja) | 2009-01-15 |
Family
ID=40185573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007169762A Pending JP2009010656A (ja) | 2007-06-27 | 2007-06-27 | データ補間装置および方法、画像拡大縮小装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2009010656A (ja) |
WO (1) | WO2009001755A1 (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4231620B2 (ja) * | 2000-10-11 | 2009-03-04 | メディア・テック・ユーエスエイ・インコーポレーテッド | 画像処理方法および装置 |
JP2006238188A (ja) * | 2005-02-25 | 2006-09-07 | Matsushita Electric Ind Co Ltd | 補間フィルタおよび映像信号処理装置 |
-
2007
- 2007-06-27 JP JP2007169762A patent/JP2009010656A/ja active Pending
-
2008
- 2008-06-13 WO PCT/JP2008/061283 patent/WO2009001755A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2009001755A1 (ja) | 2008-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4975976A (en) | Image transformation method and device | |
JP3837575B2 (ja) | 超解像処理の高速化方法 | |
JP4728744B2 (ja) | 画像処理装置 | |
JPH0771936A (ja) | 画像処理装置及びその方法 | |
JP2009134509A (ja) | モザイク画像生成装置及びモザイク画像生成方法 | |
JPWO2003001458A1 (ja) | 情報処理装置 | |
WO2013114675A1 (ja) | 画像処理装置、歪補正マップ作成装置、および半導体計測装置 | |
JP2017191572A (ja) | 画像処理装置及びその方法、プログラム | |
JP2008021126A (ja) | 画像拡大縮小装置 | |
JPH11161819A (ja) | 画像処理装置、画像処理方法、及び画像処理プログラムを記録した記録媒体 | |
CN113240584A (zh) | 一种基于图片边缘信息的多任务手势图片超分辨率方法 | |
WO1999064987A1 (fr) | Processeur d'images | |
JP6099281B2 (ja) | 書籍読み取りシステム及び書籍読み取り方法 | |
JP2009122998A (ja) | ソリッド/サーフェースモデルから外形線を抽出する方法及びコンピュータソフトウエアプログラム | |
JP2009010656A (ja) | データ補間装置および方法、画像拡大縮小装置 | |
JPH10198824A (ja) | 映像生成処理装置及びその装置で用いられる構造化データを作成する構造化データ作成装置 | |
JP2011070594A (ja) | 画像処理装置、画像処理方法、および画像処理プログラム | |
JP2009064193A (ja) | 解像度変換装置及び方法 | |
JPH09330403A (ja) | テンプレートマッチング方法 | |
TWI494900B (zh) | 即時影像追蹤方法 | |
Shylaja et al. | A systematic investigation on Geometric Transformation | |
JPH03198167A (ja) | 二次元ビットマップ画像の変形方法および装置 | |
Kherd et al. | The Use of Biharmonic Dejdamrong Surface in Gray Image Enlargement Process | |
Bergamasco et al. | Saliency-driven Variational Retargeting for Historical Maps | |
JP4325469B2 (ja) | 物体表面平坦化装置およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20090319 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20090319 |