JP2017017448A - 画像処理装置、画像処理方法 - Google Patents
画像処理装置、画像処理方法 Download PDFInfo
- Publication number
- JP2017017448A JP2017017448A JP2015130329A JP2015130329A JP2017017448A JP 2017017448 A JP2017017448 A JP 2017017448A JP 2015130329 A JP2015130329 A JP 2015130329A JP 2015130329 A JP2015130329 A JP 2015130329A JP 2017017448 A JP2017017448 A JP 2017017448A
- Authority
- JP
- Japan
- Prior art keywords
- image
- frame
- unit
- frame rate
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】 フレームレートが異なる画像ストリームから、合成するフレームの撮像タイミングを最小にした合成画像ストリームを生成するための技術を提供すること。【解決手段】 第1のフレームレートで撮影された第1の画像ストリームのうち、出力フレームレートに基づいて決まるフレームの画像を取得する(第1の取得)。第1のフレームレートとは異なる第2のフレームレートで撮影された第2の画像ストリームのうち、出力フレームレートに基づいて決まるフレームの画像を取得する(第2の取得)。第1の取得で取得したそれぞれのフレームの画像と第2の取得で取得したそれぞれのフレームの画像とを合成して、出力フレームレートの画像ストリームを生成する。【選択図】 図1
Description
本発明は、画像ストリームを合成する技術に関するものである。
複数の撮像装置で撮像した画像ストリームデータを、所定のフレームレートに変換した後、一つの合成画像ストリームに合成する技術が、例えば特許文献1にて提案されている。
AR技術のように、撮像装置を用いて取得した画像からマーカ等の特定の画像を検出し、追加の画像情報を重畳するような用途においては、マーカ検出用の撮像装置には、フレーム内の撮像タイミングが同じになるグローバルシャッタ方式の撮像装置が適する。なお、ARとはAugmented Realityの略である。しかし、この種の撮像装置はフレームレートを上げるのが難しい。また、表示装置で確認する画像の撮像装置には、安価で高画質、高フレームレートを得られるローリングシャッタ方式の撮像装置が適する。
異なるフレームレートの撮像装置で撮像した画像を、所定のフレームレートに変換した後に一つのフレームに合成すると、合成したフレームの撮像タイミングがそれぞれ異なってしまうことから種々の不都合を発生させる。
例えばグローバルシャッタ方式の撮像装置で撮像したマーカ画像を元に、ローリングシャッタ方式の撮像装置で撮像した画像に追加の画像情報を重畳すると、各撮像装置の撮像タイミングが大きく異なる場合、画像の重畳位置がずれるといった不具合が発生する。
本発明はこのような問題に鑑みてなされたものであり、フレームレートが異なる画像ストリームから、合成するフレームの撮像タイミングを最小にした合成画像ストリームを生成するための技術を提供する。
本発明の一様態は、第1のフレームレートで撮影された第1の画像ストリームのうち、出力フレームレートに基づいて決まるフレームの画像を取得する第1の取得手段と、前記第1のフレームレートとは異なる第2のフレームレートで撮影された第2の画像ストリームのうち、前記出力フレームレートに基づいて決まるフレームの画像を取得する第2の取得手段と、前記第1の取得手段が取得したそれぞれのフレームの画像と前記第2の取得手段が取得したそれぞれのフレームの画像とを合成して、前記出力フレームレートの画像ストリームを生成する生成手段とを備えることを特徴とする。
本発明の構成によれば、フレームレートが異なる画像ストリームから、合成するフレームの撮像タイミングを最小にした合成画像ストリームを生成することができる。
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施例の1つである。
[第1の実施形態]
本実施形態では、次のような構成を有する画像処理装置の一例について説明する。即ち、この画像処理装置は、第1のフレームレートで撮影された第1の画像ストリームのうち、出力フレームレートに基づいて決まるフレームの画像を取得する(第1の取得)。更にこの画像処理装置は、該第1のフレームレートとは異なる第2のフレームレートで撮影された第2の画像ストリームのうち、上記の出力フレームレートに基づいて決まるフレームの画像を取得する(第2の取得)。そして、この画像処理装置は、第1の取得で取得したそれぞれのフレームの画像と第2の取得で取得したそれぞれのフレームの画像とを合成して、上記の出力フレームレートの画像ストリームを生成する。
本実施形態では、次のような構成を有する画像処理装置の一例について説明する。即ち、この画像処理装置は、第1のフレームレートで撮影された第1の画像ストリームのうち、出力フレームレートに基づいて決まるフレームの画像を取得する(第1の取得)。更にこの画像処理装置は、該第1のフレームレートとは異なる第2のフレームレートで撮影された第2の画像ストリームのうち、上記の出力フレームレートに基づいて決まるフレームの画像を取得する(第2の取得)。そして、この画像処理装置は、第1の取得で取得したそれぞれのフレームの画像と第2の取得で取得したそれぞれのフレームの画像とを合成して、上記の出力フレームレートの画像ストリームを生成する。
先ず、本実施形態に係るシステムの機能構成例について、図1(a)のブロック図を用いて説明する。なお、図1(a)に示した構成はあくまでも一例に過ぎず、適宜変更/変形が可能である。
第一の撮像部101は、ローリングシャッタ方式のCMOSセンサ等の撮像デバイスであり、第一のフレームレートF1(フレーム/秒=fps)で撮像した第一の画像ストリーム103を出力する。以下では、第一の画像ストリーム103中の各フレームの画像データをフレームデータMと呼称する。
第二の撮像部102は、グローバルシャッタ方式のCMOSセンサ等の撮像デバイスであり、第二のフレームレートF2(フレーム/秒=fps)で撮像した第二の画像ストリーム104を出力する。以下では、第二の画像ストリーム104中の各フレームの画像データをフレームデータSと呼称する。なお、F2≠F1である。
合成部105は、後述する合成処理により、第一の画像ストリーム103と第二の画像ストリーム104とに基づく第三の画像ストリーム106を生成する。なお、第三の画像ストリーム106のフレームレートはF3である。
送信機107は、例えば無線や有線で通信を行なう通信機であり、合成部105が生成した第三の画像ストリーム106を出力する。本実施形態では、送信機107の送信先は、後述する受信機108であるものとする。もちろん、システムの構成によっては、送信機107の送信先は、受信機108に限るものではなく、例えば、他の機器であっても構わない。
このように、第一の画像ストリーム103と第二の画像ストリーム104とを個別に送信するのではなく、それぞれを合成した1つの第三の画像ストリーム106を送信することで、送信機及び受信機を1つとすることができる。
受信機108は、送信機107によって送信された第三の画像ストリーム106を受信し、該受信した第三の画像ストリーム106を後段の分離部109に対して送出する。
分離部109は、第三の画像ストリーム106から、第一の撮像部101によって撮像されたフレームデータMの集合である第一の画像ストリーム110を取り出し、該取り出した第一の画像ストリーム110を、後段の画像重畳部113に対して送出する。また分離部109は、第三の画像ストリーム106から、第二の撮像部102によって撮像されたフレームデータSの集合である第二の画像ストリーム111を取り出し、該取り出した第二の画像ストリーム111を後段の重畳画像生成部112に対して送出する。
重畳画像生成部112は、第一の画像ストリーム110に重畳する画像情報(重畳画像)116を、第二の画像ストリーム111を用いて生成する。例えば、第二の画像ストリーム111が、現実空間中の自然特徴やマーカ等の指標を含む画像を撮像した画像ストリームである場合、重畳画像生成部112は、該第二の画像ストリーム111から指標を検出する。そして重畳画像生成部112は、該検出した指標を用いて第一の撮像部101や第二の撮像部102といった視点の位置姿勢を算出し、該視点から見た仮想物体の画像を、重畳画像116として生成する。もちろん、重畳画像116は、文字列等の非画像であっても構わない。
画像重畳部113は、第一の画像ストリーム110上に、重畳画像116を重畳した画像ストリームを生成し、該生成した画像ストリームを、表示部114に対して送出する。表示部114は、複数人で共有して画像や文字を閲覧するための据え置き型のモニタ装置であっても構わないし、HMD(ヘッドマウントディスプレイ)等の頭部装着型表示装置であっても構わないし、ハンドヘルド型の表示装置であっても構わない。また、表示部114は、スマートフォンなどの携帯端末装置であっても構わない。
第一の画像ストリーム103中の各フレームの撮像タイミング、第二の画像ストリーム104中の各フレームの撮像タイミング、について、図1(b)のタイミングチャートを用いて説明する。図1(b)には、時刻Time=0〜Tの間に、第一の画像ストリーム103は10フレーム(M1〜M10)、第二の画像ストリーム104は9フレーム(S1〜S9)撮像されている例が示されている。第一の画像ストリーム103及び第二の画像ストリーム104の各フレームの撮像タイミングは矢印120で示されている。図1(b)から、第一の画像ストリーム103のフレームレートと第二の画像ストリーム104のフレームレートとは異なるために、第一の画像ストリーム103と第二の画像ストリーム104との間で各フレームの撮像タイミングにはずれが生じることが分かる。本実施形態では、第一の画像ストリーム103及び第二の画像ストリーム104のそれぞれからフレームレートF3に基づいて選択したフレームデータMとフレームデータSとを含む第三の画像ストリーム106を生成して出力する。なお、以降の説明において「時刻」とは、適当なタイミング(例えばシステムの起動開始時、合成部105による処理開始時など)を基準(時刻=0)とするもので、この基準以降の経過時間であるものとする。
次に、合成部105の構成例について、図2のブロック図を用いて説明する。
画像入力部201Mは、第一の画像ストリーム103の各フレームデータMを受信するたびに、該受信の時刻Tin1を合成フレーム決定部205に対して出力すると共に、該受信したフレームデータMをフレームバッファ204に対して送出する。画像入力部201Mが行う処理について、同処理のフローチャートを示す図3(a)を用いて説明する。なお、図3(a)のフローチャートは、1フレーム分のフレームデータMについて画像入力部201Mが行う処理のフローチャートである。然るに、実際には、画像入力部201Mは、図3(a)のフローチャートに従った処理を、第一の画像ストリーム103の各フレームデータMについて行うことになる。
ステップS3002では、画像入力部201Mは、フレームデータMを受信したか否かを判断する。この判断の結果、受信した場合には、処理はステップS3003に進み、受信していない場合には、処理はステップS3002で待機することになる。
ステップS3003では、画像入力部201Mは、フレームデータMを受信したタイミング(入力タイミング)として、該フレームデータMの受信時刻Tin1を、後段の合成フレーム決定部205に対して出力する。例えば、画像入力部201Mは、自身が管理するタイマを用いて現在時刻を計時し、フレームデータMを受信した時点で計時していた現在時刻Tcを、受信時刻Tin1として出力する。以降では、この受信時刻Tin1をもって、フレームデータMの撮像タイミングとするが、第一の撮像部101内でフレームデータMを撮像した時刻を計時し、該計時した時刻をTin1として取得しても構わない。
ステップS3005では、画像入力部201Mは、受信したフレームデータMを、フレームバッファ204に転送する。
ステップS3006では、画像入力部201Mは、受信したフレームデータMのフレームバッファ204への転送が完了したか否か(受信したフレームデータMの全てのデータをフレームバッファ204に転送したか否か)を判断する。この判断の結果、完了した場合には、図3(a)のフローチャートに従った処理は完了し、未だ完了していない場合には、処理はステップS3005に戻る。
画像入力部201Sは、第二の画像ストリーム104の各フレームデータSを受信するたびに、該受信の時刻Tin2を合成フレーム決定部205に対して出力すると共に、該受信したフレームデータSをフレームバッファ204に対して送出する。画像入力部201Sの動作については、上記の図3(a)のフローチャートに従った処理の説明において、フレームデータMをフレームデータS、受信時刻Tin1を受信時刻Tin2と読み替えれば良く、実質的な処理の内容は同様である。
フレームバッファ204が有するメモリコントローラ202は、画像入力部201MからフレームデータMを受けると、該受けたフレームデータMをメモリ203に格納する。同様に、メモリコントローラ202は、画像入力部201SからフレームデータSを受けると、該受けたフレームデータSをメモリ203に格納する。また、メモリコントローラ202は、画像出力部208から要求されたフレームデータM/フレームデータSをメモリ203から読み出して、画像出力部208に対して送出する。
画像出力部208は、合成フレーム決定部205にフレームレートF3に基づく情報(Tout1,2)を与えることで該合成フレーム決定部205から得た情報(Fout1,2)に対応するフレームデータM、Sをフレームバッファ204から取得する。そして画像出力部208は、該取得したフレームデータM、Sを1つの合成フレームデータに合成し、それぞれの合成フレームデータを第三の画像ストリーム106として、フレームレートF3で送出する。
画像出力部208が行う処理について、同処理のフローチャートを示す図3(b)を用いて説明する。なお、図3(b)のフローチャートは、1フレーム分の合成フレームデータについて画像出力部208が行う処理のフローチャートである。然るに、実際には、画像出力部208は、図3(b)のフローチャートに従った処理を、第三の画像ストリーム106の各フレームについて行うことになる。
ステップS3102において画像出力部208は、合成フレームデータを出力する出力時刻Tout1(出力タイミング)を決定する。第三の画像ストリーム106のフレームレートはF3であるから、最初のフレームにおける合成フレームデータの出力時刻Tout1=1/F3となる。以降、合成フレームデータの出力時刻Tout1=2/F3、3/F3、…となり、N番目のフレームにおける合成フレームデータの出力時刻Tout1=N/F3となる。このように、出力時刻Tout1は、フレームレートF3によって規定される。
ステップS3103において画像出力部208は、合成フレーム決定部205に対して、ステップS3102において決定した出力時刻Tout1を出力する。合成フレーム決定部205は、受信時刻Tin1及び出力時刻Tout1に応じて、合成フレームデータに含めるべきフレームデータMを特定するための情報Fout1を決定して出力する。然るに、ステップS3104において画像出力部208は、Fout1を合成フレーム決定部205から取得する。Fout1は、例えば、メモリ203におけるフレームデータMのアドレスである。
ステップS3105において画像出力部208は、フレームバッファ204に対して、Fout1を送出する。メモリコントローラ202は、メモリ203からFout1で特定されるフレームデータMを読み出して画像出力部208に対して送出するので、画像出力部208は、メモリコントローラ202から送出されたフレームデータMを取得する。
ステップS3108において画像出力部208は、合成フレームデータを出力する出力時刻Tout2を決定する。ここではTout1=Tout2とする。
ステップS3109において画像出力部208は、合成フレーム決定部205に対して、ステップS3108において決定した出力時刻Tout2を出力する。合成フレーム決定部205は、受信時刻Tin2及び出力時刻Tout2に応じて、合成フレームデータに含めるべきフレームデータSを特定するための情報Fout2を決定して出力する。然るに、ステップS3110において画像出力部208は、Fout2を合成フレーム決定部205から取得する。Fout2は、例えば、メモリ203におけるフレームデータSのアドレスである。
ステップS3111において画像出力部208は、フレームバッファ204に対して、Fout2を送出する。メモリコントローラ202は、メモリ203からFout2で特定されるフレームデータSを読み出して画像出力部208に対して送出するので、画像出力部208は、メモリコントローラ202から送出されたフレームデータSを取得する。
そしてステップS3112において画像出力部208は、ステップS3105において取得したフレームデータMとステップS3111において取得したフレームデータSとを1つの合成フレームデータとして出力する。上記の通り図3(b)のフローチャートに従った処理は、それぞれの合成フレームデータについて行うものであり、第三の画像ストリーム106のフレームレートはF3であるから、ステップS3112における処理は、1/F3の時間間隔で行われることになる。
次に、合成フレーム決定部205が行う処理について、図3(c)のフローチャートを用いて説明する。なお、図3(c)のフローチャートは、受信時刻Tin1、受信時刻Tin2、出力時刻Tout1、出力時刻Tout2、の何れかの入力を検知した場合に行われる1回分の処理のフローチャートである。然るに、実際には、合成フレーム決定部205は、図3(c)のフローチャートに従った処理を、受信時刻Tin1、受信時刻Tin2、出力時刻Tout1、出力時刻Tout2、の何れかの入力を検知するたびに行うことになる。
ステップS3202では、合成フレーム決定部205は、画像入力部201Mから受信時刻Tin1が入力されたか否かを判断する。この判断の結果、画像入力部201Mから受信時刻Tin1が入力された場合には、処理はステップS3203に進み、入力されていない場合には、処理はステップS3204に進む。
ステップS3203では、合成フレーム決定部205は、次のような動作を行う。即ち、画像入力部201Mから入力された受信時刻Tin1と、画像入力部201Mが該受信時刻Tin1にて受信したフレームデータMのメモリ203における格納アドレスと、をメモリ290に格納する。
ステップS3204では、合成フレーム決定部205は、画像入力部201Sから受信時刻Tin2が入力されたか否かを判断する。この判断の結果、画像入力部201Sから受信時刻Tin2が入力された場合には、処理はステップS3205に進み、入力されていない場合には、処理はステップS3206に進む。
ステップS3205では、合成フレーム決定部205は、次のような動作を行う。即ち、画像入力部201Sから入力された受信時刻Tin2と、画像入力部201Sが該受信時刻Tin2にて受信したフレームデータSのメモリ203における格納アドレスと、をメモリ290に格納する。
ステップS3206では、合成フレーム決定部205は、画像出力部208から出力時刻Tout1を受信したか否かを判断する。この判断の結果、画像出力部208から出力時刻Tout1を受信した場合には、処理はステップS3207に進み、受信していない場合には、処理はステップS3209に進む。
ステップS3207では、合成フレーム決定部205は、メモリ290に格納されているそれぞれの受信時刻Tin1のうち、出力時刻Tout1に最も近い受信時刻Tnear1を特定する。この特定処理により、該特定した受信時刻Tnear1と共にステップS3203でメモリ290に格納した格納アドレスを特定することができる。
そしてステップS3208では、合成フレーム決定部205は、ステップS3207において特定した受信時刻Tnear1と共にステップS3203でメモリ290に格納した格納アドレスをFout1として、画像出力部208に対して送出する。
ステップS3209では、合成フレーム決定部205は、画像出力部208から出力時刻Tout2を受信したか否かを判断する。この判断の結果、画像出力部208から出力時刻Tout2を受信した場合には、処理はステップS3210に進み、受信していない場合には、図3(c)のフローチャートに従った処理は完了する。
ステップS3210では、合成フレーム決定部205は、メモリ290に格納されているそれぞれの受信時刻Tin2のうち、出力時刻Tout2に最も近い受信時刻Tnear2を特定する。この特定処理により、該特定した受信時刻Tnear2と共にステップS3205でメモリ290に格納した格納アドレスを特定することができる。
そしてステップS3211では、合成フレーム決定部205は、ステップS3210において特定した受信時刻Tnear2と共にステップS3205でメモリ290に格納した格納アドレスをFout2として、画像出力部208に対して送出する。
第三の画像ストリーム106の各フレームの出力時刻Tout1(Tout2)と、第一の画像ストリーム103及び第二の画像ストリーム104と、の関係を図1(b)を用いて説明する。
第三の画像ストリーム106におけるそれぞれのフレームの出力時刻Tout1は矢印129で示しており、第三の画像ストリーム106のフレームレートはF3であるから、矢印129の間の時間間隔は1/F3である。例えば、左端の矢印129に対応する出力時刻Tout1(=t0とする)に対応するフレームデータMは、時刻t0に最も近い受信時刻Tin1であるフレームデータM2(2フレーム目のフレームデータM)となる。また、時刻t0に対応するフレームデータSは、時刻t0に最も近い受信時刻Tin2であるフレームデータS2(2フレーム目のフレームデータS)となる。然るに、この場合、合成フレーム決定部205は、Tout1としてt0を受けると、Fout1としてフレームデータM2の格納アドレスを返し、Tout2としてt0を受けると、Fout2としてフレームデータS2の格納アドレスを返す。以下、同様にすれば、それぞれの矢印129で示す出力時刻Tout1に対応するフレームデータM及びフレームデータSは、斜線で示したものとなる。その結果、第三の画像ストリーム106は、図4に示す如く、図1(b)において斜線で示したフレームデータM2,M4,M6,M8,M10と、フレームデータS2,S4,S5,S7,S9と、を合成したものとなる。
このように、本実施形態によれば、各々の撮像装置が異なるフレームレートで撮像を行っても、それぞれの撮像装置による画像ストリームを合成する場合に、合成するフレームの撮像タイミングを最小にすることができる。
[第2の実施形態]
本実施形態では、フレームレートF3が、第一のフレームレートF1の1/n倍(nは自然数)である場合について説明する。このnはいうまでもなく、第1のフレームレートF1とフレームレートF3との比を表している。このような場合、合成部105の構成は第1の実施形態よりも簡単となる。以下では第1の実施形態との差分について重点的に説明し、以下で特に触れない限りは、第1の実施形態と同様であるものとする。
本実施形態では、フレームレートF3が、第一のフレームレートF1の1/n倍(nは自然数)である場合について説明する。このnはいうまでもなく、第1のフレームレートF1とフレームレートF3との比を表している。このような場合、合成部105の構成は第1の実施形態よりも簡単となる。以下では第1の実施形態との差分について重点的に説明し、以下で特に触れない限りは、第1の実施形態と同様であるものとする。
先ず、本実施形態に係る合成部105の構成について、図5のブロック図を用いて説明する。図5において図2に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。
画像入力部501は、第一の画像ストリーム103の各フレームデータMを受信するたびに、該受信の時刻Tin1と、該受信したフレームデータMと、を画像出力部503に対して出力する。画像入力部501が行う処理について、同処理のフローチャートを示す図6(a)を用いて説明する。なお、図6(a)のフローチャートは、1フレーム分のフレームデータMについて画像入力部501が行う処理のフローチャートである。然るに、実際には、画像入力部501は、図6(a)のフローチャートに従った処理を、第一の画像ストリーム103の各フレームデータMについて行うことになる。
ステップS6002では、画像入力部501は、フレームデータMを受信したか否かを判断する。この判断の結果、受信した場合には、処理はステップS6003に進み、受信していない場合には、処理はステップS6002で待機することになる。
ステップS6003では、画像入力部501は、フレームデータMを受信したタイミングとして、該フレームデータMの受信時刻Tin1を、後段の画像出力部503に対して出力する。画像入力部501が受信時刻Tin1を取得する方法については、第1の実施形態で説明した画像入力部201Mによる受信時刻Tin1の取得方法と同様である。
ステップS6004では、画像入力部501は、受信したフレームデータMを、後段の画像出力部503に転送する。
ステップS6005では、画像入力部501は、受信したフレームデータMの画像出力部503への転送が完了したか否か(受信したフレームデータMの全てのデータを画像出力部503に転送したか否か)を判断する。この判断の結果、完了した場合には、図6(a)のフローチャートに従った処理は完了し、未だ完了していない場合には、処理はステップS6004に戻る。
画像出力部503は、合成フレーム決定部502にフレームレートF3に基づく情報(Tout2)を与えることで該合成フレーム決定部205から得た情報(Fout2)に対応するフレームデータSをフレームバッファ204から取得する。そして画像出力部503は、該取得したフレームデータSと、画像入力部501から受けたフレームデータMのうちフレームレートF3に応じたフレームデータMと、を1つの合成フレームデータに合成する。そして画像出力部503は、それぞれの合成フレームデータを第三の画像ストリーム106として、フレームレートF3で送出する。
画像出力部503が行う処理について、同処理のフローチャートを示す図6(b)を用いて説明する。なお、図6(b)のフローチャートは、1フレーム分の合成フレームデータについて画像出力部503が行う処理のフローチャートである。然るに、実際には、画像出力部503は、図6(b)のフローチャートに従った処理を、第三の画像ストリーム106の各フレームについて行うことになる。
ステップS6102では、画像出力部503は、画像入力部501からフレームデータMを受信したか否かを判断する。この判断の結果、受信した場合には、処理はステップS6103に進み、受信していない場合には、処理はステップS6102で待機することになる。
ステップS6103では、画像出力部503は、ステップS6102で受信したフレームデータMは合成フレームデータに含めるべきフレームデータであるのか(出力対象であるのか)否かを判断する。上記の通り、F3=F1/nであるから、画像入力部501から第一のフレームレートF1で受信したフレームデータMをフレームレートF3で出力するためには、画像入力部501から受信したフレームデータMをnフレームおきに出力すればよいことになる。然るに本ステップで画像出力部503は、画像入力部501からknフレーム目(kは1以上の整数)のフレームデータMを受信した場合には、該knフレーム目のフレームデータMは出力対象であるから、出力対象となるフレームデータMを受信したと判断する。一方、画像出力部503は、画像入力部501からknフレーム目のフレームデータM以外のフレームデータMを受信した場合には、出力対象となるフレームデータMは受信していないと判断する。
ステップS6102で受信したフレームデータMは合成フレームデータに含めるべきフレームデータである(出力対象である)と判断された場合は、処理はステップS6104に進み、出力対象ではないと判断された場合は、処理はステップS6102に戻る。
ステップS6104では、画像出力部503は、出力対象となるフレームデータMと共に画像入力部501から出力された受信時刻Tin1を取得する。
ステップS6108では、画像出力部503は、合成フレームデータを出力する出力時刻Tout2(Tout2=Tin1)を、合成フレーム決定部502に対して出力する。合成フレーム決定部205は、受信時刻Tin2及び出力時刻Tout2に応じて、合成フレームデータに含めるべきフレームデータSを特定するための情報Fout2を決定して出力する。然るに、ステップS6109において画像出力部503は、Fout2を合成フレーム決定部502から取得する。
ステップS6110において画像出力部503は、フレームバッファ204に対して、Fout2を送出する。メモリコントローラ202は、メモリ203からFout2で特定されるフレームデータSを読み出して画像出力部503に対して送出するので、画像出力部503は、メモリコントローラ202から送出されたフレームデータSを取得する。
ステップS6111では画像出力部503は、ステップS6104で取得したフレームデータM(knフレーム目のフレームデータM)と、ステップS6111で取得したフレームデータSと、を1つの合成フレームデータとして出力する。上記の通り図6(b)のフローチャートに従った処理は、それぞれの合成フレームデータについて行うものであり、第三の画像ストリーム106のフレームレートはF3であるから、ステップS6111における処理は、1/F3の時間間隔で行われることになる。
次に、合成フレーム決定部502が行う処理について、図6(c)のフローチャートを用いて説明する。なお、図6(c)のフローチャートは、受信時刻Tin2、出力時刻Tout2、の何れかの入力を検知した場合に行われる1回分の処理のフローチャートである。然るに、実際には、合成フレーム決定部502は、図6(c)のフローチャートに従った処理を、受信時刻Tin2、出力時刻Tout2の何れかの入力を検知するたびに行うことになる。
ステップS6202では、合成フレーム決定部502は、画像入力部201Sから受信時刻Tin2が入力されたか否かを判断する。この判断の結果、画像入力部201Sから受信時刻Tin2が入力された場合には、処理はステップS6203に進み、入力されていない場合には、処理はステップS6204に進む。
ステップS6203で合成フレーム決定部502は、次のような動作を行う。即ち、画像入力部201Sから入力された受信時刻Tin2と、画像入力部201Sが該受信時刻Tin2にて受信したフレームデータSのメモリ203における格納アドレスと、を自身が管理する不図示のメモリに格納する。
ステップS6204では、合成フレーム決定部502は、画像出力部503から出力時刻Tout2を受信したか否かを判断する。この判断の結果、画像出力部503から出力時刻Tout2を受信した場合には、処理はステップS6205に進み、受信していない場合には、図6(c)のフローチャートに従った処理は完了する。
ステップS6205では、合成フレーム決定部502は、ステップS6203においてメモリに格納されたそれぞれの受信時刻Tin2のうち、出力時刻Tout2に最も近い受信時刻Tnear2を特定する。この特定処理により、該特定した受信時刻Tnear2と共にステップS6203でメモリに格納した格納アドレスを特定することができる。
そしてステップS6206では、合成フレーム決定部502は、ステップS6205において特定した受信時刻Tnear2と共にステップS6203でメモリに格納した格納アドレスをFout2として、画像出力部503に対して送出する。
[第3の実施形態]
第1,2の実施形態では、第一の撮像部101は、1つのフレームのフレームデータMを1回の撮像でもって取得する例を説明したが、実際は、ローリングシャッタ方式の撮像では、1つのフレームのフレームデータMを複数回の撮像でもって取得する。本実施形態では、第一の撮像部101が、1つのフレームのフレームデータMを複数回の撮像でもって取得するケースについて説明する。以下では、第2の実施形態との差分について重点的に説明し、以下で特に触れない限りは、第2の実施形態と同様であるものとする。
第1,2の実施形態では、第一の撮像部101は、1つのフレームのフレームデータMを1回の撮像でもって取得する例を説明したが、実際は、ローリングシャッタ方式の撮像では、1つのフレームのフレームデータMを複数回の撮像でもって取得する。本実施形態では、第一の撮像部101が、1つのフレームのフレームデータMを複数回の撮像でもって取得するケースについて説明する。以下では、第2の実施形態との差分について重点的に説明し、以下で特に触れない限りは、第2の実施形態と同様であるものとする。
本実施形態に係る第一の撮像部101が1つのフレームのフレームデータMを撮像するための撮像タイミングについて、図7(a)を用いて説明する。
M1は、1つのフレームのフレームデータMの全体領域を表しており、M11,M12,M13,M14はそれぞれ、全体領域M1を4つの領域に分割した場合のそれぞれの分割領域を表している。以下では説明を簡単にするために、全体領域M1を縦方向に4分割したうちの左端の分割領域をM11、分割領域M11の右側に隣接する分割領域をM12、右端の分割領域をM14、分割領域M14の左側に隣接する分割領域をM13とする。
図7(a)では、撮像タイミングTime=0において分割領域M11の撮像を開始し、撮像タイミングTime=t1までに分割領域M11の撮像を完了させている。また、撮像タイミングTime=t1において分割領域M12の撮像を開始し、撮像タイミングTime=t2までに分割領域M12の撮像を完了させている。また、撮像タイミングTime=t2において分割領域M13の撮像を開始し、撮像タイミングTime=t3までに分割領域M13の撮像を完了させている。また、撮像タイミングTime=t3において分割領域M14の撮像を開始し、撮像タイミングTime=t4までに分割領域M14の撮像を完了させている。なお、全体領域M1において中央部分は、分割領域M12の右側の領域と分割領域M13の左側の領域との合計領域であり、その撮像期間の中央はおおよそt2である。撮像したフレームデータを、表示部114にて観察する場合、一般にフレームの中央部を観察する割合が多い。そこで、本実施形態では、フレームデータMを分割領域毎に受信する場合には、中央領域を受信した時刻(図7(a)の場合はt2)を、該フレームデータMの受信時刻Tin1として取得する。
画像入力部501は、第一の画像ストリーム103の各フレームデータMを受信する場合、該フレームデータMを分割領域毎に受信して画像出力部503に送出すると共に、中央領域を受信した時刻を受信時刻Tin1として画像出力部503に対して送出する。画像入力部501が行う処理について、同処理のフローチャートを示す図8を用いて説明する。なお、図8のフローチャートは、1フレーム分のフレームデータMについて画像入力部501が行う処理のフローチャートである。然るに、実際には、画像入力部501は、図8のフローチャートに従った処理を、第一の画像ストリーム103の各フレームデータMについて行うことになる。
ステップS8000では、画像入力部501は、フレームデータMにおける最初の分割領域を受信したか否かを判断する。この判断の結果、受信した場合には、処理はステップS8001に進み、受信していない場合には、処理はステップS8000で待機することになる。
ステップS8001では、画像入力部501は、受信した分割領域が中央領域であるか否かを判断する。この判断の結果、受信した分割領域が中央領域である場合には、処理はステップS8002に進み、受信した分割領域が中央領域ではない場合には、処理はステップS8003に進む。受信した分割領域が中央領域であるか否かを判断する方法には様々な方法が考え得る。例えば、受信した分割領域に、フレームデータMにおける該分割領域の位置情報が含まれている場合には、該位置情報がフレームデータMの中央であるか否かを判断すればよい。また、受信した分割領域に、それぞれの分割領域に付けられた通し番号が含まれている場合には、該番号が最大通し番号の中央値であるのか否かを判断すればよい。
ステップS8002では、画像入力部501は、中央領域を受信した時刻Tcを、フレームデータMの受信時刻Tin1として、後段の画像出力部503に対して出力する。
ステップS8003では、画像入力部501は、受信した分割領域を、後段の画像出力部503に転送する。
ステップS8004では、画像入力部501は、フレームデータMの全ての分割領域の画像出力部503への転送が完了したか否かを判断する。この判断の結果、完了した場合には、図8のフローチャートに従った処理は完了し、未だ完了していない場合には、処理はステップS8001に戻る。
このように、本実施形態によれば、例えば、図7(b)に示す如く、第一の画像ストリーム103の各フレームについて複数回の撮像(図中細線の矢印)を行う場合には、各フレームの受信時刻をその中央領域の受信時刻(図中太線の矢印)とする。そして、第三の画像ストリーム106のフレームレートF3がF1の半分の値であるとすると、第一の画像ストリーム103からは1フレームおきにフレームデータM(M2,M4,M6,M8,M10)が出力される。また、第二の画像ストリーム104からは、M2,M4,M6,M8,M10のそれぞれの中央領域の受信時刻に最も近いフレームデータS(S2,S4,S6,S8,S10)が出力される。
[第4の実施形態]
図1,2,5に示した各機能部の全てをハードウェアで構成しても構わないが、その一部をコンピュータプログラムで構成しても構わない。例えば、画像入力部201M、201S、501、合成フレーム決定部205、502、画像出力部208、503、分離部109、重畳画像生成部112、画像重畳部113をコンピュータプログラムで実装しても構わない。この場合、これらのコンピュータプログラムは、メモリに格納され、CPU等のプロセッサによって実行され、これにより、対応する機能部の機能が実現されることになる。
図1,2,5に示した各機能部の全てをハードウェアで構成しても構わないが、その一部をコンピュータプログラムで構成しても構わない。例えば、画像入力部201M、201S、501、合成フレーム決定部205、502、画像出力部208、503、分離部109、重畳画像生成部112、画像重畳部113をコンピュータプログラムで実装しても構わない。この場合、これらのコンピュータプログラムは、メモリに格納され、CPU等のプロセッサによって実行され、これにより、対応する機能部の機能が実現されることになる。
また、図1では、第一の撮像部101、第二の撮像部102、合成部105、送信機107、受信機108、分離部109、重畳画像生成部112、画像重畳部113、表示部114を有するシステムを示したが、このシステムを2以上の装置で構成しても良い。例えば、合成部105及び送信機107を有する第1の装置に第一の撮像部101及び第二の撮像部102を接続し、該第1の装置に、受信機108、分離部109、重畳画像生成部112、画像重畳部113、表示部114を有する第2の装置を接続する。これにより、第一の撮像部101及び第二の撮像部102による画像ストリームを合成して出力する第1の装置と、該第1の装置から受信した画像ストリームに基づいて画像再生を行う第2の装置と、で上記のシステムを形成することができる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
201M:画像入力部 201S:画像入力部 205:合成フレーム決定部 208:画像出力部
Claims (10)
- 第1のフレームレートで撮影された第1の画像ストリームのうち、出力フレームレートに基づいて決まるフレームの画像を取得する第1の取得手段と、
前記第1のフレームレートとは異なる第2のフレームレートで撮影された第2の画像ストリームのうち、前記出力フレームレートに基づいて決まるフレームの画像を取得する第2の取得手段と、
前記第1の取得手段が取得したそれぞれのフレームの画像と前記第2の取得手段が取得したそれぞれのフレームの画像とを合成して、前記出力フレームレートの画像ストリームを生成する生成手段と
を備えることを特徴とする画像処理装置。 - 前記第1の取得手段は、前記第1の画像ストリームにおける各フレームのうち、前記出力フレームレートで規定される出力タイミングに最も近い入力タイミングで入力されたフレームを取得することを特徴とする請求項1に記載の画像処理装置。
- 前記第2の取得手段は、前記第2の画像ストリームにおける各フレームのうち、前記出力フレームレートで規定される出力タイミングに最も近い入力タイミングで入力されたフレームを取得することを特徴とする請求項1又は2に記載の画像処理装置。
- 前記第1の取得手段は、前記第1の画像ストリームのうち、前記第1のフレームレートと前記出力フレームレートとの比に応じて決まる間隔のフレームの画像を取得し、
前記第2の取得手段は、前記第2の画像ストリームにおける各フレームのうち、該第1の取得手段が取得したフレームの入力タイミングに最も近い入力タイミングで入力されたフレームを取得することを特徴とする請求項1に記載の画像処理装置。 - 前記第1の取得手段は、前記第1の画像ストリームにおける各フレームのうち、前記出力フレームレートで規定される出力タイミングに最も近い入力タイミングで中央領域が入力されたフレームを取得し、
前記第2の取得手段は、前記第2の画像ストリームにおける各フレームのうち、該第1の取得手段が取得したフレームの入力タイミングに最も近い入力タイミングで入力されたフレームを取得することを特徴とする請求項1に記載の画像処理装置。 - 前記第1の画像ストリームは、ローリングシャッタ方式の撮像装置によって撮像された画像ストリームであることを特徴とする請求項5に記載の画像処理装置。
- 前記第1の画像ストリームは、前記第2の画像ストリームにおける各フレームの画像に含まれている指標に基づいて生成される画像情報を重畳する対象となる画像のストリームであることを特徴とする請求項1乃至6の何れか1項に記載の画像処理装置。
- 更に、
前記生成手段が生成した画像ストリームを、該画像ストリームを再生する装置に対して出力する手段を備えることを特徴とする請求項1乃至7の何れか1項に記載の画像処理装置。 - 画像処理装置が行う画像処理方法であって、
前記画像処理装置の第1の取得手段が、第1のフレームレートで撮影された第1の画像ストリームのうち、出力フレームレートに基づいて決まるフレームの画像を取得する第1の取得工程と、
前記画像処理装置の第2の取得手段が、前記第1のフレームレートとは異なる第2のフレームレートで撮影された第2の画像ストリームのうち、前記出力フレームレートに基づいて決まるフレームの画像を取得する第2の取得工程と、
前記画像処理装置の生成手段が、前記第1の取得工程で取得したそれぞれのフレームの画像と前記第2の取得工程で取得したそれぞれのフレームの画像とを合成して、前記出力フレームレートの画像ストリームを生成する生成工程と
を備えることを特徴とする画像処理方法。 - コンピュータを、請求項1乃至8の何れか1項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015130329A JP2017017448A (ja) | 2015-06-29 | 2015-06-29 | 画像処理装置、画像処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015130329A JP2017017448A (ja) | 2015-06-29 | 2015-06-29 | 画像処理装置、画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017017448A true JP2017017448A (ja) | 2017-01-19 |
Family
ID=57829301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015130329A Pending JP2017017448A (ja) | 2015-06-29 | 2015-06-29 | 画像処理装置、画像処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017017448A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019059562A1 (ko) * | 2017-09-20 | 2019-03-28 | 삼성전자 주식회사 | 롤링 셔터 방식을 이용한 복수의 카메라를 포함하는 전자 장치 |
-
2015
- 2015-06-29 JP JP2015130329A patent/JP2017017448A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019059562A1 (ko) * | 2017-09-20 | 2019-03-28 | 삼성전자 주식회사 | 롤링 셔터 방식을 이용한 복수의 카메라를 포함하는 전자 장치 |
US10979612B2 (en) | 2017-09-20 | 2021-04-13 | Samsung Electronics Co., Ltd. | Electronic device comprising plurality of cameras using rolling shutter mode |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9741091B2 (en) | All-around moving image distribution system, all-around moving image distribution method, image processing apparatus, communication terminal apparatus, and control methods and control programs of image processing apparatus and communication terminal apparatus | |
JP5259519B2 (ja) | デジタル放送受信機、送信機及び端末装置 | |
JP7409362B2 (ja) | 再生装置および方法、並びにプログラム | |
KR102384489B1 (ko) | 정보 처리 장치, 정보 제공 장치, 제어 방법, 및 컴퓨터 판독가능 저장 매체 | |
JP2010258583A (ja) | 立体画像表示装置、立体画像再生装置および立体画像視認システム | |
JP6541309B2 (ja) | 送信装置、送信方法、及びプログラム | |
JP6374754B2 (ja) | 画像合成装置及びそのプログラム | |
WO2020213430A1 (ja) | 映像処理装置、映像処理方法及び映像処理プログラム | |
WO2016072238A1 (ja) | 画像処理装置、画像表示装置、画像処理方法及び画像表示方法 | |
JP2013225850A (ja) | 映像通信装置、映像通信サーバー及び映像通信のための映像処理方法 | |
JP2017017448A (ja) | 画像処理装置、画像処理方法 | |
US20110149038A1 (en) | Video processing apparatus capable of reproducing video content including a plurality of videos and control method therefor | |
JP7326774B2 (ja) | 画像処理システム、撮像装置、情報処理装置、画像処理方法及びプログラム | |
JP2018088605A (ja) | 情報処理装置、表示制御装置、制御方法、及びプログラム | |
US9736453B2 (en) | Method for encoding a stereoscopic image | |
KR101646867B1 (ko) | 마이크로폰 위치정보를 이용하는 ftv 입체음향 구현 장치 및 그 방법 | |
JP2020057329A (ja) | ガイドシステム | |
JPWO2018186287A1 (ja) | 映像データ生成装置、映像再生装置、映像データ生成方法、制御プログラム、及び記録媒体 | |
JP2021033354A (ja) | 通信装置およびその制御方法 | |
JP2021064822A (ja) | 通信装置、通信装置の制御方法およびプログラム | |
WO2022181378A1 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP4423416B2 (ja) | 映像合成処理システム | |
JP6977847B2 (ja) | 画像管理装置、画像管理方法及びプログラム | |
KR102178947B1 (ko) | 스티칭 기법을 이용한 360도 멀티뷰 영상 전송 시스템 및 방법 | |
KR101674187B1 (ko) | 광대역 보간법을 위한 입체음향 획득 장치 및 그 방법 |