JP2004064156A - コンテンツサーバ、およびそのサーバにおけるコンテンツの提供方法 - Google Patents

コンテンツサーバ、およびそのサーバにおけるコンテンツの提供方法 Download PDF

Info

Publication number
JP2004064156A
JP2004064156A JP2002215903A JP2002215903A JP2004064156A JP 2004064156 A JP2004064156 A JP 2004064156A JP 2002215903 A JP2002215903 A JP 2002215903A JP 2002215903 A JP2002215903 A JP 2002215903A JP 2004064156 A JP2004064156 A JP 2004064156A
Authority
JP
Japan
Prior art keywords
format
content
client
unit
moving image
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
Application number
JP2002215903A
Other languages
English (en)
Inventor
Giyouzo Akiyoshi
秋吉 仰三
Nobuo Akiyoshi
秋吉 信雄
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.)
Monolith Co Ltd
Original Assignee
Monolith Co 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 Monolith Co Ltd filed Critical Monolith Co Ltd
Priority to JP2002215903A priority Critical patent/JP2004064156A/ja
Publication of JP2004064156A publication Critical patent/JP2004064156A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】ユーザがデコーダに応じたフォーマットのコンテンツを選択する必要があった。
【解決手段】受付部102はクライアントからコンテンツの送信要求を受け付ける。調査部104は、そのクライアントの処理機能を調査する。指示部106は、調査結果に基づいて第1フォーマットでコンテンツを出力する第1処理部108または第2フォーマットでコンテンツを出力する第2処理部110にコンテンツの出力を指示する。送信部112は、第1処理部108または第2処理部110から出力されたコンテンツをクライアントに送信する。これにより、ユーザがデコーダに応じたフォーマットのコンテンツを選択しなくてよい。
【選択図】    図20

Description

