[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2024527245A - 物体の複数の面の画像を生成する方法、システム、及び媒体 - Google Patents

物体の複数の面の画像を生成する方法、システム、及び媒体 Download PDF

Info

Publication number
JP2024527245A
JP2024527245A JP2023575909A JP2023575909A JP2024527245A JP 2024527245 A JP2024527245 A JP 2024527245A JP 2023575909 A JP2023575909 A JP 2023575909A JP 2023575909 A JP2023575909 A JP 2023575909A JP 2024527245 A JP2024527245 A JP 2024527245A
Authority
JP
Japan
Prior art keywords
image
images
coordinate space
pose
group
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.)
Pending
Application number
JP2023575909A
Other languages
English (en)
Inventor
アーメッド エル-バークーキー
ジェイムズ エイ. ネグロ
シャンユン イェ
Original Assignee
コグネックス・コーポレイション
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 コグネックス・コーポレイション filed Critical コグネックス・コーポレイション
Publication of JP2024527245A publication Critical patent/JP2024527245A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/06Topological mapping of higher dimensional structures onto lower dimensional surfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • 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
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • 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/10028Range image; Depth image; 3D point clouds
    • 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/20212Image combination
    • G06T2207/20224Image subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/56Particle system, point based geometry or rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

開示された主題の幾つかの実施形態に従った、物体の複数の面の画像を生成するための方法、システム、及び媒体が提供される。幾つかの実施形態では、方法は、第1時間に第1座標空間における第1物体の3D姿勢を示す情報を受信するステップと、少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられる、ステップと、前記第1物体の前記3D姿勢に基づいて前記画像に関して前記第1物体の表面の少なくとも部分を2D領域にマッピングするステップと、前記表面を含む画像について、前記2D領域に基づいてその画像の部分を前記第1物体の前記表面に関連付けるステップと、前記表面に関連付けられた前記画像を使用して前記表面の合成画像を生成するステップと、を備える。【選択図】図1A

Description

