説明

映像処理装置、撮像装置、映像処理方法及びプログラム

【課題】 撮像部が撮像した撮像画像上の領域においてマスク画像を重畳するマスク領域を設定するために手間や時間をかけず、かつ、平面に表されるマスク領域にマスク画像を適切に重畳することを目的とする。
【解決手段】 球面座標において指定された領域を、撮像画像を表すxy座標平面に投影した対応領域の頂点(r0、r1、r2、r3)のx座標値とy座標値のそれぞれの平均値を算出し、算出したx座標値とy座標値の平均値をそれぞれx座標y座標とする点Gとマスク画像の高さの中点であり且つ幅の中点である点とが重なるようにマスク画像Rを撮像画像に重畳する(S304)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮像画像上のマスク領域にマスク画像を重畳して表示する映像処理装置、撮像装置、映像処理方法及びプログラムに関する。
【背景技術】
【0002】
従来、撮像装置が撮像した画像の一部にマスク画像を重畳して、マスク画像を重畳した部分の画像を閲覧できないようにするマスキング技術が知られている。
ここで、撮像装置の位置を中心として、ある一方向を向いた撮像装置が撮像する撮像領域は、図8(a)に示すような球面座標上の領域として表すことができる。また、この球面座標上の撮像領域の撮像画像を平面に表すと図8(b)のように表される。図8(b)に示されるように、撮像画像の中央に比べて周辺部の画像は歪んで表示される。
【0003】
こうした撮像装置において、上述のマスキング技術を用いてマスク画像の重畳を行う場合、球面座標上で設定したマスクを重畳する領域(以下、マスク領域)が平面上では歪んだ領域となってしまう場合がある。例えば、マスクを設定する領域として図8(a)のようにマスク領域abcdが設定されている場合、このマスク領域abcdを平面で表すと、図8(b)のように領域abdcは歪んだ領域となってしまう。
【0004】
そこで、特許文献1に記載の撮像装置は、マスク領域を設定する際に撮像領域の中心をマスク領域の中心に向けるようにし、画面の中央でマスク領域の設定を行う。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2001−069494号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、撮像装置の撮像方向が固定されている場合にはマスク領域の設定のために撮像方向を変更することができないため、特許文献1に示されるような技術を適用することができない。従って、球面座標上で設定したマスク領域が平面上では歪んだ領域となってしまう場合がある。また、撮像方向を変更することができる場合であっても、特許文献1に示される撮像装置のように、マスク領域設定を行う度にカメラ方向を移動させるには時間や手間がかかるという課題がある。
【課題を解決するための手段】
【0007】
上記の課題を解決するために本発明は、撮像手段を中心とする球面座標において指定された領域を特定する特定手段と、前記撮像手段が撮像した撮像画像を表示手段に表示させる表示制御手段と、前記表示手段に表示される前記撮像画像を表すxy座標平面に前記指定された領域を投影した領域である対応領域に重なるようにマスク画像を重畳する重畳手段とを有する映像処理装置において、前記xy座標平面における前記対応領域の頂点のx座標値とy座標値のそれぞれの平均値を算出する算出手段を有し、前記重畳手段は前記xy座標平面において前記算出手段が算出したx座標値とy座標値の平均値をそれぞれx座標とy座標とする点とマスク画像の高さの中点であり且つ幅の中点である点とが重なるように前記マスク画像を前記撮像画像に重畳することを特徴とする。
【発明の効果】
【0008】
本発明によれば、マスク領域設定を行うために手間や時間がかからず、かつ、平面上に表されるマスク領域にマスク画像を適切に重畳して保護することができる。
【図面の簡単な説明】
【0009】
【図1】実施例1にかかる撮像装置1およびGUI11のブロック図。
【図2】実施例1におけるマスクデータの設定を説明するためのフロー図。
【図3】実施例1におけるマスク画像生成動作を説明するためのフロー図。
【図4】実施例1におけるマスク領域の射影変換を説明するための図。
【図5】実施例2にかかる撮像装置2及びGUI12のブロック図。
【図6】実施例2におけるマスク画像生成動作を説明するためのフロー図。
【図7】実施例2におけるマスク領域の射影変換を説明するための図。
【図8】球面座標上の領域を座標平面に投影した様子を示す図。
【発明を実施するための形態】
【0010】
以下に、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。
【0011】
(実施例1)
最初に、本発明の第1の実施例における撮像装置1の構成について図1を用いて説明する。撮像レンズ100は入射光を後述の撮像素子101上に結像する。撮像素子101は撮像レンズ100によって結像された撮像画像の画像信号を生成する。
【0012】
AFE(Analog Front End)102はアナログ信号をデジタル信号に変換するアナログ回路である。AFE102は、撮像素子101において生成された画像信号を増幅し、画像信号に含まれるアンプ雑音およびリセット雑音を除去する回路を含む。AFE102は撮像素子から出力された画像信号をデジタル信号に変換し、撮像画像として画像合成部105に出力する。
【0013】
マスクデータ記憶部103は後述のマスクデータ設定部112でユーザが指定したマスクデータを取得して特定する。ここでマスクデータとは、撮像装置を中心とする球面座標においてマスク画像を重畳する領域(以下、マスク領域)を特定するための位置情報のことをいう。
【0014】
マスク生成部104はマスクデータ記憶部103に保持しているマスクデータを取得し、取得したマスクデータに基づいて以下のようにしてマスク画像を生成する。まず、マスク生成部104は後述の画像表示部111に表示される撮像画像を表すxy座標平面にマスク領域を投影した領域である対応領域を特定する。そして、マスク生成部104は、xy座標平面における対応領域の頂点のx座標値とy座標値のそれぞれの平均値を算出する。さらに、マスク生成部104は位置情報に基づいてxy座標平面におけるマスク画像の幅及び高さを導出する。最後に、マスク生成部104は算出したマスク画像の幅及び高さに基づいてマスク画像を生成する。マスク画像は矩形に限られない。マスク画像の幅とは、xy平面におけるマスク画像の頂点のx座標の最大値と最小値の差である。また、マスク画像の高さとはxy平面におけるマスク画像の頂点のy座標の最大値と最小値の差である。
【0015】
画像合成部105はAFE102より出力された撮像画像において対応領域にマスク生成部104により生成されたマスク画像が重なるようにマスク画像を重畳する。画像合成部105はxy座標平面においてマスク生成部104が算出した平均値それぞれをx座標とy座標とする点とマスク生成部104が生成したマスク画像の高さの中点であり且つ幅の中点である点とが重なるように前記マスク画像を撮像画像に重畳する。そして、画像合成部105はマスク画像を重畳した撮像画像を後述の画像表示部111に表示させる表示制御を行う。また、画像合成部105は撮像された撮像画像に重畳すべきマスク画像がない場合はマスク画像を重畳しないで画像表示部111に撮像画像を表示させる表示制御を行う。
【0016】
マスク生成部104および画像合成部105の機能は撮像装置1にプロセッサ及びメモリを設け、メモリに記憶されたプログラムをプロセッサが実行することにより、実現させることができる。あるいは、マスク生成部104および画像合成部105をハードウエアとして構成することとしてもよい。
【0017】
次に、本実施例における撮像装置1のGUI(Graphical User Interface)11について説明する。本件では撮像装置1にGUI11が直接接続されている場合について説明するが、GUI11はネットワークを介して撮像装置1と接続されることとしてもよい。GUI11は画像表示部111およびマスクデータ設定部112を有する。画像表示部111は画像合成部105より出力された、マスク画像が重畳された撮像画像を表示する。マスクデータ設定部112は画像表示部111に表示される撮像画像に重畳するマスクデータを設定する。マスクデータの設定については、図2を用いて後述する。
【0018】
画像表示部111およびマスクデータ設定部112はハードウエアとして構成することができる。あるいは、GUI11にプロセッサ及びメモリを設け、メモリに記憶されたプログラムをプロセッサが実行することにより、マスクデータ設定部112の機能を実現させることとしてもよい。
【0019】
続いて、本実施例におけるGUI11におけるマスクデータの設定について、図2を用いて説明する。GUI11がプロセッサ及びメモリを内蔵する形態では、図2の処理フローは、図2に示される手順をこのプロセッサに実行させるためのプログラムを示す。このGUI11が内蔵するプロセッサは、コンピュータであり、GUI11が内蔵するメモリから読み出したプログラムを実行してマスクデータ設定部112を制御する。GUI11が内蔵するメモリは、このプロセッサが読み出すことができるようにこのプログラムを記録した記録媒体である。
【0020】
まずGUI11のマスクデータ設定部112は、マスク領域の設定値がユーザによって入力されたか判断する(S201)。マスク領域の設定方法として、例えば、ユーザが画像表示部111に表示された撮像画像上でマウス等のポインティングディバイスを用いて、矩形の始点と高さと幅をドラッグアンドドロップすることによりマスク領域を指定する方法がある。または、ユーザが画像表示部111に表示された入力フォームに始点と高さと幅を数値によって指定することもできる。始点と高さと幅以外に、各マスク領域を塗りつぶすための色情報を保持しても良い。あるいは、ポインティングディバイスを用いてマスク領域を指定する方法と、入力フォームに数値を入力してマスク領域を指定する方法とから設定方法をユーザが選択して設定を行うこととしてもよい。あるいは、ユーザが画像表示部111に表示された撮像画像上でマスク領域の中心を指定した後、マスクを重畳したい領域の1頂点を指定することにより、矩形の領域を設定できることとしてもよい。
【0021】
マスクデータ設定部112はマスク領域の設定値が入力されると(S201でYesの場合)、撮像装置1のマスクデータ記憶部103に撮像領域におけるマスク領域の左下の頂点の座標とマスク領域の高さ及び幅をマスクデータとして出力する(S202)。
【0022】
続いて、マスクデータ設定部112は、マスク設定数がマスクデータ記憶部103において保持することができる数を超えたか判断する(S203)。マスク設定数が最大マスク数を超えていない場合(S203においてNoの場合)はステップS201の処理に戻る。一方、マスク設定数が最大マスク数を超えた場合(S203においてYesの場合)はマスク設定処理を終了する。設定数が最大マスク数を超えたか否かについての判断は撮像装置1のマスクデータ記憶部103において行うこととしてもよい。
【0023】
次に、マスク生成部104が、設定されたマスクデータからマスク画像を生成する動作について図3を用いて説明する。撮像装置1がプロセッサ及びメモリを内蔵する形態では、図3の処理フローは、図3に示される手順をこのプロセッサに実行させるためのプログラムを示す。撮像装置1が内蔵するプロセッサは、コンピュータであり、撮像装置1が内蔵するメモリから読み出したプログラムを実行してマスク生成部104を制御する。撮像装置1が内蔵するメモリは、このプロセッサが読み出すことができるようにこのプログラムを記録した記録媒体である。
【0024】
まず、マスク生成部104はマスクデータ記憶部103に記憶されたマスクデータに基づいて、撮像装置1の位置を中心とする球面座標上でマスク領域の頂点を導出する(S300)。マスク領域の頂点の導出方法について図4(a)を用いて説明する。本実施例では、マスク領域が矩形であるものとして説明するが、マスク領域の形状は矩形に限られない。
【0025】
図4(a)は撮像装置1の位置を中心とする球面座標を示している。球面座標におけるマスク領域の始点の座標をm0(P,T)とし、幅をΔP、高さをΔTとすると、図4(a)のようにマスク領域Mを球面座標上に配置することができる。球面座標においてマスク領域Mの4頂点は、それぞれm0(P,T)、m1(P,T+ΔT)、m2(P+ΔP,T+ΔT)、m3(P+ΔP,T)として表される。
【0026】
次に、マスク生成部104は球面座標におけるマスク領域Mの各頂点を座標平面に射影する(S301)。マスク領域Mを座標平面に射影した対応領域r0r1r2r3を球面座標の中心から見た様子を図4(b)に示す。ここで、マスク生成部104は、撮像レンズ100の光軸と座標球面との交点を点Cとして、点Cにおいて座標球面と接する座標平面にマスク領域Mを射影するものとする。マスク領域Mの座標平面への射影は、ステップS300で導出したマスク領域Mの4頂点の球面座標を平面座標へ変換することにより行われる。以下、マスク領域Mの頂点座標の変換について、図4(c)に示すように座標球面の中心をOとして、奥行き成分xと幅成分yと高さ成分zに分けて説明する。ただし、x軸は座標球面の中心Oの位置にある撮像装置1の撮像レンズ100の光軸方向に設定される。また、座標球面の半径は1として考えるものとする。
【0027】
例として、頂点m0の座標変換について説明する。図4(c)に示すように、点Oから点Cを向いた方向を撮像装置1の基準方向として、点m0の水平方向の角度を角pとし、垂直方向の角を角tとする。
【0028】
初めに、マスク生成部104は、点Oに対する頂点m0の位置を求める。点Oに対する頂点m0の位置は、奥行き成分xと幅成分yと高さ成分zについてそれぞれ、
(式1)
|m0−Ox|=cos(t)cos(p)
|m0−Oy|=sin(p)cos(t)
|m0−Oz|=sin(t)
で表される。
【0029】
次に、マスク生成部104は、点Cにおいて球面座標と接する座標平面に球面座標上の点m0を射影した点r0の座標平面における座標を求める。図4(d)に示すように点Cから点r0までの水平角度、垂直角度をそれぞれr0_p、r0_tとすると、r0_p、r0_tはそれぞれ、
(式2)
r0_p=arctan(|m0−Oy|/|m0−Ox|)
r0_t=arctan(|m0−Oz|/|m0−Ox|)
で表される。
【0030】
そして、点C(Cx,Cy)を原点として平面座標上の点r0のx成分をu0、y成分をv0とすると、
(式3)
u0=Cx−画像表示領域の幅*(r0_p/撮像装置1の水平画角)
v0=Cy+画像表示領域の高さ*(r0_t/撮像装置1の垂直画角)
で表される。ただし、本実施例では画像表示領域の幅と高さについてはマスク生成部104があらかじめ保持しているものとする。また、画面のアスペクト比を考慮する場合には、式3において、画像表示領域の幅又は高さにアスペクト比率をかけて計算することとしてもよい。m0と同様にm1、m2、m3を変換し、画像表示領域上の平面座標r1(u1,v1)、r2(u2,v2)、r3(u3,v3)を得る。
【0031】
上記では球面座標上の領域を平面座標に投影する方法の一例を示したが、変換の方法は上記のものに限られない。球面座標上の指定された領域を平面座標に投影した領域である対応領域の頂点の座標を求めることができれば、いずれの方法を用いてもよい。このようにして、マスク生成部104は画像表示部111に表示される撮像画像を表すxy座標平面にマスク領域を投影した領域である対応領域を特定する。
【0032】
次にマスク生成部104は、r0、r1、r2、r3の座標値を相加平均して、マスク領域Mの中心とする点の平面座標を導出する(S302)。ステップS101において導出した、マスク領域Mの4頂点の平面座標についてx座標値とy座標値のそれぞれの平均値を点G(gu,gv)とすると、
(式4)
gu=(u0+u1+u2+u3)/4
gv=(v0+v1+v2+v3)/4
となる。このようにして、マスク生成部104は、xy座標平面における対応領域の頂点のx座標値とy座標値のそれぞれの平均値を算出する。
【0033】
続いてマスク生成部104は、対応領域に重畳するマスク画像の幅及び高さを求める(S303)。マスク画像の幅および高さをそれぞれW、Hとすると、それぞれ、
(式5)
W=画像表示領域の幅*Δp/撮像装置1の水平画角
H=画像表示領域の高さ*Δt/撮像装置1の垂直画角
で算出される。ただし、Δpは図4(c)に示したxyz空間上のxy平面において点m0と点m3が為す角である。また、Δtは図4(c)に示したxyz空間上のxz平面において点m0と点m1が為す角である。マスク画像の幅及び高さの算出方法においても式3と同様に、画面のアスペクト比を考慮してW、Hを算出することも可能である。マスク画像の幅及び高さの算出方法は上記の方法に限定されず、ステップS201で入力された設定値に基づいて適宜算出することができる。このようにして、マスク生成部104は位置情報に基づいてxy座標平面におけるマスク画像の幅及び高さを算出する。
【0034】
本実施例において重畳されるマスク画像は矩形であるとすると、マスク画像の左下基準点の座標(X,Y)は
(式6)
X=gu−W/2
Y=gv−H/2
となる。
【0035】
以上の手順より、マスク生成部104は撮像画像へ合成するための平面座標データR(X,Y,W,H)を取得する。
【0036】
続いてマスク生成部104は、画像合成部105に対して平面座標データの(X,Y)を始点にして、幅Wおよび高さHのマスク画像を撮像画像に合成させる(S304)。
【0037】
マスク生成部104の指示により、画像合成部105はマスク画像を撮像画像に重畳する。こうして、画像合成部105はマスク生成部104が算出したx座標値とy座標値の平均値をそれぞれx座標とy座標とする点とマスク画像の高さの中点であり且つ幅の中点である点とが重なるようにマスク画像を前記撮像画像に重畳する。その後、画像合成部105は、マスク画像合成後の撮像画像を画像表示部111に表示させる。複数のマスクデータがある場合は上と同様の手順を追って撮像画像部に表示させる。各マスクデータが、色情報を保持している場合はその色情報に従ってマスク領域に色付けをして表示する。各マスクデータが、有効か無効かのフラグを保持している場合は、そのフラグに従って有効であれば表示し、無効であれば非表示にする。
【0038】
以上の構成により、撮像画像には所定の形のマスク画像が重畳される。本実施例にかかる映像処理装置は、撮像画像に射影されたマスク領域の各頂点r0、r1、r2、r3の座標を平均して求めた点とマスク画像の中心が重なるようにマスク画像を重畳する。このようにすることで、例えば撮像画像に射影されたマスク領域r0、r1、r2、r3の対角線の交点とマスク画像の中心が重なるようにした場合に比べて、よりマスク領域とマスク画像とのずれを少なくすることができる。これは特に撮像平面の周辺部にマスク領域がある場合に効果が大きい。例えば、図8(b)に示すように座標平面上に射影されたマスク領域の幅が、図面上方に近づくに従って狭くなっている場合、マスク領域の対角線の交点はマスク領域の上方になる。この対角線の交点を中心とマスク画像の中心が重なるようにマスク画像を重畳した場合、マスク画像はマスク領域の上方に偏って重畳されることとなり、マスク領域の下方をカバーすることができない。一方、本実施例に示すように、マスク領域の各頂点の座標値の平均値を中心座標としてマスク画像を重畳する場合、マスク領域全体に満遍なくマスク画像を重畳することができる。
このようにして、マスク領域設定を行うために手間や時間をかけず、かつ、平面上に表されるマスク領域にマスク画像を適切に重畳して保護することができる。
【0039】
(実施例2)
実施例2では、パン回転及びチルト回転可能な撮像装置を用いる例について説明する。パン回転及びチルト回転可能な撮像装置においては、撮像装置の撮像方向の変化に伴い、表示画像におけるマスク領域の位置も移動する。従って、撮像装置の撮像方向の変化に伴ってマスク画像の重畳位置も変化する。本実施例では、撮像装置の撮像方向の変化に伴ってマスク画像の重畳位置が変化した場合にも、マスク領域設定を行うために手間や時間をかけず、かつ、平面上に表されるマスク領域にマスク画像を適切に重畳して保護することができる映像処理装置について説明する。
【0040】
最初に、本発明の第2の実施例における撮像装置2の構成について図5を用いて説明する。実施例2にかかる撮像装置2は、実施例1の撮像装置1の構成に加えて、制御部201と、パン・チルト回転機構202と、変倍レンズ駆動部203と、保持部204と、取得部205と検出部207を有する。また、実施例1の撮像装置1の撮像レンズ100に替えて、撮像レンズ100に変倍レンズを付加した撮像レンズ群200と、撮像装置1のマスク生成部104の処理をパン、チルト、ズームの座標変換に対応させたマスク生成部206とを有する。
【0041】
制御部201は後述の操作部121から出力される命令に基づいて、パン・チルト回転機構202と変倍レンズ駆動部203を制御する。パン・チルト回転機構202は撮像装置全体をパン駆動およびチルト駆動させる機構である。また、変倍レンズ駆動部203は撮像レンズ200の変倍レンズを駆動させて、倍率(以下、ズーム倍率)を変更する機構である。
【0042】
保持部204はパン・チルト回転機構202及び変倍レンズ駆動部203からズーム倍率とパン回転およびチルト回転の角度情報を取得して保持する。取得部205は保持部204から現在のパン角度、チルト角度、ズーム倍率の値を取得する。
【0043】
マスク生成部206は取得部205が取得した値に応じてマスク生成部206でマスクデータの座標変換を行う。また、マスク生成部206は撮像画像に重畳するマスク画像の生成を行う。マスク生成部206はハードウエアとして構成することができる。あるいは、撮像装置2にプロセッサ及びメモリを設け、メモリに記憶されたプログラムをプロセッサが実行することにより、マスク生成部206の機能を実現させることとしてもよい。
【0044】
検出部207は、パン回転またはチルト回転またはズーム倍率の変更を動的に検出し、そのフラグをマスク生成部206に渡す。
撮像装置2について、その他の構成は実施例1において説明したものと同一であるので、同一の符号を付して説明を省略する。
【0045】
次にGUI12について説明する。GUI12は実施例1におけるGUI11の構成に加えて、操作部121を有する。操作部121は撮像装置2のパン・チルト回転機構202と変倍レンズ駆動部203をGUI12上で操作するものである。ユーザは操作部121を用いて、撮像装置のパン回転角度、チルト回転角度、およびズーム倍率を入力する。操作部121は入力された値を制御部201に出力する。
【0046】
GUI12について、その他の構成については実施例1において説明したものと同一なので同一の符号を付して説明を省略する。また、GUI12におけるマスクデータ設定動作についても実施例1において説明したものと同様であるので説明を省略する。
【0047】
次に、撮像装置2におけるマスク画像の生成と撮像画像への合成動作について説明する。まず、取得部205が保持部204から撮像装置2の現在のパン回転角度(cam_pan)とチルト回転角度(cam_tilt)、および現在のズーム倍率における水平画角及び垂直画角を取得する。
【0048】
次に、マスク生成部206がマスク画像を生成する。マスク生成部206の動作について図6を用いて説明する。撮像装置2がプロセッサ及びメモリを内蔵する形態では、図6の処理フローは、図6に示される手順をこのプロセッサに実行させるためのプログラムを示す。撮像装置2が内蔵するプロセッサは、コンピュータであり、撮像装置2が内蔵するメモリから読み出したプログラムを実行してマスク生成部206を制御する。撮像装置2が内蔵するメモリは、このプロセッサが読み出すことができるようにこのプログラムを記録した記録媒体である。
【0049】
まず、マスク生成部206は、取得部205が取得した撮像装置のパン回転角度、チルト回転角度及びズーム倍率のいずれかが変更されたか判断する(S600)。変更がない場合(S600でNoの場合)、現在マスクが重畳されている位置にマスクを重畳する。
【0050】
一方、取得部205において変更があった場合(S600でYesの場合)には、マスク生成部206は、取得部205から取得したデータとマスクデータとに基づいて、撮像装置1の位置を中心とする球面座標上でマスク領域の4頂点を導出する(S601)。
【0051】
マスク領域Mの4頂点の導出方法について図7(a)を用いて説明する。本実施例ではマスク領域が矩形であるものとして説明するが、マスク領域の形状は矩形に限られない。
図7(a)は撮像装置2の位置を中心とする球面座標を示している。球面座標におけるマスク領域の始点の座標をm0(P’,T’)とし、幅をΔP’、高さをΔT’とすると、図7(a)のようにマスク領域M’を球面座標上に配置することができる。球面座標においてマスク領域Mの4頂点は、それぞれm0’(P’,T’)、m1’(P’,T’+ΔT’)、m2’(P’+ΔP’,T’+ΔT’)、m3’(P’+ΔP’,T’)として表される。
【0052】
次に、マスク生成部206は球面座標におけるマスク領域M’の各頂点を座標平面に射影する(S602)。マスク領域M’を座標平面に射影した対応領域r0’r1’r2’r3’を球面座標の中心から見た様子を図7(b)に示す。ここで、マスク生成部206は、撮像レンズ100の光軸と座標球面との交点を点C’として、点C’において座標球面と接する座標平面にマスク領域M’を射影するものとする。マスク領域M’の座標平面への射影は、ステップS601で導出したマスク領域M’の4頂点の球面座標を平面座標へ変換することにより行われる。以下、マスク領域M’の頂点座標の変換について、図7(c)に示すように座標球面の中心をOとして、奥行き成分xと幅成分yと高さ成分zに分けて説明する。ただし、x軸は座標球面の中心Oの位置にある撮像装置2の撮像レンズ群200の光軸方向に設定される。また、座標球面の半径は1として考えるものとする。
【0053】
例として、頂点m0’の座標変換について説明する。図7(c)に示すように、中心Oから点m0’を向いた方向と撮像装置2の撮像方向の水平方向における為す角をpan_diff、垂直方向における為す角をtilt_diffとする。ここで、pan_diff、及びtilt_diffは取得部205が取得したcam_pan、及びcam_tiltから求められる。
【0054】
初めに、マスク生成部206は、点Oに対する頂点m0’の位置を求める。
点m0’を奥行き成分xと幅成分yと高さ成分zに分けて考えると、点Oに対する頂点m0の位置は、奥行き成分xと幅成分yと高さ成分zについてそれぞれ、
(式7)
|m0’−C’x|=cos(tilt_diff)cos(pan_diff)
|m0’−C’y|=sin(pan_diff)cos(tilt_diff)
|m0’−C’z|=sin(tilt_diff)
で算出される。
【0055】
次に、マスク生成部206は、点C’において球面座標と接する座標平面に球面座標上の点m0’を射影した点r0’の座標平面における座標を求める。点C’から点r0’までの水平角度、垂直角度をそれぞれr0_p’、r0_t’とすると、r0_p’、r0_t’はそれぞれ、
(式8)
r0_p’=arctan(|m0’−C’y|/|m0’−C’x|)
r0_t’=arctan(|m0’−C’z|/|m0’−C’x|)
で算出される。
【0056】
そして、点C’(C’x,C’y)を原点として平面座標上の点r0’のx成分をu0’、y成分をv0’とすると、
(式9)
u0’=C’x−画像表示領域の幅*(r0’_p/撮像装置2の現在の水平画角)
v0’=C’y+画像表示領域上の高さ*(r0’_t/撮像装置2の現在の垂直画角)
で表される。ただし現在の撮像装置2の水平画角及び垂直画角は取得部205が取得し、マスク生成部206に出力されるものとする。実施例1の場合と同様に、画面のアスペクト比を考慮する場合には、式3において、画像表示領域の幅又は高さにアスペクト比率をかけて計算することとしてもよい。同様に、m1’、m2’、m3’を変換し、描画平面上の座標r1’(u1’,v1’)、r2’(u2’,v2’)、r3’(u3’,v3’)を得る。
【0057】
上記では球面座標上の領域を平面座標に投影する方法の一例を示したが、変換の方法は上記のものに限られない。球面座標上の指定された領域を平面座標に投影した領域である対応領域の頂点の座標を求めることができれば、いずれの方法を用いてもよい。このようにして、マスク生成部206は画像表示部111に表示される撮像画像を表すxy座標平面にマスク領域を投影した領域である対応領域を特定する。
【0058】
次にマスク生成部206は、r’1、r’2、r’3、r’4の座標値を相加平均して、マスク領域Mの中心とする点の平面座標を導出する(S603)。ステップS601において導出した、マスク領域Mの4頂点の平面座標についてx座標値とy座標値のそれぞれの平均値を点G’(gu’,gv’)とすると、
(式10)
gu’=(u0’+u1’+u2’+u3’)/4
gv’=(v0’+v1’+v2’+v3’)/4
となる。このようにして、マスク生成部206は、xy座標平面における対応領域の頂点のx座標値とy座標値のそれぞれの平均値を算出する。
【0059】
続いてマスク生成部104は、対応領域に重畳するマスク画像の幅及び高さを求める(S604)。マスク画像の幅および高さをそれぞれW’、H’とすると、それぞれ、
(式11)
W’=画像表示領域の幅*Δp’/撮像装置2の現在の水平画角
H’=画像表示領域の高さ*Δt’/撮像装置2の現在の垂直画角
で算出される。ただし、Δp’は図6(c)に示したxyz空間上のxy平面において点m0と点m3が為す角である。また、Δt’は図6(c)に示したxyz空間上のxz平面において点m0と点m1が為す角である。マスク画像の幅及び高さの算出方法においても式3と同様に、画面のアスペクト比を考慮してW’、H’を算出することも可能である。マスク画像の幅及び高さの算出方法は上記の方法に限定されず、入力された設定値に基づいて適宜算出することができる。このようにして、マスク生成部206は位置情報に基づいてxy座標平面におけるマスク画像の幅及び高さを算出する。
【0060】
本実施例において重畳されるマスク画像は矩形であるとすると、マスク画像の左下基準点の座標(X’,Y’)は
(式12)
X’=gu’−W’/2
Y’=gv’−H’/2
となる。以上の手順より、マスク生成部206は平面座標データR’(X’,Y’,W’,H’)を取得する。
【0061】
続いてマスク生成部206は、画像合成部105に対して平面座標データの(X’,Y’)を始点にして、幅W’および高さH’のマスク画像を撮像画像に合成させる(S605)。
【0062】
マスク生成部206の指示により、画像合成部105はマスク画像を撮像画像に重畳する。こうして、画像合成部105はマスク生成部206が算出したx座標値とy座標値の平均値をそれぞれx座標とy座標とする点とマスク画像の高さの中点であり且つ幅の中点である点とが重なるようにマスク画像を撮像画像に重畳する。その後、画像合成部105は、マスク画像が合成された撮像画像を画像表示部111に表示させる。複数のマスクデータがある場合は上と同様の手順を追って撮像画像部に表示される。各マスクデータが、色情報を保持している場合はその色情報に従ってマスク領域に色付けをして表示する。各マスクデータが、有効か無効かのフラグを保持している場合は、そのフラグに従って有効であれば表示し、無効であれば非表示にする。また、PTZ位置変更検出部が、パン角度またはチルト角度またはズーム倍率の変更を検出した場合に、マスク生成部206で平面座標データR’が更新され、画像合成部105で撮像画像に描画される。
【0063】
以上の構成により、実施例1にかかる発明と同じ効果に加えて、撮像装置の撮像方向の変化に伴ってマスク画像の重畳位置が変化した場合にも、平面上に表されるマスク領域にマスク画像を適切に重畳することができる。本実実施例によれば、撮像方向の変化に伴ってマスク画像の重畳位置が変化した場合に、変化量に応じてマスク画像の大きさ等について特段の補正を行わなくても、適切な位置にマスク画像を重畳することができる。従って、マスク画像を重畳するための処理量を軽減することができる。ただし本発明は、本実施例において説明した方法でマスク画像を重畳し、かつ、変化量に応じてマスク画像の大きさ等について補正も行う場合を排除するものではない。
【0064】
また、本実施例によれば従来例のようにマスク領域設定を行う度に、マスク領域が撮像画像の中心に来るようにカメラ方向を移動させる必要がない。
このようにして、マスク領域設定を行うために手間や時間をかけず、かつ、平面上に表されるマスク領域にマスク画像を適切に重畳して保護することができる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【0065】
例えば、xy座標上に表されるマスク領域の歪みが少ない中央部においては、マスク画像によって保護される領域とマスク領域のズレが少ないので、本実施例を適用せず、マスク領域が表示画面の周辺部にある場合のみ本実施例を適用してもよい。この場合、表示画面におけるマスク領域の位置を検出する検出手段と当該マスク領域の位置が表示画面の周辺部にあるか判定する判定部を設け、マスク領域が周辺部にある場合にのみ本実施例において示したマスク画像の重畳を行うことができる。前記検出部は例えば、撮像レンズ群200の光軸と前記マスク領域上の点(マスク領域の中心や頂点等)とが為す角度を検出する。そして、前記検出部が検出した角度が所定の角度を超えた場合に、本実施例にかかるマスク画像の重畳を行うようにすることができる。このようにすれば、マスク領域がxy座標の中央部にある場合には計算量を軽減することができる。
【0066】
(その他の実施例)
実施例1及び実施例2では、撮像画像を表すxy座標平面に投影されたマスク領域の全ての頂点についてx座標値とy座標のそれぞれの平均値を算出し、算出した座標を中心座標としてマスク画像を重畳したが、平均値の算出方法はこれに限られない。xy座標平面に投影されたマスク領域の全ての頂点の座標から、x座標値の最大値と最小値を選択して平均し、また、y座標の最大値と最小値を選択して平均することにより求められるxy座標を中心座標としてマスク画像を重畳してもよい。この場合にも、実施例1や実施例2と同様に、マスク領域に対してマスク画像が偏った位置に重畳されることを防ぐことができる。従って、マスク領域設定を行うために手間や時間をかけず、かつ、平面上に表されるマスク領域にマスク画像を適切に重畳して保護することができる。
【0067】
また、実施例1及び実施例2では、マスク画像をマスクデータに基づいて生成する場合について説明したが、あらかじめ不図示の記憶部に記憶された所定のマスク画像を重畳することとしてもよい。この場合も算出した平均座標をそれぞれx座標とy座標とする点とマスク画像の高さの中点であり且つ幅の中点である点とが重なるようにマスク画像を重畳することにより、実施例1又は実施例2で説明した効果と同じ効果を奏する。
【0068】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0069】
1 撮像装置
100 撮像レンズ
103 マスクデータ記憶部
104 マスク生成部
105 画像合成部

