(57)【要約】【課題】  円形画像上の設定領域と、該円形画像から生成される矩形画像において該設定領域に対応する領域と、の乖離を効果的に制御するための技術を提供すること。【解決手段】  円形画像を矩形画像に変換する変換処理で該円形画像中の設定領域が変換された変換領域の頂点を用いて、該変換領域を囲む多角形領域を求める。矩形画像における変換領域の位置に応じて多角形領域を補正した補正多角形領域を生成し、該補正多角形領域を該位置に応じた個数の四角形領域に分割し、該四角形領域を矩形画像における設定領域として設定する。【選択図】  図１
2020086593.tif 000002
【特許請求の範囲】
【請求項１】
円形画像を矩形画像に変換する変換処理で該円形画像中の設定領域が変換された変換領域の頂点を用いて、該変換領域を囲む多角形領域を求める計算手段と、
前記矩形画像における前記変換領域の位置に応じて前記多角形領域を補正した補正多角形領域を生成し、該補正多角形領域を該位置に応じた個数の四角形領域に分割し、該四角形領域を前記矩形画像における設定領域として設定する設定手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記計算手段は、
前記変換領域の辺上で、該辺の両端を結ぶ線分との距離が最大となる位置を特定し、該位置が該辺よりも前記変換領域の重心位置に近い場合には、該辺の両端の位置と該特定した位置を前記多角形領域の頂点の位置とし、該位置が該辺よりも前記重心位置から遠い場合には、該位置を通るように平行移動させた該辺と隣り合う辺との交点位置を前記多角形領域の頂点の位置とすることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記設定手段は、
前記多角形領域において内角がπを超える頂点をＧｎ、Ｇｎを一端とする一方の辺の他端をＧｎ−１、Ｇｎを一端とする他方の辺の他端をＧｎ＋１とすると、Ｇｎ、Ｇｎ−１、Ｇｎ＋１を頂点とする三角形のうち面積が小さい順に上位から規定個数の三角形のＧｎとＧｎ＋１とを両端とする辺およびＧｎとＧｎ−１とを両端とする辺を削除してＧｎ−１とＧｎ＋１を両端とする辺を追加することで前記多角形領域を補正した補正多角形領域を生成することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記設定手段は、
前記多角形領域において内角がπを超える頂点をＧｎ、Ｇｎを一端とする一方の辺の他端をＧｎ−１、Ｇｎを一端とする他方の辺の他端をＧｎ＋１とすると、ＧｎとＧｎ＋１とを両端とする辺およびＧｎとＧｎ−１とを両端とする辺を削除してＧｎ−１とＧｎ＋１を両端とする辺を追加することで前記多角形領域を補正した補正多角形領域を求め、
補正多角形領域の各頂点をＩｋとすると、頂点Ｉｋと頂点Ｉｋ−１とを通る直線と、頂点Ｉｋ＋１と頂点Ｉｋ＋２とを通る直線と、の交点Ｈｋが表示領域内の位置であれば、頂点Ｉｋ、頂点Ｉｋ＋１、交点Ｈｋ、を頂点とする三角形のうち面積が小さい順に上位から規定個数の三角形について、頂点Ｉｋ−１と頂点Ｉｋを両端とする辺、頂点Ｉｋと頂点Ｉｋ＋１を両端とする辺、頂点Ｉｋ＋１と頂点Ｉｋ＋２を両端とする辺、を削除し、頂点Ｉｋ−１と交点Ｈｋを両端とする辺、交点Ｈｋと頂点Ｉｋ＋２を両端とする辺、を加えることで前記補正多角形領域を補正することを特徴とする請求項１または２に記載の画像処理装置。
【請求項５】
更に、
前記矩形画像における動体の位置を検出する手段を備え、
前記設定手段は、前記矩形画像における設定領域を構成する各辺を延長した直線へ前記動体の位置からおろした垂線のうち、該直線との交点位置が辺上に存在し且つより短い垂線の長さを特定し、前記補正多角形領域を該長さに応じた個数の四角形領域に分割し、該四角形領域を前記矩形画像における設定領域として設定する
ことを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
更に、
前記矩形画像における関心領域の位置を取得する手段と、
前記矩形画像を符号化する符号化手段と
を備え、
前記設定手段は、前記矩形画像をフレーム間符号化する場合には、前記矩形画像における設定領域を構成する各辺を延長した直線へ前記関心領域の位置からおろした垂線のうち、該直線との交点位置が辺上に存在し且つより短い垂線の長さを特定し、該長さに応じた四角形領域の個数と、現在設定されている四角形領域の個数と、の差分に応じた個数の四角形領域に前記補正多角形領域を分割し、該四角形領域を前記矩形画像における設定領域として設定する
ことを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
前記個数は、前記変換領域が前記矩形画像の中央に近いほど大きいことを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項８】
前記個数は、前記矩形画像に対するマスクに要する時間が大きいほど大きいことを特徴とする請求項１乃至７の何れか１項に記載の画像処理装置。
【請求項９】
前記円形画像は、魚眼レンズを通した立体射影方式の画像であることを特徴とする請求項１乃至８の何れか１項に記載の画像処理装置。
【請求項１０】
更に、
周囲を撮像して前記円形画像を取得する撮像手段を備えることを特徴とする請求項１乃至９の何れか１項に記載の画像処理装置。
【請求項１１】
画像処理装置が行う画像処理方法であって、
前記画像処理装置の計算手段が、円形画像を矩形画像に変換する変換処理で該円形画像中の設定領域が変換された変換領域の頂点を用いて、該変換領域を囲む多角形領域を求める計算工程と、
前記画像処理装置の設定手段が、前記矩形画像における前記変換領域の位置に応じて前記多角形領域を補正した補正多角形領域を生成し、該補正多角形領域を該位置に応じた個数の四角形領域に分割し、該四角形領域を前記矩形画像における設定領域として設定する設定工程と
を備えることを特徴とする画像処理方法。
【請求項１２】
コンピュータを、請求項１乃至９の何れか１項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像上に領域を設定するための技術に関するものである。
【背景技術】
【０００２】
全方位監視カメラは、魚眼レンズを用いることにより全周囲画像（全方位画像）の撮影が可能な監視カメラである。魚眼レンズの射影（例えば立体射影）が一般のレンズの射影（中心射影）と異なるため、全方位監視カメラは、全周囲画像における一部領域を切り出し、ユーザに見やすい中心射影の画像に変換して提供する機能を有することもある。また、全方位監視カメラにおいても、ユーザにとって撮影不要な領域や、プライバシー保護の観点から不可視の領域として撮影しなければならない領域が設定されることがある。全周囲画像上で不可視領域を設定する際、カメラとネットワークで接続されたクライアント上のＵＩで設定されるのが一般的である。従って、不可視領域の情報量を小さくしてネットワークの負荷を減らすため、不可視領域は矩形や有限の直線からなる多角形で表現され、不可視領域を表す情報として該不可視領域を構成する多角形の頂点座標を用いるのが一般的である。このような不可視領域は、全周囲画像上では頂点座標等を用いて少ない情報量で表現されるが、出力画像上では、その変換過程によって直線で構成される多角形で表現できなくなる。そこで、出力画像上での不可視領域を含む直線で構成される多角形で補正して、不可視領域を表現する。しかしながら、現実においては、ハードウェア上の制約などで有限頂点数の多角形の表現しか許されておらず、補正された不可視領域を表現可能な有限頂点数の多角形に分割して出力画像中の不可視領域を表現する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特願２０１３−１５７８１０
【特許文献２】国際公開第１６／１８５５２２
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、不可視領域を有限頂点数の多角形で分割して表現すると、その分割数が多ければ多いほどユーザが設定した不可視領域に近い領域とすることができるが、計算コストも高くなる。現実的に設定できるマスク数には限りがあり、ユーザの設定した不可視領域と乖離が生じるという課題がある。特に非連続点が生じるダブルパノラマ画像において顕著となる。
【０００５】
特許文献１では検知等を用いてマスク領域を設定する技術を開示しており、特許文献２ではマスク領域の分割に関して例を示しているが、分割数を制御対象としていないため、上記の課題を解決できていない。本発明では、円形画像上の設定領域と、該円形画像から生成される矩形画像において該設定領域に対応する領域と、の乖離を効果的に制御するための技術を提供する。
【課題を解決するための手段】
【０００６】
本発明の一様態は、円形画像を矩形画像に変換する変換処理で該円形画像中の設定領域が変換された変換領域の頂点を用いて、該変換領域を囲む多角形領域を求める計算手段と、前記矩形画像における前記変換領域の位置に応じて前記多角形領域を補正した補正多角形領域を生成し、該補正多角形領域を該位置に応じた個数の四角形領域に分割し、該四角形領域を前記矩形画像における設定領域として設定する設定手段とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明の構成によれば、円形画像上の設定領域と、該円形画像から生成される矩形画像において該設定領域に対応する領域と、の乖離を効果的に制御することができる。
【図面の簡単な説明】
【０００８】
【図１】画像処理装置１００の機能構成例を示すブロック図。
【図２】分割画像を変換して１枚のパノラマ画像を生成する変換処理を説明する図。
【図３】（ａ）はθの時間微分値ｖの時間変化を表すグラフ、（ｂ）はｖの時間微分値ａの時間変化を表すグラフ。
【図４】時間微分値ａの時間微分値（ｄａ／ｄｔ）の時間変化を表すグラフ。
【図５】テーブルについて説明する図。
【図６】パノラマ画像上にマスク領域を設定するために画像処理装置１００が行う処理のフローチャート。
【図７】ステップＳ６１３における処理の詳細を示すフローチャート。
【図８】円形画像中のマスク領域に対応するパノラマ画像中のマスク領域の設定例を説明する図。
【図９】画像処理装置２００の機能構成例を示すブロック図。
【図１０】マスク変換部２０５の動作の具体例を示す図。
【図１１】画像処理装置３００の機能構成例を示すブロック図。
【図１２】マスク変換部３０５が行う処理のフローチャート。
【図１３】円形画像におけるマスク領域、パノラマ画像における変換領域および多角形領域を説明する図。
【図１４】コンピュータ装置に適用可能なハードウェア構成例を示すブロック図。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照し、本発明の実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施形態の１つである。
【００１０】
［第１の実施形態］
先ず、本実施形態に係る画像処理装置１００の機能構成例について、図１のブロック図を用いて説明する。撮像部１０１は、周囲を撮像することで、周囲の撮像画像である円形画像（動画像における各フレームの撮像画像、定期的若しくは不定期的に撮像される静止画像）を出力する。本実施形態では、撮像部１０１は魚眼レンズを介した撮像により円形画像を取得するが、周囲を撮像可能な機構、例えば、全方位を撮像可能な機構であれば、如何なる機構を採用しても良い。例えば、魚眼レンズの代わりに全方位ミラーを用いた撮像により円形画像を取得するようにしても良い。また、本実施形態では、円形画像は、このようにして撮像された立体射影方式の画像であるものとするが、立体射影でなくてもかまわない。
【００１１】
画像変換部１０２は、円形画像を、該円形画像の中心位置を通る任意の方向（角度）の直線で分割することで、２枚の分割画像を生成する。そして画像変換部１０２は、生成した２枚の分割画像のそれぞれについて、該分割画像に基づいて周知の技術でもってパノラマ画像（矩形画像）を生成する。つまり画像変換部１０２は、円形画像から２枚のパノラマ画像を生成する（ダブルパノラマ画像を生成する）。例えば画像変換部１０２は、以下の式（１）、（２）、（３）に従って分割画像からパノラマ画像を生成する。
【００１２】
【数１】
2020086593.tif 000003
【００１３】
ここでθは上記の直線の方向（角度）を表し、例えばユーザが画像処理装置や外部装置の操作部を操作して設定／変更することができる。Ｗはパノラマ画像の幅を表し、（ｘ、ｙ）は円形画像中の位置（例えば円形画像の中心位置を原点（０，０）とし、横軸をｘ軸、縦軸をｙ軸とする座標系における座標位置）を表す。また、（ｕ，ｖ）はパノラマ画像中の位置（例えばパノラマ画像の中心位置を原点（０，０）とし、横軸をｕ軸、縦軸をｖ軸とする座標系における座標位置）を表す。
【００１４】
１枚の分割画像を上記の式（１）、（２）、（３）に従って変換して１枚のパノラマ画像を生成する変換処理について、図２を例に取り説明する（図２ではθ＝０としている）。
【００１５】
図２左側の入力画像は、円形画像の中心位置Ｏを通る直線で分割することで生成された２枚の分割画像のうちの１つであり、ここでは立体射影方式の画像であるとする。図２右側の出力画像は、図２左側の入力画像を変換して得られる矩形画像としてのパノラマ画像である。図２では、入力画像中の画素位置Ｐ（ｘ，ｙ）は式（１）、式（２）によって出力画像中の画素位置Ｐ’（ｕ，ｖ）に変換されている。
【００１６】
出力画像の幅（水平方向（ｕ軸方向）のサイズ）はＷである。円形画像の中心位置Ｏと円周上の位置（Ａ〜Ｅ）とを結ぶ線分上の画素列が、出力画像の下端の位置（Ｏ１〜Ｏ５）からｖ軸（ｕ軸と直交する軸）に沿って上方の位置（Ａ’〜Ｅ’）に向かう線分上の画素列に変換される。つまり、図２の入力画像中の直線ＡＯ，ＢＯ，ＣＯ，ＤＯ，ＥＯはそれぞれ出力画像中の直線Ａ’Ｏ１、Ｂ’Ｏ２’、Ｃ’Ｏ３、Ｄ’Ｏ４、Ｅ’Ｏ５に変換される。このように、式（１）、式（２）は入力画像の中心から円周に向かう直線を出力画像中のｕ軸に垂直な直線に変換することでダブルパノラマ画像を生成する。
【００１７】
マスク設定部１０３は、撮像部１０１から出力された円形画像中に設定する設定領域を規定する情報である設定領域情報（設定領域の四隅の位置）を取得する。マスク設定部１０３は、予め設定された設定領域情報を画像処理装置の内外から取得しても良いし、画像処理装置もしくは外部装置の操作部をユーザが操作することで入力した設定領域情報を取得しても良い。このように、設定領域情報を取得することができれば、その取得形態は特定の取得形態に限らない。
【００１８】
設定領域は如何なる目的で設定される領域であっても良いが、本実施形態では、円形画像を閲覧したユーザがマスクすべき対象の領域としてＧＵＩ（グラフィカルユーザインターフェース）を操作して円形画像中に設定したマスク領域であるものとする。
【００１９】
時間推定部１０４は、パノラマ画像上に、円形画像中のマスク領域に対応するマスク領域が設定されるまでの時間（推定時間Ｔ）を推定する。上記の通り、ユーザ操作に応じて上記のθを変更することで、それぞれの分割画像の内容が変化するため、結果として生成されるそれぞれのパノラマ画像中の被写体やその位置が変化する。上記のθの変更操作は、例えば、パノラマ画像中の被写体領域を選ぶ操作（ダブルパノラマ画像のDPTZ操作）である。DPTZ操作とは、画像から所望の領域の部分画像の切り出しの操作のことを指し、パノラマ画像上で電子的にパン（Ｐ）、チルト（Ｔ）、ズーム（Ｚ）の操作を行うことによって実行される。パノラマ画像が変化すると、該パノラマ画像においてマスク対象の位置も変化するので、次のフレームのパノラマ画像上にマスク領域が再設定されることになる。もしくは上記のθの変更操作の終了後のフレームのパノラマ画像上にマスク領域が再設定されることになる。
【００２０】
ユーザが上記のθをΔθだけ変更させたときのθの時間微分値であるｖの時間変化を表すグラフを図３（ａ）に示す。また、ｖの時間微分値ａの時間変化を表すグラフを図３（ｂ）に示す。図３（ａ）では、時刻ｔ＝ｔ０の時点でＤＰＴＺ操作（角度θを変更する操作）が開始され、時刻ｔ＝ｔ３の時点でＤＰＴＺ操作が終了しており、時刻ｔ＝ｔ０〜ｔ３にかけて上記のθをΔθだけ変更させている。ＤＰＴＺ操作が終了すると、ＤＰＴＺ操作による変更前のθをＤＰＴＺ操作による変更後の（θ＋Δθ）に変更する変更処理が開始される。時刻ｔ＝ｔ０〜ｔ１の間では、時間微分値ａは一定値（正の値）に保たれており、時刻ｔ＝ｔ１〜ｔ２の間では、時間微分値ａは０に近く、時刻ｔ＝ｔ２〜ｔ３の間では、時間微分値ａは一定値（負の値）に保たれている。
【００２１】
時間推定部１０４は、時間微分値ａと、撮像部１０１のフレームレートと、から上記の推定時間Ｔを推定する。時間微分値ａの時間微分値（ｄａ／ｄｔ）の時間変化を表すグラフを図４に示す。撮像部１０１のフレームレートをＦｒとすると、推定時間Ｔは以下の式に従って求めることができる。
【００２２】
【数２】
2020086593.tif 000004
【００２３】
ここで、δｔは１／Ｆｒであるとする。例えば、６０ｆｐｓの映像を対象にしてユーザがＤＰＴＺ操作をした場合、ＤＰＴＺ操作開始時からＤＰＴＺ操作終了間際まで（ｄａ／ｄｔ・ａ（ｔ−δｔ）≧０）を満たすので、Ｔ＝１／６０となり、次のフレームまでにマスクを設定しなければならない。また、終了した際に（ｄａ／ｄｔ・ａ（ｔ−δｔ）＜０）を満たすので、Ｔ＝１／２０となる。
【００２４】
マスク変換部１０５は、画像変換部１０２による「分割画像からパノラマ画像への変換処理」によって該分割画像中のマスク領域が変換された変換領域に基づいて、該変換領域を囲む多角形領域を求める。そしてマスク変換部１０５は、パノラマ画像における変換領域の位置と、推定時間Ｔと、の組み合わせに対応する「四角形領域の数」を特定する。
【００２５】
パノラマ画像における変換領域の位置と、推定時間Ｔと、の組み合わせに対応する「四角形領域の数」が登録されているテーブルの構成例を図５（ｂ）に示す。このテーブルによれば、変換領域の重心のｕ軸方向の座標位置ｕが図５（ａ）において点線で示した矩形の外側且つ実線で示した矩形の内側（つまり｜ｕ｜＞Ｗ／４）の場合には、推定時間Ｔに関係なく、「四角形領域の数」は「１」となる。ここで、図５（ａ）において点線で示した矩形は、例えば、ユーザの関心領域であり、その他の画像領域（非関心領域）よりも関心度が高く、できるだけマスクされずに視認したい領域である。なお、図５では、パノラマ画像の中央部を関心領域としたが、関心領域はパノラマ画像の中央部に限らず、パノラマ画像上の如何なる画像領域であっても良い。
【００２６】
一方、｜ｕ｜≦Ｗ／４の場合、Ｔ≦１／６０であれば「四角形領域の数」は「２」、１／６０＜Ｔ≦１／３０であれば「四角形領域の数」は「３」、１／３０＜Ｔ≦１／１５であれば「四角形領域の数」は「４」となる。つまり、変換領域の重心のｕ座標位置がユーザの関心領域内であれば、推定時間Ｔが長いほど、より多くの数の四角形領域を設定する。そしてマスク変換部１０５は、多角形領域と「四角形領域の数」とに基づいてパノラマ画像上に四角形領域で構成されるマスク領域を設定する。
【００２７】
制御部１０９は、ＣＰＵなどのプロセッサやワークエリアなどのエリアを提供可能なメモリを有する。制御部１０９は、メモリ部１１０に格納されているコンピュータプログラムやデータを用いて画像処理装置１００全体の動作制御を行うと共に、画像処理装置１００が行うものとして説明する各種の処理を実行若しくは制御する。
【００２８】
メモリ部１１０は、撮像部１０１による撮像画像や画像処理装置１００の動作に必要な様々なデータを保持するためメモリである。例えば、メモリ部１１０には、図５（ｂ）に例示したテーブルや、画像処理装置１００が既知の情報として取り扱う情報が格納されている。また、メモリ部１１０には、画像処理装置１００が行うものとして後述する各種の処理を制御部１０９に実行させるためのコンピュータプログラムも格納されている。
【００２９】
次に、撮像部１０１により撮像された円形画像から生成されるパノラマ画像上にマスク領域を設定するために画像処理装置１００が行う処理について、同処理のフローチャートを示す図６を用いて説明する。
【００３０】
ステップＳ６０１では、画像変換部１０２は、撮像部１０１により撮像された円形画像の中心位置を通る直線（ユーザによって設定された角度θの直線）がｙ＝０の直線となるように該円形画像を回転させる。そして画像変換部１０２は、回転後の円形画像を、上半分（ｙ≧０）の分割画像と、下半分（ｙ＜０）の分割画像と、に分割する。そして画像変換部１０２は、生成した２枚の分割画像のそれぞれについてパノラマ画像を生成する。以下では、上半分の分割画像、下半分の分割画像を纏めて分割画像と称する。また、上半分の分割画像から生成したパノラマ画像、下半分の分割画像から生成したパノラマ画像もまた纏めてパノラマ画像と称する。
【００３１】
ステップＳ６０２では、マスク設定部１０３は、円形画像中のマスク領域を規定する設定領域情報を取得する。以下では説明を簡単にするために、円形画像中のマスク領域は四角形の領域であるものとして説明する。
【００３２】
マスク変換部１０５は、分割画像から生成されたパノラマ画像において、該分割画像に含まれているマスク領域の４つの頂点に対応する４つの頂点Ａｎ（ｎ＝１，２，３，４）を取得する。分割画像をパノラマ画像に変換する変換式（上記の式（１）、（２）、（３））を用いることで、分割画像に含まれているマスク領域の４つの頂点のそれぞれの位置が、パノラマ画像中のどの位置に変換されたのかが特定可能である。このとき、ステップＳ６０１において回転済みであるため、式（２）ではθ＝０とする。なお、分割画像に含まれているマスク領域がｙ＝０の直線を含む場合には、（−Ｗ／２，０）、（Ｗ／２，０）をそれぞれ頂点Ａ５の位置、頂点Ａ６の位置とする（このとき、頂点Ａｎ（ｎ＝１，２，３，４，５，６）となる）。
【００３３】
図１３（ａ）では、円形画像における上半分の領域にマスク領域Ｒ（黒で塗りつぶした領域）が設定されており、下半分の領域にはマスク領域は設定されていない。図１３（ａ）の上半分の分割画像から生成したパノラマ画像を図１３（ｂ）の上半分、図１３（ａ）の下半分の分割画像から生成したパノラマ画像を図１３（ｂ）の下半分に示している。分割画像からパノラマ画像への変換により、マスク領域Ｒは変換領域Ｒ’に変換されている。ステップＳ６０２では、この変換領域Ｒ’の頂点Ａ１、Ａ２、Ａ３、Ａ４の位置を取得する。以下では、変換領域の各頂点をＡｎと表記する。
【００３４】
ステップＳ６０３では、マスク変換部１０５は、頂点Ａｎの重心位置Ｃを、頂点Ａｎの位置を用いて求める。ｎ＝１，２，３，４の場合は、Ｃは頂点Ａ１、Ａ２、Ａ３、Ａ４の位置から求めた重心位置であり、ｎ＝１，２，３，４，５，６の場合は、Ｃは頂点Ａ１、Ａ２、Ａ３、Ａ４、Ａ５、Ａ６の位置から求めた重心位置である。図１３（ｂ）においてＣは、頂点Ａ１、Ａ２、Ａ３、Ａ４の位置から求めた重心位置（変換領域Ｒ’の重心位置）である。
【００３５】
ステップＳ６０４では、マスク変換部１０５は、変換領域において頂点Ａｎ−１と頂点Ａｎとの間の辺（直線もしくは曲線）上で、頂点Ａｎ−１と頂点Ａｎとを結ぶ線分（直線Ａｍ：ｍ＝ｎ−１）からの距離が最大となる点Ｂｍの位置を求める。図１３（ｂ）の例では、頂点Ａ２と頂点Ａ３との間の辺上で、頂点Ａ２と頂点Ａ３とを結ぶ線分（直線Ａ２）からの距離が最大となる点Ｂ２の位置を求めている。なお、変換領域の頂点数がＬの場合には、ｎ＝２〜Ｌ＋１、ＡＬ＋１＝Ａ１である。
【００３６】
ステップＳ６０５では、マスク変換部１０５は、重心位置Ｃと直線Ａｍとの間の距離Ａｍｃと、重心位置Ｃと点Ｂｍとの間の距離Ｂｍｃと、を求める。そしてステップＳ６０６では、マスク変換部１０５は、距離Ａｍｃと距離Ｂｍｃとの大小比較を行う。この大小比較の結果、Ａｍｃ＞Ｂｍｃの場合には、処理はステップＳ６０７に進み、Ａｍｃ≦Ｂｍｃの場合には、処理はステップＳ６０８に進む。
【００３７】
ステップＳ６０７では、マスク変換部１０５は、頂点Ａｎ、頂点Ａｎ−１、点Ｂｍ、をそれぞれ点Ｄｎ、点Ｄｎ−１、点Ｅｎとする。一方、ステップＳ６０８では、マスク変換部１０５は、頂点Ａｎ、頂点Ａｎ−１の位置を補正したものをそれぞれ点Ｄｎ、Ｄｎ−１とする。頂点Ａｎ、頂点Ａｎ−１の位置の補正には様々な補正方法が適用できる。例えば頂点Ａｎと頂点Ａｎ−１とを通る直線を、その傾きを維持しながら点Ｂｍを通るように平行移動させた直線を求める。そして、該平行移動後の直線と、頂点Ａｎと頂点Ａｎ＋１とを通る直線、頂点Ａｎ−１と頂点Ａｎ−２とを通る直線、のそれぞれとの交点をそれぞれ点Ｄｎ、Ｄｎ−１とする。
【００３８】
ステップＳ６０９では、マスク変換部１０５は、全てのｎについてステップＳ６０４〜Ｓ６０８の処理を行ったのか否かを判断する。つまり、変換領域の頂点数がＬの場合にはｎ＝２〜Ｌ＋１についてステップＳ６０４〜Ｓ６０８の処理を行ったのか否かを判断する。
【００３９】
この判断の結果、全てのｎについてステップＳ６０４〜Ｓ６０８の処理を行った場合には、処理はステップＳ６１０に進める。一方、ステップＳ６０４〜Ｓ６０８の処理を行ってないｎが残っているのであれば、処理はステップＳ６０４に進み、ステップＳ６０４〜Ｓ６０８の処理を行ってないｎについて、ステップＳ６０４〜Ｓ６０８の処理を行う。
【００４０】
ステップＳ６１０では、マスク変換部１０５は、各点Ｄｎおよび各点Ｅｎ（ステップＳ６０７の処理を一度も行っていない場合には点Ｅｎは存在しないので各点Ｄｎ）を時計回りにＦ１，Ｆ２，…とし、Ｆ１，Ｆ２，…を頂点とする多角形領域を求める。図１３（ｃ）の例では、図１３（ｂ）の頂点Ａ１〜Ａ４を用いて頂点Ｆ１〜Ｆ７を求めており、頂点Ｆ１〜Ｆ７により構成される多角形領域Ｒ”を求める。
【００４１】
ステップＳ６１１では、マスク変換部１０５は、ステップＳ６１０で生成した多角形領域の頂点の数ｌ＞４であるか否かを判断する。この判断の結果、ｌ＞４の場合には、処理はステップＳ６１２に進み、ｌ≦４の場合には、処理はステップＳ６１５に進む。
【００４２】
ステップＳ６１２では、時間推定部１０４は上記の推定時間Ｔを推定し、マスク変換部１０５は、上記の重心位置Ｃと、上記の推定時間Ｔと、の組み合わせに対応する「四角形領域の数Ｐ」を、上記のテーブルから特定する。
【００４３】
ステップＳ６１３では、マスク変換部１０５は、パノラマ画像上に個数が「四角形領域の数Ｐ」の四角形領域で構成されるマスク領域を生成する。ステップＳ６１３における処理の詳細については、図７を用いて後述する。
【００４４】
ステップＳ６１５では、マスク変換部１０５は、多角形領域を１分割する四角形領域をマスク領域として求める。つまりマスク変換部１０５は、多角形領域を構成する各頂点のｕ座標値の最大値ｕｍａｘおよび最小値ｕｍｉｎ、ｖ座標値の最大値ｖｍａｘおよび最小値ｖｍｉｎを求める。そしてマスク変換部１０５は、パノラマ画像における座標位置（ｕｍａｘ，ｖｍａｘ），（ｕｍａｘ，ｖｍｉｎ），（ｕｍｉｎ，ｖｍｉｎ），（ｕｍｉｎ，ｖｍａｘ）を頂点とする四角形領域を、パノラマ画像におけるマスク領域とする。この四角形領域は、多角形領域を囲む四角形領域の一例であり、多角形領域を囲むことができる四角形領域であれば、その求め方は上記の求め方に限らない。
【００４５】
ステップＳ６１４では、マスク変換部１０５は、ステップＳ６１３もしくはステップＳ６１５で生成されたマスク領域をパノラマ画像上に設定する。設定されたマスク領域には、例えば制御部１０９によってマスク処理がなされる。
【００４６】
次に、上記のステップＳ６１３における処理の詳細について、図７のフローチャートに従って説明する。ステップＳ７０１では、マスク変換部１０５は、多角形領域を頂点から頂点への直線にて分割を行うことによってＰ個の四角形領域に単純分割するのか、多角形領域をＭ（Ｍ＜ｌ）角形の領域（Ｍ角形領域）に補正するのか、を判断する。マスク変換部１０５は、ｌ≦２（Ｐ−１）＋４であれば、上記の単純分割が可能であると判断して、処理はステップＳ７１７に進み、ｌ＞２（Ｐ−１）＋４であれば、上記のＭ角形領域への補正が可能であると判断して、処理はステップＳ７０２に進む。
【００４７】
ステップＳ７０２では、マスク変換部１０５は、以降の処理で用いる変数ｎおよび変数ｊをそれぞれ０に初期化する。ステップＳ７０３では、マスク変換部１０５は、多角形領域の頂点のうち何れか１つを基準となる頂点Ｆ０とし、頂点Ｆ０から時計回りに並ぶ各頂点をＦ１，Ｆ２，…Ｆｌ−１とする。このときマスク変換部１０５は、隣り合う２辺（頂点Ｆｎと頂点Ｆｎ＋１とを結ぶ辺と頂点ＦｎとＦｎ−１とを結ぶ辺）の成す内角θｎを求める。ここで、ｎはＬを法とする最小非負剰余代数系となる。
【００４８】
ステップＳ７０４では、マスク変換部１０５は、θｎ＞πであるか否かを判断する。この判断の結果、θｎ＞πである場合には、処理はステップＳ７０５に進み、θｎ≦πである場合には、処理はステップＳ７０６に進む。
【００４９】
ステップＳ７０５では、マスク変換部１０５は、変数ｊの値を１つインクリメントすると共に、θｎ、Ｆｎ、Ｆｎ＋１、Ｆｎ−１をそれぞれ、θ’ｎ、Ｇｎ、Ｇｎ＋１、Ｇｎ−１とする。
【００５０】
ステップＳ７０６では、マスク変換部１０５は、変数ｎの値を１つインクリメントする。ステップＳ７０７では、マスク変換部１０５は、ｎ≧Ｌであるか否かを判断する。この判断の結果、ｎ≧Ｌの場合には、処理はステップＳ７０８に進み、ｎ＜Ｌの場合には、ステップＳ７０３に進む。
【００５１】
ステップＳ７０８では、マスク変換部１０５は、ｊ＜ｌ−２（Ｐ−１）−４（πを超えた内角の数ｊがｌ−２（Ｐ−１）−４未満）であるか否かを判断する。この判断の結果、ｊ＜ｌ−２（Ｐ−１）−４の場合には、処理はステップＳ７１１に進み、ｊ≧ｌ−２（Ｐ−１）−４の場合には、処理はステップＳ７０９に進む。
【００５２】
ステップＳ７０９では、マスク変換部１０５は、πを超えた内角θ’ｎに対応するＧｎ、Ｇｎ＋１、Ｇｎ−１のセットごとに、Ｇｎ、Ｇｎ＋１、Ｇｎ−１の３点を頂点とする三角形Ｔｎの面積Ｄｎを求める。
【００５３】
ステップＳ７１０では、マスク変換部１０５は、三角形Ｔｎのうち、面積Ｄｎが小さい順に上位から規定個数（例えば｛ｌ−２（Ｐ−１）−４｝個）の三角形Ｔｎを対象三角形Ｔｎとする。そしてマスク変換部１０５は対象三角形Ｔｎごとに、頂点Ｇｎ＋１と頂点Ｇｎを両端とする辺および頂点Ｇｎ−１と頂点Ｇｎを両端とする辺を削除し、頂点Ｇｎ＋１と頂点Ｇｎ−１を両端とする辺を追加する。これによりマスク変換部１０５は、多角形領域を多角形領域Ｈ（補正多角形領域）に補正する。
【００５４】
ここで、頂点Ｇｎ−１と頂点Ｇｎを両端とする辺は「Ｇｎを一端とする一方の辺」に対応し、頂点Ｇｎ＋１と頂点Ｇｎを両端とする辺は「Ｇｎを一端とする他方の辺」に対応する。また、頂点Ｇｎ−１は「Ｇｎを一端とする一方の辺の他端」に対応し、頂点Ｇｎ＋１は「Ｇｎを一端とする他方の辺の他端」に対応する。
【００５５】
一方、ステップＳ７１１では、マスク変換部１０５は、三角形Ｔｎごとに、頂点Ｇｎ＋１と頂点Ｇｎを両端とする辺および頂点Ｇｎ−１と頂点Ｇｎを両端とする辺を削除し、頂点Ｇｎ＋１と頂点Ｇｎ−１を両端とする辺を追加する。これによりマスク変換部１０５は、多角形領域を多角形領域Ｈ（補正多角形領域）に補正する。以下では、多角形領域Ｈの各頂点をＩｋとする（ｋ＝１，２，…，（多角形領域Ｈの頂点数））。
【００５６】
ステップＳ７１２では、マスク変換部１０５は、頂点Ｉｋと頂点Ｉｋ−１とを通る直線と、頂点Ｉｋ＋１と頂点Ｉｋ＋２とを通る直線と、の交点Ｈｋの位置を求め、該求めた交点Ｈｋの位置が表示領域内の位置であるか否かを判断する。表示領域は、パノラマ画像を表示する表示画面の全体領域であっても良いし、一部の領域であっても良い。
【００５７】
そしてこの判断の結果、交点Ｈｋの位置が表示領域内の位置であれば、マスク変換部１０５は、頂点Ｉｋ、頂点Ｉｋ＋１、交点Ｈｋ、を頂点とする三角形Ｔｋの面積Ｄｋを求める。
【００５８】
ステップＳ７１４では、マスク変換部１０５は、ステップＳ７１２で求めた三角形Ｔｋのうち、面積Ｄｋが小さい順に上位から規定個数（例えば｛ｌ−２（Ｐ−１）−４−ｊ｝個）の三角形Ｔｋを対象三角形Ｔｋとして選択する。なお、ステップＳ７１２で求めた三角形Ｔｋの個数が｛ｌ−２（Ｐ−１）−４−ｊ｝以下の場合には、全ての三角形Ｔｋを対象三角形Ｔｋとして選択する。
【００５９】
そしてマスク変換部１０５は、対象三角形Ｔｋごとに次のような処理を行うことで、多角形領域Ｈを補正する。つまり、頂点Ｉｋ−１と頂点Ｉｋを両端とする辺、頂点Ｉｋと頂点Ｉｋ＋１を両端とする辺、頂点Ｉｋ＋１と頂点Ｉｋ＋２を両端とする辺、を削除し、頂点Ｉｋ−１と交点Ｈｋを両端とする辺、頂点Ｈｋと交点Ｈｋ＋２を両端とする辺、を加える。
【００６０】
ステップＳ７１５では、マスク変換部１０５は、ステップＳ７１４にて補正された多角形領域Ｈの頂点の数が｛２×（Ｐ−１）−４｝以下であるか否かを判断する。この判断の結果、ステップＳ７１４にて生成された多角形領域Ｈの頂点の数が｛２×（Ｐ−１）−４｝以下である場合には、処理はステップＳ７１７に進む。一方、ステップＳ７１４にて補正された多角形領域Ｈの頂点の数が｛２×（Ｐ−１）−４｝よりも多い場合には、処理はステップＳ７１６に進む。
【００６１】
ステップＳ７１６では、マスク変換部１０５は、ステップＳ７１４にて補正された多角形領域Ｈを１分割する四角形領域をマスク領域として求める（Ｐ＝１の場合に対応する処理）。つまりマスク変換部１０５は、ステップＳ７１４にて補正された多角形領域Ｈを構成する各頂点のｕ座標値の最大値ｕｍａｘおよび最小値ｕｍｉｎ、ｖ座標値の最大値ｖｍａｘおよび最小値ｖｍｉｎを求める。そしてマスク変換部１０５は、パノラマ画像における座標位置（ｕｍａｘ，ｖｍａｘ），（ｕｍａｘ，ｖｍｉｎ），（ｕｍｉｎ，ｖｍｉｎ），（ｕｍｉｎ，ｖｍａｘ）を頂点とする四角形領域を、パノラマ画像におけるマスク領域とする。この四角形領域は、多角形領域Ｈを囲む四角形領域の一例であり、多角形領域Ｈを囲むことができる四角形領域であれば、その求め方は上記の求め方に限らない。そして処理はステップＳ６１４に進む。
【００６２】
ステップＳ７０１からステップＳ７１７に処理が進んだ場合、ステップＳ７１７では、マスク変換部１０５は、ステップＳ６１０で求めた多角形領域を頂点から頂点への直線にて分割を行うことによってＰ個の四角形領域に単純分割する。
【００６３】
ステップＳ７１０やステップＳ７１５からステップＳ７１７に処理が進んだ場合、ステップＳ７１７では、マスク変換部１０５は、多角形領域ＨをＰ個の四角形領域に分割する。例えば、多角形領域Ｈの頂点Ｉｋから頂点Ｉｂ（｜ｋ−ｂ｜＞３）へ、もしくは頂点Ｉｋを一端としない辺へ、分割線を設定する。そして頂点Ｉｋ以外の頂点のそれぞれから他の頂点、辺、設定済みの分割線、の何れかに分割線を仮設定して、多角形領域ＨをＰ個の四角形領域で分割可能な分割線の組み合わせを探索する。そしてマスク変換部１０５は、探索した分割線で多角形領域Ｈを分割したそれぞれの四角形領域を、パノラマ画像におけるマスク領域とする。
【００６４】
円形画像中のマスク領域に対応するパノラマ画像中のマスク領域の設定例について、図８を用いて説明する。図８（ａ）に示す如く、円形画像の上半分に黒で塗りつぶされた領域がマスク領域として設定されているとする。このとき、上半分の領域と下半分の領域のそれぞれからパノラマ画像を生成すると、図８（ｂ）に示す如く、上半分のパノラマ画像には、円形画像の上半分に設定されているマスク領域が変換された変換領域（黒で塗りつぶされた領域）が含まれている。
【００６５】
図８（ｃ）〜（ｆ）はそれぞれ、Ｐ＝４，３，２，１に対応するパノラマ画像の一例を示す。図８（ｃ）に示すパノラマ画像中の多角形領域Ｈは、４つの四角形領域に分割可能な形状の多角形領域として生成されており、図８（ｃ）に示す如く、４つの四角形領域に分割されている。図８（ｄ）に示すパノラマ画像中の多角形領域Ｈは、３つの四角形領域に分割可能な形状の多角形領域として生成されており、図８（ｄ）に示す如く、３つの四角形領域に分割されている。図８（ｅ）に示すパノラマ画像中の多角形領域Ｈは、２つの四角形領域に分割可能な形状の多角形領域として生成されており、図８（ｅ）に示す如く、２つの四角形領域に分割されている。図８（ｆ）に示すパノラマ画像中の四角形領域Ｊは、多角形領域を１分割する四角形領域であり、多角形領域を囲む四角形領域として生成されたものである。
【００６６】
図８（ｃ）〜（ｆ）に示す如く、太線で囲まれた領域（図８（ｃ）〜（ｅ）の場合は多角形領域Ｈ、図８（ｆ）の場合は四角形領域Ｊ）は、Ｐの値が大きいほど変換領域の形状に近い。つまり、多角形領域が関心領域に近いほど、また、マスクに要する時間が長いほど、変換領域の形状をより詳細に再現した四角形領域群を生成することになる。よって、ユーザの関心が高い部分においてはその反映する時間内で可能な分割を行うことで、余計な領域が不可視となりにくくなる。
【００６７】
［第２の実施形態］
本実施形態を含む以下の各実施形態では、第１の実施形態との差分について説明し、以下で特に触れない限りは第１の実施形態と同様であるものとする。本実施形態に係る画像処理装置２００の機能構成例について、図９のブロック図を用いて説明する。
【００６８】
図９に示す構成は、図１に示した構成においてマスク変換部１０５をマスク変換部２０５に変更すると共に、動体検知部２０４を加えた構成となる。然るに以下では、マスク変換部２０５および動体検知部２０４の動作について説明する。
【００６９】
動体検知部２０４は、撮像部１０１により撮像された円形画像から動体の領域（動体領域）を検出し、該動体領域の位置（例えば動体領域の重心位置）を、上記の式（１）、（２）、（３）を用いてパノラマ画像上の位置に変換する。動体領域の検出方法は、特定の検出方法に限らない。例えば、撮像部１０１により過去に撮像された円形画像から背景画像を生成し、該背景画像と今回撮像された円形画像との差分領域を動体領域とする背景差分法を用いても良い。また、撮像部１０１による各フレームの円形画像間の差分を動体領域とするフレーム間差分法を用いても良い。なお、動体検知部２０４は、パノラマ画像から動体領域を検出し、その位置を求めるようにしても良い。
【００７０】
マスク変換部２０５は、上記のマスク変換部１０５による四角形領域への分割後、多角形領域（分割元）の各辺と動体領域との間の距離を求め、該距離と、上記の推定時間Ｔと、の組み合わせに対応する「四角形領域の数Ｐ」を決定する。マスク変換部２０５の動作について、図１０に示す具体例を挙げて説明する。
【００７１】
図１０（ａ）は、Ｐ＝２に対応するマスク領域が設定されたパノラマ画像を示している。このマスク領域は頂点Ｆ１〜Ｆ６を有し、頂点Ｆ１，Ｆ２，Ｆ３，Ｆ６を有する四角形領域、頂点Ｆ３，Ｆ４，Ｆ５，Ｆ６を有する四角形領域、の２（＝Ｐ）つの四角形領域に分割されている。さらにこのパノラマ画像からは動体Ｏの位置であるＯ（ｘ，ｙ）が検出されている。このとき、マスク変換部２０５は、頂点Ｆｎと頂点Ｆｎ＋１とを通る直線Ｌｎと動体の位置Ｏ（ｘ，ｙ）との間の距離ｄｎを以下の式に従って求める。
【００７２】
【数３】
2020086593.tif 000005
【００７３】
ここで、αｎ、βｎはそれぞれ、直線Ｌｎの傾き、切片である。またｎは６を法とする最小非負剰余代数系となる。マスク変換部２０５は、距離ｄ１〜ｄ６を求め、距離ｄ１〜ｄ６を小さい順に並び替える。ここで一例として、ｄ１＜ｄ２＜ｄ３＜ｄ４＜ｄ５＜ｄ６であるとする。
【００７４】
このときマスク変換部２０５は先ず、距離ｄ１に対応する直線である直線Ｌ１へ位置Ｏ（ｘ，ｙ）からおろした垂線と直線Ｌ１との交点位置Ｃｒ１が頂点Ｆ１と頂点Ｆ２との間に位置しているかを判断する。この判断の結果、交点位置Ｃｒ１が頂点Ｆ１と頂点Ｆ２との間に位置している場合には、距離ｄ１を距離ｒとする。一方、交点位置Ｃｒ１が頂点Ｆ１と頂点Ｆ２との間に位置していない場合、距離ｄ１の次に小さい距離ｄ２に対応する直線Ｌ２へ位置Ｏ（ｘ，ｙ）からおろした垂線と直線Ｌ２との交点位置Ｃｒ２が頂点Ｆ２と頂点Ｆ３との間に位置しているかを判断する。この判断の結果、交点位置Ｃｒ２が頂点Ｆ２と頂点Ｆ３との間に位置している場合には、距離ｄ２を距離ｒとする。一方、交点位置Ｃｒ２が頂点Ｆ２と頂点Ｆ３との間に位置していない場合、距離ｄ２の次に小さい距離ｄ３に対応する直線Ｌ３へ位置Ｏ（ｘ，ｙ）からおろした垂線と直線Ｌ３との交点位置Ｃｒ３が頂点Ｆ３と頂点Ｆ４との間に位置しているかを判断する。この判断の結果、交点位置Ｃｒ３が頂点Ｆ３と頂点Ｆ４との間に位置している場合には、距離ｄ３を距離ｒとする。一方、交点位置Ｃｒ３が頂点Ｆ３と頂点Ｆ４との間に位置していない場合、距離ｄ３の次に小さい距離ｄ４に対応する直線Ｌ４へ位置Ｏ（ｘ，ｙ）からおろした垂線と直線Ｌ４との交点位置Ｃｒ４が頂点Ｆ４と頂点Ｆ５との間に位置しているかを判断する。この判断の結果、交点位置Ｃｒ４が頂点Ｆ４と頂点Ｆ５との間に位置している場合には、距離ｄ４を距離ｒとする。一方、交点位置Ｃｒ４が頂点Ｆ４と頂点Ｆ５との間に位置していない場合、距離ｄ４の次に小さい距離ｄ５に対応する直線Ｌ５へ位置Ｏ（ｘ，ｙ）からおろした垂線と直線Ｌ５との交点位置Ｃｒ５が頂点Ｆ５と頂点Ｆ０との間に位置しているかを判断する。この判断の結果、交点位置Ｃｒ５が頂点Ｆ５と頂点Ｆ０との間に位置している場合には、距離ｄ５を距離ｒとする。
【００７５】
このように、マスク領域を構成する各辺を延長した直線へ位置Ｏ（ｘ，ｙ）からおろした垂線のうち、直線との交点位置が辺上に存在し且つより短い垂線の長さを距離ｒとする。
【００７６】
そしてマスク変換部２０５は、距離ｒと推定時間Ｔとの組み合わせに対応する「四角形領域の数Ｐ」を特定する。その際、マスク変換部２０５は、図１０（ｂ）に例示するテーブルを参照する。図１０（ｂ）のテーブルには、距離ｒと推定時間Ｔとの組み合わせごとに、対応する「四角形領域の数Ｐ」が登録されている。
【００７７】
マスク変換部２０５が「四角形領域の数Ｐ」を特定した後は、現フレームのパノラマ画像もしくは次以降のフレームのパノラマ画像について、該「四角形領域の数Ｐ」を用いて第１の実施形態と同様にして多角形領域をＰ個の四角形領域に分割すれば良い。これにより、ユーザの関心が高い部分においては余計な領域が不可視となりにくくする事が可能となる。
【００７８】
［第３の実施形態］
本実施形態に係る画像処理装置３００の機能構成例について、図１１のブロック図を用いて説明する。図１１に示す構成は、図１に示した構成においてマスク変換部１０５をマスク変換部３０５に変更すると共に、符号化部３０６およびＲＯＩ（Region of Interest）設定部３０４を加えた構成となる。然るに以下では、マスク変換部３０５、ＲＯＩ設定部３０４、符号化部３０６の動作について説明する。
【００７９】
ＲＯＩ設定部３０４は、撮像部１０１から出力された円形画像中に設定されたＲＯＩを規定する情報であるＲＯＩ情報（ＲＯＩの四隅の位置）を取得する。ＲＯＩ設定部３０４は、予め設定されたＲＯＩ情報を画像処理装置の内外から取得しても良いし、画像処理装置もしくは外部装置の操作部をユーザが操作することで入力したＲＯＩ情報を取得しても良い。またＲＯＩ設定部３０４は、円形画像を複数の小領域に分割し、それぞれの小領域の空間周波数を計算して高周波成分が閾値を越えた小領域の集合をＲＯＩとしても良い。このように、ＲＯＩ情報を取得することができれば、その取得形態は、特定の取得形態に限らない。
【００８０】
なお、分割画像をパノラマ画像に変換する変換式（上記の式（１）、（２）、（３））を用いることで、分割画像に含まれているＲＯＩの４つの頂点のそれぞれの位置が、パノラマ画像中のどの位置に変換されたのかが特定可能である。パノラマ画像上におけるＲＯＩの４つの頂点のそれぞれの位置はマスク変換部３０５が求めても良いし、ＲＯＩ設定部３０４が求めても良い。
【００８１】
また本実施形態では、パノラマ画像上のＲＯＩ（円形画像からパノラマ画像への変換により円形画像上のＲＯＩが変換されたパノラマ画像上のＲＯＩ）を、他の画像領域（非ＲＯＩ）よりも高画質で符号化する。そのために、ＲＯＩ設定部３０４は、非ＲＯＩに対する量子化値に対するＲＯＩに対する量子化値の差分（差分量子化値）を取得する。差分量子化値の取得方法には様々な方法があり、特定の取得方法に限らない。ＲＯＩ設定部３０４は、予め設定された差分量子化値を画像処理装置の内外から取得しても良いし、画像処理装置もしくは外部装置の操作部をユーザが操作することで入力した差分量子化値を取得しても良い。
【００８２】
マスク変換部３０５は、マスク変換部１０５の動作に加えて、現在の「四角形領域の数Ｐ」を、多角形領域、ＲＯＩ、符号化部３０６の符号化タイプ（フレーム内符号化、フレーム間符号化の何れか）、推定時間Ｔ、に基づいて変更する。
【００８３】
符号化部３０６は、Ｈ.２６４のようにフレーム内符号化とフレーム間符号化の両方の符号化を行うことができ、フレーム内符号化およびフレーム間符号化の何れか（現在設定されている一方）に従ってパノラマ画像を符号化する。その際、符号化部３０６は、パノラマ画像において非ＲＯＩは規定の量子化値Ｑを用いて量子化し、ＲＯＩは規定の量子化値Ｑに差分量子化値ＤＱを加えた量子化値Ｑ’（＞Ｑ）を用いて量子化する。図６，７のフローチャートに従った処理の後でマスク変換部３０５が行う処理について、図１２のフローチャートに従って説明する。
【００８４】
ステップＳ１２０１では、マスク変換部３０５は、マスク領域を構成する各辺を延長した直線へＲＯＩの位置（例えばＲＯＩの四隅の位置の平均位置）からおろした垂線のうち、直線との交点位置が辺上に存在し且つより短い垂線の長さを距離ｒとする。この処理は、ＲＯＩの位置（例えばＲＯＩの四隅の位置の平均位置）を上記のＯ（ｘ，ｙ）とし、第２の実施形態で説明した処理に従って距離ｒを特定する処理である。
【００８５】
ステップＳ１２０２では、マスク変換部３０５は、第２の実施形態と同様に、距離ｒと推定時間Ｔとの組み合わせに対応する「四角形領域の数Ｐ」を特定する。ステップＳ１２０３では、マスク変換部３０５は、現在の「四角形領域の数Ｐｃ」とステップＳ１２０２で特定した「四角形領域の数Ｐ」との差の絶対値Ｐｄｉｆｆを求める。
【００８６】
ステップＳ１２０４では、マスク変換部３０５は、符号化部３０６の符号化タイプがフレーム内符号化であるのかフレーム間符号化であるのかを判断する。符号化部３０６の符号化タイプは、例えば、符号化部３０６が行う符号化がフレーム内符号化であるのかフレーム間符号化であるのかを示す情報としてメモリ部１１０に登録されており、マスク変換部３０５はこの情報を参照することで符号化タイプを特定する。
【００８７】
この判断の結果、符号化部３０６の符号化タイプがフレーム内符号化である場合には、処理はステップＳ１２０５に進み、フレーム間符号化である場合には、処理はステップＳ１２０６に進む。
【００８８】
ステップＳ１２０５ではマスク変換部３０５は、現フレームのパノラマ画像もしくは次以降のフレームのパノラマ画像について、ステップＳ１２０２で特定した「四角形領域の数Ｐ」を用いて第１の実施形態と同様にしてＰ個の四角形領域への分割を行う。
【００８９】
ステップＳ１２０６ではマスク変換部３０５は、現フレームのパノラマ画像もしくは次以降のフレームのパノラマ画像について、「四角形領域の数Ｐ」の代わりに「Ｐｃ−Ｐｄｉｆｆ×α」を用いて第１の実施形態と同様にしてＰ個の四角形領域への分割を行う。
【００９０】
ここでαは定数で、例えば、０．５である。このαを適切に設定することにより、フレーム間符号化した際にＲＯＩとして画質を優先したいとした領域が、フレーム間でマスク領域が急激に変化することで画質劣化させないようにできる。
【００９１】
ステップＳ１２０７では、マスク変換部３０５は、ステップＳ１２０５若しくはステップＳ１２０６において分割されたそれぞれの四角形領域をマスク領域として設定する。これにより、ユーザの関心が高い部分においては余計な領域が不可視となりにくくすることが可能となる。
【００９２】
［第４の実施形態］
第１の実施形態では、パノラマ画像における変換領域の位置と、推定時間Ｔと、の組み合わせに対応する「四角形領域の数Ｐ」を特定していた。しかし、パノラマ画像における変換領域の位置ごとに対応する「四角形領域の数Ｐ」をテーブルに登録しておき、パノラマ画像から求めた変換領域の位置に対応する「四角形領域の数Ｐ」をテーブルから特定するようにしても良い。また、推定時間Ｔごとに対応する「四角形領域の数Ｐ」をテーブルに登録しておき、推定した推定時間Ｔに対応する「四角形領域の数Ｐ」をテーブルから特定するようにしても良い。
【００９３】
また第２，３の実施形態では、距離ｒと推定時間Ｔとの組み合わせに対応する「四角形領域の数Ｐ」を特定していた。しかし、距離ｒごとに対応する「四角形領域の数Ｐ」をテーブルに登録しておき、パノラマ画像から求めた距離ｒに対応する「四角形領域の数Ｐ」をテーブルから特定するようにしても良い。また、推定時間Ｔごとに対応する「四角形領域の数Ｐ」をテーブルに登録しておき、推定した推定時間Ｔに対応する「四角形領域の数Ｐ」をテーブルから特定するようにしても良い。このように、「四角形領域の数Ｐ」を対応付ける条件は、上記のような特定の条件に限らず、様々な条件が適用可能である。また、上記の円形画像は、環状の画像も含むものとする。
【００９４】
また、図１，９，１１に示した画像処理装置１００、２００、３００（以下、単に画像処理装置と称する）は、撮像部１０１とそれ以外の機能部を１つの装置に纏めた構成を有していた。しかし、画像処理装置を２台以上の装置で実装しても良い。
【００９５】
例えば、画像処理装置を、撮像部１０１以外の機能部を有するコンピュータ装置と、撮像部１０１と、で構成しても良い。この場合、撮像部１０１とコンピュータ装置とは無線および／または有線のネットワークを介して互いにデータ通信が可能なように構成されている。そしてコンピュータ装置は、撮像部１０１により撮像された円形画像からパノラマ画像を生成して表示したり、該パノラマ画像を符号化したり、該パノラマ画像を他の装置に転送したりする。
【００９６】
このコンピュータ装置に適用可能なハードウェア構成例について、図１４のブロック図を用いて説明する。なお、このハードウェア構成例は、図１，９，１１の画像処理装置に適用しても構わない。
【００９７】
ＣＰＵ１４０１は、ＲＡＭ１４０２やＲＯＭ１４０３に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりＣＰＵ１４０１は、コンピュータ装置全体の動作制御を行うと共に、画像処理装置（撮像部１０１を除く）が行うものとして上述した各処理を実行若しくは制御する。上記の制御部１０９は、ＣＰＵ１４０１で実装可能である。
【００９８】
ＲＡＭ１４０２は、ＲＯＭ１４０３や外部記憶装置１４０６からロードされたコンピュータプログラムやデータ、Ｉ／Ｆ（インターフェース）１４０７を介して外部（例えば撮像部１０１）から受信した円形画像などのデータ、を格納するためのエリアを有する。さらにＲＡＭ１４０２は、ＣＰＵ１４０１が各種の処理を実行する際に用いるワークエリアを有する。このようにＲＡＭ１４０２は、各種のエリアを適宜提供することができる。
【００９９】
ＲＯＭ１４０３には、コンピュータ装置の設定データや起動プログラムなど、書換不要の情報が格納されている。
【０１００】
操作部１４０４は、キーボード、マウス、タッチパネルなどのユーザインターフェースにより構成されており、ユーザが操作することで各種の指示をＣＰＵ１４０１に対して入力することができる。上記のユーザによる操作（θの設定／変更操作、設定領域情報の入力操作、円形画像上のマスク領域の設定操作、ＤＰＴＺ操作、ＲＯＩ情報の入力操作、差分量子化値の入力操作等）は、ユーザが操作部１４０４を操作することで実現される。
【０１０１】
表示部１４０５は、液晶画面やタッチパネル画面等により構成されており、ＣＰＵ１４０１による処理結果を画像や文字などでもって表示することができる。表示部１４０５には、例えば、上記の円形画像やパノラマ画像、各種のＧＵＩを表示することができる。また表示部１４０５は、画像や文字などを投影するプロジェクタなどの投影装置であっても良い。
【０１０２】
外部記憶装置１４０６は、ハードディスクドライブ装置等の大容量情報記憶装置である。外部記憶装置１４０６には、ＯＳ（オペレーティングシステム）や、画像処理装置が行うものとして上述した各処理をＣＰＵ１４０１に実行若しくは制御させるためのコンピュータプログラムやデータが保存されている。外部記憶装置１４０６に保存されているデータには、上記の説明において既知の情報としたもの（閾値など）が含まれている。
【０１０３】
外部記憶装置１４０６に保存されているコンピュータプログラムやデータは、ＣＰＵ１４０１による制御に従って適宜ＲＡＭ１４０２にロードされ、ＣＰＵ１４０１による処理対象となる。なお、上記のメモリ部１１０は、ＲＡＭ１４０２、ＲＯＭ１４０３、外部記憶装置１４０６等により実装可能である。
【０１０４】
Ｉ／Ｆ１４０７は、外部の装置との間のデータ通信を行うための通信インターフェースとして機能するものであり、例えば、撮像部１０１から出力された円形画像はＩ／Ｆ１４０７を介して外部記憶装置１４０６やＲＡＭ１４０２に格納される。
【０１０５】
上記のＣＰＵ１４０１、ＲＡＭ１４０２、ＲＯＭ１４０３、操作部１４０４、表示部１４０５、外部記憶装置１４０６、Ｉ／Ｆ１４０７は何れもバス１４０８に接続されている。
【０１０６】
なお、図１，９，１１に示した機能部のうち、撮像部１０１、制御部１０９、メモリ部１１０を除く他の機能部はハードウェアで実装しても良いし、ソフトウェア（コンピュータプログラム）で実装しても良い。後者の場合、このコンピュータプログラムは外部記憶装置１４０６に保存される。
【０１０７】
なお、以上説明した各実施形態の一部若しくは全部を適宜組み合わせて使用しても構わない。また、以上説明した各実施形態の一部若しくは全部を選択的に使用しても構わない。
【０１０８】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１０９】
１０１：撮像部  １０２：画像変換部  １０３：マスク設定部  １０４：時間推定部  １０５：マスク変換部  １０９：制御部  １１０：メモリ部
【図１】
2020086593.tif 000006
【図２】
2020086593.tif 000007
【図３】
2020086593.tif 000008
【図４】
2020086593.tif 000009
【図５】
2020086593.tif 000010
【図６】
2020086593.tif 000011
【図７】
2020086593.tif 000012
【図８】
2020086593.tif 000013
【図９】
2020086593.tif 000014
【図１０】
2020086593.tif 000015
【図１１】
2020086593.tif 000016
【図１２】
2020086593.tif 000017
【図１３】
2020086593.tif 000018
【図１４】
2020086593.tif 000019