JP2019101753A - Object shape measurement device and method for controlling the same, and program - Google Patents

Object shape measurement device and method for controlling the same, and program Download PDF

Info

Publication number
JP2019101753A
JP2019101753A JP2017232086A JP2017232086A JP2019101753A JP 2019101753 A JP2019101753 A JP 2019101753A JP 2017232086 A JP2017232086 A JP 2017232086A JP 2017232086 A JP2017232086 A JP 2017232086A JP 2019101753 A JP2019101753 A JP 2019101753A
Authority
JP
Japan
Prior art keywords
straight line
image data
unit
main control
outline
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
JP2017232086A
Other languages
Japanese (ja)
Inventor
章宜 大井
Akiyoshi Oi
章宜 大井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2017232086A priority Critical patent/JP2019101753A/en
Publication of JP2019101753A publication Critical patent/JP2019101753A/en
Pending legal-status Critical Current

Links

Abstract

To provide an object shape measurement device capable of suppressing erroneous detection of a contour of an object caused by a background included in image data.SOLUTION: A camera scanner determines a straight line becoming a contour of a cargo on the basis of an angular difference between vector lines 1414 to 1417 and 1428 to 1429 derived based on previously set shape information, and detected straight lines 1405 to 1408 and 1421 to 1424.SELECTED DRAWING: Figure 14

Description

本発明は、物体形状測定装置及びその制御方法、並びにプログラムに関する。   The present invention relates to an object shape measurement apparatus, a control method thereof, and a program.

宅配便や郵便等により荷物の配送を依頼する際、担当者が荷物の重量やサイズ(幅、奥行き、高さ)を計測し、計測結果に応じて運送料金が決定される。通常、担当者は荷物のサイズを巻尺や定規等を用いて手作業で計測するが、手作業で計測を行うと、計測作業に要する工数が増え、また、担当者による計測精度のばらつきが生じてしまう。このような問題を解決するために、従来では、荷物の形状やサイズを測定する物体形状測定装置が開発されている。物体形状測定装置は、載置台等に置かれた荷物を撮影した画像データから物体の輪郭情報を抽出し、抽出した輪郭情報からサイズを計測する(例えば、特許文献1,2参照)。   When requesting delivery of a package by a courier service, mail, etc., the person in charge measures the weight and size (width, depth, height) of the package, and the transportation fee is determined according to the measurement result. Usually, the person in charge manually measures the size of the package using a tape measure, a ruler or the like. However, manual measurement increases the number of man-hours required for the measurement operation and causes variation in measurement accuracy by the person in charge. It will In order to solve such a problem, conventionally, an object shape measuring device for measuring the shape and size of a package has been developed. The object shape measuring apparatus extracts outline information of an object from image data obtained by photographing a package placed on a mounting table or the like, and measures the size from the extracted outline information (for example, see Patent Documents 1 and 2).

特開2009−216503号公報JP, 2009-216503, A 特開2017−49050号公報JP 2017-49050 A

しかしながら、上記画像データには測定対象である荷物の他に、柱や窓枠等の背景も含まれており、物体形状測定装置が背景の一部を荷物の輪郭と誤検知してしまうという問題が生じる。   However, the image data includes a background such as a pillar or a window frame in addition to the package to be measured, and the object shape measuring device erroneously detects a part of the background as the contour of the package. Will occur.

本発明の目的は、画像データに含まれる背景に起因する物体の輪郭の誤検知を抑制することができる物体形状測定装置及びその制御方法、並びにプログラムを提供することにある。   An object of the present invention is to provide an object shape measuring device capable of suppressing erroneous detection of the contour of an object caused by a background included in image data, a control method thereof, and a program.

上記目的を達成するために、本発明の物体形状測定装置は、撮影した物体の形状を測定する物体形状測定装置であって、前記撮影した物体の画像データを取得する取得手段と、前記画像データから直線を検出する直線検出手段と、前記直線検出手段によって検出された複数の直線の中から予め設定された形状情報に基づいて前記物体の輪郭となる直線を決定する決定手段とを備え、前記決定手段は、前記形状情報に基づいて導出されたベクトル線と前記検出された各直線との角度差に基づいて前記物体の輪郭となる直線を決定することを特徴とする。   In order to achieve the above object, an object shape measuring apparatus according to the present invention is an object shape measuring apparatus for measuring a shape of a photographed object, and an acquiring unit for acquiring image data of the photographed object, and the image data A straight line detecting means for detecting a straight line from the above, and a determining means for determining a straight line to be an outline of the object based on shape information preset among a plurality of straight lines detected by the straight line detecting means; The determination means is characterized by determining a straight line to be an outline of the object based on an angle difference between the vector line derived based on the shape information and each of the detected straight lines.

本発明によれば、画像データに含まれる背景に起因する物体の輪郭の誤検知を抑制することができる。   According to the present invention, it is possible to suppress false detection of the contour of an object caused by the background included in image data.

本発明の実施の形態に係る物体形状測定装置としてのカメラスキャナが含まれるネットワーク構成を示す図である。FIG. 1 is a diagram showing a network configuration including a camera scanner as an object shape measuring device according to an embodiment of the present invention. 図1のカメラスキャナの構成を概略的に示す図である。It is a figure which shows roughly the structure of the camera scanner of FIG. 図2のカメラスキャナにおける座標系を説明するための図である。It is a figure for demonstrating the coordinate system in the camera scanner of FIG. 図3における直交座標系、カメラ座標系及びカメラ撮像平面の関係を示す。The relationship of the rectangular coordinate system in FIG. 3, a camera coordinate system, and a camera imaging plane is shown. 図1のカメラスキャナのコントローラ部及び距離画像センサ部の各ハードウェア構成を示すブロック図である。It is a block diagram which shows each hardware constitutions of the controller part of the camera scanner of FIG. 1, and a distance image sensor part. 図5におけるCPUが実行するカメラスキャナの制御用プログラムの機能モジュールの構成を示すブロック図である。It is a block diagram which shows the structure of the functional module of the control program for a camera scanner which CPU in FIG. 5 runs. 図1のカメラスキャナによる荷物サイズの計測の手順を示すシーケンス図である。It is a sequence diagram which shows the procedure of measurement of the package size by the camera scanner of FIG. 計測対象となる物体の形状を説明するための図である。It is a figure for demonstrating the shape of the object used as measurement object. 図2の載置台の操作平面上に投影表示される画面の一例を示す図である。It is a figure which shows an example of the screen by which projection display is carried out on the operation plane of the mounting base of FIG. 図6のメイン制御部によって実行される荷物サイズ計測処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of the package size measurement process performed by the main control part of FIG. 図10の処理で用いられるデータを説明するための図である。It is a figure for demonstrating the data used by the process of FIG. 図2の載置台の操作平面上に投影表示される最終確認画面の一例を示す図である。It is a figure which shows an example of the final confirmation screen projected and displayed on the operation plane of the mounting base of FIG. 図10のステップS1006の荷物領域決定処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of the package area | region determination process of FIG.10 S1006. 図10の処理における荷物の輪郭の決定を説明するための図である。It is a figure for demonstrating determination of the outline of the luggage | load in the process of FIG. 図1のカメラスキャナの使用例を示す図である。It is a figure which shows the usage example of the camera scanner of FIG. 荷物の模様に起因する荷物の輪郭の誤検知を説明するための図である。It is a figure for demonstrating the misdetection of the outline of the luggage resulting from the pattern of the luggage. 図10の荷物サイズ計測処理の変形例の手順を示すフローチャートである。It is a flowchart which shows the procedure of the modification of the package size measurement process of FIG. 図12の最終確認画面における荷物の輪郭の修正を説明するための図である。It is a figure for demonstrating correction | amendment of the outline of the package in the last confirmation screen of FIG.

以下、本発明の実施の形態について図面を参照しながら詳細に説明する。しかしながら、以下の実施の形態に記載されている構成はあくまで例示に過ぎず、本発明の範囲は実施の形態に記載されている構成によって限定されることはない。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. However, the configurations described in the following embodiments are merely illustrative, and the scope of the present invention is not limited by the configurations described in the embodiments.

図1は、本発明の実施の形態に係る物体形状測定装置としてのカメラスキャナ101が含まれるネットワーク構成を示す図である。図1において、カメラスキャナ101はホストコンピュータ102及びプリンタ103とイーサネット(登録商標)等のネットワーク104を介して接続されている。本実施の形態では、ホストコンピュータ102からの指示に応じ、カメラスキャナ101によって物体の形状を測定する測定-機能や、測定結果をプリンタ103によって出力するプリント機能が実行される。また、ホストコンピュータ102を介すること無くカメラスキャナ101へ直接に指示を行うことにより、スキャン機能やプリント機能を実行することもできる。   FIG. 1 is a diagram showing a network configuration including a camera scanner 101 as an object shape measuring apparatus according to an embodiment of the present invention. In FIG. 1, a camera scanner 101 is connected to a host computer 102 and a printer 103 via a network 104 such as Ethernet (registered trademark). In the present embodiment, in accordance with an instruction from the host computer 102, a measurement-function to measure the shape of an object by the camera scanner 101 and a print function to output a measurement result by the printer 103 are executed. In addition, the scan function and the print function can be executed by directly instructing the camera scanner 101 without using the host computer 102.

図2は、図1のカメラスキャナ101の構成を概略的に示す図である。図2において、カメラスキャナ101は、コントローラ部201、カメラ部202、腕部203、プロジェクタ207、及び距離画像センサ部208を含む。カメラスキャナ101の本体を構成するコントローラ部201、撮像を行うためのカメラ部202、プロジェクタ207(表示手段)及び距離画像センサ部208は互いに腕部203によって連結されている。腕部203は複数の関節を有し、各関節において屈曲されることにより、伸長自在に構成される。   FIG. 2 is a diagram schematically showing the configuration of the camera scanner 101 of FIG. In FIG. 2, the camera scanner 101 includes a controller unit 201, a camera unit 202, an arm unit 203, a projector 207, and a distance image sensor unit 208. A controller unit 201 constituting a main body of the camera scanner 101, a camera unit 202 for performing imaging, a projector 207 (display means), and a distance image sensor unit 208 are mutually connected by an arm unit 203. The arm 203 has a plurality of joints, and is configured to be extensible by being bent at each joint.

カメラスキャナ101は操作平面を有する載置台204の脇に配置される。カメラ部202及び距離画像センサ部208は載置台204を指向し、カメラ部202は図中の破線で囲まれた操作平面上の読み取り領域205内の画像を読み取る。例えば、カメラ部202は読み取り領域205内に置かれた物体206の画像を読み取る。また、載置台204内にはターンテーブル209が設けられている。ターンテーブル209はコントローラ部201からの指示によって回転し、ターンテーブル209上に置かれた物体とカメラ部202の相対角度を変えることができる。カメラスキャナ101では、カメラ部202及び距離画像センサ部208が、載置台204の操作平面上に存在する物体を検知する検知部を構成する。カメラスキャナ101において、カメラ部202は単一解像度で画像を撮像するカメラからなるが、高解像度画像撮像と低解像度画像撮像の切り換えが可能なカメラであってもよい。なお、カメラスキャナ101は、載置台204に配置される後述のLCDタッチパネル513(表示手段)及びスピーカ514を備えてもよい。さらに、カメラスキャナ101は、距離画像センサ部208以外に、周囲の環境情報を収集するための人感センサ、照度センサ、加速度センサ等の各種センサデバイスを備えてもよい。   The camera scanner 101 is disposed beside the mounting table 204 having an operation plane. The camera unit 202 and the distance image sensor unit 208 point to the mounting table 204, and the camera unit 202 reads an image in a reading area 205 on an operation plane surrounded by a broken line in the drawing. For example, the camera unit 202 reads an image of the object 206 placed in the reading area 205. In addition, a turntable 209 is provided in the mounting table 204. The turn table 209 can be rotated according to an instruction from the controller unit 201, and the relative angle between an object placed on the turn table 209 and the camera unit 202 can be changed. In the camera scanner 101, the camera unit 202 and the distance image sensor unit 208 constitute a detection unit that detects an object present on the operation plane of the mounting table 204. In the camera scanner 101, the camera unit 202 is a camera that captures an image at a single resolution, but may be a camera capable of switching between high resolution image capturing and low resolution image capturing. The camera scanner 101 may include an LCD touch panel 513 (display unit) and a speaker 514, which will be described later, disposed on the mounting table 204. In addition to the distance image sensor unit 208, the camera scanner 101 may further include various sensor devices such as a human sensor, an illuminance sensor, and an acceleration sensor for collecting surrounding environment information.

