JP2019047204A - 画像処理装置、画像処理方法、及びプログラム - Google Patents

画像処理装置、画像処理方法、及びプログラム Download PDF

Info

Publication number
JP2019047204A
JP2019047204A JP2017165786A JP2017165786A JP2019047204A JP 2019047204 A JP2019047204 A JP 2019047204A JP 2017165786 A JP2017165786 A JP 2017165786A JP 2017165786 A JP2017165786 A JP 2017165786A JP 2019047204 A JP2019047204 A JP 2019047204A
Authority
JP
Japan
Prior art keywords
mask
image
image processing
position information
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017165786A
Other languages
English (en)
Inventor
隆二 永池
Ryuji Nagaike
隆二 永池
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2017165786A priority Critical patent/JP2019047204A/ja
Publication of JP2019047204A publication Critical patent/JP2019047204A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Studio Devices (AREA)

Abstract

【課題】球面座標でマスク設定を行う場合において、保護対象領域に対するマスク領域の位置ずれを低減して、保護対象領域を適切にマスク可能にすることを課題とする。【解決手段】マスク生成部(104)は、撮像装置(1)により撮像した撮影画像について、対象領域をマスクするための位置情報を取得する。また、マスク生成部(104)は、撮影画像の画像中心から前記位置情報の示す位置までの距離に基づいて、マスク領域を描画平面に射影したマスク画像を生成する。そして、画像合成部(105)は、マスク生成部(104)により生成したマスク画像を撮影画像に合成する。【選択図】図1

Description