【0001】
【発明の属する技術分野】
この発明は、コンテンツ提供技術に関し、とくにネットワークを介してコンテンツを提供する技術に関する。
【0002】
【従来の技術】
CPUの処理能力の向上、ネットワーク技術の発達、端末装置の低価格化等の要因により、データ通信可能な携帯電話機およびパーソナルコンピュータなどが広く一般に普及している。ネットワーク機能を有するそれらの端末装置(以下「クライアント」という)の普及が進むに連れて、文字、静止画などのコンテンツのクライアントへの配信、およびクライアントにおけるそれらのコンテンツの表示だけではなく、膨大なデータ量と高い処理能力が必要となる動画や音声などのコンテンツの配信と再生が要求されている。
【0003】
こうした要求に応えるべく、静止画や動画データの圧縮技術が開発され、JPEG(商標)、PNG(商標)、GIF(商標)、MPEG(商標)などの圧縮技術が実用化されている。動画圧縮技術として、本願発明者が開発した2枚のキーフレームのマッチングを計算し、その結果得られた対応点情報に基づいて中間フレームを新たに生成するものがある(以下、「CPF(Critical Point Filter)(商標)」という)。更に、膨大な量のデータを効率的にクライアントに伝送するために、クライアント側で受信したデータを順次再生するストリーミング技術が開発されている。
【0004】
【発明が解決しようとする課題】
これらの技術に基づいて生成されたデータを利用するためには、一般に専用のデコーダがクライアント側に必要である。このため、ユーザはコンテンツの再生に必要なデコーダを自分のクライアントにインストールする必要がある。また、例えばウェブページに異なるフォーマットの動画ファイルがそれぞれ選択可能に表示されている場合、ユーザは自分のクライアントで再生できるフォーマットの動画ファイルを選択する必要がある。更に、コンテンツを提供する側は、ユーザのニーズに応えるために、予め複数のフォーマットで同様のコンテンツを準備しておく必要がある。
【0005】
本発明は、そうした状況に鑑みてなされたものであり、その目的は、ユーザがコンテンツのフォーマットを意識することなく、適切なフォーマットのコンテンツを配信する技術の提供にある。また、ユーザのクライアントが、最も適したフォーマットのコンテンツを利用できる技術を提供することにある。また、サーバが複数のフォーマットで同一のコンテンツを保持している場合でも、ウェブページに、フォーマットごとにコンテンツを選択可能に表示しなくてよい技術を提供することにある。また、予め複数のフォーマットのコンテンツをサーバに準備しなくてよい技術を提供することにある。また、クライアントの表示機能に応じて、そのクライアントに適切な動画フォーマットで動画を送信する技術を提供することにある。また、新しい技術への移行をスムーズに進めるための技術を提供することにある。また、これを実現するためのサーバ、クライアントを含むシステムを提供することにある。
【0006】
【課題を解決するための手段】
本発明のある態様は、コンテンツをクライアントに提供するサーバである。このサーバは、第1フォーマットと前記第1フォーマットとは異なる第2フォーマットの動画コンテンツを出力する処理部と、クライアントにおける前記動画コンテンツの処理機能を特定する調査部と、前記調査部による調査結果に基づいて、前記第1フォーマットまたは前記第2フォーマットのいずれかの形式で前記動画コンテンツを前記処理部に出力せしめる指示部とを備え、前記第1フォーマットは、前記動画コンテンツを形成する複数のフレームのうち、キーフレームを除くフレームを前記クライアント側で前記キーフレームと対応点情報とに基づいて画像化するための形式である。「クライアント」は、サーバからコンテンツの提供を受ける端末装置であり、例えば、携帯電話機、パーソナルコンピュータ、PDA(Personal Digital Assistants)など、少なくともネットワーク通信機能を備えた装置である。これにより、クライアントがCPFデコーダを有する場合、そのクライアントに対してCPF形式の動画コンテンツを提供し、CPFデコーダを有しない場合、CPF以外の形式の動画コンテンツを提供できる。
【0007】
前記第2フォーマットは、前記動画コンテンツを形成する複数のフレームを、前記クライアント側で前記対応点情報を使用することなしに画像化するための形式であってよい。例えば、第2フォーマットは、MPEG(商標)、PNG(商標)、GIF(商標)などの形式である。前記調査部は、前記クライアントにおける前記処理機能として、前記第1フォーマットの前記動画コンテンツをデコードする機能の有無について調査してよい。
【0008】
本発明の別の態様は、コンテンツをクライアントに提供する方法である。この方法は、第1フォーマットおよび前記第1フォーマットとは異なる第2フォーマットの動画コンテンツを出力する工程と、クライアントにおける前記動画コンテンツの処理機能を特定する工程と、前記クライアントの前記処理機能に応じて、前記第1フォーマットまたは前記第2フォーマットのいずれかの形式で前記動画コンテンツを出力せしめる工程とを含み、前記第1フォーマットは、前記動画コンテンツを形成する複数のフレームのうち、キーフレームを除くフレームを前記クライアント側で前記キーフレームと対応点情報とに基づいて画像化するための形式である。
【0009】
本発明の更に別の態様は、コンテンツをクライアントに提供するサーバである。このサーバは、クライアントからコンテンツの送信要求を受け付ける受付部と、前記コンテンツを第1フォーマットで出力する第1処理部と、前記コンテンツを前記第1フォーマットとは異なる第2フォーマットで出力する第2処理部と、前記クライアントにおけるコンテンツの処理機能を特定する調査部と、前記調査部による調査結果に基づいて、前記第1処理部または前記第2処理部のいずれか一方に前記コンテンツの出力を指示、またはいずれか一方の出力を選択する指示部と、前記指示部に指示または選択された前記第1処理部または前記第2処理部が出力した前記コンテンツを前記クライアントに送信する送信部とを備える。
【0010】
「コンテンツ」は、例えば、静止画、動画、音声、3Dポリンゴンデータなど情報のまとまりである。「フォーマット」は、コンテンツを形成するデータの形式である。「処理機能」は、静止画、動画などの表示機能、音声などの再生機能、3Dポリゴン処理機能などであり、具体的には例えば、各種デコーダの有無、表示画面サイズ、表示可能色数、同時発音数などである。また、デコーダはソフトウエアであっても、ハードウエアであってもよい。これにより、クライアントが有する処理機能に応じて、そのクライアントがデコードできるフォーマットのコンテンツを送信できる。また、画面のサイズに合わせてサイズを調整したコンテンツを送信できる。第1処理部および第2処理部は、指示部からの指示に基づいてコンテンツを生成または既に格納されているコンテンツを出力してもよいし、同一の内容のコンテンツを順次出力しており、指示部の指示によりいずれか一方の出力が選択されてもよい。
【0011】
前記調査部が、前記クライアントは前記第1フォーマットのコンテンツを処理できると特定した場合、前記指示部は前記第1処理部に前記コンテンツの出力を指示し、前記調査部が、前記クライアントは前記第1フォーマットのコンテンツを処理できないと特定した場合、前記指示部は前記第2処理部に前記コンテンツの出力を指示してもよい。例えば、第1フォーマットが技術的に新しく、そのデコーダを搭載するクライアントと、第2フォーマット用のデコーダを搭載するクライアントとが混在する場合、第1フォーマットのデコーダを搭載するクライアントを有するユーザは、第1フォーマットのコンテンツを利用でき、第1フォーマットのデコーダを搭載しないクライアントを有するユーザであっても、第2フォーマットで、そのコンテンツを利用できる。これにより、古い世代のクライアントを有するユーザが疎外感を持つことなく、新しい世代のクライアントへの移行を進めることができる。
【0012】
前記クライアントが、前記第1フォーマットおよび前記第2フォーマットの両方のコンテンツを処理できる場合、前記指示部は、予め優先順位が高く設定された前記第1処理部および前記第2処理部のいずれか一方に前記コンテンツの出力を指示してもよい。これにより、クライアントに適切なコンテンツが提供され、利用できるフォーマットの中から、ユーザがいずれかひとつを選択する必要がない。また、別の形態として、例えば、ハイレベルなユーザ向けに、ユーザ自らがいずれかのフォーマットを選択できるようにしてもよい。
【0013】
前記コンテンツは動画であって、前記クライアントが、前記第1フォーマットおよび前記第2フォーマットのいずれの動画も表示できない場合、前記指示部は、前記動画に基づいて静止画を出力することを前記第1処理部または前記第2処理部の一方に指示してもよい。これにより、クライアントに動画フォーマットのデコード機能がない場合でも、静止画を表示させることができる。また、第1処理部または第2処理部は、その静止画を利用して、動画を形成するフレームごとにウェブページを生成し、一定時間間隔でそのウェブページが切り替わるようにしてもよいし、リンクを張り、ユーザの指示でウェブページが切り替わるようにして擬似的な動画を表示させてもよい。
【0014】
前記第1処理部は、前記動画を形成する複数のフレームのうち、キーフレームを除くフレームを前記クライアント側で前記キーフレームと対応点情報とに基づいて画像化するための形式で前記動画を出力し、前記第2処理部は、前記動画を形成する複数のフレームを、前記クライアント側で前記対応点情報を使用することなしに画像化するための形式で前記動画を出力してもよい。例えば、第1処理部は、CPF(商標)による動画フォーマットを出力し、第2処理部は、MPEG(商標)、PNG(商標)、GIF(商標)による動画フォーマットを出力する。
【0015】
前記第2処理部は、前記動画を形成するために必要なフレームの供給を前記第1処理部に要求し、前記第1処理部は、その要求に基づいてフレームを生成し、前記第2処理部に出力してもよい。詳細は後述するが、第1処理部は、キーフレーム間の任意の位置における中間フレームを生成できる。これにより、第2処理部は、第1処理部から供給されたフレームに基づいて動画を生成できる。また、第2処理部が出力する動画は、必要なときに生成するので、予めサーバに保存しておく必要がない。さらに、例えば第2フォーマットがGIF(商標)を利用したアニメーションの場合、そのコマ数、データ量などはクライアントの表示機能の性能によって異なるが、この構成によれば、表示機能の性能に応じてコマ数、データ量、サイズなどを調整でき適切なコンテンツを生成できる。
【0016】
前記第2処理部が生成した動画を格納する動画格納部と、前記指示部が前記第2処理部に動画の出力を指示した場合、前記動画格納部に前記指示部により指示された動画と同一の動画が格納されているか否かを判定する判定部とを更に備え、前記第2処理部は、前記動画格納部に前記同一の動画が格納されていない場合に、前記第1処理部にフレームの供給を要求してもよい。これにより、同一の動画を重複して生成することを避けることができ、クライアントに要求されてから送信するまでの時間を短縮できる。
【0017】
前記調査部は、前記クライアントの機種情報を取得する取得部と、機種情報とその機種の処理機能とを対応付けて格納する機種機能データベースと、取得した機種情報に基づいて前記機種機能データベースを参照して、前記クライアントの処理機能を特定する特定部とを有してもよい。これにより、機種ごとの処理機能を特定でき、適切なフォーマットのコンテンツを提供できる。
【0018】
前記取得部は、前記クライアントから提供される前記クライアントに関係する複数の情報を環境変数として取得し、前記機種情報で前記クライアントの機種を特定できない場合、前記環境変数に含まれるいずれかの情報、または複数の情報の組み合わせでそのクライアントの処理機能を特定してもよい。例えば、クライアントはブラウザを介してサーバからコンテンツを取得するが、そのブラウザの種類によりサーバが獲得できる環境変数が異なる。この構成によれば、こうした場合でもクライアントの処理機能を特定できる。
【0019】
前記調査部は、前記クライアントからそのクライアントの処理機能を特定する情報を取得してもよい。これにより、クライアント自らが処理機能を通知する場合に対応できる。例えば、携帯電話機で動作する動画の再生専用のプログラムが、その携帯電話機のデコーダの種類、画面サイズなどを収集し、サーバに送信する場合に対応できる。もちろんそのプログラムは、他の端末装置で実行されてもよい。さらに、そのプログラムは、動画再生に限らず、音声や3Dポリゴンデータを利用するものであってよい。
【0020】
本発明の更に別の態様は、コンテンツを提供する方法である。この方法は、クライアントの処理機能を特定する工程と、前記クライアントの処理機能に応じて、前記コンテンツを第1フォーマットまたは前記第1フォーマットとは異なる第2フォーマットのいずれか一方で出力することを指示する工程と、前記第1フォーマットで出力することが指示された場合、前記コンテンツを前記第1フォーマットで出力する工程と、前記第2フォーマットで出力することが指示された場合、前記コンテンツを前記第2フォーマットで出力する工程と、前記第1フォーマットまたは前記第2フォーマットのいずれか一方を前記クライアントに送信する工程とを含む。この方法により、クライアントの処理機能に応じたフォーマットでコンテンツを提供できる。
【0021】
以上の各構成を任意に入れ替えたり、方法と装置の間で表現を一部または全部入れ替え、または追加したり、表現をシステム、コンピュータプログラム、記録媒体等に変更したものもまた、本発明として有効である。
【0022】
【発明の実施の形態】
はじめに、実施の形態で中間フレームの生成に利用する多重解像度特異点フィルタ技術とそれを用いた画像マッチング処理を「前提技術」として詳述する。これらの技術は本出願人がすでに特許第2927350号を得ている技術であり、本発明との組合せに最適である。ただし、実施の形態で採用可能な画像マッチング技術はこれに限られない。図19以降、前提技術を利用した動画フォーマットを出力する構成を備えたコンテンツサーバ、そのフォーマットのデコード機能を備えたクライアント、それらを含むコンテンツ提供システムについて具体的に説明する。
【0023】
[前提技術の実施の形態]
最初に[1]で前提技術の要素技術を詳述し、[2]で処理手順を具体的に説明する。さらに[3]で前提技術に基づき改良を施した点について述べる。
【0024】
[1]要素技術の詳細
[1.1]イントロダクション
特異点フィルタと呼ばれる新たな多重解像度フィルタを導入し、画像間のマッチングを正確に計算する。オブジェクトに関する予備知識は一切不要である。画像間のマッチングの計算は、解像度の階層を進む間、各解像度において計算される。その際、粗いレベルから精細なレベルへと順に解像度の階層を辿っていく。計算に必要なパラメータは、人間の視覚システムに似た動的計算によって完全に自動設定される。画像間の対応点を人手で特定する必要はない。
【0025】
本前提技術は、例えば完全に自動的なモーフィング、物体認識、立体写真測量、ボリュームレンダリング、少ないフレームからの滑らかな動画像の生成などに応用できる。モーフィングに用いる場合、与えられた画像を自動的に変形することができる。ボリュームレンダリングに用いる場合、断面間の中間的な画像を正確に再構築することができる。断面間の距離が遠く、断面の形状が大きく変化する場合でも同様である。
【0026】
[1.2]特異点フィルタの階層
前提技術に係る多重解像度特異点フィルタは、画像の解像度を落としながら、しかも画像に含まれる各特異点の輝度及び位置を保存することができる。ここで画像の幅をN、高さをMとする。以下簡単のため、N=M=2(nは自然数)と仮定する。また、区間[0,N]⊂RをIと記述する。(i,j)における画像の画素をp(i,j)と記述する(i,j∈I)。
【0027】
ここで多重解像度の階層を導入する。階層化された画像群は多重解像度フィルタで生成される。多重解像度フィルタは、もとの画像に対して二次元的な探索を行って特異点を検出し、検出された特異点を抽出してもとの画像よりも解像度の低い別の画像を生成する。ここで第mレベルにおける各画像のサイズは2×2(0≦m≦n)とする。特異点フィルタは次の4種類の新たな階層画像をnから下がる方向で再帰的に構築する。
【0028】
【数1】
Figure 2004064156
ただしここで、
【数2】
Figure 2004064156
とする。以降これら4つの画像を副画像(サブイメージ)と呼ぶ。minx≦t≦x+1、maxx≦t≦x+1をそれぞれα及びβと記述すると、副画像はそれぞれ以下のように記述できる。
【0029】
(m,0)=α(x)α(y)p(m+1,0)
(m,1)=α(x)β(y)p(m+1,1)
(m,2)=β(x)α(y)p(m+1,2
(m,3)=β(x)β(y)p(m+1,3)
すなわち、これらはαとβのテンソル積のようなものと考えられる。副画像はそれぞれ特異点に対応している。これらの式から明らかなように、特異点フィルタはもとの画像について2×2画素で構成されるブロックごとに特異点を検出する。その際、各ブロックのふたつの方向、つまり縦と横について、最大画素値または最小画素値をもつ点を探索する。画素値として、前提技術では輝度を採用するが、画像に関するいろいろな数値を採用することができる。ふたつの方向の両方について最大画素値となる画素は極大点、ふたつの方向の両方について最小画素値となる画素は極小点、ふたつの方向の一方について最大画素値となるとともに、他方について最小画素値となる画素は鞍点として検出される。
【0030】
特異点フィルタは、各ブロックの内部で検出された特異点の画像(ここでは1画素)でそのブロックの画像(ここでは4画素)を代表させることにより、画像の解像度を落とす。特異点の理論的な観点からすれば、α(x)α(y)は極小点を保存し、β(x)β(y)は極大点を保存し、α(x)β(y)及びβ(x)α(y)は鞍点を保存する。
【0031】
はじめに、マッチングをとるべき始点(ソース)画像と終点(デスティネーション)画像に対して別々に特異点フィルタ処理を施し、それぞれ一連の画像群、すなわち始点階層画像と終点階層画像を生成しておく。始点階層画像と終点階層画像は、特異点の種類に対応してそれぞれ4種類ずつ生成される。
【0032】
この後、一連の解像度レベルの中で始点階層画像と終点階層画像のマッチングがとれらていく。まずp(m,0)を用いて極小点のマッチングがとられる。次に、その結果に基づき、p(m,1)を用いて鞍点のマッチングがとられ、p(m,2)を用いて他の鞍点のマッチングがとられる。そして最後にp(m,3)を用いて極大点のマッチングがとられる。
【0033】
図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)によって耳や頬の最も明るい点が明確になる。これらは輝度の極大点だからである。
【0034】
特異点フィルタによれば画像の特徴が抽出できるため、例えばカメラで撮影された画像の特徴と、予め記録しておいたいくつかのオブジェクトの特徴を比較することにより、カメラに映った被写体を識別することができる。
【0035】
[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の順序は次式のように並べ替えることができる。並べ替えが必要な理由は後述する。
【0036】
【数3】
Figure 2004064156
ここでσ(i)∈{0,1,2,3}である。
【0037】
[1.3.1]全単射
始点画像と終点画像の間のマッチングを写像で表現する場合、その写像は両画像間で全単射条件を満たすべきである。両画像に概念上の優劣はなく、互いの画素が全射かつ単射で接続されるべきだからである。しかしながら通常の場合とは異なり、ここで構築すべき写像は全単射のディジタル版である。前提技術では、画素は格子点によって特定される。
【0038】
始点副画像(始点画像について設けられた副画像)から終点副画像(終点画像について設けられた副画像)への写像は、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)と記述する。
【0039】
前提技術で扱う画素(格子点)のようにデータが離散的な場合、全単射の定義は重要である。ここでは以下のように定義する(i,i’,j,j’,k,lは全て整数とする)。まず始めに、始点画像の平面においてRによって表記される各正方形領域、
【0040】
【数4】
Figure 2004064156
を考える(i=0,…,2−1、j=0,…,2−1)。ここでRの各辺(エッジ)の方向を以下のように定める。
【0041】
【数5】
Figure 2004064156
この正方形は写像fによって終点画像平面における四辺形に写像されなければならない。f(m,s)(R)によって示される四辺形、
【0042】
【数6】
Figure 2004064156
は、以下の全単射条件を満たす必要がある。
【0043】
1.四辺形f(m,s)(R)のエッジは互いに交差しない。
【0044】
2.f(m,s)(R)のエッジの方向はRのそれらに等しい(図2の場合、時計回り)。
【0045】
3.緩和条件として収縮写像(リトラクション:retractions)を許す。
【0046】
何らかの緩和条件を設けないかぎり、全単射条件を完全に満たす写像は単位写像しかないためである。ここではf(m,s)(R)のひとつのエッジの長さが0、すなわちf(m,s)(R)は三角形になってもよい。しかし、面積が0となるような図形、すなわち1点または1本の線分になってはならない。図2(R)がもとの四辺形の場合、図2(A)と図2(D)は全単射条件を満たすが、図2(B)、図2(C)、図2(E)は満たさない。
【0047】
実際のインプリメンテーションでは、写像が全射であることを容易に保証すべく、さらに以下の条件を課してもよい。つまり始点画像の境界上の各画素は、終点画像において同じ位置を占める画素に写影されるというものである。すなわち、f(i,j)=(i,j)(ただしi=0,i=2−1,j=0,j=2−1の4本の線上)である。この条件を以下「付加条件」とも呼ぶ。
【0048】
[1.3.2]写像のエネルギー
[1.3.2.1]画素の輝度に関するコスト
写像fのエネルギーを定義する。エネルギーが最小になる写像を探すことが目的である。エネルギーは主に、始点画像の画素の輝度とそれに対応する終点画像の画素の輝度の差で決まる。すなわち、写像f(m,s)の点(i,j)におけるエネルギーC(m,s) (i,j)は次式によって定まる。
【0049】
【数7】
Figure 2004064156
ここで、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)の合計で定義できる。
【0050】
【数8】
Figure 2004064156
[1.3.2.2]滑らかな写像のための画素の位置に関するコスト
滑らかな写像を得るために、写像に関する別のエネルギーDfを導入する。このエネルギーは画素の輝度とは関係なく、p(m,s) (i,j)およびq(m,s) f(i,j)の位置によって決まる(i=0,…,2−1,j=0,…,2−1)。点(i,j)における写像f(m,s)のエネルギーD(m,s) (i,j)は次式で定義される。
【0051】
【数9】
Figure 2004064156
ただし、係数パラメータηは0以上の実数であり、また、
【数10】
Figure 2004064156
【数11】
Figure 2004064156
とする。ここで、
【0052】
【数12】
Figure 2004064156
であり、i’<0およびj’<0に対してf(i’,j’)は0と決める。Eは(i,j)及びf(i,j)の距離で決まる。Eは画素があまりにも離れた画素へ写影されることを防ぐ。ただしEは、後に別のエネルギー関数で置き換える。Eは写像の滑らかさを保証する。Eは、p(i,j)の変位とその隣接点の変位の間の隔たりを表す。以上の考察をもとに、マッチングを評価する別の評価式であるエネルギーDは次式で定まる。
【0053】
【数13】
Figure 2004064156
[1.3.2.3]写像の総エネルギー
写像の総エネルギー、すなわち複数の評価式の統合に係る総合評価式はλC(m,s) +D(m,s) で定義される。ここで係数パラメータλは0以上の実数である。目的は総合評価式が極値をとる状態を検出すること、すなわち次式で示す最小エネルギーを与える写像を見いだすことである。
【0054】
【数14】
Figure 2004064156
λ=0及びη=0の場合、写像は単位写像になることに注意すべきである(すなわち、全てのi=0,…,2−1及びj=0,…,2−1に対してf(m,s)(i,j)=(i,j)となる)。後述のごとく、本前提技術では最初にλ=0及びη=0の場合を評価するため、写像を単位写像から徐々に変形していくことができる。仮に総合評価式のλの位置を変えてC(m,s) +λD(m,s) と定義したとすれば、λ=0及びη=0の場合に総合評価式がC(m,s) だけになり、本来何等関連のない画素どうしが単に輝度が近いというだけで対応づけられ、写像が無意味なものになる。そうした無意味な写像をもとに写像を変形していってもまったく意味をなさない。このため、単位写像が評価の開始時点で最良の写像として選択されるよう係数パラメータの与えかたが配慮されている。
【0055】
オプティカルフローもこの前提技術同様、画素の輝度の差と滑らかさを考慮する。しかし、オプティカルフローは画像の変換に用いることはできない。オブジェクトの局所的な動きしか考慮しないためである。前提技術に係る特異点フィルタを用いることによって大域的な対応関係を検出することができる。
【0056】
[1.3.3]多重解像度の導入による写像の決定
最小エネルギーを与え、全単射条件を満足する写像fminを多重解像度の階層を用いて求める。各解像度レベルにおいて始点副画像及び終点副画像間の写像を計算する。解像度の階層の最上位(最も粗いレベル)からスタートし、各解像度レベルの写像を、他のレベルの写像を考慮に入れながら決定する。各レベルにおける写像の候補の数は、より高い、つまりより粗いレベルの写像を用いることによって制限される。より具体的には、あるレベルにおける写像の決定に際し、それよりひとつ粗いレベルにおいて求められた写像が一種の拘束条件として課される。
【0057】
まず、
【数15】
Figure 2004064156
が成り立つとき、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)は次式で定義される。
【0058】
【数16】
Figure 2004064156
(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)は次の四辺形の内部になければならないという条件を課し、全単射条件を満たす写像のうち現実性の高いものを絞り込む。
【0059】
【数17】
Figure 2004064156
ただしここで、
【数18】
Figure 2004064156
である。こうして定めた四辺形を、以下p(m,s) (i,j)の相続(inherited)四辺形と呼ぶことにする。相続四辺形の内部において、エネルギーを最小にする画素を求める。
【0060】
図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レベルの写像への橋渡しがなされる。
【0061】
先に定義したエネルギーEは、第mレベルにおける副写像f(m,0)を計算するために、次式に置き換える。
【0062】
【数19】
Figure 2004064156
また、副写像f(m,s)を計算するためには次式を用いる。
【0063】
【数20】
Figure 2004064156
こうしてすべての副写像のエネルギーを低い値に保つ写像が得られる。式20により、異なる特異点に対応する副写像が、副写像どうしの類似度が高くなるように同一レベル内で関連づけられる。式19は、f(m,s)(i,j)と、第m−1レベルの画素の一部と考えた場合の(i,j)が射影されるべき点の位置との距離を示している。
【0064】
仮に、相続四辺形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条件を外す。
【0065】
多重解像度を用いる近似法は、写像が画像の細部に影響されることを回避しつつ、画像間の大域的な対応関係を決定するために必須である。多重解像度による近似法を用いなければ、距離の遠い画素間の対応関係を見いだすことは不可能である。その場合、画像のサイズはきわめて小さなものに限定しなければならず、変化の小さな画像しか扱うことができない。さらに、通常写像に滑らかさを要求するため、そうした画素間の対応関係を見つけにくくしている。距離のある画素から画素への写像のエネルギーは高いためである。多重解像度を用いた近似法によれば、そうした画素間の適切な対応関係を見いだすことができる。それらの距離は、解像度の階層の上位レベル(粗いレベル)において小さいためである。
【0066】
[1.4]最適なパレメータ値の自動決定
既存のマッチング技術の主な欠点のひとつに、パレメータ調整の困難さがある。大抵の場合、パラメータの調整は人手作業によって行われ、最適な値を選択することはきわめて難しい。前提技術に係る方法によれば、最適なパラメータ値を完全に自動決定することができる。
【0067】
前提技術に係るシステムはふたつのパレメータ、λ及びηを含む。端的にいえば、λは画素の輝度の差の重みであり、ηは写像の剛性を示している。これらのパラメータの値は初期値が0であり、まずη=0に固定してλを0から徐々に増加させる。λの値を大きくしながら、しかも総合評価式(式14)の値を最小にする場合、各副写像に関するC(m,s) の値は一般に小さくなっていく。このことは基本的にふたつの画像がよりマッチしなければならないことを意味する。しかし、λが最適値を超えると以下の現象が発生する。
【0068】
1.本来対応すべきではない画素どうしが、単に輝度が近いというだけで誤って対応づけられる。
【0069】
2.その結果、画素どうしの対応関係がおかしくなり、写像がくずれはじめる。
【0070】
3.その結果、式14においてD(m,s) が急激に増加しようとする。
【0071】
4.その結果、式14の値が急激に増加しようとするため、D(m,s) の急激な増加を抑制するようf(m,s)が変化し、その結果C(m,s) が増加する。
【0072】
したがって、λを増加させながら式14が最小値をとるという状態を維持しつつC(m,s) が減少から増加に転じる閾値を検出し、そのλをη=0における最適値とする。つぎにηを少しづつ増やしてC(m,s) の挙動を検査し、後述の方法でηを自動決定する。そのηに対応してλも決まる。
【0073】
この方法は、人間の視覚システムの焦点機構の動作に似ている。人間の視覚システムでは、一方の目を動かしながら左右両目の画像のマッチングがとられる。オブジェクトがはっきりと認識できるとき、その目が固定される。
【0074】
[1.4.1]λの動的決定
λは0から所定の刻み幅で増加されていき、λの値が変わる度に副写像が評価される。式14のごとく、総エネルギーはλC(m,s) +D(m,s) によって定義される。式9のD(m,s) は滑らかさを表すもので、理論的には単位写像の場合に最小になり、写像が歪むほどEもEも増加していく。Eは整数であるから、D(m,s) の最小刻み幅は1である。このため、現在のλC(m,s) (i,j)の変化(減少量)が1以上でなければ、写像を変化させることによって総エネルギーを減らすことはできない。なぜなら、写像の変化に伴ってD(m,s) は1以上増加するため、λC(m,s) (i,j)が1以上減少しない限り総エネルギーは減らないためである。
【0075】
この条件のもと、λの増加に伴い、正常な場合にC(m,s) (i,j)が減少することを示す。C(m,s) (i,j)のヒストグラムをh(l)と記述する。h(l)はエネルギーC(m,s) (i,j)がlである画素の数である。λl≧1が成り立つために、例えばl=1/λの場合を考える。λがλからλまで微小量変化するとき、
【0076】
【数21】
Figure 2004064156
で示されるA個の画素が、
【数22】
Figure 2004064156
のエネルギーを持つより安定的な状態に変化する。ここでは仮に、これらの画素のエネルギーがすべてゼロになると近似している。この式はC(m,s) の値が、
【0077】
【数23】
Figure 2004064156
だけ変化することを示し、その結果、
【数24】
Figure 2004064156
が成立する。h(l)>0であるから、通常C(m,s) は減少する。しかし、λが最適値を越えようとするとき、上述の現象、つまりC(m,s) の増加が発生する。この現象を検出することにより、λの最適値を決定する。
【0078】
なお、H(h>0)及びkを定数とするとき、
【数25】
Figure 2004064156
と仮定すれば、
【数26】
Figure 2004064156
が成り立つ。このときk≠−3であれば、
【0079】
【数27】
Figure 2004064156
となる。これがC(m,s) の一般式である(Cは定数)。
【0080】
λの最適値を検出する際、さらに安全を見て、全単射条件を破る画素の数を検査してもよい。ここで各画素の写像を決定する際、全単射条件を破る確率をpと仮定する。この場合、
【0081】
【数28】
Figure 2004064156
が成立しているため、全単射条件を破る画素の数は次式の率で増加する。
【0082】
【数29】
Figure 2004064156
従って、
【数30】
Figure 2004064156
は定数である。仮にh(l)=Hlを仮定するとき、例えば、
【0083】
【数31】
Figure 2004064156
は定数になる。しかしλが最適値を越えると、上の値は急速に増加する。この現象を検出し、Bλ3/2+k/2/2の値が異常値B0thresを越えるかどうかを検査し、λの最適値を決定することができる。同様に、Bλ3/2+k/2/2の値が異常値B1thresを越えるかどうかを検査することにより、全単射の第3の条件を破る画素の増加率Bを確認する。ファクター2を導入する理由は後述する。このシステムはこれら2つの閾値に敏感ではない。これらの閾値は、エネルギーC(m,s) の観察では検出し損なった写像の過度の歪みを検出するために用いることができる。
【0084】
なお実験では、副写像f(m,s)を計算する際、もしλが0.1を越えたらf(m,s)の計算は止めてf(m,s+1)の計算に移行した。λ>0.1のとき、画素の輝度255レベル中のわずか「3」の違いが副写像の計算に影響したためであり、λ>0.1のとき正しい結果を得ることは困難だったためである。
【0085】
[1.4.2]ヒストグラムh(l)
(m,s) の検査はヒストグラムh(l)に依存しない。全単射及びその第3の条件の検査の際、h(l)に影響を受けうる。実際に(λ,C(m,s) )をプロットすると、kは通常1付近にある。実験ではk=1を用い、BλとBλを検査した。仮にkの本当の値が1未満であれば、BλとBλは定数にならず、ファクターλ(1−k)/2に従って徐々に増加する。h(l)が定数であれば、例えばファクターはλ1/2である。しかし、こうした差は閾値B0thresを正しく設定することによって吸収することができる。
【0086】
ここで次式のごとく始点画像を中心が(x,y)、半径rの円形のオブジェクトであると仮定する。
【0087】
【数32】
Figure 2004064156
一方、終点画像は、次式のごとく中心(x,y)、半径がrのオブジェクトであるとする。
【0088】
【数33】
Figure 2004064156
ここでc(x)はc(x)=xの形であるとする。中心(x,y)及び(x,y)が十分遠い場合、ヒストグラムh(l)は次式の形となる。
【0089】
【数34】
Figure 2004064156
k=1のとき、画像は背景に埋め込まれた鮮明な境界線を持つオブジェクトを示す。このオブジェクトは中心が暗く、周囲にいくに従って明るくなる。k=−1のとき、画像は曖昧な境界線を持つオブジェクトを表す。このオブジェクトは中心が最も明るく、周囲にいくに従って暗くなる。一般のオブジェクトはこれらふたつのタイプのオブジェクトの中間にあると考えてもさして一般性を失わない。したがって、kは−1≦k≦1として大抵の場合をカバーでき、式27が一般に減少関数であることが保障される。
【0090】
なお、式34からわかるように、rは画像の解像度に影響されること、すなわちrは2mに比例することに注意すべきである。このために[1.4.1]においてファクター2mを導入した。
【0091】
[1.4.3]ηの動的決定
パラメータηも同様の方法で自動決定できる。はじめにη=0とし、最も細かい解像度における最終的な写像f(n)及びエネルギーC(n) を計算する。つづいて、ηをある値Δηだけ増加させ、再び最も細かい解像度における最終写像f(n)及びエネルギーC(n) を計算し直す。この過程を最適値が求まるまで続ける。ηは写像の剛性を示す。次式の重みだからである。
【0092】
【数35】
Figure 2004064156
ηが0のとき、D(n) は直前の副写像と無関係に決定され、現在の副写像は弾性的に変形され、過度に歪むことになる。一方、ηが非常に大きな値のとき、D(n) は直前の副写像によってほぼ完全に決まる。このとき副写像は非常に剛性が高く、画素は同じ場所に射影される。その結果、写像は単位写像になる。ηの値が0から次第に増えるとき、後述のごとくC(n) は徐々に減少する。しかしηの値が最適値を越えると、図4に示すとおり、エネルギーは増加し始める。同図のX軸はη、Y軸はCである。
【0093】
この方法でC(n) を最小にする最適なηの値を得ることができる。しかし、λの場合に比べていろいろな要素が計算に影響する結果、C(n) は小さく揺らぎながら変化する。λの場合は、入力が微小量変化するたびに副写像を1回計算しなおすだけだが、ηの場合はすべての副写像が計算しなおされるためである。このため、得られたC(n) の値が最小であるかどうかを即座に判断することはできない。最小値の候補が見つかれば、さらに細かい区間を設定することによって真の最小値を探す必要がある。
【0094】
[1.5]スーパーサンプリング
画素間の対応関係を決定する際、自由度を増やすために、f(m,s)の値域をR×Rに拡張することができる(Rは実数の集合)。この場合、終点画像の画素の輝度が補間され、非整数点、
【0095】
【数36】
Figure 2004064156
における輝度を持つf(m,s)が提供される。つまりスーパーサンプリングが行われる。実験では、f(m,s)は整数及び半整数値をとることが許され、
【0096】
【数37】
Figure 2004064156
は、
【数38】
Figure 2004064156
によって与えられた。
【0097】
[1.6]各画像の画素の輝度の正規化
始点画像と終点画像がきわめて異なるオブジェクトを含んでいるとき、写像の計算に元の画素の輝度がそのままでは利用しにくい。輝度の差が大きいために輝度に関するエネルギーC(m,s) が大きくなりすぎ、正しい評価がしずらいためである。
【0098】
例えば、人の顔と猫の顔のマッチングをとる場合を考える。猫の顔は毛で覆われており、非常に明るい画素と非常に暗い画素が混じっている。この場合、ふたつの顔の間の副写像を計算するために、まず副画像を正規化する。すなわち、最も暗い画素の輝度を0、最も明るいそれを255に設定し、他の画素の輝度は線形補間によって求めておく。
【0099】
[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)が決まる。
【0100】
ある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)を以下の方法で決めていく。
【0101】
まず(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であるとしてふたつの方向を連続的に計算した。
【0102】
実際のインプリメンテーションでは、全単射条件を破る候補に対してペナルティを与えることにより、候補(k,l)の中からできる限り全単射条件を満たすf(m,s)(i,j)(m=0,…,n)の値を選んだ。第3の条件を破る候補のエネルギーD(k、l)にはφを掛け、一方、第1または第2の条件を破る候補にはψを掛ける。今回はφ=2、ψ=100000を用いた。
【0103】
前述の全単射条件のチェックのために、実際の手続として(k,l)=f(m,s)(i,j)を決定する際に以下のテストを行った。すなわちf(m,s)(i,j)の相続四辺形に含まれる各格子点(k,l)に対し、次式の外積のz成分が0以上になるかどうかを確かめる。
【0104】
【数39】
Figure 2004064156
ただしここで、
【数40】
Figure 2004064156
【数41】
Figure 2004064156
である(ここでベクトルは三次元ベクトルとし、z軸は直交右手座標系において定義される)。もしWが負であれば、その候補についてはD(m,s) (k,l)にψを掛けることによってペナルティを与え、できるかぎり選択しないようにする。
【0105】
図5(a)、図5(b)はこの条件を検査する理由を示している。図5(a)はペナルティのない候補、図5(b)はペナルティがある候補をそれぞれ表す。隣接画素(i,j+1)に対する写像f(m,s)(i,j+1)を決定する際、Wのz成分が負であれば始点画像平面上において全単射条件を満足する画素は存在しない。なぜなら、q(m,s) (k,l)は隣接する四辺形の境界線を越えるためである。
【0106】
[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に相当する処理を行った。その理由は後述する。
【0107】
[1.8]補間計算
始点画像と終点画像の間の写像が決定された後、対応しあう画素の輝度が補間される。実験では、トライリニア補間を用いた。始点画像平面における正方形p(i,j)(i+1,j)(i,j+1)(i+1,j+1)が終点画像平面上の四辺形qf(i,j)f(i+1,j)f(i,j+1)f(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)を次式で求める。
【0108】
【数42】
Figure 2004064156
つづいてr(x,y,t)における画素の輝度が次の式を用いて決定される。
【0109】
【数43】
Figure 2004064156
ここでdx及びdyはパラメータであり、0から1まで変化する。
【0110】
[1.9]拘束条件を課したときの写像
いままでは拘束条件がいっさい存在しない場合の写像の決定を述べた。しかし、始点画像と終点画像の特定の画素間に予め対応関係が規定されているとき、これを拘束条件としたうえで写像を決定することができる。
【0111】
基本的な考えは、まず始点画像の特定の画素を終点画像の特定の画素に移す大まかな写像によって始点画像を大まかに変形し、しかる後、写像fを正確に計算する。
【0112】
まず始めに、始点画像の特定の画素を終点画像の特定の画素に射影し、始点画像の他の画素を適当な位置に射影する大まかな写像を決める。すなわち、特定の画素に近い画素は、その特定の画素が射影される場所の近くに射影されるような写像である。ここで第mレベルの大まかな写像をF(m)と記述する。
【0113】
大まかな写像Fは以下の要領で決める。まず、いくつかの画素について写像を特定する。始点画像についてn個の画素、
【0114】
【数44】
Figure 2004064156
を特定するとき、以下の値を決める。
【0115】
【数45】
Figure 2004064156
始点画像の他の画素の変位量は、p(ih,jh)(h=0,…,n−1)の変位に重み付けをして求められる平均である。すなわち画素p(i,j)は、終点画像の以下の画素に射影される。
【0116】
【数46】
Figure 2004064156
ただしここで、
【数47】
Figure 2004064156
【数48】
Figure 2004064156
とする。
【0117】
つづいて、F(m)に近い候補写像fがより少ないエネルギーを持つように、その写像fのエネルギーD(m,s) (i,j)を変更する。正確には、D(m,s) (i,j)は、
【0118】
【数49】
Figure 2004064156
である。ただし、
【0119】
【数50】
Figure 2004064156
であり、κ,ρ≧0とする。最後に、前述の写像の自動計算プロセスにより、fを完全に決定する。
【0120】
ここで、f(m,s)(i,j)がF(m)(i,j)に十分近いとき、つまりそれらの距離が、
【数51】
Figure 2004064156
以内であるとき、E (m,s) (i,j)が0になることに注意すべきである。そのように定義した理由は、各f(m,s)(i,j)がF(m)(i,j)に十分近い限り、終点画像において適切な位置に落ち着くよう、その値を自動的に決めたいためである。この理由により、正確な対応関係を詳細に特定する必要がなく、始点画像は終点画像にマッチするように自動的にマッピングされる。
【0121】
[2]具体的な処理手順
[1]の各要素技術による処理の流れを説明する。
【0122】
図6は前提技術の全体手順を示すフローチャートである。同図のごとく、まず多重解像度特異点フィルタを用いた処理を行い(S1)、つづいて始点画像と終点画像のマッチングをとる(S2)。ただし、S2は必須ではなく、S1で得られた画像の特徴をもとに画像認識などの処理を行ってもよい。
【0123】
図7は図6のS1の詳細を示すフローチャートである。ここではS2で始点画像と終点画像のマッチングをとることを前提としている。そのため、まず特異点フィルタによって始点画像の階層化を行い(S10)、一連の始点階層画像を得る。つづいて同様の方法で終点画像の階層化を行い(S11)、一連の終点階層画像を得る。ただし、S10とS11の順序は任意であるし、始点階層画像と終点階層画像を並行して生成していくこともできる。
【0124】
図8は図7のS10の詳細を示すフローチャートである。もとの始点画像のサイズは2×2とする。始点階層画像は解像度が細かいほうから順に作られるため、処理の対象となる解像度レベルを示すパラメータ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種類の副画像が生成される。
【0125】
図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になる。
【0126】
つづいてmをデクリメントし(図8のS103)、mが負になっていないことを確認し(S104)、S101に戻ってつぎに解像度の粗い副画像を生成していく。この繰り返し処理の結果、m=0、すなわち第0レベルの副画像が生成された時点でS10が終了する。第0レベルの副画像のサイズは1×1である。
【0127】
図10はS10によって生成された始点階層画像をn=3の場合について例示している。最初の始点画像のみが4つの系列に共通であり、以降特異点の種類に応じてそれぞれ独立に副画像が生成されていく。なお、図8の処理は図7のS11にも共通であり、同様の手順を経て終点階層画像も生成される。以上で図6のS1による処理が完了する。
【0128】
前提技術では、図6のS2に進むためにマッチング評価の準備をする。図11はその手順を示している。同図のごとく、まず複数の評価式が設定される(S30)。[1.3.2.1]で導入した画素に関するエネルギーC(m,s) と[1.3.2.2]で導入した写像の滑らかさに関するエネルギーD(m,s) がそれである。つぎに、これらの評価式を統合して総合評価式を立てる(S31)。[1.3.2.3]で導入した総エネルギーλC(m,s) +D(m,s) がそれであり、[1.3.2.2]で導入したηを用いれば、
【0129】
【数52】
Figure 2004064156
となる。ただし、総和はi、jについてそれぞれ0、1…、2−1で計算する。以上でマッチング評価の準備が整う。
【0130】
図12は図6のS2の詳細を示すフローチャートである。[1]で述べたごとく、始点階層画像と終点階層画像のマッチングは互いに同じ解像度レベルの画像どうしでとられる。画像間の大域的なマッチングを良好にとるために、解像度が粗いレベルから順にマッチングを計算する。特異点フィルタを用いて始点階層画像および終点階層画像を生成しているため、特異点の位置や輝度は解像度の粗いレベルでも明確に保存されており、大域的なマッチングの結果は従来に比べて非常に優れたものになる。
【0131】
図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で後述する。
【0132】
一方、同一レベル内における水平的参照も行われる。[1.3.3]の式20のごとく、f(m,3)はf(m,2)に、f(m,2)はf(m,1)に、f(m,1)はf(m,0)に、それぞれ類似するように決める。その理由は、特異点の種類が違っても、それらがもともと同じ始点画像と終点画像に含まれている以上、副写像がまったく異なるという状況は不自然だからである。式20からわかるように、副写像どうしが近いほどエネルギーは小さくなり、マッチングが良好とみなされる。
【0133】
なお、最初に決めるべき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]で述べたとおりである。
【0134】
図13は第0レベルにおいて副写像を決定する様子を示す図である。第0レベルでは各副画像がただひとつの画素で構成されるため、4つの副写像f(0,s)はすべて自動的に単位写像に決まる。図14は第1レベルにおいて副写像を決定する様子を示す図である。第1レベルでは副画像がそれぞれ4画素で構成される。同図ではこれら4画素が実線で示されている。いま、p(1,s)の点xの対応点をq(1,s)の中で探すとき、以下の手順を踏む。
【0135】
1.第1レベルの解像度で点xの左上点a、右上点b、左下点c、右下点dを求める。
【0136】
2.点a〜dがひとつ粗いレベル、つまり第0レベルにおいて属する画素を探す。図14の場合、点a〜dはそれぞれ画素A〜Dに属する。ただし、画素A〜Cは本来存在しない仮想的な画素である。
【0137】
3.第0レベルですでに求まっている画素A〜Dの対応点A’〜D’をq(1,s)の中にプロットする。画素A’〜C’は仮想的な画素であり、それぞれ画素A〜Cと同じ位置にあるものとする。
【0138】
4.画素Aの中の点aの対応点a’が画素A’の中にあるとみなし、点a’をプロットする。このとき、点aが画素Aの中で占める位置(この場合、右下)と、点a’が画素A’の中で占める位置が同じであると仮定する。
【0139】
5.4と同様の方法で対応点b’〜d’をプロットし、点a’〜d’で相続四辺形を作る。
【0140】
6.相続四辺形の中でエネルギーが最小になるよう、点xの対応点x’を探す。対応点x’の候補として、例えば画素の中心が相続四辺形に含まれるものに限定してもよい。図14の場合、4つの画素がすべて候補になる。
【0141】
以上がある点xの対応点の決定手順である。同様の処理を他のすべての点について行い、副写像を決める。第2レベル以上のレベルでは、次第に相続四辺形の形が崩れていくと考えられるため、図3に示すように画素A’〜D’の間隔が空いていく状況が発生する。
【0142】
こうして、ある第mレベルの4つの副写像が決まれば、mをインクリメントし(図12のS22)、mがnを超えていないことを確かめて(S23)、S21に戻る。以下、S21に戻るたびに次第に細かい解像度のレベルの副写像を求め、最後にS21に戻ったときに第nレベルの写像f(n)を決める。この写像はη=0に関して定まったものであるから、f(n)(η=0)と書く。
【0143】
つぎに異なるηに関する写像も求めるべく、ηをΔηだけシフトし、mをゼロクリアする(S24)。新たなηが所定の探索打切り値ηmaxを超えていないことを確認し(S25)、S21に戻り、今回のηに関して写像f(n)(η=Δη)を求める。この処理を繰り返し、S21でf(n)(η=iΔη)(i=0,1,…)を求めていく。ηがηmaxを超えたときS26に進み、後述の方法で最適なη=ηoptを決定し、f(n)(η=ηopt)を最終的に写像f(n)とする。
【0144】
図15は図12のS21の詳細を示すフローチャートである。このフローチャートにより、ある定まったηについて、第mレベルにおける副写像が決まる。副写像を決める際、前提技術では副写像ごとに最適なλを独立して決める。
【0145】
同図のごとく、まず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)。
【0146】
つぎに、同一レベルにおける他の副写像を求めるべく、λをゼロクリアし、sをインクリメントする(S215)。sが4を超えていないことを確認し(S216)、S211に戻る。s=4になれば上述のごとくf(m,3)を利用してf(m,0)を更新し、そのレベルにおける副写像の決定を終了する。
【0147】
図16は、あるmとsについてλを変えながら求められたf(m,s)(λ=iΔλ)(i=0,1,…)に対応するエネルギーC(m,s) の挙動を示す図である。[1.4]で述べたとおり、λが増加すると通常C(m,s) は減少する。しかし、λが最適値を超えるとC(m,s) は増加に転じる。そこで本前提技術ではC(m,s) が極小値をとるときのλをλoptと決める。同図のようにλ>λoptの範囲で再度C(m,s) が小さくなっていっても、その時点ではすでに写像がくずれていて意味をなさないため、最初の極小点に注目すればよい。λoptは副写像ごとに独立して決めていき、最後にf(n)についてもひとつ定まる。
【0148】
一方、図17は、ηを変えながら求められたf(n)(η=iΔη)(i=0,1,…)に対応するエネルギーC(n) の挙動を示す図である。ここでもηが増加すると通常C(n) は減少するが、ηが最適値を超えるとC(n) は増加に転じる。そこでC(n) が極小値をとるときのηをηoptと決める。図17は図4の横軸のゼロ付近を拡大した図と考えてよい。ηoptが決まればf(n)を最終決定することができる。
【0149】
以上、本前提技術によれば種々のメリットが得られる。まずエッジを検出する必要がないため、エッジ検出タイプの従来技術の課題を解消できる。また、画像に含まれるオブジェクトに対する先験的な知識も不要であり、対応点の自動検出が実現する。特異点フィルタによれば、解像度の粗いレベルでも特異点の輝度や位置を維持することができ、オブジェクト認識、特徴抽出、画像マッチングに極めて有利である。その結果、人手作業を大幅に軽減する画像処理システムの構築が可能となる。
【0150】
なお、本前提技術について次のような変形技術も考えられる。
【0151】
(1)前提技術では始点階層画像と終点階層画像の間でマッチングをとる際にパラメータの自動決定を行ったが、この方法は階層画像間ではなく、通常の2枚の画像間のマッチングをとる場合全般に利用できる。
【0152】
たとえば2枚の画像間で、画素の輝度の差に関するエネルギーEと画素の位置的なずれに関するエネルギーEのふたつを評価式とし、これらの線形和Etot=αE+Eを総合評価式とする。この総合評価式の極値付近に注目してαを自動決定する。つまり、いろいろなαについてEtotが最小になるような写像を求める。それらの写像のうち、αに関してEが極小値をとるときのαを最適パラメータと決める。そのパラメータに対応する写像を最終的に両画像間の最適マッチングとみなす。
【0153】
これ以外にも評価式の設定にはいろいろな方法があり、例えば1/Eと1/Eのように、評価結果が良好なほど大きな値をとるものを採用してもよい。総合評価式も必ずしも線形和である必要はなく、n乗和(n=2、1/2、−1、−2など)、多項式、任意の関数などを適宜選択すればよい。
【0154】
パラメータも、αのみ、前提技術のごとくηとλのふたつの場合、それ以上の場合など、いずれでもよい。パラメータが3以上の場合はひとつずつ変化させて決めていく。
【0155】
(2)本前提技術では、総合評価式の値が最小になるよう写像を決めた後、総合評価式を構成するひとつの評価式であるC(m,s) が極小になる点を検出してパラメータを決定した。しかし、こうした二段回処理の代わりに、状況によっては単に総合評価式の最小値が最小になるようにパラメータを決めても効果的である。その場合、例えばαE+βEを総合評価式とし、α+β=1なる拘束条件を設けて各評価式を平等に扱うなどの措置を講じてもよい。パラメータの自動決定の本質は、エネルギーが最小になるようにパラメータを決めていく点にあるからである。
【0156】
(3)前提技術では各解像度レベルで4種類の特異点に関する4種類の副画像を生成した。しかし、当然4種類のうち1、2、3種類を選択的に用いてもよい。例えば、画像中に明るい点がひとつだけ存在する状態であれば、極大点に関するf(m,3)だけで階層画像を生成しても相応の効果が得られるはずである。その場合、同一レベルで異なる副写像は不要になるため、sに関する計算量が減る効果がある。
【0157】
(4)本前提技術では特異点フィルタによってレベルがひとつ進むと画素が1/4になった。例えば3×3で1ブロックとし、その中で特異点を探す構成も可能であり、その場合、レベルがひとつ進むと画素は1/9になる。
【0158】
(5)始点画像と終点画像がカラーの場合、それらをまず白黒画像に変換し、写像を計算する。その結果求められた写像を用いて始点のカラー画像を変換する。それ以外の方法として、RGBの各成分について副写像を計算してもよい。
【0159】
[3]前提技術の改良点
以上の前提技術を基本とし、マッチング精度を向上させるためのいくつかの改良がなされている。ここではその改良点を述べる。
【0160】
[3.1]色情報を考慮に入れた特異点フィルタおよび副画像
画像の色情報を有効に用いるために、特異点フィルタを以下のように変更した。まず色空間としては、人間の直感に最も合致するといわれているHISを用い、色を輝度に変換する式には、人間の目の感度に最も近いといわれているものを選んだ。
【0161】
【数53】
Figure 2004064156
ここで画素aにおけるY(輝度)をY(a) 、S(彩度)をS(a)として、次のような記号を定義する。
【0162】
【数54】
Figure 2004064156
上の定義を用いて以下のような5つのフィルタを用意する。
【0163】
【数55】
Figure 2004064156
このうち上から4つのフィルタは改良前の前提技術におけるフィルタとほぼ同じで、輝度の特異点を色情報も残しながら保存する。最後のフィルタは色の彩度の特異点をこちらも色情報を残しながら保存する。
【0164】
これらのフィルタによって、各レベルにつき5種類の副画像(サブイメージ)が生成される。なお、最も高いレベルの副画像は元画像に一致する。
【0165】
【数56】
Figure 2004064156
[3.2]エッジ画像およびその副画像
輝度微分(エッジ)の情報をマッチングに利用するため、一次微分エッジ検出フィルタを用いる。このフィルタはあるオペレータHとの畳み込み積分で実現できる。
【0166】
【数57】
Figure 2004064156
ここでHは演算スピードなども考慮し、以下のようなオペレータを用いた。
【0167】
【数58】
Figure 2004064156
次にこの画像を多重解像度化する。フィルタにより0を中心とした輝度をもつ画像が生成されるため、次のような平均値画像が副画像としては最も適切である。
【0168】
【数59】
Figure 2004064156
式59の画像は後述するForward Stage、すなわち初回副写像導出ステージの計算の際、エネルギー関数に用いられる。
【0169】
エッジの大きさ、すなわち絶対値も計算に必要である。
【0170】
【数60】
Figure 2004064156
この値は常に正であるため、多重解像度化には最大値フィルタを用いる。
【0171】
【数61】
Figure 2004064156
式61の画像は後述するForward Stageの計算の際、計算する順序を決定するのに用いられる。
【0172】
[3.3]計算処理手順
計算は最も粗い解像度の副画像から順に行う。副画像は5つあるため、各レベルの解像度において計算は複数回行われる。これをターンと呼び、最大計算回数をtで表すことにする。各ターンは前記Forward Stageと、副写像再計算ステージであるRefinement Stageという二つのエネルギー最小化計算から構成される。図18は第mレベルにおける副写像を決める計算のうち改良点に係るフローチャートである。
【0173】
同図のごとく、sをゼロクリアする(S40)。つぎにForward Stage(S41)において始点画像pから終点画像qへの写像f m,s をエネルギー最小化によって求める。ここで最小化するエネルギーは、対応する画素値によるエネルギーCと、写像の滑らかさによるエネルギーDの線形和である。
【0174】
エネルギーCは、輝度の差によるエネルギーC(前記改良前の前提技術におけるエネルギーCと等価)と、色相、彩度によるエネルギーC、輝度微分(エッジ)の差によるエネルギーCで構成され、それぞれ次のように表される。
【0175】
【数62】
Figure 2004064156
エネルギーDは前記改良前の前提技術と同じものを用いる。ただし前記改良前の前提技術において、写像の滑らかさを保証するエネルギーEを導出する際、隣接する画素のみを考慮していたが、周囲の何画素を考慮するかをパラメータdで指定できるように改良した。
【0176】
【数63】
Figure 2004064156
次のRefinement Stageに備えて、このステージでは終点画像qから始点画像pへの写像g(m,s)も同様に計算する。
【0177】
Refinement Stage(S42)ではForward Stageにおいて求めた双方向の写像f(m,s)およびg(m,s)を基に、より妥当な写像f’(m,s)を求める。ここでは新たに定義されるエネルギーMについてエネルギー最小化計算を行う。エネルギーMは終点画像から始点画像への写像gとの整合度Mと、もとの写像との差Mより構成される。
【0178】
【数64】
Figure 2004064156
対称性を損なわないように、終点画像qから始点画像pへの写像g’(m,s)も同様の方法で求めておく。
【0179】
その後、sをインクリメントし(S43)、sがtを超えていないことを確認し(S44)、次のターンのForward Stage(S41)に進む。その際前記Eを次のように置き換えてエネルギー最小化計算を行う。
【0180】
【数65】
Figure 2004064156
[3.4]写像の計算順序
写像の滑らかさを表すエネルギーEを計算する際、周囲の点の写像を用いるため、それらの点がすでに計算されているかどうかがエネルギーに影響を与える。すなわち、どの点から順番に計算するかによって、全体の写像の精度が大きく変化する。そこでエッジの絶対値画像を用いる。エッジの部分は情報量を多く含むため、エッジの絶対値が大きいところから先に写像計算を行う。このことによって、特に二値画像のような画像に対して非常に精度の高い写像を求めることができるようになった。
【0181】
[コンテンツの提供に係る実施の形態]
前提技術を利用することで、第1のキーフレームから第2のキーフレームに遷移する過程における、任意の時間タイミングで中間フレームを生成できる。したがって、前提技術を動画再生手段として利用できる。また、中間フレームのデータを保持する必要がないので、優れた動画圧縮手段としても利用できる。現実に実験ではMPEG(商標)を超える画質と圧縮率の両立が確認されはじめている。以下、前提技術を利用して動画の再生をするクライアント、およびそのクライアントに動画コンテンツを提供する装置について説明する。
【0182】
図19は、コンテンツ提供システム10の構成図である。コンテンツサーバ100は、コンテンツを提供する装置であり、コンテンツを要求したクライアントの機能に応じて適切なフォーマットのコンテンツを提供する。コンテンツは、例えば、動画、静止画、音声、文字列、3Dポリゴンデータなど任意のデータであってよいが本実施の形態では動画を例に説明する。動画データには、複数のフォーマットがあり、再生にはフォーマットに対応するデコーダが必要になる。本図で、第1デコーダ20は第1フォーマットに対応するデコーダであり、第2デコーダ22は第2フォーマットに対応するデコーダである。
【0183】
第1携帯電話機16aは第1デコーダ20を有し、第2携帯電話機16bは第2デコーダ22を有し、第3携帯電話機16cは第1デコーダ20および第2デコーダ22を有していない。これらの携帯電話機はそれぞれ、動画などのコンテンツを表示するための第1表示部24a、第2表示部24bならびに第3表示部24cを有する。パーソナルコンピュータ18は第1デコーダ20および第2デコーダ22と、動画などのコンテンツを表示するためのモニタ26を有する。これらのクライアントがネットワーク12を介してコンテンツサーバ100に接続している。ネットワーク12には様々な世代のクライアントが混在するため、それぞれのクライアントが有するデコーダの種類は統一されていない。
【0184】
コンテンツサーバ100は、コンテンツを要求したクライアントが有するデコーダの種類に応じて、対応するフォーマットのコンテンツを提供する。例えば、コンテンツサーバ100は、第1携帯電話機16aに第1フォーマットの動画データを送信し、第2携帯電話機16bに第2フォーマットの動画データを送信し、第3携帯電話機16cには動画データに基づいて生成した静止画を送信する。また、第1デコーダ20および第2デコーダ22を有するパーソナルコンピュータ18に対しては、予め優先順位が高いものとして設定されたフォーマットの動画データを送信する。
【0185】
図20は、コンテンツサーバ100の内部構成図である。受付部102は、クライアントからコンテンツの送信要求を受け付ける。調査部104は、コンテンツを要求したクライアントが有する例えば、デコーダ、モニタサイズ、表示可能色数などの表示機能を調査する。その調査結果は、指示部106に出力される。指示部106は、調査結果に応じて第1処理部108または第2処理部110のいずれかに動画データの出力を指示する。
【0186】
第1処理部108は、第1フォーマットで動画データを出力するユニットであり、本実施の形態では前提技術で説明したCPF(商標)によるフォーマットの動画データを出力する。第1処理部108は、キーフレーム格納部116に格納されているキーフレームに基づいて対応点情報を生成し、キーフレームおよび対応点情報を動画データとして送信部112に出力する。また、第1デコーダ20の種類に応じて、第1処理部108はキーフレームだけを出力してもよいし、対応点情報を順次出力し、クライアント側で対応点情報を受信しながら表示するストリーミングの形態をとってもよい。いずれにしても、クライアント側のデコーダは対応点情報を利用してデコードする。
【0187】
第2処理部110は、第2フォーマットで動画データを出力するユニットであり、本実施の形態ではPNG(商標)、GIF(商標)、MPEG(商標)などによる動画を出力する。第2処理部110は、第2フォーマットで動画を出力する場合、その動画を形成するフレームの数、サイズ、色数などを指定して、フレームの供給を第1処理部108に要求する。第1処理部108は、隣接するキーフレーム間の任意の時間位置における中間フレームを生成できるので、第2処理部110に要求に応じてフレームを生成し、第2処理部110に供給できる。第2処理部110は、第1処理部108から供給されたフレームに基づいて第2フォーマットの動画を形成して送信部112に出力する。
【0188】
判定部114は、コンテンツを要求したクライアントに適した第2フォーマットの動画が動画格納部118に格納されているか否かを判定する。既にその動画が格納されている場合、第2処理部110はその動画を動画格納部118から読み込み、送信部112に出力する。また、その動画が格納されていない場合、第2処理部110は動画を新たに生成する。これにより、一度生成した動画を出力する場合には、出力までの時間を短縮できる。送信部112は、第1処理部108および第2処理部110からの動画データをクライアントに送信する。また、クライアントに第1フォーマットおよび第2フォーマットのいずれにも対応するデコーダが搭載されていない場合、指示部106は、第1処理部108に対して静止画を出力することを指示する。
【0189】
図21は、図20の調査部104の内部構成図である。取得部120は、例えばクライアントのブラウザが出力する環境変数を取得する。その環境変数は、例えば、機種名、画面サイズ、デコーダ種類、取り扱うことのできるファイルフォーマットなど複数の情報を含んでよい。特定部122は、その環境変数に基づいてクライアントの処理機能を特定し、結果を図20の指示部106に出力する。
【0190】
図22は、図21における機種機能データベース124のデータ構造の一例である。機種情報欄130は、機種を特定する情報、例えば機種名、機種IDなどを保持する。第1デコーダ欄132は、第1デコーダの有無を示す情報を保持する。本図では、「1」は第1デコーダがあることを示し、「0」は第1デコーダがないことを示す。第2デコーダ欄134は、第2デコーダの有無を示す情報を保持する。本図では、「1」は第2デコーダがあることを示し、「0」は第2デコーダがないことを示す。
【0191】
優先デコーダ欄140は、利用するデコーダの優先順位を指示する情報を保持する。本図では、2種類のデコーダのみを示しているため、もっとも優先順位の高いデコーダを特定する情報が保持されている。他の例では、デコーダを特定する情報に、優先順位を示す番号を対応付けて保持してもよい。画面サイズ欄136は、画面の大きさを保持する。表示色数欄138は表示可能色数を保持する。この他、音声用デコーダの有無、3Dポリゴン処理機能の有無、GPS、カメラなどの有無などを示す情報を保持してもよい。例えば、機種情報「AC05012」のクライアントは、第2デコーダを有し、画面サイズが「100×150」、表示可能色数が「256色」であることがわかる。このように機種機能データベース124は、機種情報に対応付けて、その機種が有する処理機能のリストを保持する。
【0192】
図21に戻り、特定部122は、取得部120が取得したクライアントの機種情報に基づいて機種機能データベース124を参照して、その機種の処理機能を特定する。例えば、図22において機種情報「AC05012」のクライアントからコンテンツを要求された場合、特定部122は、第2フォーマットで動画を生成すること、動画のサイズは「100×150」、色数は「256色」であることを図20の指示部106に出力する。
【0193】
また、クライアントが、第1デコーダと第2デコーダの両方を有している場合、特定部122は、優先デコーダ欄140に保持されているデコーダ用のフォーマットで動画を生成することを指示部106に出力する。例えば、機種情報「AB00012」のクライアントは、第1デコーダと第2デコーダの両方を備えているが、優先デコーダとして第1デコーダが設定されているため、特定部122は、第1フォーマットで動画を生成することを指示部106に出力する。
【0194】
また、クライアントが搭載するブラウザによっては、取得部120が機種情報を取得できないことがあるこの場合、特定部122は、環境変数に含まれる機種情報以外の情報、例えばデコーダ種類を示す情報、取り扱うことのできるファイルフォーマットを示す情報などにより処理機能を特定する。また、JAVA(登録商標)などを使ってクライアントで動作する動画ビューアを介してコンテンツを要求された場合、取得部120は、その動画ビューアが収集したクライアントの表示機能に関する情報を取得してもよい。
【0195】
図23は、クライアントのコンテンツ取得処理における、クライアントとサーバ間のシーケンス図である。クライアントは、コンテンツサーバ100にコンテンツを要求する(S10)。コンテンツサーバ100は、クライアントの環境変数を取得し(S12)、取得した環境変数に基づいてクライアントの処理機能を調査する(S14)。その調査により、クライアントが第1デコーダを有することが判明した場合(S16のY)、コンテンツサーバ100の第1処理部108は第1フォーマットで動画データを出力し(S18)、クライアントに送信する(S22)。また、S16で、クライアントが第1デコーダを有していないことが判明した場合(S16のN)、コンテンツサーバ100の第2処理部110は第2フォーマットで動画データを出力し(S20)、クライアントに送信する(S22)。
【0196】
図24は、図23のS20における処理のシーケンス図である。この処理は主に図20の第2処理部110および第1処理部108の間で行われる。第2処理部110は、コンテンツを要求したクライアント向けの動画データが図20の動画格納部118に格納されているか否かを判定する(S30)。該当する動画データが格納されていない場合(S30のN)、第2処理部110は第1処理部108に動画データの形成に必要なフレームを要求する(S32)。第1処理部108は、前述の前提技術を利用してフレームを生成し(S34)、第2処理部110に供給する(S36)。第2処理部110は、そのフレームを利用して第2フォーマットで動画データを生成する(S38)。第2処理部110は、生成した動画データを動画格納部118に格納し(S40)、図20の送信部112に出力する(S42)。また、S30で、該当する動画データが格納されている場合(S30のY)、第2処理部110は動画格納部118から該当する動画データを読み込み(S44)、送信部112に出力する(S42)。
【0197】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。こうした変形例として、CPF形式の動画コンテンツを電子メールに添付して送信する場合において、その送り先がCPFデコーダを有していないときに、その動画コンテンツをその他のフォーマットに変換してもよい。
【0198】
この場合、コンテンツサーバ100の全ての構成または一部の構成がメールサーバに組み込まれていてもよいし、互いの協調作業、すなわちメールサーバがコンテンツサーバ100にCPF動画コンテンツの変換を要求し、その要求に応じてコンテンツサーバ100が第2フォーマットの動画コンテンツを出力するようにしてもよい。
【0199】
これを実現するために例えば、調査部104は、電子メールの送信先であるクライアントの処理機能を調査する機能を更に備える。その調査方法としては、電子メールに予め送信先クライアントの機種情報またはデコーダの有無を示す情報が含まれていて、それに基づいて処理機能を特定してもよいし、電子メールを送信する前に、処理機能の有無を問い合わせるメールを送信し、その返答に基づいて処理機能を特定してもよい。そのメールのクライアントからの返答は、ユーザが意識することなく自動的に行われることが好ましいが、ユーザ自らが返答する形態であってもよい。また、コンテンツサーバ100は、CPF動画コンテンツ、その他フォーマットの動画コンテンツ、静止画などを入力する入力部を更に備える。この入力部から入力したデータに基づいて任意の形式へのフォーマット変換処理を行う。もちろん、動画コンテンツ以外のコンテンツのフォーマットを変換する機能を有してもよい。
【0200】
【発明の効果】
本発明によれば、クライアントの処理機能に応じたフォーマットのコンテンツを提供できる。
【図面の簡単な説明】
【図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】パラメータηとエネルギーCの関係を示す図である。
【図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) の挙動を示す図である。
【図17】ηを変えながら求められたf(n)(η=iΔη)(i=0,1,…)に対応するエネルギーC(n) の挙動を示す図である。
【図18】改良後の前提技術において第mレベルにおける副写像を求めるフローチャートである。
【図19】コンテンツ提供システムの構成図である。
【図20】図19のコンテンツサーバの内部構成図である。
【図21】図20の調査部の内部構成図である。
【図22】図21の機種機能データベースのデータ構造の一例を示す図である。
【図23】コンテンツを提供する処理のシーケンス図である。
【図24】第2フォーマットの動画を出力する処理のシーケンス図である。
【符号の説明】
10 コンテンツ提供システム、20 第1デコーダ、22 第2デコーダ、100 コンテンツサーバ、102 受付部、104 調査部、106 指示部、108 第1処理部、110 第2処理部、112 送信部、114 判定部、116 キーフレーム格納部、118 動画格納部、120 取得部、122
特定部、124 機種機能データベース。