関連出願への相互参照
本出願は、2021年6月10日に出願された米国仮出願第63/209,374号に基づき、その利益を主張し、優先権を主張するものであり、あらゆる目的のためにその全体が参照により本明細書に援用される。
連邦政府の後援による研究に関する声明
該当なし
本技術は、物体又はシンボル(例えば、バーコード)の画像を取得及び分析するように構成されたマシンビジョンシステムを含む撮像システムに関する。
マシンビジョンシステムは一般に、物体やシンボルの画像をキャプチャし、その画像を分析して物体を識別したり、シンボルを解読したりするのに使用するように構成されている。従って、マシンビジョンシステムは、一般に、画像取得及び画像処理のための1つ又は複数の装置を含む。従来のアプリケーションでは、これらの装置は、バーコードやテキストなどの画像化されたシンボルをデコードする目的など、画像を取得したり、取得した画像を分析したりするために使用できる。状況によっては、マシンビジョン及び他の撮像システムを使用して、対応する撮像装置の視野(field of view(FOV))より大きいかもしれない画像、及び/又は、撮像装置に対して移動しているかもしれない物体の画像を取得することができる。
開示された主題の幾つかの実施形態に従った、物体の複数の面の画像を生成するための方法、システム、及び媒体が提供される。
開示された主題の幾つかの実施形態に従った、物体の1つ又は複数の面の画像を生成する方法が提供され、前記方法は、(i)第1時間において第1座標空間における第1物体の3次元(3D)姿勢を示す情報を受信するステップと、(ii)前記物体の1つ又は複数の表面に関連付けられた少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられている、ステップと、(iii)前記画像のグループの各画像について、前記第1座標空間における前記第1物体の前記3D姿勢を示す前記情報に基づいて前記画像に関して前記第1物体の表面の少なくとも部分を2D領域にマッピングするステップと、(iv)前記画像内の前記第1物体の前記表面の少なくとも部分を含む前記画像のグループの各画像について、前記2D領域に基づいて、その画像の部分を前記第1物体の前記表面と関連付けるステップと、(v)前記第1物体の前記表面に関連付けられた画像のセットを使用して、前記第1物体の前記表面の合成画像を生成するステップと、を備える。
幾つかの実施形態では、前記方法は、多数の物体に対して(i)から(v)を繰り返すステップを更に備える。
幾つかの実施形態では、前記多数の物体は、コンベヤを介して少なくとも1つの撮像装置を通過して搬送される物体である。
幾つかの実施形態では、前記方法は、前記第1物体の複数の表面について(ii)から(v)を繰り返すステップを更に備える。
幾つかの実施形態では、前記第1物体の前記表面の前記部分を前記画像に関して前記2D領域にマッピングするステップは、前記第1座標空間における前記第1物体の前記3D姿勢を示す前記情報に基づいて前記画像に関して、前記第1物体の複数の角の3D位置を2D位置にマッピングするステップと、前記複数の角の前記3D位置に基づいて前記表面に対応する前記画像の部分を決定するステップと、を含む。
幾つかの実施形態では、前記第1物体の前記表面の前記部分を前記画像に関して前記2D領域にマッピングするステップは、前記第1座標空間内の少なくとも1つの3D位置を、前記画像のグループ内の画像に関連付けられた画像座標空間内の2D位置に変換するステップを含む。
幾つかの実施形態では、前記第1物体の前記3D姿勢を示す情報を受信するステップは、前記第1座標空間における前記第1物体の少なくとも1つの角の3D位置を含む。
幾つかの実施形態では、前記方法は、前記第1物体の寸法を示す情報を受信するステップを含む。
幾つかの実施形態では、前記第1物体の前記3D姿勢を示す前記情報は、寸法測定システムから受信される。
幾つかの実施形態では、前記第1物体の前記3D姿勢を示す前記情報は、点群データを含む。
幾つかの実施形態では、前記方法は、前記画像のグループから、前記物体の特定の表面を含む画像のセットを選択するステップであって、前記画像のセットには、前記画像のグループよりも少ない画像が含まれる、ステップを含む。
幾つかの実施形態では、前記画像のセットは、前記物体の前記特定の表面を含む全ての画像を含む。
幾つかの実施形態では、前記画像のセットは、前記特定の表面を含む全ての画像よりも少ない画像を含み、前記画像のセット内の画像に描写されている前記特定の表面の同じ部分を含む前記画像のグループのうちの少なくとも1つの画像を除外する。
幾つかの実施形態では、前記方法は、前記第1物体の寸法を示す情報に基づいて、前記物体の3Dモデルを生成するステップと、前記合成画像のそれぞれを前記3Dモデルの面に関連付けるステップと、前記物体の視覚化を提示させるステップと、を更に備える。
幾つかの実施形態では、前記方法は、前記第1物体の複数の表面のそれぞれの前記合成画像を生成するために使用される、少なくとも前記画像をメモリに保存させるステップと、前記第1物体の第1表面の合成画像を提示させるステップと、前記第1表面の前記合成画像の部分の選択を受け取るステップと、前記選択に応じて、前記第1面の前記合成画像を生成するために使用される前記画像の各画像を提示させるステップと、を更に備える。
幾つかの実施形態では、前記第1表面の前記合成画像の各部分は、メモリに保存されているどの画像が前記第1表面のその部分を描写しているかを識別する情報に関連付けられる。
幾つかの実施形態では、前記物体の前記表面に関連付けられた前記画像のセットを使用して前記第1物体の前記表面の前記合成画像を生成するステップは、前記第1物体の3D姿勢を示す前記情報に基づいて、前記表面に関連付けられた前記画像のセットのうち、前記表面を描写していない各画像の部分を除去するステップと、前記表面を描写する前記表面に関連付けられた前記画像のセットの各画像の部分を変換するステップと、前記画像のセットの各画像の変換された部分を前記合成画像の対応する部分と関連付けるステップと、前記変換された部分の画像データに基づいて、前記画像の前記変換された部分の位置合わせを調整するステップと、を含む。
幾つかの実施形態では、前記方法は、前記変換された部分の画像データに基づいて、画像の変換された部分をブレンドするステップを更に備える。
開示された主題の幾つかの実施形態に従った、物体の1つ又は複数の面の画像を生成するためのシステムが提供され、前記システムは、少なくとも1つのハードウェアプロセッサを備え、前記少なくとも1つのハードウェアプロセッサは、(i)第1時間において第1座標空間における第1物体の3次元(3D)姿勢を示す情報を受信するステップと、(ii)前記物体の1つ又は複数の表面に関連付けられた少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられている、ステップと、(iii)前記画像のグループの各画像について、前記第1座標空間における前記第1物体の前記3D姿勢を示す情報に基づいて前記画像に関して、前記第1物体の表面の少なくとも部分を2次元(2D)領域にマッピングするステップと、(iv)前記画像内の前記第1物体の前記表面の少なくとも部分を含む前記画像のグループの各画像について、前記2D領域に基づいて、その画像の部分を前記第1物体の前記表面と関連付けるステップと、(v)前記第1物体の前記表面に関連付けられた画像のセットを使用して、前記第1物体の前記表面の合成画像を生成するステップと、を行うようにプログラムされている。
幾つかの実施形態では、前記システムは、少なくとも1つの画像センサを含む撮像装置を更に備え、前記撮像装置は、複数の画像をキャプチャし、前記複数の画像を、前記少なくとも1つのハードウェアプロセッサを備えるコンピューティングデバイスに送信するようにプログラムされている。
幾つかの実施形態では、前記システムは、寸法測定装置を更に備え、前記寸法測定装置は、支持構造によって支持される物体の寸法と位置を決定し、前記第1座標空間における前記物体の角の位置を計算し、前記第1座標空間における前記物体の角の位置を、前記少なくとも1つのプロセッサを備えるコンピューティングデバイスに送信するようにプログラムされている。
幾つかの実施形態では、前記少なくとも1つのプロセッサは、更に、多数の物体に対して(i)から(v)を繰り返すようにプログラムされている。
幾つかの実施形態では、前記多数の物体は、コンベヤを介して少なくとも1つの撮像装置を通過して搬送される物体である。
開示された主題の幾つかの実施形態に従った、プロセッサによって実行されると、物体の1つ又は複数の面の画像を生成する方法を前記プロセッサに実行させるコンピュータ実行可能命令を含む非一時的なコンピュータ可読媒体が提供され、前記方法は、前記方法は、(i)第1時間において第1座標空間における第1物体の3次元(3D)姿勢を示す情報を受信するステップと、(ii)前記物体の1つ又は複数の表面に関連付けられた少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられている、ステップと、(iii)前記画像のグループの各画像について、前記第1座標空間における前記第1物体の前記3D姿勢を示す情報に基づいて前記画像に関して、前記第1物体の表面の少なくとも部分を2次元(2D)領域にマッピングするステップと、(iv)前記画像内の前記第1物体の前記表面の少なくとも部分を含む前記画像のグループの各画像について、前記2D領域に基づいて、その画像の部分を前記第1物体の前記表面と関連付けるステップと、(v)前記第1物体の前記表面に関連付けられた画像のセットを使用して、前記第1物体の前記表面の合成画像を生成するステップと、を備える。
開示される主題の様々な目的、特徴、及び利点は、同様の参照番号が同様の要素を識別する以下の図面と関連して考慮される場合、開示される主題の以下の詳細な説明を参照することにより、より完全に理解され得る。
図1Aは、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像をキャプチャし、物体の複数の面の画像を生成するシステムの一例を示す。 図1Bは、開示された主題の幾つかの実施形態に従った、図1Aのシステムを使用して撮像することができる重複する視野の例を示し、物体の面の複数の画像を生成することができる。 図2は、開示された主題の幾つかの実施形態に従った、物体の複数の面の画像を生成するシステムの一例を示す。 図3は、開示された主題の幾つかの実施形態に従った、図2に示す画像処理装置、サーバ、及び撮像装置を実現するために使用できるハードウェアの一例を示す。 図4は、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像をキャプチャし、物体の複数の面の画像を生成するシステムの別の例を示す。 図5は、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像をキャプチャし、物体の複数の面の画像を生成するシステムの更に別の例を示す。 図6は、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像をキャプチャし、物体の複数の面の画像を生成するシステムの更にまた別の例を示す。 図7は、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像を使用して、物体の複数の面の画像を生成するプロセスの例を示す。 図8Aは、画像座標空間と校正ターゲット座標空間との間の変換を見つけるために使用できる工場校正セットアップ(factory calibration setup)の一例を示す。 図8Bは、開示された主題の幾つかの実施形態に従った、工場校正及び物体の1つ又は複数の面の画像をキャプチャすることを含むフィールド校正(field calibration)を含む校正プロセスのための座標空間及び他の態様の例を示す。 図8Cは、開示された主題の幾つかの実施形態に従った、物体の1つ又は複数の面の画像をキャプチャすることを含む、3D座標空間内の物体の座標を変換するために使用可能な撮像装置モデルを生成するためのフィールド校正プロセスの一例を示す。 図9Aは、開示された主題の幾つかの実施形態に従った、1つ又は複数の校正ターゲットの異なる位置に関連付けられたフィールド校正プロセスの例を示す。 図9Bは、開示された主題の幾つかの実施形態に従った、1つ又は複数の校正ターゲットの異なる位置に関連付けられたフィールド校正プロセスの別の例を示す。 図10は、開示された主題の幾つかの実施形態に従った、物体の表面の複数の画像から物体の表面の画像を生成するために使用可能な画像を選択するためのプロセスの一例を示す。 図11は、開示された主題の幾つかの実施形態に従った、物体の表面の複数の画像から歪みを低減した表面の合成画像を生成するプロセスの一例を示す。 図12Aは、開示された主題の幾つかの実施形態に従った、物体の表面の画像を生成するために使用可能な画像を、物体の表面の複数の画像から選択する動作の例を示す。 図12Bは、開示された主題の幾つかの実施形態に従った、物体のターゲット表面に対応する画像の部分を識別し、ターゲット表面に対応しない画像の部分を除去し、ターゲット表面の画像を合成画像に位置合わせする動作の一例を示す。
マシンビジョンシステムには複数の撮像装置を含めることができる。例えば、幾つかの実施形態では、マシンビジョンシステムはトンネル配置(又はシステム)に実装でき、これには、撮像装置のそれぞれが支持体に対してある角度で配置され、角度のある視野(FOV)が得られる構造を含むことができる。トンネルシステム内の複数の撮像装置を使用して、共通のシーン(例えば、物体を含む)の画像データを取得することができる。幾つかの実施形態では、共通のシーンは、例えば、テーブルの上(例えば、動的トンネルの代わり)や輸送システムの個別のセクションなどの比較的小さな領域を含むことができる。幾つかの実施形態では、トンネルシステムでは、部分の撮像装置の視野が重複する場合がある。
幾つかの実施形態では、トンネルシステムを利用して、物体の複数の画像をキャプチャでき、画像処理装置(例えば、別個のコンピューティング装置、撮像装置の1つ)は、物体の複数の画像を使用して物体の合成画像を生成するように構成することができる。幾つかの実施形態では、本明細書で説明される機構は、物体の位置に関する情報を利用して、合成画像の生成に使用する画像を選択することができる。例えば、以下で説明するように、画像処理装置は、物体(及び/又は物体の周囲に描画された境界ボックスの要素)の1つ又は複数の要素(例えば、角、エッジ、表面)の位置を示す情報を使用して、どの画像に物体の表面が含まれているかを判断できる。他の例として、画像処理装置は、物体の角(及び/又は物体の周囲に描画された境界ボックスの角)の位置を示す情報を使用して、物体の表面のどの部分がさまざまな画像に含まれているかを判断でき、(例えば、画像を位置合わせするための画像解析を実行する前に)物体の角の位置を示す情報を使用して、表面を描写する複数の画像からの画像データを少なくとも部分的に位置合わせすることができる。
図1Aは、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像をキャプチャし、物体の複数の面の画像を生成するシステム100の一例を示す。
幾つかの実施形態では、システム100は、複数の撮像装置102、104、106、108、110、及び112を含むことができ、それぞれは、1つ又は複数のイメージセンサ、少なくとも1つのレンズ配置、及びイメージセンサに関する計算操作を実行するように構成された少なくとも1つの制御装置(例えば、プロセッサデバイス)を含むことができる。幾つかの実施形態では、撮像装置102、104、106、108、110、及び/又は112は、操向可能なミラーを含む、及び/又は操向可能なミラーと関連付けることができる(例えば、2020年10月15日に出願された米国特許出願第17/071,636号に記載されており、その全体が参照により本明細書に組み込まれる)。撮像装置102、104、106、108、110、及び/又は112のそれぞれは、関連する撮像装置及び/又は操向可能なミラーの異なる向きに対応して、異なる視野(FOV)から画像データを選択的に取得することができる。幾つかの実施形態では、システム100は、物体の各面の複数の画像を取得するために利用することができ、各画像の1つ又は複数の部分は、物体のその面をキャプチャした1つ又は複数の他の画像と重なってもよい。図7に関連して以下に説明するように、各面の複数の画像を使用して、比較的高い解像度でその面の複合表現を(例えば、歪みを低減せずに)生成することができる(例えば、その面全てを含むFOVでキャプチャされた1つの画像と比較して)。例えば、合成画像の各ピクセルは、より広い視野を備えた同様の撮像装置を使用して面全体の単一画像をキャプチャした場合に可能となるよりも、物体のより小さな部分を表すことができる。他の例として、重なり合う画像を使用して、超解像度表現を生成するために使用されるソース画像よりも高い解像度(例えば、1mm当たりのピクセル数が多い)を有する超解像度表現を生成することができる。
幾つかの実施形態では、システム100は、画像取得のために提示された物体の画像を取得するために使用することができる。例えば、システム100は、撮像装置102、104、106、108、110、112のそれぞれを支持する支持構造(図示せず)と、撮像される物体118を支持するように構成されたプラットフォーム116と、を含むことができる。(尚、物体118は、バーコード、他のタイプの1次元コード、QRコード(登録商標)、他のタイプの2次元コード、基準マーク(fiducial)、危険物コード、英数字(alpha-numeric)コード、他のタイプの機械可読コードなどの1つ又は複数のシンボルに関連付けられてもよい。)例えば、1つ又は複数の撮像装置の支持構造は、ケージ型支持構造として、又は他の様々な構成で構成することができる。幾つかの実施形態では、支持プラットフォーム116は、支持プラットフォーム116によって支持される物体の底面(例えば、プラットフォーム116上に置かれる、物体118の面)の画像化を容易にするように構成されることができる。例えば、支持構造116は、透明なプラットフォーム、メッシュ若しくはグリッドプラットフォーム、オープンセンタープラットフォーム、又は任意の他の適切な構成を使用して実装することができる。支持構造116の存在を除けば、底面の画像の取得は、物体の他の面の取得と実質的に同様であり得る。
幾つかの実施形態では、撮像装置102、104、106、108、110、及び/又は112は、撮像装置のFOVを使用して支持プラットフォーム116上に置かれた物体の特定の面の画像を取得できるように配向することができ、これにより、支持プラットフォーム116上に配置され、支持プラットフォーム116によって支持された物体(例えば、物体118)の各面が、撮像装置102、104、106、108、110、及び/又は112によって撮像されることができる。例えば、撮像装置102は、支持プラットフォーム116上の支持構造に機械的に結合することができ、支持プラットフォーム116の上面に向けることができ、撮像装置104は、支持プラットフォーム116の下の支持構造に機械的に結合することができ、撮像装置106、108、110、及び/又は112はそれぞれ、支持構造の面に機械的に結合することができ、これにより、撮像装置106、108、110、及び/又は112のそれぞれのFOVが支持プラットフォーム116の側面(lateral side)に面する。
幾つかの実施形態では、各撮像装置は、他の1つの撮像装置と略平行であり、それ以外の撮像装置に対して垂直な光軸を有するように構成することができる。幾つかの実施形態では、操向可能ミラーが中立位置にあるとき、操向可能ミラーの光軸はほぼ平行になりうる。例えば、撮像装置102及び104は、(例えば、撮像装置が実質的に平行な光軸を有するように)互いに向かい合うように構成することができ、他の撮像装置は、撮像装置102及び104の光軸と直交する光軸を有するように構成することができる。
尚、撮像装置102、104、106、108、110、及び112のそれぞれに対する図示の取り付け位置は有利でありうるものの、幾つかの実施形態では、物体の異なる面を撮像するための撮像装置は、図1Aに示す位置に対して再配向することができる(例えば、撮像装置をオフセットさせることができ、撮像装置を面ではなく角に配置することができる、など)。同様に、一方、それぞれが物体のそれぞれの面(例えば、物体118の6つの面)から画像データを取得するように構成された6つの撮像装置を使用することに関連する利点(例えば、取得速度の向上)が存在しうるものの、幾つかの実施形態では、撮像装置の異なる数又は配置、ミラーの異なる配置(例えば、固定ミラーの使用、追加の可動ミラーの使用など)を使用して、物体の複数の面の画像を取得するように特定の撮像装置を(例えば、図5に関連して以下に説明するように)構成することができる。例えば、撮像装置106及び110が物体118の裏側の画像をキャプチャできるように配置された固定ミラーを、撮像装置108及び112の代わりに使用することができる。他の例として、撮像装置102、104、106、108、110、及び/又は112のうちの1つ又は複数を省略することができる。その結果、システム100は、特定の操作において物体のより少ない面をキャプチャするように構成される。このような例では、ユーザは物体118の向きを調整して、1つ又は複数の他の面の撮像を容易にすることができる。或いは、システム100は、物体118の1つ又は複数の面の画像をキャプチャすることができ、物体118の1つ又は複数の他の面のキャプチャを省略することができる。
幾つかの実施形態では、物体の特定の面(例えば、図1Aに示すような)の画像を取得することに特化した撮像装置は、物体のその面のみの画像を取得するように構成することができる。幾つかの実施形態では、撮像装置は、同じシステムに含まれる他の撮像装置に対して取得領域が重複する場合も含め、物体の複数の面の画像を取得するように構成されることができる。幾つかの実施形態では、撮像装置は、物体の面の比較的小さな部分の取得を容易にする操向可能なFOVを備えて構成でき、操向可能なミラーの制御を介して、特定の関心領域の1つ又は複数の画像を取得する、又は、物体の同じ面の複数の重なり合う画像を取得する可能性がある。
幾つかの実施形態では、システム100は、多種多様なサイズを有する物体を画像化するように構成することができ、従って、比較的大きなFOVをカバーするために多くの重なり合う画像をキャプチャするように構成することができる。
例えば、図1Aに示すように、各撮像装置102、104、106、108、110、及び112のFOVは、物体118のそれぞれの面の表面積よりも実質的に小さくてもよく(例えば、25%未満)、これにより、物体118の複数の部分の(例えば、各ピクセルは物体の比較的小さな部分に対応する)比較的高解像度の画像の取得を容易にし、物体118の各面の比較的高解像度の合成画像の生成を容易にするかもしれない。このような例では、本明細書で説明する機構を使用して、比較的低解像度の撮像装置を使用して撮像装置102、104、106、108、110、及び112を実装することができ、一方、物体の各面の比較的高解像度の画像の生成を容易にする。これは、なぜならば、同じ解像度を使用して、各ピクセルが物体のより小さい部分を表すように、物体のより小さい部分の画像をキャプチャすることができるためである。
例えば、撮像装置106などの撮像装置を使用して、撮像装置106の対応するFOVの異なる空間位置の画像データを連続的に取得することによって、撮像装置106に面する物体の面全体(及び/又は物体が撮像装置106に対して斜めの角度で配置されている場合は、別の面の部分)の画像を取得することができる。より具体的な例では、撮像装置106は、操向可能なミラーを利用してFOVを連続的にシフトすることができる。特定の面の大部分の画像データ(例えば、物体118の面の少なくとも3つの角を含む画像データ、物体118の面の少なくとも75%を含む画像データ、物体118の面の少なくとも全表面を含む画像データ、など)が取得されるまで、このようなプロセスは反復的に進めることができる(例えば、ミラーとFOVの移動、その後に、各位置での画像データの取得)。幾つかの実施形態では、1つ又は複数の面が1つ又は複数の撮像装置の光軸に対して比較的高い角度を形成するように物体が配置されている場合、複数の撮像装置が同じ面の画像をキャプチャしてもよい(物体の複数の面の画像をキャプチャしてもよい)。例えば、物体が45度ずれて配置されている場合、撮像装置106は物体の両面の画像をキャプチャすることができるが、いずれかの面全体の画像をキャプチャすることはできない可能性がある。このような例では、撮像装置110は、撮像装置106によってキャプチャされた一方の面の画像をキャプチャすることができ、撮像装置112は、撮像装置106によってキャプチャされた他方の面の画像をキャプチャすることができる。
幾つかの実施形態では、システム100は、支持構造116によって支持される物体(例えば、物体118)の寸法及び/又は位置を決定するように構成されることができる寸法測定システム(dimensioning system)130(本明細書ではディメンショナ(dimensioner)と呼ばれることもある)を含むことができる。例えば、ディメンショナ130は、ディメンショナ130から物体の上面までの距離を決定するように構成することができ、ディメンショナ130に面する表面のサイズ及び/又は向きを決定するように構成することができる。幾つかの実施形態では、ディメンショナ130は、様々な技術を使用して実装することができる。例えば、ディメンショナ130は、3Dカメラを使用して実装できる(例えば、構造化光(structured light)3Dカメラ、連続飛行時間型(continuous time of flight)3Dカメラなど)。他の例として、ディメンショナ130は、レーザ走査システムを使用して実装できる(例えば、LiDARシステム、飛行時間型レーザ距離計(time-of-flight laser rangefinder)など)。特定の例では、ディメンショナ130は、Cognex Corporationから入手可能な3D-A1000システムを使用して実装することができる。
幾つかの実施形態では、ディメンショナ130は、システム100の1つ又は複数の部分を参照して定義された座標空間内の物体の各角の3D座標を決定することができる。例えば、ディメンショナ130は、少なくともほぼ直方体である及び/又はディメンショナ130を原点として定義されたデカルト座標空間内で直方体の形状として近似できる、物体の8つの角のそれぞれの3D座標を決定することができる。他の例として、ディメンショナ130は、少なくともほぼ直方体である及び/又は支持プラットフォーム116に関して定義された(例えば、支持プラットフォーム116の中心を起点とする原点を有する)デカルト座標空間内の形状において直方体として近似できる、物体の8つの角のそれぞれの3D座標を決定できる。更に他の例として、ディメンショナ130は、適切なデカルト座標空間内の直方体形状ではない(例えば、支持プラットフォーム116に関して定義される、ディメンショナ130に関して定義される、など)、物体の(例えば、8つの角を有する)境界ボックスの3D座標を決定することができる。例えば、ディメンショナ130は、ポリ袋、クッション付き封筒(jiffy mailer)、封筒、シリンダ形状(円柱など)、三角柱、直方体以外の四角柱、五角柱、六角柱、タイヤ(又はトロイドとして近似できる他の形状)などの、任意の適切な非直方体形状の周囲の境界ボックスを識別することができる。幾つかの実施形態では、ディメンショナ130は、物体を直方体形状又は非直方体形状として分類するように構成でき、直方体形状の場合は物体の角を識別し、非直方体形状の場合は直方体境界ボックスの角を識別できる。幾つかの実施形態では、ディメンショナ130は、物体を、(例えば、直方体、円柱、三角柱、六角柱、クッション付き封筒、ポリ袋、タイヤなどの)共通物体のグループ内の特定のクラスに分類するように構成できる。幾つかのそのような実施形態では、ディメンショナ130は、分類された形状に基づいて境界ボックスを決定するように構成することができる。幾つかの実施形態では、ディメンショナ130は、(例えば、四つの角がある)ソフトサイド封筒、ピラミッド型、(例えば、6つの角を有する三角柱、直方体ではない四角柱、10の角を有する五角柱、12の角を有する六角柱など)その他の角柱などの、非直方体形状の3D座標を決定できる。
追加的に又は代替的に、幾つかの実施形態では、ディメンショナ130は、生データ(例えば、点群データ、距離データなど)を、物体の1つ又は複数の点の3D座標を決定できる(例えば、後述する制御装置132、1つ又は複数の撮像装置などの)制御装置に提供することができる。
幾つかの実施形態では、(例えば、図8A~図8Cに関連して以下に説明するように)各撮像装置(例えば、撮像装置102、104、106、108、110、及び112)を校正することができ、支持プラットフォーム116によって支持される物体(例えば、物体118)の各角の3D位置を撮像装置によってキャプチャされた画像内の2D位置にマッピングすることを容易にする。操向可能なミラーを含む幾つかの実施形態では、そのような校正は、操向可能なミラーを特定の方向に向けて実行することができる。
幾つかの実施形態では、制御装置132(本明細書では画像処理装置と呼ばれることもある)は、システム100の様々なコンポーネントの動作を調整することができる。例えば、画像処理装置132は、ディメンショナ130に支持プラットフォーム116によって支持される物体の寸法を取得させることができ、撮像装置102、104、106、108、110、及び112に各面の画像をキャプチャさせることができる。幾つかの実施形態では、画像処理装置132は、例えば、操向可能なミラーを制御してトリガ信号を提供することによって、各撮像装置の詳細な動作を制御することができ、特定の時間に(例えば、物体が撮像装置の視野内にあると予想されるときに)撮像装置に画像をキャプチャさせることができる。代替的に、幾つかの実施形態では、他の装置(例えば、各撮像装置に含まれるプロセッサ、別個のコントローラ装置など)は、各撮像装置の詳細な動作を制御することができる。例えば、画像処理装置132(及び/又は他の適切な装置)は、各撮像装置及び/又はディメンショナ130にトリガ信号を提供することができ、各撮像装置のプロセッサは、トリガに応答して所定の関心領域にわたる事前に指定された画像取得シーケンスを実行するように構成することができる。尚、システム100は、物体の表面を照らすための1つ又は複数の光源(図示せず)を含むこともでき、そのような光源の動作は中央装置(例えば、画像処理装置132)によって調整することもでき、及び/又は、制御を分散化できる(例えば、撮像装置は1つ又は複数の光源の動作を制御することができ、1つ又は複数の光源に関連付けられたプロセッサは光源の動作を制御することができる、など)。例えば、幾つかの実施形態では、システム100は、単一のトリガイベントの部分としてのものも含め、物体の複数の面の画像を同時に(例えば、同時に、又は共通の時間間隔にわたって)取得するように構成することができる。例えば、各撮像装置102、104、106、106、108、110、及び112は、共通の時間間隔にわたって1つ又は複数の画像のそれぞれのセットを取得するように構成することができる。追加的に又は代替的に、幾つかの実施形態では、撮像装置102、104、106、106、108、110、及び112は、単一のトリガイベントに基づいて画像を取得するように構成することができる。例えば、物体118が支持プラットフォーム116上に置かれたことを判定するセンサ(例えば、接触センサ、存在センサ、撮像装置など)に基づいて、撮像装置102、104、106、106、108、110、及び112は、物体118のそれぞれの面の画像を同時に取得することができる。他の例として、トリガイベントはオペレータの入力から開始できる。より特定の例では、物体118を支持プラットフォーム116上に配置した後、オペレータは、撮像装置102、104、106、106、108、110、及び/又は112の視野から出ることができ、(例えば、アクチュエータを押すことによって)電子的に画像取得を開始することができる。
幾つかの実施形態では、各撮像装置は、上で説明した反復プロセスを使用して、事前定義された撮像領域(例えば、特定の撮像距離における撮像装置のFOVよりも大きくなりうる領域)などの所定の関心領域にわたる事前に指定された画像取得シーケンスを実行するように構成することができる。そのような実施形態では、撮像装置は、(例えば、異なる高さ、異なる幅、異なる深さを有する物体、それぞれの物体の異なる位置、など)様々なサイズの物体の各面の複数の画像を自動的にキャプチャできる。追加的に又は代替的に、幾つかの実施形態では、画像取得シーケンスは、(例えば、ディメンショナ130によって決定される)物体の寸法に基づいて選択することができる。そのような実施形態では、各撮像装置は、撮像装置から物体までの距離、物体の寸法などに基づいて画像取得シーケンスを実行するように構成することができ、物体が十分に高い解像度でキャプチャされることを確実にできる。
幾つかの実施形態では、各撮像装置102、104、106、108、110、及び112は、支持プラットフォーム116によって支持される物体(例えば、物体118)の特定の面の様々なFOVを描写する画像のセット140を生成することができる。幾つかの実施形態では、画像処理装置132は、(例えば、コンベヤ上の複数の箱を示す図9A及び9Bに関連して以下に説明するように)物体118の1つ又は複数の角の3D位置を、各撮像装置によって出力される画像のセット140内の各画像内の2D位置にマッピングすることができる。幾つかの実施形態では、画像処理装置は、各角の2D位置に基づき、画像のどの部分が各面に関連付けられているかを識別するマスク(例えば、1は特定の面の存在を示し、0は特定の面の不在を示すビットマスク)を生成できる。
幾つかの実施形態では、画像処理装置132は、各画像の3D座標空間から画像座標空間への角のマッピング、又は、面を表すことができるその他の適切な情報、例えば、複数の平面(例えば、各平面はエッジに対応し、複数の平面の交差部分はエッジと角を表す)、高さ、幅、奥行きに関連付けられた単一の角の座標、複数のポリゴンなど、に基づいて、どの画像が物体118の少なくとも部分を含むかを識別することができる。例えば、画像処理装置132は、物体の表面(例えば、四角によって画定される多角形)と各画像の部分との間をマッピングすることができ、画像処理装置132は、1つの表面の少なくとも部分と重なる画像を、物体118の少なくとも部分を含む画像として識別することができる。他の例として、1つ又は複数の角の2D位置がキャプチャされた画像内に収まる場合、画像処理装置132は、物体の少なくとも部分が画像に含まれると判定することができる。他の例として、画像処理装置132は、1つ又は複数の角の2D位置に基づいて、どの画像が物体の1つ又は複数のエッジを含むかを識別することができる。更に別の例として、画像処理装置132は、(例えば、FOVが物体の表面に比べて比較的小さいとき)角やエッジのない物体の片面のみの部分を含む画像を識別することができる。
幾つかの実施形態では、画像処理装置132は、サブセットが冗長な画像を含まないように(例えば、サブセット150に含めるために選択された1つ又は複数の他の画像に含まれる物体の部分のみを含む画像、その表面に追加のカバレッジを追加しない画像)、及び/又は、サブセットに余分な画像が含まれないように(例えば、サブセット150に関連付けられた特定のエッジの部分を含まない画像)、画像140の各セットのサブセット150を選択することができる。例えば、図3に関連して以下に説明するように、図10に示すように、画像処理装置132は、少なくとも1つのエッジを含む画像を識別することができ、各エッジを含む画像のうち、サブセット150に含めるためのサブセット150に関連付けられた特定の面に対応する表面の最大部分を含む画像を選択することができる。そのような例では、画像処理装置132は、エッジを含まない画像を識別することができ、サブセット150に含めるために選択されたエッジを有する画像と重ならない表面の最大部分を含む画像を選択することができ、サブセット150に含めるために既に選択されている画像に含まれる部分と重なる表面の部分のみを含む画像を省略できる。他の例として、画像処理装置132は、情報(例えば、コード、ラベル、アドレスブロックなど)を含む画像を識別することができ、その情報を囲む領域を含む(又は、他の画像よりも多くの領域を囲む、及び/又は、領域内の情報の最高品質の表現を含む)画像を優先的に選択することができる。そのような例では、画像処理装置132は、画像を選択する前に、及び/又は画像を選択すると同時に、そのような情報の位置を特定しようと試みることができる。追加的に又は代替的に、画像処理装置は、情報の位置及び/又は可能性の高い位置を示す入力を別の装置(例えば、撮像装置、別の画像処理装置など)から受信することができる。
幾つかの実施形態では、画像処理装置132は、各サブセット150を使用して、特定の面の合成画像を生成することができる。例えば、画像処理装置132は、関連する画像データを選択することができ(例えば、そのサブセット150に関連付けられた物体の面に対応しない画像データを省略することができ)、そして、選択された画像データをワープして、少なくとも選択された画像データに含まれる遠近歪みを補正することができる。他の例として、画像処理装置は、変換(例えば、レンズの歪みを補正するための非線形変換)を適用できる。そのような例では、画像処理装置132は、画像データの選択された部分に対する各角の2D位置に基づいて、画像データの選択された各部分を表面の対応する部分と関連付けることができ、画像データの隣接する領域間の位置合わせを調整することができ、及び/又は、画像データの隣接する領域をブレンドできる(例えば、画像データの内容に基づく画像処理技術を使用する)。幾つかの実施形態では、画像処理装置132は、各画像の選択部分をワープし、選択部分を表面の対応する部分と関連付け、他の画像の部分と位置合わせし、画像の部分を他の画像の隣接部分とブレンドすることができる。幾つかの実施形態では、画像処理装置132は、例えば、合成画像の生成に使用される画像ごとに、画像データを補正し、画像データを1つ又は複数の隣接する画像と位置合わせするための1つ又は複数の変換を見つけることができ、複数の画像から複数の画像部分に対する変換が見つかるまで、変換の適用を遅らせることができ(例えば、合成画像の生成に使用される全ての画像)、後の操作として変換を適用できる(例えば、画像データに変換を適用すると、変換を見つけてメモリに変換を一時的に保存するよりも多くの計算リソースが使用されるため)。例えば、画像処理装置132は、歪みを補正するための変換(例えば、透視歪みを補正するために画像データの部分をワープするために使用できる変換)を見つけることができ、そして、変換を適用する前に、画像の部分を隣接する画像の部分と位置合わせするための変換、及び/又は他の適切な変換を見つけることができる。
画像処理装置132は、サブセット150からの各画像からの画像データの位置合わせされた選択された部分に基づいて、それぞれが物体の特定の表面(例えば、面)を描写する合成画像のセット160を生成することができる。幾つかの実施形態では、合成画像160は、任意の適切なフォーマットでフォーマットすることができる。例えば、各合成画像を別個の画像ファイル(例えば、.jpgファイル、.pngファイルなど)として保存することができ、合成画像160は、互いに関連付けることができ、及び/又は、(例えば、物体に関連付けられたバーコード又は他のシンボルに基づいて識別される、システム100のオペレータによって提供される情報に基づいて識別される)合成画像160に描写された物体と関連付けることができる。他の例として、合成画像160は、単一の画像(例えば、面間にゼロパディングあり、面間にゼロパディングなし、図1Aに示すような長方形フォーマット、十字型フォーマットなど)としてフォーマット可能である。
特定の例では、複数の合成画像160を組み合わせて、物体全体の合成画像を生成することができる。例えば、このような合成画像は、列と行に編成された各面を示す様々な合成画像160とともに、比較的コンパクトな向きを使用して生成できる。別のより特定の例では、物体(例えば、物体118)の2次元分解を、中心画像を物体の下側として、構築することができ、必要に応じて、比較的迅速な分析のためにユーザに表示される。尚、これらは単なる例であり、物体の単純な展開やその他の操作に対応する場合も対応しない場合もある様々な方法で、物体の異なる面を合成画像内に配置できる。幾つかの実施形態では、1つ又は複数の合成画像160及び/又は複数の合成画像160を使用して生成された物体全体の合成画像の全体は、シンボルの位置を特定又は分析(例えば、デコード)するために処理されることができる。
幾つかの実施形態では、画像処理装置132(又はローカル若しくはリモートサーバなどの他の適切な装置)は、特定の物体の3D表現を生成するように構成することができる。例えば、直方体の3Dモデルは、ディメンショナ130を使用して取得された物体の寸法に基づいて生成することができ、合成画像160の各合成画像は、直方体モデルの面に関連付けることができる。
尚、図1Aは固定支持プラットフォーム116を示しているが、これらの構成要素のうちの1つ又は複数を移動可能に構成することができる(例えば、1つ又は複数のロボットアームを含む1つ又は複数の搬送システムを含む、図4~6に関連して以下に説明する1つ又は複数のコンベヤを含む)。例えば、支持体に適切な修正を加えることにより、及び/又は、図2に関連して以下に説明するトンネルなどの異なる支持構造を利用することにより、図4に示されるように、撮像装置102、104、106、108、110、及び112と同様に構成された撮像装置のアレイは、物体が変形された支持ケージを通って移動するときに、物体の各面の画像データを取得するように構成されることができる。幾つかの実施形態では、移動プラットフォーム又はそれに関連する支持部分は、物体が撮像領域を通過する際に、移動プラットフォームの下に配置された撮像装置が物体の下側から光を受けられるように、透明又は省略することができる。
図1Bは、開示された主題の幾つかの実施形態に従った、図1Aのシステムを使用して撮像することができる重複する視野の例を示し、物体の面の複数の画像を生成することができる。図1Bに示すように、各撮像装置は、それぞれが1つ又は複数の他の画像と重なる多くの画像(例えば、図1Bの15枚の画像)をキャプチャするように構成することができ、これにより、関心領域全体が画像にまとめてキャプチャされる。
図2は、開示された主題の幾つかの実施形態に従った、物体の複数の面の画像を生成するシステムの例200を示す。図2に示すように、画像処理装置210(例えば、画像処理装置132)は、複数の撮像装置202(例えば、図1Aに関連して上述した撮像装置102、104、106、108、110、及び/又は112、及び/又は、図4から図6に関連して後述する撮像装置)から画像を受信することができる。追加的に、画像処理装置210は、撮像装置202によって撮像された物体に関する寸法データを寸法感知システム212(例えばディメンショナ130)から受信することができ、寸法感知システム212は、画像処理装置210にローカルに接続されてもよく、及び/又は、ネットワーク接続を介して(例えば、通信ネットワーク208を介して)接続されてもよい。画像処理装置210は、物体が移動した距離を決定するために使用できる、特定の期間(例えば、寸法が決定されてから物体の各画像が生成されるまでの間)にわたるコンベヤの動きを示す値を出力するように構成された運動測定装置(図示せず)などの、他の任意の適切な装置から入力を受信することもできる。運動測定装置は、任意の適切な技術又は技術の組み合わせを使用して実装することができる。例えば、運動測定装置は、エンコーダを使用して実装することができる。画像処理装置210はまた、物体を照明するように構成された1つ又は複数の光源(図示せず)(例えば、フラッシュ、投光器など)などの1つ又は複数の他の装置の動作を調整することもできる。
幾つかの実施形態では、画像処理装置210は、画像スティッチングシステム204の少なくとも部分を実行して、物体のそれぞれの面に関連付けられた画像のグループから、物体の1つ又は複数の面を描写する合成画像(例えば、幾つかの画像の部分を含む)を生成することができる。追加的に又は代替的に、画像処理装置210は、任意の適切な技術又は技術の組み合わせを使用して撮像装置202によって撮像された物体に関連付けられるシンボル(例えば、バーコード、QRコード(登録商標)、テキストなど)を、シンボル復号化システム206の少なくとも部分を実行して、識別及び/又は復号することができる。
幾つかの実施形態では、画像処理装置210は、画像スティッチングシステム204の少なくとも部分を実行して、本明細書に記載の機構を使用して物体の1つ又は複数の面の合成画像をより効率的に生成することができる。
幾つかの実施形態では、画像処理装置210は、画像データ(例えば、画像スティッチングシステム204によって生成された合成画像データ)及び/又は寸法感知システム212から受信したデータを、通信ネットワーク208を介してサーバ220に通信することができ、サーバ220は、画像アーカイブシステム224及び/又はモデルレンダリングシステム226の少なくとも部分を実行することができる。幾つかの実施形態では、サーバ220は、画像アーカイブシステム224を使用して、画像処理装置210から受信した画像データを保存することができる(例えば、物体が損傷していると報告された場合の検索及び検査のために、シンボル復号化システム206によって読み取れなかったシンボルを復号化する試みや、物体に関連付けられたテキストから情報を抽出する試みなどの更なる分析のため)。追加的に又は代替的に、幾つかの実施形態では、サーバ220は、モデルレンダリングシステム226を使用して、ユーザに提示する物体の3Dモデルを生成することができる。
幾つかの実施形態では、画像処理装置210及び/又はサーバ220は、デスクトップコンピュータ、ラップトップコンピュータ、スマートフォン、タブレットコンピュータ、ウェアラブルコンピュータ、撮像装置(例えば、撮像装置202)、サーバーコンピュータ、物理コンピューティングデバイスによって実行される仮想マシンなどの任意の適切なコンピューティング装置又は装置の組み合わせであることができる。
幾つかの実施形態では、撮像装置202は、任意の適切な撮像装置とすることができる。例えば、それぞれは、少なくとも1つのイメージングセンサ(例えば、CCDイメージセンサ、CMOSイメージセンサ、又は他の適切なセンサ)、少なくとも1つのレンズ配置、及びメージングセンサに関する計算操作を実行するように構成された少なくとも1つの制御装置(例えば、プロセッサデバイス)を含む。幾つかの実施形態では、レンズ構成には固定焦点レンズを含めることができる。追加的に又は代替的に、レンズ構成は、液体レンズ又は機械的に調整される既知のタイプのレンズなどの調整可能な焦点レンズを含むことができる。追加的に、幾つかの実施形態では、撮像装置202は、撮像装置のFOVの方向を調整するために使用できる操向可能なミラーを含むことができる。幾つかの実施形態では、1つ又は複数の撮像装置202は、FOV内の物体を照明するように構成される光源(例えば、米国特許出願公開第2019/0333259号に記載の、フラッシュ、高輝度フラッシュ、光源など)を含むことができる。
幾つかの実施形態では、寸法感知システム212は、任意の適切な寸法感知システムとすることができる。例えば、寸法感知システム212は、3Dカメラ(例えば、例えば、構造化光(structured light)3Dカメラ、連続飛行時間型(continuous time of flight)3Dカメラなど)を使用して実装することができる。他の例として、寸法感知システム212は、レーザ走査システムを使用して実装できる(例えば、LiDARシステム)。幾つかの実施形態では、寸法感知システム212は、任意の適切な座標空間において寸法及び/又は3D位置を生成することができる。
幾つかの実施形態では、撮像装置202及び/又は寸法感知システム212は、画像処理装置210に対してローカルであることができる。例えば、画像処理装置202は、ケーブル、直接無線リンクなどによって画像処理装置210に接続することができる。他の例として、寸法感知システム212は、ケーブル、直接無線リンクなどによって画像処理装置210に接続することができる。追加的に又は代替的に、幾つかの実施形態では、撮像装置202及び/又は寸法感知システム212は、画像処理装置210からローカル及び/又は遠隔に配置することができ、(例えば、画像データ、寸法、及び/又は位置データなどの)データを通信ネットワーク(例えば、通信ネットワーク208)を介して画像処理装置210(及び/又はサーバ220)に通信することができる。幾つかの実施形態では、1つ又は複数の撮像装置202、寸法測定システム212、画像処理装置210、及び/又は他の任意の適切なコンポーネントは、単一の装置として(例えば、共通のハウジング内に)統合することができる。
幾つかの実施形態では、通信ネットワーク208は、任意の適切な通信ネットワーク又は通信ネットワークの組み合わせであることができる。例えば、通信ネットワーク208は、(1つ又は複数の無線ルータ、1つ又は複数のスイッチなどを含むことができる)Wi-Fi(登録商標)ネットワーク、ピアツーピアネットワーク(例えば、Bluetooth(登録商標)ネットワーク)、セルラーネットワーク(例えば、CDMA、GSM、LTE、LTE Advanced、NRなどの適切な規格に準拠する、3Gネットワーク、4Gネットワーク、5Gネットワークなど)、有線ネットワークなどを含むことができる。幾つかの実施形態では、通信ネットワーク108は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、公衆ネットワーク(例えば、インターネット)、プライベート又は半プライベートネットワーク(例えば、企業又は大学のイントラネット)、他の適切なタイプのネットワーク、又はネットワークの適切な組み合わせであることができる。図2に示す通信リンクは、それぞれ、有線リンク、光ファイバリンク、Wi-Fi(登録商標)リンク、Bluetooth(登録商標)リンク、セルラーリンクなどの任意の適切な通信リンク又は通信リンクの組み合わせであることができる。
図3は、開示された主題の幾つかの実施形態に従った、図2に示す画像処理装置、サーバ、及び撮像装置を実現するために使用できるハードウェアの例300を示す。図3は、開示された主題の幾つかの実施形態に従った、図2に示す画像処理装置210、サーバ220、及び/又は撮像装置202を実現するために使用できるハードウェアの例300を示す。図3に示されるように、幾つかの実施形態では、画像処理装置210は、プロセッサ302、ディスプレイ304、1つ又は複数の入力306、1つ又は複数の通信システム308、及び/又はメモリ310を含むことができる。幾つかの実施形態では、プロセッサ302は、中央処理装置(central processing unit(CPU))、グラフィックス処理装置(graphics processing unit(GPU))、特定用途向け集積回路(application specific integrated circuit(ASIC))、フィールドプログラマブルゲートアレイ(field-programmable gate array(FPGA))などの、任意の適切なハードウェアプロセッサ又はプロセッサの組み合わせであることができる。幾つかの実施形態では、ディスプレイ304は、コンピュータモニタ、タッチスクリーン、テレビなどの任意の適切な表示装置を含むことができる。幾つかの実施形態では、ディスプレイ304は省略可能である。幾つかの実施形態では、入力306は、キーボード、マウス、タッチスクリーン、マイクなどの、ユーザ入力を受信するために使用できる任意の適切な入力デバイス及び/又はセンサを含むことができる。幾つかの実施形態では、入力306は省略可能である。
幾つかの実施形態では、通信システム308は、通信ネットワーク208及び/又は他の任意の適切な通信ネットワークを介して情報を通信するための任意の適切なハードウェア、ファームウェア、及び/又はソフトウェアを含むことができる。例えば、通信システム308は、1つ又は複数のトランシーバ、1つ又は複数の通信チップ及び/又はチップセットなどを含むことができる。より特定の例では、通信システム308は、Wi-Fi(登録商標)接続、Bluetooth(登録商標)接続、セルラー接続、イーサネット(登録商標)接続などを確立するために使用できるハードウェア、ファームウェア、及び/又はソフトウェアを含むことができる。
幾つかの実施形態では、メモリ310は、例えばプロセッサ302によって、コンピュータービジョンタスクを実行するため、ディスプレイ304を使用してコンテンツを提示するため、通信システム308などを介してサーバ220及び/又は撮像装置202と通信するために使用できる命令、値などを記憶するために使用できる任意の適切な記憶装置を含むことができる。メモリ310は、任意の適切な揮発性メモリ、不揮発性メモリ、ストレージ、又はそれらの任意の適切な組み合わせを含むことができる。例えば、メモリ310は、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電子的に消去可能なプログラマブル読み取り専用メモリ(EEPROM)、1つ又は複数のフラッシュドライブ、1つ又は複数のハードディスク、1つ又は複数のソリッドステートドライブ、1つ又は複数の光学ドライブなどを含むことができる。幾つかの実施形態では、メモリ310には、画像処理装置210の動作を制御するためのコンピュータプログラムを符号化することができる。例えば、そのような実施形態では、プロセッサ302は、コンピュータプログラムの少なくとも部分を実行して、物体の表面を描写する合成画像を生成し、画像データをサーバ120に送信し、1つ又は複数のシンボルを復号するなどすることができる。他の例として、プロセッサ302は、コンピュータプログラムの少なくとも部分を実行して、画像スティッチングシステム204及び/又はシンボル復号化システム206を実装することができる。更に別の例として、プロセッサ302は、図7、10、11、及び/又は13に関連して以下に説明されるプロセス700、1000、1100、及び/又は1300の少なくとも部分を実行することができる。
幾つかの実施形態では、サーバ220は、プロセッサ312、ディスプレイ314、1つ又は複数の入力316、1つ又は複数の通信システム318、及び/又はメモリ320を含むことができる。幾つかの実施形態では、プロセッサ312は、CPU、GPU、ASIC、FPGAなどの任意の適切なハードウェアプロセッサ又はプロセッサの組み合わせであり得る。幾つかの実施形態では、ディスプレイ314は、コンピュータモニタ、タッチスクリーン、テレビなどの任意の適切な表示装置を含むことができる。幾つかの実施形態では、ディスプレイ314は省略可能である。幾つかの実施形態では、入力316は、キーボード、マウス、タッチスクリーン、マイクなどの、ユーザ入力を受信するために使用できる任意の適切な入力デバイス及び/又はセンサを含むことができる。幾つかの実施形態では、入力316は省略可能である。
幾つかの実施形態では、通信システム318は、通信ネットワーク208及び/又は他の任意の適切な通信ネットワークを介して情報を通信するための任意の適切なハードウェア、ファームウェア、及び/又はソフトウェアを含むことができる。例えば、通信システム318は、1つ又は複数のトランシーバ、1つ又は複数の通信チップ、及び/又はチップセットなどを含むことができる。より特定の例では、通信システム318は、Wi-Fi(登録商標)接続、Bluetooth(登録商標)接続、セルラー接続、イーサネット(登録商標)接続などを確立するために使用できるハードウェア、ファームウェア、及び/又はソフトウェアを含むことができる。
幾つかの実施形態では、メモリ320は、例えばプロセッサ312によって、ディスプレイ314を使用してコンテンツを提示するため、1つ又は複数の画像処理装置210と通信するためなどに使用できる命令、値などを記憶するために使用できる任意の適切な記憶装置を含むことができる。メモリ320は、任意の適切な揮発性メモリ、不揮発性メモリ、ストレージ、又はそれらの任意の適切な組み合わせを含むことができる。例えば、メモリ320は、RAM、ROM、EEPROM、1つ又は複数のフラッシュドライブ、1つ又は複数のハードディスク、1つ又は複数のソリッドステートドライブ、1つ又は複数の光ドライブなどを含むことができる。幾つかの実施形態では、メモリ320には、サーバ220の動作を制御するためのサーバプログラムがエンコードされて保持されることができる。例えば、そのような実施形態では、プロセッサ312は、画像処理装置210、画像装置202、及び/又は寸法感知システム212からデータ(例えば、物体の合成画像、物体に関連付けられたシンボルからデコードされた値など)を受信し、合成画像を、合成画像に描写された物体の識別情報と関連付けて保存し、物体のモデルを生成し、アーカイブされた合成画像及び/又はモデルを(例えば、リモートコンピューティングデバイスによって)提示させることができる。他の例として、プロセッサ312は、コンピュータプログラムの少なくとも部分を実行して、画像アーカイブシステム224及び/又はモデルレンダリングシステム226を実装することができる。更に別の例として、プロセッサ312は、図7、10、11、及び/又は13に関連して以下に説明するプロセス700、1000、1100、及び/又は1300の少なくとも部分を実行することができる。尚、図3には示されていないが、サーバ220は、画像処理装置210を使用して実装されるそのようなシステムに加えて、又はその代わりに、画像スティッチングシステム204及び/又はシンボル復号化システム206を実装することができる。
図4は、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像をキャプチャし、物体の複数の面の画像を生成するシステムの別の例400を示す。幾つかの実施形態では、複数の撮像装置及び/又は操向可能なミラーを使用して、(例えば、コンベヤーシステムに関連する)校正されたトンネルを通過する物体の複数の面の画像を取得でき、この場合、物体が特定の領域を通過するときに(例えば、コンベヤの特定の長さに沿って)、物体の5つ以上の面の画像が取得される。例えば、撮像システム400は、コンベヤ414に沿ってトンネル412を実装することができ、少なくとも幾つか(例えば、それぞれ)が制御可能なミラー(図示せず)を含む複数の撮像装置416を含むことができる。従って、(例えば、図6に関連して以下に説明するように)はるかに多数の従来の撮像装置による画像取得の代わりに、ミラーの適切な制御を介して撮像装置416を使用して所望のFOVの全範囲にわたる画像を取得することができる。例えば、図4では、トンネル412を通過する物体の露出した5面又は6面を撮像するための従来の構成における14(又はそれ以上)の撮像装置を5台の撮像装置416に置き換えて使用することができる。例えば、コンベヤ414のギャップ418は、物体の底面の画像化を容易にすることができる(例えば、2018年4月25日に出願された米国特許出願公開第2019/0333259号に記載されており、その全体が参照により本明細書に組み込まれる)。尚、本明細書では、幾つかの実施形態をコンベヤ型輸送システム(例えば、コンベヤベルト、コンベヤローラなど)に関連して説明するが、本明細書で説明される実施形態は、他のタイプの輸送システムで実装することができる。例えば、輸送システムは、(例えば、物体をある場所から別の場所に輸送するように構成された)1つ又は複数の自律車両、物体をある場所から別の場所に移動させるように構成された1つ又は複数のロボットアーム(ロボットビンピッカー(robot bin picker)など)を利用することができる。
幾つかの実施形態では、制御可能なミラーとともに使用するための異なる数の撮像装置を使用したり、異なる数の従来の撮像装置の代わりに使用したりすることができる。例えば、(例えば、図5に関連して以下に説明するように)僅か1つの撮像装置416を配置することができ、これにより、物体がトンネル412を通って移動するときに、物体の全ての露出した面の画像をキャプチャするために、撮像装置416に関連付けられた操向可能ミラー及び/又は固定ミラーを操作することができる。そのような例では、第3撮像装置416は、そのような構成が無ければ露出しなかった表面(例えば、底面、コンベヤ414に面する面)の画像をキャプチャするように構成することができる。特定の例では、撮像装置416は、トンネル412の対向する側面及び前後方向の面(opposing lateral and front-to-back sides)における、トンネル412の支持構造の上部に支持することができる。
幾つかの実施形態では、図1Aの画像処理装置132及び/又は図2の画像処理装置210に関連して上述したように、画像処理装置432は、撮像装置416の動作を調整することができる、及び/又は、画像処理タスクを実行することができる。例えば、画像処理装置432は、トンネル412を通って移動する物体の1つ又は複数の面の合成画像を生成することができる。追加的に、幾つかの実施形態では、寸法測定システム(図示せず)は、コンベヤ414上でトンネル412に向かって移動する物体の寸法を測定することができ、このような寸法は、トンネル412を通って移動する物体の合成画像を生成するために(例えば、画像処理装置432によって)使用されることができる。
図5は、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像をキャプチャし、物体の複数の面の画像を生成するシステムの更に別の例500を示す。幾つかの実施形態では、制御可能なミラーと固定ミラーを組み合わせて使用すると、トンネル用途など、物体の複数の面の画像を取得できる。例えば、図5に示すように、トンネル522に関連付けられたシステム500は、例えば、米国特許出願第17/071,636号の図2に関連して説明された撮像装置40と同様に構成された撮像装置などの、制御可能なミラーを備えた単一の撮像装置524を含むことができる。追加的に、トンネル522は、トンネル522の支持構造528の異なる側に支持された複数の固定ミラー526を含むことができる。この配置及び他の同様の配置(例えば、撮像装置又は固定ミラーの数又は構成が異なる)では、制御可能なミラーは、コンベヤ532が物体530をトンネル522を通して移動させる際に、固定ミラー526からの異なる反射を介して、物体530の目に見える5つの面の画像を連続的に取得できるように移動させることができる。例えば、物体530がトンネル522を通って移動すると、ミラー526の異なるインスタンスを使用して、物体530の前面、上面、左面、右面、及び背面の画像を連続的に取得することができる。幾つかの実施形態では、(例えば、図4に関連して上述した撮像装置416と同様に実装される)撮像装置516を使用して、コンベヤ532のギャップにより物体の底面の画像化が容易になる(例えば、2018年4月25日に出願された米国特許出願公開第2019/0333259号に記載されるように)。
幾つかの実施形態では、図1Aの画像処理装置132及び/又は図2の画像処理装置210に関連して上述したように、画像処理装置534は、撮像装置524及び/又は516の動作を調整することができ、及び/又は画像処理タスクを実行することができる。例えば、画像処理装置534は、トンネル522を通って移動する物体の1つ又は複数の面の合成画像を生成することができる。追加的に、幾つかの実施形態では、寸法測定システム(図示せず)は、コンベヤ532上でトンネル522に向かって移動する物体の寸法を測定することができ、(例えば、画像処理装置534によって)そのような寸法を使用することができ、トンネル522を通って移動する物体の合成画像を生成することができる。
図6は、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像をキャプチャし、物体の複数の面の画像を生成するシステムの更にまた別の例600を示す。幾つかの実施形態では、システム600は、トンネル602を通って移動する物体(例えば、物体618a、618b)の合成画像を生成するように構成される、及び/又は、物体618a上のシンボル620などの物体(例えば、物体618a、618b)上のシンボルを評価するように構成される。幾つかの実施形態では、シンボル620は、物体618aの上面上の平坦な2Dバーコードであり、物体618a及び618bは、ほぼ直方体の箱である。追加的に又は代替的に、幾つかの実施形態では、画像化される物体には、あらゆる適切な形状が可能であり、非ダイレクトパーツマーク(non-direct part mark(DPM))シンボル及び物体の上面又はその他の面にあるDPMシンボルを含む、あらゆる種類のシンボルとシンボルの位置を画像化して評価できる。
図6において、物体618a及び618bは、物体618a及び618bをトンネル602を通して水平方向に(例えば、比較的予測可能な連続的な速度又は運動測定装置などの装置によって測定される変動速度で)移動させるように構成されたコンベヤ616上に配置される。追加的に又は代替的に、物体は、他の方法(例えば、非線形移動)でトンネル602を通って移動することができる。
幾つかの実施形態では、システム600は、撮像装置612及び画像処理装置632を含むことができる。例えば、システム600は、撮像装置612a、612b、612cを介して代表的に示されている(例えば、トンネル602の部分を実装する)トンネル配置で複数の撮像装置を含むことができ、それぞれに、コンベヤ616の部分を含むFOV614a、614b、614cを介して代表的に示される視野(「FOV」)がある。幾つかの実施形態では、各撮像装置612は、コンベヤの上部又は側面に対して角度を付けて(例えば、物体618a及び618bの面上のシンボルの法線方向に対して、又は移動方向に対して、ある角度で)配置することができ、FOVが斜めになる。同様に、FOVの部分は、他のFOV(例えば、FOV614a及びFOV614b)と重なることができる。そのような実施形態では、システム600は、物体618a及び/又は618bがコンベヤ616によって移動されるときに、物体618a及び/又は618bの複数の面の1つ又は複数の画像をキャプチャするように構成されることができる。上述のように、キャプチャされた画像は、物体の各面の合成画像を生成するため、及び/又はシンボル(例えば、シンボル620)を識別するために使用されることができ、それは、その後(必要に応じて)復号化されることができる。幾つかの実施形態では、(例えば、2018年4月25日に出願された米国特許出願公開第2019/0333259号に記載されるように)コンベヤ616のギャップ(図示せず)は、撮像装置又は撮像装置のアレイ(図示せず、コンベヤ616の下に配置される)を使用して物体の底面の画像化を容易にすることができる。尚、3つの撮像装置612からなる2つのアレイが物体618a及び618bの上部を撮像するように示されており、2つの撮像装置612からなる4つのアレイが物体618a及び618bの面を撮像するように示されているが、これは単なる一例であり、任意の適切な数の撮像装置を使用して、物体の様々な面の画像をキャプチャすることができる。例えば、各アレイは4つ以上の撮像装置を含むことができる。追加的に、撮像装置612は一般に、FOVを方向転換するためのミラーなしで物体618a及び618bを撮像するように示されているが、これは単なる例にすぎず、1つ以上の固定ミラー及び/又は操向可能なミラーを使用して、1つ以上の撮像装置のFOVを方向転換することができる。これにより、トンネル602内の撮像装置と物体との間の垂直方向又は横方向の距離を短縮することが容易になるかもしれない。例えば、撮像装置612aは、光軸がコンベヤ616に平行になるように配置することができ、1つ又は複数のミラーをトンネル602の上に配置して、撮像装置612aからのFOVをトンネル602内の物体の正面及び上部に向けて方向転換することができる。
幾つかの実施形態では、撮像装置612は、任意の適切なタイプの撮像装置を使用して実装することができる。例えば、撮像装置612は、エリアスキャンカメラ及び/又はラインスキャンカメラなどの2D撮像装置(例えば、2Dカメラ)を使用して実装することができる。幾つかの実施形態では、撮像装置612は、レンズアセンブリ及びCCD若しくはCMOSセンサなどの撮像素子を含む統合システムであることができる。
幾つかの実施形態では、図1Aの画像処理装置132及び/又は図2の画像処理装置210に関連して上述したように、画像処理装置632は、撮像装置612の動作を調整できる、及び/又は画像処理タスクを実行できる。例えば、画像処理装置632は、トンネル602を通って移動する物体の1つ又は複数の面の合成画像を生成することができる。追加的に、幾つかの実施形態では、寸法測定システム(図示せず)は、コンベヤ616上でトンネル602に向かって移動する物体の寸法を測定することができ、このような寸法は(例えば、画像処理装置632によって)使用され、トンネル602を通って移動する物体の合成画像を生成することができる。
図7は、開示された主題の幾つかの実施形態に従った、物体の各面の複数の画像を使用して、物体の複数の面の画像を生成するプロセスの例700を示す。
702で、プロセス700は、3D位置を決定するために使用されるデバイスに関連付けられた、及び/又は物理空間に基づいて定義された、トンネル座標空間内の物体の角に対応する点の3D位置を受信することができる(例えば、図1Aの支持構造及び/又は支持プラットフォーム116、コンベヤ414、532、又は616などのコンベヤ)。例えば、図1に関連して上述したように、ディメンショナ(例えばディメンショナ130)は、特定の時点で及び/又は物体が特定の場所(ディメンショナーに関連付けられた場所など)にあるときに、物体の角の位置を決定することができる。他の例として、ディメンショナ(例えばディメンショナ130)は、物体の3D姿勢を示すデータを生成することができ、データ(例えば、点群データ、物体の高さ、物体の幅など)をプロセス700に提供することができ、これにより、物体の1つ以上の点の3D位置を決定できる。
幾つかの実施形態では、3D位置は、3D位置を測定した装置に関連付けられた座標空間内の位置であることができる。例えば、図1Aに関連して上述したように、3D位置は、ディメンショナに関連付けられた(例えば、原点がディメンショナに位置する)座標空間で定義できる。他の例として、図1Aに関連して上述したように、3D位置は、静的支持構造(例えば、支持構造、支持プラットフォーム116)に関連付けられた座標空間で定義できる。更に別の例として、3D位置は、動的サポート構造(例えば、コンベヤ414、532、又は616などのコンベヤ)に関連付けられた座標空間で定義できる。そのような例では、ディメンショナによって測定された3D位置は、測定が行われた特定の時間及び/又は動的支持構造に沿った特定の位置に関連付けることができる。幾つかの実施形態では、物体の画像がキャプチャされたときの物体の角の3D位置は、最初の3D位置、測定が行われてからの経過時間、及び経過時間中の物体の速度に基づいて導出できる。追加的に又は代替的に、物体の画像がキャプチャされたときの物体の角の3D位置は、最初の3D位置と、(例えば、コンベヤの動きを直接測定する動き測定装置を使用して記録される)測定が行われてから物体が移動した距離に基づいて導き出すことができる。幾つかの実施形態では、物体の角に対応する点の3D位置は、物体の3D姿勢を示す情報となることができる。例えば、座標空間における物体の3D位置は、物体の角に対応するその座標空間における点の3D位置に基づいて決定することができる。
幾つかの実施形態では、プロセス700は、(例えば、点群データ、物体の高さ、物体の幅などの)物体の3D姿勢を示す生データを受信でき、生データを使用して物体の3D姿勢及び/又は物体の(例えば、角、エッジ、表面などの)1つ又は複数の特徴の位置を決定できる。例えば、プロセス700は、2022年5月17日に発行されその全体が参照により本明細書に援用される米国特許第11,335,021号に記載されている技術を利用して、物体の3D姿勢を示す生データから、(例えば、直方体の物体、ポリ袋、封筒、クッション付き封筒(jiffy mailer)、及び直方体として近似できる物体について)物体の3D姿勢及び/又は物体の1つ又は複数の特徴の位置を決定することができる。他の例として、プロセス700は、2022年5月12日に公開されその全体が参照により本明細書に組み込まれる米国特許出願公開第2022/0148153号に記載されている技術を利用して、物体の3D姿勢を示す生データから、(例えば、円筒形及び球形の物体の場合)物体の3D姿勢及び/又は物体の1つ又は複数の特徴の位置を決定することができる。
幾つかの実施形態では、プロセス700の部分(例えば、702)は、位置情報や姿勢情報を受信できる撮像装置(例えば、特定の撮像装置202)によって実行することができ、その情報を使用して、どの画像を取り込むか及び/又はどの画像を別の装置(例えば、画像処理装置132)に送信するかを決定することができる。そのような実施形態では、ディメンショナ130は、角に対応する点の位置の決定を省略してもよい。
704で、プロセス700は、1つ又は複数の撮像装置のそれぞれについて、物体の1つ又は複数の面に関連付けられた画像のグループを受信することができる。例えば、画像のグループは、異なるFOV(例えば、操向可能なミラー又はその他の可動ミラーを介して方向転換されたFOV)を持つ単一の撮像装置によってキャプチャされた、及び/又は、図1A、4、5に関連して上述したように物体が撮像装置を通過したときにキャプチャされた画像であることができる。他の例として、画像のグループは、図6に関連して上述したように、物体が撮像装置のアレイを通過して(例えば、コンベヤによって)移動するときに撮像装置のアレイによって捕捉された画像であることができる。
幾つかの実施形態では、プロセス700を実行するコンピューティングデバイス(例えば、画像処理装置202)は、物体の3Dポーズを示す情報(例えば、物体の角の位置、点群データなど)を使用することができ、各撮像装置が3D姿勢情報に基づいて画像をキャプチャする時間を決定する。例えば、コンピューティングデバイスは、物体が各撮像装置の視野内にあると予想される時点を決定することができ、物体が視野内にあるときに画像をキャプチャするように撮像装置に指示でき、物体(例えば、背景以外の他の物体)がその撮像装置の視野内にないときに撮像装置に画像をキャプチャするよう指示することを控えることができる。そのような実施形態では、704でプロセス700によって受信される画像は全て、物体の少なくとも1つの表面を含むことが期待できる。
幾つかの実施形態では、撮像装置(例えば、特定の撮像装置202)は、3D姿勢を示す情報(例えば、物体の角の位置、点群データなど)を受信することができ、3D姿勢を示す情報を使用して、特定の時点で画像をキャプチャするかどうか及び/又はどの画像を画像処理装置(例えば、画像処理装置210)に送信するかを決定できる。例えば、撮像装置は3D姿勢情報を受信することができ、3D姿勢情報に基づいて、どの時点で物体の表面が撮像装置の視野内に入ると予想されるかを決定することができる。そのような例では、撮像装置は、物体が視野内にあるときは画像を取り込むことができ、物体(例えば、背景以外の他の物体)が視野内にないときは画像の取り込みを控えることができる。他の例として、撮像装置は、定期的に(例えば、トリガ信号に応答して一定の間隔で)画像をキャプチャすることができ、3D姿勢情報に基づいて、どの画像が物体の表面を含むと予想されるかを決定することができる。そのような例では、撮像装置は、物体の表面を含むと予想される画像を(例えば、画像処理装置132に)画像処理装置に送信することができる。そのような実施形態では、704でプロセス700によって受信される画像は全て、物体の少なくとも1つの表面を含むことが期待できる。
幾つかの実施形態では、プロセス700の少なくとも部分を実行するコンピューティングデバイス及び/又は撮像装置は、物体の表面をカバーするために使用できる画像の最小セットに対応する送信用の画像をキャプチャ及び/又は選択することができる(例えば、図10のプロセス1000に関連して以下で説明するように)。そのような実施形態では、プロセス700によって704で受信される画像は、撮像装置によってキャプチャされた画像よりも少なくてもよい。
706で、プロセス700は、共通3D座標空間内の物体の角の各3D位置を、各画像内の各カメラ(及び/又はFOV角度)の画像座標空間内の2D位置にマッピングすることができる。例えば、図8A~図9Bに関連して以下に説明するように、各角の3D位置は、特定の時間に特定のFOVを有する撮像装置によって捕捉された画像内の2D位置にマッピングすることができる。尚、多くの画像では、各角が画像の外側にあってよく(例えば、画像のセット140に示すように)、他の画像では、1つ又は複数の角が画像の外側あってもよく、一方、1つ又は複数の角が画像の内側にある。
708で、プロセス700は、(例えば、画像内容を分析することなく)画像に対する角の2D位置に基づいて、各画像の部分を物体の表面に関連付けることができる。例えば、プロセス700は、物体の第1面(例えば、物体の上部)に対応する特定の画像の部分を識別することができ、物体の第2面(例えば、物体の正面)に対応する特定の画像の別の部分を識別することができる。幾つかの実施形態では、プロセス700は、画像のどの部分(例えば、どのピクセル)が物体の特定の面に対応するかを識別するために、任意の適切な技術又は技術の組み合わせを使用することができる。例えば、プロセス700は、物体の角に関連付けられた2D位置の間に線(例えば、ポリライン)を描くことができ、特定の面に関連付けられた線(ポリラインなど)の範囲内にあるピクセルを、物体のその面とグループ化することができる。
710で、プロセス700は、物体の各面について、物体のその面を描写する画像を選択することができ、その面の合成画像を生成するために使用することができる。幾つかの実施形態では、(例えば、図10のプロセス1000に関連して以下で説明するように)、プロセス700は、比較的少数の画像を使用してその面の画像を生成するために使用できる各面の画像のセットを選択できる。追加的に又は代替的に、幾つかの実施形態では、プロセス700は、重複するFOVを持つ画像を使用して、(例えば、画像の少なくとも部分が、合成画像の生成に使用される画像よりも高い解像度を有する)超解像度合成画像を生成するために使用できる面(例えば、各面)の画像のセットを選択することができる。例えば、異なるカメラによって撮影された画像及び/又は異なるFOVを有する同じカメラによって撮影された画像が部分的に重なり合うと、重なり合う領域に対応する物体の部分がオーバーサンプリングされる可能性がある。このオーバーサンプリングを利用して、より高い解像度の画像データを生成できる。
幾つかの実施形態では、プロセス700は、物体の重なり合う部分及び/又は隣接する部分を描写する画像のグリッドを(例えば、画像の最小セットを選択するのではなく)選択することができる。幾つかの実施形態では、画像のグリッドを使用すると、位置合わせ手順を実行するときに分析する画像の数が減る可能性があるため、位置合わせを簡素化できる。例えば、プロセス700は、各画像及び隣接する画像のサブセットに対して(例えば、712で)位置合わせを実行することができる。そのような例では、プロセス700は、グリッド内の画像を、(例えば、画像の2次元配列で潜在的に2行あるうちの)隣接する1行及び(例えば、画像の2次元配列で潜在的に2列あるうちの)隣接する1列の画像に位置合わせすることができる。より特定の例では、プロセス700は、画像を、(例えば、より低い列インデックスを有する)1列左及び(例えば、より低い行インデックスを有する)1行上の画像と位置合わせすることができる。左上角の画像は他の画像と位置合わせできない可能性があり(ただし、他の2つの画像はその画像と位置合わせでき)、左の列と上の行の画像は、他の1つの画像にのみ位置合わせできる可能性がある(ただし、他の2つの画像をそれらの画像に位置合わせできる)。
幾つかの実施形態では、710は省略でき、及び/又は、冗長なイメージを削除するために使用できる。例えば、704で撮像装置から受信した画像が物体の少なくとも部分を含む画像のみを含む場合、プロセス700は700を省略することができる。
712で、プロセス700は、710で選択された画像を使用して、各面について合成画像を生成することができる。
幾つかの実施形態では、プロセス700は、(例えば、図11のプロセス1100に関連して以下に説明するように)各面の合成画像を生成するために、任意の適切な技術又は技術の組み合わせを使用することができる。例えば、プロセス700は、その特定の面に関する画像の部分の2D位置に基づいて(例えば、画像の部分の内容を分析せずに)、画像の部分をワープして歪み(例えば、遠近法によって生じる歪み)を除去した後、特定の面に対応する画像の部分を選択的に追加することができる。そのような例では、プロセス700は、物体の面全体が合成画像に含まれるまで、選択された各画像の部分を追加することができる。他の例として、プロセス700は、画像の内容の分析に基づく技術などの任意の適切な技術を使用して、異なる画像の部分間の位置合わせを調整することができる。そのような例では、画像の部分の2D位置を使用して、画像の部分をおおよそ位置合わせすることができ、別の技術(例えば、より計算量の多い技術)を使用して、微調整を実行することもできる。
714において、プロセス700は、後の合成画像の検索を容易にするために、物体の識別情報に関連して物体の各面の合成画像を保存することができる。例えば、プロセス700は、合成画像をサーバに送信することができ、サーバは、物体の識別情報(例えば、追跡番号、ボックスナンバー(box number)など)と関連付けて合成画像をデータベースに保存することができる。他の例として、プロセス700は、合成画像をローカルメモリ(例えば、メモリ310)に保存することができる。
幾つかの実施形態では、714において、プロセス700は、各画像に含まれる物体の表面を描写する合成画像に関連して、合成画像を生成するために使用される画像を保存することができる。例えば、物体の上面、正面、及び左側の部分を含む画像を、物体の上面、正面、及び左側の合成画像に関連付けることができる。幾つかの実施形態では、グラフィカルユーザインターフェースは、画像の1つ以上の部分が選択可能な合成画像を表示するように構成できる。合成画像の領域を選択すると、その選択に応じて、合成画像のその部分を含む保存画像を提示することができる。幾つかの実施形態では、各ピクセル位置は、物体のその部分を含む全ての画像にハイパーリンクできる。追加的に又は代替的に、幾つかの実施形態では、グラフィカルユーザインターフェースは、合成画像に関連付けられた物体の面に対応する画像の部分を表す輪郭を合成画像上に重ねて表示するように構成することができる。幾つかの実施形態では、合成画像の生成に使用した画像のみの輪郭を提示させることができる。追加的に又は代替的に、幾つかの実施形態では、合成画像の生成にその画像が使用されたかどうかに関係なく、合成画像に関連付けられた面に対応する部分を含む全ての画像の輪郭を表示できる(例えば、どのアウトラインを表示するかを指示するためにユーザ入力が提供できる)。
幾つかの実施形態では、保存された合成画像は、様々なアプリケーションで取得できる。例えば、物品が損傷していると報告された場合、保存された合成画像を取得して表示し、物体が画像化される前又は後に損傷が発生したかを判断できる。他の例として、物体上でシンボルが見つからない場合及び/又はシンボルをデコードできなかった場合、保存された合成画像を取得して表示できる。そのような例では、合成画像は、シンボルの位置を特定したり解読したりするために(例えば、ユーザの介入なしで自動化されたシステムによって)使用できる。このような例では、元の画像(例えば、合成画像に関連付けられた面の位置を含む画像)を合成画像にリンクすることができる。追加的に又は代替的に、合成画像は、荷物の住所、荷物の発送先住所、配送ラベルにテキストで印刷された追跡番号などの、物体を識別するために使用できる補足情報を生成するために(例えば、ユーザの介入なしで自動化されたシステムによって)使用できる。
716で、プロセス700は、702で受信した点の3D位置に基づいて、物体の3Dモデルを生成することができる。例えば、プロセス700は、物体の角の3D位置に基づいて物体の形状を決定することができ、プロセス700は、物体と同じ寸法(例えば、同じ寸法比)を有するモデルを生成することができる。
718で、プロセス700は、物体の面の各合成画像をモデルの面に関連付けることができる。例えば、物体の「上面」の合成画像をモデルの「上面」に関連付けることができる。幾つかの実施形態では、716及び718は、例えば物体の3D視覚化が提示されない場合には省略することができる。
720で、プロセス700は、合成画像に基づいて物体の視覚化を提示させることができ、及び/又は、合成画像を分析システムに提供することができる。幾つかの実施形態では、視覚化は、3Dモデルの各面に関連付けられた合成画像を備えた3Dモデルの視覚化など、任意の適切な視覚化であることができる。他の例として、視覚化は、2D画像、又は各面の合成画像を表す2D画像のコレクションにすることができる。
図8Aは、画像座標空間と校正ターゲット座標空間との間の変換を見つけるために使用できる工場校正セットアップ(factory calibration setup)の一例を示す。図8Aに示すように、撮像装置802は、3D工場座標空間(Xf、Yf、Zf)内の点を2D画像座標空間(xi、yi)上に投影する画像(例えば、画像810)を生成することができる。3D工場座標空間は、工場座標空間と画像座標空間との間の変換を見つけるために使用される校正ターゲット806を支持する支持構造804(固定具と呼ばれることもある)に基づいて定義することができる。
一般に、撮像装置802(例えば、カメラ)を校正する全体的な目標は、物理的な3D座標空間(例えば、ミリメートル単位)と画像の2D座標空間(例えば、ピクセル単位)との間の変換を見つけることである。図8Aの変換は、単純なピンホールカメラモデルを使用したそのような変換の例である。変換は、(例えば、レンズの歪みを表すため)他の非線形成分が含むことができる。変換は外部パラメータと内部パラメータに分割できる。外部パラメータは、物理的な3D座標空間に対する撮像装置の取り付け位置及び向きに依存する可能性がある。内部パラメータは、内部イメージングデバイスパラメータ(センサやレンズのパラメータなど)に依存する可能性がある。校正プロセスの目標は、これらの内部パラメータと外部パラメータの値を見つけることです。幾つかの実施形態では、校正プロセスは2つの部分に分割できる。1つの部分は工場での校正で実行され、もう1つの部分はフィールドで実行される。
図8Bは、開示された主題の幾つかの実施形態に従った、工場校正及び物体の1つ又は複数の面の画像をキャプチャすることを含むフィールド校正(field calibration)を含む校正プロセスのための座標空間及び他の態様の例を示す。図8Bに示すように、トンネル3D座標空間(例えば、軸Xt、Yt、Ztを有する図8Bに示すトンネル3D座標空間)は、支持構造822に基づいて定義することができる。例えば、図8Bでは、コンベヤがトンネル座標空間を定義するために使用され、原点824がコンベヤに沿った特定の位置にある(例えば、Yt=0がコンベヤに沿った特定の点で定義されている場合、例えば、米国特許出願公開第2021/0125373号に記載されているフォトアイ(photo eye)の位置に基づいて定義された点において、Xt=0がコンベヤの片側で定義され、Zt=0がコンベヤの表面で定義される)。他の例として、トンネル座標空間は、(例えば、図1Aに関連して上述したように)静止支持構造に基づいて定義することができる。代替的に、幾つかの実施形態では、トンネル座標空間は、物体の位置を測定するために使用される寸法に基づいて定義できる。
追加的に、幾つかの実施形態では、校正プロセス中(フィールド校正プロセスなど)、物体座標空間(Xob、Yob、Zob)は、校正を実行するために使用される物体(例えば、物体826)に基づいて定義することができる。例えば、図8Bに示すように、シンボルは物体(例えば、物体826)上に配置することができ、各シンボルは物体座標空間内の特定の位置に関連付けられる。
図8Cは、開示された主題の幾つかの実施形態に従った、物体の1つ又は複数の面の画像をキャプチャすることを含む、3D座標空間内の物体の座標を変換するために使用可能な撮像装置モデルを生成するためのフィールド校正プロセスの一例を示す。幾つかの実施形態では、撮像装置(例えば、撮像装置802)は、現場に設置される前に校正することができる(例えば、工場校正を実行することができる)。このような校正は、3D工場座標空間内の点を画像座標空間内の2D点にマッピングするために使用できる初期カメラモデルを生成するために使用できる。例えば、図8Cに示されるように、工場校正プロセスを実行して、3D工場座標空間内の点を画像座標空間内の2D点にマッピングするために内部パラメータとともに使用できる外部パラメータを生成することができる。内部パラメータは、焦点距離、画像センサフォーマット、主点(principal point)など、撮像装置の画像センサのピクセルを撮像装置の画像面に関連付けるパラメータを表すことができる。外部パラメータは、(例えば、工場出荷時の校正中に使用されるターゲットによって定義された原点を持つ)3Dトンネル座標内の点を(例えば、カメラの中心が原点として定義される)3Dカメラ座標に関連付けるパラメータを表すことができる。
ディメンショナは、トンネル座標空間内の校正物体(物体座標空間内の各コードの位置を定義するコードが貼られた箱、例えば物体826)を測定することができ、トンネル座標空間内の位置は、校正物体の画像座標空間内の位置と相関させることができる(例えば、(Xt、Yt、Zt)の座標を(xi、yi)に関連付ける)。
このような対応関係を使用して、(例えば、トンネル座標空間などの1つの3D座標空間を工場座標空間などの別の3D座標空間に関連付ける3D剛体変換を使用して定義できる、フィールド校正外部パラメータ行列を導出することによって)工場の座標空間とトンネルの座標空間の間の変換を考慮してカメラモデルを更新できる。フィールド校正外部パラメータマトリックスは、工場校正中に導出されたカメラモデルと組み合わせて使用して、トンネル座標空間内の点(Xt、Yt、Zt)を画像座標空間内の点(xi、yi)に関連付けることができる。この変換を使用して、ディメンショナーによって測定された物体の3D点を物体の画像にマッピングすることができ、これにより、画像の内容を分析することなく、特定の表面に対応する画像の部分を決定できるようになる。尚、図8A、8B、及び8Cに示されるモデルは、説明が過度に複雑になるのを避けるために、投影によって引き起こされる歪みを補正するために使用できる簡略化された(例えば、ピンホールカメラ)モデルであり、より洗練されたモデル(例えば、レンズ歪みを含む)を、本明細書で説明される機構と関連して使用することができる。
尚、これは単なる例であり、トンネル座標空間と画像座標空間の間の変換を定義するために他の技術を使用することもできる。例えば、工場校正とフィールド校正を実行するのではなく、フィールド校正を使用して、トンネル座標を画像座標に関連付けるモデルを導出することができる。ただし、新しい撮像装置を使用するには校正全体を実行する必要があるため、撮像装置の交換がより煩雑になるかもしれない。幾つかの実施形態では、校正ターゲットを使用して撮像装置を校正し、3D工場座標空間と画像座標の間の変換を検出すること、現場で撮像装置を校正して、(例えば、コンベヤ、支持プラットフォーム、又はディメンショナに関連する)トンネル座標間のマッピングを容易にする変換を見つけることは、フィールド校正を繰り返すことなく、撮像装置の交換を容易にできる(例えば、2016年4月5日に発行された米国特許第9,305,231号に記載されており、その全体が参照により本明細書に組み込まれる)。
図9A及び9Bは、開示された主題の幾つかの実施形態に従った、開示された主題の幾つかの実施形態に従った、1つ又は複数の校正ターゲットの異なる位置に関連付けられたフィールド校正プロセスの例を示す。図9Aに示すように、本明細書で説明されるメカニズムは、コンベヤ(又は他の輸送システム及び/又は支持構造)の形状に基づいて指定されたトンネル座標空間で定義された、物体に関連付けられた3D点(例えば、物体の角)をマッピングすることができ、工場校正及びフィールド校正に基づいて生成されたモデルに基づいて、画像座標空間内の点に変換する。例えば、図9Aに示されるように、本明細書に記載される機構は、支持構造822に関してトンネル座標(Xt、Yt、Zt)で定義された箱902に関連付けられた3D点を、撮像装置(例えば、撮像装置902)に関連付けられた画像座標空間内の点にマッピングすることができる。幾つかの実施形態では、画像の内容を分析せずに、画像空間の各角の2D点を、撮像装置の向きの知識とともに使用して、画像内の各ピクセルを物体の特定の表面(又は面)に関連付ける(又は、ピクセルが物体に関連付けられていないと判断する)ことができる。
例えば、図9Aに示されるように、撮像装置(例えば、撮像装置802、図9Aには図示せず)は、トンネル座標に対して(例えば、視野904において)正面上部の角度から画像(例えば、画像906)をキャプチャするように構成されている。そのような例では、箱の角の2D位置を使用して、画像の第1部分を箱の「左面」側、第2部分を箱の「前面」側、及び第3部分を箱の「上面」側に自動的に関連付けることができる。図9Aに示すように、角のうちの2つだけが画像906内に位置し、他の6つの角は画像の外側にある。(例えば、トンネル座標に対する撮像装置の位置及び撮像装置の光軸の決定を容易にする)撮像装置が物体の上から画像をキャプチャするように構成されているという知識に基づいて及び/又はカメラの校正に基づいて、システムは、先頭の左下角と先頭の左上角が両方とも画像内に表示されていると判断できる。
図9Bに示すように、箱がコンベヤに沿って距離ΔYt移動した後に撮影された第2画像922が示されている。上述したように、運動測定装置を使用して、図9Aに示される第1画像906がキャプチャされた時と2番目の画像922がキャプチャされた時との間に箱が移動した距離を測定できる。このような運動測定装置(例えば、エンコーダとして実装される)の動作は、米国特許第9,305,231号及び2020年10月26日に出願された、米国特許出願公開第2021/0125373号に記載されており,その全体が参照により本明細書に援用される。移動距離及び3D座標を使用して、ボックスの角に対応する第2画像922内の2D点を決定することができる。撮像装置は物体の上から画像をキャプチャするように構成されているという知識に基づいて、システムは、後尾の右上角が画像922に表示されているが、後尾の右下角が箱の上部によって遮られていると判断できる。追加的に、箱の上面は見えるが、背面と右側の面は見えない。
図10は、開示された主題の幾つかの実施形態に従った、物体の表面の複数の画像から物体の表面の画像を生成するために使用可能な画像を選択するためのプロセスの例1000を示す。
1002で、プロセス1000は、エッジごとに、そのエッジを含む画像、及びそのエッジを含む全ての画像の表面の最大部分を含む画像を識別することができる。例えば、プロセス1000は、各画像内の物体の角の2D位置に基づいて、どの画像がエッジを含むかを決定することができる。そのような例では、プロセス1000は、隣接する角の間にポリラインを描画することができ、ポリラインのいずれかが画像を横切るかどうかを判断することができる。特定の例では、このような技術を使用して、プロセス1000は、図9Aの画像に5つのエッジが含まれると判断することができる。
他の例として、プロセス1000は、表面に対応する各画像内のピクセル数に基づいて、特定の表面が画像内にどの程度含まれるかを決定することができる。例えば、図7の708に関連して上述したように、プロセス700(又は任意の他の適切なプロセス)は、各画像に対する物体の各角の2D位置に基づいて、画像の部分を特定の表面に関連付けることができる。
1004で、プロセス1000は、1002で識別された画像と同じエッジを含むが表面のより小さい部分を含む周囲の冗長画像を、面の合成画像を生成するために使用されるサブセットへの選択の考慮から、除去することができる。追加的に、1004で、プロセス1000は、表面のいずれも含まない画像(最初に含まれていた場合)を、面の合成画像を生成するために使用されるサブセットへの選択の考慮から、削除することができる。
1006で、プロセス1000は、考慮されている物体の面の表面全体をカバーするために使用できる残りの画像の最小セットを識別することができる。例えば、プロセス1000は、1002で選択された周囲画像のいずれとも重ならない表面の最大領域を提供するものを使用するように(例えば、エッジのない表面の内部のみを示す、又は、内部の部分とその他の覆われていないエッジの部分を示す)内部イメージを選択できる。そのような例では、プロセス1000は、残りの(例えば、選択されていない、まだ除去されていない)画像のどれが、別の画像にも存在する表面の部分のみを示しているかを判定することができる。幾つかの実施形態では、プロセス1000は、任意の適切な技術または技術の組み合わせを使用して、2つの画像間の重なりの範囲を決定することができる。例えば、プロセス1000は、各画像に描写された表面の部分間の交差を見つけることができる。
幾つかの実施形態では、プロセス1000は、合成画像のターゲット解像度に基づいて画像の最小セットを識別することができる。例えば、各画像のサイズと画像の解像度(ピクセル/mmなど)に基づいて、プロセス1000は、最小解像度の画像を生成するために使用できる画像の数(例えば、1インチあたり150ドット、又は1mmあたり約6ピクセル)を識別できる。
1008で、プロセス1000は、物体の面の合成画像を生成するために使用できる画像の最小セットにない冗長な内部画像を除去して、合成画像を生成するために使用できる画像のサブセットを生成することができる。
図11は、開示された主題の幾つかの実施形態に従った、物体の表面の複数の画像から歪みを低減した表面の合成画像を生成するプロセスの一例1100を示す。
1102において、プロセス1100は、任意の適切な技術または技術の組み合わせを使用して、ターゲット表面に対応しない各画像の部分を除去することができる。例えば、プロセス1100は、ターゲット表面に対応しない画像の部分を切り取ることができる。他の例として、プロセス1100は、ターゲット表面に対応する画像の部分から画像データをコピーすることができる。
1104で、プロセス1100は、任意の適切な技術または技術の組み合わせを使用して、ターゲット表面に対応する各画像の部分を正しい遠近法に変換することができる。例えば、プロセス1100は、(例えば、物体の角の3D位置に基づく)画像内の4つの点の位置と、遠近感のない画像内のこれら4点の位置(例えば(0,0)、(mm単位の幅×ピクセル/mm単位の解像度、0)、(0、長さ×解像度)、及び(幅×解像度、長さ×解像度))とに基づいて3×3行列(例えば、8つの未知数を含む)を見つけることができる。例えば、図12Bに示すように、四角を使用して変換を決定し、画像データに適用して画像の遠近感を補正することができる。
1106で、プロセス1100は、物体の角に対する画像の既知の位置に基づいて、各画像の変換された部分を合成画像の正しい対応する部分と関連付けることができる。例えば、プロセス1100は、画像に含まれる表面の部分に対する物体のその面の角の2D位置に基づいて、変換された画像をどこに配置するかを決定することができる。
幾つかの実施形態では、プロセス1100は、各画像の部分を、画像に描写された表面の部分及び画像の角の2D位置に基づいて少なくとも大まかに位置合わせすることができる。
1108で、プロセス1100は、画像分析技術を使用して画像の部分間の位置合わせを調整することができ、及び/又は、プロセス1100は、合成画像の隣接部分をブレンドして、合成画像の画質を向上させることができる。
幾つかの実施形態では、プロセス1100は、画像の内容を利用する画像処理技術を使用して、異なる画像から生成された合成画像の部分間の位置合わせを調整することができる。例えば、プロセス1100は、異なる画像の部分間の相互相関を決定することによって、画像の(例えば、特定の角などの基準点から開始する)2つの部分間の位置合わせを調整することを試みることができる。尚、これは単なる例であり、多くの位置合わせ手法を使用できる。
追加的に又は代替的に、幾つかの実施形態では、プロセス1100は、画像の2つの部分を混合して、より均一な(例えば、ノイズの少ない)合成画像を作成することができる。幾つかの実施形態では、プロセス1100は、(例えば、モノクロ画像の場合)重複領域内においてピクセル強度の加重平均を実行する、又は他の適切なブレンド技術など、任意の適切な技術または技術の組み合わせを使用して、画像の2つの隣接する部分をブレンドすることができる。例えば、ブレンドする領域は、(例えば、第1画像に近い1つのエッジの99/1から、中央の50/50、2番目のエッジの1/99まで)ある画像から別の画像へのグラデーションに沿って徐々に変化するウェイトに関連付けることができる。尚、3つ以上の画像間のブレンドは、中央の勾配が減少するように、近い画像に向かって重み付けして実行することができる(例えば、3つ以上の重みを使用する)。以下に説明するように、幾つかの実施形態では、ブレンディングは、情報量が比較的少ない領域(例えば、バーコード、住所、別のタイプのラベル、別のタイプのシンボルなどを含まない領域)で優先的に実行できる。
幾つかの実施形態では、プロセス1100は、シンボル、テキスト、ロゴなどの重要な情報の有無に基づいて、表面の特定の部分を表すために画像のどの部分を使用するかを選択することができる。例えば、プロセス1100(または別のプロセス)は、画像の他の部分と比較して情報量が多い画像部分の位置を特定することを試みることができ、情報量の多い部分が画像の部分の端にどれだけ近いかに基づいて、異なる画像の複数の重なり合う部分のうちどれを合成画像に含めるかを決定することができる。例えば、バーコード(または他のシンボル)が第1画像に部分的に含まれ、第2画像に完全に含まれている場合、プロセス1100は、合成画像に含めるためのバーコード(または他のシンボル)を含む第2画像の部分を選択することができる。これにより、画質に悪影響を与える可能性のある操作(ブレンディングなど)を実行せずに画像の情報量の多い部分を配置できるため、合成画像内の情報の保持が向上する可能性がある。追加的に又は代替的に、幾つかの実施形態では、プロセス1100は、高情報量を有する領域をより正確に位置合わせすることができ、及び/又は高情報量領域の超解像度画像を生成することができる(例えば、図7の710に関連して上述したように)。プロセス1100は、例えば、画像のどの部分が高情報量を有する可能性が高いかを示す情報を使用して、超解像度バージョンを生成するために画像のどの部分を処理するかを決定することができ、画像の他の部分(例えば、低情報部分)に対するそのような処理を省略することができる。
幾つかの実施形態では、ブレンディングは、画像が重なる比較的狭い領域で実行できる。例えば、画像が重なる領域(例えば、情報量が少ない場所、センターなど)では、100ピクセル(又はその他の適切な数のピクセル)のバンドを識別でき、その狭い領域内でブレンディングを実行でる。そのような例では、狭い領域の外側にある重なり合う部分は、100/0及び0/100に重み付けすることも、ブレンドする前にクリップして削除することもできる。
図12Aは、開示された主題の幾つかの実施形態に従った、物体の表面の画像を生成するために使用可能な画像を、物体の表面の複数の画像から選択する動作の例を示す。
図12Aにおいて、それぞれが箱の異なる部分をカバーする(例えば、操向可能なミラーを使用して撮像装置によってキャプチャされた)21枚の画像のグリッドである。図10に関連して上述したように、システムは、エッジ及び最大の表面を含むグリッド内の画像を識別することができる。図12の例では、中央の列の2番目の画像には2つのエッジと大きな表面積が含まれている。従って、その画像は、中央の列の第1画像及び左の列の第12つの画像から選択される。同様に、中央の列の最後から2番目の画像には、2つのエッジと大きな表面積が含まれている。尚、中央の列の3番目の画像には、より大きな表面が含まれているが、エッジは含まれていないため、その画像を選択すると表面の部分が除外される危険性がある。
図12Aに示すように、より大きな表面及び各エッジを有する画像を含む画像のブロックは、ブロック内の画像よりも小さい表面を含む周囲画像を除去することによって予備的に選択されることができる。例えば、図12Aでは、左列の画像に含まれる表面の部分が全て中列の画像に含まれており、従って、これらの画像には、合成画像の生成に必要な画像コンテンツが含まれていない。
周囲の冗長画像(及び表面の如何なる部分も含まない画像)を除去した後、冗長な内部画像を、合成画像の生成における使用の考慮から除外することができる。例えば、図12Aにおいて、冗長な周囲画像を除去した後の各列の3番目の画像は、上下(図12A内の方向、トンネル座標空間内である必要はない)エッジを含む画像との重なりが最小である。これら2つの画像は、周囲画像に含まれていない表面の部分を含むため、合成画像の生成に使用するために選択できる。従って、2番目と4番目の画像には表面の余分な部分しか含まれていないため、それらの画像も削除でき、元の21枚の画像のうち6枚を選択して、画像の内容の分析を行わずに合成画像の生成に使用できる。例えば、決定は、各画像に対するボックスの位置に関する情報に完全に基づいて行うことができる。
図12Bは、開示された主題の幾つかの実施形態に従った、物体のターゲット表面に対応する画像の部分を識別し、ターゲット表面に対応しない画像の部分を除去し、ターゲット表面の画像を合成画像に位置合わせする動作の一例を示す。
図12Bに示すように、箱の各角の3D位置を箱の画像内の2D点にマッピングすることができる。箱のターゲット表面と画像の間の対応関係を使用して、箱の別の表面の部分と背景を破棄しながら、ターゲット表面を含む画像の部分をクリップすることができる。
クリップされた領域は、右側の補正された画像が遠近感の歪みなしでキャプチャされたように見えるように、画像の遠近感を補正するために変換(例えば、ワープ)できる。図12Bに示すように、補正画像は、3D点の2D画像空間へのマッピングに基づいて、ターゲット表面の輪郭と位置合わせすることができる。
様々な機能を備えた更なる例
実装例は、次の番号付きの項で説明される。
1.物体の1つ又は複数の面の画像を生成する方法であって、
(i)第1時間において第1座標空間における第1物体の3次元(3D)姿勢を示す情報を受信するステップと、
(ii)前記物体の1つ又は複数の表面に関連付けられた少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられている、ステップと、
(iii)前記画像のグループの各画像について、前記第1座標空間における前記第1物体の前記3D姿勢を示す前記情報に基づいて前記画像に関して前記第1物体の表面の少なくとも部分を2D領域にマッピングするステップと、
(iv)前記画像内の前記第1物体の前記表面の少なくとも部分を含む前記画像のグループの各画像について、前記2D領域に基づいて、その画像の部分を前記第1物体の前記表面と関連付けるステップと、
(v)前記第1物体の前記表面に関連付けられた画像のセットを使用して、前記第1物体の前記表面の合成画像を生成するステップと、
を備えることを特徴とする方法。
2.多数の物体に対して(i)から(v)を繰り返すステップ
を更に備えることを特徴とする項1に記載の方法。
3.前記多数の物体は、コンベヤを介して少なくとも1つの撮像装置を通過して搬送される物体である
ことを特徴とする項2に記載の方法。
4.前記第1物体の複数の表面について(ii)から(v)を繰り返すステップ
を更に備えることを特徴とする項1~3のいずれかに記載の方法。
5.前記第1物体の前記表面の前記部分を前記画像に関して前記2D領域にマッピングするステップは、
前記第1座標空間における前記第1物体の前記3D姿勢を示す前記情報に基づいて前記画像に関して、前記第1物体の複数の角の3D位置を2D位置にマッピングするステップと、
前記複数の角の前記3D位置に基づいて前記表面に対応する前記画像の部分を決定するステップと、
を含むことを特徴とする項1~4のいずれかに記載の方法。
6.前記第1物体の前記表面の前記部分を前記画像に関して前記2D領域にマッピングするステップは、前記第1座標空間内の少なくとも1つの3D位置を、前記画像のグループ内の画像に関連付けられた画像座標空間内の2D位置に変換するステップを含む
ことを特徴とする項1~5のいずれかに記載の方法。
7.前記第1物体の前記3D姿勢を示す情報を受信するステップは、前記第1座標空間における前記第1物体の少なくとも1つの角の3D位置を含む
ことを特徴とする項1~6のいずれかに記載の方法。
8.前記第1物体の寸法を示す情報を受信するステップ
を更に備えることを特徴とする項1~7のいずれかに記載の方法。
9.前記第1物体の前記3D姿勢を示す前記情報は、寸法測定システムから受信される
ことを特徴とする項1~8のいずれかに記載の方法。
10.前記第1物体の前記3D姿勢を示す前記情報は、点群データを含む
ことを特徴とする項1~6のいずれかに記載の方法。
11.前記画像のグループから、前記物体の特定の表面を含む画像のセットを選択するステップであって、前記画像のセットには、前記画像のグループよりも少ない画像が含まれる、ステップ
を更に備えることを特徴とする項1~10のいずれかに記載の方法。
12.前記画像のセットは、前記物体の前記特定の表面を含む全ての画像を含む
ことを特徴とする項11に記載の方法。
13.前記画像のセットは、前記特定の表面を含む全ての画像よりも少ない画像を含み、前記画像のセット内の画像に描写されている前記特定の表面の同じ部分を含む前記画像のグループのうちの少なくとも1つの画像を除外する
ことを特徴とする項11に記載の方法。
14.前記第1物体の寸法を示す情報に基づいて、前記物体の3Dモデルを生成するステップと、
前記合成画像のそれぞれを前記3Dモデルの面に関連付けるステップと、
前記物体の視覚化を提示させるステップと、
を更に備えることを特徴とする項1~13のいずれかに記載の方法。
15.前記第1物体の複数の表面のそれぞれの前記合成画像を生成するために使用される、少なくとも前記画像をメモリに保存させるステップと、
前記第1物体の第1表面の合成画像を提示させるステップと、
前記第1表面の前記合成画像の部分の選択を受け取るステップと、
前記選択に応じて、第1面の前記合成画像を生成するために使用される前記画像の各画像を提示させるステップと、
を更に備えることを特徴とする項1~14のいずれかに記載の方法。
16.前記第1表面の前記合成画像の各部分は、メモリに保存されているどの画像が前記第1表面のその部分を描写しているかを識別する情報に関連付けられる
ことを特徴とする項15に記載の方法。
17.前記物体の前記表面に関連付けられた前記画像のセットを使用して前記第1物体の前記表面の前記合成画像を生成するステップは、
前記第1物体の3D姿勢を示す前記情報に基づいて、前記表面に関連付けられた前記画像のセットのうち、前記表面を描写していない各画像の部分を除去するステップと、
前記表面を描写する前記表面に関連付けられた前記画像のセットの各画像の部分を変換するステップと、
前記画像のセットの各画像の変換された部分を前記合成画像の対応する部分と関連付けるステップと、
前記変換された部分の画像データに基づいて、前記画像の前記変換された部分の位置合わせを調整するステップと、
を含むことを特徴とする項1~16のいずれかに記載の方法。
18.前記変換された部分の画像データに基づいて、画像の変換された部分をブレンドするステップ
を更に備えることを特徴とする項17に記載の方法。
19.物体の1つ又は複数の面の画像を生成するためのシステムであって、少なくとも1つのハードウェアプロセッサを備えるシステムであって、
前記少なくとも1つのハードウェアプロセッサは、
(i)第1時間において第1座標空間における第1物体の3次元(3D)姿勢を示す情報を受信するステップと、
(ii)前記物体の1つ又は複数の表面に関連付けられた少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられている、ステップと、
(iii)前記画像のグループの各画像について、前記第1座標空間における前記第1物体の前記3D姿勢を示す情報に基づいて前記画像に関して、前記第1物体の表面の少なくとも部分を2次元(2D)領域にマッピングするステップと、
(iv)前記画像内の前記第1物体の前記表面の少なくとも部分を含む前記画像のグループの各画像について、前記2D領域に基づいて、その画像の部分を前記第1物体の前記表面と関連付けるステップと、
(v)前記第1物体の前記表面に関連付けられた画像のセットを使用して、前記第1物体の前記表面の合成画像を生成するステップと、
を行うようにプログラムされていることを特徴とするシステム。
20.少なくとも1つの画像センサを含む撮像装置を更に備え、
前記撮像装置は、
複数の画像をキャプチャし、
前記複数の画像を、前記少なくとも1つのハードウェアプロセッサを備えるコンピューティングデバイスに送信する
ようにプログラムされていることを特徴とする項19に記載のシステム。
21.寸法測定装置を更に備え、
前記寸法測定装置は、
支持構造によって支持される物体の寸法と位置を決定し、
前記第1座標空間における前記物体の角の位置を計算し、
前記第1座標空間における前記物体の角の位置を、前記少なくとも1つのプロセッサを備えるコンピューティングデバイスに送信する
ようにプログラムされていることを特徴とする項19~20のいずれかに記載のシステム。
22.前記少なくとも1つのプロセッサは、多数の物体に対して(i)から(v)を繰り返す
ことを特徴とする項19~21のいずれかに記載のシステム。
23.前記多数の物体は、コンベヤを介して少なくとも1つの撮像装置を通過して搬送される物体である
ことを特徴とする項22に記載のシステム。
24.前記少なくとも1つのプロセッサは、更に、
前記画像のグループから、前記物体の特定の表面を含む画像のセットを選択するようにプログラムされ、
前記画像のセットには、前記画像のグループよりも少ない画像が含まれる
ことを特徴とする項19~23のいずれかに記載のシステム。
25.物体の1つ又は複数の面の画像を生成するシステムであって、
項1~18のいずれかの方法を実行するように構成された少なくとも1つのプロセッサを含むことを特徴とするシステム。
26.プロセッサによって実行されると、物体の1つ又は複数の面の画像を生成する方法を前記プロセッサに実行させるコンピュータ実行可能命令を含む非一時的なコンピュータ可読媒体であって、
前記方法は、
(i)第1時間において第1座標空間における第1物体の3次元(3D)姿勢を示す情報を受信するステップと、
(ii)前記物体の1つ又は複数の表面に関連付けられた少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられている、ステップと、
(iii)前記画像のグループの各画像について、前記第1座標空間における前記第1物体の前記3D姿勢を示す情報に基づいて前記画像に関して、前記第1物体の表面の少なくとも部分を2D領域にマッピングするステップと、
(iv)前記画像内の前記第1物体の前記表面の少なくとも部分を含む前記画像のグループの各画像について、前記2D領域に基づいて、その画像の部分を前記第1物体の前記表面と関連付けるステップと、
(v)前記第1物体の前記表面に関連付けられた画像のセットを使用して、前記第1物体の前記表面の合成画像を生成するステップと、
を備えることを特徴とする非一時的なコンピュータ可読媒体。
27.項1~19のいずれかに記載の方法をプロセッサに実行させるようにコンピュータを動作させるコンピュータ実行可能命令を含む非一時的なコンピュータ可読媒体。
28.物体の表面の合成画像を生成する方法であって、
物体の1つ又は複数の表面の複数の画像を受信するステップであって、各画像は第1座標空間内の視野に関連付けられる、ステップと、
前記複数の画像の各画像について、物体の少なくとも部分を、第1座標空間内の3D座標から画像内の2D座標にマッピングするステップと、
前記複数の画像の各画像について、前記画像内の前記物体の角の位置に基づいて、その画像の部分を前記物体の表面に関連付けるステップと、
前記物体の前記表面に関連する前記画像の前記部分を使用して、前記物体の前記表面の合成画像を生成するステップと、
を備えることを特徴とする方法。
29.前記第1座標空間における前記第1物体の少なくとも1つの角の3D位置を含む、前記第1物体の3D姿勢を示す情報を受信するステップ
を更に備えることを特徴とする項27に記載の方法。
30.点群データを使用して前記第1物体の3D姿勢を示す情報を決定するステップと、
前記第1座標空間における前記第1物体の少なくとも1つの角の3D位置を決定するステップと、
を更に備えることを特徴とする項27に記載の方法。
31.点群データを受信するステップと、
前記点群データを使用して、前記第1物体の前記3D姿勢を示す前記情報を決定するステップと、
を更に備えることを特徴とする項30に記載の方法。
32.撮像装置を使用して、前記複数の画像及び第2複数の画像を含む画像のグループをキャプチャするステップと、
前記撮像装置において、前記第1座標空間における前記第1物体の少なくとも1つの角の3D位置を含む、前記第1物体の3D姿勢を示す情報を受信するステップと、
前記撮像装置のプロセッサを使用して、前記物体の少なくとも1つの角の前記3D位置を前記画像内の2D位置にマッピングするステップと、
前記物体の特定の表面が含まれることに少なくとも部分的に基づいて、前記画像の前記グループから前記複数の画像を選択するステップであって、前記第2複数の画像は前記物体の前記特定の表面を含まない、ステップと、
前記複数の画像を、前記表面の前記合成画像を生成するように構成されたコンピューティングデバイスに送信するステップと、
を更に備えることを特徴とする項28~31のいずれかに記載の方法。
前記撮像装置において、前記第1座標空間における前記第1物体の少なくとも1つの角の3D位置を含む、前記第1物体の3D姿勢を示す情報を受信するステップと、
前記物体の少なくとも1つの角の前記3D位置を撮像装置の視野内の2D位置にマッピングするステップと、
前記撮像装置を使用して、前記3D姿勢を示す前記情報を使用して前記複数の画像のそれぞれが前記第1物体の少なくとも部分を含むように前記複数の画像を選択的にキャプチャするステップと、
前記複数の画像を、前記表面の前記合成画像を生成するように構成されたコンピューティングデバイスに送信するステップと、
を備えることを特徴とする項28に記載の方法。
34.前記物体は、6つの表面と8つの角を持つ箱である
ことを特徴とする項28~33のいずれかに記載の方法。
35.前記物体は、2つの表面と4つの角を持つ封筒である
ことを特徴とする項28~33のいずれかに記載の方法。
36.前記2つの表面のうち少なくとも1つは3D形状を持つ
ことを特徴とする項35に記載の方法。
37.前記第1物体の前記3D姿勢を示す前記情報は、前記寸法測定システムによって生成される
ことを特徴とする項28~36のいずれかに記載の方法。
38.前記第1物体の寸法を示す情報を受信するステップ
を更に備えることを特徴とする項28~36のいずれかに記載の方法。
39.前記複数の画像は、第2複数の画像を含む画像のグループの部分として受信され、
前記方法は、更に、
前記画像のグループから、それぞれ前記物体の特定の表面を含む前記複数の画像を選択するステップであって、前記画像のセットには、前記画像のグループよりも少ない画像が含まれる、ステップ、
を備えることを特徴とする項28~30、33~38のいずれかに記載の方法。
40.前記第1物体の寸法を示す情報に基づいて前記物体の3Dモデルを生成するステップと、
前記表面の前記合成画像を前記3Dモデルの面に関連付けるステップと、
前記物体の視覚化を提示させるステップと、
を更に備えることを特徴とする項28~39のいずれかに記載の方法。
41.少なくとも前記合成画像の生成に使用される前記画像をメモリに保存させるステップと、
前記合成画像を提示させるステップと、
前記第1表面の前記合成画像の部分の選択を受け取るステップと、
選択に応じて、前記第1表面の前記合成画像を生成するために使用される前記画像の各画像を提示させるステップと、
を更に備えることを特徴とする項28~40のいずれかに記載の方法。
42.物体の表面の合成画像を生成するシステムであって、少なくとも1つのハードウェアプロセッサを備えるシステムであって、
前記少なくとも1つのハードウェアプロセッサは、
物体の1つ又は複数の表面の複数の画像を受信するステップであって、各画像は第1座標空間内の視野に関連付けられる、ステップと、
前記複数の画像の各画像について、物体の少なくとも部分を、第1座標空間内の3D座標から画像内の2D座標にマッピングするステップと、
前記複数の画像の各画像について、前記画像内の前記物体の角の位置に基づいて、その画像の部分を前記物体の表面に関連付けるステップと、
前記物体の前記表面に関連する前記画像の前記部分を使用して、前記物体の前記表面の合成画像を生成するステップと、
を行うようにプログラムされていることを特徴とするシステム。
43.少なくとも1つの画像センサを含む撮像装置を更に備え、
前記撮像装置は、
複数の画像をキャプチャし、
前記複数の画像を、前記少なくとも1つのハードウェアプロセッサを備えるコンピューティングデバイスに送信する
ようにプログラムされている
ことを特徴とする項42に記載のシステム。
44.寸法測定装置を更に備え、
前記寸法測定装置は、
支持構造によって支持される物体の寸法と位置を決定し、
前記第1座標空間における前記物体の角の位置を計算し、
前記第1座標空間における前記物体の角の位置を、前記少なくとも1つのプロセッサを備えるコンピューティングデバイスに送信する
ようにプログラムされている
ことを特徴とする項42~43のいずれかに記載のシステム。
45.前記少なくとも1つのプロセッサは、多数の物体の前記表面の合成画像を生成するように更にプログラムされる
ことを特徴とする項42~44のいずれかに記載のシステム。
46.前記多数の物体は、コンベヤを介して画像をキャプチャする少なくとも1つの撮像装置を通過して搬送される物体である
ことを特徴とする項45に記載のシステム。
47.物体の表面の合成画像を生成するためのシステムであって、
項28~41のいずれかに記載の方法を実行するように構成された少なくとも1つのプロセッサを備えるシステム。
48.プロセッサによって実行されると、物体の表面の合成画像を生成する方法を前記プロセッサに実行させるコンピュータ実行可能命令を含む非一時的なコンピュータ可読媒体であって、
前記方法は、
物体の1つ又は複数の表面の複数の画像を受信するステップであって、各画像は第1座標空間内の視野に関連付けられる、ステップと、
前記複数の画像の各画像について、物体の少なくとも部分を、第1座標空間内の3D座標から画像内の2D座標にマッピングするステップと、
前記複数の画像の各画像について、前記画像内の前記物体の角の位置に基づいて、その画像の部分を前記物体の表面に関連付けるステップと、
前記物体の前記表面に関連する前記画像の前記部分を使用して、前記物体の前記表面の合成画像を生成するステップと、
を備えることを特徴とする方法。
49.項28~19のいずれかに記載の方法をプロセッサに実行させるようにコンピュータを動作させるコンピュータ実行可能命令を含む非一時的なコンピュータ可読媒体。
幾つかの実施形態では、本明細書で説明される機能及び/又はプロセスを実行するための命令を格納するために、任意の適切なコンピュータ可読媒体を使用することができる。例えば、幾つかの実施形態では、コンピュータ可読媒体は、一時的な場合と非一時的な場合がある。例えば、コンピュータ可読媒体は、磁気メディア(ハードディスク、フロッピーディスクなど)、光学メディア(コンパクトディスク、デジタルビデオディスク、ブルーレイディスクなど)、半導体メディア(RAM、フラッシュメモリ、電気的にプログラム可能な読み取り専用メモリ(electrically programmable read only memory(EPROM))、電気的に消去可能なプログラム可能な読み取り専用メモリ(electrically erasable programmable read only memory(EEPROM))など)、送信中に一時的ではない若しくは永続性がある適切なメディア、及び/又は適切な有形メディアなどの媒体を含むことができる。他の例として、一時的なコンピュータ可読媒体は、送信中に一時的であって永続性がない、ネットワーク、ワイヤ、導体、光ファイバー、回路、又はその他の適切な媒体上の信号、及び/又は、適切な無形メディアを含むことができる。
尚、本明細書で使用される場合、機構という用語は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の適切な組み合わせを包含しうる。
本発明は、前述の例示的な実施形態において説明及び図示されてきたが、本開示は例としてのみ行われたものであり、以下の特許請求の範囲によってのみ制限される本発明の精神及び範囲から逸脱することなく、本発明の実施の詳細における多くの変更を行うことができることが理解されるべきである。開示された実施形態の特徴は、様々な方法で組み合わせたり再配置したりすることができる。

Claims (25)

  1. 物体の1つ又は複数の面の画像を生成する方法であって、
    (i)第1時間において第1座標空間における第1物体の3次元(3D)姿勢を示す情報を受信するステップと、
    (ii)前記物体の1つ又は複数の表面に関連付けられた少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられている、ステップと、
    (iii)前記画像のグループの各画像について、前記第1座標空間における前記第1物体の前記3D姿勢を示す前記情報に基づいて前記画像に関して前記第1物体の表面の少なくとも部分を2次元(2D)領域にマッピングするステップと、
    (iv)前記画像内の前記第1物体の前記表面の少なくとも部分を含む前記画像のグループの各画像について、前記2D領域に基づいて、その画像の部分を前記第1物体の前記表面と関連付けるステップと、
    (v)前記第1物体の前記表面に関連付けられた画像のセットを使用して、前記第1物体の前記表面の合成画像を生成するステップと、
    を備えることを特徴とする方法。
  2. 多数の物体に対して(i)から(v)を繰り返すステップ
    を更に備えることを特徴とする請求項1に記載の方法。
  3. 前記多数の物体は、コンベヤを介して少なくとも1つの撮像装置を通過して搬送される物体である
    ことを特徴とする請求項2に記載の方法。
  4. 前記第1物体の複数の表面について(ii)から(v)を繰り返すステップ
    を更に備えることを特徴とする請求項1に記載の方法。
  5. 前記第1物体の前記表面の前記部分を前記画像に関して前記2D領域にマッピングするステップは、
    前記第1座標空間における前記第1物体の前記3D姿勢を示す前記情報に基づいて前記画像に関して、前記第1物体の複数の角の3D位置を2D位置にマッピングするステップと、
    前記複数の角の前記3D位置に基づいて前記表面に対応する前記画像の部分を決定するステップと、
    を含むことを特徴とする請求項1に記載の方法。
  6. 前記第1物体の前記表面の前記部分を前記画像に関して前記2D領域にマッピングするステップは、前記第1座標空間内の少なくとも1つの3D位置を、前記画像のグループ内の画像に関連付けられた画像座標空間内の2D位置に変換するステップを含む
    ことを特徴とする請求項1に記載の方法。
  7. 前記第1物体の前記3D姿勢を示す情報を受信するステップは、前記第1座標空間における前記第1物体の少なくとも1つの角の3D位置を含む
    ことを特徴とする請求項1に記載の方法。
  8. 前記第1物体の寸法を示す情報を受信するステップ
    を更に備えることを特徴とする請求項1に記載の方法。
  9. 前記第1物体の前記3D姿勢を示す前記情報は、寸法測定システムから受信される
    ことを特徴とする請求項1に記載の方法。
  10. 前記第1物体の前記3D姿勢を示す前記情報は、点群データを含む
    ことを特徴とする請求項1に記載の方法。
  11. 前記画像のグループから、前記物体の特定の表面を含む画像のセットを選択するステップであって、前記画像のセットには、前記画像のグループよりも少ない画像が含まれる、ステップ
    を更に備えることを特徴とする請求項1に記載の方法。
  12. 前記画像のセットは、前記物体の前記特定の表面を含む全ての画像を含む
    ことを特徴とする請求項11に記載の方法。
  13. 前記画像のセットは、前記特定の表面を含む全ての画像よりも少ない画像を含み、前記画像のセット内の画像に描写されている前記特定の表面の同じ部分を含む前記画像のグループのうちの少なくとも1つの画像を除外する
    ことを特徴とする請求項11に記載の方法。
  14. 前記第1物体の寸法を示す情報に基づいて、前記物体の3Dモデルを生成するステップと、
    前記合成画像のそれぞれを前記3Dモデルの面に関連付けるステップと、
    前記物体の視覚化を提示させるステップと、
    を更に備えることを特徴とする請求項1に記載の方法。
  15. 前記第1物体の複数の表面のそれぞれの前記合成画像を生成するために使用される、少なくとも前記画像をメモリに保存させるステップと、
    前記第1物体の第1表面の合成画像を提示させるステップと、
    前記第1表面の前記合成画像の部分の選択を受け取るステップと、
    前記選択に応じて、第1面の前記合成画像を生成するために使用される前記画像の各画像を提示させるステップと、
    を更に備えることを特徴とする請求項1に記載の方法。
  16. 前記第1表面の前記合成画像の各部分は、メモリに保存されているどの画像が前記第1表面のその部分を描写しているかを識別する情報に関連付けられる
    ことを特徴とする請求項15に記載の方法。
  17. 前記物体の前記表面に関連付けられた前記画像のセットを使用して前記第1物体の前記表面の前記合成画像を生成するステップは、
    前記第1物体の3D姿勢を示す前記情報に基づいて、前記表面に関連付けられた前記画像のセットのうち、前記表面を描写していない各画像の部分を除去するステップと、
    前記表面を描写する前記表面に関連付けられた前記画像のセットの各画像の部分を変換するステップと、
    前記画像のセットの各画像の変換された部分を前記合成画像の対応する部分と関連付けるステップと、
    前記変換された部分の画像データに基づいて、前記画像の前記変換された部分の位置合わせを調整するステップと、
    を含むことを特徴とする請求項1に記載の方法。
  18. 前記変換された部分の画像データに基づいて、画像の変換された部分をブレンドするステップ
    を更に備えることを特徴とする請求項17に記載の方法。
  19. 物体の1つ又は複数の面の画像を生成するためのシステムであって、少なくとも1つのハードウェアプロセッサを備えるシステムであって、
    前記少なくとも1つのハードウェアプロセッサは、
    (i)第1時間において第1座標空間における第1物体の3次元(3D)姿勢を示す情報を受信するステップと、
    (ii)前記物体の1つ又は複数の表面に関連付けられた少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられている、ステップと、
    (iii)前記画像のグループの各画像について、前記第1座標空間における前記第1物体の前記3D姿勢を示す情報に基づいて前記画像に関して、前記第1物体の表面の少なくとも部分を2次元(2D)領域にマッピングするステップと、
    (iv)前記画像内の前記第1物体の前記表面の少なくとも部分を含む前記画像のグループの各画像について、前記2D領域に基づいて、その画像の部分を前記第1物体の前記表面と関連付けるステップと、
    (v)前記第1物体の前記表面に関連付けられた画像のセットを使用して、前記第1物体の前記表面の合成画像を生成するステップと、
    を行うようにプログラムされていることを特徴とするシステム。
  20. 前記少なくとも1つの画像センサを含む撮像装置を更に備え、
    前記撮像装置は、
    複数の画像をキャプチャし、
    前記複数の画像を、前記少なくとも1つのハードウェアプロセッサを備えるコンピューティングデバイスに送信する
    ようにプログラムされていることを特徴とする請求項19に記載のシステム。
  21. 寸法測定装置を更に備え、
    前記寸法測定装置は、
    支持構造によって支持される物体の寸法と位置を決定し、
    前記第1座標空間における前記物体の角の位置を計算し、
    前記第1座標空間における前記物体の角の位置を、前記少なくとも1つのプロセッサを備えるコンピューティングデバイスに送信する
    ようにプログラムされていることを特徴とする請求項19に記載のシステム。
  22. 前記少なくとも1つのプロセッサは、多数の物体に対して(i)から(v)を繰り返す
    ことを特徴とする請求項19に記載のシステム。
  23. 前記多数の物体は、コンベヤを介して少なくとも1つの撮像装置を通過して搬送される物体である
    ことを特徴とする請求項22に記載のシステム。
  24. 前記少なくとも1つのプロセッサは、更に、
    前記画像のグループから、前記物体の特定の表面を含む画像のセットを選択するようにプログラムされ、
    前記画像のセットには、前記画像のグループよりも少ない画像が含まれる
    ことを特徴とする請求項19に記載のシステム。
  25. プロセッサによって実行されると、物体の1つ又は複数の面の画像を生成する方法を前記プロセッサに実行させるコンピュータ実行可能命令を含む非一時的なコンピュータ可読媒体であって、
    前記方法は、
    (i)第1時間において第1座標空間における第1物体の3次元(3D)姿勢を示す情報を受信するステップと、
    (ii)前記物体の1つ又は複数の表面に関連付けられた少なくとも1つの画像センサを使用してキャプチャされた画像のグループを受信するステップであって、各画像は前記第1座標空間内の視野に関連付けられている、ステップと、
    (iii)前記画像のグループの各画像について、前記第1座標空間における前記第1物体の前記3D姿勢を示す情報に基づいて前記画像に関して、前記第1物体の表面の少なくとも部分を2次元(2D)領域にマッピングするステップと、
    (iv)前記画像内の前記第1物体の前記表面の少なくとも部分を含む前記画像のグループの各画像について、前記2D領域に基づいて、その画像の部分を前記第1物体の前記表面と関連付けるステップと、
    (v)前記第1物体の前記表面に関連付けられた画像のセットを使用して、前記第1物体の前記表面の合成画像を生成するステップと、
    を備えることを特徴とする非一時的なコンピュータ可読媒体。