本発明は、監視カメラなどで取得した画像について、画像処理によってプライバシーや個人情報を保護するための技術に関する。
従来、監視カメラにおいてプライバシー保護や個人情報保護の観点から、映像および画像の一部を保護対象領域とし、遮蔽するマスキング技術が浸透している。監視カメラの中には360度パン回転、90度を超えるチルト回転をするものがあり、現実に同じ範囲を遮蔽するためには、それらの回転に応じてマスキング位置を追従させなければならない。そのためには、座標変換が必要となり、従来の手法では遮蔽したい保護対象領域に対してマスキングの位置がずれてしまうといった問題があった。
このため、例えば特許文献1には、撮像装置を中心とした球面座標上に設定したマスク領域の頂点を撮影平面に対して射影し、平面に射影された頂点の重心を中心にマスク領域を描画する技術が開示されている。この技術によれば、変倍光学系の広角側のように球面座標の影響が大きい場合でも、保護対象領域に対するマスクのカバー率を向上させることができる。
また、チルト角が水平よりも垂直に近い角度の場合、パン回転によって被写体が大きく傾いて保護対象領域をカバーできなくなることがある。これに対し、特許文献2には、チルト角に応じてマスク領域を傾けることで、保護対象領域を適切にカバーできるようにする技術が開示されている。
特開2012−95195号公報 特開2008−131422号公報
しかしながら、光学系を介して光像が形成される撮像素子は平面である一方、マスク領域として設定された座標は撮像装置を中心とした球面座標上の角度(経度緯度)で表されるため、座標変換に関わる問題は依然として存在している。つまり、マスク領域の座標が撮像装置を中心とした球面座標により表されているため、マスク領域の位置は、光軸中心からパン方向の角度が大きくなるほど、射影方向(光軸方向)において撮像装置に近づくことになる。これは言い換えると、原理的に、球面座標上で等間隔のパン角度座標であっても、平面に射影した場合には、その平面の周辺部になるにつれて水平方向に距離が等間隔にならないことを意味する。このため、特許文献1のようにマスク領域を重心で描画したとしても、マスク位置が中心から周辺へ遠ざかると、保護対象領域に対してマスク領域の位置がずれて適切に遮蔽(マスク)できなくなる問題は依然として残っている。このようなことは、撮像装置の撮像レンズが一般に超広角と呼ばれるような光学系である場合に特に顕著となる。
そこで、本発明は、撮像装置がパン、チルト等されても、保護対象領域に対するマスク領域の位置ずれを低減して、保護対象領域を適切にマスク可能にすることを目的とする。
本発明に係る画像処理装置は、撮像装置により撮像した撮影画像について、対象領域をマスクするための位置情報を取得する取得手段と、前記撮影画像の画像中心から前記位置情報の示す位置までの距離に基づいて、マスク領域を描画平面に射影したマスク画像を生成する生成手段と、前記生成手段により生成したマスク画像を前記撮影画像に合成する合成手段とを有することを特徴とする。
本発明によれば、撮像装置がパン、チルト等されても、保護対象領域に対するマスク領域の位置ずれを低減して、保護対象領域を適切にマスク可能となる。
第1の実施形態の撮像装置とGUIの概略構成を示す図である。 第1の実施形態のGUIの構成例を示す図である。 画像表示部上でのマスク領域の指定例の説明図である。 マスクデータ設定処理のフローチャートである。 マスク領域のずれの説明図である。 第1の実施形態における球面座標を表す図である。 第1の実施形態におけるマスク領域と描画平面の関係説明図である。 第1の実施形態における射影位置から距離への換算表を示す図である。 第1の実施形態における射影曲線を示す図である。 第1の実施形態の射影曲線に対応する補正された直線を示す図である。 第1の実施形態における位置補正処理のフローチャートである。 第2の実施形態の撮像装置とGUIの概略構成を示す図である。 第2の実施形態のGUIの構成例を示す図である。 第2の実施形態における球面座標を表す図である。 第2の実施形態におけるマスク領域と描画平面の関係説明図である。 第2の実施形態の射影位置から距離への換算表を示す図である。 第2の実施形態の射影曲線を示す図である。 第2の実施形態における位置補正処理のフローチャートである。 曲線と重心G´の位置関係を表す図である。 距離と補正位置Q´の関係を表す図である。 距離と歪曲率の関係を表す図である。
以下、本発明の好ましい実施形態を、添付の図面に基づいて詳細に説明する。
本実施形態の画像処理装置は、例えば監視カメラにより撮影された映像の一部にプライバシー保護や個人情報保護のためのマスク画像を描画する装置である。
<第1の実施形態>
図1は、第1の実施形態の画像処理装置の一適用例である撮像装置1およびGUI(Graphical User Interface)2の概略的な構成を示したブロック図である。なお、本実施形態の撮像装置は、パン回転、チルト回転が可能となされた雲台付きの監視カメラであるとする。
撮像装置1の撮像レンズ100は、被写体等からの入射光を撮像素子101に結像させる光学系であり、本実施形態の場合、超広角を含む光学系となされている。撮像素子101は、撮像レンズ100により結像された光学像を撮像し、その撮像信号を出力する。現像部102は、撮像素子101から出力されたアナログ信号である撮像信号をデジタル信号に変換して、そのデジタル画像信号にいわゆる現像処理を行う。現像部102による現像処理後の撮影画像データは、画像合成部105に送られる。
マスクデータ記憶部103は、後述するマスクデータ設定部201においてユーザの指定を基に設定されたマスクデータを取得して記憶する。ここでマスクデータは、撮影画像の中で保護の対象となされる領域(プライバシー領域、以下の説明では、保護対象領域と呼ぶ。)をマスク(遮蔽)するためにユーザにより設定されたマスク領域の位置を表した位置情報である。詳細は後述するが、マスクデータは、ユーザにより設定されたマスク領域の位置を、撮像装置1を中心とする球面座標上の角度により表したデータとなされている。マスク生成部104は、マスクデータ記憶部103からマスクデータ(位置情報)を取得し、撮影画像の画像中心からマスクデータの示す位置までの距離に基づいて、そのマスクデータを補正(つまりユーザにより設定されたマスク領域の位置を補正)する。そして、マスク生成部104は、その補正後のマスクデータに基づくマスク領域を描画平面に射影したマスク画像を生成する。マスク生成部104により生成されたマスク画像は、画像合成部105に送られる。画像合成部105は、現像部102による現像処理後の撮影画像内の保護対象領域に、マスク生成部104にて生成されたマスク画像を重ねるように合成する。本実施形態におけるマスクデータの設定処理、マスクデータの補正処理、マスク画像の生成処理、保護対象領域に対するマスク画像の合成処理の詳細については後述する。
GUI2は、撮像装置1に内蔵又は接続されている。なお、GUI2は、ネットワークを介して撮像装置1と接続されていてもよい。GUI2は、画像表示部200およびマスクデータ設定部201を有する。画像表示部200は、撮像装置1の画像合成部105から出力された画像を表示する。画像合成部105において保護対象領域にマスク画像が合成された場合、画像表示部200には、マスク画像により保護対象領域が遮蔽された状態の画像が表示される。マスクデータ設定部201は、撮像素子101が撮像して現像部102で現像処理された画像に合成されるマスク画像を生成するためのマスク領域の位置を表すマスクデータを、ユーザからの指示に応じて設定する。そして、そのマスクデータが、撮像装置1のマスクデータ記憶部103に記憶される。
図2は、GUI2の一構成例を示した図であり、GUI2はユーザが任意のマスクデータを設定するための画面構成を有している。GUI2には前述した画像表示部200が配されている。図3(a)〜図3(d)は、画像表示部200の表示上で撮影画像内の保護対象領域を遮蔽する矩形画像301が表示されている様子を示した図である。矩形画像301はユーザにより任意に指定可能となされており、画像表示部200の表示上では図3(a)〜図3(d)に例示した矩形画像301として表される。
矩形画像301の指定の際には、画像表示部200上の矩形画像301における始点302(この例では矩形左下の頂点を始点とする。)と矩形画像301の高さと幅とがユーザにより任意に指定可能となされる。なお、矩形画像301の傾きの角度についてもユーザにより任意に指定可能であってもよい。これら始点302と高さと幅と傾きの角度の指定方法としては様々な方法を用いることができ、本実施形態では一例として二つの指定方式を挙げる。
一つ目の指定方式は、図3(a)〜図3(d)のように、ユーザがマウス等のようなポインティングデバイスによるカーソル310の操作を介し、矩形画像301の始点302と高さと幅と傾きの角度とを、ドラッグアンドドロップ等により指定する方式である。図3(a)は、本実施形態のGUI2がマスク領域指定モードに移行した際に、画像表示部200上の初期位置に矩形画像301が表示された状態を表している。図3(b)は、図3(a)の初期位置の矩形画像301の幅が画像表示部200上で変更された一例を示しており、この例では矩形画像301の右辺がカーソル310の操作により右側に引き伸ばされた例を示している。また、図3(c)は、図3(a)の初期位置の矩形画像301の高さが画像表示部200上で変更された一例を示し、この例では矩形画像301の上辺がカーソル310の操作により上側に引き伸ばされた例を示している。また、図3(d)は、図3(a)の初期位置の矩形画像301の始点302の位置が画像表示部200上で変更された一例を示し、この例ではカーソル310の操作により矩形画像301の始点302の位置が右下側に移動された例を示している。なお、図示は省略するが、矩形画像301は画像表示部200上で回転可能ともなされており、カーソル310の操作等を介して矩形画像301を回転させることで矩形画像301の傾きの指定も可能である。
二つ目の指定方式は、ユーザが、GUI2上に設けられた入力フォーム等を介して直接、始点302と高さと幅、傾きの角度等を入力することにより指定する方式である。
これら二つの何れかの指定方式により矩形画像301の指定がなされると、マスクデータ設定部201は、その指定された矩形画像301の始点(位置)と幅と高さと傾きの角度を含むマスクデータを生成する。そして、マスクデータ記憶部103は、そのマスクデータを保持する。マスク生成部104は、マスクデータ記憶部103に保持されたマスクデータを基に、マスク領域を描画平面に射影したマスク画像を生成し、画像合成部105は、撮影画像にマスク画像を合成する。これにより、画像表示部200上でマスク画像により保護対象領域が遮蔽されることになる。
なお、マスクデータ記憶部103は、前述のように指定された矩形画像301の始点302(位置)と高さと幅と傾きを含むマスクデータを、最大マスク設定数以内で複数保持することができる。また、矩形画像301の指定の際には、前述した始点と高さと幅と傾き角度以外に、マスク領域を塗りつぶす色情報の指定、マスク領域が有効か無効かを示すフラグの指定が行われてもよい。この場合、これら色情報やフラグもマスクデータに含まれる。
図4は、GUI2がマスク領域指定モードに移行した後、前述のようなマスクデータの設定がなされる際のマスクデータ設定部201における処理の流れを示すフローチャートである。なお、GUI2の画像表示部200およびマスクデータ設定部201はハードウェアとして構成されてもよいし、ソフトウェアとして構成されてもよい。ソフトウェアとして構成される場合、図4のフローチャートの処理に係るプログラムをCPU等が実行することによりGUI2の機能が実現される。本実施形態に係るプログラムは、不図示の不揮発性メモリ等に予め用意されていてもよいし、ネットワークや記録媒体を介してメモリ等に展開されてもよい。なお、以下の説明では、図4のフローチャートの各処理のステップS100〜S104を、S100〜S104と略記する。このことは後述する他のフローチャートにおいても同様とする。
先ず、図4のフローチャートの処理が開始されると、S100として、GUI2のマスクデータ設定部201は、S100として、ユーザから、保護対象領域に対するマスク領域の指定を開始する旨の指示入力がなされたか否か判定する。例えば、画像表示部200の表示画像の中に保護対象領域が存在し、ユーザから、ポインティングデバイス等を介して保護対象領域に対するマスク領域の指定を開始する旨の指示入力がなされた場合、マスクデータ設定部201はS101に処理を進める。一方、保護対象領域が存在しないため、ユーザからマスク領域を指定しない旨の指示入力がなされた場合、マスクデータ設定部201は図4のフローチャートのマスク設定処理を終了する。
S101に進むと、マスクデータ設定部201は、マスク領域の指定方法として、ユーザにより前述した二つの指定方式の何れを用いるかの指定がなされたかを判定する。そして、マスクデータ設定部201は、前述した一つ目の指定方式(カーソル指定方式)を用いる旨の指定がなされた場合にはS102に、一方、二つ目の指定方式(数値指定方式)を用いる旨の指定がさされた場合にはS103に処理を進める。
S102に進んだ場合、マスクデータ設定部201は、前述の図3(a)〜図3(d)で説明したように画像表示部上でカーソルを用いた位置、高さ、幅、角度などの指定に応じた矩形画像301のマスクデータを設定する。一方、S103に進んだ場合、入力フォームを用いた位置、高さ、幅、角度などの指定に応じた矩形画像301のマスクデータを設定する。S102またはS103の後、マスクデータ設定部201は、S104の処理に進む。
S104に進むと、マスクデータ設定部201は、設定されたマスクデータが最大マスク設定数を超えるか否か判定し、超えない場合にはS100へ処理を戻して次のマスクデータの設定を可能とする。一方、S104において、最大マスク設定数を超えると判定した場合、マスクデータ設定部201は、GUI2によりその旨を画像表示部200の画面上に表示させた後、図4のフローチャートのマスク設定処理を終了する。
ここで、例えば撮像装置1をパン回転やチルト回転させた場合、それら回転に応じて撮影画像内の保護対象領域も移動することになる。このため、パン回転やチルト回転等されても保護対象領域を常にマスクし続けるためには、それら回転に応じてマスク領域の位置を追従させなければならない。
図5(a)は、撮像装置を例えば北極星から見て反時計回りにパン回転させた場合に、撮像レンズの光学系に対応した2次元平面の撮影画像上で、パン回転に応じて保護対象領域500が移動する様子を表したイメージ図である。一方、図5(b)は、撮像装置を北極星から見て反時計回りにパン回転させた場合に、従来技術において、撮像装置を中心とする球面座標上でパン回転に追従してマスク領域が移動する様子を表したイメージ図である。これら図5(a)、図5(b)に示すように、マスク領域は球面座標で表現されるため、保護対象領域500の位置が中心から周辺へ遠ざかると、保護対象領域500に対してマスク領域501の位置がずれるようになる。
そこで、本実施形態の撮像装置1では、マスクデータの示す位置が撮像装置を中心とした球面座標上の角度により設定され、マスク領域が描画平面に射影される場合において、画像中心からマスクデータの示す位置までの距離に応じてマスク領域の位置を補正する。すなわち本実施形態の撮像装置1は、画像中心からマスクデータの示す位置までの距離に応じてマスク領域の位置を補正することにより、前述した位置ずれを低減して保護対象領域を適切にマスク可能としている。
以下、図6および図7を参照しながら、マスクデータ設定部201で設定されたマスクデータの示す位置と、マスク生成部104におけるマスクデータの示す位置の補正後のマスク領域について説明する。
図6と図7には撮像装置1の位置を中心とした球面座標が示されている。また、図6と図7の球面座標において、マスクデータ700の始点の座標をm0、パン角度をp、チルト角度をt、幅をΔp、高さをΔtとする。また、マスクデータ700は、M(p,t,Δp,Δt)のように表されるとする。この時の球面座標上でのマスクデータ700の四つの頂点の座標は、m0(p,t),m1(p,t+Δt),m2(p+Δp,t+Δt),m3(p+Δp,t)となる。また、撮像装置1の光軸と図6、図7の球面座標で表される球面との交点の位置をCとすると、交点の位置Cは図7の描画平面における中心と一致する。そして、図7のマスクデータ700の球面座標を図7の描画平面に射影した場合、球面座標上のマスクデータ700の四つの頂点m0,m1,m2,m3は、図7の描画平面上では、それぞれn0,n1,n2,n3の4点となる。
球面座標上のマスクデータ700の四つの頂点m0,m1,m2,m3が描画平面に射影される際には、それぞれ同じ座標変換処理が行われるため、以下、マスクデータ700の始点であるm0に着目して、変換処理の説明を行う。
図7の球面座標上における画像中心(つまり撮像装置の光軸と球面との交点)の位置をC(0,0)とし、マスクデータ700の始点m0をx成分とy成分とz成分とに分けて考える。この場合、x成分における始点m0と位置Cとの間の距離|m0−Cx|、y成分における始点m0と位置Cとの間の距離|m0−Cy|、z成分における始点m0と位置Cとの間の距離|m0−Cz|は、下記の式(1)で表される。
|m0-Cx|=cox(t)*cos(p)
|m0-Cy|=sin(p)*cos(t)
|m0-Cz|=sin(t) 式(1)
また、始点m0から、位置Cを中心とする球面座標上の撮影面までの水平方向(x方向)の距離|m0−Cyx|および垂直方向(y方向)の距離|m0−Czx|は、下記の式(2)で表される。
|m0−Cyx|=sqrt(|m0−Cx|^2+|m0−Cy|^2)
|m0−Czx|=sqrt(|m0−Cx|^2+|m0−Cz|^2) 式(2)
また、位置Cを中心とする描画平面に対して、始点m0を射影した点n0と位置Cとの成す角(n0_p,n0_t)は、下記の式(3)で表される。
n0_p=atan(|m0−Cy|/|m0−Czx|)
n0_t=atan(|m0−Cz|/|m0−Cyx|) 式(3)
さらに、画像表示部200の画像表示領域上の座標(レンダラ座標)n0(x0,y0)は、下記の式(4)で求められる。なお、式(4)のChcは画像表示領域上の中心位置Cに相当する水平座標、Cvcは画像表示領域上の中心位置Cに相当する垂直座標、Havは水平画角、Widは画像表示領域の幅である。水平画角Havは撮像レンズ100の特性で定まる、撮像素子101上の水平方向の撮影範囲である。
x0=Chc+n0_p/Hav*Wid
y0=Cvc−n0_t/Hav*Wid 式(4)
ここでは垂直方向の座標位置y0を求める時に画像表示領域の幅を用いているが、これは水平方向、垂直方向との成す角に対する位置基準を画像表示領域の幅としているからであり、マスク画像を生成するときには画像表示領域の高さに制限される。
前述したマスクデータ700の残りの各頂点m1,m2,m3についても、m0の場合と同様に変換がなされて、それぞれ画像表示領域上のレンダラ座標n1(x1,y1),n2(x2,y2),n3(x3,y3)が求められる。そして、これらx,y成分の平均が描画平面に描画されるマスク領域710の重心位置G(xg,yg)となされる。すなわち重心位置G(xg,yg)のxg,ygは、下記の式(5)により求められる。
xg=(x0+x1+x2+x3)/4
yg=(y0+y1+y2+y3)/4 式(5)
ここで例えば、重心位置Gが描画平面の画像表示領域上の中心からパン角度26°、チルト角度30°で計算されたとすると、球面座標上ではパン角度30°、チルト角度30°に相当する。このため、描画平面上で適切な位置にマスク領域を描画するためには水平方向の位置を補正する必要がある。
本実施形態の場合、マスク生成部104は、図8の換算表a,b,c,dで表される補正テーブルを参照して、射影曲線上の重心位置Gを直線上の位置Qに補正するような位置補正を行う。図8の換算表a,b,c,dは、図9に示したそれぞれ射影曲線a,b,c,dに対応している。一方、図10の直線a,b,c,dは、図9の射影曲線a,b,c,dにそれぞれ対応する補正された直線であり、切片ゼロで傾きの異なる複数の直線である。
以下、簡単のため第一象限にある曲線上の重心位置Gを、直線上の位置Qに補正する手順について、図11のフローチャートを参照しながら説明する。図11のフローチャートは、マスク生成部104において実行される処理の流れを示している。マスク生成部104はハードウェアとして構成されてもよいし、ソフトウェアとして構成されてもよい。ソフトウェアとして構成される場合、図11のフローチャートの処理に係るプログラムをCPU等が実行することによりマスク生成部104の処理が実行される。このプログラムは、不図示の不揮発性メモリ等に予め用意されていてもよいし、ネットワークや記録媒体を介してメモリ等に展開されてもよい。
図11のS201において、マスク生成部104は、垂直方向(y)の基準位置を検索する。具体的には、マスク生成部104は、図8の換算表を基にy(i)≦yg<y(i+1)なる整数iを探す。そして、マスク生成部104は、S202において、下記の式(6)により垂直補間係数Aを求める。
A=(yg−y(i))/(y(i+1))−y(i)) 式(6)
次に、マスク生成部104は、S203において、同じy(i)で換算表a〜dの異なる水平位置x_a(i),x_b(i),x_c(i),x_d(i)およびx_a(i+1),x_b(i+1),x_c(i+1),x_d(i+1)を求める。さらに、マスク生成部104は、それらから垂直位置ygに相当する水平位置x_ay,x_by,x_cy,x_dyを、式(7)により垂直補間係数Aを用いて求める。なお、式(7)のj=a,b,c,dである。
x_jy=(x_j(i+1)−x_j(i))*A+x_j(i) 式(7)
次に、S204において、マスク生成部104は、x_ky≦xg<x_lyとなるk,lを探す。これにより曲線k,lが求められる。そして、S205において、マスク生成部104は、下記の式(8)により、水平補間係数Bを曲線k,lの垂直位置ygとするときの内分率として求める。
B=(xg−x_ky)/(x_ly−x_ky) 式(8)
次に、S206において、マスク生成部104は、曲線k,lに対応する直線k,lの傾きをそれぞれα,β(α>β)とし、補正された水平位置xqを式(9)により求める。
xq=(yg/β−yg/α)*B+yg/α 式(9)
重心位置Gが第一象限以外のときも、符号反転を利用すれば同様の演算が可能である。
ここまでは、図8の換算表a〜dを用いてマスク領域の位置を示す曲線を直線に補正する方法を述べてきた。一方、図7のような変換処理を図8の換算表a〜dではなく補正関数、具体的には双曲線で表される補正関数を用いた近似式で定義することもでき、この補正関数を基に補正すべき位置を求めることも可能である。
その後、マスク生成部104は、補正位置Qを中心としてマスク領域を描画する。この時のマスク領域のサイズは、幅をW、高さをHとすると、下記の式(10)で求められる。なお、式(10)のWidは画像表示領域の幅、Havは水平画角である。
W=Wid*Δp/Hav
H=Wid*Δt/Hav 式(10)
また、水平位置xqおよび垂直位置ygは、マスク領域の矩形の中心であるためその矩形の左下基準点(X,Y)に直すと式(11)のようになる。
X=xq−W/2
Y=yg+H/2 式(11)
以上説明したように、マスク生成部104は、マスクデータ設定部201にて設定されたマスクデータM(p,t,Δp,Δt)を補正して、画像表示領域へ合成するためのマスク領域の位置を表すデータR(X,Y,W,H)を生成している。これにより、画像合成部105では、画像表示領域上にレンダラ座標(X,Y)を始点にして、幅Wおよび高さHのマスク画像が描画(合成)される。なお、画像合成部105では、撮像装置1が規定する複数の画像サイズに応じて、マスク画像を適応させて、それぞれの画像サイズで画像合成を行うことができる。また、複数のマスクデータがある場合にも前述同様の手順により画像表示部200への表示が行われる。さらに、各マスクデータが、色情報を保持している場合にはその色情報に従ってマスク画像に色付けがなされて表示される。また、各マスクデータが、有効か無効かのフラグを保持している場合は、そのフラグが有効であれば表示が行われ、無効であれば非表示になされる。
前述したように、第1の実施形態の撮像装置1は、球面座標上への角度によりマスクデータの示す位置が設定される場合において、撮像装置1がパン方向やチルト方向へ回転されても、マスク領域の位置を補正可能となされている。すなわち、本実施形態の撮像装置1によれば、保護対象領域に対するマスク画像の位置ずれを低減でき、保護対象領域を適切にマスクすることが可能となっている。
<第2の実施形態>
以下、第2の実施形態について説明する。図12は第2の実施形態の画像処理装置の一適用例である撮像装置3およびGUI4の概略的な構成を示したブロック図である。なお、図12において図1と同じの構成要素には同一の参照符号を付してそれらの説明は省略する。第2の実施形態においても第1の実施形態と同様、撮像装置3は例えばパン回転、チルト回転が可能となされた監視カメラである。第2の実施形態の撮像装置3は、超広角を含む変倍光学系を備えているとする。
第2の実施形態の撮像装置3は、前述した図1の構成に加え、制御部106、PT回転機構107、変倍レンズ駆動部108、PTZ位置情報保持部109、PTZ位置情報取得部110、PTZ位置変更検出部113を有している。なお、PTZは、P=パン、T=チルト、Z=ズームを表している。また、第2の実施形態の場合、撮像レンズ111は前述の撮像レンズ100に変倍機能(ズーム)が付加されており、マスク生成部112は前述のマスク生成部104の機能に加え、PTZの座標変換を行う機能を有する。
制御部106は、操作部202を介したユーザからの指示を基に、PT回転機構107と変倍レンズ駆動部108を制御する。PT回転機構107は、撮像部(撮像装置3)全体をパン回転やチルト回転させることを可能とする雲台機能を有し、操作部202を介したユーザの指示に応じた制御部106からの指令を基に、撮像装置3をパン回転やチルト回転させる。変倍レンズ駆動部108は、操作部202を介したユーザの指示に応じた制御部106からの指令を基に、撮像レンズ111内の変倍レンズを駆動させて、倍率変更(以下、ズームとする)を行う。PTZ位置情報保持部109は、変倍レンズ駆動部108からのズーム倍率の情報、PT回転機構107からのパン回転の角度とチルト回転の角度の各情報を取得して保持する。以下、PTZ位置情報保持部109に保持されているズーム倍率の情報およびパン回転の角度とチルト回転の角度の各情報をPTZ位置情報と呼ぶことにする。
PTZ位置情報取得部110は、マスクデータ記憶部103からマスクデータを取得し、また、PTZ位置情報保持部109より現在のPTZ位置情報を取得して、それらの情報をマスク生成部112に送る。マスク生成部112は、マスクデータ記憶部103からのマスクデータについて、PTZ位置情報に基づく座標変換を行い、その座標変換後のマスクデータによるマスク領域を描画平面に射影する。PTZ位置変更検出部113は、PTZ位置情報保持部109よりPTZ位置情報を取得し、パン回転の角度またはチルト回転の角度またはズーム倍率変更がなされたことを検出した場合に、マスク生成部112にレンダラ座標の更新を行わせる。
図13は、第2の実施形態におけるGUI4の一例を示した図である。第2の実施形態のGUI4は、第1の実施形態のGUI2のようにユーザが任意のマスクデータを設定するための画面構成を有し、GUI2と同様の画像表示部200が配されている。また、第2の実施形態のGUI4は、操作部202が配されている。GUI4の操作部202では、撮像装置3のPT回転機構107と変倍レンズ駆動部108を操作する際にユーザからの指示が入力される。操作部202におけるPT回転角度の指定方式、ズーム倍率の指定方式は既存の様々な指定方法を用いることができる。マスクデータの設定方式については、前述の第1の実施形態と同様であり、その説明は省略する。
次に、図14および図15を参照しながら、第2の実施形態におけるパン回転の角度(パン角度)とチルト回転の角度(チルト角度)とズーム倍率とに基づく、マスクデータの座標変換方法について説明する。
図14と図15には第2の実施形態の撮像装置3の位置を中心とした球面座標が示されている。また、図14と図15の球面座標では、マスクデータ1500の始点の座標をm0´、パン角度をp´、チルト角度をt´、幅をΔp´、高さをΔt´とする。このため、マスクデータ1500は、M´(p´,t´,Δp´,Δt´)のように表される。また、マスクデータ1500の四つの頂点の座標は、m0´(p´,t´),m1´(p´,t´+Δt´),m2´(p´+Δp´,t´+Δt´),m3´(p´+Δp´,t´)となる。さらに、撮像装置3の光軸と図14、図15の球面座標で表される球面との交点をC´とすると、交点C´は図15の描画平面における中心点と一致する。そして、図15のマスクデータ1500の球面座標を図15の描画平面に投射すると、球面座標上のマスクデータ1500の四つの頂点m0´,m1´,m2´,m3´は、図15の描画平面上では、それぞれn0´,n1´,n2´,n3´の4点となる。
球面座標上のマスクデータ1500の四つの頂点m0´,m1´,m2´,m3´が描画平面に射影される際にはそれぞれ同じ座標変換処理が行われるため、以下、マスクデータ1500の始点であるm0´に着目して、変換処理の説明を行う。
第2の実施形態の場合、先ず、PTZ位置情報取得部110がPTZ位置情報保持部109から撮像装置3の現在のパン角度(ca_pn)とチルト角度(ca_tt)を取得し、それらの情報とマスクデータとをマスク生成部112に送る。マスク生成部112は、取得されたパン角度およびチルト角度を表す位置情報を基に、マスクデータ記憶部103から取得されたマスクデータに対する座標変換を行う。この座標変換により、撮像装置3を中心とした球面座標上のマスクデータM´(p´,t´,Δp´,Δt´)が得られる。そして、マスク生成部112は、その球面座標上のマスクデータM´(p´,t´,Δp´,Δt´)を描画平面に射影する。
ここで、撮像装置3の現在のパン角度およびチルト角度における球面座標上の画像中心の位置(撮像装置3の光軸と球面との交点)をC´(ca_pn,ca_tt)とする。また、球面座標上の4点の座標はm0´(p´,t´),m1´(p´,t´+Δt´),m2´(p´+Δp´,t´+Δt´),m3´(p´+Δp´,t´)である。さらに、撮像装置3とのパン角度との成す角をpn_df=(p´−ca_pn)と置き換え、始点m0´のx成分,y成分,z成分について位置Cとの間の距離|m0´−Cx´|,|m0´−Cy|,|m0−Cz|を下記の式(12)で求める。
|m0´−C´x|=(cos(t´)*cos(ca_tt)*cos(pn_df)+sin(t´)*sin(ca_tt)
|m0´−C´y|=(sin(pa_df)*cos(t´))
|m0´−C´z|=(sin(t´)*cos(ca_tt)−cos(t´)*sin(ca_tt)*cos(pn_df) 式(12)
また、始点m0´から、位置C´を中心とする球面座標上の撮影面までのパンおよびチルト方向の距離|m0´−C´yx|,|m0´−C´zx|は、下記の式(13)で求められる。
|m0´−C´yx|=sqrt(|m0´−C´x|^2+|m0´−C´y|^2)
|m0´−C´zx|=sqrt(|m0´−C´x|^2+|m0´−C´z|^2)
式(13)
さらに、位置C´を中心とする描画平面に対して、始点m0´を射影した点n0´と位置C´とのなす角(n0_p´,n0_t´)は、下記の式(14)で表される。
n0_p´=atan(|m0´−C´y|/|m0´−C´zx|)
n0_t´=atan(|m0´−C´z|/|m0´−C´yx|) 式(14)
ここで、PTZ位置情報取得部110がPTZ位置情報保持部109より現在のズーム倍率(ca_zm)を取得し、その取得したズーム倍率からマスク生成部112でレンダラ座標n0´(x0´,y0´)に座標変換すると、式(15)のようになる。なお、式(15)のOhcは画像表示領域上の原点の水平座標、Ovcは画像表示領域上の原点の垂直座標、Widは画像表示領域の幅である。
x0´=Ohc+n0_p´*Wid/ca_zm
y0´=Ovc−n0_t´*Wid/ca_zm 式(15)
マスク生成部112では、前述同様にして、残りの各点m1´,m2´,3´についても座標変換が行われ、描画平面上の座標n1´(x1´,y1´),n2´(x2´,y2´),n3´(x3´,y3´)を得る。そして、これらx,y成分の平均が、描画平面に描画されるマスク領域1510の重心位置G´(xg´,yg´)となされる。すなわち重心位置G´(xg´,yg´)のxg´,yg´は、下記の式(16)により求められる。
xg´=(x0´+x1´+x2´+x3´)/4
yg´=(y0´+y1´+y2´+y3´)/4 式(16)
ここで、例えば、重心位置G´が、チルト角度10°、画像表示領域上の中心位置C´からパン角度20°、チルト角度24°で計算されたとすると、球面座標上ではパン角度21°、チルト角度21°に相当する。このため、描画平面上で適切な位置にマスク領域を描画するためには水平方向と垂直方向に位置を補正する必要がある。
第2の実施形態の場合、マスク生成部112は、図16に示す換算表a´,b´,c´,d´,e´で表される補正テーブルを参照して、射影曲線上の重心位置G´を直線上の位置Q´に補正するような位置補正を行う。図16の換算表a´,b´,c´,d´,e´は、図17に示したそれぞれ射影曲線a´,b´,c´,d´,e´に対応している。また、図16の換算表のrは、画像表示領域上の中心位置C´からの距離を意味し、x,yは図17の曲線a´,b´,c´,d´,e´の距離rのときの射影平面上の位置である。第2の実施形態の場合、曲線a´,b´,c´,d´,e´は、描画平面上、切片ゼロでそれぞれ傾きcos(60°),cos(45°),cos(30°),cos(12°),cos(2°)の直線として補正される。
以下、第2の実施形態において、簡単のため第一象限にある曲線上の重心位置G´を、直線上の位置Q´に補正する手順について、図18のフローチャートを参照しながら説明する。図18のフローチャートは、マスク生成部112において実行される処理の流れを示している。第2の実施形態の場合のマスク生成部112についても、前述のマスク生成部104同様にハードウェアとして構成されてもよいし、ソフトウェアとして構成されてもよい。ソフトウェアとして構成される場合、図18のフローチャートの処理に係るプログラムをCPU等が実行することによりマスク生成部112の処理が実行される。
S301において、マスク生成部112は、先ず重心位置G´を挟む曲線j´,k´を探し、図19に示すように、曲線j´,k´上で重心位置G´を囲む4点J(r),J(r´),K(r),K(r´)を求める。ここで、J(r)の座標は(x_j(r),y_j(r))であり、J(r´)の座標は(x_j(r´),y_j(r´)),K(r)の座標は(x_k(r),y_k(r))、K(r´)の座標は(x_k(r´),y_k(r´))である。なお、x_k´(r)≦xg´<x_j´(r´)であり、y_j´(r)≦yg´<y_k(r´)である。
次に、S302において、マスク生成部112は、重心位置G´を通り、式(17)を満たす近似距離rgで定まる直線を求める。
|J(r)−J(rg)|:|J(r´)−J(rg)|=|K(r)−K(rg)|:|K(r´)−K(rg)| 式(17)
また、マスク生成部112は、J(rg)とK(rg)を結ぶ線分を内分する比|J(rg)−G´|:|K(rg)−G´|についても求める。この比|J(rg)−G´|:|K(rg)−G´|は、描画平面の曲線j´,k´に対応する直線上の点J´(rg),K´(rg)と、補正後の位置Q´で作る弧の内分比|J´(rg)−Q´|:|K´(rg)−Q´|の近似である。
次に、S303において、マスク生成部112は、図20に示すように、位置C´からそれぞれ点J´(rg),K´(rg)を結ぶ直線の傾きから、二つの直線を内分して位置Qを通る直線の傾きqを求める。この傾きqは、内分比|J(rg)−G´|:|K(rg)−G´|から求めることができる。また、円弧の長さLは、2直線のなす角をθとすると、L=rg*θであるから、円弧の内分点が補正後の位置Q´となり、その位置Q´が作る角度εは内分比|J´(rg)−Q´|:|K´(rg)−Q´|から求められる。
次に、S304において、マスク生成部112は、傾きqの直線補正式および近似距離rgより、補正後の位置Q´(xq´,yq´)をそれぞれ式(19)、式(20)により求める。
y=q*x 式(18)
xq´=rg*√(1+q^2) 式(19)
yq´=rg*q*√(1+q^2) 式(20)
次に、S305において、マスク生成部112は、図21で示されるような撮像レンズ111の歪曲収差の変換曲線を使って、距離rに対する補正位置Q´への歪曲収差補正処理を行い、その歪曲収差補正後の位置Q″(xq″,yq″)を得る。歪曲収差補正処理は、例えば式(21)のような高次の多項式近似を用いてもよい。なお、歪曲収差補正は前述した第1の実施形態の撮像装置1においても行うことが望ましい。
r´=h1*r+h2*r^3+h3*r^5 式(21)
ここまでは画像表示領域上の中心位置C´からの本来あるべき距離rgを求め、位置を補正する手順について説明したが、射影位置に対して補正位置を一意に決めた2次元マップを予め保持しておき、その2次元マップを基に補正を行ってもよい。
そして、マスク生成部112は、最終的に歪曲補正後の位置Q″を中心としてマスク領域を描画平面に描画する。この時のマスク領域のサイズは、幅をW´、高さをH´とすると、下記の式(22)で表される。
W´=Wid*Δp´/ca_zm
H´=Wid*Δt´/ca_zm 式(22)
前述したように、マスク領域の大きさは、ズーム倍率に比例し、パン回転位置およびチルト回転位置によらず一定である。また、歪曲補正後の位置Q″(xq″,yq″)のxq″とyq″は、矩形の中心であるため、矩形の左下基準点(X´,Y´)に直すと、式(23)のようになる。
X´=xq″−W´/2
Y´=yq″+H´/2 式(23)
以上により、描画平面のレンダラデータR´(X´,Y´,W´,H´)が得られる。画像合成部105では、このレンダラデータR´を基に、撮影画像平面上の座標にレンダラ座標の(X´,Y´)を始点にして、幅W´および高さH´のマスク画像が合成される。これにより、保護対象領域がマスクされる。なお、PTZ位置変更検出部113が、パン角度またはチルト角度またはズーム倍率が変更されたことを検出した場合には、マスク生成部112においてレンダラデータR´が更新され、画像合成部105での合成が行われる。
以上説明したように、第2の実施形態の撮像装置3によれば、PTZの座標変換が行われた上でマスク領域の位置の補正が行われる。第2の実施形態の撮像装置3においても、保護護対象領域に対するマスク画像の位置ずれを低減でき、保護対象領域を適切にマスクすることが可能となる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
1,3:撮像装置、2,4:GUI、105:画像合成部、104,112:マスク生成部、103:マスクデータ記憶部、106:制御部、110:PTZ位置情報取得部、200:画像表示部、201:マスクデータ設定部

Claims (14)

  1. 撮像装置により撮像した撮影画像について、対象領域をマスクするための位置情報を取得する取得手段と、
    前記撮影画像の画像中心から前記位置情報の示す位置までの距離に基づいて、マスク領域を描画平面に射影したマスク画像を生成する生成手段と、
    前記生成手段により生成したマスク画像を前記撮影画像に合成する合成手段とを有することを特徴とする画像処理装置。
  2. 前記生成手段は、前記画像中心から前記位置情報の示す位置までの距離に基づいて、前記位置情報に応じたマスク領域の位置を補正し、前記位置が補正されたマスク領域を前記描画平面に射影して前記マスク画像を生成することを特徴とする請求項1に記載の画像処理装置。
  3. 前記取得手段は、前記撮像装置を中心とした球面座標に対する角度により設定された前記位置情報を取得し、
    前記生成手段は、前記画像中心から前記位置情報の示す位置までの距離に基づいて前記角度を補正することにより、前記位置情報に応じたマスク領域の位置を補正することを特徴とする請求項2に記載の画像処理装置。
  4. 前記マスク領域の位置は、前記球面座標の中心位置から前記マスク領域の頂点までと、前記球面座標の中心位置から画像中心までと、の成す角度により表されることを特徴とする請求項3に記載の画像処理装置。
  5. 前記生成手段は、前記マスク領域を描画平面に射影する際の射影曲線上の位置を、直線上の位置に補正することで、前記位置情報に応じたマスク領域の位置を補正することを特徴とする請求項2から4の何れか1項に記載の画像処理装置。
  6. 前記生成手段は、前記射影曲線上の位置を前記直線上の位置に補正する補正テーブルを有し、前記補正テーブルを参照して、前記位置情報に応じたマスク領域の位置を補正することを特徴とする請求項5に記載の画像処理装置。
  7. 前記生成手段は、前記射影曲線上の位置を前記直線上の位置に近似する補正関数を用いて、前記位置情報に応じたマスク領域の位置を補正することを特徴とする請求項5に記載の画像処理装置。
  8. 前記生成手段は、射影位置に対して予め補正位置が決められた2次元マップを有し、前記2次元マップを基に、前記位置情報に応じたマスク領域の位置を補正することを特徴とする請求項5に記載の画像処理装置。
  9. 前記生成手段は、前記位置情報に応じたマスク領域の重心位置を補正することにより、前記マスク領域の位置の補正を行うことを特徴とする請求項2から8の何れか1項に記載の画像処理装置。
  10. 前記撮像装置のパン回転とチルト回転と変倍光学系の倍率との、少なくとも何れかが変更された場合、前記位置情報を更新する更新手段を有することを特徴とする請求項1から9の何れか1項に記載の画像処理装置。
  11. 前記生成手段は、前記マスク領域の位置を、前記撮像装置の光学系が有する歪曲収差の情報を基に更に補正することを特徴とする請求項2から10の何れか1項に記載の画像処理装置。
  12. 前記取得手段は、
    前記撮影画像を表示する表示手段と、
    前記表示された撮影画像のなかで指定された対象領域に対する前記位置情報を設定する設定手段と、
    前記位置情報を記憶する記憶手段と、
    を含むことを特徴とする請求項1から11の何れか1項に記載の画像処理装置。
  13. 画像処理装置が実行する画像処理方法であって、
    撮像装置により撮像した撮影画像について、対象領域をマスクするための位置情報を取得する取得工程と、
    前記撮影画像の画像中心から前記位置情報の示す位置までの距離に基づいて、マスク領域を描画平面に射影したマスク画像を生成する生成工程と、
    前記生成工程により生成したマスク画像を前記撮影画像に合成する合成工程とを有することを特徴とする画像処理方法。
  14. コンピュータを、請求項1から12の何れか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
JP2017165786A 2017-08-30 2017-08-30 画像処理装置、画像処理方法、及びプログラム Pending JP2019047204A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017165786A JP2019047204A (ja) 2017-08-30 2017-08-30 画像処理装置、画像処理方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017165786A JP2019047204A (ja) 2017-08-30 2017-08-30 画像処理装置、画像処理方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2019047204A true JP2019047204A (ja) 2019-03-22

Family

ID=65814742

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017165786A Pending JP2019047204A (ja) 2017-08-30 2017-08-30 画像処理装置、画像処理方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP2019047204A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114697518A (zh) * 2020-12-29 2022-07-01 浙江宇视科技有限公司 摄像头的镜头畸变下的遮挡方法、装置、介质及电子设备
WO2023245363A1 (zh) * 2022-06-20 2023-12-28 北京小米移动软件有限公司 图像处理方法及装置、电子设备、存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114697518A (zh) * 2020-12-29 2022-07-01 浙江宇视科技有限公司 摄像头的镜头畸变下的遮挡方法、装置、介质及电子设备
WO2023245363A1 (zh) * 2022-06-20 2023-12-28 北京小米移动软件有限公司 图像处理方法及装置、电子设备、存储介质

Similar Documents

Publication Publication Date Title
US10366477B2 (en) Image processing apparatus and image processing method
US10855916B2 (en) Image processing apparatus, image capturing system, image processing method, and recording medium
KR101521008B1 (ko) 어안 렌즈를 사용하여 얻은 왜곡영상에 대한 보정방법 및 이를 구현하기 위한 영상 디스플레이 시스템
JP2016062486A (ja) 画像生成装置および画像生成方法
JP2007233996A (ja) 画像合成装置、画像合成方法、画像合成プログラム及び記録媒体
KR20160118868A (ko) 하나의 룩업 테이블을 이용한 파노라마 영상 출력 시스템 및 방법
JP2007164258A (ja) 画像合成処理装置及び方法
US20190289206A1 (en) Image processing apparatus, image capturing system, image processing method, and recording medium
US10867365B2 (en) Image processing apparatus, image processing method, and image processing system for synthesizing an image
CN112565725B (zh) 一种投影画面防抖方法、装置、投影设备及存储介质
JP2019164782A (ja) 画像処理装置、撮影システム、画像処理方法、及びプログラム
JP5812593B2 (ja) 映像処理装置、撮像装置、映像処理方法及びプログラム
CN111226255A (zh) 图像处理设备,图像捕获系统,图像处理方法和记录介质
JP2013101525A (ja) 画像処理装置および方法、並びにプログラム
JP3861855B2 (ja) 画像入力装置
JP2020068514A (ja) 画像処理装置、画像処理方法、及びプログラム
JP2019047204A (ja) 画像処理装置、画像処理方法、及びプログラム
JP2006285482A (ja) 映像ジオメトリ補正装置
WO2018087856A1 (ja) 映像合成装置及び映像合成方法
JP2019164783A (ja) 画像処理装置、撮影システム、画像処理方法、及びプログラム
JP6714819B2 (ja) 画像表示システム、情報処理装置、画像表示方法及び画像表示プログラム
JP6716019B2 (ja) 画像修正装置、画像修正方法及びプログラム
WO2014155509A1 (ja) 画像表示装置、画像表示システムおよび画像制御方法
JP4135934B2 (ja) 電子機器
JP6071364B2 (ja) 画像処理装置、その制御方法、および制御プログラム