図3は、図2のカメラスキャナ101における座標系を説明するための図である。図3において、カメラスキャナ101では、カメラ座標系、距離画像座標系及びプロジェクタ座標系が定義される。カメラ座標系は、カメラ部202が撮像する画像平面をXY平面とし、且つ該画像平面に直交した方向をZ方向として定義した座標系である。距離画像座標系は、距離画像センサ部208が有する後述のRGBカメラ518が撮像する画像平面をXY平面とし、且つ該画像平面に直交した方向をZ方向として定義した座標系である。プロジェクタ座標系は、プロジェクタ207が画像を投影する画像平面をXY平面とし、且つ該画像平面に直交した方向をZ方向として定義した座標系である。さらに、カメラスキャナ101では、これらの3つの独立した座標系の3次元データを統一的に扱えるようにするために、載置台204を含む平面をXY平面とし、且つ該XY平面に直交した方向をZ方向とする直交座標系が定義される。   FIG. 3 is a diagram for explaining a coordinate system in the camera scanner 101 of FIG. In FIG. 3, in the camera scanner 101, a camera coordinate system, a distance image coordinate system, and a projector coordinate system are defined. The camera coordinate system is a coordinate system in which an image plane captured by the camera unit 202 is an XY plane, and a direction orthogonal to the image plane is defined as a Z direction. The distance image coordinate system is a coordinate system in which an image plane captured by an RGB camera 518 described later included in the distance image sensor unit 208 is an XY plane, and a direction orthogonal to the image plane is defined as a Z direction. The projector coordinate system is a coordinate system in which an image plane on which the projector 207 projects an image is defined as an XY plane, and a direction orthogonal to the image plane is defined as a Z direction. Furthermore, in the camera scanner 101, in order to handle the three-dimensional data of these three independent coordinate systems in a unified manner, the plane including the mounting table 204 is an XY plane, and the direction orthogonal to the XY plane is An orthogonal coordinate system with Z direction is defined.

図4は、図3における直交座標系、カメラ座標系及びカメラ撮像平面の関係を示す。カメラスキャナ101では、直交座標系における3次元点P[X,Y,Z]を下記式(1)によってカメラ座標系における3次元点P[X,Y,Z]へ変換することができる。
[Xc, Yc, Zc]T = [Rc|tc][X, Y, Z, 1]T … (1)
FIG. 4 shows the relationship between the orthogonal coordinate system, the camera coordinate system and the camera imaging plane in FIG. The camera scanner 101 converts a three-dimensional point P [X, Y, Z] in the orthogonal coordinate system into a three-dimensional point P c [X c , Y c , Z c ] in the camera coordinate system according to the following equation (1). Can.
[X c , Y c , Z c ] T = [R c | t c ] [X, Y, Z, 1] T ... (1)

ここで、Rは3×3の回転行列であり、tは並進ベクトルである。R及びtは、直交座標系に対するカメラの姿勢(回転)と位置(並進)に基づいて定まる外部パラメータによって構成される。また、カメラ座標系で定義された3次元点P[X,Y,Z]を下記式(2)によって直交座標系における3次元点P[X,Y,Z]へ変換することができる。
[X, Y, Z]T = [Rc-1|-Rc -1tc][Xc, Yc, Zc, 1]T … (2)
Here, R c is a 3 × 3 rotation matrix, and t c is a translation vector. R c and t c are configured by external parameters determined based on the posture (rotation) and position (translation) of the camera with respect to the orthogonal coordinate system. Also, convert the three-dimensional point P c [X c , Y c , Z c ] defined in the camera coordinate system into the three-dimensional point P [X, Y, Z] in the orthogonal coordinate system by the following equation (2) Can.
[X, Y, Z] T = [R c -1 | -R c -1 t c ] [X c , Y c , Z c , 1] T (2)

カメラ部202で撮影される2次元の画像平面(以下、「カメラ撮像平面」という。)は、カメラ部202によって3次元空間中の3次元点群の3次元情報を2次元情報に変換することによって構成される。すなわち、カメラ撮像平面は、カメラ座標系上での3次元点P[X,Y,Z]を下記式(3)によって2次元座標p[x,y]に透視投影変換することによって構成することができる。
λ[xp, yp, 1]T = A[Xc, Yc, Zc]T … (3)
In the two-dimensional image plane (hereinafter referred to as “camera imaging plane”) photographed by the camera unit 202, the camera unit 202 converts three-dimensional information of three-dimensional point group in three-dimensional space into two-dimensional information Composed of That is, the camera imaging plane is a perspective projection of the three-dimensional point P c [X c , Y c , Z c ] on the camera coordinate system into the two-dimensional coordinate p c [x p , y p ] according to the following equation (3) It can be configured by converting.
λ [x p , y p , 1] T = A [X c , Y c , Z c ] T (3)

ここで、Aは、焦点距離と画像中心等で表現される3×3の行列であるカメラの内部パラメータである。   Here, A is an internal parameter of the camera which is a 3 × 3 matrix expressed by the focal length and the image center.

以上のように、カメラスキャナ101では、上記式(1),(3)を用いることによって直交座標系で表された3次元点群をカメラ座標系での3次元点群やカメラ撮像平面に変換することができる。なお、カメラスキャナ101では、各ハードウェアデバイスの内部パラメータ及び直交座標系に対する位置姿勢(外部パラメータ)は、公知のキャリブレーション手法によって予めキャリブレーションされている。以後、本明細書において、「3次元点群」は直交座標系で表された3次元点群を示しているものとする。   As described above, the camera scanner 101 converts the three-dimensional point group represented by the orthogonal coordinate system into the three-dimensional point group in the camera coordinate system or the camera imaging plane by using the above equations (1) and (3). can do. In the camera scanner 101, the internal parameters of each hardware device and the position and orientation (external parameters) with respect to the orthogonal coordinate system are calibrated in advance by a known calibration method. Hereinafter, in the present specification, “three-dimensional point group” is assumed to indicate a three-dimensional point group represented by an orthogonal coordinate system.

図5は、図1のカメラスキャナ101のコントローラ部201及び距離画像センサ部208の各ハードウェア構成を示すブロック図である。図5において、コントローラ部201は、システムバス501に接続されたCPU502、RAM503、ROM504、HDD505、ネットワークI/F506、及び画像処理プロセッサ507を備える。さらに、コントローラ部201は、カメラI/F508、ディスプレイコントローラ509、シリアルI/F510、オーディオコントローラ511、及びUSBコントローラ512を備える。距離画像センサ部208は赤外線パターン投射部516、赤外線カメラ517、及びRGBカメラ518を備える。   FIG. 5 is a block diagram showing the hardware configuration of the controller unit 201 and the distance image sensor unit 208 of the camera scanner 101 of FIG. In FIG. 5, the controller unit 201 includes a CPU 502, a RAM 503, a ROM 504, an HDD 505, a network I / F 506, and an image processing processor 507 connected to a system bus 501. Furthermore, the controller unit 201 includes a camera I / F 508, a display controller 509, a serial I / F 510, an audio controller 511, and a USB controller 512. The distance image sensor unit 208 includes an infrared pattern projection unit 516, an infrared camera 517, and an RGB camera 518.

CPU502はコントローラ部201全体の動作を制御する中央演算装置である。RAM503は揮発性メモリである。ROM504は不揮発性メモリであり、CPU502の起動用プログラムが格納される。HDD505はRAM503よりも大容量のハードディスクドライブ(HDD)である。HDD505にはコントローラ部201が実行する、カメラスキャナ101の制御用プログラムが格納される。   A CPU 502 is a central processing unit that controls the overall operation of the controller unit 201. The RAM 503 is a volatile memory. The ROM 504 is a non-volatile memory, and stores an activation program for the CPU 502. The HDD 505 is a hard disk drive (HDD) having a larger capacity than the RAM 503. A control program for controlling the camera scanner 101, which is executed by the controller unit 201, is stored in the HDD 505.

CPU502は、電源オン等のカメラスキャナ101の起動時、ROM504に格納される起動用プログラムを実行する。この起動用プログラムは、HDD505に格納される制御用プログラムを読み出してRAM503に展開する。CPU502は、起動用プログラムを実行すると、続けてRAM503に展開された制御用プログラムを実行してコントローラ部201全体の動作を制御する。また、CPU502は制御用プログラムの実行に用いるデータもRAM503に格納して読み書きを行う。HDD505には制御用プログラムの実行に必要な各種設定やカメラ部202が撮像によって生成した画像データを格納することができ、格納されたデータ等はCPU502によって読み書きされる。また、CPU502はネットワークI/F506を介してネットワーク104に接続された他の機器との通信を行う。   The CPU 502 executes an activation program stored in the ROM 504 when the camera scanner 101 is activated, such as when the power is turned on. The boot program reads out the control program stored in the HDD 505 and develops it on the RAM 503. After executing the boot program, the CPU 502 subsequently executes the control program developed in the RAM 503 to control the overall operation of the controller unit 201. The CPU 502 also stores data used to execute the control program in the RAM 503 to perform reading and writing. The HDD 505 can store various settings necessary for execution of the control program and image data generated by the camera unit 202 by imaging, and the stored data and the like are read and written by the CPU 502. The CPU 502 also communicates with other devices connected to the network 104 via the network I / F 506.

画像処理プロセッサ507はRAM503に格納された画像データを読み出して画像処理を施し、再度、RAM503へ書き戻す。なお、画像処理プロセッサ507が実行する画像処理は、回転、変倍、色変換等である。カメラI/F508はカメラ部202及び距離画像センサ部208と接続され、CPU502からの指示に応じてカメラ部202から広角画像データを取得するとともに距離画像センサ部208から距離画像データを取得してRAM503へ書き込む。また、カメラI/F508はCPU502からの制御コマンドをカメラ部202及び距離画像センサ部208へ送信し、カメラ部202及び距離画像センサ部208の設定を行う。なお、ディスプレイコントローラ509、シリアルI/F510、オーディオコントローラ511及びUSBコントローラ512は、これらのうちの少なくとも1つがコントローラ部201に含まれていればよい。   The image processing processor 507 reads the image data stored in the RAM 503, performs image processing, and writes the image data back to the RAM 503 again. The image processing executed by the image processing processor 507 is rotation, scaling, color conversion, and the like. The camera I / F 508 is connected to the camera unit 202 and the distance image sensor unit 208, acquires wide-angle image data from the camera unit 202 according to an instruction from the CPU 502, and acquires distance image data from the distance image sensor unit 208. Write to Also, the camera I / F 508 transmits a control command from the CPU 502 to the camera unit 202 and the distance image sensor unit 208, and performs setting of the camera unit 202 and the distance image sensor unit 208. Note that at least one of the display controller 509, the serial I / F 510, the audio controller 511, and the USB controller 512 may be included in the controller unit 201.

ディスプレイコントローラ509はCPU502の指示に応じてLCDタッチパネル513における画像データの表示を制御する。また、ディスプレイコントローラ509はプロジェクタ207に接続される。シリアルI/F310はシリアル信号の入出力を行う。シリアルI/F310はターンテーブル209に接続され、CPU302による回転開始、回転終了、及び回転角度の指示をターンテーブル209へ送信する。また、シリアルI/F310はLCDタッチパネル513に接続され、LCDタッチパネル513においてユーザに押下された位置の座標情報をCPU502に通知する。オーディオコントローラ511はスピーカ514に接続され、CPU502の指示に応じて音声データをアナログ音声信号に変換し、スピーカ514を通じて音声を出力する。USBコントローラ512はCPU502の指示に応じて外付けのUSBデバイスの制御を行う。USBコントローラ512はUSBメモリやSDカード等の外部メモリ515に接続され、外部メモリ515へのデータの読み書きを行う。   A display controller 509 controls display of image data on the LCD touch panel 513 in accordance with an instruction from the CPU 502. Further, the display controller 509 is connected to the projector 207. The serial I / F 310 inputs and outputs serial signals. The serial I / F 310 is connected to the turn table 209, and transmits to the turn table 209 instructions on the start of rotation, the end of rotation, and the rotation angle by the CPU 302. The serial I / F 310 is connected to the LCD touch panel 513 and notifies the CPU 502 of coordinate information of a position pressed by the user on the LCD touch panel 513. The audio controller 511 is connected to the speaker 514, converts audio data into an analog audio signal according to an instruction of the CPU 502, and outputs audio through the speaker 514. The USB controller 512 controls an external USB device according to an instruction of the CPU 502. The USB controller 512 is connected to an external memory 515 such as a USB memory or an SD card, and reads / writes data from / to the external memory 515.

距離画像センサ部208は赤外線によるパターン投射方式の距離画像センサからなり、距離画像データを生成する。距離画像データは複数の画素で構成され、各画素には距離画像センサ部208のレンズ(図示しない)中心から被写体までの距離データが設定される。赤外線パターン投射部516は視認できない赤外線による3次元測定パターンを対象物に投射する。赤外線カメラ517は対象物に投射された3次元測定パターンを読み取る。RGBカメラ518は可視光をRGB信号で撮影する。   The distance image sensor unit 208 includes a distance image sensor of a pattern projection type using infrared light, and generates distance image data. The distance image data is composed of a plurality of pixels, and in each pixel, distance data from the center of a lens (not shown) of the distance image sensor unit 208 to the subject is set. The infrared pattern projection unit 516 projects a non-visible infrared three-dimensional measurement pattern on the object. The infrared camera 517 reads the three-dimensional measurement pattern projected on the object. The RGB camera 518 captures visible light as RGB signals.

図6は、図5におけるCPU502が実行するカメラスキャナ101の制御用プログラムの機能モジュールの構成を示すブロック図である。カメラスキャナ101の制御用プログラムは前述のようにHDD505に格納され、CPU502が起動時に制御用プログラムをRAM503に展開して実行する。制御用プログラムが実行される際には機能構成601が構成される。機能構成601は、モジュールとして、メイン制御部602、画像取得部603、カメラ画像取得部604、距離画像取得部605、認識処理部606、ジェスチャー検知部607、及び物体検知部608を備える。さらに、機能構成601は、モジュールとして、画像処理部609、物体計測部610、データ管理部611、ユーザインターフェイス部612、表示部613、及びネットワーク通信部614を備える。   FIG. 6 is a block diagram showing a configuration of functional modules of a control program of the camera scanner 101 executed by the CPU 502 in FIG. The control program for the camera scanner 101 is stored in the HDD 505 as described above, and the CPU 502 loads the control program in the RAM 503 and executes the program at startup. When the control program is executed, a functional configuration 601 is configured. The functional configuration 601 includes, as modules, a main control unit 602, an image acquisition unit 603, a camera image acquisition unit 604, a distance image acquisition unit 605, a recognition processing unit 606, a gesture detection unit 607, and an object detection unit 608. The functional configuration 601 further includes an image processing unit 609, an object measurement unit 610, a data management unit 611, a user interface unit 612, a display unit 613, and a network communication unit 614 as modules.

メイン制御部602は制御の中心モジュールであり、機能構成601が備える他の各モジュールを制御する。画像取得部603は画像入力処理を行うモジュールであり、カメラ画像取得部604及び距離画像取得部605によって構成される。カメラ画像取得部604はカメラI/F508を介してカメラ部202が出力する広角画像データを取得し、RAM503へ格納する。距離画像取得部605はカメラI/F508を介して距離画像センサ部208が出力する距離画像データを取得し、RAM503へ格納する。認識処理部606はカメラ画像取得部604が取得する広角画像データ及び距離画像取得部605が取得する距離画像データから載置台204の操作平面上の物体の動きを検知して認識するモジュールである。認識処理部606はジェスチャー検知部607及び物体検知部608によって構成される。ジェスチャー検知部607は画像取得部603から載置台204の操作平面上の画像を取得し続け、タッチ等のユーザのジェスチャー操作を検知する。ジェスチャー検知部607はユーザのジェスチャー操作を検知すると、この旨をメイン制御部602に通知する。物体検知部608は、画像取得部603から載置台204の操作平面を撮像した画像を取得して載置台204の操作平面上に存在する物体を検知する。また、物体検知部608は、載置台204の操作平面上に物体が置かれるタイミング、物体が置かれて静止するタイミング、又は物体が取り除かれるタイミング等も検知する。   The main control unit 602 is a central module of control, and controls other modules included in the functional configuration 601. An image acquisition unit 603 is a module that performs image input processing, and is configured of a camera image acquisition unit 604 and a distance image acquisition unit 605. The camera image acquisition unit 604 acquires wide-angle image data output by the camera unit 202 via the camera I / F 508, and stores the wide-angle image data in the RAM 503. The distance image acquisition unit 605 acquires distance image data output from the distance image sensor unit 208 via the camera I / F 508, and stores the distance image data in the RAM 503. A recognition processing unit 606 is a module for detecting and recognizing the movement of an object on the operation plane of the mounting table 204 from the wide-angle image data acquired by the camera image acquisition unit 604 and the distance image data acquired by the distance image acquisition unit 605. The recognition processing unit 606 includes a gesture detection unit 607 and an object detection unit 608. The gesture detection unit 607 continues to acquire an image on the operation plane of the mounting table 204 from the image acquisition unit 603, and detects a gesture operation of the user such as a touch. When detecting the gesture operation of the user, the gesture detection unit 607 notifies the main control unit 602 of this. The object detection unit 608 acquires an image obtained by capturing an operation plane of the mounting table 204 from the image acquisition unit 603, and detects an object present on the operation plane of the mounting table 204. The object detection unit 608 also detects the timing at which the object is placed on the operation plane of the mounting table 204, the timing at which the object is placed and stopped, or the timing at which the object is removed.

画像処理部609は、カメラ部202及び距離画像センサ部208から取得した画像を画像処理プロセッサ507で解析するために用いられ、物体計測部610や図示しない各種画像処理モジュールによって構成される。物体計測部610は載置台204の操作平面上に置かれた物体206を計測するモジュールである。前述のジェスチャー検知部607や物体計測部610は画像処理部609の各種画像処理モジュールを利用して実現される。   An image processing unit 609 is used by the image processing processor 507 to analyze images acquired from the camera unit 202 and the distance image sensor unit 208, and is configured by an object measurement unit 610 and various image processing modules (not shown). The object measurement unit 610 is a module that measures an object 206 placed on the operation plane of the mounting table 204. The above-described gesture detection unit 607 and object measurement unit 610 are realized using various image processing modules of the image processing unit 609.

データ管理部611は、制御用プログラムを実行して生成された作業データ等をHDD505の所定の領域へ格納し、上記作業データ等を管理する。ユーザインターフェイス部612はメイン制御部602からの要求に応じてメッセージやボタン等のGUI部品を生成し、生成したGUI部品の表示を表示部613に要求する。表示部613はディスプレイコントローラ509を介して、要求されたGUI部品の表示をプロジェクタ207又はLCDタッチパネル513に実行させる。プロジェクタ207は載置台204の操作平面に向けて設置されるため、載置台204の操作平面上にGUI部品が投影表示される。また、ユーザインターフェイス部612は、ジェスチャー検知部607が認識したユーザのタッチ等のジェスチャー操作やLCDタッチパネル513における入力操作、さらに各操作が行われた座標をメイン制御部602経由で受信する。また、ユーザインターフェイス部612は、描画されているGUI部品の座標と操作座標を対応させて操作されたGUI部品と操作内容を判定し、この操作内容をメイン制御部602に通知する。ネットワーク通信部614は、ネットワークI/F506を介してネットワーク104に接続された他の機器とTCP/IPによる通信を行う。   The data management unit 611 stores work data and the like generated by executing the control program in a predetermined area of the HDD 505, and manages the work data and the like. The user interface unit 612 generates a GUI component such as a message or a button in response to a request from the main control unit 602, and requests the display unit 613 to display the generated GUI component. The display unit 613 causes the projector 207 or the LCD touch panel 513 to display the requested GUI component via the display controller 509. Since the projector 207 is installed toward the operation plane of the mounting table 204, the GUI component is projected and displayed on the operation plane of the mounting table 204. Further, the user interface unit 612 receives, through the main control unit 602, gesture operations such as a touch of the user recognized by the gesture detection unit 607, input operations on the LCD touch panel 513, and coordinates at which each operation is performed. The user interface unit 612 associates the coordinates of the GUI component being drawn with the operation coordinates, determines the operated GUI component and the operation content, and notifies the main control unit 602 of the operation content. The network communication unit 614 communicates with other devices connected to the network 104 via the network I / F 506 by TCP / IP.

図7は、図1のカメラスキャナ101による荷物サイズの計測の手順を示すシーケンス図である。図7の処理では、一例として、図8の荷物801のサイズの計測を行う場合について説明する。なお、図7の処理では、計測対象の物体の形状が直方体であることがメイン制御部602に既に通知され、また、計測開始を指示するための図9(a)のUI画面901がプロジェクタ207によって載置台204の操作平面上に投影表示されていることとする。UI画面901は実行ボタン902及び終了ボタン903を含む。   FIG. 7 is a sequence diagram showing the procedure of measuring the package size by the camera scanner 101 of FIG. In the process of FIG. 7, the case where the size of the package 801 of FIG. 8 is measured will be described as an example. In the process of FIG. 7, the main control unit 602 is already notified that the shape of the object to be measured is a rectangular parallelepiped, and the UI screen 901 of FIG. , And projected and displayed on the operation plane of the mounting table 204. The UI screen 901 includes an execution button 902 and an end button 903.

図7において、ジェスチャー検知部607は、画像取得部603から取得した広角画像データ及び距離画像データに基づいてUI画面901におけるジェスチャー検知処理を行う。ジェスチャー検知部607は、UI画面901において、図9(b)に示すようなユーザによる実行ボタン902のジェスチャー操作を検知すると、この旨を示すジェスチャー通知をメイン制御部602に送信する(ステップS701)。実行ボタン902のジェスチャー操作を検知した旨を示すジェスチャー通知を受信したメイン制御部602は、図9(c)に示すように、荷物を載置する位置を示す荷物計測領域904を載置台204の操作平面上に投影表示する。また、メイン制御部602は物体検知部608に物体検知処理の開始を要求する(ステップS702)。   In FIG. 7, the gesture detection unit 607 performs a gesture detection process on the UI screen 901 based on the wide-angle image data and the distance image data acquired from the image acquisition unit 603. When the gesture detection unit 607 detects a gesture operation of the execution button 902 by the user as shown in FIG. 9B on the UI screen 901, the gesture detection unit 607 transmits a gesture notification indicating this to the main control unit 602 (step S701). . The main control unit 602 that has received the gesture notification indicating that the gesture operation of the execution button 902 has been detected is, as shown in FIG. 9C, of the loading table 204 of the loading measurement area 904 indicating the loading position. Project and display on the operation plane. Further, the main control unit 602 requests the object detection unit 608 to start the object detection process (step S702).

物体検知処理の開始を要求された物体検知部608は、物体検知処理を開始し、画像取得部603から広角画像データ及び距離画像データを所定の間隔で取得する。物体検知部608は取得した広角画像データ及び距離画像データに基づいて荷物計測領域904に物体が所定の期間置かれ続けているか否かを判別する。物体検知部608は、例えば、図9(d)に示すように、荷物801が荷物計測領域904に置かれ、さらに荷物801が所定の期間荷物計測領域904に静止した状態であることを検知すると、この旨を示す静止検知通知をメイン制御部602に送信する(ステップS703)。   The object detection unit 608 requested to start the object detection process starts the object detection process, and acquires wide-angle image data and distance image data from the image acquisition unit 603 at predetermined intervals. The object detection unit 608 determines whether an object continues to be placed in the package measurement area 904 for a predetermined period based on the acquired wide-angle image data and distance image data. For example, as shown in FIG. 9D, the object detection unit 608 detects that the package 801 is placed in the package measurement area 904 and the package 801 remains stationary in the package measurement area 904 for a predetermined period. Then, the stationary detection notification indicating this is transmitted to the main control unit 602 (step S703).

メイン制御部602は、静止検知通知を受信すると、物体計測部610に荷物801のサイズの計測処理の開始を要求する(ステップS704)。また、メイン制御部602は、図9(e)に示すように、荷物801のサイズを計測中である旨を示すメッセージ905を載置台204の操作平面上に投影表示する。さらに、メイン制御部602はユーザインターフェイス部612に対しGUI部品更新処理を要求する。GUI部品更新処理を要求されたユーザインターフェイス部612は、GUI部品更新処理を行い(ステップS705)、図9(f)に示すように、載置台204の操作平面上の表示内容を荷物801のサイズの計測結果を示すメッセージ906に更新する。   When receiving the stationary state detection notification, the main control unit 602 requests the object measuring unit 610 to start the measurement process of the size of the package 801 (step S704). Further, as shown in FIG. 9E, the main control unit 602 projects and displays a message 905 indicating that the size of the package 801 is being measured on the operation plane of the mounting table 204. Further, the main control unit 602 requests the user interface unit 612 to perform GUI component update processing. The user interface unit 612 requested for the GUI parts update process performs the GUI parts update process (step S 705), and the display content on the operation plane of the mounting table 204 is the size of the package 801 as shown in FIG. It updates to the message 906 which shows the measurement result of.

載置台204の操作平面上にメッセージ906が投影表示されると、メイン制御部602は物体検知部608に物体検知処理の開始を要求する(ステップS706)。物体検知部608、図9(g)に示すように、荷物801が荷物計測領域904から取り除かれたことを検知すると、この旨を示す除去検知通知をメイン制御部602に送信する(ステップS707)。除去検知通知を受信したメイン制御部602は、ユーザインターフェイス部612にGUI部品更新処理を要求する。GUI部品更新処理を要求されたユーザインターフェイス部612は、GUI部品更新処理を行い(ステップS708)、載置台204の操作平面上の表示内容を、荷物801のサイズの再計測や計測処理の終了を指示する操作ボタンを含む最終確認画面に更新する。その後、カメラスキャナ101は本処理を終了する。   When the message 906 is projected and displayed on the operation plane of the mounting table 204, the main control unit 602 requests the object detection unit 608 to start the object detection process (step S706). As shown in FIG. 9G, when the object detection unit 608 detects that the package 801 has been removed from the package measurement area 904, it sends a removal detection notification indicating this to the main control unit 602 (step S707). . The main control unit 602 that has received the removal detection notification requests the user interface unit 612 to perform GUI component update processing. The user interface unit 612 requested for the GUI parts update process performs the GUI parts update process (step S 708), and the display contents on the operation plane of the mounting table 204 re-measures the size of the package 801 and ends the measurement process. Update to final confirmation screen including operation button to instruct. Thereafter, the camera scanner 101 ends this processing.

図10は、図6のメイン制御部602によって実行される荷物サイズ計測処理の手順を示すフローチャートである。図10の処理では、UI画面901が載置台204の操作平面上に投影表示されていることを前提とする。   FIG. 10 is a flowchart showing the procedure of the package size measurement process executed by the main control unit 602 of FIG. In the process of FIG. 10, it is assumed that the UI screen 901 is projected and displayed on the operation plane of the mounting table 204.

図10において、メイン制御部602は、ジェスチャー検知部607によって実行ボタン902のジェスチャー操作が検知されると(ステップS1001でYES)、画像取得部603から距離画像データ及び広角画像データを取得する(ステップS1002)。ステップS1002では、メイン制御部602は、同じ撮影タイミングの距離画像データ及び広角画像データを取得する。なお、本実施の形態では、ステップS1001において、メイン制御部602が、図11(a)の距離画像データ1101及び図11(b)の広角画像データ1103を画像取得部603から取得したこととする。距離画像データ1101及び広角画像データ1103は、荷物801の2側面がカメラスキャナ101に正対するように荷物計測領域904に置かれた際に撮影された画像データである。距離画像データ1101は荷物801の一部の距離データ1102を含む。広角画像データ1103は、載置台204に置かれた荷物801の全体像を示す荷物領域1104、及び窓枠や柱等の背景1105を含む。   In FIG. 10, when the gesture detection unit 607 detects a gesture operation on the execution button 902 (YES in step S1001), the main control unit 602 acquires distance image data and wide-angle image data from the image acquisition unit 603 (step S1002). In step S1002, the main control unit 602 acquires distance image data and wide-angle image data of the same imaging timing. In the present embodiment, in step S1001, the main control unit 602 acquires the distance image data 1101 in FIG. 11A and the wide-angle image data 1103 in FIG. 11B from the image acquisition unit 603. . The distance image data 1101 and the wide-angle image data 1103 are image data captured when the two sides of the package 801 are placed in the package measurement area 904 so as to face the camera scanner 101. The distance image data 1101 includes distance data 1102 of a part of the package 801. The wide-angle image data 1103 includes a luggage area 1104 indicating the entire image of the luggage 801 placed on the mounting table 204, and a background 1105 such as a window frame or a pillar.

次いで、メイン制御部602は物体計測部610により、ステップS1003〜S1005の第1の荷物領域抽出処理を行う。具体的に、メイン制御部602は、距離画像データ1101を直交座標系の3次元点群に変換する(ステップS1003)。次いで、メイン制御部602は、変換した3次元点群の中から所定のZ値以上、つまり、載置台204の操作平面から所定の高さ以上の3次元点群1106を抽出する(ステップS1004)。本実施の形態では、3次元点群1106は、後述する第2の荷物領域抽出処理における荷物の側面領域の抽出にも利用されるので、側面領域をより正確に抽出するために、荷物801を示す3次元点を或る程度の数以上含んでいる必要がある。このため、メイン制御部602は、3次元点群1106における3次元点の数が予め設定された所定数以上であるか否かを判別する(ステップS1005)。   Next, the main control unit 602 causes the object measurement unit 610 to perform the first baggage area extraction process of steps S1003 to S1005. Specifically, the main control unit 602 converts the distance image data 1101 into a three-dimensional point group of the orthogonal coordinate system (step S1003). Next, the main control unit 602 extracts a three-dimensional point group 1106 having a predetermined height or more from the operation plane of the mounting table 204 from the converted three-dimensional point group (step S1004). . In the present embodiment, the three-dimensional point group 1106 is also used to extract the side area of the load in the second load area extraction process described later. Therefore, in order to extract the side area more accurately, It is necessary to include a certain number or more of the three-dimensional points shown. Therefore, the main control unit 602 determines whether the number of three-dimensional points in the three-dimensional point group 1106 is equal to or more than a predetermined number set in advance (step S1005).

ステップS1005の判別の結果、3次元点群1106における3次元点の数が所定数以上であるとき、メイン制御部602は物体計測部610により、ステップS1006,S1007の第2の荷物領域抽出処理を行う。具体的に、メイン制御部602は後述する図13の荷物領域決定処理を行って(ステップS1006)、例えば、図11(d)のように、広角画像データ1103において、頂点A〜Fで構成される荷物801の輪郭を決定する。次いで、メイン制御部602は荷物801のサイズを計測可能であるか否かを判別する(ステップS1007)。ここで、広角画像データ1103において、頂点A〜Cの全てが抽出され、且つ頂点D〜Fの何れか1点が抽出されると、メイン制御部602は荷物801の幅、奥行き、高さを特定可能となる。このため、ステップS1007では、広角画像データ1103において、頂点A〜Cの全てが抽出され、且つ頂点D〜Fの何れか1点が抽出された場合、メイン制御部602は荷物801のサイズを計測可能であると判別する。一方、広角画像データ1103における頂点A〜Cの何れか、又は頂点D〜Fの全てが抽出されない場合、メイン制御部602は、荷物801の幅、奥行き、高さを特定できないので、荷物801のサイズを計測不可能であると判別する。   As a result of the determination in step S1005, when the number of three-dimensional points in the three-dimensional point group 1106 is a predetermined number or more, the main control unit 602 causes the object measuring unit 610 to execute the second baggage area extraction process of steps S1006 and S1007. Do. Specifically, the main control unit 602 performs the baggage area determination process of FIG. 13 described later (step S1006), and for example, as shown in FIG. 11D, the wide-angle image data 1103 is composed of vertices A to F The outline of the package 801 is determined. Next, the main control unit 602 determines whether or not the size of the package 801 can be measured (step S1007). Here, in the wide-angle image data 1103, when all the vertices A to C are extracted and any one of the vertices D to F is extracted, the main control unit 602 determines the width, depth, and height of the package 801. It becomes identifiable. Therefore, in step S1007, when all the vertices A to C are extracted in the wide-angle image data 1103 and any one of the vertices D to F is extracted, the main control unit 602 measures the size of the package 801. Determine that it is possible. On the other hand, when any of the vertices A to C or all of the vertices D to F in the wide-angle image data 1103 is not extracted, the main control unit 602 can not specify the width, depth, and height of the package 801. Determine that the size can not be measured.

ステップS1007の判別の結果、荷物801のサイズを計測可能であるとき、メイン制御部602は広角画像データ1103における荷物領域1104から荷物801のサイズを計測する(ステップS1008)。例えば、メイン制御部602は直交座標系に変換した頂点A〜Cの各座標から荷物801の底面積を算出する。また、メイン制御部602は直交座標系に変換した頂点D〜Fの各座標から荷物801の高さの平均値を算出する。メイン制御部602は上記底面積及び上記高さの平均値を用いて荷物801のサイズを算出する。   As a result of the determination in step S1007, when the size of the package 801 can be measured, the main control unit 602 measures the size of the package 801 from the package area 1104 in the wide-angle image data 1103 (step S1008). For example, the main control unit 602 calculates the bottom area of the package 801 from the coordinates of the vertices A to C converted into the orthogonal coordinate system. Further, the main control unit 602 calculates an average value of the heights of the luggage 801 from the coordinates of the vertices D to F converted into the orthogonal coordinate system. The main control unit 602 calculates the size of the package 801 using the bottom area and the average value of the height.

次いで、メイン制御部602は、図9(f)に示すように、載置台204の操作平面上に荷物801のサイズの計測結果を示すメッセージ906を投影表示する(ステップS1009)。次いで、メイン制御部602は、載置台204の操作平面上からユーザによって荷物801が取り除かれると、ユーザインターフェイス部612にGUI部品更新処理を要求する。これにより、載置台204の操作平面には、図12の最終確認画面1200が投影表示される。最終確認画面1200は、荷物801のサイズの計測結果の他に、輪郭情報1201、再計測ボタン1202、及び終了ボタン1203を備える。輪郭情報1201は、広角画像データ1103にステップS1006において決定された輪郭及び該輪郭を構成する複数の頂点を重畳した重畳画像1204を含む。   Next, as shown in FIG. 9F, the main control unit 602 projects and displays a message 906 indicating the measurement result of the size of the package 801 on the operation plane of the mounting table 204 (step S1009). Next, when the package 801 is removed by the user from the operation plane of the mounting table 204, the main control unit 602 requests the user interface unit 612 to perform GUI component update processing. Thus, the final confirmation screen 1200 of FIG. 12 is projected and displayed on the operation plane of the mounting table 204. The final confirmation screen 1200 includes contour information 1201, a re-measurement button 1202, and an end button 1203 in addition to the measurement result of the size of the package 801. The outline information 1201 includes a superimposed image 1204 in which the outline determined in step S1006 and a plurality of vertices constituting the outline are superimposed on the wide-angle image data 1103.

次いで、メイン制御部602は最終確認画面1200におけるユーザ操作を検知すると、ユーザ操作の内容を確認する(ステップS1010)。   Next, when the main control unit 602 detects a user operation on the final confirmation screen 1200, the main control unit 602 confirms the content of the user operation (step S1010).

ステップS1010において、上記ユーザ操作が終了ボタン1203のジェスチャー操作であるとき、メイン制御部602は本処理を終了する。   In step S1010, when the user operation is a gesture operation of the end button 1203, the main control unit 602 ends the present process.

ステップS1005の判別の結果、3次元点群1106における3次元点の数が所定数未満であるとき、ステップS1007の判別の結果、荷物801のサイズを計測不可能であるとき、又はステップS1010において、上記ユーザ操作が再計測ボタン1202のジェスチャー操作であるとき、メイン制御部602はステップS1002の処理に戻る。   As a result of the determination in step S1005, when the number of three-dimensional points in the three-dimensional point group 1106 is less than the predetermined number, when the size of the package 801 can not be measured as a result of the determination in step S1007, or When the user operation is a gesture operation of the re-measurement button 1202, the main control unit 602 returns to the process of step S1002.

図13は、図10のステップS1006の荷物領域決定処理の手順を示すフローチャートである。   FIG. 13 is a flow chart showing the procedure of the package area determination process of step S1006 of FIG.

図13において、メイン制御部602はステップS1301〜S1303において荷物801の輪郭を構成する底面辺の検出を行う。ステップS1301〜S1303では、3次元点群のクラスタリングについてPointCloudLibraryのSegmentation関数等が用いられ、また、各クラスの点群毎に最少2乗法等を用いて平面検出が行われる。底面辺の検出では、具体的に、メイン制御部602は物体計測部610により、3次元点群1106から、図14(a)の3次元平面1401、1402を抽出する(ステップS1301)。また、メイン制御部602は、3次元平面1401、1402の各々における直交座標系Z=0、つまり、載置台204の操作平面上となる3次元直線を取得する(ステップS1302)。次いで、メイン制御部602はステップS1302の処理によって得られた2つの3次元直線を事前にキャリブレーション済みのパラメータを用いて、図14(b)に示すように、広角画像データ1103上に直線1403、1404として射影する(ステップS1303)。直線1403、1404の交叉箇所から画像端までが荷物801の底面辺となりうる。メイン制御部602は、ステップS1304〜S1307において荷物801の輪郭を構成する側面辺を検出し、側面辺の検出結果に基づいて荷物801の底面辺を確定する。   In FIG. 13, the main control unit 602 detects the bottom side that constitutes the outline of the load 801 in steps S1301 to S1303. In steps S1301 to S1303, a Segmentation function or the like of PointCloud Library is used for clustering of three-dimensional point groups, and plane detection is performed using a least squares method or the like for each point group of each class. Specifically, in the detection of the bottom side, the main control unit 602 causes the object measurement unit 610 to extract the three-dimensional planes 1401 and 1402 of FIG. 14A from the three-dimensional point group 1106 (step S1301). Further, the main control unit 602 acquires the orthogonal coordinate system Z = 0 in each of the three-dimensional planes 1401 and 1402, that is, a three-dimensional straight line on the operation plane of the mounting table 204 (step S1302). Next, the main control unit 602 performs straight line 1403 on the wide-angle image data 1103 as shown in FIG. 14B using the parameters that have been calibrated in advance using the two three-dimensional straight lines obtained by the process of step S1302. , 1404 (step S1303). The intersection of the straight lines 1403 and 1404 to the image end can be the bottom side of the package 801. In steps S1304 to S1307, the main control unit 602 detects the side edge forming the outline of the load 801, and determines the bottom edge of the load 801 based on the detection result of the side edge.

具体的に、メイン制御部602は広角画像データ1103から直線検出を行い、荷物801の側面辺の候補となる直線1405〜1408を抽出する(ステップS1304)。ステップS1304では、メイン制御部602はHough変換等を用いて複数の直線を抽出する。なお、ステップS1304では、メイン制御部602は広角画像データ1103において水平に近い直線等、広角画像データ1103における直線の角度から明らかに荷物801の側面辺ではないと判別可能な直線を側面辺の候補となる直線として抽出しない。   Specifically, the main control unit 602 performs straight line detection from the wide-angle image data 1103 and extracts straight lines 1405 to 1408 as candidates for the side of the package 801 (step S1304). In step S1304, the main control unit 602 extracts a plurality of straight lines using Hough transform or the like. In step S1304, the main control unit 602 is a candidate for a side edge such as a straight line near horizontal in the wide-angle image data 1103 or a straight line which can be clearly identified as not the side edge of the load 801 from the angle of the straight line Do not extract as a straight line.

ここで、直線1405〜1408の中から荷物801の側面辺となる直線を決定する際に広角画像データ1103において基準面、例えば、載置台領域に対する各直線1405〜1408の角度を利用することが考えられる。ところが、広角画像データ1103における各直線1405〜1408の角度をそのまま利用すると、荷物801の側面辺を特定するのが困難な場合がある。ここで、広角画像データは広角カメラであるカメラ部202によって撮影された画像データである。広角画像データでは、同じ荷物801が撮影されても、例えば、荷物領域1104や図14(d)の荷物領域1409のように、荷物801とカメラ部202との距離や角度等の関係に依存して、荷物領域の成す側面辺の角度が変わる。このため、広角画像データにおける各直線1405〜1408の角度をそのまま利用して、荷物801の側面辺を特定するのが困難となる。これに対し、本実施の形態では、以降の処理において、荷物801が直方体であり、直方体の各辺の交叉角度が直交座標系において3次元的に直角をなすことを利用する。   Here, when determining a straight line to be a side of the load 801 from straight lines 1405 to 1408, it is considered to use the angle of each straight line 1405 to 1408 with respect to the reference surface, for example, the mounting table area in the wide angle image data 1103 Be However, if the angles of the straight lines 1405 to 1408 in the wide-angle image data 1103 are used as they are, it may be difficult to specify the side of the package 801. Here, the wide-angle image data is image data captured by the camera unit 202 which is a wide-angle camera. In the wide-angle image data, even if the same package 801 is photographed, it depends on the relationship between the distance between the package 801 and the camera unit 202, the angle, etc., as in the package area 1104 and the package area 1409 in FIG. The angle of the side of the luggage area changes. For this reason, it is difficult to specify the side of the package 801 by using the angles of the straight lines 1405 to 1408 in the wide-angle image data as they are. On the other hand, in the present embodiment, in the subsequent processing, it is used that the package 801 is a rectangular parallelepiped, and the intersection angle of each side of the rectangular parallelepiped forms a three-dimensional right angle in the orthogonal coordinate system.

次いで、メイン制御部602は荷物801の底面の頂点候補となる点を抽出する(ステップS1305)。ステップS1305では、メイン制御部602は、抽出した各直線1405〜1408と直線1403、1404との図14(c)の交点1410〜1413を抽出する。メイン制御部602は各交点1410〜1413の直交座標系の3次元座標を算出する。メイン制御部602は、直交座標系の3次元座標[X,Y,Z]とカメラ画像座標[x、y]との変換式である下記式(4)を用いて各交点1410〜1413の直交座標系の3次元座標を算出する。
λ[xp, yp, 1]T = A[Rc|tc][X, Y, Z, 1]T … (4)
Next, the main control unit 602 extracts a point which is a vertex candidate of the bottom surface of the package 801 (step S1305). In step S1305, the main control unit 602 extracts the intersection points 1410 to 1413 in FIG. 14C of the extracted straight lines 1405 to 1408 and the straight lines 1403 and 1404. The main control unit 602 calculates three-dimensional coordinates of the orthogonal coordinate system of each of the intersection points 1410 to 1413. The main control unit 602 uses the following equation (4), which is a conversion equation between the three-dimensional coordinates [X, Y, Z] of the rectangular coordinate system and the camera image coordinates [x p , y p ], Calculate the three-dimensional coordinates of the orthogonal coordinate system of
λ [x p , y p , 1] T = A [R c | t c ] [X, Y, Z, 1] T (4)

式(4)は式(1)、式(3)、及び既知のキャリブレーションパラメータを用いで導出される。メイン制御部602は式(4)のx、yに各交点1410〜1413のカメラ画像座標を代入し、また、式(4)のZに載置台204の操作平面を意味する「0」を代入する。これにより、各交点1410〜1413の直交座標系の3次元座標が算出される。算出された各交点1410〜1413の直交座標系の3次元座標はRAM503に記録される。 Equation (4) is derived using Equation (1), Equation (3), and known calibration parameters. The main control unit 602 substitutes the camera image coordinates of each of the intersections 1410 to 1413 into x p and y p in the equation (4), and “0” which means the operation plane of the mounting table 204 in Z in the equation (4). Assign. Thereby, three-dimensional coordinates of the orthogonal coordinate system of the respective intersections 1410 to 1413 are calculated. The three-dimensional coordinates of the calculated orthogonal coordinate system of each of the intersection points 1410 to 1413 are recorded in the RAM 503.

次いで、メイン制御部602は側面辺の評価処理を行う(ステップS1306)。ステップS1306では、メイン制御部602は、図14(e)に示すように、各交点1410〜1413を起点とするベクトル線1414〜1417を広角画像データ1103に射影する。ベクトル線1414〜1417は、直交座標系において各交点1410〜1413からZ軸の正方向に垂直に伸びる直線がカメラ画像座標系に変換された直線である。ベクトル線1414〜1417は各交点1410〜1413の直交座標系の3次元座標及びベクトル線の長さを示す所定の高さHを式(4)に代入して導出される。   Next, the main control unit 602 performs a side edge evaluation process (step S1306). In step S1306, the main control unit 602 projects vector lines 1414 to 1417 starting from the intersections 1410 to 1413 on the wide-angle image data 1103, as shown in FIG. The vector lines 1414 to 1417 are straight lines obtained by converting straight lines extending perpendicularly to the positive direction of the Z-axis from the intersections 1410 to 1413 in the rectangular coordinate system into the camera image coordinate system. The vector lines 1414 to 1417 are derived by substituting the predetermined height H indicating the length of the vector line and the three-dimensional coordinates of the orthogonal coordinate system of each of the intersection points 1410 to 1413 into the equation (4).

また、ステップS1306では、メイン制御部602は、同じ交点を通過するベクトル線1414〜1417と直線1405〜1408との角度差を求め、角度差に基づいて直線1405〜1408の角度評価値を求める。ここで、荷物801が直方体である場合、荷物801の側面辺は載置台204の操作平面から直交座標系のZ正方向に垂直に伸びる直線となる。つまり、複数の直線1405〜1408のうち、同じ交点を通過するベクトル線との角度差がなく、上記ベクトル線と略平行な直線が荷物801の側面辺である可能性が極めて高い。本実施の形態では、例えば、直線1405,1406は、同じ交点1410,1411を通過するベクトル線1414,1415との角度差が極めて小さいので、角度評価値が高い。一方、直線1407,1408は、同じ交点1412,1413を通過するベクトル線1416,1417との角度差が大きいので、角度評価値が低い。   In step S1306, the main control unit 602 obtains an angle difference between the vector lines 1414 to 1417 passing through the same intersection and the straight lines 1405 to 1408, and obtains angle evaluation values of the straight lines 1405 to 1408 based on the angle difference. Here, when the load 801 is a rectangular solid, the side of the load 801 is a straight line extending perpendicularly from the operation plane of the mounting table 204 in the Z positive direction of the orthogonal coordinate system. That is, among the plurality of straight lines 1405-1408, there is no angular difference from the vector line passing through the same intersection, and it is extremely likely that the straight line substantially parallel to the vector line is the side of the load 801. In the present embodiment, for example, since the angle difference between the straight lines 1405 and 1406 and the vector lines 1414 and 1415 passing through the same intersection points 1410 and 1411 is extremely small, the angle evaluation value is high. On the other hand, in the straight lines 1407 and 1408, the angle evaluation value is low because the angle difference with the vector lines 1416 and 1417 passing the same intersection points 1412 and 1413 is large.

さらに、ステップS1306では、メイン制御部602は、3次元点群1106と各直線1405〜1408が通過する交点1410〜1413の直交座標系の3次元座標との距離差に基づいて各交点1410〜1413の頂点評価値を求める。例えば、交点1410〜1412が荷物801を示す領域の一部であるとすると、3次元点群1106との距離差は小さくなるので、交点1410〜1412の頂点評価値は高い。一方、交点1413が荷物801を示す領域ではないとすると、3次元点群1106との距離差が大きくなるので、交点1413の頂点評価値は低い。メイン制御部602は、各直線1405〜1408に対し、角度評価値及び頂点評価値に予め定めた重み付けを行い、重み付けを行った結果の和を3次元評価値として算出する。   Furthermore, in step S1306, the main control unit 602 determines each of the intersections 1410 to 1413 based on the difference in distance between the three-dimensional point group 1106 and the three-dimensional coordinates of the orthogonal coordinates Find the vertex evaluation value of. For example, assuming that the intersections 1410 to 1412 are part of the area indicating the load 801, the difference in distance from the three-dimensional point group 1106 is small, and the vertex evaluation values of the intersections 1410 to 1412 are high. On the other hand, if the intersection point 1413 is not a region indicating a package 801, the difference in distance from the three-dimensional point group 1106 is large, and therefore the vertex evaluation value of the intersection point 1413 is low. The main control unit 602 performs predetermined weighting on the angle evaluation value and the vertex evaluation value for each of the straight lines 1405 to 1408, and calculates the sum of the weighted results as a three-dimensional evaluation value.

その後、ステップS1306では、メイン制御部602は、直線1405〜1408のうち、3次元評価値が所定の閾値以上である直線に対し、画像評価値を求める。画像評価値は対象となる直線上に強くて長いエッジが存在するか否かを評価するための評価値である。本実施の形態では、Sobel法やCanny法等を用いて広角画像データ1103中のエッジを検出する。画像評価値は対象となる直線上に連続して存在するエッジの割合等から求められる。メイン制御部602は上述の処理によって得られた画像評価値、3次元評価値、さらに予め規定された重み付け定数W1,W2を下記式(5)に代入して形状評価値を算出する。
形状評価値=(W1×画像評価値)+(W2×3次元評価値) …(5)
After that, in step S1306, the main control unit 602 obtains an image evaluation value for the straight line of which the three-dimensional evaluation value is equal to or more than a predetermined threshold among the straight lines 1405 to 1408. The image evaluation value is an evaluation value for evaluating whether a strong and long edge exists on the target straight line. In the present embodiment, an edge in the wide-angle image data 1103 is detected using the Sobel method, the Canny method, or the like. The image evaluation value is obtained from the ratio of edges continuously present on the target straight line. The main control unit 602 calculates the shape evaluation value by substituting the image evaluation value, the three-dimensional evaluation value, and the weighting constants W1 and W2 defined in advance, which are obtained by the above-described processing, into the following equation (5).
Shape evaluation value = (W1 × image evaluation value) + (W2 × 3 dimensional evaluation value) (5)

次いで、メイン制御部602は直線1405〜1408の中から荷物801の側面辺を決定する(ステップS1307)。具体的に、メイン制御部602は直線1405〜1408のうち形状評価値が最も高い直線1405,1406を荷物801の側面辺に決定する。上述した処理により、検出した複数の直線が予め定めた形状と3次元的に類似するかを局所的に判定することで、図14(c)のように背景情報等に影響されて複数の直線が存在しても、荷物801の側面辺を決定することが可能となる。その後、メイン制御部602は、図14(f)に示す、直線1403と直線1405との交点1418、直線1404と直線1406との交点1419、及び直線1403と直線1404との交点1420を特定する。交点1418,1419,1420は荷物801の輪郭の底面を構成する頂点であり、交点1418,1419,1420と直線1403,1404により、荷物801の輪郭の底面辺が確定される。メイン制御部602は交点1418,1419,1420のカメラ画像座標及び直交座標系の3次元座標の両方を、荷物801の底面を構成する頂点情報としてRAM503に記録する。   Next, the main control unit 602 determines the side edge of the load 801 among the straight lines 1405 to 1408 (step S1307). Specifically, the main control unit 602 determines the straight line 1405 or 1406 having the highest shape evaluation value among the straight lines 1405 to 1408 as the side edge of the package 801. By locally determining whether a plurality of detected straight lines are three-dimensionally similar to a predetermined shape by the above-described processing, a plurality of straight lines are affected by background information etc. as shown in FIG. 14C. Even if there is, it is possible to determine the side of the package 801. Thereafter, the main control unit 602 identifies an intersection 1418 between the straight line 1403 and the straight line 1405, an intersection 1419 between the straight line 1404 and the straight line 1406, and an intersection 1420 between the straight line 1403 and the straight line 1404 shown in FIG. The intersection points 1418, 1419 and 1420 are apexes constituting the bottom of the outline of the package 801, and the bottom side of the outline of the outline of the package 801 is determined by the intersection points 1418, 1419 and 1420 and the straight lines 1403 and 1404. The main control unit 602 records both camera image coordinates of the intersection points 1418, 1419 and 1420 and three-dimensional coordinates of the orthogonal coordinate system in the RAM 503 as vertex information constituting the bottom of the package 801.

その後、メイン制御部602は、ステップS1308〜S1311において荷物801の輪郭を構成する上面辺の検出を行う。   After that, the main control unit 602 detects the top side that configures the outline of the load 801 in steps S1308 to S1311.

具体的に、メイン制御部602は広角画像データ1103から直線検出を行い、荷物801の上面辺の候補となる図14(g)の直線1421〜1424を抽出する(ステップS1308)。ステップS1308では、ステップS1304の処理と同様の処理が行われる。   Specifically, the main control unit 602 performs straight line detection from the wide-angle image data 1103 and extracts straight lines 1421 to 1424 in FIG. 14G that are candidates for the top side of the package 801 (step S1308). In step S1308, processing similar to that of step S1304 is performed.

次いで、メイン制御部602は、直線1421〜1424の中から2つの直線を任意に選択し(ステップS1309)、選択した直線の組み合わせの評価処理を行う(ステップS1310)。ステップS1309,S1310の処理は、直線1421〜1424の全ての組み合わせに対して行われ、以下では、一例として、直線1421,1423が選択された場合について説明する。このとき、側面辺に決定された直線1405と直線1421との図14(h)の交点1425、側面辺に決定された直線1406と直線1423との交点1426、及び直線1421と直線1423との交点1427が得られる。   Next, the main control unit 602 arbitrarily selects two straight lines from the straight lines 1421 to 1424 (step S1309), and performs evaluation processing of the combination of the selected straight lines (step S1310). The processes in steps S1309 and S1310 are performed on all combinations of straight lines 1421 to 1424. In the following, the case where straight lines 1421 and 1423 are selected will be described as an example. At this time, an intersection 1425 in FIG. 14 (h) between a straight line 1405 determined on the side and a straight line 1421, an intersection 1426 on a straight line 1406 and a straight line 1423 determined on the side and an intersection between a straight line 1421 and a straight line 1423 1427 is obtained.

ここで、仮に直線1421,1423が荷物801の上面辺である場合、直交座標系において、直線1421,1423と底面辺とが略平行となる。これを利用して、ステップS1310の評価処理では、メイン制御部602は直線1421,1423の組の角度評価値を求める。具体的に、メイン制御部602は、交点1425,1426を起点とし且つ底面辺に決定された直線1403,1404と平行な図14(i)のベクトル線1428,1429を広角画像データ1103に射影する。ベクトル線1428,1429は、ステップS1307の処理においてRAM503に記録された底面領域を構成する頂点情報及び所定のキャリブレーションパラメータを用いて導出される。角度評価値は、組となる直線の両方が同じ交点を通過するベクトル線と略平行である場合に高くなりまた、組となる直線の少なくとも一方が同じ交点を通過するベクトル線と略平行でない場合に低くなる。例えば、直線1421,1423の組では、直線1423が同じ交点1426を通過するベクトル線1429と略平行でないので、直線1421,1423の組の角度評価値は低くなる。   Here, if the straight lines 1421 and 1423 are the upper surface sides of the load 801, the straight lines 1421 and 1423 and the bottom surface sides become substantially parallel in the orthogonal coordinate system. Using this, in the evaluation process of step S1310, the main control unit 602 obtains an angle evaluation value of a set of straight lines 1421 and 1423. Specifically, the main control unit 602 projects the vector lines 1428 and 1429 of FIG. 14 (i) starting from the intersections 1425 and 1426 and parallel to the straight lines 1403 and 1404 determined on the bottom side on the wide-angle image data 1103. . The vector lines 1428 and 1429 are derived using the vertex information constituting the bottom area recorded in the RAM 503 in the process of step S1307 and predetermined calibration parameters. The angle evaluation value is high when both of the pair of straight lines are substantially parallel to the vector line passing through the same intersection, and when at least one of the pair of straight lines is not substantially parallel to the vector line passing through the same intersection To lower. For example, in the set of straight lines 1421 and 1423, since the straight line 1423 is not substantially parallel to the vector line 1429 passing through the same intersection point 1426, the angle evaluation value of the set of straight lines 1421 and 1423 is low.