【特許請求の範囲】
【請求項1】
撮像手段を中心とする球面座標において指定された領域を特定する特定手段と、
前記撮像手段が撮像した撮像画像を表示手段に表示させる表示制御手段と、
前記表示手段に表示される前記撮像画像を表すxy座標平面に前記指定された領域を投影した領域である対応領域に重なるようにマスク画像を重畳する重畳手段とを有する映像処理装置において、
前記xy座標平面における前記対応領域の頂点のx座標値とy座標値のそれぞれの平均値を算出する算出手段を有し、
前記重畳手段は前記xy座標平面において前記算出手段が算出したx座標値とy座標値の平均値をそれぞれx座標y座標とする点とマスク画像の高さの中点であり且つ幅の中点である点とが重なるように前記マスク画像を前記撮像画像に重畳することを特徴とする映像処理装置。
【請求項2】
前記特定手段は、前記球面座標における前記指定された領域の位置、幅及び高さを特定し、
前記指定された領域の前記幅及び前記高さに基づいて、前記xy座標平面における前記マスク画像の高さ及び幅を導出する導出手段と、
前記導出手段が導出した高さ及び幅のマスク画像を生成する生成手段と
を有することを特徴とする請求項1に記載の映像処理装置。
【請求項3】
被写体を撮像する撮像手段と、
前記撮像手段を中心とする球面座標において指定された領域を特定する特定手段と、
前記撮像手段が撮像した撮像画像を表示手段に表示させる表示制御手段と、
前記表示手段に表示される前記撮像画像を表すxy座標平面に前記指定された領域を投影した領域である対応領域に重なるようにマスク画像を重畳する重畳手段とを有する撮像装置において、
前記重畳手段は、前記xy座標平面における前記対応領域の頂点のx座標値とy座標値のそれぞれの平均値を算出する算出手段を有し、
前記重畳手段は前記xy座標平面において前記算出手段が算出したx座標値とy座標値の平均値をそれぞれx座標y座標とする点とマスク画像の高さの中点であり且つ幅の中点である点とが重なるように前記マスク画像を前記撮像画像に重畳することを特徴とする撮像装置。
【請求項4】
前記撮像手段をパン駆動するパン駆動手段と、
前記撮像手段をチルト駆動するチルト駆動手段とを有し、
前記重畳手段は、前記パン駆動手段又は前記チルト駆動手段が前記撮像手段を駆動した場合に前記マスク画像の重畳を行うことを特徴とする請求項3に記載の撮像装置。
【請求項5】
撮像手段が撮像した撮像画像を表示手段に表示させる映像処理装置における映像処理方法において、
特定手段が、前記撮像手段を中心とする球面座標において指定された領域を特定する特定ステップと、
投影手段が、前記表示手段に表示される前記撮像画像を表すxy座標平面に前記指定された領域を投影する投影ステップと、
算出手段が、前記指定された領域を前記xy座標平面に投影した領域である対応領域の頂点の前記xy平面におけるx座標値とy座標値のそれぞれの平均値を算出する算出ステップと、
重畳手段が、前記xy座標平面において前記の算出ステップにおいて算出したx座標値とy座標値の平均値をそれぞれx座標とy座標とする点とマスク画像の高さの中点であり且つ幅の中点である点とが重なるように前記マスク画像を前記撮像画像に重畳する重畳ステップとを有することを特徴とする映像処理方法。
【請求項6】
撮像手段が撮像した撮像画像を表示手段に表示させるコンピュータに、
前記撮像手段を中心とする球面座標において指定された領域を特定する特定手順と、
前記表示手段に表示される前記撮像画像を表すxy座標平面に前記指定された領域を投影する投影手順と、
前記指定された領域を前記xy座標平面に投影した領域である対応領域の頂点の前記xy座標平面におけるx座標値とy座標値のそれぞれの平均値を算出する算出手順と、
前記xy座標平面において前記算出手順において算出したx座標値とy座標値の平均値をそれぞれx座標とy座標とする点とマスク画像の高さの中点であり且つ幅の中点である点とが重なるように前記マスク画像を前記撮像画像に重畳する重畳手順とを実行させる映像処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−95195(P2012−95195A)
【公開日】平成24年5月17日(2012.5.17)
【国際特許分類】
【出願番号】特願2010−242225(P2010−242225)
【出願日】平成22年10月28日(2010.10.28)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】