JP2024136150A - Information processing device, information processing system, information processing method, and program - Google Patents
Information processing device, information processing system, information processing method, and program Download PDFInfo
- Publication number
- JP2024136150A JP2024136150A JP2023047147A JP2023047147A JP2024136150A JP 2024136150 A JP2024136150 A JP 2024136150A JP 2023047147 A JP2023047147 A JP 2023047147A JP 2023047147 A JP2023047147 A JP 2023047147A JP 2024136150 A JP2024136150 A JP 2024136150A
- Authority
- JP
- Japan
- Prior art keywords
- position information
- imaging device
- trajectory
- information processing
- image
- 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
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 121
- 238000003672 processing method Methods 0.000 title claims abstract description 7
- 238000003384 imaging method Methods 0.000 claims abstract description 193
- 238000004364 calculation method Methods 0.000 claims abstract description 97
- 238000012937 correction Methods 0.000 claims abstract description 43
- 238000000034 method Methods 0.000 claims description 84
- 230000008569 process Effects 0.000 claims description 76
- 239000003550 marker Substances 0.000 claims description 38
- 238000012545 processing Methods 0.000 abstract description 19
- 238000004891 communication Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 210000000707 wrist Anatomy 0.000 description 5
- 239000012636 effector Substances 0.000 description 4
- 230000032258 transport Effects 0.000 description 4
- 230000007704 transition Effects 0.000 description 3
- 238000002604 ultrasonography Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000002939 conjugate gradient method Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Studio Devices (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Image Analysis (AREA)
Abstract
Description
本発明は、情報処理装置、情報処理システム、情報処理方法、及びプログラムに関する。 The present invention relates to an information processing device, an information processing system, an information processing method, and a program.
フォークリフト等の移動体により搬送される貨物又はパレット等の物体の位置情報を処理する情報処理装置が知られている(例えば、特許文献1参照)。 There is known an information processing device that processes position information of objects such as cargo or pallets transported by a mobile object such as a forklift (see, for example, Patent Document 1).
また、物体を搬送する搬送車両等の移動体に搭載されたカメラを用いて特定した移動体の位置と、移動体を観測可能な場所に設置されたカメラを用いて特定した移動体の位置とに基づいて、移動体の位置を安定的に得る情報処理装置が知られている(例えば、特許文献2参照)。 In addition, an information processing device is known that stably obtains the position of a moving body based on the position of the moving body determined using a camera mounted on the moving body, such as a transport vehicle that transports an object, and the position of the moving body determined using a camera installed in a location where the moving body can be observed (see, for example, Patent Document 2).
例えば、特許文献2に開示された技術のように、移動体に搭載されたカメラと移動体を観測可能な場所に設置された別のカメラとを用いて移動体等の位置を特定する場合、カメラと別のカメラとの位置と姿勢の関係を事前に把握しておく必要がある。そして、複数の撮像装置(カメラ)の位置と姿勢の関係を把握するためには、撮像装置(カメラ)のキャリブレーション作業が必要となる。この撮像装置(カメラ)のキャリブレーション作業として、従来は、キャリブレーションを行う撮像装置(カメラ)で平面マーカを様々な位置、姿勢で撮影することにより撮像装置(カメラ)のパラメータを調整し、所望の撮像装置(カメラ)の状態に設定されるまで試行と調整を続けるなど、多大な時間を要するという問題があった。 For example, as in the technology disclosed in Patent Document 2, when identifying the position of a moving object using a camera mounted on the moving object and another camera installed in a location where the moving object can be observed, it is necessary to grasp the relationship between the position and attitude of the camera and the other camera in advance. Then, in order to grasp the relationship between the positions and attitudes of multiple imaging devices (cameras), a calibration work of the imaging devices (cameras) is required. Conventionally, the calibration work of the imaging device (camera) requires adjusting the parameters of the imaging device (camera) by photographing a planar marker at various positions and attitudes with the imaging device (camera) to be calibrated, and there is a problem that it takes a lot of time, such as continuing trial and adjustment until the desired imaging device (camera) state is set.
なお、このような問題は、移動体の位置を特定する場合に限られず、例えば、物体を移動する移動装置により移動される物体を撮像する撮像装置と、別の手段で取得した物体の3次元の位置情報とを用いて物体の位置を特定する様々なシステムに共通に存在する。 Note that this problem is not limited to cases where the position of a moving object is to be determined, but is also common to various systems that determine the position of an object using, for example, an imaging device that captures an image of an object moved by a moving device that moves the object, and three-dimensional position information of the object obtained by another means.
本発明の一実施形態は、上記の問題点に鑑みてなされたものであって、移動装置により移動される物体を撮像する撮像装置と、別の手段で取得した3次元の位置情報とを用いて物体の位置を特定するシステムにおいて、キャリブレーション作業(補正)を容易にする。 One embodiment of the present invention has been made in consideration of the above problems, and facilitates calibration (correction) in a system that identifies the position of an object using an imaging device that captures an image of an object moved by a moving device and three-dimensional position information acquired by another means.
上記の課題を解決するため、本発明の一実施形態に係る情報処理装置は、移動装置により移動される物体を撮像する第1の撮像装置と通信可能な情報処理装置であって、前記第1の撮像装置が撮像した第1の画像から前記物体の2次元の位置情報である第1の物体位置情報を取得する第1の取得部と、前記物体の3次元の位置情報を取得する第2の取得部と、前記第2の取得部で取得した前記物体の3次元の位置情報から前記第1の画像上の2次元の位置情報である第2の物体位置情報を算出する第1の算出部と、前記第1の物体位置情報による前記物体の第1の軌跡と、前記第2の物体位置情報による前記物体の第2の軌跡との距離を算出する第2の算出部と、前記第1の軌跡と前記第2の軌跡との距離を補正する補正処理を実行する補正部と、を有する。 In order to solve the above problem, an information processing device according to one embodiment of the present invention is an information processing device capable of communicating with a first imaging device that captures an object moved by a moving device, and includes a first acquisition unit that acquires first object position information, which is two-dimensional position information of the object, from a first image captured by the first imaging device, a second acquisition unit that acquires three-dimensional position information of the object, a first calculation unit that calculates second object position information, which is two-dimensional position information on the first image, from the three-dimensional position information of the object acquired by the second acquisition unit, a second calculation unit that calculates the distance between a first trajectory of the object based on the first object position information and a second trajectory of the object based on the second object position information, and a correction unit that executes a correction process to correct the distance between the first trajectory and the second trajectory.
本発明の一実施形態によれば、移動装置により移動される物体を撮像する撮像装置と、別の手段で取得した3次元の位置情報とを用いて物体の位置を特定するシステムにおいて、キャリブレーション作業が容易になる。 According to one embodiment of the present invention, in a system that identifies the position of an object using an imaging device that captures an image of an object moved by a moving device and three-dimensional position information acquired by another means, calibration work is made easier.
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一の構成部分には同一符号を付し、重複した説明を省略する。 Embodiments of the present invention will be described in detail below with reference to the drawings. In each drawing, the same components are given the same reference numerals, and duplicated explanations will be omitted.
<システム構成>
[第1の実施形態]
図1は、第1の実施形態に係る情報処理システムのシステム構成の例を示す図である。図1の例では、情報処理システム1は、第1の撮像装置10、移動装置20、移動装置20に搭載された第2の撮像装置21、及び情報処理装置100等を含む。
<System Configuration>
[First embodiment]
Fig. 1 is a diagram showing an example of a system configuration of an information processing system according to a first embodiment. In the example of Fig. 1, the
第1の撮像装置10は、例えば、天井2等に設置され、移動装置20が移動する物体22を撮像し、撮像した撮像画像(以下、第1の画像と呼ぶ)を情報処理装置100に送信する固定カメラ等である。なお、第1の撮像装置10は、天井2に限られず、例えば、壁、柱、又は支柱等に設置されていてもよい。ここでは、第1の撮像装置10が、例えば、倉庫等の天井2に設置されているものとして、以下の説明を行う。
The
移動装置20は、例えば、荷物、又は荷物を載せたパレット等の物体22を保持し、保持した状態で搬送することで、物体22を移動するフォークリフト等の搬送装置である。なお、移動装置20は、フォークリフトに限られず、例えば、物体22を移動するロボット、又ドローン等であってもよい。ここでは、移動装置20が、倉庫等で物体22を移動するフォークリフトであるものとして、以下の説明を行う。
The
第2の撮像装置21は、移動装置20に搭載され、移動装置20の周辺、及び物体22等を撮像する1つ以上のカメラを含む。
The
一例として、移動装置20は、無線LAN(Local Area Network)通信等の通信機能と、コンピュータの構成とを備える。ここで、「移動装置20」は、第2の撮像装置21を含み、通信機能、及びコンピュータの構成は、第2の撮像装置21が有していてもよいし、移動装置20のうち、第2の撮像装置21以外の部分に設けられていてもよい。
As an example, the
移動装置20(又は第2の撮像装置21)は、第2の撮像装置21が撮像した画像(以下、第2の画像と呼ぶ)から、例えば、公知のVisual SLAM(Simultaneous Localization and Mapping)技術を用いて、動画フレームごとに第2の撮像装置21の位置を示す3次元の位置情報を計測する。また、移動装置20(又は第2の撮像装置21)は、第2の撮像装置21の3次元の位置情報、及び第2の撮像装置21と物体22との位置関係(相対位置)から、物体22の3次元の位置情報を算出し、算出した物体22の3次元の位置情報を情報処理装置100に送信する。
The mobile device 20 (or the second imaging device 21) measures three-dimensional position information indicating the position of the
ここで、SLAMは、周辺の立体物の3次元の位置情報を点群情報として取得し、自己及び周辺立体物の位置を推定する公知技術である。また、Visual SLAM(以下、VSLAMと呼ぶ)は、カメラで撮像した画像を用いてSLAMを行う公知技術である。なお、移動装置20は、例えば、電波、又は超音波等の他の測位技術を利用して、第2の撮像装置21の3次元の位置情報を計測してもよい。
Here, SLAM is a known technology that acquires three-dimensional position information of surrounding three-dimensional objects as point cloud information and estimates the position of the vehicle itself and surrounding three-dimensional objects. Visual SLAM (hereinafter referred to as VSLAM) is a known technology that performs SLAM using images captured by a camera. Note that the
別の一例として、移動装置20(又は第2の撮像装置21)は、例えば、無線LAN通信等の通信機能を有し、第2の撮像装置21が撮像した第2の画像を情報処理装置100に送信してもよい。この場合、情報処理装置100が、第2の撮像装置21が撮像した第2の画像に基づいて、物体22の3次元の位置情報を算出する位置情報算出処理を実行する。
As another example, the mobile device 20 (or the second imaging device 21) may have a communication function such as wireless LAN communication, and transmit the second image captured by the
情報処理装置100は、コンピュータの構成を備えた情報処理装置、又は複数のコンピュータを含むシステムである。また、情報処理装置100は、例えば、無線LAN等を介して、第1の撮像装置10、及び移動装置20(又は第2の撮像装置21)と通信可能に接続されている。
The
情報処理装置100は、所定のプログラムを実行することにより、第1の撮像装置10と、第2の撮像装置とを用いて、物体22の位置を特定するシステムにおいて、第1の撮像装置10と第2の撮像装置との位置と姿勢の関係をキャリブレーション(補正)する。
By executing a specific program, the
(処理の概要)
情報処理装置100は、第1の撮像装置10が撮像した第1の画像に基づいて、物体22の2次元の位置情報(以下、第1の物体位置情報と呼ぶ)を取得する。
(Processing Overview)
The
図2は、第1の実施形態に係る第1の画像のイメージを示す図である。物体22には、例えば、図2に示すように、第1の撮像装置10が撮像した第1の画像200に写るように、マーカ210が設けられている。情報処理装置100は、例えば、第1の画像200に写っているマーカ210の中心位置211を、第1の画像200上の物体22の位置として、物体22の2次元の位置情報(2次元座標)を取得する。なお、情報処理装置100は、例えば、公知のAR(Augmented Reality)マーカの技術等を利用して、マーカ210の中心位置211を特定することができる。
FIG. 2 is a diagram showing an image of a first image according to the first embodiment. For example, as shown in FIG. 2, a
また、情報処理装置100は、第2の撮像装置21が撮像した第2の画像に基づいて、物体22の3次元の位置情報(3次元座標)を取得する。例えば、情報処理装置100は、移動装置20(又は第2の撮像装置21)が算出し、情報処理装置100に送信する物体22の3次元の位置情報を取得する。なお、情報処理装置100は、移動装置20が送信する第2の画像から、物体22の3次元の位置情報を算出してもよい。
The
さらに、情報処理装置100は、取得した物体22の3次元の位置情報を2次元に投影した2次元の位置情報(以下、第2の物体位置情報と呼ぶ)を算出する。例えば、情報処理装置100は、第1の撮像装置10の位置と姿勢を示す外部パラメータを用いて、物体22の3次元の位置情報を第1の撮像装置10のカメラ座標に変換する。また、情報処理装置100は、第1の撮像装置10の内部パラメータを用いて、カメラ座標に変換した位置情報を第1の画像上の2次元の位置情報である第2の物体位置情報にさらに変換する。なお、第1の撮像装置10の内部パラメータは、予めキャリブレーション等が行われ、既知であるものとする。
Furthermore, the
続いて、情報処理装置100は、第1の物体位置情報による物体22の軌跡(以下、第1の軌跡と呼ぶ)と、第2の物体位置情報による物体22の軌跡(以下、第2の軌跡と呼ぶ)との距離を最小化する補正処理を実行する。これにより、第1の撮像装置10の位置と姿勢を示す外部パラメータをキャリブレーションし、第2の撮像装置21が撮像した第2の画像から取得した物体22の3次元の位置情報から、例えば、第1の画像上の2次元の位置情報を、より正確に取得できるようになる。
Then, the
上記の処理により、情報処理システム1は、例えば、フォークリフト等の移動装置20が走行する画像(第1の画像、及び第2の画像)から、第1の撮像装置10と第2の撮像装置21の位置と姿勢の関係を容易にキャリブレーションすることができる。
By performing the above processing, the
なお、図1に示した、情報処理システム1のシステム構成は一例である。例えば、情報処理システム1は、複数の第1の撮像装置10を有していてもよい。この場合、情報処理装置100は、複数の第1の撮像装置10の各々に対して、同様のキャリブレーションを行う。
Note that the system configuration of the
<ハードウェア構成>
情報処理装置100は、例えば、図3に示すようなコンピュータ300のハードウェア構成を備えている。或いは、情報処理装置100は、複数のコンピュータ300によって構成される。
<Hardware Configuration>
The
(コンピュータのハードウェア構成)
図3は、一実施形態に係るコンピュータのハードウェア構成の例を示す図である。コンピュータ300は、例えば、図3に示されるように、CPU(Central Processing Unit)301、ROM(Read Only Memory)302、RAM(Random Access Memory)303、HD(Hard Disk)304、HDD(Hard Disk Drive)コントローラ305、ディスプレイ306、外部機器接続I/F(Interface)307、ネットワークI/F308、キーボード309、ポインティングデバイス310、DVD-RW(Digital Versatile Disk Rewritable)ドライブ312、メディアI/F314、及びバスライン315等を備えている。
(Computer hardware configuration)
Fig. 3 is a diagram showing an example of a hardware configuration of a computer according to an embodiment. As shown in Fig. 3, the
これらのうち、CPU301は、コンピュータ300全体の動作を制御する。ROM302は、例えば、起動用ファイル等のコンピュータ300の起動に用いられるプログラム、及びデータ等を記憶する。RAM303は、例えば、CPU301のワークエリア等として使用される。
Of these, the
HD304は、例えば、OS(Operating System)、アプリケーション、デバイスドライバ等のプログラムや、各種データを記憶する。HDDコントローラ305は、例えば、CPU301の制御に従ってHD304に対する各種データの読み出し又は書き込みを制御する。なお、HD304、及びHDDコントローラ305は、コンピュータ300が備えるストレージデバイスの一例である。
The
ディスプレイ306は、例えば、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。なお、ディスプレイ306は、コンピュータ300の外部に設けられていても良い。外部機器接続I/F307は、コンピュータ300に、例えば、外部メモリ等の様々な外部装置を接続するためのインタフェースである。ネットワークI/F308は、例えば、通信ネットワークN等を利用してデータ通信をするためのインタフェースである。なお、ネットワークI/F308は、コンピュータ300が備える通信デバイスの一例である。
The
キーボード309は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス310は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行なう入力手段の一種である。なお、キーボード309、及びポインティングデバイス310は、コンピュータ300の外部に設けられていても良い。
The
DVD-RWドライブ312は、着脱可能な記録媒体の一例としてのDVD-RW311に対する各種データの読み出し又は書き込みを制御する。なお、DVD-RW311は、DVD-RWに限らず、他の着脱可能な記録媒体であっても良い。メディアI/F314は、フラッシュメモリ等のメディア313に対するデータの読み出し又は書き込み(記憶)を制御する。バスライン315は、上記の各構成要素を電気的に接続するためのアドレスバス、データバス及び各種の制御信号等を含む。
The DVD-
なお、図3に示したコンピュータ300の構成は一例である。コンピュータ300は、例えば、CPU301、ROM302、RAM303、ストレージデバイス、通信デバイス、及びバスライン315等を有していれば、他は任意の構成であって良い。
The configuration of
また、移動装置20(又は第2の撮像装置)がコンピュータを備えている場合、当該コンピュータは、例えば、CPU301、ROM302、RAM303、ストレージデバイス、通信デバイス、及びバスライン315等を有するものとする。
In addition, if the mobile device 20 (or the second imaging device) is equipped with a computer, the computer has, for example, a
<機能構成>
図4は、一実施形態に係る情報処理システムの機能構成の一例を示す図である。図4の例では、情報処理装置100は、例えば、LAN等の通信ネットワークNを介して、第1の撮像装置10、及び移動装置20と通信可能に接続されている。
<Functional configuration>
Fig. 4 is a diagram showing an example of a functional configuration of an information processing system according to an embodiment. In the example of Fig. 4, an
(移動装置の機能構成)
移動装置20は、移動装置20(又は第2の撮像装置21)が備えるコンピュータが所定のプログラムを実行することにより、例えば、通信部411、撮像部412、及び位置情報算出部413等を実現している。また、移動装置20は、移動装置20(又は第2の撮像装置21)が備えるストレージデバイス等により、記憶部414を実現している。なお、上記の各機能構成は、第2の撮像装置21を備えた移動装置20が有していればよい。例えば、図4に示した移動装置10の各機能構成の一部、又は全部は、第2の撮像装置21が有していてもよい。
(Functional configuration of mobile device)
The
通信部411は、移動装置20が備える通信デバイス(例えば、無線LANデバイス)を用いて、移動装置20を通信ネットワークNに接続し、情報処理装置100と通信する通信処理を実行する。
The
撮像部412は、例えば、第2の撮像装置21を用いて、移動装置20の周辺を撮像した第2の撮像画像を撮像する撮像処理を実行する。
The
位置情報算出部413は、撮像部412が撮像した第2の画像に基づいて、物体22の位置を示す3次元の位置情報を算出する位置情報算出処理を実行する。例えば、位置情報算出部413は、撮像部412が撮像した第2の画像(動画像)に基づいて、フレームごとに、物体22の3次元の位置情報を算出する。
The position
好適な一例として、位置情報算出部413は、公知のVSLAM技術を用いて、動画フレームごとに第2の撮像装置21の位置を示す3次元の位置情報を計測する。また、位置情報算出部413は、第2の撮像装置21の3次元の位置情報、及び予め取得した第2の撮像装置21と物体22との相対位置から、物体22の3次元の位置情報を算出する。
As a suitable example, the position
なお、位置情報算出部413は、例えば、電波、又は超音波等の他の測位技術を利用して、第2の撮像装置21の3次元の位置情報を計測し、予め取得した第2の撮像装置21と物体22との相対位置から、物体22の3次元の位置情報を算出してもよい。
The position
また、位置情報算出部413は、算出した物体22の3次元の位置情報を、通信部411を介して、情報処理装置100に送信する。
In addition, the position
記憶部414は、例えば、移動装置20が実行するプログラム、及び物体22の3次元の位置情報の算出に必要なデータ等を記憶する。
The
(情報処理装置の機能構成)
情報処理装置100は、例えば、CPU301で所定のプログラムを実行することにより、通信部401、第1の取得部402、第2の取得部403、第1の算出部404、第2の算出部405、及び補正部406等を実現している。なお、上記の各機能構成のうち、少なくとも一部は、ハードウェアによって実現されるものであってもよい。
(Functional configuration of information processing device)
The
また、情報処理装置100は、例えば、CPU301で実行されるプログラム、HD304、及びHDDコントローラ305等により、記憶部407を実現している。
In addition, the
通信部401は、例えば、ネットワークI/F308等を用いて、情報処理装置100を通信ネットワークNに接続し、第1の撮像装置10、及び移動装置20等と通信する通信処理を実行する。例えば、通信部401は、第1の撮像装置10が送信する第1の画像、及び移動装置20が送信する物体22の3次元の位置情報等を受信する。
The
第1の取得部402は、第1の撮像装置10が撮像した第1の画像に基づいて、物体22の2次元の位置情報である第1の物体位置情報を取得する第1の取得処理を実行する。例えば、第1の取得部402は、図2に示すような第1の画像200に写っているマーカ210の中心位置211の2次元座標を、第1の物体位置情報として取得する。
The
第2の取得部403は、第1の取得部402とは別の手段で、物体22の3次元の位置情報を取得する第2の取得処理を実行する。一例として、第2の取得部403は、第2の撮像装置21が撮像した第2の画像に基づいて算出した物体の3次元の位置情報を取得する。例えば、第2の取得部403は、移動装置20が送信する物体22の3次元の位置情報を、通信部401を介して取得する。具体的には、移動装置20は、前述したように、公知のVSLAM技術を用いて、動画フレームごとに第2の撮像装置21の位置を示す3次元の位置情報を計測する。また、移動装置20は、第2の撮像装置21の3次元の位置情報、及び予め取得した第2の撮像装置21と物体22との相対位置から、物体22の3次元の位置情報を算出する。ただし、これに限られず、移動装置20は、例えば、電波、又は超音波等の他の測位技術を利用して、物体22の3次元の位置情報を算出してもよい。
The
第1の算出部(投影部)404は、第2の取得部403が取得した物体22の3次元の位置情報を2次元に投影した第2の物体位置情報を算出する第1の算出処理を実行する。例えば、第1の算出部404は、第1の撮像装置10の位置と姿勢を示す外部パラメータを用いて、物体22の3次元の位置情報を第1の撮像装置10のカメラ座標に変換する。また、第1の算出部404は、記憶部407等に予め記憶した第1の撮像装置10の内部パラメータを用いて、カメラ座標に変換した位置情報を、第1の画像上の2次元の位置座標に変換する。
The first calculation unit (projection unit) 404 executes a first calculation process to calculate second object position information obtained by projecting the three-dimensional position information of the
第2の算出部(距離算出部)405は、第1の物体位置情報による物体22の第1の軌跡と、第2の物体位置情報による物体22の第2の軌跡との距離を算出する第2の算出処理を実行する。
The second calculation unit (distance calculation unit) 405 executes a second calculation process to calculate the distance between the first trajectory of the
補正部406は、第1の軌跡と第2の軌跡との距離を補正する補正処理を実行する。例えば、補正部406は、第1の軌跡と第2の軌跡との距離が最小化するように、第1の撮像装置10の位置と姿勢を示す外部パラメータ、又は第2の物体位置等を補正する。また、補正部406は、必要に応じて、補正処理の実行結果に基づいて、第1の撮像装置10の位置と姿勢とを再設定する。なお、補正処理の具体的な処理内容については後述する。
The
記憶部407は、例えば、第1の画像、第1の物体位置情報、物体22の3次元の位置情報、第1の撮像装置10の内部パラメータと外部パラメータ、又は第2の物体位置情報等の様々なデータと情報を記憶する。
The
なお、図4に示した情報処理システム1の機能構成は一例である。例えば、情報処理システム1は、図5に示すような機能構成を有していてもよい。
Note that the functional configuration of the
図5は、一実施形態に係る情報処理システムの機能構成の別の一例を示す図である。図5の例では、第2の撮像装置21が、撮像した第2の画像を、通信ネットワークNを介して情報処理装置100に送信する構成となっている。また、情報処理装置100は、例えば、CPU301で所定のプログラムを実行することにより、第2の撮像装置21が撮像した第2の画像から、物体22の3次元の位置情報を算出する位置情報算出部413を実現している。この場合、第2の取得部403は、位置情報算出部413から、物体22の3次元の位置情報を取得する。
FIG. 5 is a diagram showing another example of the functional configuration of an information processing system according to an embodiment. In the example of FIG. 5, the
<処理の流れ>
続いて、第1の実施形態に係る情報処理方法の処理の流れについて説明する。
<Processing flow>
Next, a process flow of the information processing method according to the first embodiment will be described.
(補正処理)
図6は、一実施形態に係る補正処理の例を示すフローチャートである。この処理は、例えば、図4に示すような機能構成を有する情報処理装置100が、第1の撮像装置10の位置と姿勢を示す外部パラメータを補正する補正処理の例を示している。
(Correction process)
Fig. 6 is a flowchart showing an example of a correction process according to an embodiment. This process shows an example of a correction process in which the
ステップS601において、第1の取得部402は、第1の撮像装置10が撮像した第1の画像に基づいて、物体22の2次元の位置情報である第1の物体位置情報を取得する。例えば、第1の取得部402は、第1の撮像装置10が、複数の時刻で撮像した一連の画像から、フレームごとにマーカ210の中心位置211を示す第1の物体位置情報を取得し、取得した第1の物体位置情報を撮像時刻と関連付けて、記憶部407等に記憶する。
In step S601, the
ステップS602において、第2の取得部403は、第2の撮像装置21が撮像した第2の画像に基づいて算出した物体22の3次元の位置情報を取得する。例えば、第2の取得部403は、第2の撮像装置21が、複数の時刻で撮像した一連の画像から、移動装置20の位置情報算出部413が算出した物体22の3次元の位置情報と撮像時刻(又は算出時刻)を、記憶部407等に記憶する。
In step S602, the
ステップS603において、補正部406は、第1の撮像装置10の位置と姿勢を任意の値で初期化する。例えば、補正部406は、第1の撮像装置のおよその位置及び向きが分かっていれば、その値を用いて、第1の撮像装置10の位置と姿勢を示す外部パラメータを初期化するとよい。
In step S603, the
ステップS604において、第1の算出部404は、第2の取得部403が取得した物体22の3次元の位置情報を2次元に投影した第2の物体位置情報を算出する。例えば、第1の算出部404は、第1の撮像装置10の位置と姿勢を示す外部パラメータを用いて、物体22の3次元の位置情報を第1の撮像装置10のカメラ座標に変換する。また、第1の算出部404は、第1の撮像装置10の内部パラメータを用いて、カメラ座標に変換した位置情報を、第1の画像上の2次元の位置情報である第2の物体位置情報にさらに変換する。なお、情報処理装置100は、例えば、第1の撮像装置10の焦点距離、画像中心、及び歪曲特性等の内部パラメータを、記憶部407等に予め記憶しておく。
In step S604, the
ステップS605において、第2の算出部405は、第1の物体位置情報による物体22の第1の軌跡と、第2の物体位置情報による物体22の第2の軌跡との距離を算出する距離算出処理を実行する。なお、距離算出処理については後述する。
In step S605, the
ステップS606において、補正部406は、第1の軌跡と第2の軌跡との距離が最小化されたかを判断する。例えば、補正部406は、第1の軌跡と第2の軌跡との距離が最小値で収束している場合、第1の軌跡と第2の軌跡との距離が最小化されたと判断する。第1の軌跡と第2の軌跡との距離が最小化されていない場合、補正部406は、処理をステップS607に移行させる。一方、第1の軌跡と第2の軌跡との距離が最小化された場合、補正部406は、補正処理を終了する。
In step S606, the
ステップS607に移行すると、補正部406は、第1の撮像装置10の位置姿勢(位置と姿勢)を修正する。例えば、補正部406は、共役勾配法等の公知の非線形最適化法に基づいて、第1の撮像装置10の位置と姿勢を示す外部パラメータを再設定し、処理をステップS604に戻す。
When the process proceeds to step S607, the
図6の処理により、情報処理装置100は、第1の撮像装置10の位置と姿勢を示す外部パラメータを補正することができる。
By the processing of Figure 6, the
(距離算出処理について)
図7は、一実施形態に係る撮像タイミングのイメージを示す図である。この図は、第1の撮像装置10の撮像タイミングと、第2の撮像装置21の撮像タイミングの一例のイメージを示している。図7の例では、第1の撮像装置10は、時刻t11、t12、t13、・・・に第1の画像を撮像し、第2の撮像装置21は、時刻t21、t22、t23、・・・に第2の画像を撮像することを示している。また、情報処理装置100は、時刻T1、2、T3、・・・に、第1の撮像装置10から第1の画像を受信することを示している。
(Regarding distance calculation processing)
7 is a diagram showing an image of imaging timing according to an embodiment. This diagram shows an example of the imaging timing of the
例えば、図7に示すように、第1の撮像装置10の撮像タイミングと、第2の撮像装置21の撮像タイミングは、フレームレートの違い、及び画像転送のタイムラグ等により、一般的に一致しない。これにより、移動装置20が移動している場合、例えば、時刻t11に第1の撮像装置10が移動装置20を撮像したときと、時刻t21に第2の撮像装置21が移動装置20を撮像したときでは、物体22の位置が異なる。
7, the imaging timing of the
従って、従来のキャリブレーション方法では、例えば、移動装置20をある地点に停止させて第1の画像と第2の画像を撮像した後、移動装置20を別に地点に停止させて第1の画像と第2の画像を撮像するという作業を繰り返していた。
Therefore, in conventional calibration methods, for example, the
そこで、本実施形態では、第1の物体位置情報による物体22の軌跡と、第2の物体位置情報による物体22の軌跡との距離を算出することにより、移動装置20が走行中に撮像した第1の画像と第2の画像とを用いてキャリブレーションできるようにする。
Therefore, in this embodiment, the distance between the trajectory of the
図8は、一実施形態に係る2つの軌跡のイメージを示す図である。図8において、黒丸811a、811b、811c、・・・は、第1の撮像装置10が撮像した第1の画像に基づく2次元の位置情報である第1の物体位置情報による物体22の位置を示している。また、白丸821a、821b、821c、・・・は、第2の撮像装置21が撮像した第2の画像に基づく2次元の位置情報である第2の物体位置情報による物体22の位置を示している。
Figure 8 is a diagram showing an image of two trajectories according to one embodiment. In Figure 8,
図8に示すように、キャリブレーションが完了していない場合、第1の物体位置情報による物体22の第1の軌跡810と、第2の物体位置情報による物体22の第2の軌跡820は、位置がずれている。
As shown in FIG. 8, when calibration is not completed, the
本実施形態に係る情報処理装置100は、第1の物体位置情報による物体22の第1の軌跡810と、第2の物体位置情報による物体22の第2の軌跡820との距離を最小化するように、第1の撮像装置10の位置と姿勢を示す外部パラメータを補正する。これにより、例えば、図9に示すように、第1の軌跡810と第2の軌跡820とがほぼ重なるように、第2の物体位置情報を補正することができる。なお、第1の軌跡と第2の軌跡との距離は、例えば、図10、11の処理により算出することができる。
The
(距離算出処理)
図10は、一実施形態に係る2つの軌跡の間の距離算出処理の例を示すフローチャートである。この処理は、例えば、図6のステップS605において、第2の算出部405が、第1の物体位置情報による物体22の第1の軌跡と、第2の物体位置情報による物体22の第2の軌跡との距離を算出する距離算出処理の例を示している。
(Distance calculation process)
Fig. 10 is a flowchart showing an example of a distance calculation process between two trajectories according to an embodiment. This process shows an example of a distance calculation process in which the
なお、ここでは、図8に示した、第1の物体位置情報による物体22の位置を示す黒丸811a、811b、811c、・・・を第1の点と呼び、第2の物体位置情報による物体22の位置を示す白丸821a、821b、821c、・・・を第2の点と呼ぶものとする。
Note that here, the
ステップS1001において、第2の算出部405は、第1の点の各々に対して、ステップS1002~1004の処理を実行する。
In step S1001, the
ステップS1002において、第2の算出部405は、第1の点の撮像時刻から所定の時間内(例えば±3秒以内等)に撮像された第2の点を選択する。ここで、所定の時間は、所定の時間内に複数の第2の点が含まれるように設定する。複数の第2の点の数が3つ以上である場合、3つ以上の第2の点は、第2の点の各々を端点とする線分が連続した折れ線となる。なお、情報処理装置100は、所定の時間内の第2の点を選択することで、物体22が時間を変えて同じ位置を通過した場合でも、誤った軌跡との距離を計算してしまうことを回避することができる。
In step S1002, the
ステップS1003において、第2の算出部405は、選択された第2の点を結ぶ折れ線と、第1の点との間の距離を算出する。例えば、第2の算出部405は、図11で後述する折れ線と点との間の距離の算出処理を実行する。
In step S1003, the
ステップS1004において、第2の算出部405は、算出した第1の点と折れ線との間の距離を、例えば、記憶部407、又はRAM303等に記録する。
In step S1004, the
ステップS1005において、第2の算出部405は、第1の点の各々に対して、ステップS1002~S1004の処理を実行すると、処理をステップS1006に移行させる。
In step S1005, the
ステップS1006に移行すると、第2の算出部405は、記録した第1の点と折れ線との間の距離の総和を2つの軌跡の間の距離とする。
When proceeding to step S1006, the
(折れ線と点との間の距離の算出処理)
図11は、一実施形態に係る折れ線と点との間の距離算出処理の例を示すフローチャートである。この処理は、例えば、第2の算出部405が、図10のステップS1003で実行する、選択された第2の点を結ぶ折れ線と、第1の点との間の距離を算出する処理の一例を示している。
(Calculation of distance between broken line and point)
11 is a flowchart showing an example of a process for calculating a distance between a polygonal line and a point according to an embodiment. This process shows an example of a process for calculating a distance between a polygonal line connecting selected second points and a first point, which is executed by the
ステップS1101において、第2の算出部405は、例えば、図10のステップS1002で選択された第2の点を結ぶ線分の各々に対して、ステップS1102~S1106の処理を実行する。
In step S1101, the
ステップS1102において、第2の算出部405は、線分に対する第1の点の位置により処理を分岐させる。例えば、第2の算出部405は、図12に示すように、隣り合う2つの第2の点(白丸821-1、821-2)を通り、線分1201と垂直な2本の線1202、1203で、平面を第1の領域、第2の領域、及び第3の領域に区切る。また、第1の点が第1の領域にある場合、第2の算出部405は、処理をステップS1103に移行させる。第1の点が第2の領域にある場合、第2の算出部405は、処理をステップS1104に移行させる。第1の点が第3の領域にある場合、第2の算出部405は、処理をステップS1105に移行させる。
In step S1102, the
ステップS1103に移行すると、第2の算出部405は、図12に示すように、第1の点(黒丸811)と、第2の点(白丸821-1)との間の距離1204を算出する。
When the process proceeds to step S1103, the
ステップS1104に移行すると、第2の算出部405は、図12に示すように、第1の点(黒丸811)から線分1201に下ろした垂線の長さ1205を算出する。
When the process proceeds to step S1104, the
ステップS1105に移行すると、第2の算出部405は、図12に示すように、第1の点(黒丸811)と、第2の点(白丸821-2)との間の距離1206を算出する。
When the process proceeds to step S1105, the
ステップS1106において、第2の算出部405は、算出した距離を、例えば、記憶部407、又はRAM303等に記録する。
In step S1106, the
ステップS1107において、第2の算出部405は、例えば、図10のステップS1002で選択された第2の点を結ぶ線分の各々に対して、ステップS1102~S1106の処理を完了すると、処理をステップS1108に移行させる。
In step S1107, when the
ステップS1108において、第2の算出部405は、ステップS1106で記録した距離のうち、最小値を第2の点を結ぶ線分と第1の点との間の距離とする。
In step S1108, the
図10、11の処理により、第2の算出部405は、第1の物体位置情報による物体22の第1の軌跡と、第2の物体位置情報による物体22の第2の軌跡との距離を算出することができる。
By the processing of Figures 10 and 11, the
(変形例)
図10、11の説明では、図8に示した、第1の物体位置情報による物体22の位置を示す黒丸811a、811b、811c、・・・を第1の点とし、第2の物体位置情報による物体22の位置を示す白丸821a、821b、821c、・・・を第2の点とした。ただし、これに限られず、第2の算出部405は、第1の物体位置情報による物体22の位置を示す黒丸を第2の点とし、第2の物体位置情報による物体22の位置を示す白丸を第1の点として、図10、11の処理を実行してもよい。例えば、第1の撮像装置10の方が、フレームレートが高い場合、第2の算出部405は、図13に示すように、白丸821を第1の点とし、黒丸811を第2の点として、第1の軌跡810と第2の軌跡820との距離を算出することが望ましい。
(Modification)
In the explanation of Fig. 10 and 11, the
(第2の撮像装置と物体との位置関係について)
位置情報算出部413は、前述したように、VSLAM技術等により算出した第2の撮像装置21の3次元の位置情報、及び予め取得した第2の撮像装置21と物体22との相対位置から、物体22の3次元の位置情報を算出する。従って、位置情報算出部413が、物体22の3次元の位置情報を算出するためには、第2の撮像装置21と物体22との相対位置を予め取得する必要がある。
(Regarding the positional relationship between the second imaging device and the object)
As described above, the position
好適な一例として、位置情報算出部413は、例えば、図14に示すように、第2の撮像装置21で物体22上に設けられたマーカ210を撮像した画像から、第2の撮像装置21と物体22との相対位置を算出する。例えば、位置情報算出部413は、第2の撮像装置21で物体22上に設けられたマーカ210を撮像し、マーカ210の外径の座標を取得する。また、位置情報算出部413は、取得したマーカ210の外径の座標と、マーカ210の実寸とから、第2の撮像装置21のカメラ座標系におけるマーカ210の中心位置211を算出する。
As a preferred example, the position
また、第2の撮像装置21の位置から物体22上に設けられたマーカ210を撮像できない場合、位置情報算出部413は、補助マーカを利用して、第2の撮像装置21のカメラ座標系におけるマーカ210の中心位置211を算出することができる。
In addition, if the
補助マーカ1501は、例えば、図15(B)に示すように、棒1502の上部に固定されたARマーカである補助マーカ1501を用意し、補助マーカ1501の中心1503から棒1502の下端までの距離Lを予め測定しておく。また、例えば、図15(A)に示すように、棒1502の下端をマーカ210の中心に接し、補助マーカ1501全体が第2の撮像装置21の撮像範囲に含まれるようにして、第2の撮像装置21で補助マーカ1501を撮像する。
15(B), the
位置情報算出部413は、撮像した画像から、第2の撮像装置21を基準とした3次元座標系における、補助マーカ1501の中心1503と、補助マーカ1501の平面上のマーカ縦横方向を指す3次元ベクトルを決定する。また、位置情報算出部413は、補助マーカ1501の中心1503の位置から下方向へ予め測定した棒1502の長さL分だけ下方に移動した点を、マーカ210の中心の位置として算出することができる。
The position
以上、第1実施形態によれば、移動装置20により移動される物体22を撮像する第1の撮像装置10と、移動装置に搭載された第2の撮像装置21とを用いて物体の位置を特定するシステムにおいて、キャリブレーション作業を容易にすることができる。
As described above, according to the first embodiment, the calibration process can be facilitated in a system that identifies the position of an object using a
[第2の実施形態]
第1の実施形態では、物体22を移動させる移動装置20が、例えば、フォークリフト等の移動体であるものとして説明した。ただし、本実施形態は、これに限られず、例えば、作業エリアに供給されたワークを上方から第1の撮像装置10で撮像して当該ワークの位置を認識して作業するロボットシステム等にも適用することができる。
Second Embodiment
In the first embodiment, the moving
図16は、第2の実施形態に係る情報処理システムのシステム構成の例を示す図である。図16の例では、情報処理システム1600は、第1の撮像装置10、移動装置1611、移動装置1611に搭載された第2の撮像装置21、及び情報処理装置100等を含む。
Fig. 16 is a diagram showing an example of the system configuration of an information processing system according to the second embodiment. In the example of Fig. 16, the
第1の撮像装置10は、例えば、工場等の天井1601等に設置され、移動装置1611が移動するワーク等の物体1602を撮像し、撮像した第1の画像を情報処理装置100に送信する。
The
図16の例では、移動装置1611は、例えば、工場等のフロア1612に設置され、物体1602を移動させる5軸垂直多関節ロボットである。移動装置1611は、例えば、フロア1612に設置された固定ベース1613、及び固定ベース1613上に第1関節軸1614を中心に回転可能に設けられた第1アーム1615を有する。また、移動装置1611は、第1アーム1615の先端に第2関節軸1616によって旋回可能に設けられた第2アーム1617、及び第2アーム1617の先端に第3関節軸1618によって旋回可能に設けられた第3アーム1619を有する。さらに、移動装置1611は、第3アーム1619の先端に第4関節軸1620によって旋回可能に設けられた手首部1621、及び手首部1621に第5関節軸1622を中心に回転可能、かつ交換可能に取り付けられたエンドエフェクタ1623等を有する。これにより、手首部1621に取り付けたエンドエフェクタ1623は、手首部1621の関節軸である第4関節軸1620によって旋回動作するように構成されている。
16, the moving
ここで、エンドエフェクタ1623は、例えば、吸着ノズル、ハンド、又はグリッパ等で物体1602を保持する。また、第1~第5の各関節軸1614、1616、1618、1620、1622は、それぞれサーボモータにより駆動されるようになっている。これにより、移動装置1611は、物体1602を5軸の自由度で移動することができる。また、移動装置1611の手首部1621には、作業エリアに供給されたワークである物体1602を撮像する第2の撮像装置21が設けられている。
The
上記の構成により、移動装置1611は、エンドエフェクタ1623に、マーカ210を印刷した物体1602を取り付けた状態で、物体1602を移動させる。また、第2の撮像装置21は、移動装置1611の周辺を撮像した第2の画像を、情報処理装置100に送信する。
With the above configuration, the moving
情報処理装置100は、第1の撮像装置10から受信する第1の画像と、第2の撮像装置21から受信する第2の画像に基づいて、第1の実施形態と同様にして、第1の撮像装置10と第2の撮像装置21の位置と姿勢の関係をキャリブレーションすることができる。
The
このように、移動装置20は、物体1602を移動する装置であればよく、移動装置20自体は、必ずしも移動できなくてもよい。
In this way, the
(第3の実施形態)
第1、2の実施形態では、第1の撮像装置10が撮像する第1の画像の撮像時刻と、第2の撮像装置21が撮像する第2の画像の撮像時刻とにずれがあるという前提で説明を行った。第3の実施形態では、別の解決手段として、第1の撮像装置10が撮像する第1の画像の撮像時刻と、第2の撮像装置21が撮像する第2の画像の撮像時刻とのずれをなくす方法について説明する。
Third Embodiment
The first and second embodiments have been described on the premise that there is a difference between the imaging time of the first image captured by the
図17は、第3の実施形態に係る情報処理システムのシステム構成の例を示す図である。図17の例では、情報処理システム1700は、図1で説明した第1の実施形態に係る情報処理システム1と同様のシステム構成を有している。また、第3の実施形態に係る情報処理装置100は、第1の撮像装置10、及び第2の撮像装置21に撮像を指示するトリガ信号を同時に送信する機能を有している。具体的な一例として、情報処理装置100は、GigEVision等のカメラインタフェース規格のソフトウエアトリガ機能を利用することにより、通信ネットワークN経由でトリガ信号を送信することができる。
Fig. 17 is a diagram showing an example of the system configuration of an information processing system according to the third embodiment. In the example of Fig. 17, the
上記の構成により、第3の実施形態に係る情報処理システム1では、第1の撮像装置10と第2の撮像装置21とが、ほぼ同時に撮像を実行する。なお、例えば、ネットワーク構成の違い等により多少の遅延差が生じた場合でも、移動装置20の移動速度に対して十分小さい誤差(例えば、遅延差による移動装置20の位置の誤差が1mm程度)であれば無視してよい。
With the above configuration, in the
第3の実施形態によれば、移動装置20を停止させなくても、従来のキャリブレーション方法で、第1の撮像装置10と、第2の撮像装置21との位置と姿勢の関係をキャリブレーションできるようになる。
According to the third embodiment, it is possible to calibrate the relationship between the position and orientation of the
以上、本発明の各実施形態によれば、移動装置により移動される物体を撮像する第1の撮像装置10と、移動装置に搭載された第2の撮像装置21とを用いて物体の位置を特定するシステムにおいて、キャリブレーション作業が容易になる。
As described above, according to each embodiment of the present invention, the calibration process is facilitated in a system that identifies the position of an object using a
<補足>
上記で説明した各実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
<Additional Information>
Each function of each embodiment described above can be realized by one or more processing circuits. Here, the term "processing circuit" in this specification includes a processor programmed to execute each function by software, such as a processor implemented by an electronic circuit, and devices such as an ASIC (Application Specific Integrated Circuit), a DSP (digital signal processor), an FPGA (field programmable gate array), and a conventional circuit module designed to execute each function described above.
また、実施例に記載された装置群は、本明細書に開示された実施形態を実施するための複数のコンピューティング環境のうちの1つを示すものに過ぎない。ある実施形態では、情報処理装置100は、サーバクラスタといった複数のコンピューティングデバイスを含む。複数のコンピューティングデバイスは、ネットワークや共有メモリなどを含む任意のタイプの通信リンクを介して互いに通信するように構成されており、本明細書に開示された処理を実施する。
Furthermore, the group of devices described in the examples represents only one of multiple computing environments for implementing the embodiments disclosed herein. In one embodiment, the
また、情報処理装置100の各機能構成は、1つの装置にまとめられていてもよいし、複数の装置に分けられていてもよい。さらに、情報処理装置100の各機能構成のうち、少なくとの一部は、移動装置20(又は第2の撮像装置21)が有していてもよい。
Furthermore, each functional configuration of the
<付記>
本明細書には、下記の各項の情報処理装置、情報処理システム、情報処理方法、及びプログラムが開示されている。
(第1項)
移動装置により移動される物体を撮像する第1の撮像装置と通信可能な情報処理装置であって、
前記第1の撮像装置が撮像した第1の画像から前記物体の2次元の位置情報である第1の物体位置情報を取得する第1の取得部と、
前記物体の3次元の位置情報を取得する第2の取得部と、
前記第2の取得部で取得した前記物体の3次元の位置情報から前記第1の画像上の2次元の位置情報である第2の物体位置情報を算出する第1の算出部と、
前記第1の物体位置情報による前記物体の第1の軌跡と、前記第2の物体位置情報による前記物体の第2の軌跡との距離を算出する第2の算出部と、
前記第1の軌跡と前記第2の軌跡との距離を補正する補正処理を実行する補正部と、
を有する、
情報処理装置。
(第2項)
前記補正部は、前記補正処理の実行結果に基づいて、前記第1の撮像装置の位置と姿勢とを再設定する、請求項1に記載の情報処理装置。
(第3項)
前記第2の算出部は、前記第1の物体位置情報による前記物体の位置を結ぶ線分と、前記第2の物体位置情報による前記物体の位置を示す点と間の距離に基づいて、前記第1の軌跡と前記第2の軌跡との距離を算出する、第1項に記載の情報処理装置。
(第4項)
前記第2の算出部は、前記第2の物体位置情報による前記物体の位置を結ぶ線分と、前記第1物体位置情報による前記物体の位置を示す点との距離に基づいて、前記第1の軌跡と前記第2の軌跡との距離を算出する、第1項に記載の情報処理装置。
(第5項)
前記補正部は、前記第1の軌跡と前記第2の軌跡との距離を最小化するように、前記第2の物体位置情報を補正する、第1項~第4項のいずれかに記載の情報処理装置。
(第6項)
前記第1の算出部は、前記第1の撮像装置の位置と姿勢を示す外部パラメータを用いて、前記物体の3次元の位置情報を前記第1の画像上に投影した前記第2の物体位置情報を算出し、
前記補正部は、前記第1の軌跡と前記第2の軌跡との距離を最小化するように、前記外部パラメータを補正する、第1項~第4項のいずれかに記載の情報処理装置。
(第7項)
前記情報処理装置は、前記移動装置に搭載された第2の撮像装置と通信可能であり、
前記第2の取得部は、前記第2の撮像装置が撮像した第2の画像に基づいて、前記物体の3次元の位置情報を取得する、第1項~第6項のいずれかに記載の情報処理装置。
(第8項)
第7項に記載の情報処理装置と、移動装置に搭載された第2の撮像装置とを含む情報処理システムであって、
前記情報処理システムは、
前記第2の撮像装置が撮像した前記第2の画像に基づいて取得した、前記移動装置の3次元の位置情報、及び前記移動装置と前記物体との相対位置から、前記物体の3次元の位置情報を算出する位置情報算出部を有する、
情報処理システム。
(第9項)
前記第2の撮像装置は、前記物体に設けられたマーカを撮像し、
前記算出部は、前記マーカを撮像した画像から、前記移動装置と前記物体との相対位置を算出する、
第8項に記載の情報処理システム。
(第10項)
前記第2の撮像装置は、前記物体に設けられたマーカの中心位置からの相対位置が一定となるように配置された補助マーカを撮像し、
前記算出部は、前記補助マーカを撮像した画像から、前記移動装置と前記物体との相対位置を算出する、
第8項に記載の情報処理システム。
(第11項)
移動装置により移動される物体を撮像する第1の撮像装置と通信可能な情報処理装置が、
前記第1の撮像装置が撮像した第1の画像から前記物体の2次元の位置情報である第1の物体位置情報を取得する第1の取得処理と、
前記物体の3次元の位置情報を取得する第2の取得処理と、
前記第2の取得処理で取得した前記物体の3次元の位置情報から前記第1の画像上の2次元の位置情報である第2の物体位置情報を算出する第1の算出処理と、
前記第1の物体位置情報による前記物体の第1の軌跡と、前記第2の物体位置情報による前記物体の第2の軌跡との距離を算出する第2の算出処理と、
前記第1の軌跡と前記第2の軌跡との距離を補正する補正処理と、
を実行する、
情報処理方法。
(第12項)
移動装置により移動される物体を撮像する第1の撮像装置と通信可能なコンピュータに、
前記第1の撮像装置が撮像した第1の画像から前記物体の2次元の位置情報である第1の物体位置情報を取得する第1の取得処理と、
前記物体の3次元の位置情報を取得する第2の取得処理と、
前記第2の取得処理で取得した前記物体の3次元の位置情報から前記第1の画像上の2次元の位置情報である第2の物体位置情報を算出する第1の算出処理と、
前記第1の物体位置情報による前記物体の第1の軌跡と、前記第2の物体位置情報による前記物体の第2の軌跡との距離を算出する第2の算出処理と、
前記第1の軌跡と前記第2の軌跡との距離を補正する補正処理と、
を実行させる、
プログラム。
<Additional Notes>
This specification discloses the following information processing device, information processing system, information processing method, and program.
(Section 1)
An information processing device capable of communicating with a first imaging device that captures an image of an object moved by a moving device,
a first acquisition unit that acquires first object position information, which is two-dimensional position information of the object, from a first image captured by the first imaging device;
A second acquisition unit that acquires three-dimensional position information of the object;
a first calculation unit that calculates second object position information, which is two-dimensional position information on the first image, from the three-dimensional position information of the object acquired by the second acquisition unit;
a second calculation unit that calculates a distance between a first trajectory of the object based on the first object position information and a second trajectory of the object based on the second object position information;
a correction unit that executes a correction process to correct a distance between the first trajectory and the second trajectory;
having
Information processing device.
(Section 2)
The information processing device according to
(Section 3)
The information processing device described in
(Section 4)
The information processing device described in
(Section 5)
5. The information processing device according to any one of
(Section 6)
the first calculation unit calculates the second object position information by projecting three-dimensional position information of the object onto the first image using external parameters indicating a position and an orientation of the first imaging device;
5. The information processing device according to any one of
(Section 7)
the information processing device is capable of communicating with a second imaging device mounted on the mobile device;
7. The information processing device according to any one of
(Section 8)
8. An information processing system including the information processing device according to claim 7 and a second imaging device mounted on a mobile device,
The information processing system includes:
a position information calculation unit that calculates three-dimensional position information of the object from three-dimensional position information of the mobile device and a relative position between the mobile device and the object, the three-dimensional position information being acquired based on the second image captured by the second imaging device;
Information processing system.
(Section 9)
the second imaging device captures an image of a marker provided on the object;
The calculation unit calculates a relative position between the moving device and the object from an image of the marker.
9. An information processing system according to claim 8.
(Article 10)
the second imaging device captures an image of an auxiliary marker that is disposed so that a relative position from a center position of a marker provided on the object is constant;
The calculation unit calculates a relative position between the moving device and the object from an image of the auxiliary marker.
9. An information processing system according to claim 8.
(Article 11)
an information processing device capable of communicating with a first imaging device that captures an image of an object moved by a moving device,
a first acquisition process for acquiring first object position information, which is two-dimensional position information of the object, from a first image captured by the first imaging device;
A second acquisition process for acquiring three-dimensional position information of the object;
a first calculation process for calculating second object position information, which is two-dimensional position information on the first image, from three-dimensional position information of the object acquired in the second acquisition process;
a second calculation process for calculating a distance between a first trajectory of the object based on the first object position information and a second trajectory of the object based on the second object position information;
a correction process for correcting a distance between the first trajectory and the second trajectory;
Execute
Information processing methods.
(Article 12)
A computer capable of communicating with a first imaging device that images an object moved by a moving device,
a first acquisition process for acquiring first object position information, which is two-dimensional position information of the object, from a first image captured by the first imaging device;
A second acquisition process for acquiring three-dimensional position information of the object;
a first calculation process for calculating second object position information, which is two-dimensional position information on the first image, from three-dimensional position information of the object acquired in the second acquisition process;
a second calculation process for calculating a distance between a first trajectory of the object based on the first object position information and a second trajectory of the object based on the second object position information;
a correction process for correcting a distance between the first trajectory and the second trajectory;
Execute the
program.
以上、本発明の実施形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、及び応用が可能である。 Although the embodiment of the present invention has been described above, the present invention is not limited to such a specific embodiment, and various modifications and applications are possible within the scope of the gist of the present invention described in the claims.
1、1600、1700 情報処理システム
10 第1の撮像装置
20、1611 移動装置
21 第2の撮像装置
22、1602 物体
100 情報処理装置
402 第1の取得部
403 第2の取得部
404 第1の算出部
405 第2の算出部
406 補正部
407 記憶部
413 位置情報算出部
414 記憶部
1, 1600, 1700
Claims (12)
前記第1の撮像装置が撮像した第1の画像から前記物体の2次元の位置情報である第1の物体位置情報を取得する第1の取得部と、
前記物体の3次元の位置情報を取得する第2の取得部と、
前記第2の取得部で取得した前記物体の3次元の位置情報から前記第1の画像上の2次元の位置情報である第2の物体位置情報を算出する第1の算出部と、
前記第1の物体位置情報による前記物体の第1の軌跡と、前記第2の物体位置情報による前記物体の第2の軌跡との距離を算出する第2の算出部と、
前記第1の軌跡と前記第2の軌跡との距離を補正する補正処理を実行する補正部と、
を有する、
情報処理装置。 An information processing device capable of communicating with a first imaging device that captures an image of an object moved by a moving device,
a first acquisition unit that acquires first object position information, which is two-dimensional position information of the object, from a first image captured by the first imaging device;
A second acquisition unit that acquires three-dimensional position information of the object;
a first calculation unit that calculates second object position information, which is two-dimensional position information on the first image, from the three-dimensional position information of the object acquired by the second acquisition unit;
a second calculation unit that calculates a distance between a first trajectory of the object based on the first object position information and a second trajectory of the object based on the second object position information;
a correction unit that executes a correction process to correct a distance between the first trajectory and the second trajectory;
having
Information processing device.
前記補正部は、前記第1の軌跡と前記第2の軌跡との距離を最小化するように、前記外部パラメータを補正する、請求項1に記載の情報処理装置。 the first calculation unit calculates the second object position information by projecting three-dimensional position information of the object onto the first image using external parameters indicating a position and an orientation of the first imaging device;
The information processing apparatus according to claim 1 , wherein the correction unit corrects the external parameters so as to minimize a distance between the first trajectory and the second trajectory.
前記第2の取得部は、前記第2の撮像装置が撮像した第2の画像に基づく前記物体の3次元の位置情報を取得する、請求項1乃至6のいずれか一項に記載の情報処理装置。 the information processing device is capable of communicating with a second imaging device mounted on the mobile device;
The information processing apparatus according to claim 1 , wherein the second acquisition unit acquires three-dimensional position information of the object based on a second image captured by the second imaging device.
前記情報処理システムは、
前記第2の撮像装置が撮像した前記第2の画像に基づいて取得した、前記移動装置の3次元の位置情報、及び前記移動装置と前記物体との相対位置から、前記物体の3次元の位置情報を算出する位置情報算出部を有する、
情報処理システム。 An information processing system including the information processing device according to claim 7 and a second imaging device mounted on a mobile device,
The information processing system includes:
a position information calculation unit that calculates three-dimensional position information of the object from three-dimensional position information of the mobile device and a relative position between the mobile device and the object, the three-dimensional position information being acquired based on the second image captured by the second imaging device;
Information processing system.
前記算出部は、前記マーカを撮像した画像から、前記移動装置と前記物体との相対位置を算出する、
請求項8に記載の情報処理システム。 the second imaging device captures an image of a marker provided on the object;
The calculation unit calculates a relative position between the moving device and the object from an image of the marker.
The information processing system according to claim 8.
前記算出部は、前記補助マーカを撮像した画像から、前記移動装置と前記物体との相対位置を算出する、
請求項8に記載の情報処理システム。 the second imaging device captures an image of an auxiliary marker that is disposed so that a relative position from a center position of a marker provided on the object is constant;
The calculation unit calculates a relative position between the moving device and the object from an image of the auxiliary marker.
The information processing system according to claim 8.
前記第1の撮像装置が撮像した第1の画像から前記物体の2次元の位置情報である第1の物体位置情報を取得する第1の取得処理と、
前記物体の3次元の位置情報を取得する第2の取得処理と、
前記第2の取得処理で取得した前記物体の3次元の位置情報から前記第1の画像上の2次元の位置情報である第2の物体位置情報を算出する第1の算出処理と、
前記第1の物体位置情報による前記物体の第1の軌跡と、前記第2の物体位置情報による前記物体の第2の軌跡との距離を算出する第2の算出処理と、
前記第1の軌跡と前記第2の軌跡との距離を補正する補正処理と、
を実行する、
情報処理方法。 an information processing device capable of communicating with a first imaging device that captures an image of an object moved by a moving device,
a first acquisition process for acquiring first object position information, which is two-dimensional position information of the object, from a first image captured by the first imaging device;
A second acquisition process for acquiring three-dimensional position information of the object;
a first calculation process for calculating second object position information, which is two-dimensional position information on the first image, from three-dimensional position information of the object acquired in the second acquisition process;
a second calculation process for calculating a distance between a first trajectory of the object based on the first object position information and a second trajectory of the object based on the second object position information;
a correction process for correcting a distance between the first trajectory and the second trajectory;
Execute
Information processing methods.
前記第1の撮像装置が撮像した第1の画像から前記物体の2次元の位置情報である第1の物体位置情報を取得する第1の取得処理と、
前記物体の3次元の位置情報を取得する第2の取得処理と、
前記第2の取得処理で取得した前記物体の3次元の位置情報から前記第1の画像上の2次元の位置情報である第2の物体位置情報を算出する第1の算出処理と、
前記第1の物体位置情報による前記物体の第1の軌跡と、前記第2の物体位置情報による前記物体の第2の軌跡との距離を算出する第2の算出処理と、
前記第1の軌跡と前記第2の軌跡との距離を補正する補正処理と、
を実行させる、
プログラム。 A computer capable of communicating with a first imaging device that images an object moved by a moving device,
a first acquisition process for acquiring first object position information, which is two-dimensional position information of the object, from a first image captured by the first imaging device;
A second acquisition process for acquiring three-dimensional position information of the object;
a first calculation process for calculating second object position information, which is two-dimensional position information on the first image, from three-dimensional position information of the object acquired in the second acquisition process;
a second calculation process for calculating a distance between a first trajectory of the object based on the first object position information and a second trajectory of the object based on the second object position information;
a correction process for correcting a distance between the first trajectory and the second trajectory;
Execute the
program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023047147A JP2024136150A (en) | 2023-03-23 | 2023-03-23 | Information processing device, information processing system, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023047147A JP2024136150A (en) | 2023-03-23 | 2023-03-23 | Information processing device, information processing system, information processing method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024136150A true JP2024136150A (en) | 2024-10-04 |
Family
ID=92911737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023047147A Pending JP2024136150A (en) | 2023-03-23 | 2023-03-23 | Information processing device, information processing system, information processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024136150A (en) |
-
2023
- 2023-03-23 JP JP2023047147A patent/JP2024136150A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102747005B1 (en) | Automatic calibration for a robot optical sensor | |
US10173324B2 (en) | Facilitating robot positioning | |
US11911914B2 (en) | System and method for automatic hand-eye calibration of vision system for robot motion | |
JP6855492B2 (en) | Robot system, robot system control device, and robot system control method | |
CN111801198B (en) | Hand-eye calibration method, system and computer storage medium | |
JP5850962B2 (en) | Robot system using visual feedback | |
CN111195897B (en) | Calibration method and device for mechanical arm system | |
CN108453785B (en) | Robot system, robot control device, and robot control method | |
KR20140008262A (en) | Robot system, robot, robot control device, robot control method, and robot control program | |
JP2005201824A (en) | Measuring device | |
WO2020252632A1 (en) | Coordinate system calibration method, device, and computer readable medium | |
JPWO2018043524A1 (en) | Robot system, robot system control apparatus, and robot system control method | |
WO2018209592A1 (en) | Movement control method for robot, robot and controller | |
US12128571B2 (en) | 3D computer-vision system with variable spatial resolution | |
JP2018202542A (en) | Measurement device, system, control method, and manufacturing method of article | |
EP3602214B1 (en) | Method and apparatus for estimating system error of commissioning tool of industrial robot | |
CN119784839A (en) | Method, device, storage medium and program product for determining position and posture of a robotic arm | |
JP2024136150A (en) | Information processing device, information processing system, information processing method, and program | |
US12145279B2 (en) | Method and apparatus for calibrating position of robot using 3D scanner | |
CN115670660A (en) | Calibration method, device, surgical robot, electronic equipment and storage medium | |
CN115488888A (en) | Object positioning method, control method and device of robot system and electronic equipment | |
JP7153442B2 (en) | moving body | |
WO2024057836A1 (en) | Control method for controlling transport of object, transport device for transporting object, and work system provided with transport device | |
JP2024162001A (en) | Position and orientation acquisition device and probe | |
US20230015874A1 (en) | Information processing device and information processing method |