(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-04
(45)【発行日】2024-12-12
(54)【発明の名称】歪んだ線を有する画像における領域の輪郭を規定するための方法およびシステム
(51)【国際特許分類】
H04N 23/62 20230101AFI20241205BHJP
H04N 23/63 20230101ALI20241205BHJP
G06F 3/0484 20220101ALI20241205BHJP
【FI】
H04N23/62
H04N23/63
G06F3/0484
【外国語出願】
(21)【出願番号】P 2023127429
(22)【出願日】2023-08-04
【審査請求日】2024-06-14
(32)【優先日】2022-08-15
(33)【優先権主張国・地域又は機関】EP
【早期審査対象出願】
(73)【特許権者】
【識別番号】502208205
【氏名又は名称】アクシス アーベー
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】ユアン, ソン
【審査官】越河 勉
(56)【参考文献】
【文献】米国特許第07366359(US,B1)
【文献】特開2014-042160(JP,A)
【文献】特開2022-020297(JP,A)
【文献】特開2010-283788(JP,A)
【文献】特開2016-187162(JP,A)
【文献】特開2019-017069(JP,A)
【文献】特開2020-194532(JP,A)
【文献】特開2007-264831(JP,A)
【文献】米国特許出願公開第2014/0340513(US,A1)
【文献】国際公開第2013/114684(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 23/62
H04N 23/63
G06F 3/0484
(57)【特許請求の範囲】
【請求項1】
歪んだ線を有する画像における領域の輪郭を規定するための方法であって、
歪んだ線を有する画像の第1のバージョンを表示することであって、前記画像の前記第1のバージョンの第1の画像部分における線は、前記画像の前記第1のバージョンの他の部分における線より歪みが少ない、第1のバージョンを表示することと、
前記画像の前記第1のバージョンにおける前記領域の前記輪郭の第1の輪郭部分を規定するユーザ入力を受信することであって、前記第1の輪郭部分は、前記画像の前記第1のバージョンの前記第1の画像部分に1つまたは複数の線を含む、ユーザ入力を受信することと、
歪んだ線を有する前記画像のさらなるバージョンを表示することであって、前記画像の前記さらなるバージョンのさらなる画像部分における線は、前記画像の前記さらなるバージョンの他の部分における線より歪みが少なく、前記さらなる画像部分は前記第1の画像部分と異なる、さらなるバージョンを表示することと、
前記画像の前記さらなるバージョンにおける前記領域の前記輪郭のさらなる輪郭部分を規定するユーザ入力を受信することであって、前記さらなる輪郭部分は、前記画像の前記さらなるバージョンの前記さらなる画像部分に1つまたは複数の線を含む、ユーザ入力を受信することと
を含
み、
前記画像の前記第1のバージョンと共に前記第1の輪郭部分を表示することと、前記画像の前記さらなるバージョンと共に前記さらなる輪郭部分を表示することと
をさらに含む、方法。
【請求項2】
前記領域の前記輪郭が完全に規定されるまで、前記画像のさらなるバージョンを表示するステップ、および前記領域の前記輪郭のさらなる輪郭部分を規定するユーザ入力を受信するステップを繰り返すこと
をさらに含む、請求項1に記載の方法。
【請求項3】
前記第1の画像部分は、前記画像の前記第1のバージョンにおける第1の水平線に沿って延び、前記さらなる画像部分は、前記画像の前記さらなるバージョンにおけるさらなる水平線に沿って延びる、請求項1に記載の方法。
【請求項4】
前記画像の前記第1のバージョンを表示することは、前記第1の画像部分を示すユーザ入力の受信に応答して行われ、前記画像の前記さらなるバージョンを表示することは、前記さらなる画像部分を示すユーザ入力の受信に応答して行われる、請求項1に記載の方法。
【請求項5】
前記画像の前記第1のバージョンと前記画像の前記さらなるバージョンとの間の変換を使用して、前記画像の前記第1のバージョンで規定された前記第1の輪郭部分を変換すること
をさらに含む、請求項1に記載の方法。
【請求項6】
前記画像の前記さらなるバージョンと共に、変換された前記第1の輪郭部分を表示すること
をさらに含む、請求項5に記載の方法。
【請求項7】
変換された前記第1の輪郭部分と、前記画像の前記さらなるバージョンで規定された前記さらなる輪郭部分を、前記画像の前記さらなるバージョンにおける前記輪郭の共通の表現にマージすること
をさらに含む、請求項5に記載の方法。
【請求項8】
前記画像の前記第1のバージョンで規定された前記第1の輪郭部分は、第1の複数の点によって表され、前記第1の輪郭部分は、前記変換を使用して前記第1の複数の点を変換することによって変換される、請求項5に記載の方法。
【請求項9】
前記画像の前記第1のバージョンで規定された前記第1の輪郭部分の第1のオーバーレイ画像をレンダリングすることをさらに含み、前記第1の輪郭部分は、前記変換をレンダリングされた前記第1のオーバーレイ画像に適用することによって変換される、請求項5に記載の方法。
【請求項10】
前記画像の前記第1のバージョンおよび前記さらなるバージョンは、それぞれ第1のマッピング機能およびさらなるマッピング機能を使用して、三次元表面上に表された画像を二次元画像平面上にマッピングすることによって得られる、請求項1に記載の方法。
【請求項11】
前記画像の前記第1のバージョンおよび前記さらなるバージョンは、それぞれ第1のデワーピング機能およびさらなるデワーピング機能を使用して、広角画像の切り出しをデワーピングすることによって得られる、請求項1に記載の方法。
【請求項12】
警報、プライバシーマスキング、徘徊検出、および/または物体検出のための包含または除外ゾーンとして前記画像における前記領域を使用すること
をさらに含む、請求項1に記載の方法。
【請求項13】
歪んだ線を有する画像における領域の輪郭を規定するためのシステムであって、
歪んだ線を有する画像の第1のバージョンを計算し、かつ歪んだ線を有する前記画像のさらなるバージョンを計算するように構成された処理ユニットであって、前記画像の前記第1のバージョンの第1の画像部分における線は、前記画像の前記第1のバージョンの他の部分における線より歪みが少なく、前記画像の前記さらなるバージョンのさらなる画像部分における線は、前記画像の前記さらなるバージョンの他の部分における線より歪みが少なく、前記さらなる画像部分は前記第1の画像部分と異なる、処理ユニットと、
前記画像の前記第1のバージョンを表示し、前記画像の前記第1のバージョンにおける前記領域の前記輪郭の第1の輪郭部分を規定するユーザ入力を受信し、かつ前記画像の前記さらなるバージョンを表示し、前記画像の前記さらなるバージョンにおける前記領域の前記輪郭のさらなる輪郭部分を規定するユーザ入力を受信するように構成されたユーザインターフェースであって、前記第1の輪郭部分は、前記画像の前記第1のバージョンの前記第1の画像部分に1つまたは複数の線を含み、前記さらなる輪郭部分は、前記画像の前記さらなるバージョンの前記さらなる画像部分に1つまたは複数の線を含む、ユーザインターフェースと
を備え
、
前記ユーザインターフェースは、前記画像の前記第1のバージョンと共に前記第1の輪郭部分を表示し、前記画像の前記さらなるバージョンと共に前記さらなる輪郭部分を表示するようにさらに構成された、システム。
【請求項14】
処理デバイスによって実行されると、前記処理デバイスに請求項1に記載の方法を実行させるコンピュータコード命令を含む、非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像における輪郭を規定する分野に関する。特に、本発明は、歪んだ線を有する画像における領域の輪郭を規定するための方法およびシステムに関する。
【背景技術】
【0002】
ビデオサーベイランス用途では、ユーザが監視されるシーンのビデオ画像に領域を規定したいことが一般的である。いくつかの例を挙げると、領域は、侵入された場合に警報をトリガすべきまたはトリガすべきでないゾーン、プライバシーマスクを提供すべき領域、または徘徊(loitering)もしくは物体を検出すべき領域であってもよい。
【0003】
ユーザは、表示されたビデオ画像に領域の輪郭を描くことによって、そのような領域を規定することができる。ユーザにとって最も容易なのは、領域の輪郭を共に構成するいくつかの線を規定することによって輪郭を規定することである。これはまた、市販のツールによって提供されるものである。容易であることに加えて、所望の領域は、プライバシーマスクされるべき警報ゾーンまたは窓の境界を規定するフェンスなど、シーン内の直線に従うことが多い。
【0004】
しかし、パノラマ画像のように線が歪んだ画像において、領域の輪郭を規定しようとすると問題が生じる。パノラマ画像は、例えば広角レンズを介して画像を取り込むことによって生成することができる。その場合、レンズは、実際には直線である線を、結果として得られる画像において湾曲して見えるようにする。別の例では、パノラマ画像は、異なる視野角からシーンを取り込む複数の画像を互いにステッチすることによって生成されてもよい。その場合、画像は、典型的には、それらが互いにステッチされる共通の三次元表面上に投影される第1のステップにある。後続のステップにおいて、三次元表面上に表されたステッチ画像は、通常のモニタ上での表示を可能にするために二次元画像平面上にマッピングされる。マッピングの結果として、三次元表面上のステッチ画像において直線であった線は、歪んで、すなわち、結果として得られるパノラマ画像において湾曲して見える。結果として、所望の領域の輪郭は、典型的には、直線ではなく円弧状のセグメントを含む。したがって、ユーザは、画像内に直線を描くことによって所望の領域の輪郭を単純に規定することができず、領域に沿って円弧状のセグメントをトレースすることは本質的に面倒である。したがって、歪んだ線を有する画像における輪郭の規定を単純化する方法が必要とされている。
【発明の概要】
【0005】
したがって、上記に鑑みて、本発明の目的は、上記の問題を軽減し、歪んだ線を有する画像における輪郭の規定を単純化する方法およびシステムを提供することである。
【0006】
この目的は、添付の独立請求項によって達成される。例示的な実施形態は、添付の従属請求項によって与えられる。
【0007】
第1の態様によれば、歪んだ線を有する画像における領域の輪郭を規定するための方法が提供される。方法は、歪んだ線を有する画像の第1のバージョンを表示することであって、画像の第1のバージョンの第1の画像部分における線は、歪みが低減されている、第1のバージョンを表示することと、画像の第1のバージョンにおける領域の輪郭の第1の輪郭部分を規定するユーザ入力を受信することであって、第1の輪郭部分は、画像の第1のバージョンの第1の画像部分に1つまたは複数の線を含む、ユーザ入力を受信することことと、歪んだ線を有する画像のさらなるバージョンを表示することであって、画像のさらなるバージョンのさらなる画像部分における線は、歪みが低減されている、さらなるバージョンを表示することと、画像のさらなるバージョンにおける領域の輪郭のさらなる輪郭部分を規定するユーザ入力を受信することであって、さらなる輪郭部分は、画像のさらなるバージョンのさらなる画像部分に1つまたは複数の線を含む、ユーザ入力を受信することこととを含む。
【0008】
したがって、この方法では、領域の輪郭は、画像の異なるバージョンで輪郭部分を連続的に規定することによって規定される。画像の異なるバージョンは、異なる画像部分において線の歪みが低減されるという点で異なる。したがって、画像の第1のバージョンは、第1の画像部分における歪みが低減され、直線の形で第1の画像部分における輪郭部分を入力することを容易にする。その代わりに、画像の第2のバージョンは、第2の画像部分における歪みが低減され、直線の形で第2の画像部分における輪郭部分を入力することを容易にする。したがって、その異なる部分における線歪みが低減された画像の異なるバージョンを連続的に表示することで、画像に直線を描くことによって輪郭の規定が可能になる。
【0009】
歪んだ線を有する画像の第1のバージョンおよびさらなるバージョンは、同じ画像データから、すなわち、同じ画素値から生成され、したがって同じ画像のバージョンである。しかし、画像の第1のバージョンおよび画像のさらなるバージョンにおける画素の場所は、互いに対して空間的に変位する。したがって、画像の第1のバージョンおよびさらなるバージョンは、同じ画像の空間的に変換されたバージョンであると言うことができる。特に、画像のさらなるバージョンは、画像の第1のバージョンの空間的に変換されたバージョンであると言うことが可能である。画像の空間変換とは、画像における画素位置が、それらを画像の空間的に変換されたバージョンにおける対応する画素位置にマッピングする空間変換を受けることを意味する。
【0010】
画像の第1のバージョンとさらなるバージョンの両方は、歪んだ線を有する。しかし、それらは、異なる画像部分において線歪みが低減されている。歪みが低減された画像の画像部分における線とは、画像の他の部分と比較して線の歪みが低減されている、またはより低いことを意味する。線が歪んでいるとは、シーン内で直線である線が画像内で湾曲して描写されているという事実を指す。したがって、線の歪みが低減される場合、それは整流化または直線化されていると言うことができる。
【0011】
方法の最後に、領域の輪郭は、規定された輪郭部分で構成されることがさらに理解される。
【0012】
方法は、領域の輪郭が完全に規定されるまで、画像のさらなるバージョンを表示するステップ、および領域の輪郭のさらなる輪郭部分を規定するユーザ入力を受信するステップを繰り返すことをさらに含んでもよい。このようにして、ユーザは、ユーザが輪郭が完全であると見なすまで、画像の異なるバージョンで輪郭部分を連続的に規定することが可能になる。輪郭は、ユーザがその点で入力を提供するときに完全に規定されたと見なすことができる。代替的または追加的に、領域の輪郭は、閉じた輪郭が得られるように第1の輪郭部分の開始点と最後の入力輪郭部分の終了点が交わるときなど、囲まれた領域を規定するときに完全であると見なされてもよい。
【0013】
例示的な実施形態では、画像の第1のバージョンは、画像の第1のバージョンにおける第1の水平線に沿った線の歪みが低減されており、画像のさらなるバージョンは、画像のさらなるバージョンにおけるさらなる水平線に沿った線の歪みが低減されている。したがって、第1の画像部分は、画像の第1のバージョンにおいて第1の水平線に沿って延びることができ、さらなる画像部分は、画像のさらなるバージョンにおいてさらなる水平線に沿って延びることができる。したがって、画像の第1のバージョンは、第1の水平線に沿って直線化された水平面を有し、画像のさらなるバージョンは、さらなる水平線に沿って直線化された水平面を有すると言うことができる。これは、ユーザによって設定され得る「水平面」と呼ばれる水平線に沿ったものを除いて、典型的には線歪みを受けるパノラマ画像に特に有利である。
【0014】
画像の第1のバージョンを表示することは、第1の画像部分を示すユーザ入力の受信に応答して行われてもよく、さらなるバージョンを表示することは、さらなる画像部分を示すユーザ入力の受信に応答して行われてもよい。このようにして、ユーザは、次の表示画像バージョンがどの画像部分において線歪みが低減されるべきかを連続的に規定することができる。
【0015】
方法は、画像の第1のバージョンと画像のさらなるバージョンとの間の変換を使用して、画像の第1のバージョンで規定された第1の輪郭部分を変換することをさらに含んでもよい。変換は、画像の第1のバージョンの画像平面内の画素位置と画像のさらなるバージョンの画像平面内の画素位置との間の空間変換を指す。これにより、画像のさらなるバージョンの画像平面内の第1の輪郭部分の画素位置の計算が可能になる。さらに、これは、画像のさらなるバージョンと共に変換された第1の輪郭部分を表示することを可能にする。このようにして、ユーザに画像の新しいバージョンが提示されると、以前に入力された出力部分は、新しい画像バージョンに沿って移動し、かつ新しい画像バージョンと共に連続的に提示される。これは、ユーザがこれまでに規定された輪郭の概要を得ることを容易にするので、ユーザ体験を改善する。
【0016】
方法は、変換された第1の輪郭部分と、画像のさらなるバージョンで規定されたさらなる輪郭部分を画像のさらなるバージョンにおける輪郭の共通の表現にマージすることをさらに含んでもよい。したがって、輪郭部分は、それらが入力されるときに共通の表現に連続的にマージされ得る。
【0017】
第1のバージョンで規定された第1の輪郭部分は、第1の複数の点によって表されてもよく、第1の輪郭部分は、変換を使用して第1の複数の点を変換することによって変換される。輪郭に沿った空間点の数に関して輪郭部分を表すことは、輪郭部分を記述するメモリ効率の良い方法である。多くの場合、各線セグメントに沿った数点で十分である。さらに、点の位置のみを空間的に変換する必要があるため、低い算出コストで、ある画像バージョンの画像平面から別の画像バージョンの画像平面に輪郭部分を空間的に変換することが可能になる。
【0018】
あるいは、代わりに、第1の輪郭部分は、変換を画像の第1のバージョンで規定された第1の輪郭部分のレンダリングされた第1のオーバーレイ画像に適用することによって変換されてもよい。これにより、ある画像バージョンの画像平面から別の画像バージョンの画像平面に輪郭部分を空間的に変換することが可能になる。このオプションは、第1の輪郭部分の点表現が利用できない場合に使用することができる。
【0019】
方法は、画像の第1のバージョンと共に第1の輪郭部分を表示することと、画像のさらなるバージョンと共にさらなる輪郭部分を表示することとをさらに含んでもよい。
【0020】
例示的な実施形態では、画像の第1のバージョンおよびさらなるバージョンは両方とも、パノラマ画像である。いくつかの例では、画像の第1のバージョンおよびさらなるバージョンは、それぞれ第1のマッピング機能およびさらなるマッピング機能を使用して、三次元表面上に表された画像を二次元画像平面上にマッピングすることによって得られる。三次元表面は、画像を共にステッチするために、パノラマカメラによって取り込まれた複数の画像が投影された球面または円筒面であってもよい。他の例では、画像の第1のバージョンおよびさらなるバージョンは、それぞれ第1のデワーピング機能およびさらなるデワーピング機能を使用して、広角画像の切り出しをデワーピングすることによって得られる。広角画像は、例えば、広角レンズを介して壁掛けカメラによって取り込まれ得る。
【0021】
画像における領域は、警報、プライバシーマスキング、徘徊検出、および/または物体検出のための包含または除外ゾーン(include or exclude zone)として使用されてもよい。領域の他の用途もまた、想定され得る。
【0022】
本発明の第2の態様によれば、上記の目的は、歪んだ線を有する画像における領域の輪郭を規定するためのシステムによって達成される。
【0023】
本発明の第3の態様によれば、上記の目的は、処理デバイスによって実行されると、処理デバイスに第1の態様の方法を実行させるコンピュータコード命令を含む、(非一時的)コンピュータ可読媒体によって達成される。
【0024】
第2および第3の態様は、一般に、第1の態様と同じ特徴および利点を有することができる。本発明は、特に明記しない限り、特徴のすべての可能な組み合わせに関することにさらに留意されたい。
【0025】
本発明の上記ならびに追加の目的、特徴、および利点は、添付の図面を参照して、本発明の実施形態の以下の例示的かつ非限定的な詳細な説明によってよりよく理解され、同様の要素には同じ参照番号が使用される。
【図面の簡単な説明】
【0026】
【
図1】実施形態による、歪んだ線を有する画像における領域の輪郭を規定するためのシステムを概略的に示す図である。
【
図2】実施形態による、異なるデワーピング機能を使用した広角画像のデワーピングを概略的に示す図である。
【
図3】実施形態による、異なるマッピング機能を使用した二次元画像平面上への三次元表面上に表された画像のマッピングを概略的に示す図である。
【
図4】実施形態による、歪んだ線を有する画像における領域の輪郭を規定するための方法のフローチャートである。
【
図5a】
図4のフローチャートの方法の異なる段階におけるユーザインターフェース上の図を概略的に示す図である。
【
図5b】
図4のフローチャートの方法の異なる段階におけるユーザインターフェース上の図を概略的に示す図である。
【
図5c】
図4のフローチャートの方法の異なる段階におけるユーザインターフェース上の図を概略的に示す図である。
【発明を実施するための形態】
【0027】
次に、本発明の実施形態が示されている添付の図面を参照して、本発明を以下により完全に説明する。本明細書で開示されるシステムおよびデバイスは、動作中に説明される。
【0028】
図1は、歪んだ線を有する画像における領域の輪郭を規定するためのシステム1を示している。システム1は、処理ユニット121と、ユーザインターフェース14とを備える。処理ユニット121は、有線または無線接続を介してユーザインターフェース14に動作可能に接続される。
【0029】
処理ユニット121は、メモリ122に関連して動作するように構成されてもよい。処理ユニット121およびメモリ122は、処理デバイス12の一部であってもよい。メモリ122は、処理ユニット121によって実行されるコンピュータコード命令を記憶する非一時的コンピュータ可読媒体として作用することができる。特に、コンピュータコード命令は、処理ユニット121に本明細書で開示される任意の方法を実行させることができる。
【0030】
ユーザインターフェース14は、処理ユニット121によって発生された画像を表示することができるディスプレイ141を含む。ユーザインターフェース14は、ユーザが表示された画像に関連してユーザ入力を提供することを可能にする、コンピュータマウス、タッチセンシティブスクリーンなどのユーザ入力デバイス142をさらに含む。ユーザ入力は、処理ユニット121に伝達される。ユーザとの対話を容易にするために、ユーザインターフェース14は、画像がユーザに表示され、かつユーザが表示された画像における領域の輪郭を規定することができるグラフィカルユーザインターフェース143を実装することができる。特に、グラフィカルユーザインターフェース143は、例えば、表示された画像に1つまたは複数の線を描くことによって、ユーザが輪郭の一部を規定することを可能にするように構成することができる。グラフィカルユーザインターフェース143は、ユーザが画像における水平線に沿って延びる画像部分などの画像の画像部分を示すことをさらに可能にすることができる。図示の例では、グラフィカルユーザインターフェース143は、ユーザが水平線の垂直レベルまたは座標を示すことを可能にするスライダバーを含む。画像の画像部分の指示の受信に応答して、現在表示されている画像を変換し、画像部分における線の歪みを低減することができる。具体的には、線の歪みは、示された水平線に沿って低減され得る。
【0031】
システム1は、カメラ16から画像を受信するように構成されてもよい。カメラ16は、パノラマ画像のビデオシーケンスを発生するビデオカメラであってもよい。いくつかの実施形態では、処理ユニット121およびメモリ122はカメラ16内に構成されるが、他の実施形態では、それらはビデオ管理システムなどにおいてカメラ16の外側に構成される。
【0032】
図2に示される一例では、カメラ16は、魚眼レンズなどの広角レンズを使用することによってシーンの画像を取り込む。結果として、カメラ16は、シーンの広角画像21を発生する。広角画像21は、二次元画像平面上に表され、典型的には円形の形状を有する。広角画像21は、広角レンズによって屈折される光に起因してシーンにおける直線が広角画像21において湾曲するという意味で、歪んでいるかまたは反っている。処理ユニット121は、広角画像21から本質的に矩形の形状を有するパノラマ画像22を生成することができる。特に、広角画像21の切り出し211からパノラマ画像22a、22bを生成することが可能である。壁掛けカメラなどの監視されたシーンの側面図を提供するように構成されたカメラ16の場合、切り出し211は、カメラ16の水平中心線212の上下の特定の角度範囲内のシーン点を描写する広角画像21における画素から形成され得る。一例では、角度範囲は、水平中心線212の80度下から水平中心線の60度上に位置するシーン点をカバーすることができる。
図2に示されるように、このような切り出し211は、本質的に横たわる砂時計の形状を有する。
図2の破線の各々は、カメラ16の水平中心線212の上または下に特定の角度で位置するシーンにおける点に対応する。
【0033】
パノラマ画像22a、22bを生成するために、処理ユニット121は、本明細書ではデワーピング機能f1、f2と呼ばれる変換を切り出し211に適用することができる。デワーピング機能f1、f2の各々は、パノラマ画像22a、22bの矩形画像平面内の空間点または画素位置への切り出し211内の空間点または画素位置間の空間マッピングである。どのデワーピング機能が使用されるかに応じて、結果として得られるパノラマ画像22a、22bの異なる画像部分において線の歪みが低減され得る。特に、
図2に示される例では、デワーピング機能f1、f2の選択は、線の歪みが低減されるパノラマ画像22a、22bにおける水平線23a、23bに影響を及ぼす。パノラマ画像22aでは、ここではパノラマ画像22aの中心に位置する第1の水平線23aに沿って延びる画像部分において線の歪みが低減され、一方、パノラマ画像22bでは、例ではパノラマ画像22bの中心の上方にあるさらなる水平線23bに沿って延びる画像部分において線の歪みが低減される。特定の画像部分における線の歪みを低減するデワーピング機能をどのように実装および構築するかは、それ自体当業者に知られており、したがって本明細書ではより詳細に説明されない。例えば、OpenCVにおける「魚眼カメラモデル」ライブラリを使用することができる(https://docs.opencv.org/3.4/db/d58/group__calib3d__fisheye.html)。実際の実施態様では、所与の水平線に沿ってなど、所与の画像部分における線歪みを低減するためにどのデワーピング機能を使用するかを指定するルックアップテーブルを構築することができる。デワーピング機能は、パラメトリックデワーピング機能のパラメータに関して指定されてもよい。
【0034】
図3に示される別の例では、画像は、球面または円筒面などの三次元表面34上に表された画像31を二次元画像平面上にマッピングすることによって得られたパノラマ画像32a、32bである。マッピングM1、M2は、三次元表面34上の画像31内の空間点または画素位置を画像32a、32bの二次元画像平面内の空間点または画素位置上にマッピングする。次いで、三次元表面34上に表される画像31は、異なる視野角からカメラ16によって取り込まれたシーンの複数の画像を投影することによって得ることができる。具体的には、カメラ16は、異なる視野方向に向けられ、同時にシーンの画像を取り込む複数の画像センサを含むことができる。複数の画像から、複数の画像を共にステッチすることによって画像31を生成することができる。画像のステッチは、典型的には、複数の画像センサが互いに関連してどのように構成されているかを記述する情報を使用して、複数の画像を表面34などの共通の三次元投影面上に投影することを伴う。これにより、シーン内の同じ点に対応する複数の画像における画素を三次元表面34上の同じ点上に投影することができ、それによって異なる視野角から取得された複数の画像を結合してステッチ画像31にすることが可能になる。
【0035】
二次元画像平面上への三次元表面上の画像31のマッピングM1、M2は、結果として得られるパノラマ画像32a、32bにおいて画像31で直線であった線を歪ませる。これは、マッピングM1、M2が適用されるときに歪んでいる画像31における破線によって示されている。しかし、マッピングM1、M2の選択に応じて、パノラマ画像32a、32bにおける水平線に沿って延びる画像部分があり、それに沿って、パノラマ画像32a、32bの他の部分と比較して線の歪みが低減されるか、または全くない。
図3に示されるように、水平線の場所は、どのマッピングが使用されるかに依存する。マッピングM1が使用される場合、第1の水平線33aに沿った画像部分における線は、歪み量が低減される。異なるマッピングM2が使用される場合、第2の水平線33bに沿った線は、歪み量が低減される。したがって、マッピングM1、M2を適切に選択することによって、所望の水平線33a、33bに沿ったような、所望の画像部分における線の歪みが低減されたパノラマ画像32を得ることができる。マッピングと、それに沿って線の歪みが低減された水平レベルの場所との間の関係は、それ自体当業者に知られており、したがって本明細書ではより詳細に説明されない。例えば、OpenCVにおける「画像ワーピング」ライブラリを使用することができる(https://docs.opencv.org/4.x/d0/dfa/group__stitching__warp.html)。実際の実施態様では、所与の水平線33a、33bに対してどのマッピング機能M1、M2を使用するかを指定するルックアップテーブルを構築することができる。
【0036】
再び
図1のユーザインターフェース14を参照すると、ユーザは、画像のどの画像部分において線の歪みを低減すべきかに関する指示を入力することができる。特に、ユーザは、画像におけるどの水平線に沿って歪みを低減すべきかを示すことが可能である。そのようなユーザ入力に続いて、処理ユニット121は、上述のように適切なデワーピング機能またはマッピングを適用することによって、その画像部分における線歪みが低減された画像のバージョンを生成することができる。
【0037】
ここで、
図4のフローチャートを参照し、さらに
図1~
図3および
図5a~
図5bを参照して、歪んだ線を有する画像における領域の輪郭を規定するための方法を実行する際のシステム1の動作を説明する。上記で説明したように、画像は、デワーピング機能を使用して広角画像の切り出しをデワーピングすることによって、または三次元表面上に表された画像を二次元画像平面上にマッピングすることによって得られるパノラマ画像であってもよい。
【0038】
ステップS04において、画像の第1のバージョンが、ディスプレイ141上のグラフィカルユーザインターフェース143のビューエリアなど、ユーザインターフェース14上に表示される。画像の第1のバージョンは、処理ユニット121によって生成される。三次元表面上に表された画像を二次元画像平面上にマッピングすることによって得られるパノラマ画像の場合、画像の第1のバージョンは、第1のマッピングM1を使用することによって生成され得る。広角画像をデワーピングすることによって得られるパノラマ画像の場合、画像の第1のバージョンは、第1のデワーピング機能f1を使用して広角画像をデワーピングすることによって生成され得る。
図5aは、画像の第1のバージョン51aを示している。画像の第1のバージョン51aは、その第1の画像部分52aにおける線の歪みが低減されるように生成される。これは、画像の第1のバージョン51aの他の画像部分と比較して第1の画像部分52aにおける線の歪みが低減されている、すなわち、線の歪みがより低いことを意味する。これは、例えば、第1のマッピング機能または第1のデワーピング機能の適切な選択によって、例えばルックアップテーブルを使用することによって達成することができる。図示の例では、第1の画像部分52aは、画像の第1のバージョン51aを横切って、すなわち、第1の水平線に沿って水平に延びる。図から分かるように、第1の画像部分52aにおける線は、画像の第1のバージョン51aの他の部分における線よりも歪みが少ない。換言すれば、第1の画像部分52aにおける線は、直線化または整流化されている。この効果は、第1のバージョン51aでは水平線に対してより顕著であるが、画像における垂直線にも適用される。画像部分52aは、
図5aに示されるような矩形画像部分、または画像における単一の水平線に対応してもよい。しかし、画像部分は、一般に、画像平面内の任意の形状および場所を有することができることが理解される。
【0039】
いくつかの実施形態では、第1のバージョン51aは、第1の画像部分52aを示すユーザ入力を受信するステップS02に応答して生成および表示される。例えば、ユーザ入力は、第1の画像部分52aが沿って延びるべき第1の水平線の垂直座標などの垂直レベル53aを示してもよい。垂直レベル53aは、例えば
図5aに示されるようにスライダバーを所望の垂直レベルにスライドさせることによって、グラフィカルユーザインターフェースを介して入力することができる。しかし、グラフィカルユーザインターフェースのビューエリアに線または矩形を描くことを含む、第1の画像部分52aを示す入力を提供する多くの他の方法が想定され得る。このようにして、ユーザは、どの画像部分52aの線を直線化すべきかを選択することができる。特に、ユーザは、パノラマ画像52aにおいて直線化されるべき水平面を選択することができる。典型的なシナリオでは、以下で説明するように、ユーザは、領域の輪郭部分を規定しようとする画像部分52aを選択する。図示の例では、ユーザは、描写されたバックヤードの下側境界に沿って延びる画像部分52aを示す。第1の画像部分52aの指示の受信に応答して、処理ユニット121は、例えばルックアップテーブルを使用することによって、画像の第1のバージョン51aの第1の画像部分52aにおける線の歪みが低減されるように、第1のデワーピング機能f1または第1のマッピングM1を適切に選択することができる。
【0040】
ステップS06において、画像の第1のバージョン51aにおける領域の第1の輪郭部分54aを規定するユーザ入力が、ユーザインターフェース14を介して処理ユニット121によって受信される。例えば、ユーザは、画像の第1のバージョン51aに線を描くことによって第1の輪郭部分54aを規定してもよい。図示のように、第1の輪郭部分54aは、ユーザインターフェース14上に画像の第1のバージョン51aと共に表示されてもよい。例えば、処理ユニット121は、第1の輪郭部分54aを描写する第1のオーバーレイ画像をレンダリングしてもよい。例として、第1の輪郭部分54aに属する画素には、第1のオーバーレイ画像における値255などの所定の画素値が割り当てられてもよい。その後、第1のオーバーレイ画像は、画像の第1のバージョン51a上に第1のオーバーレイ画像を重ねることによって、第1のバージョン51aと共に表示され得る。いくつかの実施形態では、第1のオーバーレイ画像は、以下でさらにより詳細に説明するように、将来の使用のためにバッファーに記憶することができる。
【0041】
第1の輪郭部分54aの入力は、画像の第1のバージョン51aの第1の部分52aにおける線の歪みが低減されているという事実によって容易になる。したがって、ユーザは、第1の画像部分52aに1つまたは複数の線541aを含むように第1の輪郭部分54aを具体的に規定してもよい。したがって、
図5aに示されるように、第1の画像部分52aが水平線に沿って延びる場合、これらの1つまたは複数の線541aは、画像の第1のバージョン51aにおいて主に水平方向に延びる。
図5aにさらに示されるように、第1の輪郭部分54aはまた、画像の第1のバージョン51aにおいて第1の画像部分52aの外側に延びる1つまたは複数の線542aを含むことができる。1つまたは複数の線542aは、例えば、主に垂直方向に延びるシーン内の線に対応することができる。典型的には、本明細書に記載のタイプのパノラマ画像では、シーン内の水平線の歪みは、シーン内の垂直線の歪みよりもはるかに悪い。したがって、第1の輪郭部分54aを規定する前に、シーン内の垂直線、または主な垂直方向を有する線の歪みを低減する必要性は、シーン内の水平線ほど重要ではない。
【0042】
方法のステップS10において、画像のさらなるバージョン51bが、ディスプレイ141上のグラフィカルユーザインターフェース143のビューエリアなど、ユーザインターフェース14上に表示される。画像のさらなるバージョン51bは、処理ユニット121によって生成される。三次元表面上に表された画像を二次元画像平面上にマッピングすることによって得られるパノラマ画像の場合、画像のさらなるバージョン51bは、画像の第1のバージョン51aを生成するために使用される第1のマッピングM1とは異なるマッピングM2を使用することによって生成され得る。広角画像をデワーピングすることによって得られるパノラマ画像の場合、画像のさらなるバージョン51bは、画像の第1のバージョンを生成するために使用されるデワーピング機能f1とは異なるさらなるデワーピング機能f2を使用して広角画像をデワーピングすることによって生成され得る。
【0043】
画像のさらなるバージョン51bは、さらなるバージョン51bのさらなる画像部分52bにおける線の歪みが低減されるように生成される。さらなる画像部分52bは、第1のバージョン51aの第1の画像部分52aとは異なる。これは、画像のさらなるバージョン51aの他の画像部分と比較してさらなる画像部分52aにおける線の歪みが低減されている、すなわち、線の歪みが低下されていることを意味する。これは、例えば、さらなるマッピングM2またはさらなるデワーピング機能f2の適切な選択によって、例えばルックアップテーブルを使用することによって達成することができる。図示の例では、さらなる画像部分52bは、画像のさらなるバージョン51bを横切って、すなわち、画像のさらなるバージョン51bにおけるさらなる水平線に沿って水平に延びる。この場合、さらなる画像部分52bは、描写されたバックヤードの上側境界に対応する。図から分かるように、さらなる画像部分52bにおける線は、画像のさらなるバージョン51bの他の部分における線よりも歪みが少ない。さらに、さらなる画像部分52bにおける線は、画像の第1のバージョン51aの対応する空間部分にあったものよりも歪みが少ない。
【0044】
いくつかの実施形態では、さらなるバージョン51bは、さらなる画像部分52bを示すユーザ入力を受信するステップS08に応答して生成および表示される。例えば、ユーザ入力は、さらなる画像部分52bが沿って延びるべきさらなる水平線の垂直座標などの垂直レベル53bを示してもよい。ステップS02に関連して説明したものと同様に、垂直レベル53bは、例えば
図5bに示されるようにスライダバーを所望の垂直レベルにスライドさせることによって、グラフィカルユーザインターフェースを介して入力することができる。さらなる画像部分52bの指示の受信に応答して、処理ユニット121は、画像のさらなるバージョン51bのさらなる画像部分52bにおける線の歪みを低減するさらなるデワーピング機能f2またはさらなるマッピングM2を適切に選択することができる。
【0045】
ユーザ体験を向上させるために、画像のさらなるバージョン51bと共に第1の輪郭部分54aを表示することが望ましい。しかし、そうする前に、第1の輪郭部分54aは、画像の第1のバージョン51aの画像平面内に規定されたその画素位置を画像のさらなるバージョン51bの画像平面内の対応する画素位置にマッピングするように変換される必要がある。一般に、画像のさらなるバージョン51bは、画像の第1のバージョン51aの空間変換Tとして見ることができる。特に、変換Tは、画像の第1のバージョン51aにおける空間場所または画素位置を、画像の第2のバージョン51bにおける対応する空間場所または画素位置にマッピングする。画像の第1および第2のバージョンが広角画像にそれぞれデワーピング機能f1およびf2を適用することによって生成される場合、変換Tは、T=f2(f1)
-1によって与えられる。画像の第1および第2のバージョンが三次元空間内の表面上に表された画像にそれぞれマッピングM1およびM2を適用することによって生成される場合、変換Tは、T=M2(M1)
-1によって与えられる。変換Tを使用して第1の輪郭部分54aを変換することによって、すなわち、画像の第1のバージョン51aにおける第1の輪郭部分54aの画素位置をマッピングすることによって、画像54bのさらなるバージョンの座標系で表すことが可能になる。結果として、
図5bに示されるように、変換された第1の輪郭部分は、画像のさらなるバージョン51bと共に表示することができる。このようにして、画像の以前に表示されたバージョンで規定された輪郭部分は、画像の現在表示されているバージョンに沿って移動させることができる。
【0046】
第1の輪郭部分54aを変換し、それを画像のさらなるバージョン51bと共に表示するために、異なる手法がとられてもよい。
【0047】
第1の手法では、第1のバージョン51aで規定された第1の輪郭部分54aは、ベクトル表現を有する。これは、第1の輪郭部分54aを構成する線541aおよび542aが各々、大きさおよび方向を有するベクトルによって表されていることを意味する。このベクトル表現から開始して、処理ユニット121は、第1の輪郭部分54aに沿って続いて位置する第1の複数の空間点を決定することができる。第1の輪郭部分54aを変換する目的で、第1の複数の点は、第1の輪郭部分54aを表すために使用されてもよい。第1の輪郭部分を変換するために、処理ユニット121は次に、画像51bの第2のバージョンにおける対応する空間点が見つかるように、変換Tを第1の複数の点に適用する。必要に応じて、第1の輪郭部分54aを表すために、より多くの点を手の後ろに追加してもよい。特に、これは、変換Tの適用後、第1のバージョン51aにおいて特定の線セグメントに沿って位置していた点が、第2の変換ビュー51bに変換されたときに線セグメントに沿って位置することから逸脱していることが判明した場合に必要とされ得る。そうである場合、これは、その線セグメントを表すためにより多くの点が追加されるべきであるという指示である。追加されるとき、変換Tは、追加の点を変換するために使用され得る。したがって、1つの線セグメントあたり3つなどの少数の点から開始し、必要に応じてより多くの点を追加することができる。
【0048】
第1の輪郭部分54aの点表現を第2の変換ビュー51bの座標系に変換した後、第2の変換ビュー51bの座標系における第1の輪郭部分54aのベクトル表現は、変換された第1の複数の点のうちの後続の点を結ぶベクトルに関して規定されてもよい。変換された第1の輪郭部分54aを表示するために、次に処理ユニット121は、変換された第1の複数の点が線によって相互接続されたさらなるオーバーレイ画像をレンダリングすることができる。その後、さらなるオーバーレイ画像は、
図5bに示されるように第2の変換ビュー51b上にさらなるオーバーレイ画像を重ねることによって、第2の変換ビュー51bと共に表示され得る。
【0049】
第2の手法では、処理ユニット121は、変換Tを第1の輪郭部分54aの基礎となる表現に適用しない。代わりに、処理ユニット121は、変換Tを使用して、第1のバージョン51aの座標系における第1の輪郭部分51aを描写する第1のオーバーレイ画像を変換するように動作する。さらに上述したように、そのような第1のオーバーレイ画像は、典型的には、第1のバージョン51aと共に表示されることに関連してレンダリングされ、バッファーから取り出すことができる。例えば、第1のオーバーレイ画像における画素の画素位置は、変換Tを使用して画像の第2のバージョン51bにおける対応する画素位置にマッピングされてもよい。このようにして、第2の変換ビュー51bの座標系または画像平面における第1の輪郭部分51aを描写するさらなるオーバーレイ画像が生成される。第2のオーバーレイ画像は、バッファーに追加され、
図5bに示すように画像の第2のバージョン51bと共にオーバーレイとして表示され得る。
【0050】
次に、ステップS12において、処理ユニット121は、ユーザインターフェース14を介して、画像のさらなるバージョン51bにおける領域のさらなる輪郭部分54bを規定するユーザ入力を受信する。第1の輪郭部分54aに関連して説明したものと同様に、ユーザは、画像のさらなるバージョン51bに線を描くことによってさらなる輪郭部分54bを規定してもよい。
【0051】
さらなる輪郭部分54bの入力は、画像のさらなるバージョン51bのさらなる部分52bにおける線の歪みが低減されているという事実によって容易になる。したがって、ユーザは、方法のこの段階で、簡便には、さらなる画像部分52bに1つまたは複数の線541bを含むようにさらなる輪郭部分54bを規定することができる。したがって、さらなる画像部分52bが
図5cに示されるようにさらなる水平線に沿って延びる図示の場合、これらの1つまたは複数の線541bは、さらなるバージョン51bにおいて主に水平方向に延びる。
図5cの例には示されていないが、さらなる輪郭部分54bはまた、画像のさらなるバージョン51bにおいてさらなる画像部分52bの外側に延びる1つまたは複数の線を含むことができることが理解される。
【0052】
処理ユニット121は、任意の以前に受信した輪郭部分と共にさらなる輪郭部分54bを領域の輪郭の共通の表現にマージすることができる。したがって、図示の例では、処理ユニット121は、さらなる輪郭部分54bを第1の輪郭部分54aとマージすることが可能である。輪郭部分54aおよび54bをマージするために、それらは同じ座標系または画像平面で表される必要がある。したがって、マージの前に、輪郭部分54aおよび54bは、同じ座標系に変換されるべきである。その座標系は、いくつかの実施形態では、画像のさらなるバージョン51bの座標系であり得る。したがって、その場合、処理ユニット121は、さらなる輪郭部分54bと共に第1の輪郭部分54aの変換されたバージョンを画像のさらなるバージョン51bの座標系に記述された輪郭の共通の表現にマージする。他の実施形態では、代わりに、第1のバージョン51aの座標系でマージを実施することができる。さらに他の実施形態では、
図2の広角画像21または
図3の三次元表面上に表された画像31の座標系など、生画像データの座標系でマージを実施することができる。
【0053】
第1の輪郭部分54aおよびさらなる輪郭部分54aがベクトルまたは点表現を有する場合、処理ユニット121は、ベクトルまたは点表現を共通の表現にマージすることができる。例として、画像のさらなるバージョン51bの座標系に変換されたときの第1の輪郭部分54aのベクトルまたは点表現は、さらなる輪郭部分54bのベクトルまたは点表現とマージされ得る。
【0054】
代替として、第1の輪郭部分54aの変換されたバージョンが上述のさらなるオーバーレイ画像によって表される場合、処理ユニット121は、さらなる輪郭部分54bを同じオーバーレイ画像に追加してもよい。例えば、さらなる輪郭部分54bに属するさらなるオーバーレイ画像における画素には、値255などの所定の画素値を与えることもできる。そのようにして、さらなるオーバーレイは、第1の輪郭部分およびさらなる輪郭部分の共通の表現として機能する。走査線アルゴリズムをさらなるオーバーレイに適用することによって、処理ユニット121は、どの画素位置が輪郭によって規定された領域内にあり、どの画素位置が領域外にあるかを決定することができる。これは、例えば、画素位置が警報もしくは分析ゾーン内にあるかどうかを推定するために、またはプライバシーマスキングの目的でオーバーレイにおける領域内の画素位置を埋めるために使用され得る。走査線アルゴリズムはまた、1つまたは複数の輪郭部分のオーバーレイ画像を輪郭部分の点またはベクトル表現にコンバートするために使用されてもよい。
【0055】
図5cに示されるように、さらなる輪郭部分54bおよび第1の輪郭部分54aの変換されたバージョンは、画像のさらなるバージョン51bと共にユーザインターフェース14に表示されてもよい。例えば、処理ユニット121は、第1の輪郭部分54aの変換されたバージョンとさらなる輪郭部分54bの両方を描写するオーバーレイと共に画像のさらなるバージョン51bを表示してもよい。
【0056】
次いで、ステップS14において、処理ユニット121は、領域の輪郭が完全に規定されたかどうか、すなわち、ユーザが輪郭のすべての部分を規定したかどうかをチェックすることができる。例えば、ユーザは、領域が完全であるときにユーザインターフェース14を介して入力を処理ユニット121に提供することが可能である。輪郭が完全に規定されていないことが判明した場合、ユーザが領域の輪郭全体を規定するまで、ステップS08、S10、S12が繰り返される。輪郭が完全に規定されている場合、画像のさらなるバージョンはユーザに提示されない。これは、輪郭が第1の輪郭部分54aおよび第2の輪郭部分54bによって完全に規定される
図5a~
図5cの例の場合である。したがって、輪郭が完全に規定されると、輪郭は、画像の異なる変換ビュー51a、51bにおいてユーザ入力を介して規定された輪郭部分54a、54bで構成される。この段階で、輪郭部分の表現は、基準座標系に変換されてもよい。そのような基準座標系は、所定の基準マッピングMrefまたは基準デワーピング機能frefに対応することができる。
【0057】
当業者は、多くの方法で上述の実施形態を修正し、さらに上記の実施形態に示された本発明の利点を使用することができることが理解されよう。したがって、本発明は、図示の実施形態に限定されるべきではなく、添付の請求項によってのみ規定されるべきである。加えて、当業者が理解するように、図示の実施形態を組み合わせることができる。