JP4795929B2 - 補間方法を決定するプログラム、装置、および方法 - Google Patents

補間方法を決定するプログラム、装置、および方法 Download PDF

Info

Publication number
JP4795929B2
JP4795929B2 JP2006350705A JP2006350705A JP4795929B2 JP 4795929 B2 JP4795929 B2 JP 4795929B2 JP 2006350705 A JP2006350705 A JP 2006350705A JP 2006350705 A JP2006350705 A JP 2006350705A JP 4795929 B2 JP4795929 B2 JP 4795929B2
Authority
JP
Japan
Prior art keywords
pixel
value
interpolation
correlation
correlation value
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.)
Expired - Fee Related
Application number
JP2006350705A
Other languages
English (en)
Other versions
JP2008166872A (ja
Inventor
昌平 中潟
幸二 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006350705A priority Critical patent/JP4795929B2/ja
Priority to CN2007103011756A priority patent/CN101237553B/zh
Priority to US11/964,570 priority patent/US8290308B2/en
Publication of JP2008166872A publication Critical patent/JP2008166872A/ja
Application granted granted Critical
Publication of JP4795929B2 publication Critical patent/JP4795929B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0117Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal
    • H04N7/012Conversion between an interlaced and a progressive signal
    • G06T3/10
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0135Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes
    • H04N7/0137Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes dependent on presence/absence of motion, e.g. of motion zones

Description

本発明は、画素を補間する方法を決定する技術に関する。
インターレース形式の画像をプログレッシブ形式に変換するIP変換(インターレース・プログレッシブ変換)や、静止画または動画の拡大処理においては、入力された元の画像にはない画素を補間する必要がある。補間しようとする画素を「対象画素」と呼ぶことにすると、一般に、一つの対象画素に対して複数の画素を選び、それらの複数の画素の画素値に基づいて対象画素の画素値を計算することにより、その対象画素が補間される。
画素を補間するには様々な方法があるが、上記複数の画素をどのように選ぶかという第一の観点と、選んだ複数の画素の画素値から対象画素の画素値をどのように計算するかという第二の観点によって分類することができる。以下では特に、IP変換において画素を補間する方法について、第一の観点から関連技術を概観する。
IP変換について説明する前に、まず、インターレース方式とプログレッシブ方式について説明する。動画をディスプレイに表示するための走査方式には、インターレース方式とプログレッシブ方式がある。インターレース方式は、奇数番目の走査線のみの走査と、偶数番目の走査線のみの走査とを交互に繰り返す方式であり、アナログ入力のテレビなどに用いられる。一方、プログレッシブ方式は、全部の走査線を走査する方式であり、パーソナルコンピュータのCRT(Cathode Ray Tube)ディスプレイなどに用いられる。また、「インターレース」と「プログレッシブ」という名称は、上記の走査方法の違いに応じて作成されたそれぞれの画像の形式の名称としても用いられる。
例えば、フレームレートが30fpsの場合、つまり1秒あたりのフレームの数が30の場合、プログレッシブ画像は、1秒あたり30枚のフレーム画像からなる動画である。一方、インターレース画像は、二つのフィールドが一つのフレームに対応するため、この場合、1秒あたり60枚のフィールド画像からなる。一つのフレームに対応する二つのフィールドは、一方が「奇数フィールド」と呼ばれ、他方が「偶数フィールド」と呼ばれる。奇数フィールドのフィールド画像は、奇数番目のラインの画素のデータのみを含み、偶数フィールドのフィールド画像は、偶数番目のラインの画素のデータのみを含む。なお、ディスプレイにおける1本の走査線が、画像における1ラインに対応する。フレームレートが30fpsの場合、プログレッシブ画像では、1枚のフレーム画像中のnライン目と(n+1)ライン目は同じ時刻に対応するが、インターレース画像では、nライン目と(n+1)ライン目には1/60秒のずれがある。
以下、画素のデータが存在するラインを「実ライン」、画素のデータが存在しない空白のラインを「補間ライン」と呼ぶことにする。つまり、奇数フィールドでは奇数番目のラインが実ラインで偶数番目のラインが補間ラインであり、偶数フィールドでは逆である。また、実ライン上の画素を「実画素」と呼ぶことにする。
IP変換は、インターレース画像を入力として受け取り、プログレッシブ画像に変換して出力する処理である。入力されるインターレース画像のフレームレートをfとすると、1秒あたり2f枚のフィールド画像がある。IP変換は、補間ライン上の画素を補間する処理である。その結果、各フィールド画像に対応して、すべてのラインの画素のデータが揃った画像が得られる。つまり、フレームレートが2fのプログレッシブ画像が得られる。
IP変換で高画質なプログレッシブ画像を得るには、対象画素付近の動きやエッジの方向を検出し、適切に補間する必要がある。そのような補間を実現する一つの手法に動き適応IP変換がある。
動き適応IP変換では、動きを検出した場合は、同じフィールド画像内で対象画素の上下に存在するラインの画素の画素値に基づいて対象画素を補間するフィールド内補間を行う。一方、静止している場合は、対象画素を含むフィールドの前後のフィールド画像で対象画素と同じ位置にある画素の画素値に基づいて対象画素を補間するフィールド間補間を行う。つまり、第一の観点から見ると、動き適応IP変換の特徴は、動きが検出されたときは同じフィールド内の画素を選択し、動きが検出されなかったときは前後のフィールド内の画素を選択するという点である。
動き適応IP変換は、動き補償IP変換のように画素ごとに動きベクトルを求めて補間する手法と比べると、処理量が少ないという利点があるが、補間の精度が劣るという欠点がある。そのため、精度の向上を目的として、様々な手法の動き適応IP変換が提案されている。
例えば、最も単純な動き適応IP変換の方法は図26に示した方法である。この方法では、動きが検出されると、補間すべき対象画素の位置の真上と真下の画素がフィールド内補間に用いられる。以下では、水平方向をx座標で表し、垂直方向をy座標で表し、各画素を正方形で表す。x座標は、画像の左端では値が0で、右になるほど値が大きくなり、y座標は、画像の上端では値が0で、下になるほど値が大きくなる。図26では、入力されるインターレース画像はy=0,2,4,6のラインのみを含み、y=1,3,5の各ラインは補間ラインである。よって、図26の左側に示したような斜めのエッジをインターレース画像が含む場合、補間後のプログレッシブ画像には、図26の右側に示したとおり、ジャギーと呼ばれる階段状のギザギザ模様が生じてしまう。
画素の位置を(x,y)なる座標で示すことにすると、例えば(2,3)の画素は、真上の(2,2)にある白い画素と真下の(2,4)にある黒い画素に基づいて補間される。例えば、この二つの画素の画素値の平均値が対象画素の画素値として割り当てられ、対象画素は灰色に補間される。(3,3)の画素も同様にして灰色に補間される。その結果、プログレッシブ画像にはジャギーが生じる。斜めのエッジの他の部分、つまり(0,5)と(1,5)の部分および(4,1)と(5,1)の部分も同様である。
しかし、もし(0,5)と(2,3)と(4,1)の各画素が白く補間され、(1,5)と(3,3)と(5,1)の各画素が黒く補間されていれば、ジャギーがなく、滑らかな斜めのエッジを含むプログレッシブ画像が得られたはずである。つまり、図26のように単純に真上と真下の画素を用いる方法では、高画質の補間結果が得られないことがある。
そこで、特許文献1〜4などの方法が提案されている。なお、以下の説明では、用語を統一して分かりやすくするために、各文献で使われる用語の一部を変えて説明している。
図27は、特許文献1に記載の補間方法を説明する図である。この方法では、どの方向にある画素を使って対象画素Tを補間するかを決めるときに、対象画素Tがあるラインの上下に隣接する二つのライン以外のラインも利用する。
図27において、対象画素Tは(3,3)に位置する。対象画素Tを中心として、いくつかの方向についてy=2のライン上の画素とy=4のライン上の画素との相関を計算する。例えば、垂直方向は(3,2)の白い画素と(3,4)の黒い画素の組に対応するの
で、相関は弱い。一方、(5,2)の黒い画素と(1,4)の黒い画素とを結ぶ、矢印で示した右上がりの方向は、最も相関が強い方向として検出される。同様にして、対象画素Tの2ライン上の真上の位置(3,1)の参照画素R1では矢印で示した垂直方向の相関が強く、2ライン下の真下の位置(3,5)の参照画素R2では矢印で示した左上がりの方向の相関が強いことが検出される。
参照画素R2について検出された左上がり方向は右上がり方向と反対方向である。特許文献1では、このような反対方向が検出された場合は、対象画素Tの周辺で強い相関を有する方向との整合性を考慮して、対象画素Tの補間方向を斜め方向ではなく垂直方向としている。なお、「補間方向が垂直方向である」とは、垂直方向に対応する(3,2)と(3,4)に位置する二つの画素の画素値に基づいて対象画素Tを補間することを意味する。参照画素R1と対象画素Tで検出された方向が反対方向となる場合も同様である。
図28は、特許文献2に記載の補間方法を説明する図である。特許文献2の方法でも、対象画素Tの2ライン上の真上の位置にある画素が参照画素Rとして利用される。この方法では、対象画素Tに関する右上がり方向の相関値と参照画素Rに関する右上がり方向の相関値を加算して、右上がり方向の相関が計算される。左上がり方向についても同様である。その結果、相関の強い方の方向が、もし所定の閾値よりも強い相関を示していれば、補間方向として選択される。
図28の例では、右上がり方向の相関は、対象画素Tでは弱く、参照画素Rでは強い。よって、二つの相関値の和から、右上がり方向の相関は全体として比較的弱いと判断される。また、左上がり方向の相関は、対象画素Tでは強く、参照画素Rでは弱い。よって、二つの相関値の和から、左上がり方向の相関も全体として比較的弱いと判断される。結局この例では、対象画素Tと参照画素Rの両者において相関が強い方向である垂直方向が、対象画素Tの補間方向として選択される。
図29は、特許文献3に記載の補間方法を説明する図である。この方法では、画素同士の相関ではなく、複数の画素を含む領域同士の相関に基づいて、補間方向を決めている。例えば、図29に示したように、3×3=9画素からなる領域が利用される。
対象画素Tを中心とする中心画素領域Aは、上のラインの3画素と下のラインの3画素が実画素である。同様に、中心画素領域Aの斜め左上にある周辺画素領域B1と、中心画素領域Aの斜め右下にある周辺画素領域B2も、それぞれ上下のラインが実ラインであり、中央のラインが補間ラインである。図29には中心画素領域Aを中心として対称な位置にある二つの周辺画素領域B1とB2のみを図示したが、実際には、中心画素領域Aの周囲を取り巻くようにして、例えば10個の周辺画素領域B1〜B10がある。
各領域に対して、その領域に含まれる画素の画素値の重み付け和が計算される。そして、その重み付け和に基づいて、中心画素領域Aと各周辺画素領域Bj(j=1,2,……)との相関が計算される。例えば、周辺画素領域B1とB2を結ぶ左上がり方向の相関は、中心画素領域Aと周辺画素領域B1との相関値と、中心画素領域Aと周辺画素領域B2との相関値との和である。
このようにして各方向について相関値が計算され、最も相関の強い方向が補間方向として選択される。図29は、周辺画素領域B1とB2を結ぶ左上がり方向が補間方向として選択された場合の図である。そして、対象画素Tの上下のライン上で、対象画素Tから補間方向にある二つの画素が選択され、それら二つの画素の画素値に基づいて対象画素Tが補間される。
図30は、特許文献4に記載の補間方法を説明する図である。例えば、対象画素Tの右上の画素と左下の画素の相関が強く、対象画素Tにおいて最も相関の強い方向として、(1)に示した右上がりの方向が検出されたとする。一方、対象画素Tの左右に隣接する参照画素R1およびR2においては、反対に左上がりの方向が最も相関の強い方向として検出されたとする。
このように、対象画素Tにおいて最も相関の強い方向として検出された方向が、参照画素R1またはR2において検出された方向と左右が逆の方向の場合、誤検出かもしれない。このような場合、誤った斜めの方向での補間を防ぐために、(2)に示したとおり、対象画素Tにおける補間方向を垂直方向に修正する。
ただし、(3)に示した場合は、垂直方向への修正が不適当である。対象画素Tについて(1)で検出された右上がりの方向の傾きを有し対象画素Tを通る直線Lが、対象画素Tのある補間ラインの上下の補間ラインと交わる位置の画素を参照画素R3およびR4とする。参照画素R3またはR4において、最も相関の強い方向として直線Lの傾きと同じ方向が検出されている場合、(4)に示すように、対象画素Tにおける補間方向を元の右上がりの方向に再修正する。
以上説明した方法は、対象画素に対してどの方向にある画素を補間用の画素として選ぶかという点で様々に異なるが、対象画素の周囲の画素を考慮する点は共通である。ところが、そのように対象画素の周囲の画素を考慮しても補間方向を誤りやすい種類の画像がある。
そのような画像の一例は、図31のように、平坦な背景の上に紐のように細い斜めの線がある画像である。図31では、白い背景の上に右上がり方向の黒くて細い線がある。例えば、補間ライン上の(3,3)に位置する画素は、この黒い線上にあるので黒く補間されることが望ましい。
(3,3)の画素を対象画素とすると、(4,2)と(2,4)にはともに黒い画素があるので、右上がり方向すなわち黒い線と同じ方向の相関が強い。一方、この黒い線は細いので、ともに白い背景に属する(2,2)と(4,4)の相関も強い。つまり、(3,3)においては、右上がり方向と左上がり方向の双方の相関が、ほぼ同じ強さである。このことは、補間ライン上で黒く補間されるべき他の画素においても同様である。
ところで、一般の画像では、同じ色に見えてもわずかに画素値が異なる場合が多い。よって、そのようなわずかな画素値の違いの結果、例えば(3,3)においては右上がり方向の相関が最も強く、(5,1)においては左上がり方向の相関が最も強い、と検出されるかもしれない。すると、(3,3)では黒い線が正しく補間されるが、(5,1)は背景の色に補間されて、(5,1)で黒い線が途切れてしまう。
つまり、対象画素において最も相関が強い方向にある画素を用いて補間すると、結果的に補間方向を誤り、図31に示したように線が途切れた汚い画像が生成されてしまう。また、特許文献1〜4などの周囲の画素を考慮する手法を用いても、図31のような画像では、対象画素において最も相関の強い方向として検出される方向と、周囲の画素で最も相関の強い方向として検出される方向が反対方向なので、補間方向を誤る。
特開2003−230109号公報 特開2005−341337号公報 特開2003−143555号公報 WO2004/017634号公報
上記のように、動き適応IP変換ではいくつかの手法が提案されているが、補間に用いる画素の選び方には、改善の余地がある。また、どの画素を使ってどのように補間するかという補間方法の決定方法は、動き適応IP変換に限らず、画素の補間一般に広く適用可能である。
本発明は、入力画像に存在しない画素を補間するための補間方法を、高画質の補間結果を得られるように決定するためのプログラム、装置、および方法を提供することを課題とする。
本発明による画素値の補間方法決定プログラムは、入力画像に存在せず、一直線上に位置する複数の画素のそれぞれの画素値を補間するための補間方法をコンピュータに決定させるプログラムである。前記補間方法決定プログラムは、指定された選択順序方向にしたがって順番に、前記複数の画素のうちの一つの画素を、前記補間方法を決定すべき対象画素として選択する対象画素選択ステップと、指定された複数の相関計算方向のそれぞれについて、前記対象画素から該相関計算方向にある第一の画素の画素値と、該対象画素から該相関計算方向の逆方向にある第二の画素の画素値とに基づいて、前記相関計算方向に対応する局所相関値を計算する局所相関値計算ステップと、前記複数の画素のうち前記選択順序方向にしたがった順番が先頭の画素である先頭画素に対して与えられる値に基づいて、該先頭画素から前記選択順序方向にしたがって逐次的に前記複数の画素のそれぞれに対して計算される相関値である累積相関値を、前記対象画素に対し、前記複数の相関計算方向のそれぞれについて、該相関計算方向に対応する前記局所相関値と、前記対象画素を選択する直前の前記選択ステップで選択した他の画素についての前記累積相関値とに基づいて計算する累積相関値計算ステップと、前記複数の相関計算方向のそれぞれに対応する前記累積相関値に基づいて、前記複数の相関計算方向のうちの一つを選択する方向選択ステップと、前記方向選択ステップで選択した前記相関計算方向に対応する前記局所相関値と前記累積相関値の少なくとも一方に基づいて、前記対象画素の補間のために用いる複数の画素を決定する補間用画素決定ステップと、をコンピュータに実行させる。
本発明による補間方法決定装置は、上記補間方法決定プログラムにしたがって動作する装置であり、本発明による補間方法決定方法は、上記コンピュータが実行する方法である。
本発明によれば、局所相関値だけではなく累積相関値をも考慮して対象画素の補間方法が決定されるので、対象画素の近傍だけではなく、より広い範囲での相関の大域的な傾向を反映した補間を行うことが可能となる。
画像によっては、局所的な相関だけに基づいて補間方法を決定すると不適切な補間が行われてしまうことがある。しかし、本発明によって対象画素の補間方法を決定すれば、相関の大域的な傾向を反映した補間が可能となるので、そのような画像に対しても良好な補間結果が得られる。
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。説明は、本発明の原理、第一の実施形態、第二の実施形態、変形例の順に行う。
まず、図1と図2を参照して本発明の原理について説明する。図1は、本発明の原理を示す機能ブロック構成図であり、図2は本発明の原理を示すフローチャートである。
図1の補間方法決定装置100は、画素値を補間するための補間方法を決定する装置であり、格納部101、対象画素選択部102、局所相関値計算部103、累積相関値計算部104、方向選択部105、補間用画素決定部106を備える。
補間方法決定装置100への入力は、画素の補間を行うべき入力画像であり、入力画像は格納部101に格納される。補間方法決定装置100によって決定された補間方法にしたがって画素を補間することにより、所望の画像が得られる。例えば、入力画像が、IP変換の対象であるインターレース画像の場合は、補間によってプログレッシブ画像が得られる。あるいは、入力画像が、拡大処理の対象である静止画または動画である場合は、補間によって拡大された画像が得られる。
格納部101は、入力画像や、後述の局所相関値および累積相関値を格納する。入力画像が与えられると、補間方法決定装置100は図2のとおり補間方法決定処理を行う。つまり、ステップS101〜S106のループを繰り返し実行する。
ステップS101において、対象画素選択部102は、入力画像の中から、補間すべき画素である対象画素を一つずつ順に選択する。
次にステップS102において、ステップS101で選択された対象画素についての局所相関値を局所相関値計算部103が計算し、格納部101に格納する。一つの対象画素につき、複数の方向にそれぞれ対応する複数の局所相関値が計算される。それらの方向を以下では「相関計算方向」と呼ぶ。
次にステップS103において、ステップS101で選択された対象画素についての累積相関値を累積相関値計算部104が計算し、格納部101に格納する。局所相関値と同様に、一つの対象画素につき、複数の相関計算方向のそれぞれに対応する複数の累積相関値が計算される。累積相関値は、以前のループにおけるステップS103で計算されて格納部101に格納されている累積相関値と、直前のステップS102で計算されて格納部101に格納されている局所相関値とに基づいて計算される。
次にステップS104において、ステップS103で計算された複数の累積相関値に基づいて、複数の相関値計算方向の中から一つを方向選択部105が選択する。例えば、最も相関が強いことを示す値の累積相関値に対応する相関値計算方向が選択される。
次にステップS105において、対象画素の補間のために用いる複数の画素を補間用画素決定部106が決定する。以下では、対象画素の補間のために用いる画素を「補間用画素」と呼ぶ。補間用画素は、ステップS104で選択された方向に対応する局所相関値または累積相関値の少なくとも一方に基づいて決定される。ステップS105の決定において、局所相関値と累積相関値の一方のみを利用してもよく、双方を利用してもよい。図1ではこのことを、局所相関値計算部103と累積相関値計算部104の双方から補間用画素決定部106へと向かう2本の点線の矢印により表している。
次にステップS106において、次に補間すべき画素がまだ残っているか否かを対象画素選択部102が判定する。残っていれば判定は「Yes」となり、処理はステップS101に戻り、残っていなければ判定は「No」となって処理が終了する。
このようにしてステップS101〜S106が繰り返し実行されることにより、補間すべきすべての画素について、補間用画素が決定される。例えば、入力画像がインターレース画像の場合、そのインターレース画像では、水平な実ラインと水平な補間ラインが交互に並んでいる。よって、例えば「ステップS101では左から右へ順に対象画素を選択す
る」という順序を予め指定しておくことにより、補間ライン上の全画素が左から右へ順に対象画素として選択され、各対象画素に対して補間用画素が決定される。このように指定された順序を表すための「左から右へ」などの方向を、以下では「選択順序方向」と呼ぶ。ステップS101〜S106は、選択順序方向にしたがって繰り返し実行されるので、累積相関値も選択順序方向にしたがって累積される。
ところで、上記のとおり、画素を補間する方法は、一つの対象画素に対して複数の補間用画素をどのように選ぶかという第一の観点と、選んだ複数の補間用画素の画素値から対象画素の画素値をどのように計算するかという第二の観点の組み合わせにより分類することができる。上記説明した補間方法決定装置100の動作は、第一の観点に関するものである。つまり、第二の観点から見て異なる複数の方法の中から、任意の方法を選んで、本発明に適用することが可能である。
例えば、第二の観点から見て最も簡単な方法は、決定された複数の補間用画素の画素値の算術平均を対象画素の画素値として割り当てる方法である。なお、この方法の本発明への適用が意味するのは、「ステップS105で決定した複数の補間用画素の画素値の算術平均を計算し、計算した値を対象画素の画素値として割り当て、対象画素を補間する」ということである。
なお、図1の機能ブロックのうち格納部101は、揮発性メモリや書き換え可能な不揮発性メモリなどのハードウェアにより実現されるが、他の機能ブロックはハードウェア、ソフトウェア、ファームウェア、それらの組み合わせのいずれにより実現してもよい。例えば、各機能ブロックをそれぞれ別個のハードウェアにより実現してもよい。あるいは、複数の機能ブロックを、それらに共通のハードウェアと、それらの機能を実現するソフトウェアとによって実現することも可能である。後述するとおり、補間方法決定装置100を一般的なコンピュータにより実現することも当然可能である。
次に、本発明の第一の実施形態について図3〜14を参照して説明する。まず、第一の実施形態における仮定と用語の定義について述べる。
(a)第一の実施形態では、IP変換のために画素の補間を行う。
(b)時刻t=t,t,……,t,……のそれぞれにおけるフィールド画像が入力画像として与えられる。例えばフレームレートが30fpsの場合、時刻tと時刻ti+1との間は、1/60秒である。また、時刻tにおけるフィールド画像を符号Fにより表す。以下では、入力画像であることを強調するために、上記各時刻に対応するフィールド画像を「入力フィールド画像」も呼ぶこともある。
(c)以下では、時刻t=tにおけるフィールド画像F内の画素を補間する場合を例に説明する。また、フィールド画像Fを「対象フィールド画像」とも呼ぶ。
(d)対象フィールド画像Fの直前の時刻t=ti−1におけるフィールド画像Fi−1を「先行フィールド画像」と呼び、対象フィールド画像Fの直後の時刻t=ti+1におけるフィールド画像Fi+1を「後続フィールド画像」と呼ぶ。対象フィールド画像Fが偶数フィールド画像の場合、先行フィールド画像Fi−1と後続フィールド画像Fi+1は奇数フィールド画像である。対象フィールド画像Fが奇数フィールド画像の場合、先行フィールド画像Fi−1と後続フィールド画像Fi+1は偶数フィールド画像である。
(e)各画素は一つの画素値により表され、画素値は0から100の範囲の整数であると仮定する。また、画素値0は黒色を表し、画素値100は白色を表し、その中間の画素値は灰色を表すと仮定する。これらの仮定は、説明を簡素にして分かりやすくするための仮定である。カラー画像を補間する場合については、変形例として後述する。
(f)画像内の画素の位置を座標(x,y)により表す。x軸は水平方向の軸、y軸は垂直方向の軸である。x座標は、画像の左端では値が0で、右になるほど値が大きくなり、
y座標は、画像の上端では値が0で、下になるほど値が大きくなる。また、座標は画素数により表す。よって、各画素の位置を表すxとyの値は非負整数である。
(g)時刻tに対応するフィールド画像F内で(x,y)に位置する実画素の画素値をp(j,x,y)により表す。
(h)選択順序方向は、一つの補間ラインについて「左から右へ」という方向である。
(i)全補間ラインについて「上から下へ」という順序で補間方法を決定する。この「上から下へ」という順序は、選択順序方向とは無関係である。
(j)入力画像の大きさ、すなわち個々のフィールド画像の大きさは、水平方向にN画素、垂直方向にM画素の大きさであると仮定する。つまり、0≦x≦N−1かつ0≦y≦M−1である。
次に、図3を参照して、第一の実施形態における画素値補間装置200の機能ブロック構成を簡単に説明する。図3の各構成要素の機能の詳細は、フローチャートとあわせて後述する。
図3の画素値補間装置200は、図1の補間方法決定装置100の具体例の一つである。画素値補間装置200は画素値の補間方法を決定するだけではなく、決定した方法に基づいて画素値を補間するため、補間方法決定装置100とは名称が異なる。画素値補間装置200は、格納部201、対象画素選択部202、相関値計算部203、静動判定部206、フィールド内補間部207、フィールド間補間部211を備える。また、相関値計算部203は局所相関値計算部204と累積相関値計算部205を備え、フィールド内補間部207は方向選択部208とフィールド内補間用画素決定部209とフィールド内補間画素値計算部210を備え、フィールド間補間部211はフィールド間補間用画素決定部212とフィールド間補間画素値計算部213を備える。本実施形態では、補間された画像が格納部201に格納される。このことを図3では、フィールド内補間画素値計算部210とフィールド間補間画素値計算部213から格納部201へ向かう矢印により表している。
図3の画素値補間装置200は、図1の補間方法決定装置100の構成要素の各々を具体化した構成要素を含み、さらに図1にはない構成要素も含む。図1と図3の対応は次のとおりである。
格納部201は格納部101と同様であり、図3では格納する内容について図1よりも具体的に示した。対象画素選択部202は、対象画素選択部102に対応し、選択順序方向が具体化されている。局所相関値計算部204と累積相関値計算部205はそれぞれ局所相関値計算部103と累積相関値計算部104に対応し、局所相関値や累積相関値の計算式が具体化されている。方向選択部208は方向選択部105に対応し、選択する基準が具体化されている。フィールド内補間用画素決定部209は補間用画素決定部106に対応し、補間用画素の決定の仕方が具体化されている。
次に、図4のフローチャートを参照して、第一の実施形態において画素値補間装置200が行う補間処理について説明する。この補間処理は、画素値の補間方法を決定する補間方法決定処理と、その決定にしたがって画素値を補間する処理を含む。図4の処理は図2の処理を具体化したものである。
ステップS201において、対象画素選択部202が変数xとyを初期化する。変数xとyは、対象画素の座標を示す変数である。つまり、対象画素選択部202は変数xとyの値を設定することにより、対象画素を選択している。
上記仮定(f)、(h)、(i)にしたがった動作を実現するために、ステップS20
1では、対象画素選択部202がxに0を代入し、yには時刻tに応じた値のofstを代入する。ofstの値は、時刻tが偶数フィールドに対応する場合は1、奇数フィールドに対応する場合は0である。つまり、時刻tが偶数フィールドに対応する場合、補間ラインのy座標は奇数なので、奇数の1がyに代入される。逆に、時刻tが奇数フィールドに対応する場合、補間ラインのy座標は偶数なので、偶数の0がyに代入される。初期化後、ステップS202に進む。
ステップS202〜S209は、二重のループになっている。外側のループは、上から下へ順に1本ずつ補間ラインを処理するためのループであり、仮定(i)に関連する。内側のループは、1本の補間ラインにおいて左から右へ順に1個ずつ対象画素を処理するためのループであり、仮定(h)に関連する。
ステップS202では、対象画素の位置(x,y)が画像の下端よりも下の位置か否かを対象画素選択部202が判定する。仮定(i)と(j)より、yとMを比較すれば判定可能である。判定結果は、y≧Mなら「Yes」、y≦M−1なら「No」となる。判定結果がYesの場合、すべての補間ラインについて処理が終了したことを意味するので図4の補間処理を終了する。判定結果がNoの場合、まだ処理すべき補間ラインが残っていることを意味するのでステップS203に移行する。
ステップS203では、対象画素の位置(x,y)が画像の右端よりも右の位置か否かを対象画素選択部202が判定する。仮定(h)と(j)より、xとNを比較すれば判定可能である。判定結果は、x≧Nなら「Yes」、x≦N−1なら「No」となる。判定結果がYesの場合、現在の補間ライン上の全画素について処理が終了したことを意味するので、次の補間ラインに移るためにステップS209に移行する。判定結果がNoの場合、現在の補間ライン上にまだ処理すべき画素が残っていることを意味するのでステップS204に移行する。
ステップS204では、(x,y)に位置する対象画素について、相関値計算部203が相関値を計算する。具体的には、局所相関値計算部204が局所相関値を計算し、累積相関値計算部205が累積相関値を計算する。局所相関値と累積相関値はいずれも格納部201に格納される。計算方法の詳細は後述する。
ステップS204に続いて、ステップS205では、静動判定部206が静動判定を行う。つまり、時刻tにおいて座標(x,y)またはその近傍に動きがあるか否かが判定される。静動判定の具体的な方法は任意である。
一般に、対象フィールド画像F上の座標(x,y)に位置する対象画素についての静動判定には、先行フィールド画像Fi−1と後続フィールド画像Fi+1が利用される。例えば、先行フィールド画像Fi−1と後続フィールド画像Fi+1においてそれぞれ(x,y)に位置する実画素の画素値p1とp2を比較することにより、静動判定を行ってもよい。p1とp2は、上記(g)の表記法によれば式(1)と(2)により表すことができる。
p1=p(i-1, x, y) (1)
p2=p(i+1, x, y) (2)
例えば、静動判定部206は、式(3)により示されるΔpが所定の閾値ptを超える場合は対象画素が動いていると判定し、Δpがpt以下の場合は対象画素が静止していると判定してもよい。
Δp=|p2-p1| (3)
さらに(x,y)の近傍に位置する画素をも静動判定に用いてもよい。なお、上記のように後続フィールド画像Fi+1を静動判定に用いる場合、対象フィールド画像Fについての図4の処理は、時刻ti+1に後続フィールド画像Fi+1が画素値補間装置200に入力された後に開始される。また、静動判定のために、先行フィールド画像Fi−1は、少なくとも図4の処理が終わるまでは、消去せずに格納部201に格納しておく必要がある。
静動判定の結果、動いていると判定されたら、すなわち、動きが検出されたら処理はステップS206に移行し、静止と判定されたらステップS207に移行する。
ステップS206は、静動判定で動きが検出された場合の処理である。この場合、対象フィールド画像Fの内部で対象画素の近傍に位置する画素を利用して補間することが好ましい。よって、ステップS206では、フィールド内補間部207がフィールド内補間により対象画素を補間し、その後ステップS208に移行する。なお、処理の詳細は図7とあわせて後述する。
ステップS207は、静動判定で静止と判定された場合の処理である。例えば、ある静動判定の方法によれば、式(3)のΔpが所定の閾値pt以下のとき、静止と判定される。この場合、時刻ti−1からti+1の期間中、(x,y)の画素はほとんど画素値が変化しなかったと見なせる。したがって、その期間内に含まれる時刻tにおける画素値も、p1やp2とほぼ同じ値であると見なせる。このことから、ステップS207では、例えば(p1+p2)/2、p1、p2、またはp1とp2を適当な比で内分した値などを、対象画素の画素値として割り当てる処理をフィールド間補間部211が行う。
つまり、フィールド間補間用画素決定部212は、フィールド間補間に用いる補間用画素として、例えば先行フィールド画像Fi−1と後続フィールド画像Fi+1でそれぞれ(x,y)に位置する二つの実画素を選択し、フィールド間補間画素値計算部213がそれら選択された補間用画素の画素値に基づいて、対象画素に割り当てる画素値を計算する。そしてこれらの処理の後、ステップS208に移行する。
ステップS208では、対象画素選択部202が変数xに1を加える。つまり、ステップS206またはS207で補間した現在の対象画素の右隣の画素を、新たな対象画素として対象画素選択部202が選択する。その後、ステップS203に戻る。
ステップS209は1本の補間ラインの終わりに実行され、ここで処理の対象が次の補間ラインに移る。つまり、対象画素選択部202がxに0を代入し、yに2を加える。インターレース画像では補間ラインと実ラインが交互に存在するので、yに加えるのは1ではなく2である。これにより、次の補間ラインの左端の画素が新たな対象画素として選択される。その後、ステップS202に戻る。
上記のような処理により、対象フィールド画像Fに含まれるすべての補間ライン上のすべての画素が補間される。
次に、図5を参照して、図4のステップS204で計算する局所相関値について説明する。図2のステップS102に関して説明したように、一つの対象画素につき複数の相関計算方向についての局所相関値が計算される。図5は、複数の相関計算方向の例と、それら相関計算方向に対応する局所相関値の計算方法を示す図である。
局所相関値は、対象画素Tを挟んで対称な位置にある、一つ以上の画素からなるグループ同士の相関の強さを示す値である。そして、各グループと対象画素Tとの相対的な位置関係は相関計算方向によって定められ、複数の相関計算方向についてそれぞれ局所相関値が計算される。第一の実施形態の場合、各グループは1画素または2画素からなる。また
、グループ同士の相関の強さは、各グループを構成する画素の画素値に基づいて計算される。
図5では、対象フィールド画像Fの座標(x,y)に位置する画素が対象画素Tとして選択された状態とする。図5では、対象画素Tと、対象画素Tがある補間ライン221の上下の二つの実ライン220および222において対象画素Tの近傍に位置する合計10個の実画素が図示されている。局所相関値は、これらの実画素の画素値に基づいて計算される。また、対象画素Tに対して図5では九つの相関計算方向を図示している。まず、説明のための用語と記法を以下のとおり定義する。
・ 九つの相関計算方向をそれぞれ、c方向、r1方向、r2方向、r3方向、r4方向、l1方向、l2方向、l3方向、l4方向という名前で呼ぶ。
・ 補間ライン221の上下の実ラインをそれぞれ「上実ライン」、「下実ライン」と呼び、それぞれ符号「220」と「222」により参照する。
・ 上実ライン220の(x−2,y−1),(x−1,y−1),(x,y−1),(x+1,y−1),(x+2,y−1)に位置する画素を、それぞれu0,u1,u2,u3,u4なる符号で参照する。
・ 下実ライン222の(x−2,y+1),(x−1,y+1),(x,y+1),(x+1,y+1),(x+2,y+1)に位置する画素を、それぞれd0,d1,d2,d3,d4なる符号で参照する。
・ 上記の10個の実画素の画素値は、その画素の符号と同じ符号で表す。例えば、画素u0の画素値は「u0」により表す。したがって、次の式(4)〜(13)のように定義される。
u0=p(i, x-2, y-1) (4)
u1=p(i, x-1, y-1) (5)
u2=p(i, x, y-1) (6)
u3=p(i, x+1, y-1) (7)
u4=p(i, x+2, y-1) (8)
d0=p(i, x-2, y+1) (9)
d1=p(i, x-1, y+1) (10)
d2=p(i, x, y+1) (11)
d3=p(i, x+1, y+1) (12)
d4=p(i, x+2, y+1) (13)
まずc方向について説明する。対象フィールド画像Fの座標(x,y)に位置する対象画素Tの、c方向に対応する局所相関値c(i,x,y)は、式(14)にしたがって計算される。
c(i, x, y)=|p(i, x, y-1)-p(i, x, y+1)|=|u2-d2| (14)
c方向は真上の方向である。よって、上実ライン220上で対象画素Tの真上の方向にある画素u2の画素値u2が局所相関値c(i,x,y)の計算に利用される。また、対象画素Tを中心として画素u2と対称な位置にある画素d2の画素値d2も局所相関値c(i,x,y)の計算に利用される。画素d2の位置を別の言葉で表すと、下実ライン222上で、対象画素Tから見て、c方向と逆方向である真下の方向にある画素である。
式(14)のとおり、c方向に対応する対象画素Tの局所相関値c(i,x,y)は、画素値u2と画素値d2の差の絶対値であり、画素u2とd2の相関の強さを表している
。なお、この定義から明らかなとおり、相関が強いほど、つまり、相関が大きいほど、局所相関値は小さくなる。
ここで、ある一つの対象フィールド画像F内のある一つの補間ラインに注目すると、iとyの値は一定で、対象画素Tを左から右へ順に選択するのにあわせてxの値のみが変化する。そこで、式(4)から変数iとyを除いた簡略記法を導入し、以下ではc方向の局所相関値を式(15)のc(x)により表す。
c(x)=|u2-d2| (15)
次に、r1方向について説明する。r1方向に対応する対象画素Tの局所相関値r(x,1)は、式(16)により計算される。なお、r(x,1)の第二引数の1は、「r1方向」の「1」に対応する。
r(x, 1)=|(u2+u3)/2-(d1+d2)/2| (16)
r1方向は右上方向を表す。「右上方向」という語は、様々な傾きの右上方向を含む広い概念を表すが、r1方向は特定の傾きの右上方向であり、その傾きは「上に1画素、右に0.5画素」という傾きである。上実ライン220上で対象画素Tのr1方向に当たるのは、画素u2とu3の境界である。同様に、r1の逆方向は「下に1画素、左に0.5画素」という傾きの左下方向である。そして、下実ライン222上で、対象画素Tから見てr1の逆方向にあるのは、画素d1とd2の境界である。
一方、画素u2とu3からなるグループを符号「U2_3」で参照することにすると、グループU2_3の中点は、上実ライン220上で対象画素Tのr1方向に当たる位置である。また、画素d1とd2からなるグループを符号「D1_2」で参照することにすると、グループD1_2の中点は、下実ライン222上で、対象画素Tから見てr1の逆方向に当たる位置である。これら二つの中点のx方向の距離は1である。「r1方向」という名称の「1」は、この距離1に対応する。
ここで、グループU2_3を表す画素値として、画素値u2とu3の平均値を割り当て、グループD1_2を表す画素値として、画素値d1とd2の平均値を割り当てることにする。また、それらの画素値もグループと同じ符号で参照することにする。すると、式(16)の右辺は、画素値U2_3とD1_2の差の絶対値を表す。式(14)に示したように、二つの値の差の絶対値は、その二つの値の相関の強さを示す値として利用することができる。つまり、式(16)により計算される局所相関値r(x,1)は、グループU2_3とD1_2の相関の強さである。
あるいは、式(16)は次のように解釈することもできる。画素u2とu3の中点に位置し、画素値u2とu3の平均の画素値を有する仮想的な画素を仮定する。以下ではこの画素を「仮想画素」と呼び、符号「u2_3」で参照する。同様に、画素d1とd2の中点に位置し、画素値d1とd2の平均の画素値を有する仮想画素を仮定する。以下ではこの仮想画素を符号「d1_2」で参照する。ここで、仮想画素u2_3とd1_2のそれぞれの画素値を符号u2_3とd1_2で表すと、上記の仮定から、r1方向に対応する局所相関値r(x,1)は、画素値u2_3とd1_2の差の絶対値であり、仮想画素u2_3とd1_2の相関の強さである。
また、上記の仮定より仮想画素u2_3は座標(x+0.5,y−1)に位置し、仮想画素d1_2は座標(x−0.5,y+1)に位置すると見なせるので、仮想画素u2_3とd1_2のx方向の距離は1である。「r1方向」という名称の「1」は、この距離1に対応する。
以上が式(16)についての二つの解釈による説明だが、まとめると、以下の式(17)〜(19)のように表せる。式(19)は式(14)と似た形である。
U2_3=u2_3=(u2+u3)/2 (17)
D1_2=d1_2=(d1+d2)/2 (18)
r(x, 1)=|U2_3-D1_2|=|u2_3-d1_2| (19)
なお、簡略記法を用いない場合は、局所相関値r(x,1)を次の式(20)により表すことができる。
r(i, x, y, 1)
=|{p(i, x, y-1)+p(i, x+1, y-1)}/2-
{p(i, x-1, y+1)+p(i, x, y+1)}/2| (20)
次にl1方向について説明する。l1方向は左上方向を表す。l1方向はr1方向と左右対称なので詳しい説明を省略する。r1方向と同様にして局所相関値l(x,1)が式(21)により定義される。
l(x, 1)=|(u1+u2)/2-(d2+d3)/2| (21)
次にr2方向について説明する。r2方向は右上方向を表すが、r1方向よりも傾きが緩やかである。r2方向に対応する対象画素Tの局所相関値r(x,2)は式(22)により計算される。なお、r(x,2)の第二引数の2は、「r2方向」の「2」に対応する。
r(x, 2)=|u3-d1| (22)
r2方向の傾きは「上に1画素、右に1画素」という傾きである。よって、上実ライン220上で対象画素Tのr2方向に当たるのは画素u3である。また、r2方向の逆方向は「下に1画素、左に1画素」という傾きの左下方向である。よって、下実ライン222上で、対象画素Tから見てr2方向の逆方向にあるのは、画素d1である。したがって、r2方向に対応する局所相関値r(x,2)は、式(22)のとおり画素値u3とd1の差の絶対値であり、画素u3とd1の相関の強さを表している。また、画素u3とd1のx方向の距離は(x+1)−(x−1)=2である。「r2方向」という名称の「2」はこの距離2を表している。
なお、r(x,2)は、一つの画素u3のみからなるグループU3と、一つの画素d1のみからなるグループD1との相関である、と解釈することも可能である。
次にl2方向について説明すると、l2方向は左上方向を表し、r2方向と左右対称な方向である。よって、詳しい説明は省略するが、局所相関値l(x,2)は式(23)により定義される。
l(x, 2)=|u1-d3| (23)
次にr3方向について説明する。r3方向は右上方向を表すが、r2方向よりもさらに傾きが緩やかである。r3方向に対応する対象画素Tの局所相関値r(x,3)は式(24)により計算される。r(x,3)の第二引数の3は、「r3方向」の「3」に対応する。
r(x, 3)=|(u3+u4)/2-(d0+d1)/2| (24)
r3方向の傾きは「上に1画素、右に1.5画素」という傾きである。よって、上実ライン220上で対象画素Tのr3方向に当たるのは画素u3とu4の境界である。そこで、r1方向の場合と同様にして、画素u3とu4からなるグループU3_4に、画素値u3とu4の平均値を割り当てることにする。あるいは、画素u3とu4の中点に位置し、画素値u3とu4の平均の画素値を有する仮想画素u3_4を仮定する。すると、r(x,1)の計算の場合と同様にして、式(25)が得られる。
U3_4=u3_4=(u3+u4)/2 (25)
また、r3方向の逆方向は「下に1画素、左に1.5画素」という傾きの左下方向である。そして、下実ライン222上で、対象画素Tから見てr3の逆方向にあるのは、画素d0とd1の境界である。そこで、r1方向の場合と同様にして、画素d0とd1からなるグループD0_1に、画素値d0とd1の平均値を割り当てることにする。あるいは、画素d0とd1の中点に位置し、画素値d0とd1の平均の画素値を有する仮想画素d0_1を仮定する。すると、r(x,1)の計算の場合と同様にして、式(26)が得られる。
D0_1=d0_1=(d0+d1)/2 (26)
よって、r3方向に対応する局所相関値r(x,3)は、二つのグループU3_4とD0_1の相関の強さだと解釈することもでき、仮想画素u3_4とd0_1の相関の強さだと解釈することもできる。
次に、l3方向について説明すると、l3方向は左上方向を表し、r3方向と左右対称な方向である。よって、詳しい説明は省略するが、局所相関値l(x,3)は式(27)により定義される。
l(x, 3)=|(u0+u1)/2-(d3+d4)/2| (27)
次にr4方向について説明する。r4方向は右上方向を表すが、r3方向よりもさらに傾きが緩やかである。r4方向に対応する対象画素Tの局所相関値r(x,4)は式(28)により計算される。なお、r(x,4)の第二引数の4は、「r4方向」の「4」に対応する。
r(x, 4)=|u4-d0| (28)
r4方向の傾きは「上に1画素、右に2画素」という傾きである。よって、上実ライン220上で対象画素Tのr4方向に当たるのは画素u4である。また、r4方向の逆方向は「下に1画素、左に2画素」という傾きの左下方向である。よって、下実ライン222上で、対象画素Tから見てr4方向の逆方向にあるのは、画素d0である。したがって、r4方向に対応する局所相関値r(x,4)は、式(28)のとおり画素値u4とd0の差の絶対値であり、画素u4とd0の相関の強さを表している。また、r2方向の場合と同様に、r(x,4)は、画素u4のみからなるグループU4と画素d0のみからなるグループD0との相関であると解釈することもできる。
次に、l4方向について説明すると、l4方向は左上方向を表し、r4方向と左右対称な方向である。よって、詳しい説明は省略するが、局所相関値l(x,4)は式(29)により定義される。
l(x, 4)=|u0-d4| (29)
以上、図5を参照して九つの相関計算方向について、それぞれ局所相関値の計算の仕方とその解釈を説明したが、実施形態によって、考慮すべき相関計算方向の数は任意である。式(14)や(20)と同様の省略のない記法を使うと、一般化した形で右上方向の場合の局所相関値の式を表すことができる。すなわち、1以上の整数mを用いて、以下の式(30)と(31)のように表すことができる。左上方向の場合も同様である。
r(i, x, y, 2m-1)
=|{p(i, x+m-1, y-1)+p(i, x+m, y-1)/2-
{p(i, x-m, y+1)+p(i, x-m+1, y+1)}/2| (30)
r(i, x, y, 2m)=|p(i, x+m, y-1)-p(i, x-m, y+1)| (31)
次に、図4のステップS204で計算する累積相関値について説明する。図2に関して説明したように、累積相関値は、複数の相関計算方向のそれぞれに対応する。つまり、上記で局所相関値を計算したc方向、rj方向、lj方向(j=1,2,3,4)のそれぞれについて累積相関値が定義され、計算される。また、累積相関値は、選択順序方向にしたがって累積されることにより計算される。第一の実施形態では、仮定(h)より、選択順序方向は一つの補間ラインについて「左から右へ」という方向である。つまり、選択順序方向はx座標の値が増す方向である。
以下では、座標(x,y)に位置する対象画素Tについての、c方向に対応する累積相関値をC(x)と表し、rj方向に対応する累積相関値をR(x,j)と表し、lj方向に対応する累積相関値をL(x,j)と表す。ここで、jは1,2,3,4のいずれかである。なお、局所相関値の場合と同様に、C(x),R(x,j),L(x,j)というのは簡略記法である。つまり、対象フィールド画像Fとy座標が一定の場合に、xの変化にのみ注目した記法である。
累積相関値については、まず定義をまとめて示してから説明する。累積相関値は、x=0のとき式(32)〜(34)により定義され、x>0のとき式(35)〜(43)により再帰的に定義される。
C(0)=0 (32)
L(0, j)=BIG (j=1, 2, 3, 4) (33)
R(0, j)=BIG (j=1, 2, 3, 4) (34)
C(x)=min(L(x-1, 1), C(x-1), R(x-1, 1))+c(x) (35)
R(x, 4)=min(R(x-1, 4), R(x-1, 3))+r(x, 4) (36)
R(x, 3)=min(R(x-1, 4), R(x-1, 3), R(x-1, 2))+r(x, 3) (37)
R(x, 2)=min(R(x-1, 3), R(x-1, 2), R(x-1, 1))+r(x, 2) (38)
R(x, 1)=min(R(x-1, 2), R(x-1, 1), C(x-1))+r(x, 1) (39)
L(x, 4)=min(L(x-1, 4), L(x-1, 3))+l(x, 4) (40)
L(x, 3)=min(L(x-1, 4), L(x-1, 3), L(x-1, 2))+l(x, 3) (41)
L(x, 2)=min(L(x-1, 3), L(x-1, 2), L(x-1, 1))+l(x, 2) (42)
L(x, 1)=min(L(x-1, 2), L(x-1, 1), C(x-1))+l(x, 1) (43)
これらの式において、min(a,b)はa,bの最小値を表し、min(c,d,e)はc,d,eの最小値を表す。また、BIGは、累積相関値として実際にありうる値の上限よりも大きな任意の定数である。上記の式を数学的なモデルと見なす場合は、BIGは無限大に相当する。したがって、BIGにどのような値を足してもその結果はBIGであると見なし、例えば、次の式(44)のように計算することにする。
L(1, 2)
=min(L(0, 3), L(0, 2), L(0, 1))+l(1, 2)
=min(BIG, BIG, BIG)+l(1, 2)
=BIG+l(1, 2)
=BIG (44)
次に、累積相関値の意味について説明する。上記の再帰的な定義から分かるように、累積相関値は、(x,y)に位置する対象画素Tよりも左側の局所相関値を累積加算して得られる値である。局所相関値は、上記の定義から非負であり、相関が大きいほど値が小さい。よって、局所相関値を累積加算して得られる累積相関値も、非負であり、相関が大きいほど値が小さい。したがって、式(35)〜(43)において関数minを用いるのは、二つまたは三つの累積相関値のうちで相関が最大のものを選択することを示し、BIGは相関が無限小であることを示す。
ここで、対象画素Tよりも左側の局所相関値を累積加算することから、対象画素Tが画像の左端にある場合、つまりx=0の場合は特別な場合であることが分かる。x=0の場合、相関計算方向によっては累積相関値の値が計算不能である。図5を参照してこのことを説明する。
図5においてx=0の場合、画素u0,u1,d0,d1が存在しない。例えば、r2方向の局所相関値r(x,2)は、対象画素Tから見てr2方向にある画素u3と、対象画素Tから見てr2方向の逆方向にある画素d1との間の相関である。よって、x=0のとき画素d1が存在しないために局所相関値r(x,2)は計算不能である。ここで、各相関計算方向について定義されるという点で局所相関値と累積相関値は同様である。よって、画素d1が存在しなければ、r2方向について局所相関値も累積相関値も計算不能である。同様の理由で、x=0においては、c方向以外の方向について累積相関値が計算不能である。
一方、c方向は、x=0のときに唯一計算可能な方向である。よって、c方向については、例えば、局所相関値c(0)を用いて累積相関値C(0)を定義してもかまわないが、本実施形態では、式(32)により累積相関値を計算することに決める。後述するように、累積相関値C(0)は他のすべての累積相関値に均しく影響するが、累積相関値は大小の比較に用いられるものである。よって、累積相関値C(0)は式(32)のように適当な定数に定めても問題がない。また、x=0のときに計算不能なrj方向およびlj方向(j=1,2,3,4)については、式(33)と(34)により、一律に累積相関値がBIGであることを定義する。
次に、x>0の場合の式(35)〜(43)の意味を説明する。式(35)〜(43)はいずれも、現在の対象画素Tの一つ左の画素で計算した複数の累積相関値のうちの最小値と、対象画素Tの局所相関値の和である点で同じである。また、ある相関計算方向dに対応する累積相関値の計算に使われる局所相関値は、同じ相関計算方向dに対応する局所相関値である点も、式(35)〜(43)に共通である。
ここで、図5に示した九つの相関計算方向を、その傾きの角度にしたがってソートすると、l4方向、l3方向、l2方向、l1方向、c方向、r1方向、r2方向、r3方向、r4方向という順番となる。この順番に注目して式(35)〜(43)を見ると、一般に、次のことが成り立つ。すなわち、相関計算方向dについての累積相関値の計算において、関数minに引数として与えられる計算済みの累積相関値は、相関計算方向d自体とその前後の相関計算方向に対応する。
例えば、式(40)はl4方向に対応する。l4方向は上記の順番が1番目なので、l4方向よりも順番が前の相関計算方向は存在しない。よって、関数minには、順番が1番目のl4方向と2番目のl3方向に対応する累積相関値が与えられる。また、式(41)はl3方向に対応する。l3方向は順番が2番目なので、順番がその前後の方向、すなわち1番目のl4方向と3番目のl2方向に対応する累積相関値が、関数minに引数として与えられる。
つまり、各相関計算方向には、その相関計算方向に対応する累積相関値の計算において考慮すべき相関計算方向が複数対応づけられている。以下、そのように対応づけられた相関計算方向を「関連方向」と呼ぶ。例えば、l4方向の関連方向はl4方向とl3方向の二つであり、c方向の関連方向はr1方向とc方向とl1方向の三つである。
つまり、式(35)〜(43)のそれぞれにおいて、関数minを含む第1項は、次の2点を意味する。
・ 注目している相関計算方向dに近い一つ以上の相関計算方向と、相関計算方向d自体とを、関連方向として予め相関計算方向dに対応づけておく。
・ 対象画素Tの一つ左の画素について、それらの関連方向に対応して計算された複数の累積相関値のうち、最も相関の強い相関計算方向の累積相関値を選択する。
この2点は、直観的には、現在注目している相関計算方向dに近い方向に対応する相関が、対象画素Tよりも左側において強い傾向か弱い傾向かを表す。ここでは、ある相関計算方向dでの相関が強ければ、その相関計算方向dに近い別の相関計算方向d’においても、相関が比較的強いことを暗黙に仮定している。
例えば、ある補間ラインにおいて、対象画素Tよりも左側では、r1方向の局所相関値が最大となる画素が大多数である場合を考える。この場合、当然、対象画素Tよりも左側では、r1方向の相関が強い傾向にある。さらに、c方向やr2方向は、r1方向に近いので、対象画素Tよりも左側では、c方向やr2方向の相関も比較的強い傾向にあると推測される。このような直観的理解を反映したのが式(35)〜(43)の再帰的定義である。この例では、c方向やr2方向には関連方向としてr1方向が対応づけられているため、c方向やr2方向に対応する累積相関値の累積加算において、相関の強いr1方向の累積相関値が関数minにより選択されて加算される。その結果、C(x)やR(x,2)も、比較的強い相関を表す値、すなわち比較的小さな値となる。
図6は、以上で説明した累積相関値の計算の具体例を説明する図である。図6では、上実ライン220と下実ライン222の間の補間ライン221上の画素に対する累積相関値の計算について例示している。図6は、座標(x−1,y)の対象画素T1についての累積相関値の計算を示した左列と、座標(x,y)の対象画素T2についての累積相関値の計算を示した中央列と、累積相関値を定義する式を示した右列とからなる。また、各列は、上から順に、r2方向、r1方向、c方向、l1方向、l2方向の五つの方向についてそれぞれ示している。
図6の左列は、座標(x−1,y)の対象画素T1について計算済みの累積相関値R(x−1,2)、R(x−1,1)、C(x)、L(x−1,1)、L(x−1,2)にそれぞれ対応する計算説明図230、231、232、233、234を含む。なお、図6では、紙面の都合上、五つの相関計算方向についてのみ示したが、不図示のr3方向などについても、局所相関値および累積相関値を計算していると仮定する。また、図6では、紙面の都合上、水平方向すなわちx方向に7個の画素のみを図示しているが、実際には、左右両側にさらに画素が存在する。
例えば、式(38)から明らかなとおり、対象画素T1についてのr2方向に対応する累積相関値R(x−1,2)は、三つの累積相関値の最小値と、局所相関値r(x−1,2)との和である。局所相関値r(x−1,2)はr2方向に対応する。よって、累積相関値R(x−1,2)の計算説明図230において、対象画素T1を中心としてr2方向とその逆方向を向いた両向きの実線矢印A14により、局所相関値r(x−1,2)を表している。
同様に、累積相関値R(x−1,1)の計算説明図231において、対象画素T1を中心としてr1方向とその逆方向を向いた両向きの実線矢印A18により、局所相関値r(x−1,1)を表している。
図6の中央列も左列と同様に、五つの相関計算方向に対応する累積相関値の計算説明図235〜239を示している。中央列では、対象画素T1の右隣の画素、すなわち座標(x,y)の画素が対象画素T2である。
例えば、対象画素T1についてのr1方向の累積相関値R(x,1)の計算を示す計算説明図236へは、R(x−1,2)の計算を示す計算説明図230、R(x−1,1)の計算を示す計算説明図231、C(x−1)の計算を示す計算説明図232のそれぞれから太矢印A24、A25、A26が出ている。太矢印A24、A25、A26は、R(x,1)を定義する式(39)において、関数minにR(x−1,2)、R(x−1,1)、C(x−1)の三つが引数として与えられることを示している。また、図6ではこの三つのうちR(x−1,1)が最小だと仮定している。よって、3本の太矢印A24、A25、A26のうち、R(x−1,1)に対応する太矢印A25のみを実線で示し、他の2本の太矢印A24とA26は、破線で示した。
累積相関値R(x,2)の計算を示す計算説明図235についても同様である。R(x−1,1)に対応する計算説明図231からの太矢印A23、R(x−1,2)に対応する計算説明図230からの太矢印A22、R(x−1,3)に対応する不図示の計算説明図からの太矢印A21が、計算説明図235へ向かっている。また、図6ではこれら3個の累積相関値のうちR(x−1,1)が最小だと仮定している。よって、R(x−1,1)に対応する太矢印A23を実線で、太矢印A21とA22を破線で示した。
上記の仮定のもとでは、式(38)より、R(x,2)はR(x−1,1)と局所相関値r(x,2)の和である。計算説明図235において、対象画素T2を中心としてr2方向とその逆方向を向いた両向きの実線矢印A35は、r(x,2)を示している。
また、計算説明図235には、実線矢印A35の左側に、両向きの4本の破線矢印が存在する。すなわち、(x−1)に対応する破線矢印A34、(x−2)に対応する破線矢印A33、(x−3)に対応する破線矢印A32、(x−4)に対応する破線矢印A31が存在する。以下に、これらの破線矢印について説明する。
式(32)〜(43)の定義から、累積相関値は、例外的に値がBIGとなる場合を除いて、一つ以上の局所相関値の和であることが明らかである。これらの局所相関値をその累積相関値の「構成要素」と呼ぶことにする。R(x,2)の計算説明図235に存在する破線矢印A31〜A34は、R(x,2)の計算において関数minにより選択されたR(x−1,1)の構成要素を表している。
例えば、上記のとおり、R(x−1,1)には構成要素としてr(x−1,1)が含まれ、これは計算説明図231において実線矢印A18により表される。また、この例ではR(x,2)はR(x−1,1)とr(x,2)の和なので、R(x−1,1)の構成要素のr(x−1,1)は、R(x,2)の構成要素でもある。よって、計算説明図235には、計算説明図231における実線矢印A18に対応する破線矢印A34が存在し、破線矢印A34がr(x−1,1)を示している。すなわち、破線矢印A34は、座標(x−1,y)を中心としてr1方向とその逆方向を向いた両向きの破線矢印である。
同様に、計算説明図235における破線矢印A31、A32、A33は、それぞれ計算説明図231における破線矢印A15、A16、A17に対応している。つまり、R(x,2)の計算において関数minにより選ばれたR(x−1,1)の構成要素の各々は、R(x,2)の構成要素でもあるから、計算説明図231における破線矢印の向きのパターンが、計算説明図235における破線矢印の向きのパターンに引き継がれている。よって、R(x,2)は構成要素としてc(x−4)、c(x−3)、r(x−2,1)、r(x−1,1)、r2(x,2)を含む。これら五つの局所相関値はそれぞれ、計算説明図235における破線矢印A31、破線矢印A32、破線矢印A33、破線矢印A34、実線矢印A35に対応する。
一方、R(x−1,2)の計算を示す計算説明図230とR(x,2)の計算を示す計算説明図235とを比較すると、両者ともr2方向に対応するものの、破線矢印の向きのパターンは異なる。これは、R(x,2)の計算において関数minによりR(x−1,2)が選ばれなかったためである。
また、関連方向以外の方向の局所相関値が、累積相関値の構成要素として含まれることもある。例えば、R(x,2)に対応するr2方向の関連方向は、r1方向、r2方向、r3方向の三つである。一方、R(x,2)の計算を示す計算説明図235には、c方向に対応する破線矢印A31とA32がある。
図6の右列は、五つの相関計算方向に対応する累積相関値を定義する式を示している。つまり、上記の式(38)、(39)、(35)、(43)、(42)を示している。
以上で、局所相関値と累積相関値の定義と意味を説明したので、次に、実際の計算手順について説明する。図7は、図4のステップS204で行う相関値計算のフローチャートである。図7は、上記の式で定義された局所相関値と累積相関値を、局所相関値計算部204と累積相関値計算部205がそれぞれ計算する処理を表す。
なお、図7では、対象フィールド画像Fにおいて(x,y)に位置する対象画素Tについての計算を行うものと仮定して説明する。また、図7ではx>0と仮定している。つまり、正確には、図7は、図4のステップS204においてx>0の場合のフローチャートである。
x=0の場合は、局所相関値と累積相関値の定義から明らかなように、例外的な場合である。また、x=0の場合、c方向以外については局所相関値と累積相関値が計算不能であり、累積相関値計算部205は式(33)や(34)にしたがって単に累積相関値を所定の値に定めて格納部201に格納するだけである。よって、x=0の場合についてはフローチャートを省略した。
一方、x>0の場合、図7の処理が実行される。まず、ステップS301で、局所相関値計算部204が変数kに−nを代入して初期化する。変数kは、複数の相関計算方向のうちの一つを指定するための変数である。nは、(2n+1)が相関計算方向の数であるような所定の定数であり、実施形態によって予め決められている正の整数である。なお、相関計算方向として考慮する方向には、必ずc方向が含まれること、および右上方向の数と左上方向の数が同数であることが望ましく、図7では暗黙にこのことを前提としている。
例えば、r4方向、r3方向、r2方向、r1方向、c方向、l1方向、l2方向、l3方向、l4方向の九つの方向について考慮する実施形態においては、右上方向と左上方向が四つずつなので、n=4である。変数kの初期化後、ステップS302に移行する。
ステップS302〜S305は、変数kの値を変えて繰り返し実行されるループである。このループは、各相関計算方向について局所相関値が計算されることを表す。
ステップS302で、局所相関値計算部204はkがnより大きいか否かを判定する。kがnより大きければ判定は「Yes」となり、対象画素Tについての局所相関値の計算は終了して、ステップS306に移行する。kがn以下なら判定は「No」となり、ステップS303に移行する。
ステップS303は、図7における局所相関値の表記法について説明しており、実質的には何も行われず、ステップS304に処理が移行する。図7では、式(45)〜(47
)のように定義することによって、(x,y)に位置する対象画素Tについての局所相関値を、統一的な表記「v(k)」により表す。例えば、v(−3)=l(x,3)であり、v(2)=r(x,2)である。
v(k)=l(x, -k) (k<0) (45)
v(k)=c(x) (k=0) (46)
v(k)=r(x, k) (k>0) (47)
ステップS303に続くステップS304において、局所相関値計算部204は、現在の変数kの値が示す相関計算方向に対応する、対象画素Tについての局所相関値v(k)を計算し、格納部201に格納する。つまり、局所相関値計算部204は、上述した局所相関値の定義にしたがって、対象フィールド画像F内の画素のうち局所相関値の計算に必要な複数の画素の画素値を格納部201から読み出し、それらの画素値に基づいて局所相関値を計算し、格納部201に格納する。
なお、図3に示したとおり、格納部201には入力フィールド画像、局所相関値、累積相関値のそれぞれのデータが格納される。第一の実施形態では、これらのデータは、それぞれ格納部201内の所定の領域に格納されるものとするが、データを格納する領域が動的に決められて割り当てられてもよい。
v(k)の計算と格納の後、ステップS305において、局所相関値計算部204は変数kに1を加算する。これは、上記の相関計算方向のソート順において隣接する次の相関計算方向を局所相関値計算部204が選択することを意味する。加算の後、ステップS302に戻る。
ステップS306は、ステップS302の判定が「Yes」のとき実行される。ステップS301〜S305は局所相関値計算部204による局所相関値の計算処理であり、ステップS306〜S314は累積相関値計算部205による累積相関値の計算処理である。
ステップS306で、累積相関値計算部205は変数kに−nを代入して初期化し、ステップS307に移行する。これは、ステップS301と同様である。
ステップS307〜S314は、変数kの値を変えて繰り返し実行されるループである。このループは、各相関計算方向について累積相関値が計算されることを表す。
ステップS307で、累積相関値計算部205はkがnより大きいか否かを判定する。kがnより大きければ判定は「Yes」となり、対象画素Tについての累積相関値の計算は終了して、図7の処理全体が終了する。kがn以下なら判定は「No」となり、ステップS308に移行する。
ステップS308は、図7における累積相関値の表記法について説明しており、実質的には何も行われず、ステップS309に処理が移行する。図7では、式(48)〜(50)のように定義することによって、(x,y)に位置する対象画素Tについての累積相関値を、統一的な表記「V(x,k)」により表す。例えば、V(−3)=L(x,3)であり、V(x,2)=R(x,2)である。
V(x, k)=L(x, -k) (k<0) (48)
V(x, k)=C(x) (k=0) (49)
V(x, k)=R(x, k) (k>0) (50)
ステップS309〜S313は、kの値によって異なる定義に基づいて累積相関値を累積相関値計算部205が算出し、格納部201に格納するステップである。
ステップS309において、累積相関値計算部205は、変数kが−nに等しいか否かを判定する。k=−nのとき判定は「Yes」となり、ステップS310に移行し、k≠−nのとき判定は「No」となり、ステップS311に移行する。
ステップS310において、累積相関値計算部205は、累積相関値V(x,k)を計算する。ステップS310が実行されるのはk=−nの場合なので、変数kにより示される相関計算方向は、相関計算方向のうちで最も傾きの緩やかな左上方向、すなわちln方向である。ln方向は、上記の相関計算方向のソート順における順番が1番目の方向である。n=4の場合の例を示した式(40)からも明らかなとおり、この場合、関数minに引数として与えられる累積相関値は二つだけである。すなわち、相関計算方向のソート順が1番目と2番目の相関計算方向にそれぞれ対応して(x−1,y)に位置する画素について過去に計算した累積相関値V(x−1,k)とV(x−1,k+1)が、関数minの引数となる。ステップS310では式(40)を一般化した次の式(51)により、累積相関値V(x,k)が定義されており、式(51)に基づいて累積相関値計算部205がV(x,k)を計算する。
V(x, k)=min(V(x-1, k), V(x-1, k+1))+v(k) (51)
すなわち、過去に計算されて格納部201に格納された累積相関値V(x−1,k)とV(x−1,k+1)を累積相関値計算部205が格納部201から読み出す。累積相関値計算部205は二者のうちの最小値を選択する。なお、上記の「過去に計算されて」とは、具体的には、図4において現在実行中のステップS204の直前のループで実行されたステップS204を示す。累積相関値計算部205はまた、ステップS304で計算され格納部201に格納された局所相関値v(k)を読み出し、選択した最小値とv(k)を加算することによってV(x,k)を算出し、格納部201に格納する。そして処理はステップS314に移行する。
ステップS311において、累積相関値計算部205は、変数kがnに等しいか否かを判定する。k=nのとき判定は「Yes」となり、ステップS312に移行し、k≠nのとき判定は「No」となり、ステップS313に移行する。
ステップS312において、累積相関値計算部205は、累積相関値V(x,k)を計算する。ステップS312が実行されるのはk=nの場合なので、変数kにより示される相関計算方向は、相関計算方向のうちで最も傾きの緩やかな右上方向、すなわちrn方向である。つまり、ステップS312ではステップS310と左右対称な相関計算方向について、累積相関値計算部205が累積相関値を計算する。その累積相関値は式(52)で定義される。式(52)は式(36)の一般化である。累積相関値計算部205の動作はステップS310と同様なので説明を省略する。ステップS312の実行後、処理はステップS314に移行する。
V(x, k)=min(V(x-1, k-1), V(x-1, k))+v(k) (52)
ステップS313において、累積相関値計算部205は、累積相関値V(x,k)を計算する。ステップS313が実行されるのは−n<k<nの場合である。つまり、変数kにより示される相関計算方向に対して、三つの関連方向が定義されている。よって、V(x,k)は式(53)により定義される。
V(x, k)=min(V(x-1, k-1), V(x-1, k), V(x-1, k+1))+v(k) (53)
式(53)は式(35)、(37)〜(39)、(41)〜(43)の一般化である。累積相関値計算部205の動作は、格納部201から読み出す累積相関値の数が違う点以外は、ステップS310と同様なので、説明を省略する。ステップS313の実行後、処
理はステップS314に移行する。
ステップS314において、累積相関値計算部205は変数kに1を加算する。これは、上記の相関計算方向のソート順において隣接する次の相関計算方向を累積相関値計算部205が選択することを意味する。加算の後、ステップS307に戻る。
以上のようにして図7の処理を相関値計算部203が終えると、処理は図4のステップS205に進む。
ところで、累積相関値は、対象画素よりも左側の相関の傾向を反映する値だが、計算に必要な計算機資源の量はそれほど多くない。つまり、式(51)〜(53)に示したように、累積相関値は最小値の選択と加算を行うだけで算出可能である。このように定義された累積相関値は、例えばxの値や相関計算方向の数にしたがって計算量が指数的に増大するようなことがない。
また、式(51)〜(53)から明らかなとおり、第一の実施形態では、座標(x−1,y)の画素についての累積相関値さえ格納部201に格納されていれば、座標(x,y)の対象画素についての累積相関値が計算可能である。つまり、座標(x−2,y)の画素やそれよりも左側の画素についての累積相関値が格納部201から消去されていても、座標(x,y)の対象画素についての累積相関値は計算可能である。したがって、第一の実施形態は、入力画像の画素数が多くても、累積相関値の計算に必要な格納部201の容量が少なくてすむという利点を有する。
次に、図8を参照して、図4のステップS206の詳細を説明する。図8は第一の実施形態におけるフィールド内補間のフローチャートであり、図4で変数xとyにより設定された座標(x,y)の対象画素についての処理を表す。図8の処理はフィールド内補間部207により実行される。ステップS401〜S405は、対象画素の補間に用いる補間用画素を決定するための処理であり、ステップS406は対象画素を補間するための処理である。
ステップS401において、方向選択部208が、累積相関値が最小となる相関計算方向dirを選択する。図7に示したとおり、累積相関値計算部205は(2n+1)個の相関計算方向について、それぞれ累積相関値を計算済みである。よって、方向選択部208はこれら(2n+1)個の累積相関値のうちで値が最小の累積相関値に対応する相関計算方向を選択する。なお、累積相関値は非負であり、値が小さいほど相関が高いので、「方向選択部208は、最も累積相関の高い相関計算方向をdirとして選択する」とも言える。
また、値が最小の累積相関値が複数ある場合は、それらのうちで最もc方向に近い相関計算方向に対応するものを方向選択部208が選択する。例えば、(2n+1)個の累積相関値のうちでl2方向に対応するL(x,2)とr1方向に対応するR(x,1)の二つが同じ値で最小だったら、r1方向の方がl2方向よりもc方向に近いので、ステップS401ではr1方向がdirとして選択される。dirの選択後、ステップS402に移行する。
ステップS402において、フィールド内補間用画素決定部209が、dirに対応する局所相関値min_relを取得する。例えば、dirがr2方向のときmin_relはr(x,2)であり、dirがc方向のときmin_relはc(x)であり、dirがl1方向のときmin_relはl(x,1)である。min_relの取得後、ステップS403に移行する。
ステップS403では、フィールド内補間用画素決定部209が、所定の定数kとmin_relとの積をc(x)と比較し、式(54)が成立すれば「Yes」と判定し、成立しなければ「No」と判定する。
k・min_rel < c(x) (54)
なお、ここでkは予め決められた定数であり、1.0から2.0程度の範囲の値であることが好ましい。なお、詳しくは後述するが、上記の2.0は理論的な境界値ではなく、実験によって経験的に得られた概数である。よって、kが上記の範囲外の値であってもよい。
ステップS403の判定が「Yes」のとき、ステップS404においてフィールド内補間用画素決定部209が、フィールド内補間方向をdirに決定する。ここで、「フィールド内補間方向」とは、対象画素をフィールド内補間するときに利用する複数の補間用画素の位置関係により決まる方向のことである。フィールド内補間方向の決定と補間用画素の決定は同じことを意味する。
つまり、「フィールド内補間方向をdirに決定する」とは、次の(1a)〜(3a)を意味する。
(1a) 対象画素から見てdirの方向にある、上実ライン220上の、一つ以上の実画素からなるグループを特定する。
(2a) 対象画素から見てdirの逆方向にある、下実ライン222上の、一つ以上の実画素からなるグループを特定する。
(3a) それら二つのグループに含まれる複数の実画素を、対象画素の補間用画素として決定する。
なお、上記(1a)〜(3a)は次の(1b)〜(3b)に言い換えることも可能である。
(1b) 対象画素から見てdirの方向にある、上実ライン220上の、一つの実画素または一つの仮想画素を特定する。
(2b) 対象画素から見てdirの逆方向にある、下実ライン222上の、一つの実画素または一つの仮想画素を特定する。
(3b)(1b)と(2b)で特定した二つの実画素、または(1b)と(2b)で特定した二つの仮想画素を、対象画素の補間用画素として決定する。
図6において両向きの破線矢印A11等により局所相関値に対応する相関計算方向を表すのと同様に、フィールド内補間方向も、以下の図において両向きの矢印により表現することがある。
図5を参照して、ステップS403で選択される補間用画素について説明する。例えば、dir=r1のとき、上記(1a)では画素u2とu3からなるグループU2_3が特定され、(2a)では画素d1とd2からなるグループD1_2が特定され、(3a)では四つの実画素u2、u3、d1、d2が対象画素Tの補間用画素として決定される。換言すれば、(1b)では仮想画素u2_3が特定され、(2b)では仮想画素d1_2が特定され、(3b)では二つの仮想画素u2_3、d1_2が対象画素Tの補間用画素として決定される。
同様に、例えばdir=r2のとき、(1a)では画素u3のみからなるグループが特定され、(2a)では画素d1のみからなるグループが特定され、(3a)では二つの実画素u3、d1が対象画素Tの補間用画素として決定される。換言すれば、(1b)では画素u3が特定され、(2b)では画素d1が特定され、(3b)では二つの実画素u3
、d1が対象画素Tの補間用画素として決定される。
このようにしてフィールド内補間方向がdirに決定すると、処理はステップS406に移行する。
一方、ステップS403の判定が「No」のとき、ステップS405においてフィールド内補間用画素決定部209が、フィールド内補間方向をc方向に決定する。つまり、対象画素の真上の画素u2と真下の画素d2が、対象画素の補間用画素として決定される。これは、ステップS404で説明した(1a)〜(3a)、(1b)〜(3b)においてdir=cと読み変えた動作である。フィールド内補間方向の決定後、処理はステップS406に移行する。
ステップS406では、ステップS404またはS405で決定されたフィールド内補間方向にしたがって、フィールド内補間画素値計算部210が、対象画素のフィールド内補間を行う。すなわち、フィールド内補間画素値計算部210は対象画素の画素値を計算する。
ステップS406における画素値の計算例を、図9を参照して説明する。例えばフィールド内補間方向がr2のとき、上記のとおり、対象画素Tの補間用画素は画素u3とd1の二つである。この場合、フィールド内補間画素値計算部210は、式(55)にしたがって対象画素Tの画素値Tを計算し、対象画素Tをフィールド内補間する。式(55)は、二つの補間用画素の画素値の平均を表す。
T=(u3+d1)/2 (55)
図9の例では、画素u3とd1はいずれも黒いので、式(55)により画素値Tが計算された対象画素Tも、黒く補間されている。
また、例えばフィールド内補間方向がr1のとき、上記のとおり、対象画素Tの補間用画素は画素u2、u3、d1、d2の四つの実画素である。この場合、フィールド内補間画素値計算部210は、式(56)にしたがって対象画素Tの画素値Tを計算し、対象画素Tをフィールド内補間する。式(56)は、四つの補間用画素の画素値の平均を表す。
T=(u2+u3+d1+d2)/4 (56)
なお、式(17)および(18)を使って、式(56)を式(57)のように変形することもできる。
T=(u2_3+d1_2)/2 (57)
式(57)は、対象画素Tの補間用画素を二つの仮想画素u2_3、d1_2であると見なす、という解釈による式である。式(57)は、その二つの補間用画素の画素値の平均が、対象画素Tの画素値Tであることを表す。式(56)と(57)は異なる解釈にしたがって異なる形式で表現されているが、実質的な内容は同じである。
以上のようにしてステップS406で対象画素Tがフィールド内補間されると、図8のフィールド内補間処理は終了する。そして、処理は図4に戻って、ステップS208へ移行する。
なお、図8の処理の意味を補足説明すると、次のとおりである。ステップS401では累積相関値を考慮し、ステップS402とS403では局所相関値を考慮しているので、図8では、局所相関値と累積相関値の双方を考慮したフィールド内補間が行われる。また、ステップS403〜S405は、実験から経験的に得られた知見を反映している。つまり、ステップS403〜S405では、補間後の画像の画質向上を目的として、c方向を
フィールド内補間方向として選ばれやすくするバイアスをかけている。
前述のとおり、図26のように常にc方向をフィールド内補間方向とすることはジャギーを発生させ、補間後の画像の画質の劣化につながる。一方、図31のように斜め方向すなわちc方向以外の方向をフィールド内補間方向として対象画素をフィールド内補間すると、フィールド内補間方向が適切であれば高画質の結果が得られるが、適切でないと図26のジャギーよりもさらに低画質の結果となることがある。このことから、経験的に、高い確信度で適切な方向であると思われる場合にのみ、斜め方向でのフィールド内補間方向を行うことが、画質の向上に有効であることが分かっている。つまり、経験的には、ステップS401で選択されたdirが適切なフィールド内補間方向であることの確信度が低ければ、dirよりもc方向でフィールド内補間をするほうが、画質の劣化を招きにくい。
このように、c方向をフィールド内補間方向として選ばれやすくするバイアスは、本実施形態では、具体的にはステップS403の式(54)によって実現されている。本実施形態では、局所相関値は非負であり、値が小さいほど相関が大きいことを示す。よって、上記のバイアスを実現するには、kは、1.0より大きくなくてはならない。
例えばk=1.5と仮定すると、式(54)が成立するのは、相関計算方向dirに対応する局所相関値min_relが、c方向に対応する局所相関値c(x)の2/3より小さいときである。つまり、dirに対応する局所相関がc方向に対応する局所相関よりも明らかに大きいときにのみ式(54)が成立し、両者にそれほど大きな差がない場合は式(54)が成立しない。ここで、「明らかに大きい」か否かの判断は、具体的にはkの値による。kが極端に大きな値だと、min_relとc(x)が非負であることから、ステップS403ではほとんど常に「No」と判定され、ほとんど常にc方向がフィールド内補間方向として選択される。よって、kの値は実験などにより適切に定めることが望ましい。上記の1.0〜2.0という範囲は、好ましい値の範囲の例である。
また、ステップS401において、複数の相関計算方向において累積相関値が最小となる場合、それらのうちで最もc方向に近い方向をdirとして選択するが、これも上記のバイアスと類似の考え方による。つまり、計算された累積相関値が同程度であれば、c方向とかけ離れた相関計算方向よりも、c方向に近い相関計算方向のほうが、より高い確信度で累積相関が大きいという考え方による。
以上で第一の実施形態における画素値補間装置200の動作について説明し終えたが、この動作の流れを模式的に表してまとめたのが図10である。図10は、フィールド内補間方向の決定例を表す。
図10の左側に示したように、この例ではy=1のラインが補間ラインである。この補間ライン上の画素が左から順に対象画素として選択され、補間される。図10は、座標(0,1)〜(6,1)の七つの対象画素の補間について示している。
図10の中央に示したように、それぞれの対象画素について複数の相関計算方向に対応する累積相関値が計算される。図10では紙面の都合上、五つの相関計算方向のみを示した。また、図10では、ステップS401のdirの選択を灰色で示している。例えば、対象画素の座標が(1,1)のとき、この例では、累積相関値R(1,j)、C(1)、L(1,j)(j=1,2,……)のうちC(1)が最小であると仮定している。よって、C(1)が灰色で示されている。
また、図10では、どの対象画素に対してもステップS205で動きが検出されたと仮
定している。よって、各対象画素に対して、このようにして選択されたdirに基づいて、ステップS402〜S405にしたがって、実際のフィールド内補間方向が決定される。図10の右側は、決定されたフィールド内補間方向を両向きの矢印により示している。図10の中央と右側の比較から分かるとおり、この例では、ステップS403で「No」と判定された対象画素は存在しない。
次に、図2と図4、7、8との対応について述べる。
図2のステップS101は、図4において変数xとyへの代入を行うステップS201、S208、S209に対応する。
図2のステップS102とS103は、図4のステップS204に対応する。より正確には、ステップS102は図7のステップS301〜S305に対応し、ステップS103は図7のステップS306〜S314に対応する。
図2のステップS104とS105は図4のステップS206に対応する。より正確には、ステップS104は図8のステップS401に対応し、ステップS105は図8のステップS402〜S405に対応する。
図2のステップS106は図4のステップS203に対応し、ステップS106の「Yes」という判定がステップS203の「No」という判定に対応する。なお、図2は複数の対象画素について一つの選択順序方向にそって順に補間方法を決定することを表しているため、ステップS106で「No」と判定されると処理が終了する。例えば、ある水平な一つの補間ライン上の複数の対象画素について、左から右という選択順序方向にそって補間方法を決定する場合、図2はその補間ラインの右端で処理が終了することを表す。一方、図4は、複数の補間ラインについての処理についても表している。よって、図4では、ステップS203で「Yes」と判定されても処理が終了せず、次の補間ラインに移行するためにステップS209に移行している。図4は、図2の処理を補間ラインの数だけ繰り返し実行することに相当する。
次に、フィールド内補間を行う際に上記のように累積相関値を利用することの利点について、図11〜14を参照して説明する。図11と12を参照して一つ目の利点を説明し、図13と図14を参照して二つ目の利点を説明する。なお、図11〜14においても、上記の(a)〜(j)を仮定する。特に、図11〜14では数値を使って具体例を説明するために、各画素の画素値を図示してある。上記(e)の仮定から、例えば「100」と書かれた正方形は、白い画素を示す。
図11は、局所相関値によりフィールド内補間用画素を決定し補間を行う従来例を説明する図である。また、図12は、第一の実施形態において累積相関値によりフィールド内補間用画素を決定し補間を行う例を説明する図である。図11と図12の入力画像は同じ入力フィールド画像Fであり、画素値が100の白の背景に、画素値が0または5の黒の斜めの線がある画像である。
図11に示した従来の方法は、式(14)〜(29)に示した本発明の第一の実施形態と同様の局所相関値を利用するが、累積相関値は利用しない方法である。図11では、l2方向、l1方向、c方向、r1方向、r2方向の五つの方向のみを相関計算方向として考慮している。また、入力フィールド画像Fの幅は8画素であり、そのx座標は0〜7の範囲である。補間ライン221上の8個の画素が左から右へ順に対象画素として選択され、五つの相関計算方向についてそれぞれ局所相関値が計算される。
計算された局所相関値は局所相関値一覧表240に示したとおりである。なお、局所相
関値一覧表240では小数点以下を四捨五入して示している。局所相関値一覧表240の空欄は、定義上、計算不能なことを表す。なお、局所相関値一覧表240は説明のための表であり、局所相関値一覧表240に示したすべての累積相関値が同時に格納部201に格納されているわけではない。図11の方法では、局所相関値が最も小さく、したがって局所相関が最も大きな方向がフィールド内補間方向に決定される。各対象画素について、五つの相関計算方向のうち最も局所相関値が小さい方向を、局所相関値一覧表240内では灰色で示した。
このようにして決定されたフィールド内補間方向を、その方向を表す両向き矢印で示したのが、フィールド内補間方向の説明図241である。そして、そのフィールド内補間方向に基づいて補間した結果が、補間済みフィールド画像Gである。補間済みフィールド画像Gでは、補間ライン221上の8画素は、すべて補間によって画素値が100の白い画素となる。よって、黒の斜めの線は補間ライン221で途切れている。
つまり、x=3およびx=4の位置にある画素において、正しいフィールド内補間方向であるr2方向とは逆のl2方向の局所相関が最も強いため、図11の方法では誤った補間をしてしまう。具体的には、r(3,2)>l(3,2)なのでx=3においてはr2方向よりもl2方向の局所相関が強く、r(4,2)>l(4,2)なのでx=4においてはr2方向よりもl2方向の局所相関が強い。そのため、x=3およびx=4の位置にある画素のフィールド内補間方向はl2方向となり、これら二つの画素は白く補間される。
一方、図12は、図11と同じ入力フィールド画像Fを、本発明の第一の実施形態の処理によって補間した例を示す。図12でも図11と同様に五つの方向のみを相関計算方向として考慮している。また、補間ライン221上の8個の画素が左から右へ順に対象画素として選択される点も図11と同様である。図11と異なるのは、図12では画素値補間装置200が局所相関値だけではなく累積相関値も計算し、累積相関値を利用してフィールド内補間方向を決定する点である。
計算された累積相関値は累積相関値一覧表242に示したとおりである。なお、累積相関値一覧表242でも小数点以下を四捨五入して示している。累積相関値一覧表242の空欄は、値が「BIG」である累積相関値を表す。また、累積相関値一覧表242において累積相関値同士を結ぶ太線は、図6における太矢印A23やA25と同様の意味を表す。例えば、式(39)の定義より、R(3,1)は次の式(58)により計算される。
R(3, 1)=min(R(2, 2), R(2, 1), C(2))+r(2, 1)
=min(0, 48, 95)+45
=0+45
=45 (58)
式(58)において関数minにより選択されるのはR(2,2)を表す0という値である。よって、累積相関値一覧表242において、R(2,2)を表す0から、R(3,1)を表す45へと、太線が引かれている。
また、累積相関値一覧表242内では、各対象画素について、五つの相関計算方向のうち最も累積相関値が小さい方向を、灰色で示した。つまり、灰色の桝目は、図8のステップS401のdirに相当する。また、図12では、例えば式(54)の定数kの値が2だと仮定すると、x=6以外では、ステップS403で「No」と判定されることはない。したがって、x=6以外では、灰色の桝目は、ステップS404で決定されるフィールド内補間方向を表してもいる。なお、x=6のとき、min_rel=r(6,1)=0かつc(x)=0なので、ステップS403において「No」と判定され、フィールド内
補間方向はc方向に決定される。
このようにして決定されたフィールド内補間方向を、その方向を表す両向き矢印で示したのが、フィールド内補間方向の説明図243である。そのフィールド内補間方向に基づいて補間した結果が、補間済みフィールド画像Gである。累積相関値一覧表242とフィールド内補間方向の説明図243から明らかなとおり、累積相関値を利用することによって、x=3やx=4において、r2方向の局所相関値は最小にならなくてもr2方向の累積相関値が最小となる。つまり、R(3,2)<L(3,2)およびR(4,2)<L(4,2)が成立する。その結果、x=3やx=4において、フィールド内補間方向が正しくr2方向と決定され、補間済みフィールド画像Gには、黒い斜めの線が途切れることなく含まれ、良好な画質の画像が得られる。
次に、図13と図14を参照して累積相関値を利用することの二つ目の利点を説明する。図13は、補間誤りが連鎖してしまう従来の補間方法の例である。また、図14は、図13と同じ画像を第一の実施形態を変形した補間方法決定処理により処理した場合の図である。
図13の上段はすべてのラインが実ラインである元画像Pを示し、中段は元画像Pに対応するインターレース画像Iを示し、下段はインターレース画像Iの一部分についてのフィールド内補間方向の説明図245である。なお、図13では、説明の便宜上、元画像Pに基づいてインターレース画像Iが得られたように示した。しかし、実際には元画像Pが存在するわけではなく、正しく理想的なIP変換が行われたと仮定した場合にインターレース画像Iから得られるはずのプログレッシブ画像が元画像Pである。
元画像Pは、白っぽい背景に、灰色の逆V字型のエッジが縦に二つ並んでいる画像であり、その大きさは横17画素×縦9画素である。インターレース画像Iは、この9本のラインを1本おきに間引いた画像である。インターレース画像Iには5本の実ラインが含まれ、4本の補間ラインについて補間が必要である。図13では、上から2本目と3本目の実ラインに注目して説明する。この2本の実ラインと、それらに挟まれた補間ラインからなる部分を「注目部分」と呼ぶことにし、符号「244」により参照する。元画像Pと比べれば明らかなとおり、注目部分244の0≦x≦7の範囲においては、r3方向などの右上方向をフィールド内補間方向とし、8≦x≦16の範囲においては、l3方向などの左上方向をフィールド内補間方向とすることにより、高画質の結果を得ることができるはずである。
しかし、図13で説明する従来の方法では、近隣の画素におけるフィールド内補間方向に依存して対象画素のフィールド内補間方向を決定するので、フィールド内補間方向の誤り(以下「補間誤り」と略す)が連鎖的に発生する。この例では、補間ラインを左から右へ順に補間していくので、「近隣の画素」とは、具体的には対象画素よりも左側の画素である。
すなわち、左上方向をフィールド内補間方向とすることが望ましい8≦x≦16の範囲においても、それよりも左側でフィールド内補間方向として選択された右上方向に依存してフィールド内補間方向が決定される。よって、結果的に、フィールド内補間方向の説明図245に示したように、8≦x≦16の範囲にある対象画素についても、右上方向がフィールド内補間方向とされ、補間誤りが連鎖的に発生する。そして、この連鎖は、図示したとおり8≦x≦16の範囲にわたって続いている。
つまり、V字型や逆V字型のエッジのように、ある位置を境にして、望ましいフィールド内補間方向が大きく変化する画像の場合に、図13の従来方法では、補間誤りが連鎖す
る場合がある。なぜなら、その境を越えても、以前のフィールド内補間方向の影響を受けてフィールド内補間方向が決定されるからである。例えばその境の近傍のある対象画素において一度補間誤りが発生すると、その補間誤りが広範囲に影響を与え、広範囲で連鎖的に補間誤りが発生する。
一方で、本発明の第一の実施形態による補間方法決定処理では、補間誤りが連鎖しても、その連鎖はある程度の範囲に限られ、補間誤りの連鎖から回復することが可能である。このことを、図14を参照して説明する。なお、図14は、第一の実施形態を一部変形した補間方法決定処理に基づく図であるが、変形した点は、画像の右端と左端に関する処理に関する点であり、補間方法の決定に関しては基本的に上述の第一の実施形態と同様である。
図14の1段目には、図13の注目部分244を、画素値の数字とあわせて示した。上実ライン220と下実ライン222と、それらに挟まれた補間ライン221からなるこの画像を入力フィールド画像Fとして画素値補間装置200が受け取り、図4、7、8に示した処理を実行する。なお、図14の例では、l3方向、l2方向、l1方向、c方向、r1方向、r2方向、r3方向の7方向を相関計算方向として考慮している。
計算された累積相関値は、2段目の累積相関値一覧表246に示したとおりである。累積相関値一覧表246の表記法は図12の累積相関値一覧表242と同様であり、累積相関値が最小の方向dirに対応する桝目は灰色である。
なお、累積相関値一覧表246では、L(1,2)やR(1,2)など、上記の累積相関値の定義では値が「BIG」になるため空欄となるべき桝目に「100」や「50」などの値が記入されている。これは、図14では第一の実施形態による累積相関値の計算方法の一部を変更したためである。式(44)に示したように、第一の実施形態の計算方法ではL(1,2)=BIGである。つまり、画像の左端や右端では、累積相関値のうち、値がBIGとなるものがいくつか存在する。図14は、値がBIGとなる累積相関値を減らすための変形を行った場合の図である。
つまり、式(32)〜(43)では、各相関計算方向に対して二つまたは三つの関連方向が関連付けられているが、図14の例では、画像の左端や右端において例外的に関連方向の数を増やしている。例えば、x=1の画素において、l2方向の関連方向は、第一の実施形態と同様のl3方向、l2方向、l1方向の3方向に加えて、c方向も含む。このように関連方向を増やすことにより、x=1の画素においても累積相関値L(1,2)とR(1,2)が計算可能となる。
このように関連方向を増やす変形は、局所相関値を計算可能な相関計算方向については、累積相関値も計算可能なようにするために行ったものである。例えば、x=1の画素に対しては、l2方向からr2方向までの5方向に対応する局所相関値が計算可能であり、上記のようにx=1では例外的に関連方向を増やせば、累積相関値も、l2方向からr2方向までの5方向について計算可能となる。しかし、このような変形を行うことは必須ではなく、式(32)〜(43)に厳密にしたがって累積相関値を計算してもよいことは無論である。
また、累積相関値一覧表246において累積相関値同士を結ぶ太線から明らかなとおり、すべての累積相関値はその構成要素としてC(0)を含む。すなわち、累積相関値C(0)はすべての累積相関値に均しく影響する。よって、累積相関値同士の大小関係に累積相関値C(0)の具体的な値は影響しない。
3段目に示したフィールド内補間方向の説明図247は、決定されたフィールド内補間方向を矢印で示している。図14では、図8のステップS403で用いられるkの値を1.5と仮定している。すると、x=0,9,12においてのみ、ステップS403の判定が「No」となり、フィールド内補間方向がc方向に変更される。4段目には、補間の結果を示した。
図14の例では、7≦x≦12で不適切なフィールド内補間方向が選択されている。図13の元画像Pを見れば明らかなとおり、6≦x≦9の範囲の下実ライン222の画素が表すエッジは、上実ライン220には存在しない。よって、この範囲で補間誤りが発生し、その結果x=12まで補間誤りが連鎖する。しかし、13≦x≦16ではその補間誤りの連鎖から回復して、適切な方向がフィールド内補間方向として選択され、適切に補間されている。
つまり、本発明によれば、例えばx=13の場合に、x<13の範囲では実際にフィールド内補間方向として採用されなかったl2方向やl3方向についても、その方向に関するx<13の範囲における相関を、累積相関値を介して考慮することが可能である。例えば、x=12においてl3方向は選択されなかったが、l3方向に対応するL(12,3)は格納部201に保存され、x=13の画素を補間するときに参照されて、その結果、x=13では適切にl3方向がフィールド内補間方向として選択される。
このように、本発明では、以前の画素で選択されなかった方向についても累積相関値を介して考慮しているので、たとえ誤った補間を行っても、それが広範囲にわたって連鎖することは起きにくい。実際に、図13の元画像Pような逆V字型やV字型のエッジが何重にも続く画像の場合に、途中で補間誤りの連鎖から回復することができるか否か、つまり補間誤りをある時点で修正できるか否かによって、出力されるプログレッシブ画像の画質に顕著な違いがある。
次に、本発明の第二の実施形態について図15〜24を参照して説明する。第二の実施形態は、静動判定で動きが検出された場合にフィールド内補間ではなく混合補間を行う点で、第一の実施形態と異なる。詳細は後述するが、「混合補間」とは、フィールド内補間とフィールド間補間を組み合わせた補間である。ただし、局所相関値に基づいて累積相関値を計算する点など、第一と第二の実施形態には共通点も多い。また、第一の実施形態で仮定した(a)〜(j)を、第二に実施形態でも仮定する。第一と第二の実施形態の差は、本発明の原理を示す図1における補間用画素決定部106の差であり、図2におけるステップS105の差である。
図15は、本発明の第二の実施形態における画素値補間装置300の機能ブロック構成図である。図3の画素値補間装置200と同様に、図15の画素値補間装置300も、図1の補間方法決定装置100の具体例の一つである。画素値補間装置300は画素値の補間方法を決定するだけではなく、決定した方法に基づいて画素値を補間するため、補間方法決定装置100とは名称が異なる。ここでは画素値補間装置300の構成の簡単な説明のみを行い、各構成要素の機能の詳細は後述する。また、以下では、画素値補間装置300が備える構成要素のうち、図3と同様または類似のものには、図3と同じ符号をつけて参照する。
画素値補間装置300は、格納部201、対象画素選択部202、第一空間相関値計算部301、時間相関値計算部304、静動判定部206、混合補間部302、フィールド間補間部211を備える。
図15の格納部201は図3の格納部201と同様である。ただし、第二の実施形態で
は、後述のとおり対象画素の補間のために補間済みのフィールド画像も必要なので、図15では、補間済みフィールド画像も格納部201に格納される点を明示した。なお、図中では、先行フィールド画像Fi−1を補間して得られた補間済みフィールド画像を符号「Gi−1」で参照し、対象フィールド画像Fから得られた、一部の画素のみ補間済みで一部の画素はまだ補間されていない画像を符号「G’」で参照している。なお、画像全体の補間が完了したか否かはあまり重要ではないので、画像G’も、「補間済みフィールド画像」と呼ぶことにする。また、図15には示していないが、対象フィールド画像Fのすべての補間ライン上のすべての画素についての補間が完了して得られる補間済みフィールド画像を、以下では符号「G」で参照する。
第一空間相関値計算部301は、名称が異なるが機能は図3の相関値計算部203と同様であり、局所相関値計算部204と累積相関値計算部205を備える。混合補間部302は、方向選択部208、第二空間相関値計算部303、フィールド内補間用画素決定部209、フィールド内補間画素値計算部210、重み係数計算部305、混合補間画素値計算部306を備える。フィールド間補間部211は図3と同様にフィールド間補間用画素決定部212とフィールド間補間画素値計算部213を備える。
なお、図15において、混合補間画素値計算部306とフィールド間補間画素値計算部213から、どの機能ブロックも指さない矢印が出ている。この二つの矢印は、紙面の都合上、このように図示したものだが、意味的には格納部201へ向かう矢印である。後述するように、第二の実施形態では、混合補間画素値計算部306またはフィールド間補間画素値計算部213により対象画素の画素値が計算される。格納部201に格納される補間済みフィールド画像のデータは、その計算された画素値のデータを含む。この二つの矢印は、補間済みフィールド画像の格納について表している。
図15の画素値補間装置300は、図1の補間方法決定装置100の構成要素の各々を具体化した構成要素を含み、さらに図1にはない構成要素も含む。図1と図15の対応は次のとおりである。
格納部201は格納部101と同様であり、図15では格納する内容について図1よりも具体的に示した。対象画素選択部202は、対象画素選択部102に対応し、選択順序方向が具体化されている。局所相関値計算部204と累積相関値計算部205はそれぞれ局所相関値計算部103と累積相関値計算部104に対応し、局所相関値や累積相関値の計算式が具体化されている。方向選択部208は方向選択部105に対応し、選択する基準が具体化されている。フィールド内補間用画素決定部209とフィールド間補間用画素決定部212が補間用画素決定部106に対応し、補間用画素の決定の仕方が具体化されている。
次に、図16のフローチャートを参照して、第二の実施形態において画素値補間装置300が行う補間処理について説明する。この補間処理は、画素値の補間方法を決定する補間方法決定処理と、その決定にしたがって画素値を補間する処理を含む。図16の処理は図2の処理を具体化したものである。また、図16は、第一の実施形態の図4のフローチャートと同様のステップを含むので、まず図4との共通点から説明する。
図4は、変数xとyの初期化の後、変数yに関するループが繰り返し実行され、変数yのある一つの値に対して、変数xに関するループが繰り返し実行されることを示している。この二重のループ構造は図16でも同様である。すなわち、図4と図16では、ステップS201とS501、ステップS202とS502、ステップS203とS503、ステップS208とS511、ステップS209とS512がそれぞれ対応する。図16中の上記のステップは、図4中の対応するステップと同様の動作であるため、説明を省略す
る。
すなわち、第一と第二の実施形態の違いは、図4のステップS204〜S207と、図16のステップS504〜S510との違いである。よって、以下ではステップS504〜S510について説明する。
ステップS504はステップS204とほぼ同様である。ステップS504では、(x,y)に位置する対象画素について、第一空間相関値計算部301が空間相関値を計算し、格納部201に格納する。ここで、「空間相関値」とは、第一の実施形態で説明した局所相関値と累積相関値を包含する上位概念であり、ステップS504で計算される空間相関値は、具体的には局所相関値と累積相関値である。すなわち、局所相関値計算部204が局所相関値を計算し、累積相関値計算部205が累積相関値を計算する。局所相関値と累積相関値の計算方法は、第一の実施形態の場合とまったく同様であり、図7に示したとおりである。
局所相関値は、同一のフィールド画像Fに含まれる複数の画素の画素値に基づいて計算される。それら複数の画素は異なる位置にあり、位置は空間的な概念である。また、累積相関値は局所相関値を累積することにより計算される。したがって、局所相関値も累積相関値も、ある種の空間的な相関を表していると言える。
なお、第二の実施形態では、後述するように、局所相関値と累積相関値以外の空間相関値も利用する。いずれの空間相関値も、同一のフィールド画像Fに含まれる、異なる複数の位置の画素の画素値に基づいて計算される、空間的な相関を表す。
局所相関値と累積相関値の計算後、処理はステップS505に移行する。ステップS505では、方向選択部208が対象画素に対する仮補間方向dirを決定する。ここで、「仮補間方向」とは、相関計算方向のうち、累積相関値が最も小さい方向であると定義する。すなわち、ステップS505では図8のステップS401と同様の処理が行われる。その後、処理はステップS506に移行する。
ステップS506では、第二空間相関値計算部303が、補間済みの画素の画素値を考慮した空間相関値rel_xyおよびrel_skewを計算する。これらの空間相関値の詳細は後述するが、後述のステップS509における重み係数の計算に利用される。また、rel_skewはdirに応じて具体的な計算方法が異なる。rel_xyとrel_skewの計算後、処理はステップS507に移行する。
ステップS507では時間相関値計算部304が時間相関値を計算する。「時間相関値」は空間相関値と対になる概念である。時間相関値は、複数のフィールド画像に含まれる複数の画素の画素値に基づいて計算される。複数の異なるフィールド画像は、複数の異なる時刻に対応するので、複数のフィールド画像に含まれる複数の画素の画素値に基づいて計算される相関値は、時間的な相関を表す。時間相関値も空間相関値と同様に広い概念を示す語である。
計算方法の詳細は後述するが、ステップS507では、具体的にはrel_xt、rel_yt、rel_yt2という3種類の時間相関値が計算される。このうち、rel_yt2はdirに応じて具体的な計算方法が異なる。これらの時間相関値を時間相関値計算部304が計算すると、処理はステップS508に移行する。
ステップS508では、静動判定部206が静動判定を行う。静動判定の具体的な処理は図4のステップS205と同様でもかまわないが、第二の実施形態では、ステップS5
07で算出した時間相関値を利用して静動判定が行われ、時刻tにおける対象画素の近傍に動きがあるか否かが判定される。
静動判定の結果、動いていると判定されたら、すなわち、動きが検出されたらステップS509に移行し、静止と判定されたらステップS510に移行する。
ステップS509は、静動判定で動きが検出された場合に実行され、フィールド内補間とフィールド間補間を組み合わせた混合補間が行われる。混合補間の詳細は図23のフローチャートとあわせて後述するが、概要は次のとおりである。
フィールド内補間によって対象画素を補間する場合の画素値が、フィールド内補間用画素決定部209とフィールド内補間画素値計算部210により計算される。また、フィールド間補間によって対象画素を補間する場合の画素値が、フィールド間補間用画素決定部212とフィールド間補間画素値計算部213によって計算される。そして、重み係数計算部305が、二つの画素値に掛けるべき重み係数を計算し、その重み係数を使って混合補間画素値計算部306が二つの画素値の重み付け和を計算して、対象画素を補間する。対象画素の補間後、処理はステップS511に移行する。
ステップS510は、静動判定で静止と判定された場合の処理である。ステップS510では、図4のステップS207と類似の方法で、フィールド間補間部211がフィールド間補間を行う。フィールド間補間の実行後、処理はステップS511に移行する。
ステップS511とS512は前述のとおり、図4と同様である。図16の処理により、対象フィールド画像Fに含まれるすべての補間ライン上のすべての画素が補間される。
次に、図17を参照して、図16のステップS506で計算する空間相関値rel_skewについて説明する。前記のとおり、rel_skewは選択された仮補間方向dirによって具体的な計算方法が異なる。方向に応じて計算方法が定義される点で、局所相関値とrel_skewは似ている。
局所相関値について示した図5と共通の表記を図17でも利用する。図17中の上実ライン220、補間ライン221、下実ライン222の位置関係は図5と同様である。また、図17中の画素u0〜u4、d0〜d4のそれぞれは、実画素であり、対象画素Tに対する相対位置は図5と同様である。つまり、これらの画素の画素値u0〜u4、d0〜d4は、式(4)〜(13)に示したとおりである。なお、図5では九つの相関計算方向について図示したが、図17では紙面の都合上、c方向、l1方向、l2方向、r1方向、r2方向の五つの方向についてのみ図示している。
局所相関値は実画素の画素値のみを用いて計算されるが、空間相関値rel_skewは、補間済みの画素の画素値も考慮して計算される。以下では、補間済みの画素を「補間済み画素」と呼び、その画素値を「補間済み画素値」と呼ぶ。なお、補間済み画素値も画素値の一種なので、単に「画素値」と呼ぶ場合もある。
対象画素Tの位置が(x,y)のとき、その左隣の(x−1,y)に位置する補間済み画素を符号「m1」により参照し、画素m1の左隣の(x−2,y)に位置する補間済み画素を符号「m0」により参照することにする。上記の(g)と類似の記法を使って、時刻tに対応するフィールド画像F内で(x,y)に位置する補間済み画素の補間済み画素値をq(j,x,y)で表すことにすれば、補間済み画素値m0とm1は式(59)、(60)のとおりである。
m0=q(i, x-2, y) (59)
m1=q(i, x-1, y) (60)
rel_skewは仮補間方向dirに応じて定義され、dir=cのときrel_skewは式(61)のとおりである。
rel_skew=α×|u2-d2|+(1-α)×f(|u1-m1|, |d1-m1|) (61)
ここで、αは右辺の第1項と第2項それぞれのrel_skewに対する寄与を調節する係数であり、0≦α≦1である。経験的には、αが0.5〜0.75の範囲であることが望ましい。αは、実施形態に応じて値が予め指定された定数でもよく、ユーザに指定させてもよい。
また、fは二引数の関数であり、式(61)では二つの引数はいずれも画素値の差分絶対値である。関数fの具体例は、二つの引数の最大値を表す式(62)や、二つの引数の平均値を表す式(63)だが、これ以外の関数fを用いてもよい。
f(a, b)=max(a, b) (62)
f(a, b)=(a+b)/2 (63)
式(62)のように関数maxを用いると、式(61)において|u1−m1|と|d1−m1|のうち一方でも大きな値であれば、その大きな値がrel_skewに反映される。よって、式(62)は、画素値の差をより敏感にrel_skewに反映するバイアスを表している。
式(63)にはそのようなバイアスはなく、中立的である。式(63)の関数fを使うことにより、式(61)において|u1−m1|と|d1−m1|は均等にrel_skewに反映される。
一方、最小値を選択する関数minは、関数maxと逆のバイアスを表す。理由は後述するが、rel_skewは画素値の差を反映した値であることが好ましい。よって、関数minを関数fとして用いることは好ましくない。
つまり、式(61)の第1項(α×|u2−d2|)は、対象画素Tから見てc方向にある上実ライン220上の実画素u2と、対象画素Tから見てc方向の逆方向にある下実ライン222上の実画素d2との相関を表す。実画素u2とd2の相関が高いほど、第1項の値は小さくなる。
一方、式(61)の第2項((1−α)×f(|u1−m1|,|d1−m1|))は、対象画素Tの近傍にあり、第1項で考慮した二つの実画素を結ぶ方向と平行な方向に互いに位置する、実画素と補間済み画素との相関を表す。dir=cの場合、図17に示したとおり、そのような実画素と補間済み画素の組には、画素u1とm1の組と、画素d1とm1の組がある。よって、第2項では、この二組について考慮している。
次に、dir=l1の場合について説明する。dir=l1のときrel_skewは式(64)のとおりである。
rel_skew=α×|u2-d3|+(1-α)×f(|u1-m1|, |d2-m1|) (64)
式(64)における定数αおよび関数fは、式(61)と同様である。つまり、どの仮補間方向dirに対しても、同じ定数αおよび関数fを用いて、空間相関値rel_skewが定義される。
式(64)と式(61)の共通点は、第1項が実画素同士の相関を表し、第2項が実画素と補間済み画素の相関を表す点である。式(64)と式(61)の相違点は、rel_
skewの計算に用いる画素がどのような位置関係にあるかという点である。
式(64)の第1項では、実画素u2とd3の相関を考慮している。図17において実画素u2とd3を結ぶ両向きの矢印は、図5においてl1方向を表す両向きの矢印と平行である。しかし、図17では、対象画素Tから見てl1方向にある画素や、対象画素Tから見てl1方向の逆方向にある画素を考慮しているわけではない点が、図5と異なる。
図17における実画素u2とd3の位置関係は、次の三つの条件をすべて満たす。
・両者とも対象画素Tの近傍にある。
・第一の画素は上実ライン220上にあり、第二の画素は下実ライン222にある。
・第二の画素から見て第一の画素はl1方向にある。すなわち、第一の画素から見て第二の画素はl1方向の逆方向にある。
換言すれば、dir=l1のとき、これらの条件をすべて満たす位置関係にある二つの実画素を利用して、rel_skewが計算される。第二の実施形態では、上記の三つの条件を満たす二つの実画素の組のうち、画素u2とd3の組が使われる。
式(64)の第2項は、対象画素Tの近傍にあり、第1項で考慮したl1方向と近い方向の位置関係を有する、実画素と補間済み画素との相関を表す。上記のとおり、相関計算方向を傾きの角度にしたがってソートすると、l1方向の直前と直後はl2方向とc方向である。よって、第二の実施形態では、dir=l1のときのrel_skewの第2項を計算するのに、次の二組の画素を利用する。
・対象画素Tの左隣の補間済み画素m1と、補間済み画素m1から見てc方向にある上実ライン220上の実画素u1の組。
・対象画素Tの左隣の補間済み画素m1と、補間済み画素m1から見てl2方向の逆方向にある下実ライン222上の実画素d2の組。
次にdir=r1の場合を説明する。この場合、rel_skewは式(65)のとおりである。
rel_skew=α×|u3-d2|+(1-α)×f(|u2-m1|, |d1-m1|) (65)
図5で説明した局所相関値と異なり、補間済み画素値を考慮した空間相関値であるrel_skewの計算は、左右対称ではない。つまり、l1方向とr1方向は左右対称な方向だが、l1方向に対応する式(64)とr1方向に対応する式(65)は左右非対称である。
非対称な理由は、rel_skewの計算に補間済み画素を利用するためである。第二の実施形態でも第一の実施形態と同様に、選択順序方向にしたがって順に対象画素が選択され、補間される。つまり、ある一つの補間ライン上では、左から右へ順に対象画素が選択され、補間される。よって、補間ライン221上で、補間済み画素は対象画素Tの左側にしか存在しない。したがって、l1方向に対応する式(64)に左右対称な式を定義することはできない。
しかし、l1方向と同様の考え方に基づいて、dir=r1の場合のrel_skewを定義することは可能である。式(65)はそのような定義を表す。
すなわち、式(65)の第1項は、次の三つの条件をすべて満たす位置関係にある二つの実画素同士の相関を表す。
・両者とも対象画素Tの近傍にある。
・第一の画素は上実ライン220上にあり、第二の画素は下実ライン222にある。
・第二の画素から見て第一の画素はr1方向にある。すなわち、第一の画素から見て第二の画素はr1方向の逆方向にある。
そして、式(65)の第2項は、対象画素Tの近傍にあり、r1方向と近い方向の位置関係を有する、実画素と補間済み画素との相関を表す。r1方向と近い方向とは、具体的にはr2方向とc方向である。よって、dir=r1のときのrel_skewの第2項の計算には、次の二組の画素が利用される。
・対象画素Tの左隣の補間済み画素m1と、補間済み画素m1から見てr2方向にある上実ライン220上の実画素u2。
・対象画素Tの左隣の補間済み画素m1と、補間済み画素m1から見てc方向の逆方向にある下実ライン222上の実画素d1。
次にdir=l2の場合を説明する。この場合、rel_skewは式(66)のとおりである。
rel_skew=α×|u1-d3|+(1-α)×f(|u0-m1|, |d2-m1|) (66)
式(66)の第1項も、対象画素Tの近傍にある二つの実画素の相関を表している。そして、その二つの実画素は、一方が上実ライン220上にあり、他方が下実ライン222上にあり、前者が後者から見てl2方向にある、という位置関係である。また、第2項は、次の二組の画素を利用して計算される。
・対象画素Tの左隣の補間済み画素m1と、補間済み画素m1から見てl2方向にある上実ライン220上の実画素u0の組。
・対象画素Tの左隣の補間済み画素m1と、補間済み画素m1から見てl2方向の逆方向にある下実ライン222上の実画素d2の組。
次にdir=r2の場合を説明する。この場合、rel_skewは式(67)のとおりである。
rel_skew=α×|u3-d1|+(1-α)×f(|u2-m1|, |d0-m1|) (67)
式(67)の第1項も、対象画素Tの近傍にある二つの実画素の相関を表している。そして、その二つの実画素は、一方が上実ライン220上にあり、他方が下実ライン222上にあり、前者が後者のから見てr2方向にある、という位置関係である。また、第2項は、次の二組の画素を利用して計算される。
・対象画素Tの左隣の補間済み画素m1と、補間済み画素m1から見てr2方向にある上実ライン220上の実画素u2の組。
・対象画素Tの左隣の補間済み画素m1と、補間済み画素m1から見てr2方向の逆方向にある下実ライン222上の実画素d0の組。
以上で、図17に示した空間相関値rel_skewについて説明したが、不図示のl3方向、l4方向、r3方向、l4方向についても同様にしてrel_skewを計算することができる。つまり、mを1以上の整数とすると、仮補間方向dirに応じて、式(68)〜(71)のように一般化して、rel_skewを定義することができる。
dir=lj,j=2m−1のとき
rel_skew
=α×|p(i, x-m+1, y-1)-p(i, x+m, y+1)|+
(1-α)×f(|p(i, x-m , y-1)-q(i, x-1, y)|,
|p(i, x+m-1, y+1)-q(i, x-1, y)|) (68)
dir=rj,j=2m−1のとき
rel_skew
=α×|p(i, x+m, y-1)-p(i, x-m+1, y+1)|+
(1-α)×f(|p(i, x+m-1, y-1)-q(i, x-1, y)|,
|p(i, x-m , y+1)-q(i, x-1, y)|) (69)
dir=lj,j=2mのとき
rel_skew
=α×|p(i, x-m, y-1)-p(i, x+m, y+1)|+
(1-α)×f(|p(i, x-m-1, y-1)-q(i, x-1, y)|,
|p(i, x+m-1, y+1)-q(i, x-1, y)|) (70)
dir=rj,j=2mのとき
rel_skew
=α×|p(i, x+m, y-1)-p(i, x-m, y+1)|+
(1-α)×f(|p(i, x+m-1, y-1)-q(i, x-1, y)|,
|p(i, x-m-1, y+1)-q(i, x-1, y)|) (71)
すなわち、空間相関値rel_skewは、仮補間方向dirに応じた、対象画素Tとの特定の相対位置にある画素同士の相関を表し、少なくとも一つの補間済み画素の補間済み画素値を利用して計算される。
以上説明した空間相関値rel_skewは、図16のステップS506において、第二空間相関値計算部303により計算される。さらに、第二空間相関値計算部303はステップS506で、式(72)により定義される空間相関値rel_xyも計算する。
rel_xy=α×|u2-d2|+(1-α)×f(|u1-m1|, |d1-m1|) (72)
式(72)の右辺は、式(61)の右辺とまったく同じであり、rel_xyは、dir=cの場合のrel_skewに等しい。後述するように、混合補間部302内のフィールド内補間用画素決定部209が決定するフィールド内補間方向は、仮補間方向dirまたはc方向である。rel_xyの計算は、フィールド内補間方向がc方向に決定される場合に備えて行われる。
次に、図18を参照して、補間済み画素m1を考慮して空間相関値rel_skewを計算することの利点を説明する。説明の都合上、図18でも図13と同様に、すべてのラインが実ラインである元画像Pを左側に示し、元画像Pに対応するインターレース画像Iを中央に示した。右側に示したのは、画素値補間装置300がインターレース画像Iを入力として受け取り、補間ライン221上の画素を左から右へ順に選択して補間している様子である。この図では、対象画素Tよりも左の画素は既に補間されている。
図18に示したとおり、元画像Pは、背景が明るい灰色で、補間ライン221上に細く黒い横線Hがある画像である。ところが、この横線Hは非常に細いので、補間ライン221上にのみ存在し、その上下のラインには存在しない。よって、インターレース画像Iにはまったくこの横線Hが含まれない。
このようなインターレース画像Iに対して、第一の実施形態では、図18の中央に示したように、補間ライン221の上下の実ライン間の相関を考慮した局所相関値と、その局所相関値に基づいた累積相関値のみが計算される。局所相関値には、背景に属する画素同士の強い相関のみが反映され、背景と横線Hとの相関は反映されない。
一方、第二の実施形態では、補間済み画素m1を参照するので、画素m1が適切に補間されていれば、空間相関値rel_skewは、背景と横線Hとの相関をも反映した値となる。図18の場合は、背景と横線Hの画素値に大きな差があるので、rel_skewの値もそれに応じて大きくなり、rel_skewは、対象画素Tの近傍における空間相関が小さいことを適切に示す。以上のとおり、元画像Pによっては、補間済み画素m1を
考慮することによって、より適切に空間相関を表す空間相関値が得られる。適切な空間相関値を得ることにより、適切な補間が行われることについては、図24とあわせて後述する。
次に、時間相関値計算部304が図16のステップS507で計算する時間相関値について図19〜22を参照して説明する。本実施形態では、先行フィールド画像および後続フィールド画像内の実画素に基づいて計算される第一の時間相関値と、先行フィールド画像内の補間済み画素と対象フィールド画像内の実画素とに基づいて計算される第二の時間相関値の双方が利用される。
第一の時間相関値の計算に用いられる実画素は、対象画素の位置に存在する画素である。または、対象画素の位置およびその近傍に存在する複数の実画素を第一の時間相関値の計算に用いてもよい。本実施形態における第一の時間相関値は、具体的にはrel_xtである。
第二に時間相関値の計算に用いられる補間済み画素と実画素の位置は同じであり、その位置は対象画素の位置の近傍である。本実施形態における第二の時間相関値は、具体的にはrel_ytとrel_yt2である。
次に、時間相関値のうち、rel_xtとrel_ytについて図19と図20を参照して説明する。
図19は、時刻t=tに対応する対象フィールド画像Fにおいて(x,y)に位置する対象画素Tを補間する場合の説明である。図19には、対象画素Tの近傍について、先行フィールド画像Fi−1、対象フィールド画像F、後続フィールド画像Fi+1を示した。図19では、実ライン上の実画素は実線で示し、補間ライン上の画素は点線で示した。
まず、時間相関値の計算に利用する画素について次のように定義する。
・先行フィールド画像Fi−1において、対象画素Tと同じ位置、すなわち(x,y)に位置する実画素と、その画素値を符号「b」により参照する。
・後続フィールド画像Fi+1において、対象画素Tと同じ位置、すなわち(x,y)に位置する実画素と、その画素値を符号「f」により参照する。なお、この「f」は式(61)〜(72)の関数fとは無関係である。
・対象フィールド画像Fにおいて、対象画素Tの上隣、すなわち(x,y−1)に位置する実画素と、その画素値を符号「u」により参照する。
・対象フィールド画像Fにおいて、対象画素Tの下隣、すなわち(x,y+1)に位置する実画素と、その画素値を符号「d」により参照する。
・先行フィールド画像Fi−1において、画素uと同じ位置、すなわち(x,y−1)に位置する補間済み画素と、その補間済み画素値を符号「u’」により参照する。
・先行フィールド画像Fi−1において、画素dと同じ位置、すなわち(x,y+1)に位置する補間済み画素と、その補間済み画素値を符号「d’」により参照する。
以上の定義を式で表すと、式(73)〜(78)のとおりである。
b=p(i-1, x, y) (73)
f=p(i+1, x, y) (74)
u=p(i, x, y-1) (75)
d=p(i, x, y+1) (76)
u’=q(i-1, x, y-1) (77)
d’=q(i-1, x, y+1) (78)
時間相関値rel_xtは、対象画素Tの位置における先行フィールド画像Fi−1と後続フィールド画像Fi+1との相関であり、式(79)により定義される。
rel_xt=|f-b| (79)
また、時間相関値rel_ytは、対象画素Tの上下の位置における先行フィールド画像Fi−1と対象フィールド画像Fとの相関であり、式(80)により定義される。
rel_yt=f(|u-u’|, |d-d’|) (80)
画素uとdは対象画素Tの近傍にあるので「近傍画素」と呼ぶことにすると、式(80)は、対象フィールド画像Fに含まれる近傍画素と、先行フィールド画像Fi−1中でその近傍画素と同じ位置にある補間済み画素との相関である。
式(80)の右辺の関数fとして、具体的には、例えば式(62)や(63)に示した関数を用いることができる。すなわち、式(80)の関数fは、空間相関値rel_skewの計算で用いた関数fと同様の機能を果たす。例えば、式(62)で定義される関数fを利用することにより、先行フィールド画像Fi−1と後続フィールド画像Fi+1との差をより敏感にrel_ytに反映することができる。
次に、時間相関値rel_xtに加えてrel_ytを計算する理由を、図20を参照して説明する。図20は、縦線が速く動く画像における時間相関値rel_xt、rel_ytの特徴を説明する図である。図20でも図19と同様に対象画素を×印で表しており、図20中の符号b、f、u、d、u’、d’は、図19と同様の画素を表している。
図20の例では、明るい灰色の背景の上を、幅が3画素しかない暗い灰色の縦線が、右から左へと移動する。この縦線は非常に速く動く。よって、先行フィールド画像Fi−1において画素u’、b、d’は背景に相当し、縦線はそれよりも右側にある。縦線は、対象フィールド画像Fにおいて画素u、対象画素、画素dの位置に移動してくる。そして、後続フィールド画像Fi+1において縦線は画素fよりも左に移動してしまい、画素fは背景に相当する。
この場合、画素fとbはともに背景に相当するので、時間相関値rel_xtは小さな値であり、対象画素の位置において先行フィールド画像Fi−1と後続フィールド画像Fi+1との相関が大きいことを表す。よって、仮に静動判定部206がrel_xtのみに基づいて静動判定をするならば、時刻tの対象画素の位置では静止と判断されてしまう。
しかし、図20に示すとおり、実際には時刻tの対象画素の位置には非常に速い動きが存在する。時間相関値rel_ytは、図20に示したような動きを検出するためのものである。
ここでは説明を簡単にするために、画素u’とd’が適切に補間されたと仮定する。すると、|u−u’|と|d−d’|の両者とも大きな値となるので、時間相関値rel_ytも大きな値となる。つまり、rel_ytは、対象画素の上下の、少なくとも一方の位置において、先行フィールド画像Fi−1と対象フィールド画像Fとの相関が小さいことを示す。相関が小さいことから、時刻tの対象画素の近傍での動きが検出可能である。
ただし、時間相関値としてrel_ytのみを用いるのではなく、rel_xtとre
l_ytの双方を相補的に用いることが望ましい。なぜなら、rel_ytは、上記のように速い動きを検出可能とするのでrel_xtよりも時間分解能に優れているが、垂直分解能はrel_xtよりも劣るためである。つまり、rel_xtの計算に用いる画素の広がりは、垂直方向すなわちy方向に1画素分しかないが、rel_ytの計算に用いる画素は、垂直方向に3画素分の範囲に存在する。そのため、rel_ytの垂直分解能はrel_xtよりも劣る。
次に、時間相関値のうち、rel_yt2について図21A、21B、22を参照して説明する。前記のとおり、rel_yt2は仮補間方向dirに応じて計算方法が異なる。図21Aはdir=r2の場合を示し、図21Bはdir=r3の場合を示す。この二つの場合について順に説明した後、一般的な場合について説明し、その後で、図22を参照してrel_yt2の意義を説明する。
図21Aは、時刻t=tに対応する対象フィールド画像Fにおいて(x,y)に位置する対象画素Tを補間する場合を表す。図19には、対象画素Tの近傍について、先行フィールド画像Fi−1と対象フィールド画像Fを示した。
まず、dir=r2の場合に時間相関値rel_yt2の計算に利用する画素について次のように定義する。なお、次の定義において図19と同じ符号u、d、u'、d'が使われるが、図19の場合とは別の意味を持っていることに注意されたい。
・対象フィールド画像Fにおいて、上実ライン上の、対象画素Tから見てr2方向の位置、すなわち(x+1,y−1)にある実画素と、その画素値を、符号「u」により参照する。
・対象フィールド画像Fにおいて、下実ライン上の、対象画素Tから見てr2方向と逆方向の位置、すなわち(x−1,y+1)にある実画素と、その画素値を、符号「d」により参照する。
・先行フィールド画像Fi−1において、画素uと同じ位置、すなわち(x+1,y−1)に位置する補間済み画素と、その補間済み画素値を符号「u’」により参照する。
・先行フィールド画像Fi−1において、画素dと同じ位置、すなわち(x−1,y+1)に位置する補間済み画素と、その補間済み画素値を符号「d’」により参照する。
以上の定義を式で表すと、式(81)〜(84)のとおりである。
u=p(i, x+1, y-1) (81)
d=p(i, x-1, y+1) (82)
u’=q(i-1, x+1, y-1) (83)
d’=q(i-1, x-1, y+1) (84)
このように定義された画素uとdの位置は、図5と比較すれば明らかなとおり、r2方向に対応する。よって、補間済み画素u’とd’の位置も、r2方向に対応する。
また、図21Aは、先行フィールド画像Fi−1と対象フィールド画像Fの一部を、xyt座標系を使って3次元的に示した模式図310を含む。模式図310では、便宜的に各画素を立方体のように表示している。
dir=r2のときの時間相関値rel_yt2は式(85)のとおりである。dir=r2の場合、式(81)〜(84)で定義された画素値が式(85)で使われる。
rel_yt2=f(|u-u’|, |d-d’|) (85)
式(85)における関数fとして、例えば式(62)や(63)に示した関数を用いる
ことができる。すなわち、式(85)における関数fは式(80)における関数fと同様の機能を果たす。
時間相関値rel_yt2は、仮補間方向dirに応じた、対象画素Tとの特定の相対位置にある画素を用いて計算される点で、空間相関値rel_skewに似ている。また、時間相関値rel_yt2は、特定の位置における先行フィールド画像Fi−1と対象フィールド画像Fとの相関を示す点で、時間相関値rel_ytに似ている。つまり、rel_ytと同様に、rel_yt2も、対象フィールド画像Fに含まれる近傍画素と、先行フィールド画像Fi−1中でその近傍画素と同じ位置にある補間済み画素との相関である。
次に、図21Bを参照して、dir=r3の場合の時間相関値rel_yt2について説明する。図21Bは図21Aと似ている点が多いので、共通点については適宜説明を省略する。
まず、dir=r3の場合に時間相関値rel_yt2の計算に利用する画素について、次のように定義する。なお、次の定義において図5などと同様の符号u1、u2、d1、d2が使われるが、図5などとは別の意味を持っていることに注意されたい。
・対象フィールド画像Fにおいて、上実ライン上の、対象画素Tから見てr3方向の位置は座標(x+1.5,y−1)である。この位置を挟んで左右に隣接した二つの画素をそれぞれ、符号「u1」と「u2」により参照する。また、画素と同じ符号で画素値も参照する。すなわち、画素u1は(x+1,y−1)に位置する実画素であり、画素u2は(x+2,y−1)に位置する実画素である。
・対象フィールド画像Fにおいて、下実ライン上の、対象画素Tから見てr3方向の逆方向の位置は座標(x−1.5,y+1)である。この位置を挟んで左右に隣接した二つの画素をそれぞれ、符号「d1」と「d2」により参照する。また、画素と同じ符号で画素値も参照する。すなわち、画素d1は(x−2,y+1)に位置する実画素であり、画素d2は(x−1,y+1)に位置する実画素である。
・先行フィールド画像Fi−1において、画素u1と同じ位置、すなわち(x+1,y−1)に位置する補間済み画素と、その補間済み画素値を符号「u1’」により参照する。
・先行フィールド画像Fi−1において、画素u2と同じ位置、すなわち(x+2,y−1)に位置する補間済み画素と、その補間済み画素値を符号「u2’」により参照する。
・先行フィールド画像Fi−1において、画素d1と同じ位置、すなわち(x−2,y+1)に位置する補間済み画素と、その補間済み画素値を符号「d1’」により参照する。
・先行フィールド画像Fi−1において、画素d2と同じ位置、すなわち(x−1,y+1)に位置する補間済み画素と、その補間済み画素値を符号「d2’」により参照する。
以上の定義を式で表すと、式(86)〜(93)のとおりである。
u1=p(i, x+1, y-1) (86)
u2=p(i, x+2, y-1) (87)
d1=p(i, x-2, y+1) (88)
d2=p(i, x-1, y+1) (89)
u1’=q(i-1, x+1, y-1) (90)
u2’=q(i-1, x+2, y-1) (91)
d1’=q(i-1, x-2, y+1) (92)
d2’=q(i-1, x-1, y+1) (93)
このように定義された画素u1、u2、d1、d2の位置は、図5と比較すれば明らかなとおり、r3方向に対応する。よって、補間済み画素u1’、u2’、d1’、d2’の位置も、r3方向に対応する。また、図21Aと同様に図21Bも、xyt座標系を使った模式図311を含む。
dir=r3のときの時間相関値rel_yt2は式(94)のとおりである。dir=r3の場合、式(86)〜(93)で定義された画素値が式(94)で使われる。
rel_yt2=f((|u1-u1’|+|u2-u2’|)/2, (|d1-d1’|+|d2-d2’|)/2) (94)
式(94)における関数fは、式(85)の関数fと同一の関数である。
式(94)から分かるように、dir=r3のとき、r3方向に対応する特定の四つの位置(x+1,y−1)、(x+2,y−1)、(x−2,y+1)、(x−1,y+1)について、それぞれ先行フィールド画像Fi−1と対象フィールド画像Fとの相関|u1−u1’|、|u2−u2’|、|d1−d1’|、|d2−d2’|が計算される。そして、対象画素Tの近傍の上実ラインにおける時間的な相関として、本実施形態では、|u1−u1’|と|u2−u2’|の平均が計算され、関数fに第一引数として与えられる。同様に、対象画素Tの近傍の下実ラインにおける時間的な相関として、|d1−d1’|と|d2−d2’|の平均が計算され、関数fに第二引数として与えられる。その結果、仮補間方向dirに対応する特定の位置における、先行フィールド画像Fi−1と対象フィールド画像Fとの相関であるrel_yt2が計算される。
次に、図21Aと図21Bでの説明を一般化して、r2方向やr3方向以外の方向についてのrel_yt2の計算の仕方を説明する。なお、以下ではmが1以上の整数であるとする。
dir=rjでありj=2mのとき、rel_yt2は、式(81)〜(84)を次の式(95)〜(98)に置き換えて式(85)により計算される。
u=p(i, x+m, y-1) (95)
d=p(i, x-m, y+1) (96)
u’=q(i-1, x+m, y-1) (97)
d’=q(i-1, x-m, y+1) (98)
同様に、dir=ljでありj=2mのとき、rel_yt2は、式(81)〜(84)を次の式(99)〜(102)に置き換えて式(85)により計算される。
u=p(i, x-m, y-1) (99)
d=p(i, x+m, y+1) (100)
u’=q(i-1, x-m, y-1) (101)
d’=q(i-1, x+m, y+1) (102)
dir=rjでありj=2m−1のとき、rel_yt2は、式(86)〜(93)を次の式(103)〜(110)に置き換えて式(94)により計算される。
u1=p(i, x+m-1, y-1) (103)
u2=p(i, x+m, y-1) (104)
d1=p(i, x-m, y+1) (105)
d2=p(i, x-m+1, y+1) (106)
u1’=q(i-1, x+m-1, y-1) (107)
u2’=q(i-1, x+m, y-1) (108)
d1’=q(i-1, x-m, y+1) (109)
d2’=q(i-1, x-m+1, y+1) (110)
同様に、dir=ljでありj=2m−1のとき、rel_yt2は、式(86)〜(93)を次の式(111)〜(118)に置き換えて式(94)により計算される。
u1=p(i, x-m, y-1) (111)
u2=p(i, x-m+1, y-1) (112)
d1=p(i, x+m-1, y+1) (113)
d2=p(i, x+m, y+1) (114)
u1’=q(i-1, x-m, y-1) (115)
u2’=q(i-1, x-m+1, y-1) (116)
d1’=q(i-1, x+m-1, y+1) (117)
d2’=q(i-1, x+m, y+1) (118)
なお、図5から明らかなように、c方向は、r0方向と見なすこともでき、l0方向と見なすこともできる。よって、式(95)〜(98)においてm=0を代入すれば、dir=cのときのrel_yt2を式(85)により計算することができる。
以上の式に基づいて、どの仮補間方向dirに対しても時間相関値計算部304は時間相関値rel_yt2を計算することができる。
次に、rel_yt2を計算する理由を、図22を参照して説明する。図22は図20と類似の図である。また、図22はdir=r2の場合の例であり、符号u、d、u’、d’は図21Aと同様の画素を表している。なお、×印で表した対象画素、画素b、画素fは、図19と同様である。
図22の例では、明るい灰色の背景の上を、幅が3画素しかない暗い灰色の斜めの線が、右から左へと移動する。この斜めの線はr2方向と平行であり、非常に速く動く。よって、先行フィールド画像Fi−1において画素u’、b、d’は背景に相当し、斜めの線はそれよりも右側にある。斜めの線は、対象フィールド画像Fにおいて画素u、対象画素、画素dの位置に移動してくる。そして、後続フィールド画像Fi+1において斜めの線は画素fよりも左に移動してしまい、画素fは背景に相当する。
この場合、画素fとbはともに背景に相当するので、時間相関値rel_xtは小さな値であり、対象画素の位置において先行フィールド画像Fi−1と後続フィールド画像Fi+1との相関が大きいことを表す。よって、仮に静動判定部206がrel_xtのみに基づいて静動判定をするならば、時刻tの対象画素の位置では静止と判断されてしまう。
しかし、図22に示すとおり、実際には時刻tの対象画素の位置には非常に速い動きが存在する。時間相関値rel_yt2は、図22に示したような動きを検出するためのものである。
ここでは説明を簡単にするために、画素u’とd’が適切に補間されたと仮定する。すると、|u−u’|と|d−d’|の両者とも大きな値となるので、時間相関値rel_yt2も大きな値となる。この場合、rel_yt2は、仮補間方向dirに応じて決まる、対象画素の斜め上または斜め下の双方の位置において、先行フィールド画像Fi−1と対象フィールド画像Fとの相関が小さいことを示す。相関が小さいことから、時刻tの対象画素の近傍での動きが検出可能である。
このように、rel_yt2はrel_ytと同様の高い時間分解能を有する。一方、rel_ytと同様にrel_yt2の垂直分解能はrel_xtよりも劣る。よって、rel_yt2もrel_xtと相補的に用いることが望ましい。
次に、図16のステップS508で静動判定部206が行う静動判定について説明する。静動判定部206は、時間相関値計算部304から時間相関値rel_xt、rel_yt、rel_yt2を受け取る。静動判定部206は、予め決められた閾値timethと3種類の時間相関値とをそれぞれ比較し、その結果に基づいて、時刻tにおいて対象画素の近傍に動きがあるか否かを判定する。具体的には、本実施形態では、式(119)〜(121)のすべてが成立するときに静動判定部206は静止と判定する。
rel_xt < timeth (119)
rel_yt < timeth (120)
rel_yt2 < timeth (121)
一般的に述べるなら、式(119)〜(121)は、異なるフィールド画像において同じ位置にある画素同士の相関が大きい場合に成立する。すなわち、これらの式は、動きがまったくないか、わずかな動きしかないために、フィールド間の相関が大きい場合に成立する。よって、本実施形態では、式(119)〜(121)のすべてが成立するときに静止と判定され、それ以外の場合に動きがあると判定される。
なお、式(119)〜(121)のすべてが成立するという条件は厳しい条件である。このように厳しい条件を設けた理由は、図16のステップS508で静止と判定されるとステップS510でフィールド間補間が行われ、対象フィールド画像F内の画素が補間用画素として利用されないためである。一方、ステップS508で動きが検出された場合は、フィールド間補間とフィールド内補間の両方の要素を含んだ混合補間がステップS509で行われる。よって、一方の要素しか含まないステップS510の処理は、厳しい条件を満たして、フィールド間補間が適切であることの確度が高い場合にのみ、行うようにしている。
また、本実施形態では式(119)〜(121)のすべてにおいて同じ閾値timethを利用しているが、別の実施形態では、時間相関値ごとに異なる閾値とそれぞれ比較してもよい。
次に、図16のステップS509で混合補間部302が実行する混合補間の詳細を、図23のフローチャートを参照しながら説明する。図23は、第一の実施形態におけるフィールド内補間を表す図8と同様の過程を含む。
ステップS601において、フィールド内補間用画素決定部209が、仮補間方向dirに対応する局所相関値min_relを取得する。これは、図8のステップS402と同様である。
第一の実施形態では、図8のステップS402の直前のステップS401において、累積相関値が最小となる相関計算方向dirが既に選択されている。一方、第二の実施形態では、図23の処理の実行前、すなわち図16のステップS505において、累積相関値が最小となる相関計算方向dirが仮補間方向として既に選択されている。いずれも、dirは累積相関値が最小となる方向である。よって、ステップS601はステップS402とまったく同様である。
ステップS601の後、処理はステップS602に移行するが、ステップS602、S
603、S604はそれぞれ、図8のステップS403、S404、S405と同様なので、説明を省略する。ステップS603またはS604の実行後、処理はステップS605に移行する。
ステップS605では、フィールド内補間画素値計算部210が、図8のステップS406と同様にして、対象画素をフィールド内補間する場合の画素値g_sを計算する。以後、画素値g_sを「フィールド内補間値」と呼ぶ。
また、ステップS605では、フィールド間補間部211が、対象画素をフィールド間補間する場合の画素値g_tをステップS510と同様にして計算する。以後、画素値g_tを「フィールド間補間値」と呼ぶ。フィールド内補間値g_sとフィールド間補間値g_tの双方の計算後、処理はステップS606に移行する。
ステップS606において、重み係数計算部305が重み係数w_tとw_sを計算する。重み係数w_tとw_sはいずれも、値が0以上1以下であり、両者の和が1となるように定義されている。具体的には、ステップS603またはS604において決定されたフィールド内補間方向によって、重み係数w_tとw_sの計算方法が異なる。
フィールド間補間方向がc方向の場合の重み係数w_tとw_sは、それぞれ式(122)と(123)により定義される。
式(122)と(123)における「k2」は、予め定められた定数であり、空間相関値の重み係数への寄与を調節する係数である。経験的には、k2の値は通常は1.0が望ましい。
また、式(122)と(123)における「ε」も、予め定められた定数である。εは、時間相関値と空間相関値がともに0の場合に分母が0になるのを防ぐために足される値である。よって、εには、例えば0.01などの小さな値が設定される。
重み係数w_tとw_sの計算に用いられる時間相関値rel_xt、rel_ytおよび空間相関値rel_xyは、その定義から非負である。したがって、上記のk2とεの意味から当然に、k2とεは非負である。よって、重み係数w_tとw_sも非負である。また、定義から明らかに、重み係数w_tとw_sの和は1である。
次に、式(122)と(123)の意味を説明する。上記のとおり、εは計算の都合上導入された定数なので、式の意味を考えるときにはε=0と仮定してかまわない。また、上記のとおり、k2=1であることが好ましいのでk2=1と仮定する。この仮定によれば、式(122)の重み係数w_tは時間相関値と空間相関値の和に占める空間相関値の割合を示し、式(123)の重み係数w_sは時間相関値と空間相関値の和に占める時間
相関値の割合を示すことが理解されるだろう。
続いて、フィールド間補間方向が仮補間方向と同じくdirである場合の重み係数w_tとw_sについて説明する。この場合、重み係数w_tとw_sはそれぞれ式(124)と(125)により定義される。
式(124)は、式(122)において、空間相関値rel_xyを空間相関値rel_skewに置き換え、時間相関値rel_ytを時間相関値rel_yt2に置き換えて得られる式である。式(125)は、式(123)において同様の置き換えをすることにより得られる式である。また、rel_skewとrel_yt2も、その定義から非負である。
よって、式(124)と(125)において、k2やεは上記と同様であり、重み係数w_tとw_sは非負である。また、定義から明らかに、この場合も重み係数w_tとw_sの和は1である。
ところで、c方向という特定の方向から任意の方向dirへの拡張という意味を「一般化」と言うことにすると、上記の説明から明らかなとおり、rel_skewはrel_xyの一般化であり、rel_yt2はrel_ytの一般化である。よって、式(124)と(125)は、c方向という特定の方向に対応する式(122)と(123)を、一般の方向dir用に拡張した式だと見なすことが可能である。よって、式(124)の重み係数w_tも時間相関値と空間相関値の和に占める空間相関値の割合を示し、式(125)の重み係数w_sも時間相関値と空間相関値の和に占める時間相関値の割合を示すと言うことができる。
以上の式にしたがって重み係数計算部305が重み係数w_tとw_sを計算すると、処理はステップS607に移行する。ステップS607では、混合補間画素値計算部306が式(126)にしたがって混合補間値g_outを計算し、その混合補間値g_outで対象画素を補間する。そして、図23の処理が終了する。
g_out=w_t・g_t+w_s・g_s (126)
次に、上記の混合補間における、時間相関値および空間相関値と重み係数w_t、w_sとの関係を、図24を参照して説明する。図24の左の表は、時間相関値と空間相関値の値の組み合わせを示し、右の表は、その組み合わせに対応する重み係数の値の大きさを示す。
w_tとw_sは非負で、両者の和が1なので、図24の右の表では、0に近い値を「小」、0.5に近い値を「中」、1に近い値を「大」と表す。
また、第二の実施形態では、時間相関値と空間相関値の双方とも相関が大きいほど値が
小さい。そして、上記のrel_xt、rel_yt、rel_yt2、rel_xy、rel_skewの定義から明らかなとおり、これらの値が取りうる最小値と最大値は共通である。すなわち、その共通の最小値は0である。また、上記(e)の仮定から、画素値は0以上100以下なので、二つの画素の画素値の差の絶対値は、最大で100である。よって、上記の共通の最大値はいずれも100である。よって、以下のことが成り立つ。
時間相関値と空間相関値がともに小さいか、ともに大きい場合、すなわち、双方の値が同程度の場合、式(122)〜(125)より、重み係数w_tとw_sはともに0.5に近い値となる。よって、式(126)より、混合補間値g_outは、フィールド間補間値g_tとフィールド内補間値g_sの平均値に近い値となる。
時間相関値が小さく、空間相関値が大きい場合、すなわち、時間相関が大きく、空間相関が小さい場合、式(122)〜(125)より、w_tが大きく、w_sが小さい。よって、式(126)より、混合補間値g_outは、フィールド間補間値g_tに近い値となる。つまり、時間相関が大きい場合の混合補間は、フィールド間補間に近い補間である。
一方、時間相関値が大きく、空間相関値が小さい場合、すなわち、時間相関が小さく、空間相関が大きい場合、式(122)〜(125)より、w_tが小さく、w_sが大きい。よって、式(126)より、混合補間値g_outは、フィールド内補間値g_sに近い値となる。つまり、空間相関が大きい場合の混合補間は、フィールド内補間に近い補間である。
例えば、図18の例では、空間相関値の一種である局所相関値c(x)、r(x、j)、l(x、j)には反映されない空間相関が、別の空間相関値rel_skewには反映される。つまり、図18の例では、rel_skewの値が大きい。よって、図24より、w_sはw_tよりも小さいか、w_tと同程度である。よって、対象画素Tに対して、中間的な補間あるいはフィールド間補間に近い補間がなされる。図18は、フィールド内補間に近い補間が不適切な例であるから、以上より、不適切な補間を防ぐことができたと理解されるだろう。
以上のようにして計算される混合補間値g_outは、時間的な要素、すなわちフィールド間補間の要素と、空間的な要素、すなわちフィールド内補間の要素をともに含む。そして、時間的な要素と空間的な要素は、時間相関値と空間相関値の大小関係に応じて、重み係数w_tとw_sにより重みづけが調節されている。よって、フィールド間補間とフィールド内補間とを二者択一で決定する場合に比べて、混合補間を行う第二の実施形態では、画面のちらつきを防ぐことができ、より自然なプログレッシブ画像を得ることが可能である。
ところで、本発明による補間方法の決定は、図25のような一般的なコンピュータにより実行されてもよい。図1の補間方法決定装置100、図3の画素値補間装置200、図15の画素値補間装置300はいずれも、図25のコンピュータにより実現することができる。すなわち、図25のコンピュータは、上記のフローチャートに示した処理を行うことにより、補間方法決定装置100、画素値補間装置200、または画素値補間装置300として機能する。
図25のコンピュータは、CPU(Central Processing Unit)401、ROM(Read Only Memory)402、RAM(Random Access Memory)403、通信インターフェイス404、入力装置405、出力装置406、記憶装置407、可搬型記憶媒体410の駆
動装置408を備え、これらのすべてがバス409によって接続されている。
また、図25のコンピュータは通信インターフェイス404を介してネットワーク411に接続されている。通信インターフェイス404は、有線通信用および/または無線通信用のインターフェイスである。ネットワーク411は、LAN(Local Area Network)やインターネットなど任意のコンピュータネットワークでもよく、テレビ放送網でもよい。ネットワーク411がテレビ放送網のとき、通信インターフェイス404は、アンテナとチューナーを含む。
入力装置405は、例えばマウスなどのポインティングデバイスやキーボードである。出力装置406は、例えば液晶ディスプレイやCRTディスプレイなどの表示装置である。例えば、第一または第二の実施形態の処理によってIP変換されて得られたプログレッシブ画像が、出力装置406に出力されてもよい。
記憶装置407は、ハードディスクなどの磁気ディスク装置でもよく、書き換え可能な不揮発性メモリなど他の種類の記憶装置でもよい。
記憶装置407またはROM402には、本発明によるプログラム、例えば、図4、7、8の処理または図16、7、23の処理をコンピュータに実行させるプログラムが格納されている。そのプログラムをCPU401が実行することにより、図25のコンピュータが補間方法決定装置100、画素値補間装置200、画素値補間装置300のいずれかとして動作する。
また、入力画像のデータは、予め記憶装置407に蓄積されていてもよく、ネットワーク411と通信インターフェイス404を介して画像提供者413から送られてきてもよい。あるいは、入力画像のデータを格納した可搬型記憶媒体410が駆動装置408にセットされて、入力画像のデータがRAM403に読み出されてもよい。なお、入力画像は画像信号により表される静止画でもよく、映像信号により表される動画でもよい。
格納部101や201はRAM403に相当する。ただし、格納部101や201の一部をRAM403により実現し、残りの部分を記憶装置407により実現することも可能である。なお、図1の格納部101以外の機能ブロック、および図3や図15の格納部201以外の機能ブロックは、CPU401に相当する。
本発明によるプログラムは、プログラム提供者412からネットワーク411および通信インターフェイス404を介して提供され、例えば記憶装置407に格納され、CPU401によって実行されてもよい。また、可搬型記憶媒体410に本発明によるプログラムが格納され、可搬型記憶媒体410が駆動装置408にセットされ、格納されたプログラムがRAM403にロードされてCPU401によって実行されてもよい。可搬型記憶媒体410としては、CD(Compact Disc)やDVD(Digital Versatile Disk)などの光ディスク、光磁気ディスク、フレキシブルディスクなど様々な形式の記憶媒体を使用することができる。
なお、本発明は上記の実施形態に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べるが、もちろん、以下に述べる以外の変形も可能である。
変形の第一の観点は、カラー画像への適用である。第一および第二の実施形態では、説明を簡単にするため、上記(e)のとおり、各画素が一つの画素値により表されると仮定していた。この仮定は、輝度を画素値とするグレースケールのモノクロ画像の場合に成立する。
カラー画像の場合、各画素は複数の画素値により表される。例えば、一般的なコンピュ
ータのディスプレイで用いられるRGB表色系では、赤を表すR、緑を表すG、青を表すBの三つの画素値により各画素が表される。また、テレビ放送で用いられるYCbCr表色系では、輝度信号Yと、二つの色差信号CbおよびCrの合計三つの画素値により各画素が表される。
第一および第二の実施形態を例えば次のように変形することにより、入力画像がカラー画像の場合も、本発明によって補間方法を決定することが可能である。
最も簡単な変形例は、補間方法の決定に1種類の画素値のみを用いる方法である。補間方法の決定に用いる画素値は人間の眼の特性に合わせて選択することが望ましい。人間の眼は色の差よりも明るさの差に敏感であり、最も明るさを感じる色は緑色である。よって、YCbCr表色系の場合には輝度信号Yを選択し、RGB表色系の場合には緑を表すGを選択することが好ましい。
以下、YCbCr表色系の場合を例に説明する。この変形例では、空間相関値や時間相関値の計算、静動判定、フィールド内補間方向の決定、重み係数の計算は、画素値Yのみを用いて行われる。対象画素の画素値の計算、つまり第一の実施形態における図8のステップS406または第二の実施形態における図23のステップS605とS607では、画素値Y、Cb、Crのそれぞれについて計算が行われる。
入力画像がカラー画像の場合の別の変形例では、複数種類の画素値のそれぞれについて空間相関値や時間相関値の計算が行われる。例えば、式(15)の局所相関値c(x)のかわりに、画素値Y、Cb、Crにそれぞれ基づいた局所相関値c_Y(x)、c_Cb(x)、c_Cr(x)の計算が行われる。そして、この三つの局所相関値のうちの最大値をc(x)として選択する。なお、一般には輝度信号Yと色差信号Cb、Crはビット数が異なる。よって、この例および以下の例では、この三つの局所相関値は、ビット数の違いに応じたスケール変換を行って得られる値であると仮定している。
あるいは、画素値Yを画素値CbやCrよりも優先的に考慮するために、適当な重み係数w1、w2、w3を予め定めておき、w1・c_Y(x)とw2・c_Cb(x)とw3・c_Cr(x)とを比較してもよい。そして、例えばこのうちのw2・c_Cb(x)が最大の場合、c_Cb(x)の値をc(x)として用いてもよい。なお、0<w2,w3<w1なる関係を満たす重み係数を用いることにより、画素値Yを優先的に考慮することができる。
このようにして計算された局所相関値から累積相関値を計算する方法は、第一および第二の実施形態と同様である。また、上記でc_Y(x)、c_Cb(x)、c_Cr(x)に基づいてc(x)を計算したのと同様にして、他の空間相関値や時間相関値も、複数種類の画素値のそれぞれについての計算に基づいて計算される。その結果を用いた、静動判定、フィールド内補間方向の決定、重み係数の計算は、第一および第二の実施形態と同様である。対象画素の画素値の計算は、複数種類の画素値のそれぞれについて行われる。
変形の第二の観点は、二つの画素の相関の計算方法である。空間相関値や時間相関値は、二つの画素の相関値に基づいて計算されるが、上記では、二つの画素値の差分の絶対値を、二つの画素の相関値として用いている。しかし、例えば、二つの画素値の差分の2乗を二つの画素の相関値として用いてもよく、他の方法で二つの画素の相関を定義してもよい。上記の定義によれば、各種相関値は、相関が大きいほど値が小さいが、相関が大きいほど値が大きくなるような定義を用いてもよい。
変形の第三の観点は、局所相関値の計算に用いる画素の数である。図5に示したとおり、第一および第二の実施形態では、上実ライン220上の1画素と下実ライン222上の
1画素、または上実ライン220上の2画素と下実ライン222上の2画素を用いて局所相関値を計算する。しかし、画像のノイズが局所相関値に及ぼす影響を少なくするために、上記の「1画素」を3画素や5画素に拡張し、上記の「2画素」を4画素や6画素に拡張してもよい。
例えば、式(16)を式(127)〜(129)のいずれかに置き換えることが、上記の2画素から4画素への拡張に相当する。式(129)に示した係数1/8や3/8は一例である。
r(x, 1)=|(u1+u2+u3+u4)/4−(d0+d1+d2+d3)/4| (127)
r(x, 1)=(|u1-d0|+|u2-d1|+|u3-d2|+|u4-d3|)/4 (128)
r(x, 1)=(1/8)|u1-d0|+(3/8)|u2-d1|+(3/8)|u3-d2|+(1/8)|u4-d3| (129)
また、上記は水平方向の拡張だが、垂直方向の拡張も可能である。すなわち、上実ライン220よりも上の実ラインや、下実ライン222よりも下の実ラインをも考慮して、局所相関値を計算してもよい。例えば、式(15)を式(130)に置き換えてもよく、式(130)の右辺の三つの項に、それぞれ適当な重み係数を掛けてもよい。c方向以外の方向についても同様に、上実ライン220よりも上の実ラインや、下実ライン222よりも下の実ラインをも考慮する拡張をして、局所相関値を定義することが可能である。
c(x)=|p(i, x, y-3)-p(i, x, y-1)|+
|p(i, x, y-1)-p(i, x, y+1)|+
|p(i, x, y+1)-p(i, x, y+3)| (130)
変形の第四の観点は、時間相関値rel_xtやrel_ytの計算に用いる画素の数である。図19に示したように、対象画素Tの座標が(x,y)のとき、第二の実施形態では、(x,y)に位置する画素の画素値に基づいてrel_xtが計算され、(x,y−1)と(x,y+1)に位置する画素の画素値に基づいてrel_ytが計算される。つまり、rel_xtやrel_ytの計算に用いられる画素の水平方向の広がりは、1画素である。この「1画素」を3画素や5画素に拡張してもよい。
例えば、式(79)を式(131)に置き換えることや、式(80)を式(132)に置き換えることが1画素から3画素への拡張に相当する。なお、式(131)と(132)の関数fは、最大値を返す関数や、平均値を返す関数などが好ましい。
rel_xt=f(|p(i-1, x-1, y)-p(i+1, x-1, y)|+
|p(i-1, x, y)-p(i+1, x, y)|+
|p(i-1, x+1, y)-p(i+1, x+1, y)|) (131)
rel_yt=f(|p(i, x-1, y-1)-q(i-1, x-1, y-1)|,
|p(i, x , y-1)-q(i-1, x , y-1)|,
|p(i, x+1, y-1)-q(i-1, x+1, y-1)|,
|p(i, x-1, y+1)-q(i-1, x-1, y+1)|,
|p(i, x , y+1)-q(i-1, x , y+1)|,
|p(i, x+1, y+1)-q(i-1, x+1, y+1)|) (132)
変形の第五の観点は、相関計算方向として考慮する方向の数である。この数は、実施形態に固有の定数でもよく、ユーザが予め指定してもよい。例えば図5には9方向を示したが、相関計算方向として考慮する方向の数は、9より多くても少なくてもよい。しかし、あまり多くの相関計算方向を考慮しても、それほど意味がない。
その理由は、次のとおりである。例えばr5方向やr6方向などの局所相関値は、式(30)や(31)から分かるように、かなり離れた画素間の相関を表す。一般的には、大きく離れた画素間の相関が大きいことは少ない。また、r6方向やl6方向は、傾きが緩
やかで、水平に近い。例えば図26に示したような45度程度の傾きの模様の場合、ジャギー発生が発生するとジャギーが目立ち、人間の眼には画像が劣化していると感じられる。しかし、水平に近い緩やかな傾きの模様では、従来の方法を用いても、それほど目立つジャギーは発生しない。したがって、緩やかな傾きについて過度に考慮しても、画質向上には寄与しない。
よって、相関計算方向として考慮する方向の数は任意だが、実験などから適切な数を定めることが望ましく、過度に多くの相関計算方向を考慮する必要はない。
変形の第六の観点は、空間相関値rel_skewの計算に用いる画素である。上記第三の観点と同様に画素数を増やす拡張をしてrel_skewを計算してもよい。また、図17には、相関計算方向ごとにrel_skewの計算に用いる画素を示したが、図17は好ましい一例を示したものである。rel_skewの計算に用いる画素は、仮補間方向dirに応じて、対象画素Tとの相対的な位置関係が特定されればよい。その位置関係が図17の例とは異なる実施形態も可能である。
変形の第七の観点は、累積相関値を累積する方向および範囲である。第一および第二の実施形態では、選択順序方向は「水平に左から右へ」という方向であり、この選択順序方向で指定される順序で、累積相関値も累積されている。しかし、別の実施形態では、選択順序方向が「水平に右から左へ」など、他の方向でもよい。
また、入力画像を複数のブロックに区切って、累積相関値を計算してもよい。つまり、a≦x≦bなる範囲を第jブロックとして、ブロックごとに補間方法の決定および補間を行ってもよい。この場合、例えば、複数のCPU401を備えるように図25を変形することにより、複数のブロックについて並列に処理を行うことが可能である。
なお、図12の累積相関値一覧表242に示したように、選択順序方向が「水平に左から右へ」という方向の場合、画像の左端付近および右端付近では累積相関値が計算不能となり、BIGという値になる。よって、このようにブロックに分割する場合は、隣接する二つのブロックのx座標の範囲が重なるように分割することが望ましい。
例えば、図12に示したように、相関計算方向として5方向を考慮する場合、ブロックの左端の2画素と右端の2画素に対応して、計算不能な累積相関値がある。よって、第jブロックとその左隣の第(j−1)ブロックは、x方向に少なくとも2画素分の範囲が重なることが望ましい。n画素分の重なりがあると仮定すると、この例では、第jブロックのうち、a≦x≦a+n−1なる範囲については局所相関値と累積相関値の計算のみが行われ、a+n≦x≦bなる範囲については画素の補間も行われる。
変形の第八の観点は、フィールド内補間方向の決定方法である。図8のステップS403や図23のステップS602で参照されるmin_relとc(x)はいずれも局所相関値だが、累積相関値に基づいてフィールド内補間方向を決定してもよい。例えば、ステップS403やS602において、方向dirに対応する累積相関値Min_relと累積相関値C(x)とに基づいた判定を行ってもよい。また、局所相関値と累積相関値の双方を用いて判定を行ってもよい。
変形の第九の観点は、本発明の適用対象である。第一および第二の実施形態では、仮定(a)のとおり、IP変換を適用対象としている。しかし、本発明の原理はIP変換以外にも適用可能である。具体的には、静止画または動画の拡大処理に本発明を適用することもできる。
画像の拡大処理は、既存の画素の間に新たな画素を挿入する処理であるとも言える。つ
まり、拡大後の画像のうち、一部の画素は、元の画像に存在する画素の画素値をそのまま継承した画素であり、残りの画素は、元の画像に存在する複数の画素の画素値に基づいて補間された画素である。よって、本発明をその補間に利用することが可能である。
例えば図5では、補間ライン221の上下のラインは実ラインだが、水平方向への拡大をともなう拡大処理では、すべての画素が実画素であるような水平方向のラインは存在しない。よって、対象画素の上隣と下隣の画素がいずれも実画素ではないかもしれない。この場合、例えば、図5で定義した局所相関値c(x)を計算することはできない。つまり、拡大処理に本発明を適用する場合は、実画素の分布に応じて適宜、各種空間相関値や時間相関値の定義を変える必要がある。
例えば、対象画素の位置を(x,y)と仮定し、(x−1,y−n)、(x+1,y+n)、(x+1,y−n)、(x−1,y+n)にそれぞれ実画素P1〜P4が存在すると仮定する。nが大きいほど、画素P1とP2を結ぶ方向、および画素P3とP4を結ぶ方向は垂直方向に近い。よって、それらの方向に対応する局所相関により、c方向の局所相関を近似して、例えば式(15)のかわりに式(133)によって局所相関値c(x)を計算してもよい。
c(x)=(|p(i, x-1, y-n)-p(i, x+1, y+n)|+
|p(i, x+1, y-n)-p(i, x-1, y+n)|)/2 (133)
ただし、nがあまり大きいと、画素P1〜P4と対象画素が離れすぎてしまう。よって、実験により適切なnの値の範囲を定めることが望ましい。
以上説明したことを概観すれば本発明は以下のような構成を備えるものである。
(付記1)
入力画像に存在せず、一直線上に位置する複数の画素のそれぞれの画素値を補間するための補間方法をコンピュータに決定させる画素値の補間方法決定プログラムであって、
指定された選択順序方向にしたがって順番に、前記複数の画素のうちの一つの画素を、前記補間方法を決定すべき対象画素として選択する対象画素選択ステップと、
指定された複数の相関計算方向のそれぞれについて、前記対象画素から該相関計算方向にある第一の画素の画素値と、該対象画素から該相関計算方向の逆方向にある第二の画素の画素値とに基づいて、前記相関計算方向に対応する局所相関値を計算する局所相関値計算ステップと、
前記複数の画素のうち前記選択順序方向にしたがった順番が先頭の画素である先頭画素に対して与えられる値に基づいて、該先頭画素から前記選択順序方向にしたがって逐次的に前記複数の画素のそれぞれに対して計算される相関値である累積相関値を、前記対象画素に対し、前記複数の相関計算方向のそれぞれについて、該相関計算方向に対応する前記局所相関値と、前記対象画素を選択する直前の前記選択ステップで選択した他の画素についての前記累積相関値とに基づいて計算する累積相関値計算ステップと、
前記複数の相関計算方向のそれぞれに対応する前記累積相関値に基づいて、前記複数の相関計算方向のうちの一つを選択する方向選択ステップと、
前記方向選択ステップで選択した前記相関計算方向に対応する前記局所相関値と前記累積相関値の少なくとも一方に基づいて、前記対象画素の補間のために用いる複数の画素を決定する補間用画素決定ステップと、
をコンピュータに実行させることを特徴とする画素値の補間方法決定プログラム。
(付記2)
前記対象画素と一つの前記相関計算方向の組み合わせに対応する前記第一の画素と前記第二の画素の個数は双方ともN≧1なるN個であり、
互いに対応する該第一の画素および該第二の画素は、前記対象画素からの距離が等しい位置にある、
ことを特徴とする付記1に記載の画素値の補間方法決定プログラム。
(付記3)
前記複数の相関計算方向の各々には、前記複数の相関計算方向のうち当該相関計算方向と近い一つ以上の相関計算方向および当該相関計算方向自体が関連方向として対応づけられており、
前記累積相関値計算ステップでは、前記相関計算方向の前記関連方向の各々に対応して前記他の画素について計算された複数の前記累積相関値に基づいて、前記対象画素についての前記相関計算方向に対応する前記累積相関値が計算される、
ことを特徴とする付記1に記載の画素値の補間方法決定プログラム。
(付記4)
前記累積相関値計算ステップでは、前記関連方向の各々に対応する複数の前記累積相関値のうち、最も相関が高い前記累積相関値が選択され、選択された該累積相関値と前記局所相関値とから、前記対象画素に対する前記累積相関値が計算される、
ことを特徴とする付記3に記載の画素値の補間方法決定プログラム。
(付記5)
前記方向選択ステップでは、複数の前記累積相関値のうち最も相関が高いことを示す前記累積相関値に対応する前記相関計算方向が選択される、
ことを特徴とする付記1に記載の画素値の補間方法決定プログラム。
(付記6)
前記選択順序方向が前記入力画像の水平方向または垂直方向であって、
前記相関計算方向の一つは前記選択順序方向と直角である、
ことを特徴とする付記1に記載の画素値の補間方法決定プログラム。
(付記7)
前記補間用画素決定ステップの決定は、さらに、前記選択順序方向と直角な前記相関値計算方向に対応する前記局所相関値にも基づく、
ことを特徴とする付記6に記載の画素値の補間方法決定プログラム。
(付記8)
前記入力画像がインターレース形式の動画のフィールド画像であり、
前記選択順序方向は、該フィールド画像に存在しないラインに沿った方向である、
ことを特徴とする付記1に記載の画素値の補間方法決定プログラム。
(付記9)
前記入力画像であって補間方法を決定する対象である対象フィールド画像の直前と直後の時刻にそれぞれ対応する先行フィールド画像および後続フィールド画像において、それぞれ前記対象画素の位置または該位置の近傍に存在する画素の画素値に基づいて第一の時間相関値を計算する第一の時間相関値計算ステップ
をさらに前記コンピュータに実行させることを特徴とする付記8に記載の画素値の補間方法決定プログラム。
(付記10)
前記対象画素または該対象画素の近傍が静止しているか動いているかを前記第一の時間相関値に基づいて判定する静動判定ステップをさらに前記コンピュータに実行させることを特徴とする付記9に記載の画素値の補間方法決定プログラム。
(付記11)
前記静動判定ステップで静止と判定された場合に、前記先行フィールド画像または前記後続フィールド画像において前記対象画素と同じ位置にある画素を、前記対象画素の補間に用いる画素として決定するフィールド間補間用画素決定ステップをさらに前記コンピュータに実行させることを特徴とする付記10に記載の画素値の補間方法決定プログラム。(付記12)
前記静動判定ステップで動いていると判定された場合に、前記方向選択ステップおよび前記補間用画素決定ステップによって、前記対象画素の補間に用いる前記複数の画素が決定されることを特徴とする付記10に記載の画素値の補間方法決定プログラム。
(付記13)
前記補間用画素決定ステップによって前記対象フィールド画像内の複数の画素を決定し、決定した該複数の画素の画素値に基づいてフィールド内補間値を計算するフィールド内補間値計算ステップと、
前記先行フィールド画像において前記対象画素と同じ位置にある画素と、前記後続フィールド画像において前記対象画素と同じ位置にある画素の少なくとも一方の画素値に基づいてフィールド間補間値を計算するフィールド間補間値計算ステップと、
前記フィールド内補間値および前記フィールド間補間値に基づいて前記対象画素に割り当てるべき混合補間値を計算する混合補間値計算ステップと、
をさらに前記コンピュータに実行させることを特徴とする付記9に記載の画素値の補間方法決定プログラム。
(付記14)
前記混合補間値計算ステップは、
第一の重み係数と第二の重み係数を計算する重み係数計算ステップと、
前記フィールド内補間値と前記第一の重み係数の積と、前記フィールド間補間値と前記第二の重み係数の積との和を、前記混合補間値として計算する重み付け和計算ステップと、
を含むことを特徴とする付記13に記載の画素値の補間方法決定プログラム。
(付記15)
前記対象フィールド画像において前記近傍内に存在する近傍画素の画素値と、前記先行フィールド画像において前記近傍画素と同じ位置にあって補間済みの補間済み画素の画素値とに基づいて、第二の時間相関値を計算する第二の時間相関値計算ステップを前記補間方法決定プログラムがさらに前記コンピュータに実行させる、
ことを特徴とする付記13に記載の画素値の補間方法決定プログラム。
(付記16)
前記複数の相関計算方向のそれぞれについて、該相関計算方向に対応する複数の前記近傍画素の前記位置が定められ、
前記第二の時間相関値計算ステップでは、前記方向選択ステップで選択された前記相関計算方向に対応する前記第二の時間相関値が計算される、
ことを特徴とする付記15に記載の画素値の補間方法決定プログラム。
(付記17)
前記複数の相関計算方向のそれぞれについて、前記対象フィールド画像において該相関計算方向に対応する複数の画素の位置が定められ、
該複数の画素は、前記対象フィールド画像に存在する画素と、前記対象フィールド画像に存在しない画素のうち以前の前記対象画素選択ステップで選択され画素値が補間された画素の双方を含み、
前記複数の画素の前記画素値に基づいて空間相関値を計算する空間相関値ステップを前記補間方法決定プログラムがさらに前記コンピュータに実行させる、
ことを特徴とする付記13に記載の画素値の補間方法決定プログラム。
(付記18)
前記入力画像が、拡大すべき画像であり、
前記入力画像に存在せず、拡大された画像に補われるべき複数の画素が、前記対象画素選択ステップにおいて順に選択される、
ことを特徴とする付記1に記載の画素値の補間方法決定プログラム。
(付記19)
入力画像に存在せず、一直線上に位置する複数の画素のそれぞれの画素値を補間するための補間方法を決定する画素値の補間方法決定装置であって、
指定された選択順序方向にしたがって順番に、前記複数の画素のうちの一つの画素を、前記補間方法を決定すべき対象画素として選択する対象画素選択手段と、
指定された複数の相関計算方向のそれぞれについて、前記対象画素から該相関計算方向
にある第一の画素の画素値と、該対象画素から該相関計算方向の逆方向にある第二の画素の画素値とに基づいて、前記相関計算方向に対応する局所相関値を計算する局所相関値計算手段と、
前記複数の画素のうち前記選択順序方向にしたがった順番が先頭の画素である先頭画素に対して与えられる値に基づいて、該先頭画素から前記選択順序方向にしたがって逐次的に前記複数の画素のそれぞれに対して計算される相関値である累積相関値を格納する格納手段と、
前記複数の相関計算方向のそれぞれについて、該相関計算方向に対応する前記局所相関値と、前記格納手段に格納されている、前記対象画素を選択する直前に選択した他の画素についての前記累積相関値とに基づいて、前記対象画素についての該相関計算方向に対応する前記累積相関値を計算し、前記格納手段に格納する累積相関値計算手段と、
前記複数の相関計算方向のそれぞれに対応する前記累積相関値に基づいて、前記複数の相関計算方向のうちの一つを選択する方向選択手段と、
前記方向選択手段が選択した前記相関計算方向に対応する前記局所相関値と前記累積相関値の少なくとも一方に基づいて、前記対象画素の補間のために用いる複数の画素を決定する補間用画素決定手段と、
を備える画素値の補間方法決定装置。
(付記20)
入力画像に存在せず、一直線上に位置する複数の画素のそれぞれの画素値を補間するための補間方法をコンピュータが決定する画素値の補間方法決定方法であって、
指定された選択順序方向にしたがって順番に、前記複数の画素のうちの一つの画素を、前記補間方法を決定すべき対象画素として選択する対象画素選択ステップと、
指定された複数の相関計算方向のそれぞれについて、前記対象画素から該相関計算方向にある第一の画素の画素値と、該対象画素から該相関計算方向の逆方向にある第二の画素の画素値とに基づいて、前記相関計算方向に対応する局所相関値を計算する局所相関値計算ステップと、
前記複数の画素のうち前記選択順序方向にしたがった順番が先頭の画素である先頭画素に対して与えられる値に基づいて、該先頭画素から前記選択順序方向にしたがって逐次的に前記複数の画素のそれぞれに対して計算される相関値である累積相関値を、前記対象画素に対し、前記複数の相関計算方向のそれぞれについて、該相関計算方向に対応する前記局所相関値と、前記対象画素を選択する直前の前記選択ステップで選択した他の画素についての前記累積相関値とに基づいて計算する累積相関値計算ステップと、
前記複数の相関計算方向のそれぞれに対応する前記累積相関値に基づいて、前記複数の相関計算方向のうちの一つを選択する方向選択ステップと、
前記方向選択ステップで選択した前記相関計算方向に対応する前記局所相関値と前記累積相関値の少なくとも一方に基づいて、前記対象画素の補間のために用いる複数の画素を決定する補間用画素決定ステップと、
を備えることを特徴とする画素値の補間方法決定方法。
本発明の原理を示す機能ブロック構成図である。 本発明の原理を示すフローチャートである。 第一の実施形態における画素値補間装置の機能ブロック構成図である。 第一の実施形態における補間処理のフローチャートである。 第一の実施形態における局所相関値を説明する図である。 第一の実施形態における累積相関値の計算の具体例を説明する図である。 第一の実施形態における局所相関値と累積相関値の計算のフローチャートである。 第一の実施形態におけるフィールド内補間のフローチャートである。 フィールド内補間による画素値の計算を説明する図である。 フィールド内補間方向の決定例を表す図である。 局所相関値によりフィールド内補間用画素を決定し補間を行う従来例を説明する図である。 第一の実施形態において累積相関値によりフィールド内補間用画素を決定し補間を行う例を説明する図である。 補間誤りが連鎖してしまう従来の補間方法の例である。 図13と同じ画像を第一の実施形態を変形した補間方法決定処理により処理した場合の図である。 第二の実施形態における画素値補間装置の機能ブロック構成図である。 第二の実施形態における補間処理のフローチャートである。 第二の実施形態における補間済み画素を考慮した空間相関値rel_skewの計算法を説明する図である。 補間済み画素を考慮する利点を説明する図である。 第二の実施形態における時間相関値rel_xt、rel_ytを説明する図である。 縦線が速く動く画像における時間相関値rel_xt、rel_ytの特徴を説明する図である。 第二の実施形態における時間相関値rel_yt2を説明する図である。 第二の実施形態における時間相関値rel_yt2を説明する図である。 斜め線が速く動く画像における時間相関値rel_xt、rel_yt2の特徴を説明する図である。 第二の実施形態における混合補間のフローチャートである。 時間相関値および空間相関値と重み係数w_t、w_sとの関係を表す図である。 本発明のプログラムを実行するコンピュータのブロック図である。 従来の補間方法によりジャギーが発生することを説明する図である。 特許文献1に記載の補間方法を説明する図である。 特許文献2に記載の補間方法を説明する図である。 特許文献3に記載の補間方法を説明する図である。 特許文献4に記載の補間方法を説明する図である。 補間方向を誤りやすい画像の例である。
符号の説明
u0〜u4、u、u’、d0〜d4、d、d’、m0、m1 画素
A 中心画素領域
A11〜A13、A15〜A17、A31〜A34 破線矢印
A14、A18、A35 実線矢印
A21〜A26 太矢印
B1、B2 周辺画素領域
i−1 先行フィールド画像
対象フィールド画像
i+1 後続フィールド画像
i−1、G、G’ 補間済みフィールド画像
H 横線
I インターレース画像
L 直線
P 元画像P
R1〜R4 参照画素
T、T1、T2 対象画素
100 補間方法決定装置
101 格納部
102 対象画素選択部
103 局所相関値計算部
104 累積相関値計算部
105 方向選択部
106 補間用画素決定部
200 画素値補間装置
201 格納部
202 対象画素選択部
203 相関値計算部
204 局所相関値計算部
205 累積相関値計算部
206 静動判定部
207 フィールド内補間部
208 方向選択部
209 フィールド内補間用画素決定部
210 フィールド内補間画素値計算部
211 フィールド間補間部
212 フィールド間補間用画素決定部
213 フィールド間補間画素値計算部
220 上実ライン
221 補間ライン
222 下実ライン
230〜239 計算説明図
240 局所相関値一覧表
241、243、245、247 フィールド内補間方向の説明図
242、246 累積相関値一覧表
244 注目部分
300 画素値補間装置
301 第一空間相関値計算部
302 混合補間部
303 第二空間相関値計算部
304 時間相関値計算部
305 重み係数計算部
306 混合補間画素値計算部
310、311 模式図
401 CPU
402 ROM
403 RAM
404 通信インターフェイス
405 入力装置
406 出力装置
407 記憶装置
408 駆動装置
409 バス
410 可搬型記憶媒体
411 ネットワーク
412 プログラム提供者
413 画像提供者

Claims (7)

  1. 入力画像に存在せず、一直線上に位置する複数の画素のそれぞれの画素値を補間するための補間方法をコンピュータに決定させる画素値の補間方法決定プログラムであって、
    指定された選択順序方向にしたがって順番に、前記複数の画素のうちの一つの画素を、前記補間方法を決定すべき対象画素として選択する対象画素選択ステップと、
    指定された複数の相関計算方向のそれぞれについて、前記対象画素から該相関計算方向にある第一の画素の画素値と、該対象画素から該相関計算方向の逆方向にある第二の画素の画素値とに基づいて、前記相関計算方向に対応する局所相関値を計算する局所相関値計算ステップと、
    前記複数の画素のうち前記選択順序方向にしたがった順番が先頭の画素である先頭画素に対して与えられる値に基づいて、該先頭画素から前記選択順序方向にしたがって逐次的に前記複数の画素のそれぞれに対して計算される相関値である累積相関値を、前記対象画素に対し、前記複数の相関計算方向のそれぞれについて、該相関計算方向に対応する前記局所相関値と、前記対象画素を選択する直前の前記選択ステップで選択した他の画素についての前記累積相関値とに基づいて計算する累積相関値計算ステップと、
    前記複数の相関計算方向のそれぞれに対応する前記累積相関値に基づいて、前記複数の相関計算方向のうちの一つを選択する方向選択ステップと、
    前記方向選択ステップで選択した前記相関計算方向に対応する前記局所相関値と前記累積相関値の少なくとも一方に基づいて、前記対象画素の補間のために用いる複数の画素を決定する補間用画素決定ステップと、
    をコンピュータに実行させることを特徴とする画素値の補間方法決定プログラム。
  2. 前記入力画像がインターレース形式の動画のフィールド画像であり、
    前記選択順序方向は、該フィールド画像に存在しないラインに沿った方向である、
    ことを特徴とする請求項1に記載の画素値の補間方法決定プログラム。
  3. 前記入力画像であって補間方法を決定する対象である対象フィールド画像の直前と直後の時刻にそれぞれ対応する先行フィールド画像および後続フィールド画像において、それぞれ前記対象画素の位置または該位置の近傍に存在する画素の画素値に基づいて第一の時間相関値を計算する第一の時間相関値計算ステップ
    をさらに前記コンピュータに実行させることを特徴とする請求項2に記載の画素値の補間方法決定プログラム。
  4. 前記補間用画素決定ステップによって前記対象フィールド画像内の複数の画素を決定し、決定した該複数の画素の画素値に基づいてフィールド内補間値を計算するフィールド内補間値計算ステップと、
    前記先行フィールド画像において前記対象画素と同じ位置にある画素と、前記後続フィールド画像において前記対象画素と同じ位置にある画素の少なくとも一方の画素値に基づいてフィールド間補間値を計算するフィールド間補間値計算ステップと、
    前記フィールド内補間値および前記フィールド間補間値に基づいて前記対象画素に割り当てるべき混合補間値を計算する混合補間値計算ステップと、
    をさらに前記コンピュータに実行させることを特徴とする請求項3に記載の画素値の補間方法決定プログラム。
  5. 前記対象フィールド画像において前記近傍内に存在する近傍画素の画素値と、前記先行フィールド画像において前記近傍画素と同じ位置にあって補間済みの補間済み画素の画素値とに基づいて、第二の時間相関値を計算する第二の時間相関値計算ステップを前記補間方法決定プログラムがさらに前記コンピュータに実行させる、
    ことを特徴とする請求項4に記載の画素値の補間方法決定プログラム。
  6. 入力画像に存在せず、一直線上に位置する複数の画素のそれぞれの画素値を補間するための補間方法を決定する画素値の補間方法決定装置であって、
    指定された選択順序方向にしたがって順番に、前記複数の画素のうちの一つの画素を、前記補間方法を決定すべき対象画素として選択する対象画素選択手段と、
    指定された複数の相関計算方向のそれぞれについて、前記対象画素から該相関計算方向にある第一の画素の画素値と、該対象画素から該相関計算方向の逆方向にある第二の画素の画素値とに基づいて、前記相関計算方向に対応する局所相関値を計算する局所相関値計算手段と、
    前記複数の画素のうち前記選択順序方向にしたがった順番が先頭の画素である先頭画素に対して与えられる値に基づいて、該先頭画素から前記選択順序方向にしたがって逐次的に前記複数の画素のそれぞれに対して計算される相関値である累積相関値を格納する格納手段と、
    前記複数の相関計算方向のそれぞれについて、該相関計算方向に対応する前記局所相関値と、前記格納手段に格納されている、前記対象画素を選択する直前に選択した他の画素についての前記累積相関値とに基づいて、前記対象画素についての該相関計算方向に対応する前記累積相関値を計算し、前記格納手段に格納する累積相関値計算手段と、
    前記複数の相関計算方向のそれぞれに対応する前記累積相関値に基づいて、前記複数の相関計算方向のうちの一つを選択する方向選択手段と、
    前記方向選択手段が選択した前記相関計算方向に対応する前記局所相関値と前記累積相関値の少なくとも一方に基づいて、前記対象画素の補間のために用いる複数の画素を決定する補間用画素決定手段と、
    を備える画素値の補間方法決定装置。
  7. 入力画像に存在せず、一直線上に位置する複数の画素のそれぞれの画素値を補間するための補間方法をコンピュータが決定する画素値の補間方法決定方法であって、
    指定された選択順序方向にしたがって順番に、前記複数の画素のうちの一つの画素を、前記補間方法を決定すべき対象画素として選択する対象画素選択ステップと、
    指定された複数の相関計算方向のそれぞれについて、前記対象画素から該相関計算方向にある第一の画素の画素値と、該対象画素から該相関計算方向の逆方向にある第二の画素の画素値とに基づいて、前記相関計算方向に対応する局所相関値を計算する局所相関値計算ステップと、
    前記複数の画素のうち前記選択順序方向にしたがった順番が先頭の画素である先頭画素に対して与えられる値に基づいて、該先頭画素から前記選択順序方向にしたがって逐次的に前記複数の画素のそれぞれに対して計算される相関値である累積相関値を、前記対象画素に対し、前記複数の相関計算方向のそれぞれについて、該相関計算方向に対応する前記局所相関値と、前記対象画素を選択する直前の前記選択ステップで選択した他の画素についての前記累積相関値とに基づいて計算する累積相関値計算ステップと、
    前記複数の相関計算方向のそれぞれに対応する前記累積相関値に基づいて、前記複数の相関計算方向のうちの一つを選択する方向選択ステップと、
    前記方向選択ステップで選択した前記相関計算方向に対応する前記局所相関値と前記累積相関値の少なくとも一方に基づいて、前記対象画素の補間のために用いる複数の画素を決定する補間用画素決定ステップと、
    を備えることを特徴とする画素値の補間方法決定方法。
JP2006350705A 2006-12-26 2006-12-26 補間方法を決定するプログラム、装置、および方法 Expired - Fee Related JP4795929B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006350705A JP4795929B2 (ja) 2006-12-26 2006-12-26 補間方法を決定するプログラム、装置、および方法
CN2007103011756A CN101237553B (zh) 2006-12-26 2007-12-26 确定插值方法的程序、装置及方法
US11/964,570 US8290308B2 (en) 2006-12-26 2007-12-26 Program, apparatus and method for determining interpolation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006350705A JP4795929B2 (ja) 2006-12-26 2006-12-26 補間方法を決定するプログラム、装置、および方法

Publications (2)

Publication Number Publication Date
JP2008166872A JP2008166872A (ja) 2008-07-17
JP4795929B2 true JP4795929B2 (ja) 2011-10-19

Family

ID=39617850

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006350705A Expired - Fee Related JP4795929B2 (ja) 2006-12-26 2006-12-26 補間方法を決定するプログラム、装置、および方法

Country Status (3)

Country Link
US (1) US8290308B2 (ja)
JP (1) JP4795929B2 (ja)
CN (1) CN101237553B (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7865041B1 (en) * 2001-08-09 2011-01-04 Pixelworks, Inc. Artifacts measurement on video decomposable properties by dynamic fuzzy reasoning
US20080110624A1 (en) * 2005-07-15 2008-05-15 Halliburton Energy Services, Inc. Methods for controlling water and particulate production in subterranean wells
WO2010126783A2 (en) * 2009-04-30 2010-11-04 Roman Gitlin Method and apparatus for streamlined implementation of interpolation in multiple dimensions
GB2484071B (en) * 2010-09-23 2013-06-12 Imagination Tech Ltd De-interlacing of video data
TW201216718A (en) * 2010-10-04 2012-04-16 Novatek Microelectronics Corp Image processing apparatus and image processing method
TWI429277B (zh) * 2011-01-31 2014-03-01 Novatek Microelectronics Corp 動態適應性解交錯裝置及方法
JP2012234507A (ja) 2011-04-20 2012-11-29 Sony Corp 画像処理装置および方法、並びにプログラム
US8774508B2 (en) * 2012-02-27 2014-07-08 Denso It Laboratory, Inc. Local feature amount calculating device, method of calculating local feature amount, corresponding point searching apparatus, and method of searching corresponding point
KR101473428B1 (ko) 2012-07-03 2015-01-16 삼성테크윈 주식회사 영상 정합 방법
KR101871945B1 (ko) * 2013-01-17 2018-08-02 한화에어로스페이스 주식회사 영상 처리 장치 및 방법
US10593007B1 (en) 2015-06-11 2020-03-17 Digimarc Corporation Methods and arrangements for configuring industrial inspection systems
CN106604001B (zh) * 2016-11-29 2018-06-29 广东欧珀移动通信有限公司 图像处理方法、图像处理装置、成像装置及电子装置
CN106507068B (zh) 2016-11-29 2018-05-04 广东欧珀移动通信有限公司 图像处理方法及装置、控制方法及装置、成像及电子装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2231460B (en) * 1989-05-04 1993-06-30 Sony Corp Spatial interpolation of digital video signals
GB9422018D0 (en) * 1994-10-31 1994-12-21 Vistek Electronics An improved method of estimating motion in a video signal
US6421090B1 (en) * 1999-08-27 2002-07-16 Trident Microsystems, Inc. Motion and edge adaptive deinterlacing
JP4108969B2 (ja) * 2000-12-14 2008-06-25 松下電器産業株式会社 画像角度検出装置およびそれを備えた走査線補間装置
US7171059B1 (en) * 2002-05-23 2007-01-30 Pixelworks, Inc. Method and apparatus for two-dimensional image scaling
JP2003143555A (ja) * 2001-11-02 2003-05-16 Matsushita Electric Ind Co Ltd テレビジョン受信機
JP2003230109A (ja) * 2002-02-05 2003-08-15 Mitsubishi Electric Corp 走査線補間方法ならびに走査線変換装置および画像表示装置
US7154556B1 (en) * 2002-03-21 2006-12-26 Pixelworks, Inc. Weighted absolute difference based deinterlace method and apparatus
EP1531625A4 (en) * 2002-08-19 2013-01-23 Sony Corp IMAGE PROCESSING DEVICE AND METHOD, VIDEO DISPLAY, AND RECORDED INFORMATION REPRODUCING DEVICE
KR100505663B1 (ko) * 2003-01-02 2005-08-03 삼성전자주식회사 적응형 윤곽 상관 보간에 의한 디스플레이 장치의 순차주사 방법
JP2004304504A (ja) * 2003-03-31 2004-10-28 Sanyo Electric Co Ltd 画像処理方法、相関方向決定方法、補間方向決定方法
JP4190462B2 (ja) 2004-05-28 2008-12-03 シャープ株式会社 画素補間方向検出装置、画素補間装置、及び映像信号処理装置
JP2006060375A (ja) * 2004-08-18 2006-03-02 Victor Co Of Japan Ltd 順次走査変換装置
US7567294B2 (en) * 2005-03-28 2009-07-28 Intel Corporation Gradient adaptive video de-interlacing

Also Published As

Publication number Publication date
CN101237553B (zh) 2011-11-23
CN101237553A (zh) 2008-08-06
US20080170808A1 (en) 2008-07-17
US8290308B2 (en) 2012-10-16
JP2008166872A (ja) 2008-07-17

Similar Documents

Publication Publication Date Title
JP4795929B2 (ja) 補間方法を決定するプログラム、装置、および方法
US7483040B2 (en) Information processing apparatus, information processing method, recording medium, and program
US8224126B2 (en) Motion compensated temporal interpolation for frame rate conversion of video signals
US8400370B2 (en) Multiple image display device and image display device
JP4359223B2 (ja) 映像補間装置とこれを用いたフレームレート変換装置,映像表示装置
CN101855912A (zh) 用于图像变换过程的自适应滤波
US20030030753A1 (en) Image processing device and method, and recording medium
JP5743615B2 (ja) 画像処理方法、画像処理装置、集積回路およびプログラム
US7551805B2 (en) Converting the resolution of an image using interpolation and displaying the converted image
EP2911382B1 (en) Image processing device and image processing method
JP2008098966A (ja) 画像処理装置、画像処理方法、及びプログラム
US7548663B2 (en) Intra-field interpolation method and apparatus
US20100039517A1 (en) Film cadence detection
JP5350501B2 (ja) 映像処理装置及び映像処理方法
US8218075B2 (en) Method and system for efficient de-interlacing
WO2007051997A1 (en) Scan convertion image filtering
JP4358055B2 (ja) 補間画素生成回路
KR101235488B1 (ko) 위너필터 기반의 가중치를 부여하여 화소를 보간하는 디인터레이싱 장치 및 방법
JP2008228251A (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
JP4472597B2 (ja) 画像データ変換方法、その装置及びそのプログラム
JP4347347B2 (ja) フレーム補間装置、及びフレーム補間方法
JP3944524B1 (ja) 画像処理システム
US8494292B2 (en) Image processing apparatus
JP2001094951A (ja) 走査線補間方法
US8497938B2 (en) Image processing method, image processing apparatus and image processing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090907

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110720

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110726

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110728

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140805

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees