(58)【調査した分野】(Int.Cl.,DB名)
前記第2の規則は、更に、前記水上カメラの水面からの高さと被写体までの距離とを用いて前記水上カメラのチルト角度を算出する規則であり、かつ前記水中カメラの水面からの深さと前記被写体までの距離とを用いて前記水中カメラのチルト角度を算出する規則である、
請求項2記載の水上水中撮像装置。
【発明を実施するための形態】
【0015】
以下図面を参照しながら、本発明の実施形態を説明する。なお、本明細書においては、水面での光の屈折、反射などは実施形態において水面を通過する光を利用しないため省略している。また、水中から水面を通過して水上に至る光を直線で表示し、実施形態において水面を通過する光を利用しないため水面での光の屈折を無視している。また、水上から水中に入射する光についても、水面を通過する光を直線で表示し、光の屈折を無視している。そのほかにも、本実施形態を説明するために、簡略化を行い、かつ特定の条件を与えている場合がある。これらは、いずれも、本実施形態の原理を容易に理解するためのものであることに留意すべきである。したがって、本実施形態を、実際にインプリメントする場合には、当業者は、必要に応じて、本明細書において簡約化された部分及び特定の条件を付された部分について、必要に応じてインプリメンテーションの状況に即して、微修正を加えることができる点に留意すべきである。
【0016】
また、本明細書では、説明を分かりやすくするために、空気の屈折率を1と仮定し、水の屈折率をnとして説明する。したがって、空気の屈折率と水の屈折率の比もnとして扱う。また、本明細書で、「焦点距離」とは、無限遠からの平行光線がレンズに入射した際の、レンズの焦点距離を意味する。
【0017】
図2は、一実施形態のハードウエア構成を示す図である。
【0018】
水上カメラ211及び水中カメラ212が、オブジェクト200(被写体)を撮像している。そして、水上カメラ211によって得られた水上の映像221と、水中カメラ212によって得られた水中の映像222とを、映像合成部230が1つの映像260として合成する。合成された1つの映像260が、ディスプレイ270に表示されている。1つの映像260は、水面250を境にして、水面250の上側に水上の映像221が示されており、水面250の下側に水中の映像222が示されている。そして、水上の映像221には、オブジェクト200の水上部分251が表示され、水中の映像222には、オブジェクト200の水中部分252が表示されている。そして、実施形態においては、オブジェクト200の水上部分251と、オブジェクト200の水中部分252が、滑らかに接続して表示される。
【0019】
図3は、一実施形態の原理を模式的に示した図である。
【0020】
図3(A)は、オブジェクトOb350が、水面340を境として、水上部分Ob351とOb352に分かれている状態を示している。そして、水上カメラの視点P301から画角θzuにより、オブジェクトOb350を撮像し、その撮像領域がAuからBuまでであることを示している。また、水中カメラの視点P302から、画角θzs1により、オブジェクトOb350を撮像し、その撮像領域がAs1からBs1までであることを示している。なお、水上カメラは、水面から高さhの位置にある。水上カメラの視点301は、水面からhだけ上方に位置する水平線341上に位置している。また、水中カメラは、水面から深さhの位置にある。水中カメラの視点P302は、水面からhだけ下方(水中)に位置する水平線342上に位置している。そして、カメラからオブジェクトOb350までの距離をLとする。
【0021】
なお、
図3(A)では、説明を分かりやすくするため、水中カメラから見えるオブジェクトOb350の距離をLとして示している。現実には、同じ焦点距離を持つ水上カメラと水中カメラを用いた場合、水中カメラから見えるオブジェクトOb350の位置は、水中カメラから略L/nの位置に存在しているように見える点に留意する必要がある。
【0022】
なお、Lがhに比して非常に大きい場合には、hは無視し得る。以下の説明では、説明を簡単にするために、Lに比してhは非常に小さいとして、三角形Au,p301,Bu、及び三角形As1,P302,Bs1は、共に二等辺三角形であると仮定して説明する。
【0023】
上述の例において、同じ焦点距離のカメラを用いた場合、空気の屈折率を1とし、水の屈折率をnと置くと、スネルの法則により、
Sin(θzu/2)=n×Sin((θzs1)/2)
が成り立つ。
ズームレンズの焦点距離と、その画角との間には、レンズ固有の関係が存在する。水中カメラにおける水中での画角を、水上カメラの画角と同じにするためには、水上カメラの焦点距離をαとすると、水中カメラの焦点距離βは、以下のように設定すればよい。
β=α/n (1)
水上カメラの焦点距離αを式(1)に与えることによって、水中カメラの焦点距離βが決定され、さらに水中カメラの画角が決定される。式(1)は、第1の規則の一例である。
【0024】
水上カメラの撮像領域AuからBuまでの長さは、m380である。また、水中カメラの撮像領域As1からBs1までの長さは、m390である。両者には、以下の式が成り立つ。
m380=n×m390
したがって、水中カメラの映像(オブジェクトOb352)の大きさは、水上カメラの映像(オブジェクトOb351)の大きさの約n倍となる。このため、既に
図1で示したように、同じ焦点距離の水上カメラの映像と水中カメラの映像とを、水面を境に単純につなぎ合わせた場合には、オブジェクトの境が滑らかに接続されないのである。通常、空気の屈折率は約1.00であり、水の屈折率は、約1.33であるから、水中のオブジェクトの映像(オブジェクトOb352)は、水上のオブジェクトの映像(オブジェクトOb351)の約1.33倍の大きさの映像となる。
【0025】
なお、オブジェクトOb350に対する水中カメラのフォーカス設定値については、空気と水との間の光の屈折を考慮し、水上カメラのフォーカス設定値(距離)を1/n倍した値にする必要がある。
【0026】
図3Bは、式(1)を用いて、水中カメラの画角θzs2を水上カメラの画角θzuと等しくした図である。すなわち、以下のように水中カメラの画角θzs2を設定する
θzs2=θzu
この場合には、水中カメラの撮像領域As2からBs2が、水上カメラの撮像領域AuからBuまでと一致する。このようにすることによって、水中カメラによるオブジェクトOb350の映像の大きさが、水上カメラによるオブジェクトOb350の映像の大きさと略一致することになる。
【0027】
なお、カメラのズームレンズでは、一般に焦点距離が用いられている。既に述べたように、画角と焦点距離とは、レンズによって固有の関係が存在する。水中カメラの焦点距離の設定については、既に述べたとおりである。
【0028】
なお、レンズ毎に、所定の焦点距離を変化させるための制御量は異なる。このため、例えば水上カメラの焦点距離に応じて、水中カメラの焦点距離を自動的に制御するために、使用レンズに対応した制御用のパラメータ(ズームリング回転角と焦点距離との関係等)を、記憶部(不図示)に予め記憶させておいてもよい。
【0029】
図4(A)は、
図3(B)の設定を行って、水上映像と水中映像を適切に合成した映像400の例を示している。すなわち、水上におけるオブジェクトの映像401と、水中におけるオブジェクトの映像402とが、水面420において、滑らかにつながっている。なお、
図4(A)の場合、水面420の位置は画面の略中央に位置している。したがって、映像400の縦の長さm480は、水上の映像の縦の長さm481の約2倍である。
【0030】
図4(B)は、画面を下方にワイプした場合の映像を示している。映像430では、水面421が、映像400の水面420よりも、画面の上方に位置している。この映像を撮るには、水上カメラ及び水中カメラを下方にチルトする必要がある。
【0031】
図5は、カメラを下方にチルトした場合の原理の概略を示す図である。
【0032】
ワイプとは、例えば、カメラを下方又は上方にチルトして、水面部分を画面の上部に、又は下部に位置させる操作を意味する。
【0033】
図5(A)は、水上カメラの視点P1が、水面540の上方の高さhの位置541に置かれていることを示している。そして、説明の便宜上、三角形P1,A1,B1は、二等辺三角形とする。視点P1から水面におけるオブジェクトOb551までの水平方向の距離がL1である。また、A1からB1が水上カメラの視点P1からの撮像領域である。また、オブジェクトOb551の水面における位置が点S1である。そして、水上カメラのレンズの中心軸C571が下方にチルトしている。水上カメラの画角がθz1、水上カメラの下方チルト角度がθt1である。視点P1と点S1とを結ぶ直線と、水上カメラのレンズの中心軸C571とのなす角度がθs1である。撮像領域A1からB1までの長さがm560であり、撮像領域の上端A1から水面の点S1までの長さがm561である。ここで、ワイプ比R(画面割合)を以下のように定義する。
R=m561/m560
図5(A)の場合、ワイプ比Rは、次のように表せる。
R=(θz1/2−θs1)/θz1
ここで、近似的に
θs1=θt1−tan
−1(h/L1)
と表すことができるから、ワイプ比Rは、
R=(θz1/2−θt1+tan
−1(h/L1))/θz1
=0.5−(θt1−tan
−1(h/L1))/θz1 (2)
となる。式(2)を用いることによって、水上カメラのチルト角度から、ワイプ比Rを求めることができる。
【0034】
あるいは、ワイプ比Rを外部から与える場合には、チルト角度θt1は、以下のように求まる。
θt1=(0.5−R)θz1+tan
−1(h/L1) (3)
図5(B)は、水中カメラにおける状況を示している。
【0035】
なお、既に述べたように、水中カメラの水中での画角は、水上カメラの画角と同じになるように水中カメラの画角を設定する必要がある。このためには、水中カメラの焦点距離は、水上カメラ自体の焦点距離の1/n倍とすることが必要である。
【0036】
水中カメラの視点P2が、水面540の下方の水深hの位置542に置かれていることを示している。そして、説明の便宜上、三角形P2,A1,B1は、二等辺三角形とする。視点P2からオブジェクトOb551までの距離が、同様にL1であり、A1からB1が水中カメラの撮像領域である。また、オブジェクトの水面における位置が点S1である。そして、水中カメラの画角がθz1、水中カメラの下方チルト角度がθt2である。視点P2と点S1とを結ぶ直線と、水中カメラのレンズの中心軸C572とのなす角度がθs2である。撮像領域A1からB1までの長さがm580であり、撮像領域の上端A1から水面の点S1までの長さがm581である。ここで、ワイプ比は、水上カメラと同じワイプ比Rであるから、以下のようになる。
R=m581/m580=m561/m560
図5(B)の場合、ワイプ比Rは、次のように表せる。
R=(θz1/2−θs2)/θz1
ここで、近似的に
θs2=θt2+tan
−1(h/L1)
と表すことができるから、ワイプ比Rは、
R=(θz1/2−θt2−tan
−1(h/L1))/θz1
=0.5−(θt2+tan
−1(h/L1))/θz1 (4)
となる。上式を用いることによって、水中カメラのチルト角度から、ワイプ比Rを求めることができる。
【0037】
あるいは、ワイプ比Rを外部から与える場合には、チルト角度θt2は、以下のように求まる。
θt2=(0.5−R)θz1−tan
−1(h/L1) (5)
以上のようにして、式(3)及び式(5)を用いることにより、ワイプ比Rを与えることにより、水上カメラのチルト角度θt1と、水中カメラのチルト角度θt2とが決定される。これらのチルト角度を用いて、水上カメラ、及び水中カメラをチルトさせれば、所望のワイプ比Rの映像が得られる。そして、ワイプ比Rから、画面上の水面位置が求まる。この水面位置を用いて、水上カメラの映像と水中カメラの映像を合成して、1つの映像にすることにより、オブジェクトOb551の映像が滑らかにつながった映像が得られる。式(3)及び式(5)は、第2の規則の一例である。
【0038】
以上のようにして、ワイプ比Rを与えて、水上カメラと水中カメラの適切なチルト角度を求めることができる。
【0039】
また、水上カメラに対して水中カメラが追従するようにして、水中カメラの各種のパラメータを決定してもよい。式(1)、式(2)及び式(5)は、第3の規則の一例である。
【0040】
なお、ズームレンズの焦点距離は、レンズによって微妙に異なる場合がある。また、水の屈折率は、水の成分や水温によっても変化する。空気の屈折率も、同様に気温等によって1.00からずれる場合がある。また、レンズを通して観測される屈折率の値はレンズの個体特性によって変化するため、実際に利用する前に、水上レンズと水中レンズを用いて、ワイプ比Rと、水上カメラのチルト角度θt1と、水中カメラのチルト角度θt2との関係をキャリブレーションしておくことが望ましい。
【0041】
また、複数のレンズを交換して用いる場合には、このキャリブレーションの値を、レンズに対応付けて保存しておくことにより、レンズ交換を行った際においても、装着されたレンズの過去のキャリブレーション値を読み出すことによって、再度キャリブレーションを行うことを省略してもよい。
【0042】
以上の説明においては、水中カメラは、カメラ自体を水没させた場合について述べたものである。すなわち、水中カメラの先端が平面であり、かつ、その平面が水没するカメラを用いた場合について述べたものである。
【0043】
図6は、例えばガラスなどの透明なガラス壁690を介して撮像を行った場合についての実施形態を示している。
図6は、水上を撮像するカメラ610と水中を撮像するカメラ620が、いずれもガラス壁690を隔てているため、空気中に存在している。この場合には、水中を撮像するカメラ620をチルトさせても、水から空気への屈折がガラス壁690において固定的に行われる。このため、水中における映像については、
図6に示した原理とは、屈折の関係が異なる。なぜなら、
図5のようにカメラを水没させる場合には、カメラをチルトさせることにより、カメラのレンズ先端の平面も角度が変化するのに対して、
図6の場合には、水中用のカメラをチルトさせても、水と空気の間の屈折は、既にガラス壁690においてなされているからである。
【0044】
しかしながら、チルト角度が小さい場合には、
図5との差異は微少であると判断される。このため、
図6の実施形態においても、
図5で説明した原理を適用できる。
【0045】
なお、
図5の場合には、水中カメラのレンズ先端と、レンズ先端の前側で水と接している平面(保護フィルタ面)との距離は、水と接している平面(保護フィルタ面)からオブジェクトまでの距離に比して非常に短いと仮定している。
図6の場合において、水中用のカメラ620からガラス壁690までの距離が、ガラス壁からオブジェクトまでの距離と比して相対的に長くなるにつれて、
図5に示した原理との乖離が発生する。これは、主として水中用のカメラ620の画角の設定に影響を与える。このような状況においては、例えば、予めnの値をキャリブレーションして、式(1)を用いて、水中用のカメラの焦点距離を適切な値に修正することが望ましい(フォーカス制御についても同様の修正をすることが望ましい)。
【0046】
図7は、一実施形態の機能ブロック図を示している。
【0047】
水上水中撮像装置800は、画角決定部822と、チルト角度決定部824と、距離情報取得・フォーカス制御部826と、カメラ高さ・水深記憶部828と、水上カメラ制御部831と、水中カメラ制御部832と、映像合成部830と、水上カメラ841と、水中カメラ842と、表示装置850とを有する。
【0048】
画角決定部822は、画角指示804を受信して、水中カメラの画角を決定する。画角指示804の値は、水上カメラに対して直接与えられる。したがって、画角指示の値によって、水上カメラの画角が決定される。そして、水上カメラの画角と同じ画角になるよう、水中カメラの焦点距離を決定する。既に述べたように、水中カメラの焦点距離は、水上カメラの焦点距離の1/nにすればよい。なお、水温、空気の屈折率、カメラの個体差等を勘案し、適切な焦点距離が設定できるよう、nの値のキャリブレーションを予め行っておくことが望ましい。
【0049】
チルト角度決定部824は、画面割合指示806と、カメラ高さ・水深記憶部828からの情報と、画角指示804と、距離情報取得・フォーカス制御部から得られたオブジェクトまでの距離とを用いて、水上カメラのチルト角度と、水中カメラのチルト角度を決定する。この決定においては、式(3)及び式(5)が用いられる。
【0050】
距離情報取得・フォーカス制御部826は、例えば水上カメラのフォーカス情報から、オブジェクトまでの距離情報を取得する。この距離情報を用いて、水中カメラ842のフォーカス制御情報を、水中カメラ制御部832に送る。水中カメラのフォーカスは、オブジェクトまでの距離を1/n倍した値とすることが望ましい。
【0051】
水上カメラ制御部831は、水上カメラ841のフォーカス指示802に基づきフォーカスを制御する。水上カメラ制御部831は、水上カメラ841の画角、及びチルト角度を制御する。
【0052】
水中カメラ制御部832は、水中カメラ842のフォーカス、画角、及びチルト角度を制御する。
【0053】
映像合成部830は、画面割合指示806を用いて、水上カメラ841及び水中カメラ842からの映像を、水面を境として合成する。
【0054】
表示装置850は合成された映像を表示する。映像合成部830は、合成された映像を、その他の機器に出力してもよい。
【0055】
以上のようにして、水上水中撮像装置800が適切に機能する。
【0056】
図8は、他の実施形態の機能ブロック図を示している。
図7と同様の構成については、同じ符号が付されている。
図8においては、
図7において入力された画面割合指示806の代わりに、水上カメラ841のためのチルト角度指示906が与えられる。
【0057】
水上カメラ制御部831には、フォーカス指示802、画角指示804、チルト角度指示906が与えられる。水上カメラ制御部831は、これらの情報を基に、水上カメラ841を制御する。
【0058】
画角・チルト角度決定部912は、水上カメラ841のための画角指示804及びチルト角度指示906、カメラ高さ・水深記憶部828からのカメラの水深距離と、距離情報取得・フォーカス制御部826からのオブジェクトまでの距離情報とを基にして、水中カメラの画角とチルト角度とを決定し、水中カメラ制御部832に伝える。
【0059】
映像合成部830は、画角指示804及びチルト角度指示906を基にして、式(2)を用いて、ワイプ比Rを求め、水上映像及び水中映像を合成し、出力する。
【0060】
以上のようにして、
図8に示す実施形態では、水上カメラの制御情報を基にして、水中カメラの制御を行う。
【0061】
図9は、一実施形態の動作を示すフローチャートである。
【0062】
ステップS1010で、画角決定部822は、水上カメラ及び水中カメラの画角を決定する。
【0063】
ステップS1020で、チルト角度決定部824は、画面割合指示806から、水上カメラ及び水中カメラのチルト角度を決定する。
【0064】
ステップS1030で、映像合成部830は、水上映像と水中映像とを、画面割合に基づいて合成する。
【0065】
ステップS1040で、映像合成部830は、表示装置850などに合成した映像を出力する。
【0066】
図10は、他の実施形態の動作を示すフローチャートである。
【0067】
ステップS1110で、水上カメラ制御部831は、水上カメラの画角及びチルト角度の設定値を取得し、水上カメラ841を制御する。
【0068】
ステップS1120で、画角・チルト角度決定部912は、水上カメラの画角及びチルト角度の設定値から、水中カメラの画角及びチルト角度を決定する。そして、画角・チルト角度決定部912は、これらの情報を水中カメラ制御部832に渡す。
【0069】
ステップS1130で、映像合成部830は、水上映像と水中映像とを、画面割合に基づいて合成する。
【0070】
ステップS1140で、映像合成部830は、表示装置850などに合成した映像を出力する。
【0071】
以上のようにして、水上映像と水中映像が、よりスムーズに結合された映像が生成される。