Claims (14)

  1. 第1フォーマットと前記第1フォーマットとは異なる第2フォーマットの動画コンテンツを出力する処理部と、
    クライアントにおける前記動画コンテンツの処理機能を特定する調査部と、
    前記調査部による調査結果に基づいて、前記第1フォーマットまたは前記第2フォーマットのいずれかの形式で前記動画コンテンツを前記処理部に出力せしめる指示部と、
    を備え、前記第1フォーマットは、前記動画コンテンツを形成する複数のフレームのうち、キーフレームを除くフレームを前記クライアント側で前記キーフレームと対応点情報とに基づいて画像化するための形式であることを特徴とするコンテンツサーバ。
  2. 前記第2フォーマットは、前記動画コンテンツを形成する複数のフレームを、前記クライアント側で前記対応点情報を使用することなしに画像化するための形式であることを特徴とする請求項1に記載のコンテンツサーバ。
  3. 前記調査部は、前記クライアントにおける前記処理機能として、前記第1フォーマットの前記動画コンテンツをデコードする機能の有無について調査することを特徴とする請求項1または2に記載のコンテンツサーバ。
  4. 第1フォーマットおよび前記第1フォーマットとは異なる第2フォーマットの動画コンテンツを出力する工程と、
    クライアントにおける前記動画コンテンツの処理機能を特定する工程と、
    前記クライアントの前記処理機能に応じて、前記第1フォーマットまたは前記第2フォーマットのいずれかの形式で前記動画コンテンツを出力せしめる工程と、
    を含み、前記第1フォーマットは、前記動画コンテンツを形成する複数のフレームのうち、キーフレームを除くフレームを前記クライアント側で前記キーフレームと対応点情報とに基づいて画像化するための形式であることを特徴とするコンテンツ提供方法。
  5. クライアントからコンテンツの送信要求を受け付ける受付部と、
    前記コンテンツを第1フォーマットで出力する第1処理部と、
    前記コンテンツを前記第1フォーマットとは異なる第2フォーマットで出力する第2処理部と、
    前記クライアントにおけるコンテンツの処理機能を特定する調査部と、
    前記調査部による調査結果に基づいて、前記第1処理部または前記第2処理部のいずれか一方に前記コンテンツの出力を指示、またはいずれか一方の出力を選択する指示部と、
    前記指示部に指示または選択された前記第1処理部または前記第2処理部が出力した前記コンテンツを前記クライアントに送信する送信部と、
    を備えることを特徴とするコンテンツサーバ。
  6. 前記調査部が、前記クライアントは前記第1フォーマットのコンテンツを処理できると特定した場合、前記指示部は前記第1処理部に前記コンテンツの出力を指示し、
    前記調査部が、前記クライアントは前記第1フォーマットのコンテンツを処理できないと特定した場合、前記指示部は前記第2処理部に前記コンテンツの出力を指示することを特徴とする請求項5に記載のコンテンツサーバ。
  7. 前記クライアントが、前記第1フォーマットおよび前記第2フォーマットの両方のコンテンツを処理できる場合、前記指示部は、予め優先順位が高く設定された前記第1処理部および前記第2処理部のいずれか一方に前記コンテンツの出力を指示することを特徴とする請求項5または6に記載のコンテンツサーバ。
  8. 前記コンテンツは動画であって、
    前記クライアントが、前記第1フォーマットおよび前記第2フォーマットのいずれの動画も表示できない場合、前記指示部は、前記動画に基づいて静止画を出力することを前記第1処理部または前記第2処理部の一方に指示することを特徴とする請求項5から7のいずれかに記載のコンテンツサーバ。
  9. 前記第1処理部は、前記動画を形成する複数のフレームのうち、キーフレームを除くフレームを前記クライアント側で前記キーフレームと対応点情報とに基づいて画像化するための形式で前記動画を出力し、
    前記第2処理部は、前記動画を形成する複数のフレームを、前記クライアント側で前記対応点情報を使用することなしに画像化するための形式で前記動画を出力することを特徴とする請求項8に記載のコンテンツサーバ。
  10. 前記第2処理部は、前記動画を形成するために必要なフレームの供給を前記第1処理部に要求し、
    前記第1処理部は、その要求に基づいてフレームを生成し、前記第2処理部に出力することを特徴とする請求項9に記載のコンテンツサーバ。
  11. 前記第2処理部が生成した動画を格納する動画格納部と、前記指示部が前記第2処理部に動画の出力を指示した場合、前記動画格納部に前記指示部により指示された動画と同一の動画が格納されているか否かを判定する判定部と、
    を更に備え、前記第2処理部は、前記動画格納部に前記同一の動画が格納されていない場合に、前記第1処理部にフレームの供給を要求することを特徴とする請求項10に記載のコンテンツサーバ。
  12. 前記調査部は、
    前記クライアントの機種情報を取得する取得部と、
    機種情報とその機種の処理機能とを対応付けて格納する機種機能データベースと、
    取得した機種情報に基づいて前記機種機能データベースを参照して、前記クライアントの処理機能を特定する特定部と、
    を有することを特徴とする請求項5から11のいずれかに記載のコンテンツサーバ。
  13. 前記取得部は、前記クライアントから提供される前記クライアントに関係する複数の情報を環境変数として取得し、
    前記機種情報で前記クライアントの機種を特定できない場合、前記環境変数に含まれるいずれかの情報に基づいてそのクライアントの処理機能を特定することを特徴とする請求項12に記載のコンテンツサーバ。
  14. クライアントにコンテンツを提供する方法であって、
    前記クライアントの処理機能を特定する工程と、
    前記クライアントの処理機能に応じて、前記コンテンツを第1フォーマットまたは前記第1フォーマットとは異なる第2フォーマットのいずれか一方で出力することを指示する工程と、
    前記第1フォーマットで出力することが指示された場合、前記コンテンツを前記第1フォーマットで出力する工程と、
    前記第2フォーマットで出力することが指示された場合、前記コンテンツを前記第2フォーマットで出力する工程と、
    前記第1フォーマットまたは前記第2フォーマットのいずれか一方を前記クライアントに送信する工程と、
    を含むことを特徴とするコンテンツ提供方法。