JP2023575909A 2021-06-10 2022-06-10 物体の複数の面の画像を生成する方法、システム、及び媒体 Pending JP2024527245A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163209374P 2021-06-10 2021-06-10
US63/209,374 2021-06-10
PCT/US2022/033098 WO2022261496A1 (en) 2021-06-10 2022-06-10 Methods, systems, and media for generating images of multiple sides of an object

Publications (1)

Publication Number Publication Date
JP2024527245A true JP2024527245A (ja) 2024-07-24

Family

ID=82492691

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023575909A Pending JP2024527245A (ja) 2021-06-10 2022-06-10 物体の複数の面の画像を生成する方法、システム、及び媒体

Country Status (7)

Country Link
US (1) US12073506B2 (ja)
EP (1) EP4352695A1 (ja)
JP (1) JP2024527245A (ja)
KR (1) KR20240035439A (ja)
CN (1) CN117882113A (ja)
BR (1) BR112023025887A2 (ja)
WO (1) WO2022261496A1 (ja)

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9600703B2 (en) 2013-03-15 2017-03-21 Cognex Corporation Systems and methods for sorting image acquisition settings for pattern stitching and decoding using multiple captured images
US9104932B2 (en) 2013-03-15 2015-08-11 Cognex Corporation Systems and methods for pattern stitching and decoding using multiple captured images
US9238304B1 (en) * 2013-03-15 2016-01-19 Industrial Perception, Inc. Continuous updating of plan for robotic object manipulation based on received sensor data
US9305231B2 (en) 2013-08-01 2016-04-05 Cognex Corporation Associating a code with an object
US10192354B2 (en) 2015-04-14 2019-01-29 ETAK Systems, LLC Systems and methods for obtaining accurate 3D modeling data using UAVS for cell sites
US10304201B2 (en) * 2016-06-30 2019-05-28 Datalogic ADC, Inc. Item image stitching from multiple line-scan images for barcode scanning systems
US10354426B2 (en) * 2016-08-04 2019-07-16 Datalogic IP Tech, S.r.l. Symbol stitching imaging system
EP3454298B1 (de) * 2017-09-06 2019-08-07 Sick AG Kameravorrichtung und verfahren zur erfassung eines stromes aus objekten
US10776972B2 (en) 2018-04-25 2020-09-15 Cognex Corporation Systems and methods for stitching sequential images of an object
US11335021B1 (en) 2019-06-11 2022-05-17 Cognex Corporation System and method for refining dimensions of a generally cuboidal 3D object imaged by 3D vision system and controls for the same
US11600018B2 (en) 2019-10-25 2023-03-07 Cognex Corporation Boundary estimation systems and methods
US11647290B2 (en) * 2019-12-16 2023-05-09 Cognex Corporation Machine vision system and method with steerable mirror
EP4229588A1 (en) 2020-10-15 2023-08-23 Cognex Corporation System and method for extracting and measuring shapes of objects having curved surfaces with a vision system
US11741618B2 (en) * 2021-03-22 2023-08-29 Everypoint, Inc. Performing object modeling by combining visual data from images with motion data of the image acquisition device

Also Published As

Publication number Publication date
EP4352695A1 (en) 2024-04-17
US20220398802A1 (en) 2022-12-15
BR112023025887A2 (pt) 2024-02-27
CN117882113A (zh) 2024-04-12
US12073506B2 (en) 2024-08-27
KR20240035439A (ko) 2024-03-15
WO2022261496A1 (en) 2022-12-15

Similar Documents

Publication Publication Date Title
US10402956B2 (en) Image-stitching for dimensioning
KR102487546B1 (ko) 개선된 카메라 캘리브레이션 시스템, 타겟 및 프로세스
US10924729B2 (en) Method and device for calibration
CN107155341B (zh) 三维扫描系统和框架
CN107525466B (zh) 体积尺寸标注器中的自动模式切换
US10447999B2 (en) Alignment of images of a three-dimensional object
GB2531928A (en) Image-stitching for dimensioning
JP7442691B2 (ja) 物体測定のためのシステム及び方法
WO2009120073A2 (en) A dynamically calibrated self referenced three dimensional structured light scanner
US20190180475A1 (en) Dynamic camera calibration
JP7151873B2 (ja) 検査装置
CN112986260A (zh) 基于相机矩阵的检测系统、控制系统、终端、介质及应用
US9204130B2 (en) Method and system for creating a three dimensional representation of an object
EP4109413B1 (en) Point cloud data processing device, point cloud data processing method, and program
JP2024527245A (ja) 物体の複数の面の画像を生成する方法、システム、及び媒体
US9948926B2 (en) Method and apparatus for calibrating multiple cameras using mirrors
Garbat et al. Structured light camera calibration
CN111260781B (zh) 一种生成图像信息的方法、装置和电子设备
US20220414916A1 (en) Systems and methods for assigning a symbol to an object
US20210027488A1 (en) General monocular machine vision system and method for identifying locations of target elements
KR102731152B1 (ko) 대상 물체에 대한 3차원 스캔 시스템
WO2024129556A1 (en) Optimized multi view perspective approach to dimension cuboid parcel
JP2024072284A (ja) マルチビュー位相移動プロファイロメトリのための3次元キャリブレーション方法および装置
Zausa Fixed Single–Camera 3D Laser Scanning