JP4701547B2 - COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM - Google Patents

COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM Download PDF

Info

Publication number
JP4701547B2
JP4701547B2 JP2001195594A JP2001195594A JP4701547B2 JP 4701547 B2 JP4701547 B2 JP 4701547B2 JP 2001195594 A JP2001195594 A JP 2001195594A JP 2001195594 A JP2001195594 A JP 2001195594A JP 4701547 B2 JP4701547 B2 JP 4701547B2
Authority
JP
Japan
Prior art keywords
image
pixel
foreground
background
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001195594A
Other languages
Japanese (ja)
Other versions
JP2003016069A5 (en
JP2003016069A (en
Inventor
哲二郎 近藤
淳一 石橋
貴志 沢尾
直樹 藤原
隆浩 永野
成司 和田
徹 三宅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2001195594A priority Critical patent/JP4701547B2/en
Publication of JP2003016069A publication Critical patent/JP2003016069A/en
Publication of JP2003016069A5 publication Critical patent/JP2003016069A5/ja
Application granted granted Critical
Publication of JP4701547B2 publication Critical patent/JP4701547B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、通信装置および方法、通信システム、記録媒体、並びにプログラムに関し、センサにより検出した信号と現実世界との違いを考慮した通信装置および方法、通信システム、記録媒体、並びにプログラムに関する。
【0002】
【従来の技術】
現実世界における事象をセンサで検出し、画像センサが出力するサンプリングデータを処理する技術が広く利用されている。
【0003】
例えば、静止している所定の背景の前で移動する物体をビデオカメラで撮像して得られる画像には、物体の移動速度が比較的速い場合、動きボケが生じることになる。
【0004】
また、従来使用者は、動きボケが生じた物体の画像と別の背景画像を合成させたいとき、所望とする背景画像を取得するために、いくつか検討をつけて探し出しては、自らのコンピュータに取り込むなどして、実際に表示させていた。
【0005】
【発明が解決しようとする課題】
静止している背景の前で物体が移動するとき、移動する物体の画像自身の混ざり合いによる動きボケのみならず、背景の画像と移動する物体の画像との混ざり合いが生じる。従来は、背景の画像と移動する物体の画像との混ざり合いの状態に対応する処理は考えられていなかった。
【0006】
また、上述のように画像を検索する場合には、自らが所望とする画像が取り込まれるまで、同じ処理を繰り返さなければならないという課題があった。
【0007】
本発明はこのような状況に鑑みてなされたものであり、画像の混ざり合いの状態に基づいて画像を分離、合成、または、修正するなどした画像をネットワーク上で検索できるようにするものである。
【0008】
【課題を解決するための手段】
本発明の第1の側面の通信装置は、使用者の検索要求情報を入力する検索要求情報入力手段と、画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像を記憶する記憶手段と、記憶手段に記憶された画像のうち、検索要求情報入力手段により入力された検索要求情報に対応する画像を検索する検索手段と、検索手段の検索結果を出力する出力手段と、検索結果に対応して、課金処理を実行する課金手段と、画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、画素値を時間方向に展開したモデルを設定し、モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成する合成画像生成手段とを備え、記憶手段は、合成画像生成手段により生成された合成画像を記憶することを特徴とする。
【0009】
前記記憶手段は、各々に画像を撮像する撮像装置が設けられ、撮像装置により撮像される画像を所定の時間間隔で更新して、格納している、無線、または、有線で通信可能な、複数の画像格納部により構成されるようにすることができる。
【0010】
前記検索要求情報には、前景オブジェクトを指定する情報を含ませるようにすることができ、記憶手段には、複数の画像格納部に設けられた撮像装置を識別する識別子と、対応する画像格納部に格納されている画像のオブジェクトとの関係を示すデータベースをさらに設けるようにさせることができ、検索手段には、データベースを参照して、記憶手段に記憶された画像のうち、検索要求情報入力手段により入力された前景オブジェクトを指定する情報に対応する画像を検索させるようにすることができる。
【0011】
前記画像の画像データを、前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像に分離する分離手段をさらに設けるようにさせることができ、記憶手段には、分離手段により分離された前景成分画像と背景成分画像を記憶させるようにすることができる。
【0013】
前記画像の画像データを、前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像に分離する分離手段を備え、合成画像生成手段は、分離手段により分離された前景成分画像を、前記画素値を時間方向に展開したモデルを設定し、前記モデルを用いて、前記動きボケを調整して、背景成分画像所定の混合の比率で合成し、合成画像を生成させるようにすることができる。
【0014】
前記出力手段には、検索結果として、検索要求情報に対応する画像の有無、または、検索要求情報に対応する画像の有無と共に検索された画像を出力させ、課金手段には、出力手段により出力された検索結果に基づいて、課金処理を実行させるようにすることができる。
【0015】
前記課金手段には、検索要求情報に応じて使用者の識別子、通信装置の識別子、および、検索要求情報に対応する金額情報を含む課金情報を生成し、課金情報に基づいて、使用者の金融口座に対して、出力手段により出力された検索結果に基づいて、課金処理を実行させるようにすることができる。
【0016】
前記課金処理に使用される使用者毎のポイントを記憶するポイント記憶手段をさらに設けるようにさせることができ、課金手段には、検索要求情報に応じて使用者の識別子、通信装置の識別子、および、検索結果の出力に対応する金額情報を含む課金情報を生成し、ポイント記憶手段に記憶されたポイント数を金額情報に対応する分だけ減算することにより課金処理を実行させるようにすることができる。
【0017】
前記出力手段には、課金手段により課金処理が完了した後、課金処理が完了した使用者の通信装置に検索結果を出力させるようにすることができる。
【0018】
本発明の第1の側面の通信方法は、使用者の検索要求情報を入力する検索要求情報入力ステップと、画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像を記憶する記憶ステップと、記憶ステップの処理で記憶された画像のうち、検索要求情報入力ステップの処理で入力された検索要求情報に対応する画像を検索する検索ステップと、検索ステップの処理での検索結果を出力する出力ステップと、検索結果に対応して、課金処理を実行する課金ステップと、画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、画素値を時間方向に展開したモデルを設定し、モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成する合成画像生成ステップとを含み、記憶ステップの処理は、合成画像生成ステップの処理により生成された合成画像を記憶することを特徴とする。
【0019】
本発明の第1の側面の記録媒体のプログラムは、使用者の検索要求情報の入力を制御する検索要求情報入力制御ステップと、画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像の記憶を制御する記憶制御ステップと、記憶制御ステップの処理で記憶が制御された画像のうち、検索要求情報入力制御ステップの処理で入力が制御された検索要求情報に対応する画像の検索を制御する検索制御ステップと、検索制御ステップの処理での検索結果の出力を制御する出力制御ステップと、検索結果に対応して、課金処理の実行を制御する課金制御ステップと、画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、画素値を時間方向に展開したモデルを設定し、モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成する合成画像生成ステップとを含む処理をコンピュータに実行させ、記憶ステップの処理は、合成画像生成ステップの処理により生成された合成画像を記憶することを特徴とする。
【0020】
本発明の第1の側面のプログラムは、使用者の検索要求情報の入力を制御する検索要求情報入力制御ステップと、画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像の記憶を制御する記憶制御ステップと、記憶制御ステップの処理で記憶が制御された画像のうち、検索要求情報入力制御ステップの処理で入力が制御された検索要求情報に対応する画像の検索を制御する検索制御ステップと、検索制御ステップの処理での検索結果の出力を制御する出力制御ステップと、検索結果に対応して、課金処理の実行を制御する課金制御ステップと、画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、画素値を時間方向に展開したモデルを設定し、モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成する合成画像生成ステップとを含む処理をコンピュータに実行させ、記憶ステップの処理は、合成画像生成ステップの処理により生成された合成画像を記憶することを特徴とする。
【0021】
本発明の第2の側面の通信システムは、第1の通信装置が、使用者の検索要求情報を入力する検索要求情報入力手段と、検索要求情報を第2の通信装置に送信する検索要求情報送信手段と、第2の通信装置より送信されてくる検索結果を受信する検索結果受信手段とを備え、第2の通信装置が、第1の通信装置より送信されてくる検索要求情報を受信する検索要求情報受信手段と、画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像を記憶する記憶手段と、記憶手段に記憶された画像のうち、検索要求情報受信手段により受信された検索要求情報に対応する画像を検索する検索手段と、検索手段の検索結果を第1の通信装置に送信する検索結果送信手段と、検索結果に対応して、課金処理を実行する課金手段と、画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、画素値を時間方向に展開したモデルを設定し、モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成する合成画像生成手段とを備え、記憶手段は、合成画像生成手段により生成された合成画像を記憶することを特徴とする。
【0042】
本発明の第1の側面においては、使用者の検索要求情報が入力され、画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像が記憶され、記憶された画像のうち、入力された検索要求情報に対応する画像が検索され、検索結果が出力され、検索結果に対応して、課金処理が実行され、画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像が、画素値が時間方向に展開されたモデルが設定され、モデルが用いられて、動きボケが調整されて、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成され、合成画像が生成され、生成された合成画像が記憶される。
【0043】
本発明の第2の側面においては、第1の通信装置により、使用者の検索要求情報が入力され、検索要求情報が第2の通信装置に送信され、第2の通信装置より送信されてくる検索結果が受信され、第2の通信装置により、第1の通信装置より送信されてくる検索要求情報が受信され、画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像が記憶され、記憶された画像のうち、受信された検索要求情報に対応する画像が検索され、検索結果が第1の通信装置に送信され、検索結果に対応して、課金処理が実行され、画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像が、画素値が時間方向に展開されたモデルが設定され、モデルが用いられて、動きボケが調整されて、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成され、合成画像が生成され、生成された合成画像が記憶される。
【0046】
【発明の実施の形態】
図1は、本発明に係る画像処理システムの一実施の形態を示す図である。
【0047】
本発明の画像処理システムは、例えば、インターネットなどのネットワーク1上に分離処理サーバ11、動き検出サーバ12、領域特定サーバ13、混合比算出サーバ14、前景背景分離処理サーバ15、動きボケ調整サーバ16、符号化サーバ17、蓄積サーバ18−1,18−2、合成サーバ19、修正サーバ20、購入サーバ21、売却サーバ22、検索サーバ23、課金サーバ24、金融サーバ(顧客用)25、金融サーバ(提供者用)26、クライアントコンピュータ27、および、カメラ端末装置28−1乃至28−nが、接続されており相互にデータを授受できる構成となっている。分離処理サーバ11、動き検出サーバ12、領域特定サーバ13、混合比算出サーバ14、前景背景分離処理サーバ15、動きボケ調整サーバ16、符号化サーバ17、合成サーバ19、修正サーバ20、購入サーバ21、売却サーバ22、検索サーバ23、課金サーバ24、金融サーバ(顧客用)25、および、金融サーバ(提供者用)26は、それぞれ分離サービス、動き検出サービス、領域特定サービス、混合比算出サービス、前景背景分離サービス、動きボケ調整サービス、符号化サービス、合成サービス、修正サービス、購入サービス、売却サービス、検索サービス、課金サービス、および、金融サービス(顧客用、および、提供者用)を提供する提供者により管理、または、運営されるサーバである。尚、以下の説明において、蓄積サーバ18−1,18−2、および、カメラ端末装置28−1乃至28−nを個々に区別する必要がないとき、単に蓄積サーバ18、および、カメラ端末装置28と称する。また、その他のサーバ、および、機器についても同様とする。
【0048】
図2は、本発明に係る分離処理サーバ11の構成を示す図である。CPU(Central Processing Unit)41は、ROM(Read Only Memory)42、または記憶部48に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)43には、CPU41が実行するプログラムやデータなどが適宜記憶される。これらのCPU41、ROM42、およびRAM43は、バス44により相互に接続されている。
【0049】
CPU41にはまた、バス44を介して入出力インタフェース45が接続されている。入出力インタフェース45には、キーボード、マウス、マイクロホンなどよりなる入力部46、ディスプレイ、スピーカなどよりなる出力部47が接続されている。CPU41は、入力部46から入力される指令に対応して各種の処理を実行する。そして、CPU41は、処理の結果得られた画像や音声等を出力部47に出力する。
【0050】
入出力インタフェース45に接続されている記憶部48は、例えばハードディスクなどで構成され、CPU41が実行するプログラムや各種のデータを記憶する。通信部49は、インターネット、その他のネットワークを介して外部の装置と通信する。
【0051】
また、通信部49を介してプログラムを取得し、記憶部48に記憶してもよい。
【0052】
入出力インタフェース45に接続されているドライブ50は、磁気ディスク61、光ディスク62、光磁気ディスク63、或いは半導体メモリ64などが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部48に転送され、記憶される。
【0053】
尚、動き検出サーバ12、領域特定サーバ13、混合比算出サーバ14、前景背景分離処理サーバ15、動きボケ調整サーバ16、符号化サーバ17、蓄積サーバ18−1,18−2、合成サーバ19、修正サーバ20、購入サーバ21、売却サーバ22、検索サーバ23、課金サーバ24、金融サーバ(顧客用)25、金融サーバ(提供者用)26、および、クライアントコンピュータ27については、その基本構成が分離処理サーバ11と同様であるので、その説明は省略する。
【0054】
図3は、本発明に係るカメラ端末装置28の構成を示す図である。カメラ端末装置28の構成は、入力部76にセンサ76a、および、GPS(Global Positioning System)76bが設けられ、出力部77には、LCD(Liquid Crystal Display)77aが設けられている以外は、分離処理サーバ11の構成と同じ構成となっている。すなわち、カメラ端末装置28のCPU71、ROM72、RAM73、バス74、入出力インタフェース75、入力部76、出力部77、記憶部78、通信部79、ドライブ80、磁気ディスク91、光ディスク92、光磁気ディスク93、および、半導体メモリ94は、それぞれ分離処理サーバ11のCPU41、ROM42、RAM43、バス44、入出力インタフェース45、入力部46、出力部47、記憶部48、通信部49、ドライブ50、磁気ディスク61、光ディスク62、光磁気ディスク63、および、半導体メモリ64に、それぞれ対応している。
【0055】
センサ76aは、撮像素子であり撮像した画像を入力部76に出力する。GPS76bは、図示せぬ静止衛星より送信されてくる信号に基づいて、地球上の位置情報(緯度、および、経度)を検出し、その検出した位置情報を入力部76に出力する。LCD77aは、出力部より出力される画像を表示する。
【0056】
次に、図4,図5を参照して、分離処理サーバ11について説明する。
【0057】
分離処理サーバ11は、図4で示すように、ネットワーク1を介して、例えば、クライアントコンピュータ27などから入力される画像を後述する手法により、前景成分画像と背景成分画像に分離し、入力画像、前景成分画像、および、背景成分画像の各々にID(Identifier)を付して生成してクライアントコンピュータ27に出力する、自らで記憶する、蓄積サーバ18に出力して蓄積させる、または、ネットワーク上のその他のサーバに出力して記憶させる。ここで、前景成分画像とは、入力される画像中で動きの成分を有する画像を示し、背景成分画像とは、入力される画像中の動き成分を含まない静止部分の画像を示す。このとき、課金処理部11aは、ネットワーク1を介して課金サーバ24に対して、分離処理に係る料金の課金処理を実行する。また、図5で示すように、分離処理サーバ11は、画像の代わりに、画像を指定する画像IDが入力されると、ネットワーク1上の後述する検索サーバ23や蓄積サーバ18にアクセスしたり、自らの記憶部(例えば、図3の記憶部78)を検索して、入力された画像IDに対応する画像データを読出し、前景成分画像と背景成分画像に分離した後、それぞれに対応するIDを付して、自らで記憶する、または、ネットワーク1上のその他のサーバに出力し、そのサーバに対応する処理を実行させる。
【0058】
尚、以下の説明において、画像を指定する情報として画像IDを例として説明していくが、画像が指定できる情報であればよく、例えば、後述する画像位置情報であってもよい。
【0059】
次に、図6,図7を参照して、動き検出サーバ12について説明する。
【0060】
図6で示すように、動き検出サーバ12のオブジェクト抽出部12aは、例えば、クライアントコンピュータ27などから入力される画像中の画像オブジェクトを抽出して、動き検出部12bに出力する。動き検出部12bは、入力された画像オブジェクトの動きベクトルと位置情報を検出してクライアントコンピュータ27に出力する、自らで記憶する、または、ネットワーク1上のその他のサーバに出力し、そのサーバに対応する処理を実行させる。この際、課金処理部12cは、ネットワーク1を介して課金サーバ24に対して、各画像オブジェクト毎の動きベクトルと位置情報の検出の処理に係る料金の課金処理を実行する。尚、この明細書において、撮像の対象となる、現実世界におけるオブジェクトに対応する画像を、オブジェクトと称する。
【0061】
また、図7で示すように、動き検出サーバ12は、画像の代わりに、画像を指定する画像IDが入力されると、ネットワーク1上の後述する検索サーバ23や蓄積サーバ18にアクセスしたり、自らの記憶部(例えば、図3の記憶部78)を検索して、入力された画像IDに対応する画像データを読出し、上記と同様の処理を実行する。
【0062】
次に、図8,図9を参照して、領域特定サーバ13について説明する。
【0063】
領域特定サーバ13は、図8で示すように、ネットワーク1を介して、例えば、クライアントコンピュータ27などから入力される画像と、その画像中のオブジェクトを指定するオブジェクト指定情報により、入力された画像の画素のそれぞれを、前景領域、背景領域、または混合領域のいずれかに特定し、画素毎に前景領域、背景領域、または混合領域のいずれかに属するかを示す情報(以下、領域情報と称する)を生成し、クライアントコンピュータ27に出力する、自らで記憶する、または、ネットワーク1上のその他のサーバに出力し、そのサーバに対応する処理を実行させる。このとき、課金処理部13aは、ネットワーク1を介して課金サーバ24に対して、領域特定処理に係る料金の課金処理を実行する。また、図9で示すように、領域特定サーバ13は、画像の代わりに、画像を指定する画像IDが入力されると、ネットワーク1上の後述する検索サーバ23や蓄積サーバ18にアクセスしたり、自らの記憶部(例えば、図3の記憶部78)を検索して、入力された画像IDに対応する画像を呼び出し、その画像のオブジェクト指定情報に対応する領域情報を出力する。
【0064】
次に、図10,図11を参照して、混合比算出サーバ14について説明する。
【0065】
混合比算出サーバ14は、図10で示すように、ネットワーク1を介して、例えば、クライアントコンピュータ27などから入力される画像、その画像中のオブジェクトを指定するオブジェクト指定情報、および、領域情報に基づいて、混合領域に含まれる画素に対応する混合比(以下、混合比αと称する)を算出して、算出した混合比をクライアントコンピュータ27に出力する、自らで記憶する、または、ネットワーク上のその他のサーバに出力し、そのサーバに対応する処理を実行させる。このとき、課金処理部14aは、ネットワーク1を介して課金サーバ24に対して、混合比算出処理に係る料金の課金処理を実行する。また、図11で示すように、混合比算出サーバ14は、画像の代わりに、画像を指定する画像IDが入力されると、ネットワーク1上の後述する検索サーバ23や蓄積サーバ18にアクセスしたり、自らの記憶部(例えば、図3の記憶部78)を検索して、入力された画像IDに対応する画像を呼び出し、上述と同様の処理を実行する。
【0066】
次に、図12,図13を参照して、前景背景分離処理サーバ15について説明する。
【0067】
前景背景分離処理サーバ15は、図12で示すように、ネットワーク1を介して、例えば、クライアントコンピュータ27などから入力される画像、その画像中のオブジェクトを指定するオブジェクト指定情報、領域情報、および、混合比αに基づいて、前景のオブジェクトに対応する画像の成分(以下、前景の成分とも称する)のみから成る前景成分画像と、背景の成分(以下、背景の成分とも称する)のみから成る背景成分画像とに入力画像を分離して、各画像毎にIDを付してクライアントコンピュータ27に出力する、自らで記憶する、または、ネットワーク上のその他のサーバに出力し、そのサーバに対応する処理を実行させる。このとき、課金処理部15aは、ネットワーク1を介して課金サーバ24に対して、前景背景分離処理に係る料金の課金処理を実行する。また、図13で示すように、前景背景分離処理サーバ15は、画像の代わりに、画像を指定する画像IDが入力されると、ネットワーク1上の後述する検索サーバ23や蓄積サーバ18にアクセスしたり、自らの記憶部(例えば、図3の記憶部78)を検索して、入力された画像IDに対応する画像を呼び出して、上述と同様の処理を実行する。
【0068】
次に、図14,図15を参照して、動きボケ調整サーバ16について説明する。
【0069】
動きボケ調整サーバ16は、図14で示すように、ネットワーク1を介して、例えば、クライアントコンピュータ27などから入力される前景成分画像、動きベクトル、および、動きボケ量に基づいて、前景成分画像に含まれる動きボケを除去する、動きボケの量を減少させる、または動きボケの量を増加させるなど前景成分画像に含まれる動きボケの量を調整して、動きボケの量を調整した前景成分画像を生成し、画像毎にIDを付してクライアントコンピュータ27に出力する、自らで記憶する、または、ネットワーク上のその他のサーバに出力し、そのサーバに対応する処理を実行させる。このとき、課金処理部16aは、ネットワーク1を介して課金サーバ24に対して、動きボケ調整処理に係る料金の課金処理を実行する。また、図15で示すように、動きボケ調整サーバ16は、前景成分画像の代わりに、前景成分画像を指定する前景成分画像IDが入力されると、ネットワーク1上の後述する検索サーバ23や蓄積サーバ18にアクセスしたり、自らの記憶部(例えば、図3の記憶部78)を検索して、入力された前景成分画像IDに対応する前景成分画像を呼び出して、上述と同様の処理を実行する。
【0070】
次に、図16,図17を参照して、符号化サーバ17について説明する。
【0071】
符号化サーバ17は、図16で示すように、ネットワーク1を介して、例えば、クライアントコンピュータ27などから入力される画像を前景成分画像と背景成分画像に分離し、それぞれにIDを付して、自らで記憶する、または、ネットワーク上のその他のサーバに出力して記憶させ、記憶させたそのサーバのURL(Universal Resource Locator)などの前景成分画像、および、背景成分画像が出力(記憶)されたサーバのネットワーク1上の位置を示す符号からなる前景成分画像位置情報、および、背景成分画像位置情報を生成し、それらの画像の動きベクトル、位置情報、および、混合比といった情報と共に出力する。また、符号化情報が出力する情報は、符号化情報、画像、および、画像および符号化情報のいずれであってもよく、必要に応じて出力する情報を変えることができる。また、このとき、課金処理部17aは、ネットワーク1を介して課金サーバ24に対して、符号化処理に係る料金の課金処理を実行する。また、図17で示すように、符号化サーバ17は、画像の代わりに、画像を指定する画像IDが入力されると、ネットワーク1上の後述する検索サーバ23や蓄積サーバ18にアクセスしたり、自らの記憶部(例えば、図3の記憶部78)を検索して、入力された画像IDに対応する画像を呼び出して、上述と同様の処理を実行する。
【0072】
次に、図18,図19を参照して、蓄積サーバ18について説明する。
【0073】
蓄積サーバ18は、図18で示すように、ネットワーク1上に接続され、各種のサーバより送信されてくる画像を蓄積すると共に、蓄積させた画像に対応する画像位置情報を画像IDと共に出力する。この画像位置情報により、例えば、クライアントコンピュータ27は、ネットワーク1を介してアクセスし、所望の画像を呼び出すことができる。すなわち、図19で示すように、例えば、クライアントコンピュータ27が、画像位置情報に基づいて、ネットワーク1状の蓄積サーバ18にアクセスし、所望とする画像に対応する画像IDを指定することにより、所望する画像を読み出すことができる。尚、この明細書中では、画像位置情報と画像IDとを別に説明していくが、画像位置情報は、画像IDの一部とするようにしても良く、この場合、画像IDにより画像位置情報を認識することでき、ネットワーク1上のどのサーバに記憶(蓄積、または、処理)されているのかを認識できるようにしてもよい。また、蓄積サーバ18は、画像データ以外にも、動きベクトル、位置情報、混合比、および、動きボケ量を記憶するようにしてもよい。
【0074】
次に、図20,図21を参照して、合成サーバ19について説明する。
【0075】
合成サーバ19は、図20で示すように、ネットワーク1を介して、例えば、クライアントコンピュータ27などから入力される画像A,Bといった2個の画像と、動きベクトル、および、位置情報、混合比、および、動きボケ量から画像A,Bを合成し、合成画像(A+B)を生成して、クライアントコンピュータ27に出力する、自らで記憶する、または、ネットワーク1上のその他のサーバに出力し、そのサーバに対応する処理を実行させる。この場合、画像A,Bは、一方が前景成分画像として、他方が背景成分画像として扱われることにより、両者が合成されることになる。このとき、課金処理部19aは、ネットワーク1を介して課金サーバ24に対して、合成処理に係る料金の課金処理を実行する。また、図21で示すように、合成サーバ19は、画像A,Bの代わりに、画像を指定する画像A−ID,B−IDが入力されると、ネットワーク1上の後述する検索サーバ23や蓄積サーバ18にアクセスしたり、自らの記憶部(例えば、図3の記憶部78)を検索して、入力された画像A−ID,B−IDに対応する画像を呼び出して、上述と同様の処理を実行する。
【0076】
次に、図22,図23を参照して、修正サーバ20について説明する。
【0077】
修正サーバ20は、図22で示すように、ネットワーク1を介して、例えば、クライアントコンピュータ27などから入力される画像を、動きベクトル、および、位置情報、混合比、および、動きボケ量に基づいて修正し、修正画像を生成してクライアントコンピュータ27に出力する、自らで記憶する、または、ネットワーク上のその他のサーバに出力し、そのサーバに対応する処理を実行させる。このとき、課金処理部20aは、ネットワーク1を介して課金サーバ24に対して、修正処理に係る料金の課金処理を実行する。また、図23で示すように、修正サーバ20は、画像の代わりに、画像を指定する画像IDが入力されると、ネットワーク1上の後述する検索サーバ23や蓄積サーバ18にアクセスしたり、自らの記憶部(例えば、図3の記憶部78)を検索して、入力された画像IDに対応する画像を呼び出して、上述と同様の処理を実行する。
【0078】
次に、図24を参照して購入サーバ21について説明する。
【0079】
購入サーバ21は、図24で示すように、ネットワーク1を介して、例えば、所定の画像の購入を希望する使用者によりクライアントコンピュータ27などが操作されて、購入を希望する画像を指定する画像IDが入力されると、対応する画像をネットワーク1上の分離処理サーバ11、蓄積サーバ18、合成サーバ19、または、修正サーバ20などにアクセスし、対応する画像を呼び出し、クライアントコンピュータ27に出力する。このとき、課金処理部21aは、ネットワーク1を介して課金サーバ24に対して、購入する画像に係る料金の課金処理を実行する。
【0080】
次に、図25を参照して売却サーバ22について説明する。
【0081】
売却サーバ22は、図25で示すように、ネットワーク1を介して、例えば、分離処理サーバ11、合成サーバ19、または、修正サーバ20により生成された、所定の使用者が所有する分離画像、合成画像、または、修正画像の売却を希望する画像が入力されると、売却を希望する画像をネットワーク1上の分離処理サーバ11、蓄積サーバ18、合成サーバ19、または、修正サーバ20などに記憶させると共に、課金処理部22aが、ネットワーク1を介して課金サーバ24に対して、売却する画像に係る料金の課金処理を実行する(この場合、売却処理サービスの提供者が、売却を希望する使用者に、売却された画像に対応する価格分の支払処理を実行することになる)。
【0082】
次に、図26を参照して、検索サーバ26について説明する。
【0083】
検索サーバ26は、例えば、クライアントコンピュータ1により使用者が所望とする画像の特徴を示す情報や、カメラ端末装置28−1乃至28−nの物理的な位置情報からネットワーク1上のカメラ端末装置28−1乃至28−nで現在撮像している画像、または、予め撮像された画像を検索して、要求画像としてクライアントコンピュータ1に出力する。このとき、課金処理部23aは、ネットワーク1を介して課金サーバ24に対して、検索処理に係る料金の課金処理を実行する。
【0084】
尚、本明細書においては、符号化とは画像データに基づいて得られる、前景成分画像、背景成分画像、動きベクトル、位置情報、動きボケ量、および、混合比の情報に変換することを符号化、そのデータを符号化データと呼ぶものとする。
【0085】
図27は、分離処理サーバ11を示すブロック図である。
【0086】
なお、分離処理サーバ11の各機能をハードウェアで実現するか、ソフトウェアで実現するかは問わない。つまり、本明細書の各ブロック図は、ハードウェアのブロック図と考えても、ソフトウェアによる機能ブロック図と考えても良い。
【0087】
分離処理サーバ11に供給された入力画像は、オブジェクト抽出部101、領域特定部103、混合比算出部104、および前景背景分離部105に供給される。
【0088】
オブジェクト抽出部101は、入力画像に含まれる前景のオブジェクトに対応する画像オブジェクトを粗く抽出して、抽出した画像オブジェクトを動き検出部102に供給する。オブジェクト抽出部101は、例えば、入力画像に含まれる前景のオブジェクトに対応する画像オブジェクトの輪郭を検出することで、前景のオブジェクトに対応する画像オブジェクトを粗く抽出する。
【0089】
オブジェクト抽出部101は、入力画像に含まれる背景のオブジェクトに対応する画像オブジェクトを粗く抽出して、抽出した画像オブジェクトを動き検出部102に供給する。オブジェクト抽出部101は、例えば、入力画像と、抽出された前景のオブジェクトに対応する画像オブジェクトとの差から、背景のオブジェクトに対応する画像オブジェクトを粗く抽出する。
【0090】
また、例えば、オブジェクト抽出部101は、内部に設けられている背景メモリに記憶されている背景の画像と、入力画像との差から、前景のオブジェクトに対応する画像オブジェクト、および背景のオブジェクトに対応する画像オブジェクトを粗く抽出するようにしてもよい。
【0091】
動き検出部102は、例えば、ブロックマッチング法、勾配法、位相相関法、およびペルリカーシブ法などの手法により、粗く抽出された前景のオブジェクトに対応する画像オブジェクトの動きベクトルを算出して、算出した動きベクトルおよび動きベクトルの位置情報(動きベクトルに対応する画素の位置を特定する情報)を領域特定部103および動きボケ調整部106に供給する。
【0092】
動き検出部102が出力する動きベクトルには、動き量vに対応する情報が含まれる。
【0093】
また、例えば、動き検出部102は、画像オブジェクトに画素を特定する画素位置情報と共に、画像オブジェクト毎の動きベクトルを動きボケ調整部106に出力するようにしてもよい。
【0094】
動き量vは、動いているオブジェクトに対応する画像の位置の変化を画素間隔を単位として表す値である。例えば、前景に対応するオブジェクトの画像が、あるフレームを基準として次のフレームにおいて4画素分離れた位置に表示されるように移動しているとき、前景に対応するオブジェクトの画像の動き量vは、4とされる。
【0095】
なお、オブジェクト抽出部101および動き検出部102は、動いているオブジェクトに対応した動きボケ量の調整を行う場合に必要となる。
【0096】
領域特定部103は、入力された画像の画素のそれぞれを、前景領域、背景領域、または混合領域のいずれかに特定し、画素毎に前景領域、背景領域、または混合領域のいずれかに属するかを示す情報を混合比算出部104、前景背景分離部105、および動きボケ調整部106に供給する。
【0097】
混合比算出部104は、入力画像、および領域特定部103から供給された領域情報を基に、混合領域に含まれる画素に対応する混合比を算出して、算出した混合比を前景背景分離部105に供給する。
【0098】
混合比αは、後述する式(3)に示されるように、画素値における、背景のオブジェクトに対応する画像の成分(以下、背景の成分とも称する)の割合を示す値である。
【0099】
前景背景分離部105は、領域特定部103から供給された領域情報、および混合比算出部104から供給された混合比αを基に、前景のオブジェクトに対応する画像の成分(以下、前景の成分とも称する)のみから成る前景成分画像と、背景の成分のみから成る背景成分画像とに入力画像を分離して、前景成分画像を動きボケ調整部106および選択部107に供給する。なお、分離された前景成分画像を最終的な出力とすることも考えられる。従来の混合領域を考慮しないで前景と背景だけを特定し、分離していた方式に比べ正確な前景と背景を得ることが出来る。
【0100】
動きボケ調整部106は、動きベクトルからわかる動き量vおよび領域情報を基に、前景成分画像に含まれる1以上の画素を示す処理単位を決定する。処理単位は、動きボケの量の調整の処理の対象となる1群の画素を指定するデータである。
【0101】
動きボケ調整部106は、分離処理サーバ11に入力された動きボケ調整量、前景背景分離部105から供給された前景成分画像、動き検出部102から供給された動きベクトルおよびその位置情報、並びに処理単位を基に、前景成分画像に含まれる動きボケを除去する、動きボケの量を減少させる、または動きボケの量を増加させるなど前景成分画像に含まれる動きボケの量を調整して、動きボケの量を調整した前景成分画像を選択部107に出力する。動きベクトルとその位置情報は使わないこともある。
【0102】
ここで、動きボケとは、撮像の対象となる、現実世界におけるオブジェクトの動きと、センサの撮像の特性とにより生じる、動いているオブジェクトに対応する画像に含まれている歪みをいう。
【0103】
選択部107は、例えば使用者の選択に対応した選択信号を基に、前景背景分離部105から供給された前景成分画像、および動きボケ調整部106から供給された動きボケの量が調整された前景成分画像のいずれか一方を選択して、選択した前景成分画像を出力する。
【0104】
次に、図28乃至図43を参照して、分離処理サーバ11に供給される入力画像について説明する。
【0105】
図28は、センサ76aによる撮像を説明する図である。センサ76aは、例えば、固体撮像素子であるCCD(Charge-Coupled Device)エリアセンサを備えたCCDビデオカメラなどで構成される。現実世界における、前景に対応するオブジェクトは、現実世界における、背景に対応するオブジェクトと、センサとの間を、例えば、図中の左側から右側に水平に移動する。
【0106】
センサ76aは、前景に対応するオブジェクトを、背景に対応するオブジェクトと共に撮像する。センサ76aは、撮像した画像を1フレーム単位で出力する。例えば、センサ76aは、1秒間に30フレームから成る画像を出力する。センサ76aの露光時間は、1/30秒とすることができる。露光時間は、センサ76aが入力された光の電荷への変換を開始してから、入力された光の電荷への変換を終了するまでの期間である。以下、露光時間をシャッタ時間とも称する。
【0107】
図29は、画素の配置を説明する図である。図29中において、A乃至Iは、個々の画素を示す。画素は、画像に対応する平面上に配置されている。1つの画素に対応する1つの検出素子は、センサ76a上に配置されている。センサ76aが画像を撮像するとき、1つの検出素子は、画像を構成する1つの画素に対応する画素値を出力する。例えば、検出素子のX方向の位置は、画像上の横方向の位置に対応し、検出素子のY方向の位置は、画像上の縦方向の位置に対応する。
【0108】
図30に示すように、例えば、CCDである検出素子は、シャッタ時間に対応する期間、入力された光を電荷に変換して、変換された電荷を蓄積する。電荷の量は、入力された光の強さと、光が入力されている時間にほぼ比例する。検出素子は、シャッタ時間に対応する期間において、入力された光から変換された電荷を、既に蓄積されている電荷に加えていく。すなわち、検出素子は、シャッタ時間に対応する期間、入力される光を積分して、積分された光に対応する量の電荷を蓄積する。検出素子は、時間に対して、積分効果があるとも言える。
【0109】
検出素子に蓄積された電荷は、図示せぬ回路により、電圧値に変換され、電圧値は更にデジタルデータなどの画素値に変換されて出力される。従って、センサ76aから出力される個々の画素値は、前景または背景に対応するオブジェクトの空間的に広がりを有するある部分を、シャッタ時間について積分した結果である、1次元の空間に射影された値を有する。
【0110】
分離処理サーバ11は、このようなセンサ76aの蓄積の動作により、出力信号に埋もれてしまった有意な情報、例えば、混合比αを抽出する。分離処理サーバ11は、前景の画像オブジェクト自身が混ざり合うことによる生ずる歪みの量、例えば、動きボケの量などを調整する。また、分離処理サーバ11は、前景の画像オブジェクトと背景の画像オブジェクトとが混ざり合うことにより生ずる歪みの量を調整する。
【0111】
図31は、動いている前景に対応するオブジェクトと、静止している背景に対応するオブジェクトとを撮像して得られる画像を説明する図である。図31(A)は、動きを伴う前景に対応するオブジェクトと、静止している背景に対応するオブジェクトとを撮像して得られる画像を示している。図31(A)に示す例において、前景に対応するオブジェクトは、画面に対して水平に左から右に動いている。
【0112】
図31(B)は、図31(A)に示す画像の1つのラインに対応する画素値を時間方向に展開したモデル図である。図31(B)の横方向は、図31(A)の空間方向Xに対応している。
【0113】
背景領域の画素は、背景の成分、すなわち、背景のオブジェクトに対応する画像の成分のみから、その画素値が構成されている。前景領域の画素は、前景の成分、すなわち、前景のオブジェクトに対応する画像の成分のみから、その画素値が構成されている。
【0114】
混合領域の画素は、背景の成分、および前景の成分から、その画素値が構成されている。混合領域は、背景の成分、および前景の成分から、その画素値が構成されているので、歪み領域ともいえる。混合領域は、更に、カバードバックグラウンド領域およびアンカバードバックグラウンド領域に分類される。
【0115】
カバードバックグラウンド領域は、前景領域に対して、前景のオブジェクトの進行方向の前端部に対応する位置の混合領域であり、時間の経過に対応して背景成分が前景に覆い隠される領域をいう。
【0116】
これに対して、アンカバードバックグラウンド領域は、前景領域に対して、前景のオブジェクトの進行方向の後端部に対応する位置の混合領域であり、時間の経過に対応して背景成分が現れる領域をいう。
【0117】
このように、前景領域、背景領域、またはカバードバックグラウンド領域若しくはアンカバードバックグラウンド領域を含む画像が、領域特定部103、混合比算出部104、および前景背景分離部105に入力画像として入力される。
【0118】
図32は、以上のような、背景領域、前景領域、混合領域、カバードバックグラウンド領域、およびアンカバードバックグラウンド領域を説明する図である。図31に示す画像に対応する場合、背景領域は、静止部分であり、前景領域は、動き部分であり、混合領域のカバードバックグラウンド領域は、背景から前景に変化する部分であり、混合領域のアンカバードバックグラウンド領域は、前景から背景に変化する部分である。
【0119】
図33は、静止している前景に対応するオブジェクトおよび静止している背景に対応するオブジェクトを撮像した画像における、隣接して1列に並んでいる画素の画素値を時間方向に展開したモデル図である。例えば、隣接して1列に並んでいる画素として、画面の1つのライン上に並んでいる画素を選択することができる。
【0120】
図33に示すF01乃至F04の画素値は、静止している前景のオブジェクトに対応する画素の画素値である。図33に示すB01乃至B04の画素値は、静止している背景のオブジェクトに対応する画素の画素値である。
【0121】
図33における縦方向は、時間に対応し、図中の上から下に向かって時間が経過する。図33中の矩形の上辺の位置は、センサ76aが入力された光の電荷への変換を開始する時刻に対応し、図33中の矩形の下辺の位置は、センサ76aが入力された光の電荷への変換を終了する時刻に対応する。すなわち、図33中の矩形の上辺から下辺までの距離は、シャッタ時間に対応する。
【0122】
以下において、シャッタ時間とフレーム間隔とが同一である場合を例に説明する。
【0123】
図33における横方向は、図31で説明した空間方向Xに対応する。より具体的には、図33に示す例において、図33中の”F01”と記載された矩形の左辺から”B04”と記載された矩形の右辺までの距離は、画素のピッチの8倍、すなわち、連続している8つの画素の間隔に対応する。
【0124】
前景のオブジェクトおよび背景のオブジェクトが静止している場合、シャッタ時間に対応する期間において、センサ76aに入力される光は変化しない。
【0125】
ここで、シャッタ時間に対応する期間を2つ以上の同じ長さの期間に分割する。例えば、仮想分割数を4とすると、図33に示すモデル図は、図9に示すモデルとして表すことができる。仮想分割数は、前景に対応するオブジェクトのシャッタ時間内での動き量vなどに対応して設定される。例えば、4である動き量vに対応して、仮想分割数は、4とされ、シャッタ時間に対応する期間は4つに分割される。
【0126】
図中の最も上の行は、シャッタが開いて最初の、分割された期間に対応する。図中の上から2番目の行は、シャッタが開いて2番目の、分割された期間に対応する。図中の上から3番目の行は、シャッタが開いて3番目の、分割された期間に対応する。図中の上から4番目の行は、シャッタが開いて4番目の、分割された期間に対応する。
【0127】
以下、動き量vに対応して分割されたシャッタ時間をシャッタ時間/vとも称する。
【0128】
前景に対応するオブジェクトが静止しているとき、センサ76aに入力される光は変化しないので、前景の成分F01/vは、画素値F01を仮想分割数で除した値に等しい。同様に、前景に対応するオブジェクトが静止しているとき、前景の成分F02/vは、画素値F02を仮想分割数で除した値に等しく、前景の成分F03/vは、画素値F03を仮想分割数で除した値に等しく、前景の成分F04/vは、画素値F04を仮想分割数で除した値に等しい。
【0129】
背景に対応するオブジェクトが静止しているとき、センサ76aに入力される光は変化しないので、背景の成分B01/vは、画素値B01を仮想分割数で除した値に等しい。同様に、背景に対応するオブジェクトが静止しているとき、背景の成分B02/vは、画素値B02を仮想分割数で除した値に等しく、B03/vは、画素値B03を仮想分割数で除した値に等しく、B04/vは、画素値B04を仮想分割数で除した値に等しい。
【0130】
すなわち、前景に対応するオブジェクトが静止している場合、シャッタ時間に対応する期間において、センサ76aに入力される前景のオブジェクトに対応する光が変化しないので、シャッタが開いて最初の、シャッタ時間/vに対応する前景の成分F01/vと、シャッタが開いて2番目の、シャッタ時間/vに対応する前景の成分F01/vと、シャッタが開いて3番目の、シャッタ時間/vに対応する前景の成分F01/vと、シャッタが開いて4番目の、シャッタ時間/vに対応する前景の成分F01/vとは、同じ値となる。F02/v乃至F04/vも、F01/vと同様の関係を有する。
【0131】
背景に対応するオブジェクトが静止している場合、シャッタ時間に対応する期間において、センサ76aに入力される背景のオブジェクトに対応する光は変化しないので、シャッタが開いて最初の、シャッタ時間/vに対応する背景の成分B01/vと、シャッタが開いて2番目の、シャッタ時間/vに対応する背景の成分B01/vと、シャッタが開いて3番目の、シャッタ時間/vに対応する背景の成分B01/vと、シャッタが開いて4番目の、シャッタ時間/vに対応する背景の成分B01/vとは、同じ値となる。B02/v乃至B04/vも、同様の関係を有する。
【0132】
次に、前景に対応するオブジェクトが移動し、背景に対応するオブジェクトが静止している場合について説明する。
【0133】
図35は、前景に対応するオブジェクトが図中の右側に向かって移動する場合の、カバードバックグラウンド領域を含む、1つのライン上の画素の画素値を時間方向に展開したモデル図である。図35において、前景の動き量vは、4である。1フレームは短い時間なので、前景に対応するオブジェクトが剛体であり、等速で移動していると仮定することができる。図35において、前景に対応するオブジェクトの画像は、あるフレームを基準として次のフレームにおいて4画素分右側に表示されるように移動する。
【0134】
図35において、最も左側の画素乃至左から4番目の画素は、前景領域に属する。図35において、左から5番目乃至左から7番目の画素は、カバードバックグラウンド領域である混合領域に属する。図35において、最も右側の画素は、背景領域に属する。
【0135】
前景に対応するオブジェクトが時間の経過と共に背景に対応するオブジェクトを覆い隠すように移動しているので、カバードバックグラウンド領域に属する画素の画素値に含まれる成分は、シャッタ時間に対応する期間のある時点で、背景の成分から、前景の成分に替わる。
【0136】
例えば、図35中に太線枠を付した画素値Mは、式(1)で表される。
【0137】
M=B02/v+B02/v+F07/v+F06/v (1)
【0138】
例えば、左から5番目の画素は、1つのシャッタ時間/vに対応する背景の成分を含み、3つのシャッタ時間/vに対応する前景の成分を含むので、左から5番目の画素の混合比αは、1/4である。左から6番目の画素は、2つのシャッタ時間/vに対応する背景の成分を含み、2つのシャッタ時間/vに対応する前景の成分を含むので、左から6番目の画素の混合比αは、1/2である。左から7番目の画素は、3つのシャッタ時間/vに対応する背景の成分を含み、1つのシャッタ時間/vに対応する前景の成分を含むので、左から7番目の画素の混合比αは、3/4である。
【0139】
前景に対応するオブジェクトが、剛体であり、前景の画像が次のフレームにおいて4画素右側に表示されるように等速で移動すると仮定できるので、例えば、図35中の左から4番目の画素の、シャッタが開いて最初の、シャッタ時間/vの前景の成分F07/vは、図35中の左から5番目の画素の、シャッタが開いて2番目のシャッタ時間/vに対応する前景の成分に等しい。同様に、前景の成分F07/vは、図35中の左から6番目の画素の、シャッタが開いて3番目のシャッタ時間/vに対応する前景の成分と、図35中の左から7番目の画素の、シャッタが開いて4番目のシャッタ時間/vに対応する前景の成分とに、それぞれ等しい。
【0140】
前景に対応するオブジェクトが、剛体であり、前景の画像が次のフレームにおいて4画素右側に表示されるように等速で移動すると仮定できるので、例えば、図35中の左から3番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分F06/vは、図35中の左から4番目の画素の、シャッタが開いて2番目のシャッタ時間/vに対応する前景の成分に等しい。同様に、前景の成分F06/vは、図35中の左から5番目の画素の、シャッタが開いて3番目のシャッタ時間/vに対応する前景の成分と、図35中の左から6番目の画素の、シャッタが開いて4番目のシャッタ時間/vに対応する前景の成分とに、それぞれ等しい。
【0141】
前景に対応するオブジェクトが、剛体であり、前景の画像が次のフレームにおいて4画素右側に表示されるように等速で移動すると仮定できるので、例えば、図35中の左から2番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分F05/vは、図35中の左から3番目の画素の、シャッタが開いて2番目のシャッタ時間/vに対応する前景の成分に等しい。同様に、前景の成分F05/vは、図35中の左から4番目の画素の、シャッタが開いて3番目のシャッタ時間/vに対応する前景の成分と、図35中の左から5番目の画素の、シャッタが開いて4番目のシャッタ時間/vに対応する前景の成分とに、それぞれ等しい。
【0142】
前景に対応するオブジェクトが、剛体であり、前景の画像が次のフレームにおいて4画素右側に表示されるように等速で移動すると仮定できるので、例えば、図35中の最も左側の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分F04/vは、図35中の左から2番目の画素の、シャッタが開いて2番目のシャッタ時間/vに対応する前景の成分に等しい。同様に、前景の成分F04/vは、図35中の左から3番目の画素の、シャッタが開いて3番目のシャッタ時間/vに対応する前景の成分と、図35中の左から4番目の画素の、シャッタが開いて4番目のシャッタ時間/vに対応する前景の成分とに、それぞれ等しい。
【0143】
動いているオブジェクトに対応する前景の領域は、このように動きボケを含むので、歪み領域とも言える。
【0144】
図36は、前景が図中の右側に向かって移動する場合の、アンカバードバックグラウンド領域を含む、1つのライン上の画素の画素値を時間方向に展開したモデル図である。図36において、前景の動き量vは、4である。1フレームは短い時間なので、前景に対応するオブジェクトが剛体であり、等速で移動していると仮定することができる。図36において、前景に対応するオブジェクトの画像は、あるフレームを基準として次のフレームにおいて4画素分右側に移動する。
【0145】
図36において、最も左側の画素乃至左から4番目の画素は、背景領域に属する。図36において、左から5番目乃至左から7番目の画素は、アンカバードバックグラウンドである混合領域に属する。図36において、最も右側の画素は、前景領域に属する。
【0146】
背景に対応するオブジェクトを覆っていた前景に対応するオブジェクトが時間の経過と共に背景に対応するオブジェクトの前から取り除かれるように移動しているので、アンカバードバックグラウンド領域に属する画素の画素値に含まれる成分は、シャッタ時間に対応する期間のある時点で、前景の成分から、背景の成分に替わる。
【0147】
例えば、図36中に太線枠を付した画素値M'は、式(2)で表される。
【0148】
M'=F02/v+F01/v+B26/v+B26/v (2)
【0149】
例えば、左から5番目の画素は、3つのシャッタ時間/vに対応する背景の成分を含み、1つのシャッタ時間/vに対応する前景の成分を含むので、左から5番目の画素の混合比αは、3/4である。左から6番目の画素は、2つのシャッタ時間/vに対応する背景の成分を含み、2つのシャッタ時間/vに対応する前景の成分を含むので、左から6番目の画素の混合比αは、1/2である。左から7番目の画素は、1つのシャッタ時間/vに対応する背景の成分を含み、3つのシャッタ時間/vに対応する前景の成分を含むので、左から7番目の画素の混合比αは、1/4である。
【0150】
式(1)および式(2)をより一般化すると、画素値Mは、式(3)で表される。
【0151】
【数1】

Figure 0004701547
ここで、αは、混合比である。Bは、背景の画素値であり、Fi/vは、前景の成分である。
【0152】
前景に対応するオブジェクトが剛体であり、等速で動くと仮定でき、かつ、動き量vが4であるので、例えば、図36中の左から5番目の画素の、シャッタが開いて最初の、シャッタ時間/vの前景の成分F01/vは、図36中の左から6番目の画素の、シャッタが開いて2番目のシャッタ時間/vに対応する前景の成分に等しい。同様に、F01/vは、図36中の左から7番目の画素の、シャッタが開いて3番目のシャッタ時間/vに対応する前景の成分と、図36中の左から8番目の画素の、シャッタが開いて4番目のシャッタ時間/vに対応する前景の成分とに、それぞれ等しい。
【0153】
前景に対応するオブジェクトが剛体であり、等速で動くと仮定でき、かつ、仮想分割数が4であるので、例えば、図36中の左から6番目の画素の、シャッタが開いて最初の、シャッタ時間/vの前景の成分F02/vは、図36中の左から7番目の画素の、シャッタが開いて2番目のシャッタ時間/vに対応する前景の成分に等しい。同様に、前景の成分F02/vは、図36中の左から8番目の画素の、シャッタが開いて3番目のシャッタ時間/vに対応する前景の成分に等しい。
【0154】
前景に対応するオブジェクトが剛体であり、等速で動くと仮定でき、かつ、動き量vが4であるので、例えば、図36中の左から7番目の画素の、シャッタが開いて最初の、シャッタ時間/vの前景の成分F03/vは、図36中の左から8番目の画素の、シャッタが開いて2番目のシャッタ時間/vに対応する前景の成分に等しい。
【0155】
図34乃至図36の説明において、仮想分割数は、4であるとして説明したが、仮想分割数は、動き量vに対応する。動き量vは、一般に、前景に対応するオブジェクトの移動速度に対応する。例えば、前景に対応するオブジェクトが、あるフレームを基準として次のフレームにおいて4画素分右側に表示されるように移動しているとき、動き量vは、4とされる。動き量vに対応し、仮想分割数は、4とされる。同様に、例えば、前景に対応するオブジェクトが、あるフレームを基準として次のフレームにおいて6画素分左側に表示されるように移動しているとき、動き量vは、6とされ、仮想分割数は、6とされる。
【0156】
図37および図38に、以上で説明した、前景領域、背景領域、カバードバックグラウンド領域若しくはアンカバードバックグラウンド領域から成る混合領域と、分割されたシャッタ時間に対応する前景の成分および背景の成分との関係を示す。
【0157】
図37は、静止している背景の前を移動しているオブジェクトに対応する前景を含む画像から、前景領域、背景領域、および混合領域の画素を抽出した例を示す。図37に示す例において、前景に対応するオブジェクトは、画面に対して水平に移動している。
【0158】
フレーム#n+1は、フレーム#nの次のフレームであり、フレーム#n+2は、フレーム#n+1の次のフレームである。
【0159】
フレーム#n乃至フレーム#n+2のいずれかから抽出した、前景領域、背景領域、および混合領域の画素を抽出して、動き量vを4として、抽出された画素の画素値を時間方向に展開したモデルを図38に示す。
【0160】
前景領域の画素値は、前景に対応するオブジェクトが移動するので、シャッタ時間/vの期間に対応する、4つの異なる前景の成分から構成される。例えば、図38に示す前景領域の画素のうち最も左側に位置する画素は、F01/v,F02/v,F03/v、およびF04/vから構成される。すなわち、前景領域の画素は、動きボケを含んでいる。
【0161】
背景に対応するオブジェクトが静止しているので、シャッタ時間に対応する期間において、センサ76aに入力される背景に対応する光は変化しない。この場合、背景領域の画素値は、動きボケを含まない。
【0162】
カバードバックグラウンド領域若しくはアンカバードバックグラウンド領域から成る混合領域に属する画素の画素値は、前景の成分と、背景の成分とから構成される。
【0163】
次に、オブジェクトに対応する画像が動いているとき、複数のフレームにおける、隣接して1列に並んでいる画素であって、フレーム上で同一の位置の画素の画素値を時間方向に展開したモデルについて説明する。例えば、オブジェクトに対応する画像が画面に対して水平に動いているとき、隣接して1列に並んでいる画素として、画面の1つのライン上に並んでいる画素を選択することができる。
【0164】
図39は、静止している背景に対応するオブジェクトを撮像した画像の3つのフレームの、隣接して1列に並んでいる画素であって、フレーム上で同一の位置の画素の画素値を時間方向に展開したモデル図である。フレーム#nは、フレーム#n-1の次のフレームであり、フレーム#n+1は、フレーム#nの次のフレームである。他のフレームも同様に称する。
【0165】
図39に示すB01乃至B12の画素値は、静止している背景のオブジェクトに対応する画素の画素値である。背景に対応するオブジェクトが静止しているので、フレーム#n-1乃至フレームn+1において、対応する画素の画素値は、変化しない。例えば、フレーム#n-1におけるB05の画素値を有する画素の位置に対応する、フレーム#nにおける画素、およびフレーム#n+1における画素は、それぞれ、B05の画素値を有する。
【0166】
図40は、静止している背景に対応するオブジェクトと共に図中の右側に移動する前景に対応するオブジェクトを撮像した画像の3つのフレームの、隣接して1列に並んでいる画素であって、フレーム上で同一の位置の画素の画素値を時間方向に展開したモデル図である。図40に示すモデルは、カバードバックグラウンド領域を含む。
【0167】
図40において、前景に対応するオブジェクトが、剛体であり、等速で移動すると仮定でき、前景の画像が次のフレームにおいて4画素右側に表示されるように移動するので、前景の動き量vは、4であり、仮想分割数は、4である。
【0168】
例えば、図40中のフレーム#n-1の最も左側の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F12/vとなり、図40中の左から2番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分も、F12/vとなる。図40中の左から3番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分、および図40中の左から4番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F12/vとなる。
【0169】
図40中のフレーム#n-1の最も左側の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分は、F11/vとなり、図40中の左から2番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分も、F11/vとなる。図40中の左から3番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F11/vとなる。
【0170】
図40中のフレーム#n-1の最も左側の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分は、F10/vとなり、図40中の左から2番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分も、F10/vとなる。図40中のフレーム#n-1の最も左側の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F09/vとなる。
【0171】
背景に対応するオブジェクトが静止しているので、図40中のフレーム#n-1の左から2番目の画素の、シャッタが開いて最初のシャッタ時間/vの背景の成分は、B01/vとなる。図40中のフレーム#n-1の左から3番目の画素の、シャッタが開いて最初および2番目のシャッタ時間/vの背景の成分は、B02/vとなる。図40中のフレーム#n-1の左から4番目の画素の、シャッタが開いて最初乃至3番目のシャッタ時間/vの背景の成分は、B03/vとなる。
【0172】
図40中のフレーム#n-1において、最も左側の画素は、前景領域に属し、左側から2番目乃至4番目の画素は、カバードバックグラウンド領域である混合領域に属する。
【0173】
図40中のフレーム#n-1の左から5番目の画素乃至12番目の画素は、背景領域に属し、その画素値は、それぞれ、B04乃至B11となる。
【0174】
図40中のフレーム#nの左から1番目の画素乃至5番目の画素は、前景領域に属する。フレーム#nの前景領域における、シャッタ時間/vの前景の成分は、F05/v乃至F12/vのいずれかである。
【0175】
前景に対応するオブジェクトが、剛体であり、等速で移動すると仮定でき、前景の画像が次のフレームにおいて4画素右側に表示されるように移動するので、図40中のフレーム#nの左から5番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F12/vとなり、図40中の左から6番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分も、F12/vとなる。図40中の左から7番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分、および図40中の左から8番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F12/vとなる。
【0176】
図40中のフレーム#nの左から5番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分は、F11/vとなり、図40中の左から6番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分も、F11/vとなる。図40中の左から7番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F11/vとなる。
【0177】
図40中のフレーム#nの左から5番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分は、F10/vとなり、図40中の左から6番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分も、F10/vとなる。図40中のフレーム#nの左から5番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F09/vとなる。
【0178】
背景に対応するオブジェクトが静止しているので、図40中のフレーム#nの左から6番目の画素の、シャッタが開いて最初のシャッタ時間/vの背景の成分は、B05/vとなる。図40中のフレーム#nの左から7番目の画素の、シャッタが開いて最初および2番目のシャッタ時間/vの背景の成分は、B06/vとなる。図40中のフレーム#nの左から8番目の画素の、シャッタが開いて最初乃至3番目の、シャッタ時間/vの背景の成分は、B07/vとなる。
【0179】
図40中のフレーム#nにおいて、左側から6番目乃至8番目の画素は、カバードバックグラウンド領域である混合領域に属する。
【0180】
図40中のフレーム#nの左から9番目の画素乃至12番目の画素は、背景領域に属し、画素値は、それぞれ、B08乃至B11となる。
【0181】
図40中のフレーム#n+1の左から1番目の画素乃至9番目の画素は、前景領域に属する。フレーム#n+1の前景領域における、シャッタ時間/vの前景の成分は、F01/v乃至F12/vのいずれかである。
【0182】
前景に対応するオブジェクトが、剛体であり、等速で移動すると仮定でき、前景の画像が次のフレームにおいて4画素右側に表示されるように移動するので、図40中のフレーム#n+1の左から9番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F12/vとなり、図40中の左から10番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分も、F12/vとなる。図40中の左から11番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分、および図40中の左から12番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F12/vとなる。
【0183】
図40中のフレーム#n+1の左から9番目の画素の、シャッタが開いて2番目のシャッタ時間/vの期間の前景の成分は、F11/vとなり、図40中の左から10番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分も、F11/vとなる。図40中の左から11番目の画素の、シャッタが開いて4番目の、シャッタ時間/vの前景の成分は、F11/vとなる。
【0184】
図40中のフレーム#n+1の左から9番目の画素の、シャッタが開いて3番目の、シャッタ時間/vの前景の成分は、F10/vとなり、図40中の左から10番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分も、F10/vとなる。図40中のフレーム#n+1の左から9番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F09/vとなる。
【0185】
背景に対応するオブジェクトが静止しているので、図40中のフレーム#n+1の左から10番目の画素の、シャッタが開いて最初のシャッタ時間/vの背景の成分は、B09/vとなる。図40中のフレーム#n+1の左から11番目の画素の、シャッタが開いて最初および2番目のシャッタ時間/vの背景の成分は、B10/vとなる。図40中のフレーム#n+1の左から12番目の画素の、シャッタが開いて最初乃至3番目の、シャッタ時間/vの背景の成分は、B11/vとなる。
【0186】
図40中のフレーム#n+1において、左側から10番目乃至12番目の画素は、カバードバックグラウンド領域である混合領域に対応する。
【0187】
図41は、図40に示す画素値から前景の成分を抽出した画像のモデル図である。
【0188】
図42は、静止している背景と共に図中の右側に移動するオブジェクトに対応する前景を撮像した画像の3つのフレームの、隣接して1列に並んでいる画素であって、フレーム上で同一の位置の画素の画素値を時間方向に展開したモデル図である。図42において、アンカバードバックグラウンド領域が含まれている。
【0189】
図42において、前景に対応するオブジェクトは、剛体であり、かつ等速で移動していると仮定できる。前景に対応するオブジェクトが、次のフレームにおいて4画素分右側に表示されるように移動しているので、動き量vは、4である。
【0190】
例えば、図42中のフレーム#n-1の最も左側の画素の、シャッタが開いて最初の、シャッタ時間/vの前景の成分は、F13/vとなり、図42中の左から2番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分も、F13/vとなる。図42中の左から3番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分、および図42中の左から4番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F13/vとなる。
【0191】
図42中のフレーム#n-1の左から2番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F14/vとなり、図42中の左から3番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分も、F14/vとなる。図42中の左から3番目の画素の、シャッタが開いて最初の、シャッタ時間/vの前景の成分は、F15/vとなる。
【0192】
背景に対応するオブジェクトが静止しているので、図42中のフレーム#n-1の最も左側の画素の、シャッタが開いて2番目乃至4番目の、シャッタ時間/vの背景の成分は、B25/vとなる。図42中のフレーム#n-1の左から2番目の画素の、シャッタが開いて3番目および4番目の、シャッタ時間/vの背景の成分は、B26/vとなる。図42中のフレーム#n-1の左から3番目の画素の、シャッタが開いて4番目のシャッタ時間/vの背景の成分は、B27/vとなる。
【0193】
図42中のフレーム#n-1において、最も左側の画素乃至3番目の画素は、アンカバードバックグラウンド領域である混合領域に属する。
【0194】
図42中のフレーム#n-1の左から4番目の画素乃至12番目の画素は、前景領域に属する。フレームの前景の成分は、F13/v乃至F24/vのいずれかである。
【0195】
図42中のフレーム#nの最も左側の画素乃至左から4番目の画素は、背景領域に属し、画素値は、それぞれ、B25乃至B28となる。
【0196】
前景に対応するオブジェクトが、剛体であり、等速で移動すると仮定でき、前景の画像が次のフレームにおいて4画素右側に表示されるように移動するので、図42中のフレーム#nの左から5番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F13/vとなり、図42中の左から6番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分も、F13/vとなる。図42中の左から7番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分、および図42中の左から8番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F13/vとなる。
【0197】
図42中のフレーム#nの左から6番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F14/vとなり、図42中の左から7番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分も、F14/vとなる。図42中の左から8番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F15/vとなる。
【0198】
背景に対応するオブジェクトが静止しているので、図42中のフレーム#nの左から5番目の画素の、シャッタが開いて2番目乃至4番目のシャッタ時間/vの背景の成分は、B29/vとなる。図42中のフレーム#nの左から6番目の画素の、シャッタが開いて3番目および4番目のシャッタ時間/vの背景の成分は、B30/vとなる。図42中のフレーム#nの左から7番目の画素の、シャッタが開いて4番目のシャッタ時間/vの背景の成分は、B31/vとなる。
【0199】
図42中のフレーム#nにおいて、左から5番目の画素乃至7番目の画素は、アンカバードバックグラウンド領域である混合領域に属する。
【0200】
図42中のフレーム#nの左から8番目の画素乃至12番目の画素は、前景領域に属する。フレーム#nの前景領域における、シャッタ時間/vの期間に対応する値は、F13/v乃至F20/vのいずれかである。
【0201】
図42中のフレーム#n+1の最も左側の画素乃至左から8番目の画素は、背景領域に属し、画素値は、それぞれ、B25乃至B32となる。
【0202】
前景に対応するオブジェクトが、剛体であり、等速で移動すると仮定でき、前景の画像が次のフレームにおいて4画素右側に表示されるように移動するので、図42中のフレーム#n+1の左から9番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F13/vとなり、図42中の左から10番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分も、F13/vとなる。図42中の左から11番目の画素の、シャッタが開いて3番目のシャッタ時間/vの前景の成分、および図42中の左から12番目の画素の、シャッタが開いて4番目のシャッタ時間/vの前景の成分は、F13/vとなる。
【0203】
図42中のフレーム#n+1の左から10番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F14/vとなり、図42中の左から11番目の画素の、シャッタが開いて2番目のシャッタ時間/vの前景の成分も、F14/vとなる。図42中の左から12番目の画素の、シャッタが開いて最初のシャッタ時間/vの前景の成分は、F15/vとなる。
【0204】
背景に対応するオブジェクトが静止しているので、図42中のフレーム#n+1の左から9番目の画素の、シャッタが開いて2番目乃至4番目の、シャッタ時間/vの背景の成分は、B33/vとなる。図42中のフレーム#n+1の左から10番目の画素の、シャッタが開いて3番目および4番目のシャッタ時間/vの背景の成分は、B34/vとなる。図42中のフレーム#n+1の左から11番目の画素の、シャッタが開いて4番目のシャッタ時間/vの背景の成分は、B35/vとなる。
【0205】
図42中のフレーム#n+1において、左から9番目の画素乃至11番目の画素は、アンカバードバックグラウンド領域である混合領域に属する。
【0206】
図42中のフレーム#n+1の左から12番目の画素は、前景領域に属する。フレーム#n+1の前景領域における、シャッタ時間/vの前景の成分は、F13/v乃至F16/vのいずれかである。
【0207】
図43は、図42に示す画素値から前景の成分を抽出した画像のモデル図である。
【0208】
図27に戻り、領域特定部103は、複数のフレームの画素値を用いて、前景領域、背景領域、カバードバックグラウンド領域、またはアンカバードバックグラウンド領域に属することを示すフラグを画素毎に対応付けて、領域情報として、混合比算出部104および動きボケ調整部106に供給する。
【0209】
混合比算出部104は、複数のフレームの画素値、および領域情報を基に、混合領域に含まれる画素について画素毎に混合比αを算出し、算出した混合比αを前景背景分離部105に供給する。
【0210】
前景背景分離部105は、複数のフレームの画素値、領域情報、および混合比αを基に、前景の成分のみからなる前景成分画像を抽出して、動きボケ調整部106に供給する。
【0211】
動きボケ調整部106は、前景背景分離部105から供給された前景成分画像、動き検出部102から供給された動きベクトル、および領域特定部103から供給された領域情報を基に、前景成分画像に含まれる動きボケの量を調整して、動きボケの量を調整した前景成分画像を出力する。
【0212】
図44のフローチャートを参照して、分離処理サーバ11による動きボケの量の調整の処理を説明する。ステップS11において、領域特定部103は、入力画像を基に、入力画像の画素毎に前景領域、背景領域、カバードバックグラウンド領域、またはアンカバードバックグラウンド領域のいずれかに属するかを示す領域情報を生成する領域特定の処理を実行する。領域特定の処理の詳細は、後述する。領域特定部103は、生成した領域情報を混合比算出部104に供給する。
【0213】
なお、ステップS11において、領域特定部103は、入力画像を基に、入力画像の画素毎に前景領域、背景領域、または混合領域(カバードバックグラウンド領域、またはアンカバードバックグラウンド領域の区別をしない)のいずれかに属するかを示す領域情報を生成するようにしてもよい。この場合において、前景背景分離部105および動きボケ調整部106は、動きベクトルの方向を基に、混合領域がカバードバックグラウンド領域であるか、またはアンカバードバックグラウンド領域であるかを判定する。例えば、動きベクトルの方向に対応して、前景領域、混合領域、および背景領域と順に並んでいるとき、その混合領域は、カバードバックグラウンド領域と判定され、動きベクトルの方向に対応して、背景領域、混合領域、および前景領域と順に並んでいるとき、その混合領域は、アンカバードバックグラウンド領域と判定される。
【0214】
ステップS12において、混合比算出部104は、入力画像および領域情報を基に、混合領域に含まれる画素毎に、混合比αを算出する。混合比算出の処理の詳細は、後述する。混合比算出部104は、算出した混合比αを前景背景分離部105に供給する。
【0215】
ステップS13において、前景背景分離部105は、領域情報、および混合比αを基に、入力画像から前景の成分を抽出して、前景成分画像として動きボケ調整部106に供給する。
【0216】
ステップS14において、動きボケ調整部106は、動きベクトルおよび領域情報を基に、動き方向に並ぶ連続した画素であって、アンカバードバックグラウンド領域、前景領域、およびカバードバックグラウンド領域のいずれかに属するものの画像上の位置を示す処理単位を生成し、処理単位に対応する前景成分に含まれる動きボケの量を調整する。動きボケの量の調整の処理の詳細については、後述する。
【0217】
ステップS15において、分離処理サーバ11は、画面全体について処理を終了したか否かを判定し、画面全体について処理を終了していないと判定された場合、ステップS14に進み、処理単位に対応する前景の成分を対象とした動きボケの量の調整の処理を繰り返す。
【0218】
ステップS15において、画面全体について処理を終了したと判定された場合、処理は終了する。
【0219】
このように、分離処理サーバ11は、前景と背景を分離して、前景に含まれる動きボケの量を調整することができる。すなわち、分離処理サーバ11は、前景の画素の画素値であるサンプルデータに含まれる動きボケの量を調整することができる。
【0220】
以下、領域特定部103、混合比算出部104、前景背景分離部105、および動きボケ調整部106のそれぞれの構成について説明する。
【0221】
図45は、領域特定部103の構成の一例を示すブロック図である。図45に構成を示す領域特定部103は、動きベクトルを利用しない。フレームメモリ201は、入力された画像をフレーム単位で記憶する。フレームメモリ201は、処理の対象がフレーム#nであるとき、フレーム#nの2つ前のフレームであるフレーム#n-2、フレーム#nの1つ前のフレームであるフレーム#n-1、フレーム#n、フレーム#nの1つ後のフレームであるフレーム#n+1、およびフレーム#nの2つ後のフレームであるフレーム#n+2を記憶する。
【0222】
静動判定部202−1は、フレーム#nの領域特定の対象である画素の画像上の位置と同一の位置にあるフレーム#n+2の画素の画素値、およびフレーム#nの領域特定の対象である画素の画像上の位置と同一の位置にあるフレーム#n+1の画素の画素値をフレームメモリ201から読み出して、読み出した画素値の差の絶対値を算出する。静動判定部202−1は、フレーム#n+2の画素値とフレーム#n+1の画素値との差の絶対値が、予め設定している閾値Thより大きいか否かを判定し、差の絶対値が閾値Thより大きいと判定された場合、動きを示す静動判定を領域判定部203−1に供給する。フレーム#n+2の画素の画素値とフレーム#n+1の画素の画素値との差の絶対値が閾値Th以下であると判定された場合、静動判定部202−1は、静止を示す静動判定を領域判定部203−1に供給する。
【0223】
静動判定部202−2は、フレーム#nの領域特定の対象である画素の画像上の位置と同一の位置にあるフレーム#n+1の画素の画素値、およびフレーム#nの対象となる画素の画素値をフレームメモリ201から読み出して、画素値の差の絶対値を算出する。静動判定部202−2は、フレーム#n+1の画素値とフレーム#nの画素値との差の絶対値が、予め設定している閾値Thより大きいか否かを判定し、画素値の差の絶対値が、閾値Thより大きいと判定された場合、動きを示す静動判定を領域判定部203−1および領域判定部203−2に供給する。フレーム#n+1の画素の画素値とフレーム#nの画素の画素値との差の絶対値が、閾値Th以下であると判定された場合、静動判定部202−2は、静止を示す静動判定を領域判定部203−1および領域判定部203−2に供給する。
【0224】
静動判定部202−3は、フレーム#nの領域特定の対象である画素の画素値、およびフレーム#nの領域特定の対象である画素の画像上の位置と同一の位置にあるフレーム#n-1の画素の画素値をフレームメモリ201から読み出して、画素値の差の絶対値を算出する。静動判定部202−3は、フレーム#nの画素値とフレーム#n-1の画素値との差の絶対値が、予め設定している閾値Thより大きいか否かを判定し、画素値の差の絶対値が、閾値Thより大きいと判定された場合、動きを示す静動判定を領域判定部203−2および領域判定部203−3に供給する。フレーム#nの画素の画素値とフレーム#n-1の画素の画素値との差の絶対値が、閾値Th以下であると判定された場合、静動判定部202−3は、静止を示す静動判定を領域判定部203−2および領域判定部203−3に供給する。
【0225】
静動判定部202−4は、フレーム#nの領域特定の対象である画素の画像上の位置と同一の位置にあるフレーム#n-1の画素の画素値、およびフレーム#nの領域特定の対象である画素の画像上の位置と同一の位置にあるフレーム#n-2の画素の画素値をフレームメモリ201から読み出して、画素値の差の絶対値を算出する。静動判定部202−4は、フレーム#n-1の画素値とフレーム#n-2の画素値との差の絶対値が、予め設定している閾値Thより大きいか否かを判定し、画素値の差の絶対値が、閾値Thより大きいと判定された場合、動きを示す静動判定を領域判定部203−3に供給する。フレーム#n-1の画素の画素値とフレーム#n-2の画素の画素値との差の絶対値が、閾値Th以下であると判定された場合、静動判定部202−4は、静止を示す静動判定を領域判定部203−3に供給する。
【0226】
領域判定部203−1は、静動判定部202−1から供給された静動判定が静止を示し、かつ、静動判定部202−2から供給された静動判定が動きを示しているとき、フレーム#nにおける領域特定の対象である画素がアンカバードバックグラウンド領域に属すると判定し、領域の判定される画素に対応するアンカバードバックグラウンド領域判定フラグに、アンカバードバックグラウンド領域に属することを示す”1”を設定する。
【0227】
領域判定部203−1は、静動判定部202−1から供給された静動判定が動きを示すか、または、静動判定部202−2から供給された静動判定が静止を示しているとき、フレーム#nにおける領域特定の対象である画素がアンカバードバックグラウンド領域に属しないと判定し、領域の判定される画素に対応するアンカバードバックグラウンド領域判定フラグに、アンカバードバックグラウンド領域に属しないことを示す”0”を設定する。
【0228】
領域判定部203−1は、このように”1”または”0”が設定されたアンカバードバックグラウンド領域判定フラグを判定フラグ格納フレームメモリ204に供給する。
【0229】
領域判定部203−2は、静動判定部202−2から供給された静動判定が静止を示し、かつ、静動判定部202−3から供給された静動判定が静止を示しているとき、フレーム#nにおける領域特定の対象である画素が静止領域に属すると判定し、領域の判定される画素に対応する静止領域判定フラグに、静止領域に属することを示す”1”を設定する。
【0230】
領域判定部203−2は、静動判定部202−2から供給された静動判定が動きを示すか、または、静動判定部202−3から供給された静動判定が動きを示しているとき、フレーム#nにおける領域特定の対象である画素が静止領域に属しないと判定し、領域の判定される画素に対応する静止領域判定フラグに、静止領域に属しないことを示す”0”を設定する。
【0231】
領域判定部203−2は、このように”1”または”0”が設定された静止領域判定フラグを判定フラグ格納フレームメモリ204に供給する。
【0232】
領域判定部203−2は、静動判定部202−2から供給された静動判定が動きを示し、かつ、静動判定部202−3から供給された静動判定が動きを示しているとき、フレーム#nにおける領域特定の対象である画素が動き領域に属すると判定し、領域の判定される画素に対応する動き領域判定フラグに、動き領域に属することを示す”1”を設定する。
【0233】
領域判定部203−2は、静動判定部202−2から供給された静動判定が静止を示すか、または、静動判定部202−3から供給された静動判定が静止を示しているとき、フレーム#nにおける領域特定の対象である画素が動き領域に属しないと判定し、領域の判定される画素に対応する動き領域判定フラグに、動き領域に属しないことを示す”0”を設定する。
【0234】
領域判定部203−2は、このように”1”または”0”が設定された動き領域判定フラグを判定フラグ格納フレームメモリ204に供給する。
【0235】
領域判定部203−3は、静動判定部202−3から供給された静動判定が動きを示し、かつ、静動判定部202−4から供給された静動判定が静止を示しているとき、フレーム#nにおける領域特定の対象である画素がカバードバックグラウンド領域に属すると判定し、領域の判定される画素に対応するカバードバックグラウンド領域判定フラグに、カバードバックグラウンド領域に属することを示す”1”を設定する。
【0236】
領域判定部203−3は、静動判定部202−3から供給された静動判定が静止を示すか、または、静動判定部202−4から供給された静動判定が動きを示しているとき、フレーム#nにおける領域特定の対象である画素がカバードバックグラウンド領域に属しないと判定し、領域の判定される画素に対応するカバードバックグラウンド領域判定フラグに、カバードバックグラウンド領域に属しないことを示す”0”を設定する。
【0237】
領域判定部203−3は、このように”1”または”0”が設定されたカバードバックグラウンド領域判定フラグを判定フラグ格納フレームメモリ204に供給する。
【0238】
判定フラグ格納フレームメモリ204は、領域判定部203−1から供給されたアンカバードバックグラウンド領域判定フラグ、領域判定部203−2から供給された静止領域判定フラグ、領域判定部203−2から供給された動き領域判定フラグ、および領域判定部203−3から供給されたカバードバックグラウンド領域判定フラグをそれぞれ記憶する。
【0239】
判定フラグ格納フレームメモリ204は、記憶しているアンカバードバックグラウンド領域判定フラグ、静止領域判定フラグ、動き領域判定フラグ、およびカバードバックグラウンド領域判定フラグを合成部205に供給する。合成部205は、判定フラグ格納フレームメモリ204から供給された、アンカバードバックグラウンド領域判定フラグ、静止領域判定フラグ、動き領域判定フラグ、およびカバードバックグラウンド領域判定フラグを基に、各画素が、アンカバードバックグラウンド領域、静止領域、動き領域、およびカバードバックグラウンド領域のいずれかに属することを示す領域情報を生成し、判定フラグ格納フレームメモリ206に供給する。
【0240】
判定フラグ格納フレームメモリ206は、合成部205から供給された領域情報を記憶すると共に、記憶している領域情報を出力する。
【0241】
次に、領域特定部103の処理の例を図46乃至図50を参照して説明する。
【0242】
前景に対応するオブジェクトが移動しているとき、オブジェクトに対応する画像の画面上の位置は、フレーム毎に変化する。図46に示すように、フレーム#nにおいて、Yn(x,y)で示される位置に位置するオブジェクトに対応する画像は、次のフレームであるフレーム#n+1において、Yn+1(x,y)に位置する。
【0243】
前景のオブジェクトに対応する画像の動き方向に隣接して1列に並ぶ画素の画素値を時間方向に展開したモデル図を図22に示す。例えば、前景のオブジェクトに対応する画像の動き方向が画面に対して水平であるとき、図47におけるモデル図は、1つのライン上の隣接する画素の画素値を時間方向に展開したモデルを示す。
【0244】
図47において、フレーム#nにおけるラインは、フレーム#n+1におけるラインと同一である。
【0245】
フレーム#nにおいて、左から2番目の画素乃至13番目の画素に含まれているオブジェクトに対応する前景の成分は、フレーム#n+1において、左から6番目乃至17番目の画素に含まれる。
【0246】
フレーム#nにおいて、カバードバックグラウンド領域に属する画素は、左から11番目乃至13番目の画素であり、アンカバードバックグラウンド領域に属する画素は、左から2番目乃至4番目の画素である。フレーム#n+1において、カバードバックグラウンド領域に属する画素は、左から15番目乃至17番目の画素であり、アンカバードバックグラウンド領域に属する画素は、左から6番目乃至8番目の画素である。
【0247】
図47に示す例において、フレーム#nに含まれる前景の成分が、フレーム#n+1において4画素移動しているので、動き量vは、4である。仮想分割数は、動き量vに対応し、4である。
【0248】
次に、注目しているフレームの前後における混合領域に属する画素の画素値の変化について説明する。
【0249】
図48に示す、背景が静止し、前景の動き量vが4であるフレーム#nにおいて、カバードバックグラウンド領域に属する画素は、左から15番目乃至17番目の画素である。動き量vが4であるので、1つ前のフレーム#n-1において、左から15番目乃至17番目の画素は、背景の成分のみを含み、背景領域に属する。また、更に1つ前のフレーム#n-2において、左から15番目乃至17番目の画素は、背景の成分のみを含み、背景領域に属する。
【0250】
ここで、背景に対応するオブジェクトが静止しているので、フレーム#n-1の左から15番目の画素の画素値は、フレーム#n-2の左から15番目の画素の画素値から変化しない。同様に、フレーム#n-1の左から16番目の画素の画素値は、フレーム#n-2の左から16番目の画素の画素値から変化せず、フレーム#n-1の左から17番目の画素の画素値は、フレーム#n-2の左から17番目の画素の画素値から変化しない。
【0251】
すなわち、フレーム#nにおけるカバードバックグラウンド領域に属する画素に対応する、フレーム#n-1およびフレーム#n-2の画素は、背景の成分のみから成り、画素値が変化しないので、その差の絶対値は、ほぼ0の値となる。従って、フレーム#nにおける混合領域に属する画素に対応する、フレーム#n-1およびフレーム#n-2の画素に対する静動判定は、静動判定部202−4により、静止と判定される。
【0252】
フレーム#nにおけるカバードバックグラウンド領域に属する画素は、前景の成分を含むので、フレーム#n-1における背景の成分のみから成る場合と、画素値が異なる。従って、フレーム#nにおける混合領域に属する画素、および対応するフレーム#n-1の画素に対する静動判定は、静動判定部202−3により、動きと判定される。
【0253】
このように、領域判定部203−3は、静動判定部202−3から動きを示す静動判定の結果が供給され、静動判定部202−4から静止を示す静動判定の結果が供給されたとき、対応する画素がカバードバックグラウンド領域に属すると判定する。
【0254】
図49に示す、背景が静止し、前景の動き量vが4であるフレーム#nにおいて、アンカバードバックグラウンド領域に含まれる画素は、左から2番目乃至4番目の画素である。動き量vが4であるので、1つ後のフレーム#n+1において、左から2番目乃至4番目の画素は、背景の成分のみを含み、背景領域に属する。また、更に1つ後のフレーム#n+2において、左から2番目乃至4番目の画素は、背景の成分のみを含み、背景領域に属する。
【0255】
ここで、背景に対応するオブジェクトが静止しているので、フレーム#n+2の左から2番目の画素の画素値は、フレーム#n+1の左から2番目の画素の画素値から変化しない。同様に、フレーム#n+2の左から3番目の画素の画素値は、フレーム#n+1の左から3番目の画素の画素値から変化せず、フレーム#n+2の左から4番目の画素の画素値は、フレーム#n+1の左から4番目の画素の画素値から変化しない。
【0256】
すなわち、フレーム#nにおけるアンカバードバックグラウンド領域に属する画素に対応する、フレーム#n+1およびフレーム#n+2の画素は、背景の成分のみから成り、画素値が変化しないので、その差の絶対値は、ほぼ0の値となる。従って、フレーム#nにおける混合領域に属する画素に対応する、フレーム#n+1およびフレーム#n+2の画素に対する静動判定は、静動判定部202−1により、静止と判定される。
【0257】
フレーム#nにおけるアンカバードバックグラウンド領域に属する画素は、前景の成分を含むので、フレーム#n+1における背景の成分のみから成る場合と、画素値が異なる。従って、フレーム#nにおける混合領域に属する画素、および対応するフレーム#n+1の画素に対する静動判定は、静動判定部202−2により、動きと判定される。
【0258】
このように、領域判定部203−1は、静動判定部202−2から動きを示す静動判定の結果が供給され、静動判定部202−1から静止を示す静動判定の結果が供給されたとき、対応する画素がアンカバードバックグラウンド領域に属すると判定する。
【0259】
図50は、フレーム#nにおける領域特定部103の判定条件を示す図である。フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n-2の画素と、フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n-1の画素とが静止と判定され、フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n-1の画素と、フレーム#nの画素とが動きと判定されたとき、領域特定部103は、フレーム#nの判定の対象となる画素がカバードバックグラウンド領域に属すると判定する。
【0260】
フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n-1の画素と、フレーム#nの画素とが静止と判定され、フレーム#nの画素と、フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n+1の画素とが静止と判定されたとき、領域特定部103は、フレーム#nの判定の対象となる画素が静止領域に属すると判定する。
【0261】
フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n-1の画素と、フレーム#nの画素とが動きと判定され、フレーム#nの画素と、フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n+1の画素とが動きと判定されたとき、領域特定部103は、フレーム#nの判定の対象となる画素が動き領域に属すると判定する。
【0262】
フレーム#nの画素と、フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n+1の画素とが動きと判定され、フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n+1の画素と、フレーム#nの判定の対象となる画素の画像上の位置と同一の位置にあるフレーム#n+2の画素とが静止と判定されたとき、領域特定部103は、フレーム#nの判定の対象となる画素がアンカバードバックグラウンド領域に属すると判定する。
【0263】
図51は、領域特定部103の領域の特定の結果の例を示す図である。図51(A)において、カバードバックグラウンド領域に属すると判定された画素は、白で表示されている。図51(B)において、アンカバードバックグラウンド領域に属すると判定された画素は、白で表示されている。
【0264】
図51(C)において、動き領域に属すると判定された画素は、白で表示されている。図51(D)において、静止領域に属すると判定された画素は、白で表示されている。
【0265】
図52は、判定フラグ格納フレームメモリ206が出力する領域情報の内、混合領域を示す領域情報を画像として示す図である。図52において、カバードバックグラウンド領域またはアンカバードバックグラウンド領域に属すると判定された画素、すなわち混合領域に属すると判定された画素は、白で表示されている。判定フラグ格納フレームメモリ206が出力する混合領域を示す領域情報は、混合領域、および前景領域内のテクスチャの無い部分に囲まれたテクスチャの有る部分を示す。
【0266】
次に、図53のフローチャートを参照して、領域特定部103の領域特定の処理を説明する。ステップS201において、フレームメモリ201は、判定の対象となるフレーム#nを含むフレーム#n-2乃至フレーム#n+2の画像を取得する。
【0267】
ステップS202において、静動判定部202−3は、フレーム#n-1の画素とフレーム#nの同一位置の画素とで、静止か否かを判定し、静止と判定された場合、ステップS203に進み、静動判定部202−2は、フレーム#nの画素とフレーム#n+1の同一位置の画素とで、静止か否かを判定する。
【0268】
ステップS203において、フレーム#nの画素とフレーム#n+1の同一位置の画素とで、静止と判定された場合、ステップS204に進み、領域判定部203−2は、領域の判定される画素に対応する静止領域判定フラグに、静止領域に属することを示す”1”を設定する。領域判定部203−2は、静止領域判定フラグを判定フラグ格納フレームメモリ204に供給し、手続きは、ステップS205に進む。
【0269】
ステップS202において、フレーム#n-1の画素とフレーム#nの同一位置の画素とで、動きと判定された場合、または、ステップS203において、フレーム#nの画素とフレーム#n+1の同一位置の画素とで、動きと判定された場合、フレーム#nの画素が静止領域には属さないので、ステップS204の処理はスキップされ、手続きは、ステップS205に進む。
【0270】
ステップS205において、静動判定部202−3は、フレーム#n-1の画素とフレーム#nの同一位置の画素とで、動きか否かを判定し、動きと判定された場合、ステップS206に進み、静動判定部202−2は、フレーム#nの画素とフレーム#n+1の同一位置の画素とで、動きか否かを判定する。
【0271】
ステップS206において、フレーム#nの画素とフレーム#n+1の同一位置の画素とで、動きと判定された場合、ステップS207に進み、領域判定部203−2は、領域の判定される画素に対応する動き領域判定フラグに、動き領域に属することを示す”1”を設定する。領域判定部203−2は、動き領域判定フラグを判定フラグ格納フレームメモリ204に供給し、手続きは、ステップS208に進む。
【0272】
ステップS205において、フレーム#n-1の画素とフレーム#nの同一位置の画素とで、静止と判定された場合、または、ステップS206において、フレーム#nの画素とフレーム#n+1の同一位置の画素とで、静止と判定された場合、フレーム#nの画素が動き領域には属さないので、ステップS207の処理はスキップされ、手続きは、ステップS208に進む。
【0273】
ステップS208において、静動判定部202−4は、フレーム#n-2の画素とフレーム#n-1の同一位置の画素とで、静止か否かを判定し、静止と判定された場合、ステップS209に進み、静動判定部202−3は、フレーム#n-1の画素とフレーム#nの同一位置の画素とで、動きか否かを判定する。
【0274】
ステップS209において、フレーム#n-1の画素とフレーム#nの同一位置の画素とで、動きと判定された場合、ステップS210に進み、領域判定部203−3は、領域の判定される画素に対応するカバードバックグラウンド領域判定フラグに、カバードバックグラウンド領域に属することを示す”1”を設定する。領域判定部203−3は、カバードバックグラウンド領域判定フラグを判定フラグ格納フレームメモリ204に供給し、手続きは、ステップS211に進む。
【0275】
ステップS208において、フレーム#n-2の画素とフレーム#n-1の同一位置の画素とで、動きと判定された場合、または、ステップS209において、フレーム#n-1の画素とフレーム#nの同一位置の画素とで、静止と判定された場合、フレーム#nの画素がカバードバックグラウンド領域には属さないので、ステップS210の処理はスキップされ、手続きは、ステップS211に進む。
【0276】
ステップS211において、静動判定部202−2は、フレーム#nの画素とフレーム#n+1の同一位置の画素とで、動きか否かを判定し、動きと判定された場合、ステップS212に進み、静動判定部202−1は、フレーム#n+1の画素とフレーム#n+2の同一位置の画素とで、静止か否かを判定する。
【0277】
ステップS212において、フレーム#n+1の画素とフレーム#n+2の同一位置の画素とで、静止と判定された場合、ステップS213に進み、領域判定部203−1は、領域の判定される画素に対応するアンカバードバックグラウンド領域判定フラグに、アンカバードバックグラウンド領域に属することを示す”1”を設定する。領域判定部203−1は、アンカバードバックグラウンド領域判定フラグを判定フラグ格納フレームメモリ204に供給し、手続きは、ステップS214に進む。
【0278】
ステップS211において、フレーム#nの画素とフレーム#n+1の同一位置の画素とで、静止と判定された場合、または、ステップS212において、フレーム#n+1の画素とフレーム#n+2の同一位置の画素とで、動きと判定された場合、フレーム#nの画素がアンカバードバックグラウンド領域には属さないので、ステップS213の処理はスキップされ、手続きは、ステップS214に進む。
【0279】
ステップS214において、領域特定部103は、フレーム#nの全ての画素について領域を特定したか否かを判定し、フレーム#nの全ての画素について領域を特定していないと判定された場合、手続きは、ステップS202に戻り、他の画素について、領域特定の処理を繰り返す。
【0280】
ステップS214において、フレーム#nの全ての画素について領域を特定したと判定された場合、ステップS215に進み、合成部205は、判定フラグ格納フレームメモリ204に記憶されているアンカバードバックグラウンド領域判定フラグ、およびカバードバックグラウンド領域判定フラグを基に、混合領域を示す領域情報を生成し、更に、各画素が、アンカバードバックグラウンド領域、静止領域、動き領域、およびカバードバックグラウンド領域のいずれかに属することを示す領域情報を生成し、生成した領域情報を判定フラグ格納フレームメモリ206に設定し、処理は終了する。
【0281】
このように、領域特定部103は、フレームに含まれている画素のそれぞれについて、動き領域、静止領域、アンカバードバックグラウンド領域、またはカバードバックグラウンド領域に属することを示す領域情報を生成することができる。
【0282】
なお、領域特定部103は、アンカバードバックグラウンド領域およびカバードバックグラウンド領域に対応する領域情報に論理和を適用することにより、混合領域に対応する領域情報を生成して、フレームに含まれている画素のそれぞれについて、動き領域、静止領域、または混合領域に属することを示すフラグから成る領域情報を生成するようにしてもよい。
【0283】
前景に対応するオブジェクトがテクスチャを有す場合、領域特定部103は、より正確に動き領域を特定することができる。
【0284】
領域特定部103は、動き領域を示す領域情報を前景領域を示す領域情報として、また、静止領域を示す領域情報を背景領域を示す領域情報として出力することができる。
【0285】
なお、背景に対応するオブジェクトが静止しているとして説明したが、背景領域に対応する画像が動きを含んでいても上述した領域を特定する処理を適用することができる。例えば、背景領域に対応する画像が一様に動いているとき、領域特定部103は、この動きに対応して画像全体をシフトさせ、背景に対応するオブジェクトが静止している場合と同様に処理する。また、背景領域に対応する画像が局所毎に異なる動きを含んでいるとき、領域特定部103は、動きに対応した画素を選択して、上述の処理を実行する。
【0286】
図54は、領域特定部103の構成の他の一例を示すブロック図である。図54に示す領域特定部103は、動きベクトルを使用しない。背景画像生成部301は、入力画像に対応する背景画像を生成し、生成した背景画像を2値オブジェクト画像抽出部302に供給する。背景画像生成部301は、例えば、入力画像に含まれる背景のオブジェクトに対応する画像オブジェクトを抽出して、背景画像を生成する。
【0287】
前景のオブジェクトに対応する画像の動き方向に隣接して1列に並ぶ画素の画素値を時間方向に展開したモデル図の例を図55に示す。例えば、前景のオブジェクトに対応する画像の動き方向が画面に対して水平であるとき、図55におけるモデル図は、1つのライン上の隣接する画素の画素値を時間方向に展開したモデルを示す。
【0288】
図55において、フレーム#nにおけるラインは、フレーム#n-1およびフレーム#n+1におけるラインと同一である。
【0289】
フレーム#nにおいて、左から6番目の画素乃至17番目の画素に含まれているオブジェクトに対応する前景の成分は、フレーム#n-1において、左から2番目乃至13番目の画素に含まれ、フレーム#n+1において、左から10番目乃至21番目の画素に含まれる。
【0290】
フレーム#n-1において、カバードバックグラウンド領域に属する画素は、左から11番目乃至13番目の画素であり、アンカバードバックグラウンド領域に属する画素は、左から2番目乃至4番目の画素である。フレーム#nにおいて、カバードバックグラウンド領域に属する画素は、左から15番目乃至17番目の画素であり、アンカバードバックグラウンド領域に属する画素は、左から6番目乃至8番目の画素である。フレーム#n+1において、カバードバックグラウンド領域に属する画素は、左から19番目乃至21番目の画素であり、アンカバードバックグラウンド領域に属する画素は、左から10番目乃至12番目の画素である。
【0291】
フレーム#n-1において、背景領域に属する画素は、左から1番目の画素、および左から14番目乃至21番目の画素である。フレーム#nにおいて、背景領域に属する画素は、左から1番目乃至5番目の画素、および左から18番目乃至21番目の画素である。フレーム#n+1において、背景領域に属する画素は、左から1番目乃至9番目の画素である。
【0292】
背景画像生成部301が生成する、図55の例に対応する背景画像の例を図56に示す。背景画像は、背景のオブジェクトに対応する画素から構成され、前景のオブジェクトに対応する画像の成分を含まない。
【0293】
2値オブジェクト画像抽出部302は、背景画像および入力画像の相関を基に、2値オブジェクト画像を生成し、生成した2値オブジェクト画像を時間変化検出部303に供給する。
【0294】
図57は、2値オブジェクト画像抽出部302の構成を示すブロック図である。相関値演算部321は、背景画像生成部301から供給された背景画像および入力画像の相関を演算し、相関値を生成して、生成した相関値をしきい値処理部322に供給する。
【0295】
相関値演算部321は、例えば、図58(A)に示すように、X4を中心とした3×3の背景画像の中のブロックと、図58(B)に示すように、背景画像の中のブロックに対応するY4を中心とした3×3の入力画像の中のブロックに、式(4)を適用して、Y4に対応する相関値を算出する。
【0296】
【数2】
Figure 0004701547
【数3】
Figure 0004701547
【数4】
Figure 0004701547
【0297】
相関値演算部321は、このように各画素に対応して算出された相関値をしきい値処理部322に供給する。
【0298】
また、相関値演算部321は、例えば、図59(A)に示すように、X4を中心とした3×3の背景画像の中のブロックと、図59(B)に示すように、背景画像の中のブロックに対応するY4を中心とした3×3の入力画像の中のブロックに、式(7)を適用して、Y4に対応する差分絶対値を算出するようにしてもよい。
【0299】
【数5】
Figure 0004701547
【0300】
相関値演算部321は、このように算出された差分絶対値を相関値として、しきい値処理部322に供給する。
【0301】
しきい値処理部322は、相関画像の画素値としきい値th0とを比較して、相関値がしきい値th0以下である場合、2値オブジェクト画像の画素値に1を設定し、相関値がしきい値th0より大きい場合、2値オブジェクト画像の画素値に0を設定して、0または1が画素値に設定された2値オブジェクト画像を出力する。しきい値処理部322は、しきい値th0を予め記憶するようにしてもよく、または、外部から入力されたしきい値th0を使用するようにしてもよい。
【0302】
図60は、図55に示す入力画像のモデルに対応する2値オブジェクト画像の例を示す図である。2値オブジェクト画像において、背景画像と相関の高い画素には、画素値に0が設定される。
【0303】
図61は、時間変化検出部303の構成を示すブロック図である。フレームメモリ341は、フレーム#nの画素について領域を判定するとき、2値オブジェクト画像抽出部302から供給された、フレーム#n-1、フレーム#n、およびフレーム#n+1の2値オブジェクト画像を記憶する。
【0304】
領域判定部342は、フレームメモリ341に記憶されているフレーム#n-1、フレーム#n、およびフレーム#n+1の2値オブジェクト画像を基に、フレーム#nの各画素について領域を判定して、領域情報を生成し、生成した領域情報を出力する。
【0305】
図62は、領域判定部342の判定を説明する図である。フレーム#nの2値オブジェクト画像の注目している画素が0であるとき、領域判定部342は、フレーム#nの注目している画素が背景領域に属すると判定する。
【0306】
フレーム#nの2値オブジェクト画像の注目している画素が1であり、フレーム#n-1の2値オブジェクト画像の対応する画素が1であり、フレーム#n+1の2値オブジェクト画像の対応する画素が1であるとき、領域判定部342は、フレーム#nの注目している画素が前景領域に属すると判定する。
【0307】
フレーム#nの2値オブジェクト画像の注目している画素が1であり、フレーム#n-1の2値オブジェクト画像の対応する画素が0であるとき、領域判定部342は、フレーム#nの注目している画素がカバードバックグラウンド領域に属すると判定する。
【0308】
フレーム#nの2値オブジェクト画像の注目している画素が1であり、フレーム#n+1の2値オブジェクト画像の対応する画素が0であるとき、領域判定部342は、フレーム#nの注目している画素がアンカバードバックグラウンド領域に属すると判定する。
【0309】
図63は、図55に示す入力画像のモデルに対応する2値オブジェクト画像について、時間変化検出部303の判定した例を示す図である。時間変化検出部303は、2値オブジェクト画像のフレーム#nの対応する画素が0なので、フレーム#nの左から1番目乃至5番目の画素を背景領域に属すると判定する。
【0310】
時間変化検出部303は、2値オブジェクト画像のフレーム#nの画素が1であり、フレーム#n+1の対応する画素が0なので、左から6番目乃至9番目の画素をアンカバードバックグラウンド領域に属すると判定する。
【0311】
時間変化検出部303は、2値オブジェクト画像のフレーム#nの画素が1であり、フレーム#n-1の対応する画素が1であり、フレーム#n+1の対応する画素が1なので、左から10番目乃至13番目の画素を前景領域に属すると判定する。
【0312】
時間変化検出部303は、2値オブジェクト画像のフレーム#nの画素が1であり、フレーム#n-1の対応する画素が0なので、左から14番目乃至17番目の画素をカバードバックグラウンド領域に属すると判定する。
【0313】
時間変化検出部303は、2値オブジェクト画像のフレーム#nの対応する画素が0なので、左から18番目乃至21番目の画素を背景領域に属すると判定する。
【0314】
次に、図64のフローチャートを参照して、領域判定部103の領域特定の処理を説明する。ステップS301において、領域判定部103の背景画像生成部301は、入力画像を基に、例えば、入力画像に含まれる背景のオブジェクトに対応する画像オブジェクトを抽出して背景画像を生成し、生成した背景画像を2値オブジェクト画像抽出部302に供給する。
【0315】
ステップS302において、2値オブジェクト画像抽出部302は、例えば、図58を参照して説明した演算により、入力画像と背景画像生成部301から供給された背景画像との相関値を演算する。ステップS303において、2値オブジェクト画像抽出部302は、例えば、相関値としきい値th0とを比較することにより、相関値およびしきい値th0から2値オブジェクト画像を演算する。
【0316】
ステップS304において、時間変化検出部303は、領域判定の処理を実行して、処理は終了する。
【0317】
図65のフローチャートを参照して、ステップS304に対応する領域判定の処理の詳細を説明する。ステップS321において、時間変化検出部303の領域判定部342は、フレームメモリ341に記憶されているフレーム#nにおいて、注目する画素が0であるか否かを判定し、フレーム#nにおいて、注目する画素が0であると判定された場合、ステップS322に進み、フレーム#nの注目する画素が背景領域に属すると設定して、処理は終了する。
【0318】
ステップS321において、フレーム#nにおいて、注目する画素が1であると判定された場合、ステップS323に進み、時間変化検出部303の領域判定部342は、フレームメモリ341に記憶されているフレーム#nにおいて、注目する画素が1であり、かつ、フレーム#n-1において、対応する画素が0であるか否かを判定し、フレーム#nにおいて、注目する画素が1であり、かつ、フレーム#n-1において、対応する画素が0であると判定された場合、ステップS324に進み、フレーム#nの注目する画素がカバードバックグラウンド領域に属すると設定して、処理は終了する。
【0319】
ステップS323において、フレーム#nにおいて、注目する画素が0であるか、または、フレーム#n-1において、対応する画素が1であると判定された場合、ステップS325に進み、時間変化検出部303の領域判定部342は、フレームメモリ341に記憶されているフレーム#nにおいて、注目する画素が1であり、かつ、フレーム#n+1において、対応する画素が0であるか否かを判定し、フレーム#nにおいて、注目する画素が1であり、かつ、フレーム#n+1において、対応する画素が0であると判定された場合、ステップS326に進み、フレーム#nの注目する画素がアンカバードバックグラウンド領域に属すると設定して、処理は終了する。
【0320】
ステップS325において、フレーム#nにおいて、注目する画素が0であるか、または、フレーム#n+1において、対応する画素が1であると判定された場合、ステップS327に進み、時間変化検出部303の領域判定部342は、フレーム#nの注目する画素を前景領域と設定して、処理は終了する。
【0321】
このように、領域特定部103は、入力された画像と対応する背景画像との相関値を基に、入力画像の画素が前景領域、背景領域、カバードバックグラウンド領域、およびアンカバードバックグラウンド領域のいずれかに属するかを特定して、特定した結果に対応する領域情報を生成することができる。
【0322】
図66は、領域特定部103の他の構成を示すブロック図である。図66に示す領域特定部103は、動き検出部102から供給される動きベクトルとその位置情報を使用する。図54に示す場合と同様の部分には、同一の番号を付してあり、その説明は省略する。
【0323】
ロバスト化部361は、2値オブジェクト画像抽出部302から供給された、N個のフレームの2値オブジェクト画像を基に、ロバスト化された2値オブジェクト画像を生成して、時間変化検出部303に出力する。
【0324】
図67は、ロバスト化部361の構成を説明するブロック図である。動き補償部381は、動き検出部102から供給された動きベクトルとその位置情報を基に、N個のフレームの2値オブジェクト画像の動きを補償して、動きが補償された2値オブジェクト画像をスイッチ382に出力する。
【0325】
図68および図69の例を参照して、動き補償部381の動き補償について説明する。例えば、フレーム#nの領域を判定するとき、図68に例を示すフレーム#n-1、フレーム#n、およびフレーム#n+1の2値オブジェクト画像が入力された場合、動き補償部381は、動き検出部102から供給された動きベクトルを基に、図69に例を示すように、フレーム#n-1の2値オブジェクト画像、およびフレーム#n+1の2値オブジェクト画像を動き補償して、動き補償された2値オブジェクト画像をスイッチ382に供給する。
【0326】
スイッチ382は、1番目のフレームの動き補償された2値オブジェクト画像をフレームメモリ383−1に出力し、2番目のフレームの動き補償された2値オブジェクト画像をフレームメモリ383−2に出力する。同様に、スイッチ382は、3番目乃至N−1番目のフレームの動き補償された2値オブジェクト画像のそれぞれをフレームメモリ383−3乃至フレームメモリ383−(N−1)のいずれかに出力し、N番目のフレームの動き補償された2値オブジェクト画像をフレームメモリ383−Nに出力する。
【0327】
フレームメモリ383−1は、1番目のフレームの動き補償された2値オブジェクト画像を記憶し、記憶されている2値オブジェクト画像を重み付け部384−1に出力する。フレームメモリ383−2は、2番目のフレームの動き補償された2値オブジェクト画像を記憶し、記憶されている2値オブジェクト画像を重み付け部384−2に出力する。
【0328】
同様に、フレームメモリ383−3乃至フレームメモリ383−(N−1)のそれぞれは、3番目のフレーム乃至N−1番目のフレームの動き補償された2値オブジェクト画像のいずれかを記憶し、記憶されている2値オブジェクト画像を重み付け部384−3乃至重み付け部384−(N−1)のいずれかに出力する。フレームメモリ383−Nは、N番目のフレームの動き補償された2値オブジェクト画像を記憶し、記憶されている2値オブジェクト画像を重み付け部384−Nに出力する。
【0329】
重み付け部384−1は、フレームメモリ383−1から供給された1番目のフレームの動き補償された2値オブジェクト画像の画素値に予め定めた重みw1を乗じて、積算部385に供給する。重み付け部384−2は、フレームメモリ383−2から供給された2番目のフレームの動き補償された2値オブジェクト画像の画素値に予め定めた重みw2を乗じて、積算部385に供給する。
【0330】
同様に、重み付け部384−3乃至重み付け部384−(N−1)のそれぞれは、フレームメモリ383−3乃至フレームメモリ383−(N−1)のいずれかから供給された3番目乃至N−1番目のいずれかのフレームの動き補償された2値オブジェクト画像の画素値に予め定めた重みw3乃至重みw(N-1)のいずれかを乗じて、積算部385に供給する。重み付け部384−Nは、フレームメモリ383−Nから供給されたN番目のフレームの動き補償された2値オブジェクト画像の画素値に予め定めた重みwNを乗じて、積算部385に供給する。
【0331】
積算部385は、1乃至N番目のフレームの動き補償され、それぞれ重みw1乃至wNのいずれかが乗じられた、2値オブジェクト画像の対応する画素値を積算して、積算された画素値を予め定めたしきい値th0と比較することにより2値オブジェクト画像を生成する。
【0332】
このように、ロバスト化部361は、N個の2値オブジェクト画像からロバスト化された2値オブジェト画像を生成して、時間変化検出部303に供給するので、図66に構成を示す領域特定部103は、入力画像にノイズが含まれていても、図54に示す場合に比較して、より正確に領域を特定することができる。
【0333】
次に、図66に構成を示す領域特定部103の領域特定の処理について、図70のフローチャートを参照して説明する。ステップS341乃至ステップS343の処理は、図64のフローチャートで説明したステップS301乃至ステップS303とそれぞれ同様なのでその説明は省略する。
【0334】
ステップS344において、ロバスト化部361は、ロバスト化の処理を実行する。
【0335】
ステップS345において、時間変化検出部303は、領域判定の処理を実行して、処理は終了する。ステップS345の処理の詳細は、図65のフローチャートを参照して説明した処理と同様なのでその説明は省略する。
【0336】
次に、図71のフローチャートを参照して、図70のステップS344の処理に対応する、ロバスト化の処理の詳細について説明する。ステップS361において、動き補償部381は、動き検出部102から供給される動きベクトルとその位置情報を基に、入力された2値オブジェクト画像の動き補償の処理を実行する。ステップS362において、フレームメモリ383−1乃至383−Nのいずれかは、スイッチ382を介して供給された動き補償された2値オブジェクト画像を記憶する。
【0337】
ステップS363において、ロバスト化部361は、N個の2値オブジェクト画像が記憶されたか否かを判定し、N個の2値オブジェクト画像が記憶されていないと判定された場合、ステップS361に戻り、2値オブジェクト画像の動き補償の処理および2値オブジェクト画像の記憶の処理を繰り返す。
【0338】
ステップS363において、N個の2値オブジェクト画像が記憶されたと判定された場合、ステップS364に進み、重み付け部384−1乃至384−Nのそれぞれは、N個の2値オブジェクト画像のそれぞれにw1乃至wNのいずれかの重みを乗じて、重み付けする。
【0339】
ステップS365において、積算部385は、重み付けされたN個の2値オブジェクト画像を積算する。
【0340】
ステップS366において、積算部385は、例えば、予め定められたしきい値th1との比較などにより、積算された画像から2値オブジェクト画像を生成して、処理は終了する。
【0341】
このように、図66に構成を示す領域特定部103は、ロバスト化された2値オブジェクト画像を基に、領域情報を生成することができる。
【0342】
以上のように、領域特定部103は、フレームに含まれている画素のそれぞれについて、動き領域、静止領域、アンカバードバックグラウンド領域、またはカバードバックグラウンド領域に属することを示す領域情報を生成することができる。
【0343】
図72は、混合比算出部104の構成の一例を示すブロック図である。推定混合比処理部401は、入力画像を基に、カバードバックグラウンド領域のモデルに対応する演算により、画素毎に推定混合比を算出して、算出した推定混合比を混合比決定部403に供給する。
【0344】
推定混合比処理部402は、入力画像を基に、アンカバードバックグラウンド領域のモデルに対応する演算により、画素毎に推定混合比を算出して、算出した推定混合比を混合比決定部403に供給する。
【0345】
前景に対応するオブジェクトがシャッタ時間内に等速で動いていると仮定できるので、混合領域に属する画素の混合比αは、以下の性質を有する。すなわち、混合比αは、画素の位置の変化に対応して、直線的に変化する。画素の位置の変化を1次元とすれば、混合比αの変化は、直線で表現することができ、画素の位置の変化を2次元とすれば、混合比αの変化は、平面で表現することができる。
【0346】
なお、1フレームの期間は短いので、前景に対応するオブジェクトが剛体であり、等速で移動していると仮定が成り立つ。
【0347】
この場合、混合比αの傾きは、前景のシャッタ時間内での動き量vの逆比となる。
【0348】
理想的な混合比αの例を図73に示す。理想的な混合比αの混合領域における傾きlは、動き量vの逆数として表すことができる。
【0349】
図73に示すように、理想的な混合比αは、背景領域において、1の値を有し、前景領域において、0の値を有し、混合領域において、0を越え1未満の値を有する。
【0350】
図74の例において、フレーム#nの左から7番目の画素の画素値C06は、フレーム#n-1の左から7番目の画素の画素値P06を用いて、式(8)で表すことができる。
【0351】
【数6】
Figure 0004701547
【0352】
式(8)において、画素値C06を混合領域の画素の画素値Mと、画素値P06を背景領域の画素の画素値Bと表現する。すなわち、混合領域の画素の画素値Mおよび背景領域の画素の画素値Bは、それぞれ、式(9)および式(10)のように表現することができる。
【0353】
M=C06 (9)
B=P06 (10)
【0354】
式(8)中の2/vは、混合比αに対応する。動き量vが4なので、フレーム#nの左から7番目の画素の混合比αは、0.5となる。
【0355】
以上のように、注目しているフレーム#nの画素値Cを混合領域の画素値と見なし、フレーム#nの前のフレーム#n-1の画素値Pを背景領域の画素値と見なすことで、混合比αを示す式(3)は、式(11)のように書き換えられる。
【0356】
C=α・P+f (11)
式(11)のfは、注目している画素に含まれる前景の成分の和ΣiFi/vである。式(11)に含まれる変数は、混合比αおよび前景の成分の和fの2つである。
【0357】
同様に、アンカバードバックグラウンド領域における、動き量vが4であり、時間方向の仮想分割数が4である、画素値を時間方向に展開したモデルを図75に示す。
【0358】
アンカバードバックグラウンド領域において、上述したカバードバックグラウンド領域における表現と同様に、注目しているフレーム#nの画素値Cを混合領域の画素値と見なし、フレーム#nの後のフレーム#n+1の画素値Nを背景領域の画素値と見なすことで、混合比αを示す式(3)は、式(12)のように表現することができる。
【0359】
C=α・N+f (12)
【0360】
なお、背景のオブジェクトが静止しているとして説明したが、背景のオブジェクトが動いている場合においても、背景の動き量vに対応させた位置の画素の画素値を利用することにより、式(8)乃至式(12)を適用することができる。例えば、図74において、背景に対応するオブジェクトの動き量vが2であり、仮想分割数が2であるとき、背景に対応するオブジェクトが図中の右側に動いているとき、式(10)における背景領域の画素の画素値Bは、画素値P04とされる。
【0361】
式(11)および式(12)は、それぞれ2つの変数を含むので、そのままでは混合比αを求めることができない。ここで、画像は一般的に空間的に相関が強いので近接する画素同士でほぼ同じ画素値となる。
【0362】
そこで、前景成分は、空間的に相関が強いので、前景の成分の和fを前または後のフレームから導き出せるように式を変形して、混合比αを求める。
【0363】
図76のフレーム#nの左から7番目の画素の画素値Mcは、式(13)で表すことができる。
【0364】
【数7】
Figure 0004701547
式(13)の右辺第1項の2/vは、混合比αに相当する。式(13)の右辺第2項は、後のフレーム#n+1の画素値を利用して、式(14)のように表すこととする。
【0365】
【数8】
Figure 0004701547
【0366】
ここで、前景の成分の空間相関を利用して、式(15)が成立するとする。
【0367】
F=F05=F06=F07=F08=F09=F10=F11=F12 (15)
式(14)は、式(15)を利用して、式(16)のように置き換えることができる。
【0368】
【数9】
Figure 0004701547
結果として、βは、式(17)で表すことができる。
【0369】
β=2/4 (17)
【0370】
一般的に、式(15)に示すように混合領域に関係する前景の成分が等しいと仮定すると、混合領域の全ての画素について、内分比の関係から式(18)が成立する。
【0371】
β=1-α (18)
【0372】
式(18)が成立するとすれば、式(11)は、式(19)に示すように展開することができる。
【0373】
【数10】
Figure 0004701547
【0374】
同様に、式(18)が成立するとすれば、式(12)は、式(20)に示すように展開することができる。
【0375】
【数11】
Figure 0004701547
【0376】
式(19)および式(20)において、C,N、およびPは、既知の画素値なので、式(19)および式(20)に含まれる変数は、混合比αのみである。式(19)および式(20)における、C,N、およびPの関係を図77に示す。Cは、混合比αを算出する、フレーム#nの注目している画素の画素値である。Nは、注目している画素と空間方向の位置が対応する、フレーム#n+1の画素の画素値である。Pは、注目している画素と空間方向の位置が対応する、フレーム#n-1の画素の画素値である。
【0377】
従って、式(19)および式(20)のそれぞれに1つの変数が含まれることとなるので、3つのフレームの画素の画素値を利用して、混合比αを算出することができる。式(19)および式(20)を解くことにより、正しい混合比αが算出されるための条件は、混合領域に関係する前景の成分が等しい、すなわち、前景のオブジェクトが静止しているとき撮像された前景の画像オブジェクトにおいて、前景のオブジェクトの動きの方向に対応する、画像オブジェクトの境界に位置する画素であって、動き量vの2倍の数の連続している画素の画素値が、一定であることである。
【0378】
以上のように、カバードバックグラウンド領域に属する画素の混合比αは、式(21)により算出され、アンカバードバックグラウンド領域に属する画素の混合比αは、式(22)により算出される。
【0379】
α=(C-N)/(P-N) (21)
α=(C-P)/(N-P) (22)
【0380】
図78は、推定混合比処理部401の構成を示すブロック図である。フレームメモリ421は、入力された画像をフレーム単位で記憶し、入力画像として入力されているフレームから1つ後のフレームをフレームメモリ422および混合比演算部423に供給する。
【0381】
フレームメモリ422は、入力された画像をフレーム単位で記憶し、フレームメモリ421から供給されているフレームから1つ後のフレームを混合比演算部423に供給する。
【0382】
従って、入力画像としてフレーム#n+1が混合比演算部423に入力されているとき、フレームメモリ421は、フレーム#nを混合比演算部423に供給し、フレームメモリ422は、フレーム#n-1を混合比演算部423に供給する。
【0383】
混合比演算部423は、式(21)に示す演算により、フレーム#nの注目している画素の画素値C、注目している画素と空間的位置が対応する、フレーム#n+1の画素の画素値N、および注目している画素と空間的位置が対応する、フレーム#n-1の画素の画素値Pを基に、注目している画素の推定混合比を算出して、算出した推定混合比を出力する。例えば、背景が静止しているとき、混合比演算部423は、フレーム#nの注目している画素の画素値C、注目している画素とフレーム内の位置が同じ、フレーム#n+1の画素の画素値N、および注目している画素とフレーム内の位置が同じ、フレーム#n-1の画素の画素値Pを基に、注目している画素の推定混合比を算出して、算出した推定混合比を出力する。
【0384】
このように、推定混合比処理部401は、入力画像を基に、推定混合比を算出して、混合比決定部403に供給することができる。
【0385】
なお、推定混合比処理部402は、推定混合比処理部401が式(21)に示す演算により、注目している画素の推定混合比を算出するのに対して、式(22)に示す演算により、注目している画素の推定混合比を算出する部分が異なることを除き、推定混合比処理部401と同様なので、その説明は省略する。
【0386】
図79は、推定混合比処理部401により算出された推定混合比の例を示す図である。図79に示す推定混合比は、等速で動いているオブジェクトに対応する前景の動き量vが11である場合の結果を、1ラインに対して示すものである。
【0387】
推定混合比は、混合領域において、図73に示すように、ほぼ直線的に変化していることがわかる。
【0388】
図72に戻り、混合比決定部403は、領域特定部103から供給された、混合比αの算出の対象となる画素が、前景領域、背景領域、カバードバックグラウンド領域、またはアンカバードバックグラウンド領域のいずれかに属するかを示す領域情報を基に、混合比αを設定する。混合比決定部403は、対象となる画素が前景領域に属する場合、0を混合比αに設定し、対象となる画素が背景領域に属する場合、1を混合比αに設定し、対象となる画素がカバードバックグラウンド領域に属する場合、推定混合比処理部401から供給された推定混合比を混合比αに設定し、対象となる画素がアンカバードバックグラウンド領域に属する場合、推定混合比処理部402から供給された推定混合比を混合比αに設定する。混合比決定部403は、領域情報を基に設定した混合比αを出力する。
【0389】
図80は、混合比算出部104の他の構成を示すブロック図である。選択部441は、領域特定部103から供給された領域情報を基に、カバードバックグラウンド領域に属する画素および、これに対応する前および後のフレームの画素を推定混合比処理部442に供給する。選択部441は、領域特定部103から供給された領域情報を基に、アンカバードバックグラウンド領域に属する画素および、これに対応する前および後のフレームの画素を推定混合比処理部443に供給する。
【0390】
推定混合比処理部442は、選択部441から入力された画素値を基に、式(21)に示す演算により、カバードバックグラウンド領域に属する、注目している画素の推定混合比を算出して、算出した推定混合比を選択部444に供給する。
【0391】
推定混合比処理部443は、選択部441から入力された画素値を基に、式(22)に示す演算により、アンカバードバックグラウンド領域に属する、注目している画素の推定混合比を算出して、算出した推定混合比を選択部444に供給する。
【0392】
選択部444は、領域特定部103から供給された領域情報を基に、対象となる画素が前景領域に属する場合、0である推定混合比を選択して、混合比αに設定し、対象となる画素が背景領域に属する場合、1である推定混合比を選択して、混合比αに設定する。選択部444は、対象となる画素がカバードバックグラウンド領域に属する場合、推定混合比処理部442から供給された推定混合比を選択して混合比αに設定し、対象となる画素がアンカバードバックグラウンド領域に属する場合、推定混合比処理部443から供給された推定混合比を選択して混合比αに設定する。選択部444は、領域情報を基に選択して設定した混合比αを出力する。
【0393】
このように、図80に示す他の構成を有する混合比算出部104は、画像の含まれる画素毎に混合比αを算出して、算出した混合比αを出力することができる。
【0394】
図81のフローチャートを参照して、図72に構成を示す混合比算出部104の混合比αの算出の処理を説明する。ステップS401において、混合比算出部104は、領域特定部103から供給された領域情報を取得する。ステップS402において、推定混合比処理部401は、カバードバックグラウンド領域に対応するモデルにより推定混合比の演算の処理を実行し、算出した推定混合比を混合比決定部403に供給する。混合比推定の演算の処理の詳細は、図82のフローチャートを参照して、後述する。
【0395】
ステップS403において、推定混合比処理部402は、アンカバードバックグラウンド領域に対応するモデルにより推定混合比の演算の処理を実行し、算出した推定混合比を混合比決定部403に供給する。
【0396】
ステップS404において、混合比算出部104は、フレーム全体について、混合比αを推定したか否かを判定し、フレーム全体について、混合比αを推定していないと判定された場合、ステップS402に戻り、次の画素について混合比αを推定する処理を実行する。
【0397】
ステップS404において、フレーム全体について、混合比αを推定したと判定された場合、ステップS405に進み、混合比決定部403は、画素が、前景領域、背景領域、カバードバックグラウンド領域、またはアンカバードバックグラウンド領域のいずれかに属するかを示す、領域特定部103から供給された領域情報を基に、混合比αを設定する。混合比決定部403は、対象となる画素が前景領域に属する場合、0を混合比αに設定し、対象となる画素が背景領域に属する場合、1を混合比αに設定し、対象となる画素がカバードバックグラウンド領域に属する場合、推定混合比処理部401から供給された推定混合比を混合比αに設定し、対象となる画素がアンカバードバックグラウンド領域に属する場合、推定混合比処理部402から供給された推定混合比を混合比αに設定し、処理は終了する。
【0398】
このように、混合比算出部104は、領域特定部103から供給された領域情報、および入力画像を基に、各画素に対応する特徴量である混合比αを算出することができる。
【0399】
図80に構成を示す混合比算出部104の混合比αの算出の処理は、図81のフローチャートで説明した処理と同様なので、その説明は省略する。
【0400】
次に、図81のステップS402に対応する、カバードバックグラウンド領域に対応するモデルによる混合比推定の処理を図82のフローチャートを参照して説明する。
【0401】
ステップS421において、混合比演算部423は、フレームメモリ421から、フレーム#nの注目画素の画素値Cを取得する。
【0402】
ステップS422において、混合比演算部423は、フレームメモリ422から、注目画素に対応する、フレーム#n-1の画素の画素値Pを取得する。
【0403】
ステップS423において、混合比演算部423は、入力画像に含まれる注目画素に対応する、フレーム#n+1の画素の画素値Nを取得する。
【0404】
ステップS424において、混合比演算部423は、フレーム#nの注目画素の画素値C、フレーム#n-1の画素の画素値P、およびフレーム#n+1の画素の画素値Nを基に、推定混合比を演算する。
【0405】
ステップS425において、混合比演算部423は、フレーム全体について、推定混合比を演算する処理を終了したか否かを判定し、フレーム全体について、推定混合比を演算する処理を終了していないと判定された場合、ステップS421に戻り、次の画素について推定混合比を算出する処理を繰り返す。
【0406】
ステップS425において、フレーム全体について、推定混合比を演算する処理を終了したと判定された場合、処理は終了する。
【0407】
このように、推定混合比処理部401は、入力画像を基に、推定混合比を演算することができる。
【0408】
図81のステップS403におけるアンカバードバックグラウンド領域に対応するモデルによる混合比推定の処理は、アンカバードバックグラウンド領域のモデルに対応する式を利用した、図82のフローチャートに示す処理と同様なので、その説明は省略する。
【0409】
なお、図80に示す推定混合比処理部442および推定混合比処理部443は、図82に示すフローチャートと同様の処理を実行して推定混合比を演算するので、その説明は省略する。
【0410】
また、背景に対応するオブジェクトが静止しているとして説明したが、背景領域に対応する画像が動きを含んでいても上述した混合比αを求める処理を適用することができる。例えば、背景領域に対応する画像が一様に動いているとき、推定混合比処理部401は、背景の動きに対応して画像全体をシフトさせ、背景に対応するオブジェクトが静止している場合と同様に処理する。また、背景領域に対応する画像が局所毎に異なる背景の動きを含んでいるとき、推定混合比処理部401は、混合領域に属する画素に対応する画素として、背景の動きに対応した画素を選択して、上述の処理を実行する。
【0411】
また、混合比算出部104は、全ての画素について、カバードバックグラウンド領域に対応するモデルによる混合比推定の処理のみを実行して、算出された推定混合比を混合比αとして出力するようにしてもよい。この場合において、混合比αは、カバードバックグラウンド領域に属する画素について、背景の成分の割合を示し、アンカバードバックグラウンド領域に属する画素について、前景の成分の割合を示す。アンカバードバックグラウンド領域に属する画素について、このように算出された混合比αと1との差分の絶対値を算出して、算出した絶対値を混合比αに設定すれば、分離処理サーバ11は、アンカバードバックグラウンド領域に属する画素について、背景の成分の割合を示す混合比αを求めることができる。
【0412】
なお、同様に、混合比算出部104は、全ての画素について、アンカバードバックグラウンド領域に対応するモデルによる混合比推定の処理のみを実行して、算出された推定混合比を混合比αとして出力するようにしてもよい。
【0413】
次に、混合比αが直線的に変化する性質を利用して混合比αを算出する混合比算出部104について説明する。
【0414】
上述したように、式(11)および式(12)は、それぞれ2つの変数を含むので、そのままでは混合比αを求めることができない。
【0415】
そこで、シャッタ時間内において、前景に対応するオブジェクトが等速で動くことによる、画素の位置の変化に対応して、混合比αが直線的に変化する性質を利用して、空間方向に、混合比αと前景の成分の和fとを近似した式を立てる。混合領域に属する画素の画素値および背景領域に属する画素の画素値の組の複数を利用して、混合比αと前景の成分の和fとを近似した式を解く。
【0416】
混合比αの変化を、直線として近似すると、混合比αは、式(23)で表される。
【0417】
α=il+p (23)
式(23)において、iは、注目している画素の位置を0とした空間方向のインデックスである。lは、混合比αの直線の傾きである。pは、混合比αの直線の切片である共に、注目している画素の混合比αである。式(23)において、インデックスiは、既知であるが、傾きlおよび切片pは、未知である。
【0418】
インデックスi、傾きl、および切片pの関係を図83に示す。
【0419】
混合比αを式(23)のように近似することにより、複数の画素に対して複数の異なる混合比αは、2つの変数で表現される。図83に示す例において、5つの画素に対する5つの混合比は、2つの変数である傾きlおよび切片pにより表現される。
【0420】
図84に示す平面で混合比αを近似すると、画像の水平方向および垂直方向の2つの方向に対応する動きvを考慮したとき、式(23)を平面に拡張して、混合比αは、式(24)で表される。
【0421】
α=jm+kq+p (24)
式(24)において、jは、注目している画素の位置を0とした水平方向のインデックスであり、kは、垂直方向のインデックスである。mは、混合比αの面の水平方向の傾きであり、qは、混合比αの面の垂直方向の傾きである。pは、混合比αの面の切片である。
【0422】
例えば、図74に示すフレーム#nにおいて、C05乃至C07について、それぞれ、式(25)乃至式(27)が成立する。
【0423】
C05=α05・B05/v+f05 (25)
C06=α06・B06/v+f06 (26)
C07=α07・B07/v+f07 (27)
【0424】
前景の成分が近傍で一致する、すなわち、F01乃至F03が等しいとして、F01乃至F03をFcに置き換えると式(28)が成立する。
【0425】
f(x)=(1-α(x))・Fc (28)
式(28)において、xは、空間方向の位置を表す。
【0426】
α(x)を式(24)で置き換えると、式(28)は、式(29)として表すことができる。
【0427】
Figure 0004701547
【0428】
式(29)において、(-m・Fc)、(-q・Fc)、および(1-p)・Fcは、式(30)乃至式(32)に示すように置き換えられている。
【0429】
s=-m・Fc (30)
t=-q・Fc (31)
u=(1-p)・Fc (32)
【0430】
式(29)において、jは、注目している画素の位置を0とした水平方向のインデックスであり、kは、垂直方向のインデックスである。
【0431】
このように、前景に対応するオブジェクトがシャッタ時間内において等速に移動し、前景に対応する成分が近傍において一定であるという仮定が成立するので、前景の成分の和は、式(29)で近似される。
【0432】
なお、混合比αを直線で近似する場合、前景の成分の和は、式(33)で表すことができる。
【0433】
f(x)=is+u (33)
【0434】
式(13)の混合比αおよび前景成分の和を、式(24)および式(29)を利用して置き換えると、画素値Mは、式(34)で表される。
【0435】
Figure 0004701547
【0436】
式(34)において、未知の変数は、混合比αの面の水平方向の傾きm、混合比αの面の垂直方向の傾きq、混合比αの面の切片p、s、t、およびuの6つである。
【0437】
注目している画素の近傍の画素に対応させて、式(34)に示す正規方程式に、画素値Mまたは画素値Bを設定し、画素値Mまたは画素値Bが設定された複数の正規方程式を最小自乗法で解いて、混合比αを算出する。
【0438】
例えば、注目している画素の水平方向のインデックスjを0とし、垂直方向のインデックスkを0とし、注目している画素の近傍の3×3の画素について、式(34)に示す正規方程式に画素値Mまたは画素値Bを設定すると、式(35)乃至式(43)を得る。
【0439】
Figure 0004701547
【0440】
注目している画素の水平方向のインデックスjが0であり、垂直方向のインデックスkが0であるので、注目している画素の混合比αは、式(24)より、j=0およびk=0のときの値、すなわち、切片pに等しい。
【0441】
従って、式(35)乃至式(43)の9つの式を基に、最小自乗法により、水平方向の傾きm、垂直方向の傾きq、切片p、s、t、およびuのそれぞれの値を算出し、切片pを混合比αとして出力すればよい。
【0442】
次に、最小自乗法を適用して混合比αを算出するより具体的な手順を説明する。
【0443】
インデックスiおよびインデックスkを1つのインデックスxで表現すると、インデックスi、インデックスk、およびインデックスxの関係は、式(44)で表される。
【0444】
x=(j+1)・3+(k+1) (44)
【0445】
水平方向の傾きm、垂直方向の傾きq、切片p、s、t、およびuをそれぞれ変数w0,w1,w2,w3,w4、およびW5と表現し、jB,kB,B,j,k、および1をそれぞれa0,a1,a2,a3,a4、およびa5と表現する。誤差exを考慮すると、式(35)乃至式(43)は、式(45)に書き換えることができる。
【0446】
【数12】
Figure 0004701547
式(45)において、xは、0乃至8の整数のいずれかの値である。
【0447】
式(45)から、式(46)を導くことができる。
【0448】
【数13】
Figure 0004701547
【0449】
ここで、最小自乗法を適用するため、誤差の自乗和Eを式(47)に示すようにに定義する。
【0450】
【数14】
Figure 0004701547
【0451】
誤差が最小になるためには、誤差の自乗和Eに対する、変数Wvの偏微分が0になればよい。ここで、vは、0乃至5の整数のいずれかの値である。従って、式(48)を満たすようにwyを求める。
【0452】
【数15】
Figure 0004701547
【0453】
式(48)に式(46)を代入すると、式(49)を得る。
【0454】
【数16】
Figure 0004701547
【0455】
式(49)のvに0乃至5の整数のいずれか1つを代入して得られる6つの式に、例えば、掃き出し法(Gauss-Jordanの消去法)などを適用して、wyを算出する。上述したように、w0は水平方向の傾きmであり、w1は垂直方向の傾きqであり、w2は切片pであり、w3はsであり、w4はtであり、w5はuである。
【0456】
以上のように、画素値Mおよび画素値Bを設定した式に、最小自乗法を適用することにより、水平方向の傾きm、垂直方向の傾きq、切片p、s、t、およびuを求めることができる。
【0457】
式(35)乃至式(43)に対応する説明において、混合領域に含まれる画素の画素値をMとし、背景領域に含まれる画素の画素値をBとして説明したが、注目している画素が、カバードバックグラウンド領域に含まれる場合、またはアンカバードバックグラウンド領域に含まれる場合のそれぞれに対して、正規方程式を立てる必要がある。
【0458】
例えば、図74に示す、フレーム#nのカバードバックグラウンド領域に含まれる画素の混合比αを求める場合、フレーム#nの画素のC04乃至C08、およびフレーム#n-1の画素の画素値P04乃至P08が、正規方程式に設定される。
【0459】
図75に示す、フレーム#nのアンカバードバックグラウンド領域に含まれる画素の混合比αを求める場合、フレーム#nの画素のC28乃至C32、およびフレーム#n+1の画素の画素値N28乃至N32が、正規方程式に設定される。
【0460】
また、例えば、図85に示す、カバードバックグラウンド領域に含まれる画素の混合比αを算出するとき、以下の式(50)乃至式(58)が立てられる。混合比αを算出する画素の画素値は、Mc5である。
【0461】
Mc1=(-1)・Bc1・m+(-1)・Bc1・q+Bc1・p+(-1)・s+(-1)・t+u (50)
Mc2=(0)・Bc2・m+(-1)・Bc2・q+Bc2・p+(0)・s+(-1)・t+u (51)
Mc3=(+1)・Bc3・m+(-1)・Bc3・q+Bc3・p+(+1)・s+(-1)・t+u (52)
Mc4=(-1)・Bc4・m+(0)・Bc4・q+Bc4・p+(-1)・s+(0)・t+u (53)
Mc5=(0)・Bc5・m+(0)・Bc5・q+Bc5・p+(0)・s+(0)・t+u (54)
Mc6=(+1)・Bc6・m+(0)・Bc6・q+Bc6・p+(+1)・s+(0)・t+u (55)
Mc7=(-1)・Bc7・m+(+1)・Bc7・q+Bc7・p+(-1)・s+(+1)・t+u (56)
Mc8=(0)・Bc8・m+(+1)・Bc8・q+Bc8・p+(0)・s+(+1)・t+u (57)
Mc9=(+1)・Bc9・m+(+1)・Bc9・q+Bc9・p+(+1)・s+(+1)・t+u (58)
【0462】
フレーム#nのカバードバックグラウンド領域に含まれる画素の混合比αを算出するとき、式(50)乃至式(58)において、フレーム#nの画素に対応する、フレーム#n-1の画素の背景領域の画素の画素値Bc1乃至Bc9が使用される。
【0463】
図85に示す、アンカバードバックグラウンド領域に含まれる画素の混合比αを算出するとき、以下の式(59)乃至式(67)が立てられる。混合比αを算出する画素の画素値は、Mu5である。
【0464】
Mu1=(-1)・Bu1・m+(-1)・Bu1・q+Bu1・p+(-1)・s+(-1)・t+u (59)
Mu2=(0)・Bu2・m+(-1)・Bu2・q+Bu2・p+(0)・s+(-1)・t+u (60)
Mu3=(+1)・Bu3・m+(-1)・Bu3・q+Bu3・p+(+1)・s+(-1)・t+u (61)
Mu4=(-1)・Bu4・m+(0)・Bu4・q+Bu4・p+(-1)・s+(0)・t+u (62)
Mu5=(0)・Bu5・m+(0)・Bu5・q+Bu5・p+(0)・s+(0)・t+u (63)
Mu6=(+1)・Bu6・m+(0)・Bu6・q+Bu6・p+(+1)・s+(0)・t+u (64)
Mu7=(-1)・Bu7・m+(+1)・Bu7・q+Bu7・p+(-1)・s+(+1)・t+u (65)
Mu8=(0)・Bu8・m+(+1)・Bu8・q+Bu8・p+(0)・s+(+1)・t+u (66)
Mu9=(+1)・Bu9・m+(+1)・Bu9・q+Bu9・p+(+1)・s+(+1)・t+u (67)
【0465】
フレーム#nのアンカバードバックグラウンド領域に含まれる画素の混合比αを算出するとき、式(59)乃至式(67)において、フレーム#nの画素に対応する、フレーム#n+1の画素の背景領域の画素の画素値Bu1乃至Bu9が使用される。
【0466】
図86は、推定混合比処理部401の構成を示すブロック図である。推定混合比処理部401に入力された画像は、遅延部501および足し込み部502に供給される。
【0467】
遅延回路221は、入力画像を1フレーム遅延させ、足し込み部502に供給する。足し込み部502に、入力画像としてフレーム#nが入力されているとき、遅延回路221は、フレーム#n-1を足し込み部502に供給する。
【0468】
足し込み部502は、混合比αを算出する画素の近傍の画素の画素値、およびフレーム#n-1の画素値を、正規方程式に設定する。例えば、足し込み部502は、式(50)乃至式(58)に基づいて、正規方程式に画素値Mc1乃至Mc9および画素値Bc1乃至Bc9を設定する。足し込み部502は、画素値が設定された正規方程式を演算部503に供給する。
【0469】
演算部503は、足し込み部502から供給された正規方程式を掃き出し法などにより解いて推定混合比を求め、求められた推定混合比を出力する。
【0470】
このように、推定混合比処理部401は、入力画像を基に、推定混合比を算出して、混合比決定部403に供給することができる。
【0471】
なお、推定混合比処理部402は、推定混合比処理部401と同様の構成を有するので、その説明は省略する。
【0472】
図87は、推定混合比処理部401により算出された推定混合比の例を示す図である。図87に示す推定混合比は、等速で動いているオブジェクトに対応する前景の動きvが11であり、7×7画素のブロックを単位として方程式を生成して算出された結果を、1ラインに対して示すものである。
【0473】
推定混合比は、混合領域において、図86に示すように、ほぼ直線的に変化していることがわかる。
【0474】
次に、図86に構成を示す推定混合比処理部401による、カバードバックグラウンド領域に対応するモデルによる混合比推定の処理を図88のフローチャートを参照して説明する。
【0475】
ステップS521において、足し込み部502は、入力された画像に含まれる画素値、および遅延回路221から供給される画像に含まれる画素値を、カバードバックグラウンド領域のモデルに対応する正規方程式に設定する。
【0476】
ステップS522において、推定混合比処理部401は、対象となる画素についての設定が終了したか否かを判定し、対象となる画素についての設定が終了していないと判定された場合、ステップS521に戻り、正規方程式への画素値の設定の処理を繰り返す。
【0477】
ステップS522において、対象となる画素についての画素値の設定が終了したと判定された場合、ステップS523に進み、演算部173は、画素値が設定された正規方程式を基に、推定混合比を演算して、求められた推定混合比を出力する。
【0478】
このように、図86に構成を示す推定混合比処理部401は、入力画像を基に、推定混合比を演算することができる。
【0479】
アンカバードバックグラウンド領域に対応するモデルによる混合比推定の処理は、アンカバードバックグラウンド領域のモデルに対応する正規方程式を利用した、図88のフローチャートに示す処理と同様なので、その説明は省略する。
【0480】
なお、背景に対応するオブジェクトが静止しているとして説明したが、背景領域に対応する画像が動きを含んでいても上述した混合比を求める処理を適用することができる。例えば、背景領域に対応する画像が一様に動いているとき、推定混合比処理部401は、この動きに対応して画像全体をシフトさせ、背景に対応するオブジェクトが静止している場合と同様に処理する。また、背景領域に対応する画像が局所毎に異なる動きを含んでいるとき、推定混合比処理部401は、混合領域に属する画素に対応する画素として、動きに対応した画素を選択して、上述の処理を実行する。
【0481】
このように、混合比算出部102は、領域特定部101から供給された領域情報、および入力画像を基に、各画素に対応する特徴量である混合比αを算出することができる。
【0482】
混合比αを利用することにより、動いているオブジェクトに対応する画像に含まれる動きボケの情報を残したままで、画素値に含まれる前景の成分と背景の成分とを分離することが可能になる。
【0483】
また、混合比αに基づいて画像を合成すれば、実世界を実際に撮影し直したような動いているオブジェクトのスピードに合わせた正しい動きボケを含む画像を作ることが可能になる。
【0484】
次に、前景背景分離部105について説明する。図89は、前景背景分離部105の構成の一例を示すブロック図である。前景背景分離部105に供給された入力画像は、分離部601、スイッチ602、およびスイッチ604に供給される。カバードバックグラウンド領域を示す情報、およびアンカバードバックグラウンド領域を示す、領域特定部103から供給された領域情報は、分離部601に供給される。前景領域を示す領域情報は、スイッチ602に供給される。背景領域を示す領域情報は、スイッチ604に供給される。
【0485】
混合比算出部104から供給された混合比αは、分離部601に供給される。
【0486】
分離部601は、カバードバックグラウンド領域を示す領域情報、アンカバードバックグラウンド領域を示す領域情報、および混合比αを基に、入力画像から前景の成分を分離して、分離した前景の成分を合成部603に供給するとともに、入力画像から背景の成分を分離して、分離した背景の成分を合成部605に供給する。
【0487】
スイッチ602は、前景領域を示す領域情報を基に、前景に対応する画素が入力されたとき、閉じられ、入力画像に含まれる前景に対応する画素のみを合成部603に供給する。
【0488】
スイッチ604は、背景領域を示す領域情報を基に、背景に対応する画素が入力されたとき、閉じられ、入力画像に含まれる背景に対応する画素のみを合成部605に供給する。
【0489】
合成部603は、分離部601から供給された前景に対応する成分、スイッチ602から供給された前景に対応する画素を基に、前景成分画像を合成し、合成した前景成分画像を出力する。前景領域と混合領域とは重複しないので、合成部603は、例えば、前景に対応する成分と、前景に対応する画素とに論理和の演算を適用して、前景成分画像を合成する。
【0490】
合成部603は、前景成分画像の合成の処理の最初に実行される初期化の処理において、内蔵しているフレームメモリに全ての画素値が0である画像を格納し、前景成分画像の合成の処理において、前景成分画像を格納(上書き)する。従って、合成部603が出力する前景成分画像の内、背景領域に対応する画素には、画素値として0が格納されている。
【0491】
合成部605は、分離部601から供給された背景に対応する成分、スイッチ604から供給された背景に対応する画素を基に、背景成分画像を合成して、合成した背景成分画像を出力する。背景領域と混合領域とは重複しないので、合成部605は、例えば、背景に対応する成分と、背景に対応する画素とに論理和の演算を適用して、背景成分画像を合成する。
【0492】
合成部605は、背景成分画像の合成の処理の最初に実行される初期化の処理において、内蔵しているフレームメモリに全ての画素値が0である画像を格納し、背景成分画像の合成の処理において、背景成分画像を格納(上書き)する。従って、合成部605が出力する背景成分画像の内、前景領域に対応する画素には、画素値として0が格納されている。
【0493】
図90は、前景背景分離部105に入力される入力画像、並びに前景背景分離部105から出力される前景成分画像および背景成分画像を示す図である。
【0494】
図90(A)は、表示される画像の模式図であり、図90(B)は、図90(A)に対応する前景領域に属する画素、背景領域に属する画素、および混合領域に属する画素を含む1ラインの画素を時間方向に展開したモデル図を示す。
【0495】
図90(A)および図90(B)に示すように、前景背景分離部105から出力される背景成分画像は、背景領域に属する画素、および混合領域の画素に含まれる背景の成分から構成される。
【0496】
図90(A)および図90(B)に示すように、前景背景分離部105から出力される前景成分画像は、前景領域に属する画素、および混合領域の画素に含まれる前景の成分から構成される。
【0497】
混合領域の画素の画素値は、前景背景分離部105により、背景の成分と、前景の成分とに分離される。分離された背景の成分は、背景領域に属する画素と共に、背景成分画像を構成する。分離された前景の成分は、前景領域に属する画素と共に、前景成分画像を構成する。
【0498】
このように、前景成分画像は、背景領域に対応する画素の画素値が0とされ、前景領域に対応する画素および混合領域に対応する画素に意味のある画素値が設定される。同様に、背景成分画像は、前景領域に対応する画素の画素値が0とされ、背景領域に対応する画素および混合領域に対応する画素に意味のある画素値が設定される。
【0499】
次に、分離部601が実行する、混合領域に属する画素から前景の成分、および背景の成分を分離する処理について説明する。
【0500】
図91は、図中の左から右に移動するオブジェクトに対応する前景を含む、2つのフレームの前景の成分および背景の成分を示す画像のモデルである。図91に示す画像のモデルにおいて、前景の動き量vは4であり、仮想分割数は、4とされている。
【0501】
フレーム#nにおいて、最も左の画素、および左から14番目乃至18番目の画素は、背景の成分のみから成り、背景領域に属する。フレーム#nにおいて、左から2番目乃至4番目の画素は、背景の成分および前景の成分を含み、アンカバードバックグラウンド領域に属する。フレーム#nにおいて、左から11番目乃至13番目の画素は、背景の成分および前景の成分を含み、カバードバックグラウンド領域に属する。フレーム#nにおいて、左から5番目乃至10番目の画素は、前景の成分のみから成り、前景領域に属する。
【0502】
フレーム#n+1において、左から1番目乃至5番目の画素、および左から18番目の画素は、背景の成分のみから成り、背景領域に属する。フレーム#n+1において、左から6番目乃至8番目の画素は、背景の成分および前景の成分を含み、アンカバードバックグラウンド領域に属する。フレーム#n+1において、左から15番目乃至17番目の画素は、背景の成分および前景の成分を含み、カバードバックグラウンド領域に属する。フレーム#n+1において、左から9番目乃至14番目の画素は、前景の成分のみから成り、前景領域に属する。
【0503】
図92は、カバードバックグラウンド領域に属する画素から前景の成分を分離する処理を説明する図である。図92において、α1乃至α18は、フレーム#nにおける画素のぞれぞれに対応する混合比である。図92において、左から15番目乃至17番目の画素は、カバードバックグラウンド領域に属する。
【0504】
フレーム#nの左から15番目の画素の画素値C15は、式(68)で表される。
【0505】
Figure 0004701547
ここで、α15は、フレーム#nの左から15番目の画素の混合比である。P15は、フレーム#n-1の左から15番目の画素の画素値である。
【0506】
式(68)を基に、フレーム#nの左から15番目の画素の前景の成分の和f15は、式(69)で表される。
【0507】
Figure 0004701547
【0508】
同様に、フレーム#nの左から16番目の画素の前景の成分の和f16は、式(70)で表され、フレーム#nの左から17番目の画素の前景の成分の和f17は、式(71)で表される。
【0509】
f16=C16-α16・P16 (70)
f17=C17-α17・P17 (71)
【0510】
このように、カバードバックグラウンド領域に属する画素の画素値Cに含まれる前景の成分fcは、式(72)で計算される。
【0511】
fc=C-α・P (72)
Pは、1つ前のフレームの、対応する画素の画素値である。
【0512】
図93は、アンカバードバックグラウンド領域に属する画素から前景の成分を分離する処理を説明する図である。図93において、α1乃至α18は、フレーム#nにおける画素のぞれぞれに対応する混合比である。図93において、左から2番目乃至4番目の画素は、アンカバードバックグラウンド領域に属する。
【0513】
フレーム#nの左から2番目の画素の画素値C02は、式(73)で表される。
【0514】
Figure 0004701547
ここで、α2は、フレーム#nの左から2番目の画素の混合比である。N02は、フレーム#n+1の左から2番目の画素の画素値である。
【0515】
式(73)を基に、フレーム#nの左から2番目の画素の前景の成分の和f02は、式(74)で表される。
【0516】
Figure 0004701547
【0517】
同様に、フレーム#nの左から3番目の画素の前景の成分の和f03は、式(75)で表され、フレーム#nの左から4番目の画素の前景の成分の和f04は、式(76)で表される。
【0518】
f03=C03-α3・N03 (75)
f04=C04-α4・N04 (76)
【0519】
このように、アンカバードバックグラウンド領域に属する画素の画素値Cに含まれる前景の成分fuは、式(77)で計算される。
【0520】
fu=C-α・N (77)
Nは、1つ後のフレームの、対応する画素の画素値である。
【0521】
このように、分離部601は、領域情報に含まれる、カバードバックグラウンド領域を示す情報、およびアンカバードバックグラウンド領域を示す情報、並びに画素毎の混合比αを基に、混合領域に属する画素から前景の成分、および背景の成分を分離することができる。
【0522】
図94は、以上で説明した処理を実行する分離部601の構成の一例を示すブロック図である。分離部601に入力された画像は、フレームメモリ621に供給され、混合比算出部104から供給されたカバードバックグラウンド領域およびアンカバードバックグラウンド領域を示す領域情報、並びに混合比αは、分離処理ブロック622に入力される。
【0523】
フレームメモリ621は、入力された画像をフレーム単位で記憶する。フレームメモリ621は、処理の対象がフレーム#nであるとき、フレーム#nの1つ前のフレームであるフレーム#n-1、フレーム#n、およびフレーム#nの1つ後のフレームであるフレーム#n+1を記憶する。
【0524】
フレームメモリ621は、フレーム#n-1、フレーム#n、およびフレーム#n+1の対応する画素を分離処理ブロック622に供給する。
【0525】
分離処理ブロック622は、カバードバックグラウンド領域およびアンカバードバックグラウンド領域を示す領域情報、並びに混合比αを基に、フレームメモリ621から供給されたフレーム#n-1、フレーム#n、およびフレーム#n+1の対応する画素の画素値に図92および図93を参照して説明した演算を適用して、フレーム#nの混合領域に属する画素から前景の成分および背景の成分を分離して、フレームメモリ623に供給する。
【0526】
分離処理ブロック622は、アンカバード領域処理部631、カバード領域処理部632、合成部633、および合成部634で構成されている。
【0527】
アンカバード領域処理部631の乗算器641は、混合比αを、フレームメモリ621から供給されたフレーム#n+1の画素の画素値に乗じて、スイッチ642に出力する。スイッチ642は、フレームメモリ621から供給されたフレーム#nの画素(フレーム#n+1の画素に対応する)がアンカバードバックグラウンド領域であるとき、閉じられ、乗算器641から供給された混合比αを乗じた画素値を演算器643および合成部634に供給する。スイッチ642から出力されるフレーム#n+1の画素の画素値に混合比αを乗じた値は、フレーム#nの対応する画素の画素値の背景の成分に等しい。
【0528】
演算器643は、フレームメモリ621から供給されたフレーム#nの画素の画素値から、スイッチ642から供給された背景の成分を減じて、前景の成分を求める。演算器643は、アンカバードバックグラウンド領域に属する、フレーム#nの画素の前景の成分を合成部633に供給する。
【0529】
カバード領域処理部632の乗算器651は、混合比αを、フレームメモリ621から供給されたフレーム#n-1の画素の画素値に乗じて、スイッチ652に出力する。スイッチ652は、フレームメモリ621から供給されたフレーム#nの画素(フレーム#n-1の画素に対応する)がカバードバックグラウンド領域であるとき、閉じられ、乗算器651から供給された混合比αを乗じた画素値を演算器653および合成部634に供給する。スイッチ652から出力されるフレーム#n-1の画素の画素値に混合比αを乗じた値は、フレーム#nの対応する画素の画素値の背景の成分に等しい。
【0530】
演算器653は、フレームメモリ621から供給されたフレーム#nの画素の画素値から、スイッチ652から供給された背景の成分を減じて、前景の成分を求める。演算器653は、カバードバックグラウンド領域に属する、フレーム#nの画素の前景の成分を合成部633に供給する。
【0531】
合成部633は、フレーム#nの、演算器643から供給された、アンカバードバックグラウンド領域に属する画素の前景の成分、および演算器653から供給された、カバードバックグラウンド領域に属する画素の前景の成分を合成して、フレームメモリ623に供給する。
【0532】
合成部634は、フレーム#nの、スイッチ642から供給された、アンカバードバックグラウンド領域に属する画素の背景の成分、およびスイッチ652から供給された、カバードバックグラウンド領域に属する画素の背景の成分を合成して、フレームメモリ623に供給する。
【0533】
フレームメモリ623は、分離処理ブロック622から供給された、フレーム#nの混合領域の画素の前景の成分と、背景の成分とをそれぞれに記憶する。
【0534】
フレームメモリ623は、記憶しているフレーム#nの混合領域の画素の前景の成分、および記憶しているフレーム#nの混合領域の画素の背景の成分を出力する。
【0535】
特徴量である混合比αを利用することにより、画素値に含まれる前景の成分と背景の成分とを完全に分離することが可能になる。
【0536】
合成部603は、分離部601から出力された、フレーム#nの混合領域の画素の前景の成分と、前景領域に属する画素とを合成して前景成分画像を生成する。合成部605は、分離部601から出力された、フレーム#nの混合領域の画素の背景の成分と、背景領域に属する画素とを合成して背景成分画像を生成する。
【0537】
図95は、図91のフレーム#nに対応する、前景成分画像の例と、背景成分画像の例を示す図である。
【0538】
図95(A)は、図91のフレーム#nに対応する、前景成分画像の例を示す。最も左の画素、および左から14番目の画素は、前景と背景が分離される前において、背景の成分のみから成っていたので、画素値が0とされる。
【0539】
左から2番目乃至4番目の画素は、前景と背景とが分離される前において、アンカバードバックグラウンド領域に属し、背景の成分が0とされ、前景の成分がそのまま残されている。左から11番目乃至13番目の画素は、前景と背景とが分離される前において、カバードバックグラウンド領域に属し、背景の成分が0とされ、前景の成分がそのまま残されている。左から5番目乃至10番目の画素は、前景の成分のみから成るので、そのまま残される。
【0540】
図95(B)は、図91のフレーム#nに対応する、背景成分画像の例を示す。最も左の画素、および左から14番目の画素は、前景と背景とが分離される前において、背景の成分のみから成っていたので、そのまま残される。
【0541】
左から2番目乃至4番目の画素は、前景と背景とが分離される前において、アンカバードバックグラウンド領域に属し、前景の成分が0とされ、背景の成分がそのまま残されている。左から11番目乃至13番目の画素は、前景と背景とが分離される前において、カバードバックグラウンド領域に属し、前景の成分が0とされ、背景の成分がそのまま残されている。左から5番目乃至10番目の画素は、前景と背景とが分離される前において、前景の成分のみから成っていたので、画素値が0とされる。
【0542】
次に、図96に示すフローチャートを参照して、前景背景分離部105による前景と背景との分離の処理を説明する。ステップS601において、分離部601のフレームメモリ621は、入力画像を取得し、前景と背景との分離の対象となるフレーム#nを、その前のフレーム#n-1およびその後のフレーム#n+1と共に記憶する。
【0543】
ステップS602において、分離部601の分離処理ブロック622は、混合比算出部104から供給された領域情報を取得する。ステップS603において、分離部601の分離処理ブロック622は、混合比算出部104から供給された混合比αを取得する。
【0544】
ステップS604において、アンカバード領域処理部631は、領域情報および混合比αを基に、フレームメモリ621から供給された、アンカバードバックグラウンド領域に属する画素の画素値から、背景の成分を抽出する。
【0545】
ステップS605において、アンカバード領域処理部631は、領域情報および混合比αを基に、フレームメモリ621から供給された、アンカバードバックグラウンド領域に属する画素の画素値から、前景の成分を抽出する。
【0546】
ステップS606において、カバード領域処理部632は、領域情報および混合比αを基に、フレームメモリ621から供給された、カバードバックグラウンド領域に属する画素の画素値から、背景の成分を抽出する。
【0547】
ステップS607において、カバード領域処理部632は、領域情報および混合比αを基に、フレームメモリ621から供給された、カバードバックグラウンド領域に属する画素の画素値から、前景の成分を抽出する。
【0548】
ステップS608において、合成部633は、ステップS605の処理で抽出されたアンカバードバックグラウンド領域に属する画素の前景の成分と、ステップS607の処理で抽出されたカバードバックグラウンド領域に属する画素の前景の成分とを合成する。合成された前景の成分は、合成部603に供給される。更に、合成部603は、スイッチ602を介して供給された前景領域に属する画素と、分離部601から供給された前景の成分とを合成して、前景成分画像を生成する。
【0549】
ステップS609において、合成部634は、ステップS604の処理で抽出されたアンカバードバックグラウンド領域に属する画素の背景の成分と、ステップS606の処理で抽出されたカバードバックグラウンド領域に属する画素の背景の成分とを合成する。合成された背景の成分は、合成部605に供給される。更に、合成部605は、スイッチ604を介して供給された背景領域に属する画素と、分離部601から供給された背景の成分とを合成して、背景成分画像を生成する。
【0550】
ステップS610において、合成部603は、前景成分画像を出力する。ステップS611において、合成部605は、背景成分画像を出力し、処理は終了する。
【0551】
このように、前景背景分離部105は、領域情報および混合比αを基に、入力画像から前景の成分と、背景の成分とを分離し、前景の成分のみから成る前景成分画像、および背景の成分のみから成る背景成分画像を出力することができる。
【0552】
次に、前景成分画像の動きボケの量の調整について説明する。
【0553】
図97は、動きボケ調整部106の構成の一例を示すブロック図である。動き検出部102から供給された動きベクトルとその位置情報は、処理単位決定部801、モデル化部802、および演算部805に供給される。領域特定部103から供給された領域情報は、処理単位決定部801に供給される。前景背景分離部105から供給された前景成分画像は、足し込み部804に供給される。
【0554】
処理単位決定部801は、動きベクトルとその位置情報、および領域情報を基に、処理単位を生成し、生成した処理単位をモデル化部802および足し込み部804に供給する。
【0555】
処理単位決定部801が生成する処理単位は、図98に例を示すように、前景成分画像のカバードバックグラウンド領域に対応する画素から始まり、アンカバードバックグラウンド領域に対応する画素までの動き方向に並ぶ連続する画素、またはアンカバードバックグラウンド領域に対応する画素から始まり、カバードバックグラウンド領域に対応する画素までの動き方向に並ぶ連続する画素を示す。処理単位は、例えば、左上点(処理単位で指定される画素であって、画像上で最も左または最も上に位置する画素の位置)および右下点の2つのデータから成る。
【0556】
モデル化部802は、動きベクトルおよび入力された処理単位を基に、モデル化を実行する。より具体的には、例えば、モデル化部802は、処理単位に含まれる画素の数、画素値の時間方向の仮想分割数、および画素毎の前景の成分の数に対応する複数のモデルを予め記憶しておき、処理単位、および画素値の時間方向の仮想分割数を基に、図99に示すような、画素値と前景の成分との対応を指定するモデルを選択する。
【0557】
例えば、処理単位に対応する画素の数が12でありシャッタ時間内の動き量vが5であるときにおいては、モデル化部802は、仮想分割数を5とし、最も左に位置する画素が1つの前景の成分を含み、左から2番目の画素が2つの前景の成分を含み、左から3番目の画素が3つの前景の成分を含み、左から4番目の画素が4つの前景の成分を含み、左から5番目の画素が5つの前景の成分を含み、左から6番目の画素が5つの前景の成分を含み、左から7番目の画素が5つの前景の成分を含み、左から8番目の画素が5つの前景の成分を含み、左から9番目の画素が4つの前景の成分を含み、左から10番目の画素が3つの前景の成分を含み、左から11番目の画素が2つの前景の成分を含み、左から12番目の画素が1つの前景の成分を含み、全体として8つの前景の成分から成るモデルを選択する。
【0558】
なお、モデル化部802は、予め記憶してあるモデルから選択するのではなく、動きベクトル、および処理単位が供給されたとき、動きベクトル、および処理単位を基に、モデルを生成するようにしてもよい。
【0559】
モデル化部802は、選択したモデルを方程式生成部803に供給する。
【0560】
方程式生成部803は、モデル化部802から供給されたモデルを基に、方程式を生成する。図99に示す前景成分画像のモデルを参照して、前景の成分の数が8であり、処理単位に対応する画素の数が12であり、動き量vが5であり、仮想分割数が5であるときの、方程式生成部803が生成する方程式について説明する。
【0561】
前景成分画像に含まれるシャッタ時間/vに対応する前景成分がF01/v乃至F08/vであるとき、F01/v乃至F08/vと画素値C01乃至C12との関係は、式(78)乃至式(89)で表される。
【0562】
C01=F01/v (78)
C02=F02/v+F01/v (79)
C03=F03/v+F02/v+F01/v (80)
C04=F04/v+F03/v+F02/v+F01/v (81)
C05=F05/v+F04/v+F03/v+F02/v+F01/v (82)
C06=F06/v+F05/v+F04/v+F03/v+F02/v (83)
C07=F07/v+F06/v+F05/v+F04/v+F03/v (84)
C08=F08/v+F07/v+F06/v+F05/v+F04/v (85)
C09=F08/v+F07/v+F06/v+F05/v (86)
C10=F08/v+F07/v+F06/v (87)
C11=F08/v+F07/v (88)
C12=F08/v (89)
【0563】
方程式生成部803は、生成した方程式を変形して方程式を生成する。方程式生成部803が生成する方程式を、式(90)乃至式(101)に示す。
【0564】
Figure 0004701547
【0565】
式(90)乃至式(101)は、式(102)として表すこともできる。
【0566】
【数17】
Figure 0004701547
式(102)において、jは、画素の位置を示す。この例において、jは、1乃至12のいずれか1つの値を有する。また、iは、前景値の位置を示す。この例において、iは、1乃至8のいずれか1つの値を有する。aijは、iおよびjの値に対応して、0または1の値を有する。
【0567】
誤差を考慮して表現すると、式(102)は、式(103)のように表すことができる。
【0568】
【数18】
Figure 0004701547
式(103)において、ejは、注目画素Cjに含まれる誤差である。
【0569】
式(103)は、式(104)に書き換えることができる。
【0570】
【数19】
Figure 0004701547
【0571】
ここで、最小自乗法を適用するため、誤差の自乗和Eを式(105)に示すように定義する。
【0572】
【数20】
Figure 0004701547
【0573】
誤差が最小になるためには、誤差の自乗和Eに対する、変数Fkによる偏微分の値が0になればよい。式(106)を満たすようにFkを求める。
【0574】
【数21】
Figure 0004701547
【0575】
式(106)において、動き量vは固定値であるから、式(107)を導くことができる。
【0576】
【数22】
Figure 0004701547
【0577】
式(107)を展開して、移項すると、式(108)を得る。
【0578】
【数23】
Figure 0004701547
【0579】
式(108)のkに1乃至8の整数のいずれか1つを代入して得られる8つの式に展開する。得られた8つの式を、行列により1つの式により表すことができる。この式を正規方程式と呼ぶ。
【0580】
このような最小自乗法に基づく、方程式生成部803が生成する正規方程式の例を式(109)に示す。
【0581】
【数24】
Figure 0004701547
【0582】
式(109)をA・F=v・Cと表すと、C,A,vが既知であり、Fは未知である。また、A,vは、モデル化の時点で既知だが、Cは、足し込み動作において画素値を入力することで既知となる。
【0583】
最小自乗法に基づく正規方程式により前景成分を算出することにより、画素Cに含まれている誤差を分散させることができる。
【0584】
方程式生成部803は、このように生成された正規方程式を足し込み部804に供給する。
【0585】
足し込み部804は、処理単位決定部801から供給された処理単位を基に、前景成分画像に含まれる画素値Cを、方程式生成部803から供給された行列の式に設定する。足し込み部804は、画素値Cを設定した行列を演算部805に供給する。
【0586】
演算部805は、掃き出し法(Gauss-Jordanの消去法)などの解法に基づく処理により、動きボケが除去された前景成分Fi/vを算出して、動きボケが除去された前景の画素値である、0乃至8の整数のいずれかのiに対応するFiを算出して、図100に例を示す、動きボケが除去された画素値であるFiから成る、動きボケが除去された前景成分画像を動きボケ付加部806および選択部807に出力する。
【0587】
なお、図100に示す動きボケが除去された前景成分画像において、C03乃至C10のそれぞれにF01乃至F08のそれぞれが設定されているのは、画面に対する前景成分画像の位置を変化させないためであり、任意の位置に対応させることができる。
【0588】
動きボケ付加部806は、動き量vとは異なる値の動きボケ調整量v'、例えば、動き量vの半分の値の動きボケ調整量v'や、動き量vと無関係の値の動きボケ調整量v'を与えることで、動きボケの量を調整することができる。例えば、図101に示すように、動きボケ付加部806は、動きボケが除去された前景の画素値Fiを動きボケ調整量v'で除すことにより、前景成分Fi/v'を算出して、前景成分Fi/v'の和を算出して、動きボケの量が調整された画素値を生成する。例えば、動きボケ調整量v'が3のとき、画素値C02は、(F01)/v'とされ、画素値C03は、(F01+F02)/v'とされ、画素値C04は、(F01+F02+F03)/v'とされ、画素値C05は、(F02+F03+F04)/v'とされる。
【0589】
動きボケ付加部806は、動きボケの量を調整した前景成分画像を選択部807に供給する。
【0590】
選択部807は、例えば使用者の選択に対応した選択信号を基に、演算部805から供給された動きボケが除去された前景成分画像、および動きボケ付加部806から供給された動きボケの量が調整された前景成分画像のいずれか一方を選択して、選択した前景成分画像を出力する。
【0591】
このように、動きボケ調整部106は、選択信号および動きボケ調整量v'を基に、動きボケの量を調整することができる。
【0592】
また、例えば、図102に示すように、処理単位に対応する画素の数が8であり、動き量vが4であるとき、動きボケ調整部106は、式(110)に示す行列の式を生成する。
【0593】
【数25】
Figure 0004701547
【0594】
動きボケ調整部106は、このように処理単位の長さに対応した数の式を立てて、動きボケの量が調整された画素値であるFiを算出する。同様に、例えば、処理単位に含まれる画素の数が100あるとき、100個の画素に対応する式を生成して、Fiを算出する。
【0595】
図103は、動きボケ調整部106の他の構成を示す図である。図97に示す場合と同様の部分には同一の番号を付してあり、その説明は省略する。
【0596】
選択部821は、選択信号を基に、入力された動きベクトルとその位置信号をそのまま処理単位決定部801およびモデル化部802に供給するか、または動きベクトルの大きさを動きボケ調整量v'に置き換えて、その大きさが動きボケ調整量v'に置き換えられた動きベクトルとその位置信号を処理単位決定部801およびモデル化部802に供給する。
【0597】
このようにすることで、図103の動きボケ調整部106の処理単位決定部801乃至演算部805は、動き量vと動きボケ調整量v'との値に対応して、動きボケの量を調整することができる。例えば、動き量vが5であり、動きボケ調整量v'が3であるとき、図103の動きボケ調整部106の処理単位決定部801乃至演算部805は、図99に示す動き量vが5である前景成分画像に対して、3である動きボケ調整量v'対応する図101に示すようなモデルに従って、演算を実行し、(動き量v)/(動きボケ調整量v')=5/3、すなわちほぼ1.7の動き量vに応じた動きボケを含む画像を算出する。なお、この場合、算出される画像は、3である動き量vに対応した動きボケを含むのではないので、動きボケ付加部806の結果とは動き量vと動きボケ調整量v'の関係の意味合いが異なる点に注意が必要である。
【0598】
以上のように、動きボケ調整部106は、動き量vおよび処理単位に対応して、式を生成し、生成した式に前景成分画像の画素値を設定して、動きボケの量が調整された前景成分画像を算出する。
【0599】
次に、図104のフローチャートを参照して、動きボケ調整部106による前景成分画像に含まれる動きボケの量の調整の処理を説明する。
【0600】
ステップS801において、動きボケ調整部106の処理単位決定部801は、動きベクトルおよび領域情報を基に、処理単位を生成し、生成した処理単位をモデル化部802に供給する。
【0601】
ステップS802において、動きボケ調整部106のモデル化部802は、動き量vおよび処理単位に対応して、モデルの選択や生成を行う。ステップS803において、方程式生成部803は、選択されたモデルを基に、正規方程式を作成する。
【0602】
ステップS804において、足し込み部804は、作成された正規方程式に前景成分画像の画素値を設定する。ステップS805において、足し込み部804は、処理単位に対応する全ての画素の画素値の設定を行ったか否かを判定し、処理単位に対応する全ての画素の画素値の設定を行っていないと判定された場合、ステップS804に戻り、正規方程式への画素値の設定の処理を繰り返す。
【0603】
ステップS805において、処理単位の全ての画素の画素値の設定を行ったと判定された場合、ステップS806に進み、演算部805は、足し込み部804から供給された画素値が設定された正規方程式を基に、動きボケの量を調整した前景の画素値を算出して、処理は終了する。
【0604】
このように、動きボケ調整部106は、動きベクトルおよび領域情報を基に、動きボケを含む前景画像から動きボケの量を調整することができる。
【0605】
すなわち、サンプルデータである画素値に含まれる動きボケの量を調整することができる。
【0606】
図105は、動きボケ調整部106の構成の他の一例を示すブロック図である。動き検出部102から供給された動きベクトルとその位置情報は、処理単位決定部901および補正部905に供給され、領域特定部103から供給された領域情報は、処理単位決定部901に供給される。前景背景分離部105から供給された前景成分画像は、演算部904に供給される。
【0607】
処理単位決定部901は、動きベクトルとその位置情報、および領域情報を基に、処理単位を生成し、動きベクトルと共に、生成した処理単位をモデル化部902に供給する。
【0608】
モデル化部902は、動きベクトルおよび入力された処理単位を基に、モデル化を実行する。より具体的には、例えば、モデル化部902は、処理単位に含まれる画素の数、画素値の時間方向の仮想分割数、および画素毎の前景の成分の数に対応する複数のモデルを予め記憶しておき、処理単位、および画素値の時間方向の仮想分割数を基に、図106に示すような、画素値と前景の成分との対応を指定するモデルを選択する。
【0609】
例えば、処理単位に対応する画素の数が12であり動き量vが5であるときにおいては、モデル化部902は、仮想分割数を5とし、最も左に位置する画素が1つの前景の成分を含み、左から2番目の画素が2つの前景の成分を含み、左から3番目の画素が3つの前景の成分を含み、左から4番目の画素が4つの前景の成分を含み、左から5番目の画素が5つの前景の成分を含み、左から6番目の画素が5つの前景の成分を含み、左から7番目の画素が5つの前景の成分を含み、左から8番目の画素が5つの前景の成分を含み、左から9番目の画素が4つの前景の成分を含み、左から10番目の画素が3つの前景の成分を含み、左から11番目の画素が2つの前景の成分を含み、左から12番目の画素が1つの前景の成分を含み、全体として8つの前景の成分から成るモデルを選択する。
【0610】
なお、モデル化部902は、予め記憶してあるモデルから選択するのではなく、動きベクトル、および処理単位が供給されたとき、動きベクトル、および処理単位を基に、モデルを生成するようにしてもよい。
【0611】
方程式生成部903は、モデル化部902から供給されたモデルを基に、方程式を生成する。
【0612】
図106乃至図108に示す前景成分画像のモデルを参照して、前景の成分の数が8であり、処理単位に対応する画素の数が12であり、動き量vが5であるときの、方程式生成部903が生成する方程式の例について説明する。
【0613】
前景成分画像に含まれるシャッタ時間/vに対応する前景成分がF01/v乃至F08/vであるとき、F01/v乃至F08/vと画素値C01乃至C12との関係は、上述したように、式(78)乃至式(89)で表される。
【0614】
画素値C12およびC11に注目すると、画素値C12は、式(111)に示すように、前景の成分F08/vのみを含み、画素値C11は、前景の成分F08/vおよび前景の成分F07/vの積和から成る。従って、前景の成分F07/vは、式(112)で求めることができる。
【0615】
F08/v=C12 (111)
F07/v=C11-C12 (112)
【0616】
同様に、画素値C10乃至C01に含まれる前景の成分を考慮すると、前景の成分F06/v乃至F01/vは、式(113)乃至式(118)により求めることができる。
【0617】
F06/v=C10-C11 (113)
F05/v=C09-C10 (114)
F04/v=C08-C09 (115)
F03/v=C07-C08+C12 (116)
F02/v=C06-C07+C11-C12 (117)
F01/v=C05-C06+C10-C11 (118)
【0618】
方程式生成部903は、式(111)乃至式(118)に例を示す、画素値の差により前景の成分を算出するための方程式を生成する。方程式生成部903は、生成した方程式を演算部904に供給する。
【0619】
演算部904は、方程式生成部903から供給された方程式に前景成分画像の画素値を設定して、画素値を設定した方程式を基に、前景の成分を算出する。演算部904は、例えば、式(111)乃至式(118)が方程式生成部903から供給されたとき、式(111)乃至式(118)に画素値C05乃至C12を設定する。
【0620】
演算部904は、画素値が設定された式に基づき、前景の成分を算出する。例えば、演算部904は、画素値C05乃至C12が設定された式(111)乃至式(118)に基づく演算により、図107に示すように、前景の成分F01/v乃至F08/vを算出する。演算部904は、前景の成分F01/v乃至F08/vを補正部905に供給する。
【0621】
補正部905は、演算部904から供給された前景の成分に、処理単位決定部901から供給された動きベクトルに含まれる動き量vを乗じて、動きボケを除去した前景の画素値を算出する。例えば、補正部905は、演算部904から供給された前景の成分F01/v乃至F08/vが供給されたとき、前景の成分F01/v乃至F08/vのそれぞれに、5である動き量vを乗じることにより、図108に示すように、動きボケを除去した前景の画素値F01乃至F08を算出する。
【0622】
補正部905は、以上のように算出された、動きボケを除去した前景の画素値から成る前景成分画像を動きボケ付加部906および選択部907に供給する。
【0623】
動きボケ付加部906は、動き量vとは異なる値の動きボケ調整量v'、例えば、動き量vの半分の値の動きボケ調整量v'、動き量vと無関係の値の動きボケ調整量v'で、動きボケの量を調整することができる。例えば、図101に示すように、動きボケ付加部906は、動きボケが除去された前景の画素値Fiを動きボケ調整量v'で除すことにより、前景成分Fi/v'を算出して、前景成分Fi/v'の和を算出して、動きボケの量が調整された画素値を生成する。例えば、動きボケ調整量v'が3のとき、画素値C02は、(F01)/v'とされ、画素値C03は、(F01+F02)/v'とされ、画素値C04は、(F01+F02+F03)/v'とされ、画素値C05は、(F02+F03+F04)/v'とされる。
【0624】
動きボケ付加部906は、動きボケの量を調整した前景成分画像を選択部907に供給する。
【0625】
選択部907は、例えば使用者の選択に対応した選択信号を基に、補正部905から供給された動きボケが除去された前景成分画像、および動きボケ付加部906から供給された動きボケの量が調整された前景成分画像のいずれか一方を選択して、選択した前景成分画像を出力する。
【0626】
このように、動きボケ調整部106は、選択信号および動きボケ調整量v'を基に、動きボケの量を調整することができる。
【0627】
次に、図105に構成を示す動きボケ調整部106による前景の動きボケの量の調整の処理を図109のフローチャートを参照して説明する。
【0628】
ステップS901において、動きボケ調整部106の処理単位決定部901は、動きベクトルおよび領域情報を基に、処理単位を生成し、生成した処理単位をモデル化部902および補正部905に供給する。
【0629】
ステップS902において、動きボケ調整部106のモデル化部902は、動き量vおよび処理単位に対応して、モデルの選択や生成を行う。ステップS903において、方程式生成部903は、選択または生成されたモデルを基に、前景成分画像の画素値の差により前景の成分を算出するための方程式を生成する。
【0630】
ステップS904において、演算部904は、作成された方程式に前景成分画像の画素値を設定し、画素値が設定された方程式を基に、画素値の差分から前景の成分を抽出する。ステップS905において、演算部904は、処理単位に対応する全ての前景の成分を抽出したか否かを判定し、処理単位に対応する全ての前景の成分を抽出していないと判定された場合、ステップS904に戻り、前景の成分を抽出の処理を繰り返す。
【0631】
ステップS905において、処理単位に対応する全ての前景の成分を抽出したと判定された場合、ステップS906に進み、補正部905は、動き量vを基に、演算部904から供給された前景の成分F01/v乃至F08/vのそれぞれを補正して、動きボケを除去した前景の画素値F01乃至F08を算出する。
【0632】
ステップS907において、動きボケ付加部906は、動きボケの量を調整した前景の画素値を算出して、選択部907は、動きボケが除去された画像または動きボケの量が調整された画像のいずれかを選択して、選択した画像を出力して、処理は終了する。
【0633】
このように、図105に構成を示す動きボケ調整部106は、より簡単な演算で、より迅速に、動きボケを含む前景画像から動きボケを調整することができる。
【0634】
ウィナー・フィルタなど従来の動きボケを部分的に除去する手法が、理想状態では効果が認められるが、量子化され、ノイズを含んだ実際の画像に対して十分な効果が得られないのに対し、図105に構成を示す動きボケ調整部106においても、量子化され、ノイズを含んだ実際の画像に対しても十分な効果が認められ、精度の良い動きボケの除去が可能となる。
【0635】
以上のように、図27に構成を示す分離処理サーバ11は、入力画像に含まれる動きボケの量を調整することができる。
【0636】
図110は、分離処理サーバ11の機能の他の構成を示すブロック図である。
【0637】
図27に示す部分と同様の部分には同一の番号を付してあり、その説明は適宜省略する。
【0638】
領域特定部103は、領域情報を混合比算出部104および合成部1001に供給する。
【0639】
混合比算出部104は、混合比αを前景背景分離部105および合成部1001に供給する。
【0640】
前景背景分離部105は、前景成分画像を合成部1001に供給する。
【0641】
合成部1001は、混合比算出部104から供給された混合比α、領域特定部103から供給された領域情報を基に、任意の背景画像と、前景背景分離部105から供給された前景成分画像とを合成して、任意の背景画像と前景成分画像とが合成された合成画像を出力する。
【0642】
図111は、合成部1001の構成を示す図である。背景成分生成部1021は、混合比αおよび任意の背景画像を基に、背景成分画像を生成して、混合領域画像合成部1022に供給する。
【0643】
混合領域画像合成部1022は、背景成分生成部1021から供給された背景成分画像と前景成分画像とを合成することにより、混合領域合成画像を生成して、生成した混合領域合成画像を画像合成部1023に供給する。
【0644】
画像合成部1023は、領域情報を基に、前景成分画像、混合領域画像合成部1022から供給された混合領域合成画像、および任意の背景画像を合成して、合成画像を生成して出力する。
【0645】
このように、合成部1001は、前景成分画像を、任意の背景画像に合成することができる。
【0646】
特徴量である混合比αを基に前景成分画像を任意の背景画像と合成して得られた画像は、単に画素を合成した画像に比較し、より自然なものと成る。
【0647】
図112は、動きボケの量を調整する分離処理サーバ11の機能の更に他の構成を示すブロック図である。図27に示す分離処理サーバ11が領域特定と混合比αの算出を順番に行うのに対して、図112に示す分離処理サーバ11は、領域特定と混合比αの算出を並行して行う。
【0648】
図27のブロック図に示す機能と同様の部分には同一の番号を付してあり、その説明は省略する。
【0649】
入力画像は、混合比算出部1101、前景背景分離部1102、領域特定部103、およびオブジェクト抽出部101に供給される。
【0650】
混合比算出部1101は、入力画像を基に、画素がカバードバックグラウンド領域に属すると仮定した場合における推定混合比、および画素がアンカバードバックグラウンド領域に属すると仮定した場合における推定混合比を、入力画像に含まれる画素のそれぞれに対して算出し、算出した画素がカバードバックグラウンド領域に属すると仮定した場合における推定混合比、および画素がアンカバードバックグラウンド領域に属すると仮定した場合における推定混合比を前景背景分離部1102に供給する。
【0651】
図113は、混合比算出部1101の構成の一例を示すブロック図である。
【0652】
図113に示す推定混合比処理部401は、図72に示す推定混合比処理部401と同じである。図113に示す推定混合比処理部402は、図72に示す推定混合比処理部402と同じである。
【0653】
推定混合比処理部401は、入力画像を基に、カバードバックグラウンド領域のモデルに対応する演算により、画素毎に推定混合比を算出して、算出した推定混合比を出力する。
【0654】
推定混合比処理部402は、入力画像を基に、アンカバードバックグラウンド領域のモデルに対応する演算により、画素毎に推定混合比を算出して、算出した推定混合比を出力する。
【0655】
前景背景分離部1102は、混合比算出部1101から供給された、画素がカバードバックグラウンド領域に属すると仮定した場合における推定混合比、および画素がアンカバードバックグラウンド領域に属すると仮定した場合における推定混合比、並びに領域特定部103から供給された領域情報を基に、入力画像から前景成分画像を生成し、生成した前景成分画像を動きボケ調整部106および選択部107に供給する。
【0656】
図114は、前景背景分離部1102の構成の一例を示すブロック図である。
【0657】
図89に示す前景背景分離部105と同様の部分には同一の番号を付してあり、その説明は省略する。
【0658】
選択部1121は、領域特定部103から供給された領域情報を基に、混合比算出部1101から供給された、画素がカバードバックグラウンド領域に属すると仮定した場合における推定混合比、および画素がアンカバードバックグラウンド領域に属すると仮定した場合における推定混合比のいずれか一方を選択して、選択した推定混合比を混合比αとして分離部601に供給する。
【0659】
分離部601は、選択部1121から供給された混合比αおよび領域情報を基に、混合領域に属する画素の画素値から前景の成分および背景の成分を抽出し、抽出した前景の成分を合成部603に供給すると共に、背景の成分を合成部605に供給する。
【0660】
分離部601は、図94に示す構成と同じ構成とすることができる。
【0661】
合成部603は、前景成分画像を合成して、出力する。合成部605は、背景成分画像を合成して出力する。
【0662】
図112に示す動きボケ調整部106は、図27に示す場合と同様の構成とすることができ、領域情報および動きベクトルを基に、前景背景分離部1102から供給された前景成分画像に含まれる動きボケの量を調整して、動きボケの量が調整された前景成分画像を出力する。
【0663】
図112に示す選択部107は、例えば使用者の選択に対応した選択信号を基に、前景背景分離部1102から供給された前景成分画像、および動きボケ調整部106から供給された動きボケの量が調整された前景成分画像のいずれか一方を選択して、選択した前景成分画像を出力する。
【0664】
このように、図112に構成を示す分離処理サーバ11は、入力画像に含まれる前景のオブジェクトに対応する画像に対して、その画像に含まれる動きボケの量を調整して出力することができる。図112に構成を示す分離処理サーバ11は、第1の実施例と同様に、埋もれた情報である混合比αを算出して、算出した混合比αを出力することができる。
【0665】
図115は、前景成分画像を任意の背景画像と合成する分離処理サーバ11の機能の他の構成を示すブロック図である。図110に示す分離処理サーバ11が領域特定と混合比αの算出をシリアルに行うのに対して、図115に示す分離処理サーバ11は、領域特定と混合比αの算出をパラレルに行う。
【0666】
図112のブロック図に示す機能と同様の部分には同一の番号を付してあり、その説明は省略する。
【0667】
図115に示す混合比算出部1101は、入力画像を基に、画素がカバードバックグラウンド領域に属すると仮定した場合における推定混合比、および画素がアンカバードバックグラウンド領域に属すると仮定した場合における推定混合比を、入力画像に含まれる画素のそれぞれに対して算出し、算出した画素がカバードバックグラウンド領域に属すると仮定した場合における推定混合比、および画素がアンカバードバックグラウンド領域に属すると仮定した場合における推定混合比を前景背景分離部1102および合成部1201に供給する。
【0668】
図115に示す前景背景分離部1102は、混合比算出部1101から供給された、画素がカバードバックグラウンド領域に属すると仮定した場合における推定混合比、および画素がアンカバードバックグラウンド領域に属すると仮定した場合における推定混合比、並びに領域特定部103から供給された領域情報を基に、入力画像から前景成分画像を生成し、生成した前景成分画像を合成部1201に供給する。
【0669】
合成部1201は、混合比算出部1101から供給された、画素がカバードバックグラウンド領域に属すると仮定した場合における推定混合比、および画素がアンカバードバックグラウンド領域に属すると仮定した場合における推定混合比、領域特定部103から供給された領域情報を基に、任意の背景画像と、前景背景分離部1102から供給された前景成分画像とを合成して、任意の背景画像と前景成分画像とが合成された合成画像を出力する。
【0670】
図116は、合成部1201の構成を示す図である。図111のブロック図に示す機能と同様の部分には同一の番号を付してあり、その説明は省略する。
【0671】
選択部1221は、領域特定部103から供給された領域情報を基に、混合比算出部1101から供給された、画素がカバードバックグラウンド領域に属すると仮定した場合における推定混合比、および画素がアンカバードバックグラウンド領域に属すると仮定した場合における推定混合比のいずれか一方を選択して、選択した推定混合比を混合比αとして背景成分生成部1021に供給する。
【0672】
図116に示す背景成分生成部1021は、選択部1221から供給された混合比αおよび任意の背景画像を基に、背景成分画像を生成して、混合領域画像合成部1022に供給する。
【0673】
図116に示す混合領域画像合成部1022は、背景成分生成部1021から供給された背景成分画像と前景成分画像とを合成することにより、混合領域合成画像を生成して、生成した混合領域合成画像を画像合成部1023に供給する。
【0674】
画像合成部1023は、領域情報を基に、前景成分画像、混合領域画像合成部1022から供給された混合領域合成画像、および任意の背景画像を合成して、合成画像を生成して出力する。
【0675】
このように、合成部1201は、前景成分画像を、任意の背景画像に合成することができる。
【0676】
なお、混合比αは、画素値に含まれる背景の成分の割合として説明したが、画素値に含まれる前景の成分の割合としてもよい。
【0677】
また、前景となるオブジェクトの動きの方向は左から右として説明したが、その方向に限定されないことは勿論である。
【0678】
以上においては、3次元空間と時間軸情報を有する現実空間の画像をビデオカメラを用いて2次元空間と時間軸情報を有する時空間への射影を行った場合を例としたが、本発明は、この例に限らず、より多くの第1の次元の第1の情報を、より少ない第2の次元の第2の情報に射影した場合に、その射影によって発生する歪みを補正したり、有意情報を抽出したり、またはより自然に画像を合成する場合に適応することが可能である。
【0679】
なお、センサ76aは、CCDに限らす、固体撮像素子である、例えば、BBD(Bucket Brigade Device)、CID(Charge Injection Device)、CPD(Charge Priming Device)、またはCMOS(Complementary Mental Oxide Semiconductor)センサでもよく、また、検出素子がマトリックス状に配置されているセンサに限らず、検出素子が1列に並んでいるセンサでもよい。
【0680】
以上のように説明してきた分離処理サーバ11の各機能は、図1で示したネットワーク1上に構成される各種のサーバに分散処理させることにより実現させることもできる。すなわち、オブジェクト抽出部101、および、動き検出部102は動き検出サーバ12に、領域特定部103は領域特定サーバ13に、混合比算出部104は混合比算出サーバ14に、前景背景分離処理部105は前景背景分離処理サーバ15に、動きボケ調整部106は動きボケ調整サーバ16に、それぞれ対応するものとして機能する。従って、図27で示した分離処理サーバ11のブロック図は、ハードウェアにより実現されるもの、ソフトウェアにより実現されるもの、または、ネットワーク1により実現されたもののいずれであってもよいものである。また、合成サーバ19についても同様であり、その構成は合成部1201に対応するものであり、ハードウェアにより実現されたもの、ソフトウェアにより実現されたもの、または、ネットワーク1により実現されたもののいずれであってもよいものである。
【0681】
尚、以上におけるオブジェクト抽出部101、動き検出部102、領域特定部103、混合比算出部104、前景背景分離処理部105、および、動きボケ調整部106のそれぞれの処理は、動き検出サーバ12、領域特定サーバ13、混合比算出サーバ14、前景背景分離処理サーバ15、および、動きボケ調整サーバ16とを置き換えたものと同様であり、その処理についても同様であるので、その説明は省略する。
【0682】
また、分離処理サーバ11は、上述のようにハードウェア、または、ソフトウェアとして実現される場合、図1に記載のネットワーク1上に接続された各種のサーバ、クライアントコンピュータ27、および、カメラ端末装置28のそれぞれに分離処理部として組み込まれる構成としてもよい。そこで、以下の説明においては、分離処理サーバ11が、入力された画像を単に前景成分画像と背景成分画像に分離する機能を有する単一の装置として説明されるとき、分離処理部11とも称するものとする。
【0683】
次に、図117のフローチャートを参照して、分離処理サーバ11による、図1のネットワーク1を介してクライアントコンピュータ27から入力された画像の分離サービスの処理について説明する。
【0684】
ステップS1001において、クライアントコンピュータ27は、画像を指定する情報を分離処理サーバ11に出力する。すなわち、使用者が分離したい画像を指定する情報として、具体的な画像であるか、または、画像を指定する画像IDが分離処理サーバ11に出力される。
【0685】
ステップS1011において、分離処理サーバ11は、指定された画像を取得する。すなわち、クライアントコンピュータ27より画像が送信されてきた場合は、その画像を、指定する情報が送信されてきた場合は、その画像IDに対応する画像を、ネットワーク1上から読出し取得する。
【0686】
ステップS1012において、分離処理サーバ11の課金処理部11aは、ネットワーク1を介して課金サーバ24と共に課金処理を実行する。また、同時にステップS1021において、課金サーバ24は、分離処理サーバ11と共に課金処理を実行する。
【0687】
ここで、図118のフローチャートを参照して、上述の課金処理を説明する。
尚、実際の課金処理は、分離処理サーバ11と課金サーバ24により実行されるが各種の処理に必要な情報は、クライアントコンピュータ27からも出力されているので、ここでは、クライアントコンピュータ27の処理についても合わせて説明する。
【0688】
ステップS1101において、図119で示すように、クライアントコンピュータ27は、サービスを指定して使用者(画像の分離サービスの提供を受ける使用者)を識別するID情報と認証情報(パスワード等)と共に利用金額をネットワーク1を介して分離処理サーバ11に送信する。すなわち、今の場合、図117のステップS1001の処理で画像を指定する情報を送信する際に、このステップS1101の処理は、実行されることになる。また、利用金額とは、分離サービスに係る料金である。
【0689】
ステップS1111において、図119で示すように、分離処理サーバ11の課金処理部11aは、ID情報と認証情報を受信し、さらに、利用金額と自らのIDを課金サーバ24に送信する。
【0690】
ステップS1121において、図119で示すように、課金サーバ24は、分離処理サーバ11より送信されてきたIDに基づいて、認証情報、顧客口座ID、および、利用金額を、顧客口座の金融機関が管理する金融サーバ25に問い合わせる。
【0691】
ステップS1131において、図119で示すように、金融サーバ(顧客用)25は、顧客口座IDと認証情報に基づいて、認証処理を実行し、認証結果と利用の可否の情報を課金サーバ24に通知する。
【0692】
ステップS1122において、図119で示すように、課金サーバ24は、認証結果と利用可否の情報を分離処理サーバ11に送信する。尚、以下の説明においては、認証結果が問題なく、その利用が可能であるとの条件の下に説明を進める。また、認証結果に問題があり、その利用が認められないとの情報が受信された場合、その処理は、終了することになる。
【0693】
ステップS1112において、図119で示すように、分離処理サーバ11は、認証結果に問題がなく、金融機関の利用が可能であるとの条件の場合、クライアントコンピュータ27に対してサービスを提供する。ステップS1102において、クライアントコンピュータ27はサービスの提供を受ける。すなわち、今の場合、ステップS1112において、分離処理サーバ11は、指定された画像を前景成分画像と背景成分画像に分離してクライアントコンピュータ27に出力し、ステップS1102において、クライアントコンピュータ27は、分離された前景成分画像と背景成分画像を受信する。
【0694】
ステップS1113において、分離処理サーバ11は、サービスの利用通知を課金サーバ24に送信する。ステップS1123において、課金サーバ24は、顧客口座ID、利用金額、および、提供者口座IDを金融サーバ(顧客用)25に通知する。
【0695】
ステップS1132において、金融サーバ(顧客用)25は、顧客口座IDの口座から利用金額を提供者金融サーバ(提供者用)26に振り込む。
【0696】
ここで、図117のフローチャートの説明に戻る。
【0697】
ステップS1012,S1021において、分離処理サーバ11と課金サーバ24の相互で課金処理が実行された後、ステップS1013において、分離処理サーバ11は、画像の分離処理を実行する。すなわち、分離処理サーバ11の領域特定部103は、図53のフローチャートにより説明した領域特定の処理を、混合比算出部104は、図81のフローチャートを参照して説明した混合比の算出の処理を、前景背景分離部105は、図96のフローチャートを参照して説明した前景と背景との分離の処理を、動きボケ調整部106は、図44のフローチャートにより説明した動きボケ量の調整処理をそれぞれ実行し、指定された画像を分離する。尚、動きボケ量の調整処理、領域特定の処理、混合比の算出の処理、および、前景と背景との分離の処理は、いずれも上述と同様であるので、その説明は省略する。
【0698】
ステップS1014において、分離処理サーバ11は、分離された前景成分画像、および、背景成分画像にIDを付してクライアントコンピュータ27に送信する。ステップS1002において、クライアントコンピュータ27は、分離処理サーバ11より送信されてきた分離されている前景成分画像と背景成分画像とそのIDを受信し、自らの記憶部48(図2)に記憶すると共に、必要に応じてプリントアウトする。尚、クライアントコンピュータ27は、使用者の指令に応じて、分離処理サーバ11により分離処理された前景成分画像と背景成分画像を、分離処理サーバ11自身に記憶させたり、または、ネットワーク1を介して蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。
【0699】
以上の説明においては、分離処理に係る料金を課金サーバ24により金融サーバ25,26に対して振り込まれるといった場合の処理について説明してきたが、例えば、プリペイドポイントなどのように、使用者が予め分離サービスの提供者に利用料金を支払ったことを示すポイントを記憶部48(図2)に記憶させ、分離サービスの提供を受ける度に、そのポイントを減算するようにして、課金処理を実行するようにしてもよい。
【0700】
ここで、図120のフローチャートを参照して、プリペイドポイントを使用した場合の課金処理について説明する。
【0701】
ステップS1201において、クライアントコンピュータ27は、サービスを指定して、ID情報、および、認証情報を送信する。すなわち、クライアントコンピュータ27は、図117のステップS1101における処理と同様の処理を実行する。
【0702】
ステップS1211において、分離処理サーバ11の課金処理部11aは、ID情報、および、認証情報を受信する。ステップS1212において、課金処理部11aは、記憶部48に記憶されている、予めクライアントコンピュータ27の使用者より払い込まれている金額に相当するプリペイドポイントから、分離処理に係る利用金額に相当するポイントを減算し、記憶する。ステップS1213において、分離処理サーバ11は、サービスを提供する。すなわち、今の場合、分離処理サーバ11は、入力された画像の分離処理を実行し、分離された前景成分画像と背景成分画像をクライアントコンピュータ27に送信する。
【0703】
ステップS1202において、クライアントコンピュータ27は、サービスの提供を受ける。すなわち、今の場合、クライアントコンピュータ27は、分離処理サーバ11より送信されてくる前景成分画像と背景成分画像を受信する。
【0704】
また、以上においては、分離処理サーバ11がプリペイドポイントを自らの記憶部48(図2)に記憶している場合について説明してきたが、例えば、プリペイドポイントが記録されたカード、いわゆる、プリペイドカードを使用する場合についても同様の処理となる。この場合、プリペイドカードに記憶されたプリペイドポイントをステップS1201でクライアントコンピュータ27が読取って、送信し、分離処理サーバ11が、課金処理により受信したポイントから利用料金に相当するポイントを減算して減算結果となるポイントをクライアントコンピュータ27に送信して、プリペイドカードに上書きする必要がある。
【0705】
次に、図121のフローチャートを参照して、クライアントコンピュータ27より指定された画像の動きベクトルと位置情報を求める動き検出サービスの処理について説明する。
【0706】
ステップS1301において、クライアントコンピュータ27は、画像を指定する情報を動き検出サーバ12に出力する。すなわち、使用者が動き検出処理したい画像を指定する情報として、具体的な画像であるか、または、画像を指定する画像IDが動き検出サーバ12に出力される。
【0707】
ステップS1311において、動き検出サーバ12は、指定された画像を取得する。すなわち、クライアントコンピュータ27より画像が送信されてきた場合は、その画像を、指定する情報が送信されてきた場合は、その画像IDに対応する画像を、ネットワーク1上から読出し取得する。
【0708】
ステップS1312,S1321において、動き検出サーバ12の課金処理部12cと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。
【0709】
ステップS1313において、動き検出サーバ12のオブジェクト抽出部12aは、取得している指定された画像から、各オブジェクトを抽出し、動き検出部12bが位置情報と動きベクトルを検出し、クライアントコンピュータ27に送信する。
【0710】
ステップS1302において、クライアントコンピュータ27は、動き検出サーバ12より送信されてきたオブジェクトの位置情報と動きベクトルを受信し、記憶する。
【0711】
尚、クライアントコンピュータ27は、使用者の指令に応じて、動き検出サーバ12により検出された位置情報と動きベクトルを、動き検出サーバ12自身に記憶させたり、または、ネットワーク1を介して蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。
【0712】
次に、図122のフローチャートを参照して、領域特定サーバ13により実行される、クライアントコンピュータ27より入力された画像とオブジェクトを指定する情報から領域を特定する領域特定サービスの処理について説明する。
【0713】
ステップS1401において、クライアントコンピュータ27は、画像とオブジェクトを指定する情報を領域特定サーバ13に出力する。すなわち、使用者が領域特定したい画像を指定する情報として、具体的な画像であるか、または、画像を指定する画像IDと共にオブジェクトを指定する情報が領域特定サーバ13に出力される。
【0714】
ステップS1411において、領域特定サーバ13は、指定された画像を取得する。すなわち、クライアントコンピュータ27より画像が送信されてきた場合、その画像を、指定する画像IDが送信されてきた場合は、その画像IDに対応する画像を、ネットワーク1上から読出し取得する。
【0715】
ステップS1412,S1421において、領域特定サーバ13の課金処理部13aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。
【0716】
ステップS1413において、領域特定サーバ13は、オブジェクトを指定する情報に基づいて、領域特定の処理を実行する。尚、領域特定の処理は、図53のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
【0717】
ステップS1414において、領域特定サーバ13は、ステップS1413の処理で求められた領域情報をクライアントコンピュータ27に送信する。
【0718】
ステップS1402において、クライアントコンピュータ27は、領域特定サーバ13より送信されてきた領域情報を受信し、記憶する。
【0719】
尚、クライアントコンピュータ27は、使用者の指令に応じて、領域特定サーバ13により求められた領域情報を、領域特定サーバ13自身に記憶させたり、または、ネットワーク1を介して蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。
【0720】
次に、図123のフローチャートを参照して、混合比算出サーバ14により実行される、クライアントコンピュータ27より入力された画像とオブジェクトを指定する情報、および、領域情報から混合比を算出するの混合比算出サービスの処理について説明する。
【0721】
ステップS1501において、クライアントコンピュータ27は、画像とオブジェクトを指定する情報、および、領域情報を混合比算出サーバ14に出力する。すなわち、使用者が混合比を算出したい画像を指定する情報として、具体的な画像であるか、または、画像を指定する画像ID、オブジェクトを指定する情報、および、領域情報が混合比算出サーバ14に出力される。
【0722】
ステップS1511において、混合比算出サーバ14は、指定された画像を取得する。すなわち、クライアントコンピュータ27より画像が送信されてきた場合、その画像を、指定する画像IDが送信されてきた場合は、その画像IDに対応する画像を、ネットワーク1上から読出し取得する。
【0723】
ステップS1512,S1521において、混合比算出サーバ14の課金処理部14aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。
【0724】
ステップS1513において、混合比算出サーバ14は、オブジェクトを指定する情報、および、領域情報に基づいて、混合比の算出の処理を実行する。尚、混合比の算出の処理は、図81のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
【0725】
ステップS1514において、混合比算出サーバ14は、ステップS1513の処理で求められた混合比をクライアントコンピュータ27に送信する。
【0726】
ステップS1502において、クライアントコンピュータ27は、混合比算出サーバ14より送信されてきた混合比を受信し、記憶する。
【0727】
尚、クライアントコンピュータ27は、使用者の指令に応じて、混合比算出サーバ14により求められた混合比を、混合比算出サーバ14自身に記憶させたり、または、ネットワーク1を介して蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。
【0728】
次に、図124のフローチャートを参照して、前景背景分離サーバ15により実行される、クライアントコンピュータ27より入力された画像とオブジェクトを指定する情報、領域情報、および、混合比から前景成分画像と背景成分画像に分離するサービスの処理について説明する。
【0729】
ステップS1601において、クライアントコンピュータ27は、画像とオブジェクトを指定する情報、領域情報、および、混合比の情報を前景背景分離サーバ15に出力する。すなわち、使用者が前景背景分離したい画像を指定する情報として、具体的な画像であるか、または、画像を指定する画像ID、オブジェクトを指定する情報、領域情報、および、混合比の情報が前景背景分離サーバ15に出力される。
【0730】
ステップS1611において、前景背景分離サーバ15は、指定された画像を取得する。すなわち、クライアントコンピュータ27より画像が送信されてきた場合、その画像を、指定する画像IDが送信されてきた場合は、その画像IDに対応する画像を、ネットワーク1上から読出し取得する。
【0731】
ステップS1612,S1621において、前景背景分離サーバ15の課金処理部15aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。
【0732】
ステップS1613において、前景背景分離サーバ15は、オブジェクトを指定する情報、領域情報、および、混合比に基づいて、前景と背景の分離の処理を実行する。尚、前景と背景の分離の処理は、図96のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
【0733】
ステップS1614において、前景背景分離サーバ15は、ステップS1613の処理で求められた前景成分画像と背景成分画像にIDを付してクライアントコンピュータ27に送信する。
【0734】
ステップS1602において、クライアントコンピュータ27は、前景背景分離サーバ15より送信されてきた前景成分画像と背景成分画像を受信し、記憶する。
【0735】
尚、クライアントコンピュータ27は、使用者の指令に応じて、前景背景分離サーバ15により送信されてきた前景成分画像と背景成分画像を、前景背景分離サーバ15自身に記憶させたり、または、ネットワーク1を介して蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。
【0736】
次に、図125のフローチャートを参照して、動きボケ調整サーバ16により実行される、クライアントコンピュータ27より入力された画像を指定する情報、動きベクトル、および、動きボケ調整量から、指定された画像の動きボケを調整するサービスの処理について説明する。
【0737】
ステップS1701において、クライアントコンピュータ27は、画像を指定する情報、動きベクトル、および、動きボケ調整量の情報を動きボケ調整サーバ16に出力する。すなわち、使用者が動きボケ調整したい画像を指定する情報として、具体的な画像であるか、または、画像を指定する画像ID、オブジェクトを指定する情報、動きベクトル、および、動きボケ調整量の情報が動きボケ調整サーバ16に出力される。
【0738】
ステップS1711において、動きボケ調整サーバ16は、指定された画像を取得する。すなわち、クライアントコンピュータ27より画像が送信されてきた場合、その画像を、指定する画像IDが送信されてきた場合、その画像IDに対応する画像を、ネットワーク1上から読出し取得する。
【0739】
ステップS1712,S1721において、動きボケ調整サーバ16の課金処理部16aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。
【0740】
ステップS1713において、動きボケ調整サーバ16は、動きベクトル、および、動きボケ調整量の情報に基づいて、動きボケの量の調整の処理を実行する。尚、動きボケの量の調整の処理は、図104のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
【0741】
ステップS1714において、動きボケ調整サーバ16は、ステップS1713の処理で求められた動きボケ調整画像にIDを付してクライアントコンピュータ27に送信する。
【0742】
ステップS1702において、クライアントコンピュータ27は、動きボケ調整サーバ16より送信されてきた動きボケ調整画像を受信し、記憶する。
【0743】
尚、クライアントコンピュータ27は、使用者の指令に応じて、動きボケ調整サーバ16により送信されてきた動きボケ調整画像を、動きボケ調整サーバ16自身に記憶させたり、または、蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。
【0744】
次に、図126を参照して、符号化サーバ17の詳細な構成を説明する。符号化サーバ17の分離処理部2002は、入力された画像(画像を指定する画像IDが入力され、対応する画像をネットワーク1を介して、蓄積サーバ18より読込まれる画像を含む)を前景成分画像と背景成分画像に分離し、混合比、動きベクトル、および、位置情報と共に、符号化部2001に出力する。分離処理部2002は、図27を参照して説明した分離処理サーバ(分離処理部)11と同様ものであり、混合比、動きベクトル、および、位置情報の取得処理についても同様であるので、その説明は省略する。
【0745】
符号化部2001は、分離処理部2002より入力される前景成分画像と背景成分画像をネットワーク1を介して蓄積サーバ18に出力して記憶させると共に、記憶させた蓄積サーバ18のネットワーク上の位置情報、すなわち、URLなどの情報に変換し、前景成分画像位置情報、および、背景成分画像位置情報として出力する。このとき、符号化部2001は、前景成分画像と背景成分画像を分離する際に抽出される混合比、動きベクトル、および、位置情報についても出力する。
【0746】
符号化部2001により前景成分画像と背景成分画像が、それぞれ前景成分画像位置情報、および、背景成分画像位置情報に変換されるとき、課金処理部17a(図16,図17)が、ネットワーク1を介して課金サーバ24に対して課金処理を実行する。尚、この課金処理は、後述する合成サーバ19を使用して、合成画像を生成する合成サービスを受ける使用者が負担するようにしてもよい。また、逆に、符号化サービスを利用した使用者が予め負担することにより、合成サービスを利用する際には、使用者から利用料金の支払を受けずに済むようにすることもできる。
【0747】
次に、図127のフローチャートを参照して、符号化サーバ17により実行される、クライアントコンピュータ27より入力された画像を符号化する符号化サービスの処理について説明する。尚、この説明においては、符号化サービスの利用者が利用料金を負担する場合について説明する。
【0748】
ステップS1801において、クライアントコンピュータ27は、画像を指定する情報を符号化サーバ17に出力する。すなわち、使用者が符号化したい画像を指定する情報として、具体的な画像であるか、または、画像を指定する画像ID、オブジェクトを指定する情報が符号化サーバ17に出力される。
【0749】
ステップS1811において、符号化サーバ17は、指定された画像を取得する。すなわち、クライアントコンピュータ27より画像が送信されてきた場合、その画像を、指定する画像IDが送信されてきた場合、その画像IDに対応する画像を、ネットワーク1上から読出し取得する。
【0750】
ステップS1812,S1821において、符号化サーバ17の課金処理部17aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。
【0751】
ステップS1813において、符号化サーバ17の分離処理部2002は、画像分離処理を実行する。尚、画像分離処理は、図117のフローチャートのステップS1013の処理と同様であるので、その説明は省略する。
【0752】
ステップS1814において、符号化サーバ17は、ステップS1813の処理で求められた前景成分画像と背景成分画像を蓄積サーバ18に出力し、記憶(蓄積)させる。ステップS1831において、蓄積サーバ18は、送信されてきた前景成分画像と背景成分画像を記憶する。
【0753】
ステップS1815において、符号化サーバ17は、符号化により生成された前景成分画像位置情報と背景成分位置情報に、動きベクトルと位置情報を加えて、クライアントコンピュータ27に送信する。
【0754】
ステップS1802において、クライアントコンピュータ27は、符号化サーバ17より送信されてきた前景成分画像位置情報、背景成分画像位置情報、動きベクトル、および、位置情報を受信し、記憶する。
【0755】
尚、符号化部2001は、入力された画像を分離して符号化する場合、既に符号化した画像と類似の画像を符号化するとき、その差分となるデータのみを、既に符号化されている画像の符号(画像位置情報)に付して出力するようにしてもよい。例えば、図128で示すような画像を合成する場合、前景成分画像1、前景成分画像2、および、混合比1の符号化情報からなる第1の画像の符号化情報と、前景成分画像1、前景成分画像3、および、混合比2の符号化情報からなる第2の画像の符号化情報を合成するような場合、前景成分画像1は、いずれの画像の情報にも含まれているため、合成するときには、一方の画像の前景成分画像1の符号化情報を省略しても良く、結果として、単純に合成する場合よりも、前景成分画像1の情報が削除される分だけ圧縮率を向上させることができる。
【0756】
結果として、図128に示すような第1の画像と第2の画像を蓄積する場合には、先に第1の画像が蓄積されている場合には、第2の画像は、差分となる前景成分画像3と混合比2の符号化情報だけを蓄積すればよいことになる。このため、同一の画像の符号化情報が複数に渡って蓄積されるような場合、蓄積される画像の数が増えれば増えるほど圧縮率が向上されていくことになる。
【0757】
また、符号化サーバ17により符号化される混合比、動きベクトル、および、位置情報については、図129で示すように使用者が指定した情報であってもよい。さらに、図129で示すように、符号化させる画像は、使用者により指定された画像IDに対応する前景成分画像と背景成分画像を蓄積サーバ18から読み出し、符号化するようにしてもよい。この場合、符号化サーバ17には、分離処理部2002は設けられなくてもよいことになる。
【0758】
また、本明細書中で画像を指定する情報として、画像IDを使用してきたが、これに代えて、画像位置情報を使用するようにしてもよい。
【0759】
次に、図130のフローチャートを参照して、合成サーバ19により実行される、クライアントコンピュータ27より入力された画像A,Bを指定する情報、動きベクトル、混合比、位置情報、および、動きボケ調整量から、指定された画像A,Bを合成するサービスの処理について説明する。
【0760】
ステップS1901において、クライアントコンピュータ27は、画像A,Bを指定する情報、動きベクトル、混合比、位置情報、および、動きボケ調整量の情報を合成サーバ19に出力する。すなわち、使用者が合成したい画像A,Bを指定する情報として、具体的な画像であるか、または、画像A,Bを指定する画像A-ID,B-ID(上述の符号化された画像位置情報でもよい)、動きベクトル、混合比、位置情報、および、動きボケ調整量の情報が合成サーバ19に出力される。
【0761】
ステップS1911において、合成サーバ16は、指定された画像を取得する。すなわち、クライアントコンピュータ27より画像が送信されてきた場合、その画像を指定する画像ID(上述の符号化された画像位置情報でもよい)が送信されてきた場合、その画像IDに対応する画像を、ネットワーク1上から読出し取得する。
【0762】
ステップS1912,S1921において、合成サーバ19の課金処理部19aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。また、この課金処理は、上述の符号化サーバ16を使用して、符号化サービスを受けた使用者が負担していた場合には、省略するようにすることもできる。逆に、符号化サービスを受けた使用者の代わりに、合成サービスを受けた使用者が負担するようにしてもよい。
【0763】
ステップS1913において、合成サーバ19は、動きベクトル、混合比、位置情報、および、動きボケ調整量の情報に基づいて、画像A,Bの合成の処理を実行する。
【0764】
ステップS1914において、合成サーバ19は、ステップS1913の処理で求められた合成画像(A+B)にIDを付してクライアントコンピュータ27に送信する。
【0765】
ステップS1902において、クライアントコンピュータ27は、合成サーバ19より送信されてきた合成画像(A+B)を受信し、記憶する。
【0766】
尚、クライアントコンピュータ27は、使用者の指令に応じて、合成サーバ19により送信されてきた合成画像(A+B)を、合成サーバ19自身に記憶させたり、または、ネットワーク1を介して蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。
【0767】
ところで、合成サーバ20は、以上のように複数の画像を合成することが可能なようになされているが、この際、動きボケ調整量をキーとすることで、合成画像の動きボケを付加して暗号化画像を生成することができる。図131は、合成サーバ20に暗号化画像を生成させるために設けられる暗号用動きボケ付加部2021の構成を示している。
【0768】
暗号用動きボケ付加部2021の入力情報処理部2031は、入力された暗号化しようとする被暗号化信号を画像化部2032に、暗号キーとなる情報を動きボケ作成部2033に、および、被暗号化信号を前景成分画像として合成しようとする画像(背景成分画像)を選択する画像選択情報を合成サーバ20にそれぞれ出力する。
【0769】
画像化部2032は、入力情報処理部2031より入力された被暗号化信号が画像信号ではない場合、その信号を画像信号に変換して動きボケ付加部2033に出力する。すなわち、暗号化処理される信号は、画像信号であることが条件となるので、その処理に対応させるため画像信号ではない信号を画像化する。
【0770】
動きボケ作成部2033は、入力情報処理部2031より入力された速さや方向といった情報に基づいて動きボケ調整量を生成し、画像化部2032より入力された画像信号に動きボケ付加処理を施し、合成サーバ20に出力する。合成サーバ20は、入力情報処理部2031より入力された画像選択情報に基づいて背景成分画像を取得し、さらに、動きボケ付加部2033より入力される画像を前景成分画像として、取得した背景成分画像と合成し、合成画像を生成して表示する。このとき、背景成分画像を指定する画像選択情報は、背景成分画像そのものでもよいし、背景成分画像位置情報、または、背景成分画像IDであってもよい。
【0771】
次に、図132を参照して、合成サーバ20に設けられた暗号用動きボケ付加部2021により暗号化された合成画像を復号して、元の信号に変換する暗号用動きボケ除去部2041について説明する。尚、図131,図132に示す暗号用動きボケ付加部2021、および、暗号用動きボケ除去部2041は、例えば、クライアントコンピュータ27に内蔵されるソフトウェアの機能ブロック図として考えてもよいし、ハードウェアのブロック図であるものと考えてもよい。さらに、暗号用動きボケ付加部2021、および、暗号用動きボケ除去部2041は、ネットワーク1上に専用サーバとして構成するようにしてもよい。
【0772】
分離サーバ11は、暗号化された合成画像を前景成分画像と背景成分画像に分離し、動きボケが付加された前景成分画像を入力情報処理部2051に出力する。
【0773】
入力情報処理部2051は、分離処理サーバ11より入力された暗号化されている前景成分画像と、その暗号化された前景成分画像を復号するためのキーとして速さと方向の情報が入力されると、動きボケ除去部2052に出力する。このキーとなる速さと方向は、画像をx方向、y方向の2次元で示すとき、それぞれに設定される。
【0774】
動きボケ除去部2052は、入力情報処理部2051より入力された速さと方向の情報に基づいて、動きボケ量を生成し、暗号化された前景成分画像に、暗号用動きボケ付加部2021により施された動きボケ付加処理と逆の動きボケ付加処理を施し、暗号化された前景成分画像を復号して信号変換部2053に出力する。信号変換部2053は、被暗号化信号が画像ではなかった場合、動きボケ除去部2052より入力された画像信号を元の信号に変換して出力する。
【0775】
すなわち、上記の動きボケ作成部2033(図131)と、動きボケ除去部2052は、実質的には、図97の動きボケ付加部806と同様の処理を実行するものであり、暗号キーとして動きボケ調整量を使用して、相互に逆の動きボケの付加処理を実行するものである。ただし、後述するx方向、または、y方向の動きボケ付加処理のうち、先に実行された動きボケ付加処理に対して、ゲインアップの処理を実行する点が異なる。
【0776】
ここで動きボケを付加することにより、画像信号を暗号化する原理について説明する。例えば、図133に示すように、被写体が矢印の方向に移動するとき、これをCCDなどからなるセンサ76aで撮像すると、移動方向の前後に混合領域(カバードバックグラウンド領域とアンカバードバックグラウンド領域)が、撮像された画像の動きボケとして生じる(詳細は、図31を参照)。図134は、この現象を示す例を示しており、図134(A)で示すような被写体を、センサ76aで撮像する場合、図中左右方向に被写体が移動しているとき、その速さに応じて、動きボケの領域が広がり、さらに、撮像される色が拡散される様子を示している。すなわち、被写体が左右方向に速さvで移動しているとき、図134(B)で示すような画像が撮像されるものとする。このとき、被写体が静止しているときに撮像される領域を領域a0乃至a0'であるとすると、図134(B)の被写体が撮像される領域は領域a1乃至a1'となり、元の位置a0乃至a0'の領域の色が薄くなり、動きボケとなる領域a1乃至a0、および、領域a0'乃至a1'に色が広がっている。同様にして、被写体が速さ2v(速さvの2倍)で移動していると、図134(C)で示すように、さらに動きボケとなる領域a2乃至a0、および、領域a0'乃至a2'に色が広がることが示されている。さらに、被写体が速さ3vで移動すると、図134(D)で示すように、動きボケとなる領域a3乃至a0、および、領域a0'乃至a3'に広がり、速さ4vで移動すると、図134(E)で示すように、動きボケとなる領域a4乃至a0、および、領域a0'乃至a4'に広がり、全体として色が薄くなる。すなわち、センサ76aから出力される個々の画素値は、撮像するオブジェクトの空間的に広がりを有するある部分を、シャッタ時間について積分した結果であるので、総じて積分される画素値は変わらない分だけ、被写体の速さが増す毎に、空間的に広がることにより、色が薄く撮像されることになる。従って、色が薄くなり、領域が広がり、動きボケの領域が大きくなるにつれて、被写体の判読が困難になる。ここで、色は、判読の可能性を示しており、濃いほど判読の可能性が大きく、薄いほど判読の可能性が小さくなることを示している。
【0777】
動きボケ調整による暗号化は、この性質を利用したものであり、現実世界では起こりえない、2次元方向の動きボケを画像に生じさせることで暗号化させるものである。すなわち、図135で示すように、動きのない状態で、黒丸状の被写体が撮像された画像がマトリクスの最左列最上段に示されている。この状態から、例えば、縦方向に動きのある状態の動きボケを付加すると、黒丸状の被写体は、中列最上段に示すように上下方向に動きボケが生じた画像となる。さらに、横方向に動きボケを生じさせると中列中段に示すように、被写体の上下左右方向に動きボケが生じた画像となる。
【0778】
この状態で、さらにまた、左右方向の動き(速さ)を大きくして動きボケを付加すると、中列最下段に示すように、さらに、左右方向に動きボケ領域が広がった画像となる。この画像に、さらに、上下方向に動きボケを生じさせると、最右列最下段に示すように、黒丸状の被写体の動きボケ領域が広がり、全体として色が薄くなる。結果として、被写体の判読の可能性が低下するので、画像そのものを暗号化させることが可能となる。
【0779】
次に、図136のフローチャートを参照して、暗号用動きボケ付加部2021の動きボケ調整量を利用した暗号化処理について説明する。尚、以下の説明では、図137で示すように、5×5画素からなる被写体が撮像された画像を暗号化する例について説明する。ここで、図137においては、5×5画素の各画素の画素値a乃至yで示すこととし、縦方向をy、横方向をxで示し、時刻軸を時刻tとして説明する。
【0780】
ステップS2001において、入力情報処理部2031は、被暗号化信号が入力されたか否かを判定し、入力されるまでその処理を繰り返し、入力されたと判定された場合、その処理は、ステップS2002に進む。
【0781】
ステップS2002において、入力情報処理部2031は、入力された被暗号化信号を画像化部2032に出力する。ステップS2003において、画像化部2032は、入力された被暗号化信号が画像信号であるか否かを判定する。例えば、被暗号化信号が画像信号ではないと判定された場合、ステップS2004において、画像化部2032は、被暗号化信号を画像信号に変換して、動きボケ付加部2033に出力する。ステップS2003において、被暗号化情報が画像信号であると判定された場合、画像化部2032は、入力された被暗号化信号をそのまま動きボケ付加部2033に出力する。
【0782】
ステップS2005において、入力信号処理部2031は、キーとなる速さと方向の情報が入力されたか否かを判定し、入力されるまでその処理を繰り返し、速さと方向のキーが入力されると、その処理は、ステップS2006に進む。
【0783】
ステップS2006において、動きボケ付加部2033は、入力された画像信号に対してx方向について暗号化する(動きボケを付加する)。
【0784】
ここで、被写体を動きボケ調整により暗号化するときの具体的な画素値の生成方法を、図137乃至図149を参照して説明する。
【0785】
ここで、図137で示すように、最下段の画素a乃至eを、x方向に動きボケを生じさせて暗号化する方法について説明する。このとき、キーとなる速さを示す動き量vを5(仮想分割数を5)とすると、図138で示す最下段の画素は図139のように示される。すなわち、各時間方向の画素値が5分割されるので、a/5=a0=a1=a2=a3=a4、b/5=b0=b1=b2=b3=b4、c/5=c0=c1=c2=c3=c4、d/5=d0=d1=d2=d3=d4、e/5=e0=e1=e2=e3=e4の関係が満たされることになる。ここで、図139中上段にある画素ほど前の時刻の画素値である。
【0786】
被写体に対してx方向の動き(今の場合、図中右方向)が与えられると、画素値の配置は、所定の時間間隔でスライドされることになり、結果として、図140で示すような配置になる。すなわち、動き始めのタイミングでは、画素値a0乃至e0は元の位置であり、次のタイミングで、画素値a1乃至e1は右方向に1画素分スライドし、さらに次のタイミングで、画素値a2乃至e2は右方向にさらに1画素分スライドし、さらに次のタイミングで、画素値a3乃至e3は右方向にさらに1画素分スライドし、さらに次のタイミングで、画素値a4乃至e4は右方向にさらに1画素分スライドするといったように被写体の動きに合わせて画素値が移動した配置となる。
【0787】
また、xy平面上の各画素値は、図140で示した画素値を時間方向に加算したものと言うことになる。しかしながら、例えば、最左列、または、最右列は、画素値a0,e4だけとなり、画素値としての値が非常に小さなものとなる恐れがあり、また、この後、y方向に対しても同様の処理をする上で、非常に小さな値とならないように、ゲインアップの処理を施す。このゲインアップの処理を施した例が、図141に示されている。
【0788】
ここで、a0*=5×a0、b0*=(5/2)×b0、a0*=(5/2)×a1、c0*=(5/3)×c0、b1*=(5/3)×b1、a2*=(5/3)×a2、d0*=(5/4)×d0、c1*=(5/4)×c1、b2*=(5/4)×b2、a3*=(5/4)×a3、e1*=(5/4)×e1、d2*=(5/4)×d2、c3*=(5/4)×c3、b4*=(5/4)×b4、e2*=(5/3)×e2、d3*=(5/3)×d3、c4*=(5/3)×c4、e3*=(5/2)×e3、d4*=(5/2)×d4、および、e4*=5×e4である。すなわち、各画素の加算値が、1画素分の画素値となるようにゲインを調整している。この結果、図138で示した、画素a乃至eがx方向に動き量vが5の条件で、暗号化されると(動きボケ付加されると)、図142で示すような画素ax乃至dx'に変換され(暗号化され)、被写体の水平方向の画素数が5から9に増加することになる。ここで、画素値は、ax=ax*、bx=(b0*)+(a1*)、cx=(c0*)+(b1*)+(a2*)、dx=(d0*)+(c1*)+(b2*)+(a3*)、ex=(e0)+(d1)+(c2)+(b3)+(a4)、ax'=(e1*)+(d2*)+(c3*)+(b4*)、bx'=(e2*)+(d3*)+(c4*)、cx'=(e3*)+(d4*)、および、ex=ex*である。
【0789】
以上のような処理を、図137で示した5×5画素の全てのyに対して、x方向に暗号化すると、図143で示すような画素値が求められることになる。すなわち、画素ax乃至yx、並びに、画素ax'乃至dx'、fx'乃至ix'、kx'乃至nx'、px'乃至sx'、および、ux'乃至xx'の画素が求められ、x方向に動きボケが生じることによりx方向に広がりが生じ、9画素ずつ求められることになる。
【0790】
ここで、図136のフローチャートの説明に戻る。
【0791】
ステップS2007において、動きボケ付加部2033は、x方向に符号化した画像信号をy方向に対して暗号化する。
【0792】
ここで、図144で示すように、図143で示す最右列の画素ax,fx,kx,px,uxを、y方向に動きボケを生じさせて暗号化する方法について説明する。このとき、キーとなる速さを示す動き量vを5(仮想分割数を5)とすると、図143で示す最右列の画素は図144のように示される。すなわち、各時間方向の画素値が5分割されるので、ax/5=ax0=ax1=ax2=ax3=ax4、fx/5=fx0=fx1=fx2=fx3=fx4、kx/5=kx0=kx1=kx2=kx3=kx4、px/5=px0=px1=px2=px3=px4、ux/5=ux0=ux1=ux2=ux3=ux4の関係が満たされることになる。ここで、図145中上段にある画素ほど前の時刻の画素値である。
【0793】
被写体に対してy方向に動きが与えられると、画素値の配置は、所定の時間間隔でスライドされることになり、結果として、図146で示すような配置になる。すなわち、動き始めのタイミングでは、画素値ax0,fx0,kx0,px0,ux0は元の位置であり、次のタイミングで、画素値ax1,fx1,kx1,px1,ux1は右方向に1画素分スライドし、さらに次のタイミングで、画素値ax2,fx2,kx2,px2,ux2は右方向に、さらに1画素分スライドし、さらに次のタイミングで、画素値ax3,fx3,kx3,px3,ux3は右方向に、さらに1画素分スライドし、さらに次のタイミングで、画素値ax4,fx4,kx4,px4,ux4は右方向にさらに1画素分スライドするといったように被写体の動きに合わせて画素値が移動した配置となる。
【0794】
ここで、図136のフローチャートの説明に戻る。
【0795】
ステップS2008において、合成サーバ19は、合成される背景成分画像を、暗号化した画像(前景成分画像)と合成する。例えば、図147で示すようなy方向に配列された画素値B0乃至B9の画素値からなる背景成分画像(x方向に1段分の画素からなる画像)を合成すると、図148で示すような画素値が加算された値が画素値となる。すなわち、xy方向に暗号化された(動きボケが付加された)画像の画素値が前景成分画像の画素値として、合成される画像の画素値が背景成分画像の画素値として合成される。結果として、図149で示すような画素値A,F,K,P,U,Ay',Fy',Ky',Py'が求められることになり、各画素値は、画素値A=ax0+B0×4/5、画素値F=fx0+ax0+B1×3/5、画素値K=kx0+fx1+ax2+B2×2/5、画素値P=px0+kx1+fx2+ax3+B3×1/5、画素値U=ux0+px1+kx2+fx3+ax4、画素値Ay'=B5×1/5+ux1+px2+kx3+fx4、画素値Fy'=B6×2/5+ux2+px3+kx4、画素値Ky'=B7×3/5+ux3+px4、および、画素値Py'=B8×4/5+ux4となる。
【0796】
これらの処理を全てのy方向に対して実行することにより、図150で示すような暗号化された前景成分画像を背景成分画像とする合成画像が生成される。すなわち、入力された5×5画素の画像は、9×9画素(画素A乃至Y、画素Ax乃至Dx、画素Fx乃至Ix、画素Kx乃至Nx、画素Px乃至Sx、画素Ux乃至Xx、画素Ay'乃至Ty'、画素Ax'乃至Dx'、画素Fx'乃至Ix'、画素Kx'乃至Nx'、および、画素Px'乃至Sx')の画像に変換される。
【0797】
尚、復号の処理については、暗号用動きボケ除去部2041において、暗号用動きボケ付加部2021の処理と全く逆の、動きボケ付加処理を実行することになるので、その説明は省略する。
【0798】
また、上述のステップS2006の処理において、x方向に暗号化する際、ゲインアップ処理を施したのち、y方向の暗号化を行っている。従って、復号は、y方向に復号した後、ゲインをダウンさせてからx方向に復号する必要がある。また、y方向とx方向の暗号化処理の順序は入れ替えてもよいが、先に暗号化する方向に対して、ゲインアップの処理がなされるため、復号も暗号化された順序に対応させる必要がある。
【0799】
次に、図151のフローチャートを参照して、図131で示した暗号化用動きボケ付加部2021が備えられた合成サーバ19による暗号化サービスについて説明する。尚、この処理は、ネットワーク1上に接続されたクライアントコンピュータ27−1が合成サーバ19に対して被暗号化信号を送信し、これを暗号化させて、クライアントコンピュータ27−2に送信させる場合の処理である。また、クライアントコンピュータ27には、暗号用動きボケ除去部2041を有する分離処理サーバ11の画像の分離処理機能を備えたハードウェアが設けられているか、または、ソフトウェアがインストールされているものとする。
【0800】
ステップS2101において、クライアントコンピュータ27−1は、暗号化しようとする情報(被暗号化信号)、暗号キーとなる速さと方向の情報、および、画像選択情報(背景成分画像を選択する情報)を合成サーバ19に送信する。
【0801】
ステップS2111において、合成サーバ19の暗号用動きボケ付加部2021は、クライアントコンピュータ27−1より入力された、暗号キーに基づいて、暗号化しようとする情報(被暗号化信号)を暗号化し、選択された背景成分画像を合成する暗号化処理を実行する。尚、暗号化処理については、図136のフローチャートを参照して説明したので省略する。
【0802】
ステップS2112において、合成サーバ19は、動きボケを付加することにより暗号化して合成した画像をクライアントコンピュータ27−1に送信する。
【0803】
ステップS2102において、クライアントコンピュータ27−1は、合成サーバ19より受信した合成画像を表示して、使用者が所望とする画像であるか否かを判定し、所望の画像であると判定された場合、ステップS2103において、所望の画像であったことを合成サーバ19に通知する。ステップS2113において、合成サーバ19は、所望の画像であったか否かを判定し、例えば、今の場合、ステップS2103において、所望の画像であるとの通知を受けているので、その処理は、ステップS2114に進む。
【0804】
ステップS2114において、合成サーバ19の課金処理部19aは、課金サーバ24と共に課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。
【0805】
ステップS2115において、合成サーバ19は、暗号化した合成画像をクライアントコンピュータ27−1に送信する。ステップS2104において、クライアントコンピュータ27−1は、暗号化された合成画像を受信し、そのまま、クライアントコンピュータ27−2に送信する。
【0806】
ステップS2141において、クライアントコンピュータ27−2は、暗号化された合成画像を受信する。ステップS2142において、クライアントコンピュータ27−2は、キーが入力されたか否かを判定し、暗号キーが入力されるまでその処理を繰り返す。ステップS2142において、暗号キーとして、速さと方向の情報が入力されると、ステップS2143において、入力された速さと方向に基づいて、動きボケ除去処理部2041が動きボケ処理を実行する。ステップS2144において、動きボケが除去された画像が表示される。
【0807】
ステップS2102において、所望の画像ではないと判定された場合、ステップS2015において、所望の画像ではないことを合成サーバ19に通知すると共に、その処理は、ステップS2101に戻る。また、この処理により、ステップS2114において、所望の画像ではないと判定されることになるので、合成サーバ19の処理は、ステップS2111の処理に戻る。
【0808】
すなわち、この処理により、クライアントコンピュータ27−2の使用者がクライアントコンピュータ27−1の使用者により指定された速さと方向のキーを正しく入力されたとき、暗号化された画像が正しく復号された画像が表示される。また、上述の暗号化サービスと同様のシステムにより、復号サービスを提供することもできる。
【0809】
次に、図152を参照して、修正サーバ20について説明する。
【0810】
修正サーバ20の分離処理部11は、入力された画像(画像IDでもよく、画像IDで指定された画像の場合、ネットワーク1上より対応する画像を読み出した画像)を前景成分画像と背景成分画像に分離して、前景成分画像を動きボケ調整部2101に、背景成分画像を合成部に出力する。動きボケ調整部2101は、入力された前景成分画像を指定された(修正の程度を調整する)動きボケ量で動きボケ調整し、合成部2101に出力する。合成部2101は、動きボケ調整された前景成分画像と、入力された背景成分画像とを合成し、修正画像として出力する。
【0811】
例えば、図153(A)で示すような画像が、修正サーバ20に入力されるものとする。すなわち、図153(A)右部に示すように、前景が背景上を矢印方向に移動するとき、前景の進行方向と、その逆方向に対して動きボケが生じる。この動きボケの部分は、混合領域であり、図153(A)左部に示すように、移動方向の前方部分に生じる混合領域がCB(Covered Background)であり、移動方向の後方部分に生じる混合領域がUB(Uncovered Background)である。尚、図153(A)左部の図では縦方向に時間軸tを設定しているので移動と共に、画素上の画素値の蓄積状態と時間の経過の関係が示されている。分離処理部11は、この入力画像を図153(B)で示すように前景と背景に分離する。このとき、入力された画像の混合領域も同時に抽出される。
【0812】
動きボケ調整部2101は、図153(B)で示すような前景成分画像の動きボケを調整して、例えば、図153(C)のような前景成分画像を生成する。すなわち、今の場合、動きボケが小さくされている(CB、UBの部分を小さくしている)。尚、動きボケを調整するための動きボケ調整量は、使用者が数回操作を繰り返しながら入力するようにしてもよいし、動きボケ調整部2101が所定の値に調整するようにしてもよい。
【0813】
合成部2102は、図153で示したように調整した前景成分画像と、入力された背景成分画像を合成して、図153(D)で示したような、動きボケ調整済みの前景成分画像を、背景成分画像と合成して、出力する。
【0814】
尚、背景成分画像を入力された画像のものと異なる他の背景成分画像に変更させたい場合、分離した背景成分画像を合成部2102には出力せず、変更させたい背景成分画像を合成部2102に入力する。また、修正サーバ20は、分離処理部11、動きボケ調整部2101、および、合成部2102を、ネットワーク1上の分離処理サーバ11、動きボケ調整サーバ16、および、合成サーバ19に置き換えて構成するようにしてもよい。
【0815】
次に、図154のフローチャートを参照して、修正サーバ20により実行される、クライアントコンピュータ27より入力された画像を修正する修正サービスの処理について説明する。
【0816】
ステップS2201において、クライアントコンピュータ27は、画像を指定する情報を修正サーバ20に出力する。すなわち、使用者が修正したい画像を指定する情報として、具体的な画像であるか、または、画像を指定する画像IDが修正サーバ20に出力される。
【0817】
ステップS2211において、修正サーバ20は、指定された修正しようとする画像と背景成分画像を取得し、分離処理部11は、修正しようとする画像を前景成分画像と背景成分画像に分離する。すなわち、クライアントコンピュータ27より画像が送信されてきた場合、その画像を、指定する画像IDが送信されてきた場合は、その画像IDに対応する画像を、ネットワーク1上から読出し取得する。さらに、分離処理部11は、取得した画像を前景成分画像と背景成分画像に分離する。
【0818】
ステップS2212,S2221において、修正サーバ20の課金処理部20aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。
【0819】
ステップS2213において、修正サーバ20の動きボケ調整部2101は、前景成分画像の動きボケの調整処理を実行する。尚、動きボケの調整処理は、図104のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
【0820】
ステップS2214において、合成部2102は、動きボケ調整された前景成分画像と指定された背景成分画像を合成する。ステップS2215において、修正サーバ20は、ステップS2214の処理で求められた合成画像、すなわち、修正画像をクライアントコンピュータ27に送信する。
【0821】
ステップS2202において、クライアントコンピュータ27は、修正サーバ20より送信されてきた修正画像を受信し、記憶する。
【0822】
尚、クライアントコンピュータ27は、使用者の指令に応じて、修正サーバ20により修正された画像を、修正サーバ20自身に記憶させたり、または、ネットワークを介して蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。
【0823】
次に、図155のフローチャートを参照して、購入サーバ21により実行される、クライアントコンピュータ27より指定された画像を購入する画像の購入サービスの処理について説明する。
【0824】
ステップS2301において、クライアントコンピュータ27は、購入を希望する画像を指定する情報を購入サーバ21に出力する。すなわち、使用者が購入したい画像を指定する情報として画像を指定する画像IDが購入サーバ21に出力される。
【0825】
ステップS2311において、購入サーバ21は、購入を希望する画像を取得する。すなわち、クライアントコンピュータ27より送信されてきた画像IDに対応する画像を、ネットワーク1上から読出し取得する。
【0826】
ステップS2312,S2321において、購入サーバ21の課金処理部21aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。
【0827】
ステップS2313において、購入サーバ21は、ステップS2311の処理で取得した画像をクライアントコンピュータ27に送信する。
【0828】
ステップS2302において、クライアントコンピュータ27は、購入サーバ21より送信されてきた画像を受信し、記憶する。
【0829】
尚、クライアントコンピュータ27は、使用者の指令に応じて、購入サーバ21により購入した画像を、購入サーバ21自身に記憶させたり、または、蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。また、他のクライアントコンピュータ27に送信できるようにすることで、例えば、画像をプレゼントするようなこともできる。さらに、他の使用者が、上述のように分離処理サービス、合成サービス、または、修正サービスにより、それぞれ分離された前景成分画像、背景成分画像、合成された合成画像、または、修正された修正画像なども購入することが可能となる。
【0830】
次に、図156のフローチャートを参照して、売却サーバ22により実行される、クライアントコンピュータ27より指定された画像を売却する画像の売却サービスの処理について説明する。
【0831】
ステップS2401において、クライアントコンピュータ27は、売却を希望する画像を指定する情報を購入サーバ21に出力する。すなわち、使用者が売却したい画像が売却サーバ22に出力される。
【0832】
ステップS2411において、売却サーバ22は、売却を希望する画像を取得する。すなわち、クライアントコンピュータ27より送信されてきた画像を取得する。
【0833】
ステップS2422において、売却サーバ22は、売却が希望されている画像に対して適当な価格を設定する。価格の設定は、例えば、予め使用者により設定されるものであってもよいし、ネットワーク1上でオークション形式で設定するようにしてもよいし、さらには、人物が撮像された画像である場合、撮像されている人物が、例えば、所定の著名人であるか否かにより設定するような方法でもよい。
【0834】
ステップS2413,S2431において、売却サーバ22の課金処理部22aと課金サーバ24は、売却課金処理を実行する。
【0835】
ここで、図157のフローチャートを参照して、売却課金処理について説明する。尚、実際の売却課金処理は、売却サーバ22と課金サーバ24により実行されるが各種の処理に必要な情報は、クライアントコンピュータ27からも出力されているので、ここでは、クライアントコンピュータ27の処理についても合わせて説明する。
【0836】
ステップS2501において、使用者(画像の売却を依頼する使用者)を識別するID情報をネットワーク1を介して売却サーバ22に送信する。
【0837】
ステップS2511において、売却サーバ22は、クライアントコンピュータ27より送信されてきたID情報に基づいて、売却金額、および、売却サーバ22を識別するIDを課金サーバ24に送信する。
【0838】
ステップS2521において、課金サーバ24は、送信されてきた売却サーバ22を識別するIDに基づいて、提供者口座を持つ金融サーバ26に対して、購入金額をID情報に対応する顧客口座の金融サーバ25への振り込みの依頼をする。
【0839】
ステップS2531において、提供者用の金融サーバ26は、提供者の口座から、顧客の口座が開設されている顧客用の金融サーバ25に売却金額に相当する金額の振込みを行う。
【0840】
ここで、図156のフローチャートの説明に戻る。
【0841】
ステップS2424において、売却サーバ22は、売却が完了したことをクライアントコンピュータ27に通知する。ステップS2402において、クライアントコンピュータ27は、売却完了の通知を受信する。
【0842】
尚、売却サーバ22は、使用者により売却された画像を、売却サーバ21自身に記憶してもよいし、または、蓄積サーバ18に出力させ記憶(蓄積)させるようにすることもできる。さらに、上述のようにオークション形式で価格を設定するような場合、落札者のクライアントコンピュータ27に送信するようにしても良い。
【0843】
次に、図158を参照して、検索サーバ23について説明する。
【0844】
検索サーバ23は、クライアントコンピュータ27などから入力される検索条件(画像要求信号)に基づいて、ネットワーク1上に接続されたカメラ端末装置1上で撮像されている画像を検索し、要求画像を出力するものである。検索条件としては、時刻、季節、天候、地域、場所、または、被写体などである。
【0845】
検索サーバ23の制御部2161は、検索サーバ23の全体の動作を制御する。データベース2162には、ネットワーク1に接続された、検索サーバ23自身が認識している各カメラ端末装置28毎のカメラIDに対応して、各カメラ端末装置28の位置データ(カメラ端末装置28備えられたGPS76bにより取得される)、気象データ、および、撮像している被写体のデータなどのデータ2162bがデータベースとして記憶されている。このデータベース2162の内容は、制御部2161が、所定の時間間隔で、通信部2165を制御してネットワーク1を介して各カメラ端末装置28から取得し、更新されている。
【0846】
記憶部2163は、通信部2165からネットワーク1上のカメラ端末装置28より取得した画像を記憶したり、または、各種の画像の処理に必要な情報を記憶する。
【0847】
要求情報生成部2164は、ネットワーク1上のクライアントコンピュータ27などから入力された検索条件を整理して、実際にデータベース2162上で検索できる条件を生成する。すなわち、例えば、検索条件として季節が入力された場合、各カメラ端末装置28の位置データと時刻演算部2166により演算される時刻情報により季節を特定することができることになる。そこで、要求情報生成部2164は、例えば、「春」といった検索条件が入力された場合、今現在の時刻から季節が「春」となっている、地球上の緯度経度の位置データを生成する。制御部2161は、通信部2165を制御して、この位置データに対応するカメラIDのカメラ端末装置28の撮像画像をネットワーク1上から読み出すことにより、「春」に対応する画像を取得する。
【0848】
分離処理部2167は、読込んだ画像に含まれる、検索目的の画像を分離処理により取得する。尚、分離処理部2167は、分離処理部11と同様の機能を持つものである。
【0849】
次に、図159のフローチャートを参照して、検索サーバ23により実行される、クライアントコンピュータ27より入力された検索条件に基づいて画像を検索する検索サービスの処理について説明する。
【0850】
ステップS2601において、クライアントコンピュータ27は、検索条件を検索サーバ23に出力する。ステップS2611において、検索サーバ23は、通信部2165により検索条件を受信する。
【0851】
ステップS2612,S2631において、検索サーバ23の課金処理部23aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。また、ステップS2612,S2631の処理における課金処理は、検索を実行することに対しての料金に関する課金処理である。
【0852】
ステップS2613において、検索サーバ23は、検索条件に対応した画像を検索し、ステップS2614において対応する画像を対応する画像を呼び出す。ステップS2641において、カメラ端末装置28は、現在撮像している画像を検索サーバ23に送信する。
【0853】
すなわち、例えば、図160で示すように、ネットワーク1に対してクライアントコンピュータ27−1乃至27−5、検索サーバ23、および、カメラ端末装置28−1乃至28−5が接続されていたとする。このとき、クライアントコンピュータ27−2が、使用者により操作されて、検索条件として、「人間」、「車」、および、「ビル」を、ステップS2611の処理で送信してくると、検索サーバ23は、ステップS2613において、データベース2162で検索条件として、「人間」、「車」、および、「ビル」の被写体を検索する。すなわち、図160の場合、検索サーバ23は、車2172がカメラID=1のカメラ端末装置28−1、人間2183がカメラID=2のカメラ端末装置28−2、および、ビル2211がカメラID=5のカメラ端末装置28−5で撮像されていることを検索し、ステップS2614において、それぞれのカメラ端末装置28より画像を取得する。
【0854】
ステップS2515において、検索サーバ23は、呼び出した画像が分離されているか、すなわち、所望の条件以外の画像(オブジェクト)が含まれているか否かを判定する。
【0855】
図160の場合、カメラ端末装置28−1より送信されてくる画像には、検索条件以外の雲2172が含まれており、カメラ端末装置28−2より送信されてくる画像には、検索条件以外の家2181が含まれているので、これらの画像は、検索条件に対応する画像が分離されていないことになるので、その処理は、ステップS2616に進む。
【0856】
ステップS2616において、分離処理部2167は、分離処理を実行する。尚、分離処理は、図117のフローチャートのステップS1013の処理と同様であるので、その説明は省略する。
【0857】
ステップS2617において、呼び出した画像を合成して、クライアントコンピュータ27に送信する。ステップS2602において、クライアントコンピュータ27は検索サーバ23より送信されてきた画像を取得する。ステップS2603において、クライアントコンピュータ27は、受信された画像が所望の画像であったか否かを判定する。図160で示すように、ディスプレイ27a−1に表示された画像の場合、検索条件としての「人間」、「車」、および、「ビル」は、人間2182、車2172、および、ビル2211として画像に含まれているので、所望の画像であるので、ステップS2604において、所望の画像であったことを、検索サーバに通知する。
【0858】
ステップS2618において、検索サーバ23は、クライアントコンピュータ27より送信されてきた通知が所望の画像であったか否かを判定する。図160の場合、所望の画像であったので、その処理は、ステップS2619に進む。
【0859】
ステップS2619,S2632において、検索サーバ23の課金処理部23aと課金サーバ24は、課金処理を実行する。尚、課金処理については、図118,図120において、分離サービスにおける場合と同様の処理であるので、その説明は省略する。また、ステップS2619,S2632の処理における課金処理は、検索された画像を送信したことに対しての料金に関する課金処理である。また、ステップS2515において、全て検索条件の画像だけであった場合、ステップS2616の処理は、スキップされることになる。
【0860】
ステップS2603において、例えば、クライアントコンピュータ27−4より、検索条件として「家」、「雲」、および、「顔」が指定されていたにも関わらず、ディスプレイ27a−4に表示された画像のように、家2181、および、雲2071のみが表示され、顔2201が表示されていないとき、所望の画像ではないことになるので、その処理は、ステップS2605に進み、所望の画像ではないことを検索サーバ23に送信して、その処理は終了する。
【0861】
このとき、検索サーバ23は、ステップS2618において、所望の画像ではなかったことが通知されるので、その処理は終了する。
【0862】
この場合、検索処理に係る料金は支払うことになるが、検索された画像を送信したことに対して支払われないことになる。
【0863】
また、以上の検索処理においては、今撮像している画像を検索する例について説明してきたが、データベース2162の位置情報、気象データ、または、被写体データ2162aを時間的に蓄積し、過去の時間でカメラ端末装置28により撮像されて、その記憶部78に記憶されている画像を検索するようにしてもよい。
【0864】
カメラ端末装置28は、ネットワーク1に対して、インターネットなどに限らず、無線、または、有線により通信できる状態で接続されていればよい。
【0865】
以上によれば、ネットワーク上のカメラ端末装置28−1乃至28−nが今現在撮像している、または、撮像されて蓄積されている画像を、検索条件としてを入力することにより検索することが可能となる。
【0866】
本発明の信号処理を行うプログラムを記録した記録媒体は、図2,3に示すように、コンピュータとは別に、使用者にプログラムを提供するために配布される、プログラムが記録されている磁気ディスク61,91(フレキシブルディスクを含む)、光ディスク62,92(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク63,93(MD(Mini-Disc)(商標)を含む)、もしくは半導体メモリ64,94などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態で使用者に提供される、プログラムが記録されているROM42,72や、記憶部48,78に含まれるハードディスクなどで構成される。
【0867】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0868】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0869】
【発明の効果】
本発明の第1の側面によれば、使用者の検索要求情報を入力し、画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像を記憶し、記憶した画像のうち、入力した検索要求情報に対応する画像を検索し、検索結果を出力し、検索結果に対応して、課金処理を実行し、画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、画素値を時間方向に展開したモデルを設定し、モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成して、生成された合成画像を記憶するようにした。
【0870】
本発明の第2の側面によれば、第1の通信装置が、使用者の検索要求情報を入力し、検索要求情報を第2の通信装置に送信し、第2の通信装置より送信されてくる検索結果を受信し、第2の通信装置が、第1の通信装置より送信されてくる検索要求情報を受信し、画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像を記憶し、記憶した画像のうち、受信した検索要求情報に対応する画像を検索し、検索結果を第1の通信装置に送信し、検索結果に対応して、課金処理を実行し、画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、画素値を時間方向に展開したモデルを設定し、モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成して、生成された合成画像を記憶するようにした。
【0873】
いずれにおいても、結果として、画像を分離、合成、または、修正するなどした画像をネットワーク上で検索することが可能となる。
【図面の簡単な説明】
【図1】本発明を適用した画像処理システムの一実施の形態の構成を示す図である。
【図2】図1の分離処理サーバの構成を示す図である。
【図3】図1のカメラ端末装置の構成を示す図である。
【図4】図1の分離処理サーバの機能を示す図である。
【図5】図1の分離処理サーバの機能を示す図である。
【図6】図1の動き検出サーバの機能を示す図である。
【図7】図1の動き検出サーバの機能を示す図である。
【図8】図1の領域特定サーバの機能を示す図である。
【図9】図1の領域特定サーバの機能を示す図である。
【図10】図1の混合比算出サーバの機能を示す図である。
【図11】図1の混合比算出サーバの機能を示す図である。
【図12】図1の前景背景分離処理サーバの機能を示す図である。
【図13】図1の前景背景分離処理サーバの機能を示す図である。
【図14】図1の動きボケ調整サーバの機能を示す図である。
【図15】図1の動きボケ調整サーバの機能を示す図である。
【図16】図1の符号化サーバの機能を示す図である。
【図17】図1の符号化サーバの機能を示す図である。
【図18】図1の蓄積サーバの機能を示す図である。
【図19】図1の蓄積サーバの機能を示す図である。
【図20】図1の合成サーバの機能を示す図である。
【図21】図1の合成サーバの機能を示す図である。
【図22】図1の修正サーバの機能を示す図である。
【図23】図1の修正サーバの機能を示す図である。
【図24】図1の購入サーバの機能を示す図である。
【図25】図1の売却サーバの機能を示す図である。
【図26】図1の検索サーバの機能を示す図である。
【図27】分離処理サーバを示すブロック図である。
【図28】センサによる撮像を説明する図である。
【図29】画素の配置を説明する図である。
【図30】検出素子の動作を説明する図である。
【図31】動いている前景に対応するオブジェクトと、静止している背景に対応するオブジェクトとを撮像して得られる画像を説明する図である。
【図32】背景領域、前景領域、混合領域、カバードバックグラウンド領域、およびアンカバードバックグラウンド領域を説明する図である。
【図33】静止している前景に対応するオブジェクトおよび静止している背景に対応するオブジェクトを撮像した画像における、隣接して1列に並んでいる画素の画素値を時間方向に展開したモデル図である。
【図34】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図35】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図36】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図37】前景領域、背景領域、および混合領域の画素を抽出した例を示す図である。
【図38】画素と画素値を時間方向に展開したモデルとの対応を示す図である。
【図39】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図40】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図41】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図42】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図43】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図44】動きボケの量の調整の処理を説明するフローチャートである。
【図45】領域特定部103の構成の一例を示すブロック図である。
【図46】前景に対応するオブジェクトが移動しているときの画像を説明する図である。
【図47】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図48】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図49】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図50】領域判定の条件を説明する図である。
【図51】領域特定部103の領域の特定の結果の例を示す図である。
【図52】領域特定部103の領域の特定の結果の例を示す図である。
【図53】領域特定の処理を説明するフローチャートである。
【図54】領域特定部103の構成の他の一例を示すブロック図である。
【図55】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図56】背景画像の例を示す図である。
【図57】2値オブジェクト画像抽出部302の構成を示すブロック図である。
【図58】相関値の算出を説明する図である。
【図59】相関値の算出を説明する図である。
【図60】2値オブジェクト画像の例を示す図である。
【図61】時間変化検出部303の構成を示すブロック図である。
【図62】領域判定部342の判定を説明する図である。
【図63】時間変化検出部303の判定の例を示す図である。
【図64】領域判定部103の領域特定の処理を説明するフローチャートである。
【図65】領域判定の処理の詳細を説明するフローチャートである。
【図66】領域特定部103のさらに他の構成を示すブロック図である。
【図67】ロバスト化部361の構成を説明するブロック図である。
【図68】動き補償部381の動き補償を説明する図である。
【図69】動き補償部381の動き補償を説明する図である。
【図70】領域特定の処理を説明するフローチャートである。
【図71】ロバスト化の処理の詳細を説明するフローチャートである。
【図72】混合比算出部104の構成の一例を示すブロック図である。
【図73】理想的な混合比αの例を示す図である。
【図74】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図75】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図76】前景の成分の相関を利用した近似を説明する図である。
【図77】 C,N、およびPの関係を説明する図である。
【図78】推定混合比処理部401の構成を示すブロック図である。
【図79】推定混合比の例を示す図である。
【図80】混合比算出部104の他の構成を示すブロック図である。
【図81】混合比の算出の処理を説明するフローチャートである。
【図82】推定混合比の演算の処理を説明するフローチャートである。
【図83】混合比αを近似する直線を説明する図である。
【図84】混合比αを近似する平面を説明する図である。
【図85】混合比αを算出するときの複数のフレームの画素の対応を説明する図である。
【図86】混合比推定処理部401の他の構成を示すブロック図である。
【図87】推定混合比の例を示す図である。
【図88】カバードバックグラウンド領域に対応するモデルによる混合比推定の処理を説明するフローチャートである。
【図89】前景背景分離部105の構成の一例を示すブロック図である。
【図90】入力画像、前景成分画像、および背景成分画像を示す図である。
【図91】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図92】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図93】画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図94】分離部601の構成の一例を示すブロック図である。
【図95】分離された前景成分画像、および背景成分画像の例を示す図である。
【図96】前景と背景との分離の処理を説明するフローチャートである。
【図97】動きボケ調整部106の構成の一例を示すブロック図である。
【図98】処理単位を説明する図である。
【図99】前景成分画像の画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図100】前景成分画像の画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図101】前景成分画像の画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図102】前景成分画像の画素値を時間方向に展開し、シャッタ時間に対応する期間を分割したモデル図である。
【図103】動きボケ調整部106の他の構成を示す図である。
【図104】動きボケ調整部106による前景成分画像に含まれる動きボケの量の調整の処理を説明するフローチャートである。
【図105】動きボケ調整部106の構成の他の一例を示すブロック図である。
【図106】画素値と前景の成分のとの対応を指定するモデルの例を示す図である。
【図107】前景の成分の算出を説明する図である。
【図108】前景の成分の算出を説明する図である。
【図109】前景の動きボケの除去の処理を説明するフローチャートである。
【図110】分離処理サーバの機能の他の構成を示すブロック図である。
【図111】合成部1001の構成を示す図である。
【図112】分離処理サーバの機能のさらに他の構成を示すブロック図である。
【図113】混合比算出部1101の構成を示すブロック図である。
【図114】前景背景分離部1102の構成を示すブロック図である。
【図115】分離処理サーバの機能のさらに他の構成を示すブロック図である。
【図116】合成部1201の構成を示す図である。
【図117】分離サービスを説明するフローチャートである。
【図118】課金処理を説明するフローチャートである。
【図119】課金処理を説明する図である。
【図120】課金処理のその他の例を説明するフローチャートである。
【図121】動き検出サービスを説明するフローチャートである。
【図122】領域特定サービスを説明するフローチャートである。
【図123】混合比算出サービスを説明するフローチャートである。
【図124】前景背景分離サービスを説明するフローチャートである。
【図125】動きボケ調整サービスを説明するフローチャートである。
【図126】符号化サーバを説明する図である。
【図127】符号化サービスを説明するフローチャートである。
【図128】符号化処理による圧縮時の圧縮能力を説明する図である。
【図129】符号化サーバのその他の例を説明する図である。
【図130】合成サービスを説明するフローチャートである。
【図131】暗号用動きボケ付加部を説明する図である。
【図132】暗号用動きボケ除去部を説明する図である。
【図133】暗号用動きボケを付加する処理を説明する図である。
【図134】暗号用動きボケを付加する処理を説明する図である。
【図135】暗号用動きボケを付加する処理を説明する図である。
【図136】暗号化処理を説明するフローチャートである。
【図137】暗号用動きボケを付加する処理を説明する図である。
【図138】暗号用動きボケを付加する処理を説明する図である。
【図139】暗号用動きボケを付加する処理を説明する図である。
【図140】暗号用動きボケを付加する処理を説明する図である。
【図141】暗号用動きボケを付加する処理を説明する図である。
【図142】暗号用動きボケを付加する処理を説明する図である。
【図143】暗号用動きボケを付加する処理を説明する図である。
【図144】暗号用動きボケを付加する処理を説明する図である。
【図145】暗号用動きボケを付加する処理を説明する図である。
【図146】暗号用動きボケを付加する処理を説明する図である。
【図147】暗号用動きボケを付加する処理を説明する図である。
【図148】暗号用動きボケを付加する処理を説明する図である。
【図149】暗号用動きボケを付加する処理を説明する図である。
【図150】暗号用動きボケを付加する処理を説明する図である。
【図151】暗号用サービスを説明するフローチャートである。
【図152】修正サーバを説明する図である。
【図153】修正処理を説明する図である。
【図154】修正サービスを説明するフローチャートである。
【図155】購入サービスを説明するフローチャートである。
【図156】売却サービスを説明するフローチャートである。
【図157】売却課金処理を説明するフローチャートである。
【図158】検索サーバを説明する図である。
【図159】検索サービスを説明するフローチャートである。
【図160】検索サービスを説明する図である。
【符号の説明】
11 分離処理サーバ, 12 動き検出サーバ, 13 領域特定サーバ,14 混合比算出サーバ, 15 前景背景分離サーバ, 16 動きボケ調整サーバ, 17 符号化サーバ, 18 蓄積サーバ, 19 合成サーバ,20 修正サーバ, 21 購入サーバ, 22 売却サーバ, 23 検索サーバ, 24 課金サーバ, 25,26 金融サーバ, 27 クライアントコンピュータ, 28 カメラ端末装置, 41 CPU, 42 ROM, 43 RAM, 46 入力部, 47 出力部, 48 記憶部, 49 通信部,71 CPU, 72 ROM, 73 RAM, 76 入力部, 76a センサ, 76b GPS, 77 出力部, 78 記憶部, 79 通信部, 91磁気ディスク, 92 光ディスク, 93 光磁気ディスク, 94 半導体メモリ, 101 オブジェクト抽出部, 102 動き検出部, 103 領域特定部, 104 混合比算出部, 105 前景背景分離部, 106 動きボケ調整部, 107 選択部, 201 フレームメモリ, 202−1乃至202−4 静動判定部, 203−1乃至203−3 領域判定部, 204 判定フラグ格納フレームメモリ, 205 合成部, 206 判定フラグ格納フレームメモリ, 301 背景画像生成部, 302 2値オブジェクト画像抽出部, 303 時間変化検出部, 321 相関値演算部, 322しきい値処理部, 341 フレームメモリ, 342 領域判定部, 361 ロバスト化部, 381 動き補償部, 382 スイッチ, 383−1乃至383−N フレームメモリ、 384−1乃至384−N 重み付け部,385 積算部, 401 推定混合比処理部, 402 推定混合比処理部, 403 混合比決定部, 421 フレームメモリ, 422 フレームメモリ, 423 混合比演算部, 441 選択部, 442 推定混合比処理部, 443 推定混合比処理部, 444 選択部, 501 遅延回路, 502 足し込み部, 503 演算部, 601 分離部, 602 スイッチ, 603 合成部, 604 スイッチ, 605 合成部, 621 フレームメモリ, 622 分離処理ブロック, 623 フレームメモリ, 631 アンカバード領域処理部, 632 カバード領域処理部, 633 合成部, 634 合成部, 801 処理単位決定部, 802 モデル化部,803 方程式生成部, 804 足し込み部, 805 演算部, 806動きボケ付加部, 807 選択部, 821 選択部, 901 処理単位決定部, 902 モデル化部, 903 方程式生成部, 904 演算部,905 補正部, 906 動きボケ付加部, 907 選択部, 1001合成部, 1021 背景成分生成部, 1022 混合領域画像合成部, 1023 画像合成部, 1101 混合比算出部, 1102 前景背景分離部, 1121 選択部, 1201 合成部, 1221 選択部, 2001 符号化部,2002 分離処理部, 2021 暗号用動きボケ付加部, 2031 入力情報処理部, 2032 画像化部,2033 動きボケ付加部, 2041 暗号用動きボケ除去部, 2051 入力情報処理部, 2052 動きボケ除去部, 2053 信号変換部, 2101 動きボケ調整部,2102 合成部, 2161 制御部, 2162 データベース, 2163 記憶部, 2164 要求情報生成部, 2165 通信部, 2166 時刻演算部, 2167 分離処理部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a communication device and method, a communication system, a recording medium, and a program, and more particularly to a communication device and method, a communication system, a recording medium, and a program that take into consideration the difference between a signal detected by a sensor and the real world.
[0002]
[Prior art]
A technique for detecting an event in the real world with a sensor and processing sampling data output from an image sensor is widely used.
[0003]
For example, in an image obtained by capturing an object moving in front of a predetermined background with a video camera, motion blur occurs when the moving speed of the object is relatively fast.
[0004]
In addition, when a conventional user wants to synthesize an image of an object with motion blur and another background image, in order to obtain a desired background image, he / she searches for it with some consideration and finds his computer. It was actually displayed by importing it into
[0005]
[Problems to be solved by the invention]
When an object moves in front of a stationary background, not only motion blur due to mixing of the moving object image itself, but also mixing of the background image and the moving object image occurs. Conventionally, processing corresponding to the state of mixing of the background image and the moving object image has not been considered.
[0006]
In addition, when searching for an image as described above, there is a problem that the same processing must be repeated until an image desired by the user is captured.
[0007]
The present invention has been made in view of such a situation, and makes it possible to search on a network for an image obtained by separating, combining, or correcting an image based on the state of image mixing. .
[0008]
[Means for Solving the Problems]
The communication device according to the first aspect of the present invention includes a search request information input unit for inputting user search request information, and a pixel-by-pixel and an amount of light constituting a temporally integrated image. At least one or more of the foreground component image composed of the foreground object component constituting the foreground object and the background component image composed of the background object component constituting the background object are separated. Storage means for storing an image composed of images, search means for searching for an image corresponding to search request information input by search request information input means among images stored in the storage means, and search by the search means Output means for outputting results, and charging means for executing charging processing corresponding to the search results; A foreground component image consisting of foreground object components that constitute the foreground object separated from the image data of the image is set in a model in which pixel values are expanded in the time direction, and the motion blur is adjusted using the model to A composite image generated by the composite image generation means, comprising: a background component image comprising background object components constituting the object; and a composite image generation means for generating a composite image by combining the background component image with a predetermined mixing ratio. Remember It is characterized by that.
[0009]
The storage means is provided with an imaging device that captures images, and updates and stores images captured by the imaging device at predetermined time intervals, and can store a plurality of wirelessly or wiredly communicable devices. The image storage unit can be configured.
[0010]
The search request information may include information for specifying a foreground object, and the storage means includes an identifier for identifying an imaging device provided in a plurality of image storage units, and a corresponding image storage unit. A database indicating the relationship between the objects stored in the image and the object of the image can be further provided. The search means refers to the database, and among the images stored in the storage means, the search request information input means The image corresponding to the information for designating the foreground object input by can be searched.
[0011]
Separation means for separating the image data of the image into a foreground component image composed of a foreground object component constituting a foreground object and a background component image composed of a background object component constituting a background object can be further provided. The storage means can store the foreground component image and the background component image separated by the separation means.
[0013]
Separating means for separating the image data of the image into a foreground component image consisting of a foreground object component constituting a foreground object and a background component image consisting of a background object component constituting a background object, and a composite image generating means, Foreground component image separated by separation means Set a model in which the pixel values are expanded in the time direction, and adjust the motion blur using the model, Background component image When Synthesize at a predetermined mixing ratio The , Composite image Generate Can be.
[0014]
The output means outputs the searched image together with the presence or absence of an image corresponding to the search request information or the presence or absence of an image corresponding to the search request information as a search result. Based on the retrieved result, the billing process can be executed.
[0015]
The billing means generates billing information including a user identifier, a communication device identifier, and monetary information corresponding to the search request information in accordance with the search request information. Based on the billing information, the user's financial information is generated. The accounting process can be executed for the account based on the search result output by the output means.
[0016]
Point storage means for storing points for each user used in the charging process can be further provided, and the charging means includes a user identifier, a communication device identifier, and a search request information. The billing information including the amount information corresponding to the output of the search result is generated, and the number of points stored in the point storage means is subtracted by the amount corresponding to the amount information, so that the billing process can be executed. .
[0017]
The output means can output the search result to the communication device of the user who has completed the accounting process after the accounting process is completed by the accounting means.
[0018]
The communication method according to the first aspect of the present invention includes a search request information input step for inputting user search request information, and a pixel-by-pixel and an amount of light constituting a temporally integrated image. At least one or more of the foreground component image composed of the foreground object component constituting the foreground object and the background component image composed of the background object component constituting the background object are separated. A storage step for storing an image composed of images, and a search step for searching for an image corresponding to the search request information input in the process of the search request information input step among the images stored in the process of the storage step; An output step for outputting a search result in the process of the search step; a charging step for executing a charging process in response to the search result; A foreground component image consisting of foreground object components that constitute the foreground object separated from the image data of the image is set in a model in which pixel values are expanded in the time direction, and the motion blur is adjusted using the model, and the background Including a background component image composed of background object components constituting the object and a composite image generation step for generating a composite image by combining the background component image with a predetermined mixture ratio, and the process of the storage step is generated by the process of the composite image generation step Memorized composite image It is characterized by that.
[0019]
A recording medium program according to a first aspect of the present invention includes a search request information input control step for controlling input of search request information by a user, and light that constitutes a temporally integrated image for each pixel. Among the foreground component image composed of the foreground object component constituting the foreground object and the background component image composed of the background object component constituting the background object, the image data composed of the pixel values determined according to the amount of The input is controlled by the search request information input control step among the storage control step for controlling the storage of the image composed of at least one image and the image whose storage is controlled by the processing of the storage control step. A search control step for controlling the search of an image corresponding to the search request information, and the output of the search result in the processing of the search control step An output control step, in response to a search result, a charging control step of controlling the execution of billing processing A foreground component image consisting of foreground object components that constitute the foreground object separated from the image data of the image is set in a model in which pixel values are expanded in the time direction, and the motion blur is adjusted using the model, and the background The computer executes a process including a background component image composed of background object components constituting the object and a composite image generation step of generating a composite image by synthesizing the background component image at a predetermined mixing ratio. Store the composite image generated by the processing of the generation step It is characterized by that.
[0020]
A program according to a first aspect of the present invention includes a search request information input control step for controlling input of search request information by a user, and an amount of light constituting an image integrated for each pixel and temporally. At least one of a foreground component image comprising a foreground object component constituting a foreground object from which image data comprising pixel values determined in accordance with the image data is separated and a background component image comprising a background object component constituting a background object The storage control step for controlling the storage of the image composed of the above images, and the search request information whose input is controlled by the processing of the search request information input control step among the images whose storage is controlled by the processing of the storage control step Control step for controlling the search for images corresponding to the output, and output control for controlling the output of the search results in the processing of the search control step And step, corresponding to the search results, and billing control step of controlling the execution of billing processing A foreground component image consisting of foreground object components that constitute the foreground object separated from the image data of the image is set in a model in which pixel values are expanded in the time direction, and the motion blur is adjusted using the model, and the background The computer executes a process including a background component image composed of background object components constituting the object and a composite image generation step of generating a composite image by synthesizing the background component image at a predetermined mixing ratio. Store the composite image generated by the processing of the generation step It is characterized by that.
[0021]
In the communication system according to the second aspect of the present invention, the first communication device inputs search request information input means for inputting user search request information, and search request information for transmitting the search request information to the second communication device. And a search result receiving means for receiving a search result transmitted from the second communication apparatus, wherein the second communication apparatus receives the search request information transmitted from the first communication apparatus. Search request information receiving means, and foreground object components constituting the foreground object in which image data consisting of pixel values determined for each pixel and according to the amount of light constituting the temporally integrated image are separated Storage means for storing an image composed of at least one image among a foreground component image consisting of the above and a background component image consisting of the background object component constituting the background object; Of the images stored in the storage means, search means for searching for an image corresponding to the search request information received by the search request information receiving means, and search result transmission for transmitting the search results of the search means to the first communication device And charging means for executing charging processing in response to the search result; A foreground component image consisting of foreground object components that constitute the foreground object separated from the image data of the image is set in a model in which pixel values are expanded in the time direction, and the motion blur is adjusted using the model to A composite image generated by the composite image generation means, comprising: a background component image comprising background object components constituting the object; and a composite image generation means for generating a composite image by combining the background component image with a predetermined mixing ratio. Remember It is characterized by that.
[0042]
In the first aspect of the present invention, an image composed of pixel values determined according to the amount of light that constitutes an image integrated for each pixel and temporally, upon input of user search request information. An image composed of at least one image among a foreground component image composed of foreground object components constituting a foreground object from which data is separated and a background component image composed of background object components constituting a background object is stored. Among the stored images, an image corresponding to the input search request information is searched, a search result is output, and a billing process is executed corresponding to the search result. A foreground component image composed of foreground object components constituting the foreground object separated from the image data of the image is set in a model in which pixel values are expanded in the time direction, and the model is used to adjust motion blur. The background component image composed of the background object components constituting the background object is synthesized with a predetermined mixture ratio, a synthesized image is generated, and the generated synthesized image is stored. The
[0043]
In the second aspect of the present invention, search request information of a user is input by the first communication device, and the search request information is transmitted to the second communication device and transmitted from the second communication device. The search result is received, the search request information transmitted from the first communication device is received by the second communication device, and the amount of light constituting the image integrated for each pixel and time is set. At least one of a foreground component image comprising a foreground object component constituting a foreground object from which image data comprising pixel values determined in accordance with the image data is separated and a background component image comprising a background object component constituting a background object An image composed of the above images is stored, and among the stored images, an image corresponding to the received search request information is searched, and the search result is stored in the first communication device. Are signals, corresponding to the search results, the charging process is executed A foreground component image composed of foreground object components constituting the foreground object separated from the image data of the image is set in a model in which pixel values are expanded in the time direction, and the model is used to adjust motion blur. The background component image composed of the background object components constituting the background object is synthesized with a predetermined mixture ratio, a synthesized image is generated, and the generated synthesized image is stored. The
[0046]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a diagram showing an embodiment of an image processing system according to the present invention.
[0047]
The image processing system of the present invention includes, for example, a separation processing server 11, a motion detection server 12, an area identification server 13, a mixture ratio calculation server 14, a foreground / background separation processing server 15, and a motion blur adjustment server 16 on a network 1 such as the Internet. , Encoding server 17, storage servers 18-1, 18-2, synthesis server 19, correction server 20, purchase server 21, sale server 22, search server 23, billing server 24, financial server (for customer) 25, financial server (Provider) 26, client computer 27, and camera terminal devices 28-1 to 28-n are connected to each other and can exchange data with each other. Separation processing server 11, motion detection server 12, region specifying server 13, mixing ratio calculation server 14, foreground / background separation processing server 15, motion blur adjustment server 16, encoding server 17, composition server 19, correction server 20, purchase server 21 , Sale server 22, search server 23, billing server 24, financial server (for customer) 25, and financial server (for provider) 26 are a separation service, a motion detection service, a region identification service, a mixing ratio calculation service, respectively. Providing foreground / background separation services, motion blur adjustment services, encoding services, synthesis services, correction services, purchase services, sale services, search services, billing services, and financial services (for customers and providers) It is a server that is managed or operated by a person. In the following description, when there is no need to individually distinguish the storage servers 18-1, 18-2 and the camera terminal devices 28-1 to 28-n, the storage server 18 and the camera terminal device 28 are simply used. Called. The same applies to other servers and devices.
[0048]
FIG. 2 is a diagram showing a configuration of the separation processing server 11 according to the present invention. A CPU (Central Processing Unit) 41 executes various processes according to a program stored in a ROM (Read Only Memory) 42 or a storage unit 48. A RAM (Random Access Memory) 43 appropriately stores programs executed by the CPU 41, data, and the like. The CPU 41, the ROM 42, and the RAM 43 are connected to each other by a bus 44.
[0049]
An input / output interface 45 is also connected to the CPU 41 via the bus 44. The input / output interface 45 is connected to an input unit 46 including a keyboard, a mouse, and a microphone, and an output unit 47 including a display and a speaker. The CPU 41 executes various processes in response to commands input from the input unit 46. Then, the CPU 41 outputs an image, sound, or the like obtained as a result of the processing to the output unit 47.
[0050]
The storage unit 48 connected to the input / output interface 45 is composed of a hard disk, for example, and stores programs executed by the CPU 41 and various data. The communication unit 49 communicates with an external device via the Internet or other networks.
[0051]
A program may be acquired via the communication unit 49 and stored in the storage unit 48.
[0052]
The drive 50 connected to the input / output interface 45 drives the magnetic disk 61, the optical disk 62, the magneto-optical disk 63, or the semiconductor memory 64 when they are mounted, and programs and data recorded there. Get etc. The acquired program and data are transferred to and stored in the storage unit 48 as necessary.
[0053]
It should be noted that the motion detection server 12, the area specifying server 13, the mixing ratio calculation server 14, the foreground / background separation processing server 15, the motion blur adjustment server 16, the encoding server 17, the storage servers 18-1 and 18-2, the synthesis server 19, The basic configuration of the correction server 20, the purchase server 21, the sale server 22, the search server 23, the billing server 24, the financial server (for customer) 25, the financial server (for provider) 26, and the client computer 27 is separated. Since it is the same as that of the process server 11, the description is abbreviate | omitted.
[0054]
FIG. 3 is a diagram showing the configuration of the camera terminal device 28 according to the present invention. The configuration of the camera terminal device 28 is separated except that an input unit 76 is provided with a sensor 76a and a GPS (Global Positioning System) 76b, and an output unit 77 is provided with an LCD (Liquid Crystal Display) 77a. The configuration is the same as that of the processing server 11. That is, the CPU 71, ROM 72, RAM 73, bus 74, input / output interface 75, input unit 76, output unit 77, storage unit 78, communication unit 79, drive 80, magnetic disk 91, optical disk 92, magneto-optical disk of the camera terminal device 28 93 and the semiconductor memory 94 are the CPU 41, ROM 42, RAM 43, bus 44, input / output interface 45, input unit 46, output unit 47, storage unit 48, communication unit 49, drive 50, magnetic disk of the separation processing server 11, respectively. 61, the optical disk 62, the magneto-optical disk 63, and the semiconductor memory 64, respectively.
[0055]
The sensor 76 a is an image sensor and outputs a captured image to the input unit 76. The GPS 76 b detects position information (latitude and longitude) on the earth based on a signal transmitted from a geostationary satellite (not shown), and outputs the detected position information to the input unit 76. The LCD 77a displays an image output from the output unit.
[0056]
Next, the separation processing server 11 will be described with reference to FIGS.
[0057]
As illustrated in FIG. 4, the separation processing server 11 separates an image input from the client computer 27 or the like via the network 1 into a foreground component image and a background component image by a method described later, Each of the foreground component image and the background component image is generated with an ID (Identifier) and output to the client computer 27, stored by itself, output to the storage server 18 for storage, or on the network Output to other servers and store. Here, the foreground component image indicates an image having a motion component in the input image, and the background component image indicates an image of a still portion that does not include the motion component in the input image. At this time, the billing processing unit 11a performs billing processing related to the separation processing for the billing server 24 via the network 1. As shown in FIG. 5, when an image ID that designates an image is input instead of an image, the separation processing server 11 accesses a search server 23 and a storage server 18 described later on the network 1, It searches its own storage unit (for example, storage unit 78 in FIG. 3), reads the image data corresponding to the input image ID, separates it into a foreground component image and a background component image, and then assigns an ID corresponding to each of them. At the same time, it is stored by itself or output to another server on the network 1 to execute processing corresponding to that server.
[0058]
In the following description, an image ID is described as an example of information for designating an image, but any information that can designate an image may be used. For example, image position information described later may be used.
[0059]
Next, the motion detection server 12 will be described with reference to FIGS.
[0060]
As illustrated in FIG. 6, the object extraction unit 12a of the motion detection server 12 extracts, for example, an image object in an image input from the client computer 27 and outputs the image object to the motion detection unit 12b. The motion detection unit 12b detects the motion vector and position information of the input image object and outputs it to the client computer 27, stores it by itself, or outputs it to another server on the network 1 and corresponds to that server. To execute the process. At this time, the billing processing unit 12c performs billing processing related to the detection of the motion vector and position information for each image object with respect to the billing server 24 via the network 1. In this specification, an image corresponding to an object in the real world that is a target of imaging is referred to as an object.
[0061]
As shown in FIG. 7, when an image ID that designates an image is input instead of an image, the motion detection server 12 accesses a search server 23 and a storage server 18 described later on the network 1, It searches its own storage unit (for example, storage unit 78 in FIG. 3), reads image data corresponding to the input image ID, and executes the same processing as described above.
[0062]
Next, the area specifying server 13 will be described with reference to FIGS.
[0063]
As shown in FIG. 8, the area specifying server 13 uses an image input from the client computer 27 or the like via the network 1 and object specification information for specifying an object in the image. Information indicating whether each pixel belongs to either the foreground area, the background area, or the mixed area, and indicating whether each pixel belongs to the foreground area, the background area, or the mixed area (hereinafter referred to as area information) Is output to the client computer 27, stored by itself, or output to another server on the network 1 to execute processing corresponding to the server. At this time, the billing processing unit 13 a performs billing processing for the fee related to the area specifying processing with respect to the billing server 24 via the network 1. As shown in FIG. 9, when an image ID for designating an image is input instead of an image, the area specifying server 13 accesses a search server 23 and a storage server 18 described later on the network 1, It searches its own storage unit (for example, storage unit 78 in FIG. 3), calls an image corresponding to the input image ID, and outputs area information corresponding to the object designation information of the image.
[0064]
Next, the mixing ratio calculation server 14 will be described with reference to FIGS. 10 and 11.
[0065]
As shown in FIG. 10, the mixture ratio calculation server 14 is based on, for example, an image input from the client computer 27 or the like via the network 1, object designation information for designating an object in the image, and region information. Then, a mixture ratio (hereinafter referred to as a mixture ratio α) corresponding to the pixels included in the mixture area is calculated, and the calculated mixture ratio is output to the client computer 27, stored by itself, or other on the network Output to the server and execute processing corresponding to the server. At this time, the billing processing unit 14 a performs billing processing related to the charge ratio calculation processing for the billing server 24 via the network 1. As shown in FIG. 11, when an image ID that designates an image is input instead of an image, the mixture ratio calculation server 14 accesses a search server 23 and a storage server 18 described later on the network 1. Then, it searches its own storage unit (for example, storage unit 78 in FIG. 3), calls an image corresponding to the input image ID, and executes the same processing as described above.
[0066]
Next, the foreground / background separation processing server 15 will be described with reference to FIGS.
[0067]
The foreground / background separation processing server 15, as shown in FIG. 12, for example, an image input from the client computer 27 or the like via the network 1, object designation information for designating an object in the image, area information, and Based on the mixture ratio α, a foreground component image consisting only of an image component corresponding to a foreground object (hereinafter also referred to as a foreground component) and a background component consisting only of a background component (hereinafter also referred to as a background component) The input image is separated from the image, and an ID is assigned to each image and output to the client computer 27, stored by itself, or output to another server on the network, and processing corresponding to the server is performed. Let it run. At this time, the billing processing unit 15 a performs billing processing related to the foreground / background separation processing to the billing server 24 via the network 1. Further, as shown in FIG. 13, when an image ID designating an image is input instead of an image, the foreground / background separation processing server 15 accesses a search server 23 and a storage server 18 described later on the network 1. Alternatively, it searches its own storage unit (for example, the storage unit 78 in FIG. 3), calls an image corresponding to the input image ID, and executes the same processing as described above.
[0068]
Next, the motion blur adjustment server 16 will be described with reference to FIGS. 14 and 15.
[0069]
As shown in FIG. 14, the motion blur adjustment server 16 converts the foreground component image into the foreground component image based on the foreground component image, the motion vector, and the motion blur amount input from the client computer 27 or the like via the network 1. Foreground component image that adjusts the amount of motion blur by adjusting the amount of motion blur included in the foreground component image, such as removing motion blur, reducing the amount of motion blur, or increasing the amount of motion blur Are generated and attached to each image and output to the client computer 27, stored by itself, or output to another server on the network, and processing corresponding to the server is executed. At this time, the billing processing unit 16 a executes billing processing related to the motion blur adjustment processing with respect to the billing server 24 via the network 1. As shown in FIG. 15, the motion blur adjustment server 16 receives a foreground component image ID for designating a foreground component image instead of the foreground component image, and stores a search server 23 (described later) on the network 1 or storage. The server 18 is accessed, or its own storage unit (for example, the storage unit 78 in FIG. 3) is searched, the foreground component image corresponding to the input foreground component image ID is called, and the same processing as described above is executed. To do.
[0070]
Next, the encoding server 17 will be described with reference to FIGS. 16 and 17.
[0071]
As shown in FIG. 16, the encoding server 17 separates an image input from, for example, the client computer 27 via the network 1 into a foreground component image and a background component image, and attaches an ID to each of them. Foreground component images such as URL (Universal Resource Locator) and background component images that were stored by yourself or output to other servers on the network and stored, and stored (output) Foreground component image position information and background component image position information composed of codes indicating the position of the server on the network 1 are generated and output together with information such as motion vectors, position information, and mixing ratios of these images. Further, the information output from the encoded information may be any of encoded information, an image, and an image and encoded information, and the information to be output can be changed as necessary. At this time, the billing processing unit 17a executes billing processing related to the encoding processing for the billing server 24 via the network 1. As shown in FIG. 17, when an image ID designating an image is input instead of an image, the encoding server 17 accesses a search server 23 and a storage server 18 described later on the network 1, It searches its own storage unit (for example, storage unit 78 in FIG. 3), calls an image corresponding to the input image ID, and executes the same processing as described above.
[0072]
Next, the storage server 18 will be described with reference to FIGS.
[0073]
As shown in FIG. 18, the accumulation server 18 is connected to the network 1 and accumulates images transmitted from various servers, and outputs image position information corresponding to the accumulated images together with an image ID. With this image position information, for example, the client computer 27 can access via the network 1 and call a desired image. That is, as shown in FIG. 19, for example, the client computer 27 accesses the storage server 18 in the network 1 on the basis of the image position information and designates an image ID corresponding to a desired image. The image to be read can be read out. In this specification, the image position information and the image ID will be described separately. However, the image position information may be a part of the image ID. In this case, the image position information is based on the image ID. It may be possible to recognize which server on the network 1 is stored (accumulated or processed). In addition to the image data, the storage server 18 may store a motion vector, position information, a mixture ratio, and a motion blur amount.
[0074]
Next, the synthesis server 19 will be described with reference to FIGS.
[0075]
As shown in FIG. 20, the composition server 19 includes two images such as images A and B input from the client computer 27 and the like via the network 1, a motion vector, position information, a mixing ratio, Then, the images A and B are synthesized from the amount of motion blur, and a synthesized image (A + B) is generated and output to the client computer 27, stored by itself, or output to other servers on the network 1, Execute the process corresponding to the server. In this case, one of images A and B is treated as a foreground component image and the other is treated as a background component image, so that both are combined. At this time, the billing processing unit 19a performs billing processing related to the composition processing with respect to the billing server 24 via the network 1. Further, as shown in FIG. 21, when the image A-ID and B-ID for designating an image are input instead of the images A and B, the composition server 19 receives a search server 23 (described later) on the network 1 or The storage server 18 is accessed, or its own storage unit (for example, the storage unit 78 in FIG. 3) is searched to call an image corresponding to the input images A-ID and B-ID. Execute the process.
[0076]
Next, the correction server 20 will be described with reference to FIGS.
[0077]
As shown in FIG. 22, the correction server 20 converts an image input from the client computer 27 or the like via the network 1 based on the motion vector, the position information, the mixing ratio, and the motion blur amount. It corrects, generates a corrected image, outputs it to the client computer 27, stores it by itself, or outputs it to another server on the network, and executes processing corresponding to that server. At this time, the billing processing unit 20 a performs billing processing for the fee related to the correction processing to the billing server 24 via the network 1. Further, as shown in FIG. 23, when an image ID designating an image is input instead of an image, the correction server 20 accesses a search server 23 and a storage server 18 described later on the network 1 or self- The storage unit (for example, the storage unit 78 in FIG. 3) is searched, an image corresponding to the input image ID is called, and the same processing as described above is executed.
[0078]
Next, the purchase server 21 will be described with reference to FIG.
[0079]
As shown in FIG. 24, the purchase server 21 operates the client computer 27 or the like via a network 1 to operate a client computer 27 or the like to specify an image desired to purchase. Is input, the corresponding image is accessed to the separation processing server 11, the storage server 18, the composition server 19, or the correction server 20 on the network 1, and the corresponding image is called and output to the client computer 27. At this time, the billing processing unit 21 a performs billing processing for a charge related to the image to be purchased, with respect to the billing server 24 via the network 1.
[0080]
Next, the sale server 22 will be described with reference to FIG.
[0081]
As shown in FIG. 25, the sale server 22, for example, generates a separated image owned by a predetermined user and synthesized by the separation processing server 11, the synthesis server 19, or the correction server 20 via the network 1. When an image or an image for which a modified image is desired to be sold is input, the image desired to be sold is stored in the separation processing server 11, the accumulation server 18, the composition server 19, or the modification server 20 on the network 1. At the same time, the billing processing unit 22a performs billing processing for the fee related to the image to be sold to the billing server 24 via the network 1 (in this case, the provider of the sale processing service wants to sell the user. The payment processing corresponding to the price corresponding to the sold image is executed).
[0082]
Next, the search server 26 will be described with reference to FIG.
[0083]
The search server 26 uses, for example, information indicating image characteristics desired by the user by the client computer 1 and physical position information of the camera terminal devices 28-1 to 28-n on the camera terminal device 28 on the network 1. The image currently captured at -1 to 28-n or the image captured in advance is searched and output to the client computer 1 as a request image. At this time, the billing processing unit 23 a executes billing processing for a charge related to the search processing to the billing server 24 via the network 1.
[0084]
In the present specification, encoding refers to conversion to foreground component image, background component image, motion vector, position information, motion blur amount, and mixture ratio information obtained based on image data. The data is referred to as encoded data.
[0085]
FIG. 27 is a block diagram showing the separation processing server 11.
[0086]
It does not matter whether each function of the separation processing server 11 is realized by hardware or software. That is, each block diagram in this specification may be considered as a hardware block diagram or a software functional block diagram.
[0087]
The input image supplied to the separation processing server 11 is supplied to the object extraction unit 101, the region specifying unit 103, the mixture ratio calculation unit 104, and the foreground / background separation unit 105.
[0088]
The object extraction unit 101 roughly extracts an image object corresponding to a foreground object included in the input image, and supplies the extracted image object to the motion detection unit 102. For example, the object extraction unit 101 detects the outline of the image object corresponding to the foreground object included in the input image, thereby roughly extracting the image object corresponding to the foreground object.
[0089]
The object extraction unit 101 roughly extracts an image object corresponding to a background object included in the input image, and supplies the extracted image object to the motion detection unit 102. For example, the object extraction unit 101 roughly extracts an image object corresponding to the background object from the difference between the input image and the image object corresponding to the extracted foreground object.
[0090]
Further, for example, the object extraction unit 101 corresponds to the image object corresponding to the foreground object and the background object from the difference between the background image stored in the background memory provided therein and the input image. You may make it extract the image object to perform roughly.
[0091]
The motion detection unit 102 calculates the motion vector of the image object corresponding to the coarsely extracted foreground object by a method such as a block matching method, a gradient method, a phase correlation method, and a per-recursive method. The motion vector and the position information of the motion vector (information specifying the position of the pixel corresponding to the motion vector) are supplied to the region specifying unit 103 and the motion blur adjusting unit 106.
[0092]
The motion vector output from the motion detection unit 102 includes information corresponding to the motion amount v.
[0093]
Further, for example, the motion detection unit 102 may output a motion vector for each image object to the motion blur adjustment unit 106 together with pixel position information for specifying a pixel in the image object.
[0094]
The motion amount v is a value that represents a change in the position of the image corresponding to the moving object in units of pixel intervals. For example, when the image of the object corresponding to the foreground is moved so as to be displayed at a position separated by four pixels in the next frame with reference to a certain frame, the motion amount v of the image of the object corresponding to the foreground is 4.
[0095]
Note that the object extraction unit 101 and the motion detection unit 102 are necessary when adjusting the amount of motion blur corresponding to a moving object.
[0096]
The area specifying unit 103 specifies each pixel of the input image as one of the foreground area, the background area, or the mixed area, and whether each pixel belongs to one of the foreground area, the background area, or the mixed area Is supplied to the mixture ratio calculation unit 104, the foreground / background separation unit 105, and the motion blur adjustment unit 106.
[0097]
The mixture ratio calculation unit 104 calculates a mixture ratio corresponding to the pixels included in the mixed region based on the input image and the region information supplied from the region specifying unit 103, and uses the calculated mixture ratio as the foreground / background separation unit. It supplies to 105.
[0098]
The mixing ratio α is a value indicating a ratio of an image component (hereinafter also referred to as a background component) corresponding to a background object in a pixel value, as shown in an equation (3) described later.
[0099]
Based on the region information supplied from the region specifying unit 103 and the mixture ratio α supplied from the mixture ratio calculation unit 104, the foreground / background separation unit 105 performs image component corresponding to the foreground object (hereinafter referred to as foreground component). The input image is separated into a foreground component image consisting of only the background component and a background component image consisting only of the background component, and the foreground component image is supplied to the motion blur adjustment unit 106 and the selection unit 107. Note that the separated foreground component image may be the final output. Only the foreground and the background can be specified without considering the conventional mixed region, and an accurate foreground and background can be obtained as compared with the separated method.
[0100]
The motion blur adjustment unit 106 determines a processing unit indicating one or more pixels included in the foreground component image based on the motion amount v and the region information that can be known from the motion vector. The processing unit is data that designates a group of pixels to be subjected to a process for adjusting the amount of motion blur.
[0101]
The motion blur adjustment unit 106 is the motion blur adjustment amount input to the separation processing server 11, the foreground component image supplied from the foreground / background separation unit 105, the motion vector and its position information supplied from the motion detection unit 102, and the processing Based on the unit, adjust the amount of motion blur included in the foreground component image, such as removing motion blur included in the foreground component image, reducing the amount of motion blur, or increasing the amount of motion blur. The foreground component image in which the amount of blur is adjusted is output to the selection unit 107. The motion vector and its position information may not be used.
[0102]
Here, the motion blur refers to a distortion included in an image corresponding to a moving object, which is caused by the movement of an object in the real world to be imaged and the imaging characteristics of the sensor.
[0103]
For example, the selection unit 107 adjusts the amount of foreground component image supplied from the foreground / background separation unit 105 and the amount of motion blur supplied from the motion blur adjustment unit 106 based on a selection signal corresponding to the user's selection. One of the foreground component images is selected, and the selected foreground component image is output.
[0104]
Next, an input image supplied to the separation processing server 11 will be described with reference to FIGS. 28 to 43.
[0105]
FIG. 28 is a diagram for explaining imaging by the sensor 76a. The sensor 76a is constituted by, for example, a CCD video camera provided with a CCD (Charge-Coupled Device) area sensor which is a solid-state imaging device. The object corresponding to the foreground in the real world moves horizontally between the object corresponding to the background and the sensor in the real world, for example, from the left side to the right side in the drawing.
[0106]
The sensor 76a images the object corresponding to the foreground together with the object corresponding to the background. The sensor 76a outputs the captured image in units of one frame. For example, the sensor 76a outputs an image composed of 30 frames per second. The exposure time of the sensor 76a can be 1/30 second. The exposure time is a period from when the sensor 76a starts converting the input light to the electric charge until the conversion of the input light to the electric charge ends. Hereinafter, the exposure time is also referred to as shutter time.
[0107]
FIG. 29 is a diagram illustrating the arrangement of pixels. In FIG. 29, A to I indicate individual pixels. The pixels are arranged on a plane corresponding to the image. One detection element corresponding to one pixel is arranged on the sensor 76a. When the sensor 76a captures an image, one detection element outputs a pixel value corresponding to one pixel constituting the image. For example, the position of the detection element in the X direction corresponds to the horizontal position on the image, and the position of the detection element in the Y direction corresponds to the vertical position on the image.
[0108]
As shown in FIG. 30, for example, a detection element that is a CCD converts input light into electric charges for a period corresponding to the shutter time, and accumulates the converted electric charges. The amount of charge is approximately proportional to the intensity of input light and the time during which light is input. The detection element adds the electric charge converted from the input light to the already accumulated electric charge in a period corresponding to the shutter time. That is, the detection element integrates the input light for a period corresponding to the shutter time, and accumulates an amount of charge corresponding to the integrated light. It can be said that the detection element has an integration effect with respect to time.
[0109]
The electric charge accumulated in the detection element is converted into a voltage value by a circuit (not shown), and the voltage value is further converted into a pixel value such as digital data and output. Therefore, each pixel value output from the sensor 76a is a value projected onto a one-dimensional space, which is the result of integrating a part of the object corresponding to the foreground or the background having a spatial extension with respect to the shutter time. Have
[0110]
The separation processing server 11 extracts significant information buried in the output signal, for example, the mixing ratio α by the accumulation operation of the sensor 76a. The separation processing server 11 adjusts the amount of distortion caused by the mixture of the foreground image objects themselves, for example, the amount of motion blur. Further, the separation processing server 11 adjusts the amount of distortion caused by the mixture of the foreground image object and the background image object.
[0111]
FIG. 31 is a diagram illustrating an image obtained by imaging an object corresponding to a moving foreground and an object corresponding to a stationary background. FIG. 31A shows an image obtained by imaging an object corresponding to a foreground with movement and an object corresponding to a stationary background. In the example shown in FIG. 31A, the object corresponding to the foreground is moving horizontally from the left to the right with respect to the screen.
[0112]
FIG. 31B is a model diagram in which pixel values corresponding to one line of the image shown in FIG. 31A are expanded in the time direction. The horizontal direction in FIG. 31B corresponds to the spatial direction X in FIG.
[0113]
The pixel value of the background region pixel is composed of only the background component, that is, the image component corresponding to the background object. The pixel value of the foreground region pixel is composed of only the foreground component, that is, the image component corresponding to the foreground object.
[0114]
The pixel value of the pixel in the mixed area is composed of a background component and a foreground component. Since the pixel value is composed of the background component and the foreground component, the mixed region can be said to be a distortion region. The mixed area is further classified into a covered background area and an uncovered background area.
[0115]
The covered background area is a mixed area at a position corresponding to the front end of the foreground object in the advancing direction with respect to the foreground area, and is an area where the background component is covered with the foreground as time passes.
[0116]
On the other hand, the uncovered background area is a mixed area at a position corresponding to the rear end portion of the foreground object in the advancing direction with respect to the foreground area, and an area where a background component appears as time passes. Say.
[0117]
In this way, an image including a foreground area, a background area, or a covered background area or an uncovered background area is input as an input image to the area specifying unit 103, the mixture ratio calculation unit 104, and the foreground / background separation unit 105. .
[0118]
FIG. 32 is a diagram illustrating the background area, the foreground area, the mixed area, the covered background area, and the uncovered background area as described above. In the case of corresponding to the image shown in FIG. 31, the background area is a stationary part, the foreground area is a moving part, and the covered background area of the mixed area is a part that changes from the background to the foreground. The uncovered background area is a portion that changes from the foreground to the background.
[0119]
FIG. 33 is a model diagram in which pixel values of pixels arranged in a row adjacent to each other in an image obtained by capturing an object corresponding to a stationary foreground and an object corresponding to a stationary background are expanded in the time direction. It is. For example, pixels arranged on one line of the screen can be selected as the pixels arranged adjacent to each other in one column.
[0120]
The pixel values F01 to F04 shown in FIG. 33 are pixel values corresponding to the still foreground object. The pixel values B01 to B04 shown in FIG. 33 are pixel values corresponding to the stationary background object.
[0121]
The vertical direction in FIG. 33 corresponds to time, and time elapses from the top to the bottom in the figure. The position of the upper side of the rectangle in FIG. 33 corresponds to the time when the sensor 76a starts to convert the input light into electric charge, and the position of the lower side of the rectangle in FIG. 33 indicates the position of the light input by the sensor 76a. Corresponds to the time when the conversion to charge ends. That is, the distance from the upper side to the lower side of the rectangle in FIG. 33 corresponds to the shutter time.
[0122]
Hereinafter, a case where the shutter time and the frame interval are the same will be described as an example.
[0123]
The horizontal direction in FIG. 33 corresponds to the spatial direction X described in FIG. More specifically, in the example shown in FIG. 33, the distance from the left side of the rectangle described as “F01” in FIG. 33 to the right side of the rectangle described as “B04” is 8 times the pixel pitch, That is, it corresponds to the interval between eight consecutive pixels.
[0124]
When the foreground object and the background object are stationary, the light input to the sensor 76a does not change during the period corresponding to the shutter time.
[0125]
Here, the period corresponding to the shutter time is divided into two or more periods having the same length. For example, if the number of virtual divisions is 4, the model diagram shown in FIG. 33 can be represented as the model shown in FIG. The virtual division number is set corresponding to the amount of movement v of the object corresponding to the foreground within the shutter time. For example, the number of virtual divisions is 4 corresponding to the motion amount v being 4, and the period corresponding to the shutter time is divided into 4.
[0126]
The top row in the figure corresponds to the first divided period after the shutter opens. The second row from the top in the figure corresponds to the second divided period from when the shutter has opened. The third line from the top in the figure corresponds to the third divided period from when the shutter has opened. The fourth row from the top in the figure corresponds to the fourth divided period from when the shutter has opened.
[0127]
Hereinafter, the shutter time divided in accordance with the motion amount v is also referred to as shutter time / v.
[0128]
Since the light input to the sensor 76a does not change when the object corresponding to the foreground is stationary, the foreground component F01 / v is equal to the value obtained by dividing the pixel value F01 by the number of virtual divisions. Similarly, when the object corresponding to the foreground is stationary, the foreground component F02 / v is equal to the value obtained by dividing the pixel value F02 by the virtual division number, and the foreground component F03 / v is the virtual value of the pixel value F03. The foreground component F04 / v is equal to the value obtained by dividing the pixel value F04 by the virtual division number.
[0129]
Since the light input to the sensor 76a does not change when the object corresponding to the background is stationary, the background component B01 / v is equal to the value obtained by dividing the pixel value B01 by the virtual division number. Similarly, when the object corresponding to the background is stationary, the background component B02 / v is equal to the value obtained by dividing the pixel value B02 by the virtual division number, and B03 / v is obtained by dividing the pixel value B03 by the virtual division number. B04 / v is equal to a value obtained by dividing the pixel value B04 by the number of virtual divisions.
[0130]
That is, when the object corresponding to the foreground is stationary, the light corresponding to the foreground object input to the sensor 76a does not change during the period corresponding to the shutter time, so the first shutter time / Corresponds to the foreground component F01 / v corresponding to v, the second foreground component F01 / v corresponding to the shutter time / v, and the third shutter time / v corresponding to the shutter time / v. The foreground component F01 / v and the foreground component F01 / v corresponding to the fourth shutter time / v after the shutter is opened have the same value. F02 / v to F04 / v have the same relationship as F01 / v.
[0131]
When the object corresponding to the background is stationary, the light corresponding to the background object input to the sensor 76a does not change during the period corresponding to the shutter time, so that the first shutter time / v after the shutter opens. The corresponding background component B01 / v, the second background component B01 / v corresponding to the shutter time / v when the shutter is opened, and the third background component corresponding to the shutter time / v corresponding to the shutter time / v The component B01 / v and the background component B01 / v corresponding to the fourth shutter time / v after the shutter is opened have the same value. B02 / v to B04 / v have the same relationship.
[0132]
Next, a case where the object corresponding to the foreground moves and the object corresponding to the background is stationary will be described.
[0133]
FIG. 35 is a model diagram in which pixel values of pixels on one line including the covered background area are expanded in the time direction when the object corresponding to the foreground moves toward the right side in the drawing. In FIG. 35, the foreground motion amount v is 4. Since one frame is a short time, it can be assumed that the object corresponding to the foreground is a rigid body and is moving at a constant speed. In FIG. 35, the image of the object corresponding to the foreground moves so as to be displayed on the right side by four pixels in the next frame with reference to a certain frame.
[0134]
In FIG. 35, the leftmost pixel through the fourth pixel from the left belong to the foreground area. In FIG. 35, the fifth through seventh pixels from the left belong to the mixed area, which is a covered background area. In FIG. 35, the rightmost pixel belongs to the background area.
[0135]
Since the object corresponding to the foreground is moving so as to cover the object corresponding to the background with the passage of time, the component included in the pixel value of the pixel belonging to the covered background area has a period corresponding to the shutter time. At this point, the background component is replaced by the foreground component.
[0136]
For example, the pixel value M with a thick line frame in FIG. 35 is expressed by Expression (1).
[0137]
M = B02 / v + B02 / v + F07 / v + F06 / v (1)
[0138]
For example, since the fifth pixel from the left includes a background component corresponding to one shutter time / v and includes a foreground component corresponding to three shutter times / v, the mixture ratio of the fifth pixel from the left α is 1/4. The sixth pixel from the left includes a background component corresponding to two shutter times / v and includes a foreground component corresponding to two shutter times / v. Therefore, the mixture ratio α of the sixth pixel from the left is 1/2. The seventh pixel from the left includes a background component corresponding to three shutter times / v, and includes a foreground component corresponding to one shutter time / v. Therefore, the mixture ratio α of the seventh pixel from the left is 3/4.
[0139]
Since it can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed so that the foreground image is displayed on the right side of four pixels in the next frame, for example, the fourth pixel from the left in FIG. The foreground component F07 / v of the first shutter time / v after the shutter is opened is the foreground component of the fifth pixel from the left in FIG. 35 corresponding to the second shutter time / v after the shutter is opened. be equivalent to. Similarly, the foreground component F07 / v is the sixth pixel from the left in FIG. 35, the foreground component corresponding to the third shutter time / v from when the shutter has opened, and the seventh pixel from the left in FIG. And the foreground component corresponding to the fourth shutter time / v after the shutter is opened.
[0140]
Since it can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed so that the foreground image is displayed on the right side of four pixels in the next frame, for example, the third pixel from the left in FIG. The foreground component F06 / v of the first shutter time / v after the shutter is opened is the foreground component of the fourth pixel from the left in FIG. 35 corresponding to the second shutter time / v after the shutter is opened. equal. Similarly, the foreground component F06 / v is the fifth pixel from the left in FIG. 35, the foreground component corresponding to the third shutter time / v from when the shutter has opened, and the sixth pixel from the left in FIG. And the foreground component corresponding to the fourth shutter time / v after the shutter is opened.
[0141]
Since it can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed so that the foreground image is displayed on the right side of four pixels in the next frame, for example, the second pixel from the left in FIG. The foreground component F05 / v of the first shutter time / v after the shutter is opened is the foreground component of the third pixel from the left in FIG. 35 corresponding to the second shutter time / v after the shutter is opened. equal. Similarly, the foreground component F05 / v corresponds to the foreground component of the fourth pixel from the left in FIG. 35 corresponding to the third shutter time / v from when the shutter has opened, and the fifth from the left in FIG. And the foreground component corresponding to the fourth shutter time / v after the shutter is opened.
[0142]
Since it can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed so that the foreground image is displayed to the right of four pixels in the next frame, for example, the shutter of the leftmost pixel in FIG. The foreground component F04 / v of the first shutter time / v after opening is equal to the foreground component of the second pixel from the left in FIG. 35 corresponding to the second shutter time / v after the shutter is opened. Similarly, the foreground component F04 / v corresponds to the foreground component of the third pixel from the left in FIG. 35 corresponding to the third shutter time / v from when the shutter has opened, and the fourth pixel from the left in FIG. And the foreground component corresponding to the fourth shutter time / v after the shutter is opened.
[0143]
Since the foreground area corresponding to the moving object includes motion blur as described above, it can be said to be a distortion area.
[0144]
FIG. 36 is a model diagram in which pixel values of pixels on one line including the uncovered background area are expanded in the time direction when the foreground moves toward the right side in the drawing. In FIG. 36, the amount of motion v of the foreground is 4. Since one frame is a short time, it can be assumed that the object corresponding to the foreground is a rigid body and is moving at a constant speed. In FIG. 36, the image of the object corresponding to the foreground moves to the right by four pixels in the next frame with reference to a certain frame.
[0145]
In FIG. 36, the leftmost pixel through the fourth pixel from the left belong to the background area. In FIG. 36, the fifth through seventh pixels from the left belong to the mixed area, which is an uncovered background. In FIG. 36, the rightmost pixel belongs to the foreground area.
[0146]
Since the object corresponding to the foreground that covered the object corresponding to the background is moved so as to be removed from the front of the object corresponding to the background over time, it is included in the pixel value of the pixel belonging to the uncovered background area The component to be changed from the foreground component to the background component at a certain point in time corresponding to the shutter time.
[0147]
For example, a pixel value M ′ with a thick line frame in FIG. 36 is expressed by Expression (2).
[0148]
M '= F02 / v + F01 / v + B26 / v + B26 / v (2)
[0149]
For example, the fifth pixel from the left includes a background component corresponding to three shutter times / v, and includes a foreground component corresponding to one shutter time / v, so the mixing ratio of the fifth pixel from the left α is 3/4. The sixth pixel from the left includes a background component corresponding to two shutter times / v and includes a foreground component corresponding to two shutter times / v. Therefore, the mixture ratio α of the sixth pixel from the left is 1/2. Since the seventh pixel from the left includes a background component corresponding to one shutter time / v and includes a foreground component corresponding to three shutter times / v, the mixture ratio α of the seventh pixel from the left is 1/4.
[0150]
When the expressions (1) and (2) are generalized, the pixel value M is expressed by the expression (3).
[0151]
[Expression 1]
Figure 0004701547
Here, α is a mixing ratio. B is a background pixel value, and Fi / v is a foreground component.
[0152]
Since the object corresponding to the foreground is a rigid body and can be assumed to move at a constant speed and the amount of movement v is 4, for example, the first pixel from the left in FIG. The foreground component F01 / v of the shutter time / v is equal to the foreground component of the sixth pixel from the left in FIG. 36 corresponding to the second shutter time / v from when the shutter has opened. Similarly, F01 / v represents the foreground component of the seventh pixel from the left in FIG. 36 corresponding to the third shutter time / v from when the shutter has opened, and the eighth pixel from the left in FIG. , And the foreground component corresponding to the fourth shutter time / v after the shutter is opened.
[0153]
Since it can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed, and the number of virtual divisions is 4, for example, the first pixel from the left in FIG. The foreground component F02 / v of the shutter time / v is equal to the foreground component of the seventh pixel from the left in FIG. 36 corresponding to the second shutter time / v from when the shutter has opened. Similarly, the foreground component F02 / v is equal to the foreground component of the eighth pixel from the left in FIG. 36 corresponding to the third shutter time / v from when the shutter has opened.
[0154]
Since the object corresponding to the foreground is a rigid body and can be assumed to move at a constant speed and the amount of movement v is 4, for example, the seventh pixel from the left in FIG. The foreground component F03 / v of the shutter time / v is equal to the foreground component of the eighth pixel from the left in FIG. 36 corresponding to the second shutter time / v from when the shutter has opened.
[0155]
In the description of FIG. 34 to FIG. 36, it has been described that the virtual division number is 4, but the virtual division number corresponds to the motion amount v. The amount of movement v generally corresponds to the moving speed of the object corresponding to the foreground. For example, when the object corresponding to the foreground is moving so as to be displayed to the right by four pixels in the next frame with reference to a certain frame, the amount of movement v is 4. Corresponding to the motion amount v, the number of virtual divisions is 4. Similarly, for example, when the object corresponding to the foreground is moving so that it is displayed on the left by 6 pixels in the next frame with reference to a certain frame, the motion amount v is set to 6, and the number of virtual divisions is , 6.
[0156]
37 and 38, the above-described mixed area composed of the foreground area, the background area, the covered background area or the uncovered background area, and the foreground components and the background components corresponding to the divided shutter times, The relationship is shown.
[0157]
FIG. 37 shows an example in which pixels in the foreground area, the background area, and the mixed area are extracted from an image including a foreground corresponding to an object moving in front of a stationary background. In the example shown in FIG. 37, the object corresponding to the foreground is moving horizontally with respect to the screen.
[0158]
Frame # n + 1 is the next frame after frame #n, and frame # n + 2 is the next frame after frame # n + 1.
[0159]
Extract the pixels in the foreground area, background area, and mixed area extracted from any of frame #n to frame # n + 2, set the amount of motion v to 4, and set the pixel values of the extracted pixels in the time direction The developed model is shown in FIG.
[0160]
Since the object corresponding to the foreground moves, the pixel value in the foreground area is composed of four different foreground components corresponding to the shutter time / v period. For example, the leftmost pixel among the pixels in the foreground area shown in FIG. 38 is composed of F01 / v, F02 / v, F03 / v, and F04 / v. That is, the pixels in the foreground area include motion blur.
[0161]
Since the object corresponding to the background is stationary, the light corresponding to the background input to the sensor 76a does not change during the period corresponding to the shutter time. In this case, the pixel value in the background area does not include motion blur.
[0162]
The pixel value of the pixel belonging to the mixed area composed of the covered background area or the uncovered background area is composed of a foreground component and a background component.
[0163]
Next, when the image corresponding to the object is moving, the pixel values of the pixels at the same position on the frame that are adjacent to each other in a plurality of frames are developed in the time direction. The model will be described. For example, when the image corresponding to the object moves horizontally with respect to the screen, the pixels arranged on one line of the screen can be selected as the pixels arranged in a row adjacent to each other.
[0164]
FIG. 39 shows pixels arranged in a row adjacent to three frames of an image obtained by capturing an object corresponding to a stationary background, and the pixel values of the pixels at the same position on the frame are represented by time. It is the model figure developed in the direction. Frame #n is the next frame after frame # n-1, and frame # n + 1 is the next frame after frame #n. Other frames are also referred to in the same manner.
[0165]
The pixel values B01 to B12 shown in FIG. 39 are the pixel values of the pixels corresponding to the stationary background object. Since the object corresponding to the background is stationary, the pixel value of the corresponding pixel does not change in frame # n−1 to frame n + 1. For example, the pixel in frame #n and the pixel in frame # n + 1 corresponding to the position of the pixel having a pixel value of B05 in frame # n−1 each have a pixel value of B05.
[0166]
FIG. 40 shows pixels arranged in a row adjacent to each other in three frames of an image obtained by imaging an object corresponding to a foreground moving to the right side in the drawing together with an object corresponding to a stationary background, FIG. 5 is a model diagram in which pixel values of pixels at the same position on a frame are developed in the time direction. The model shown in FIG. 40 includes a covered background area.
[0167]
In FIG. 40, it can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed, and the foreground image is moved so that the foreground image is displayed on the right by four pixels in the next frame. 4 and the number of virtual divisions is 4.
[0168]
For example, the foreground component of the leftmost pixel of frame # n-1 in FIG. 40 for the first shutter time / v after the shutter opens is F12 / v, and the second pixel from the left in FIG. The foreground component of the second shutter time / v after the shutter is opened is also F12 / v. The foreground component of the third pixel from the left in FIG. 40 for the third shutter time / v after the shutter opens, and the fourth shutter time for the fourth pixel from the left in FIG. The foreground component of / v is F12 / v.
[0169]
The foreground component of the leftmost pixel of frame # n-1 in FIG. 40 corresponding to the second shutter time / v from when the shutter has opened is F11 / v, and the second pixel from the left in FIG. The foreground component of the third shutter time / v after the shutter is opened is also F11 / v. The foreground component of the third pixel from the left in FIG. 40 corresponding to the fourth portion of the shutter time / v from when the shutter has opened is F11 / v.
[0170]
The foreground component of the leftmost pixel of frame # n-1 in FIG. 40 corresponding to the third shutter time / v from when the shutter has opened is F10 / v, and the second pixel from the left in FIG. The foreground component of the fourth shutter time / v after the shutter is opened is also F10 / v. The foreground component of the leftmost pixel of frame # n−1 in FIG. 40 corresponding to the fourth shutter time / v from when the shutter has opened is F09 / v.
[0171]
Since the object corresponding to the background is stationary, the background component of the second pixel from the left of frame # n-1 in FIG. Become. The background component of the third pixel from the left of frame # n−1 in FIG. 40 corresponding to the first and second shutter time / v from when the shutter has opened is B02 / v. The background component of the fourth pixel from the left of frame # n−1 in FIG. 40 corresponding to the first through third shutter time / v from when the shutter has opened is B03 / v.
[0172]
In frame # n−1 in FIG. 40, the leftmost pixel belongs to the foreground area, and the second to fourth pixels from the left belong to the mixed area which is a covered background area.
[0173]
The fifth through twelfth pixels from the left of frame # n−1 in FIG. 40 belong to the background area, and the pixel values thereof are B04 through B11, respectively.
[0174]
The first through fifth pixels from the left in frame #n in FIG. 40 belong to the foreground area. The foreground component of the shutter time / v in the foreground area of frame #n is any one of F05 / v to F12 / v.
[0175]
It can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed, and the foreground image moves so as to be displayed on the right side of four pixels in the next frame, so from the left of frame #n in FIG. The foreground component of the fifth pixel at the first shutter time / v after the shutter opens is F12 / v, and the sixth pixel from the left in FIG. 40 opens the shutter at the second shutter time / v. The foreground component is also F12 / v. The foreground component of the seventh pixel from the left in FIG. 40 for the third shutter time / v after the shutter opens, and the fourth shutter time for the eighth pixel from the left in FIG. The foreground component of / v is F12 / v.
[0176]
The foreground component of the fifth pixel from the left in frame #n in FIG. 40 corresponding to the second shutter time / v from when the shutter has opened is F11 / v, and the sixth pixel from the left in FIG. The foreground component of the third shutter time / v after the shutter is opened is also F11 / v. The foreground component of the seventh pixel from the left in FIG. 40 corresponding to the fourth portion of the shutter time / v from when the shutter has opened is F11 / v.
[0177]
The foreground component of the fifth pixel from the left in frame #n in FIG. 40 corresponding to the third shutter time / v from when the shutter has opened is F10 / v, and the sixth pixel from the left in FIG. The foreground component of the fourth shutter time / v after the shutter is opened is also F10 / v. The foreground component of the fifth pixel from the left of frame #n in FIG. 40 corresponding to the fourth portion of the shutter time / v from when the shutter has opened is F09 / v.
[0178]
Since the object corresponding to the background is stationary, the background component of the sixth pixel from the left in frame #n in FIG. 40 corresponding to the first shutter time / v after the shutter opens is B05 / v. The background component of the seventh pixel from the left of frame #n in FIG. 40 corresponding to the first and second shutter time / v from when the shutter has opened is B06 / v. The background component of the eighth pixel from the left of frame #n in FIG. 40 corresponding to the first through third shutter time / v from when the shutter has opened is B07 / v.
[0179]
In frame #n in FIG. 40, the sixth through eighth pixels from the left belong to the mixed area, which is a covered background area.
[0180]
The ninth through twelfth pixels from the left of frame #n in FIG. 40 belong to the background area, and the pixel values thereof are B08 through B11, respectively.
[0181]
The first through ninth pixels from the left in frame # n + 1 in FIG. 40 belong to the foreground area. The foreground component of the shutter time / v in the foreground area of frame # n + 1 is any one of F01 / v to F12 / v.
[0182]
It can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed, and the foreground image moves so as to be displayed on the right side by four pixels in the next frame, so that the frame # n + 1 in FIG. The foreground component of the ninth pixel from the left when the shutter opens is the first shutter time / v is F12 / v, and the tenth pixel from the left in FIG. 40 is the second shutter time after the shutter is opened. The foreground component of / v is also F12 / v. The foreground component of the eleventh pixel from the left in FIG. 40 and the third shutter time / v from when the shutter has opened, and the fourth shutter time from the shutter of the twelfth pixel from the left in FIG. The foreground component of / v is F12 / v.
[0183]
The foreground component of the ninth pixel from the left of frame # n + 1 in FIG. 40 corresponding to the second shutter time / v from when the shutter has opened is F11 / v, which is the tenth from the left in FIG. The foreground component of the third shutter time / v after the shutter opens is also F11 / v. The foreground component of the eleventh pixel from the left in FIG. 40 corresponding to the fourth shutter time / v from when the shutter has opened is F11 / v.
[0184]
The foreground component of the ninth pixel from the left of frame # n + 1 in FIG. 40 corresponding to the third shutter time / v from when the shutter has opened is F10 / v, which is the tenth pixel from the left in FIG. The foreground component of the fourth shutter time / v after the shutter is opened is also F10 / v. The foreground component of the ninth pixel from the left of frame # n + 1 in FIG. 40 corresponding to the fourth portion of the shutter time / v from when the shutter has opened is F09 / v.
[0185]
Since the object corresponding to the background is stationary, the background component of the tenth pixel from the left of frame # n + 1 in FIG. 40 corresponding to the first shutter time / v after the shutter is opened is B09 / v Become. The background component of the eleventh pixel from the left of frame # n + 1 in FIG. 40 corresponding to the first and second shutter time / v from when the shutter has opened is B10 / v. The background component of the twelfth pixel from the left of frame # n + 1 in FIG. 40 corresponding to the first through third shutter time / v from when the shutter has opened is B11 / v.
[0186]
In frame # n + 1 in FIG. 40, the tenth through twelfth pixels from the left correspond to the mixed area, which is a covered background area.
[0187]
FIG. 41 is a model diagram of an image obtained by extracting foreground components from the pixel values shown in FIG.
[0188]
FIG. 42 shows pixels arranged in a row adjacent to each other in three frames of an image obtained by capturing a foreground corresponding to an object moving to the right side in the figure together with a stationary background. It is the model figure which expand | deployed the pixel value of the pixel of the position of time direction. In FIG. 42, an uncovered background area is included.
[0189]
In FIG. 42, it can be assumed that the object corresponding to the foreground is a rigid body and is moving at a constant speed. Since the object corresponding to the foreground is moved so as to be displayed on the right side by four pixels in the next frame, the motion amount v is 4.
[0190]
For example, the foreground component of the leftmost pixel of frame # n-1 in FIG. 42 that is the first shutter time / v after the shutter is opened is F13 / v, and is the second pixel from the left in FIG. The foreground component of the second shutter time / v after the shutter is opened is also F13 / v. The foreground component of the third pixel from the left in FIG. 42 for the third shutter time / v after the shutter opens, and the fourth shutter time for the fourth pixel from the left in FIG. The foreground component of / v is F13 / v.
[0191]
The foreground component of the second pixel from the left of frame # n-1 in FIG. 42 corresponding to the first shutter time / v from when the shutter has opened is F14 / v, and the third pixel from the left in FIG. The foreground component of the second shutter time / v after the shutter is opened is also F14 / v. The foreground component of the third pixel from the left in FIG. 42 corresponding to the first shutter time / v from when the shutter has opened is F15 / v.
[0192]
Since the object corresponding to the background is stationary, the background component of the leftmost pixel of frame # n-1 in FIG. 42 corresponding to the second to fourth shutter time / v from when the shutter has opened is B25. / v. The background component of the second pixel from the left of frame # n−1 in FIG. 42 corresponding to the third and fourth shutter time / v from when the shutter has opened is B26 / v. The background component of the third pixel from the left of frame # n−1 in FIG. 42 corresponding to the fourth portion of the shutter time / v from when the shutter has opened is B27 / v.
[0193]
In frame # n−1 in FIG. 42, the leftmost pixel through the third pixel belong to the mixed area, which is an uncovered background area.
[0194]
The fourth through twelfth pixels from the left of frame # n−1 in FIG. 42 belong to the foreground area. The foreground component of the frame is any one of F13 / v to F24 / v.
[0195]
The leftmost pixel through the fourth pixel from the left in frame #n in FIG. 42 belong to the background area, and the pixel values thereof are B25 through B28, respectively.
[0196]
It can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed, and the foreground image moves so as to be displayed on the right side of four pixels in the next frame. The foreground component of the fifth pixel at the first shutter time / v after the shutter opens is F13 / v, and the sixth pixel from the left in FIG. 42 opens the shutter at the second shutter time / v. The foreground component is also F13 / v. The foreground component of the seventh pixel from the left in FIG. 42 for the third shutter time / v after the shutter opens, and the fourth shutter time for the eighth pixel from the left in FIG. The foreground component of / v is F13 / v.
[0197]
The foreground component of the sixth pixel from the left of frame #n in FIG. 42 corresponding to the first shutter time / v from when the shutter has opened is F14 / v, and the seventh pixel from the left in FIG. The foreground component of the second shutter time / v after opening is also F14 / v. The foreground component of the eighth pixel from the left in FIG. 42 corresponding to the first portion of the shutter time / v from when the shutter has opened is F15 / v.
[0198]
Since the object corresponding to the background is stationary, the background components of the fifth pixel from the left of frame #n in FIG. 42 corresponding to the second to fourth shutter time / v from when the shutter has opened are B29 / v. The background component of the sixth pixel from the left of frame #n in FIG. 42 corresponding to the third and fourth shutter time / v from when the shutter has opened is B30 / v. The background component of the seventh pixel from the left of frame #n in FIG. 42 corresponding to the fourth portion of the shutter time / v from when the shutter has opened is B31 / v.
[0199]
In frame #n in FIG. 42, the fifth through seventh pixels from the left belong to the mixed area, which is an uncovered background area.
[0200]
The eighth through twelfth pixels from the left in frame #n in FIG. 42 belong to the foreground area. The value corresponding to the period of the shutter time / v in the foreground area of frame #n is any one of F13 / v to F20 / v.
[0201]
The leftmost pixel through the eighth pixel from the left in frame # n + 1 in FIG. 42 belong to the background area, and the pixel values thereof are B25 through B32, respectively.
[0202]
It can be assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed, and the foreground image moves so as to be displayed on the right side by four pixels in the next frame, so that the frame # n + 1 in FIG. The foreground component of the ninth pixel from the left when the shutter opens is the first shutter time / v is F13 / v, and the tenth pixel from the left in FIG. The foreground component of / v is also F13 / v. The foreground component of the eleventh pixel from the left in FIG. 42 and the third shutter time / v from when the shutter has opened, and the fourth shutter time from the shutter of the twelfth pixel from the left in FIG. The foreground component of / v is F13 / v.
[0203]
The foreground component of the tenth pixel from the left of frame # n + 1 in FIG. 42 corresponding to the first shutter time / v from when the shutter has opened is F14 / v, and the eleventh pixel from the left in FIG. The foreground component of the second shutter time / v after the shutter is opened is also F14 / v. The foreground component of the twelfth pixel from the left in FIG. 42 corresponding to the first shutter time / v from when the shutter has opened is F15 / v.
[0204]
Since the object corresponding to the background is stationary, the background components of the ninth pixel from the left of frame # n + 1 in FIG. , B33 / v. The background component of the tenth pixel from the left of frame # n + 1 in FIG. 42 corresponding to the third and fourth shutter time / v from when the shutter has opened is B34 / v. The background component of the eleventh pixel from the left of frame # n + 1 in FIG. 42 corresponding to the fourth portion of the shutter time / v from when the shutter has opened is B35 / v.
[0205]
In frame # n + 1 in FIG. 42, the ninth through eleventh pixels from the left belong to the mixed area, which is an uncovered background area.
[0206]
The twelfth pixel from the left of frame # n + 1 in FIG. 42 belongs to the foreground area. The foreground component of the shutter time / v in the foreground area of frame # n + 1 is any one of F13 / v to F16 / v.
[0207]
FIG. 43 is a model diagram of an image obtained by extracting foreground components from the pixel values shown in FIG.
[0208]
Returning to FIG. 27, the region specifying unit 103 associates a flag indicating that the pixel belongs to the foreground region, the background region, the covered background region, or the uncovered background region for each pixel using the pixel values of a plurality of frames. Thus, the region information is supplied to the mixture ratio calculation unit 104 and the motion blur adjustment unit 106.
[0209]
The mixture ratio calculation unit 104 calculates the mixture ratio α for each pixel for the pixels included in the mixed region based on the pixel values of a plurality of frames and the region information, and supplies the calculated mixture ratio α to the foreground / background separation unit 105. Supply.
[0210]
The foreground / background separation unit 105 extracts a foreground component image including only foreground components based on the pixel values of a plurality of frames, region information, and the mixture ratio α, and supplies the foreground component image to the motion blur adjustment unit 106.
[0211]
The motion blur adjustment unit 106 converts the foreground component image based on the foreground component image supplied from the foreground / background separation unit 105, the motion vector supplied from the motion detection unit 102, and the region information supplied from the region specifying unit 103. The amount of motion blur included is adjusted, and a foreground component image in which the amount of motion blur is adjusted is output.
[0212]
With reference to the flowchart of FIG. 44, the process of adjusting the amount of motion blur by the separation processing server 11 will be described. In step S11, the area specifying unit 103 obtains area information indicating whether each pixel of the input image belongs to the foreground area, the background area, the covered background area, or the uncovered background area based on the input image. A process for specifying the area to be generated is executed. Details of the area specifying process will be described later. The area specifying unit 103 supplies the generated area information to the mixture ratio calculating unit 104.
[0213]
In step S11, the area specifying unit 103, based on the input image, foreground area, background area, or mixed area for each pixel of the input image (does not distinguish between a covered background area or an uncovered background area). It may be possible to generate region information indicating which one of the items belongs to. In this case, the foreground / background separation unit 105 and the motion blur adjustment unit 106 determine whether the mixed region is a covered background region or an uncovered background region based on the direction of the motion vector. For example, when the foreground region, the mixed region, and the background region are arranged in order corresponding to the direction of the motion vector, the mixed region is determined as the covered background region, and the background is determined corresponding to the direction of the motion vector. When the region, the mixed region, and the foreground region are arranged in this order, the mixed region is determined as an uncovered background region.
[0214]
In step S12, the mixture ratio calculation unit 104 calculates the mixture ratio α for each pixel included in the mixed area based on the input image and the area information. Details of the mixing ratio calculation process will be described later. The mixture ratio calculation unit 104 supplies the calculated mixture ratio α to the foreground / background separation unit 105.
[0215]
In step S13, the foreground / background separator 105 extracts a foreground component from the input image based on the region information and the mixture ratio α, and supplies the foreground component image to the motion blur adjustment unit 106 as a foreground component image.
[0216]
In step S14, the motion blur adjustment unit 106 is a continuous pixel lined up in the motion direction based on the motion vector and the region information, and belongs to any one of the uncovered background region, the foreground region, and the covered background region. A processing unit indicating the position of the object on the image is generated, and the amount of motion blur included in the foreground component corresponding to the processing unit is adjusted. Details of the process of adjusting the amount of motion blur will be described later.
[0217]
In step S15, the separation processing server 11 determines whether or not the processing has been completed for the entire screen. If it is determined that the processing has not been completed for the entire screen, the separation processing server 11 proceeds to step S14, and foreground corresponding to the processing unit. The process of adjusting the amount of motion blur for the component is repeated.
[0218]
If it is determined in step S15 that the process has been completed for the entire screen, the process ends.
[0219]
As described above, the separation processing server 11 can adjust the amount of motion blur included in the foreground by separating the foreground and the background. That is, the separation processing server 11 can adjust the amount of motion blur included in the sample data that is the pixel value of the foreground pixel.
[0220]
Hereinafter, the configurations of the area specifying unit 103, the mixture ratio calculating unit 104, the foreground / background separating unit 105, and the motion blur adjusting unit 106 will be described.
[0221]
FIG. 45 is a block diagram illustrating an example of the configuration of the area specifying unit 103. 45 does not use a motion vector. The frame memory 201 stores the input image in units of frames. When the processing target is the frame #n, the frame memory 201 is a frame # n-2 that is a frame immediately before the frame #n, a frame # n-1 that is a frame immediately before the frame #n, A frame #n, a frame # n + 1 that is a frame subsequent to the frame #n, and a frame # n + 2 that is a frame subsequent to the frame #n are stored.
[0222]
The static motion determination unit 202-1 determines the pixel value of the pixel of frame # n + 2 at the same position on the image of the pixel that is the target of region specification of frame #n, and the region specification of frame #n. The pixel value of the pixel of frame # n + 1 at the same position as the position of the target pixel on the image is read from the frame memory 201, and the absolute value of the difference between the read pixel values is calculated. The static motion determination unit 202-1 determines whether or not the absolute value of the difference between the pixel value of frame # n + 2 and the pixel value of frame # n + 1 is greater than a preset threshold Th, When it is determined that the absolute value of the difference is greater than the threshold value Th, a static motion determination indicating motion is supplied to the region determination unit 203-1. When it is determined that the absolute value of the difference between the pixel value of the pixel of frame # n + 2 and the pixel value of the pixel of frame # n + 1 is equal to or less than the threshold value Th, the static motion determination unit 202-1 The static motion determination shown is supplied to the region determination unit 203-1.
[0223]
The static motion determination unit 202-2 is the target of the pixel value of the frame # n + 1 at the same position on the image of the pixel that is the target of region identification of the frame #n, and the target of the frame #n. The pixel value of the pixel is read from the frame memory 201, and the absolute value of the difference between the pixel values is calculated. The static motion determination unit 202-2 determines whether or not the absolute value of the difference between the pixel value of the frame # n + 1 and the pixel value of the frame #n is greater than a preset threshold value Th. When it is determined that the absolute value of the difference between the two is greater than the threshold value Th, a static motion determination indicating motion is supplied to the region determination unit 203-1 and the region determination unit 203-2. When it is determined that the absolute value of the difference between the pixel value of the pixel of frame # n + 1 and the pixel value of the pixel of frame #n is equal to or less than the threshold value Th, the static motion determination unit 202-2 indicates stillness. The static motion determination is supplied to the region determination unit 203-1 and the region determination unit 203-2.
[0224]
The static motion determination unit 202-3 determines the frame #n at the same position as the pixel value of the pixel that is the region specification target of the frame #n and the position of the pixel that is the region specification target of the frame #n. The pixel value of −1 pixel is read from the frame memory 201, and the absolute value of the difference between the pixel values is calculated. The static motion determination unit 202-3 determines whether or not the absolute value of the difference between the pixel value of the frame #n and the pixel value of the frame # n-1 is larger than a preset threshold value Th. When it is determined that the absolute value of the difference between the two is greater than the threshold value Th, a static motion determination indicating motion is supplied to the region determination unit 203-2 and the region determination unit 203-3. When it is determined that the absolute value of the difference between the pixel value of the pixel of frame #n and the pixel value of the pixel of frame # n-1 is equal to or less than the threshold value Th, the static motion determination unit 202-3 indicates the still state The static motion determination is supplied to the region determination unit 203-2 and the region determination unit 203-3.
[0225]
The static motion determination unit 202-4 determines the pixel value of the pixel of frame # n-1 at the same position on the image of the pixel that is the target of region specification of frame #n, and the region specification of frame #n. The pixel value of the pixel of frame # n-2 located at the same position on the image of the target pixel is read from the frame memory 201, and the absolute value of the difference between the pixel values is calculated. The static motion determination unit 202-4 determines whether or not the absolute value of the difference between the pixel value of the frame # n-1 and the pixel value of the frame # n-2 is greater than a preset threshold Th, When it is determined that the absolute value of the difference between the pixel values is greater than the threshold value Th, a static motion determination indicating motion is supplied to the region determination unit 203-3. When it is determined that the absolute value of the difference between the pixel value of the pixel of frame # n-1 and the pixel value of the pixel of frame # n-2 is equal to or less than the threshold value Th, the static motion determination unit 202-4 Is supplied to the region determination unit 203-3.
[0226]
The region determination unit 203-1 is configured such that the static motion determination supplied from the static motion determination unit 202-1 indicates stillness and the static motion determination supplied from the static motion determination unit 202-2 indicates movement. The pixel that is the target of region identification in frame #n is determined to belong to the uncovered background region, and the uncovered background region determination flag corresponding to the pixel that is determined to belong to the region belongs to the uncovered background region. “1” indicating “” is set.
[0227]
The area determination unit 203-1 indicates that the static motion determination supplied from the static motion determination unit 202-1 indicates movement, or the static motion determination supplied from the static motion determination unit 202-2 indicates stillness. When determining that the pixel that is the target of region identification in frame #n does not belong to the uncovered background region, the uncovered background region determination flag corresponding to the pixel to be determined for the region is set to the uncovered background region. “0” is set to indicate that it does not belong.
[0228]
The area determination unit 203-1 supplies the uncovered background area determination flag in which “1” or “0” is set as described above to the determination flag storage frame memory 204.
[0229]
The region determination unit 203-2 is configured such that the static motion determination supplied from the static motion determination unit 202-2 indicates static and the static motion determination supplied from the static motion determination unit 202-3 indicates static. Then, it is determined that the pixel that is the target of region identification in frame #n belongs to the still region, and “1” indicating that it belongs to the still region is set in the still region determination flag corresponding to the pixel to be determined for the region.
[0230]
In the area determination unit 203-2, the static motion determination supplied from the static motion determination unit 202-2 indicates a motion, or the static motion determination supplied from the static motion determination unit 202-3 indicates a motion. At this time, it is determined that the pixel that is the region identification target in frame #n does not belong to the still region, and “0” indicating that it does not belong to the still region is set in the still region determination flag corresponding to the pixel to be determined for the region. Set.
[0231]
The region determination unit 203-2 supplies the still region determination flag in which “1” or “0” is set as described above to the determination flag storage frame memory 204.
[0232]
The region determination unit 203-2 is configured such that the static motion determination supplied from the static motion determination unit 202-2 indicates movement and the static motion determination supplied from the static motion determination unit 202-3 indicates movement. Then, it is determined that the pixel that is the target of region identification in frame #n belongs to the motion region, and “1” indicating that it belongs to the motion region is set in the motion region determination flag corresponding to the pixel determined for the region.
[0233]
The area determination unit 203-2 indicates that the static motion determination supplied from the static motion determination unit 202-2 indicates static or the static motion determination supplied from the static motion determination unit 202-3 indicates static. At this time, it is determined that the pixel that is the region identification target in frame #n does not belong to the motion region, and “0” indicating that it does not belong to the motion region is set in the motion region determination flag corresponding to the pixel that is determined to be the region. Set.
[0234]
The region determination unit 203-2 supplies the motion region determination flag set to “1” or “0” to the determination flag storage frame memory 204 in this way.
[0235]
The region determination unit 203-3 is configured such that the static motion determination supplied from the static motion determination unit 202-3 indicates movement and the static motion determination supplied from the static motion determination unit 202-4 indicates stillness. , It is determined that the pixel that is the target of region identification in frame #n belongs to the covered background region, and the covered background region determination flag corresponding to the pixel to be determined of the region indicates that it belongs to the covered background region. 1 ”is set.
[0236]
In the area determination unit 203-3, the static motion determination supplied from the static motion determination unit 202-3 indicates stillness, or the static motion determination supplied from the static motion determination unit 202-4 indicates movement. When determining that the pixel that is the target of region identification in frame #n does not belong to the covered background region, the covered background region determination flag corresponding to the pixel to be determined for the region does not belong to the covered background region. “0” is set to indicate.
[0237]
The area determination unit 203-3 supplies the covered background area determination flag set to “1” or “0” to the determination flag storage frame memory 204 in this way.
[0238]
The determination flag storage frame memory 204 is supplied from the uncovered background region determination flag supplied from the region determination unit 203-1, the still region determination flag supplied from the region determination unit 203-2, and the region determination unit 203-2. The movement area determination flag and the covered background area determination flag supplied from the area determination unit 203-3 are stored.
[0239]
The determination flag storage frame memory 204 supplies the stored uncovered background area determination flag, still area determination flag, motion area determination flag, and covered background area determination flag to the synthesis unit 205. Based on the uncovered background area determination flag, the still area determination flag, the motion area determination flag, and the covered background area determination flag supplied from the determination flag storage frame memory 204, the combining unit 205 Area information indicating that it belongs to any one of the covered background area, the stationary area, the motion area, and the covered background area is generated and supplied to the determination flag storage frame memory 206.
[0240]
The determination flag storage frame memory 206 stores the area information supplied from the synthesis unit 205 and outputs the stored area information.
[0241]
Next, an example of processing of the area specifying unit 103 will be described with reference to FIGS.
[0242]
When the object corresponding to the foreground is moving, the position on the screen of the image corresponding to the object changes for each frame. As shown in FIG. 46, in the frame #n, the image corresponding to the object located at the position indicated by Yn (x, y) is Yn + 1 (x, Located in y).
[0243]
FIG. 22 shows a model diagram in which pixel values of pixels arranged in a row adjacent to the moving direction of the image corresponding to the foreground object are developed in the time direction. For example, when the moving direction of the image corresponding to the foreground object is horizontal with respect to the screen, the model diagram in FIG. 47 shows a model in which pixel values of adjacent pixels on one line are expanded in the time direction.
[0244]
In FIG. 47, the line in frame #n is the same as the line in frame # n + 1.
[0245]
Foreground components corresponding to the objects included in the second through thirteenth pixels from the left in frame #n are included in the sixth through seventeenth pixels from the left in frame # n + 1.
[0246]
In frame #n, the pixels belonging to the covered background area are the 11th to 13th pixels from the left, and the pixels belonging to the uncovered background area are the 2nd to 4th pixels from the left. In frame # n + 1, the pixels belonging to the covered background area are the 15th to 17th pixels from the left, and the pixels belonging to the uncovered background area are the 6th to 8th pixels from the left.
[0247]
In the example shown in FIG. 47, the foreground component included in frame #n has moved four pixels in frame # n + 1, so the amount of motion v is four. The virtual division number corresponds to the motion amount v and is 4.
[0248]
Next, changes in pixel values of pixels belonging to the mixed region before and after the frame of interest will be described.
[0249]
In frame #n shown in FIG. 48 where the background is stationary and the foreground motion amount v is 4, the pixels belonging to the covered background area are the 15th to 17th pixels from the left. Since the motion amount v is 4, in the previous frame # n−1, the fifteenth through seventeenth pixels from the left include only background components and belong to the background area. In frame # n-2, the fifteenth through seventeenth pixels from the left include only background components and belong to the background area.
[0250]
Here, since the object corresponding to the background is stationary, the pixel value of the fifteenth pixel from the left in frame # n-1 does not change from the pixel value of the fifteenth pixel from the left in frame # n-2. . Similarly, the pixel value of the 16th pixel from the left of frame # n-1 does not change from the pixel value of the 16th pixel from the left of frame # n-2, and the 17th pixel from the left of frame # n-1 The pixel value of this pixel does not change from the pixel value of the 17th pixel from the left in frame # n-2.
[0251]
That is, the pixels of frame # n-1 and frame # n-2 corresponding to the pixels belonging to the covered background area in frame #n are composed of only background components, and the pixel value does not change. The value is almost zero. Therefore, the static motion determination for the pixels in frame # n-1 and frame # n-2 corresponding to the pixels belonging to the mixed region in frame #n is determined as static by the static motion determination unit 202-4.
[0252]
Since the pixels belonging to the covered background area in frame #n include the foreground components, the pixel values are different from the case of only the background components in frame # n-1. Therefore, the static motion determination for the pixels belonging to the mixed region in frame #n and the corresponding pixels in frame # n-1 is determined as motion by the static motion determination unit 202-3.
[0253]
As described above, the region determination unit 203-3 is supplied with the result of the static motion determination indicating the motion from the static motion determination unit 202-3, and is supplied with the result of the static motion determination indicating the static motion from the static motion determination unit 202-4. When it is done, it is determined that the corresponding pixel belongs to the covered background area.
[0254]
In the frame #n shown in FIG. 49 where the background is stationary and the foreground motion amount v is 4, the pixels included in the uncovered background area are the second through fourth pixels from the left. Since the motion amount v is 4, in the next frame # n + 1, the second through fourth pixels from the left include only background components and belong to the background area. Further, in the next frame # n + 2, the second through fourth pixels from the left include only background components and belong to the background area.
[0255]
Here, since the object corresponding to the background is stationary, the pixel value of the second pixel from the left of frame # n + 2 does not change from the pixel value of the second pixel from the left of frame # n + 1. . Similarly, the pixel value of the third pixel from the left of frame # n + 2 does not change from the pixel value of the third pixel from the left of frame # n + 1, and is the fourth from the left of frame # n + 2. The pixel value of this pixel does not change from the pixel value of the fourth pixel from the left in frame # n + 1.
[0256]
That is, the pixels of frame # n + 1 and frame # n + 2, which correspond to the pixels belonging to the uncovered background area in frame #n, consist only of background components, and the pixel value does not change. The absolute value is almost zero. Therefore, the static motion determination for the pixels in frame # n + 1 and frame # n + 2 corresponding to the pixels belonging to the mixed region in frame #n is determined as static by the static motion determination unit 202-1.
[0257]
Since the pixels belonging to the uncovered background area in frame #n include the foreground components, the pixel values are different from the case of only the background components in frame # n + 1. Therefore, the static motion determination for the pixels belonging to the mixed region in frame #n and the corresponding pixels in frame # n + 1 is determined as motion by the static motion determination unit 202-2.
[0258]
As described above, the region determination unit 203-1 is supplied with the result of the static motion determination indicating the motion from the static motion determination unit 202-2, and is supplied with the result of the static motion determination indicating the static motion from the static motion determination unit 202-1. Is determined to belong to the uncovered background area.
[0259]
FIG. 50 is a diagram illustrating the determination conditions of the area specifying unit 103 in frame #n. The pixel in frame # n-2 at the same position on the image of the pixel to be judged in frame #n and the same position on the image of the pixel to be judged in frame #n A pixel in frame # n-1 is determined to be stationary, and a pixel in frame # n-1 and a pixel in frame #n at the same position on the image of the pixel to be determined in frame #n Are determined to be movements, the area specifying unit 103 determines that the pixel to be determined for frame #n belongs to the covered background area.
[0260]
The pixel in frame # n-1 and the pixel in frame #n at the same position on the image of the pixel to be determined in frame #n are determined to be stationary, and the pixel in frame #n When it is determined that the pixel of frame # n + 1 at the same position on the image of the pixel to be determined as #n is still, the area specifying unit 103 determines that the determination target of frame #n is Is determined to belong to the still region.
[0261]
The pixel in frame # n-1 and the pixel in frame #n at the same position on the image of the pixel to be determined in frame #n are determined to move, and the pixel in frame #n When it is determined that a pixel in frame # n + 1 located at the same position on the image of a pixel to be determined as #n is a motion, the region specifying unit 103 determines that the determination is performed in frame #n. Is determined to belong to the motion region.
[0262]
The pixel in frame #n and the pixel in frame # n + 1 at the same position on the image of the pixel to be determined in frame #n are determined as motion, and the determination target in frame #n The pixel of frame # n + 1 at the same position as the position of the pixel on the image and the pixel of frame # n + 2 at the same position as the position of the pixel to be determined at frame #n on the image Are determined to be stationary, the area specifying unit 103 determines that the pixel to be determined for frame #n belongs to the uncovered background area.
[0263]
FIG. 51 is a diagram illustrating an example of the result of specifying the area of the area specifying unit 103. In FIG. 51A, pixels determined to belong to the covered background area are displayed in white. In FIG. 51B, pixels that are determined to belong to the uncovered background area are displayed in white.
[0264]
In FIG. 51C, pixels determined to belong to the motion region are displayed in white. In FIG. 51D, pixels that are determined to belong to the still region are displayed in white.
[0265]
FIG. 52 is a diagram illustrating, as an image, region information indicating a mixed region among region information output from the determination flag storage frame memory 206. In FIG. 52, a pixel determined to belong to the covered background area or the uncovered background area, that is, a pixel determined to belong to the mixed area is displayed in white. The area information indicating the mixed area output from the determination flag storage frame memory 206 indicates a mixed area and a portion having a texture surrounded by a portion having no texture in the foreground area.
[0266]
Next, the area specifying process of the area specifying unit 103 will be described with reference to the flowchart of FIG. In step S201, the frame memory 201 acquires images of frames # n-2 to # n + 2 including the frame #n to be determined.
[0267]
In step S202, the static motion determination unit 202-3 determines whether or not the pixel in frame # n-1 and the pixel at the same position in frame #n are stationary. Then, the static motion determination unit 202-2 determines whether or not the frame #n and the pixel at the same position in the frame # n + 1 are still.
[0268]
In step S203, if it is determined that the pixel in frame #n and the pixel in the same position in frame # n + 1 are determined to be stationary, the process proceeds to step S204, and the region determination unit 203-2 determines that the region is determined. A corresponding still area determination flag is set to “1” indicating that it belongs to a still area. The region determination unit 203-2 supplies the still region determination flag to the determination flag storage frame memory 204, and the procedure proceeds to step S205.
[0269]
When it is determined in step S202 that the pixel in frame # n-1 and the pixel at the same position in frame #n are in motion, or in step S203, the pixel in frame #n and the same position in frame # n + 1 If the pixel is determined to be moving, the pixel in frame #n does not belong to the still region, so the process of step S204 is skipped, and the procedure proceeds to step S205.
[0270]
In step S205, the static motion determination unit 202-3 determines whether or not the pixel in frame # n-1 and the pixel at the same position in frame #n are in motion, and if it is determined as motion, the process proceeds to step S206. Then, the static motion determination unit 202-2 determines whether or not there is motion between the pixel of frame #n and the pixel at the same position of frame # n + 1.
[0271]
If it is determined in step S206 that the pixel in frame #n and the pixel in the same position in frame # n + 1 are in motion, the process proceeds to step S207, and the region determination unit 203-2 determines that the region is determined. “1” indicating that it belongs to a motion region is set in the corresponding motion region determination flag. The region determination unit 203-2 supplies the motion region determination flag to the determination flag storage frame memory 204, and the procedure proceeds to step S208.
[0272]
If it is determined in step S205 that the pixel in frame # n-1 and the pixel in the same position in frame #n are still, or in step S206, the pixel in frame #n and the same position in frame # n + 1 If the current pixel is determined to be still, the pixel of frame #n does not belong to the motion region, so the process of step S207 is skipped, and the procedure proceeds to step S208.
[0273]
In step S208, the static motion determination unit 202-4 determines whether or not the pixel in frame # n-2 and the pixel in the same position in frame # n-1 are stationary. In step S209, the static motion determination unit 202-3 determines whether or not there is motion between the pixel in frame # n-1 and the pixel at the same position in frame #n.
[0274]
If it is determined in step S209 that the motion of the pixel in frame # n-1 and the pixel at the same position in frame #n is determined as moving, the process proceeds to step S210, and the region determination unit 203-3 determines that the region is to be determined. The corresponding covered background area determination flag is set to “1” indicating that it belongs to the covered background area. The area determination unit 203-3 supplies the covered background area determination flag to the determination flag storage frame memory 204, and the procedure proceeds to step S211.
[0275]
If it is determined in step S208 that the pixel in frame # n-2 and the pixel in the same position in frame # n-1 are in motion, or in step S209, the pixel in frame # n-1 and the pixel in frame #n If it is determined that the pixel at the same position is still, the pixel of frame #n does not belong to the covered background area, so the process of step S210 is skipped, and the procedure proceeds to step S211.
[0276]
In step S211, the static motion determination unit 202-2 determines whether or not the pixel in the frame #n and the pixel in the same position in the frame # n + 1 are in motion, and if it is determined to be in motion, the process proceeds to step S212. Then, the static motion determination unit 202-1 determines whether or not the pixel of frame # n + 1 and the pixel at the same position of frame # n + 2 are still.
[0277]
If it is determined in step S212 that the pixel in frame # n + 1 and the pixel in the same position in frame # n + 2 are stationary, the process proceeds to step S213, and the region determination unit 203-1 determines the region. In the uncovered background area determination flag corresponding to the pixel, “1” indicating that the pixel belongs to the uncovered background area is set. The area determination unit 203-1 supplies the uncovered background area determination flag to the determination flag storage frame memory 204, and the procedure proceeds to step S214.
[0278]
If it is determined in step S211 that the pixel in frame #n and the pixel in the same position in frame # n + 1 are stationary, or in step S212, the pixel in frame # n + 1 and the frame # n + 2 If it is determined that the motion is the same pixel, the pixel of frame #n does not belong to the uncovered background area, so the process of step S213 is skipped, and the procedure proceeds to step S214.
[0279]
In step S214, the area specifying unit 103 determines whether or not an area has been specified for all the pixels of frame #n. If it is determined that no area has been specified for all the pixels of frame #n, Returns to step S202 and repeats the area specifying process for other pixels.
[0280]
If it is determined in step S214 that the area has been specified for all the pixels of frame #n, the process proceeds to step S215, where the synthesis unit 205 stores the uncovered background area determination flag stored in the determination flag storage frame memory 204. And a covered background area determination flag, area information indicating a mixed area is generated, and each pixel belongs to one of an uncovered background area, a stationary area, a motion area, and a covered background area. The region information indicating this is generated, the generated region information is set in the determination flag storage frame memory 206, and the process ends.
[0281]
As described above, the region specifying unit 103 may generate region information indicating that each pixel included in the frame belongs to the motion region, the still region, the uncovered background region, or the covered background region. it can.
[0282]
The area specifying unit 103 generates area information corresponding to the mixed area by applying a logical sum to the area information corresponding to the uncovered background area and the covered background area, and is included in the frame. For each pixel, region information including a flag indicating that the pixel belongs to a motion region, a still region, or a mixed region may be generated.
[0283]
When the object corresponding to the foreground has a texture, the area specifying unit 103 can specify the movement area more accurately.
[0284]
The area specifying unit 103 can output area information indicating a motion area as area information indicating a foreground area, and area information indicating a still area as area information indicating a background area.
[0285]
In addition, although the object corresponding to the background has been described as stationary, the above-described processing for specifying the region can be applied even if the image corresponding to the background region includes a motion. For example, when the image corresponding to the background area is moving uniformly, the area specifying unit 103 shifts the entire image corresponding to this movement, and performs the same processing as when the object corresponding to the background is stationary. To do. In addition, when the image corresponding to the background region includes a different motion for each local area, the region specifying unit 103 selects a pixel corresponding to the motion and executes the above-described processing.
[0286]
FIG. 54 is a block diagram illustrating another example of the configuration of the area specifying unit 103. 54 does not use a motion vector. The background image generation unit 301 generates a background image corresponding to the input image, and supplies the generated background image to the binary object image extraction unit 302. For example, the background image generation unit 301 extracts an image object corresponding to a background object included in the input image, and generates a background image.
[0287]
FIG. 55 shows an example of a model diagram in which pixel values of pixels arranged in a line adjacent to the moving direction of the image corresponding to the foreground object are developed in the time direction. For example, when the moving direction of the image corresponding to the foreground object is horizontal to the screen, the model diagram in FIG. 55 shows a model in which pixel values of adjacent pixels on one line are expanded in the time direction.
[0288]
In FIG. 55, the line in frame #n is the same as the line in frame # n−1 and frame # n + 1.
[0289]
In frame #n, the foreground components corresponding to the objects included in the sixth through seventeenth pixels from the left are included in the second through thirteenth pixels from the left in frame # n-1. In frame # n + 1, they are included in the 10th to 21st pixels from the left.
[0290]
In frame # n−1, the pixels belonging to the covered background area are the 11th to 13th pixels from the left, and the pixels belonging to the uncovered background area are the 2nd to 4th pixels from the left. In frame #n, the pixels belonging to the covered background area are the 15th to 17th pixels from the left, and the pixels belonging to the uncovered background area are the 6th to 8th pixels from the left. In frame # n + 1, the pixels belonging to the covered background area are the 19th to 21st pixels from the left, and the pixels belonging to the uncovered background area are the 10th to 12th pixels from the left.
[0291]
In frame # n−1, the pixels belonging to the background area are the first pixel from the left and the fourteenth through twenty-first pixels from the left. In frame #n, the pixels belonging to the background area are the first through fifth pixels from the left, and the eighteenth through twenty-first pixels from the left. In frame # n + 1, the pixels belonging to the background area are the first through ninth pixels from the left.
[0292]
FIG. 56 shows an example of a background image generated by the background image generation unit 301 and corresponding to the example of FIG. The background image is composed of pixels corresponding to the background object, and does not include image components corresponding to the foreground object.
[0293]
The binary object image extraction unit 302 generates a binary object image based on the correlation between the background image and the input image, and supplies the generated binary object image to the time change detection unit 303.
[0294]
FIG. 57 is a block diagram showing the configuration of the binary object image extraction unit 302. The correlation value calculation unit 321 calculates the correlation between the background image and the input image supplied from the background image generation unit 301, generates a correlation value, and supplies the generated correlation value to the threshold processing unit 322.
[0295]
For example, as shown in FIG. Four And a block corresponding to a block in the background image as shown in FIG. 58 (B). Four Applying equation (4) to a block in a 3 × 3 input image centered at Y Four The correlation value corresponding to is calculated.
[0296]
[Expression 2]
Figure 0004701547
[Equation 3]
Figure 0004701547
[Expression 4]
Figure 0004701547
[0297]
The correlation value calculation unit 321 supplies the correlation value calculated for each pixel in this way to the threshold processing unit 322.
[0298]
In addition, the correlation value calculation unit 321 performs, for example, as shown in FIG. Four And a block corresponding to the block in the background image as shown in FIG. 59 (B). Four Applying equation (7) to a block in a 3 × 3 input image centered at Y Four The absolute difference value corresponding to may be calculated.
[0299]
[Equation 5]
Figure 0004701547
[0300]
The correlation value calculation unit 321 supplies the difference absolute value calculated in this way to the threshold processing unit 322 as a correlation value.
[0301]
The threshold value processing unit 322 compares the pixel value of the correlation image with the threshold value th0. When the correlation value is equal to or less than the threshold value th0, the threshold value processing unit 322 sets the pixel value of the binary object image to 1, Is greater than the threshold th0, the pixel value of the binary object image is set to 0, and a binary object image with 0 or 1 set to the pixel value is output. The threshold processing unit 322 may store the threshold th0 in advance, or may use the threshold th0 input from the outside.
[0302]
60 is a diagram showing an example of a binary object image corresponding to the model of the input image shown in FIG. In the binary object image, the pixel value is set to 0 for a pixel having a high correlation with the background image.
[0303]
FIG. 61 is a block diagram illustrating a configuration of the time change detection unit 303. The frame memory 341 determines the area for the pixel of frame #n, and the binary object image of frame # n−1, frame #n, and frame # n + 1 supplied from the binary object image extraction unit 302 Remember.
[0304]
The area determination unit 342 determines an area for each pixel of the frame #n based on the binary object images of the frame # n−1, the frame #n, and the frame # n + 1 stored in the frame memory 341. Region information is generated, and the generated region information is output.
[0305]
FIG. 62 is a diagram for explaining the determination by the region determination unit 342. When the pixel of interest of the binary object image of frame #n is 0, the region determination unit 342 determines that the pixel of interest of frame #n belongs to the background region.
[0306]
The pixel of interest of the binary object image of frame #n is 1, the corresponding pixel of the binary object image of frame # n-1 is 1, and the correspondence of the binary object image of frame # n + 1 When the pixel to be processed is 1, the region determination unit 342 determines that the pixel of interest in frame #n belongs to the foreground region.
[0307]
When the pixel of interest of the binary object image of frame #n is 1 and the corresponding pixel of the binary object image of frame # n-1 is 0, the region determination unit 342 It is determined that the pixel in question belongs to the covered background area.
[0308]
When the pixel of interest of the binary object image of frame #n is 1 and the corresponding pixel of the binary object image of frame # n + 1 is 0, the region determination unit 342 It is determined that the current pixel belongs to the uncovered background area.
[0309]
FIG. 63 is a diagram illustrating an example in which the time change detection unit 303 determines the binary object image corresponding to the input image model illustrated in FIG. 55. Since the corresponding pixel of frame #n of the binary object image is 0, the time change detection unit 303 determines that the first to fifth pixels from the left of the frame #n belong to the background area.
[0310]
The temporal change detection unit 303 has the uncovered background region as the sixth to ninth pixels from the left because the pixel of frame #n of the binary object image is 1 and the corresponding pixel of frame # n + 1 is 0. It is determined that it belongs to.
[0311]
The temporal change detection unit 303 has a pixel of frame #n of 1 in the binary object image, a corresponding pixel of frame # n−1 is 1, and a corresponding pixel of frame # n + 1 is 1. The tenth through thirteenth pixels are determined to belong to the foreground area.
[0312]
Since the pixel of frame #n of the binary object image is 1 and the corresponding pixel of frame # n−1 is 0, the time change detection unit 303 sets the 14th to 17th pixels from the left as the covered background area. Judge as belonging.
[0313]
The time change detection unit 303 determines that the 18th to 21st pixels from the left belong to the background area because the corresponding pixel of frame #n of the binary object image is 0.
[0314]
Next, the area specifying process of the area determination unit 103 will be described with reference to the flowchart of FIG. In step S301, the background image generation unit 301 of the region determination unit 103 generates a background image by extracting, for example, an image object corresponding to a background object included in the input image based on the input image, and generates the generated background. The image is supplied to the binary object image extraction unit 302.
[0315]
In step S302, the binary object image extraction unit 302 calculates a correlation value between the input image and the background image supplied from the background image generation unit 301, for example, by the calculation described with reference to FIG. In step S303, the binary object image extraction unit 302 calculates a binary object image from the correlation value and the threshold value th0, for example, by comparing the correlation value with the threshold value th0.
[0316]
In step S304, the time change detection unit 303 executes region determination processing, and the processing ends.
[0317]
Details of the region determination processing corresponding to step S304 will be described with reference to the flowchart of FIG. In step S321, the region determination unit 342 of the time change detection unit 303 determines whether or not the pixel of interest is 0 in the frame #n stored in the frame memory 341, and pays attention in the frame #n. If it is determined that the pixel is 0, the process proceeds to step S322, the pixel of interest in frame #n is set as belonging to the background area, and the process ends.
[0318]
If it is determined in step S321 that the pixel of interest is 1 in frame #n, the process proceeds to step S323, where the area determination unit 342 of the time change detection unit 303 stores the frame #n stored in the frame memory 341. In frame # n-1, it is determined whether or not the corresponding pixel is 0, and in frame #n, the target pixel is 1 and frame #n If it is determined at n−1 that the corresponding pixel is 0, the process proceeds to step S324, the pixel of interest in frame #n is set as belonging to the covered background area, and the process ends.
[0319]
If it is determined in step S323 that the pixel of interest is 0 in frame #n or the corresponding pixel is 1 in frame # n-1, the process proceeds to step S325, and the time change detection unit 303 The area determination unit 342 determines whether the pixel of interest is 1 in frame #n stored in the frame memory 341 and whether the corresponding pixel is 0 in frame # n + 1. If it is determined that the pixel of interest is 1 in frame #n and the corresponding pixel is 0 in frame # n + 1, the process proceeds to step S326, and the pixel of interest of frame #n is undefined. The process ends with setting to belong to the covered background area.
[0320]
If it is determined in step S325 that the pixel of interest is 0 in frame #n or the corresponding pixel is 1 in frame # n + 1, the process proceeds to step S327, and the time change detection unit 303 The area determination unit 342 sets the pixel of interest in frame #n as the foreground area, and the process ends.
[0321]
As described above, the area specifying unit 103 determines whether the pixels of the input image are the foreground area, the background area, the covered background area, and the uncovered background area based on the correlation value between the input image and the corresponding background image. It is possible to specify which one belongs, and generate region information corresponding to the specified result.
[0322]
FIG. 66 is a block diagram showing another configuration of the area specifying unit 103. 66 uses the motion vector supplied from the motion detection unit 102 and its position information. Parts that are the same as those shown in FIG. 54 are given the same reference numerals, and descriptions thereof are omitted.
[0323]
The robust unit 361 generates a robust binary object image based on the binary object images of N frames supplied from the binary object image extraction unit 302, and sends it to the time change detection unit 303. Output.
[0324]
FIG. 67 is a block diagram illustrating the configuration of the robust unit 361. The motion compensation unit 381 compensates for the motion of the binary object image of N frames based on the motion vector supplied from the motion detection unit 102 and its position information, and obtains a binary object image with motion compensated. Output to the switch 382.
[0325]
The motion compensation of the motion compensation unit 381 will be described with reference to the examples of FIGS. For example, when the region of frame #n is determined, when binary object images of frame # n-1, frame #n, and frame # n + 1 shown in FIG. 68 are input, the motion compensation unit 381 Based on the motion vector supplied from the motion detector 102, motion compensation is performed on the binary object image of frame # n-1 and the binary object image of frame # n + 1, as shown in FIG. Then, the binary object image subjected to motion compensation is supplied to the switch 382.
[0326]
The switch 382 outputs the motion-compensated binary object image of the first frame to the frame memory 383-1, and outputs the motion-compensated binary object image of the second frame to the frame memory 383-2. Similarly, the switch 382 outputs each of the motion compensated binary object images of the third to N−1th frames to any of the frame memory 383-3 to the frame memory 383- (N−1), The motion-compensated binary object image of the Nth frame is output to the frame memory 383-N.
[0327]
The frame memory 383-1 stores the binary object image for which motion compensation has been performed for the first frame, and outputs the stored binary object image to the weighting unit 384-1. The frame memory 383-2 stores the binary object image with motion compensation of the second frame, and outputs the stored binary object image to the weighting unit 384-2.
[0328]
Similarly, each of the frame memories 383-3 to 383- (N-1) stores and stores any of the motion compensated binary object images of the third frame to the (N-1) th frame. The binary object image thus output is output to any one of the weighting unit 384-3 to the weighting unit 384- (N-1). The frame memory 383-N stores the binary object image with motion compensation of the Nth frame, and outputs the stored binary object image to the weighting unit 384-N.
[0329]
The weighting unit 384-1 multiplies the pixel value of the motion-compensated binary object image of the first frame supplied from the frame memory 383-1 by a predetermined weight w1 and supplies the result to the integrating unit 385. The weighting unit 384-2 multiplies the pixel value of the motion compensated binary object image of the second frame supplied from the frame memory 383-2 by a predetermined weight w2, and supplies the result to the integrating unit 385.
[0330]
Similarly, each of the weighting units 384-3 to 384- (N-1) is the third to N-1 supplied from any one of the frame memories 383-3 to 383- (N-1). The pixel value of the motion-compensated binary object image of any one of the frames is multiplied by one of the predetermined weights w3 to w (N−1) and supplied to the accumulating unit 385. The weighting unit 384-N multiplies the pixel value of the motion-compensated binary object image of the Nth frame supplied from the frame memory 383-N by a predetermined weight wN and supplies the result to the integrating unit 385.
[0331]
The accumulating unit 385 accumulates the corresponding pixel values of the binary object image that have been subjected to motion compensation of the 1st to Nth frames and multiplied by one of the weights w1 to wN, respectively, and the accumulated pixel values are obtained in advance. A binary object image is generated by comparing with a predetermined threshold value th0.
[0332]
In this way, the robust unit 361 generates a robust binary object image from the N binary object images and supplies the generated binary object image to the time change detection unit 303. Therefore, the region specifying unit whose configuration is shown in FIG. Even if the input image includes noise, the area 103 can specify the area more accurately than the case shown in FIG.
[0333]
Next, the area specifying process of the area specifying unit 103 having the configuration shown in FIG. 66 will be described with reference to the flowchart of FIG. The processing in steps S341 to S343 is the same as that in steps S301 to S303 described with reference to the flowchart of FIG.
[0334]
In step S344, the robust unit 361 executes a robust process.
[0335]
In step S345, the time change detection unit 303 executes region determination processing, and the processing ends. Details of the process in step S345 are the same as those described with reference to the flowchart of FIG.
[0336]
Next, details of the robust processing corresponding to the processing in step S344 in FIG. 70 will be described with reference to the flowchart in FIG. In step S361, the motion compensation unit 381 performs motion compensation processing on the input binary object image based on the motion vector supplied from the motion detection unit 102 and its position information. In step S362, any of the frame memories 383-1 to 383-N stores the motion compensated binary object image supplied via the switch 382.
[0337]
In step S363, the robust unit 361 determines whether or not N binary object images are stored. If it is determined that N binary object images are not stored, the process returns to step S361. The motion compensation processing of the binary object image and the storage processing of the binary object image are repeated.
[0338]
If it is determined in step S363 that N binary object images have been stored, the process proceeds to step S364, and each of the weighting units 384-1 to 384-N adds w1 to w in each of the N binary object images. Multiply by one of the weights of wN.
[0339]
In step S365, the integration unit 385 integrates the weighted N binary object images.
[0340]
In step S366, the integrating unit 385 generates a binary object image from the integrated image, for example, by comparison with a predetermined threshold value th1, and the process ends.
[0341]
As described above, the region specifying unit 103 having the configuration shown in FIG. 66 can generate region information based on the robust binary object image.
[0342]
As described above, the area specifying unit 103 generates area information indicating that each of the pixels included in the frame belongs to the motion area, the still area, the uncovered background area, or the covered background area. Can do.
[0343]
FIG. 72 is a block diagram illustrating an example of the configuration of the mixture ratio calculation unit 104. Based on the input image, the estimated mixture ratio processing unit 401 calculates an estimated mixture ratio for each pixel by an operation corresponding to the model of the covered background area, and supplies the calculated estimated mixture ratio to the mixture ratio determining unit 403. To do.
[0344]
Based on the input image, the estimated mixture ratio processing unit 402 calculates an estimated mixture ratio for each pixel by an operation corresponding to the model of the uncovered background region, and the calculated estimated mixture ratio is sent to the mixture ratio determining unit 403. Supply.
[0345]
Since it can be assumed that the object corresponding to the foreground is moving at a constant speed within the shutter time, the mixture ratio α of the pixels belonging to the mixed area has the following properties. That is, the mixture ratio α changes linearly in response to changes in the pixel position. If the change in the pixel position is one-dimensional, the change in the mixture ratio α can be expressed by a straight line. If the change in the pixel position is two-dimensional, the change in the mixture ratio α is expressed by a plane. be able to.
[0346]
Since the period of one frame is short, it is assumed that the object corresponding to the foreground is a rigid body and moves at a constant speed.
[0347]
In this case, the gradient of the mixture ratio α is the inverse ratio of the motion amount v within the foreground shutter time.
[0348]
An example of an ideal mixing ratio α is shown in FIG. The gradient l in the mixing region of the ideal mixing ratio α can be expressed as the reciprocal of the motion amount v.
[0349]
As shown in FIG. 73, the ideal mixture ratio α has a value of 1 in the background region, a value of 0 in the foreground region, and a value greater than 0 and less than 1 in the mixed region. .
[0350]
In the example of FIG. 74, the pixel value C06 of the seventh pixel from the left of frame #n can be expressed by Expression (8) using the pixel value P06 of the seventh pixel from the left of frame # n-1. it can.
[0351]
[Formula 6]
Figure 0004701547
[0352]
In Expression (8), the pixel value C06 is expressed as the pixel value M of the pixel in the mixed region, and the pixel value P06 is expressed as the pixel value B of the pixel in the background region. That is, the pixel value M of the pixel in the mixed region and the pixel value B of the pixel in the background region can be expressed as Equation (9) and Equation (10), respectively.
[0353]
M = C06 (9)
B = P06 (10)
[0354]
2 / v in equation (8) corresponds to the mixing ratio α. Since the motion amount v is 4, the mixture ratio α of the seventh pixel from the left of the frame #n is 0.5.
[0355]
As described above, the pixel value C of the focused frame #n is regarded as the pixel value of the mixed region, and the pixel value P of the frame # n-1 before the frame #n is regarded as the pixel value of the background region. Equation (3) indicating the mixing ratio α can be rewritten as Equation (11).
[0356]
C = α ・ P + f (11)
F in Expression (11) is the sum of the foreground components included in the pixel of interest Σ i Fi / v. There are two variables included in equation (11): the mixture ratio α and the sum f of the foreground components.
[0357]
Similarly, FIG. 75 shows a model in which pixel values are expanded in the time direction, in which the amount of motion v is 4 and the number of virtual divisions in the time direction is 4, in the uncovered background area.
[0358]
In the uncovered background area, similarly to the above-described representation in the covered background area, the pixel value C of the frame #n of interest is regarded as the pixel value of the mixed area, and the frame # n + 1 after the frame #n Eq. (3) indicating the mixture ratio α can be expressed as Eq. (12) by regarding the pixel value N of と as the pixel value of the background region.
[0359]
C = α ・ N + f (12)
[0360]
Although it has been described that the background object is stationary, even when the background object is moving, by using the pixel value of the pixel at the position corresponding to the background motion amount v, the expression (8 ) To (12) can be applied. For example, in FIG. 74, when the motion amount v of the object corresponding to the background is 2 and the number of virtual divisions is 2, when the object corresponding to the background is moving to the right side in the figure, The pixel value B of the pixel in the background area is set to a pixel value P04.
[0361]
Since Expression (11) and Expression (12) each include two variables, the mixture ratio α cannot be obtained as it is. Here, since an image generally has a strong spatial correlation, adjacent pixels have almost the same pixel value.
[0362]
Therefore, since the foreground components have a strong spatial correlation, the formula is modified so that the sum f of the foreground components can be derived from the previous or subsequent frame to obtain the mixture ratio α.
[0363]
The pixel value Mc of the seventh pixel from the left in frame #n in FIG. 76 can be expressed by Expression (13).
[0364]
[Expression 7]
Figure 0004701547
2 / v in the first term on the right side of Equation (13) corresponds to the mixing ratio α. The second term on the right side of Expression (13) is expressed as Expression (14) using the pixel value of the subsequent frame # n + 1.
[0365]
[Equation 8]
Figure 0004701547
[0366]
Here, Equation (15) is established using the spatial correlation of the foreground components.
[0367]
F = F05 = F06 = F07 = F08 = F09 = F10 = F11 = F12 (15)
Expression (14) can be replaced with Expression (16) using Expression (15).
[0368]
[Equation 9]
Figure 0004701547
As a result, β can be expressed by equation (17).
[0369]
β = 2/4 (17)
[0370]
In general, assuming that the foreground components related to the mixed region are equal as shown in Equation (15), Equation (18) is established from the relationship of the internal ratio for all the pixels in the mixed region.
[0371]
β = 1-α (18)
[0372]
If Expression (18) is established, Expression (11) can be expanded as shown in Expression (19).
[0373]
[Expression 10]
Figure 0004701547
[0374]
Similarly, if equation (18) holds, equation (12) can be expanded as shown in equation (20).
[0375]
[Expression 11]
Figure 0004701547
[0376]
In Expression (19) and Expression (20), C, N, and P are known pixel values, and therefore the variable included in Expression (19) and Expression (20) is only the mixture ratio α. FIG. 77 shows the relationship between C, N, and P in the equations (19) and (20). C is the pixel value of the pixel of interest in frame #n for calculating the mixture ratio α. N is a pixel value of a pixel in frame # n + 1 corresponding to a pixel of interest corresponding to a position in the spatial direction. P is a pixel value of a pixel in frame # n−1 in which the pixel of interest corresponds to the position in the spatial direction.
[0377]
Accordingly, since one variable is included in each of the equations (19) and (20), the mixture ratio α can be calculated using the pixel values of the pixels of the three frames. The condition for calculating the correct mixture ratio α by solving the equations (19) and (20) is that the foreground components related to the mixed region are equal, that is, the imaging is performed when the foreground object is stationary. In the foreground image object thus obtained, the pixel values of the pixels located at the boundary of the image object corresponding to the direction of the motion of the foreground object, which are twice as many as the movement amount v, are continuous. It is constant.
[0378]
As described above, the mixing ratio α of the pixels belonging to the covered background area is calculated by Expression (21), and the mixing ratio α of the pixels belonging to the uncovered background area is calculated by Expression (22).
[0379]
α = (CN) / (PN) (21)
α = (CP) / (NP) (22)
[0380]
FIG. 78 is a block diagram illustrating a configuration of the estimated mixture ratio processing unit 401. The frame memory 421 stores the input image in units of frames, and supplies the frame immediately after the frame input as the input image to the frame memory 422 and the mixture ratio calculation unit 423.
[0381]
The frame memory 422 stores the input image in units of frames, and supplies the frame immediately after the frame supplied from the frame memory 421 to the mixture ratio calculation unit 423.
[0382]
Therefore, when the frame # n + 1 is input to the mixing ratio calculation unit 423 as an input image, the frame memory 421 supplies the frame #n to the mixing ratio calculation unit 423, and the frame memory 422 stores the frame # n− 1 is supplied to the mixture ratio calculation unit 423.
[0383]
The mixture ratio calculation unit 423 calculates the pixel value C of the pixel of interest in frame #n and the pixel of frame # n + 1 corresponding to the spatial position of the pixel of interest by the calculation shown in Expression (21). And the estimated mixture ratio of the pixel of interest was calculated based on the pixel value N of the pixel and the pixel value P of the pixel of frame # n-1 whose spatial position corresponds to the pixel of interest. Output the estimated mixture ratio. For example, when the background is stationary, the mixture ratio calculation unit 423 determines that the pixel value C of the pixel of interest in frame #n is the same as the pixel of interest in the frame # n + 1. Calculate the estimated mixture ratio of the pixel of interest based on the pixel value N of the pixel and the pixel value P of the pixel of frame # n-1, which has the same position in the frame as the pixel of interest. The estimated mixture ratio is output.
[0384]
As described above, the estimated mixture ratio processing unit 401 can calculate the estimated mixture ratio based on the input image and supply the estimated mixture ratio to the mixture ratio determining unit 403.
[0385]
The estimated mixture ratio processing unit 402 calculates the estimated mixture ratio of the pixel of interest by the calculation shown in the equation (21) by the estimated mixture ratio processing unit 401, whereas the calculation shown in the equation (22). Thus, the estimated mixture ratio processing unit 401 is the same as the estimated mixture ratio processing unit 401 except that a part for calculating the estimated mixture ratio of the pixel of interest is different.
[0386]
FIG. 79 is a diagram illustrating an example of the estimated mixture ratio calculated by the estimated mixture ratio processing unit 401. The estimated mixture ratio shown in FIG. 79 indicates the result when the foreground motion amount v corresponding to an object moving at a constant speed is 11, for one line.
[0387]
It can be seen that the estimated mixture ratio changes almost linearly in the mixed region as shown in FIG.
[0388]
Returning to FIG. 72, the mixture ratio determining unit 403 determines whether the pixel for which the mixture ratio α supplied from the region specifying unit 103 is to be calculated is a foreground area, a background area, a covered background area, or an uncovered background area. The mixing ratio α is set on the basis of the area information indicating which of the two. The mixture ratio determining unit 403 sets 0 as the mixture ratio α when the target pixel belongs to the foreground area, and sets 1 as the mixture ratio α when the target pixel belongs to the background area. When the pixel belongs to the covered background area, the estimated mixture ratio supplied from the estimated mixture ratio processing unit 401 is set to the mixture ratio α, and when the target pixel belongs to the uncovered background area, the estimated mixture ratio processing unit The estimated mixing ratio supplied from 402 is set to the mixing ratio α. The mixture ratio determination unit 403 outputs a mixture ratio α set based on the region information.
[0389]
FIG. 80 is a block diagram showing another configuration of the mixture ratio calculation unit 104. Based on the region information supplied from the region specifying unit 103, the selection unit 441 supplies the pixels belonging to the covered background region and the corresponding pixels of the previous and subsequent frames to the estimated mixture ratio processing unit 442. Based on the region information supplied from the region specifying unit 103, the selection unit 441 supplies the pixels belonging to the uncovered background region and the corresponding pixels in the previous and subsequent frames to the estimated mixture ratio processing unit 443. .
[0390]
Based on the pixel value input from the selection unit 441, the estimated mixture ratio processing unit 442 calculates the estimated mixture ratio of the pixel of interest belonging to the covered background region by the calculation shown in Expression (21). The calculated estimated mixture ratio is supplied to the selection unit 444.
[0390]
Based on the pixel value input from the selection unit 441, the estimated mixture ratio processing unit 443 calculates an estimated mixture ratio of the pixel of interest belonging to the uncovered background region by the calculation shown in Expression (22). Then, the calculated estimated mixture ratio is supplied to the selection unit 444.
[0392]
When the target pixel belongs to the foreground area based on the area information supplied from the area specifying unit 103, the selection unit 444 selects an estimated mixture ratio that is 0, sets the mixture ratio α, If the pixel belongs to the background region, an estimated mixture ratio of 1 is selected and set to the mixture ratio α. When the target pixel belongs to the covered background area, the selection unit 444 selects the estimated mixture ratio supplied from the estimated mixture ratio processing unit 442 and sets it to the mixture ratio α, and the target pixel is uncovered back. When belonging to the ground region, the estimated mixture ratio supplied from the estimated mixture ratio processing unit 443 is selected and set to the mixture ratio α. The selection unit 444 outputs the mixture ratio α selected and set based on the region information.
[0393]
In this way, the mixture ratio calculation unit 104 having another configuration shown in FIG. 80 can calculate the mixture ratio α for each pixel included in the image and output the calculated mixture ratio α.
[0394]
With reference to the flowchart of FIG. 81, the process of calculating the mixture ratio α of the mixture ratio calculator 104 shown in FIG. 72 will be described. In step S <b> 401, the mixture ratio calculation unit 104 acquires the region information supplied from the region specifying unit 103. In step S <b> 402, the estimated mixture ratio processing unit 401 performs an estimated mixture ratio calculation process using a model corresponding to the covered background region, and supplies the calculated estimated mixture ratio to the mixture ratio determining unit 403. Details of the calculation processing of the mixture ratio estimation will be described later with reference to the flowchart of FIG.
[0395]
In step S <b> 403, the estimated mixture ratio processing unit 402 performs an estimated mixture ratio calculation process using a model corresponding to the uncovered background region, and supplies the calculated estimated mixture ratio to the mixture ratio determining unit 403.
[0396]
In step S404, the mixture ratio calculation unit 104 determines whether or not the mixture ratio α is estimated for the entire frame. If it is determined that the mixture ratio α is not estimated for the entire frame, the process returns to step S402. Then, the process of estimating the mixture ratio α for the next pixel is executed.
[0397]
If it is determined in step S404 that the mixture ratio α has been estimated for the entire frame, the process proceeds to step S405, where the mixture ratio determination unit 403 determines that the pixel is a foreground area, background area, covered background area, or uncovered back. The mixture ratio α is set based on the area information supplied from the area specifying unit 103 indicating which of the ground areas belongs. The mixture ratio determining unit 403 sets 0 as the mixture ratio α when the target pixel belongs to the foreground area, and sets 1 as the mixture ratio α when the target pixel belongs to the background area. When the pixel belongs to the covered background area, the estimated mixture ratio supplied from the estimated mixture ratio processing unit 401 is set to the mixture ratio α, and when the target pixel belongs to the uncovered background area, the estimated mixture ratio processing unit The estimated mixture ratio supplied from 402 is set to the mixture ratio α, and the process ends.
[0398]
As described above, the mixture ratio calculation unit 104 can calculate the mixture ratio α, which is a feature amount corresponding to each pixel, based on the region information supplied from the region specifying unit 103 and the input image.
[0399]
The process of calculating the mixture ratio α by the mixture ratio calculation unit 104 having the configuration shown in FIG. 80 is the same as the process described with reference to the flowchart of FIG.
[0400]
Next, the mixing ratio estimation process using the model corresponding to the covered background area corresponding to step S402 in FIG. 81 will be described with reference to the flowchart in FIG.
[0401]
In step S421, the mixture ratio calculation unit 423 acquires the pixel value C of the target pixel of frame #n from the frame memory 421.
[0402]
In step S422, the mixture ratio calculation unit 423 acquires the pixel value P of the pixel of frame # n−1 corresponding to the target pixel from the frame memory 422.
[0403]
In step S423, the mixture ratio calculation unit 423 acquires the pixel value N of the pixel of frame # n + 1 corresponding to the target pixel included in the input image.
[0404]
In step S424, the mixture ratio calculation unit 423, based on the pixel value C of the pixel of interest in frame #n, the pixel value P of the pixel of frame # n-1, and the pixel value N of the pixel of frame # n + 1, Calculate the estimated mixture ratio.
[0405]
In step S425, the mixture ratio calculation unit 423 determines whether or not the process of calculating the estimated mixture ratio has been completed for the entire frame, and determines that the process of calculating the estimated mixture ratio has not been completed for the entire frame. If so, the process returns to step S421, and the process of calculating the estimated mixture ratio for the next pixel is repeated.
[0406]
If it is determined in step S425 that the process of calculating the estimated mixture ratio has been completed for the entire frame, the process ends.
[0407]
Thus, the estimated mixture ratio processing unit 401 can calculate the estimated mixture ratio based on the input image.
[0408]
The mixture ratio estimation process by the model corresponding to the uncovered background area in step S403 in FIG. 81 is the same as the process shown in the flowchart of FIG. 82 using the expression corresponding to the model of the uncovered background area. Description is omitted.
[0409]
Note that the estimated mixture ratio processing unit 442 and the estimated mixture ratio processing unit 443 illustrated in FIG. 80 perform the same processing as the flowchart illustrated in FIG. 82 to calculate the estimated mixture ratio, and thus description thereof is omitted.
[0410]
In addition, although it has been described that the object corresponding to the background is stationary, the above-described processing for obtaining the mixture ratio α can be applied even if the image corresponding to the background region includes a motion. For example, when the image corresponding to the background region is moving uniformly, the estimated mixture ratio processing unit 401 shifts the entire image corresponding to the movement of the background, and the object corresponding to the background is stationary. Process in the same way. In addition, when the image corresponding to the background region includes a different background motion for each local area, the estimated mixture ratio processing unit 401 selects a pixel corresponding to the background motion as a pixel corresponding to the pixel belonging to the mixed region. Then, the above-described processing is executed.
[0411]
In addition, the mixture ratio calculation unit 104 executes only the mixture ratio estimation process using the model corresponding to the covered background region for all pixels, and outputs the calculated estimated mixture ratio as the mixture ratio α. Also good. In this case, the mixing ratio α indicates the ratio of the background components for the pixels belonging to the covered background area, and indicates the ratio of the foreground components for the pixels belonging to the uncovered background area. If the absolute value of the difference between the mixture ratio α and 1 calculated in this way is calculated for the pixels belonging to the uncovered background area, and the calculated absolute value is set to the mixture ratio α, the separation processing server 11 For the pixels belonging to the uncovered background area, the mixing ratio α indicating the ratio of the background components can be obtained.
[0412]
Similarly, the mixture ratio calculation unit 104 executes only the mixture ratio estimation process using the model corresponding to the uncovered background area for all pixels, and outputs the calculated estimated mixture ratio as the mixture ratio α. You may make it do.
[0413]
Next, the mixing ratio calculation unit 104 that calculates the mixing ratio α using the property that the mixing ratio α changes linearly will be described.
[0414]
As described above, since the equations (11) and (12) each include two variables, the mixture ratio α cannot be obtained as it is.
[0415]
Therefore, using the property that the mixing ratio α changes linearly in response to changes in the pixel position due to the object corresponding to the foreground moving at a constant speed within the shutter time, mixing is performed in the spatial direction. An expression that approximates the ratio α and the sum f of the foreground components is established. By using a plurality of sets of pixel values of pixels belonging to the mixed area and pixel values belonging to the background area, an equation that approximates the mixing ratio α and the sum f of the foreground components is solved.
[0416]
When the change in the mixing ratio α is approximated as a straight line, the mixing ratio α is expressed by Expression (23).
[0417]
α = il + p (23)
In Expression (23), i is an index in the spatial direction where the position of the pixel of interest is 0. l is the slope of the straight line of the mixing ratio α. p is a straight line intercept of the mixing ratio α and is the mixing ratio α of the pixel of interest. In equation (23), the index i is known, but the slope l and the intercept p are unknown.
[0418]
FIG. 83 shows the relationship between the index i, the slope l, and the intercept p.
[0419]
By approximating the mixture ratio α as shown in Expression (23), a plurality of different mixture ratios α are expressed by two variables for a plurality of pixels. In the example shown in FIG. 83, five mixing ratios for five pixels are expressed by two variables, gradient l and intercept p.
[0420]
Approximating the mixture ratio α in the plane shown in FIG. 84, when considering the motion v corresponding to two directions of the horizontal direction and the vertical direction of the image, the formula (23) is expanded to a plane, and the mixture ratio α is It is represented by Formula (24).
[0421]
α = jm + kq + p (24)
In Expression (24), j is a horizontal index with the position of the pixel of interest being 0, and k is a vertical index. m is the horizontal inclination of the surface of the mixing ratio α, and q is the vertical inclination of the surface of the mixing ratio α. p is an intercept of the surface of the mixing ratio α.
[0422]
For example, in frame #n shown in FIG. 74, equations (25) to (27) are established for C05 to C07, respectively.
[0423]
C05 = α05 ・ B05 / v + f05 (25)
C06 = α06 ・ B06 / v + f06 (26)
C07 = α07 ・ B07 / v + f07 (27)
[0424]
When the foreground components match in the vicinity, that is, F01 to F03 are equal, and F01 to F03 are replaced with Fc, Expression (28) is established.
[0425]
f (x) = (1-α (x)) · Fc (28)
In Expression (28), x represents a position in the spatial direction.
[0426]
When α (x) is replaced with Expression (24), Expression (28) can be expressed as Expression (29).
[0427]
Figure 0004701547
[0428]
In the equation (29), (−m · Fc), (−q · Fc), and (1-p) · Fc are replaced as shown in the equations (30) to (32).
[0429]
s = -m · Fc (30)
t = -q · Fc (31)
u = (1-p) ・ Fc (32)
[0430]
In Expression (29), j is a horizontal index with the position of the pixel of interest as 0, and k is a vertical index.
[0431]
In this way, since it is assumed that the object corresponding to the foreground moves at a constant speed within the shutter time and the component corresponding to the foreground is constant in the vicinity, the sum of the foreground components is expressed by Equation (29). Approximated.
[0432]
When the mixture ratio α is approximated by a straight line, the sum of the foreground components can be expressed by Expression (33).
[0433]
f (x) = is + u (33)
[0434]
When the sum of the mixture ratio α and the foreground component in Expression (13) is replaced using Expression (24) and Expression (29), the pixel value M is expressed by Expression (34).
[0435]
Figure 0004701547
[0436]
In equation (34), the unknown variables are the horizontal gradient m of the surface of the mixing ratio α, the vertical inclination q of the surface of the mixing ratio α, the intercepts p, s, t, and u of the surface of the mixing ratio α. These are six.
[0437]
A plurality of normal equations in which the pixel value M or the pixel value B is set in the normal equation shown in the equation (34) in correspondence with the pixel in the vicinity of the pixel of interest, and the pixel value M or the pixel value B is set. Is calculated by the method of least squares to calculate the mixture ratio α.
[0438]
For example, the horizontal index j of the pixel of interest is set to 0, the index k of the vertical direction is set to 0, and a 3 × 3 pixel in the vicinity of the pixel of interest is expressed by the normal equation shown in Expression (34). When the pixel value M or the pixel value B is set, Expressions (35) to (43) are obtained.
[0439]
Figure 0004701547
[0440]
Since the horizontal index j of the pixel of interest is 0 and the vertical index k is 0, the mixing ratio α of the pixel of interest is expressed by j = 0 and k = It is equal to the value at 0, that is, the intercept p.
[0441]
Accordingly, based on the nine equations (35) to (43), the values of the horizontal gradient m, the vertical gradient q, the intercepts p, s, t, and u are calculated by the method of least squares. The intercept p may be output as the mixing ratio α.
[0442]
Next, a more specific procedure for calculating the mixture ratio α by applying the least square method will be described.
[0443]
When the index i and the index k are expressed by one index x, the relationship between the index i, the index k, and the index x is expressed by Expression (44).
[0444]
x = (j + 1) ・ 3+ (k + 1) (44)
[0445]
Express horizontal slope m, vertical slope q, intercepts p, s, t, and u as variables w0, w1, w2, w3, w4, and W5, respectively, jB, kB, B, j, k, And 1 are expressed as a0, a1, a2, a3, a4, and a5, respectively. In consideration of the error ex, Expressions (35) to (43) can be rewritten into Expression (45).
[0446]
[Expression 12]
Figure 0004701547
In the formula (45), x is an integer value from 0 to 8.
[0447]
From equation (45), equation (46) can be derived.
[0448]
[Formula 13]
Figure 0004701547
[0449]
Here, in order to apply the method of least squares, an error sum of squares E is defined as shown in equation (47).
[0450]
[Expression 14]
Figure 0004701547
[0451]
In order to minimize the error, it is only necessary that the partial differentiation of the variable Wv with respect to the square sum E of the error becomes zero. Here, v is one of integers from 0 to 5. Therefore, wy is obtained so as to satisfy the equation (48).
[0452]
[Expression 15]
Figure 0004701547
[0453]
Substituting equation (46) into equation (48) yields equation (49).
[0454]
[Expression 16]
Figure 0004701547
[0455]
For example, a sweep method (Gauss-Jordan elimination method) is applied to six formulas obtained by substituting any one of integers 0 to 5 for v in formula (49) to calculate wy. . As described above, w0 is the horizontal gradient m, w1 is the vertical gradient q, w2 is the intercept p, w3 is s, w4 is t, and w5 is u.
[0456]
As described above, horizontal slope m, vertical slope q, intercepts p, s, t, and u are obtained by applying the method of least squares to the equation in which pixel value M and pixel value B are set. be able to.
[0457]
In the description corresponding to the expressions (35) to (43), the pixel value of the pixel included in the mixed area has been described as M, and the pixel value of the pixel included in the background area has been described as B. Therefore, it is necessary to establish a normal equation for each of the cases where they are included in the covered background region or the uncovered background region.
[0458]
For example, when obtaining the mixture ratio α of pixels included in the covered background area of frame #n shown in FIG. 74, pixel values P04 to C08 of pixels of frame #n and pixel values P04 to P08 of frame # n−1 P08 is set as a normal equation.
[0459]
When obtaining the mixture ratio α of pixels included in the uncovered background area of frame #n shown in FIG. 75, pixel values N28 to N32 of pixels C28 to C32 of frame #n and pixels of frame # n + 1 Is set to a normal equation.
[0460]
For example, when calculating the mixture ratio α of the pixels included in the covered background region shown in FIG. 85, the following equations (50) to (58) are established. The pixel value of the pixel for calculating the mixture ratio α is Mc5.
[0461]
Mc1 = (-1) ・ Bc1 ・ m + (-1) ・ Bc1 ・ q + Bc1 ・ p + (-1) ・ s + (-1) ・ t + u (50)
Mc2 = (0) ・ Bc2 ・ m + (-1) ・ Bc2 ・ q + Bc2 ・ p + (0) ・ s + (-1) ・ t + u (51)
Mc3 = (+ 1) ・ Bc3 ・ m + (-1) ・ Bc3 ・ q + Bc3 ・ p + (+ 1) ・ s + (-1) ・ t + u (52)
Mc4 = (-1) ・ Bc4 ・ m + (0) ・ Bc4 ・ q + Bc4 ・ p + (-1) ・ s + (0) ・ t + u (53)
Mc5 = (0) ・ Bc5 ・ m + (0) ・ Bc5 ・ q + Bc5 ・ p + (0) ・ s + (0) ・ t + u (54)
Mc6 = (+ 1) ・ Bc6 ・ m + (0) ・ Bc6 ・ q + Bc6 ・ p + (+ 1) ・ s + (0) ・ t + u (55)
Mc7 = (-1) ・ Bc7 ・ m + (+ 1) ・ Bc7 ・ q + Bc7 ・ p + (-1) ・ s + (+ 1) ・ t + u (56)
Mc8 = (0) ・ Bc8 ・ m + (+ 1) ・ Bc8 ・ q + Bc8 ・ p + (0) ・ s + (+ 1) ・ t + u (57)
Mc9 = (+ 1) ・ Bc9 ・ m + (+ 1) ・ Bc9 ・ q + Bc9 ・ p + (+ 1) ・ s + (+ 1) ・ t + u (58)
[0462]
When calculating the mixture ratio α of the pixels included in the covered background area of frame #n, the background of the pixel of frame # n−1 corresponding to the pixel of frame #n in equations (50) to (58) Pixel values Bc1 to Bc9 of the pixels in the area are used.
[0463]
When calculating the mixture ratio α of the pixels included in the uncovered background area shown in FIG. 85, the following equations (59) to (67) are established. The pixel value of the pixel for calculating the mixture ratio α is Mu5.
[0464]
Mu1 = (-1) ・ Bu1 ・ m + (-1) ・ Bu1 ・ q + Bu1 ・ p + (-1) ・ s + (-1) ・ t + u (59)
Mu2 = (0) ・ Bu2 ・ m + (-1) ・ Bu2 ・ q + Bu2 ・ p + (0) ・ s + (-1) ・ t + u (60)
Mu3 = (+ 1) ・ Bu3 ・ m + (-1) ・ Bu3 ・ q + Bu3 ・ p + (+ 1) ・ s + (-1) ・ t + u (61)
Mu4 = (-1) ・ Bu4 ・ m + (0) ・ Bu4 ・ q + Bu4 ・ p + (-1) ・ s + (0) ・ t + u (62)
Mu5 = (0) ・ Bu5 ・ m + (0) ・ Bu5 ・ q + Bu5 ・ p + (0) ・ s + (0) ・ t + u (63)
Mu6 = (+ 1) ・ Bu6 ・ m + (0) ・ Bu6 ・ q + Bu6 ・ p + (+ 1) ・ s + (0) ・ t + u (64)
Mu7 = (-1) ・ Bu7 ・ m + (+ 1) ・ Bu7 ・ q + Bu7 ・ p + (-1) ・ s + (+ 1) ・ t + u (65)
Mu8 = (0) ・ Bu8 ・ m + (+ 1) ・ Bu8 ・ q + Bu8 ・ p + (0) ・ s + (+ 1) ・ t + u (66)
Mu9 = (+ 1) ・ Bu9 ・ m + (+ 1) ・ Bu9 ・ q + Bu9 ・ p + (+ 1) ・ s + (+ 1) ・ t + u (67)
[0465]
When calculating the mixture ratio α of the pixels included in the uncovered background area of frame #n, in the equations (59) to (67), the pixels of the frame # n + 1 corresponding to the pixels of the frame #n are calculated. The pixel values Bu1 to Bu9 of the pixels in the background area are used.
[0466]
FIG. 86 is a block diagram illustrating a configuration of the estimated mixture ratio processing unit 401. The image input to the estimated mixture ratio processing unit 401 is supplied to the delay unit 501 and the adding unit 502.
[0467]
The delay circuit 221 delays the input image by one frame and supplies it to the adding unit 502. When the frame #n is input as an input image to the adding unit 502, the delay circuit 221 supplies the frame # n-1 to the adding unit 502.
[0468]
The adding unit 502 sets the pixel value of the pixel near the pixel for calculating the mixture ratio α and the pixel value of the frame # n−1 in a normal equation. For example, the adding unit 502 sets the pixel values Mc1 to Mc9 and the pixel values Bc1 to Bc9 in the normal equation based on the equations (50) to (58). The adding unit 502 supplies the normal equation in which the pixel value is set to the calculation unit 503.
[0469]
The computing unit 503 solves the normal equation supplied from the adding unit 502 by a sweeping method or the like to obtain an estimated mixture ratio, and outputs the obtained estimated mixture ratio.
[0470]
As described above, the estimated mixture ratio processing unit 401 can calculate the estimated mixture ratio based on the input image and supply the estimated mixture ratio to the mixture ratio determining unit 403.
[0471]
Note that the estimated mixture ratio processing unit 402 has the same configuration as the estimated mixture ratio processing unit 401, and thus description thereof is omitted.
[0472]
FIG. 87 is a diagram illustrating an example of the estimated mixture ratio calculated by the estimated mixture ratio processing unit 401. The estimated mixture ratio shown in FIG. 87 indicates that the foreground motion v corresponding to an object moving at a constant speed is 11, and the result of calculating an equation with a block of 7 × 7 pixels as a unit is 1 line. Is shown.
[0473]
It can be seen that the estimated mixture ratio changes substantially linearly in the mixed region as shown in FIG.
[0474]
Next, the mixing ratio estimation processing by the model corresponding to the covered background area by the estimated mixing ratio processing unit 401 having the configuration shown in FIG. 86 will be described with reference to the flowchart of FIG.
[0475]
In step S521, the adding unit 502 sets the pixel value included in the input image and the pixel value included in the image supplied from the delay circuit 221 to a normal equation corresponding to the model of the covered background area. .
[0476]
In step S522, the estimated mixture ratio processing unit 401 determines whether or not the setting for the target pixel has been completed. If it is determined that the setting for the target pixel has not been completed, the process proceeds to step S521. Returning, the process of setting the pixel value to the normal equation is repeated.
[0477]
If it is determined in step S522 that the pixel value setting for the target pixel has been completed, the process proceeds to step S523, and the calculation unit 173 calculates the estimated mixture ratio based on the normal equation in which the pixel value is set. Then, the obtained estimated mixture ratio is output.
[0478]
As described above, the estimated mixture ratio processing unit 401 having the configuration shown in FIG. 86 can calculate the estimated mixture ratio based on the input image.
[0479]
The process of estimating the mixture ratio using the model corresponding to the uncovered background area is the same as the process shown in the flowchart of FIG. 88 using the normal equation corresponding to the model of the uncovered background area.
[0480]
Note that although the object corresponding to the background has been described as stationary, the above-described processing for obtaining the mixture ratio can be applied even if the image corresponding to the background area includes movement. For example, when the image corresponding to the background region is moving uniformly, the estimated mixture ratio processing unit 401 shifts the entire image corresponding to this movement, and is the same as when the object corresponding to the background is stationary. To process. Further, when the image corresponding to the background region includes a different motion for each local area, the estimated mixture ratio processing unit 401 selects a pixel corresponding to the motion as a pixel corresponding to the pixel belonging to the mixed region, and Execute the process.
[0481]
As described above, the mixture ratio calculation unit 102 can calculate the mixture ratio α, which is a feature amount corresponding to each pixel, based on the region information supplied from the region specifying unit 101 and the input image.
[0482]
By using the mixing ratio α, it becomes possible to separate the foreground component and the background component included in the pixel value while leaving the motion blur information included in the image corresponding to the moving object. .
[0483]
Also, by compositing images based on the mixture ratio α, it is possible to create an image including correct motion blur that matches the speed of a moving object as if the real world was actually recaptured.
[0484]
Next, the foreground / background separation unit 105 will be described. FIG. 89 is a block diagram illustrating an example of the configuration of the foreground / background separator 105. The input image supplied to the foreground / background separator 105 is supplied to the separator 601, the switch 602, and the switch 604. The information indicating the covered background area and the area information supplied from the area specifying unit 103 indicating the uncovered background area are supplied to the separation unit 601. Area information indicating the foreground area is supplied to the switch 602. Area information indicating the background area is supplied to the switch 604.
[0485]
The mixing ratio α supplied from the mixing ratio calculation unit 104 is supplied to the separation unit 601.
[0486]
The separation unit 601 separates the foreground components from the input image based on the region information indicating the covered background region, the region information indicating the uncovered background region, and the mixing ratio α, and synthesizes the separated foreground components. The background component is separated from the input image, and the separated background component is supplied to the synthesis unit 605.
[0487]
The switch 602 is closed when a pixel corresponding to the foreground is input based on the region information indicating the foreground region, and supplies only the pixel corresponding to the foreground included in the input image to the combining unit 603.
[0488]
The switch 604 is closed when a pixel corresponding to the background is input based on the region information indicating the background region, and supplies only the pixel corresponding to the background included in the input image to the combining unit 605.
[0489]
The combining unit 603 combines the foreground component image based on the component corresponding to the foreground supplied from the separation unit 601 and the pixel corresponding to the foreground supplied from the switch 602, and outputs the combined foreground component image. Since the foreground area and the mixed area do not overlap, the synthesis unit 603 synthesizes the foreground component image by applying a logical sum operation to the component corresponding to the foreground and the pixel corresponding to the foreground, for example.
[0490]
In the initialization process executed at the beginning of the foreground component image synthesis process, the synthesis unit 603 stores an image in which all pixel values are 0 in the built-in frame memory, and performs synthesis of the foreground component image. In the process, the foreground component image is stored (overwritten). Accordingly, 0 is stored as the pixel value in the pixel corresponding to the background area in the foreground component image output by the synthesis unit 603.
[0491]
The combining unit 605 combines the background component images based on the components corresponding to the background supplied from the separation unit 601 and the pixels corresponding to the background supplied from the switch 604, and outputs the combined background component image. Since the background area and the mixed area do not overlap, the synthesis unit 605 synthesizes the background component image by applying a logical sum operation to the component corresponding to the background and the pixel corresponding to the background, for example.
[0492]
In the initialization process executed at the beginning of the background component image synthesis process, the synthesis unit 605 stores an image in which all pixel values are 0 in the built-in frame memory, and performs synthesis of the background component image. In the processing, the background component image is stored (overwritten). Accordingly, 0 is stored as the pixel value in the pixel corresponding to the foreground area in the background component image output from the synthesis unit 605.
[0493]
FIG. 90 is a diagram illustrating an input image input to the foreground / background separator 105 and a foreground component image and a background component image output from the foreground / background separator 105.
[0494]
FIG. 90A is a schematic diagram of a displayed image, and FIG. 90B shows pixels belonging to the foreground area, pixels belonging to the background area, and pixels belonging to the mixed area corresponding to FIG. 90A. 1 is a model diagram in which one line of pixels including is expanded in the time direction.
[0495]
As shown in FIGS. 90A and 90B, the background component image output from the foreground / background separation unit 105 is composed of pixels belonging to the background area and background components included in the pixels of the mixed area. The
[0496]
As shown in FIGS. 90A and 90B, the foreground component image output from the foreground / background separation unit 105 includes pixels belonging to the foreground area and foreground components included in the pixels of the mixed area. The
[0497]
The pixel values of the pixels in the mixed region are separated into a background component and a foreground component by the foreground / background separation unit 105. The separated background components together with the pixels belonging to the background area constitute a background component image. The separated foreground components together with the pixels belonging to the foreground area constitute a foreground component image.
[0498]
Thus, in the foreground component image, the pixel value of the pixel corresponding to the background area is set to 0, and a meaningful pixel value is set to the pixel corresponding to the foreground area and the pixel corresponding to the mixed area. Similarly, in the background component image, the pixel value of the pixel corresponding to the foreground area is set to 0, and a meaningful pixel value is set to the pixel corresponding to the background area and the pixel corresponding to the mixed area.
[0499]
Next, a process performed by the separation unit 601 to separate the foreground components and the background components from the pixels belonging to the mixed area will be described.
[0500]
FIG. 91 is an image model showing foreground components and background components of two frames including a foreground corresponding to an object moving from left to right in the drawing. In the image model shown in FIG. 91, the foreground motion amount v is 4, and the number of virtual divisions is 4.
[0501]
In frame #n, the leftmost pixel and the fourteenth through eighteenth pixels from the left consist only of background components and belong to the background area. In frame #n, the second through fourth pixels from the left include a background component and a foreground component, and belong to the uncovered background area. In frame #n, the eleventh through thirteenth pixels from the left include a background component and a foreground component, and belong to the covered background area. In frame #n, the fifth through tenth pixels from the left consist of only the foreground components and belong to the foreground area.
[0502]
In frame # n + 1, the first through fifth pixels from the left and the eighteenth pixel from the left consist of only the background components, and belong to the background area. In frame # n + 1, the sixth through eighth pixels from the left include a background component and a foreground component, and belong to the uncovered background area. In frame # n + 1, the fifteenth through seventeenth pixels from the left include a background component and a foreground component, and belong to the covered background area. In frame # n + 1, the ninth through fourteenth pixels from the left consist of only the foreground components, and belong to the foreground area.
[0503]
FIG. 92 is a diagram illustrating processing for separating foreground components from pixels belonging to the covered background area. In FIG. 92, α1 to α18 are mixing ratios corresponding to the respective pixels in frame #n. In FIG. 92, the fifteenth through seventeenth pixels from the left belong to the covered background area.
[0504]
The pixel value C15 of the fifteenth pixel from the left in frame #n is expressed by equation (68).
[0505]
Figure 0004701547
Here, α15 is the mixture ratio of the fifteenth pixel from the left in frame #n. P15 is the pixel value of the fifteenth pixel from the left in frame # n-1.
[0506]
Based on Expression (68), the sum f15 of the foreground components of the fifteenth pixel from the left in frame #n is expressed by Expression (69).
[0507]
Figure 0004701547
[0508]
Similarly, the foreground component sum f16 of the 16th pixel from the left in frame #n is expressed by Equation (70), and the foreground component sum f17 of the 17th pixel from the left in frame #n is expressed by Equation (70). (71)
[0509]
f16 = C16-α16 ・ P16 (70)
f17 = C17-α17 ・ P17 (71)
[0510]
In this way, the foreground component fc included in the pixel value C of the pixel belonging to the covered background area is calculated by Expression (72).
[0511]
fc = C-α ・ P (72)
P is the pixel value of the corresponding pixel in the previous frame.
[0512]
FIG. 93 is a diagram for explaining processing for separating foreground components from pixels belonging to the uncovered background area. In FIG. 93, α1 to α18 are mixing ratios corresponding to the respective pixels in frame #n. In FIG. 93, the second through fourth pixels from the left belong to the uncovered background area.
[0513]
The pixel value C02 of the second pixel from the left in frame #n is expressed by Expression (73).
[0514]
Figure 0004701547
Here, α2 is the mixture ratio of the second pixel from the left in frame #n. N02 is the pixel value of the second pixel from the left in frame # n + 1.
[0515]
Based on Expression (73), the sum f02 of the foreground components of the second pixel from the left in frame #n is expressed by Expression (74).
[0516]
Figure 0004701547
[0517]
Similarly, the sum f03 of the foreground components of the third pixel from the left in frame #n is expressed by Expression (75), and the sum f04 of the foreground components of the fourth pixel from the left of frame #n is expressed by Expression (75). (76)
[0518]
f03 = C03-α3 ・ N03 (75)
f04 = C04-α4 ・ N04 (76)
[0519]
In this way, the foreground component fu included in the pixel value C of the pixel belonging to the uncovered background area is calculated by Expression (77).
[0520]
fu = C-α ・ N (77)
N is the pixel value of the corresponding pixel in the next frame.
[0521]
As described above, the separation unit 601 determines from the pixels belonging to the mixed region based on the information indicating the covered background region, the information indicating the uncovered background region, and the mixing ratio α for each pixel included in the region information. Foreground and background components can be separated.
[0522]
FIG. 94 is a block diagram showing an example of the configuration of the separation unit 601 that executes the processing described above. The image input to the separation unit 601 is supplied to the frame memory 621, and the region information indicating the covered background region and the uncovered background region supplied from the mixture ratio calculation unit 104, and the mixture ratio α are the separation processing block. It is input to 622.
[0523]
The frame memory 621 stores the input image in units of frames. When the object of processing is frame #n, the frame memory 621 is a frame that is the frame immediately after frame # n-1, frame #n, and frame #n. Remember # n + 1.
[0524]
The frame memory 621 supplies the pixels corresponding to the frame # n−1, the frame #n, and the frame # n + 1 to the separation processing block 622.
[0525]
The separation processing block 622 includes the frame # n−1, the frame #n, and the frame #n supplied from the frame memory 621 based on the area information indicating the covered background area and the uncovered background area, and the mixing ratio α. The operation described with reference to FIGS. 92 and 93 is applied to the pixel value of the corresponding pixel of +1 to separate the foreground component and the background component from the pixels belonging to the mixed region of frame #n, and This is supplied to the memory 623.
[0526]
The separation processing block 622 includes an uncovered area processing unit 631, a covered area processing unit 632, a combining unit 633, and a combining unit 634.
[0527]
The multiplier 641 of the uncovered area processing unit 631 multiplies the mixing ratio α by the pixel value of the pixel of frame # n + 1 supplied from the frame memory 621 and outputs the result to the switch 642. The switch 642 is closed when the pixel of frame #n (corresponding to the pixel of frame # n + 1) supplied from the frame memory 621 is an uncovered background area, and the mixture ratio supplied from the multiplier 641 The pixel value multiplied by α is supplied to the calculator 643 and the synthesis unit 634. The value obtained by multiplying the pixel value of the pixel of frame # n + 1 output from the switch 642 by the mixing ratio α is equal to the background component of the pixel value of the corresponding pixel of frame #n.
[0528]
The computing unit 643 subtracts the background component supplied from the switch 642 from the pixel value of the pixel of frame #n supplied from the frame memory 621 to obtain the foreground component. The computing unit 643 supplies the foreground component of the pixel of frame #n belonging to the uncovered background area to the synthesis unit 633.
[0529]
The multiplier 651 of the covered area processing unit 632 multiplies the mixture ratio α by the pixel value of the pixel of frame # n−1 supplied from the frame memory 621 and outputs the result to the switch 652. The switch 652 is closed when the pixel of the frame #n supplied from the frame memory 621 (corresponding to the pixel of the frame # n−1) is the covered background region, and the mixture ratio α supplied from the multiplier 651 is The pixel value multiplied by is supplied to the calculator 653 and the combining unit 634. A value obtained by multiplying the pixel value of the pixel of frame # n−1 output from the switch 652 by the mixing ratio α is equal to the background component of the pixel value of the corresponding pixel of frame #n.
[0530]
The arithmetic unit 653 subtracts the background component supplied from the switch 652 from the pixel value of the pixel of frame #n supplied from the frame memory 621 to obtain the foreground component. The calculator 653 supplies the foreground components of the pixels of the frame #n belonging to the covered background area to the synthesis unit 633.
[0531]
The synthesizer 633 outputs the foreground components of the pixel belonging to the uncovered background area supplied from the calculator 643 and the foreground of the pixel belonging to the covered background area supplied from the calculator 653 of the frame #n. The components are combined and supplied to the frame memory 623.
[0532]
The combining unit 634 receives the background component of the pixel belonging to the uncovered background area supplied from the switch 642 and the background component of the pixel belonging to the covered background area supplied from the switch 652 of the frame #n. Combined and supplied to the frame memory 623.
[0533]
The frame memory 623 stores the foreground components and the background components of the pixels in the mixed area of the frame #n supplied from the separation processing block 622, respectively.
[0534]
The frame memory 623 outputs the stored foreground components of the pixels in the mixed area of frame #n and the stored background components of the pixels of the mixed area in frame #n.
[0535]
By using the mixture ratio α, which is a feature amount, it is possible to completely separate the foreground component and the background component included in the pixel value.
[0536]
The synthesizing unit 603 combines the foreground components of the pixels in the mixed area of frame #n output from the separating unit 601 with the pixels belonging to the foreground area to generate a foreground component image. The synthesizing unit 605 synthesizes the background component of the pixel in the mixed area of frame #n output from the separating unit 601 and the pixel belonging to the background area to generate a background component image.
[0537]
FIG. 95 is a diagram illustrating an example of the foreground component image and an example of the background component image corresponding to frame #n in FIG.
[0538]
FIG. 95A shows an example of a foreground component image corresponding to frame #n in FIG. Since the leftmost pixel and the fourteenth pixel from the left consist of only background components before the foreground and the background are separated, the pixel value is set to zero.
[0539]
The second through fourth pixels from the left belong to the uncovered background area before the foreground and the background are separated, the background component is 0, and the foreground component is left as it is. The eleventh to thirteenth pixels from the left belong to the covered background area before the foreground and the background are separated, the background component is 0, and the foreground component is left as it is. The fifth through tenth pixels from the left are composed of only the foreground components and are left as they are.
[0540]
FIG. 95B shows an example of the background component image corresponding to frame #n in FIG. The leftmost pixel and the fourteenth pixel from the left are left as they are because they consisted only of the background components before the foreground and the background were separated.
[0541]
The second through fourth pixels from the left belong to the uncovered background area before the foreground and the background are separated, the foreground components are set to 0, and the background components are left as they are. The eleventh to thirteenth pixels from the left belong to the covered background area before the foreground and the background are separated, and the foreground components are set to 0 and the background components are left as they are. Since the fifth through tenth pixels from the left consist of only the foreground components before the foreground and the background are separated, the pixel value is set to zero.
[0542]
Next, foreground / background separation processing by the foreground / background separation unit 105 will be described with reference to a flowchart shown in FIG. In step S601, the frame memory 621 of the separation unit 601 obtains an input image, and determines the frame #n to be separated from the foreground and the background as the previous frame # n-1 and the subsequent frame # n + 1. Remember with.
[0543]
In step S <b> 602, the separation processing block 622 of the separation unit 601 acquires the region information supplied from the mixture ratio calculation unit 104. In step S <b> 603, the separation processing block 622 of the separation unit 601 acquires the mixture ratio α supplied from the mixture ratio calculation unit 104.
[0544]
In step S604, the uncovered area processing unit 631 extracts a background component from the pixel values of the pixels belonging to the uncovered background area supplied from the frame memory 621 based on the area information and the mixture ratio α.
[0545]
In step S605, the uncovered area processing unit 631 extracts the foreground components from the pixel values of the pixels belonging to the uncovered background area supplied from the frame memory 621 based on the area information and the mixture ratio α.
[0546]
In step S606, the covered area processing unit 632 extracts a background component from the pixel values of the pixels belonging to the covered background area supplied from the frame memory 621 based on the area information and the mixture ratio α.
[0547]
In step S607, the covered area processing unit 632 extracts the foreground components from the pixel values of the pixels belonging to the covered background area supplied from the frame memory 621 based on the area information and the mixture ratio α.
[0548]
In step S608, the synthesizer 633 extracts the foreground components of the pixels belonging to the uncovered background area extracted in step S605 and the foreground components of the pixels belonging to the covered background area extracted in step S607. And synthesize. The synthesized foreground components are supplied to the synthesis unit 603. Further, the synthesizing unit 603 combines the pixels belonging to the foreground area supplied via the switch 602 with the foreground components supplied from the separating unit 601 to generate a foreground component image.
[0549]
In step S609, the synthesizer 634 extracts the background component of the pixel belonging to the uncovered background area extracted in step S604 and the background component of the pixel belonging to the covered background area extracted in step S606. And synthesize. The synthesized background component is supplied to the synthesis unit 605. Furthermore, the synthesis unit 605 synthesizes the pixels belonging to the background area supplied via the switch 604 and the background components supplied from the separation unit 601 to generate a background component image.
[0550]
In step S610, the synthesis unit 603 outputs the foreground component image. In step S611, the synthesis unit 605 outputs a background component image, and the process ends.
[0551]
As described above, the foreground / background separation unit 105 separates the foreground component and the background component from the input image based on the region information and the mixture ratio α, and the foreground component image including only the foreground component and the background A background component image consisting only of components can be output.
[0552]
Next, adjustment of the amount of motion blur in the foreground component image will be described.
[0553]
FIG. 97 is a block diagram illustrating an example of the configuration of the motion blur adjustment unit 106. The motion vector and its position information supplied from the motion detection unit 102 are supplied to the processing unit determination unit 801, the modeling unit 802, and the calculation unit 805. The area information supplied from the area specifying unit 103 is supplied to the processing unit determination unit 801. The foreground component image supplied from the foreground / background separation unit 105 is supplied to the adding unit 804.
[0554]
The processing unit determination unit 801 generates a processing unit based on the motion vector, its position information, and region information, and supplies the generated processing unit to the modeling unit 802 and the adding unit 804.
[0555]
As shown in FIG. 98, the processing unit generated by the processing unit determination unit 801 starts from a pixel corresponding to the covered background area of the foreground component image, and moves in the direction of movement to the pixel corresponding to the uncovered background area. A continuous pixel lined up in a moving direction starting from a pixel lined up or a pixel corresponding to an uncovered background area to a pixel corresponding to a covered background area is shown. The processing unit is composed of, for example, two pieces of data: an upper left point (a pixel specified by the processing unit and located at the leftmost or uppermost pixel on the image) and a lower right point.
[0556]
The modeling unit 802 executes modeling based on the motion vector and the input processing unit. More specifically, for example, the modeling unit 802 previously stores a plurality of models corresponding to the number of pixels included in the processing unit, the number of virtual divisions of the pixel values in the time direction, and the number of foreground components for each pixel. A model for designating the correspondence between the pixel value and the foreground component as shown in FIG. 99 is selected based on the processing unit and the number of virtual divisions of the pixel value in the time direction.
[0557]
For example, when the number of pixels corresponding to the processing unit is 12 and the amount of motion v within the shutter time is 5, the modeling unit 802 sets the virtual division number to 5 and sets the leftmost pixel to 1 The foreground component, the second pixel from the left contains the two foreground components, the third pixel from the left contains the three foreground components, and the fourth pixel from the left contains the four foreground components The fifth pixel from the left contains five foreground components, the sixth pixel from the left contains five foreground components, the seventh pixel from the left contains five foreground components, and eight from the left. The tenth pixel includes five foreground components, the ninth pixel from the left includes four foreground components, the tenth pixel from the left includes three foreground components, and the eleventh pixel from the left is 2 The foreground component, and the twelfth pixel from the left contains one foreground component. As a whole, a model consisting of eight foreground components is selected.
[0558]
Note that the modeling unit 802 generates a model based on the motion vector and the processing unit when the motion vector and the processing unit are supplied, instead of selecting from the models stored in advance. Also good.
[0559]
The modeling unit 802 supplies the selected model to the equation generation unit 803.
[0560]
The equation generation unit 803 generates an equation based on the model supplied from the modeling unit 802. Referring to the foreground component image model shown in FIG. 99, the number of foreground components is 8, the number of pixels corresponding to the processing unit is 12, the amount of motion v is 5, and the number of virtual divisions is 5 The equation generated by the equation generation unit 803 will be described.
[0561]
When the foreground components corresponding to the shutter time / v included in the foreground component image are F01 / v to F08 / v, the relationship between F01 / v to F08 / v and the pixel values C01 to C12 is expressed by Equations (78) to (78). It is represented by Formula (89).
[0562]
C01 = F01 / v (78)
C02 = F02 / v + F01 / v (79)
C03 = F03 / v + F02 / v + F01 / v (80)
C04 = F04 / v + F03 / v + F02 / v + F01 / v (81)
C05 = F05 / v + F04 / v + F03 / v + F02 / v + F01 / v (82)
C06 = F06 / v + F05 / v + F04 / v + F03 / v + F02 / v (83)
C07 = F07 / v + F06 / v + F05 / v + F04 / v + F03 / v (84)
C08 = F08 / v + F07 / v + F06 / v + F05 / v + F04 / v (85)
C09 = F08 / v + F07 / v + F06 / v + F05 / v (86)
C10 = F08 / v + F07 / v + F06 / v (87)
C11 = F08 / v + F07 / v (88)
C12 = F08 / v (89)
[0563]
The equation generation unit 803 generates an equation by modifying the generated equation. Equations generated by the equation generation unit 803 are shown in equations (90) to (101).
[0564]
Figure 0004701547
[0565]
Expressions (90) to (101) can also be expressed as Expression (102).
[0566]
[Expression 17]
Figure 0004701547
In Expression (102), j indicates the position of the pixel. In this example, j has any one value of 1 to 12. I indicates the position of the foreground value. In this example, i has any one value of 1 to 8. aij has a value of 0 or 1 corresponding to the values of i and j.
[0567]
When expressed in consideration of the error, Expression (102) can be expressed as Expression (103).
[0568]
[Expression 18]
Figure 0004701547
In Expression (103), ej is an error included in the target pixel Cj.
[0569]
Expression (103) can be rewritten as Expression (104).
[0570]
[Equation 19]
Figure 0004701547
[0571]
Here, in order to apply the method of least squares, an error sum of squares E is defined as shown in Expression (105).
[0572]
[Expression 20]
Figure 0004701547
[0573]
In order to minimize the error, the partial differential value of the variable Fk with respect to the square sum E of the error may be zero. Fk is obtained so as to satisfy Expression (106).
[0574]
[Expression 21]
Figure 0004701547
[0575]
In Expression (106), since the motion amount v is a fixed value, Expression (107) can be derived.
[0576]
[Expression 22]
Figure 0004701547
[0577]
When equation (107) is expanded and transferred, equation (108) is obtained.
[0578]
[Expression 23]
Figure 0004701547
[0579]
This is expanded into eight equations obtained by substituting any one of integers 1 to 8 for k in equation (108). The obtained eight expressions can be expressed by one expression by a matrix. This equation is called a normal equation.
[0580]
An example of a normal equation generated by the equation generation unit 803 based on such a method of least squares is shown in Equation (109).
[0581]
[Expression 24]
Figure 0004701547
[0582]
When Expression (109) is expressed as A · F = v · C, C, A, v are known, and F is unknown. A and v are known at the time of modeling, but C is known by inputting a pixel value in the adding operation.
[0583]
By calculating the foreground component using a normal equation based on the method of least squares, the error included in the pixel C can be dispersed.
[0584]
The equation generation unit 803 supplies the normal equation generated in this way to the addition unit 804.
[0585]
The addition unit 804 sets the pixel value C included in the foreground component image to the matrix expression supplied from the equation generation unit 803 based on the processing unit supplied from the processing unit determination unit 801. The adding unit 804 supplies a matrix in which the pixel value C is set to the calculation unit 805.
[0586]
The calculation unit 805 calculates a foreground component Fi / v from which motion blur has been removed by processing based on a solution method such as a sweep-out method (Gauss-Jordan elimination method), and uses the foreground pixel values from which motion blur has been removed. A foreground component from which motion blur is removed, which is made up of Fi, which is a pixel value from which motion blur has been removed, is calculated by calculating Fi corresponding to any one of the integers from 0 to 8, as shown in FIG. The image is output to the motion blur adding unit 806 and the selection unit 807.
[0587]
In addition, in the foreground component image from which the motion blur shown in FIG. 100 is removed, each of F03 to F08 is set to each of C03 to C10 because the position of the foreground component image with respect to the screen is not changed. It can correspond to an arbitrary position.
[0588]
The motion blur adding unit 806 is a motion blur adjustment amount v ′ having a value different from the motion amount v, for example, a motion blur adjustment amount v ′ having a value half that of the motion amount v, or a motion blur having a value unrelated to the motion amount v. By giving the adjustment amount v ′, the amount of motion blur can be adjusted. For example, as illustrated in FIG. 101, the motion blur adding unit 806 calculates the foreground component Fi / v ′ by dividing the foreground pixel value Fi from which motion blur is removed by the motion blur adjustment amount v ′. Then, the sum of the foreground components Fi / v ′ is calculated to generate a pixel value in which the amount of motion blur is adjusted. For example, when the motion blur adjustment amount v ′ is 3, the pixel value C02 is (F01) / v ′, the pixel value C03 is (F01 + F02) / v ′, and the pixel value C04 is (F01 + F02 + F03) / v ′, and the pixel value C05 is (F02 + F03 + F04) / v ′.
[0589]
The motion blur adding unit 806 supplies the foreground component image in which the amount of motion blur is adjusted to the selection unit 807.
[0590]
The selection unit 807, for example, based on a selection signal corresponding to the user's selection, the foreground component image from which the motion blur supplied from the calculation unit 805 has been removed, and the amount of motion blur supplied from the motion blur addition unit 806 Is selected, and the selected foreground component image is output.
[0591]
Thus, the motion blur adjusting unit 106 can adjust the amount of motion blur based on the selection signal and the motion blur adjustment amount v ′.
[0592]
For example, as illustrated in FIG. 102, when the number of pixels corresponding to the processing unit is 8 and the motion amount v is 4, the motion blur adjustment unit 106 uses the matrix equation represented by Equation (110). Generate.
[0593]
[Expression 25]
Figure 0004701547
[0594]
The motion blur adjustment unit 106 thus calculates the number of expressions corresponding to the length of the processing unit in this way, and calculates Fi that is a pixel value in which the amount of motion blur is adjusted. Similarly, for example, when the number of pixels included in the processing unit is 100, an expression corresponding to 100 pixels is generated and Fi is calculated.
[0595]
FIG. 103 is a diagram illustrating another configuration of the motion blur adjusting unit 106. The same parts as those shown in FIG. 97 are denoted by the same reference numerals, and the description thereof is omitted.
[0596]
The selection unit 821 supplies the input motion vector and its position signal as they are to the processing unit determination unit 801 and the modeling unit 802 based on the selection signal, or the magnitude of the motion vector is set as the motion blur adjustment amount v ′. The motion vector whose size is replaced with the motion blur adjustment amount v ′ and its position signal are supplied to the processing unit determination unit 801 and the modeling unit 802.
[0597]
In this way, the processing unit determination unit 801 to the calculation unit 805 of the motion blur adjustment unit 106 in FIG. 103 sets the motion blur amount corresponding to the values of the motion amount v and the motion blur adjustment amount v ′. Can be adjusted. For example, when the motion amount v is 5 and the motion blur adjustment amount v ′ is 3, the processing unit determination unit 801 to the calculation unit 805 of the motion blur adjustment unit 106 in FIG. For the foreground component image of 5, the calculation is executed according to the model as shown in FIG. 101 corresponding to the motion blur adjustment amount v ′ of 3, and (motion amount v) / (motion blur adjustment amount v ′) = An image including motion blur corresponding to a motion amount v of 5/3, that is, approximately 1.7 is calculated. In this case, since the calculated image does not include motion blur corresponding to the motion amount v of 3, the result of the motion blur addition unit 806 is the relationship between the motion amount v and the motion blur adjustment amount v ′. It should be noted that the meaning of is different.
[0598]
As described above, the motion blur adjustment unit 106 generates an equation corresponding to the motion amount v and the processing unit, sets the pixel value of the foreground component image in the generated equation, and adjusts the amount of motion blur. A foreground component image is calculated.
[0599]
Next, processing for adjusting the amount of motion blur included in the foreground component image by the motion blur adjustment unit 106 will be described with reference to the flowchart of FIG.
[0600]
In step S801, the processing unit determination unit 801 of the motion blur adjustment unit 106 generates a processing unit based on the motion vector and the region information, and supplies the generated processing unit to the modeling unit 802.
[0601]
In step S802, the modeling unit 802 of the motion blur adjustment unit 106 selects and generates a model corresponding to the motion amount v and the processing unit. In step S803, the equation generation unit 803 creates a normal equation based on the selected model.
[0602]
In step S804, the adding unit 804 sets the pixel value of the foreground component image in the created normal equation. In step S805, the adding unit 804 determines whether or not the pixel values of all the pixels corresponding to the processing unit have been set, and if the pixel values of all the pixels corresponding to the processing unit have not been set. If it is determined, the process returns to step S804, and the process of setting the pixel value in the normal equation is repeated.
[0603]
If it is determined in step S805 that the pixel values of all the pixels in the processing unit have been set, the process advances to step S806, and the calculation unit 805 calculates a normal equation in which the pixel values supplied from the addition unit 804 are set. Based on this, the foreground pixel value adjusted for the amount of motion blur is calculated, and the process ends.
[0604]
As described above, the motion blur adjusting unit 106 can adjust the amount of motion blur from the foreground image including motion blur based on the motion vector and the region information.
[0605]
That is, it is possible to adjust the amount of motion blur included in the pixel value that is the sample data.
[0606]
FIG. 105 is a block diagram illustrating another example of the configuration of the motion blur adjusting unit 106. The motion vector and its position information supplied from the motion detection unit 102 are supplied to the processing unit determination unit 901 and the correction unit 905, and the region information supplied from the region specifying unit 103 is supplied to the processing unit determination unit 901. . The foreground component image supplied from the foreground / background separation unit 105 is supplied to the calculation unit 904.
[0607]
The processing unit determination unit 901 generates a processing unit based on the motion vector, its position information, and region information, and supplies the generated processing unit to the modeling unit 902 together with the motion vector.
[0608]
The modeling unit 902 performs modeling based on the motion vector and the input processing unit. More specifically, for example, the modeling unit 902 previously stores a plurality of models corresponding to the number of pixels included in the processing unit, the number of virtual divisions of the pixel values in the time direction, and the number of foreground components for each pixel. A model for designating the correspondence between the pixel value and the foreground component as shown in FIG. 106 is selected based on the processing unit and the number of virtual divisions of the pixel value in the time direction.
[0609]
For example, when the number of pixels corresponding to the processing unit is 12 and the amount of motion v is 5, the modeling unit 902 sets the virtual division number to 5 and the leftmost pixel is one foreground component. The second pixel from the left contains two foreground components, the third pixel from the left contains three foreground components, the fourth pixel from the left contains four foreground components, and The fifth pixel contains five foreground components, the sixth pixel from the left contains five foreground components, the seventh pixel from the left contains five foreground components, and the eighth pixel from the left Contains 5 foreground components, the 9th pixel from the left contains 4 foreground components, the 10th pixel from the left contains 3 foreground components, and the 11th pixel from the left contains 2 foreground components And the twelfth pixel from the left contains one foreground component, Select a model consisting of two foreground components.
[0610]
Note that the modeling unit 902 generates a model based on the motion vector and the processing unit when the motion vector and the processing unit are supplied, instead of selecting from the models stored in advance. Also good.
[0611]
The equation generation unit 903 generates an equation based on the model supplied from the modeling unit 902.
[0612]
With reference to the foreground component image model shown in FIGS. 106 to 108, the number of foreground components is 8, the number of pixels corresponding to the processing unit is 12, and the amount of motion v is 5. An example of an equation generated by the equation generation unit 903 will be described.
[0613]
When the foreground components corresponding to the shutter time / v included in the foreground component image are F01 / v to F08 / v, the relationship between F01 / v to F08 / v and the pixel values C01 to C12 is as described above. It represents with Formula (78) thru | or Formula (89).
[0614]
Focusing on the pixel values C12 and C11, the pixel value C12 includes only the foreground component F08 / v as shown in the equation (111), and the pixel value C11 includes the foreground component F08 / v and the foreground component F07 / v. Consists of product sums of v. Therefore, the foreground component F07 / v can be obtained by Expression (112).
[0615]
F08 / v = C12 (111)
F07 / v = C11-C12 (112)
[0616]
Similarly, in consideration of the foreground components included in the pixel values C10 to C01, the foreground components F06 / v to F01 / v can be obtained by Expressions (113) to (118).
[0617]
F06 / v = C10-C11 (113)
F05 / v = C09-C10 (114)
F04 / v = C08-C09 (115)
F03 / v = C07-C08 + C12 (116)
F02 / v = C06-C07 + C11-C12 (117)
F01 / v = C05-C06 + C10-C11 (118)
[0618]
The equation generation unit 903 generates equations for calculating foreground components based on pixel value differences, examples of which are shown in equations (111) to (118). The equation generation unit 903 supplies the generated equation to the calculation unit 904.
[0619]
The calculation unit 904 sets the pixel value of the foreground component image in the equation supplied from the equation generation unit 903, and calculates the foreground component based on the equation in which the pixel value is set. For example, when the equations (111) to (118) are supplied from the equation generator 903, the arithmetic unit 904 sets the pixel values C05 to C12 in the equations (111) to (118).
[0620]
The calculation unit 904 calculates the foreground components based on the formula in which the pixel values are set. For example, the calculation unit 904 calculates foreground components F01 / v to F08 / v as shown in FIG. 107 by calculations based on the formulas (111) to (118) in which the pixel values C05 to C12 are set. . The calculation unit 904 supplies the foreground components F01 / v to F08 / v to the correction unit 905.
[0621]
The correction unit 905 multiplies the foreground component supplied from the calculation unit 904 by the motion amount v included in the motion vector supplied from the processing unit determination unit 901 to calculate a foreground pixel value from which motion blur has been removed. . For example, when the foreground components F01 / v to F08 / v supplied from the calculation unit 904 are supplied, the correction unit 905 has a motion amount v that is 5 for each of the foreground components F01 / v to F08 / v. , The foreground pixel values F01 to F08 from which motion blur is removed are calculated as shown in FIG.
[0622]
The correction unit 905 supplies the foreground component image, which is calculated as described above and includes the foreground pixel values from which the motion blur is removed, to the motion blur addition unit 906 and the selection unit 907.
[0623]
The motion blur adding unit 906 is a motion blur adjustment amount v ′ having a value different from the motion amount v, for example, a motion blur adjustment amount v ′ having a value half the motion amount v, and a motion blur adjustment having a value unrelated to the motion amount v. With the amount v ′, the amount of motion blur can be adjusted. For example, as shown in FIG. 101, the motion blur adding unit 906 calculates the foreground component Fi / v ′ by dividing the foreground pixel value Fi from which motion blur is removed by the motion blur adjustment amount v ′. Then, the sum of the foreground components Fi / v ′ is calculated to generate a pixel value in which the amount of motion blur is adjusted. For example, when the motion blur adjustment amount v ′ is 3, the pixel value C02 is (F01) / v ′, the pixel value C03 is (F01 + F02) / v ′, and the pixel value C04 is (F01 + F02 + F03) / v ′, and the pixel value C05 is (F02 + F03 + F04) / v ′.
[0624]
The motion blur adding unit 906 supplies the foreground component image in which the amount of motion blur is adjusted to the selection unit 907.
[0625]
For example, based on a selection signal corresponding to the user's selection, the selection unit 907 removes the motion blur supplied from the correction unit 905 and the amount of motion blur supplied from the motion blur addition unit 906. Is selected, and the selected foreground component image is output.
[0626]
Thus, the motion blur adjusting unit 106 can adjust the amount of motion blur based on the selection signal and the motion blur adjustment amount v ′.
[0627]
Next, processing for adjusting the amount of foreground motion blur by the motion blur adjustment unit 106 having the configuration shown in FIG. 105 will be described with reference to the flowchart of FIG.
[0628]
In step S901, the processing unit determination unit 901 of the motion blur adjustment unit 106 generates a processing unit based on the motion vector and the region information, and supplies the generated processing unit to the modeling unit 902 and the correction unit 905.
[0629]
In step S902, the modeling unit 902 of the motion blur adjusting unit 106 selects and generates a model corresponding to the motion amount v and the processing unit. In step S903, the equation generation unit 903 generates an equation for calculating a foreground component based on a difference in pixel values of the foreground component image based on the selected or generated model.
[0630]
In step S904, the calculation unit 904 sets the pixel value of the foreground component image in the created equation, and extracts the foreground component from the difference between the pixel values based on the equation in which the pixel value is set. In step S905, the calculation unit 904 determines whether all foreground components corresponding to the processing unit have been extracted, and if it is determined that all foreground components corresponding to the processing unit have not been extracted, Returning to step S904, the process of extracting the foreground components is repeated.
[0631]
If it is determined in step S905 that all foreground components corresponding to the processing unit have been extracted, the process advances to step S906, and the correction unit 905 supplies the foreground components supplied from the calculation unit 904 based on the motion amount v. Each of F01 / v through F08 / v is corrected to calculate foreground pixel values F01 through F08 from which motion blur has been removed.
[0632]
In step S907, the motion blur adding unit 906 calculates a foreground pixel value in which the amount of motion blur is adjusted, and the selection unit 907 selects the image from which motion blur is removed or the image in which the amount of motion blur is adjusted. Either one is selected, the selected image is output, and the process ends.
[0633]
As described above, the motion blur adjustment unit 106 having the configuration illustrated in FIG. 105 can adjust motion blur from a foreground image including motion blur more quickly by simpler calculation.
[0634]
Conventional methods such as the Wiener filter that partially eliminates motion blur are effective in the ideal state, but they are quantized and not effective enough for actual images containing noise. In the motion blur adjusting unit 106 having the configuration shown in FIG. 105, a sufficient effect is recognized even for an actual image that is quantized and includes noise, and motion blur can be accurately removed.
[0635]
As described above, the separation processing server 11 having the configuration shown in FIG. 27 can adjust the amount of motion blur included in the input image.
[0636]
FIG. 110 is a block diagram illustrating another configuration of the functions of the separation processing server 11.
[0637]
The same parts as those shown in FIG. 27 are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
[0638]
The area specifying unit 103 supplies the area information to the mixture ratio calculation unit 104 and the synthesis unit 1001.
[0639]
The mixture ratio calculation unit 104 supplies the mixture ratio α to the foreground / background separation unit 105 and the synthesis unit 1001.
[0640]
The foreground / background separation unit 105 supplies the foreground component image to the synthesis unit 1001.
[0641]
The synthesizing unit 1001 determines an arbitrary background image and a foreground component image supplied from the foreground / background separating unit 105 based on the mixture ratio α supplied from the mixture ratio calculating unit 104 and the region information supplied from the region specifying unit 103. Are combined to output a composite image in which an arbitrary background image and a foreground component image are combined.
[0642]
FIG. 111 is a diagram illustrating a configuration of the synthesis unit 1001. The background component generation unit 1021 generates a background component image based on the mixing ratio α and an arbitrary background image, and supplies the background component image to the mixed region image synthesis unit 1022.
[0643]
The mixed region image combining unit 1022 generates a mixed region combined image by combining the background component image and the foreground component image supplied from the background component generating unit 1021, and the generated mixed region combined image is used as the image combining unit. 1023.
[0644]
The image composition unit 1023 synthesizes the foreground component image, the mixed region composite image supplied from the mixed region image composition unit 1022 and an arbitrary background image based on the region information, and generates and outputs a composite image.
[0645]
As described above, the synthesizing unit 1001 can synthesize the foreground component image with an arbitrary background image.
[0646]
An image obtained by combining the foreground component image with an arbitrary background image based on the mixing ratio α, which is a feature amount, is more natural than an image obtained by simply combining pixels.
[0647]
FIG. 112 is a block diagram illustrating still another configuration of the function of the separation processing server 11 that adjusts the amount of motion blur. The separation processing server 11 shown in FIG. 27 performs region specification and calculation of the mixing ratio α in order, whereas the separation processing server 11 shown in FIG. 112 performs region specification and calculation of the mixing ratio α in parallel.
[0648]
The same parts as those shown in the block diagram of FIG. 27 are denoted by the same reference numerals, and the description thereof is omitted.
[0649]
The input image is supplied to the mixture ratio calculation unit 1101, foreground / background separation unit 1102, region specifying unit 103, and object extraction unit 101.
[0650]
Based on the input image, the mixture ratio calculation unit 1101 calculates the estimated mixture ratio when it is assumed that the pixel belongs to the covered background area, and the estimated mixture ratio when the pixel belongs to the uncovered background area. Calculated for each pixel included in the input image, estimated mixture ratio when the calculated pixel is assumed to belong to the covered background area, and estimated mixture when the pixel is assumed to belong to the uncovered background area The ratio is supplied to the foreground / background separator 1102.
[0651]
FIG. 113 is a block diagram illustrating an example of the configuration of the mixture ratio calculation unit 1101.
[0652]
An estimated mixture ratio processing unit 401 illustrated in FIG. 113 is the same as the estimated mixture ratio processing unit 401 illustrated in FIG. 72. The estimated mixture ratio processing unit 402 shown in FIG. 113 is the same as the estimated mixture ratio processing unit 402 shown in FIG.
[0653]
Based on the input image, the estimated mixture ratio processing unit 401 calculates an estimated mixture ratio for each pixel by an operation corresponding to the model of the covered background region, and outputs the calculated estimated mixture ratio.
[0654]
The estimated mixture ratio processing unit 402 calculates an estimated mixture ratio for each pixel by an operation corresponding to the model of the uncovered background area based on the input image, and outputs the calculated estimated mixture ratio.
[0655]
The foreground / background separation unit 1102 is supplied from the mixture ratio calculation unit 1101 and is estimated when the pixel is assumed to belong to the covered background area, and is estimated when the pixel is assumed to belong to the uncovered background area. Based on the mixing ratio and the region information supplied from the region specifying unit 103, a foreground component image is generated from the input image, and the generated foreground component image is supplied to the motion blur adjusting unit 106 and the selecting unit 107.
[0656]
FIG. 114 is a block diagram illustrating an example of the configuration of the foreground / background separation unit 1102.
[0657]
The same parts as those of the foreground / background separation unit 105 shown in FIG. 89 are denoted by the same reference numerals, and the description thereof is omitted.
[0658]
Based on the region information supplied from the region specifying unit 103, the selection unit 1121 supplies the estimated mixture ratio supplied from the mixture ratio calculation unit 1101 and assuming that the pixel belongs to the covered background region, and the pixel is undefined. One of the estimated mixture ratios when it is assumed to belong to the covered background region is selected, and the selected estimated mixture ratio is supplied to the separation unit 601 as the mixture ratio α.
[0659]
The separation unit 601 extracts the foreground components and the background components from the pixel values of the pixels belonging to the mixed region based on the mixture ratio α and the region information supplied from the selection unit 1121, and combines the extracted foreground components. At the same time, the background component is supplied to the synthesis unit 605.
[0660]
The separation unit 601 can have the same configuration as that shown in FIG.
[0661]
The synthesizing unit 603 synthesizes and outputs the foreground component image. The synthesizing unit 605 synthesizes and outputs the background component image.
[0662]
The motion blur adjustment unit 106 shown in FIG. 112 can have the same configuration as that shown in FIG. 27, and is included in the foreground component image supplied from the foreground / background separation unit 1102 based on the region information and the motion vector. The amount of motion blur is adjusted, and a foreground component image in which the amount of motion blur is adjusted is output.
[0663]
112, for example, based on a selection signal corresponding to the user's selection, the foreground component image supplied from the foreground / background separation unit 1102 and the amount of motion blur supplied from the motion blur adjustment unit 106 Is selected, and the selected foreground component image is output.
[0664]
In this way, the separation processing server 11 having the configuration shown in FIG. 112 can adjust and output the amount of motion blur included in the image corresponding to the foreground object included in the input image. . The separation processing server 11 having the configuration shown in FIG. 112 can calculate the mixture ratio α, which is the buried information, and output the calculated mixture ratio α, as in the first embodiment.
[0665]
FIG. 115 is a block diagram illustrating another configuration of the function of the separation processing server 11 that combines a foreground component image with an arbitrary background image. The separation processing server 11 shown in FIG. 110 serially performs area specification and calculation of the mixing ratio α, whereas the separation processing server 11 shown in FIG. 115 performs area specification and calculation of the mixing ratio α in parallel.
[0666]
The same parts as those shown in the block diagram of FIG. 112 are denoted by the same reference numerals, and the description thereof is omitted.
[0667]
The mixing ratio calculation unit 1101 illustrated in FIG. 115 is based on the input image and is estimated when the pixel is assumed to belong to the covered background area, and is estimated when the pixel is assumed to belong to the uncovered background area. The mixture ratio is calculated for each pixel included in the input image, and the estimated mixture ratio when the calculated pixel is assumed to belong to the covered background area and the pixel is assumed to belong to the uncovered background area are assumed. The estimated mixture ratio in the case is supplied to the foreground / background separation unit 1102 and the synthesis unit 1201.
[0668]
The foreground / background separation unit 1102 illustrated in FIG. 115 is assumed to be supplied from the mixture ratio calculation unit 1101 when the pixel belongs to the covered background area, and the pixel belongs to the uncovered background area. The foreground component image is generated from the input image based on the estimated mixture ratio in this case and the region information supplied from the region specifying unit 103, and the generated foreground component image is supplied to the combining unit 1201.
[0669]
The combining unit 1201 supplies the estimated mixture ratio supplied from the mixture ratio calculation unit 1101 when it is assumed that the pixel belongs to the covered background area, and the estimated mixture ratio when the pixel belongs to the uncovered background area. The arbitrary background image and the foreground component image supplied from the foreground / background separation unit 1102 are combined based on the region information supplied from the region specifying unit 103, and the arbitrary background image and the foreground component image are combined. The synthesized image is output.
[0670]
FIG. 116 is a diagram illustrating a configuration of the combining unit 1201. The same number is attached | subjected to the part similar to the function shown in the block diagram of FIG. 111, The description is abbreviate | omitted.
[0671]
Based on the region information supplied from the region specifying unit 103, the selection unit 1221 supplies the estimated mixture ratio supplied from the mixture ratio calculation unit 1101 when it is assumed that the pixel belongs to the covered background region, and the pixel is undefined. One of the estimated mixture ratios when it is assumed to belong to the covered background region is selected, and the selected estimated mixture ratio is supplied to the background component generation unit 1021 as the mixture ratio α.
[0672]
The background component generation unit 1021 illustrated in FIG. 116 generates a background component image based on the mixing ratio α and an arbitrary background image supplied from the selection unit 1221, and supplies the background component image to the mixed region image composition unit 1022.
[0673]
116 mixes the background component image supplied from the background component generation unit 1021 and the foreground component image to generate a mixed region composite image, and generates the generated mixed region composite image. Is supplied to the image composition unit 1023.
[0674]
The image composition unit 1023 synthesizes the foreground component image, the mixed region composite image supplied from the mixed region image composition unit 1022 and an arbitrary background image based on the region information, and generates and outputs a composite image.
[0675]
As described above, the synthesis unit 1201 can synthesize the foreground component image with an arbitrary background image.
[0676]
The mixing ratio α has been described as the ratio of the background component included in the pixel value, but may be the ratio of the foreground component included in the pixel value.
[0677]
In addition, the direction of the foreground object has been described as being from left to right, but is not limited to that direction.
[0678]
In the above, the case where the image of the real space having the three-dimensional space and the time axis information is projected onto the time space having the two-dimensional space and the time axis information by using a video camera is taken as an example. In addition to this example, when the first information of more first dimensions is projected onto the second information of fewer second dimensions, distortion generated by the projection is corrected or significant It is possible to adapt to extracting information or synthesizing an image more naturally.
[0679]
The sensor 76a is not limited to a CCD, but is a solid-state imaging device, for example, a BBD (Bucket Brigade Device), a CID (Charge Injection Device), a CPD (Charge Priming Device), or a CMOS (Complementary Mental Oxide Semiconductor) sensor. In addition, the sensor is not limited to a sensor in which the detection elements are arranged in a matrix, and may be a sensor in which the detection elements are arranged in a line.
[0680]
The functions of the separation processing server 11 described above can also be realized by performing distributed processing on various servers configured on the network 1 shown in FIG. That is, the object extraction unit 101 and the motion detection unit 102 are in the motion detection server 12, the region specification unit 103 is in the region specification server 13, the mixture ratio calculation unit 104 is in the mixture ratio calculation server 14, and the foreground / background separation processing unit 105. Corresponds to the foreground / background separation processing server 15 and the motion blur adjustment unit 106 corresponds to the motion blur adjustment server 16. Therefore, the block diagram of the separation processing server 11 shown in FIG. 27 may be realized by hardware, realized by software, or realized by the network 1. The same applies to the synthesizing server 19, and the configuration corresponds to the synthesizing unit 1201, which is realized by hardware, realized by software, or realized by the network 1. It may be.
[0681]
The object extraction unit 101, the motion detection unit 102, the region specification unit 103, the mixture ratio calculation unit 104, the foreground / background separation processing unit 105, and the motion blur adjustment unit 106 described above are respectively performed by the motion detection server 12, The processing is the same as that in which the area specifying server 13, the mixture ratio calculation server 14, the foreground / background separation processing server 15, and the motion blur adjustment server 16 are replaced.
[0682]
Further, when the separation processing server 11 is realized as hardware or software as described above, the various servers connected to the network 1 illustrated in FIG. 1, the client computer 27, and the camera terminal device 28. It is good also as a structure integrated in each as a separation process part. Therefore, in the following description, when the separation processing server 11 is described as a single device having a function of simply separating an input image into a foreground component image and a background component image, the separation processing server 11 is also referred to as a separation processing unit 11. And
[0683]
Next, with reference to the flowchart of FIG. 117, the processing of the separation service for images input from the client computer 27 via the network 1 of FIG. 1 by the separation processing server 11 will be described.
[0684]
In step S <b> 1001, the client computer 27 outputs information specifying an image to the separation processing server 11. That is, as information for designating an image that the user wants to separate, a specific image or an image ID for designating an image is output to the separation processing server 11.
[0685]
In step S1011, the separation processing server 11 acquires the designated image. That is, when an image is transmitted from the client computer 27, the image is read from the network 1 and acquired when the information for designating is transmitted.
[0686]
In step S <b> 1012, the accounting processing unit 11 a of the separation processing server 11 performs accounting processing together with the accounting server 24 via the network 1. At the same time, in step S1021, the billing server 24 performs billing processing together with the separation processing server 11.
[0687]
Here, the above-described charging process will be described with reference to the flowchart of FIG.
The actual billing process is executed by the separation processing server 11 and the billing server 24, but information necessary for various processes is also output from the client computer 27. Also explained.
[0688]
In step S1101, as shown in FIG. 119, the client computer 27 uses the usage amount together with ID information and authentication information (password, etc.) for identifying the user (user who receives the provision of the image separation service) by specifying the service. Is transmitted to the separation processing server 11 via the network 1. In other words, in this case, when information specifying an image is transmitted in the process of step S1001 in FIG. 117, the process of step S1101 is executed. The usage amount is a fee related to the separation service.
[0689]
In step S <b> 1111, as illustrated in FIG. 119, the charging processing unit 11 a of the separation processing server 11 receives the ID information and the authentication information, and further transmits the usage amount and its own ID to the charging server 24.
[0690]
In step S1121, as shown in FIG. 119, the accounting server 24 manages the authentication information, the customer account ID, and the usage amount by the financial institution of the customer account based on the ID transmitted from the separation processing server 11. The financial server 25 is inquired.
[0691]
In step S1131, as shown in FIG. 119, the financial server (for customer) 25 executes an authentication process based on the customer account ID and the authentication information, and notifies the billing server 24 of the authentication result and availability information. To do.
[0692]
In step S <b> 1122, as illustrated in FIG. 119, the billing server 24 transmits the authentication result and availability information to the separation processing server 11. In the following description, the description proceeds under the condition that the authentication result can be used without any problem. In addition, when information indicating that there is a problem with the authentication result and the use is not permitted is received, the processing ends.
[0693]
In step S1112, as illustrated in FIG. 119, the separation processing server 11 provides a service to the client computer 27 in a condition that there is no problem in the authentication result and the financial institution can be used. In step S1102, the client computer 27 receives a service. In other words, in this case, in step S1112, the separation processing server 11 separates the designated image into the foreground component image and the background component image and outputs them to the client computer 27. In step S1102, the client computer 27 is separated. The foreground component image and the background component image are received.
[0694]
In step S <b> 1113, the separation processing server 11 transmits a service usage notification to the accounting server 24. In step S1123, the billing server 24 notifies the financial server (for customer) 25 of the customer account ID, the usage amount, and the provider account ID.
[0695]
In step S1132, the financial server (for customer) 25 transfers the usage amount from the account of the customer account ID to the provider financial server (for provider) 26.
[0696]
Returning to the flowchart of FIG.
[0697]
After the accounting processing is performed between the separation processing server 11 and the accounting server 24 in steps S1012 and S1021, the separation processing server 11 executes image separation processing in step S1013. That is, the area specifying unit 103 of the separation processing server 11 performs the area specifying process described with reference to the flowchart of FIG. 53, and the mixture ratio calculating unit 104 performs the process of calculating the mixture ratio described with reference to the flowchart of FIG. The foreground / background separation unit 105 performs the foreground / background separation processing described with reference to the flowchart of FIG. 96, and the motion blur adjustment unit 106 performs the motion blur amount adjustment processing described with reference to the flowchart of FIG. Run and separate the specified image. Note that the motion blur amount adjustment process, the area specifying process, the mixture ratio calculation process, and the foreground / background separation process are all the same as described above, and thus the description thereof is omitted.
[0698]
In step S1014, the separation processing server 11 attaches IDs to the separated foreground component image and background component image and transmits them to the client computer 27. In step S1002, the client computer 27 receives the separated foreground component image and background component image transmitted from the separation processing server 11 and their IDs, and stores them in its own storage unit 48 (FIG. 2). Print out if necessary. The client computer 27 stores the foreground component image and the background component image separated by the separation processing server 11 in the separation processing server 11 itself or via the network 1 in accordance with a user instruction. It can also be output to the storage server 18 and stored (accumulated).
[0699]
In the above description, the processing in the case where the charge related to the separation processing is transferred to the financial servers 25 and 26 by the billing server 24 has been described. For example, the user previously separates the fee, such as prepaid points. A point indicating that the usage fee has been paid to the service provider is stored in the storage unit 48 (FIG. 2), and each time the provision of the separation service is received, the point is subtracted to execute the charging process. It may be.
[0700]
Here, with reference to the flowchart of FIG. 120, the charging process when using prepaid points will be described.
[0701]
In step S1201, the client computer 27 designates a service and transmits ID information and authentication information. That is, the client computer 27 executes the same process as the process in step S1101 of FIG.
[0702]
In step S1211, the accounting processing unit 11a of the separation processing server 11 receives the ID information and the authentication information. In step S <b> 1212, the billing processing unit 11 a obtains points corresponding to the usage amount related to the separation process from the prepaid points corresponding to the amount paid in advance by the user of the client computer 27 stored in the storage unit 48. Subtract and memorize. In step S1213, the separation processing server 11 provides a service. That is, in this case, the separation processing server 11 executes the separation processing of the input image, and transmits the separated foreground component image and background component image to the client computer 27.
[0703]
In step S1202, the client computer 27 receives a service. That is, in this case, the client computer 27 receives the foreground component image and the background component image transmitted from the separation processing server 11.
[0704]
In the above description, the case where the separation processing server 11 stores the prepaid point in its own storage unit 48 (FIG. 2) has been described. For example, a card on which a prepaid point is recorded, a so-called prepaid card is stored. The same processing is performed for use. In this case, the prepaid point stored in the prepaid card is read and transmitted by the client computer 27 in step S1201, and the separation processing server 11 subtracts the point corresponding to the usage fee from the point received by the billing process. To be transmitted to the client computer 27 and overwritten on the prepaid card.
[0705]
Next, the processing of the motion detection service for obtaining the motion vector and position information of the image designated by the client computer 27 will be described with reference to the flowchart of FIG.
[0706]
In step S <b> 1301, the client computer 27 outputs information specifying an image to the motion detection server 12. That is, as information for designating an image that the user wants to perform motion detection processing, a specific image or an image ID for designating an image is output to the motion detection server 12.
[0707]
In step S1311, the motion detection server 12 acquires the designated image. That is, when an image is transmitted from the client computer 27, the image is read from the network 1 and acquired when the information for designating is transmitted.
[0708]
In steps S1312, S1321, the billing processing unit 12c and the billing server 24 of the motion detection server 12 execute a billing process. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted.
[0709]
In step S <b> 1313, the object extraction unit 12 a of the motion detection server 12 extracts each object from the acquired designated image, and the motion detection unit 12 b detects the position information and the motion vector and transmits them to the client computer 27. To do.
[0710]
In step S1302, the client computer 27 receives and stores the object position information and the motion vector transmitted from the motion detection server 12.
[0711]
The client computer 27 stores the position information and the motion vector detected by the motion detection server 12 in the motion detection server 12 itself according to a user's command, or the storage server 18 via the network 1. Can also be output and stored (accumulated).
[0712]
Next, with reference to the flowchart of FIG. 122, the process of the area specifying service for specifying the area from the information specifying the image and the object input from the client computer 27 executed by the area specifying server 13 will be described.
[0713]
In step S <b> 1401, the client computer 27 outputs information specifying an image and an object to the area specifying server 13. That is, as the information for designating the image that the user wants to specify the area, a specific image or information for specifying the object is output to the area specifying server 13 together with the image ID for specifying the image.
[0714]
In step S1411, the area specifying server 13 acquires the designated image. That is, when an image is transmitted from the client computer 27, when an image ID for designating the image is transmitted, an image corresponding to the image ID is read from the network 1 and obtained.
[0715]
In steps S1412, S1421, the billing processing unit 13a and the billing server 24 of the area specifying server 13 execute billing processing. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted.
[0716]
In step S <b> 1413, the area specifying server 13 executes an area specifying process based on information specifying an object. Note that the area specifying process is the same as the process described with reference to the flowchart of FIG.
[0717]
In step S1414, the area specifying server 13 transmits the area information obtained in the process of step S1413 to the client computer 27.
[0718]
In step S1402, the client computer 27 receives and stores the area information transmitted from the area specifying server 13.
[0719]
The client computer 27 stores the area information obtained by the area specifying server 13 in the area specifying server 13 itself or outputs it to the storage server 18 via the network 1 in accordance with a user instruction. It can also be stored (accumulated).
[0720]
Next, referring to the flowchart of FIG. 123, the mixture ratio that is executed by the mixture ratio calculation server 14 and that calculates the mixture ratio from the information specifying the image and the object input from the client computer 27 and the region information. Processing of the calculation service will be described.
[0721]
In step S <b> 1501, the client computer 27 outputs information specifying an image and an object, and region information to the mixture ratio calculation server 14. That is, the information for designating the image for which the user wants to calculate the mixture ratio is a specific image, or the image ID for designating the image, the information for designating the object, and the area information are the mixture ratio calculation server 14. Is output.
[0722]
In step S1511, the mixture ratio calculation server 14 acquires the designated image. That is, when an image is transmitted from the client computer 27, when an image ID for designating the image is transmitted, an image corresponding to the image ID is read from the network 1 and obtained.
[0723]
In steps S1512 and S1521, the charging processing unit 14a and the charging server 24 of the mixture ratio calculation server 14 execute a charging process. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted.
[0724]
In step S1513, the mixture ratio calculation server 14 executes a process for calculating the mixture ratio based on the information for specifying the object and the region information. Note that the process for calculating the mixture ratio is the same as the process described with reference to the flowchart in FIG.
[0725]
In step S1514, the mixture ratio calculation server 14 transmits the mixture ratio obtained in step S1513 to the client computer 27.
[0726]
In step S1502, the client computer 27 receives and stores the mixture ratio transmitted from the mixture ratio calculation server 14.
[0727]
The client computer 27 stores the mixture ratio obtained by the mixture ratio calculation server 14 in the mixture ratio calculation server 14 itself or in the storage server 18 via the network 1 in accordance with a user instruction. It can also be output and stored (accumulated).
[0728]
Next, referring to the flowchart in FIG. 124, the foreground / background separation server 15 executes the foreground component image and the background based on the information input from the client computer 27 and the information specifying the object, the area information, and the mixture ratio. Processing of a service that separates into component images will be described.
[0729]
In step S <b> 1601, the client computer 27 outputs information for designating an image and an object, region information, and mixture ratio information to the foreground / background separation server 15. That is, the information for specifying the image that the user wants to separate the foreground / background is a specific image, or the image ID for specifying the image, the information for specifying the object, the area information, and the information on the mixing ratio are foreground. It is output to the background separation server 15.
[0730]
In step S1611, the foreground / background separation server 15 obtains the designated image. That is, when an image is transmitted from the client computer 27, when an image ID for designating the image is transmitted, an image corresponding to the image ID is read from the network 1 and obtained.
[0731]
In steps S1612 and S1621, the accounting processing unit 15a and the accounting server 24 of the foreground / background separation server 15 execute an accounting process. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted.
[0732]
In step S1613, the foreground / background separation server 15 executes foreground / background separation processing based on the information for specifying the object, the region information, and the mixture ratio. The foreground / background separation process is the same as the process described with reference to the flowchart of FIG.
[0733]
In step S1614, the foreground / background separation server 15 attaches IDs to the foreground component image and the background component image obtained in the process of step S1613 and transmits them to the client computer 27.
[0734]
In step S1602, the client computer 27 receives and stores the foreground component image and the background component image transmitted from the foreground / background separation server 15.
[0735]
Note that the client computer 27 stores the foreground / background separation image and the background component image transmitted by the foreground / background separation server 15 in the foreground / background separation server 15 itself or the network 1 according to a user instruction. The data can be output to the storage server 18 and stored (accumulated).
[0736]
Next, referring to the flowchart of FIG. 125, the image specified from the information specifying the image input from the client computer 27, the motion vector, and the motion blur adjustment amount, which is executed by the motion blur adjustment server 16. The processing of the service for adjusting the motion blur of the will be described.
[0737]
In step S <b> 1701, the client computer 27 outputs information designating an image, a motion vector, and information on the motion blur adjustment amount to the motion blur adjustment server 16. That is, as information for designating an image that the user wants to adjust motion blur, it is a specific image, or an image ID for designating an image, information for designating an object, a motion vector, and motion blur adjustment amount information Is output to the motion blur adjustment server 16.
[0738]
In step S1711, the motion blur adjustment server 16 acquires the designated image. That is, when an image is transmitted from the client computer 27, when an image ID for designating the image is transmitted, an image corresponding to the image ID is read from the network 1 and acquired.
[0739]
In steps S1712, S1721, the charging processing unit 16a and the charging server 24 of the motion blur adjustment server 16 execute a charging process. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted.
[0740]
In step S1713, the motion blur adjustment server 16 executes motion blur amount adjustment processing based on the motion vector and the information on the motion blur adjustment amount. Note that the process of adjusting the amount of motion blur is the same as the process described with reference to the flowchart in FIG.
[0741]
In step S <b> 1714, the motion blur adjustment server 16 attaches an ID to the motion blur adjustment image obtained in step S <b> 1713 and transmits it to the client computer 27.
[0741]
In step S <b> 1702, the client computer 27 receives and stores the motion blur adjustment image transmitted from the motion blur adjustment server 16.
[0743]
The client computer 27 stores the motion blur adjustment image transmitted from the motion blur adjustment server 16 in the motion blur adjustment server 16 itself or outputs the motion blur adjustment image to the accumulation server 18 in accordance with a user instruction. It can also be stored (accumulated).
[0744]
Next, the detailed configuration of the encoding server 17 will be described with reference to FIG. The separation processing unit 2002 of the encoding server 17 converts the input image (including an image ID for specifying the image and the corresponding image read from the storage server 18 via the network 1) into the foreground component. The image and the background component image are separated and output to the encoding unit 2001 together with the mixture ratio, motion vector, and position information. The separation processing unit 2002 is the same as the separation processing server (separation processing unit) 11 described with reference to FIG. 27, and the mixing ratio, motion vector, and position information acquisition processing are also the same. Description is omitted.
[0745]
The encoding unit 2001 outputs and stores the foreground component image and the background component image input from the separation processing unit 2002 to the storage server 18 via the network 1 and stores the stored location information of the storage server 18 on the network. That is, it is converted into information such as a URL and output as foreground component image position information and background component image position information. At this time, the encoding unit 2001 also outputs the mixture ratio, motion vector, and position information extracted when the foreground component image and the background component image are separated.
[0746]
When the encoding unit 2001 converts the foreground component image and the background component image into the foreground component image position information and the background component image position information, respectively, the accounting processing unit 17a (FIGS. 16 and 17) Via the billing server 24. This charging process may be borne by a user who receives a composition service for generating a composite image using a composition server 19 described later. On the contrary, the user who uses the encoding service pays in advance, so that when using the synthesis service, it is possible to avoid receiving a usage fee from the user.
[0747]
Next, with reference to the flowchart of FIG. 127, the encoding service process executed by the encoding server 17 for encoding an image input from the client computer 27 will be described. In this description, a case where the user of the encoding service bears a usage fee will be described.
[0748]
In step S <b> 1801, the client computer 27 outputs information specifying an image to the encoding server 17. That is, as information for designating an image that the user wants to encode, a specific image, or an image ID for designating an image and information for designating an object are output to the encoding server 17.
[0749]
In step S1811, the encoding server 17 acquires the designated image. That is, when an image is transmitted from the client computer 27, when an image ID for designating the image is transmitted, an image corresponding to the image ID is read from the network 1 and acquired.
[0750]
In steps S1812, S1821, the accounting processing unit 17a and the accounting server 24 of the encoding server 17 execute an accounting process. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted.
[0751]
In step S1813, the separation processing unit 2002 of the encoding server 17 performs image separation processing. The image separation process is the same as the process of step S1013 in the flowchart of FIG.
[0752]
In step S1814, the encoding server 17 outputs the foreground component image and the background component image obtained in the process of step S1813 to the accumulation server 18, and stores (accumulates) them. In step S1831, the accumulation server 18 stores the transmitted foreground component image and background component image.
[0753]
In step S1815, the encoding server 17 adds the motion vector and the position information to the foreground component image position information and the background component position information generated by the encoding, and transmits them to the client computer 27.
[0754]
In step S1802, the client computer 27 receives and stores the foreground component image position information, the background component image position information, the motion vector, and the position information transmitted from the encoding server 17.
[0755]
When the encoding unit 2001 separates and encodes the input image and encodes an image similar to the already encoded image, only the data that is the difference is already encoded. An image code (image position information) may be attached and output. For example, when an image as shown in FIG. 128 is synthesized, the foreground component image 1, the foreground component image 2, and the encoding information of the first image including the encoding information of the mixture ratio 1, and the foreground component image 1, When synthesizing the foreground component image 3 and the encoding information of the second image composed of the encoding information of the mixture ratio 2, the foreground component image 1 is included in any image information. When synthesizing, the encoding information of the foreground component image 1 of one image may be omitted, and as a result, the compression rate is improved by the amount by which the information of the foreground component image 1 is deleted compared with the case of simply synthesizing. Can be made.
[0756]
As a result, when the first image and the second image as shown in FIG. 128 are accumulated, if the first image is accumulated first, the second image is the foreground that becomes a difference. Only the encoded information of the component image 3 and the mixing ratio 2 needs to be accumulated. For this reason, in a case where a plurality of pieces of encoded information of the same image are stored, the compression rate is improved as the number of stored images increases.
[0757]
Further, the mixture ratio, motion vector, and position information encoded by the encoding server 17 may be information designated by the user as shown in FIG. Further, as shown in FIG. 129, the image to be encoded may be encoded by reading the foreground component image and the background component image corresponding to the image ID designated by the user from the storage server 18. In this case, the encoding server 17 may not include the separation processing unit 2002.
[0758]
Further, although the image ID has been used as the information for designating the image in this specification, the image position information may be used instead.
[0759]
Next, referring to the flowchart of FIG. 130, information specifying the images A and B input from the client computer 27, motion vector, mixture ratio, position information, and motion blur adjustment executed by the composition server 19 The processing of the service that combines the specified images A and B based on the amount will be described.
[0760]
In step S 1901, the client computer 27 outputs information specifying the images A and B, a motion vector, a mixture ratio, position information, and information on the motion blur adjustment amount to the synthesis server 19. That is, the information specifying the images A and B that the user wants to synthesize is a specific image, or the images A-ID and B-ID specifying the images A and B (the encoded images described above). Position information), motion vector, mixing ratio, position information, and motion blur adjustment amount information are output to the synthesis server 19.
[0761]
In step S1911, the composition server 16 acquires the designated image. That is, when an image is transmitted from the client computer 27, when an image ID (which may be the encoded image position information described above) is transmitted, an image corresponding to the image ID is Read from the network 1 and obtain it.
[0762]
In steps S1912, S1921, the charging processing unit 19a and the charging server 24 of the synthesis server 19 execute a charging process. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted. Further, this billing process may be omitted when the user who has received the encoding service using the above-described encoding server 16 has paid. Conversely, instead of the user who has received the encoding service, the user who has received the combining service may bear the burden.
[0763]
In step S <b> 1913, the composition server 19 performs a process of combining the images A and B based on the motion vector, the mixture ratio, the position information, and the motion blur adjustment amount information.
[0764]
In step S1914, the composition server 19 attaches an ID to the composite image (A + B) obtained in the process of step S1913 and transmits it to the client computer 27.
[0765]
In step S1902, the client computer 27 receives and stores the composite image (A + B) transmitted from the composite server 19.
[0766]
The client computer 27 stores the composite image (A + B) transmitted by the composite server 19 in the composite server 19 itself or in the storage server 18 via the network 1 in accordance with a user instruction. It can also be output and stored (accumulated).
[0767]
By the way, the composition server 20 can compose a plurality of images as described above. At this time, the motion blur adjustment amount is used as a key to add motion blur of the composite image. Thus, an encrypted image can be generated. FIG. 131 shows a configuration of an encryption motion blur adding unit 2021 provided for causing the synthesis server 20 to generate an encrypted image.
[0768]
The input information processing unit 2031 of the encryption motion blur adding unit 2021 receives the input encrypted signal to be encrypted in the imaging unit 2032, the encryption key information in the motion blur creation unit 2033, and Image selection information for selecting an image (background component image) to be combined with the encrypted signal as a foreground component image is output to the combining server 20.
[0769]
When the encrypted signal input from the input information processing unit 2031 is not an image signal, the imaging unit 2032 converts the signal into an image signal and outputs the image signal to the motion blur adding unit 2033. That is, since the signal to be encrypted is an image signal, a signal that is not an image signal is imaged in order to correspond to the processing.
[0770]
The motion blur creation unit 2033 generates a motion blur adjustment amount based on information such as speed and direction input from the input information processing unit 2031, performs motion blur addition processing on the image signal input from the imaging unit 2032, and Output to the composition server 20. The composition server 20 acquires the background component image based on the image selection information input from the input information processing unit 2031 and further acquires the background component image acquired using the image input from the motion blur adding unit 2033 as the foreground component image. To generate and display a composite image. At this time, the image selection information for designating the background component image may be the background component image itself, the background component image position information, or the background component image ID.
[0771]
Next, referring to FIG. 132, the encryption motion blur removal unit 2041 that decrypts the composite image encrypted by the encryption motion blur addition unit 2021 provided in the composition server 20 and converts it into the original signal. explain. The encryption motion blur adding unit 2021 and the encryption motion blur removing unit 2041 shown in FIGS. 131 and 132 may be considered as functional block diagrams of software built in the client computer 27, for example. It may be considered as a block diagram of the wear. Further, the cryptographic motion blur adding unit 2021 and the cryptographic motion blur removing unit 2041 may be configured as dedicated servers on the network 1.
[0772]
The separation server 11 separates the encrypted composite image into the foreground component image and the background component image, and outputs the foreground component image to which motion blur is added to the input information processing unit 2051.
[0773]
When the input information processing unit 2051 receives the encrypted foreground component image input from the separation processing server 11 and the speed and direction information as a key for decrypting the encrypted foreground component image. And output to the motion blur removal unit 2052. The key speed and direction are set for each of the two-dimensional images in the x and y directions.
[0774]
The motion blur removal unit 2052 generates a motion blur amount based on the speed and direction information input from the input information processing unit 2051, and the encrypted motion blur addition unit 2021 applies it to the encrypted foreground component image. A motion blur addition process opposite to the motion blur addition process is performed, and the encrypted foreground component image is decoded and output to the signal conversion unit 2053. When the encrypted signal is not an image, the signal conversion unit 2053 converts the image signal input from the motion blur removal unit 2052 into an original signal and outputs the original signal.
[0775]
In other words, the motion blur creation unit 2033 (FIG. 131) and the motion blur removal unit 2052 execute substantially the same processing as the motion blur addition unit 806 in FIG. Using the amount of blur adjustment, an addition process of motion blur opposite to each other is executed. However, the difference is that a gain-up process is executed with respect to the motion blur addition process executed earlier in the motion blur addition process in the x direction or the y direction described later.
[0776]
Here, the principle of encrypting an image signal by adding motion blur will be described. For example, as shown in FIG. 133, when the subject moves in the direction of the arrow, if this is imaged by a sensor 76a made of a CCD or the like, a mixed region (covered background region and uncovered background region) is obtained before and after the moving direction. Occurs as a motion blur of the captured image (see FIG. 31 for details). FIG. 134 shows an example of this phenomenon. When a subject such as that shown in FIG. 134 (A) is imaged by the sensor 76a, when the subject is moving in the left-right direction in the figure, the speed is adjusted. Correspondingly, the motion blur area is expanded, and the captured color is further diffused. That is, when the subject is moving in the left-right direction at a speed v, an image as shown in FIG. 134B is taken. At this time, if the areas imaged when the subject is stationary are the areas a0 to a0 ′, the areas where the subject is imaged in FIG. 134B are areas a1 to a1 ′, and the original position a0. The color of the region from a0 ′ to light is dimmed, and the color is spread over the region a1 to a0 and the region a0 ′ to a1 ′ that become motion blur. Similarly, when the subject moves at a speed of 2v (twice the speed v), as shown in FIG. 134C, the areas a2 to a0 and the areas a0 ′ to a It is shown that the color spreads to a2 ′. Further, when the subject moves at a speed of 3v, as shown in FIG. 134 (D), it spreads over the areas a3 to a0 and the areas a0 ′ to a3 ′ that become motion blur, and moves at a speed of 4v. As shown in (E), the region spreads over the regions a4 to a0 and the regions a0 ′ to a4 ′ that become motion blur, and the color becomes light as a whole. That is, the individual pixel values output from the sensor 76a are the result of integrating a spatially widened part of the object to be imaged with respect to the shutter time, so that the pixel values integrated as a whole do not change. Each time the speed of the subject increases, the image is thinned by spreading spatially. Accordingly, it becomes difficult to interpret the subject as the color becomes lighter, the area widens, and the area of motion blur increases. Here, the color indicates the possibility of interpretation. The darker the color, the greater the possibility of interpretation. The lighter the color, the smaller the possibility of interpretation.
[0777]
Encryption by motion blur adjustment uses this property, and encryption is performed by causing motion blur in a two-dimensional direction that cannot occur in the real world in an image. That is, as shown in FIG. 135, an image obtained by capturing a black circle-shaped subject in a state where there is no movement is shown at the top of the leftmost column of the matrix. From this state, for example, when motion blur in a state where there is motion in the vertical direction is added, the black circle subject becomes an image in which motion blur occurs in the vertical direction as shown in the uppermost row of the middle row. Further, when motion blur is generated in the horizontal direction, an image with motion blur generated in the vertical and horizontal directions of the subject is obtained as shown in the middle row of the middle row.
[0778]
In this state, if the motion (speed) in the left-right direction is further increased and motion blur is added, an image in which the motion blur area further expands in the left-right direction as shown in the lowermost row of the middle row. If motion blur is further generated in this image in the vertical direction, as shown in the lowermost row in the rightmost column, the motion blur area of the black circle subject expands, and the color becomes light as a whole. As a result, the possibility of interpretation of the subject decreases, so that the image itself can be encrypted.
[0779]
Next, an encryption process using the motion blur adjustment amount of the encryption motion blur adding unit 2021 will be described with reference to the flowchart of FIG. In the following description, as shown in FIG. 137, an example of encrypting an image in which a subject having 5 × 5 pixels is captured will be described. Here, in FIG. 137, the pixel values a to y of each pixel of 5 × 5 pixels are indicated, the vertical direction is indicated by y, the horizontal direction is indicated by x, and the time axis is described as time t.
[0780]
In step S2001, the input information processing unit 2031 determines whether an encrypted signal has been input, and repeats the process until it is input. If it is determined that the signal has been input, the process proceeds to step S2002. .
[0781]
In step S2002, the input information processing unit 2031 outputs the input encrypted signal to the imaging unit 2032. In step S2003, the imaging unit 2032 determines whether or not the input encrypted signal is an image signal. For example, if it is determined that the encrypted signal is not an image signal, the imaging unit 2032 converts the encrypted signal into an image signal and outputs it to the motion blur adding unit 2033 in step S2004. If it is determined in step S2003 that the encrypted information is an image signal, the imaging unit 2032 outputs the input encrypted signal as it is to the motion blur adding unit 2033.
[0782]
In step S2005, the input signal processing unit 2031 determines whether or not key speed and direction information has been input. The input signal processing unit 2031 repeats the process until the key and speed and direction keys are input. Processing proceeds to step S2006.
[0783]
In step S2006, the motion blur adding unit 2033 encrypts the input image signal in the x direction (adds motion blur).
[0784]
Here, a specific method for generating a pixel value when the subject is encrypted by motion blur adjustment will be described with reference to FIGS. 137 to 149.
[0785]
Here, as shown in FIG. 137, a description will be given of a method of encrypting the pixels a to e in the lowermost stage by causing motion blur in the x direction. At this time, if the motion amount v indicating the key speed is 5 (the number of virtual divisions is 5), the lowermost pixel shown in FIG. 138 is shown as in FIG. That is, since the pixel value in each time direction is divided into five, a / 5 = a0 = a1 = a2 = a3 = a4, b / 5 = b0 = b1 = b2 = b3 = b4, c / 5 = c0 = c1 = C2 = c3 = c4, d / 5 = d0 = d1 = d2 = d3 = d4, and e / 5 = e0 = e1 = e2 = e3 = e4. Here, the pixel at the upper stage in FIG. 139 is the pixel value at the previous time.
[0786]
When a motion in the x direction is given to the subject (in this case, the right direction in the figure), the arrangement of the pixel values is slid at a predetermined time interval, and as a result, as shown in FIG. It becomes arrangement. In other words, the pixel values a0 to e0 are the original positions at the start timing of movement, and at the next timing, the pixel values a1 to e1 slide rightward by one pixel, and at the next timing, the pixel values a2 to e0. e2 slides further by one pixel in the right direction, and at the next timing, the pixel values a3 to e3 slide further by one pixel in the right direction, and at the next timing, the pixel values a4 to e4 further move in the right direction. In this arrangement, the pixel value is moved in accordance with the movement of the subject, such as sliding by one pixel.
[0787]
Each pixel value on the xy plane is obtained by adding the pixel values shown in FIG. 140 in the time direction. However, for example, in the leftmost column or the rightmost column, there are only pixel values a0 and e4, and the pixel value may be very small. In performing the same processing, gain increase processing is performed so as not to have a very small value. An example in which this gain-up processing is performed is shown in FIG.
[0788]
Here, a0 * = 5 × a0, b0 * = (5/2) × b0, a0 * = (5/2) × a1, c0 * = (5/3) × c0, b1 * = (5/3) ) × b1, a2 * = (5/3) × a2, d0 * = (5/4) × d0, c1 * = (5/4) × c1, b2 * = (5/4) × b2, a3 * = (5/4) × a3, e1 * = (5/4) × e1, d2 * = (5/4) × d2, c3 * = (5/4) × c3, b4 * = (5/4) × b4, e2 * = (5/3) × e2, d3 * = (5/3) × d3, c4 * = (5/3) × c4, e3 * = (5/2) × e3, d4 * = (5/2) × d4 and e4 * = 5 × e4. That is, the gain is adjusted so that the added value of each pixel becomes a pixel value for one pixel. As a result, when the pixels a to e shown in FIG. 138 are encrypted under the condition that the motion amount v is 5 in the x direction (when motion blur is added), the pixels ax to dx as shown in FIG. The number of pixels in the horizontal direction of the subject increases from 5 to 9 after being converted to '(encrypted). Here, the pixel values are ax = ax *, bx = (b0 *) + (a1 *), cx = (c0 *) + (b1 *) + (a2 *), dx = (d0 *) + (c1 *) + (B2 *) + (a3 *), ex = (e0) + (d1) + (c2) + (b3) + (a4), ax ′ = (e1 *) + (d2 *) + (c3 *) + (B4 *), bx ′ = (e2 *) + (d3 *) + (c4 *), cx ′ = (e3 *) + (d4 *), and ex = ex *.
[0789]
If the above processing is encrypted in the x direction for all y of 5 × 5 pixels shown in FIG. 137, pixel values as shown in FIG. 143 are obtained. That is, pixels ax to yx, pixels ax ′ to dx ′, fx ′ to ix ′, kx ′ to nx ′, px ′ to sx ′, and ux ′ to xx ′ are obtained in the x direction. When motion blur occurs, a spread occurs in the x direction, and nine pixels are obtained.
[0790]
Now, the description returns to the flowchart of FIG. 136.
[0791]
In step S2007, the motion blur adding unit 2033 encrypts the image signal encoded in the x direction in the y direction.
[0792]
Here, as shown in FIG. 144, a method of encrypting the pixels ax, fx, kx, px, ux in the rightmost column shown in FIG. 143 by causing motion blur in the y direction will be described. At this time, assuming that the motion amount v indicating the key speed is 5 (the number of virtual divisions is 5), the rightmost pixel shown in FIG. 143 is shown as in FIG. That is, since the pixel value in each time direction is divided into five, ax / 5 = ax0 = ax1 = ax2 = ax3 = ax4, fx / 5 = fx0 = fx1 = fx2 = fx3 = fx4, kx / 5 = kx0 = kx1 = Kx2 = kx3 = kx4, px / 5 = px0 = px1 = px2 = px3 = px4, ux / 5 = ux0 = ux1 = ux2 = ux3 = ux4. Here, the pixel at the upper stage in FIG. 145 is the pixel value at the previous time.
[0793]
When a movement is given to the subject in the y direction, the arrangement of the pixel values is slid at a predetermined time interval, and as a result, the arrangement is as shown in FIG. That is, the pixel values ax0, fx0, kx0, px0, ux0 are the original positions at the timing of starting the movement, and the pixel values ax1, fx1, kx1, px1, ux1 slide rightward by one pixel at the next timing. Then, at the next timing, the pixel values ax2, fx2, kx2, px2, ux2 slide to the right by one pixel, and at the next timing, the pixel values ax3, fx3, kx3, px3, ux3 The pixel value moves in accordance with the movement of the subject such that the pixel value ax4, fx4, kx4, px4, ux4 slides further one pixel in the right direction at the next timing. Will be arranged.
[0794]
Now, the description returns to the flowchart of FIG. 136.
[0795]
In step S2008, the composition server 19 combines the background component image to be combined with the encrypted image (foreground component image). For example, when a background component image (image consisting of one stage of pixels in the x direction) composed of pixel values B0 to B9 arranged in the y direction as shown in FIG. 147 is synthesized, as shown in FIG. A value obtained by adding the pixel values is the pixel value. That is, the pixel value of the image encrypted in the xy direction (with motion blur added) is synthesized as the pixel value of the foreground component image, and the pixel value of the synthesized image is synthesized as the pixel value of the background component image. As a result, pixel values A, F, K, P, U, Ay ′, Fy ′, Ky ′, and Py ′ as shown in FIG. 149 are obtained, and each pixel value has a pixel value A = ax0 + B0 × 4/5, pixel value F = fx0 + ax0 + B1 × 3/5, pixel value K = kx0 + fx1 + ax2 + B2 × 2/5, pixel value P = px0 + kx1 + fx2 + ax3 + B3 × 1/5, pixel value U = ux0 + px1 + k + 2 + x3 + a + 4 + x3 + a + 4 + x3 + a + 4 The pixel value Fy ′ = B6 × 2/5 + ux2 + px3 + kx4, the pixel value Ky ′ = B7 × 3/5 + ux3 + px4, and the pixel value Py ′ = B8 × 4/5 + ux4.
[0796]
By executing these processes for all y directions, a composite image having the encrypted foreground component image as a background component image as shown in FIG. 150 is generated. In other words, the input 5 × 5 pixel image includes 9 × 9 pixels (pixels A to Y, pixels Ax to Dx, pixels Fx to Ix, pixels Kx to Nx, pixels Px to Sx, pixels Ux to Xx, pixel Ay. 'To Ty', pixels Ax 'to Dx', pixels Fx 'to Ix', pixels Kx 'to Nx', and pixels Px 'to Sx').
[0797]
As for the decryption process, since the motion blur removal unit 2041 executes a motion blur addition process that is completely opposite to the process of the motion blur addition unit 2021, the description thereof will be omitted.
[0798]
Further, in the process of step S2006 described above, when encryption is performed in the x direction, after performing gain-up processing, encryption in the y direction is performed. Therefore, after decoding in the y direction, it is necessary to lower the gain and then decode in the x direction. In addition, the order of encryption processing in the y direction and the x direction may be interchanged. However, since gain-up processing is performed in the direction of encryption first, decryption needs to correspond to the order of encryption. There is.
[0799]
Next, an encryption service by the composition server 19 provided with the encryption motion blur adding unit 2021 shown in FIG. 131 will be described with reference to the flowchart of FIG. This processing is performed when the client computer 27-1 connected to the network 1 transmits an encrypted signal to the synthesis server 19 and encrypts the signal to be transmitted to the client computer 27-2. It is processing. Further, it is assumed that the client computer 27 is provided with hardware having an image separation processing function of the separation processing server 11 having the cryptographic motion blur removal unit 2041 or software is installed.
[0800]
In step S2101, the client computer 27-1 combines the information to be encrypted (encrypted signal), the speed and direction information to be the encryption key, and the image selection information (information for selecting the background component image). Transmit to server 19.
[0801]
In step S2111, the encryption motion blur adding unit 2021 of the composition server 19 encrypts and selects information to be encrypted (encrypted signal) based on the encryption key input from the client computer 27-1. An encryption process for synthesizing the background component images thus performed is executed. The encryption process has been described with reference to the flowchart of FIG.
[0802]
In step S2112, the composition server 19 transmits an image that has been encrypted and synthesized by adding motion blur to the client computer 27-1.
[0803]
In step S2102, the client computer 27-1 displays the composite image received from the composite server 19, determines whether the image is desired by the user, and determines that the image is a desired image. In step S2103, the composition server 19 is notified that the desired image has been obtained. In step S2113, the composition server 19 determines whether or not the image is a desired image. For example, in this case, since the notification that the image is a desired image is received in step S2103, the process is performed in step S2114. Proceed to
[0804]
In step S <b> 2114, the billing processing unit 19 a of the composition server 19 executes billing processing together with the billing server 24. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted.
[0805]
In step S2115, the composition server 19 transmits the encrypted composite image to the client computer 27-1. In step S2104, the client computer 27-1 receives the encrypted composite image and transmits it as it is to the client computer 27-2.
[0806]
In step S <b> 2141, the client computer 27-2 receives the encrypted composite image. In step S2142, the client computer 27-2 determines whether or not a key has been input, and repeats the process until an encryption key is input. When speed and direction information is input as an encryption key in step S2142, the motion blur removal processing unit 2041 executes motion blur processing based on the input speed and direction in step S2143. In step S2144, an image from which motion blur has been removed is displayed.
[0807]
If it is determined in step S2102 that the image is not a desired image, in step S2015, the composition server 19 is notified that the image is not a desired image, and the processing returns to step S2101. Also, with this processing, it is determined in step S2114 that the image is not a desired image, so the processing of the composition server 19 returns to the processing of step S2111.
[0808]
That is, by this processing, when the user of the client computer 27-2 correctly inputs the speed and direction keys designated by the user of the client computer 27-1, the encrypted image is correctly decrypted. Is displayed. In addition, the decryption service can be provided by the same system as the encryption service described above.
[0809]
Next, the correction server 20 will be described with reference to FIG.
[0810]
The separation processing unit 11 of the correction server 20 converts the input image (which may be an image ID, or in the case of an image specified by the image ID, an image obtained by reading a corresponding image from the network 1) into a foreground component image and a background component image. The foreground component image is output to the motion blur adjustment unit 2101 and the background component image is output to the synthesis unit. The motion blur adjustment unit 2101 performs motion blur adjustment with the specified amount of motion blur (adjusts the degree of correction) of the input foreground component image, and outputs the image to the synthesis unit 2101. The synthesizing unit 2101 synthesizes the foreground component image subjected to motion blur adjustment and the input background component image, and outputs the resultant as a corrected image.
[0811]
For example, it is assumed that an image as shown in FIG. 153 (A) is input to the correction server 20. That is, as shown in the right part of FIG. 153 (A), when the foreground moves on the background in the direction of the arrow, motion blur occurs in the foreground traveling direction and in the opposite direction. This motion blur part is a mixed area, and as shown in the left part of FIG. 153 (A), the mixed area generated in the front part in the moving direction is CB (Covered Background), and the mixing generated in the rear part in the moving direction. The area is UB (Uncovered Background). In the left part of FIG. 153 (A), the time axis t is set in the vertical direction, so that the relationship between the accumulation state of the pixel value on the pixel and the passage of time is shown along with the movement. The separation processing unit 11 separates this input image into a foreground and a background as shown in FIG. 153 (B). At this time, the mixed area of the input image is also extracted.
[0812]
The motion blur adjustment unit 2101 adjusts the motion blur of the foreground component image as shown in FIG. 153 (B) to generate a foreground component image as shown in FIG. 153 (C), for example. That is, in this case, the motion blur is reduced (the CB and UB portions are reduced). The motion blur adjustment amount for adjusting the motion blur may be input while the user repeats the operation several times, or the motion blur adjustment unit 2101 may adjust the motion blur adjustment amount to a predetermined value. .
[0813]
The synthesizing unit 2102 synthesizes the foreground component image adjusted as shown in FIG. 153 and the input background component image to obtain the foreground component image after motion blur adjustment as shown in FIG. 153 (D). The image is synthesized with the background component image and output.
[0814]
When it is desired to change the background component image to another background component image different from that of the input image, the separated background component image is not output to the synthesizing unit 2102 and the background component image to be changed is not combined. To enter. The correction server 20 is configured by replacing the separation processing unit 11, the motion blur adjustment unit 2101, and the synthesis unit 2102 with the separation processing server 11, the motion blur adjustment server 16, and the synthesis server 19 on the network 1. You may do it.
[0815]
Next, with reference to the flowchart of FIG. 154, the processing of the correction service that is executed by the correction server 20 and corrects the image input from the client computer 27 will be described.
[0816]
In step S <b> 2201, the client computer 27 outputs information specifying an image to the correction server 20. That is, the information specifying the image that the user wants to correct is a specific image or an image ID specifying the image is output to the correction server 20.
[0817]
In step S2211, the correction server 20 acquires the designated image to be corrected and the background component image, and the separation processing unit 11 separates the image to be corrected into the foreground component image and the background component image. That is, when an image is transmitted from the client computer 27, when an image ID for designating the image is transmitted, an image corresponding to the image ID is read from the network 1 and obtained. Further, the separation processing unit 11 separates the acquired image into a foreground component image and a background component image.
[0818]
In steps S2212 and S2221, the charging processing unit 20a and the charging server 24 of the correction server 20 execute a charging process. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted.
[0819]
In step S2213, the motion blur adjustment unit 2101 of the correction server 20 executes a motion blur adjustment process for the foreground component image. Note that the motion blur adjustment processing is the same as the processing described with reference to the flowchart of FIG.
[0820]
In step S2214, the combining unit 2102 combines the foreground component image adjusted for motion blur and the designated background component image. In step S <b> 2215, the correction server 20 transmits the composite image obtained in step S <b> 2214, that is, the correction image, to the client computer 27.
[0821]
In step S2202, the client computer 27 receives and stores the corrected image transmitted from the correction server 20.
[0822]
The client computer 27 stores the image corrected by the correction server 20 in the correction server 20 itself or outputs the image to the storage server 18 via a network and stores (accumulates) in accordance with a user instruction. It can also be made to do.
[0823]
Next, with reference to a flowchart of FIG. 155, processing of an image purchase service for purchasing an image designated by the client computer 27 executed by the purchase server 21 will be described.
[0824]
In step S <b> 2301, the client computer 27 outputs information designating an image desired to be purchased to the purchase server 21. That is, an image ID that designates an image is output to the purchase server 21 as information that designates an image that the user wants to purchase.
[0825]
In step S2311, the purchase server 21 acquires an image desired to be purchased. That is, an image corresponding to the image ID transmitted from the client computer 27 is read from the network 1 and acquired.
[0826]
In steps S2312, S2321, the charging processing unit 21a and the charging server 24 of the purchase server 21 execute charging processing. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted.
[0827]
In step S2313, the purchase server 21 transmits the image acquired in step S2311 to the client computer 27.
[0828]
In step S2302, the client computer 27 receives and stores the image transmitted from the purchase server 21.
[0829]
Note that the client computer 27 stores the image purchased by the purchase server 21 in the purchase server 21 itself or outputs it to the storage server 18 for storage (accumulation) in accordance with a user instruction. You can also. Further, by enabling transmission to another client computer 27, for example, an image can be presented as a gift. Further, as described above, the other user can separate the foreground component image, the background component image, the synthesized composite image, or the corrected image that has been separated by the separation processing service, the synthesis service, or the correction service, respectively. Etc. can also be purchased.
[0830]
Next, with reference to a flowchart of FIG. 156, processing of an image sale service for selling an image designated by the client computer 27, which is executed by the sale server 22, will be described.
[0831]
In step S2401, the client computer 27 outputs information specifying an image desired to be sold to the purchase server 21. That is, an image that the user wants to sell is output to the sale server 22.
[0832]
In step S2411, the sale server 22 acquires an image desired to be sold. That is, the image transmitted from the client computer 27 is acquired.
[0833]
In step S2422, the sale server 22 sets an appropriate price for the image desired to be sold. For example, the price may be set in advance by the user, may be set in the auction format on the network 1, or is an image in which a person is captured. For example, a method of setting depending on whether or not the person being imaged is a predetermined celebrity may be used.
[0834]
In steps S2413 and S2431, the billing processing unit 22a and the billing server 24 of the sale server 22 execute sale billing processing.
[0835]
Here, the sales billing process will be described with reference to the flowchart of FIG. Note that the actual sales billing process is executed by the sale server 22 and the billing server 24, but information necessary for various processes is also output from the client computer 27. Also explained.
[0836]
In step S2501, ID information for identifying a user (a user who requests the sale of an image) is transmitted to the sale server 22 via the network 1.
[0837]
In step S <b> 2511, the sale server 22 transmits the sale price and the ID for identifying the sale server 22 to the accounting server 24 based on the ID information transmitted from the client computer 27.
[0838]
In step S2521, the accounting server 24 sends the purchase amount to the financial server 25 of the customer account corresponding to the ID information with respect to the financial server 26 having the provider account based on the transmitted ID for identifying the sale server 22. Request a transfer to.
[0839]
In step S2531, the provider's financial server 26 transfers the amount corresponding to the sale amount from the provider's account to the customer's financial server 25 where the customer's account is opened.
[0840]
Now, the description returns to the flowchart of FIG.
[0841]
In step S2424, the sale server 22 notifies the client computer 27 that the sale has been completed. In step S2402, the client computer 27 receives a sale completion notification.
[0841]
The sale server 22 may store the image sold by the user in the sale server 21 itself, or may output the image to the storage server 18 for storage (accumulation). Further, when the price is set in the auction format as described above, it may be transmitted to the client computer 27 of the winning bidder.
[0843]
Next, the search server 23 will be described with reference to FIG.
[0844]
The search server 23 searches for an image captured on the camera terminal device 1 connected to the network 1 based on a search condition (image request signal) input from the client computer 27 or the like, and outputs a request image. To do. Search conditions include time, season, weather, region, place, or subject.
[0845]
The control unit 2161 of the search server 23 controls the overall operation of the search server 23. The database 2162 is provided with position data (camera terminal device 28) of each camera terminal device 28 corresponding to the camera ID of each camera terminal device 28 connected to the network 1 and recognized by the search server 23 itself. Data 2162b such as meteorological data and data of the subject being imaged are stored as a database. The contents of the database 2162 are acquired and updated from the camera terminal devices 28 via the network 1 by the control unit 2161 controlling the communication unit 2165 at predetermined time intervals.
[0846]
The storage unit 2163 stores an image acquired from the communication terminal 2165 from the camera terminal device 28 on the network 1 or stores information necessary for processing various images.
[0847]
The request information generation unit 2164 arranges search conditions input from the client computer 27 on the network 1 and generates conditions that can be actually searched on the database 2162. That is, for example, when a season is input as a search condition, the season can be specified by the position data of each camera terminal device 28 and the time information calculated by the time calculation unit 2166. Therefore, for example, when a search condition such as “spring” is input, the request information generation unit 2164 generates position data of latitude and longitude on the earth whose season is “spring” from the current time. The control unit 2161 controls the communication unit 2165 to read out the captured image of the camera terminal device 28 having the camera ID corresponding to the position data from the network 1, thereby acquiring an image corresponding to “spring”.
[0848]
The separation processing unit 2167 acquires an image for search included in the read image by separation processing. The separation processing unit 2167 has the same function as the separation processing unit 11.
[0849]
Next, a search service process for searching for an image based on a search condition input from the client computer 27, executed by the search server 23, will be described with reference to the flowchart of FIG.
[0850]
In step S2601, the client computer 27 outputs the search condition to the search server 23. In step S2611, the search server 23 receives the search condition through the communication unit 2165.
[0851]
In steps S2612 and S2631, the charging processing unit 23a and the charging server 24 of the search server 23 execute a charging process. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted. The billing process in the processes of steps S2612 and S2631 is a billing process related to a charge for executing a search.
[0852]
In step S2613, the search server 23 searches for an image corresponding to the search condition and calls an image corresponding to the corresponding image in step S2614. In step S2641, the camera terminal device 28 transmits the currently captured image to the search server 23.
[0853]
That is, for example, as shown in FIG. 160, it is assumed that client computers 27-1 to 27-5, search server 23, and camera terminal devices 28-1 to 28-5 are connected to the network 1. At this time, when the client computer 27-2 is operated by the user and transmits "human", "car", and "building" as search conditions in the process of step S2611, the search server 23 In step S2613, the database 2162 searches for “human”, “car”, and “building” subjects as search conditions. That is, in the case of FIG. 160, the search server 23 is configured such that the car 2172 has the camera terminal device 28-1 with camera ID = 1, the human 2183 has the camera terminal device 28-2 with camera ID = 2, and the building 2211 has the camera ID = 5 is searched for, and an image is acquired from each camera terminal device 28 in step S2614.
[0854]
In step S2515, the search server 23 determines whether the called image is separated, that is, whether an image (object) other than the desired condition is included.
[0855]
In the case of FIG. 160, the image transmitted from the camera terminal device 28-1 includes a cloud 2172 other than the search condition, and the image transmitted from the camera terminal device 28-2 includes other than the search condition. Since the house 2181 is included, the images corresponding to the search condition are not separated from these images, and the process proceeds to step S2616.
[0856]
In step S2616, the separation processing unit 2167 executes separation processing. The separation process is the same as the process of step S1013 in the flowchart of FIG. 117, and a description thereof will be omitted.
[0857]
In step S2617, the called images are combined and transmitted to the client computer 27. In step S2602, the client computer 27 acquires the image transmitted from the search server 23. In step S2603, the client computer 27 determines whether or not the received image is a desired image. As shown in FIG. 160, in the case of an image displayed on the display 27a-1, “human”, “car”, and “building” as search conditions are images as human 2182, car 2172, and building 2211. Therefore, in step S2604, the search server is notified that the image is the desired image.
[0858]
In step S2618, the search server 23 determines whether or not the notification transmitted from the client computer 27 is a desired image. In the case of FIG. 160, since the image is a desired image, the process proceeds to step S2619.
[0859]
In steps S2619 and S2632, the charging processing unit 23a and the charging server 24 of the search server 23 execute a charging process. The billing process is the same as in the case of the separation service in FIGS. 118 and 120, and the description thereof is omitted. The billing process in the processes of steps S2619 and S2632 is a billing process related to a fee for transmitting the searched image. In step S2515, if all the search condition images are included, the process in step S2616 is skipped.
[0860]
In step S2603, for example, although “house”, “cloud”, and “face” are specified as search conditions from the client computer 27-4, the image is displayed on the display 27a-4. In addition, when only the house 2181 and the cloud 2071 are displayed and the face 2201 is not displayed, the image is not a desired image. Therefore, the process proceeds to step S2605, and it is searched that the image is not a desired image. The data is transmitted to the server 23, and the process ends.
[0861]
At this time, the search server 23 is notified in step S2618 that the image is not a desired image, and thus the processing ends.
[0862]
In this case, the fee related to the search process is paid, but is not paid for the transmission of the searched image.
[0863]
Further, in the above search processing, an example of searching for an image being captured has been described. However, the position information, weather data, or subject data 2162a in the database 2162 is accumulated over time, and the past time You may make it search the image imaged by the camera terminal device 28, and memorize | stored in the memory | storage part 78. FIG.
[0864]
The camera terminal device 28 may be connected to the network 1 in a state where it can communicate wirelessly or by wire, not limited to the Internet.
[0865]
According to the above, it is possible to search for the image currently captured by the camera terminal devices 28-1 to 28-n on the network or by being input as a search condition. It becomes possible.
[0866]
As shown in FIGS. 2 and 3, a recording medium on which a program for performing signal processing according to the present invention is recorded is distributed to provide a program to a user separately from a computer. 61, 91 (including a flexible disk), optical disks 62, 92 (including a CD-ROM (Compact Disc-Read Only Memory), DVD (Digital Versatile Disc)), magneto-optical disks 63, 93 (MD (Mini-Disc)) (Including (trademark)), or ROMs 42 and 72 on which a program is provided that is provided to the user in a state of being preinstalled in a computer. Or a hard disk included in the storage units 48 and 78.
[0867]
In the present specification, the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but is not necessarily performed in chronological order. It also includes processes that are executed individually.
[0868]
Further, in this specification, the system represents the entire apparatus constituted by a plurality of apparatuses.
[0869]
【The invention's effect】
According to the first aspect of the present invention, the search request information of the user is input, and the pixel value is determined for each pixel and according to the amount of light constituting the temporally integrated image. An image composed of at least one image among a foreground component image composed of a foreground object component constituting a foreground object from which image data is separated and a background component image composed of a background object component constituting a background object. Stores and searches the stored image for the image corresponding to the input search request information, outputs the search result, and executes the billing process corresponding to the search result Then, a foreground component image consisting of foreground object components constituting the foreground object separated from the image data of the image is set to a model in which pixel values are expanded in the time direction, and the motion blur is adjusted using the model, A background component image comprising background object components constituting the background object is synthesized at a predetermined mixing ratio, a synthesized image is generated, and the generated synthesized image is stored. I tried to do it.
[0870]
According to the second aspect of the present invention, the first communication device inputs user search request information, transmits the search request information to the second communication device, and is transmitted from the second communication device. The amount of light that constitutes an image integrated for each pixel and temporally, when the second communication device receives the search request information transmitted from the first communication device. At least one of a foreground component image composed of a foreground object component constituting a foreground object and a background component image composed of a background object component constituting a background object. An image composed of images higher than the image is stored, an image corresponding to the received search request information is searched from the stored images, a search result is transmitted to the first communication device, and the search result is Perform the billing process Then, a foreground component image consisting of foreground object components constituting the foreground object separated from the image data of the image is set to a model in which pixel values are expanded in the time direction, and the motion blur is adjusted using the model, A background component image comprising background object components constituting the background object is synthesized at a predetermined mixing ratio, a synthesized image is generated, and the generated synthesized image is stored. I tried to do it.
[0873]
In any case, as a result, it is possible to search the network for an image obtained by separating, synthesizing, or correcting the image.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of an embodiment of an image processing system to which the present invention is applied.
FIG. 2 is a diagram illustrating a configuration of a separation processing server in FIG. 1;
FIG. 3 is a diagram illustrating a configuration of the camera terminal device of FIG. 1;
FIG. 4 is a diagram illustrating functions of the separation processing server in FIG. 1;
FIG. 5 is a diagram illustrating functions of the separation processing server in FIG. 1;
FIG. 6 is a diagram illustrating functions of the motion detection server in FIG. 1;
7 is a diagram showing functions of the motion detection server in FIG. 1; FIG.
FIG. 8 is a diagram showing functions of the area specifying server in FIG. 1;
FIG. 9 is a diagram showing functions of the area specifying server in FIG. 1;
10 is a diagram showing functions of the mixing ratio calculation server in FIG. 1. FIG.
FIG. 11 is a diagram illustrating functions of the mixing ratio calculation server in FIG. 1;
12 is a diagram showing functions of the foreground / background separation processing server in FIG. 1; FIG.
13 is a diagram showing functions of the foreground / background separation processing server in FIG. 1; FIG.
14 is a diagram showing functions of the motion blur adjustment server of FIG. 1. FIG.
FIG. 15 is a diagram illustrating functions of the motion blur adjustment server of FIG. 1;
FIG. 16 is a diagram illustrating functions of the encoding server in FIG. 1;
FIG. 17 is a diagram illustrating functions of the encoding server in FIG. 1;
FIG. 18 is a diagram showing functions of the storage server in FIG. 1;
FIG. 19 is a diagram illustrating functions of the storage server in FIG. 1;
FIG. 20 is a diagram illustrating functions of the composition server in FIG. 1;
FIG. 21 is a diagram illustrating functions of the synthesis server in FIG. 1;
FIG. 22 is a diagram illustrating functions of the correction server in FIG. 1;
FIG. 23 is a diagram illustrating functions of the correction server in FIG. 1;
FIG. 24 is a diagram showing functions of the purchase server of FIG. 1;
FIG. 25 is a diagram illustrating functions of the sale server in FIG. 1;
FIG. 26 is a diagram showing functions of the search server of FIG. 1;
FIG. 27 is a block diagram illustrating a separation processing server.
FIG. 28 is a diagram illustrating imaging by a sensor.
FIG. 29 is a diagram illustrating an arrangement of pixels.
FIG. 30 is a diagram illustrating the operation of a detection element.
FIG. 31 is a diagram illustrating an image obtained by imaging an object corresponding to a moving foreground and an object corresponding to a stationary background.
FIG. 32 is a diagram illustrating a background area, a foreground area, a mixed area, a covered background area, and an uncovered background area.
FIG. 33 is a model diagram in which pixel values of pixels arranged in a row adjacent to each other in an image obtained by capturing an object corresponding to a stationary foreground and an object corresponding to a stationary background are expanded in the time direction; It is.
FIG. 34 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 35 is a model diagram in which pixel values are developed in a time direction and a period corresponding to a shutter time is divided.
FIG. 36 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 37 is a diagram illustrating an example in which pixels in a foreground area, a background area, and a mixed area are extracted.
FIG. 38 is a diagram illustrating a correspondence between a pixel and a model in which pixel values are expanded in the time direction.
FIG. 39 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 40 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 41 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 42 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 43 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 44 is a flowchart illustrating processing for adjusting the amount of motion blur.
45 is a block diagram illustrating an example of a configuration of a region specifying unit 103. FIG.
FIG. 46 is a diagram illustrating an image when an object corresponding to the foreground is moving.
FIG. 47 is a model diagram in which pixel values are expanded in the time direction and a period corresponding to a shutter time is divided.
FIG. 48 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 49 is a model diagram in which pixel values are developed in a time direction and a period corresponding to a shutter time is divided.
FIG. 50 is a diagram for explaining region determination conditions;
FIG. 51 is a diagram illustrating an example of a result of specifying a region by the region specifying unit 103;
FIG. 52 is a diagram illustrating an example of a result of specifying a region by the region specifying unit 103;
FIG. 53 is a flowchart illustrating an area specifying process.
54 is a block diagram showing another example of the configuration of the area specifying unit 103. FIG.
FIG. 55 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 56 is a diagram illustrating an example of a background image.
57 is a block diagram showing a configuration of a binary object image extraction unit 302. FIG.
FIG. 58 is a diagram illustrating calculation of a correlation value.
FIG. 59 is a diagram illustrating calculation of a correlation value.
FIG. 60 is a diagram illustrating an example of a binary object image.
61 is a block diagram showing a configuration of a time change detection unit 303. FIG.
FIG. 62 is a diagram for explaining determination by an area determination unit 342;
FIG. 63 is a diagram illustrating an example of determination by the time change detection unit 303;
FIG. 64 is a flowchart for describing region specifying processing by the region determining unit 103;
FIG. 65 is a flowchart illustrating details of a region determination process.
66 is a block diagram showing still another configuration of the area specifying unit 103. FIG.
67 is a block diagram illustrating a configuration of a robust unit 361. FIG.
68 is a diagram for explaining motion compensation of a motion compensation unit 381. FIG.
69 is a diagram for explaining motion compensation of a motion compensation unit 381. FIG.
FIG. 70 is a flowchart illustrating an area specifying process.
FIG. 71 is a flowchart illustrating details of robust processing.
72 is a block diagram illustrating an example of a configuration of a mixture ratio calculation unit 104. FIG.
FIG. 73 is a diagram illustrating an example of an ideal mixing ratio α.
FIG. 74 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 75 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 76 is a diagram illustrating approximation using the correlation of foreground components.
FIG. 77 is a diagram for explaining the relationship between C, N, and P;
78 is a block diagram showing a configuration of an estimated mixture ratio processing unit 401. FIG.
FIG. 79 is a diagram illustrating an example of an estimated mixture ratio.
80 is a block diagram showing another configuration of the mixture ratio calculation unit 104. FIG.
FIG. 81 is a flowchart for describing processing for calculating a mixture ratio;
FIG. 82 is a flowchart illustrating processing for calculating an estimated mixture ratio.
FIG. 83 is a diagram illustrating a straight line approximating the mixture ratio α.
FIG. 84 is a diagram illustrating a plane that approximates the mixture ratio α.
FIG. 85 is a diagram for explaining the correspondence of pixels in a plurality of frames when calculating the mixture ratio α.
86 is a block diagram showing another configuration of the mixture ratio estimation processing unit 401. FIG.
FIG. 87 is a diagram illustrating an example of an estimated mixture ratio.
[Fig. 88] Fig. 88 is a flowchart describing a mixing ratio estimation process using a model corresponding to a covered background region.
89 is a block diagram illustrating an exemplary configuration of a foreground / background separation unit 105. FIG.
FIG. 90 is a diagram illustrating an input image, a foreground component image, and a background component image.
FIG. 91 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 92 is a model diagram in which pixel values are developed in the time direction and a period corresponding to a shutter time is divided.
FIG. 93 is a model diagram in which pixel values are developed in a time direction and a period corresponding to a shutter time is divided.
94 is a block diagram illustrating an example of the configuration of a separation unit 601. FIG.
FIG. 95 is a diagram illustrating an example of separated foreground component images and background component images.
FIG. 96 is a flowchart for describing foreground and background separation processing;
FIG. 97 is a block diagram illustrating an example of a configuration of a motion blur adjusting unit.
Fig. 98 is a diagram for describing a processing unit.
FIG. 99 is a model diagram in which pixel values of a foreground component image are expanded in the time direction and a period corresponding to a shutter time is divided.
FIG. 100 is a model diagram in which pixel values of a foreground component image are developed in a time direction and a period corresponding to a shutter time is divided.
FIG. 101 is a model diagram in which pixel values of a foreground component image are developed in a time direction and a period corresponding to a shutter time is divided.
FIG. 102 is a model diagram in which pixel values of a foreground component image are developed in the time direction and a period corresponding to a shutter time is divided.
103 is a diagram illustrating another configuration of the motion blur adjusting unit 106. FIG.
FIG. 104 is a flowchart for describing processing for adjusting the amount of motion blur included in the foreground component image by the motion blur adjustment unit.
105 is a block diagram showing another example of the configuration of the motion blur adjusting unit 106. FIG.
FIG. 106 is a diagram illustrating an example of a model that designates correspondence between pixel values and foreground components.
Fig. 107 is a diagram illustrating calculation of foreground components.
FIG. 108 is a diagram illustrating calculation of foreground components.
FIG. 109 is a flowchart for describing foreground motion blur removal processing;
FIG. 110 is a block diagram illustrating another configuration of functions of the separation processing server.
111 is a diagram illustrating the configuration of a combining unit 1001. FIG.
FIG. 112 is a block diagram illustrating still another configuration of the functions of the separation processing server.
113 is a block diagram showing a configuration of a mixture ratio calculation unit 1101. FIG.
FIG. 114 is a block diagram illustrating a configuration of a foreground / background separation unit 1102;
FIG. 115 is a block diagram showing still another configuration of the function of the separation processing server.
116 is a diagram illustrating a configuration of a combining unit 1201. FIG.
FIG. 117 is a flowchart illustrating a separation service.
FIG. 118 is a flowchart for describing accounting processing;
FIG. 119 is a diagram illustrating accounting processing.
FIG. 120 is a flowchart for explaining another example of billing processing;
FIG. 121 is a flowchart illustrating a motion detection service.
FIG. 122 is a flowchart for explaining an area specifying service;
FIG. 123 is a flowchart illustrating a mixture ratio calculation service.
FIG. 124 is a flowchart illustrating a foreground / background separation service.
FIG. 125 is a flowchart illustrating a motion blur adjustment service.
Fig. 126 is a diagram for describing an encoding server.
FIG. 127 is a flowchart illustrating an encoding service.
Fig. 128 is a diagram for describing compression capability at the time of compression by encoding processing.
Fig. 129 is a diagram for describing another example of the encoding server.
FIG. 130 is a flowchart illustrating a composition service.
FIG. 131 is a diagram for explaining an encryption motion blur adding unit.
FIG. 132 is a diagram for explaining an encryption motion blur removal unit.
FIG. 133 is a diagram for explaining processing for adding motion blur for encryption.
FIG. 134 is a diagram for explaining processing for adding motion blur for encryption.
[Fig. 135] Fig. 135 is a diagram for describing processing for adding motion blur for encryption.
136 is a flowchart for describing encryption processing; FIG.
FIG. 137 is a diagram for explaining processing for adding motion blur for encryption.
FIG. 138 is a diagram for explaining processing for adding motion blur for encryption.
FIG. 139 is a diagram for explaining processing for adding motion blur for encryption.
Fig. 140 is a diagram illustrating a process of adding motion blur for encryption.
FIG. 141 is a diagram illustrating processing for adding motion blur for encryption.
Fig. 142 is a diagram illustrating a process of adding motion blur for encryption.
FIG. 143 is a diagram describing processing for adding motion blur for encryption.
Fig. 144 is a diagram for describing processing for adding motion blur for encryption.
Fig. 145 is a diagram describing a process of adding motion blur for encryption.
Fig. 146 is a diagram describing a process of adding motion blur for encryption.
FIG. 147 is a diagram illustrating processing for adding cryptographic motion blur.
FIG. 148 is a diagram for describing processing for adding motion blur for encryption.
Fig. 149 is a diagram for describing processing for adding cryptographic motion blur.
Fig. 150 is a diagram for describing processing for adding motion blur for encryption.
FIG. 151 is a flowchart illustrating an encryption service.
FIG. 152 is a diagram illustrating a correction server.
FIG. 153 is a diagram illustrating correction processing.
FIG. 154 is a flowchart illustrating a correction service.
FIG. 155 is a flowchart for explaining a purchase service.
FIG. 156 is a flowchart for explaining a sale service;
FIG. 157 is a flowchart for explaining sale charge processing;
Fig. 158 is a diagram for explaining a search server;
FIG. 159 is a flowchart illustrating a search service.
Fig. 160 is a diagram for explaining a search service.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 11 Separation processing server, 12 Motion detection server, 13 Area specification server, 14 Mixing ratio calculation server, 15 Foreground / background separation server, 16 Motion blur adjustment server, 17 Encoding server, 18 Storage server, 19 Composition server, 20 Correction server, 21 purchase server, 22 sale server, 23 search server, 24 billing server, 25, 26 financial server, 27 client computer, 28 camera terminal device, 41 CPU, 42 ROM, 43 RAM, 46 input unit, 47 output unit, 48 storage Unit, 49 communication unit, 71 CPU, 72 ROM, 73 RAM, 76 input unit, 76a sensor, 76b GPS, 77 output unit, 78 storage unit, 79 communication unit, 91 magnetic disk, 92 optical disk, 93 magneto-optical disk, 94 Semiconductor memory, 101 object extraction unit, 102 motion detection unit, 03 area identification unit, 104 mixing ratio calculation unit, 105 foreground / background separation unit, 106 motion blur adjustment unit, 107 selection unit, 201 frame memory, 202-1 to 202-4 static motion determination unit, 203-1 to 203-3 Area determination unit, 204 determination flag storage frame memory, 205 composition unit, 206 determination flag storage frame memory, 301 background image generation unit, 302 binary object image extraction unit, 303 time change detection unit, 321 correlation value calculation unit, 322 Threshold processing unit, 341 frame memory, 342 region determination unit, 361 robust unit, 381 motion compensation unit, 382 switch, 383-1 to 383-N frame memory, 384-1 to 384-N weighting unit, 385 accumulation unit 401 estimated mixture ratio processing unit 402 estimated mixture ratio processing unit 403 Mixing ratio determining unit, 421 frame memory, 422 frame memory, 423 mixing ratio calculating unit, 441 selecting unit, 442 estimated mixing ratio processing unit, 443 estimated mixing ratio processing unit, 444 selecting unit, 501 delay circuit, 502 adding unit, 503 arithmetic unit, 601 separation unit, 602 switch, 603 synthesis unit, 604 switch, 605 synthesis unit, 621 frame memory, 622 separation processing block, 623 frame memory, 631 uncovered region processing unit, 632 covered region processing unit, 633 composition Unit, 634 synthesis unit, 801 processing unit determination unit, 802 modeling unit, 803 equation generation unit, 804 addition unit, 805 calculation unit, 806 motion blur addition unit, 807 selection unit, 821 selection unit, 901 processing unit determination unit , 902 modeling part, 903 equation Generation unit, 904 calculation unit, 905 correction unit, 906 motion blur addition unit, 907 selection unit, 1001 synthesis unit, 1021 background component generation unit, 1022 mixed region image synthesis unit, 1023 image synthesis unit, 1101 mixing ratio calculation unit, 1102 Foreground / background separation unit, 1121 selection unit, 1201 synthesis unit, 1221 selection unit, 2001 encoding unit, 2002 separation processing unit, 2021 encryption motion blur addition unit, 2031 input information processing unit, 2032 imaging unit, 2033 motion blur addition , 2041 motion blur removal unit for encryption, 2051 input information processing unit, 2052 motion blur removal unit, 2053 signal conversion unit, 2101 motion blur adjustment unit, 2102 synthesis unit, 2161 control unit, 2162 database, 2163 storage unit, 2164 request Information generation unit, 2165 communication unit, 2166 hours Calculation unit, 2167 separation processing unit

Claims (13)

使用者の検索要求情報を入力する検索要求情報入力手段と、
画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像を記憶する記憶手段と、
前記記憶手段に記憶された前記画像のうち、前記検索要求情報入力手段により入力された前記検索要求情報に対応する画像を検索する検索手段と、
前記検索手段の検索結果を出力する出力手段と、
前記検索結果に対応して、課金処理を実行する課金手段と
前記画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、前記画素値を時間方向に展開したモデルを設定し、前記モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成する合成画像生成手段とを備え、
前記記憶手段は、前記合成画像生成手段により生成された前記合成画像を記憶する
ことを特徴とする通信装置。
Search request information input means for inputting user search request information;
A foreground component image comprising a foreground object component constituting a foreground object from which image data comprising pixel values determined according to the amount of light constituting an image integrated for each pixel and time is separated; and Storage means for storing an image composed of at least one image among background component images composed of background object components constituting the background object;
Search means for searching for an image corresponding to the search request information input by the search request information input means among the images stored in the storage means;
Output means for outputting a search result of the search means;
Billing means for performing billing processing in response to the search result ;
A foreground component image composed of foreground object components constituting a foreground object separated from the image data of the image is set as a model in which the pixel values are expanded in the time direction, and motion blur is adjusted using the model. A background component image comprising background object components constituting the background object, and a composite image generating means for generating a composite image by combining the background component image with a predetermined mixing ratio,
The storage means stores the composite image generated by the composite image generation means.
Communication and wherein the.
前記記憶手段は、各々に前記画像を撮像する撮像装置が設けられ、前記撮像装置により撮像される画像を所定の時間間隔で更新して、格納している、無線、または、有線で通信可能な、複数の画像格納部により構成される
ことを特徴とする請求項1に記載の通信装置。
Each of the storage means is provided with an imaging device that captures the image, and the image captured by the imaging device is updated and stored at a predetermined time interval, and can be communicated wirelessly or wiredly The communication apparatus according to claim 1, comprising a plurality of image storage units.
前記検索要求情報は、前記前景オブジェクトを指定する情報を含み、
前記記憶手段は、前記複数の画像格納部に設けられた前記撮像装置を識別する識別子と、対応する前記画像格納部に格納されている前記画像の前記オブジェクトとの関係を示すデータベースをさらに備え、
前記検索手段は、前記データベースを参照して、前記記憶手段に記憶された前記画像のうち、前記検索要求情報入力手段により入力された前記前景オブジェクトを指定する情報に対応する前記画像を検索する
ことを特徴とする請求項2に記載の通信装置。
The search request information includes information specifying the foreground object,
The storage means further includes a database indicating a relationship between an identifier for identifying the imaging device provided in the plurality of image storage units and the object of the image stored in the corresponding image storage unit,
The search means refers to the database to search for the image corresponding to information specifying the foreground object input by the search request information input means from among the images stored in the storage means. The communication device according to claim 2.
前記画像の画像データを、前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像に分離する分離手段をさらに備え、
前記記憶手段は、前記分離手段により分離された前記前景成分画像と前記背景成分画像を記憶する
ことを特徴とする請求項1に記載の通信装置。
Separating means for separating the image data of the image into a foreground component image comprising a foreground object component constituting a foreground object and a background component image comprising a background object component constituting a background object,
The communication apparatus according to claim 1, wherein the storage unit stores the foreground component image and the background component image separated by the separation unit.
前記画像の画像データを、前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像に分離する分離手段を備え
前記合成画像生成手段は、前記分離手段により分離された前記前景成分画像を、前記画素値を時間方向に展開したモデルを設定し、前記モデルを用いて、前記動きボケを調整して、前記背景成分画像所定の混合の比率で合成し、合成画像を生成する、
ことを特徴とする請求項1に記載の通信装置。
Separating means for separating the image data of the image into a foreground component image comprising a foreground object component constituting a foreground object and a background component image comprising a background object component constituting a background object;
The synthesized image generating means sets a model in which the pixel values are expanded in the time direction for the foreground component image separated by the separating means , adjusts the motion blur using the model, and adjusts the background. synthesized at a ratio of component image and a predetermined mixing to generate a composite image,
The communication apparatus according to claim 1, characterized in that.
前記出力手段は、前記検索結果として、前記検索要求情報に対応する画像の有無、または、前記検索要求情報に対応する画像の有無と共に検索された画像を出力し、
前記課金手段は、前記出力手段により出力された前記検索結果に基づいて、課金処理を実行する
ことを特徴とする請求項1に記載の通信装置。
The output means outputs, as the search result, the presence or absence of an image corresponding to the search request information, or an image searched together with the presence or absence of an image corresponding to the search request information,
The communication apparatus according to claim 1, wherein the charging unit performs a charging process based on the search result output by the output unit.
前記課金手段は、前記検索要求情報に応じて前記使用者の識別子、前記通信装置の識別子、および、前記検索要求情報に対応する金額情報を含む課金情報を生成し、前記課金情報に基づいて、前記使用者の金融口座に対して、前記出力手段により出力された前記検索結果に基づいて、課金処理を実行する
ことを特徴とする請求項に記載の通信装置。
The charging unit generates charging information including the identifier of the user, the identifier of the communication device, and amount information corresponding to the search request information according to the search request information, and based on the charging information, The communication apparatus according to claim 6 , wherein billing processing is executed for the financial account of the user based on the search result output by the output unit.
前記課金処理に使用される使用者毎のポイントを記憶するポイント記憶手段をさらに備え、
前記課金手段は、前記検索要求情報に応じて前記使用者の識別子、前記通信装置の識別子、および、前記検索結果の出力に対応する金額情報を含む課金情報を生成し、前記ポイント記憶手段に記憶されたポイント数を前記金額情報に対応する分だけ減算することにより課金処理を実行する
ことを特徴とする請求項に記載の通信装置。
Point storage means for storing points for each user used in the accounting process;
The billing unit generates billing information including the identifier of the user, the identifier of the communication device, and the amount information corresponding to the output of the search result according to the search request information, and stores the billing information in the point storage unit The communication apparatus according to claim 7 , wherein the billing process is executed by subtracting the number of points obtained by an amount corresponding to the amount information.
出力手段は、前記課金手段により課金処理が完了した後、課金処理が完了した前記使用者の通信装置に前記検索結果を出力する
ことを特徴とする請求項に記載の通信装置。
The communication device according to claim 6 , wherein the output unit outputs the search result to the communication device of the user who has completed the billing process after the billing process is completed by the billing unit.
使用者の検索要求情報を入力する検索要求情報入力ステップと、
画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像を記憶する記憶ステップと、
前記記憶ステップの処理で記憶された前記画像のうち、前記検索要求情報入力ステップの処理で入力された前記検索要求情報に対応する画像を検索する検索ステップと、
前記検索ステップの処理での検索結果を出力する出力ステップと、
前記検索結果に対応して、課金処理を実行する課金ステップと
前記画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、前記画素値を時間方向に展開したモデルを設定し、前記モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成する合成画像生成ステップとを含み、
前記記憶ステップの処理は、前記合成画像生成ステップの処理により生成された前記合成画像を記憶する
ことを特徴とする通信方法。
A search request information input step for inputting user search request information;
A foreground component image comprising a foreground object component constituting a foreground object from which image data comprising pixel values determined according to the amount of light constituting an image integrated for each pixel and time is separated; and A storage step of storing an image composed of at least one image among background component images composed of background object components constituting the background object;
A search step for searching for an image corresponding to the search request information input in the search request information input step among the images stored in the storage step;
An output step for outputting a search result in the processing of the search step;
A billing step for executing billing processing in response to the search result ;
A foreground component image composed of foreground object components constituting a foreground object separated from the image data of the image is set as a model in which the pixel values are expanded in the time direction, and motion blur is adjusted using the model. A background component image composed of background object components constituting the background object, and a composite image generation step for generating a composite image by combining the background component image with a predetermined mixing ratio,
The process of the storage step stores the composite image generated by the process of the composite image generation step.
Communication method characterized by.
使用者の検索要求情報の入力を制御する検索要求情報入力制御ステップと、
画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像の記憶を制御する記憶制御ステップと、
前記記憶制御ステップの処理で記憶が制御された前記画像のうち、前記検索要求情報入力制御ステップの処理で入力が制御された前記検索要求情報に対応する画像の検索を制御する検索制御ステップと、
前記検索制御ステップの処理での検索結果の出力を制御する出力制御ステップと、
前記検索結果に対応して、課金処理の実行を制御する課金制御ステップと
前記画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、前記画素値を時間方向に展開したモデルを設定し、前記モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成する合成画像生成ステップとを含み、
前記記憶ステップの処理は、前記合成画像生成ステップの処理により生成された前記合成画像を記憶する
ことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
A search request information input control step for controlling input of user search request information;
A foreground component image comprising a foreground object component constituting a foreground object from which image data comprising pixel values determined according to the amount of light constituting an image integrated for each pixel and time is separated; and A storage control step for controlling storage of an image composed of at least one image among background component images composed of background object components constituting the background object;
A search control step for controlling a search for an image corresponding to the search request information whose input is controlled by the processing of the search request information input control step among the images whose storage is controlled by the processing of the storage control step;
An output control step for controlling the output of search results in the processing of the search control step;
A charging control step for controlling the execution of the charging process in response to the search result ;
A foreground component image composed of foreground object components constituting a foreground object separated from the image data of the image is set as a model in which the pixel values are expanded in the time direction, and motion blur is adjusted using the model. A background component image composed of background object components constituting the background object, and a composite image generation step for generating a composite image by combining the background component image with a predetermined mixing ratio,
The process of the storage step stores the composite image generated by the process of the composite image generation step.
Recording medium having a computer is recorded readable program characterized by.
使用者の検索要求情報の入力を制御する検索要求情報入力制御ステップと、
画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像の記憶を制御する記憶制御ステップと、
前記記憶制御ステップの処理で記憶が制御された前記画像のうち、前記検索要求情報入力制御ステップの処理で入力が制御された前記検索要求情報に対応する画像の検索を制御する検索制御ステップと、
前記検索制御ステップの処理での検索結果の出力を制御する出力制御ステップと、
前記検索結果に対応して、課金処理の実行を制御する課金制御ステップと
前記画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、前記画素値を時間方向に展開したモデルを設定し、前記モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像の生成を制御する合成画像生成制御ステップとを含み、
前記記憶制御ステップの処理は、前記合成画像生成ステップの処理により生成された前記合成画像を記憶する
プログラム。
A search request information input control step for controlling input of user search request information;
A foreground component image comprising a foreground object component constituting a foreground object from which image data comprising pixel values determined according to the amount of light constituting an image integrated for each pixel and time is separated; and A storage control step for controlling storage of an image composed of at least one image among background component images composed of background object components constituting the background object;
A search control step for controlling a search for an image corresponding to the search request information whose input is controlled by the processing of the search request information input control step among the images whose storage is controlled by the processing of the storage control step;
An output control step for controlling the output of search results in the processing of the search control step;
A charging control step for controlling the execution of the charging process in response to the search result ;
A foreground component image composed of foreground object components constituting a foreground object separated from the image data of the image is set as a model in which the pixel values are expanded in the time direction, and motion blur is adjusted using the model. A background component image comprising background object components constituting the background object, and a composite image generation control step for controlling the generation of the composite image by compositing at a predetermined mixture ratio,
The process of the storage control step stores the composite image generated by the process of the composite image generation step.
program.
第1の通信装置と第2の通信装置からなる通信システムにおいて、
第1の通信装置は、
使用者の検索要求情報を入力する検索要求情報入力手段と、
前記検索要求情報を前記第2の通信装置に送信する検索要求情報送信手段と、
前記第2の通信装置より送信されてくる検索結果を受信する検索結果受信手段と
を備え、
前記第2の通信装置は、
前記第1の通信装置より送信されてくる検索要求情報を受信する検索要求情報受信手段と、
画素毎に、かつ、時間的に積分された画像を構成する光の量に応じて決定される画素値からなる画像データが分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像、および、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像のうち、少なくとも1画像以上の画像により構成される画像を記憶する記憶手段と、
前記記憶手段に記憶された前記画像のうち、前記検索要求情報受信手段により受信された前記検索要求情報に対応する画像を検索する検索手段と、
前記検索手段の検索結果を前記第1の通信装置に送信する検索結果送信手段と、
前記検索結果に対応して、課金処理を実行する課金手段と
前記画像の画像データより分離された前景オブジェクトを構成する前景オブジェクト成分からなる前景成分画像を、前記画素値を時間方向に展開したモデルを設定し、前記モデルを用いて、動きボケを調整して、背景オブジェクトを構成する背景オブジェクト成分からなる背景成分画像と、所定の混合の比率で合成し、合成画像を生成する合成画像生成手段とを備え、
前記記憶手段は、前記合成画像生成手段により生成された前記合成画像を記憶する
ことを特徴とする通信システム。
In a communication system comprising a first communication device and a second communication device,
The first communication device is
Search request information input means for inputting user search request information;
Search request information transmitting means for transmitting the search request information to the second communication device;
Search result receiving means for receiving a search result transmitted from the second communication device;
The second communication device is:
Search request information receiving means for receiving search request information transmitted from the first communication device;
A foreground component image comprising a foreground object component constituting a foreground object from which image data comprising pixel values determined according to the amount of light constituting an image integrated for each pixel and time is separated; and Storage means for storing an image composed of at least one image among background component images composed of background object components constituting the background object;
Search means for searching for an image corresponding to the search request information received by the search request information receiving means among the images stored in the storage means;
Search result transmission means for transmitting the search result of the search means to the first communication device;
Billing means for performing billing processing in response to the search result ;
A foreground component image composed of foreground object components constituting a foreground object separated from the image data of the image is set as a model in which the pixel values are expanded in the time direction, and motion blur is adjusted using the model. A background component image comprising background object components constituting the background object, and a composite image generating means for generating a composite image by combining the background component image with a predetermined mixing ratio,
The communication means, wherein the storage means stores the composite image generated by the composite image generation means .
JP2001195594A 2001-06-27 2001-06-27 COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM Expired - Fee Related JP4701547B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001195594A JP4701547B2 (en) 2001-06-27 2001-06-27 COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001195594A JP4701547B2 (en) 2001-06-27 2001-06-27 COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM

Publications (3)

Publication Number Publication Date
JP2003016069A JP2003016069A (en) 2003-01-17
JP2003016069A5 JP2003016069A5 (en) 2008-04-24
JP4701547B2 true JP4701547B2 (en) 2011-06-15

Family

ID=19033543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001195594A Expired - Fee Related JP4701547B2 (en) 2001-06-27 2001-06-27 COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM

Country Status (1)

Country Link
JP (1) JP4701547B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4812108B2 (en) * 2006-12-18 2011-11-09 キヤノン株式会社 COMMUNICATION DEVICE AND ITS CONTROL METHOD

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09245091A (en) * 1996-03-12 1997-09-19 Nippon Telegr & Teleph Corp <Ntt> Method and system for setting divisional charging of video material
JPH11224285A (en) * 1997-12-05 1999-08-17 Tokyo Electron Ltd Method and system for contents protection, contents processing system, management system, and record medium
JP2000059758A (en) * 1998-08-05 2000-02-25 Matsushita Electric Ind Co Ltd Monitoring camera apparatus, monitoring device and remote monitor system using them
JP2000190669A (en) * 1998-12-28 2000-07-11 Orient Corp Apparatus and method for supporting card formation and storage medium for recording software for supporting card formation
JP2000278633A (en) * 1999-03-26 2000-10-06 Victor Co Of Japan Ltd Digital video recorder, digital video recording and reproducing system and digital video recording method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09245091A (en) * 1996-03-12 1997-09-19 Nippon Telegr & Teleph Corp <Ntt> Method and system for setting divisional charging of video material
JPH11224285A (en) * 1997-12-05 1999-08-17 Tokyo Electron Ltd Method and system for contents protection, contents processing system, management system, and record medium
JP2000059758A (en) * 1998-08-05 2000-02-25 Matsushita Electric Ind Co Ltd Monitoring camera apparatus, monitoring device and remote monitor system using them
JP2000190669A (en) * 1998-12-28 2000-07-11 Orient Corp Apparatus and method for supporting card formation and storage medium for recording software for supporting card formation
JP2000278633A (en) * 1999-03-26 2000-10-06 Victor Co Of Japan Ltd Digital video recorder, digital video recording and reproducing system and digital video recording method

Also Published As

Publication number Publication date
JP2003016069A (en) 2003-01-17

Similar Documents

Publication Publication Date Title
JP4596227B2 (en) COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM
JP4596226B2 (en) Image processing apparatus and method, recording medium, and program
JP4729812B2 (en) Image processing apparatus and method, recording medium, and program
JP4596202B2 (en) Image processing apparatus and method, and recording medium
JP4596220B2 (en) Image processing apparatus and method, recording medium, and program
JP4106874B2 (en) Image processing apparatus and method, and recording medium
JP2003006648A (en) Device and method for processing image, recording medium and program
JP2002245463A (en) Device and method for image processing, recording medium, and program
JP4596219B2 (en) Image processing apparatus and method, recording medium, and program
JP4596223B2 (en) Image processing apparatus and method, recording medium, and program
JP4840630B2 (en) Image processing apparatus and method, recording medium, and program
JP4811421B2 (en) Image processing apparatus and method, recording medium, and program
JP4701547B2 (en) COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM
JP4650655B2 (en) COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM
JP4650654B2 (en) COMMUNICATION DEVICE AND METHOD, COMMUNICATION SYSTEM, RECORDING MEDIUM, AND PROGRAM
JP2003018578A (en) Communication equipment and method therefor, communication system, recording medium and program
JP2003016457A (en) Device and method for communications, communication system, recording medium, and program
JP4150949B2 (en) Image processing apparatus and method, recording medium, and program
JP2002366949A (en) Device and method for processing image, recording medium and program
JP4596225B2 (en) Image processing apparatus and method, recording medium, and program
EP1403820A1 (en) Image processing apparatus and method, and image pickup apparatus

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080311

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110107

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110221

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees