以下、添付図面に従って本開示の技術に係る実施形態の一例について説明する。なお、本実施形態では、説明の便宜上、測距装置10Aから計測対象となる被写体までの距離を単に「距離」又は「被写体までの距離」とも称する。また、本実施形態では、被写体に対する画角を単に「画角」とも称する。
[第1実施形態]
一例として図1に示すように、本開示の技術に係る情報処理装置の一例である測距装置10Aは、測距ユニット12及び撮像装置14を備えている。なお、本実施形態では、測距ユニット12及び後述の測距制御部68(図2参照)が本開示の技術に係る計測部の一例であり、撮像装置14が本開示の技術に係る撮像部の一例である。
撮像装置14は、レンズユニット16及び撮像装置本体18を備えており、レンズユニット16は、撮像装置本体18に対して着脱自在に取り付けられる。
撮像装置本体18の正面視左側面にはホットシュー(Hot Shoe)20が設けられており、測距ユニット12は、ホットシュー20に対して着脱自在に取り付けられる。
測距装置10Aは、測距ユニット12に測距用のレーザ光を射出させて測距を行う測距系機能と、撮像装置14に被写体を撮像させて撮像画像を得る撮像系機能とを備えている。なお、以下では、撮像画像を単に「画像」とも称する。また、以下では、説明の便宜上、鉛直方向において、測距ユニット12から射出されるレーザ光の光軸L1(図2参照)が、レンズユニット16の光軸L2(図2参照)と同一の高さであることを前提として説明する。
測距装置10Aは、測距系機能を働かせることで、1回の指示に応じて1回の計測シーケンス(図3参照)を行い、1回の計測シーケンスが行われることで最終的に1つの距離が出力される。
測距装置10Aは、撮像系機能の動作モードとして、静止画撮像モードと動画撮像モードとを有する。静止画撮像モードは、静止画像を撮像する動作モードであり、動画撮像モードは、動画像を撮像する動作モードである。静止画撮像モード及び動画撮像モードは、ユーザの指示に応じて選択的に設定される。
一例として図2に示すように、測距ユニット12は、射出部22、受光部24、及びコネクタ26を備えている。
コネクタ26は、ホットシュー20に接続可能とされており、コネクタ26がホットシュー20に接続された状態で、測距ユニット12は、撮像装置本体18の制御下で動作する。
射出部22は、LD(レーザダイオード:Laser Diode)30、集光レンズ(図示省略)、対物レンズ32、及びLDドライバ34を有する。
集光レンズ及び対物レンズ32は、LD30により射出されるレーザ光の光軸L1に沿って設けられており、LD30側から光軸L1に沿って集光レンズ及び対物レンズ32の順に配置されている。
LD30は、本開示の技術に係る指向性光の一例である測距用のレーザ光を発光する。LD30により発光されるレーザ光は、有色のレーザ光であり、例えば、射出部22から数メートル程度の範囲内であれば、レーザ光の実空間状での照射位置である実空間照射位置は、実空間上で視覚的に認識され、撮像装置14によって撮像されて得られた撮像画像からも視覚的に認識される。なお、以下では、説明の便宜上、レーザ光の実空間照射位置を単に「照射位置」とも称する。
集光レンズは、LD30により発光されたレーザ光を集光し、集光したレーザ光を通過させる。対物レンズ32は、被写体に対向しており、集光レンズを通過したレーザ光を被写体に対して射出する。
LDドライバ34は、コネクタ26及びLD30に接続されており、撮像装置本体18の指示に従ってLD30を駆動させてレーザ光を発光させる。
受光部24は、PD(フォトダイオード:Photo Diode)36、対物レンズ38、及び受光信号処理回路40を有する。対物レンズ38は、PD36の受光面側に配置されており、射出部22により射出されたレーザ光が被写体に当たって反射したレーザ光である反射レーザ光は対物レンズ38に入射される。対物レンズ38は、反射レーザ光を通過させ、PD36の受光面に導く。PD36は、対物レンズ38を通過した反射レーザ光を受光し、受光量に応じたアナログ信号を受光信号として出力する。
受光信号処理回路40は、コネクタ26及びPD36に接続されており、PD36から入力された受光信号を増幅器(図示省略)で増幅し、増幅した受光信号に対してA/D(Analog/Digital)変換を行う。そして、受光信号処理回路40は、A/D変換によってデジタル化された受光信号を撮像装置本体18に出力する。
撮像装置14は、マウント42,44を備えている。マウント42は、撮像装置本体18に設けられており、マウント44は、レンズユニット16に設けられている。レンズユニット16は、マウント42にマウント44が結合されることにより撮像装置本体18に交換可能に装着される。
レンズユニット16は、撮像レンズ50、ズームレンズ52、ズームレンズ移動機構54、及びモータ56を備えている。
被写体からの反射光である被写体光は、撮像レンズ50に入射される。撮像レンズ50は、被写体光を通過させ、ズームレンズ52に導く。
ズームレンズ移動機構54には、光軸L2に対してスライド可能にズームレンズ52が取り付けられている。また、ズームレンズ移動機構54にはモータ56が接続されており、ズームレンズ移動機構54は、モータ56の動力を受けてズームレンズ52を光軸L2方向に沿ってスライドさせる。
モータ56は、マウント42,44を介して撮像装置本体18に接続されており、撮像装置本体18からの命令に従って駆動が制御される。なお、本実施形態では、モータ56の一例としてステッピングモータを適用している。従って、モータ56は、撮像装置本体18からの命令によりパルス電力に同期して動作する。
撮像装置本体18は、撮像素子60、主制御部62、画像メモリ64、画像処理部66、測距制御部68、モータドライバ72、撮像素子ドライバ74、画像信号処理回路76、及び表示制御部78を備えている。また、撮像装置本体18は、タッチパネルI/F(Interface:インタフェース)79、受付I/F80、及びメディアI/F82を備えている。
主制御部62、画像メモリ64、画像処理部66、測距制御部68、モータドライバ72、撮像素子ドライバ74、画像信号処理回路76、及び表示制御部78は、バスライン84に接続されている。また、タッチパネルI/F79、受付I/F80、及びメディアI/F82も、バスライン84に接続されている。
撮像素子60は、CMOS(Complementary Metal Oxide Semicondutor)型のイメージセンサであり、カラーフィルタ(図示省略)を備えている。カラーフィルタは、輝度信号を得るために最も寄与するG(Green:緑)に対応するGフィルタ、R(Red:赤)に対応するRフィルタ、及びB(Blue:青)に対応するBフィルタを含む。撮像素子60は、マトリクス状に配置された複数の撮像画素60A1を含む撮像画素群60Aを有する。各撮像画素60A1には、カラーフィルタに含まれるRフィルタ、Gフィルタ、及びBフィルタの何れかのフィルタが割り当てられており、撮像画素群60Aは、被写体光を受光することにより被写体を撮像する。
すなわち、ズームレンズ52を通過した被写体光は、撮像素子60の受光面に結像され、被写体光の受光量に応じた電荷が撮像画素60A1に蓄積される。撮像素子60は、各撮像画素60A1に蓄積された電荷を、被写体光が受光面で結像されて得られた被写体像に相当する画像を示す画像信号として出力する。
主制御部62は、バスライン84を介して測距装置10Aの全体を制御する。
モータドライバ72は、マウント42,44を介してモータ56に接続されており、主制御部62の指示に従ってモータ56を制御する。
撮像装置14は、画角変更機能を有する。画角変更機能は、ズームレンズ52を移動させることで画角を変更する機能であり、本実施形態において、画角変更機能は、ズームレンズ52、ズームレンズ移動機構54、モータ56、モータドライバ72、及び主制御部62によって実現される。なお、本実施形態では、ズームレンズ52による光学式の画角変更機能を例示しているが、本開示の技術はこれに限定されるものではなく、ズームレンズ52を利用しない電子式の画角変更機能であってもよい。
撮像素子ドライバ74は、撮像素子60に接続されており、主制御部62の制御下で、撮像素子60に駆動パルスを供給する。撮像画素群60Aに含まれる各撮像画素60A1は、撮像素子ドライバ74によって撮像素子60に供給された駆動パルスに従って駆動する。
画像信号処理回路76は、撮像素子60に接続されており、主制御部62の制御下で、撮像素子60から1フレーム分の画像信号を撮像画素60A1毎に読み出す。画像信号処理回路76は、読み出した画像信号に対して、相関二重サンプリング処理、自動利得調整、A/D変換等の各種処理を行う。画像信号処理回路76は、画像信号に対して各種処理を行うことでデジタル化した画像信号を、主制御部62から供給されるクロック信号で規定される特定のフレームレート(例えば、数十フレーム/秒)で1フレーム毎に画像メモリ64に出力する。画像メモリ64は、画像信号処理回路76から入力された画像信号を一時的に保持する。
撮像装置本体18は、表示部86、タッチパネル88、受付デバイス90、及びメモリカード92を備えている。
本開示の技術に係る第1表示部及び第2表示部の一例である表示部86は、表示制御部78に接続されており、表示制御部78の制御下で各種情報を表示する。表示部86は、例えば、LCD(Liquid Crystal Display)により実現される。
本開示の技術に係る第1〜第3受付部の一例であるタッチパネル88は、表示部86の表示画面に重ねられており、ユーザの指やタッチペン等の指示体による接触を受け付ける。タッチパネル88は、タッチパネルI/F79に接続されており、指示体により接触された位置を示す位置情報をタッチパネルI/F79に出力する。タッチパネルI/F79は、主制御部62の指示に従ってタッチパネル88を作動させ、タッチパネル88から入力された位置情報を主制御部62に出力する。なお、本実施形態では、本開示の技術に係る第1〜第3受付部の一例としてタッチパネル88を例示しているが、これに限らず、タッチパネル88に代えて、測距装置10Aに接続して使用されるマウス(図示省略)を適用してもよいし、タッチパネル88及びマウスを併用してもよい。
受付デバイス90は、計測・撮像ボタン90A、撮像ボタン90B、撮像系動作モード切替ボタン90C、広角指示ボタン90D、及び望遠指示ボタン90Eを有する。また、受付デバイス90は、撮像位置距離算出ボタン90F及び3次元座標算出ボタン90G等も有しており、ユーザによる各種指示を受け付ける。受付デバイス90は、受付I/F80に接続されており、受付I/F80は、受付デバイス90によって受け付けられた指示の内容を示す指示内容信号を主制御部62に出力する。
計測・撮像ボタン90Aは、計測及び撮像の開始の指示を受け付ける押圧式のボタンである。撮像ボタン90Bは、撮像の開始の指示を受け付ける押圧式のボタンである。撮像系動作モード切替ボタン90Cは、静止画撮像モードと動画撮像モードとを切り替える指示を受け付ける押圧式のボタンである。
広角指示ボタン90Dは、画角を広角にする指示を受け付ける押圧式のボタンであり、広角側への画角の変更量は、許容される範囲内で、広角指示ボタン90Dへの押圧が継続して行われる押圧時間に応じて定まる。
望遠指示ボタン90Eは、画角を望遠にする指示を受け付ける押圧式のボタンであり、望遠側への画角の変更量は、許容される範囲内で、望遠指示ボタン90Eへの押圧が継続して行われる押圧時間に応じて定まる。
撮像位置距離算出ボタン90Fは、後述の撮像位置距離算出処理の開始の指示を受け付ける押圧式のボタンである。3次元座標算出ボタン90Gは、後述の撮像位置距離算出処理及び後述の3次元座標算出処理の開始の指示を受け付ける押圧式のボタンである。
なお、以下では、説明の便宜上、計測・撮像ボタン90A及び撮像ボタン90Bを区別して説明する必要がない場合、「レリーズボタン」と称する。また、以下では、説明の便宜上、広角指示ボタン90D及び望遠指示ボタン90Eを区別して説明する必要がない場合、「画角指示ボタン」と称する。
なお、本実施形態に係る測距装置10Aでは、マニュアルフォーカスモードとオートフォーカスモードとが受付デバイス90を介したユーザの指示に応じて選択的に設定される。レリーズボタンは、撮像準備指示状態と撮像指示状態との2段階の押圧操作を受け付ける。撮像準備指示状態とは、例えば、レリーズボタンが待機位置から中間位置(半押し位置)まで押下される状態を指し、撮像指示状態とは、レリーズボタンが中間位置を超えた最終押下位置(全押し位置)まで押下される状態を指す。なお、以下では、説明の便宜上、「レリーズボタンが待機位置から半押し位置まで押下された状態」を「半押し状態」と称し、「レリーズボタンが待機位置から全押し位置まで押下された状態」を「全押し状態」と称する。
オートフォーカスモードでは、レリーズボタンが半押し状態にされることで撮像条件の調整が行われ、その後、引き続き全押し状態にすると本露光が行われる。つまり、本露光に先立ってレリーズボタンが半押し状態にされることでAE(Automatic Exposure)機能が働いて露出調整が行われた後、AF(Auto−Focus)機能が働いて焦点調整が行われ、レリーズボタンが全押し状態にされると本露光が行われる。
ここで、本露光とは、後述の静止画像ファイルを得るために行われる露光を指す。また、本実施形態において、露光とは、本露光の他に、後述のライブビュー画像を得るために行われる露光、及び後述の動画像ファイルを得るために行われる露光も意味する。以下では、説明の便宜上、これらの露光を区別して説明する必要がない場合、単に「露光」と称する。
なお、本実施形態では、主制御部62がAE機能による露出調整及びAF機能による焦点調整を行う。また、本実施形態では、露出調整及び焦点調整が行われる場合を例示しているが、本開示の技術はこれに限定されるものではなく、露出調整又は焦点調整が行われるようにしてもよい。
画像処理部66は、画像メモリ64から特定のフレームレートで1フレーム毎に画像信号を取得し、取得した画像信号に対して、ガンマ補正、輝度・色差変換、及び圧縮処理等の各種処理を行う。
画像処理部66は、各種処理を行って得た画像信号を特定のフレームレートで1フレーム毎に表示制御部78に出力する。また、画像処理部66は、各種処理を行って得た画像信号を、主制御部62の要求に応じて、主制御部62に出力する。
表示制御部78は、主制御部62の制御下で、画像処理部66から入力された画像信号を1フレーム毎に特定のフレームレートで表示部86に出力する。
表示部86は、画像及び文字情報等を表示する。表示部86は、表示制御部78から特定のフレームレートで入力された画像信号により示される画像をライブビュー画像として表示する。ライブビュー画像は、連続的に撮像されて得られた連続フレーム画像であり、スルー画像とも称される。また、表示部86は、単一フレームで撮像されて得られた単一フレーム画像である静止画像も表示する。更に、表示部86は、ライブビュー画像の他に、再生画像やメニュー画面等も表示する。
なお、本実施形態では、画像処理部66及び表示制御部78は、ASIC(Application Specific Integrated Circuit)によって実現されているが、本開示の技術はこれに限定されるものではない。例えば、画像処理部66及び表示制御部78の各々は、FPGA(Field−Programmable Gate Array)によって実現されてもよい。また、画像処理部66は、CPU(中央処理装置:Central Processing Unit)、ROM(Read Only Memory)、及びRAM(Random Access Memory)を含むコンピュータによって実現されてもよい。また、表示制御部78も、CPU、ROM、及びRAMを含むコンピュータによって実現されてもよい。更に、画像処理部66及び表示制御部78の各々は、ハードウェア構成及びソフトウェア構成の組み合わせによって実現されてもよい。
主制御部62は、静止画撮像モード下でレリーズボタンによって静止画像の撮像の指示が受け付けられた場合、撮像素子ドライバ74を制御することで、撮像素子60に1フレーム分の露光を行わせる。主制御部62は、1フレーム分の露光が行われることによって得られた画像信号を画像処理部66から取得し、取得した画像信号に対して圧縮処理を施して特定の静止画像用フォーマットの静止画像ファイルを生成する。なお、ここで、特定の静止画像用フォーマットとは、例えば、JPEG(Joint Photographic Experts Group)を指す。
主制御部62は、動画撮像モード下でレリーズボタンによって動画像の撮像の指示が受け付けられた場合、画像処理部66によりライブビュー画像用として表示制御部78に出力される画像信号を特定のフレームレートで1フレーム毎に取得する。そして、主制御部62は、画像処理部66から取得した画像信号に対して圧縮処理を施して特定の動画像用フォーマットの動画像ファイルを生成する。なお、ここで、特定の動画像用フォーマットとは、例えば、MPEG(Moving Picture Experts Group)を指す。なお、以下では、説明の便宜上、静止画像ファイル及び動画像ファイルを区別して説明する必要がない場合、画像ファイルと称する。
メディアI/F82は、メモリカード92に接続されており、主制御部62の制御下で、メモリカード92に対する画像ファイルの記録及び読み出しを行う。なお、メディアI/F82によってメモリカード92から読み出された画像ファイルは、主制御部62によって伸長処理が施されて表示部86に再生画像として表示される。
なお、主制御部62は、測距制御部68から入力された距離情報を画像ファイルに関連付けて、メディアI/F82を介してメモリカード92に保存する。そして、距離情報は、メモリカード92からメディアI/F82を介して主制御部62によって画像ファイルと共に読み出され、読み出された距離情報により示される距離は、関連する画像ファイルによる再生画像と共に表示部86に表示される。
測距制御部68は、主制御部62の制御下で、測距ユニット12を制御する。なお、本実施形態において、測距制御部68は、ASICによって実現されているが、本開示の技術はこれに限定されるものではない。例えば、測距制御部68は、FPGAによって実現されてもよい。また、測距制御部68は、CPU、ROM、及びRAMを含むコンピュータによって実現されてもよい。更に、測距制御部68は、ハードウェア構成及びソフトウェア構成の組み合わせによって実現されてもよい。
ホットシュー20は、バスライン84に接続されており、測距制御部68は、主制御部62の制御下で、LDドライバ34を制御することで、LD30によるレーザ光の発光を制御し、受光信号処理回路40から受光信号を取得する。測距制御部68は、レーザ光を発光させたタイミングと受光信号を取得したタイミングとを基に、被写体までの距離を導出し、導出した距離を示す距離情報を主制御部62に出力する。
ここで、測距制御部68による被写体までの距離の計測について更に詳細に説明する。
一例として図3に示すように、測距装置10Aによる1回の計測シーケンスは、電圧調整期間、実計測期間、及び休止期間で規定される。
電圧調整期間は、LD30及びPD36の駆動電圧を調整する期間である。実計測期間は、被写体までの距離を実際に計測する期間である。実計測期間では、LD30にレーザ光を発光させ、PD36に反射レーザ光を受光させる動作が数百回繰り返され、レーザ光を発光させたタイミングと受光信号を取得したタイミングとを基に、被写体までの距離が導出される。休止期間は、LD30及びPD36の駆動を休止させるための期間である。よって、1回の計測シーケンスでは、被写体までの距離の計測が数百回行われることになる。
なお、本実施形態では、電圧調整期間、実計測期間、及び休止期間の各々を数百ミリ秒としている。
一例として図4に示すように、測距制御部68には、測距制御部68がレーザ光の発光の指示を与えるタイミング、及び受光信号を取得するタイミングを規定するカウント信号が供給される。本実施形態では、カウント信号は、主制御部62によって生成されて測距制御部68に供給されるが、これに限らず、バスライン84に接続されたタイムカウンタ等の専用回路によって生成されて測距制御部68に供給されるようにしてもよい。
測距制御部68は、カウント信号に応じて、レーザ光を発光させるためのレーザトリガをLDドライバ34に出力する。LDドライバ34は、レーザトリガに応じて、LD30を駆動してレーザ光を発光させる。
図4に示す例では、レーザ光の発光時間が数十ナノ秒とされている。この場合、射出部22により数キロメートル先の被写体に向けて射出されたレーザ光が反射レーザ光としてPD36で受光されるまでの時間は、“数キロメートル×2/光速”≒数マイクロ秒となる。従って、数キロメートル先の被写体までの距離を計測するためには、一例として図3に示すように、最低必要時間として、数マイクロ秒の時間を要する。
なお、本実施形態では、レーザ光の往復時間等を考慮して、一例として図3に示すように、1回の計測時間を数ミリ秒としているが、被写体までの距離によりレーザ光の往復時間は異なるので、想定する距離に応じて1回あたりの計測時間を異ならせてもよい。
測距制御部68は、1回の計測シーケンスにおける数百回の計測から得た計測値を基に、被写体までの距離を導出する場合、例えば、数百回の計測から得た計測値のヒストグラムを解析して被写体までの距離を導出する。
一例として図5に示すように、1回の計測シーケンスにおける数百回の計測から得られた計測値のヒストグラムでは、横軸が被写体までの距離であり、縦軸が計測回数であり、計測回数の最大値に対応する距離が測距結果として測距制御部68によって導出される。なお、図5に示すヒストグラムはあくまでも一例であり、被写体までの距離に代えて、レーザ光の往復時間(発光から受光までの経過時間)や、レーザ光の往復時間の1/2等に基づいてヒストグラムが生成されてもよい。
一例として図6に示すように、主制御部62は、本開示の技術に係る取得部及び導出部の一例であるCPU100、一次記憶部102、及び二次記憶部104を備えている。CPU100は、測距装置10Aの全体を制御する。一次記憶部102は、各種プログラムの実行時のワークエリア等として用いられる揮発性のメモリである。一次記憶部102の一例としては、RAMが挙げられる。二次記憶部104は、測距装置10Aの作動を制御する制御プログラムや各種パラメータ等を予め記憶する不揮発性のメモリである。二次記憶部104の一例としては、EEPROM(Electrically Erasable Programmable Read Only Memory)やフラッシュメモリが挙げられる。CPU100、一次記憶部102、及び二次記憶部104は、バスライン84を介して相互に接続されている。
測距装置10Aには、3次元座標算出機能が備えられている。3次元座標算出機能とは、後述の第1指定画素座標、後述の第2指定画素座標、後述の撮像位置距離、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法から数式(1)に基づいて、後述の指定画素3次元座標を算出する機能を指す。
なお、数式(1)において、“uL”とは、第1指定画素座標のX座標を指す。また、数式(1)において、“vL”とは、第1指定画素座標のY座標を指す。また、数式(1)において、“uR”とは、第2指定画素座標のX座標を指す。また、数式(1)において、“B”とは、撮像位置距離を指す(図7及び図8参照)。また、数式(1)において、“f”とは、(撮像レンズ50の焦点距離)/(撮像画素60A1の寸法)を指す。また、数式(1)において、(X,Y,Z)とは、指定画素3次元座標を指す。
第1指定画素座標は、後述の第1撮像画像において、実空間上での位置が対応する画素として指定された第1指定画素(本開示の技術に係る「指定画素」に相当)を特定する2次元座標である。第2指定画素座標は、後述の第2撮像画像において、実空間上での位置が対応する画素として指定された第2指定画素(本開示の技術に係る「指定画素」に相当)を特定する2次元座標である。すなわち、第1指定画素及び第2指定画素は、実空間上での位置が互いに対応する画素として指定された画素であり、かつ、第1撮像画像及び第2撮像画像の各々において、互いに対応する位置で特定可能な画素である。そして、第1指定画素座標は、第1撮像画像上の2次元座標であり、第2指定画素座標は、第2撮像画像上の2次元座標である。
指定画素3次元座標とは、第1指定画素座標及び第2指定画素座標に対応する実空間上での座標である3次元座標を指す。なお、指定画素3次元座標は、本開示の技術に係る指定画素実空間座標の一例である。
ここで、一例として図7及び図8に示すように、第1撮像画像とは、被写体が第1撮像位置から撮像装置14により撮像されて得られた撮像画像を指す。また、一例として図7及び図8に示すように、第2撮像画像とは、第1撮像位置からの撮像対象とされた被写体を含む被写体が第1撮像位置とは異なる第2撮像位置から撮像装置14により撮像されて得られた撮像画像を指す。なお、本実施形態では、説明の便宜上、第1撮像画像及び第2撮像画像に限らず、静止画像及び動画像を含めて、撮像装置14によって撮像されて得られた撮像画像を区別して説明する必要がない場合は単に「撮像画像」と称する。
また、図7に示す例では、測距ユニット12の位置として第1計測位置及び第2計測位置が示されている。第1計測位置は、本開示の技術に係る「第1撮像位置に対応する位置」の一例である。第2計測位置は、本開示の技術に係る「第2撮像位置に対応する位置」の一例である。第1計測位置とは、撮像装置14に対して測距ユニット12が正しく取り付けられている状態で被写体が第1撮像位置から撮像装置14により撮像される場合の測距ユニット12の位置を指す。第2計測位置とは、撮像装置14に対して測距ユニット12が正しく取り付けられている状態で被写体が第2撮像位置から撮像装置14により撮像される場合の測距ユニット12の位置を指す。
撮像位置距離とは、第1撮像位置と第2撮像位置との距離を指す。撮像位置距離の一例としては、図8に示すように、第1撮像位置における撮像装置14の撮像レンズ50の主点OLと第2撮像位置における撮像装置14の撮像レンズ50の主点ORとの距離が挙げられるが、本開示の技術はこれに限定されるものではない。例えば、第1撮像位置における撮像装置14の撮像素子60の中央に位置する撮像画素60A1と第2撮像位置における撮像装置14の撮像素子60の中央に位置する撮像画素60A1との距離が撮像位置距離とされてもよい。
図8に示す例では、第1撮像画像に含まれる画素PLが第1指定画素であり、第2撮像画像に含まれる画素PRが第2指定画素であり、画素PL,PRは、被写体の点Pに対応する画素である。よって、画素PLの2次元座標である第1指定画素座標の(uL,vL)、及び画素PRの2次元座標である第2指定画素座標の(uR,vR)は、点Pの3次元座標である指定画素3次元座標の(X,Y,Z)に対応している。なお、数式(1)では、“vR”は、使用されない。
なお、以下では、説明の便宜上、第1指定画素及び第2指定画素を区別して説明する必要がない場合、「指定画素」と称する。更に、以下では、説明の便宜上、第1指定画素座標及び第2指定画素座標を区別して説明する必要がない場合、「指定画素座標」と称する。
ところで、測距装置10Aが3次元座標算出機能を働かせることで数式(1)に基づいて指定画素3次元座標を算出する場合、撮像位置距離を高精度に算出することが好ましい。なぜならば、数式(1)に撮像位置距離である“B”が含まれているからである。
そこで、測距装置10Aでは、一例として図6に示すように、二次記憶部104が、本開示の技術に係るプログラムの一例である撮像位置距離算出プログラム106を記憶している。
CPU100は、二次記憶部104から撮像位置距離算出プログラム106を読み出して一次記憶部102に展開し、撮像位置距離算出プログラム106を実行する。
また、一例として図6に示すように、二次記憶部104は、3次元座標算出プログラム108を記憶している。CPU100は、二次記憶部104から3次元座標算出プログラム108を読み出して一次記憶部102に展開し、3次元座標算出プログラム108を実行する。
CPU100は、撮像位置距離算出プログラム106及び3次元座標算出プログラム108を実行することで、一例として図9に示すように、取得部110、導出部112、及び制御部114として動作する。
取得部110は、第1撮像画像、第2撮像画像、及び被写体までの距離を取得する。ここで言う「被写体までの距離」とは、第1計測位置の測距ユニット12により射出されたレーザ光を基に計測された被写体までの距離を指す。
導出部112は、指定画素座標、後述の複数画素座標、後述の照射位置実空間座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて撮像位置距離を導出する。本開示の技術に係る第2制御部の一例である制御部114は、表示部86に対して導出部112による導出結果を表示させる制御を行う。
ここで、導出部112で用いられる複数画素座標及び照射位置実空間座標について説明する。なお、以下では、説明の便宜上、「照射位置実空間座標」を「照射位置座標」とも称する。複数画素座標は、取得部110により取得された第1撮像画像及び第2撮像画像の各々において、実空間上でのレーザ光の照射位置と同一の平面状領域に存在し、かつ、実空間上での位置が対応する3画素以上の複数画素を特定する複数の2次元座標である。また、照射位置座標は、実空間上でのレーザ光の照射位置を特定する3次元座標であって、取得部110により取得された距離に基づいて導出された3次元座標である。
照射位置座標は、一例として図10に示す距離L、半画角α、射出角度β、及び基準点間距離Mから、下記の数式(2)に基づいて算出される。数式(2)において、(xLaser,yLaser,zLaser)とは、照射位置座標を指す。
数式(2)では、yLaser=0とされているが、これは、鉛直方向において光軸L1が光軸L2と同一の高さにあることを意味している。被写体に照射されたレーザ光の位置が被写体における光軸L2の位置よりも鉛直方向において高い位置の場合、yLaserは正値となる。被写体に照射されたレーザ光の位置が被写体における光軸L2の位置よりも鉛直方向において低い位置の場合、yLaserは負値となる。なお、以下では、説明の便宜上、“yLaser=0”であることを前提として説明する。
ここで、一例として図10に示すように、半画角αとは、画角の半分を指す。射出角度βとは、射出部22からレーザ光が射出される角度を指す。基準点間距離Mとは、撮像装置14に規定された第1基準点P1と測距ユニット12に規定された第2基準点P2との距離を指す。第1基準点P1の一例としては、撮像レンズ50の主点が挙げられる。第2基準点P2の一例としては、測距ユニット12における3次元空間の位置を特定可能な座標の原点として予め設定された点が挙げられる。具体的には、対物レンズ38の正面視左右端の一端、又は測距ユニット12の筐体(図示省略)が直方体状である場合の筐体の1つの角、すなわち、1つの頂点が挙げられる。
導出部112は、複数画素座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて、複数画素座標に対応する実空間上での3次元座標を含む平面を示す平面方程式により規定される平面の向きを導出する。そして、導出部112は、導出した平面の向きと照射位置座標とに基づいて平面方程式を確定し、確定した平面方程式、指定画素座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて撮像位置距離を導出する。
なお、撮像位置距離の導出に用いられる平面方程式は、下記の数式(3)によって規定される。従って、「平面の向き」を導出するとは、数式(3)におけるa,b,cを導出することを意味し、「平面方程式」を確定するとは、数式(3)におけるdを導出することで、平面方程式のa,b,c,dを確定することを意味する。
次に、測距装置10Aの本開示の技術に係る部分の作用について説明する。
先ず、3次元座標算出ボタン90Gがオンされた場合にCPU100が撮像位置距離算出プログラム106を実行することで実現される撮像位置距離算出処理について図11及び図12を参照して説明する。
なお、以下では、説明の便宜上、一例として図13に示すように、測距装置10Aの撮像装置14の撮像範囲119にオフィスビル120の外壁面121を含む領域が被写体として含まれていることを前提として説明する。また、外壁面121は、主要被写体であり、かつ、レーザ光の照射対象であることを前提として説明する。
また、外壁面121は、平面状に形成されており、本開示の技術に係る平面状領域の一例である。また、一例として図13に示すように、外壁面121には、四角形状の複数の窓122が設けられている。また、一例として図13に示すように、外壁面121には、各窓122の下側に横長の長方形状の模様124が描かれているが、これに限らず、外壁面121に付された汚れや皹などであってもよい。
なお、本実施形態において、「平面状」には、平面のみならず、窓や換気口等による若干の凹凸を許容する範囲での平面形状も含まれ、例えば、目視により、又は、既存の画像解析技術により、「平面状」と認識される平面又は平面形状であればよい。
また、以下では、説明の便宜上、測距装置10Aにより、外壁面121にレーザ光が照射されることで外壁面121までの距離が計測されることを前提として説明する。また、以下では、説明の便宜上、第1計測位置に測距ユニット12が位置し、かつ、第1撮像位置に撮像装置14が位置している場合の測距装置10Aの位置を「第1位置」と称する。また、以下では、説明の便宜上、第2計測位置に測距ユニット12が位置し、かつ、第2撮像位置に撮像装置14が位置している場合の測距装置10Aの位置を「第2位置」と称する。
図11に示す撮像位置距離算出処理では、先ず、ステップ200で、取得部110は、測距装置10Aにより第1位置で距離の計測及び撮像が実行されたか否かを判定する。第1位置は、外壁面121にレーザ光が照射可能であり、かつ、外壁面121を含む領域を被写体として撮像可能な位置であればよい。
ステップ200において、測距装置10Aにより第1位置で距離の計測及び撮像が実行されていない場合は、判定が否定されて、ステップ201へ移行する。ステップ200において、測距装置10Aにより第1位置で距離の計測及び撮像が実行された場合は、判定が肯定されて、ステップ202へ移行する。
ステップ201で、取得部110は、撮像位置距離算出処理を終了する条件を満足したか否かを判定する。撮像位置距離算出処理を終了する条件とは、例えば、タッチパネル88により撮像位置距離算出処理を終了する指示が受け付けられたとの条件や、ステップ200の処理が開始されてから肯定判定されることなく第1既定時間が経過したとの条件を指す。なお、第1既定時間とは、例えば、1分を指す。
ステップ201において、撮像位置距離算出処理を終了する条件を満足していない場合は、判定が否定されて、ステップ200へ移行する。ステップ201において、撮像位置距離算出処理を終了する条件を満足した場合は、判定が肯定されて、撮像位置距離算出処理を終了する。
ステップ202で、取得部110は、第1位置で計測された距離、及び、第1位置で撮像が実行されることによって得られた第1撮像画像を示す第1撮像画像信号を取得し、その後、ステップ204へ移行する。なお、第1撮像画像は、第1位置において合焦状態で撮像されて得られた撮像画像である。
ステップ204で、取得部110は、一例として図14に示すように、表示部86に対して、取得した第1撮像画像信号により示される第1撮像画像を表示させ、その後、ステップ206へ移行する。
ステップ206で、取得部110は、ユーザによりタッチパネル88を介して第1撮像画像から注目画素が指定されたか否かを判定する。ここで、注目画素は、上述した第1指定画素に相当する。なお、タッチパネル88は、タッチパネル88に付与されている2次元座標のうちの第1撮像画像に含まれる画素に対応する2次元座標を指定する画素指定情報(本開示の技術に係る第2画素指定情報の一例)を受け付ける。よって、本ステップ206では、タッチパネル88により画素指定情報が受け付けられた場合に注目画素が指定されたと判定する。すなわち、画素指定情報により指定された2次元座標に対応する画素が注目画素とされる。
ステップ206において、ユーザによりタッチパネル88を介して第1撮像画像から注目画素が指定されていない場合は、判定が否定されて、ステップ208へ移行する。ステップ206において、ユーザによりタッチパネル88を介して第1撮像画像から注目画素が指定された場合は、判定が肯定されて、ステップ210へ移行する。
ステップ208で、取得部110は、本撮像位置距離算出処理を終了する条件を満足したか否かを判定する。ステップ208において、撮像位置距離算出処理を終了する条件を満足していない場合は、判定が否定されて、ステップ206へ移行する。ステップ208において、撮像位置距離算出処理を終了する条件を満足した場合は、判定が肯定されて、撮像位置距離算出処理を終了する。
ステップ210で、取得部110は、第1撮像画像においてユーザによりタッチパネル88を介して指定された注目画素126(図14参照)を特定する注目画素座標を取得し、その後、ステップ212へ移行する。なお、ここで、ユーザによりタッチパネル88を介して指定される画素としては、一例として図14に示すように、注目画素126が挙げられる。注目画素126は、一例として図14に示すように、第1撮像画像のうちの外壁面2階中央部窓に相当する画像の正面視左下隅の画素である。外壁面2階中央部窓とは、図13に示す例において、外壁面121に設けられている窓122のうちの、オフィスビル120の2階の中央部の窓122を指す。また、注目画素座標とは、第1撮像画像において注目画素126を特定する2次元座標を指す。
ステップ212で、取得部110は、第1撮像画像のうちの外壁面画像128(図15に示す例のハッチング領域)において特徴的な3画素を特定する3特徴画素座標を取得し、その後、ステップ214へ移行する。なお、ここで言う「特徴的な3画素」は、本開示の技術に係る「複数画素」及び「複数の特徴的な画素」の一例である。
ここで、外壁面画像128とは、第1撮像画像のうちの外壁面121(図13参照)を示す画像を指す。特徴的な3画素は、第1撮像画像内において互いに予め定められた画素数以上離れており、外壁面画像128のうちの模様や建材等に相当する画像の空間周波数等を基に画像解析により既定の規則に従って特定された3点の各々に存在する画素である。例えば、注目画素126を中心とした予め定められた半径で既定される円領域内で最大の空間周波数を有する異なる頂点を示し、かつ、既定条件を満足する3つの画素が特徴的な3画素として抽出される。なお、3特徴画素座標は、上述した複数画素座標に相当する。
図15に示す例において、特徴的な3画素は、第1画素130、第2画素132、及び第3画素134である。第1画素130は、外壁面画像128のうち、外壁面2階中央部窓に相当する画像の正面視左上隅の画素である。第2画素132は、外壁面2階中央部窓に相当する画像の正面視右上隅の画素である。第3画素134は、外壁面3階中央部窓の下部に近接する模様124に相当する画像の正面視左下隅の画素である。なお、外壁面3階中央窓とは、図13に示す例において、外壁面121に設けられている窓122のうちの、オフィスビル120の3階の中央部の窓122を指す。
ステップ214で、導出部112は、距離L、半画角α、射出角度β、及び基準点間距離Mから、数式(2)に基づいて、照射位置座標を算出し、その後、ステップ216へ移行する。本ステップ214の処理で用いられる距離Lとは、第1撮像位置で測距装置10Aにより計測された被写体までの距離を指す。
ステップ216で、導出部112は、一例として図16に示すように、表示部86に対して、距離及び照射位置目印136を第1撮像画像に重畳して表示させ、その後、ステップ218へ移行する。
本ステップ216の処理が実行されることで表示される距離とは、第1撮像位置で測距装置10Aにより計測された距離、すなわち、ステップ214の処理において照射位置座標の算出に用いられた距離Lを指す。図16に示す例では、「133325.0」との数値が第1撮像位置で測距装置10Aにより計測された距離Lに該当し、単位はミリメートルである。
図16に示す例において、照射位置目印136は、ステップ214の処理が実行されることで算出された照射位置座標により特定される位置を示す目印である。
図12に示すステップ218で、取得部110は、測距装置10Aにより第2位置で撮像が実行されたか否かを判定する。第2位置は、測距装置10Aの移動先の位置であり、外壁面121にレーザ光が照射可能であり、かつ、外壁面121を含む領域を被写体として撮像可能な位置であればよい。
ステップ218において、測距装置10Aにより第2位置で撮像が実行されていない場合は、判定が否定されて、ステップ220へ移行する。ステップ218において、測距装置10Aにより第2位置で撮像が実行された場合は、判定が肯定されて、ステップ222へ移行する。
ステップ220で、取得部110は、撮像位置距離算出処理を終了する条件を満足したか否かを判定する。ステップ220において、撮像位置距離算出処理を終了する条件を満足していない場合は、判定が否定されて、ステップ218へ移行する。ステップ220において、撮像位置距離算出処理を終了する条件を満足した場合は、判定が肯定されて、撮像位置距離算出処理を終了する。
ステップ222で、取得部110は、第2位置で撮像が実行されることによって得られた第2撮像画像を示す第2撮像画像信号を取得し、その後、ステップ224へ移行する。なお、第2撮像画像は、第2位置において合焦状態で撮像されて得られた撮像画像である。
ステップ224で、取得部110は、表示部86に対して、取得した第2撮像画像信号により示される第2撮像画像を表示させ、その後、ステップ226へ移行する。
ステップ226で、取得部110は、第2撮像画像に含まれる画素のうち、上記の注目画素126に対応する画素である対応注目画素を特定し、特定した対応注目画素を特定する対応注目画素座標を取得し、その後、ステップ228へ移行する。なお、ここで、対応注目画素座標とは、第2撮像画像において対応注目画素を特定する2次元座標を指す。また、対応注目画素は、第1及び第2撮像画像を解析対象として既存の画像解析を実行することで特定される。なお、対応注目画素は、上述した第2指定画素に相当し、第1撮像画像から注目画素126が特定されると、本ステップ226の処理が実行されることで、第2撮像画像から一意に特定される。
ステップ228で、取得部110は、第2撮像画像のうちの外壁面画像128(図15参照)に対応する外壁面画像において特徴的な3画素を特定し、特定した特徴的な3画素を特定する対応特徴画素座標を取得し、その後、ステップ230へ移行する。なお、ここで言う「特徴的な3画素」は、本開示の技術に係る「複数画素」及び「複数の特徴的な画素」の一例である。また、対応特徴画素座標とは、第2撮像画像において特定した特徴的な3画素を特定する2次元座標を指す。また、対応特徴画素座標は、第2撮像画像において、上記ステップ212の処理で取得された3特徴画素座標に対応する2次元座標でもあり、上述した複数画素座標に相当する。また、第2撮像画像のうちの特徴的な3画素は、上述の対応注目画素の特定方法と同様に、第1及び第2撮像画像を解析対象として既存の画像解析を実行することで特定される。
ステップ230で、導出部112は、3特徴画素座標、対応特徴画素座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法から、数式(3)に示す平面方程式のa,b,cを導出することで、平面方程式により規定される平面の向きを導出する。
ここで、3特徴画素座標を(uL1,vL1),(uL2,vL2),(uL3,vL3)とし、対応特徴画素座標を(uR1,vR1),(uR2,vR2),(uR3,vR3)とすると、第1〜第3特徴画素3次元座標は下記の数式(4)〜(6)で表現される。第1特徴画素3次元座標とは、(uL1,vL1)及び(uR1,vR1)に対応する3次元座標を指す。第2特徴画素3次元座標とは、(uL2,vL2)及び(uR2,vR2)に対応する3次元座標を指す。第3特徴画素3次元座標とは、(uL3,vL3)及び(uR3,vR3)に対応する3次元座標を指す。なお、数式(4)〜(6)では、“vR1”、“vR2”、及び“vR3”は使用されない。
本ステップ230において、導出部112は、数式(4)〜(6)に示す第1〜第3特徴画素3次元座標の各々を数式(3)に代入して得られる等価関係にある3つの数式から数式(3)のa,b,cを最適化することで、数式(3)のa,b,cを導出する。このように、数式(3)のa,b,cが導出されるということは、数式(3)に示す平面方程式により規定される平面の向きが導出されることを意味する。
ステップ232で、導出部112は、ステップ214の処理で導出した照射位置座標に基づいて数式(3)に示す平面方程式を確定し、その後、ステップ234へ移行する。すなわち、本ステップ232において、導出部112は、ステップ230の処理で導出したa,b,c及びステップ214の処理で導出した照射位置座標を数式(3)に代入することで、数式(3)のdを確定する。ステップ230の処理で数式(3)のa,b,cが導出されているので、本ステップ232の処理で数式(3)のdが確定されると、数式(3)に示す平面方程式が確定される。
ステップ234で、導出部112は、注目画素座標、対応注目画素座標、撮像レンズ50の焦点距離、撮像画素60A1の寸法、平面方程式、及び数式(1)に基づいて、撮像位置距離を算出し、その後、ステップ236へ移行する。
ここで、本ステップ234の処理で用いられる注目画素座標とは、ステップ210の処理で取得された注目画素座標を指す。また、本ステップ234の処理で用いられる対応注目画素座標とは、ステップ226の処理で取得された対応注目画素座標を指す。更に、本ステップ234で用いられる平面方程式とは、ステップ232で確定された平面方程式を指す。
よって、本ステップ234では、注目画素座標、対応注目画素座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法が代入された数式(1)の(X,Y,Z)が平面方程式に代入されることで、撮像位置距離である“B”が算出される。
なお、撮像位置距離である“B”は、特徴画素3次元座標とステップ232で確定された平面方程式とに基づいて導出されるようにしてもよい。すなわち、この場合、撮像位置距離である“B”は、ステップ232で確定された平面方程式に特徴画素3次元座標が代入されることによって導出される。ここで言う「特徴画素3次元座標」とは、例えば、第1特徴画素3次元座標を指すが、これに限らず、第2特徴画素3次元座標又は第3特徴画素3次元座標であってもよい。
ステップ236で、制御部114は、一例として図17に示すように、表示部86に対して、ステップ234の処理で算出された撮像位置距離を第2撮像画像に重畳して表示させる。また、ステップ236で、制御部114は、ステップ234の処理で算出された撮像位置距離を既定の記憶領域に記憶し、その後、本撮像位置距離算出処理を終了する。なお、既定の記憶領域の一例としては、一次記憶部102の記憶領域又は二次記憶部104の記憶領域が挙げられる。
なお、図17に示す例では、「144656.1」との数値が、ステップ234の処理で算出された撮像位置距離に該当し、単位はミリメートルである。
次に、3次元座標算出ボタン90Gがオンされた場合にCPU100が3次元座標算出プログラム108を実行することで実現される3次元座標算出処理について図18を参照して説明する。
図18に示す3次元座標算出処理では、先ず、ステップ250で、導出部112は、撮像位置距離算出処理に含まれるステップ234の処理で撮像位置距離が既に算出されているか否かを判定する。ステップ250において、撮像位置距離算出処理に含まれるステップ234の処理で撮像位置距離が算出されていない場合は、判定が否定されて、ステップ258へ移行する。ステップ250において、撮像位置距離算出処理に含まれるステップ234の処理で撮像位置距離が既に算出されている場合は、判定が肯定されて、ステップ252へ移行する。
ステップ252で、導出部112は、指定画素3次元座標の算出を開始する条件(以下、「算出開始条件」という)を満足したか否かを判定する。算出開始条件の一例としては、指定画素3次元座標の算出を開始する指示がタッチパネル88によって受け付けられたとの条件や、撮像位置距離が表示部86に表示されたとの条件等が挙げられる。
ステップ252において、算出開始条件を満足していない場合は、判定が否定されて、ステップ258へ移行する。ステップ252において、算出開始条件を満足した場合は、判定が肯定されて、ステップ254へ移行する。
ステップ254で、導出部112は、注目画素座標、対応注目画素座標、撮像位置距離、撮像レンズ50の焦点距離、撮像画素60A1の寸法、及び数式(1)に基づいて、指定画素3次元座標を算出し、その後、ステップ256へ移行する。
ここで、本ステップ254の処理で用いられる注目画素座標とは、撮像位置距離算出処理に含まれるステップ210の処理で取得された注目画素座標を指す。また、本ステップ254の処理で用いられる対応注目画素座標とは、撮像位置距離算出処理に含まれるステップ226の処理で取得された対応注目画素座標を指す。また、本ステップ254の処理で用いられる撮像位置距離とは、撮像位置距離算出処理に含まれるステップ234の処理で導出された撮像位置距離を指す。
よって、本ステップ254では、注目画素座標、対応注目画素座標、撮像位置距離、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法が数式(1)に代入されることで、指定画素3次元座標が算出される。
ステップ256で、制御部114は、一例として図19に示すように、表示部86に対して、ステップ254の処理で算出された指定画素3次元座標を第2撮像画像に重畳して表示させる。また、ステップ256で、制御部114は、ステップ254の処理で算出された指定画素3次元座標を既定の記憶領域に記憶し、その後、本3次元座標算出処理を終了する。なお、既定の記憶領域の一例としては、一次記憶部102の記憶領域又は二次記憶部104の記憶領域が挙げられる。
なお、図19に示す例では、(20161,50134,136892)が、ステップ254の処理で算出された指定画素3次元座標に該当する。また、図19に示す例では、指定画素3次元座標が注目画素126に近接して表示されている。なお、注目画素126は、他の画素と区別可能に強調表示されるようにしてもよい。
ステップ258で、導出部112は、3次元座標算出処理を終了する条件を満足したか否かを判定する。3次元座標算出処理を終了する条件の一例としては、タッチパネル88により3次元座標算出処理を終了する指示が受け付けられたとの条件が挙げられる。3次元座標算出処理を終了する条件の他の例としては、ステップ250で判定が否定されてからステップ250で判定が肯定されることなく第2既定時間が経過したとの条件等が挙げられる。なお、第2既定時間とは、例えば、30分を指す。
ステップ258において、本3次元座標算出処理を終了する条件を満足していない場合は、判定が否定されて、ステップ250へ移行する。ステップ258において、本3次元座標算出処理を終了する条件を満足した場合は、判定が肯定されて、本3次元座標算出処理を終了する。
以上説明したように、測距装置10Aでは、取得部110により、第1撮像画像、第2撮像画像、及び被写体までの距離が取得される。また、ユーザによりタッチパネル88を介して第1撮像画像において注目画素126が指定され、取得部110により注目画素座標が取得される(ステップ210)。また、取得部110により対応注目画素座標が取得される(ステップ226)。また、取得部110により3特徴画素座標が取得される(ステップ212)。また、取得部110により対応特徴画素座標が取得される(ステップ228)。また、導出部112により照射位置座標が算出される(ステップ214)。そして、導出部112により、注目画素座標、対応注目画素座標、3特徴画素座標、対応特徴画素座標、照射位置座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて、撮像位置距離が導出される。
従って、測距装置10Aによれば、特定可能な特徴的な箇所にレーザ光が照射されない場合であっても、被写体が第1撮像位置及び第2撮像位置の各々から撮像されて得られた第1撮像画像及び第2撮像画像に基づいて撮像位置距離を導出することができる。
また、測距装置10Aでは、撮像位置距離算出処理で算出された撮像位置距離に基づいて、指定画素3次元座標が算出される(図18参照)。従って、測距装置10Aによれば、特定可能な特徴的な箇所にレーザ光が照射されない場合であっても、指定画素3次元座標を導出することができる。
また、測距装置10Aでは、指定画素3次元座標は、注目画素座標、対応注目画素座標、撮像位置距離、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて規定されている(数式(1)参照)。従って、測距装置10Aによれば、指定画素3次元座標が注目画素座標、対応注目画素座標、撮像位置距離、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて規定されない場合に比べ、指定画素3次元座標を高精度に導出することができる。
また、測距装置10Aでは、導出部112により、3特徴画素座標、対応特徴画素座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて、数式(3)に示す平面方程式により規定される平面の向きが導出される(ステップ230)。また、導出部112により、平面の向きとステップ214の処理で算出された照射位置座標とに基づいて数式(3)に示す平面方程式が確定される(ステップ232)。そして、導出部112により、確定された平面方程式、注目画素座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて撮像位置距離が算出される(ステップ234)。従って、測距装置10Aによれば、特定可能な特徴的な箇所にレーザ光が照射されない場合に平面方程式を用いずに撮像位置距離を導出する場合に比べ、撮像位置距離を高精度に導出することができる。
また、測距装置10Aでは、取得部110により3特徴画素座標が取得され(ステップ212)、取得部110により対応特徴画素座標が取得される(ステップ228)。そして、導出部112により、注目画素座標、対応注目画素座標、3特徴画素座標、対応特徴画素座標、照射位置座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて撮像位置距離が算出される(ステップ230〜234)。従って、測距装置10Aによれば、3特徴画素座標及び対応特徴画素座標を取得するにあたって特徴的な3画素をユーザに指定させる場合に比べ、少ない操作数で、3特徴画素座標及び対応特徴画素座標を基に撮像位置距離を導出することができる。
また、測距装置10Aでは、画素指定情報がタッチパネル88によって受け付けられ、受け付けられた画素指定情報により指定された画素が注目画素126とされ、取得部110により、注目画素座標が取得される(ステップ210)。また、取得部110により、注目画素126に対応する画素である対応注目画素が特定される。そして、取得部110により、対応画素注目画素を特定する対応注目画素座標が取得される(ステップ226)。従って、測距装置10Aによれば、第1撮像画像及び第2撮像画像の両方に関する指定画素がユーザにより指定される場合に比べ、第1撮像画像及び第2撮像画像の両方に関する指定画素を迅速に決めることができる。
また、測距装置10Aには、測距ユニット12及び測距制御部68が含まれ、測距ユニット12及び測距制御部68によって計測された被写体までの距離が取得部110により取得される。従って、測距装置10Aによれば、測距ユニット12及び測距制御部68を有しない場合に比べ、照射位置座標の導出に用いる被写体までの距離を容易に取得することができる。
また、測距装置10Aには、撮像装置14が含まれ、撮像装置14により被写体が撮像されて得られた第1撮像画像及び第2撮像画像が取得部110により取得される。従って、測距装置10Aによれば、撮像装置14を有しない場合に比べ、注目画素座標、3特徴画素座標、対応注目画素座標、及び対応特徴画素座標を得るために用いる第1撮像画像及び第2撮像画像を容易に取得することができる。
更に、測距装置10Aでは、導出部112による導出結果が表示部86によって表示される。従って、測距装置10Aによれば、導出部112による導出結果が表示部86によって表示されない場合に比べ、導出部112による導出結果をユーザに容易に認識させることができる。
なお、上記第1実施形態では、3特徴画素座標を例示したが、本開示の技術はこれに限定されるものでない。例えば、3特徴画素座標に代えて、特徴的な4画素以上の既定数の画素の各々を特定する2次元座標を採用してもよい。
また、上記第1実施形態では、注目画素座標が第1撮像画像上の座標から取得され、対応注目画素座標が第2撮像画像上の座標から取得される場合を例示したが、本開示の技術はこれに限定されるものではない。例えば、注目画素座標が第2撮像画像上の座標から取得され、対応注目画素座標が第1撮像画像上の座標から取得されるようにしてもよい。
また、上記第1実施形態では、3特徴画素座標が第1撮像画像上の座標から取得され、対応特徴画素座標が第2撮像画像上の座標から取得される場合を例示したが、本開示の技術はこれに限定されるものではない。例えば、3特徴画素座標が第2撮像画像上の座標から取得され、対応特徴画素座標が第1撮像画像上の座標から取得されるようにしてもよい。
また、上記第1実施形態では、3特徴画素座標として、第1画素130、第2画素132、及び第3画素134の各々を特定する2次元座標が取得部110によって取得される場合を例示したが、本開示の技術はこれに限定されるものではない。例えば、図20に示すように、第1画素130A、第2画素132A、及び第3画素134Aの各々を特定する2次元座標が取得部110によって取得されるようにしてもよい。第1画素130A、第2画素132A、及び第3画素134Aは、外壁面画像128において取り囲まれる面積が最大となる3画素である。なお、3画素に限らず、外壁面画像128において取り囲まれる面積が最大となる3画素以上の既定数の画素であればよい。
このように、図20に示す例では、外壁面画像128において取り囲まれる面積が最大となる3画素が特徴的な3画素として特定され、特定された3画素に関する2次元座標が3特徴画素座標として取得部110によって取得される。また、取得部110により、3特徴画素座標に対応する対応特徴画素座標も取得される。従って、測距装置10Aによれば、特徴的な3画素として、取り囲む面積が最大とならない複数の画素を特定する3特徴画素座標及び対応特徴画素座標が取得される場合に比べ、撮像位置距離を高精度に導出することができる。
また、上記第1実施形態では、3次元座標算出ボタン90Gがオンされた場合に撮像位置距離導出処理が実現される場合について説明したが、本発明はこれに限定されるものではない。例えば、撮像位置距離算出ボタン90Fがオンされた場合に撮像位置距離導出処理が実行されるようにしてもよい。上記第1実施形態で説明した撮像位置距離導出処理は、3次元座標の導出を最終的な目的とした場合の一例である。
そのため、3次元座標の導出で要する注目画素座標及び対応画素座標を撮像位置距離導出処理で取得しているが、撮像位置距離の導出のみが目的の場合、撮像位置距離導出処理での注目画素座標及び対応画素座標の取得は不要である。よって、CPU100は、撮像位置距離算出ボタン90Fがオンされた場合、注目画素座標及び対応注目画素座標を取得せずに撮像位置距離を導出し、次いで、3次元座標算出ボタン90Gがオンされた場合に、注目画素座標及び対応注目画素座標を取得してもよい。この場合、CPU100は、例えば、図34に示す3次元座標導出処理のステップ252の処理とステップ254の処理との間で注目画素座標及び対応注目画素座標を取得し、取得した注目画素座標及び対応注目画素座標をステップ254の処理で用いればよい。
[第2実施形態]
上記第1実施形態では、外壁面画像128の全体を対象として3特徴画素座標が取得される場合について説明したが、本第2実施形態では、外壁面画像128の一部を対象として3特徴画素座標が取得される場合について説明する。なお、本第2実施形態では、上記第1実施形態で説明した構成要素と同一の構成要素については同一の符号を付し、その説明を省略する。
本第2実施形態に係る測距装置10Bは、一例として図6に示すように、測距装置10Aに比べ、二次記憶部104に撮像位置距離算出プログラム106に代えて撮像位置距離算出プログラム150が記憶されている点が異なる。
CPU100は、撮像位置距離算出プログラム150及び3次元座標算出プログラム108を実行することで、取得部154、導出部112、並びに、本開示の技術に係る第1制御部及び第2制御部の一例である制御部156として動作する(図9参照)。
取得部154は、上記第1実施形態で説明した取得部110に対応し、制御部156は、上記第1実施形態で説明した制御部114に対応する。なお、本第2実施形態では、説明の便宜上、取得部154及び制御部156については、上記第1実施形態で説明した取得部110及び制御部114と異なる部分について説明する。
制御部156は、表示部86に対して第1撮像画像を表示させ、かつ、表示領域内で本開示の技術に係る対応領域の一例である外壁面画像128を他の領域と区別可能に表示させる制御を行う。タッチパネル88は、表示部86に外壁面画像128が表示された状態で座標取得対象領域158(図22参照)を指定する領域指定情報を受け付ける。ここで、座標取得対象領域158とは、外壁面画像128のうちの一部の閉領域を指す。領域指定情報とは、座標取得対象領域158を指定する情報を指す。
取得部154は、タッチパネル88によって受け付けられた領域指定情報により指定された座標取得対象領域158から、3特徴画素座標を取得する。
次に、測距装置10Bの本開示の技術に係る部分の作用として、CPU100が撮像位置距離算出プログラム150を実行することで実現される撮像位置距離算出処理について図21を参照して説明する。なお、図11に示すフローチャートと同一のステップについては、同一のステップ番号を付して、その説明を省略する。
図21に示すフローチャートは、図11に示すフローチャートに比べ、ステップ212に代えて、ステップ300〜312を有する点が異なる。
図21に示すステップ300で、制御部156は、第1撮像画像から外壁面画像128(図15参照)を特定し、その後、ステップ302へ移行する。
ステップ302で、制御部156は、表示部86に対して、ステップ300の処理で特定した外壁面画像128を、第1撮像画像の表示領域内の他の領域と区別可能に強調して表示させ、その後、ステップ304へ移行する。
ステップ304で、取得部154は、タッチパネル88によって領域指定情報が受け付けられ、受け付けられた領域指定情報により座標取得対象領域158が指定されたか否かを判定する。
ステップ304において、領域指定情報により座標取得対象領域158が指定されていない場合は、判定が否定されて、ステップ306へ移行する。ステップ304において、領域指定情報により座標取得対象領域158が指定された場合は、判定が肯定されて、ステップ308へ移行する。
ステップ306で、取得部154は、本撮像位置距離算出処理を終了する条件を満足したか否かを判定する。ステップ306において、本撮像位置距離算出処理を終了する条件を満足していない場合は、判定が否定されて、ステップ304へ移行する。ステップ306において、本撮像位置距離算出処理を終了する条件を満足した場合は、判定が肯定されて、本撮像位置距離算出処理を終了する。
ステップ308で、取得部154は、タッチパネル88によって受け付けられた領域指定情報により指定された座標取得対象領域158に、上記第1実施形態で説明した特徴的な3画素が存在するか否かを判定する。
一例として図22に示すように、タッチパネル88によって受け付けられた領域指定情報により座標取得対象領域158が指定された場合、座標取得対象領域158には、模様124(図13参照)を示す模様画像160が含まれている。
図23に示す例では、座標取得対象領域158に、特徴的な3画素として、第1画素162、第2画素164、及び第3画素166が含まれている。図23に示す例において、第1画素162は、模様画像160の正面視左上隅の画素であり、第2画素164は、模様画像160の正面視左下隅の画素であり、第3画素166は、模様画像160の正面視右下隅の画素である。
ステップ308において、タッチパネル88によって受け付けられた領域指定情報により指定された座標取得対象領域に特徴的な3画素が存在しない場合は、判定が否定されて、ステップ310へ移行する。ステップ308において、タッチパネル88によって受け付けられた領域指定情報により指定された座標取得対象領域に特徴的な3画素が存在する場合は、判定が肯定されて、ステップ312へ移行する。なお、本ステップ308において肯定判定される場合とは、例えば、図22に示すように、タッチパネル88によって受け付けられた領域指定情報により模様画像160を含む領域が指定された場合を指す。
ステップ310で、制御部156は、表示部86に対して再指定メッセージを第1撮像画像の既定領域に重畳して表示させ、その後、ステップ304へ移行する。再指定メッセージとは、例えば、「特徴的な模様や建材等が含まれる閉領域を指定して下さい」とのメッセージを指す。なお、ここでは、再指定メッセージが可視表示される場合を例示しているが、本開示の技術はこれに限定されるものではなく、音声再生装置(図示省略)による音声の出力等の可聴表示やプリンタによる印刷物の出力等の永久可視表示を可視表示に代えて行ってもよいし、併用してもよい。
ステップ312で、取得部154は、タッチパネル88によって受け付けられた領域指定情報により指定された座標取得対象領域において特徴的な3画素を特定する3特徴画素座標を取得し、その後、ステップ214へ移行する。なお、図23に示す例では、本ステップ312の処理が実行されることで、第1画素162、第2画素164、及び第3画素166の各々を特定する2次元座標が3特徴画素座標として取得部154によって取得される。
以上説明したように、測距装置10Bでは、第1撮像画像において外壁面画像128が他の領域と区別可能に表示部86に表示される。また、タッチパネル88によって領域指定情報が受け付けられ、受け付けられた領域指定情報により、外壁面画像128の一部である座標取得対象領域が指定される。そして、取得部154により、座標取得対象領域に特徴的な3画素が含まれている場合、特徴的な3画素を特定する3特徴画素座標が取得され(ステップ312)、3特徴画素座標に対応する対応特徴画素座標も取得される(ステップ228)。従って、測距装置10Bによれば、外壁面画像128の全体を対象として3特徴画素座標及び対応特徴画素座標を取得する場合に比べ、小さな負荷で3特徴画素座標及び対応特徴画素座標を取得することができる。
[第3実施形態]
上記各実施形態では、画像解析により特定の画像内で特徴的な3画素が探索されて特定される場合について説明したが、本第3実施形態では、特徴的な3画素がタッチパネル88に対する操作に従って指定される場合について説明する。なお、本第3実施形態では、上記各実施形態で説明した構成要素と同一の構成要素については同一の符号を付し、その説明を省略する。
本第3実施形態に係る測距装置10Cは、測距装置10Aに比べ、二次記憶部104に撮像位置距離算出プログラム106に代えて撮像位置距離算出プログラム168が記憶されている点が異なる。
CPU100は、撮像位置距離算出プログラム168及び3次元座標算出プログラム108を実行することで、一例として図9に示すように、取得部172、導出部174、及び制御部176として動作する。
取得部172は、上記各実施形態で説明した取得部110(154)に対応し、導出部174は、上記第1実施形態で説明した導出部112に対応し、制御部176は、上記各実施形態で説明した制御部114(156)に対応する。なお、本第3実施形態では、説明の便宜上、取得部172、導出部174、及び制御部176については、上記各実施形態で説明した取得部110(154)、導出部112、及び制御部114(156)と異なる部分について説明する。
タッチパネル88は、第1撮像画像及び第2撮像画像の各々が表示部86に表示されている場合、上記第1実施形態で説明した画素指定情報(本開示の技術に係る第1画素指定情報)を受け付ける。また、タッチパネル88は、第2撮像画像が表示部86に表示されている場合も、上記第1実施形態で説明した画素指定情報(本開示の技術に係る第1画素指定情報)を受け付ける。
取得部110は、第1撮像画像が表示部86に表示されている場合、タッチパネル88によって受け付けられた画素指定情報により指定された特徴的な3画素の各々を特定する2次元座標である第1特徴画素座標を取得する。第1特徴画素座標は、上記第1実施形態で説明した3特徴画素座標に対応する2次元座標である。
取得部110は、第2撮像画像が表示部86に表示されている場合、タッチパネル88によって受け付けられた画素指定情報により指定された特徴的な3画素の各々を特定する2次元座標である第2特徴画素座標を取得する。第2特徴画素座標は、上記第1実施形態で説明した対応特徴画素座標に対応する2次元座標である。
導出部174は、注目画素座標、対応注目画素座標、第1特徴画素座標、第2特徴画素座標、照射位置座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて、撮像位置距離を導出する。
次に、測距装置10Cの本開示の技術に係る部分の作用として、CPU100が撮像位置距離算出プログラム150を実行することで実現される撮像位置距離算出処理について図24及び図25を参照して説明する。なお、図12及び図21に示すフローチャートと同一のステップについては、同一のステップ番号を付して、その説明を省略する。
図24に示すフローチャートは、図21に示すフローチャートに比べ、ステップ304に代えてステップ349を有する点が異なる。また、図24に示すフローチャートは、図21に示すフローチャートに比べ、ステップ308に代えてステップ350,352を有する点が異なる。また、図24に示すフローチャートは、図21に示すフローチャートに比べ、ステップ310に代えてステップ353を有する点が異なる。また、図24に示すフローチャートは、図21に示すフローチャートに比べ、ステップ312に代えてステップ354を有する点が異なる。更に、図25に示すフローチャートは、図12に示すフローチャートに比べ、ステップ228,230に代えてステップ356〜372を有する点が異なる。
ステップ349で、取得部154は、タッチパネル88によって領域指定情報が受け付けられ、受け付けられた領域指定情報により第1座標取得対象領域178(図22参照)が指定されたか否かを判定する。なお、第1座標取得対象領域178は、上記第2実施形態で説明した座標取得対象領域に対応する領域である。
ステップ349において、領域指定情報により第1座標取得対象領域178が指定されていない場合は、判定が否定されて、ステップ306へ移行する。ステップ349において、領域指定情報により第1座標取得対象領域178が指定された場合は、判定が肯定されて、ステップ350へ移行する。
ステップ350で、制御部176は、表示部86に対して、タッチパネル88で受け付けられた領域指定情報により指定された第1座標取得対象領域178を、第1撮像画像の表示領域内の他の領域と区別可能に強調して表示させ、その後、ステップ352へ移行する。
ステップ352で、取得部172は、タッチパネル88によって受け付けられた画素指定情報により特徴的な3画素が指定されたか否かを判定する。
一例として図22に示すように、タッチパネル88によって受け付けられた領域指定情報により第1座標取得対象領域178が指定された場合、第1座標取得対象領域178には、模様画像160が含まれている。この場合、特徴的な3画素とは、一例として図23に示すように、模様画像160の3隅に存在する画素である第1画素162、第2画素164、及び第3画素166を指す。
ステップ352において、タッチパネル88によって受け付けられた画素指定情報により特徴的な3画素が指定されていない場合は、判定が否定されて、ステップ353へ移行する。ステップ352において、タッチパネル88によって受け付けられた画素指定情報により特徴的な3画素が指定された場合は、判定が肯定されて、ステップ354へ移行する。
ステップ353で、制御部176は、表示部86に対して再指定メッセージを第1撮像画像の既定領域に重畳して表示させ、その後、ステップ349へ移行する。本第3実施形態に係る再指定メッセージとは、例えば、「特徴的な模様や建材等が含まれる閉領域を指定した上で、特徴的な3画素を指定して下さい」とのメッセージを指す。
ステップ354で、取得部172は、タッチパネル88によって受け付けられた画素指定情報により指定された特徴的な3画素を特定する第1特徴画素座標を取得し、その後、ステップ214へ移行する。なお、図23に示す例では、本ステップ354の処理が実行されることで、第1画素162、第2画素164、及び第3画素166の各々を特定する2次元座標が第1特徴画素座標として取得部172によって取得される。
図25に示すステップ356で、制御部176は、第2撮像画像から外壁面画像128に対応する外壁面画像である対応外壁面画像を特定し、その後、ステップ358へ移行する。
ステップ358で、制御部176は、表示部86に対して、ステップ356の処理で特定した対応外壁面画像を、第2撮像画像の表示領域内の他の領域と区別可能に強調して表示させ、その後、ステップ360へ移行する。
ステップ360で、取得部172は、タッチパネル88によって領域指定情報が受け付けられ、受け付けられた領域指定情報により第2座標取得対象領域が指定されたか否かを判定する。なお、第2座標取得対象領域は、第2撮像画像において、第1座標取得対象領域178(図23参照)に対応する領域としてユーザによってタッチパネル88を介して指定された領域である。
ステップ360において、領域指定情報により第2座標取得対象領域が指定されていない場合は、判定が否定されて、ステップ362へ移行する。ステップ360において、領域指定情報により第2座標取得対象領域が指定された場合は、判定が肯定されて、ステップ364へ移行する。
ステップ362で、取得部172は、本撮像位置距離算出処理を終了する条件を満足したか否かを判定する。ステップ362において、本撮像位置距離算出処理を終了する条件を満足していない場合は、判定が否定されて、ステップ360へ移行する。ステップ362において、本撮像位置距離算出処理を終了する条件を満足した場合は、判定が肯定されて、本撮像位置距離算出処理を終了する。
ステップ364で、制御部176は、表示部86に対して、タッチパネル88で受け付けられた領域指定情報により指定された第2座標取得対象領域を、第2撮像画像の表示領域内の他の領域と区別可能に強調して表示させ、その後、ステップ366へ移行する。
ステップ366で、取得部172は、タッチパネル88によって受け付けられた画素指定情報により特徴的な3画素が指定されたか否かを判定する。
タッチパネル88によって受け付けられた領域指定情報により第2座標取得対象領域が指定された場合、第2座標取得対象領域には、模様画像160に対応する模様画像が含まれている。この場合、特徴的な3画素とは、第2撮像画像において、模様画像160に対応する模様画像の3隅に存在する画素である。模様画像160に対応する模様画像の3隅に存在する画素とは、例えば、第2撮像画像において、第1画素162に対応する画素、第2画素164に対応する画素、及び第3画素に対応する画素を指す。
ステップ366において、タッチパネル88によって受け付けられた画素指定情報により特徴的な3画素が指定されていない場合は、判定が否定されて、ステップ368へ移行する。ステップ366において、タッチパネル88によって受け付けられた画素指定情報により特徴的な3画素が指定された場合は、判定が肯定されて、ステップ370へ移行する。
ステップ368で、制御部176は、表示部86に対して、本第3実施形態に係る再指定メッセージを第2撮像画像の既定領域に重畳して表示させ、その後、ステップ360へ移行する。
ステップ370で、取得部172は、タッチパネル88によって受け付けられた画素指定情報により指定された特徴的な3画素を特定する第2特徴画素座標を取得し、その後、ステップ372へ移行する。なお、本ステップ370では、例えば、第2撮像画像において、第1画素162に対応する画素、第2画素164に対応する画素、及び第3画素166に対応する画素の各々を特定する2次元座標が第2特徴画素座標として取得部172によって取得される。
ステップ372で、導出部174は、第1特徴画素座標、第2特徴画素座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法から、数式(3)に示す平面方程式のa,b,cを導出することで、平面方程式により規定される平面の向きを導出する。なお、本ステップ372の処理で用いられる第1特徴画素座標は、ステップ354の処理で取得された第1特徴画素座標であり、上記第1実施形態で説明した3特徴画素座標に相当する。また、本ステップ372の処理で用いられる第2特徴画素座標は、ステップ370の処理で取得された第2特徴画素座標であり、上記第1実施形態で説明した対応特徴画素座標に相当する。
以上説明したように、測距装置10Cでは、第1撮像画像においてタッチパネル88を介して特徴的な3画素が指定され、指定された特徴的な3画素を特定する第1特徴画素座標が取得部172により取得される(ステップ354)。また、第2撮像画像においてタッチパネル88を介して、第1撮像画像の特徴的な3画素に対応する特徴的な3画素が指定される(ステップ366:Y)。また、第2撮像画像においてタッチパネル88を介して指定された特徴的な3画素を特定する第2特徴画素座標が取得部172により取得される(ステップ370)。そして、導出部174により、注目画素座標、対応注目画素座標、第1特徴画素座標、第2特徴画素座標、焦点位置座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて、撮像位置距離が算出される。従って、測距装置10Cによれば、ユーザの意思に従って取得された第1特徴画素座標及び第2特徴画素座標を基に撮像位置距離を算出することができる。
[第4実施形態]
上記各実施形態では、第1位置及び第2位置のうち、第1位置でのみ測距が行われる場合について説明したが、本第4実施形態では、第2位置でも測距が行われる場合について説明する。なお、本第4実施形態では、上記各実施形態で説明した構成要素と同一の構成要素については同一の符号を付し、その説明を省略する。
本第4実施形態に係る測距装置10Dは、測距装置10Aに比べ、二次記憶部104に撮像位置距離算出プログラム106に代えて撮像位置距離算出プログラム180が記憶されている点が異なる。また、測距装置10Dは、測距装置10Aに比べ、二次記憶部104に3次元座標算出プログラム108に代えて3次元座標算出プログラム181が記憶されている点が異なる。
CPU100は、撮像位置距離算出プログラム180及び3次元座標算出プログラム181を実行することで、一例として図9に示すように、取得部182、導出部184、及び制御部185として動作する。
取得部182は、上記第2実施形態で説明した取得部154に対応し、導出部184は、上記第1実施形態で説明した導出部112に対応し、制御部185は、上記第2実施形態で説明した制御部156に対応する。なお、本第4実施形態では、説明の便宜上、取得部182については、上記第2実施形態で説明した取得部154と異なる部分について説明する。また、本第4実施形態では、説明の便宜上、導出部184については、上記第1実施形態で説明した導出部112と異なる部分について説明する。更に、本第4実施形態では、説明の便宜上、制御部185については、上記第2実施形態で説明した制御部156と異なる部分について説明する。
取得部182は、取得部154に比べ、参照用距離を更に取得する。ここで言う「参照用距離」とは、第2計測位置の測距ユニット12により射出されたレーザ光を基に計測された距離を指す。
導出部184は、注目画素座標、3特徴画素座標、参照用照射位置座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて、第1撮像位置と第2撮像位置との距離である参照用撮像位置距離を導出する。そして、導出部184は、導出した参照用撮像位置距離を参照して撮像位置距離を調整することで、第1撮像位置と第2撮像位置との距離として最終的に採用される最終撮像位置距離を導出する。
また、導出部184は、導出した最終撮像位置距離に基づいて指定画素3次元座標を導出する。本第4実施形態に係る指定画素3次元座標は、本開示の技術に係る最終指定画素実空間座標の一例である。最終指定画素実空間座標とは、本開示の技術に係る指定画素の一例である注目画素(図21に示すステップ206参照)の実空間上での座標である3次元座標として最終的に採用される3次元座標を指す。
次に、測距装置10Dの本開示の技術に係る部分の作用として、CPU100が撮像位置距離算出プログラム180を実行することで実現される撮像位置距離算出処理について図26を参照して説明する。なお、図12に示すフローチャートと同一のステップについては、同一のステップ番号を付して、その説明を省略する。
図26に示すフローチャートは、図12に示すフローチャートに比べ、ステップ218,222に代えてステップ400,402を有する点が異なる。また、図26に示すフローチャートは、図12に示すフローチャートに比べ、ステップ232〜236に代えてステップ404〜416を有する点が異なる。また、図26に示すフローチャートは、図24に示すフローチャートの続きでもある。
図26に示すステップ400で、取得部182は、測距装置10Dにより第2位置で距離の計測及び撮像が実行されたか否かを判定する。ステップ400において、測距装置10Dにより第2位置で距離の計測及び撮像が実行されていない場合は、判定が否定されて、ステップ220へ移行する。ステップ400において、測距装置10Dにより第2位置で距離の計測及び撮像が実行された場合は、判定が肯定されて、ステップ402へ移行する。
ステップ402で、取得部182は、第2位置で計測された距離である参照用距離、及び、第2位置で撮像が実行されることによって得られた第2撮像画像を示す第2撮像画像信号を取得し、その後、ステップ224へ移行する。
ステップ404で、導出部184は、ステップ214の処理で算出した照射位置座標に基づいて数式(3)に示す平面方程式である第1平面方程式を確定し、その後、ステップ406へ移行する。
ステップ406で、導出部184は、注目画素座標、対応注目画素座標、撮像レンズ50の焦点距離、撮像画素60A1の寸法、第1平面方程式、及び数式(1)に基づいて、撮像位置距離を算出し、その後、ステップ408へ移行する。
ステップ408で、導出部184は、ステップ402の処理で取得部182によって取得された参照用距離、半画角α、射出角度β、及び基準点間距離Mから、数式(2)に基づいて、参照用照射位置座標を算出し、その後、ステップ410へ移行する。なお、本ステップ408の処理で用いられる参照用距離は、上記第1実施形態で説明した距離Lに対応する距離である。
ステップ410で、導出部184は、ステップ408の処理で導出した参照用照射位置座標に基づいて数式(3)に示す平面方程式である第2平面方程式を確定し、その後、ステップ412へ移行する。すなわち、本ステップ410において、導出部184は、ステップ230の処理で導出したa,b,c及びステップ408の処理で導出した参照用照射位置座標を数式(3)に代入することで、数式(3)のdを確定する。ステップ230の処理で数式(3)のa,b,cが導出されているので、本ステップ410の処理で数式(3)のdが確定されると、第2平面方程式が確定される。
ステップ412で、導出部184は、注目画素座標、対応注目画素座標、撮像レンズ50の焦点距離、撮像画素60A1の寸法、第2平面方程式、及び数式(1)に基づいて、参照用撮像位置距離を算出し、その後、ステップ414へ移行する。なお、参照用撮像位置距離は、数式(1)に示す“B”に相当し、注目画素座標、対応注目画素座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法が代入された数式(1)の(X,Y,Z)が第2平面方程式に代入されることで算出される。
ステップ414で、導出部184は、ステップ412の処理で算出した参照用撮像位置距離を参照して、ステップ406の処理で算出した撮像位置距離を調整することで、最終撮像位置距離を算出し、その後、ステップ416へ移行する。ここで、撮像位置距離を調整するとは、例えば、撮像位置距離及び参照用撮像位置距離の平均値を求めること、撮像位置距離及び参照用撮像位置距離の平均値に第1調整用係数を乗じること、又は第2調整用係数を撮像位置距離に乗じること指す。
なお、第1調整用係数及び第2調整用係数は、何れも、例えば、参照用撮像位置距離に応じて一意に定まる係数である。第1調整用係数は、例えば、参照用撮像位置距離と第1調整用係数とが予め対応付けられた対応テーブル、又は、参照用撮像位置距離が独立変数とされ、第1調整用係数が従属変数とされた演算式から導出される。第2調整用係数も同様に導出される。対応テーブルや演算式は、測距装置10Dの出荷前の段階で、測距装置10Dの実機による試験や、測距装置10Dの設計仕様等に基づくコンピュータ・シミュレーション等の結果から導き出された導出用テーブル又は演算式から導出される。
よって、最終撮像位置距離の一例としては、撮像位置距離及び参照用撮像位置距離の平均値、撮像位置距離及び参照用撮像位置距離の平均値に第1調整用係数を乗じて得た値、又は撮像位置距離に第2調整用係数を乗じて得た値が挙げられる。
ステップ416で、制御部185は、表示部86に対して、一例として図27に示すように、ステップ414の処理で算出された最終撮像位置距離を第2撮像画像に重畳して表示させる。また、ステップ416で、制御部185は、ステップ414の処理で算出された最終撮像位置距離を既定の記憶領域に記憶し、その後、本撮像位置距離算出処理を終了する。
次に、3次元座標算出ボタン90Gがオンされた場合にCPU100が3次元座標算出プログラム181を実行することで実現される3次元座標算出処理について図28を参照して説明する。
図28に示す3次元座標算出処理では、先ず、ステップ450で、導出部184は、撮像位置距離算出処理に含まれるステップ414の処理で最終撮像位置距離が既に算出されているか否かを判定する。ステップ450において、撮像位置距離算出処理に含まれるステップ414の処理で最終撮像位置距離が算出されていない場合は、判定が否定されて、ステップ458へ移行する。ステップ450において、撮像位置距離算出処理に含まれるステップ414の処理で最終撮像位置距離が既に算出されている場合は、判定が肯定されて、ステップ458へ移行する。
ステップ452で、導出部184は、算出開始条件を満足したか否かを判定する。ステップ452において、算出開始条件を満足していない場合は、判定が否定されて、ステップ458へ移行する。ステップ452において、算出開始条件を満足した場合は、判定が肯定されて、ステップ454へ移行する。
ステップ454で、導出部184は、注目画素座標、対応注目画素座標、最終撮像位置距離、撮像レンズ50の焦点距離、撮像画素60A1の寸法、及び数式(1)に基づいて、指定画素3次元座標を算出し、その後、ステップ456へ移行する。
なお、本ステップ454では、注目画素座標、対応注目画素座標、最終撮像位置距離、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法が数式(1)に代入されることで、指定画素3次元座標が算出される。
ステップ456で、制御部185は、一例として図29に示すように、表示部86に対して、ステップ454の処理で算出された指定画素3次元座標を第2撮像画像に重畳して表示させる。また、ステップ456で、制御部185は、ステップ454の処理で算出された指定画素3次元座標を既定の記憶領域に記憶し、その後、本3次元座標算出処理を終了する。
なお、図29に示す例では、(20160,50132,137810)が、ステップ454の処理で算出された指定画素3次元座標に該当する。また、図29に示す例では、指定画素3次元座標が注目画素126に近接して表示されている。
ステップ458で、導出部112は、3次元座標算出処理を終了する条件を満足したか否かを判定する。ステップ458において、3次元座標算出処理を終了する条件を満足していない場合は、判定が否定されて、ステップ450へ移行する。ステップ458において、3次元座標算出処理を終了する条件を満足した場合は、判定が肯定されて、3次元座標算出処理を終了する。
以上説明したように、測距装置10Dでは、第2位置から被写体までの距離が計測され、計測された距離である参照用距離が取得部182により取得される(ステップ402)。また、導出部184により、参照用距離に基づいて参照用照射位置座標が算出される(ステップ408)。また、導出部184により、注目画素座標、対応注目画素座標、3特徴画素座標、対応特徴画素座標、参照用照射位置座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて、参照用撮像位置距離が算出される(ステップ406)。そして、導出部184により、参照用撮像位置距離が参照されて撮像位置距離が調整されることで、最終撮像位置距離が算出される(ステップ414)。従って、測距装置10Dによれば、参照用撮像位置距離を用いない場合に比べ、第1撮像位置と第2撮像位置との距離を高精度に算出することができる。
また、測距装置10Dでは、撮像位置距離算出処理で算出された最終撮像位置距離に基づいて、指定画素3次元座標が算出される(図28参照)。従って、測距装置10Dによれば、最終撮像位置距離を用いない場合に比べ、指定画素3次元座標を高精度に算出することができる。
更に、測距装置10Dでは、指定画素3次元座標は、注目画素座標、対応注目画素座標、最終撮像位置距離、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて規定されている(数式(1)参照)。従って、測距装置10Dによれば、指定画素3次元座標が最終撮像位置距離、注目画素座標、対応注目画素座標、撮像レンズ50の焦点距離、及び撮像画素60A1の寸法に基づいて規定されない場合に比べ、指定画素3次元座標を高精度に導出することができる。
なお、上記第4実施形態では、第2位置から射出されたレーザ光を基に計測された距離を参照用距離としたが、本開示の技術はこれに限定されるものではない。例えば、第1位置から射出されたレーザ光を基に計測された距離を参照用距離としてもよい。
[第5実施形態]
上記各実施形態では、1台の測距装置により撮像位置距離等が導出される場合について説明したが、本第5実施形態では、2台の測距装置及びパーソナル・コンピュータ(以下、PCと称する)により撮像位置距離等が導出される場合について説明する。なお、PCとは、Personal Computerの略語である。なお、本第5実施形態では、上記各実施形態で説明した構成要素と同一の構成要素については同一の符号を付し、その説明を省略する。
一例として図30に示すように、本第5実施形態に係る情報処理システム500は、測距装置10E1,10E2及びPC502を有する。なお、本第5実施形態では、PC502が、測距装置10E1,10E2と通信可能とされている。また、本第5実施形態において、PC502は、本開示の技術に係る情報処理装置の一例である。
一例として図30に示すように、測距装置10E1は第1位置に配置されており、測距装置10E2は第1位置と異なる第2位置に配置されている。
一例として図31に示すように、測距装置10E1,10E2は同一の構成とされている。なお、以下では、測距装置10E1,10E2を区別して説明する必要がない場合、「測距装置10E」と称する。
測距装置10Eは、測距装置10Aに比べ、撮像装置14に代えて撮像装置15を有する点が異なる。撮像装置15は、撮像装置14に比べ、撮像装置本体18に代えて撮像装置本体19を有する点が異なる。
撮像装置本体19は、撮像装置本体18に比べ、通信I/F83を有する点が異なる。通信I/F83は、バスライン84に接続されており、主制御部62の制御下で動作する。
通信I/F83は、例えば、インターネットなどの通信網(図示省略)に接続されており、通信網に接続されたPC502との間の各種情報の送受信を司る。
一例として図32に示すように、PC502は、主制御部503を備えている。主制御部503は、CPU504、一次記憶部506、及び二次記憶部508を有する。CPU504、一次記憶部506、及び二次記憶部508は、バスライン510を介して相互に接続されている。
また、PC502は、通信I/F512を備えている。通信I/F512は、バスライン510に接続されており、主制御部503の制御下で動作する。通信I/F512は、通信網に接続されており、通信網に接続された測距装置10Eとの間の各種情報の送受信を司る。
また、PC502は、受付部513及び表示部514を備えている。受付部513は、受付I/F(図示省略)を介してバスライン510に接続されており、受付I/Fは、受付部513によって受け付けられた指示の内容を示す指示内容信号を主制御部503に出力する。なお、受付部513は、例えば、キーボード、マウス、及びタッチパネルにより実現される。
表示部514は、表示制御部(図示省略)を介してバスライン510に接続されており、表示制御部の制御下で各種情報を表示する。なお、表示部514は、例えば、LCDにより実現される。
二次記憶部508は、上記各実施形態で説明した撮像位置距離算出プログラム106(150,168,180)及び3次元座標算出プログラム108(181)を記憶している。なお、以下では、説明の便宜上、撮像位置距離算出プログラム106,150,168,180を区別して説明する必要がない場合、符号を付さずに「撮像位置距離算出プログラム」と称する。また、以下では、説明の便宜上、3次元座標算出プログラム108,181を区別して説明する必要がない場合、符号を付さずに「3次元座標算出プログラム」と称する。
CPU504は、測距装置10E1から第1撮像画像信号、注目画素座標、及び距離等を通信I/F512を介して取得する。また、CPU504は、測距装置10E2から第2撮像画像信号等を通信I/F512を介して取得する。
CPU504は、二次記憶部508から撮像位置距離算出プログラム及び3次元座標算出プログラムを読み出して一次記憶部506に展開し、撮像位置距離算出プログラム及び3次元座標算出プログラムを実行する。なお、以下では、説明の便宜上、撮像位置距離算出プログラム及び3次元座標算出プログラムを総称する場合、「算出プログラム」と称する。
CPU100は、算出プログラムを実行することで、取得部110(154,172,182)、導出部112(174,184)、及び制御部114(156,176,185)として動作する。
よって、情報処理システム500では、PC502が、測距装置10Eから第1撮像画像信号、2撮像画像信号、注目画素座標、及び距離等を通信I/F512を介して取得した上で、算出プログラムを実行することで、上記各実施形態と同様の作用及び効果が得られる。
[第6実施形態]
上記第1実施形態では、測距ユニット12及び撮像装置14により測距装置10Aが実現される場合を例示したが、本第6実施形態では、更にスマートデバイス602を備えることによって実現される測距装置10Fについて説明する。なお、本第6実施形態では、上記各実施形態と同一の構成要素については同一の符号を付して、その説明を省略し、上記各実施形態と異なる部分についてのみ説明する。
一例として図33に示すように、本第3実施形態に係る測距装置10Fは、上記第1実施形態に係る測距装置10Aに比べ、撮像装置14に代えて撮像装置600を有する点が異なる。また、測距装置10Fは、測距装置10Aに比べ、スマートデバイス602を有する点が異なる。
撮像装置600は、撮像装置14に比べ、撮像装置本体18に代えて撮像装置本体603を有する点が異なる。
撮像装置本体603は、撮像装置本体18に比べ、無線通信部604及び無線通信用アンテナ606を有する点が異なる。
無線通信部604は、バスライン84及び無線通信用アンテナ606に接続されている。主制御部62は、スマートデバイス602へ送信される対象の情報である送信対象情報を無線通信部604に出力する。
無線通信部604は、主制御部62から入力された送信対象情報を無線通信用アンテナ606を介してスマートデバイス602へ電波で送信する。また、無線通信部604は、スマートデバイス602からの電波が無線通信用アンテナ606で受信されると、受信された電波に応じた信号を取得し、取得した信号を主制御部62に出力する。
スマートデバイス602は、CPU608、一次記憶部610、及び二次記憶部612を備えている。CPU608、一次記憶部610、及び二次記憶部612は、バスライン614に接続されている。
CPU608は、スマートデバイス602を含めて測距装置10Fの全体を制御する。一次記憶部610は、各種プログラムの実行時のワークエリア等として用いられる揮発性のメモリである。一次記憶部610の一例としては、RAMが挙げられる。二次記憶部612は、スマートデバイス602を含めて測距装置10Fの全体の作動を制御する制御プログラムや各種パラメータ等を予め記憶する不揮発性のメモリである。二次記憶部612の一例としては、フラッシュメモリやEEPROMが挙げられる。
スマートデバイス142は、表示部615、タッチパネル616、無線通信部618、及び無線通信用アンテナ620を備えている。
表示部615は、表示制御部(図示省略)を介してバスライン614に接続されており、表示制御部の制御下で各種情報を表示する。なお、表示部615は、例えば、LCDにより実現される。
タッチパネル616は、表示部615の表示画面に重ねられており、指示体による接触を受け付ける。タッチパネル616は、タッチパネルI/F(図示省略)を介してバスライン614に接続されており、指示体により接触された位置を示す位置情報をタッチパネルI/Fに出力する。タッチパネルI/Fは、CPU608の指示に従ってタッチパネルI/Fを作動させ、タッチパネル616から入力された位置情報をCPU608に出力する。
表示部615には、計測・撮像ボタン90A、撮像ボタン90B、撮像系動作モード切替ボタン90C、広角指示ボタン90D、及び望遠指示ボタン90E、撮像位置距離算出ボタン90F、及び3次元座標算出ボタン90G等に相当するソフトキーが表示される。
例えば、図34に示すように、表示部615には、計測・撮像ボタン90Aとして機能する計測・撮像ボタン90A1がソフトキーとして表示され、タッチパネル616を介してユーザによって押下される。また、例えば、表示部615には、撮像ボタン90Bとして機能する撮像ボタン90B1がソフトキーとして表示され、タッチパネル616を介してユーザによって押下される。また、例えば、表示部615には、撮像系動作モード切替ボタン90Cとして機能する撮像系動作モード切替ボタン90C1がソフトキーとして表示され、タッチパネル616を介してユーザによって押下される。
また、例えば、表示部615には、広角指示ボタン90Dとして機能する広角指示ボタン90D1がソフトキーとして表示され、タッチパネル616を介してユーザによって押下される。更に、例えば、表示部615には、望遠指示ボタン90Eとして機能する望遠指示ボタン90E1がソフトキーとして表示され、タッチパネル616を介してユーザによって押下される。
また、例えば、表示部615には、撮像位置距離算出ボタン90Fとして機能する撮像位置距離算出ボタン90F1がソフトキーとして表示され、タッチパネル616を介してユーザによって押下される。また、例えば、表示部615には、3次元座標算出ボタン90Gとして機能する3次元座標算出ボタン90G1がソフトキーとして表示され、タッチパネル616を介してユーザによって押下される。
無線通信部618は、バスライン614及び無線通信用アンテナ620に接続されている。無線通信部618は、CPU608から入力された信号を無線通信用アンテナ620を介して撮像装置本体603へ電波で送信する。また、無線通信部618は、撮像装置本体603からの電波が無線通信用アンテナ620で受信されると、受信された電波に応じた信号を取得し、取得した信号をCPU608に出力する。従って、撮像装置本体603は、スマートデバイス602との間で無線通信が行われることで、スマートデバイス602によって制御される。
二次記憶部612は、算出プログラムを記憶している。CPU608は、二次記憶部612から算出プログラムを読み出して一次記憶部610に展開し、算出プログラムを実行する。
CPU608は、算出プログラムを実行することで、取得部110(154,172,182)、導出部112(174,184)、及び制御部114(156,176,185)として動作する。例えば、CPU608が撮像位置距離算出プログラム106を実行することで、上記第1実施形態で説明した撮像位置距離算出処理が実現される。また、例えば、CPU608が3次元座標算出プログラム108を実行することで、上記第1実施形態で説明した3次元算出処理が実現される。
従って、測距装置10Fでは、スマートデバイス602が算出プログラムを実行することで、上記各実施形態と同様の作用及び効果が得られる。また、測距装置10Fによれば、撮像装置600によって撮像位置距離算出処理及び3次元算出処理が実行される場合に比べ、上記各実施形態で説明した効果を得るにあたって、撮像装置600にかかる負荷を軽減することができる。
なお、上記各実施形態では、対応注目画素が、第2撮像画像を解析対象として画像解析を実行することで特定され、特定された対応注目画素を特定する対応注目画素座標が取得されるが(図12に示すステップ226参照)、本開示の技術はこれに限定されるものではない。例えば、ユーザがタッチパネル88を介して第2撮像画像から注目画素に対応する画素を対応注目画素として指定するようにしてもよい。
また、上記各実施形態では、導出部112(174,184)が照射位置座標、平面の向き、撮像位置距離、及び指定画素3次元座標等を演算式を用いて算出する場合を例示したが、本開示の技術はこれに限定されるものでない。例えば、導出部112(174,184)は、演算式の独立変数を入力とし、演算式の従属変数を出力とするテーブルを用いて照射位置座標、平面の向き、撮像位置距離、及び指定画素3次元座標等を導出するようにしてもよい。
また、上記各実施形態では、算出プログラムを二次記憶部104(508,612)から読み出す場合を例示したが、必ずしも最初から二次記憶部104(508,612)に記憶させておく必要はない。例えば、図35に示すように、SSD(Solid State Drive)又はUSB(Universal Serial Bus)メモリなどの任意の可搬型の記憶媒体700に先ずは算出プログラムを記憶させておいてもよい。この場合、記憶媒体700の算出プログラムが測距装置10A(10B,10C,10D,10F)(以下、「測距装置10A等」と称する)又はPC502にインストールされ、インストールされた算出プログラムがCPU100(608)によって実行される。
また、通信網(図示省略)を介して測距装置10A等又はPC502に接続される他のコンピュータ又はサーバ装置等の記憶部に算出プログラムを記憶させておき、算出プログラムが測距装置10A等の要求に応じてダウンロードされるようにしてもよい。この場合、ダウンロードされた算出プログラムがCPU100(608)によって実行される。
また、上記各実施形態では、照射位置目印136、撮像位置距離、及び指定画素3次元座標等の各種情報が表示部86に表示される場合を例示したが、本開示の技術はこれに限定されるものではない。例えば、測距装置10A等又はPC502に接続して使用される外部装置の表示部に各種情報が表示されるようにしてもよい。外部装置の一例としては、PC、又は眼鏡型若しくは腕時計型のウェアラブル端末装置が挙げられる。
また、上記各実施形態では、照射位置目印136、撮像位置距離、及び指定画素3次元座標等が表示部86により可視表示される場合を例示したが、本開示の技術はこれに限定されるものではない。例えば、音声再生装置による音声の出力等の可聴表示やプリンタによる印刷物の出力等の永久可視表示を可視表示に代えて行ってもよいし、併用してもよい。
また、上記各実施形態では、照射位置目印136、撮像位置距離、及び指定画素3次元座標等が表示部86に表示される場合を例示したが、本開示の技術はこれに限定されるものではない。例えば、照射位置目印136、撮像位置距離、及び指定画素3次元座標等のうちの少なくとも1つが表示部86と異なる表示部(図示省略)に表示されるようにし、残りが表示部86に表示されるようにしてもよい。照射位置目印136、撮像位置距離、及び指定画素3次元座標等の各々が表示部86を含めた複数の表示部に個別に表示されるようにしてもよい。
また、上記各実施形態では、測距用の光としてレーザ光を例示しているが、本開示の技術はこれに限定されるものではなく、指向性のある光である指向性光であればよい。例えば、発光ダイオード(LED:Light Emitting Diode)やスーパールミネッセントダイオード(SLD:Super Luminescent Diode)により得られる指向性光であってもよい。指向性光が有する指向性は、レーザ光が有する指向性と同程度の指向性であることが好ましく、例えば、数メートルから数キロメートルの範囲内における測距で使用可能な指向性であることが好ましい。
また、上記各実施形態で説明した撮像位置距離算出処理及び3次元座標算出処理はあくまでも一例である。従って、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよいことは言うまでもない。また、撮像位置距離算出処理及び3次元座標算出処理に含まれる各処理は、ASIC等のハードウェア構成のみで実現されてもよいし、コンピュータを利用したソフトウェア構成とハードウェア構成との組み合わせで実現されてもよい。
また、上記各実施形態では、説明の便宜上、測距装置10A等に含まれる撮像装置本体18の側面に測距ユニット12が取り付けられる場合について説明したが、本開示の技術はこれに限定されるものではない。例えば、撮像装置本体18の上面又は下面に測距ユニット12が取り付けられてもよい。また、例えば、図36に示すように、測距装置10A等に代えて測距装置10Gを適用してもよい。一例として図36に示すように、測距装置10Gは、測距装置10A等に比べ、測距ユニット12に代えて測距ユニット12Aを有する点、及び撮像装置本体18に代えて撮像装置本体18Aを有する点が異なる。
図36に示す例において、測距ユニット12Aは、撮像装置本体18Aの筐体18A1に収容されており、対物レンズ32,38は、測距装置10Gの正面側(撮像レンズ50が露出している側)に筐体18A1から露出している。また、測距ユニット12Aは、光軸L1,L2が鉛直方向において同一の高さに設定されるように配置されることが好ましい。なお、筐体18A1に対して測距ユニット12Aが挿脱可能な開口(図示省略)が筐体18A1に形成されていてもよい。
なお、上記第1実施形態に係る撮像位置距離算出処理に含まれるステップ214の処理で用いられる半画角α、及び上記第4実施形態に係る撮像位置距離算出処理に含まれるステップ408の処理で用いられる半画角αは、次の数式(7)に基づいて導出される。数式(7)において、“f0”とは、焦点距離を指す。
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
被写体が第1撮像位置から撮像されて得られた第1撮像画像と、前記被写体が前記第1撮像位置とは異なる第2撮像位置から撮像されて得られた第2撮像画像と、前記第1撮像位置に対応する位置及び前記第2撮像位置に対応する位置の一方から指向性のある光である指向性光が前記被写体に射出されて前記指向性光の反射光が受光されることにより計測された前記被写体までの距離と、を取得する取得部と、
前記取得部により取得された前記第1撮像画像及び前記第2撮像画像の各々において、実空間上での位置が対応する画素として指定された指定画素を特定する座標である指定画素座標と、前記取得部により取得された前記第1撮像画像及び前記第2撮像画像の各々において、実空間上で前記指向性光が照射された照射位置と同一の平面状領域に存在し、かつ、実空間上での位置が対応する3画素以上の複数画素を特定する複数の座標である複数画素座標と、実空間上での前記照射位置を特定する照射位置座標であって、前記取得部により取得された前記距離に基づいて導出された照射位置座標と、前記被写体の撮像に用いられた撮像レンズの焦点距離と、前記被写体を撮像する撮像画素群に含まれる撮像画素の寸法と、に基づいて前記第1撮像位置と前記第2撮像位置との距離である撮像位置距離を導出する導出部と、
を含む情報処理装置。
(付記2)
前記導出部は、導出した前記撮像位置距離に基づいて前記指定画素の実空間上での座標である指定画素実空間座標を導出する付記1に記載の情報処理装置。
(付記3)
前記指定画素実空間座標は、前記撮像位置距離と、前記指定画素座標と、前記焦点距離と、前記寸法と、に基づいて規定された付記2に記載の情報処理装置。
(付記4)
前記導出部は、前記複数画素座標、前記焦点距離、及び前記寸法に基づいて、前記複数画素座標に対応する実空間上での座標を含む平面を示す平面方程式により規定される前記平面の向きを導出し、導出した前記向きと前記照射位置座標とに基づいて前記平面方程式を確定し、確定した前記平面方程式と、前記指定画素座標と、前記焦点距離と、前記寸法とに基づいて前記撮像位置距離を導出する付記1から付記3の何れか1つに記載の情報処理装置。
(付記5)
前記複数画素は、前記第1撮像画像及び前記第2撮像画像の各々から画素を指定する第1画素指定情報を受け付ける第1受付部によって受け付けられた前記第1画素指定情報により指定され、
前記取得部は、前記第1画素指定情報により指定された前記複数画素を特定する複数の座標を前記複数画素座標として取得し、前記導出部は、前記指定画素座標と、前記取得部により取得された前記複数画素座標と、前記照射位置座標と、前記焦点距離と、前記寸法と、に基づいて前記撮像位置距離を導出する付記1から付記4の何れか1つに記載の情報処理装置。
(付記6)
前記取得部は、前記第1撮像画像及び前記第2撮像画像の各々において、実空間上で前記照射位置と同一の平面状領域に存在し、かつ、位置が対応する3画素以上の複数の特徴的な画素を特定する複数の座標を前記複数画素座標として取得し、
前記導出部は、前記指定画素座標と、前記取得部により取得された前記複数画素座標と、前記照射位置座標と、前記焦点距離と、前記寸法と、に基づいて前記撮像位置距離を導出する付記1から付記4の何れか1つに記載の情報処理装置。
(付記7)
前記複数の特徴的な画素は、前記第1撮像画像及び前記第2撮像画像の各々にて、実空間上で前記照射位置と同一の平面状領域に存在し、かつ、実空間上での位置が対応する3画素以上の既定数の画素であって、取り囲む面積が最大となる複数の画素である付記6に記載の情報処理装置。
(付記8)
第1表示部に対して前記第1撮像画像及び前記第2撮像画像の少なくとも一方を表示させ、かつ、表示領域内で前記照射位置と同一の平面状領域に対応する対応領域を他の領域と区別可能に表示させる制御を行う第1制御部を更に含み、
前記取得部は、前記第1表示部に前記対応領域が表示された状態で前記対応領域の一部を指定する領域指定情報を受け付ける第2受付部によって受け付けられた前記領域指定情報により指定された前記対応領域の一部から、前記複数の特徴的な画素を特定する複数の座標を前記複数画素座標として取得する付記6に記載の情報処理装置。
(付記9)
前記第1撮像画像及び前記第2撮像画像の一方に関する前記指定画素は、前記第1撮像画像及び前記第2撮像画像の一方から画素を指定する第2画素指定情報を受け付ける第3受付部によって受け付けられた前記第2画素指定情報により指定された画素であり、
前記第1撮像画像及び前記第2撮像画像の他方に関する前記指定画素は、前記第1撮像画像及び前記第2撮像画像の他方に含まれる画素であって、前記第2画素指定情報により指定された画素と実空間上での位置が対応する画素である付記1から付記8の何れか一項に記載の情報処理装置。
(付記10)
前記指向性光を射出し、前記反射光を受光することにより前記距離を計測する計測部を更に含み、
前記取得部は、前記計測部により計測された前記距離を取得する付記1から付記9の何れか1つに記載の情報処理装置。
(付記11)
前記被写体を撮像する撮像部を更に含み、
前記取得部は、前記被写体が前記第1撮像位置から前記撮像部により撮像されて得られた前記第1撮像画像、及び前記被写体が前記第2撮像位置から前記撮像部により撮像されて得られた前記第2撮像画像を取得する付記1から付記10の何れか1つに記載の情報処理装置。
(付記12)
前記取得部は、前記第1撮像位置に対応する位置及び前記第2撮像位置に対応する位置の他方から前記指向性光が前記被写体に射出されて前記指向性光の反射光が受光されることにより計測された前記被写体までの参照用距離を更に取得し、
前記導出部は、更に、前記指定画素座標と、前記複数画素座標と、実空間上での前記照射位置を特定する参照用照射位置座標であって、前記取得部により取得された前記参照用距離に基づいて導出された参照用照射位置座標と、前記焦点距離と、前記寸法と、に基づいて前記第1撮像位置と前記第2撮像位置との距離である参照用撮像位置距離を導出し、導出した参照用撮像位置距離を参照して前記撮像位置距離を調整することで、前記第1撮像位置と前記第2撮像位置との距離として最終的に採用される最終撮像位置距離を導出する付記1から付記11の何れか1つに記載の情報処理装置。
(付記13)
前記導出部は、導出した前記最終撮像位置距離に基づいて前記指定画素の実空間上での座標として最終的に採用される最終指定画素実空間座標を導出する付記12に記載の情報処理装置。
(付記14)
前記最終指定画素実空間座標は、前記最終撮像位置距離と、前記指定画素座標と、前記焦点距離と、前記寸法と、に基づいて規定された付記13に記載の情報処理装置。
(付記15)
第2表示部に対して前記導出部による導出結果を表示させる制御を行う第2制御部を更に含む付記1から付記14の何れか1つに記載の情報処理装置。
(付記16)
被写体が第1撮像位置から撮像されて得られた第1撮像画像と、前記被写体が前記第1撮像位置とは異なる第2撮像位置から撮像されて得られた第2撮像画像と、前記第1撮像位置に対応する位置及び前記第2撮像位置に対応する位置の一方から指向性のある光である指向性光が前記被写体に射出されて前記指向性光の反射光が受光されることにより計測された前記被写体までの距離と、を取得し、
取得した前記第1撮像画像及び前記第2撮像画像の各々において、実空間上での位置が対応する画素として指定された指定画素を特定する座標である指定画素座標と、取得した前記第1撮像画像及び前記第2撮像画像の各々において、実空間上で前記指向性光が照射された照射位置と同一の平面状領域に存在し、かつ、実空間上での位置が対応する3画素以上の複数画素を特定する複数の座標である複数画素座標と、実空間上での前記照射位置を特定する照射位置座標であって、取得した前記距離に基づいて導出された照射位置座標と、前記被写体の撮像に用いられた撮像レンズの焦点距離と、前記被写体を撮像する撮像画素群に含まれる撮像画素の寸法と、に基づいて前記第1撮像位置と前記第2撮像位置との距離である撮像位置距離を導出することを含む情報処理方法。
(付記17)
コンピュータに、
被写体が第1撮像位置から撮像されて得られた第1撮像画像と、前記被写体が前記第1撮像位置とは異なる第2撮像位置から撮像されて得られた第2撮像画像と、前記第1撮像位置に対応する位置及び前記第2撮像位置に対応する位置の一方から指向性のある光である指向性光が前記被写体に射出されて前記指向性光の反射光が受光されることにより計測された前記被写体までの距離と、を取得し、
取得した前記第1撮像画像及び前記第2撮像画像の各々において、実空間上での位置が対応する画素として指定された指定画素を特定する座標である指定画素座標と、取得した前記第1撮像画像及び前記第2撮像画像の各々において、実空間上で前記指向性光が照射された照射位置と同一の平面状領域に存在し、かつ、実空間上での位置が対応する3画素以上の複数画素を特定する複数の座標である複数画素座標と、実空間上での前記照射位置を特定する照射位置座標であって、取得した前記距離に基づいて導出された照射位置座標と、前記被写体の撮像に用いられた撮像レンズの焦点距離と、前記被写体を撮像する撮像画素群に含まれる撮像画素の寸法と、に基づいて前記第1撮像位置と前記第2撮像位置との距離である撮像位置距離を導出することを含む処理を実行させるためのプログラム。