また、ステップS1310の評価処理では、メイン制御部602は、直方体の各側面辺の長さが同じになるという特性を利用して頂点評価値を求める。頂点評価値を求めるために、メイン制御部602は、選択した2つの直線1421,1423が通過する交点1425〜1427の各カメラ座標を直交座標系の3次元座標に変換して、直交座標系における交点1425〜1427の各々のZ値を求める。本実施の形態では、求めた各Z値の差が所定の閾値以下である場合、各側面辺の長さが同じである直方体の形状に近いと判断され、頂点評価値が高くなる。一方、求めた各Z値の差が所定の閾値より大きい場合、直方体の形状ではないと判断され、頂点評価値が低くなる。   Further, in the evaluation process of step S1310, the main control unit 602 obtains a vertex evaluation value using the characteristic that the lengths of the side faces of the rectangular parallelepiped become the same. In order to obtain the vertex evaluation value, the main control unit 602 converts each camera coordinate of the intersection points 1425 to 1427 through which the two selected straight lines 1421 and 1423 pass into three-dimensional coordinates of the orthogonal coordinate system, and The Z value of each of the intersections 1425-1427 is determined. In the present embodiment, when the difference between the calculated Z values is equal to or less than a predetermined threshold value, it is determined that the shape is close to the shape of a rectangular parallelepiped having the same side length and the vertex evaluation value becomes high. On the other hand, when the difference between the obtained Z values is larger than the predetermined threshold value, it is determined that the shape is not a rectangular parallelepiped, and the vertex evaluation value becomes low.

さらに、ステップS1310の評価処理では、メイン制御部602は求めた角度評価値及び頂点評価値に対して予め定めた所定の重み付けを行い、重み付けを行った結果の和を求めて、3次元評価値を算出する。その後、メイン制御部602はステップS1306の処理と同様に、画像評価値を求め、式(5)に3次元評価値及び画像評価値を代入して直線1421,1423の組の形状評価値を算出する。メイン制御部602は直線1421〜1424の全ての組み合わせの形状評価値を算出する。   Furthermore, in the evaluation process of step S1310, the main control unit 602 performs predetermined weighting predetermined on the calculated angle evaluation value and vertex evaluation value, calculates the sum of the weighted results, and obtains the three-dimensional evaluation value. Calculate After that, the main control unit 602 obtains an image evaluation value, and substitutes the three-dimensional evaluation value and the image evaluation value into Expression (5) to calculate a shape evaluation value of a set of straight lines 1421 and 1423 as in the process of step S1306 Do. The main control unit 602 calculates shape evaluation values of all combinations of straight lines 1421 to 1424.

次いで、メイン制御部602は複数の直線1421〜1424の中から荷物801の上面辺を決定する(ステップS1311)。具体的に、メイン制御部602は形状評価値が最も高い組み合わせの直線を荷物801の上面辺に決定する。例えば、広角画像データ1103において検出したエッジのみで上面辺を決定する場合、荷物801の上面辺でないにも関わらず、エッジとしての評価が高い直線1423等が荷物801の上面辺として検出される可能性がある。これに対し、本実施の形態では、エッジ情報だけでなく、予め定めた直方体との類似性を評価することにより、図14(j)に示すように、荷物801の形状に合致した上面辺を検出することが可能となる。その後、メイン制御部602は本処理を終了する。   Next, the main control unit 602 determines the upper surface side of the load 801 among the plurality of straight lines 1421 to 1424 (step S1311). Specifically, the main control unit 602 determines the straight line of the combination having the highest shape evaluation value as the upper surface side of the package 801. For example, when the top side is determined based on only the edge detected in the wide-angle image data 1103, a straight line 1423 or the like having high evaluation as an edge may be detected as the top side of the load 801 although it is not the top side of the load 801 There is sex. On the other hand, in the present embodiment, by evaluating not only edge information but also similarity with a predetermined rectangular solid, as shown in FIG. It becomes possible to detect. Thereafter, the main control unit 602 ends the present process.

上述した実施の形態によれば、予め設定された形状情報に基づいて導出されたベクトル線1414〜1417,1428〜1429と検出された直線1405〜1408,1421〜1424との角度差に基づいて荷物801の輪郭となる直線が決定される。これにより、直線1405〜1408,1421〜1424の中から荷物801の形状と合致する直線を特定することができ、もって、広角画像データ1103に含まれる背景1105に起因する荷物801の輪郭の誤検知を抑制することができる。   According to the embodiment described above, the baggage is based on an angle difference between the vector lines 1414 to 1417 and 1428 to 1429 derived based on the preset shape information and the detected straight lines 1405 to 1408 and 1421 to 1424. A straight line to be an outline of 801 is determined. Accordingly, it is possible to specify a straight line that matches the shape of the load 801 among the straight lines 1405 to 1408 and 1421 to 1424. Therefore, false detection of the outline of the load 801 caused by the background 1105 included in the wide-angle image data 1103 Can be suppressed.

また、上述した実施の形態では、直交座標系におけるベクトル線1414〜1417,1428〜1429と検出された各直線1405〜1408,1421〜1424との角度差に基づいて荷物801の輪郭となる直線が決定される。これにより、荷物801とカメラ部202との距離や角度等の関係に依存して広角画像データにおける荷物領域の成す側面辺の角度が変わっても、直線1405〜1408,1421〜1424の中から荷物801の形状と合致する直線を特定することができる。   In the embodiment described above, the straight line that is the outline of the luggage 801 is based on the difference in angle between the vector lines 1414 to 1417 and 1428 to 1429 in the orthogonal coordinate system and the detected straight lines 1405 to 1408 and 1421 to 1424. It is determined. As a result, even if the angle of the side of the luggage area in the wide-angle image data changes depending on the relationship between the luggage 801 and the camera unit 202, such as the distance or angle, the luggage is selected from straight lines 1405 to 1408 and 1421 to 2424. A straight line that matches the shape of 801 can be identified.

さらに、上述した実施の形態では、広角画像データ1103には、少なくとも荷物801の2側面全体を示す情報が含まれる。これにより、荷物801の底面及び高さを測定することができ、もって、荷物801のサイズを計測することができる。   Furthermore, in the embodiment described above, the wide-angle image data 1103 includes information indicating at least the entire two sides of the package 801. Thereby, the bottom and height of the load 801 can be measured, and thus, the size of the load 801 can be measured.

上述した実施の形態では、広角画像データ1103にステップS1006において決定された輪郭及び該輪郭を構成する複数の頂点を重畳した重畳画像1204が表示される。これにより、ステップS1006において決定した荷物801の輪郭情報が妥当であるか否かをユーザが容易に判断することができる。   In the embodiment described above, the wide-angle image data 1103 displays the superimposed image 1204 in which the contour determined in step S1006 and the plurality of vertices constituting the contour are superimposed. Thus, the user can easily determine whether the outline information of the package 801 determined in step S1006 is valid.

以上、本発明について、上述した実施の形態を用いて説明したが、本発明は上述した実施の形態に限定されるものではない。例えば、直交座標系に変換した頂点A〜Fの外接矩形を求めて荷物801のサイズを計測してもよい。   As mentioned above, although this invention was demonstrated using embodiment mentioned above, this invention is not limited to embodiment mentioned above. For example, the size of the package 801 may be measured by obtaining a circumscribed rectangle of the vertices A to F converted into the orthogonal coordinate system.

また、上述した実施の形態では、側面辺及び上面辺の各検出において、角度評価値及び頂点評価値の両方を用いる場合について説明したが、角度評価値及び頂点評価値の何れか一方のみを用いて側面辺及び上面辺の各検出を行っても良い。   In the above-described embodiment, the case of using both the angle evaluation value and the vertex evaluation value in each detection of the side surface and the top surface side has been described, but only one of the angle evaluation value and the vertex evaluation value is used. Each of the side and top sides may be detected.

さらに、上述した実施の形態では、荷物801の形状は直方体に限られず、直交座標系において載置台204の操作平面との角度が既知な形状、例えば、多角錐であっても良い。   Furthermore, in the embodiment described above, the shape of the load 801 is not limited to a rectangular parallelepiped, and may be a shape whose angle with the operation plane of the mounting table 204 is known in the orthogonal coordinate system, for example, a polygonal pyramid.

上述した実施の形態では、図15に示すように、荷物の計測操作を行う担当者1501と顧客1502とが対面するような対面用端末として利用しても良い。   In the embodiment described above, as shown in FIG. 15, it may be used as a face-to-face terminal in which a person in charge 1501 who performs the measurement operation of the package and the customer 1502 face each other.

また、上述した実施の形態では、計測処理の開始等の操作を行う操作画面や、計測結果といった計測関連情報を載置台204の操作平面上に投影表示する場合について説明したが、これに限られない。例えば、LCDタッチパネル513や図示しない出力装置に上記操作画面や計測関連情報を表示しても良い。   In the embodiment described above, the operation screen for performing operations such as start of measurement processing and the case of projecting and displaying measurement related information such as the measurement result on the operation plane of the mounting table 204 have been described. Absent. For example, the operation screen or the measurement related information may be displayed on the LCD touch panel 513 or an output device (not shown).

上述した実施の形態では、最終確認画面1200において、重畳画像1204に含まれる頂点の位置の修正指示を受け付けても良い。   In the embodiment described above, on the final confirmation screen 1200, an instruction to correct the position of the vertex included in the superimposed image 1204 may be received.

上述した図10の処理では、広角画像データ1103における背景1105の影響を受けることなく、荷物801の輪郭を検出することが可能である。ところが、例えば、図16(a)に示すように、荷物801に該荷物801の上面辺と略平行な模様1601が存在すると、図16(b)に示すように、模様1601を荷物801の上面辺として誤検出してしまうことがある。これに対し、本実施の形態では、最終確認画面1200において、重畳画像1204に含まれる頂点の位置の修正指示を受け付ける。   In the process of FIG. 10 described above, it is possible to detect the outline of the luggage 801 without being affected by the background 1105 in the wide-angle image data 1103. However, for example, as shown in FIG. 16A, when a pattern 1601 substantially parallel to the upper surface side of the load 801 is present in the load 801, as shown in FIG. It may be falsely detected as a side. On the other hand, in the present embodiment, on final confirmation screen 1200, an instruction to correct the position of the vertex included in superimposed image 1204 is accepted.

図17は、図10の荷物サイズ計測処理の変形例の手順を示すフローチャートである。図17の処理でも、UI画面901が載置台204の操作平面上に投影表示されていることを前提とする。   FIG. 17 is a flowchart showing the procedure of a variation of the package size measurement process of FIG. Also in the process of FIG. 17, it is assumed that the UI screen 901 is projected and displayed on the operation plane of the mounting table 204.

図17において、メイン制御部602はステップS1001〜S1010の処理を行う。   In FIG. 17, the main control unit 602 performs the processing of steps S1001 to S1010.

ステップS1010において、上記ユーザ操作が終了ボタン1203のジェスチャー操作であるとき、メイン制御部602は本処理を終了する。また、ステップS1010において、上記ユーザ操作が再計測ボタン1202のジェスチャー操作であるとき、メイン制御部602はステップS1002の処理に戻る。   In step S1010, when the user operation is a gesture operation of the end button 1203, the main control unit 602 ends the present process. Further, in step S1010, when the user operation is a gesture operation of the re-measurement button 1202, the main control unit 602 returns to the process of step S1002.

