JP2004040340A - 画像符号化方法および装置 - Google Patents
画像符号化方法および装置 Download PDFInfo
- Publication number
- JP2004040340A JP2004040340A JP2002192772A JP2002192772A JP2004040340A JP 2004040340 A JP2004040340 A JP 2004040340A JP 2002192772 A JP2002192772 A JP 2002192772A JP 2002192772 A JP2002192772 A JP 2002192772A JP 2004040340 A JP2004040340 A JP 2004040340A
- Authority
- JP
- Japan
- Prior art keywords
- image
- key frame
- mapping
- target value
- image content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【課題】画質の維持と圧縮率の向上を両立する圧縮技術の提供である。
【解決手段】画像入力部10は、オリジナルキーフレーム列を入力し、画像選択部14は、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外する。画像選択部14における計算部50は、キーフレーム間における表示内容の相違を計算し、判定部52は、その計算結果をもとに除外できるキーフレームを特定する。マッチングプロセッサ16は、除外されなかったキーフレーム間で画像マッチングを計算して対応点情報を生成する。ストリーム生成部18は、除外されなかったキーフレームと対応点情報を組み込む形で符号化データストリームを生成する。
【選択図】 図19
【解決手段】画像入力部10は、オリジナルキーフレーム列を入力し、画像選択部14は、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外する。画像選択部14における計算部50は、キーフレーム間における表示内容の相違を計算し、判定部52は、その計算結果をもとに除外できるキーフレームを特定する。マッチングプロセッサ16は、除外されなかったキーフレーム間で画像マッチングを計算して対応点情報を生成する。ストリーム生成部18は、除外されなかったキーフレームと対応点情報を組み込む形で符号化データストリームを生成する。
【選択図】 図19
Description
【0001】
【発明の属する技術分野】
この発明は、画像編集技術に関し、とくに動画の圧縮を中心とする画像の符号化方法と装置に関する。
【0002】
【従来の技術】
動画圧縮の事実上の世界標準であるMPEG(Motion Picture Expert Group)は、CDなどストレージメディアからネットワークや放送などの伝送メディアへとそのターゲットエリアが広がった。放送のデジタル化はMPEGを中心とする圧縮符号化技術なしに考えることはできない。放送と通信の垣根が崩れ、サービス事業者の多様化は必須になり、ブロードバンド時代にデジタル文化がいかなる進展を遂げるか、予測がつきにくい状況にある。
【0003】
【発明が解決しようとする課題】
そうした混沌の中でも、動画の圧縮技術に関する方向性について確かなことがある。すなわち、より高い圧縮率と画質の両立である。MPEGは周知のごとく高圧縮化をブロック歪みが阻むことがある。また、動画の配信が現実的になるにしたがい、リアルタイム処理に対するいままで以上の配慮が必要になる。
【0004】
本発明はこうした現状に鑑みてなされたものであり、その目的は、画像データの効率的圧縮を実現する技術の提供にある。別の目的は、画質の維持と圧縮率の向上という相反する要望に適う技術の提供にある。さらに別の目的は、あらかじめ設定された所定キーフレーム除外後の画像データの容量にあわせて、画質の劣化を少なくして画像データを圧縮する技術の提供にある。さらに別の目的は、品質への影響が少ない画像を特定する技術の提供にある。
【0005】
【課題を解決するための手段】
本発明は画像符号化技術に関する。この技術は本出願人が先に特許第2927350号にて提案した画像マッチング技術(以下「前提技術」という)を利用することができる。
本発明のある態様は、画像符号化装置に関する。この装置は、画像コンテンツを構成するキーフレーム列を入力する入力部と、キーフレーム列から画像コンテンツの品質への影響が少ない所定のキーフレームを除外する画像選択部とを含む。
【0006】
「フレーム」は画像の単位であるが、以下特に必要がない限り、これと「画像」を区別しない。
「キーフレーム列」は、ひとつ以上のキーフレームで構成される。
「品質への影響」とは、客観的に評価されるものだけではなく、主観的に評価されるものも含む。
この装置によれば、画像コンテンツを構成するキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外し、影響が大きいキーフレームを除外しないため、画像コンテンツの品質を劣化させることなく、容量を削減することが可能である。
【0007】
キーフレームを除外した画像コンテンツの容量に対する目標値が設定される設定部をさらに含んでもよい。この構成にて、画像選択部は目標値になるまでキーフレーム列から所定のキーフレームを除外し、目標値になれば処理を終了することを実現する。
「目標値」とは、所定のキーフレームを除外した画像コンテンツが概略達成すべき値であり、例えば10Mバイトのような絶対的な数値やコンテンツの容量に対して1/10のような相対的な数値を意味する。
この装置によれば、設定された目標値に応じてキーフレームを除外する判断基準を変化させ、それによって除外するキーフレーム数を調節するため、所定のキーフレームが除外された後の画像コンテンツの容量を目標値と同等にすることが可能である。
【0008】
画像選択部は、所定のふたつのキーフレーム間における差分が所定の基準より大きい場合、影響が大きいとしてもよい。また、所定のキーフレーム間についての対応点情報から生成された中間フレームと中間フレームに対応するキーフレームとの差分が所定の基準より大きい場合、影響が大きいとしてもよい。また、対応点情報の生成過程で得られるデータを監視することにより、影響の大きさを判定してもよい。また、影響の大きさを判定するための基準が、目標値に応じて適応的に設定されてもよい。
【0009】
「中間フレーム」とは、ふたつのキーフレームに挟まれ、これらの対応点情報から生成されるフレームである。ここでは、ふたつのキーフレームに挟まれた画像の単位またはひとつの画像だけでなく、ふたつのキーフレームに挟まれた複数の画像も含むものとする。
「対応点情報の生成過程で得られるデータ」とは、マッチング計算を行う際に得られるデータ、例えば、全単射条件を満たすか否か、写像のエネルギー値などを意味する。さらに、対応点情報も含むものとする。
この装置によれば、ふたつのキーフレーム間における表示内容の相違が大きい場合、例えば、シーンチェンジなどではキーフレームを除外しないため、キーフレーム除外による画像コンテンツの品質への影響は少ない。また、対応点情報から生成された中間フレームを対応するキーフレームと比較した後、これらの差分が小さい場合にキーフレームを除外するため、品質への影響が少ないキーフレーム特定の確実性が向上する。さらに、対応点情報の生成過程で得られたデータを使用するため、一般に対応点情報の問題点が反映されており、品質への影響が少ないキーフレームの特定の確実性が向上する。
【0010】
本発明の別の態様は、画像符号化装置に関する。この装置は、画像コンテンツを構成するキーフレーム列を入力する入力部と、所定のキーフレームを除外した画像コンテンツの容量に対する目標値が設定される設定部と、目標値になるまでキーフレーム列から所定のキーフレームを除外し、目標値になれば処理を終了する画像選択部とを含む。
除外されなかったキーフレームと対応点情報とを含む形でストリームを形成するストリーム生成部をさらに含んでもよい。
【0011】
本発明のさらに別の態様は、画像符号化方法に関する。この方法は、画像コンテンツを構成するキーフレーム列を入力するステップと、キーフレーム列から所定のキーフレームを除外したときの、画像コンテンツの品質への影響を推定するステップと、影響が少ないときに、キーフレームを除外するステップを含む。
【0012】
本発明のさらに別の態様は、画像符号化方法に関する。この方法は、画像コンテンツを構成するキーフレーム列を入力するステップと、画像コンテンツの容量に対する目標値を設定するステップと、容量が目標値になるまでキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するステップと、容量が前記目標値になれば処理を終了するステップを含む。
【0013】
影響は、所定のふたつのキーフレーム間における差分をもとに推定してもよい。また、所定のキーフレーム間についての対応点情報から生成された中間フレームと中間フレームに対応するキーフレームとの差分をもとに推定してもよい。また、対応点情報の生成過程で得られるデータをもとに推定してもよい。
除外されなかったキーフレームと対応点情報とを含む形でストリームを形成するステップをさらに含んでもよい。
【0014】
本発明のさらに別の態様は、プログラムに関する。このプログラムは、画像コンテンツを構成するキーフレーム列を入力するステップと、キーフレーム列から所定のキーフレームを除外したときの、画像コンテンツの品質への影響を推定するステップと、影響が少ないときに、キーフレームを除外するステップをコンピュータに実行せしめる。
【0015】
本発明のさらに別の態様は、プログラムに関する。このプログラムは、画像コンテンツを構成するキーフレーム列を入力するステップと、画像コンテンツの容量に対する目標値を設定するステップと、容量が目標値になるまでキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するステップと、容量が目標値になれば処理を終了するステップをコンピュータに実行せしめる。
【0016】
以上の態様のうち、キーフレーム間の対応点情報を生成する部分、およびそれを利用して中間画像を生成する部分は、前提技術を利用することができる。ただし、本発明は前提技術を必須とはしない。また、本発明は動画に限らず、複数視点画像間の滑らかな中間画像の生成等、静止画を目的としてもよい。
以上の各構成、工程を任意に入れ替えたり、方法と装置の間で表現を一部または全部入れ替え、または追加したり、表現をコンピュータプログラム、記録媒体等に変更したものもまた、本発明として有効である。
【0017】
【発明の実施の形態】
はじめに、実施の形態で利用する多重解像度特異点フィルタ技術とそれを用いた画像マッチング処理を「前提技術」として詳述する。これらの技術は本出願人がすでに特許第2927350号を得ている技術であり、本発明との組合せに最適である。ただし、実施の形態で採用可能な画像マッチング技術はこれに限られない。図19以降、前提技術を利用した画像処理技術を具体的に説明する。
【0018】
[前提技術の背景]
最初に[1]で前提技術の要素技術の詳述し、[2]で処理手順を具体的に説明する。さらに[3]で前提技術に基づき改良を施した点について述べる。
【0019】
[1]要素技術の詳細
[1.1]イントロダクション
特異点フィルタと呼ばれる新たな多重解像度フィルタを導入し、画像間のマッチングを正確に計算する。オブジェクトに関する予備知識は一切不要である。画像間のマッチングの計算は、解像度の階層を進む間、各解像度において計算される。その際、粗いレベルから精細なレベルへと順に解像度の階層を辿っていく。計算に必要なパラメータは、人間の視覚システムに似た動的計算によって完全に自動設定される。画像間の対応点を人手で特定する必要はない。
【0020】
本前提技術は、例えば完全に自動的なモーフィング、物体認識、立体写真測量、ボリュームレンダリング、少ないフレームからの滑らかな動画像の生成などに応用できる。モーフィングに用いる場合、与えられた画像を自動的に変形することができる。ボリュームレンダリングに用いる場合、断面間の中間的な画像を正確に再構築することができる。断面間の距離が遠く、断面の形状が大きく変化する場合でも同様である。
【0021】
[1.2]特異点フィルタの階層
前提技術に係る多重解像度特異点フィルタは、画像の解像度を落としながら、しかも画像に含まれる各特異点の輝度及び位置を保存することができる。ここで画像の幅をN、高さをMとする。以下簡単のため、N=M=2n(nは自然数)と仮定する。また、区間[0,N]⊂RをIと記述する。(i,j)における画像の画素をp(i,j)と記述する(i,j∈I)。
【0022】
ここで多重解像度の階層を導入する。階層化された画像群は多重解像度フィルタで生成される。多重解像度フィルタは、もとの画像に対して二次元的な探索を行って特異点を検出し、検出された特異点を抽出してもとの画像よりも解像度の低い別の画像を生成する。ここで第mレベルにおける各画像のサイズは2m×2m(0≦m≦n)とする。特異点フィルタは次の4種類の新たな階層画像をnから下がる方向で再帰的に構築する。
【0023】
【数1】
ただしここで、
【数2】
とする。以降これら4つの画像を副画像(サブイメージ)と呼ぶ。minx≦t≦x+1、maxx≦t≦x+1をそれぞれα及びβと記述すると、副画像はそれぞれ以下のように記述できる。
【0024】
P(m,0)=α(x)α(y)p(m+1,0)
P(m,1)=α(x)β(y)p(m+1,1)
P(m,2)=β(x)α(y)p(m+1,2)
P(m,3)=β(x)β(y)p(m+1,3)
すなわち、これらはαとβのテンソル積のようなものと考えられる。副画像はそれぞれ特異点に対応している。これらの式から明らかなように、特異点フィルタはもとの画像について2×2画素で構成されるブロックごとに特異点を検出する。その際、各ブロックのふたつの方向、つまり縦と横について、最大画素値または最小画素値をもつ点を探索する。画素値として、前提技術では輝度を採用するが、画像に関するいろいろな数値を採用することができる。ふたつの方向の両方について最大画素値となる画素は極大点、ふたつの方向の両方について最小画素値となる画素は極小点、ふたつの方向の一方について最大画素値となるとともに、他方について最小画素値となる画素は鞍点として検出される。
【0025】
特異点フィルタは、各ブロックの内部で検出された特異点の画像(ここでは1画素)でそのブロックの画像(ここでは4画素)を代表させることにより、画像の解像度を落とす。特異点の理論的な観点からすれば、α(x)α(y)は極小点を保存し、β(x)β(y)は極大点を保存し、α(x)β(y)及びβ(x)α(y)は鞍点を保存する。
【0026】
はじめに、マッチングをとるべき始点(ソース)画像と終点(デスティネーション)画像に対して別々に特異点フィルタ処理を施し、それぞれ一連の画像群、すなわち始点階層画像と終点階層画像を生成しておく。始点階層画像と終点階層画像は、特異点の種類に対応してそれぞれ4種類ずつ生成される。
【0027】
この後、一連の解像度レベルの中で始点階層画像と終点階層画像のマッチングがとれらていく。まずp(m,0)を用いて極小点のマッチングがとられる。次に、その結果に基づき、p(m,1)を用いて鞍点のマッチングがとられ、p(m,2)を用いて他の鞍点のマッチングがとられる。そして最後にp(m,3)を用いて極大点のマッチングがとられる。
【0028】
図1(c)と図1(d)はそれぞれ図1(a)と図1(b)の副画像p(5,0)を示している。同様に、図1(e)と図1(f)はp(5,1)、図1(g)と図1(h)はp(5,2)、図1(i)と図1(j)はp(5,3)をそれぞれ示している。これらの図からわかるとおり、副画像によれば画像の特徴部分のマッチングが容易になる。まずp(5,0)によって目が明確になる。目は顔の中で輝度の極小点だからである。p(5,1)によれば口が明確になる。口は横方向で輝度が低いためである。p(5,2)によれば首の両側の縦線が明確になる。最後に、p(5,3)によって耳や頬の最も明るい点が明確になる。これらは輝度の極大点だからである。
【0029】
特異点フィルタによれば画像の特徴が抽出できるため、例えばカメラで撮影された画像の特徴と、予め記録しておいたいくつかのオブジェクトの特徴を比較することにより、カメラに映った被写体を識別することができる。
【0030】
[1.3]画像間の写像の計算
始点画像の位置(i,j)の画素をp(n) (i,j)と書き、同じく終点画像の位置(k,l)の画素をq(n) (k,l)で記述する。i,j,k,l∈Iとする。画像間の写像のエネルギー(後述)を定義する。このエネルギーは、始点画像の画素の輝度と終点画像の対応する画素の輝度の差、及び写像の滑らかさによって決まる。最初に最小のエネルギーを持つp(m,0)とq(m,0)間の写像f(m,0):p(m,0)→q(m,0)が計算される。f(m,0)に基づき、最小エネルギーを持つp(m,1)、q(m,1)間の写像f(m,1)が計算される。この手続は、p(m,3)とq(m,3)の間の写像f(m,3)の計算が終了するまで続く。各写像f(m,i)(i=0,1,2,…)を副写像と呼ぶことにする。f(m,i)の計算の都合のために、iの順序は次式のように並べ替えることができる。並べ替えが必要な理由は後述する。
【0031】
【数3】
ここでσ(i)∈{0,1,2,3}である。
【0032】
[1.3.1]全単射
始点画像と終点画像の間のマッチングを写像で表現する場合、その写像は両画像間で全単射条件を満たすべきである。両画像に概念上の優劣はなく、互いの画素が全射かつ単射で接続されるべきだからである。しかしながら通常の場合とは異なり、ここで構築すべき写像は全単射のディジタル版である。前提技術では、画素は格子点によって特定される。
【0033】
始点副画像(始点画像について設けられた副画像)から終点副画像(終点画像について設けられた副画像)への写像は、f(m,s):I/2n−m×I/2n−m→I/2n−m×I/2n−m(s=0,1,…)によって表される。ここで、f(m,s)(i,j)=(k,l)は、始点画像のp(m,s) (i,j)が終点画像のq(m,s) (k,l)に写像されることを意味する。簡単のために、f(i,j)=(k,l)が成り立つとき画素q(k,l)をqf(i,j)と記述する。
【0034】
前提技術で扱う画素(格子点)のようにデータが離散的な場合、全単射の定義は重要である。ここでは以下のように定義する(i,i’,j,j’,k,lは全て整数とする)。まず始めに、始点画像の平面においてRによって表記される各正方形領域、
【0035】
【数4】
を考える(i=0,…,2m−1、j=0,…,2m−1)。ここでRの各辺(エッジ)の方向を以下のように定める。
【0036】
【数5】
この正方形は写像fによって終点画像平面における四辺形に写像されなければならない。f(m,s)(R)によって示される四辺形、
【0037】
【数6】
は、以下の全単射条件を満たす必要がある。
【0038】
1.四辺形f(m,s)(R)のエッジは互いに交差しない。
【0039】
2.f(m,s)(R)のエッジの方向はRのそれらに等しい(図2の場合、時計回り)。
【0040】
3.緩和条件として収縮写像(リトラクション:retractions)を許す。
【0041】
何らかの緩和条件を設けないかぎり、全単射条件を完全に満たす写像は単位写像しかないためである。ここではf(m,s)(R)のひとつのエッジの長さが0、すなわちf(m,s)(R)は三角形になってもよい。しかし、面積が0となるような図形、すなわち1点または1本の線分になってはならない。図2(R)がもとの四辺形の場合、図2(A)と図2(D)は全単射条件を満たすが、図2(B)、図2(C)、図2(E)は満たさない。
【0042】
実際のインプリメンテーションでは、写像が全射であることを容易に保証すべく、さらに以下の条件を課してもよい。つまり始点画像の境界上の各画素は、終点画像において同じ位置を占める画素に写影されるというものである。すなわち、f(i,j)=(i,j)(ただしi=0,i=2m−1,j=0,j=2m−1の4本の線上)である。この条件を以下「付加条件」とも呼ぶ。
【0043】
[1.3.2]写像のエネルギー
[1.3.2.1]画素の輝度に関するコスト
写像fのエネルギーを定義する。エネルギーが最小になる写像を探すことが目的である。エネルギーは主に、始点画像の画素の輝度とそれに対応する終点画像の画素の輝度の差で決まる。すなわち、写像f(m,s)の点(i,j)におけるエネルギーC(m,s) (i,j)は次式によって定まる。
【0044】
【数7】
ここで、V(p(m,s) (i,j))及びV(q(m,s) f(i,j))はそれぞれ画素p(m,s) (i,j)及びq(m,s) f(i,j)の輝度である。fのトータルのエネルギーC(m,s)は、マッチングを評価するひとつの評価式であり、つぎに示すC(m,s) (i,j)の合計で定義できる。
【0045】
【数8】
[1.3.2.2]滑らかな写像のための画素の位置に関するコスト
滑らかな写像を得るために、写像に関する別のエネルギーDfを導入する。このエネルギーは画素の輝度とは関係なく、p(m,s) (i,j)およびq(m,s) f(i,j)の位置によって決まる(i=0,…,2m−1,j=0,…,2m−1)。点(i,j)における写像f(m,s)のエネルギーD(m,s) (i,j)は次式で定義される。
【0046】
【数9】
ただし、係数パラメータηは0以上の実数であり、また、
【数10】
【数11】
とする。ここで、
【0047】
【数12】
であり、i’<0およびj’<0に対してf(i’,j’)は0と決める。E0は(i,j)及びf(i,j)の距離で決まる。E0は画素があまりにも離れた画素へ写影されることを防ぐ。ただしE0は、後に別のエネルギー関数で置き換える。E1は写像の滑らかさを保証する。E1は、p(i,j)の変位とその隣接点の変位の間の隔たりを表す。以上の考察をもとに、マッチングを評価する別の評価式であるエネルギーDfは次式で定まる。
【0048】
【数13】
[1.3.2.3]写像の総エネルギー
写像の総エネルギー、すなわち複数の評価式の統合に係る総合評価式はλC(m,s) f+D(m,s) fで定義される。ここで係数パラメータλは0以上の実数である。目的は総合評価式が極値をとる状態を検出すること、すなわち次式で示す最小エネルギーを与える写像を見いだすことである。
【0049】
【数14】
λ=0及びη=0の場合、写像は単位写像になることに注意すべきである(すなわち、全てのi=0,…,2m−1及びj=0,…,2m−1に対してf(m,s)(i,j)=(i,j)となる)。後述のごとく、本前提技術では最初にλ=0及びη=0の場合を評価するため、写像を単位写像から徐々に変形していくことができる。仮に総合評価式のλの位置を変えてC(m,s) f+λD(m,s) fと定義したとすれば、λ=0及びη=0の場合に総合評価式がC(m,s) fだけになり、本来何等関連のない画素どうしが単に輝度が近いというだけで対応づけられ、写像が無意味なものになる。そうした無意味な写像をもとに写像を変形していってもまったく意味をなさない。このため、単位写像が評価の開始時点で最良の写像として選択されるよう係数パラメータの与えかたが配慮されている。
【0050】
オプティカルフローもこの前提技術同様、画素の輝度の差と滑らかさを考慮する。しかし、オプティカルフローは画像の変換に用いることはできない。オブジェクトの局所的な動きしか考慮しないためである。前提技術に係る特異点フィルタを用いることによって大域的な対応関係を検出することができる。
【0051】
[1.3.3]多重解像度の導入による写像の決定
最小エネルギーを与え、全単射条件を満足する写像fminを多重解像度の階層を用いて求める。各解像度レベルにおいて始点副画像及び終点副画像間の写像を計算する。解像度の階層の最上位(最も粗いレベル)からスタートし、各解像度レベルの写像を、他のレベルの写像を考慮に入れながら決定する。各レベルにおける写像の候補の数は、より高い、つまりより粗いレベルの写像を用いることによって制限される。より具体的には、あるレベルにおける写像の決定に際し、それよりひとつ粗いレベルにおいて求められた写像が一種の拘束条件として課される。
【0052】
まず、
【数15】
が成り立つとき、p(m−1,s) (i’,j’)、q(m−1,s) (i’,j’)をそれぞれp(m,s) (i,j)、q(m,s) (i,j)のparentと呼ぶことにする。[x]はxを越えない最大整数である。またp(m,s) (i,j)、q(m,s) (i,j)をそれぞれp(m−1,s) (i’,j’)、q(m−1,s) (i’,j’)のchildと呼ぶ。関数parent(i,j)は次式で定義される。
【0053】
【数16】
p(m,s) (i,j)とq(m,s) (k,l)の間の写像f(m,s)は、エネルギー計算を行って最小になったものを見つけることで決定される。f(m,s)(i,j)=(k,l)の値はf(m−1,s)(m=1,2,…,n)を用いることによって、以下のように決定される。まず、q(m,s) (k,l)は次の四辺形の内部になければならないという条件を課し、全単射条件を満たす写像のうち現実性の高いものを絞り込む。
【0054】
【数17】
ただしここで、
【数18】
である。こうして定めた四辺形を、以下p(m,s) (i,j)の相続(inherited)四辺形と呼ぶことにする。相続四辺形の内部において、エネルギーを最小にする画素を求める。
【0055】
図3は以上の手順を示している。同図において、始点画像のA,B,C,Dの画素は、第m−1レベルにおいてそれぞれ終点画像のA’,B’,C’,D’へ写影される。画素p(m,s) (i,j)は、相続四辺形A’B’C’D’の内部に存在する画素q(m,s) f(m)(i,j)へ写影されなければならない。以上の配慮により、第m−1レベルの写像から第mレベルの写像への橋渡しがなされる。
【0056】
先に定義したエネルギーE0は、第mレベルにおける副写像f(m,0)を計算するために、次式に置き換える。
【0057】
【数19】
また、副写像f(m,s)を計算するためには次式を用いる。
【0058】
【数20】
こうしてすべての副写像のエネルギーを低い値に保つ写像が得られる。式20により、異なる特異点に対応する副写像が、副写像どうしの類似度が高くなるように同一レベル内で関連づけられる。式19は、f(m,s)(i,j)と、第m−1レベルの画素の一部と考えた場合の(i,j)が射影されるべき点の位置との距離を示している。
【0059】
仮に、相続四辺形A’B’C’D’の内部に全単射条件を満たす画素が存在しない場合は以下の措置をとる。まず、A’B’C’D’の境界線からの距離がL(始めはL=1)である画素を調べる。それらのうち、エネルギーが最小になるものが全単射条件を満たせば、これをf(m,s)(i,j)の値として選択する。そのような点が発見されるか、またはLがその上限のL(m)maxに到達するまで、Lを大きくしていく。L(m)maxは各レベルmに対して固定である。そのような点が全く発見されない場合、全単射の第3の条件を一時的に無視して変換先の四辺形の面積がゼロになるような写像も認め、f(m,s)(i,j)を決定する。それでも条件を満たす点が見つからない場合、つぎに全単射の第1及び第2条件を外す。
【0060】
多重解像度を用いる近似法は、写像が画像の細部に影響されることを回避しつつ、画像間の大域的な対応関係を決定するために必須である。多重解像度による近似法を用いなければ、距離の遠い画素間の対応関係を見いだすことは不可能である。その場合、画像のサイズはきわめて小さなものに限定しなければならず、変化の小さな画像しか扱うことができない。さらに、通常写像に滑らかさを要求するため、そうした画素間の対応関係を見つけにくくしている。距離のある画素から画素への写像のエネルギーは高いためである。多重解像度を用いた近似法によれば、そうした画素間の適切な対応関係を見いだすことができる。それらの距離は、解像度の階層の上位レベル(粗いレベル)において小さいためである。
【0061】
[1.4]最適なパレメータ値の自動決定
既存のマッチング技術の主な欠点のひとつに、パレメータ調整の困難さがある。大抵の場合、パラメータの調整は人手作業によって行われ、最適な値を選択することはきわめて難しい。前提技術に係る方法によれば、最適なパラメータ値を完全に自動決定することができる。
【0062】
前提技術に係るシステムはふたつのパレメータ、λ及びηを含む。端的にいえば、λは画素の輝度の差の重みであり、ηは写像の剛性を示している。これらのパラメータの値は初期値が0であり、まずη=0に固定してλを0から徐々に増加させる。λの値を大きくしながら、しかも総合評価式(式14)の値を最小にする場合、各副写像に関するC(m,s) fの値は一般に小さくなっていく。このことは基本的にふたつの画像がよりマッチしなければならないことを意味する。しかし、λが最適値を超えると以下の現象が発生する。
【0063】
1.本来対応すべきではない画素どうしが、単に輝度が近いというだけで誤って対応づけられる。
【0064】
2.その結果、画素どうしの対応関係がおかしくなり、写像がくずれはじめる。
【0065】
3.その結果、式14においてD(m,s) fが急激に増加しようとする。
【0066】
4.その結果、式14の値が急激に増加しようとするため、D(m,s) fの急激な増加を抑制するようf(m,s)が変化し、その結果C(m,s) fが増加する。
【0067】
したがって、λを増加させながら式14が最小値をとるという状態を維持しつつC(m,s) fが減少から増加に転じる閾値を検出し、そのλをη=0における最適値とする。つぎにηを少しづつ増やしてC(m,s) fの挙動を検査し、後述の方法でηを自動決定する。そのηに対応してλも決まる。
【0068】
この方法は、人間の視覚システムの焦点機構の動作に似ている。人間の視覚システムでは、一方の目を動かしながら左右両目の画像のマッチングがとられる。オブジェクトがはっきりと認識できるとき、その目が固定される。
【0069】
[1.4.1]λの動的決定
λは0から所定の刻み幅で増加されていき、λの値が変わる度に副写像が評価される。式14のごとく、総エネルギーはλC(m,s) f+D(m,s) fによって定義される。式9のD(m,s) fは滑らかさを表すもので、理論的には単位写像の場合に最小になり、写像が歪むほどE0もE1も増加していく。E1は整数であるから、D(m,s) fの最小刻み幅は1である。このため、現在のλC(m,s) (i,j)の変化(減少量)が1以上でなければ、写像を変化させることによって総エネルギーを減らすことはできない。なぜなら、写像の変化に伴ってD(m,s) fは1以上増加するため、λC(m,s) (i,j)が1以上減少しない限り総エネルギーは減らないためである。
【0070】
この条件のもと、λの増加に伴い、正常な場合にC(m,s) (i,j)が減少することを示す。C(m,s) (i,j)のヒストグラムをh(l)と記述する。h(l)はエネルギーC(m,s) (i,j)がl2である画素の数である。λl2≧1が成り立つために、例えばl2=1/λの場合を考える。λがλ1からλ2まで微小量変化するとき、
【0071】
【数21】
で示されるA個の画素が、
【数22】
のエネルギーを持つより安定的な状態に変化する。ここでは仮に、これらの画素のエネルギーがすべてゼロになると近似している。この式はC(m,s) fの値が、
【0072】
【数23】
だけ変化することを示し、その結果、
【数24】
が成立する。h(l)>0であるから、通常C(m,s) fは減少する。しかし、λが最適値を越えようとするとき、上述の現象、つまりC(m,s) fの増加が発生する。この現象を検出することにより、λの最適値を決定する。
【0073】
なお、H(h>0)及びkを定数とするとき、
【数25】
と仮定すれば、
【数26】
が成り立つ。このときk≠−3であれば、
【0074】
【数27】
となる。これがC(m,s) fの一般式である(Cは定数)。
【0075】
λの最適値を検出する際、さらに安全を見て、全単射条件を破る画素の数を検査してもよい。ここで各画素の写像を決定する際、全単射条件を破る確率をp0と仮定する。この場合、
【0076】
【数28】
が成立しているため、全単射条件を破る画素の数は次式の率で増加する。
【0077】
【数29】
従って、
【数30】
は定数である。仮にh(l)=Hlkを仮定するとき、例えば、
【0078】
【数31】
は定数になる。しかしλが最適値を越えると、上の値は急速に増加する。この現象を検出し、B0λ3/2+k/2/2mの値が異常値B0thresを越えるかどうかを検査し、λの最適値を決定することができる。同様に、B1λ3/2+k/2/2mの値が異常値B1thresを越えるかどうかを検査することにより、全単射の第3の条件を破る画素の増加率B1を確認する。ファクター2mを導入する理由は後述する。このシステムはこれら2つの閾値に敏感ではない。これらの閾値は、エネルギーC(m,s) fの観察では検出し損なった写像の過度の歪みを検出するために用いることができる。
【0079】
なお実験では、副写像f(m,s)を計算する際、もしλが0.1を越えたらf(m,s)の計算は止めてf(m,s+1)の計算に移行した。λ>0.1のとき、画素の輝度255レベル中のわずか「3」の違いが副写像の計算に影響したためであり、λ>0.1のとき正しい結果を得ることは困難だったためである。
【0080】
[1.4.2]ヒストグラムh(l)
C(m,s) fの検査はヒストグラムh(l)に依存しない。全単射及びその第3の条件の検査の際、h(l)に影響を受けうる。実際に(λ,C(m,s) f)をプロットすると、kは通常1付近にある。実験ではk=1を用い、B0λ2とB1λ2を検査した。仮にkの本当の値が1未満であれば、B0λ2とB1λ2は定数にならず、ファクターλ(1−k)/2に従って徐々に増加する。h(l)が定数であれば、例えばファクターはλ1/2である。しかし、こうした差は閾値B0thresを正しく設定することによって吸収することができる。
【0081】
ここで次式のごとく始点画像を中心が(x0,y0)、半径rの円形のオブジェクトであると仮定する。
【0082】
【数32】
一方、終点画像は、次式のごとく中心(x1,y1)、半径がrのオブジェクトであるとする。
【0083】
【数33】
ここでc(x)はc(x)=xkの形であるとする。中心(x0,y0)及び(x1,y1)が十分遠い場合、ヒストグラムh(l)は次式の形となる。
【0084】
【数34】
k=1のとき、画像は背景に埋め込まれた鮮明な境界線を持つオブジェクトを示す。このオブジェクトは中心が暗く、周囲にいくに従って明るくなる。k=−1のとき、画像は曖昧な境界線を持つオブジェクトを表す。このオブジェクトは中心が最も明るく、周囲にいくに従って暗くなる。一般のオブジェクトはこれらふたつのタイプのオブジェクトの中間にあると考えてもさして一般性を失わない。したがって、kは−1≦k≦1として大抵の場合をカバーでき、式27が一般に減少関数であることが保障される。
【0085】
なお、式34からわかるように、rは画像の解像度に影響されること、すなわちrは2mに比例することに注意すべきである。このために[1.4.1]においてファクター2mを導入した。
【0086】
[1.4.3]ηの動的決定
パラメータηも同様の方法で自動決定できる。はじめにη=0とし、最も細かい解像度における最終的な写像f(n)及びエネルギーC(n) fを計算する。つづいて、ηをある値Δηだけ増加させ、再び最も細かい解像度における最終写像f(n)及びエネルギーC(n) fを計算し直す。この過程を最適値が求まるまで続ける。ηは写像の剛性を示す。次式の重みだからである。
【0087】
【数35】
ηが0のとき、D(n) fは直前の副写像と無関係に決定され、現在の副写像は弾性的に変形され、過度に歪むことになる。一方、ηが非常に大きな値のとき、D(n) fは直前の副写像によってほぼ完全に決まる。このとき副写像は非常に剛性が高く、画素は同じ場所に射影される。その結果、写像は単位写像になる。ηの値が0から次第に増えるとき、後述のごとくC(n) fは徐々に減少する。しかしηの値が最適値を越えると、図4に示すとおり、エネルギーは増加し始める。同図のX軸はη、Y軸はCfである。
【0088】
この方法でC(n) fを最小にする最適なηの値を得ることができる。しかし、λの場合に比べていろいろな要素が計算に影響する結果、C(n) fは小さく揺らぎながら変化する。λの場合は、入力が微小量変化するたびに副写像を1回計算しなおすだけだが、ηの場合はすべての副写像が計算しなおされるためである。このため、得られたC(n) fの値が最小であるかどうかを即座に判断することはできない。最小値の候補が見つかれば、さらに細かい区間を設定することによって真の最小値を探す必要がある。
【0089】
[1.5]スーパーサンプリング
画素間の対応関係を決定する際、自由度を増やすために、f(m,s)の値域をR×Rに拡張することができる(Rは実数の集合)。この場合、終点画像の画素の輝度が補間され、非整数点、
【0090】
【数36】
における輝度を持つf(m,s)が提供される。つまりスーパーサンプリングが行われる。実験では、f(m,s)は整数及び半整数値をとることが許され、
【0091】
【数37】
は、
【数38】
によって与えられた。
【0092】
[1.6]各画像の画素の輝度の正規化
始点画像と終点画像がきわめて異なるオブジェクトを含んでいるとき、写像の計算に元の画素の輝度がそのままでは利用しにくい。輝度の差が大きいために輝度に関するエネルギーC(m,s) fが大きくなりすぎ、正しい評価がしずらいためである。
【0093】
例えば、人の顔と猫の顔のマッチングをとる場合を考える。猫の顔は毛で覆われており、非常に明るい画素と非常に暗い画素が混じっている。この場合、ふたつの顔の間の副写像を計算するために、まず副画像を正規化する。すなわち、最も暗い画素の輝度を0、最も明るいそれを255に設定し、他の画素の輝度は線形補間によって求めておく。
【0094】
[1.7]インプリメンテーション
始点画像のスキャンに従って計算がリニアに進行する帰納的な方法を用いる。始めに、1番上の左端の画素(i,j)=(0,0)についてf(m,s)の値を決定する。次にiを1ずつ増やしながら各f(m,s)(i,j)の値を決定する。iの値が画像の幅に到達したとき、jの値を1増やし、iを0に戻す。以降、始点画像のスキャンに伴いf(m,s)(i,j)を決定していく。すべての点について画素の対応が決まれば、ひとつの写像f(m,s)が決まる。
【0095】
あるp(i,j)について対応点qf(i,j)が決まれば、つぎにp(i,j+1)の対応点qf(i,j+1)が決められる。この際、qf(i,j+1)の位置は全単射条件を満たすために、qf(i,j)の位置によって制限される。したがって、先に対応点が決まる点ほどこのシステムでは優先度が高くなる。つねに(0,0)が最も優先される状態がつづくと、求められる最終の写像に余計な偏向が加わる。本前提技術ではこの状態を回避するために、f(m,s)を以下の方法で決めていく。
【0096】
まず(s mod 4)が0の場合、(0,0)を開始点としi及びjを徐々に増やしながら決めていく。(s mod 4)が1の場合、最上行の右端点を開始点とし、iを減少、jを増加させながら決めていく。(s mod 4)が2のとき、最下行の右端点を開始点とし、i及びjを減少させながら決めていく。(smod 4)が3の場合、最下行の左端点を開始点とし、iを増加、jを減少させながら決めていく。解像度が最も細かい第nレベルには副写像という概念、すなわちパラメータsが存在しないため、仮にs=0及びs=2であるとしてふたつの方向を連続的に計算した。
【0097】
実際のインプリメンテーションでは、全単射条件を破る候補に対してペナルティを与えることにより、候補(k,l)の中からできる限り全単射条件を満たすf(m,s)(i,j)(m=0,…,n)の値を選んだ。第3の条件を破る候補のエネルギーD(k、l)にはφを掛け、一方、第1または第2の条件を破る候補にはψを掛ける。今回はφ=2、ψ=100000を用いた。
【0098】
前述の全単射条件のチェックのために、実際の手続として(k,l)=f(m,s)(i,j)を決定する際に以下のテストを行った。すなわちf(m,s)(i,j)の相続四辺形に含まれる各格子点(k,l)に対し、次式の外積のz成分が0以上になるかどうかを確かめる。
【0099】
【数39】
ただしここで、
【数40】
【数41】
である(ここでベクトルは三次元ベクトルとし、z軸は直交右手座標系において定義される)。もしWが負であれば、その候補についてはD(m,s) (k,l)にψを掛けることによってペナルティを与え、できるかぎり選択しないようにする。
【0100】
図5(a)、図5(b)はこの条件を検査する理由を示している。図5(a)はペナルティのない候補、図5(b)はペナルティがある候補をそれぞれ表す。隣接画素(i,j+1)に対する写像f(m,s)(i,j+1)を決定する際、Wのz成分が負であれば始点画像平面上において全単射条件を満足する画素は存在しない。なぜなら、q(m,s) (k,l)は隣接する四辺形の境界線を越えるためである。
【0101】
[1.7.1]副写像の順序
インプリメンテーションでは、解像度レベルが偶数のときにはσ(0)=0、σ(1)=1、σ(2)=2、σ(3)=3、σ(4)=0を用い、奇数のときはσ(0)=3、σ(1)=2、σ(2)=1、σ(3)=0、σ(4)=3を用いた。このことで、副写像を適度にシャッフルした。なお、本来副写像は4種類であり、sは0〜3のいずれかである。しかし、実際にはs=4に相当する処理を行った。その理由は後述する。
【0102】
[1.8]補間計算
始点画像と終点画像の間の写像が決定された後、対応しあう画素の輝度が補間される。実験では、トライリニア補間を用いた。始点画像平面における正方形p(i,j)p(i+1,j)p(i,j+1)p(i+1,j+1)が終点画像平面上の四辺形qf(i,j)qf(i+1,j)qf(i,j+1)qf(i+1,j+1)に射影されると仮定する。簡単のため、画像間の距離を1とする。始点画像平面からの距離がt(0≦t≦1)である中間画像の画素r(x,y,t)(0≦x≦N−1,0≦y≦M−1)は以下の要領で求められる。まず画素r(x,y,t)の位置(ただしx,y,t∈R)を次式で求める。
【0103】
【数42】
つづいてr(x,y,t)における画素の輝度が次の式を用いて決定される。
【0104】
【数43】
ここでdx及びdyはパラメータであり、0から1まで変化する。
【0105】
[1.9]拘束条件を課したときの写像
いままでは拘束条件がいっさい存在しない場合の写像の決定を述べた。しかし、始点画像と終点画像の特定の画素間に予め対応関係が規定されているとき、これを拘束条件としたうえで写像を決定することができる。
【0106】
基本的な考えは、まず始点画像の特定の画素を終点画像の特定の画素に移す大まかな写像によって始点画像を大まかに変形し、しかる後、写像fを正確に計算する。
【0107】
まず始めに、始点画像の特定の画素を終点画像の特定の画素に射影し、始点画像の他の画素を適当な位置に射影する大まかな写像を決める。すなわち、特定の画素に近い画素は、その特定の画素が射影される場所の近くに射影されるような写像である。ここで第mレベルの大まかな写像をF(m)と記述する。
【0108】
大まかな写像Fは以下の要領で決める。まず、いくつかの画素について写像を特定する。始点画像についてns個の画素、
【0109】
【数44】
を特定するとき、以下の値を決める。
【0110】
【数45】
始点画像の他の画素の変位量は、p(ih,jh)(h=0,…,ns−1)の変位に重み付けをして求められる平均である。すなわち画素p(i,j)は、終点画像の以下の画素に射影される。
【0111】
【数46】
ただしここで、
【数47】
【数48】
とする。
【0112】
つづいて、F(m)に近い候補写像fがより少ないエネルギーを持つように、その写像fのエネルギーD(m,s) (i,j)を変更する。正確には、D(m,s) (i,j)は、
【0113】
【数49】
である。ただし、
【0114】
【数50】
であり、κ,ρ≧0とする。最後に、前述の写像の自動計算プロセスにより、fを完全に決定する。
【0115】
ここで、f(m,s)(i,j)がF(m)(i,j)に十分近いとき、つまりそれらの距離が、
【数51】
以内であるとき、E2 (m,s) (i,j)が0になることに注意すべきである。そのように定義した理由は、各f(m,s)(i,j)がF(m)(i,j)に十分近い限り、終点画像において適切な位置に落ち着くよう、その値を自動的に決めたいためである。この理由により、正確な対応関係を詳細に特定する必要がなく、始点画像は終点画像にマッチするように自動的にマッピングされる。
【0116】
[2]具体的な処理手順
[1]の各要素技術による処理の流れを説明する。
【0117】
図6は前提技術の全体手順を示すフローチャートである。同図のごとく、まず多重解像度特異点フィルタを用いた処理を行い(S1)、つづいて始点画像と終点画像のマッチングをとる(S2)。ただし、S2は必須ではなく、S1で得られた画像の特徴をもとに画像認識などの処理を行ってもよい。
【0118】
図7は図6のS1の詳細を示すフローチャートである。ここではS2で始点画像と終点画像のマッチングをとることを前提としている。そのため、まず特異点フィルタによって始点画像の階層化を行い(S10)、一連の始点階層画像を得る。つづいて同様の方法で終点画像の階層化を行い(S11)、一連の終点階層画像を得る。ただし、S10とS11の順序は任意であるし、始点階層画像と終点階層画像を並行して生成していくこともできる。
【0119】
図8は図7のS10の詳細を示すフローチャートである。もとの始点画像のサイズは2n×2nとする。始点階層画像は解像度が細かいほうから順に作られるため、処理の対象となる解像度レベルを示すパラメータmをnにセットする(S100)。つづいて第mレベルの画像p(m,0)、p(m,1)、p(m,2)、p(m,3)から特異点フィルタを用いて特異点を検出し(S101)、それぞれ第m−1レベルの画像p(m−1,0)、p(m−1,1)、p(m−1,2)、p(m−1,3)を生成する(S102)。ここではm=nであるため、p(m,0)=p(m,1)=p(m,2)=p(m,3)=p(n)であり、ひとつの始点画像から4種類の副画像が生成される。
【0120】
図9は第mレベルの画像の一部と、第m−1レベルの画像の一部の対応関係を示している。同図の数値は各画素の輝度を示す。同図のp(m,s)はp(m,0)〜p(m,3)の4つの画像を象徴するもので、p(m−1,0)を生成する場合には、p(m,s)はp(m,0)であると考える。[1.2]で示した規則により、p(m−1,0)は例えば同図で輝度を記入したブロックについて、そこに含まれる4画素のうち「3」、p(m−1,1)は「8」、p(m−1,2)は「6」、p(m−1,3)を「10」をそれぞれ取得し、このブロックをそれぞれ取得したひとつの画素で置き換える。したがって、第m−1レベルの副画像のサイズは2m−1×2m−1になる。
【0121】
つづいてmをデクリメントし(図8のS103)、mが負になっていないことを確認し(S104)、S101に戻ってつぎに解像度の粗い副画像を生成していく。この繰り返し処理の結果、m=0、すなわち第0レベルの副画像が生成された時点でS10が終了する。第0レベルの副画像のサイズは1×1である。
【0122】
図10はS10によって生成された始点階層画像をn=3の場合について例示している。最初の始点画像のみが4つの系列に共通であり、以降特異点の種類に応じてそれぞれ独立に副画像が生成されていく。なお、図8の処理は図7のS11にも共通であり、同様の手順を経て終点階層画像も生成される。以上で図6のS1による処理が完了する。
【0123】
前提技術では、図6のS2に進むためにマッチング評価の準備をする。図11はその手順を示している。同図のごとく、まず複数の評価式が設定される(S30)。[1.3.2.1]で導入した画素に関するエネルギーC(m,s) fと[1.3.2.2]で導入した写像の滑らかさに関するエネルギーD(m,s) fがそれである。つぎに、これらの評価式を統合して総合評価式を立てる(S31)。[1.3.2.3]で導入した総エネルギーλC(m,s) f+D(m,s) fがそれであり、[1.3.2.2]で導入したηを用いれば、
【0124】
【数52】
となる。ただし、総和はi、jについてそれぞれ0、1…、2m−1で計算する。以上でマッチング評価の準備が整う。
【0125】
図12は図6のS2の詳細を示すフローチャートである。[1]で述べたごとく、始点階層画像と終点階層画像のマッチングは互いに同じ解像度レベルの画像どうしでとられる。画像間の大域的なマッチングを良好にとるために、解像度が粗いレベルから順にマッチングを計算する。特異点フィルタを用いて始点階層画像および終点階層画像を生成しているため、特異点の位置や輝度は解像度の粗いレベルでも明確に保存されており、大域的なマッチングの結果は従来に比べて非常に優れたものになる。
【0126】
図12のごとく、まず係数パラメータηを0、レベルパラメータmを0に設定する(S20)。つづいて、始点階層画像中の第mレベルの4つの副画像と終点階層画像中の第mレベルの4つの副画像のそれぞれの間でマッチングを計算し、それぞれ全単射条件を満たし、かつエネルギーを最小にするような4種類の副写像f(m,s)(s=0,1,2,3)を求める(S21)。全単射条件は[1.3.3]で述べた相続四辺形を用いて検査される。この際、式17、18が示すように、第mレベルにおける副写像は第m−1レベルのそれらに拘束されるため、より解像度の粗いレベルにおけるマッチングが順次利用されていく。これは異なるレベル間の垂直的参照である。なお、いまm=0であってそれより粗いレベルはないが、この例外的な処理は図13で後述する。
【0127】
一方、同一レベル内における水平的参照も行われる。[1.3.3]の式20のごとく、f(m,3)はf(m,2)に、f(m,2)はf(m,1)に、f(m,1)はf(m,0)に、それぞれ類似するように決める。その理由は、特異点の種類が違っても、それらがもともと同じ始点画像と終点画像に含まれている以上、副写像がまったく異なるという状況は不自然だからである。式20からわかるように、副写像どうしが近いほどエネルギーは小さくなり、マッチングが良好とみなされる。
【0128】
なお、最初に決めるべきf(m,0)については同一のレベルで参照できる副写像がないため、式19に示すごとくひとつ粗いレベルを参照する。ただし、実験ではf(m,3)まで求まった後、これを拘束条件としてf(m,0)を一回更新するという手続をとった。これは式20にs=4を代入し、f(m,4)を新たなf(m,0)とすることに等しい。f(m,0)とf(m,3)の関連度が低くなり過ぎる傾向を回避するためであり、この措置によって実験結果がより良好になった。この措置に加え、実験では[1.7.1]に示す副写像のシャッフルも行った。これも本来特異点の種類ごとに決まる副写像どうしの関連度を密接に保つ趣旨である。また、処理の開始点に依存する偏向を回避するために、sの値にしたがって開始点の位置を変える点は[1.7]で述べたとおりである。
【0129】
図13は第0レベルにおいて副写像を決定する様子を示す図である。第0レベルでは各副画像がただひとつの画素で構成されるため、4つの副写像f(0,s)はすべて自動的に単位写像に決まる。図14は第1レベルにおいて副写像を決定する様子を示す図である。第1レベルでは副画像がそれぞれ4画素で構成される。同図ではこれら4画素が実線で示されている。いま、p(1,s)の点xの対応点をq(1,s)の中で探すとき、以下の手順を踏む。
【0130】
1.第1レベルの解像度で点xの左上点a、右上点b、左下点c、右下点dを求める。
【0131】
2.点a〜dがひとつ粗いレベル、つまり第0レベルにおいて属する画素を探す。図14の場合、点a〜dはそれぞれ画素A〜Dに属する。ただし、画素A〜Cは本来存在しない仮想的な画素である。
【0132】
3.第0レベルですでに求まっている画素A〜Dの対応点A’〜D’をq(1 ,s)の中にプロットする。画素A’〜C’は仮想的な画素であり、それぞれ画素A〜Cと同じ位置にあるものとする。
【0133】
4.画素Aの中の点aの対応点a’が画素A’の中にあるとみなし、点a’をプロットする。このとき、点aが画素Aの中で占める位置(この場合、右下)と、点a’が画素A’の中で占める位置が同じであると仮定する。
【0134】
5.4と同様の方法で対応点b’〜d’をプロットし、点a’〜d’で相続四辺形を作る。
【0135】
6.相続四辺形の中でエネルギーが最小になるよう、点xの対応点x’を探す。対応点x’の候補として、例えば画素の中心が相続四辺形に含まれるものに限定してもよい。図14の場合、4つの画素がすべて候補になる。
【0136】
以上がある点xの対応点の決定手順である。同様の処理を他のすべての点について行い、副写像を決める。第2レベル以上のレベルでは、次第に相続四辺形の形が崩れていくと考えられるため、図3に示すように画素A’〜D’の間隔が空いていく状況が発生する。
【0137】
こうして、ある第mレベルの4つの副写像が決まれば、mをインクリメントし(図12のS22)、mがnを超えていないことを確かめて(S23)、S21に戻る。以下、S21に戻るたびに次第に細かい解像度のレベルの副写像を求め、最後にS21に戻ったときに第nレベルの写像f(n)を決める。この写像はη=0に関して定まったものであるから、f(n)(η=0)と書く。
【0138】
つぎに異なるηに関する写像も求めるべく、ηをΔηだけシフトし、mをゼロクリアする(S24)。新たなηが所定の探索打切り値ηmaxを超えていないことを確認し(S25)、S21に戻り、今回のηに関して写像f(n)(η=Δη)を求める。この処理を繰り返し、S21でf(n)(η=iΔη)(i=0,1,…)を求めていく。ηがηmaxを超えたときS26に進み、後述の方法で最適なη=ηoptを決定し、f(n)(η=ηopt)を最終的に写像f(n)とする。
【0139】
図15は図12のS21の詳細を示すフローチャートである。このフローチャートにより、ある定まったηについて、第mレベルにおける副写像が決まる。副写像を決める際、前提技術では副写像ごとに最適なλを独立して決める。
【0140】
同図のごとく、まずsとλをゼロクリアする(S210)。つぎに、そのときのλについて(および暗にηについて)エネルギーを最小にする副写像f(m,s)を求め(S211)、これをf(m,s)(λ=0)と書く。異なるλに関する写像も求めるべく、λをΔλだけシフトし、新たなλが所定の探索打切り値λmaxを超えていないことを確認し(S213)、S211に戻り、以降の繰り返し処理でf(m,s)(λ=iΔλ)(i=0,1,…)を求める。λがλmaxを超えたときS214に進み、最適なλ=λoptを決定し、f(m,s)(λ=λopt)を最終的に写像f(m,s)とする(S214)。
【0141】
つぎに、同一レベルにおける他の副写像を求めるべく、λをゼロクリアし、sをインクリメントする(S215)。sが4を超えていないことを確認し(S216)、S211に戻る。s=4になれば上述のごとくf(m,3)を利用してf(m,0)を更新し、そのレベルにおける副写像の決定を終了する。
【0142】
図16は、あるmとsについてλを変えながら求められたf(m,s)(λ=iΔλ)(i=0,1,…)に対応するエネルギーC(m,s) fの挙動を示す図である。[1.4]で述べたとおり、λが増加すると通常C(m,s) fは減少する。しかし、λが最適値を超えるとC(m,s) fは増加に転じる。そこで本前提技術ではC(m,s) fが極小値をとるときのλをλoptと決める。同図のようにλ>λoptの範囲で再度C(m,s) fが小さくなっていっても、その時点ではすでに写像がくずれていて意味をなさないため、最初の極小点に注目すればよい。λoptは副写像ごとに独立して決めていき、最後にf(n)についてもひとつ定まる。
【0143】
一方、図17は、ηを変えながら求められたf(n)(η=iΔη)(i=0,1,…)に対応するエネルギーC(n) fの挙動を示す図である。ここでもηが増加すると通常C(n) fは減少するが、ηが最適値を超えるとC(n) fは増加に転じる。そこでC(n) fが極小値をとるときのηをηoptと決める。図17は図4の横軸のゼロ付近を拡大した図と考えてよい。ηoptが決まればf(n)を最終決定することができる。
【0144】
以上、本前提技術によれば種々のメリットが得られる。まずエッジを検出する必要がないため、エッジ検出タイプの従来技術の課題を解消できる。また、画像に含まれるオブジェクトに対する先験的な知識も不要であり、対応点の自動検出が実現する。特異点フィルタによれば、解像度の粗いレベルでも特異点の輝度や位置を維持することができ、オブジェクト認識、特徴抽出、画像マッチングに極めて有利である。その結果、人手作業を大幅に軽減する画像処理システムの構築が可能となる。
【0145】
なお、本前提技術について次のような変形技術も考えられる。
【0146】
(1)前提技術では始点階層画像と終点階層画像の間でマッチングをとる際にパラメータの自動決定を行ったが、この方法は階層画像間ではなく、通常の2枚の画像間のマッチングをとる場合全般に利用できる。
【0147】
たとえば2枚の画像間で、画素の輝度の差に関するエネルギーE0と画素の位置的なずれに関するエネルギーE1のふたつを評価式とし、これらの線形和Etot=αE0+E1を総合評価式とする。この総合評価式の極値付近に注目してαを自動決定する。つまり、いろいろなαについてEtotが最小になるような写像を求める。それらの写像のうち、αに関してE1が極小値をとるときのαを最適パラメータと決める。そのパラメータに対応する写像を最終的に両画像間の最適マッチングとみなす。
【0148】
これ以外にも評価式の設定にはいろいろな方法があり、例えば1/E1と1/E2のように、評価結果が良好なほど大きな値をとるものを採用してもよい。総合評価式も必ずしも線形和である必要はなく、n乗和(n=2、1/2、−1、−2など)、多項式、任意の関数などを適宜選択すればよい。
【0149】
パラメータも、αのみ、前提技術のごとくηとλのふたつの場合、それ以上の場合など、いずれでもよい。パラメータが3以上の場合はひとつずつ変化させて決めていく。
【0150】
(2)本前提技術では、総合評価式の値が最小になるよう写像を決めた後、総合評価式を構成するひとつの評価式であるC(m,s) fが極小になる点を検出してパラメータを決定した。しかし、こうした二段回処理の代わりに、状況によっては単に総合評価式の最小値が最小になるようにパラメータを決めても効果的である。その場合、例えばαE0+βE1を総合評価式とし、α+β=1なる拘束条件を設けて各評価式を平等に扱うなどの措置を講じてもよい。パラメータの自動決定の本質は、エネルギーが最小になるようにパラメータを決めていく点にあるからである。
【0151】
(3)前提技術では各解像度レベルで4種類の特異点に関する4種類の副画像を生成した。しかし、当然4種類のうち1、2、3種類を選択的に用いてもよい。例えば、画像中に明るい点がひとつだけ存在する状態であれば、極大点に関するf(m,3)だけで階層画像を生成しても相応の効果が得られるはずである。その場合、同一レベルで異なる副写像は不要になるため、sに関する計算量が減る効果がある。
【0152】
(4)本前提技術では特異点フィルタによってレベルがひとつ進むと画素が1/4になった。例えば3×3で1ブロックとし、その中で特異点を探す構成も可能であり、その場合、レベルがひとつ進むと画素は1/9になる。
【0153】
(5)始点画像と終点画像がカラーの場合、それらをまず白黒画像に変換し、写像を計算する。その結果求められた写像を用いて始点のカラー画像を変換する。それ以外の方法として、RGBの各成分について副写像を計算してもよい。
【0154】
[3]前提技術の改良点
以上の前提技術を基本とし、マッチング精度を向上させるためのいくつかの改良がなされている。ここではその改良点を述べる。
【0155】
[3.1]色情報を考慮に入れた特異点フィルタおよび副画像
画像の色情報を有効に用いるために、特異点フィルタを以下のように変更した。まず色空間としては、人間の直感に最も合致するといわれているHISを用い、色を輝度に変換する式には、人間の目の感度に最も近いといわれているものを選んだ。
【0156】
【数53】
ここで画素aにおけるY(輝度)をY(a)、S(彩度)をS(a)として、次のような記号を定義する。
【0157】
【数54】
上の定義を用いて以下のような5つのフィルタを用意する。
【0158】
【数55】
このうち上から4つのフィルタは改良前の前提技術におけるフィルタとほぼ同じで、輝度の特異点を色情報も残しながら保存する。最後のフィルタは色の彩度の特異点をこちらも色情報を残しながら保存する。
【0159】
これらのフィルタによって、各レベルにつき5種類の副画像(サブイメージ)が生成される。なお、最も高いレベルの副画像は元画像に一致する。
【0160】
【数56】
[3.2]エッジ画像およびその副画像
輝度微分(エッジ)の情報をマッチングに利用するため、一次微分エッジ検出フィルタを用いる。このフィルタはあるオペレータHとの畳み込み積分で実現できる。
【0161】
【数57】
ここでHは演算スピードなども考慮し、以下のようなオペレータを用いた。
【0162】
【数58】
次にこの画像を多重解像度化する。フィルタにより0を中心とした輝度をもつ画像が生成されるため、次のような平均値画像が副画像としては最も適切である。
【0163】
【数59】
式59の画像は後述するForward Stage、すなわち初回副写像導出ステージの計算の際、エネルギー関数に用いられる。
【0164】
エッジの大きさ、すなわち絶対値も計算に必要である。
【0165】
【数60】
この値は常に正であるため、多重解像度化には最大値フィルタを用いる。
【0166】
【数61】
式61の画像は後述するForward Stageの計算の際、計算する順序を決定するのに用いられる。
【0167】
[3.3]計算処理手順
計算は最も粗い解像度の副画像から順に行う。副画像は5つあるため、各レベルの解像度において計算は複数回行われる。これをターンと呼び、最大計算回数をtで表すことにする。各ターンは前記Forward Stageと、副写像再計算ステージであるRefinement Stageという二つのエネルギー最小化計算から構成される。図18は第mレベルにおける副写像を決める計算のうち改良点に係るフローチャートである。
【0168】
同図のごとく、sをゼロクリアする(S40)。つぎにForward Stage(S41)において始点画像pから終点画像qへの写像f( m,s )をエネルギー最小化によって求める。ここで最小化するエネルギーは、対応する画素値によるエネルギーCと、写像の滑らかさによるエネルギーDの線形和である。
【0169】
エネルギーCは、輝度の差によるエネルギーCI(前記改良前の前提技術におけるエネルギーCと等価)と、色相、彩度によるエネルギーCC、輝度微分(エッジ)の差によるエネルギーCEで構成され、それぞれ次のように表される。
【0170】
【数62】
エネルギーDは前記改良前の前提技術と同じものを用いる。ただし前記改良前の前提技術において、写像の滑らかさを保証するエネルギーE1を導出する際、隣接する画素のみを考慮していたが、周囲の何画素を考慮するかをパラメータdで指定できるように改良した。
【0171】
【数63】
次のRefinement Stageに備えて、このステージでは終点画像qから始点画像pへの写像g(m,s)も同様に計算する。
【0172】
Refinement Stage(S42)ではForward Stageにおいて求めた双方向の写像f(m,s)およびg(m,s)を基に、より妥当な写像f’(m,s)を求める。ここでは新たに定義されるエネルギーMについてエネルギー最小化計算を行う。エネルギーMは終点画像から始点画像への写像gとの整合度M0と、もとの写像との差M1より構成される。
【0173】
【数64】
対称性を損なわないように、終点画像qから始点画像pへの写像g’(m,s)も同様の方法で求めておく。
【0174】
その後、sをインクリメントし(S43)、sがtを超えていないことを確認し(S44)、次のターンのForward Stage(S41)に進む。その際前記E0を次のように置き換えてエネルギー最小化計算を行う。
【0175】
【数65】
[3.4]写像の計算順序
写像の滑らかさを表すエネルギーE1を計算する際、周囲の点の写像を用いるため、それらの点がすでに計算されているかどうかがエネルギーに影響を与える。すなわち、どの点から順番に計算するかによって、全体の写像の精度が大きく変化する。そこでエッジの絶対値画像を用いる。エッジの部分は情報量を多く含むため、エッジの絶対値が大きいところから先に写像計算を行う。このことによって、特に二値画像のような画像に対して非常に精度の高い写像を求めることができるようになった。
【0176】
[画像符号化に関する実施の形態]
以上の前提技術を一部利用した画像符号化技術の具体例を述べる。
【0177】
(実施の形態1)
図19は、実施の形態1に係る画像符号化装置100の構成図である。画像符号化装置100は、画像入力部10、フレーム記憶部12、画像選択部14、マッチングプロセッサ16、ストリーム生成部18を有する。また画像選択部14は、計算部50、判定部52を有する。
【0178】
画像入力部10は、ネットワークや記録装置などから画像コンテンツのキーフレームKFi(以下、これを「オリジナルキーフレーム」ともよぶ)列を取得し、それをフレーム記憶部12へ出力する。図20(a)は、オリジナルキーフレーム列を示す。オリジナルキーフレームは例えば動画のフレームを0.5秒おきに抽出することで定められる。また、デジタルカメラ等で撮影された画像であってもよい。
フレーム記憶部12は、オリジナルキーフレーム列を格納する。これは、画像符号化装置100の外にあっても構わない。
【0179】
画像選択部14は、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外する。画像選択部14における計算部50は、キーフレーム間における表示内容の相違を計算し、判定部52は、その計算結果をもとに除外できるキーフレームを特定する。図20(b)は、以上の処理結果におけるキーフレーム列を示す。ここで、KF2、KF3、KF5、KF6、KF7が除外されている。画像選択部14は、除外されなかったキーフレーム(以下、これを「選択キーフレーム」ともよぶ、図中「KF’」と表記)をマッチングプロセッサ16、ストリーム生成部18へ出力する。
【0180】
マッチングプロセッサ16は、選択キーフレーム全体の列において、隣接する選択キーフレーム間で前提技術による画像マッチングを計算して対応点情報(図中「MF’」と表記)を生成する。
ストリーム生成部18は、選択キーフレームと対応点情報を取得し、これらを組み込む形で符号化データストリームCDS(以下、「ストリーム」という)を生成する。図20(c)は図20(b)に対応して、生成されたストリームの一例を示す。このストリームはネットワークへ送出され、図示しない画像再生装置にて受信されるほか、図示しない記憶装置に格納される。
【0181】
図21は、画像符号化装置100における除外するキーフレーム特定についての手順を示すフローチャートである。ここで、αは本手順の対象となるオリジナルキーフレーム数、βは連続して除外するキーフレーム数の初期値、γはキーフレームの除外を決定するためのしきい値、iは手順処理中において除外されないことが決定された最後のキーフレーム番号、jは連続して除外するキーフレーム数を示す。
【0182】
画像入力部10には、オリジナルキーフレーム列が入力される(S110)。計算部50は、iを1に(S112)、jをβに(S114)設定する。これらの設定により、オリジナルキーフレームKFiとKFi+jが選択される。図22は、KF1とKF3が選択されている例を示す。次に、選択された2枚のキーフレームの差を計算する(S116)。差は、例えば両キーフレームの位置的に対応しあう画素値の差の絶対値や二乗値の総和である。図22では、KF1とKF3の座標(x0、y0)の画素p0とp1における画素値を比較している。さらに、この画素値の差は画面全体の画素値数で総和される。
【0183】
判定部52は、求められた差が、所定のしきい値γ以下の場合(S116のY)、さらに除外するキーフレーム数を増加させるため、jに1を加算する(S122)。なおこの結果は後で利用するために記録される(S120)。一方差が、所定のしきい値γより大きい場合(S116のN)、除外するキーフレーム数を減少させるため、jから1を減算する(S126)。キーフレーム間の差がしきい値γ以下という条件下における、jの最大値を求めるために、これらの処理が繰り返し実行される。
【0184】
除外するキーフレーム数jは、i+jが対象となるオリジナルキーフレーム数α(S118のY)、jが1(S124のN)、KFiとKFi+jの差がS120において計算済み(S128のY)になった場合に決定される。このときの、KFiが選択され(S130)、手順処理中において除外されないことが決定されたキーフレーム番号iをi+jに移動させる(S132)。iが対象となるオリジナルキーフレーム数αでなければ(S134のN)、以上の処理が繰り返される。iがαになった場合(S134のY)、KFαを選択して(S136)、終了する。以上の処理で選択されたキーフレームが選択キーフレームである。
【0185】
このように、本実施の形態によれば、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するため、画像コンテンツの品質を劣化させることなく、容量を削減することが可能である。さらに、キーフレーム間の表示内容の相違で除外するキーフレームを特定するため、それらにおける中間フレーム生成の必要がなく、容易に特定可能である。特に、シーンチェンジなどにおけるキーフレーム間の表示内容の相違が大きい場合に、誤ってキーフレームを除外する可能性は一般的に小さい。
【0186】
(実施の形態2)
図23は、実施の形態2に係る画像符号化装置110の構成図である。画像符号化装置110は、画像入力部10、フレーム記憶部12、マッチングプロセッサ20、画像選択部22、抽出部24、ストリーム生成部18を有する。画像入力部10、フレーム記憶部12、ストリーム生成部18は図19と同一である。また画像選択部22は、計算部54、判定部56を有する。
【0187】
マッチングプロセッサ20は、オリジナルキーフレーム全体の列において、隣接するオリジナルキーフレーム間で前提技術による画像マッチングを計算して対応点情報(図中「MF」と表記)を生成する。このとき、連続したキーフレーム間だけではなく、離散的に選択されたキーフレーム間においても対応点情報も生成する。離散的に選択する数は複数種あっても構わない。さらに、これらの対応点情報を生成する際に得られるデータも出力する。例えば、全単射条件を満たすか否か、式14の写像のエネルギー値である。
【0188】
画像選択部22は、図19における画像選択部14と同様にオリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外する。しかし、画像選択部14はオリジナルキーフレームを使用して除外するキーフレームを特定していたのに対し、画像選択部22は対応点情報を生成する際に得られるデータを使用してこれらを特定する。計算部54は、対応点情報を生成する際に得られるデータをもとに除外するキーフレームを特定するために必要な値を計算する。判定部56は、その計算結果をもとに除外できるキーフレームを特定する。画像選択部22は、以上の処理結果、除外するキーフレームについての情報を抽出部24へ、それらに対応する対応点情報をストリーム生成部18へ出力する。
抽出部24は、オリジナルキーフレーム列と除外するキーフレームについての情報から選択キーフレームを生成し、ストリーム生成部18へ出力する。
【0189】
図24は、画像符号化装置110における除外するキーフレーム特定についての手順を示すフローチャートである。ここで、図中における記号は図22と同一である。画像入力部10には、オリジナルキーフレーム列が入力される(S50)。マッチングプロセッサ20は、キーフレーム間隔が異なる複数種の対応点情報を生成する(S52)。その生成過程で、全単射条件を満たすか否か、式14の写像のエネルギー値などの情報も生成される。計算部54は、iを1に(s54)、jをβに(S56)設定する。これらの設定後、対応点情報の中でMFi(i+j)およびそれを生成する過程で得られるデータが選択される。ここでMFi(i+j)はキーフレームKFiとKFi+j間における対応点情報である。さらに、MFi(i+j)を生成する際に得られるデータから除外するキーフレームを特定するために必要な値を計算してもよい。これは、例えば、前提条件における式14の各項に所定の係数を乗算することなどである。一方、全単射条件を満たすか否か、式14の写像のエネルギー値をそのまま使用してもよい。
【0190】
判定部56は、以上の値が、所定の条件を満足するかを判定する(S58)。例えば、写像のエネルギー値が所定のしきい値より小さいか、または全単射条件をすべて満たすかなどである。所定の条件を満足する場合(S58のY)、さらに除外するキーフレーム数を増加させるため、jに1を加算する(S64)。なお判定結果は後で利用するために記録される(S62)。一方、所定の条件を満足しない場合(S58のN)、除外するキーフレーム数を減少させるため、jから1を減算する(S68)。図22と同様、jの最大値を求めるために、これらの処理が繰り返し実行される。
【0191】
除外するキーフレーム数jは、i+jが対象となるオリジナルキーフレーム数α(S60のY)、jが1(S66のN)、MFi(i+j)についての条件がS62において判定済み(S70のY)になった場合に決定される。このときの、KFiとMFi(i+j)が選択され(S72)、手順処理中において除外されないことが決定された最後のキーフレーム番号iをi+jに移動させる(S74)。iが対象となるオリジナルキーフレーム数αでなければ(S76のN)、以上の処理が繰り返される。iがαになった場合(S76のY)、KFαを選択して(S78)、終了する。
【0192】
このように、本実施の形態によれば、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するため、画像コンテンツの品質を劣化させることなく、容量を削減することが可能である。さらに、対応点情報の生成過程で得られたデータを使用するため、対応点情報の問題点が反映されており、一般に品質への影響が少ないキーフレームの特定の確実性が向上する。
【0193】
(実施の形態3)
図25は、実施の形態3に係る画像符号化装置120の構成図である。画像符号化装置120は、画像入力部10、フレーム記憶部12、マッチングプロセッサ20、画像選択部26、ストリーム生成部18を有する。画像入力部10、フレーム記憶部12、ストリーム生成部18は図19と、マッチングプロセッサ20は図23と同一である。また画像選択部26は、計算部58、判定部60を有する。
【0194】
画像選択部26は、図19における画像選択部14、図23における画像選択部22と同様にオリジナルキーフレーム列から画像コンテンツへの品質が少ないキーフレームを除外する。しかし、その方法が異なる。画像選択部26における計算部58には、オリジナルキーフレーム列と対応情報が入力される。これが図26(a)である。計算部58は、所定のキーフレームKFiに対応する中間フレームIFiを生成する。中間フレームIFiはこれの前後にあるふたつのキーフレームKFi−x、KFi+yと対応する対応点情報MF(i−x)(i+y)から生成される画像である。ここでxとyは1以上の整数である。図26(b)および(c)は生成された中間フレームを示す。図26(b)では、IF2がふたつのキーフレームKF1、KF3と対応点情報MF13から生成されている。また、図26(c)では、IF2とIF3がふたつのキーフレームKF1、KF4と対応点情報MF14から生成されている。次に計算部58は、所定のキーフレームKFiとそれに対応する中間フレームIFiを比較する。比較方法は、図21におけるS16と同じく、これらの表示内容の差を求めてもよい。
【0195】
画像選択部26における判定部60は、計算部58で求めた差と所定のしきい値を比較する。その差が所定のしきい値以下の場合、所定のキーフレームは画像コンテンツへの品質が少ないキーフレームとして除外される。なぜなら、一般にこれの代わりに中間フレームを使用しても、同等の品質を維持できるからである。例えば、図26(c)におけるIF2、IF3と図26(a)におけるKF2、KF3の差がしきい値以下の場合、KF2、KF3の代わりにIF2、IF3を使用する。一方、これらの差はしきい値より大きいが、図26(b)におけるIF2と図26(a)におけるKF2の差がしきい値以下の場合、KF2の代わりにIF2を使用する。ここでは一例として除外するキーフレーム数を2としたが、これに限らない。画像選択部26は、以上の処理結果、選択キーフレームとそれらに対応する対応点情報をストリーム生成部18へ出力する。
【0196】
このように、本実施の形態によれば、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するため、画像コンテンツの品質を劣化させることなく、容量を削減することが可能である。さらに、対応点情報から生成された中間フレームを対応するキーフレームと比較した後、除外するキーフレームを特定するため、一般に品質への影響が少ないキーフレームの特定の確実性がより向上する。
【0197】
(実施の形態4)
図27は、実施の形態4に係る画像符号化装置130の構成図である。画像符号化装置130は、画像入力部10、フレーム記憶部12、設定部30、画像選択部28、マッチングプロセッサ16、ストリーム生成部18を有する。画像入力部10、フレーム記憶部12、マッチングプロセッサ16、ストリーム生成部18は図19と同一である。また画像選択部28は、計算部50、判定部62を有する。
【0198】
設定部30では、所定のキーフレームが除外された後における画像コンテンツの容量の目標値が設定される。この目標値の設定は、ユーザが行ってもよいし、内部処理によって自動的に行われてもよい。例えば、前者ではユーザインターフェースを介して設定される。一方後者では、画像コンテンツを記録しようとする記録媒体の種類、画像コンテンツを配信しようとする通信回線の伝送容量についての情報などをもとに設定される。設定部30は、目標値を画像選択部28に出力する。
【0199】
画像選択部28は、図19における画像選択部14、図23における画像選択部22、図25における画像選択部26と同様に、オリジナルキーフレームから画像コンテンツの品質への影響が少ないキーフレームを除外する。しかし、画像選択部28は所定のキーフレームを削除した画像コンテンツの容量を目標値以下にする必要がある。そのため、例えば除外すべきキーフレーム数に応じて図21におけるしきい値γが可変して設定される。すなわち、目標値が大容量であればγを大きくして、除外するキーフレーム数を少なくする。一方、目標値が小容量であればγを小さくして、除外するキーフレーム数を多くする。
【0200】
このように、本実施の形態によれば、目標値に応じてキーフレームを除外するしきい値を変化させるため、最終的な画像コンテンツの容量を目標値と同等にすることが可能である。さらに、除外するキーフレームは画像コンテンツの品質への影響が少ないキーフレームから行うため、一般に画像コンテンツの品質を劣化させることがない。
【0201】
以上、実施の形態をもとに本発明を説明した。なお本発明はこの実施の形態に限定されることなく、そのさまざまな変形例もまた、本発明の態様として有効である。そうした例を挙げる。
【0202】
実施の形態1では、除外するキーフレームの検索をオリジナルキーフレームの先頭から開始し、対象とするキーフレーム数まで増加させている。しかし、除外するキーフレームの検索はオリジナルキーフレーム列の1枚目からでなくても可能である。例えば、検索をオリジナルキーフレーム列の途中から行うことも可能である。要は、一定範囲のキーフレームを対象に、除外するキーフレームの特定が行われればよい。
【0203】
実施の形態1において、ストリームはふたつのキーフレームの間にそれらに対応する対応点情報を配置させる形で生成される。しかし、ストリームの構成はこれに限られない。例えば、キーフレームを連続して配置させ、その後に対応点情報を連続して配置させることによって構成してもよい。要は、このストリームを再生する側がその構成を認識できればよい。
【0204】
実施の形態2では、除外するキーフレーム数に応じてあらかじめ複数種の対応点情報を生成している。しかし、複数種の対応点情報をあらかじめ作成せずに、条件判定後にこれを生成することも可能である。例えば、ひとつのキーフレームを除外可能と判定された後、連続したふたつのキーフレームを除外する場合の対応点情報を生成してもよい。要は、対応点情報の生成過程で得られるデータをもとに所定のキーフレームが除外できるかを正確に判断できればよい。
【0205】
実施の形態4では、所定キーフレーム除外後の画像コンテンツの容量に対する目標値に対応してしきい値を決定している。しかし、画像選択部はしきい値を処理の間に適応的に変化させることも可能である。例えば、最初はしきい値を高くして除外するキーフレームを特定し、その時点でまだ容量が目標値に達していなければ、さらにしきい値を低くして除外するキーフレームを再び特定することも可能である。この処理は容量が目標値に達するまで繰り返し行われる。要は、画質への影響が少なくキーフレームが除外され、所定キーフレーム除外後の容量が目標値になればよい。
【0206】
実施の形態4では、所定キーフレーム除外後の画像コンテンツの容量が目標値以下になるよう処理を行っている。しかし、目標値以下でなくてもよい場合がある。例えば、所定キーフレーム除外後の画像コンテンツをEthernet(登録商標)などにより伝送する場合、所定キーフレーム除外後のコンテンツの容量が目標値より大きくても、Ethernetの可能伝送容量より小さければ、一般に伝送可能である。要は、対象となる媒体の性質に応じて設定されればよい。
【図面の簡単な説明】
【図1】図1(a)とは図1(b)は、ふたりの人物の顔に平均化フィルタを施して得られる画像、図1(c)と図1(d)は、ふたりの人物の顔に関して前提技術で求められるp(5,0)の画像、図1(e)と図1(f)は、ふたりの人物の顔に関して前提技術で求められるp(5,1)の画像、図1(g)と図1(h)は、ふたりの人物の顔に関して前提技術で求められるp(5,2)の画像、図1(i)と図1(j)は、ふたりの人物の顔に関して前提技術で求められるp(5,3)の画像をそれぞれディスプレイ上に表示した中間調画像の写真である。
【図2】図2(R)はもとの四辺形を示す図、図2(A)、図2(B)、図2(C)、図2(D)、図2(E)はそれぞれ相続四辺形を示す図である。
【図3】始点画像と終点画像の関係、および第mレベルと第m−1レベルの関係を相続四辺形を用いて示す図である。
【図4】パラメータηとエネルギーCfの関係を示す図である。
【図5】図5(a)、図5(b)は、ある点に関する写像が全単射条件を満たすか否かを外積計算から求める様子を示す図である。
【図6】前提技術の全体手順を示すフローチャートである。
【図7】図6のS1の詳細を示すフローチャートである。
【図8】図7のS10の詳細を示すフローチャートである。
【図9】第mレベルの画像の一部と、第m−1レベルの画像の一部の対応関係を示す図である。
【図10】前提技術で生成された始点階層画像を示す図である。
【図11】図6のS2に進む前に、マッチング評価の準備の手順を示す図である。
【図12】図6のS2の詳細を示すフローチャートである。
【図13】第0レベルにおいて副写像を決定する様子を示す図である。
【図14】第1レベルにおいて副写像を決定する様子を示す図である。
【図15】図12のS21の詳細を示すフローチャートである。
【図16】あるf(m,s)についてλを変えながら求められたf(m,s)(λ=iΔλ)に対応するエネルギーC(m,s) fの挙動を示す図である。
【図17】ηを変えながら求められたf(n)(η=iΔη)(i=0,1,…)に対応するエネルギーC(n) fの挙動を示す図である。
【図18】改良後の前提技術において第mレベルにおける副写像を求めるフローチャートである。
【図19】実施の形態1に係る画像符号化装置の構成図である。
【図20】図19の装置によるキーフレームを示す図である。
【図21】図19の装置によるキーフレーム選択の手順を示すフローチャートである。
【図22】図19の装置の計算部の動作概要を示す図である。
【図23】実施の形態2に係る画像符号化装置の構成図である。
【図24】図23の装置によるキーフレーム選択の手順を示すフローチャートである。
【図25】実施の形態3に係る画像符号化装置の構成図である。
【図26】図25の装置によるキーフレーム選択の動作概要を示す図である。
【図27】実施の形態4に係る画像符号化装置の構成図である。
【符号の説明】
10 画像入力部、 12 フレーム記憶部、 14、22、26、28 画像選択部、 16、20 マッチングプロセッサ、 18 ストリーム生成部、24 抽出部、 30 設定部、 50、54、58 計算部、 52、56、60、62 判定部、 100、110、120、130 画像符号化装置。
【発明の属する技術分野】
この発明は、画像編集技術に関し、とくに動画の圧縮を中心とする画像の符号化方法と装置に関する。
【0002】
【従来の技術】
動画圧縮の事実上の世界標準であるMPEG(Motion Picture Expert Group)は、CDなどストレージメディアからネットワークや放送などの伝送メディアへとそのターゲットエリアが広がった。放送のデジタル化はMPEGを中心とする圧縮符号化技術なしに考えることはできない。放送と通信の垣根が崩れ、サービス事業者の多様化は必須になり、ブロードバンド時代にデジタル文化がいかなる進展を遂げるか、予測がつきにくい状況にある。
【0003】
【発明が解決しようとする課題】
そうした混沌の中でも、動画の圧縮技術に関する方向性について確かなことがある。すなわち、より高い圧縮率と画質の両立である。MPEGは周知のごとく高圧縮化をブロック歪みが阻むことがある。また、動画の配信が現実的になるにしたがい、リアルタイム処理に対するいままで以上の配慮が必要になる。
【0004】
本発明はこうした現状に鑑みてなされたものであり、その目的は、画像データの効率的圧縮を実現する技術の提供にある。別の目的は、画質の維持と圧縮率の向上という相反する要望に適う技術の提供にある。さらに別の目的は、あらかじめ設定された所定キーフレーム除外後の画像データの容量にあわせて、画質の劣化を少なくして画像データを圧縮する技術の提供にある。さらに別の目的は、品質への影響が少ない画像を特定する技術の提供にある。
【0005】
【課題を解決するための手段】
本発明は画像符号化技術に関する。この技術は本出願人が先に特許第2927350号にて提案した画像マッチング技術(以下「前提技術」という)を利用することができる。
本発明のある態様は、画像符号化装置に関する。この装置は、画像コンテンツを構成するキーフレーム列を入力する入力部と、キーフレーム列から画像コンテンツの品質への影響が少ない所定のキーフレームを除外する画像選択部とを含む。
【0006】
「フレーム」は画像の単位であるが、以下特に必要がない限り、これと「画像」を区別しない。
「キーフレーム列」は、ひとつ以上のキーフレームで構成される。
「品質への影響」とは、客観的に評価されるものだけではなく、主観的に評価されるものも含む。
この装置によれば、画像コンテンツを構成するキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外し、影響が大きいキーフレームを除外しないため、画像コンテンツの品質を劣化させることなく、容量を削減することが可能である。
【0007】
キーフレームを除外した画像コンテンツの容量に対する目標値が設定される設定部をさらに含んでもよい。この構成にて、画像選択部は目標値になるまでキーフレーム列から所定のキーフレームを除外し、目標値になれば処理を終了することを実現する。
「目標値」とは、所定のキーフレームを除外した画像コンテンツが概略達成すべき値であり、例えば10Mバイトのような絶対的な数値やコンテンツの容量に対して1/10のような相対的な数値を意味する。
この装置によれば、設定された目標値に応じてキーフレームを除外する判断基準を変化させ、それによって除外するキーフレーム数を調節するため、所定のキーフレームが除外された後の画像コンテンツの容量を目標値と同等にすることが可能である。
【0008】
画像選択部は、所定のふたつのキーフレーム間における差分が所定の基準より大きい場合、影響が大きいとしてもよい。また、所定のキーフレーム間についての対応点情報から生成された中間フレームと中間フレームに対応するキーフレームとの差分が所定の基準より大きい場合、影響が大きいとしてもよい。また、対応点情報の生成過程で得られるデータを監視することにより、影響の大きさを判定してもよい。また、影響の大きさを判定するための基準が、目標値に応じて適応的に設定されてもよい。
【0009】
「中間フレーム」とは、ふたつのキーフレームに挟まれ、これらの対応点情報から生成されるフレームである。ここでは、ふたつのキーフレームに挟まれた画像の単位またはひとつの画像だけでなく、ふたつのキーフレームに挟まれた複数の画像も含むものとする。
「対応点情報の生成過程で得られるデータ」とは、マッチング計算を行う際に得られるデータ、例えば、全単射条件を満たすか否か、写像のエネルギー値などを意味する。さらに、対応点情報も含むものとする。
この装置によれば、ふたつのキーフレーム間における表示内容の相違が大きい場合、例えば、シーンチェンジなどではキーフレームを除外しないため、キーフレーム除外による画像コンテンツの品質への影響は少ない。また、対応点情報から生成された中間フレームを対応するキーフレームと比較した後、これらの差分が小さい場合にキーフレームを除外するため、品質への影響が少ないキーフレーム特定の確実性が向上する。さらに、対応点情報の生成過程で得られたデータを使用するため、一般に対応点情報の問題点が反映されており、品質への影響が少ないキーフレームの特定の確実性が向上する。
【0010】
本発明の別の態様は、画像符号化装置に関する。この装置は、画像コンテンツを構成するキーフレーム列を入力する入力部と、所定のキーフレームを除外した画像コンテンツの容量に対する目標値が設定される設定部と、目標値になるまでキーフレーム列から所定のキーフレームを除外し、目標値になれば処理を終了する画像選択部とを含む。
除外されなかったキーフレームと対応点情報とを含む形でストリームを形成するストリーム生成部をさらに含んでもよい。
【0011】
本発明のさらに別の態様は、画像符号化方法に関する。この方法は、画像コンテンツを構成するキーフレーム列を入力するステップと、キーフレーム列から所定のキーフレームを除外したときの、画像コンテンツの品質への影響を推定するステップと、影響が少ないときに、キーフレームを除外するステップを含む。
【0012】
本発明のさらに別の態様は、画像符号化方法に関する。この方法は、画像コンテンツを構成するキーフレーム列を入力するステップと、画像コンテンツの容量に対する目標値を設定するステップと、容量が目標値になるまでキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するステップと、容量が前記目標値になれば処理を終了するステップを含む。
【0013】
影響は、所定のふたつのキーフレーム間における差分をもとに推定してもよい。また、所定のキーフレーム間についての対応点情報から生成された中間フレームと中間フレームに対応するキーフレームとの差分をもとに推定してもよい。また、対応点情報の生成過程で得られるデータをもとに推定してもよい。
除外されなかったキーフレームと対応点情報とを含む形でストリームを形成するステップをさらに含んでもよい。
【0014】
本発明のさらに別の態様は、プログラムに関する。このプログラムは、画像コンテンツを構成するキーフレーム列を入力するステップと、キーフレーム列から所定のキーフレームを除外したときの、画像コンテンツの品質への影響を推定するステップと、影響が少ないときに、キーフレームを除外するステップをコンピュータに実行せしめる。
【0015】
本発明のさらに別の態様は、プログラムに関する。このプログラムは、画像コンテンツを構成するキーフレーム列を入力するステップと、画像コンテンツの容量に対する目標値を設定するステップと、容量が目標値になるまでキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するステップと、容量が目標値になれば処理を終了するステップをコンピュータに実行せしめる。
【0016】
以上の態様のうち、キーフレーム間の対応点情報を生成する部分、およびそれを利用して中間画像を生成する部分は、前提技術を利用することができる。ただし、本発明は前提技術を必須とはしない。また、本発明は動画に限らず、複数視点画像間の滑らかな中間画像の生成等、静止画を目的としてもよい。
以上の各構成、工程を任意に入れ替えたり、方法と装置の間で表現を一部または全部入れ替え、または追加したり、表現をコンピュータプログラム、記録媒体等に変更したものもまた、本発明として有効である。
【0017】
【発明の実施の形態】
はじめに、実施の形態で利用する多重解像度特異点フィルタ技術とそれを用いた画像マッチング処理を「前提技術」として詳述する。これらの技術は本出願人がすでに特許第2927350号を得ている技術であり、本発明との組合せに最適である。ただし、実施の形態で採用可能な画像マッチング技術はこれに限られない。図19以降、前提技術を利用した画像処理技術を具体的に説明する。
【0018】
[前提技術の背景]
最初に[1]で前提技術の要素技術の詳述し、[2]で処理手順を具体的に説明する。さらに[3]で前提技術に基づき改良を施した点について述べる。
【0019】
[1]要素技術の詳細
[1.1]イントロダクション
特異点フィルタと呼ばれる新たな多重解像度フィルタを導入し、画像間のマッチングを正確に計算する。オブジェクトに関する予備知識は一切不要である。画像間のマッチングの計算は、解像度の階層を進む間、各解像度において計算される。その際、粗いレベルから精細なレベルへと順に解像度の階層を辿っていく。計算に必要なパラメータは、人間の視覚システムに似た動的計算によって完全に自動設定される。画像間の対応点を人手で特定する必要はない。
【0020】
本前提技術は、例えば完全に自動的なモーフィング、物体認識、立体写真測量、ボリュームレンダリング、少ないフレームからの滑らかな動画像の生成などに応用できる。モーフィングに用いる場合、与えられた画像を自動的に変形することができる。ボリュームレンダリングに用いる場合、断面間の中間的な画像を正確に再構築することができる。断面間の距離が遠く、断面の形状が大きく変化する場合でも同様である。
【0021】
[1.2]特異点フィルタの階層
前提技術に係る多重解像度特異点フィルタは、画像の解像度を落としながら、しかも画像に含まれる各特異点の輝度及び位置を保存することができる。ここで画像の幅をN、高さをMとする。以下簡単のため、N=M=2n(nは自然数)と仮定する。また、区間[0,N]⊂RをIと記述する。(i,j)における画像の画素をp(i,j)と記述する(i,j∈I)。
【0022】
ここで多重解像度の階層を導入する。階層化された画像群は多重解像度フィルタで生成される。多重解像度フィルタは、もとの画像に対して二次元的な探索を行って特異点を検出し、検出された特異点を抽出してもとの画像よりも解像度の低い別の画像を生成する。ここで第mレベルにおける各画像のサイズは2m×2m(0≦m≦n)とする。特異点フィルタは次の4種類の新たな階層画像をnから下がる方向で再帰的に構築する。
【0023】
【数1】
ただしここで、
【数2】
とする。以降これら4つの画像を副画像(サブイメージ)と呼ぶ。minx≦t≦x+1、maxx≦t≦x+1をそれぞれα及びβと記述すると、副画像はそれぞれ以下のように記述できる。
【0024】
P(m,0)=α(x)α(y)p(m+1,0)
P(m,1)=α(x)β(y)p(m+1,1)
P(m,2)=β(x)α(y)p(m+1,2)
P(m,3)=β(x)β(y)p(m+1,3)
すなわち、これらはαとβのテンソル積のようなものと考えられる。副画像はそれぞれ特異点に対応している。これらの式から明らかなように、特異点フィルタはもとの画像について2×2画素で構成されるブロックごとに特異点を検出する。その際、各ブロックのふたつの方向、つまり縦と横について、最大画素値または最小画素値をもつ点を探索する。画素値として、前提技術では輝度を採用するが、画像に関するいろいろな数値を採用することができる。ふたつの方向の両方について最大画素値となる画素は極大点、ふたつの方向の両方について最小画素値となる画素は極小点、ふたつの方向の一方について最大画素値となるとともに、他方について最小画素値となる画素は鞍点として検出される。
【0025】
特異点フィルタは、各ブロックの内部で検出された特異点の画像(ここでは1画素)でそのブロックの画像(ここでは4画素)を代表させることにより、画像の解像度を落とす。特異点の理論的な観点からすれば、α(x)α(y)は極小点を保存し、β(x)β(y)は極大点を保存し、α(x)β(y)及びβ(x)α(y)は鞍点を保存する。
【0026】
はじめに、マッチングをとるべき始点(ソース)画像と終点(デスティネーション)画像に対して別々に特異点フィルタ処理を施し、それぞれ一連の画像群、すなわち始点階層画像と終点階層画像を生成しておく。始点階層画像と終点階層画像は、特異点の種類に対応してそれぞれ4種類ずつ生成される。
【0027】
この後、一連の解像度レベルの中で始点階層画像と終点階層画像のマッチングがとれらていく。まずp(m,0)を用いて極小点のマッチングがとられる。次に、その結果に基づき、p(m,1)を用いて鞍点のマッチングがとられ、p(m,2)を用いて他の鞍点のマッチングがとられる。そして最後にp(m,3)を用いて極大点のマッチングがとられる。
【0028】
図1(c)と図1(d)はそれぞれ図1(a)と図1(b)の副画像p(5,0)を示している。同様に、図1(e)と図1(f)はp(5,1)、図1(g)と図1(h)はp(5,2)、図1(i)と図1(j)はp(5,3)をそれぞれ示している。これらの図からわかるとおり、副画像によれば画像の特徴部分のマッチングが容易になる。まずp(5,0)によって目が明確になる。目は顔の中で輝度の極小点だからである。p(5,1)によれば口が明確になる。口は横方向で輝度が低いためである。p(5,2)によれば首の両側の縦線が明確になる。最後に、p(5,3)によって耳や頬の最も明るい点が明確になる。これらは輝度の極大点だからである。
【0029】
特異点フィルタによれば画像の特徴が抽出できるため、例えばカメラで撮影された画像の特徴と、予め記録しておいたいくつかのオブジェクトの特徴を比較することにより、カメラに映った被写体を識別することができる。
【0030】
[1.3]画像間の写像の計算
始点画像の位置(i,j)の画素をp(n) (i,j)と書き、同じく終点画像の位置(k,l)の画素をq(n) (k,l)で記述する。i,j,k,l∈Iとする。画像間の写像のエネルギー(後述)を定義する。このエネルギーは、始点画像の画素の輝度と終点画像の対応する画素の輝度の差、及び写像の滑らかさによって決まる。最初に最小のエネルギーを持つp(m,0)とq(m,0)間の写像f(m,0):p(m,0)→q(m,0)が計算される。f(m,0)に基づき、最小エネルギーを持つp(m,1)、q(m,1)間の写像f(m,1)が計算される。この手続は、p(m,3)とq(m,3)の間の写像f(m,3)の計算が終了するまで続く。各写像f(m,i)(i=0,1,2,…)を副写像と呼ぶことにする。f(m,i)の計算の都合のために、iの順序は次式のように並べ替えることができる。並べ替えが必要な理由は後述する。
【0031】
【数3】
ここでσ(i)∈{0,1,2,3}である。
【0032】
[1.3.1]全単射
始点画像と終点画像の間のマッチングを写像で表現する場合、その写像は両画像間で全単射条件を満たすべきである。両画像に概念上の優劣はなく、互いの画素が全射かつ単射で接続されるべきだからである。しかしながら通常の場合とは異なり、ここで構築すべき写像は全単射のディジタル版である。前提技術では、画素は格子点によって特定される。
【0033】
始点副画像(始点画像について設けられた副画像)から終点副画像(終点画像について設けられた副画像)への写像は、f(m,s):I/2n−m×I/2n−m→I/2n−m×I/2n−m(s=0,1,…)によって表される。ここで、f(m,s)(i,j)=(k,l)は、始点画像のp(m,s) (i,j)が終点画像のq(m,s) (k,l)に写像されることを意味する。簡単のために、f(i,j)=(k,l)が成り立つとき画素q(k,l)をqf(i,j)と記述する。
【0034】
前提技術で扱う画素(格子点)のようにデータが離散的な場合、全単射の定義は重要である。ここでは以下のように定義する(i,i’,j,j’,k,lは全て整数とする)。まず始めに、始点画像の平面においてRによって表記される各正方形領域、
【0035】
【数4】
を考える(i=0,…,2m−1、j=0,…,2m−1)。ここでRの各辺(エッジ)の方向を以下のように定める。
【0036】
【数5】
この正方形は写像fによって終点画像平面における四辺形に写像されなければならない。f(m,s)(R)によって示される四辺形、
【0037】
【数6】
は、以下の全単射条件を満たす必要がある。
【0038】
1.四辺形f(m,s)(R)のエッジは互いに交差しない。
【0039】
2.f(m,s)(R)のエッジの方向はRのそれらに等しい(図2の場合、時計回り)。
【0040】
3.緩和条件として収縮写像(リトラクション:retractions)を許す。
【0041】
何らかの緩和条件を設けないかぎり、全単射条件を完全に満たす写像は単位写像しかないためである。ここではf(m,s)(R)のひとつのエッジの長さが0、すなわちf(m,s)(R)は三角形になってもよい。しかし、面積が0となるような図形、すなわち1点または1本の線分になってはならない。図2(R)がもとの四辺形の場合、図2(A)と図2(D)は全単射条件を満たすが、図2(B)、図2(C)、図2(E)は満たさない。
【0042】
実際のインプリメンテーションでは、写像が全射であることを容易に保証すべく、さらに以下の条件を課してもよい。つまり始点画像の境界上の各画素は、終点画像において同じ位置を占める画素に写影されるというものである。すなわち、f(i,j)=(i,j)(ただしi=0,i=2m−1,j=0,j=2m−1の4本の線上)である。この条件を以下「付加条件」とも呼ぶ。
【0043】
[1.3.2]写像のエネルギー
[1.3.2.1]画素の輝度に関するコスト
写像fのエネルギーを定義する。エネルギーが最小になる写像を探すことが目的である。エネルギーは主に、始点画像の画素の輝度とそれに対応する終点画像の画素の輝度の差で決まる。すなわち、写像f(m,s)の点(i,j)におけるエネルギーC(m,s) (i,j)は次式によって定まる。
【0044】
【数7】
ここで、V(p(m,s) (i,j))及びV(q(m,s) f(i,j))はそれぞれ画素p(m,s) (i,j)及びq(m,s) f(i,j)の輝度である。fのトータルのエネルギーC(m,s)は、マッチングを評価するひとつの評価式であり、つぎに示すC(m,s) (i,j)の合計で定義できる。
【0045】
【数8】
[1.3.2.2]滑らかな写像のための画素の位置に関するコスト
滑らかな写像を得るために、写像に関する別のエネルギーDfを導入する。このエネルギーは画素の輝度とは関係なく、p(m,s) (i,j)およびq(m,s) f(i,j)の位置によって決まる(i=0,…,2m−1,j=0,…,2m−1)。点(i,j)における写像f(m,s)のエネルギーD(m,s) (i,j)は次式で定義される。
【0046】
【数9】
ただし、係数パラメータηは0以上の実数であり、また、
【数10】
【数11】
とする。ここで、
【0047】
【数12】
であり、i’<0およびj’<0に対してf(i’,j’)は0と決める。E0は(i,j)及びf(i,j)の距離で決まる。E0は画素があまりにも離れた画素へ写影されることを防ぐ。ただしE0は、後に別のエネルギー関数で置き換える。E1は写像の滑らかさを保証する。E1は、p(i,j)の変位とその隣接点の変位の間の隔たりを表す。以上の考察をもとに、マッチングを評価する別の評価式であるエネルギーDfは次式で定まる。
【0048】
【数13】
[1.3.2.3]写像の総エネルギー
写像の総エネルギー、すなわち複数の評価式の統合に係る総合評価式はλC(m,s) f+D(m,s) fで定義される。ここで係数パラメータλは0以上の実数である。目的は総合評価式が極値をとる状態を検出すること、すなわち次式で示す最小エネルギーを与える写像を見いだすことである。
【0049】
【数14】
λ=0及びη=0の場合、写像は単位写像になることに注意すべきである(すなわち、全てのi=0,…,2m−1及びj=0,…,2m−1に対してf(m,s)(i,j)=(i,j)となる)。後述のごとく、本前提技術では最初にλ=0及びη=0の場合を評価するため、写像を単位写像から徐々に変形していくことができる。仮に総合評価式のλの位置を変えてC(m,s) f+λD(m,s) fと定義したとすれば、λ=0及びη=0の場合に総合評価式がC(m,s) fだけになり、本来何等関連のない画素どうしが単に輝度が近いというだけで対応づけられ、写像が無意味なものになる。そうした無意味な写像をもとに写像を変形していってもまったく意味をなさない。このため、単位写像が評価の開始時点で最良の写像として選択されるよう係数パラメータの与えかたが配慮されている。
【0050】
オプティカルフローもこの前提技術同様、画素の輝度の差と滑らかさを考慮する。しかし、オプティカルフローは画像の変換に用いることはできない。オブジェクトの局所的な動きしか考慮しないためである。前提技術に係る特異点フィルタを用いることによって大域的な対応関係を検出することができる。
【0051】
[1.3.3]多重解像度の導入による写像の決定
最小エネルギーを与え、全単射条件を満足する写像fminを多重解像度の階層を用いて求める。各解像度レベルにおいて始点副画像及び終点副画像間の写像を計算する。解像度の階層の最上位(最も粗いレベル)からスタートし、各解像度レベルの写像を、他のレベルの写像を考慮に入れながら決定する。各レベルにおける写像の候補の数は、より高い、つまりより粗いレベルの写像を用いることによって制限される。より具体的には、あるレベルにおける写像の決定に際し、それよりひとつ粗いレベルにおいて求められた写像が一種の拘束条件として課される。
【0052】
まず、
【数15】
が成り立つとき、p(m−1,s) (i’,j’)、q(m−1,s) (i’,j’)をそれぞれp(m,s) (i,j)、q(m,s) (i,j)のparentと呼ぶことにする。[x]はxを越えない最大整数である。またp(m,s) (i,j)、q(m,s) (i,j)をそれぞれp(m−1,s) (i’,j’)、q(m−1,s) (i’,j’)のchildと呼ぶ。関数parent(i,j)は次式で定義される。
【0053】
【数16】
p(m,s) (i,j)とq(m,s) (k,l)の間の写像f(m,s)は、エネルギー計算を行って最小になったものを見つけることで決定される。f(m,s)(i,j)=(k,l)の値はf(m−1,s)(m=1,2,…,n)を用いることによって、以下のように決定される。まず、q(m,s) (k,l)は次の四辺形の内部になければならないという条件を課し、全単射条件を満たす写像のうち現実性の高いものを絞り込む。
【0054】
【数17】
ただしここで、
【数18】
である。こうして定めた四辺形を、以下p(m,s) (i,j)の相続(inherited)四辺形と呼ぶことにする。相続四辺形の内部において、エネルギーを最小にする画素を求める。
【0055】
図3は以上の手順を示している。同図において、始点画像のA,B,C,Dの画素は、第m−1レベルにおいてそれぞれ終点画像のA’,B’,C’,D’へ写影される。画素p(m,s) (i,j)は、相続四辺形A’B’C’D’の内部に存在する画素q(m,s) f(m)(i,j)へ写影されなければならない。以上の配慮により、第m−1レベルの写像から第mレベルの写像への橋渡しがなされる。
【0056】
先に定義したエネルギーE0は、第mレベルにおける副写像f(m,0)を計算するために、次式に置き換える。
【0057】
【数19】
また、副写像f(m,s)を計算するためには次式を用いる。
【0058】
【数20】
こうしてすべての副写像のエネルギーを低い値に保つ写像が得られる。式20により、異なる特異点に対応する副写像が、副写像どうしの類似度が高くなるように同一レベル内で関連づけられる。式19は、f(m,s)(i,j)と、第m−1レベルの画素の一部と考えた場合の(i,j)が射影されるべき点の位置との距離を示している。
【0059】
仮に、相続四辺形A’B’C’D’の内部に全単射条件を満たす画素が存在しない場合は以下の措置をとる。まず、A’B’C’D’の境界線からの距離がL(始めはL=1)である画素を調べる。それらのうち、エネルギーが最小になるものが全単射条件を満たせば、これをf(m,s)(i,j)の値として選択する。そのような点が発見されるか、またはLがその上限のL(m)maxに到達するまで、Lを大きくしていく。L(m)maxは各レベルmに対して固定である。そのような点が全く発見されない場合、全単射の第3の条件を一時的に無視して変換先の四辺形の面積がゼロになるような写像も認め、f(m,s)(i,j)を決定する。それでも条件を満たす点が見つからない場合、つぎに全単射の第1及び第2条件を外す。
【0060】
多重解像度を用いる近似法は、写像が画像の細部に影響されることを回避しつつ、画像間の大域的な対応関係を決定するために必須である。多重解像度による近似法を用いなければ、距離の遠い画素間の対応関係を見いだすことは不可能である。その場合、画像のサイズはきわめて小さなものに限定しなければならず、変化の小さな画像しか扱うことができない。さらに、通常写像に滑らかさを要求するため、そうした画素間の対応関係を見つけにくくしている。距離のある画素から画素への写像のエネルギーは高いためである。多重解像度を用いた近似法によれば、そうした画素間の適切な対応関係を見いだすことができる。それらの距離は、解像度の階層の上位レベル(粗いレベル)において小さいためである。
【0061】
[1.4]最適なパレメータ値の自動決定
既存のマッチング技術の主な欠点のひとつに、パレメータ調整の困難さがある。大抵の場合、パラメータの調整は人手作業によって行われ、最適な値を選択することはきわめて難しい。前提技術に係る方法によれば、最適なパラメータ値を完全に自動決定することができる。
【0062】
前提技術に係るシステムはふたつのパレメータ、λ及びηを含む。端的にいえば、λは画素の輝度の差の重みであり、ηは写像の剛性を示している。これらのパラメータの値は初期値が0であり、まずη=0に固定してλを0から徐々に増加させる。λの値を大きくしながら、しかも総合評価式(式14)の値を最小にする場合、各副写像に関するC(m,s) fの値は一般に小さくなっていく。このことは基本的にふたつの画像がよりマッチしなければならないことを意味する。しかし、λが最適値を超えると以下の現象が発生する。
【0063】
1.本来対応すべきではない画素どうしが、単に輝度が近いというだけで誤って対応づけられる。
【0064】
2.その結果、画素どうしの対応関係がおかしくなり、写像がくずれはじめる。
【0065】
3.その結果、式14においてD(m,s) fが急激に増加しようとする。
【0066】
4.その結果、式14の値が急激に増加しようとするため、D(m,s) fの急激な増加を抑制するようf(m,s)が変化し、その結果C(m,s) fが増加する。
【0067】
したがって、λを増加させながら式14が最小値をとるという状態を維持しつつC(m,s) fが減少から増加に転じる閾値を検出し、そのλをη=0における最適値とする。つぎにηを少しづつ増やしてC(m,s) fの挙動を検査し、後述の方法でηを自動決定する。そのηに対応してλも決まる。
【0068】
この方法は、人間の視覚システムの焦点機構の動作に似ている。人間の視覚システムでは、一方の目を動かしながら左右両目の画像のマッチングがとられる。オブジェクトがはっきりと認識できるとき、その目が固定される。
【0069】
[1.4.1]λの動的決定
λは0から所定の刻み幅で増加されていき、λの値が変わる度に副写像が評価される。式14のごとく、総エネルギーはλC(m,s) f+D(m,s) fによって定義される。式9のD(m,s) fは滑らかさを表すもので、理論的には単位写像の場合に最小になり、写像が歪むほどE0もE1も増加していく。E1は整数であるから、D(m,s) fの最小刻み幅は1である。このため、現在のλC(m,s) (i,j)の変化(減少量)が1以上でなければ、写像を変化させることによって総エネルギーを減らすことはできない。なぜなら、写像の変化に伴ってD(m,s) fは1以上増加するため、λC(m,s) (i,j)が1以上減少しない限り総エネルギーは減らないためである。
【0070】
この条件のもと、λの増加に伴い、正常な場合にC(m,s) (i,j)が減少することを示す。C(m,s) (i,j)のヒストグラムをh(l)と記述する。h(l)はエネルギーC(m,s) (i,j)がl2である画素の数である。λl2≧1が成り立つために、例えばl2=1/λの場合を考える。λがλ1からλ2まで微小量変化するとき、
【0071】
【数21】
で示されるA個の画素が、
【数22】
のエネルギーを持つより安定的な状態に変化する。ここでは仮に、これらの画素のエネルギーがすべてゼロになると近似している。この式はC(m,s) fの値が、
【0072】
【数23】
だけ変化することを示し、その結果、
【数24】
が成立する。h(l)>0であるから、通常C(m,s) fは減少する。しかし、λが最適値を越えようとするとき、上述の現象、つまりC(m,s) fの増加が発生する。この現象を検出することにより、λの最適値を決定する。
【0073】
なお、H(h>0)及びkを定数とするとき、
【数25】
と仮定すれば、
【数26】
が成り立つ。このときk≠−3であれば、
【0074】
【数27】
となる。これがC(m,s) fの一般式である(Cは定数)。
【0075】
λの最適値を検出する際、さらに安全を見て、全単射条件を破る画素の数を検査してもよい。ここで各画素の写像を決定する際、全単射条件を破る確率をp0と仮定する。この場合、
【0076】
【数28】
が成立しているため、全単射条件を破る画素の数は次式の率で増加する。
【0077】
【数29】
従って、
【数30】
は定数である。仮にh(l)=Hlkを仮定するとき、例えば、
【0078】
【数31】
は定数になる。しかしλが最適値を越えると、上の値は急速に増加する。この現象を検出し、B0λ3/2+k/2/2mの値が異常値B0thresを越えるかどうかを検査し、λの最適値を決定することができる。同様に、B1λ3/2+k/2/2mの値が異常値B1thresを越えるかどうかを検査することにより、全単射の第3の条件を破る画素の増加率B1を確認する。ファクター2mを導入する理由は後述する。このシステムはこれら2つの閾値に敏感ではない。これらの閾値は、エネルギーC(m,s) fの観察では検出し損なった写像の過度の歪みを検出するために用いることができる。
【0079】
なお実験では、副写像f(m,s)を計算する際、もしλが0.1を越えたらf(m,s)の計算は止めてf(m,s+1)の計算に移行した。λ>0.1のとき、画素の輝度255レベル中のわずか「3」の違いが副写像の計算に影響したためであり、λ>0.1のとき正しい結果を得ることは困難だったためである。
【0080】
[1.4.2]ヒストグラムh(l)
C(m,s) fの検査はヒストグラムh(l)に依存しない。全単射及びその第3の条件の検査の際、h(l)に影響を受けうる。実際に(λ,C(m,s) f)をプロットすると、kは通常1付近にある。実験ではk=1を用い、B0λ2とB1λ2を検査した。仮にkの本当の値が1未満であれば、B0λ2とB1λ2は定数にならず、ファクターλ(1−k)/2に従って徐々に増加する。h(l)が定数であれば、例えばファクターはλ1/2である。しかし、こうした差は閾値B0thresを正しく設定することによって吸収することができる。
【0081】
ここで次式のごとく始点画像を中心が(x0,y0)、半径rの円形のオブジェクトであると仮定する。
【0082】
【数32】
一方、終点画像は、次式のごとく中心(x1,y1)、半径がrのオブジェクトであるとする。
【0083】
【数33】
ここでc(x)はc(x)=xkの形であるとする。中心(x0,y0)及び(x1,y1)が十分遠い場合、ヒストグラムh(l)は次式の形となる。
【0084】
【数34】
k=1のとき、画像は背景に埋め込まれた鮮明な境界線を持つオブジェクトを示す。このオブジェクトは中心が暗く、周囲にいくに従って明るくなる。k=−1のとき、画像は曖昧な境界線を持つオブジェクトを表す。このオブジェクトは中心が最も明るく、周囲にいくに従って暗くなる。一般のオブジェクトはこれらふたつのタイプのオブジェクトの中間にあると考えてもさして一般性を失わない。したがって、kは−1≦k≦1として大抵の場合をカバーでき、式27が一般に減少関数であることが保障される。
【0085】
なお、式34からわかるように、rは画像の解像度に影響されること、すなわちrは2mに比例することに注意すべきである。このために[1.4.1]においてファクター2mを導入した。
【0086】
[1.4.3]ηの動的決定
パラメータηも同様の方法で自動決定できる。はじめにη=0とし、最も細かい解像度における最終的な写像f(n)及びエネルギーC(n) fを計算する。つづいて、ηをある値Δηだけ増加させ、再び最も細かい解像度における最終写像f(n)及びエネルギーC(n) fを計算し直す。この過程を最適値が求まるまで続ける。ηは写像の剛性を示す。次式の重みだからである。
【0087】
【数35】
ηが0のとき、D(n) fは直前の副写像と無関係に決定され、現在の副写像は弾性的に変形され、過度に歪むことになる。一方、ηが非常に大きな値のとき、D(n) fは直前の副写像によってほぼ完全に決まる。このとき副写像は非常に剛性が高く、画素は同じ場所に射影される。その結果、写像は単位写像になる。ηの値が0から次第に増えるとき、後述のごとくC(n) fは徐々に減少する。しかしηの値が最適値を越えると、図4に示すとおり、エネルギーは増加し始める。同図のX軸はη、Y軸はCfである。
【0088】
この方法でC(n) fを最小にする最適なηの値を得ることができる。しかし、λの場合に比べていろいろな要素が計算に影響する結果、C(n) fは小さく揺らぎながら変化する。λの場合は、入力が微小量変化するたびに副写像を1回計算しなおすだけだが、ηの場合はすべての副写像が計算しなおされるためである。このため、得られたC(n) fの値が最小であるかどうかを即座に判断することはできない。最小値の候補が見つかれば、さらに細かい区間を設定することによって真の最小値を探す必要がある。
【0089】
[1.5]スーパーサンプリング
画素間の対応関係を決定する際、自由度を増やすために、f(m,s)の値域をR×Rに拡張することができる(Rは実数の集合)。この場合、終点画像の画素の輝度が補間され、非整数点、
【0090】
【数36】
における輝度を持つf(m,s)が提供される。つまりスーパーサンプリングが行われる。実験では、f(m,s)は整数及び半整数値をとることが許され、
【0091】
【数37】
は、
【数38】
によって与えられた。
【0092】
[1.6]各画像の画素の輝度の正規化
始点画像と終点画像がきわめて異なるオブジェクトを含んでいるとき、写像の計算に元の画素の輝度がそのままでは利用しにくい。輝度の差が大きいために輝度に関するエネルギーC(m,s) fが大きくなりすぎ、正しい評価がしずらいためである。
【0093】
例えば、人の顔と猫の顔のマッチングをとる場合を考える。猫の顔は毛で覆われており、非常に明るい画素と非常に暗い画素が混じっている。この場合、ふたつの顔の間の副写像を計算するために、まず副画像を正規化する。すなわち、最も暗い画素の輝度を0、最も明るいそれを255に設定し、他の画素の輝度は線形補間によって求めておく。
【0094】
[1.7]インプリメンテーション
始点画像のスキャンに従って計算がリニアに進行する帰納的な方法を用いる。始めに、1番上の左端の画素(i,j)=(0,0)についてf(m,s)の値を決定する。次にiを1ずつ増やしながら各f(m,s)(i,j)の値を決定する。iの値が画像の幅に到達したとき、jの値を1増やし、iを0に戻す。以降、始点画像のスキャンに伴いf(m,s)(i,j)を決定していく。すべての点について画素の対応が決まれば、ひとつの写像f(m,s)が決まる。
【0095】
あるp(i,j)について対応点qf(i,j)が決まれば、つぎにp(i,j+1)の対応点qf(i,j+1)が決められる。この際、qf(i,j+1)の位置は全単射条件を満たすために、qf(i,j)の位置によって制限される。したがって、先に対応点が決まる点ほどこのシステムでは優先度が高くなる。つねに(0,0)が最も優先される状態がつづくと、求められる最終の写像に余計な偏向が加わる。本前提技術ではこの状態を回避するために、f(m,s)を以下の方法で決めていく。
【0096】
まず(s mod 4)が0の場合、(0,0)を開始点としi及びjを徐々に増やしながら決めていく。(s mod 4)が1の場合、最上行の右端点を開始点とし、iを減少、jを増加させながら決めていく。(s mod 4)が2のとき、最下行の右端点を開始点とし、i及びjを減少させながら決めていく。(smod 4)が3の場合、最下行の左端点を開始点とし、iを増加、jを減少させながら決めていく。解像度が最も細かい第nレベルには副写像という概念、すなわちパラメータsが存在しないため、仮にs=0及びs=2であるとしてふたつの方向を連続的に計算した。
【0097】
実際のインプリメンテーションでは、全単射条件を破る候補に対してペナルティを与えることにより、候補(k,l)の中からできる限り全単射条件を満たすf(m,s)(i,j)(m=0,…,n)の値を選んだ。第3の条件を破る候補のエネルギーD(k、l)にはφを掛け、一方、第1または第2の条件を破る候補にはψを掛ける。今回はφ=2、ψ=100000を用いた。
【0098】
前述の全単射条件のチェックのために、実際の手続として(k,l)=f(m,s)(i,j)を決定する際に以下のテストを行った。すなわちf(m,s)(i,j)の相続四辺形に含まれる各格子点(k,l)に対し、次式の外積のz成分が0以上になるかどうかを確かめる。
【0099】
【数39】
ただしここで、
【数40】
【数41】
である(ここでベクトルは三次元ベクトルとし、z軸は直交右手座標系において定義される)。もしWが負であれば、その候補についてはD(m,s) (k,l)にψを掛けることによってペナルティを与え、できるかぎり選択しないようにする。
【0100】
図5(a)、図5(b)はこの条件を検査する理由を示している。図5(a)はペナルティのない候補、図5(b)はペナルティがある候補をそれぞれ表す。隣接画素(i,j+1)に対する写像f(m,s)(i,j+1)を決定する際、Wのz成分が負であれば始点画像平面上において全単射条件を満足する画素は存在しない。なぜなら、q(m,s) (k,l)は隣接する四辺形の境界線を越えるためである。
【0101】
[1.7.1]副写像の順序
インプリメンテーションでは、解像度レベルが偶数のときにはσ(0)=0、σ(1)=1、σ(2)=2、σ(3)=3、σ(4)=0を用い、奇数のときはσ(0)=3、σ(1)=2、σ(2)=1、σ(3)=0、σ(4)=3を用いた。このことで、副写像を適度にシャッフルした。なお、本来副写像は4種類であり、sは0〜3のいずれかである。しかし、実際にはs=4に相当する処理を行った。その理由は後述する。
【0102】
[1.8]補間計算
始点画像と終点画像の間の写像が決定された後、対応しあう画素の輝度が補間される。実験では、トライリニア補間を用いた。始点画像平面における正方形p(i,j)p(i+1,j)p(i,j+1)p(i+1,j+1)が終点画像平面上の四辺形qf(i,j)qf(i+1,j)qf(i,j+1)qf(i+1,j+1)に射影されると仮定する。簡単のため、画像間の距離を1とする。始点画像平面からの距離がt(0≦t≦1)である中間画像の画素r(x,y,t)(0≦x≦N−1,0≦y≦M−1)は以下の要領で求められる。まず画素r(x,y,t)の位置(ただしx,y,t∈R)を次式で求める。
【0103】
【数42】
つづいてr(x,y,t)における画素の輝度が次の式を用いて決定される。
【0104】
【数43】
ここでdx及びdyはパラメータであり、0から1まで変化する。
【0105】
[1.9]拘束条件を課したときの写像
いままでは拘束条件がいっさい存在しない場合の写像の決定を述べた。しかし、始点画像と終点画像の特定の画素間に予め対応関係が規定されているとき、これを拘束条件としたうえで写像を決定することができる。
【0106】
基本的な考えは、まず始点画像の特定の画素を終点画像の特定の画素に移す大まかな写像によって始点画像を大まかに変形し、しかる後、写像fを正確に計算する。
【0107】
まず始めに、始点画像の特定の画素を終点画像の特定の画素に射影し、始点画像の他の画素を適当な位置に射影する大まかな写像を決める。すなわち、特定の画素に近い画素は、その特定の画素が射影される場所の近くに射影されるような写像である。ここで第mレベルの大まかな写像をF(m)と記述する。
【0108】
大まかな写像Fは以下の要領で決める。まず、いくつかの画素について写像を特定する。始点画像についてns個の画素、
【0109】
【数44】
を特定するとき、以下の値を決める。
【0110】
【数45】
始点画像の他の画素の変位量は、p(ih,jh)(h=0,…,ns−1)の変位に重み付けをして求められる平均である。すなわち画素p(i,j)は、終点画像の以下の画素に射影される。
【0111】
【数46】
ただしここで、
【数47】
【数48】
とする。
【0112】
つづいて、F(m)に近い候補写像fがより少ないエネルギーを持つように、その写像fのエネルギーD(m,s) (i,j)を変更する。正確には、D(m,s) (i,j)は、
【0113】
【数49】
である。ただし、
【0114】
【数50】
であり、κ,ρ≧0とする。最後に、前述の写像の自動計算プロセスにより、fを完全に決定する。
【0115】
ここで、f(m,s)(i,j)がF(m)(i,j)に十分近いとき、つまりそれらの距離が、
【数51】
以内であるとき、E2 (m,s) (i,j)が0になることに注意すべきである。そのように定義した理由は、各f(m,s)(i,j)がF(m)(i,j)に十分近い限り、終点画像において適切な位置に落ち着くよう、その値を自動的に決めたいためである。この理由により、正確な対応関係を詳細に特定する必要がなく、始点画像は終点画像にマッチするように自動的にマッピングされる。
【0116】
[2]具体的な処理手順
[1]の各要素技術による処理の流れを説明する。
【0117】
図6は前提技術の全体手順を示すフローチャートである。同図のごとく、まず多重解像度特異点フィルタを用いた処理を行い(S1)、つづいて始点画像と終点画像のマッチングをとる(S2)。ただし、S2は必須ではなく、S1で得られた画像の特徴をもとに画像認識などの処理を行ってもよい。
【0118】
図7は図6のS1の詳細を示すフローチャートである。ここではS2で始点画像と終点画像のマッチングをとることを前提としている。そのため、まず特異点フィルタによって始点画像の階層化を行い(S10)、一連の始点階層画像を得る。つづいて同様の方法で終点画像の階層化を行い(S11)、一連の終点階層画像を得る。ただし、S10とS11の順序は任意であるし、始点階層画像と終点階層画像を並行して生成していくこともできる。
【0119】
図8は図7のS10の詳細を示すフローチャートである。もとの始点画像のサイズは2n×2nとする。始点階層画像は解像度が細かいほうから順に作られるため、処理の対象となる解像度レベルを示すパラメータmをnにセットする(S100)。つづいて第mレベルの画像p(m,0)、p(m,1)、p(m,2)、p(m,3)から特異点フィルタを用いて特異点を検出し(S101)、それぞれ第m−1レベルの画像p(m−1,0)、p(m−1,1)、p(m−1,2)、p(m−1,3)を生成する(S102)。ここではm=nであるため、p(m,0)=p(m,1)=p(m,2)=p(m,3)=p(n)であり、ひとつの始点画像から4種類の副画像が生成される。
【0120】
図9は第mレベルの画像の一部と、第m−1レベルの画像の一部の対応関係を示している。同図の数値は各画素の輝度を示す。同図のp(m,s)はp(m,0)〜p(m,3)の4つの画像を象徴するもので、p(m−1,0)を生成する場合には、p(m,s)はp(m,0)であると考える。[1.2]で示した規則により、p(m−1,0)は例えば同図で輝度を記入したブロックについて、そこに含まれる4画素のうち「3」、p(m−1,1)は「8」、p(m−1,2)は「6」、p(m−1,3)を「10」をそれぞれ取得し、このブロックをそれぞれ取得したひとつの画素で置き換える。したがって、第m−1レベルの副画像のサイズは2m−1×2m−1になる。
【0121】
つづいてmをデクリメントし(図8のS103)、mが負になっていないことを確認し(S104)、S101に戻ってつぎに解像度の粗い副画像を生成していく。この繰り返し処理の結果、m=0、すなわち第0レベルの副画像が生成された時点でS10が終了する。第0レベルの副画像のサイズは1×1である。
【0122】
図10はS10によって生成された始点階層画像をn=3の場合について例示している。最初の始点画像のみが4つの系列に共通であり、以降特異点の種類に応じてそれぞれ独立に副画像が生成されていく。なお、図8の処理は図7のS11にも共通であり、同様の手順を経て終点階層画像も生成される。以上で図6のS1による処理が完了する。
【0123】
前提技術では、図6のS2に進むためにマッチング評価の準備をする。図11はその手順を示している。同図のごとく、まず複数の評価式が設定される(S30)。[1.3.2.1]で導入した画素に関するエネルギーC(m,s) fと[1.3.2.2]で導入した写像の滑らかさに関するエネルギーD(m,s) fがそれである。つぎに、これらの評価式を統合して総合評価式を立てる(S31)。[1.3.2.3]で導入した総エネルギーλC(m,s) f+D(m,s) fがそれであり、[1.3.2.2]で導入したηを用いれば、
【0124】
【数52】
となる。ただし、総和はi、jについてそれぞれ0、1…、2m−1で計算する。以上でマッチング評価の準備が整う。
【0125】
図12は図6のS2の詳細を示すフローチャートである。[1]で述べたごとく、始点階層画像と終点階層画像のマッチングは互いに同じ解像度レベルの画像どうしでとられる。画像間の大域的なマッチングを良好にとるために、解像度が粗いレベルから順にマッチングを計算する。特異点フィルタを用いて始点階層画像および終点階層画像を生成しているため、特異点の位置や輝度は解像度の粗いレベルでも明確に保存されており、大域的なマッチングの結果は従来に比べて非常に優れたものになる。
【0126】
図12のごとく、まず係数パラメータηを0、レベルパラメータmを0に設定する(S20)。つづいて、始点階層画像中の第mレベルの4つの副画像と終点階層画像中の第mレベルの4つの副画像のそれぞれの間でマッチングを計算し、それぞれ全単射条件を満たし、かつエネルギーを最小にするような4種類の副写像f(m,s)(s=0,1,2,3)を求める(S21)。全単射条件は[1.3.3]で述べた相続四辺形を用いて検査される。この際、式17、18が示すように、第mレベルにおける副写像は第m−1レベルのそれらに拘束されるため、より解像度の粗いレベルにおけるマッチングが順次利用されていく。これは異なるレベル間の垂直的参照である。なお、いまm=0であってそれより粗いレベルはないが、この例外的な処理は図13で後述する。
【0127】
一方、同一レベル内における水平的参照も行われる。[1.3.3]の式20のごとく、f(m,3)はf(m,2)に、f(m,2)はf(m,1)に、f(m,1)はf(m,0)に、それぞれ類似するように決める。その理由は、特異点の種類が違っても、それらがもともと同じ始点画像と終点画像に含まれている以上、副写像がまったく異なるという状況は不自然だからである。式20からわかるように、副写像どうしが近いほどエネルギーは小さくなり、マッチングが良好とみなされる。
【0128】
なお、最初に決めるべきf(m,0)については同一のレベルで参照できる副写像がないため、式19に示すごとくひとつ粗いレベルを参照する。ただし、実験ではf(m,3)まで求まった後、これを拘束条件としてf(m,0)を一回更新するという手続をとった。これは式20にs=4を代入し、f(m,4)を新たなf(m,0)とすることに等しい。f(m,0)とf(m,3)の関連度が低くなり過ぎる傾向を回避するためであり、この措置によって実験結果がより良好になった。この措置に加え、実験では[1.7.1]に示す副写像のシャッフルも行った。これも本来特異点の種類ごとに決まる副写像どうしの関連度を密接に保つ趣旨である。また、処理の開始点に依存する偏向を回避するために、sの値にしたがって開始点の位置を変える点は[1.7]で述べたとおりである。
【0129】
図13は第0レベルにおいて副写像を決定する様子を示す図である。第0レベルでは各副画像がただひとつの画素で構成されるため、4つの副写像f(0,s)はすべて自動的に単位写像に決まる。図14は第1レベルにおいて副写像を決定する様子を示す図である。第1レベルでは副画像がそれぞれ4画素で構成される。同図ではこれら4画素が実線で示されている。いま、p(1,s)の点xの対応点をq(1,s)の中で探すとき、以下の手順を踏む。
【0130】
1.第1レベルの解像度で点xの左上点a、右上点b、左下点c、右下点dを求める。
【0131】
2.点a〜dがひとつ粗いレベル、つまり第0レベルにおいて属する画素を探す。図14の場合、点a〜dはそれぞれ画素A〜Dに属する。ただし、画素A〜Cは本来存在しない仮想的な画素である。
【0132】
3.第0レベルですでに求まっている画素A〜Dの対応点A’〜D’をq(1 ,s)の中にプロットする。画素A’〜C’は仮想的な画素であり、それぞれ画素A〜Cと同じ位置にあるものとする。
【0133】
4.画素Aの中の点aの対応点a’が画素A’の中にあるとみなし、点a’をプロットする。このとき、点aが画素Aの中で占める位置(この場合、右下)と、点a’が画素A’の中で占める位置が同じであると仮定する。
【0134】
5.4と同様の方法で対応点b’〜d’をプロットし、点a’〜d’で相続四辺形を作る。
【0135】
6.相続四辺形の中でエネルギーが最小になるよう、点xの対応点x’を探す。対応点x’の候補として、例えば画素の中心が相続四辺形に含まれるものに限定してもよい。図14の場合、4つの画素がすべて候補になる。
【0136】
以上がある点xの対応点の決定手順である。同様の処理を他のすべての点について行い、副写像を決める。第2レベル以上のレベルでは、次第に相続四辺形の形が崩れていくと考えられるため、図3に示すように画素A’〜D’の間隔が空いていく状況が発生する。
【0137】
こうして、ある第mレベルの4つの副写像が決まれば、mをインクリメントし(図12のS22)、mがnを超えていないことを確かめて(S23)、S21に戻る。以下、S21に戻るたびに次第に細かい解像度のレベルの副写像を求め、最後にS21に戻ったときに第nレベルの写像f(n)を決める。この写像はη=0に関して定まったものであるから、f(n)(η=0)と書く。
【0138】
つぎに異なるηに関する写像も求めるべく、ηをΔηだけシフトし、mをゼロクリアする(S24)。新たなηが所定の探索打切り値ηmaxを超えていないことを確認し(S25)、S21に戻り、今回のηに関して写像f(n)(η=Δη)を求める。この処理を繰り返し、S21でf(n)(η=iΔη)(i=0,1,…)を求めていく。ηがηmaxを超えたときS26に進み、後述の方法で最適なη=ηoptを決定し、f(n)(η=ηopt)を最終的に写像f(n)とする。
【0139】
図15は図12のS21の詳細を示すフローチャートである。このフローチャートにより、ある定まったηについて、第mレベルにおける副写像が決まる。副写像を決める際、前提技術では副写像ごとに最適なλを独立して決める。
【0140】
同図のごとく、まずsとλをゼロクリアする(S210)。つぎに、そのときのλについて(および暗にηについて)エネルギーを最小にする副写像f(m,s)を求め(S211)、これをf(m,s)(λ=0)と書く。異なるλに関する写像も求めるべく、λをΔλだけシフトし、新たなλが所定の探索打切り値λmaxを超えていないことを確認し(S213)、S211に戻り、以降の繰り返し処理でf(m,s)(λ=iΔλ)(i=0,1,…)を求める。λがλmaxを超えたときS214に進み、最適なλ=λoptを決定し、f(m,s)(λ=λopt)を最終的に写像f(m,s)とする(S214)。
【0141】
つぎに、同一レベルにおける他の副写像を求めるべく、λをゼロクリアし、sをインクリメントする(S215)。sが4を超えていないことを確認し(S216)、S211に戻る。s=4になれば上述のごとくf(m,3)を利用してf(m,0)を更新し、そのレベルにおける副写像の決定を終了する。
【0142】
図16は、あるmとsについてλを変えながら求められたf(m,s)(λ=iΔλ)(i=0,1,…)に対応するエネルギーC(m,s) fの挙動を示す図である。[1.4]で述べたとおり、λが増加すると通常C(m,s) fは減少する。しかし、λが最適値を超えるとC(m,s) fは増加に転じる。そこで本前提技術ではC(m,s) fが極小値をとるときのλをλoptと決める。同図のようにλ>λoptの範囲で再度C(m,s) fが小さくなっていっても、その時点ではすでに写像がくずれていて意味をなさないため、最初の極小点に注目すればよい。λoptは副写像ごとに独立して決めていき、最後にf(n)についてもひとつ定まる。
【0143】
一方、図17は、ηを変えながら求められたf(n)(η=iΔη)(i=0,1,…)に対応するエネルギーC(n) fの挙動を示す図である。ここでもηが増加すると通常C(n) fは減少するが、ηが最適値を超えるとC(n) fは増加に転じる。そこでC(n) fが極小値をとるときのηをηoptと決める。図17は図4の横軸のゼロ付近を拡大した図と考えてよい。ηoptが決まればf(n)を最終決定することができる。
【0144】
以上、本前提技術によれば種々のメリットが得られる。まずエッジを検出する必要がないため、エッジ検出タイプの従来技術の課題を解消できる。また、画像に含まれるオブジェクトに対する先験的な知識も不要であり、対応点の自動検出が実現する。特異点フィルタによれば、解像度の粗いレベルでも特異点の輝度や位置を維持することができ、オブジェクト認識、特徴抽出、画像マッチングに極めて有利である。その結果、人手作業を大幅に軽減する画像処理システムの構築が可能となる。
【0145】
なお、本前提技術について次のような変形技術も考えられる。
【0146】
(1)前提技術では始点階層画像と終点階層画像の間でマッチングをとる際にパラメータの自動決定を行ったが、この方法は階層画像間ではなく、通常の2枚の画像間のマッチングをとる場合全般に利用できる。
【0147】
たとえば2枚の画像間で、画素の輝度の差に関するエネルギーE0と画素の位置的なずれに関するエネルギーE1のふたつを評価式とし、これらの線形和Etot=αE0+E1を総合評価式とする。この総合評価式の極値付近に注目してαを自動決定する。つまり、いろいろなαについてEtotが最小になるような写像を求める。それらの写像のうち、αに関してE1が極小値をとるときのαを最適パラメータと決める。そのパラメータに対応する写像を最終的に両画像間の最適マッチングとみなす。
【0148】
これ以外にも評価式の設定にはいろいろな方法があり、例えば1/E1と1/E2のように、評価結果が良好なほど大きな値をとるものを採用してもよい。総合評価式も必ずしも線形和である必要はなく、n乗和(n=2、1/2、−1、−2など)、多項式、任意の関数などを適宜選択すればよい。
【0149】
パラメータも、αのみ、前提技術のごとくηとλのふたつの場合、それ以上の場合など、いずれでもよい。パラメータが3以上の場合はひとつずつ変化させて決めていく。
【0150】
(2)本前提技術では、総合評価式の値が最小になるよう写像を決めた後、総合評価式を構成するひとつの評価式であるC(m,s) fが極小になる点を検出してパラメータを決定した。しかし、こうした二段回処理の代わりに、状況によっては単に総合評価式の最小値が最小になるようにパラメータを決めても効果的である。その場合、例えばαE0+βE1を総合評価式とし、α+β=1なる拘束条件を設けて各評価式を平等に扱うなどの措置を講じてもよい。パラメータの自動決定の本質は、エネルギーが最小になるようにパラメータを決めていく点にあるからである。
【0151】
(3)前提技術では各解像度レベルで4種類の特異点に関する4種類の副画像を生成した。しかし、当然4種類のうち1、2、3種類を選択的に用いてもよい。例えば、画像中に明るい点がひとつだけ存在する状態であれば、極大点に関するf(m,3)だけで階層画像を生成しても相応の効果が得られるはずである。その場合、同一レベルで異なる副写像は不要になるため、sに関する計算量が減る効果がある。
【0152】
(4)本前提技術では特異点フィルタによってレベルがひとつ進むと画素が1/4になった。例えば3×3で1ブロックとし、その中で特異点を探す構成も可能であり、その場合、レベルがひとつ進むと画素は1/9になる。
【0153】
(5)始点画像と終点画像がカラーの場合、それらをまず白黒画像に変換し、写像を計算する。その結果求められた写像を用いて始点のカラー画像を変換する。それ以外の方法として、RGBの各成分について副写像を計算してもよい。
【0154】
[3]前提技術の改良点
以上の前提技術を基本とし、マッチング精度を向上させるためのいくつかの改良がなされている。ここではその改良点を述べる。
【0155】
[3.1]色情報を考慮に入れた特異点フィルタおよび副画像
画像の色情報を有効に用いるために、特異点フィルタを以下のように変更した。まず色空間としては、人間の直感に最も合致するといわれているHISを用い、色を輝度に変換する式には、人間の目の感度に最も近いといわれているものを選んだ。
【0156】
【数53】
ここで画素aにおけるY(輝度)をY(a)、S(彩度)をS(a)として、次のような記号を定義する。
【0157】
【数54】
上の定義を用いて以下のような5つのフィルタを用意する。
【0158】
【数55】
このうち上から4つのフィルタは改良前の前提技術におけるフィルタとほぼ同じで、輝度の特異点を色情報も残しながら保存する。最後のフィルタは色の彩度の特異点をこちらも色情報を残しながら保存する。
【0159】
これらのフィルタによって、各レベルにつき5種類の副画像(サブイメージ)が生成される。なお、最も高いレベルの副画像は元画像に一致する。
【0160】
【数56】
[3.2]エッジ画像およびその副画像
輝度微分(エッジ)の情報をマッチングに利用するため、一次微分エッジ検出フィルタを用いる。このフィルタはあるオペレータHとの畳み込み積分で実現できる。
【0161】
【数57】
ここでHは演算スピードなども考慮し、以下のようなオペレータを用いた。
【0162】
【数58】
次にこの画像を多重解像度化する。フィルタにより0を中心とした輝度をもつ画像が生成されるため、次のような平均値画像が副画像としては最も適切である。
【0163】
【数59】
式59の画像は後述するForward Stage、すなわち初回副写像導出ステージの計算の際、エネルギー関数に用いられる。
【0164】
エッジの大きさ、すなわち絶対値も計算に必要である。
【0165】
【数60】
この値は常に正であるため、多重解像度化には最大値フィルタを用いる。
【0166】
【数61】
式61の画像は後述するForward Stageの計算の際、計算する順序を決定するのに用いられる。
【0167】
[3.3]計算処理手順
計算は最も粗い解像度の副画像から順に行う。副画像は5つあるため、各レベルの解像度において計算は複数回行われる。これをターンと呼び、最大計算回数をtで表すことにする。各ターンは前記Forward Stageと、副写像再計算ステージであるRefinement Stageという二つのエネルギー最小化計算から構成される。図18は第mレベルにおける副写像を決める計算のうち改良点に係るフローチャートである。
【0168】
同図のごとく、sをゼロクリアする(S40)。つぎにForward Stage(S41)において始点画像pから終点画像qへの写像f( m,s )をエネルギー最小化によって求める。ここで最小化するエネルギーは、対応する画素値によるエネルギーCと、写像の滑らかさによるエネルギーDの線形和である。
【0169】
エネルギーCは、輝度の差によるエネルギーCI(前記改良前の前提技術におけるエネルギーCと等価)と、色相、彩度によるエネルギーCC、輝度微分(エッジ)の差によるエネルギーCEで構成され、それぞれ次のように表される。
【0170】
【数62】
エネルギーDは前記改良前の前提技術と同じものを用いる。ただし前記改良前の前提技術において、写像の滑らかさを保証するエネルギーE1を導出する際、隣接する画素のみを考慮していたが、周囲の何画素を考慮するかをパラメータdで指定できるように改良した。
【0171】
【数63】
次のRefinement Stageに備えて、このステージでは終点画像qから始点画像pへの写像g(m,s)も同様に計算する。
【0172】
Refinement Stage(S42)ではForward Stageにおいて求めた双方向の写像f(m,s)およびg(m,s)を基に、より妥当な写像f’(m,s)を求める。ここでは新たに定義されるエネルギーMについてエネルギー最小化計算を行う。エネルギーMは終点画像から始点画像への写像gとの整合度M0と、もとの写像との差M1より構成される。
【0173】
【数64】
対称性を損なわないように、終点画像qから始点画像pへの写像g’(m,s)も同様の方法で求めておく。
【0174】
その後、sをインクリメントし(S43)、sがtを超えていないことを確認し(S44)、次のターンのForward Stage(S41)に進む。その際前記E0を次のように置き換えてエネルギー最小化計算を行う。
【0175】
【数65】
[3.4]写像の計算順序
写像の滑らかさを表すエネルギーE1を計算する際、周囲の点の写像を用いるため、それらの点がすでに計算されているかどうかがエネルギーに影響を与える。すなわち、どの点から順番に計算するかによって、全体の写像の精度が大きく変化する。そこでエッジの絶対値画像を用いる。エッジの部分は情報量を多く含むため、エッジの絶対値が大きいところから先に写像計算を行う。このことによって、特に二値画像のような画像に対して非常に精度の高い写像を求めることができるようになった。
【0176】
[画像符号化に関する実施の形態]
以上の前提技術を一部利用した画像符号化技術の具体例を述べる。
【0177】
(実施の形態1)
図19は、実施の形態1に係る画像符号化装置100の構成図である。画像符号化装置100は、画像入力部10、フレーム記憶部12、画像選択部14、マッチングプロセッサ16、ストリーム生成部18を有する。また画像選択部14は、計算部50、判定部52を有する。
【0178】
画像入力部10は、ネットワークや記録装置などから画像コンテンツのキーフレームKFi(以下、これを「オリジナルキーフレーム」ともよぶ)列を取得し、それをフレーム記憶部12へ出力する。図20(a)は、オリジナルキーフレーム列を示す。オリジナルキーフレームは例えば動画のフレームを0.5秒おきに抽出することで定められる。また、デジタルカメラ等で撮影された画像であってもよい。
フレーム記憶部12は、オリジナルキーフレーム列を格納する。これは、画像符号化装置100の外にあっても構わない。
【0179】
画像選択部14は、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外する。画像選択部14における計算部50は、キーフレーム間における表示内容の相違を計算し、判定部52は、その計算結果をもとに除外できるキーフレームを特定する。図20(b)は、以上の処理結果におけるキーフレーム列を示す。ここで、KF2、KF3、KF5、KF6、KF7が除外されている。画像選択部14は、除外されなかったキーフレーム(以下、これを「選択キーフレーム」ともよぶ、図中「KF’」と表記)をマッチングプロセッサ16、ストリーム生成部18へ出力する。
【0180】
マッチングプロセッサ16は、選択キーフレーム全体の列において、隣接する選択キーフレーム間で前提技術による画像マッチングを計算して対応点情報(図中「MF’」と表記)を生成する。
ストリーム生成部18は、選択キーフレームと対応点情報を取得し、これらを組み込む形で符号化データストリームCDS(以下、「ストリーム」という)を生成する。図20(c)は図20(b)に対応して、生成されたストリームの一例を示す。このストリームはネットワークへ送出され、図示しない画像再生装置にて受信されるほか、図示しない記憶装置に格納される。
【0181】
図21は、画像符号化装置100における除外するキーフレーム特定についての手順を示すフローチャートである。ここで、αは本手順の対象となるオリジナルキーフレーム数、βは連続して除外するキーフレーム数の初期値、γはキーフレームの除外を決定するためのしきい値、iは手順処理中において除外されないことが決定された最後のキーフレーム番号、jは連続して除外するキーフレーム数を示す。
【0182】
画像入力部10には、オリジナルキーフレーム列が入力される(S110)。計算部50は、iを1に(S112)、jをβに(S114)設定する。これらの設定により、オリジナルキーフレームKFiとKFi+jが選択される。図22は、KF1とKF3が選択されている例を示す。次に、選択された2枚のキーフレームの差を計算する(S116)。差は、例えば両キーフレームの位置的に対応しあう画素値の差の絶対値や二乗値の総和である。図22では、KF1とKF3の座標(x0、y0)の画素p0とp1における画素値を比較している。さらに、この画素値の差は画面全体の画素値数で総和される。
【0183】
判定部52は、求められた差が、所定のしきい値γ以下の場合(S116のY)、さらに除外するキーフレーム数を増加させるため、jに1を加算する(S122)。なおこの結果は後で利用するために記録される(S120)。一方差が、所定のしきい値γより大きい場合(S116のN)、除外するキーフレーム数を減少させるため、jから1を減算する(S126)。キーフレーム間の差がしきい値γ以下という条件下における、jの最大値を求めるために、これらの処理が繰り返し実行される。
【0184】
除外するキーフレーム数jは、i+jが対象となるオリジナルキーフレーム数α(S118のY)、jが1(S124のN)、KFiとKFi+jの差がS120において計算済み(S128のY)になった場合に決定される。このときの、KFiが選択され(S130)、手順処理中において除外されないことが決定されたキーフレーム番号iをi+jに移動させる(S132)。iが対象となるオリジナルキーフレーム数αでなければ(S134のN)、以上の処理が繰り返される。iがαになった場合(S134のY)、KFαを選択して(S136)、終了する。以上の処理で選択されたキーフレームが選択キーフレームである。
【0185】
このように、本実施の形態によれば、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するため、画像コンテンツの品質を劣化させることなく、容量を削減することが可能である。さらに、キーフレーム間の表示内容の相違で除外するキーフレームを特定するため、それらにおける中間フレーム生成の必要がなく、容易に特定可能である。特に、シーンチェンジなどにおけるキーフレーム間の表示内容の相違が大きい場合に、誤ってキーフレームを除外する可能性は一般的に小さい。
【0186】
(実施の形態2)
図23は、実施の形態2に係る画像符号化装置110の構成図である。画像符号化装置110は、画像入力部10、フレーム記憶部12、マッチングプロセッサ20、画像選択部22、抽出部24、ストリーム生成部18を有する。画像入力部10、フレーム記憶部12、ストリーム生成部18は図19と同一である。また画像選択部22は、計算部54、判定部56を有する。
【0187】
マッチングプロセッサ20は、オリジナルキーフレーム全体の列において、隣接するオリジナルキーフレーム間で前提技術による画像マッチングを計算して対応点情報(図中「MF」と表記)を生成する。このとき、連続したキーフレーム間だけではなく、離散的に選択されたキーフレーム間においても対応点情報も生成する。離散的に選択する数は複数種あっても構わない。さらに、これらの対応点情報を生成する際に得られるデータも出力する。例えば、全単射条件を満たすか否か、式14の写像のエネルギー値である。
【0188】
画像選択部22は、図19における画像選択部14と同様にオリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外する。しかし、画像選択部14はオリジナルキーフレームを使用して除外するキーフレームを特定していたのに対し、画像選択部22は対応点情報を生成する際に得られるデータを使用してこれらを特定する。計算部54は、対応点情報を生成する際に得られるデータをもとに除外するキーフレームを特定するために必要な値を計算する。判定部56は、その計算結果をもとに除外できるキーフレームを特定する。画像選択部22は、以上の処理結果、除外するキーフレームについての情報を抽出部24へ、それらに対応する対応点情報をストリーム生成部18へ出力する。
抽出部24は、オリジナルキーフレーム列と除外するキーフレームについての情報から選択キーフレームを生成し、ストリーム生成部18へ出力する。
【0189】
図24は、画像符号化装置110における除外するキーフレーム特定についての手順を示すフローチャートである。ここで、図中における記号は図22と同一である。画像入力部10には、オリジナルキーフレーム列が入力される(S50)。マッチングプロセッサ20は、キーフレーム間隔が異なる複数種の対応点情報を生成する(S52)。その生成過程で、全単射条件を満たすか否か、式14の写像のエネルギー値などの情報も生成される。計算部54は、iを1に(s54)、jをβに(S56)設定する。これらの設定後、対応点情報の中でMFi(i+j)およびそれを生成する過程で得られるデータが選択される。ここでMFi(i+j)はキーフレームKFiとKFi+j間における対応点情報である。さらに、MFi(i+j)を生成する際に得られるデータから除外するキーフレームを特定するために必要な値を計算してもよい。これは、例えば、前提条件における式14の各項に所定の係数を乗算することなどである。一方、全単射条件を満たすか否か、式14の写像のエネルギー値をそのまま使用してもよい。
【0190】
判定部56は、以上の値が、所定の条件を満足するかを判定する(S58)。例えば、写像のエネルギー値が所定のしきい値より小さいか、または全単射条件をすべて満たすかなどである。所定の条件を満足する場合(S58のY)、さらに除外するキーフレーム数を増加させるため、jに1を加算する(S64)。なお判定結果は後で利用するために記録される(S62)。一方、所定の条件を満足しない場合(S58のN)、除外するキーフレーム数を減少させるため、jから1を減算する(S68)。図22と同様、jの最大値を求めるために、これらの処理が繰り返し実行される。
【0191】
除外するキーフレーム数jは、i+jが対象となるオリジナルキーフレーム数α(S60のY)、jが1(S66のN)、MFi(i+j)についての条件がS62において判定済み(S70のY)になった場合に決定される。このときの、KFiとMFi(i+j)が選択され(S72)、手順処理中において除外されないことが決定された最後のキーフレーム番号iをi+jに移動させる(S74)。iが対象となるオリジナルキーフレーム数αでなければ(S76のN)、以上の処理が繰り返される。iがαになった場合(S76のY)、KFαを選択して(S78)、終了する。
【0192】
このように、本実施の形態によれば、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するため、画像コンテンツの品質を劣化させることなく、容量を削減することが可能である。さらに、対応点情報の生成過程で得られたデータを使用するため、対応点情報の問題点が反映されており、一般に品質への影響が少ないキーフレームの特定の確実性が向上する。
【0193】
(実施の形態3)
図25は、実施の形態3に係る画像符号化装置120の構成図である。画像符号化装置120は、画像入力部10、フレーム記憶部12、マッチングプロセッサ20、画像選択部26、ストリーム生成部18を有する。画像入力部10、フレーム記憶部12、ストリーム生成部18は図19と、マッチングプロセッサ20は図23と同一である。また画像選択部26は、計算部58、判定部60を有する。
【0194】
画像選択部26は、図19における画像選択部14、図23における画像選択部22と同様にオリジナルキーフレーム列から画像コンテンツへの品質が少ないキーフレームを除外する。しかし、その方法が異なる。画像選択部26における計算部58には、オリジナルキーフレーム列と対応情報が入力される。これが図26(a)である。計算部58は、所定のキーフレームKFiに対応する中間フレームIFiを生成する。中間フレームIFiはこれの前後にあるふたつのキーフレームKFi−x、KFi+yと対応する対応点情報MF(i−x)(i+y)から生成される画像である。ここでxとyは1以上の整数である。図26(b)および(c)は生成された中間フレームを示す。図26(b)では、IF2がふたつのキーフレームKF1、KF3と対応点情報MF13から生成されている。また、図26(c)では、IF2とIF3がふたつのキーフレームKF1、KF4と対応点情報MF14から生成されている。次に計算部58は、所定のキーフレームKFiとそれに対応する中間フレームIFiを比較する。比較方法は、図21におけるS16と同じく、これらの表示内容の差を求めてもよい。
【0195】
画像選択部26における判定部60は、計算部58で求めた差と所定のしきい値を比較する。その差が所定のしきい値以下の場合、所定のキーフレームは画像コンテンツへの品質が少ないキーフレームとして除外される。なぜなら、一般にこれの代わりに中間フレームを使用しても、同等の品質を維持できるからである。例えば、図26(c)におけるIF2、IF3と図26(a)におけるKF2、KF3の差がしきい値以下の場合、KF2、KF3の代わりにIF2、IF3を使用する。一方、これらの差はしきい値より大きいが、図26(b)におけるIF2と図26(a)におけるKF2の差がしきい値以下の場合、KF2の代わりにIF2を使用する。ここでは一例として除外するキーフレーム数を2としたが、これに限らない。画像選択部26は、以上の処理結果、選択キーフレームとそれらに対応する対応点情報をストリーム生成部18へ出力する。
【0196】
このように、本実施の形態によれば、オリジナルキーフレーム列から画像コンテンツの品質への影響が少ないキーフレームを除外するため、画像コンテンツの品質を劣化させることなく、容量を削減することが可能である。さらに、対応点情報から生成された中間フレームを対応するキーフレームと比較した後、除外するキーフレームを特定するため、一般に品質への影響が少ないキーフレームの特定の確実性がより向上する。
【0197】
(実施の形態4)
図27は、実施の形態4に係る画像符号化装置130の構成図である。画像符号化装置130は、画像入力部10、フレーム記憶部12、設定部30、画像選択部28、マッチングプロセッサ16、ストリーム生成部18を有する。画像入力部10、フレーム記憶部12、マッチングプロセッサ16、ストリーム生成部18は図19と同一である。また画像選択部28は、計算部50、判定部62を有する。
【0198】
設定部30では、所定のキーフレームが除外された後における画像コンテンツの容量の目標値が設定される。この目標値の設定は、ユーザが行ってもよいし、内部処理によって自動的に行われてもよい。例えば、前者ではユーザインターフェースを介して設定される。一方後者では、画像コンテンツを記録しようとする記録媒体の種類、画像コンテンツを配信しようとする通信回線の伝送容量についての情報などをもとに設定される。設定部30は、目標値を画像選択部28に出力する。
【0199】
画像選択部28は、図19における画像選択部14、図23における画像選択部22、図25における画像選択部26と同様に、オリジナルキーフレームから画像コンテンツの品質への影響が少ないキーフレームを除外する。しかし、画像選択部28は所定のキーフレームを削除した画像コンテンツの容量を目標値以下にする必要がある。そのため、例えば除外すべきキーフレーム数に応じて図21におけるしきい値γが可変して設定される。すなわち、目標値が大容量であればγを大きくして、除外するキーフレーム数を少なくする。一方、目標値が小容量であればγを小さくして、除外するキーフレーム数を多くする。
【0200】
このように、本実施の形態によれば、目標値に応じてキーフレームを除外するしきい値を変化させるため、最終的な画像コンテンツの容量を目標値と同等にすることが可能である。さらに、除外するキーフレームは画像コンテンツの品質への影響が少ないキーフレームから行うため、一般に画像コンテンツの品質を劣化させることがない。
【0201】
以上、実施の形態をもとに本発明を説明した。なお本発明はこの実施の形態に限定されることなく、そのさまざまな変形例もまた、本発明の態様として有効である。そうした例を挙げる。
【0202】
実施の形態1では、除外するキーフレームの検索をオリジナルキーフレームの先頭から開始し、対象とするキーフレーム数まで増加させている。しかし、除外するキーフレームの検索はオリジナルキーフレーム列の1枚目からでなくても可能である。例えば、検索をオリジナルキーフレーム列の途中から行うことも可能である。要は、一定範囲のキーフレームを対象に、除外するキーフレームの特定が行われればよい。
【0203】
実施の形態1において、ストリームはふたつのキーフレームの間にそれらに対応する対応点情報を配置させる形で生成される。しかし、ストリームの構成はこれに限られない。例えば、キーフレームを連続して配置させ、その後に対応点情報を連続して配置させることによって構成してもよい。要は、このストリームを再生する側がその構成を認識できればよい。
【0204】
実施の形態2では、除外するキーフレーム数に応じてあらかじめ複数種の対応点情報を生成している。しかし、複数種の対応点情報をあらかじめ作成せずに、条件判定後にこれを生成することも可能である。例えば、ひとつのキーフレームを除外可能と判定された後、連続したふたつのキーフレームを除外する場合の対応点情報を生成してもよい。要は、対応点情報の生成過程で得られるデータをもとに所定のキーフレームが除外できるかを正確に判断できればよい。
【0205】
実施の形態4では、所定キーフレーム除外後の画像コンテンツの容量に対する目標値に対応してしきい値を決定している。しかし、画像選択部はしきい値を処理の間に適応的に変化させることも可能である。例えば、最初はしきい値を高くして除外するキーフレームを特定し、その時点でまだ容量が目標値に達していなければ、さらにしきい値を低くして除外するキーフレームを再び特定することも可能である。この処理は容量が目標値に達するまで繰り返し行われる。要は、画質への影響が少なくキーフレームが除外され、所定キーフレーム除外後の容量が目標値になればよい。
【0206】
実施の形態4では、所定キーフレーム除外後の画像コンテンツの容量が目標値以下になるよう処理を行っている。しかし、目標値以下でなくてもよい場合がある。例えば、所定キーフレーム除外後の画像コンテンツをEthernet(登録商標)などにより伝送する場合、所定キーフレーム除外後のコンテンツの容量が目標値より大きくても、Ethernetの可能伝送容量より小さければ、一般に伝送可能である。要は、対象となる媒体の性質に応じて設定されればよい。
【図面の簡単な説明】
【図1】図1(a)とは図1(b)は、ふたりの人物の顔に平均化フィルタを施して得られる画像、図1(c)と図1(d)は、ふたりの人物の顔に関して前提技術で求められるp(5,0)の画像、図1(e)と図1(f)は、ふたりの人物の顔に関して前提技術で求められるp(5,1)の画像、図1(g)と図1(h)は、ふたりの人物の顔に関して前提技術で求められるp(5,2)の画像、図1(i)と図1(j)は、ふたりの人物の顔に関して前提技術で求められるp(5,3)の画像をそれぞれディスプレイ上に表示した中間調画像の写真である。
【図2】図2(R)はもとの四辺形を示す図、図2(A)、図2(B)、図2(C)、図2(D)、図2(E)はそれぞれ相続四辺形を示す図である。
【図3】始点画像と終点画像の関係、および第mレベルと第m−1レベルの関係を相続四辺形を用いて示す図である。
【図4】パラメータηとエネルギーCfの関係を示す図である。
【図5】図5(a)、図5(b)は、ある点に関する写像が全単射条件を満たすか否かを外積計算から求める様子を示す図である。
【図6】前提技術の全体手順を示すフローチャートである。
【図7】図6のS1の詳細を示すフローチャートである。
【図8】図7のS10の詳細を示すフローチャートである。
【図9】第mレベルの画像の一部と、第m−1レベルの画像の一部の対応関係を示す図である。
【図10】前提技術で生成された始点階層画像を示す図である。
【図11】図6のS2に進む前に、マッチング評価の準備の手順を示す図である。
【図12】図6のS2の詳細を示すフローチャートである。
【図13】第0レベルにおいて副写像を決定する様子を示す図である。
【図14】第1レベルにおいて副写像を決定する様子を示す図である。
【図15】図12のS21の詳細を示すフローチャートである。
【図16】あるf(m,s)についてλを変えながら求められたf(m,s)(λ=iΔλ)に対応するエネルギーC(m,s) fの挙動を示す図である。
【図17】ηを変えながら求められたf(n)(η=iΔη)(i=0,1,…)に対応するエネルギーC(n) fの挙動を示す図である。
【図18】改良後の前提技術において第mレベルにおける副写像を求めるフローチャートである。
【図19】実施の形態1に係る画像符号化装置の構成図である。
【図20】図19の装置によるキーフレームを示す図である。
【図21】図19の装置によるキーフレーム選択の手順を示すフローチャートである。
【図22】図19の装置の計算部の動作概要を示す図である。
【図23】実施の形態2に係る画像符号化装置の構成図である。
【図24】図23の装置によるキーフレーム選択の手順を示すフローチャートである。
【図25】実施の形態3に係る画像符号化装置の構成図である。
【図26】図25の装置によるキーフレーム選択の動作概要を示す図である。
【図27】実施の形態4に係る画像符号化装置の構成図である。
【符号の説明】
10 画像入力部、 12 フレーム記憶部、 14、22、26、28 画像選択部、 16、20 マッチングプロセッサ、 18 ストリーム生成部、24 抽出部、 30 設定部、 50、54、58 計算部、 52、56、60、62 判定部、 100、110、120、130 画像符号化装置。
Claims (16)
- 画像コンテンツを構成するキーフレーム列を入力する入力部と、
前記キーフレーム列から前記画像コンテンツの品質への影響が少ない所定のキーフレームを除外する画像選択部と、
を含むことを特徴とする画像符号化装置。 - 前記キーフレームを除外した画像コンテンツの容量に対する目標値が設定される設定部をさらに含み、
前記画像選択部は前記目標値になるまで前記キーフレーム列から前記所定のキーフレームを除外し、前記目標値になれば処理を終了することを特徴とする請求項1に記載の画像符号化装置。 - 前記画像選択部は、所定のふたつのキーフレーム間における差分が所定の基準より大きい場合、前記影響が大きいとすることを特徴とする請求項1または2のいずれかに記載の画像符号化装置。
- 前記画像選択部は、所定のキーフレーム間についての対応点情報から生成された中間フレームと前記中間フレームに対応するキーフレームとの差分が所定の基準より大きい場合、前記影響が大きいとすることを特徴とする請求項1または2のいずれかに記載の画像符号化装置。
- 前記画像選択部は、前記対応点情報の生成過程で得られるデータを監視することにより、前記影響の大きさを判定することを特徴とする請求項1または2のいずれかに記載の画像符号化装置。
- 前記画像選択部において、前記影響の大きさを判定するための基準が、前記目標値に応じて適応的に設定されることを特徴とする請求項2から5のいずれかに記載の画像符号化装置。
- 画像コンテンツを構成するキーフレーム列を入力する入力部と、
所定のキーフレームを除外した画像コンテンツの容量に対する目標値が設定される設定部と、
前記目標値になるまで前記キーフレーム列から前記所定のキーフレームを除外し、前記目標値になれば処理を終了する画像選択部と、
を含むことを特徴とする画像符号化装置。 - 除外されなかったキーフレームと対応点情報とを含む形でストリームを形成するストリーム生成部をさらに含むことを特徴とする請求項1から7のいずれかに記載の画像符号化装置。
- 画像コンテンツを構成するキーフレーム列を入力するステップと、
前記キーフレーム列から所定のキーフレームを除外したときの、前記画像コンテンツの品質への影響を推定するステップと、
前記影響が少ないときに、前記キーフレームを除外するステップと、
を含むことを特徴とする画像符号化方法。 - 画像コンテンツを構成するキーフレーム列を入力するステップと、
前記画像コンテンツの容量に対する目標値を設定するステップと、
前記容量が前記目標値になるまで前記キーフレーム列から前記画像コンテンツの品質への影響が少ないキーフレームを除外するステップと、
前記容量が前記目標値になれば処理を終了するステップと、
を含むことを特徴とする画像符号化方法。 - 前記影響は、所定のふたつのキーフレーム間における差分をもとに推定されることを特徴とする請求項9または10のいずれかに記載の画像符号化方法。
- 前記影響は、所定のキーフレーム間についての対応点情報から生成された中間フレームと前記中間フレームに対応するキーフレームとの差分をもとに推定されることを特徴とする請求項9または10のいずれかに記載の画像符号化方法。
- 前記影響は、前記対応点情報の生成過程で得られるデータをもとに推定されることを特徴とする請求項9または10のいずれかに記載の画像符号化方法。
- 除外されなかったキーフレームと前記対応点情報とを含む形でストリームを形成するステップをさらに含むことを特徴とする請求項9から13のいずれかに記載の画像符号化方法。
- 画像コンテンツを構成するキーフレーム列を入力するステップと、
前記キーフレーム列から所定のキーフレームを除外したときの、前記画像コンテンツの品質への影響を推定するステップと、
前記影響が少ないときに、前記キーフレームを除外するステップと、
をコンピュータに実行せしめることを特徴とするプログラム。 - 画像コンテンツを構成するキーフレーム列を入力するステップと、
前記画像コンテンツの容量に対する目標値を設定するステップと、
前記容量が前記目標値になるまで前記キーフレーム列から前記画像コンテンツの品質への影響が少ないキーフレームを除外するステップと、
前記容量が前記目標値になれば処理を終了するステップと、
をコンピュータに実行せしめることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002192772A JP2004040340A (ja) | 2002-07-01 | 2002-07-01 | 画像符号化方法および装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002192772A JP2004040340A (ja) | 2002-07-01 | 2002-07-01 | 画像符号化方法および装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004040340A true JP2004040340A (ja) | 2004-02-05 |
Family
ID=31701899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002192772A Pending JP2004040340A (ja) | 2002-07-01 | 2002-07-01 | 画像符号化方法および装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004040340A (ja) |
-
2002
- 2002-07-01 JP JP2002192772A patent/JP2004040340A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3889233B2 (ja) | 画像符号化方法と装置および画像復号方法と装置 | |
JP2008252860A (ja) | 画像処理方法及び画像処理装置 | |
JP3877651B2 (ja) | 画像処理方法と装置 | |
JP2008282376A (ja) | 画像処理方法および装置 | |
JP2002271788A (ja) | 画像符号化方法と装置および画像復号方法および装置 | |
JPWO2005122593A1 (ja) | 動画符号化方法および動画復号方法 | |
JP4050472B2 (ja) | 画像生成方法、装置およびシステム | |
JP4157686B2 (ja) | 画像符号化および復号のための方法および装置 | |
JP4039858B2 (ja) | 画像マッチング方法と装置、および画像符号化方法と装置 | |
JP2003037842A (ja) | 画像符号化方法、復号方法および画像符号化装置、復号装置 | |
JP2007122751A (ja) | 画像処理のための方法、装置、プログラム | |
JP4023727B2 (ja) | 監視装置、および監視方法 | |
JP3839353B2 (ja) | 画像符号化方法と装置および画像復号方法および装置 | |
JP2002190020A (ja) | 映像効果方法および装置 | |
JP4524412B2 (ja) | 画像符号化方法、復号方法および画像符号化装置、復号装置 | |
JP2004048116A (ja) | 画像データ符号化および復号のための方法および装置 | |
JP2002230575A (ja) | 映像効果方法および装置 | |
JP2004048595A (ja) | 画像符号化方法および装置 | |
JP2004040340A (ja) | 画像符号化方法および装置 | |
JP3827981B2 (ja) | 画像符号化方法と装置および画像復号方法と装置 | |
JP2004064474A (ja) | 画像符号化および復号のための方法および装置 | |
JP2004048496A (ja) | 画像符号化方法および装置、画像復号方法および装置と、画像配信装置 | |
JP2004048627A (ja) | 画像符号化方法と装置及び画像復号方法と装置 | |
JP2002359842A (ja) | 画像符号化方法と装置および画像復号方法と装置 | |
JP3828048B2 (ja) | 画像符号化方法と装置および画像復号方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050627 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081216 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090204 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090414 |