JP2002215903A 2002-07-24 2002-07-24 コンテンツサーバ、およびそのサーバにおけるコンテンツの提供方法 Pending JP2004064156A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002215903A JP2004064156A (ja) 2002-07-24 2002-07-24 コンテンツサーバ、およびそのサーバにおけるコンテンツの提供方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002215903A JP2004064156A (ja) 2002-07-24 2002-07-24 コンテンツサーバ、およびそのサーバにおけるコンテンツの提供方法

Publications (1)

Publication Number Publication Date
JP2004064156A true JP2004064156A (ja) 2004-02-26

Family

ID=31937802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002215903A Pending JP2004064156A (ja) 2002-07-24 2002-07-24 コンテンツサーバ、およびそのサーバにおけるコンテンツの提供方法

Country Status (1)

Country Link
JP (1) JP2004064156A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009522850A (ja) * 2005-12-29 2009-06-11 ユナイテッド ビデオ プロパティーズ, インコーポレイテッド 複数の装置を有する双方向メディアガイダンスシステム
WO2016035995A1 (ko) * 2014-09-01 2016-03-10 엔트릭스 주식회사 클라우드 스트리밍 서비스 시스템, 시스템 자원을 절약하기 위한 클라우드 스트리밍 서비스 방법 및 이를 위한 장치

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06338061A (ja) * 1993-05-31 1994-12-06 Mitsubishi Electric Corp 記録媒体および再生装置
JPH11134265A (ja) * 1997-10-28 1999-05-21 Casio Comput Co Ltd データ変換システム、端末、サーバ及び記録媒体
JP2000138902A (ja) * 1998-10-30 2000-05-16 Matsushita Electric Ind Co Ltd ネットワーク装置及びネットワーク通信方法
JP2001078166A (ja) * 1999-09-06 2001-03-23 Matsushita Electric Ind Co Ltd 番組提供システム
JP2001127790A (ja) * 1999-11-01 2001-05-11 Matsushita Electric Ind Co Ltd 情報伝送方法
JP2001211443A (ja) * 2000-01-27 2001-08-03 Mega Chips Corp 情報配信システム
JP2001527668A (ja) * 1997-03-14 2001-12-25 インタヴュ,インコーポレーテッド コンピュータネットワーク上の多様なビデオデータを選択し復元するためのシステムと方法
JP2002016639A (ja) * 2000-06-29 2002-01-18 Sony Corp データ変換装置及び方法、データ送受信装置及び方法、ネットワークシステム
JP2002132595A (ja) * 2000-10-26 2002-05-10 Star Alpha Kk ホームゲートウェイ、ホームゲートウェイ上で実現するセキュリティ方法、ホームゲートウェイ上で実現するコンテンツ受信方法、ホームゲートウェイに実現するためのセキュリティプログラムを記憶したコンピュータ読取可能な記憶媒体及びホームゲートウェイに実現するためのコンテンツ受信プログラムを記憶したコンピュータ読取可能な記憶媒体
JP2002152307A (ja) * 2000-11-09 2002-05-24 Sony Corp データ受信装置、データ送信装置、データ通信システム、データ受信方法、データ送信方法、データ通信方法、並びにプログラム記憶媒体
JP2002191034A (ja) * 2000-09-25 2002-07-05 Monolith Co Ltd アニメーション配信方法と、それを利用可能なサーバおよびシステム

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06338061A (ja) * 1993-05-31 1994-12-06 Mitsubishi Electric Corp 記録媒体および再生装置
JP2001527668A (ja) * 1997-03-14 2001-12-25 インタヴュ,インコーポレーテッド コンピュータネットワーク上の多様なビデオデータを選択し復元するためのシステムと方法
JPH11134265A (ja) * 1997-10-28 1999-05-21 Casio Comput Co Ltd データ変換システム、端末、サーバ及び記録媒体
JP2000138902A (ja) * 1998-10-30 2000-05-16 Matsushita Electric Ind Co Ltd ネットワーク装置及びネットワーク通信方法
JP2001078166A (ja) * 1999-09-06 2001-03-23 Matsushita Electric Ind Co Ltd 番組提供システム
JP2001127790A (ja) * 1999-11-01 2001-05-11 Matsushita Electric Ind Co Ltd 情報伝送方法
JP2001211443A (ja) * 2000-01-27 2001-08-03 Mega Chips Corp 情報配信システム
JP2002016639A (ja) * 2000-06-29 2002-01-18 Sony Corp データ変換装置及び方法、データ送受信装置及び方法、ネットワークシステム
JP2002191034A (ja) * 2000-09-25 2002-07-05 Monolith Co Ltd アニメーション配信方法と、それを利用可能なサーバおよびシステム
JP2002132595A (ja) * 2000-10-26 2002-05-10 Star Alpha Kk ホームゲートウェイ、ホームゲートウェイ上で実現するセキュリティ方法、ホームゲートウェイ上で実現するコンテンツ受信方法、ホームゲートウェイに実現するためのセキュリティプログラムを記憶したコンピュータ読取可能な記憶媒体及びホームゲートウェイに実現するためのコンテンツ受信プログラムを記憶したコンピュータ読取可能な記憶媒体
JP2002152307A (ja) * 2000-11-09 2002-05-24 Sony Corp データ受信装置、データ送信装置、データ通信システム、データ受信方法、データ送信方法、データ通信方法、並びにプログラム記憶媒体

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009522850A (ja) * 2005-12-29 2009-06-11 ユナイテッド ビデオ プロパティーズ, インコーポレイテッド 複数の装置を有する双方向メディアガイダンスシステム
JP2010063157A (ja) * 2005-12-29 2010-03-18 United Video Properties Inc 複数の装置を有する双方向メディアガイダンスシステム
WO2016035995A1 (ko) * 2014-09-01 2016-03-10 엔트릭스 주식회사 클라우드 스트리밍 서비스 시스템, 시스템 자원을 절약하기 위한 클라우드 스트리밍 서비스 방법 및 이를 위한 장치

