JP2023525066A - 被写体下端位置に基づいた深度推定 - Google Patents

被写体下端位置に基づいた深度推定 Download PDF

Info

Publication number
JP2023525066A
JP2023525066A JP2022567599A JP2022567599A JP2023525066A JP 2023525066 A JP2023525066 A JP 2023525066A JP 2022567599 A JP2022567599 A JP 2022567599A JP 2022567599 A JP2022567599 A JP 2022567599A JP 2023525066 A JP2023525066 A JP 2023525066A
Authority
JP
Japan
Prior art keywords
camera
subject
bottom edge
image data
distance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2022567599A
Other languages
English (en)
Other versions
JP7394240B2 (ja
Inventor
シェ,ミンフン
ク,シー-イエン
サン,レイ-ホン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2023525066A publication Critical patent/JP2023525066A/ja
Application granted granted Critical
Publication of JP7394240B2 publication Critical patent/JP7394240B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/536Depth or shape recovery from perspective effects, e.g. by using vanishing points
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • G06T2207/20104Interactive definition of region of interest [ROI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)
  • Measurement Of Optical Distance (AREA)

Abstract

方法は、カメラから、環境における被写体を表わす画像データを受信することと、画像データに基づいて、画像データ内の被写体の下端の垂直位置を決定することとを含み得る。方法はまた、垂直位置と画像データの高さとの間の被写体下端比率を決定することと、距離投影モデルを介しておよび被写体下端比率に基づいて、カメラと被写体との間の物理的距離の推定値を決定することとを含む。距離投影モデルは、複数の候補被写体下端比率のうちの各それぞれの候補被写体下端比率について、(i)それぞれの候補被写体下端比率と(ii)環境における対応する物理的距離との間のマッピングを規定し得る。方法は加えて、カメラと被写体との間の物理的距離の推定値の指標を生成することを含み得る。

Description

関連出願との相互参照
本願は、2020年6月3日に出願され、「被写体下端位置に基づいた深度推定」(Depth Estimation Based on Object Bottom Position)と題された、米国仮特許出願第63/033,964号の優先権を主張する。当該仮出願全体は、あたかもこの記載で完全に述べられたかのように、本明細書に引用により援用される。
背景
立体カメラは、被写体に関連付けられた距離または深度を決定するために使用され得る。具体的には、立体カメラは、被写体の二つ以上の画像を同時に取り込み得る。立体カメラの画像センサ間の既知の距離と、二つ以上の同時に取り込まれた画像における被写体の表現間の相違とに基づいて、距離または深度が決定され得る。同様に、カメラは、被写体距離または深度を決定するために、構造化光パターンプロジェクタと組み合わされて使用され得る。具体的には、パターンが異なる深度の被写体上に投影される際にパターンが変形され、分散され、または他の態様で変更される程度に基づいて、距離または深度が決定され得る。各アプローチでは、深度または距離測定は、いくつかのコンピューティングデバイス上で利用できないかもしれない撮像ハードウェアを伴う。
要約
カメラによって生成された画像データが、カメラと画像データ内で表わされた被写体との間の距離を決定するために使用され得る。画像データ内の被写体の下端の垂直位置を識別し、垂直位置を画像データの全高で除算して被写体下端比率を得ることによって、被写体までの推定距離が決定され得る。距離投影モデルが、被写体下端比率を、カメラと被写体との間の物理的距離の対応する推定値にマッピングし得る。距離投影モデルは、カメラが環境内の特定の高さに位置付けられ、被写体の下端が環境の地面と接しているという仮定の下で動作し得る。また、ゼロでないピッチ角で配向されたカメラによって画像データが生成される場合、オフセット計算器が、ゼロでないカメラピッチを補償するために被写体下端比率に加算されるべきオフセットを決定し得る。
第1の例示的な実施形態では、コンピュータが実現する方法が提供され、方法は、カメラから、環境における被写体を表わす画像データを受信することを含む。方法はまた、画像データに基づいて、画像データ内の被写体の下端の垂直位置を決定することと、垂直位置と画像データの高さとの間の被写体下端比率を決定することとを含む。方法は加えて、距離投影モデルを介しておよび被写体下端比率に基づいて、カメラと被写体との間の物理的距離の推定値を決定することを含む。距離投影モデルは、複数の候補被写体下端比率のうちの各それぞれの候補被写体下端比率について、(i)それぞれの候補被写体下端比率と(ii)環境における対応する物理的距離との間のマッピングを規定する。方法はさらに、カメラと被写体との間の物理的距離の推定値の指標を生成することを含む。
第2の例示的な実施形態では、コンピューティングシステムが提供され、コンピューティングシステムは、カメラと、プロセッサと、プロセッサによって実行されるとプロセッサに動作を行なわせる命令が格納された、非一時的コンピュータ読取可能記憶媒体とを含む。動作は、カメラから、環境における被写体を表わす画像データを受信することを含む。動作はまた、画像データに基づいて、画像データ内の被写体の下端の垂直位置を決定することと、垂直位置と画像データの高さとの間の被写体下端比率を決定することとを含む。動作は加えて、距離投影モデルを介しておよび被写体下端比率に基づいて、カメラと被写体との間の物理的距離の推定値を決定することを含む。距離投影モデルは、複数の候補被写体下端比率のうちの各それぞれの候補被写体下端比率について、(i)それぞれの候補被写体下端比率と(ii)環境における対応する物理的距離との間のマッピングを規定する。動作はさらに、カメラと被写体との間の物理的距離の推定値の指標を生成することを含む。
第3の例示的な実施形態では、コンピューティングシステムによって実行されるとコンピューティングシステムに動作を行なわせる命令が格納された、非一時的コンピュータ読取可能記憶媒体が提供される。動作は、カメラから、環境における被写体を表わす画像データを受信することを含む。動作はまた、画像データに基づいて、画像データ内の被写体の下端の垂直位置を決定することと、垂直位置と画像データの高さとの間の被写体下端比率を決定することとを含む。動作は加えて、距離投影モデルを介しておよび被写体下端比率に基づいて、カメラと被写体との間の物理的距離の推定値を決定することを含む。距離投影モデルは、複数の候補被写体下端比率のうちの各それぞれの候補被写体下端比率について、(i)それぞれの候補被写体下端比率と(ii)環境における対応する物理的距離との間のマッピングを規定する。動作はさらに、カメラと被写体との間の物理的距離の推定値の指標を生成することを含む。
第4の例示的な実施形態では、システムが提供され、システムは、カメラから、環境における被写体を表わす画像データを受信するための手段を含む。システムはまた、画像データに基づいて、画像データ内の被写体の下端の垂直位置を決定するための手段と、垂直位置と画像データの高さとの間の被写体下端比率を決定するための手段とを含む。システムは加えて、距離投影モデルを介しておよび被写体下端比率に基づいて、カメラと被写体との間の物理的距離の推定値を決定するための手段を含む。距離投影モデルは、複数の候補被写体下端比率のうちの各それぞれの候補被写体下端比率について、(i)それぞれの候補被写体下端比率と(ii)環境における対応する物理的距離との間のマッピングを規定する。システムはさらに、カメラと被写体との間の物理的距離の推定値の指標を生成するための手段を含む。
これらのならびに他の実施形態、局面、利点、および代替例は、添付図面を適宜参照しながら以下の詳細な説明を読むことによって当業者には明らかになるであろう。また、本概要ならびにここに提供される他の説明および図面は、実施形態を単なる例として示すよう意図されており、したがって、多数の変形が可能である。たとえば、構造要素およびプロセスステップは、特許請求される実施形態の範囲内にとどまりつつ、並べ替えられ、組み合わされ、分散され、排除され、または他の態様で変更され得る。
例示的な実施形態に従ったコンピューティングシステムを示す図である。 例示的な実施形態に従ったコンピューティングデバイスを示す図である。 例示的な実施形態に従った、被写体距離を推定するためのシステムを示す図である。 例示的な実施形態に従った光学モデルを示す図である。 例示的な実施形態に従った、被写体下端比率と物理的距離との間のマッピングを示す図である。 例示的な実施形態に従ったモデル誤差を示す図である。 例示的な実施形態に従ったモデル誤差を示す図である。 例示的な実施形態に従ったモデル誤差を示す図である。 例示的な実施形態に従ったモデル誤差を示す図である。 例示的な実施形態に従った、カメラピッチの補償を示す図である。 例示的な実施形態に従った、被写体距離を推定するためのシステムの使用事例を示す図である。 例示的な実施形態に従ったフローチャートを示す図である。
詳細な説明
例示的な方法、デバイス、およびシステムが本明細書で説明される。「例」および「例の」という文言は、本明細書では「例、事例、または例示として機能すること」を意味するために使用されることが理解されるべきである。本明細書で「例」、「例の」、および/または「例示的」として説明されるどの実施形態もしくは特徴も、他の実施形態もしくは特徴よりも好ましいかまたは有利であると述べられない限り、必ずしもそのように解釈されるべきではない。このため、本明細書に提示される主題の範囲から逸脱することなく、他の実施形態を利用することができ、他の変更を行なうことができる。
したがって、本明細書に記載される例示的な実施形態は、限定的であるよう意図されていない。本明細書で概して説明され図面に示される本開示の局面は、幅広く多様な異なる構成で配置され、置き換えられ、組み合わされ、分離され、および設計され得ることが容易に理解されるであろう。
また、文脈が別様に示唆しない限り、図面の各々に示される特徴は、互いに組み合わされて使用され得る。このため、図面は概して、各実施形態について図示された特徴がすべて必要であるとは限らないことを理解した上で、一つ以上の全体的な実施形態の構成要素局面として見られるべきである。
加えて、本明細書または特許請求の範囲における要素、ブロック、またはステップのいかなる列挙も、明確にする目的のためのものである。このため、そのような列挙は、これらの要素、ブロック、またはステップが、特定の配置を固守するかまたは特定の順序で実行されることを要求または暗示すると解釈されるべきではない。特に断りのない限り、図は縮尺通りに描かれていない。
概観
モバイルおよび/またはウェアラブルコンピューティングデバイスを含むコンピューティングデバイスは、環境の画像を取り込むために使用可能なカメラを含み得る。たとえば、カメラは、コンピューティングデバイスがユーザによって保持され、着用され、および/または使用されるときに、ユーザの前の環境に面し得る。したがって、本明細書で提供されるのは、カメラと、カメラによって生成された画像データにおいて表わされた被写体との間の距離を決定するために使用され得るシステムおよび動作である。これらのシステムおよび動作は、たとえば、カメラを含むコンピューティングデバイス上で実現されてもよく、このため、これらのコンピューティングデバイスが環境内の被写体までの距離を測定することを可能にする。
カメラと被写体との間の距離は、カメラによって生成された画像データにおいて表わされたような被写体の下端の位置を、対応する物理的距離にマッピングすることによって、決定され得る。このアプローチは、対象となる移動被写体および/または静止被写体双方の深度をリアルタイムで計算するための計算上安価なやり方を提供し得る。計算複雑性が比較的低いため、これらのシステムおよび動作は、携帯電話および/またはウェアラブルデバイス(たとえばスマートウォッチ、車載カメラなど)を含む、より低価格のデバイスおよび/または電力制限デバイス上で実現され得る。また、いくつの事例では、システムおよび動作は、一度に一つの視点からの環境を表わす単眼カメラによって生成された画像データに関して使用され得る。このため、たとえば、システムおよび動作は、立体カメラによって生成された立体画像データ、および/または、パターン光プロジェクタによって投影された構造化光パターンを含む画像データに基づく深度測定の代わりとして使用され得る。しかしながら、他の事例では、本明細書に開示されるシステムおよび動作は、立体画像および/または構造化光投影などの距離/深度測定のための他のアプローチと組み合わされて使用され得る。
深度測定のプロセスは、カメラが環境内の地面から既知の高さに配置されていると仮定し得る。たとえば、カメラ、および/または、カメラを収容するコンピューティングデバイスは、胸、腕、手首、または胴回りといったユーザの身体の特定の位置でユーザに結合され、よって、長時間ほぼ同じ高さにとどまり得る。深度測定プロセスは、環境内のさまざまな被写体までの距離を決定するために、カメラによって取り込まれた画像に関して実行され得る。コンピューティングデバイスは、距離の視覚表現、可聴表現、触覚表現、および/または他の表現を生成し得る。このため、たとえば、コンピューティングデバイスは、視覚障害のあるユーザが、コンピューティングデバイスによって実行される深度測定プロセスの支援を受けて環境を通り抜けるために使用され得る。
具体的には、既知の高さにあるカメラを用いて、環境の地面上の特定の距離に位置する各点が、カメラの画像センサ上の対応する位置に関連付けられ、そこで画像を生成することが予想され得る。特定の距離と画像センサ上のその対応する位置との関係は、距離投影モデルの一部を形成し得る、経験的に決定された(たとえば学習および/または訓練された)マッピングによって表わされ得る。このマッピングはカメラが既知の高さにあると仮定するため、カメラの高さが変更される際の距離測定を可能にするために、各々異なる高さに関連付けられた複数の異なるマッピングが、距離投影モデルの一部として提供され得る。
カメラと、カメラによって取り込まれた画像において表わされた被写体との間の距離を決定するために、コンピューティングデバイスは、被写体の下端の垂直位置を識別するように構成され得る。被写体の下端が使用され得るのは、それが環境の地面上のある点と接していることが予想され、また、距離投影モデルのマッピングが画像位置を地面上の点の距離に関連付けるためである。被写体の下端の垂直位置を画像の高さで除算することによって被写体下端比率が得られ、それは、被写体の下端の垂直位置を画像高さの小数として表わす(すなわち、被写体下端比率は0~1であり得る)。垂直位置を、たとえば画素の絶対数としてではなく、比率として符号化することにより、画像がダウンサンプリングまたはアップサンプリングされる際に同じマッピングが使用され得る。すなわち、被写体下端比率を使用することは、マッピングが所与の画像アスペクト比について解像度不変であることを可能にする。
被写体下端比率に基づいて、距離投影モデルは、被写体までの物理的距離の推定値を決定し得る。具体的には、距離投影モデルは、カメラが位置付けられた高さの指標、カメラの配向(たとえば横長か縦長か)、画像のアスペクト比、および/または、一つ以上の追加のカメラパラメータに基づいて、使用されるべき特定のマッピングを選択し得る。すなわち、距離投影モデルによって提供される各マッピングは、対応する異なる一組のカメラパラメータに関連付けられ得る。このため、各被写体下端比率は、どのマッピングが使用されるかに依存して、異なる距離にマッピングされ得る。実際のカメラパラメータが、マッピングによって仮定されたカメラパラメータと整合する場合、距離推定値は正確である可能性が高いが、これら二つの組のカメラパラメータが異なる場合、距離推定値は誤っているかもしれない。推定距離の誤差は、二つの組のカメラパラメータの対応するパラメータ間の差に比例し得る。
選択されたマッピングは、被写体下端比率を対応する物理的距離にマッピングすることによって被写体までの距離の推定値を決定するために使用され得る。とりわけ、いくつかの事例では、画像は構造化光の投影なしで単眼カメラによって生成され得るため、高さ、画像配向、アスペクト比などのカメラパラメータの指定は、他の場合であれば一対の立体画像または構造化光パターンによって提供されたであろう深度手がかりの代わりとして機能し得る。
また、カメラが上方に傾斜されるにつれて、被写体の下端の位置は、画像において下降するように見え、また、カメラが下方に傾斜されるにつれて、被写体の下端の位置は、画像において上昇するように見え得る。カメラピッチによる被写体下端のこの見かけの変位は、オフセット計算器によって補償され得る。具体的には、オフセット計算器は、カメラピッチ角の正接とカメラの経験的に決定された焦点距離との積に基づいて、被写体下端比率で表わされる推定オフセットを決定し得る。推定オフセットは次に、被写体下端比率に加算され、この合計が入力として距離投影モデルに提供され得る。推定オフセットを加算することは、被写体下端の垂直位置を、カメラがゼロのピッチ角にあった場合に下端が存在したであろう位置まで戻す効果を有し得る。
例示的なコンピューティングデバイス
図1は、コンピューティングシステム100の例示的なフォームファクタを示す。コンピューティングシステム100は、たとえば、携帯電話、タブレットコンピュータ、またはウェアラブルコンピューティングデバイスであり得る。しかしながら、他の実施形態が可能である。コンピューティングシステム100は、本体102と、ディスプレイ106と、ボタン108および110といったさまざまな要素を含み得る。コンピューティングシステム100はさらに、前面カメラ104と、背面カメラ112と、前面赤外線カメラ114と、赤外線パターンプロジェクタ116とを含み得る。
前面カメラ104は、本体102の、典型的には動作中にユーザに面する側(たとえば、ディスプレイ106と同じ側)に位置付けられ得る。背面カメラ112は、本体102の、前面カメラ104とは反対側に位置付けられ得る。カメラを前面および背面カメラと呼ぶことは任意であり、コンピューティングシステム100は、本体102のさまざまな側に位置付けられた複数のカメラを含み得る。前面カメラ104および背面カメラ112は各々、可視光スペクトルで画像を取り込むように構成され得る。
ディスプレイ106は、陰極線管(cathode ray tube:CRT)ディスプレイ、発光ダイオード(light emitting diode:LED)ディスプレイ、液晶(liquid crystal:LCD)ディスプレイ、プラズマディスプレイ、有機発光ダイオード(organic light emitting diode:OLED)ディスプレイ、または当該技術分野で公知の任意の他のタイプのディスプレイを表わし得る。いくつかの実施形態では、ディスプレイ106は、前面カメラ104、背面カメラ112、および/または赤外線カメラ114によって取り込み中の現在の画像、ならびに/もしくは、これらのカメラのうちの一つ以上によって取り込まれ得るかまたは最近取り込まれた画像のデジタル表現を表示し得る。このため、ディスプレイ106は、カメラのためのビューファインダとして機能し得る。ディスプレイ106はまた、コンピューティングシステム100の任意の局面の設定および/または構成を調節することが可能であり得るタッチスクリーン機能もサポートし得る。
前面カメラ104は、画像センサと、レンズなどの関連光学素子とを含み得る。前面カメラ104は、ズーム能力を提供してもよく、または固定された焦点距離を有し得る。他の実施形態では、交換可能なレンズが前面カメラ104とともに使用され得る。前面カメラ104は、可変の機械的アパーチャと、機械的および/または電子シャッタとを有し得る。前面カメラ104はまた、静止画像、ビデオ画像、またはそれら双方を取り込むように構成され得る。さらに、前面カメラ104は、単眼カメラ、立体カメラ、または多眼カメラを表わし得る。背面カメラ112および/または赤外線カメラ114は、同様にまたは異なるように構成され得る。加えて、前面カメラ104、背面カメラ112、または赤外線カメラ114のうちの一つ以上は、一つ以上のカメラのアレイであり得る。
前面カメラ104および背面カメラ112のいずれかまたは双方は、対象被写体を照明するように可視光スペクトルで光照射野を提供する照明コンポーネントを含むかまたはそれに関連付けられ得る。たとえば、照明コンポーネントは、対象被写体のフラッシュまたは連続照明を提供し得る。照明コンポーネントはまた、構造化光、偏光、および特定のスペクトル成分を有する光のうちの一つ以上を含む光照射野を提供するように構成され得る。被写体から3次元(3D)モデルを回復するために使用される、公知である他のタイプの光照射野は、本明細書の実施形態の文脈内で可能である。
赤外線パターンプロジェクタ116は、赤外線構造化光パターンを対象被写体上に投影するように構成され得る。一例では、赤外線プロジェクタ116は、ドットパターンおよび/またはフラッドパターンを投影するように構成され得る。このため、赤外線プロジェクタ116は、対象被写体の異なる物理的特徴に対応する複数の深度値を決定するために、赤外線カメラ114と組み合わされて使用され得る。
すなわち、赤外線プロジェクタ116は、既知のおよび/または予め定められたドットパターンを対象被写体上に投影し、赤外線カメラ114は、投影されたドットパターンを含む対象被写体の赤外線画像を取り込み得る。コンピューティングシステム100は次に、取り込まれた赤外線画像における領域と、投影されたドットパターンの特定の部分との対応を決定し得る。赤外線プロジェクタ116の位置と、赤外線カメラ114の位置と、取り込まれた赤外線画像内の投影されたドットパターンの特定の部分に対応する領域の位置とを与えられて、コンピューティングシステム100は次に三角測量を使用して対象被写体の表面までの深度を推定し得る。投影されたドットパターンの異なる部分に対応する異なる領域についてこれを繰り返すことにより、コンピューティングシステム100は、対象被写体のさまざまな物理的特徴または部分の深度を推定し得る。このようにして、コンピューティングシステム100は、対象被写体の3次元(3D)モデルを生成するために使用され得る。
コンピューティングシステム100はまた、カメラ104、112、および/または114が取り込むことができる(たとえば可視光および/または赤外光に関する)シーンの周囲輝度を連続的にまたは時々測定し得る周囲光センサを含み得る。いくつかの実現化例では、周囲光センサは、ディスプレイ106の表示輝度を調節するために使用され得る。加えて、周囲光センサは、カメラ104、112、または114のうちの一つ以上の露出長を測定するために、またはその測定に役立つために使用され得る。
コンピューティングシステム100は、ディスプレイ106と、前面カメラ104、背面カメラ112、および/または前面赤外線カメラ114とを使用して、対象被写体の画像を取り込むように構成され得る。取り込まれた画像は、複数の静止画像であるか、またはビデオストリームであり得る。画像取り込みは、ボタン108を起動すること、ディスプレイ106上のソフトキーを押すこと、または何らかの他のメカニズムによってトリガされ得る。実現化例に依存して、画像取り込みは、たとえばボタン108を押すか、対象被写体の適切な照明条件に応じてか、デジタルカメラデバイス100を予め定められた距離だけ動かすか、または予め定められた取り込みスケジュールに従って、特定の時間間隔で自動的に行なわれ得る。
上述のように、コンピューティングシステム100の機能は、無線コンピューティングデバイス、携帯電話、タブレットコンピュータ、ラップトップコンピュータなどといったコンピューティングデバイスに統合され得る。例示の目的のために、図2は、カメラコンポーネント224を含み得る例示的なコンピューティングデバイス200の構成要素のうちのいくつかを示す簡略ブロック図である。
何ら限定されることなく、例として、コンピューティングデバイス200は、少なくとも何らかの画像取り込みおよび/または画像処理能力を備えた、セルラー携帯電話(たとえば、スマートフォン)、スチルカメラ、ビデオカメラ、コンピュータ(デスクトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、またはハンドヘルドコンピュータなど)、携帯情報端末(personal digital assistant:PDA)、ホームオートメーションコンポーネント、デジタルビデオレコーダ(digital video recorder:DVR)、デジタルテレビ、リモートコントロール、ウェアラブルコンピューティングデバイス、ゲームコンソール、ロボットデバイス、または、何らかの他のタイプのデバイスであり得る。コンピューティングデバイス200は、物理的画像処理システム、画像感知および処理アプリケーションがソフトウェアで動作する特定の物理的ハードウェアプラットフォーム、もしくは、画像取り込みおよび/または処理機能を実行するように構成されたハードウェアとソフトウェアとの他の組み合わせを表わし得るということが理解されるべきである。
図2に示されるように、コンピューティングデバイス200は、通信インターフェイス202と、ユーザインターフェイス204と、プロセッサ206と、データストレージ208と、カメラコンポーネント224とを含み得る。これらはすべて、システムバス、ネットワーク、または他の接続メカニズム210によって通信可能にともにリンクされ得る。
通信インターフェイス202は、コンピューティングデバイス200が、アナログまたはデジタル変調を使用して、他のデバイス、アクセスネットワーク、および/または転送ネットワークと通信することを可能にし得る。このため、通信インターフェイス202は、基本電話サービス(plain old telephone service:POTS)通信および/またはインターネットプロトコル(Internet protocol:IP)通信または他のパケット化通信といった、回線交換および/またはパケット交換通信を容易にし得る。たとえば、通信インターフェイス202は、無線アクセスネットワークまたはアクセスポイントとの無線通信のために構成されたチップセットおよびアンテナを含み得る。また、通信インターフェイス202は、イーサネット(登録商標)、ユニバーサルシリアルバス(Universal Serial Bus:USB)、または高精細度マルチメディアインターフェイス(High-Definition Multimedia Interface:HDMI(登録商標))ポートといった有線インターフェイスの形態をとるかまたはそれを含み得る。通信インターフェイス202はまた、Wi-Fi、BLUETOOTH(登録商標)、全地球測位システム(global positioning system:GPS)、または広域無線インターフェイス(たとえば、WiMAXまたは3GPP(登録商標)ロングタームエボリューション(Long-Term Evolution:LTE))といった無線インターフェイスの形態をとるかまたはそれを含み得る。しかしながら、他の形態の物理層インターフェイスおよび他のタイプの標準または専用通信プロトコルが、通信インターフェイス202を介して使用され得る。さらに、通信インターフェイス202は、複数の物理的通信インターフェイス(たとえば、Wi-Fiインターフェイス、BLUETOOTH(登録商標)インターフェイス、および広域無線インターフェイス)を含み得る。
ユーザインターフェイス204は、コンピューティングデバイス200が人間のユーザまたは人間以外のユーザと対話すること、たとえば、ユーザから入力を受信すること、およびユーザに出力を提供することを可能にするように機能し得る。このため、ユーザインターフェイス204は、キーパッド、キーボード、タッチ感知パネル、コンピュータマウス、トラックボール、ジョイスティック、マイクロホンといった入力コンポーネントを含み得る。ユーザインターフェイス204はまた、たとえばタッチ感知パネルと組み合わされ得る表示画面といった一つ以上の出力コンポーネントを含み得る。表示画面は、CRT、LCD、および/またはLED技術、もしくは、現在公知であるかまたは後に開発される他の技術に基づき得る。ユーザインターフェイス204はまた、スピーカ、スピーカジャック、音声出力ポート、音声出力デバイス、イヤホン、および/または他の同様のデバイスを介して、可聴出力を生成するように構成され得る。ユーザインターフェイス204はまた、マイクロホンおよび/または他の同様のデバイスを介して、可聴発話、ノイズ、および/または信号を受信し、および/または取り込むように構成され得る。
いくつかの例では、ユーザインターフェイス204は、(たとえば可視スペクトルおよび赤外スペクトルの双方で)コンピューティングデバイス200によってサポートされるスチルカメラおよび/またはビデオカメラ機能のためのビューファインダとして機能するディスプレイを含み得る。加えて、ユーザインターフェイス204は、カメラ機能の構成および合焦と画像の取り込みとを容易にする、一つ以上のボタン、スイッチ、ノブ、および/またはダイヤルを含み得る。これらのボタン、スイッチ、ノブ、および/またはダイヤルのうちのいくつかまたはすべてがタッチ感知パネルを介して実現されることが可能であり得る。
プロセッサ206は、一つ以上の汎用プロセッサ(たとえばマイクロプロセッサ)、および/または、一つ以上の専用プロセッサ(たとえばデジタル信号プロセッサ(digital signal processor:DSP)、グラフィックス処理ユニット(graphics processing unit:GPU)、浮動小数点ユニット(floating point unit:FPU)、ネットワークプロセッサ、または特定用途向け集積回路(application-specific integrated circuit:ASIC))を含み得る。いくつかの事例では、専用プロセッサは、他の可能性の中でもとりわけ、画像処理、画像整列、および画像結合が可能であり得る。データストレージ208は、磁気、光学、フラッシュ、もしくは有機ストレージなどの一つ以上の揮発性および/または不揮発性ストレージコンポーネントを含んでいてもよく、プロセッサ206と全体的にまたは部分的に統合されてもよい。データストレージ208は、リムーバブルおよび/または非リムーバブルコンポーネントを含み得る。
プロセッサ206は、本明細書で説明されるさまざまな機能を実行するために、データストレージ208に格納されたプログラム命令218(たとえば、コンパイルされているかもしくはコンパイルされていないプログラム論理および/または機械コード)を実行することが可能であり得る。したがって、データストレージ208は、コンピューティングデバイス200によって実行されると、コンピューティングデバイス200に、本明細書および/または添付図面に開示される方法、プロセス、あるいは動作のいずれかを実行させるプログラム命令を格納した非一時的コンピュータ読取可能媒体を含み得る。プロセッサ206によるプログラム命令218の実行は、プロセッサ206がデータ212を使用することをもたらし得る。
例として、プログラム命令218は、コンピューティングデバイス200にインストールされた、オペレーティングシステム222(たとえば、オペレーティングシステムカーネル、デバイスドライバ、および/または他のモジュール)と、一つ以上のアプリケーションプログラム220(たとえば、カメラ機能、アドレス帳、電子メール、ウェブ閲覧、ソーシャルネットワーキング、音声からテキストへの変換機能、テキスト翻訳機能、および/またはゲームアプリケーション)とを含み得る。同様に、データ212は、オペレーティングシステムデータ216と、アプリケーションデータ214とを含み得る。オペレーティングシステムデータ216は主にオペレーティングシステム222にアクセス可能であり、アプリケーションデータ214は主にアプリケーションプログラム220のうちの一つ以上にアクセス可能であり得る。アプリケーションデータ214は、コンピューティングデバイス200のユーザに見えるかまたはユーザから隠されているファイルシステムに配置され得る。
アプリケーションプログラム220は、一つ以上のアプリケーションプログラミングインターフェイス(application programming interface:API)を通してオペレーティングシステム222と通信し得る。これらのAPIは、たとえば、アプリケーションプログラム220がアプリケーションデータ214を読み出すことおよび/または書き込むこと、通信インターフェイス202を介して情報を送信または受信すること、ユーザインターフェイス204上で情報を受信および/または表示することなどを容易にし得る。
いくつかの用語では、アプリケーションプログラム220は、略して「アプリ」と呼ばれ得る。加えて、アプリケーションプログラム220は、一つ以上のオンラインアプリケーションストアまたはアプリケーションマーケットを通してコンピューティングデバイス200にダウンロード可能であり得る。しかしながら、アプリケーションプログラムはまた、コンピューティングデバイス200上のウェブブラウザを介してまたは物理的インターフェイス(たとえば、USBポート)を通してなどといった他のやり方で、コンピューティングデバイス200上にインストールされ得る。
カメラコンポーネント224は、アパーチャ、シャッタ、記録面(たとえば、写真フィルムおよび/または画像センサ)、レンズ、シャッタボタン、赤外線プロジェクタ、および/または可視光プロジェクタを含み得るが、それらに限定されない。カメラコンポーネント224は、可視光スペクトル(たとえば、380~700ナノメートルの波長を有する電磁放射)で画像を取り込むように構成されたコンポーネントと、赤外光スペクトル(たとえば、701ナノメートル~1ミリメートルの波長を有する電磁放射)で画像を取り込むように構成されたコンポーネントとを含み得る。カメラコンポーネント224は、プロセッサ206によって実行されるソフトウェアによって少なくとも部分的に制御され得る。
例示的な深度決定システム
図3は、環境内のカメラと一つ以上の被写体との間の物理的距離の推定値を決定するために使用され得る例示的なシステムを示す。具体的には、システム340は、被写体下端検出器308と、被写体下端比率計算器310と、オフセット計算器312と、距離投影モデル314とを含み得る。これらは各々、本明細書で説明されるそれぞれの動作を実行するように構成されたハードウェアコンポーネントおよび/またはソフトウェアコンポーネントの組み合わせを表わし得る。システム340は、画像データ300と、カメラのパラメータを示すメタデータとを、入力として受信するように構成され得る。メタデータは、画像データ300の取り込み時の、カメラピッチ306といったカメラの姿勢に関する情報を含み得る。画像データ300は、被写体302~304といった一つ以上の被写体をそこに表わし得る。被写体302~304は、他の可能性の中でもとりわけ、人間、動物、車両、ロボットデバイス、郵便ポスト、柱(たとえば灯柱、交通信号柱など)、および/またはベンチといった、環境のさまざまな移動および/または静止特徴を含み得る。
被写体下端検出器308は、画像データ300内の被写体の下端の垂直位置を検出するように構成され得る。いくつかの実現化例では、垂直位置は画素で表わされ得る。たとえば、被写体下端検出器308は、被写体302の下端が画像データ300の下端から250画素だけ上方に位置付けられていると決定し得る。被写体下端検出器308は、(i)画像データ300内の被写体302を検出し、(ii)画像データ300内の被写体302の検出に基づいて画像データ300内の被写体302の下端を検出し、(iii)被写体302の下端が環境の地面上に位置付けられていると決定するように構成された、一つ以上のアルゴリズムを実現し得る。被写体下端検出器308は、画像データ300によって表わされる被写体304および/または他の被写体に関して、相応の動作を行ない得る。
被写体302が人間である場合、被写体下端検出器308の一つ以上のアルゴリズムは、人間を検出し、人間の足および/または靴(すなわち、画像データ300内の人間の下端)を検出し、足および/または靴が地面と接していると決定するように構成され得る。同様に、被写体304が車両である場合、被写体下端検出器308の一つ以上のアルゴリズムは、車両を検出し、車両のホイールおよび/またはタイヤを検出し、ホイールおよび/またはタイヤが地面と接していると決定するように構成され得る。一つ以上のアルゴリズムは、さまざまな画像処理アルゴリズム、コンピュータビジョンアルゴリズム、および/または機械学習アルゴリズムを含み得る。
被写体下端検出器308は、被写体の下端の垂直位置を被写体下端比率計算器310に提供するように構成され得る。被写体下端比率計算器310は、被写体(たとえば被写体302)の下端の垂直位置と画像データ300の高さとの比率を計算するように構成され得る。具体的には、被写体下端比率計算器は、関数b=v/hを実現し得る。式中、bは被写体下端比率であり、vは被写体の下端の垂直位置であり、hは画像データ300の高さである。その目的のために、被写体下端比率計算器310は、画像データ300に関連付けられたメタデータに基づいて、画像データ300の配向を決定し得る。具体的には、被写体下端比率計算器310は、画像データ300が横長配向(すなわち、画像データ300の長辺が水平に配向された状態)で得られたか、または縦長配向(すなわち、画像データ300の長辺が垂直に配向された状態)で得られたかを決定し得る。被写体下端比率計算器はこのため、画像データ300の配向に基づいて、hの値を設定し得る。たとえば、3840画素×2160画素の解像度を有する画像データ300については、画像データ300の高さhは、画像データ300が縦長画像であるという決定に基づいて3480画素に設定され、または、画像データ300が横長画像であるという決定に基づいて2160画素に設定され得る。
距離投影モデル314は、画像データ300に表わされた被写体(たとえば被写体302)と画像データ300を生成したカメラとの間の推定物理的距離336を決定するように構成され得る。具体的には、距離投影モデル314は、被写体下端比率計算器によって計算された被写体下端比率と、カメラピッチ306を勘案するようにオフセット計算器312によって計算された被写体下端比率までの推定オフセットとの合計に基づいて、推定物理的距離336を決定し得る。
オフセット計算器312は、カメラピッチ306に基づいて、ゼロでないカメラピッチ角を勘案するように被写体下端比率をシフト/調節するべき量またはオフセットを決定するように構成され得る。具体的には、距離投影モデル314は、カメラの光軸が環境における地面と略平行に配向された間に画像データ300が取り込まれたという仮定の下に実現され得る。カメラが正のピッチ角へ上方に傾斜されるにつれて、被写体下端比率計算器310によって計算される被写体下端比率は、ピッチ角がゼロであった場合の被写体下端比率と比べて減少する。同様に、カメラが負のピッチ角へ下方に傾斜されるにつれて、被写体下端比率計算器310によって計算される被写体下端比率は、ピッチ角がゼロであった場合の被写体下端比率と比べて増加する。このため、オフセット計算器312がなければ、推定物理的距離336は、図4Eおよび図4Fに示され、これらの図に関して説明されるように、正のピッチ角では過小推定値になるかもしれず、負のピッチ角では過大推定値になるかもしれない。
オフセット計算器312はこのため、距離投影モデル314がカメラピッチ306を補正することによって正確な距離推定値を生成することを可能にし得る。補正プロセスは、図5に示され、その図に関してより詳細に論じられる。被写体下端比率計算器310によって決定された被写体下端比率と、オフセット計算器312によって計算された推定オフセットとが加算され、この合計は、距離投影モデル314に入力として提供され得る。
距離投影モデル314は複数のマッピング316~326を含み、マッピング316~326のうちの一つ以上を介して推定物理的距離336を決定し得る。マッピング316~326の各々は、複数の被写体下端比率を、複数の対応する物理的被写体距離と関連付け得る。たとえば、マッピング316は、被写体下端比率318~322を、対応する物理的被写体距離320~324と関連付け得る。同様に、マッピング326は、被写体下端比率328~332を、対応する物理的被写体距離330~334と関連付け得る。マッピング316~326に関連付けられた被写体下端比率(たとえば、被写体下端比率318~322および238~332)は、候補被写体下端比率と呼ばれ得る。なぜなら、それらは各々、推定物理的距離336を決定するために使用される可能性があり得るためである。
マッピング316~326の各々は、たとえば、他の可能性の中でもとりわけ、画像データ300の配向(すなわち、横長または縦長)、カメラが画像データ300を取り込む際に配置される環境での高さ、(たとえば、カメラの画像センサの寸法とカメラのレンズの光学特性とによって規定されるような)画像データ300を取り込むために使用されるカメラの視野、および/または、画像データ300のアスペクト比を含み得る、対応する一組のカメラパラメータに関連付けられ得る。このため、画像データ300に関連付けられたメタデータの一部として示され得る、画像データ300に関連付けられたカメラパラメータの値に基づいて、マッピング316~326のうちの一つが選択され、推定物理的距離336を決定するために使用され得る。したがって、被写体下端比率318~322は、被写体下端比率328~332と似ているか、重複するか、または同一であり得るが、被写体下端比率318~322は、被写体下端比率328~332とは異なる一組の物理的被写体距離にマッピングし得る。すなわち、物理的被写体距離320~324は物理的被写体距離330~334とは異なり得るが、これら二つの組は重複してもよい。
深度決定のための例示的なモデル
図4Aは、カメラの例示的な幾何学的モデルを示す。幾何学的モデルは、距離投影モデル314のマッピング316~326を生成するための基盤として使用され得る。具体的には、図4Aは、地面406を含む環境に配置された画像センサ400とアパーチャ402とを示す。画像センサ400とアパーチャ402とは、図4Aで地面406と略平行に延びる光軸404を規定する。画像センサ400(すなわち、その垂直中心)は、地面406から高さHだけ上方に配置され、アパーチャ402は、画像センサ400に対して(焦点)距離fに位置付けられる。
複数の線が、環境における地面406上のそれぞれの点から、アパーチャ402を通って、画像センサ400上の対応する点へ投影される。具体的には、複数の線は、1メートルの線と、5メートルの線と、10メートルの線と、20メートルの線と、30メートルの線と、無限遠基準線とを含む。5メートルの線(すなわち、D=5メートル)はたとえば、画像センサ400の中心に対する垂直位置dに対応してそこで画像を作成し、光軸404とともに角度θを形成する。1メートルの線は、観察可能および/または測定可能であり得る、アパーチャ402と被写体との間の最小距離に対応する。なぜなら、この線は、画像センサ400の一番上の部分に投影するためである。
無限遠基準線は、環境における観察可能な最大距離、地平線までの距離、しきい値距離値を上回る距離、および/または無限遠距離に対応し得る。たとえば、無限遠基準線が地面406の上方で生じ、したがって、地面406に沿った測定可能距離に関連付けられていない場合、無限遠基準線は無限遠距離に関連付けられ得る。図4Aでは、無限遠基準線は、光軸404とほぼ一致するように示されている。無限遠基準線と光軸404とを視覚的に区別するために、無限遠基準線の右側部分は光軸404を若干下回るように描かれ、無限遠基準線の左側は光軸404を若干上回るように描かれている。このため、図4Aに示される構成では、無限遠基準線は、画像センサ400のほぼ中心に対応し、そこで画像を作成する。(たとえば、カメラが空中輸送手段上に搭載される場合に)画像センサ400の高さHが図4Aに示される高さから増加されるにつれて、無限遠基準線によって作成される画像は、画像センサ400に沿って上方に移動し得る。同様に、(たとえば、カメラが床清掃ロボット上に搭載される場合に)画像センサ400の高さHが図4Aに示される高さから減少されるにつれて、無限遠基準線によって作成される画像は、画像センサ400に沿って下方に移動し得る。このため、高さHが変化するにつれて、無限遠基準線が光軸404から外れる場合がある。1メートルの線、5メートルの線、10メートルの線、20メートルの線、および/または30メートルの線に対応する画像の画像センサ400上のそれぞれの位置は、画像センサ400の高さHの変化に同様に応じ得る。
図4Aの例示的な幾何学的モデルは、深度決定のために使用される画像データを生成するために使用され得るカメラのいくつかの構成要素、たとえばレンズを省略している。このため、この例示的な幾何学的モデルは、一部のカメラの正確な表現ではないかもしれず、また、被写体距離を計算するために幾何学的モデルを明示的に使用することは、誤った距離推定値をもたらすかもしれない。にもかかわらず、幾何学的モデルは、画像センサ400上の垂直位置と、環境内の地面406に沿った対応する物理的距離との間には、非線形の関係(たとえば、tan(θ)=d/f=H/D、またはd=Hf/D)があるということを示す。このため、図4Aの幾何学的モデルのいかなる間違いも補正し、画像センサ400上の位置を地面406に沿った対応する物理的距離に正確にマッピングするように、非線形数値モデル(たとえば、距離投影モデル314)が、訓練データに基づいて経験的に決定され得る。
また、図4Aの幾何学的モデルは、カメラの高さH(たとえば、画像センサ400および/またはアパーチャ402の高さ)、距離f、角度θ、(画像センサ400のサイズ、画像センサ400に集光するために使用されるレンズ、および/または、レンズによって生成されるズームレベルによって規定された)カメラの視野、画像データがそこから生成される画像センサ400の部分(たとえば、画像データのアスペクト比)、ならびに/もしくは、画像センサ400の配向(たとえば、横長か縦長か)を含む、いくつかのカメラパラメータの変更が、地面406に沿った物理的距離と画像センサ400上の位置との関係(たとえばマッピング)を変更し得るということを示す。したがって、これらのカメラパラメータは、正確な距離推定値を生成するために、非線形数値モデルによって勘案され得る。
具体的には、マッピング316~326の各々は、特定の一組のカメラパラメータに対応する場合があり、また、その特定の一組のカメラパラメータを有するカメラにとっては正確であるものの、異なる一組のカメラパラメータを有する異なるカメラが使用される場合には不正確かもしれない距離推定値を生成する場合がある。このため、画像データ300を生成するために使用されるカメラに関連付けられた一組の実際のカメラパラメータに基づいて、マッピング316~326のうちの一つが選択され得る。具体的には、一組の実際のカメラパラメータに最もよく整合するカメラパラメータに関連付けられたマッピングが選択され得る。
たとえば、マッピング316~326のうちの第1のマッピングが、第1のカメラを備える第1のモバイルデバイスに対応する第1の一組のカメラパラメータに関連付けられ、一方、マッピング316~326のうちの第2のマッピングが、第1のカメラとは異なる第2のカメラを備える第2のモバイルデバイスに対応する第2の一組のカメラパラメータに関連付けられ得る。このため、第1のマッピングは、第1のモバイルデバイスによって生成された画像データに表わされた被写体までの距離を測定するために使用され、一方、第2のマッピングは、第2のモバイルデバイスによって生成された画像データに表わされた被写体までの距離を測定するために使用され得る。複数の異なるモバイルデバイスが各々、似ているかまたはほぼ同じ一組のカメラパラメータを有するカメラを使用する場合、一つのマッピングが複数の異なるモバイルデバイスによって使用され得る。加えて、各カメラは複数の異なる高さHに位置付けられ得るため、各カメラは、異なる高さに各々対応する複数のマッピングに関連付けられ得る。
図4Bは、被写体下端比率と物理的距離との間の例示的なマッピングのグラフィック表現を示す。マッピングは、画像センサ400上の垂直位置を画素で表わすのではなく、垂直位置を対応する被写体下端比率で表わし得る。これは、マッピングが画像データ解像度に関して不変のままであることを可能にする。このため、そのようなマッピングは、画像データがダウンサンプリングまたはアップサンプリングされる際に被写体距離を決定するために使用され得る。なぜなら、(画像がトリミングされない、および/または、アスペクト比が同じままであると仮定すると)被写体に関連付けられた被写体下端比率は変化しないためである。
具体的には、ユーザインターフェイス(user interface:UI)410は、0.0、0.25、0.35、0.24、0.47、および0.5を含むそれぞれの被写体下端比率に対応する複数の水平線を示す。とりわけ、被写体下端比率0.5に関連付けられた水平線は、UI410のほぼ中央に位置付けられて、UI410をほぼ等しい上半分と下半分とに分割する。UI412は、1メートル、5メートル、10メートル、20メートル、30メートル、および無限遠を含む対応する物理的距離でラベル付けされた、UI410と同じ複数の線を示す。すなわち、被写体下端比率0.0、0.25、0.35、0.24、0.47、および0.5は、物理的距離1メートル、5メートル、10メートル、20メートル、30メートル、および図4Aの無限遠基準線に関連付けられた距離(たとえば無限遠)に、それぞれ対応する。被写体下端比率は、距離投影モデル314のマッピング316~326のうちの一つを表わし得る関数F(b)によって、対応する距離にマッピングされ得る。
UI410および412はまた、人間を表現し得る被写体414を含む画像データを表示する。境界ボックス416が被写体414を囲む。境界ボックス416は、被写体下端検出器308によって実現される第1のアルゴリズムの出力を表わしてもよく、また、被写体下端検出器308によって実現される第2のアルゴリズムのための検索領域を規定するために使用されてもよい。たとえば、境界ボックス416は、人間の表現を含むことが第1のアルゴリズムによって決定された関心領域を規定し得る。境界ボックス416は、人間の下端を識別しようとして人間の足および/または靴を識別するように構成された第2のアルゴリズムに入力として提供され得る。このため、境界ボックス416は、被写体下端を探す際に第2のアルゴリズムによって考慮される検索空間を減少させ得る。加えて、境界ボックス416が被写体ラベルまたは分類(たとえば、人間、車両、動物など)に関連付けられる場合、ラベルは、そのラベルに関連付けられた被写体の下端を探し出すための適切なアルゴリズムを選択するために使用され得る。たとえば、境界ボックス416が自動車の表現を含むとして分類される場合、人間の足および/または靴を探すアルゴリズムではなく、自動車のホイールおよび/またはタイヤを探すアルゴリズムが、被写体下端を検索するために選択され得る。
UI410および412はさらに、被写体414の下端に対応する線を示す。UI410では、この線は、(被写体414の下端が、UI410の下端から1/3上がった位置の少し下に位置付けられていることを示す)被写体下端比率0.31でラベル付けされ、一方、UI412では、それは、距離6メートルでラベル付けされている。被写体下端比率0.31と、場合によってはそれに対応する線とは、被写体下端比率計算器310および/またはオフセット計算器312の出力を表わし得る。被写体下端比率0.31は、関数F(b)を介して、対応する物理的距離6メートルにマッピングされ得る。
F(b)は、経験的な訓練データに基づいて決定され得る。たとえば、カメラに対して複数の物理的距離が測定され、環境内で視覚的にマークされ得る。カメラは、これらの視覚的にマークされた距離を表わす訓練画像データを取り込むために使用され得る。訓練画像データを取り込む間、カメラは、環境内の予め定められた高さに配置され得る。このため、この訓練画像データに基づいて訓練された関数またはマッピングは、(i)同じカメラ、もしくは、似ているかまたはほぼ同じ一組のカメラパラメータを有する別のカメラを使用して、(ii)似ているかまたはほぼ同じ予め定められた高さに位置付けられて、距離を測定するために有効であり得る。追加の関数またはマッピングは、異なる一組のカメラパラメータを有するカメラおよび/または異なる高さに位置付けられた同じカメラを使用して得られた訓練データに基づいて、同様の手順を使用して決定され得る。
Figure 2023525066000002
他の例では、関数F(b)は、人工知能(artificial intelligence:AI)および/または機械学習(machine learning:ML)モデルとして実現され得る。たとえば、人工ニューラルネットワーク(artificial neural network:ANN)が、被写体下端比率と物理的距離との間のマッピングを実現するために使用され得る。いくつかの実現化例では、カメラパラメータの各組は、対応するANNに関連付けられ得る。すなわち、マッピング316~326の各々は、対応する一組のカメラパラメータを有するカメラによって取り込まれた画像データを使用して訓練された別個のANNを表わし得る。他の実現化例では、単一のANNが、マッピング316~326の各々を同時に実現し得る。その目的のために、このANNは、ANNが入力された被写体下端比率を対応する物理的距離にどのようにマッピングするかを調節し得る、カメラパラメータの少なくとも部分集合を、入力として受信するように構成され得る。このため、ANNは、各候補被写体下端比率を複数の物理的距離にマッピングするように構成されてもよく、特定の被写体下端比率についての特定の物理的距離が、カメラパラメータの値に基づいてANNによって選択されてもよい。
とりわけ、距離投影モデル314は、構造化光に依存することなく単眼カメラを使用して取り込まれた一つの可視光スペクトル画像に基づいて、被写体に関連付けられた距離を決定するように構成され得る。すなわち、距離は、立体画像データを使用することなく、または、環境上に予め定められたパターンを投影することなく、決定され得る。代わりに、被写体までの距離を正確に決定するために、距離投影モデル314および/またはオフセット計算器312は、カメラの他の局面の中でもとりわけ、環境に対するカメラの姿勢および/またはカメラの光学特性を規定するカメラパラメータに基づいて被写体距離を推定し得る。カメラの姿勢が変更される場合、および/または、異なるカメラが使用される場合、距離投影モデル314および/またはオフセット計算器312がたとえば適切なマッピングを使用することによってこの差を補償するように、カメラパラメータは更新され得る。しかしながら、場合によっては、システム340は、立体画像データおよび/または構造化光投影に依存する他の深度決定方法と組み合わされて使用され得る。
例示的なモデル誤差および誤差補正
図4C、図4D、図4E、および図4Fは、実際のカメラパラメータが、距離投影モデル314によって仮定または使用されるカメラパラメータから外れる場合に生じ得る誤差を示す。具体的には、図4Cの上部は、画像センサ400が高さHから高さH’へ上方に移動され、その結果、光軸404が、線418によって示されるように、比例する量だけ上方に動くことを示す。この上方移動がなければ、画像センサ400に最も近い被写体414の下端部分は、線422によって示されるように、画像センサ400上のその中心から距離dだけ上方で画像を作成したであろう。しかしながら、上方移動の結果、画像は代わりに、線420によって示されるように、画像センサ400の中心から距離d’(dよりも大きい)だけ上方で作成される。
アパーチャ402と被写体414との間の距離Dを計算するために使用されるマッピングが高さH’ではなく高さHに対応する場合、マッピングは、被写体414が、距離Dではなく、図4Cの下部に示されるような距離D’に位置付けられていると誤って決定するかもしれない。具体的には、図4Cの下部は、線418が光軸404と一致し、線420が画像センサ400上の同じ点から地面上の距離Dではなく距離D’へ延びるように、画像センサ400が下方に戻るように移動されたことを示す。距離D’は距離Dよりも短く、その結果、距離推定値は過小推定値になる。この誤差は、HではなくH’のカメラ高さに対応するマッピングを使用することによって減少され、最小化され、または回避され得る。
同様に、図4Dの上部は、画像センサ400が高さHから高さH”へ下方に移動され、その結果、光軸404が、線424によって示されるように、比例する量だけ下方に動くことを示す。この下方移動がなければ、画像センサ400に最も近い被写体414の下端部分は、線422によって示されるように、画像センサ400上のその中心から距離dだけ上方で画像を作成したであろう。しかしながら、下方移動の結果、画像は代わりに、線426によって示されるように、画像センサ400の中心から距離d”(dよりも小さい)だけ上方で作成される。
アパーチャ402と被写体414との間の距離Dを計算するために使用されるマッピングが高さH”ではなく高さHに対応する場合、マッピングは、被写体414が、距離Dではなく、図4Dの下部に示されるような距離D”に位置付けられていると誤って決定するかもしれない。具体的には、図4Dの下部は、線424が光軸404と一致し、線426が画像センサ400上の同じ点から地面上の距離Dではなく距離D”へ延びるように、画像センサ400が上方に戻るように移動されたことを示す。距離D”は距離Dよりも長く、その結果、距離推定値は過大推定値になる。この誤差は、HではなくH”のカメラ高さに対応するマッピングを使用することによって減少され、最小化され、または回避され得る。
いくつかの実現化例では、システム340はユーザインターフェイスを提供するように構成され、それを介して、画像センサ400を含むカメラの高さが指定され得る。高さのこの指定に基づいて、対応するマッピングが、推定物理的距離336を決定する際に使用されるようにマッピング316~326から選択され得る。このため、画像センサ400が指定された高さまたはその近くで保持されている間、図3のシステム340は、物理的距離の正確な推定値を生成し得る。しかしながら、画像センサ400が指定された高さから外れた場合、物理的距離の推定値は誤っているかもしれず、誤差の大きさは、画像センサ400を含むカメラの指定された高さと実際の高さとの差に比例し得る。
他の実現化例では、カメラは、カメラの高さ、ひいては画像センサ400の高さを測定するように構成されたデバイスを備え得る。たとえば、カメラは、発光体によって放出され、地面から反射され、光検出器によって検出された光の飛行時間に基づいた高さの測定を可能にするように構成された発光体および光検出器を含み得る。飛行時間測定時にカメラ、発光体、および/または光検出器の配向を検出することによって、測定された距離が実際には高さであることを確認するために、慣性計測装置(inertial measurement unit:IMU)が使用され得る。具体的には、飛行時間測定値は、IMUによって検出された重力ベクトルと平行な方向に光が放出される場合の高さを示し得る。このため、高さの測定値に基づいて、対応するマッピングが、マッピング316~326から選択され得る。カメラの高さの変更が検出される場合、更新されるマッピングが、当該マッピングによって仮定される高さをカメラの実際の高さと一致させたまま保つように選択されてもよく、それにより、正確な距離測定を可能にする。
図4Eの上部は、画像センサ400がゼロのピッチ角から正のピッチ角φへ上方に傾斜され、その結果、光軸404が、線428によって示されるように、上方に傾けられることを示す。アパーチャ402の高さH(ひいてはカメラの有効高さ)は、上方傾斜によって変更されないかもしれない。この上方傾斜がなければ、画像センサ400に最も近い被写体414の下端部分は、図4Cおよび図4Dに示されるように、画像センサ400上のその中心から距離dだけ上方で画像を作成したであろう。しかしながら、上方傾斜の結果、画像は代わりに、線430によって示されるように、画像センサ400の中心から距離s’(dよりも大きい)だけ上方で作成される。
画像センサ400上の被写体414の下端の位置へのピッチ角φの効果が補正されない場合、距離投影モデル314は、被写体414が、距離Dではなく、図4Eの下部に示されるような距離S’に位置付けられていると誤って決定するかもしれない。具体的には、図4Eの下部は、線428が光軸404と一致し、線430が画像センサ400上の同じ点から地面上の距離Dではなく距離S’へ延びるように、画像センサ400が下方に戻るように傾斜されたことを示す。距離S’は距離Dよりも短く、その結果、距離推定値は過小推定値になる。この誤差は、被写体414について決定された被写体下端比率に推定オフセットを加算することによって減少され、最小化され、または回避され、それにより、被写体下端比率を、ピッチ角φがゼロである場合の被写体下端比率にシフトし得る。
また、図4Fの上部は、画像センサ400がゼロのピッチ角から負のピッチ角αへ下方に傾斜され、その結果、光軸404が、線432によって示されるように、下方に傾けられることを示す。アパーチャ402の高さHは、下方傾斜によって変更されないかもしれない。この下方傾斜がなければ、画像センサ400に最も近い被写体414の下端部分は、図4Cおよび図4Dに示されるように、画像センサ400上のその中心から距離dだけ上方で画像を作成したであろう。しかしながら、下方傾斜の結果、画像は代わりに、線434によって示されるように、画像センサ400の中心から距離s”(dよりも小さい)だけ上方で作成される。
画像センサ400上の被写体414の下端の位置へのピッチ角αの効果が補正されない場合、距離投影モデル314は、被写体414が、距離Dではなく、図4Fの下部に示されるような距離S”に位置付けられていると誤って決定するかもしれない。具体的には、図4Fの下部は、線432が光軸404と一致し、線434が画像センサ400上の同じ点から地面上の距離Dではなく距離S”へ延びるように、画像センサ400が上方に戻るように傾斜されたことを示す。距離S”は距離Dよりも長く、その結果、距離推定値は過大推定値になる。この誤差は、被写体414について決定された被写体下端比率に推定オフセットを加算することによって減少され、最小化され、または回避され、それにより、被写体下端比率を、ピッチ角αがゼロである場合の被写体下端比率にシフトし得る。
例示的なピッチ角補償
図5は、カメラのゼロでないピッチ角を補償するための例示的なアプローチを示す。具体的には、図5は、光軸504Aが環境における地面と平行に延びる(たとえば、環境の重力ベクトルと垂直に延びる)ようにゼロのピッチ角を有する配向500Aおよび502Aにそれぞれ位置付けられた、カメラの画像センサ500およびアパーチャ502を示す。無限遠基準線520が画像センサ500を通って投影されて示されており、画像センサ500が配向500Aから配向500Bへ下方に傾斜され、および/または、配向500Aから配向500Cへ上方に傾斜される際の、画像センサ500に対する無限遠基準線520の位置の見かけの変化を示している。加えて、図5では、画像センサ500が配向500Aにある場合、無限遠基準線520は光軸504Aと一致し、ひいては、被写体下端比率0.5に対応するように示される。しかしながら、画像センサ500が配向500Aにとどまった状態で画像センサ500の高さが変更されると、無限遠基準線520は光軸504Aから外れ、異なる被写体下端比率(たとえば、高さに依存して0.0~1.0)に対応し得る。
画像センサ500およびアパーチャ502が配向500Aおよび502Aから配向500Cおよび502Cへそれぞれ上方に傾斜されると、無限遠基準線520は画像センサ500に対して上方に動く。この上方傾斜中、アパーチャ502は基準トレース506内で回転し、画像センサ500は、カメラの焦点距離fに等しい半径を有する焦点トレース508に沿って動く。このため、上方傾斜は、地面に対するカメラの高さHを一定に保ちつつ、ピッチ角の正の変化を表わす。正のピッチ角は仰角と考えられ、一方、負のピッチ角は俯角と考えられ得る。
画像センサ500が配向500Cにある状態では、無限遠基準線520は、画像センサ500の一番上の部分と一致する。このため、配向500Cでは、無限遠基準線520は、対応する画像データ512内で画面比率ΔLmax elevationだけ下方に移動される。無限遠基準線520が画像データ512内で上方ではなく下方に移動されるのは、画像センサ500上に形成される画像が上下逆さまになっており(すなわち、反転されており)、このため、画像データが表示される際に被写体を正しい上下関係で見せるために、画像センサ500の出力が反転されるためである。画像センサ500が配向500Aにある際に、無限遠基準線520が画像センサ500の中央と一致する場合、ΔLmax elevationは0.5に等しくなり得る。しかしながら、ΔLmax elevationは、画像センサ500が環境において配置される高さに依存して、他の値を有していてもよい。
同様に、画像センサ500およびアパーチャ502が配向500Aおよび502Aから配向500Bおよび502Bへそれぞれ下方に傾斜されると、無限遠基準線520は画像センサ500に対して下方に動く。この下方傾斜中、アパーチャ502は基準トレース506内で回転し、画像センサ500は焦点トレース508に沿って動く。このため、下方傾斜は、地面に対するカメラの高さHを一定に保ちつつ、ピッチ角の負の変化を表わす。画像センサ500が配向500Bにある状態では、無限遠基準線520は、画像センサ500の一番下の部分と一致する。このため、配向500Bでは、無限遠基準線520は、対応する画像データ510内で画面比率ΔLmax depressionだけ上方に移動される。無限遠基準線520が画像データ510内で下方ではなく上方に移動されるのは、画像センサ500上に形成される画像の反転に起因する。
画像センサ500が配向500Aにある際に、無限遠基準線520が画像センサ500の中央と一致する場合、ΔLmax depressionは0.5に等しくなり得る。しかしながら、ΔLmax depressionは、画像センサ500の高さに依存して、他の値を有していてもよい。画像センサ500が配置される高さにかかわらず、ΔLmax elevationとΔLmax depressionとの合計は1.0に等しくなり得る。
幾何学的モデル514は、画像センサ500の配向500Bおよび500Cを示しており、カメラのピッチ角の変化を補償するために使用され得る数学的関係を決定するために使用され得る。具体的には、幾何学的モデル514は、配向500Bが、負のピッチ角αmax depressionと、光軸504Aの配向504Bへの回転と、ΔLmax depressionによって無限遠基準線520に関連付けられた被写体下端比率のオフセットとに対応することを示す。このため、tan(αmax depression)=ΔLmax depression/f、およびf=ΔLmax depression/tan(αmax depression)である。したがって、αmax depressionとφmax elevationとの間のピッチ角θ分のカメラ(すなわち、画像センサ500およびアパーチャ502)の回転については、被写体下端比率のオフセットΔbは、Δb=ftan(θ)、言い換えればΔb=(ΔLmax depression/tan(αmax))tan(θ)によってモデル化される。この式は、画像データ300に関連付けられたカメラピッチ306を補償する推定オフセットを決定するために、オフセット計算器312によって使用または実現され得る。推定オフセットΔbは(たとえば画素数ではなく)被写体下端比率に換算して計算されるため、推定オフセットΔbは、被写体下端比率計算器310によって計算された被写体下端比率に直接加算され得る。
とりわけ、対称的であるカメラについては、αmax depressionとφmax elevationとは同じ大きさを有し得るが、カメラピッチの異なる方向を示し得る。したがって、対応する数学的関係は、上で行なわれたようなαmax depressionではなく、φmax elevationに基づいて決定され得る。具体的には、配向500Cは、正のピッチ角φmax elevationと、光軸504Aの配向504Cへの回転と、ΔLmax elevationによって無限遠基準線520に関連付けられた被写体下端比率のオフセットとに対応する。このため、tan(φmax elevation)=ΔLmax elevation/f、およびf=ΔLmax elevation/tan(φmax elevation)である。したがって、αmax depressionとφmax elevationとの間のピッチ角θ分の画像センサ500の回転については、被写体下端比率のオフセットΔbは、Δb=ftan(θ)、言い換えればΔb=(ΔLmax elevation/tan(φmax elevation))tan(θ)によってモデル化される。推定オフセットΔbは、正のピッチ角については正であり(結果として、被写体下端比率は、オフセットと合計されると増加される)、負のピッチ角については負であり得る(結果として、被写体下端比率は、オフセットと合計されると減少される)。
αmax depressionおよびφmax elevationの値は、カメラのための較正手順を介して経験的に決定される。較正手順中、カメラは、無限遠基準線520が画像センサ500の下端または上端へ動かされるまでそれぞれ下方または上方に傾斜され、画像510または512に示されるオフセットをそれぞれもたらし得る。すなわち、較正は、画像センサ500およびアパーチャ502を配向500Bおよび502Bにそれぞれ配置し、αmax depressionおよびΔLmax depressionの値を測定することによって、または、配向500Cおよび502Cにそれぞれ配置し、これらの配向におけるφmax elevationおよびΔLmax elevationの値を測定することによって、行なわれ得る。αmax depressionおよびφmax elevationの決定された値は、似ているかまたはほぼ同じレンズ、似ているかまたはほぼ同じセンササイズ(すなわち、長さおよび幅)、似ているかまたはほぼ同じ焦点距離f、ならびに/もしくは、生成された画像データの似ているかまたはほぼ同じアスペクト比を含む光学部品の似ているかまたはほぼ同じ構成を有するカメラにとって有効であり得る。これらのカメラパラメータのうちの一つ以上が異なる場合、αmax depressionおよびφmax elevationの値は経験的に再決定され得る。
例示的な使用事例
図6は、本明細書に開示される深度決定モデル、システム、デバイス、および手法についての例示的な使用事例を示す。具体的には、図6は、ほぼ胸の高さでコンピューティングデバイス602を着用しているユーザ600を示す。コンピューティングデバイス602はコンピューティングシステム100および/またはコンピューティングデバイス200に対応し、カメラとシステム340の実現化例とを含み得る。コンピューティングデバイス602は、ランヤード、コード、ストラップ、または他の結合メカニズムを介してユーザ600の首のまわりに掛けられ得る。それに代えて、コンピューティングデバイス602は、ユーザ600の身体に、異なる位置で、および/または異なる連結メカニズムを通して接続され得る。このため、ユーザ600が環境を通って歩く間、コンピューティングデバイス602およびそのカメラは、環境の地面より上方のほぼ固定された高さに位置付けられ得る(それは、ユーザ600の動きに起因するいくつかの高さ変動を可能にする)。したがって、距離投影モデル314は、マッピング316~326から、このほぼ固定された高さに対応するマッピングを選択してもよく、このため、環境内で検出された被写体までの距離を決定するために使用され得る。
具体的には、コンピューティングデバイス602上のカメラは、視野604によって示されるような、被写体606を含む環境を表わす画像データを取り込み得る。画像データ300に対応し得るこの画像データに基づいて、図3のシステム340は、被写体606と、コンピューティングデバイス602、そのカメラ、および/またはユーザ600との間の推定物理的距離336を決定するために使用され得る。推定物理的距離336に基づいて、コンピューティングデバイス602は、物理的距離336の表現を生成するように構成され得る。この表現は、他の可能性の中でもとりわけ、視覚表現、可聴表現、および/または触覚表現であり得る。このため、本明細書で説明される深度決定手法は、たとえば、視覚障害のある人々に、環境におけるさまざまな被写体までの距離を通知することによって、そのようなユーザが環境を横切ることを支援するために使用され得る。
たとえば、コンピューティングデバイス602は、そのディスプレイ上に、推定物理的距離336の指標を、被写体606の表示された表現の近傍に表示し、それにより、被写体606がコンピューティングデバイス602から水平に推定物理的距離336だけ隔てられていることを示し得る。別の例では、コンピューティングデバイス602は、一つ以上のスピーカを介して、推定物理的距離336を表現する発話を生成し得る。いくつかの事例では、この発話はまた、被写体(たとえば、人間、車両、動物、静止物体など)の分類、および/または、コンピューティングデバイス602の画面の垂直中心線に対する被写体606の水平方向を示し得る。このため、発話はたとえば「1時方向の2メートル先に箱があります」であってもよく、ここで、1時方向は、垂直中心線に対して30度の水平方向を示すためにクロックポジションを使用する。さらに別の例では、推定物理的距離336の触覚表現がコンピューティングデバイス602の振動を介して生成されてもよく、ここで、振動のパターンは、ユーザ600に対する被写体606の距離および配向に関する情報を符号化する。
さらに、いくつかの実現化例では、コンピューティングデバイス602は、ユーザ600が、視野604の一部(すなわち、コンピューティングデバイス602のディスプレイの一部)をアクティブとして指定し、視野604の別の一部を非アクティブとして指定することを可能にし得る。この指定に基づいて、コンピューティングデバイス602は、視野604のアクティブな部分内に少なくとも部分的に含まれている被写体については距離推定値を生成し、アクティブな部分内に少なくとも部分的に含まれていない被写体(すなわち、視野604の非アクティブな部分内に全体が入っている被写体)についてはそのような距離推定値を生成することを省略するように構成され得る。たとえば、視覚障害のある人は、コンピューティングデバイス602を使用して、予想される歩行経路沿いにユーザの前に位置する被写体までの距離を測定したいかもしれないが、歩行経路の隣りに位置する被写体までの距離には興味がないかもしれない。このため、そのようなユーザは、ディスプレイ高さに等しい高さとディスプレイ幅よりも小さい幅とを有するコンピューティングデバイス602のディスプレイの長方形部分をアクティブとして指定し、このため、コンピューティングデバイス602に、ディスプレイの縁近くの画像データに表わされた被写体を無視させるかもしれない。
加えて、いくつかの実現化例では、コンピューティングデバイス602は、ユーザ600が、距離を測定するべき被写体のクラスまたはタイプを指定することを可能にし得る。この指定に基づいて、コンピューティングデバイス602は、指定されたクラスまたはタイプのうちの一つに分類された被写体については距離推定値を生成し、指定されたクラスまたはタイプに該当しない被写体についてはそのような距離推定値を生成することを省略するように構成され得る。たとえば、視覚障害のある人は、コンピューティングデバイス602を使用して、他の人間、車両、および動物といった動く被写体までの距離を測定したいかもしれないが、ベンチ、灯柱、および/または郵便ポストといった動かない被写体までの距離には興味がないかもしれない。
追加の例示的な動作
図7は、被写体とカメラとの間の距離の推定値を決定することに関する動作のフローチャートを示す。これらの動作は、コンピューティングシステム100、コンピューティングデバイス200、システム340、および/またはコンピューティングデバイス602、および/またはさまざまな他のタイプのデバイスまたはデバイスサブシステムのうちの一つ以上によって実行され得る。図7の実施形態は、そこに示される特徴のうちの任意の一つ以上の除去によって簡略化されてもよい。さらに、これらの実施形態は、前述の図のいずれかの、もしくは本明細書で他の態様で説明される、特徴、局面、および/または実現化例と組み合わされてもよい。
ブロック700は、カメラから、環境における被写体を表わす画像データを受信することを伴い得る。
ブロック702は、画像データに基づいて、画像データ内の被写体の下端の垂直位置を決定することを伴い得る。
ブロック704は、垂直位置と画像データの高さとの間の被写体下端比率を決定することを伴い得る。
ブロック706は、距離投影モデルを介しておよび被写体下端比率に基づいて、カメラと被写体との間の物理的距離の推定値を決定することを伴い得る。距離投影モデルは、複数の候補被写体下端比率のうちの各それぞれの候補被写体下端比率について、(i)それぞれの候補被写体下端比率と(ii)環境における対応する物理的距離との間のマッピングを規定し得る。
ブロック708は、カメラと被写体との間の物理的距離の推定値の指標を生成することを伴い得る。
いくつかの実施形態では、マッピングは、カメラが環境内の予め定められた高さに配置されているという仮定に基づき得る。
いくつかの実施形態では、画像データを取り込んでいる間にカメラの物理的高さが予め定められた高さを上回る場合、カメラと被写体との間の物理的距離の前記推定値は過小推定値であり得る。画像データを取り込んでいる間にカメラの物理的高さが予め定められた高さを下回る場合、カメラと被写体との間の物理的距離の推定値は過大推定値であり得る。
いくつかの実施形態では、カメラに関連付けられたユーザインターフェイスを介して、予め定められた高さの指定が受信され得る。予め定められた高さの指定に基づいて、距離投影モデルは、カメラが予め定められた高さの指定に従って位置付けられていると仮定するようにマッピングを修正することによって構成され得る。
いくつかの実施形態では、距離投影モデルを構成することは、予め定められた高さの指定に基づいて、複数の候補マッピングからマッピングを選択することを含み得る。複数の候補マッピングのうちの各それぞれのマッピングは、予め定められた高さの対応する指定に関連付けられ得る。
いくつかの実施形態では、距離投影モデルは機械学習モデルを含み得る。距離投影モデルを構成することは、予め定められた高さの指定に基づいて機械学習モデルの少なくとも一つの入力パラメータを調節することを含み得る。
いくつかの実施形態では、マッピングはカメラの幾何学的モデルに基づき得る。幾何学的モデルは、(i)焦点距離を有し、環境内の予め定められた高さに配置されたカメラと、(ii)環境の地面とほぼ平行に配向されたカメラの光軸と、(iii)カメラの画像センサ上のそれぞれの点から環境の地面上の対応する点へ投影された複数の線のうちの各それぞれの線とを含み得る。各それぞれの候補被写体下端比率は、幾何学的モデルに基づいて、環境における対応する物理的距離に関連付けられ得る。
いくつかの実施形態では、マッピングは、(i)カメラの縦長配向に対応する第1のマッピングと、(ii)カメラの横長配向に対応する第2のマッピングとを含み得る。第1のマッピングに関連付けられた各それぞれの候補被写体下端比率は、縦長画像データ内の対応する垂直位置と縦長画像データの高さとの間にあり得る。第2のマッピングに関連付けられた各それぞれの候補被写体下端比率は、横長画像データ内の対応する垂直位置と横長画像データの高さとの間にあり得る。画像データの高さは、画像データを取り込んでいる間のカメラの配向に基づいて決定され得る。画像データを取り込んでいる間のカメラの配向に基づいて、第1のマッピングまたは第2のマッピングが、カメラと被写体との間の物理的距離の推定値を決定する際に使用されるために選択され得る。
いくつかの実施形態では、カメラに関連付けられた一つ以上のセンサから、カメラのピッチ角を示すセンサデータが得られ得る。カメラのピッチ角を示すセンサデータに基づいて、被写体下端比率の推定オフセットが決定され得る。被写体下端比率の推定オフセットは、ゼロのピッチ角に対するカメラのピッチ角によって引き起こされた垂直位置の変化を勘案し得る。被写体下端比率と推定オフセットとの合計が決定され得る。距離投影モデルは、合計に基づいて、カメラと被写体との間の物理的距離の推定値を決定するように構成され得る。
いくつかの実施形態では、被写体下端比率の推定オフセットを決定することは、カメラの推定焦点距離とカメラのピッチ角の正接との積を求めることを含み得る。カメラの上方傾斜に関連付けられた正のピッチ角は、合計が被写体下端比率よりも高くなるように正の値を有する推定オフセットをもたらし得る。カメラの下方傾斜に関連付けられた負のピッチ角は、合計が被写体下端比率よりも低くなるように負の値を有する推定オフセットをもたらし得る。
いくつかの実施形態では、推定焦点距離は、(i)無限遠基準線をカメラの画像センサ上の初期位置から画像センサの上端へ第1の画面比率だけオフセットする最大ピッチ角の決定、または(ii)無限遠基準線を画像センサ上の初期位置から画像センサの下端へ第2の画面比率だけオフセットする最小ピッチ角の決定、のうちの少なくとも一つに基づき得る。第1の画面比率と第2の画面比率との合計は1に等しい。
いくつかの実施形態では、複数の候補被写体下端比率は、(i)最小の測定可能な物理的距離に対応する、ゼロである第1の候補被写体下端比率から、(ii)最大の測定可能な物理的距離に対応する第2の候補被写体下端比率に及び得る。
いくつかの実施形態では、画像データ内の被写体の下端の垂直位置を決定することは、一つ以上の被写体検出アルゴリズムを介して、画像データ内の被写体の位置に対応する画像データ内の関心領域を決定することを含み得る。一つ以上の被写体下端検出アルゴリズムを介しておよび関心領域に基づいて、被写体の下端が識別され得る。被写体の下端を識別することに基づいて、被写体の下端が環境の地面と接していると決定され得る。被写体の下端が環境の地面と接していると決定することに基づいて、画像データ内の被写体の下端の垂直位置が決定され得る。
いくつかの実施形態では、カメラから、環境における追加の被写体を表わす追加の画像データが受信され得る。追加の画像データに基づいて、追加の被写体の下端が画像データ内で見えないと決定され得る。追加の被写体の下端が画像データ内で見えないと決定することに基づいて、カメラと追加の被写体との間の物理的距離の追加の推定値が、最小の測定可能な物理的距離を下回る予め定められた値であると決定され得る。カメラと追加の被写体との間の物理的距離の追加の推定値の追加の指標が生成され得る。
いくつかの実施形態では、カメラと被写体との間の物理的距離の推定値の指標を生成することは、(i)物理的距離の推定値の視覚表現をディスプレイ上に表示すること、(ii)物理的距離の推定値を表現する可聴発話を生成すること、または(iii)物理的距離の推定値の触覚表現を生成すること、のうちの一つ以上を含み得る。
いくつかの実施形態では、カメラの視野のアクティブな部分の指定が受信され得る。被写体の少なくとも一部がカメラの視野のアクティブな部分内に含まれていると決定され得る。被写体の少なくとも一部がカメラの視野のアクティブな部分内に含まれていると決定することに基づいて、カメラと被写体との間の物理的距離の推定値の指標が生成され得る。カメラと対応する被写体との間の物理的距離のそれぞれの推定値の指標の生成は、カメラの視野のアクティブな部分の外側の被写体については省略され得る。
いくつかの実施形態では、複数の被写体クラスからの一つ以上の被写体クラスの選択が受信され得る。被写体が一つ以上の被写体クラスのうちの第1の被写体クラスに属すると決定され得る。被写体が第1の被写体クラスに属すると決定することに基づいて、カメラと被写体との間の物理的距離の推定値の指標が生成され得る。カメラと対応する被写体との間の物理的距離のそれぞれの推定値の指標の生成は、第1の被写体クラスに属さない被写体については省略され得る。
結び
本開示は、さまざまな局面の例示として意図される、本願に記載される特定の実施形態に関して限定されるべきではない。当業者には明らかであるように、その範囲から逸脱することなく、多くの修正および変形を行なうことができる。本明細書に記載されるものに加えて、本開示の範囲内の機能的に等価な方法および装置が、前述の説明から当業者には明らかであろう。そのような修正および変形は、特許請求の範囲内に入るよう意図される。
上記の詳細な説明は、添付図面を参照して、開示されるシステム、デバイス、および方法のさまざまな特徴および動作を説明する。図面では、文脈が別様に指示しない限り、同様の記号は典型的には同様の構成要素を識別する。本明細書および図面に記載された例示的な実施形態は、限定的であるよう意図されていない。本明細書に提示される主題の範囲から逸脱することなく、他の実施形態を利用することができ、他の変更を行なうことができる。本明細書で概して説明され図面に示される本開示の局面は、幅広く多様な異なる構成で配置され、置き換えられ、組み合わされ、分離され、および設計され得ることが容易に理解されるであろう。
図面におけるメッセージフロー図、シナリオ、およびフローチャートのうちのいずれかまたはすべてに関して、ならびに本明細書で論じられるように、各ステップ、ブロック、および/または通信は、例示的な実施形態に従った情報の処理および/または情報の伝送を表わし得る。代替的な実施形態は、これらの例示的な実施形態の範囲内に含まれる。これらの代替的な実施形態では、たとえば、ステップ、ブロック、伝送、通信、要求、応答、および/またはメッセージとして記載される動作は、関与する機能性に依存して、ほぼ同時に実行されるかまたは逆の順序で実行されることを含む、示されるかまたは論じられる順序とは異なる順序で実行され得る。また、より多いかまたはより少ないブロックおよび/または動作を、本明細書で論じられるメッセージフロー図、シナリオ、およびフローチャートのいずれかとともに使用することができ、これらのメッセージフロー図、シナリオ、およびフローチャートは、部分的または全体的に、互いに組み合わされ得る。
情報の処理を表わすステップまたはブロックは、本明細書で説明される方法または手法の特定の論理機能を実行するように構成され得る回路に対応してもよい。それに代えて、またはそれに加えて、情報の処理を表わすブロックは、モジュール、セグメント、または(関連データを含む)プログラムコードの一部分に対応してもよい。プログラムコードは、本方法または手法において特定の論理演算またはアクションを実現するためにプロセッサによって実行可能な一つ以上の命令を含み得る。プログラムコードおよび/または関連データは、ランダムアクセスメモリ(random access memory:RAM)、ディスクドライブ、ソリッドステートドライブ、または別の記憶媒体を含む記憶装置といった、任意のタイプのコンピュータ読取可能媒体に格納され得る。
コンピュータ読取可能媒体はまた、レジスタメモリ、プロセッサキャッシュ、およびRAMのような、短期間にわたってデータを格納するコンピュータ読取可能媒体といった非一時的コンピュータ読取可能媒体を含み得る。コンピュータ読取可能媒体はまた、より長期間にわたってプログラムコードおよび/またはデータを格納する非一時的コンピュータ読取可能媒体を含み得る。このため、コンピュータ読取可能媒体は、たとえば読取専用メモリ(read only memory:ROM)、光ディスクまたは磁気ディスク、ソリッドステートドライブ、コンパクトディスク読取専用メモリ(compact-disc read only memory:CD-ROM)のような二次ストレージまたは永続的長期ストレージを含み得る。コンピュータ読取可能媒体はまた、任意の他の揮発性または不揮発性記憶システムであってもよい。コンピュータ読取可能媒体は、たとえば、コンピュータ読取可能記憶媒体、または有形の記憶装置と見なされてもよい。
さらに、一つ以上の情報伝送を表わすステップまたはブロックは、同じ物理的デバイス内のソフトウェアモジュールおよび/またはハードウェアモジュール間の情報伝送に対応してもよい。しかしながら、他の情報伝送が、異なる物理的デバイス内のソフトウェアモジュールおよび/またはハードウェアモジュール間で行なわれてもよい。
図面に示される特定の構成は、限定的であると見なされるべきではない。他の実施形態は、所与の図に示される各要素をより多くまたはより少なく含み得ることが理解されるべきである。また、例示される要素のいくつかは、組み合わされるかまたは省略され得る。さらに、例示的な実施形態は、図面に示されていない要素を含み得る。
本明細書ではさまざまな局面および実施形態が開示されたが、当業者には他の局面および実施形態が明らかであろう。本明細書に開示されるさまざまな局面および実施形態は例示を目的としており、限定的であるよう意図されておらず、真の範囲は特許請求の範囲によって示される。
コンピューティングシステム100は、ディスプレイ106と、前面カメラ104、背面カメラ112、および/または前面赤外線カメラ114とを使用して、対象被写体の画像を取り込むように構成され得る。取り込まれた画像は、複数の静止画像であるか、またはビデオストリームであり得る。画像取り込みは、ボタン108を起動すること、ディスプレイ106上のソフトキーを押すこと、または何らかの他のメカニズムによってトリガされ得る。実現化例に依存して、画像取り込みは、たとえばボタン108を押すか、対象被写体の適切な照明条件に応じてか、コンピューティングシステム100を予め定められた距離だけ動かすか、または予め定められた取り込みスケジュールに従って、特定の時間間隔で自動的に行なわれ得る。
距離投影モデル314は複数のマッピング316~326を含み、マッピング316~326のうちの一つ以上を介して推定物理的距離336を決定し得る。マッピング316~326の各々は、複数の被写体下端比率を、複数の対応する物理的被写体距離と関連付け得る。たとえば、マッピング316は、被写体下端比率318~322を、対応する物理的被写体距離320~324と関連付け得る。同様に、マッピング326は、被写体下端比率328~332を、対応する物理的被写体距離330~334と関連付け得る。マッピング316~326に関連付けられた被写体下端比率(たとえば、被写体下端比率318~322および328~332)は、候補被写体下端比率と呼ばれ得る。なぜなら、それらは各々、推定物理的距離336を決定するために使用される可能性があり得るためである。
具体的には、ユーザインターフェイス(user interface:UI)410は、0.0、0.25、0.35、0.45、0.47、および0.5を含むそれぞれの被写体下端比率に対応する複数の水平線を示す。とりわけ、被写体下端比率0.5に関連付けられた水平線は、UI410のほぼ中央に位置付けられて、UI410をほぼ等しい上半分と下半分とに分割する。UI412は、1メートル、5メートル、10メートル、20メートル、30メートル、および無限遠を含む対応する物理的距離でラベル付けされた、UI410と同じ複数の線を示す。すなわち、被写体下端比率0.0、0.25、0.35、0.45、0.47、および0.5は、物理的距離1メートル、5メートル、10メートル、20メートル、30メートル、および図4Aの無限遠基準線に関連付けられた距離(たとえば無限遠)に、それぞれ対応する。被写体下端比率は、距離投影モデル314のマッピング316~326のうちの一つを表わし得る関数F(b)によって、対応する距離にマッピングされ得る。
F(b)は、経験的な訓練データに基づいて決定され得る。たとえば、カメラに対して複数の物理的距離が測定され、環境内で視覚的にマークされ得る。カメラは、これらの視覚的にマークされた距離を表わす訓練画像データを取り込むために使用され得る。訓練画像データを取り込む間、カメラは、環境内の予め定められた高さに配置され得る。このため、この訓練画像データに基づいて訓練された関数またはマッピングは、同じカメラ、または(i)似ているかもしくはほぼ同じ一組のカメラパラメータを有するとともに、(ii)似ているかまたはほぼ同じ予め定められた高さに位置付けられた別のカメラを使用して、距離を測定するために有効であり得る。追加の関数またはマッピングは、異なる一組のカメラパラメータを有するカメラおよび/または異なる高さに位置付けられた同じカメラを使用して得られた訓練データに基づいて、同様の手順を使用して決定され得る。
幾何学的モデル514は、画像センサ500の配向500Bおよび500Cを示しており、カメラのピッチ角の変化を補償するために使用され得る数学的関係を決定するために使用され得る。具体的には、幾何学的モデル514は、配向500Bが、負のピッチ角αmax depressionと、光軸504Aの配向504Bへの回転と、ΔLmax depressionによって無限遠基準線520に関連付けられた被写体下端比率のオフセットとに対応することを示す。このため、tan(αmax depression)=ΔLmax depression/f、およびf=ΔLmax depression/tan(αmax depression)である。したがって、αmax depressionとφmax elevationとの間のピッチ角θ分のカメラ(すなわち、画像センサ500およびアパーチャ502)の回転については、被写体下端比率のオフセットΔbは、Δb=ftan(θ)、言い換えればΔb=(ΔLmax depression/tan(αmax depression ))tan(θ)によってモデル化される。この式は、画像データ300に関連付けられたカメラピッチ306を補償する推定オフセットを決定するために、オフセット計算器312によって使用または実現され得る。推定オフセットΔbは(たとえば画素数ではなく)被写体下端比率に換算して計算されるため、推定オフセットΔbは、被写体下端比率計算器310によって計算された被写体下端比率に直接加算され得る。

Claims (20)

  1. カメラから、環境における被写体を表わす画像データを受信することと、
    前記画像データに基づいて、前記画像データ内の前記被写体の下端の垂直位置を決定することと、
    前記垂直位置と前記画像データの高さとの間の被写体下端比率を決定することと、
    距離投影モデルを介しておよび前記被写体下端比率に基づいて、前記カメラと前記被写体との間の物理的距離の推定値を決定することとを備え、前記距離投影モデルは、複数の候補被写体下端比率のうちの各それぞれの候補被写体下端比率について、(i)前記それぞれの候補被写体下端比率と(ii)前記環境における対応する物理的距離との間のマッピングを規定し、
    前記カメラと前記被写体との間の前記物理的距離の前記推定値の指標を生成することを備える、コンピュータが実現する方法。
  2. 前記マッピングは、前記カメラが前記環境内の予め定められた高さに位置付けられているという仮定に基づいている、請求項1に記載のコンピュータが実現する方法。
  3. 前記画像データを取り込んでいる間に前記カメラの物理的高さが前記予め定められた高さを上回る場合、前記カメラと前記被写体との間の前記物理的距離の前記推定値は過小推定値であり、
    前記画像データを取り込んでいる間に前記カメラの前記物理的高さが前記予め定められた高さを下回る場合、前記カメラと前記被写体との間の前記物理的距離の前記推定値は過大推定値である、請求項2に記載のコンピュータが実現する方法。
  4. 前記カメラに関連付けられたユーザインターフェイスを介して、前記予め定められた高さの指定を受信することと、
    前記予め定められた高さの前記指定に基づいて、前記カメラが前記予め定められた高さの前記指定に従って位置付けられていると仮定するように前記マッピングを修正することによって前記距離投影モデルを構成することとをさらに備える、請求項2に記載のコンピュータが実現する方法。
  5. 前記距離投影モデルを構成することは、前記予め定められた高さの前記指定に基づいて、複数の候補マッピングから前記マッピングを選択することを含み、
    前記複数の候補マッピングのうちの各それぞれのマッピングは、前記予め定められた高さの対応する指定に関連付けられる、請求項4に記載のコンピュータが実現する方法。
  6. 前記距離投影モデルは機械学習モデルを含み、
    前記距離投影モデルを構成することは、前記予め定められた高さの前記指定に基づいて前記機械学習モデルの少なくとも一つの入力パラメータを調節することを含む、請求項4に記載のコンピュータが実現する方法。
  7. 前記マッピングは前記カメラの幾何学的モデルに基づいており、
    前記幾何学的モデルは、(i)焦点距離を有し、前記環境内の前記予め定められた高さに配置された前記カメラと、(ii)前記環境の地面とほぼ平行に配向された前記カメラの光軸と、(iii)前記カメラの画像センサ上のそれぞれの点から前記環境の前記地面上の対応する点へ投影された複数の線のうちの各それぞれの線とを含み、
    各それぞれの候補被写体下端比率は、前記幾何学的モデルに基づいて、前記環境における前記対応する物理的距離に関連付けられる、請求項2に記載のコンピュータが実現する方法。
  8. 前記マッピングは、(i)前記カメラの縦長配向に対応する第1のマッピングと、(ii)前記カメラの横長配向に対応する第2のマッピングとを含み、
    前記第1のマッピングに関連付けられた各それぞれの候補被写体下端比率は、縦長画像データ内の対応する垂直位置と前記縦長画像データの高さとの間にあり、
    前記第2のマッピングに関連付けられた各それぞれの候補被写体下端比率は、横長画像データ内の対応する垂直位置と前記横長画像データの高さとの間にあり、
    前記方法は、
    前記画像データを取り込んでいる間の前記カメラの配向に基づいて、前記画像データの前記高さを決定することと、
    前記画像データを取り込んでいる間の前記カメラの前記配向に基づいて、前記カメラと前記被写体との間の前記物理的距離の前記推定値を決定する際に使用するための前記第1のマッピングまたは前記第2のマッピングを選択することとをさらに備える、請求項1に記載のコンピュータが実現する方法。
  9. 前記カメラに関連付けられた一つ以上のセンサから、前記カメラのピッチ角を示すセンサデータを得ることと、
    前記カメラの前記ピッチ角を示す前記センサデータに基づいて、ゼロのピッチ角に対する前記カメラの前記ピッチ角によって引き起こされた前記垂直位置の変化を勘案する前記被写体下端比率の推定オフセットを決定することと、
    前記被写体下端比率と前記推定オフセットとの合計を決定することとをさらに備え、
    前記距離投影モデルは、前記合計に基づいて、前記カメラと前記被写体との間の前記物理的距離の前記推定値を決定するように構成される、請求項1に記載のコンピュータが実現する方法。
  10. 前記被写体下端比率の前記推定オフセットを決定することは、前記カメラの推定焦点距離と前記カメラの前記ピッチ角の正接との積を求めることを含み、
    前記カメラの上方傾斜に関連付けられた正のピッチ角は、前記合計が前記被写体下端比率よりも高くなるように正の値を有する推定オフセットをもたらし、
    前記カメラの下方傾斜に関連付けられた負のピッチ角は、前記合計が前記被写体下端比率よりも低くなるように負の値を有する推定オフセットをもたらす、請求項9に記載のコンピュータが実現する方法。
  11. 前記推定焦点距離は、(i)無限遠基準線を前記カメラの画像センサ上の初期位置から前記画像センサの上端へ第1の画面比率だけオフセットする最大ピッチ角の決定、または(ii)前記無限遠基準線を前記画像センサ上の前記初期位置から前記画像センサの下端へ第2の画面比率だけオフセットする最小ピッチ角の決定、のうちの少なくとも一つに基づいており、
    前記第1の画面比率と前記第2の画面比率との合計は1に等しい、請求項10に記載のコンピュータが実現する方法。
  12. 前記複数の候補被写体下端比率は、(i)最小の測定可能な物理的距離に対応する、ゼロである第1の候補被写体下端比率から、(ii)最大の測定可能な物理的距離に対応する第2の候補被写体下端比率に及ぶ、請求項1に記載のコンピュータが実現する方法。
  13. 前記画像データ内の前記被写体の前記下端の前記垂直位置を決定することは、
    一つ以上の被写体検出アルゴリズムを介して、前記画像データ内の前記被写体の位置に対応する前記画像データ内の関心領域を決定することと、
    一つ以上の被写体下端検出アルゴリズムを介しておよび前記関心領域に基づいて、前記被写体の前記下端を識別することと、
    前記被写体の前記下端を識別することに基づいて、前記被写体の前記下端が前記環境の地面と接していると決定することと、
    前記被写体の前記下端が前記環境の前記地面と接していると決定することに基づいて、前記画像データ内の前記被写体の前記下端の前記垂直位置を決定することとを含む、請求項1に記載のコンピュータが実現する方法。
  14. 前記カメラから、前記環境における追加の被写体を表わす追加の画像データを受信することと、
    前記追加の画像データに基づいて、前記追加の被写体の下端が前記画像データ内で見えないと決定することと、
    前記追加の被写体の前記下端が前記画像データ内で見えないと決定することに基づいて、前記カメラと前記追加の被写体との間の物理的距離の追加の推定値が、最小の測定可能な物理的距離を下回る予め定められた値であると決定することと、
    前記カメラと前記追加の被写体との間の前記物理的距離の前記追加の推定値の追加の指標を生成することとをさらに備える、請求項1に記載のコンピュータが実現する方法。
  15. 前記カメラと前記被写体との間の前記物理的距離の前記推定値の前記指標を生成することは、(i)前記物理的距離の前記推定値の視覚表現をディスプレイ上に表示すること、(ii)前記物理的距離の前記推定値を表現する可聴発話を生成すること、または(iii)前記物理的距離の前記推定値の触覚表現を生成すること、のうちの一つ以上を含む、請求項1に記載のコンピュータが実現する方法。
  16. 前記カメラの視野のアクティブな部分の指定を受信することと、
    前記被写体の少なくとも一部が前記カメラの前記視野の前記アクティブな部分内に含まれていると決定することと、
    前記被写体の前記少なくとも一部が前記カメラの前記視野の前記アクティブな部分内に含まれていると決定することに基づいて、前記カメラと前記被写体との間の前記物理的距離の前記推定値の前記指標を生成することとをさらに備え、
    前記カメラと対応する被写体との間の物理的距離のそれぞれの推定値の指標の生成は、前記カメラの前記視野の前記アクティブな部分の外側の被写体については省略される、請求項1に記載のコンピュータが実現する方法。
  17. 複数の被写体クラスからの一つ以上の被写体クラスの選択を受信することと、
    前記被写体が前記一つ以上の被写体クラスのうちの第1の被写体クラスに属すると決定することと、
    前記被写体が前記第1の被写体クラスに属すると決定することに基づいて、前記カメラと前記被写体との間の前記物理的距離の前記推定値の前記指標を生成することとをさらに備え、
    前記カメラと対応する被写体との間の物理的距離のそれぞれの推定値の指標の生成は、前記第1の被写体クラスに属さない被写体については省略される、請求項1に記載のコンピュータが実現する方法。
  18. カメラと、
    プロセッサと、
    前記プロセッサによって実行されると前記プロセッサに動作を行なわせる命令が格納された、非一時的コンピュータ読取可能記憶媒体とを備え、前記動作は、
    前記カメラから、環境における被写体を表わす画像データを受信することと、
    前記画像データに基づいて、前記画像データ内の前記被写体の下端の垂直位置を決定することと、
    前記垂直位置と前記画像データの高さとの間の被写体下端比率を決定することと、
    距離投影モデルを介しておよび前記被写体下端比率に基づいて、前記カメラと前記被写体との間の物理的距離の推定値を決定することとを含み、前記距離投影モデルは、複数の候補被写体下端比率のうちの各それぞれの候補被写体下端比率について、(i)前記それぞれの候補被写体下端比率と(ii)前記環境における対応する物理的距離との間のマッピングを規定し、前記動作はさらに、
    前記カメラと前記被写体との間の前記物理的距離の前記推定値の指標を生成することを含む、コンピューティングシステム。
  19. 前記カメラのピッチ角を示すセンサデータを生成するように構成された一つ以上のセンサをさらに備え、
    前記動作はさらに、
    前記一つ以上のセンサから、前記カメラの前記ピッチ角を示す前記センサデータを得ることと、
    前記カメラの前記ピッチ角を示す前記センサデータに基づいて、ゼロのピッチ角に対する前記カメラの前記ピッチ角によって引き起こされた前記垂直位置の変化を勘案する前記被写体下端比率の推定オフセットを決定することと、
    前記被写体下端比率と前記推定オフセットとの合計を決定することとを含み、
    前記距離投影モデルは、前記合計に基づいて、前記カメラと前記被写体との間の前記物理的距離の前記推定値を決定するように構成される、請求項18に記載のコンピューティングシステム。
  20. コンピューティングシステムによって実行されると前記コンピューティングシステムに動作を行なわせる命令が格納された、非一時的コンピュータ読取可能記憶媒体であって、前記動作は、
    カメラから、環境における被写体を表わす画像データを受信することと、
    前記画像データに基づいて、前記画像データ内の前記被写体の下端の垂直位置を決定することと、
    前記垂直位置と前記画像データの高さとの間の被写体下端比率を決定することと、
    距離投影モデルを介しておよび前記被写体下端比率に基づいて、前記カメラと前記被写体との間の物理的距離の推定値を決定することとを含み、前記距離投影モデルは、複数の候補被写体下端比率のうちの各それぞれの候補被写体下端比率について、(i)前記それぞれの候補被写体下端比率と(ii)前記環境における対応する物理的距離との間のマッピングを規定し、前記動作はさらに、
    前記カメラと前記被写体との間の前記物理的距離の前記推定値の指標を生成することを含む、非一時的コンピュータ読取可能記憶媒体。
JP2022567599A 2020-06-03 2021-05-17 被写体下端位置に基づいた深度推定 Active JP7394240B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063033964P 2020-06-03 2020-06-03
US63/033,964 2020-06-03
PCT/US2021/032686 WO2021247228A1 (en) 2020-06-03 2021-05-17 Depth estimation based on object bottom position

Publications (2)

Publication Number Publication Date
JP2023525066A true JP2023525066A (ja) 2023-06-14
JP7394240B2 JP7394240B2 (ja) 2023-12-07

Family

ID=76422038

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022567599A Active JP7394240B2 (ja) 2020-06-03 2021-05-17 被写体下端位置に基づいた深度推定

Country Status (7)

Country Link
US (1) US20230127218A1 (ja)
EP (1) EP4049242A1 (ja)
JP (1) JP7394240B2 (ja)
KR (1) KR20230007477A (ja)
CN (1) CN115516509A (ja)
DE (1) DE112021001436T5 (ja)
WO (1) WO2021247228A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019164514A1 (en) * 2018-02-23 2019-08-29 Google Llc Transitioning between map view and augmented reality view
US12002238B1 (en) * 2022-06-07 2024-06-04 Bureau of Innovation LLC Contactless mobile fingerprinting capture device and method of use

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6352300A (ja) * 1986-08-21 1988-03-05 アイシン精機株式会社 車上前方監視装置
JPH10150656A (ja) * 1996-09-20 1998-06-02 Hitachi Ltd 画像処理装置及び侵入者監視装置
JP2006266848A (ja) * 2005-03-23 2006-10-05 Sharp Corp 距離測定装置
US20070154068A1 (en) * 2006-01-04 2007-07-05 Mobileye Technologies, Ltd. Estimating Distance To An Object Using A Sequence Of Images Recorded By A Monocular Camera
JP2008286638A (ja) * 2007-05-17 2008-11-27 Sogo Keibi Hosho Co Ltd 身長推定装置および身長推定方法
JP2009301495A (ja) * 2008-06-17 2009-12-24 Sumitomo Electric Ind Ltd 画像処理装置及び画像処理方法
US20140152810A1 (en) * 2012-12-03 2014-06-05 Samsung Techwin Co., Ltd. Method of acquiring horizontal distance between camera and target, and camera and surveillance system adopting the method
WO2014171052A1 (ja) * 2013-04-16 2014-10-23 コニカミノルタ株式会社 画像処理方法、画像処理装置、撮像装置および画像処理プログラム
JP2018097688A (ja) * 2016-12-14 2018-06-21 株式会社デンソー 物体検出装置、物体検出方法
JP2020056644A (ja) * 2018-10-01 2020-04-09 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108596116B (zh) * 2018-04-27 2021-11-05 深圳市商汤科技有限公司 测距方法、智能控制方法及装置、电子设备和存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6352300A (ja) * 1986-08-21 1988-03-05 アイシン精機株式会社 車上前方監視装置
JPH10150656A (ja) * 1996-09-20 1998-06-02 Hitachi Ltd 画像処理装置及び侵入者監視装置
JP2006266848A (ja) * 2005-03-23 2006-10-05 Sharp Corp 距離測定装置
US20070154068A1 (en) * 2006-01-04 2007-07-05 Mobileye Technologies, Ltd. Estimating Distance To An Object Using A Sequence Of Images Recorded By A Monocular Camera
JP2008286638A (ja) * 2007-05-17 2008-11-27 Sogo Keibi Hosho Co Ltd 身長推定装置および身長推定方法
JP2009301495A (ja) * 2008-06-17 2009-12-24 Sumitomo Electric Ind Ltd 画像処理装置及び画像処理方法
US20140152810A1 (en) * 2012-12-03 2014-06-05 Samsung Techwin Co., Ltd. Method of acquiring horizontal distance between camera and target, and camera and surveillance system adopting the method
WO2014171052A1 (ja) * 2013-04-16 2014-10-23 コニカミノルタ株式会社 画像処理方法、画像処理装置、撮像装置および画像処理プログラム
JP2018097688A (ja) * 2016-12-14 2018-06-21 株式会社デンソー 物体検出装置、物体検出方法
JP2020056644A (ja) * 2018-10-01 2020-04-09 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
EP4049242A1 (en) 2022-08-31
DE112021001436T5 (de) 2023-01-12
US20230127218A1 (en) 2023-04-27
KR20230007477A (ko) 2023-01-12
JP7394240B2 (ja) 2023-12-07
WO2021247228A1 (en) 2021-12-09
CN115516509A (zh) 2022-12-23

Similar Documents

Publication Publication Date Title
JP6283152B2 (ja) ハンドヘルド測地デバイスによるグラフィック支援遠隔位置測定
JP2018535402A (ja) 異なる分解能を有するセンサーの出力を融合するシステム及び方法
JP7394240B2 (ja) 被写体下端位置に基づいた深度推定
US10866635B2 (en) Systems and methods for capturing training data for a gaze estimation model
US11585724B2 (en) Fixtureless lensmeter system
CN112150560A (zh) 确定消失点的方法、装置及计算机存储介质
US20230169686A1 (en) Joint Environmental Reconstruction and Camera Calibration
CN105025284A (zh) 标定集成成像显示设备的显示误差的方法和设备
US12020448B2 (en) Systems and methods for updating continuous image alignment of separate cameras
KR20210062708A (ko) 무고정 렌즈미터 시스템
US20230386065A1 (en) Systems and methods for processing captured images
KR20140142441A (ko) 전자 장치 및 전자 장치의 3차원 모델링을 위한 촬영방법
CN114600162A (zh) 用于捕捉摄像机图像的场景锁定模式
US11450014B2 (en) Systems and methods for continuous image alignment of separate cameras
WO2018161322A1 (zh) 基于深度的图像处理方法、处理装置和电子装置
JP7477596B2 (ja) 深度推定のための方法、深度推定システム、およびコンピュータプログラム
WO2022244069A1 (ja) 撮影条件決定方法、撮影条件決定システム、撮影条件決定装置、及びコンピュータ可読媒体
CN118295613A (zh) 信息显示方法及其处理装置与信息显示系统
WO2023247015A1 (en) Determining a scale factor
TWI516744B (zh) 距離估算系統、距離估算方法及電腦可讀取媒體
WO2023203530A1 (en) Interpupillary distance estimation method
CN116708731A (zh) 投影画面调整方法、装置、电子设备及可读存储介质
Forsman Applying Augmented Reality to Outdoors Industrial Use
JP2016110597A (ja) 情報処理システム、情報処理装置、座標変換方法およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221107

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231012

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231127

R150 Certificate of patent or registration of utility model

Ref document number: 7394240

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150