ステップS1010において、上記ユーザ操作が輪郭情報1201における頂点の位置の修正を指示するジェスチャー操作であるとき、メイン制御部602は修正処理を行う(ステップS1701)。例えば、ユーザが、図18(a)及び図18(b)のように、頂点Dの位置を修正した場合、荷物801の形状が直方体であることを利用して、頂点Dと同じ高さとなる他の頂点を連動して修正する。具体的に、直交座標系において、上面辺を構成する頂点E,Fが頂点Dと同じ高さになるように、頂点Dに連動させて頂点E,Fの位置を修正する(例えば、図18(c)参照)。より具体的に、メイン制御部602は、式(4)の関係を利用し、底面辺を構成する頂点Aの直交座標系の3次元座標と、頂点Dのカメラ画像座標とを参照することにより、修正後の頂点Dの直交座標系の3次元座標を求める。さらに、メイン制御部602は、頂点E、Fが頂点Dと同じ高さとなった時のカメラ画像座標を同様に式(4)の関係によって求め、求めた結果を用いて頂点E,Fの位置を修正する。その後、メイン制御部602はステップS1005に戻り、荷物801の再計測を行う。   In step S1010, when the user operation is a gesture operation instructing correction of the position of the vertex in the contour information 1201, the main control unit 602 performs correction processing (step S1701). For example, when the user corrects the position of the vertex D as shown in FIGS. 18A and 18B, the height of the package 801 is the same as that of the vertex D by utilizing the rectangular parallelepiped shape. Correct other vertices in conjunction. Specifically, in the orthogonal coordinate system, the positions of the vertices E and F are corrected in conjunction with the vertex D such that the vertices E and F constituting the upper surface side become the same height as the vertex D (for example, FIG. 18). (C)). More specifically, the main control unit 602 refers to the three-dimensional coordinates of the orthogonal coordinate system of the vertex A configuring the bottom side and the camera image coordinates of the vertex D using the relationship of equation (4). The three-dimensional coordinates of the orthogonal coordinate system of the vertex D after correction are obtained. Furthermore, the main control unit 602 similarly determines camera image coordinates when the vertices E and F become the same height as the vertex D according to the relationship of equation (4), and uses the results to determine the positions of the vertices E and F Correct the After that, the main control unit 602 returns to step S1005, and performs remeasurement of the package 801.

上述した実施の形態では、重畳画像1204において荷物801の頂点Dの修正指示を受け付けた際に頂点Dと荷物801の上面を構成する頂点E,Fが形状情報に基づいて修正される。すなわち、頂点D〜Fで構成される荷物801の上面の輪郭を修正する際にユーザが頂点D〜Fの何れか1つの修正指示を行うだけで、カメラスキャナ101は荷物801の上面の輪郭の修正指示として受け付ける。これにより、ユーザによる修正指示の手間を軽減することができる。   In the embodiment described above, when a correction instruction of the vertex D of the package 801 is received in the superimposed image 1204, the vertex D and the vertices E and F constituting the upper surface of the package 801 are corrected based on the shape information. That is, the camera scanner 101 is configured to adjust the outline of the upper surface of the package 801 only when the user gives one of the correction instructions of the vertices D to F when correcting the outline of the upper surface of the package 801 formed of the vertices D to F. Accept as a correction instruction. As a result, it is possible to reduce the time and effort of the user's correction instruction.

上述した実施の形態では、荷物801の形状は直方体に限られず、直交座標系において載置台204の操作平面との角度が予め与えているのであれば、上記角度に合うように連動して修正してもよい。   In the embodiment described above, the shape of the package 801 is not limited to a rectangular parallelepiped, and if the angle with the operation plane of the mounting table 204 is given in advance in the orthogonal coordinate system, it is interlocked and corrected to fit the above angle. May be

本発明は、上述の実施の形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、該システム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出して実行する処理でも実現可能である。また、本発明は、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。   The present invention supplies a program that implements one or more functions of the above-described embodiments to a system or apparatus via a network or storage medium, and one or more processors in a computer of the system or apparatus read the program. It can also be realized by the process to be executed. The present invention can also be implemented by a circuit (eg, an ASIC) that implements one or more functions.

101 カメラスキャナ
207 プロジェクタ
513 LCDタッチパネル
602 メイン制御部
603 画像取得部
608 物体検知部
610 物体計測部
1103 広角画像データ
1414〜1417,1428,1429 ベクトル線
1405〜1408,1421〜1424 直線
1204 重畳画像
DESCRIPTION OF SYMBOLS 101 Camera scanner 207 Projector 513 LCD touch panel 602 Main control part 603 Image acquisition part 608 Object detection part 610 Object measurement part 1103 Wide angle image data 1414-1417,1428, 1429 Vector line 1405-1408, 1421-1424 Straight line 1204 Superimposed image

Claims (8)

撮影した物体の形状を測定する物体形状測定装置であって、
前記撮影した物体の画像データを取得する取得手段と、
前記画像データから直線を検出する直線検出手段と、
前記直線検出手段によって検出された複数の直線の中から予め設定された形状情報に基づいて前記物体の輪郭となる直線を決定する決定手段とを備え、
前記決定手段は、前記形状情報に基づいて導出されたベクトル線と前記検出された各直線との角度差に基づいて前記物体の輪郭となる直線を決定することを特徴とする物体計測装置。
An object shape measuring apparatus for measuring the shape of a photographed object, comprising:
Acquisition means for acquiring image data of the photographed object;
Straight line detection means for detecting a straight line from the image data;
And determining means for determining a straight line to be an outline of the object based on shape information set in advance among the plurality of straight lines detected by the straight line detecting means,
The object measuring apparatus according to claim 1, wherein the determining means determines a straight line to be an outline of the object based on an angle difference between the vector line derived based on the shape information and each of the detected straight lines.
前記画像データにおける座標系を、前記物体が置かれた載置台を含む平面をXY平面とし且つ該XY平面に直交した方向をZ方向とする直交座標系に変換する変換手段を更に備え、
前記決定手段は、前記直交座標系における前記ベクトル線と前記検出された各直線との角度差に基づいて前記物体の輪郭となる直線を決定することを特徴とする請求項1記載の物体計測装置。
The image processing apparatus further comprises conversion means for converting a coordinate system in the image data into an orthogonal coordinate system in which a plane including the mounting table on which the object is placed is an XY plane and a direction orthogonal to the XY plane is a Z direction.
The object measuring apparatus according to claim 1, wherein the determining means determines a straight line to be an outline of the object based on an angular difference between the vector line in the orthogonal coordinate system and each of the detected straight lines. .
前記画像データには、少なくとも前記物体の2側面全体を示す情報が含まれることを特徴とする請求項1又は2記載の物体計測装置。   The object measuring apparatus according to claim 1, wherein the image data includes information indicating at least two entire sides of the object. 前記画像データに前記決定手段によって決定された直線で構成される輪郭を重畳した重畳画像を表示する表示手段を更に備えることを特徴とする請求項1乃至3のいずれか1項に記載の物体計測装置。   The object measurement according to any one of claims 1 to 3, further comprising display means for displaying a superimposed image obtained by superimposing an outline constituted by a straight line determined by the determination means on the image data. apparatus. 前記重畳画像における前記輪郭の修正指示を受け付けることを特徴とする請求項4記載の物体計測装置。   The object measuring device according to claim 4, wherein the correction instruction of the contour in the superimposed image is received. 前記重畳画像において前記物体の一部の輪郭の修正指示を受け付けた際に前記一部の輪郭と前記物体の或る面を構成する他の輪郭を前記形状情報に基づいて修正することを特徴とする請求項5記載の物体計測装置。   When the correction instruction of the contour of the part of the object is received in the superimposed image, the contour of the part and another contour constituting a certain surface of the object are corrected based on the shape information. The object measuring device according to claim 5. 撮影した物体の形状を測定する物体形状測定装置の制御方法であって、
前記撮影した物体の画像データを取得する取得ステップと、
前記画像データから直線を検出する直線検出ステップと、
前記直線検出ステップで検出された複数の直線の中から予め設定された形状情報に基づいて前記物体の輪郭となる直線を決定する決定ステップとを有し、
前記決定ステップは、前記形状情報に基づいて導出されたベクトル線と前記検出された各直線との角度差に基づいて前記物体の輪郭となる直線を決定することを特徴とする物体計測装置の制御方法。
A control method of an object shape measuring apparatus for measuring a shape of a photographed object,
An acquisition step of acquiring image data of the photographed object;
A straight line detection step of detecting a straight line from the image data;
Determining a straight line to be an outline of the object based on shape information set in advance among the plurality of straight lines detected in the straight line detecting step;
The control of an object measuring apparatus characterized in that the determining step determines a straight line to be an outline of the object based on an angle difference between the vector line derived based on the shape information and each of the detected straight lines. Method.
撮影した物体の形状を測定する物体形状測定装置の制御方法をコンピュータに実行させるプログラムであって、
前記物体形状測定装置の制御方法は、
前記撮影した物体の画像データを取得する取得ステップと、
前記画像データから直線を検出する直線検出ステップと、
前記直線検出ステップで検出された複数の直線の中から予め設定された形状情報に基づいて前記物体の輪郭となる直線を決定する決定ステップとを有し、
前記決定ステップは、前記形状情報に基づいて導出されたベクトル線と前記検出された各直線との角度差に基づいて前記物体の輪郭となる直線を決定することを特徴とするプログラム。
A program that causes a computer to execute a control method of an object shape measuring apparatus that measures the shape of a photographed object.
The control method of the object shape measuring apparatus is
An acquisition step of acquiring image data of the photographed object;
A straight line detection step of detecting a straight line from the image data;
Determining a straight line to be an outline of the object based on shape information set in advance among the plurality of straight lines detected in the straight line detecting step;
The program is characterized in that the determining step determines a straight line to be an outline of the object based on an angle difference between the vector line derived based on the shape information and each of the detected straight lines.
JP2017232086A 2017-12-01 2017-12-01 Object shape measurement device and method for controlling the same, and program Pending JP2019101753A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017232086A JP2019101753A (en) 2017-12-01 2017-12-01 Object shape measurement device and method for controlling the same, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017232086A JP2019101753A (en) 2017-12-01 2017-12-01 Object shape measurement device and method for controlling the same, and program

Publications (1)

Publication Number Publication Date
JP2019101753A true JP2019101753A (en) 2019-06-24

Family

ID=66973805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017232086A Pending JP2019101753A (en) 2017-12-01 2017-12-01 Object shape measurement device and method for controlling the same, and program

Country Status (1)

Country Link
JP (1) JP2019101753A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023106472A1 (en) * 2021-12-09 2023-06-15 주식회사 커브서프 Contour point transformation apparatus and method therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023106472A1 (en) * 2021-12-09 2023-06-15 주식회사 커브서프 Contour point transformation apparatus and method therefor

Similar Documents

Publication Publication Date Title
US10456918B2 (en) Information processing apparatus, information processing method, and program
US10310675B2 (en) User interface apparatus and control method
JP6733267B2 (en) Information processing program, information processing method, and information processing apparatus
TWI531929B (en) Identifying a target touch region of a touch-sensitive surface based on an image
TWI498580B (en) Length measuring method and length measuring apparatus
JP2017168077A (en) Image processing method, display device, and inspection system
WO2011162388A4 (en) Point group data processing device, point group data processing system, point group data processing method, and point group data processing program
KR102354299B1 (en) Camera calibration method using single image and apparatus therefor
US9342189B2 (en) Information processing apparatus and information processing method for obtaining three-dimensional coordinate position of an object
US10254893B2 (en) Operating apparatus, control method therefor, and storage medium storing program
US20170228092A1 (en) Touch region projection onto touch-sensitive surface
CN105391889A (en) Data processing apparatus, data processing system, and control method for data processing apparatus
JP2016103137A (en) User interface system, image processor and control program
US9924066B2 (en) Image processing apparatus, information processing method, and program
US9979858B2 (en) Image processing apparatus, image processing method and program
JP2019020307A (en) Measurement device, measurement device control method, and program
JP2019101753A (en) Object shape measurement device and method for controlling the same, and program
JP2019106008A (en) Estimation device, estimation method, and estimation program
JP2018018308A (en) Information processing device and control method and computer program therefor
JP6643825B2 (en) Apparatus and method
JP2019120618A (en) Object measuring device, control method thereof, and program
US10373324B2 (en) Measurement apparatus that scans original, method of controlling the same, and storage medium
JP6624861B2 (en) Image processing apparatus, control method, and program
JP2016127567A (en) Image processor, information processing method and program
JP2017117372A (en) Operation device and control method of the same, and program