Similar Documents

Publication Publication Date Title
JP3889233B2 (ja) 画像符号化方法と装置および画像復号方法と装置
JP2008252860A (ja) 画像処理方法及び画像処理装置
JP2002232908A (ja) 画像補間方法および装置
JP2004040422A (ja) 画像処理方法と装置
JP2002271788A (ja) 画像符号化方法と装置および画像復号方法および装置
JP4050472B2 (ja) 画像生成方法、装置およびシステム
JP2002344970A (ja) 画像符号化および復号のための方法および装置
US7151857B2 (en) Image interpolating method and apparatus
JP2003037842A (ja) 画像符号化方法、復号方法および画像符号化装置、復号装置
JP2004064156A (ja) コンテンツサーバ、およびそのサーバにおけるコンテンツの提供方法
JP2002230575A (ja) 映像効果方法および装置
JP2002190020A (ja) 映像効果方法および装置
JP2004048116A (ja) 画像データ符号化および復号のための方法および装置
JP2004048595A (ja) 画像符号化方法および装置
JP4524412B2 (ja) 画像符号化方法、復号方法および画像符号化装置、復号装置
JP3839353B2 (ja) 画像符号化方法と装置および画像復号方法および装置
US20030043910A1 (en) Method and apparatus for coding and decoding image data with synchronized sound data
JP2004048496A (ja) 画像符号化方法および装置、画像復号方法および装置と、画像配信装置
JP2004032219A (ja) 画像表示方法および装置、画像配信方法および装置。
JP2004064474A (ja) 画像符号化および復号のための方法および装置
JP2004094669A (ja) 画像処理装置およびその画像処理機能を有する情報提供装置
JP2004056599A (ja) 画像配信システム、およびその画像配信システムにおいて利用可能な課金方法
JP2004048627A (ja) 画像符号化方法と装置及び画像復号方法と装置
JP2004023172A (ja) 再生時間調整装置、その調整機能を備える録画装置、および映像のフレーム周期を変換するフレームレート変換装置。
JP2004023271A (ja) 画像符号化方法と装置および画像復号方法および装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050704

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090224

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090630