KR20180046361A - Method and System for loading optimization based on depth sensor - Google Patents

Method and System for loading optimization based on depth sensor Download PDF

Info

Publication number
KR20180046361A
KR20180046361A KR1020170133952A KR20170133952A KR20180046361A KR 20180046361 A KR20180046361 A KR 20180046361A KR 1020170133952 A KR1020170133952 A KR 1020170133952A KR 20170133952 A KR20170133952 A KR 20170133952A KR 20180046361 A KR20180046361 A KR 20180046361A
Authority
KR
South Korea
Prior art keywords
loaded
size
loading
plane
point cloud
Prior art date
Application number
KR1020170133952A
Other languages
Korean (ko)
Inventor
김범진
박상준
장성호
박재영
조종윤
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Publication of KR20180046361A publication Critical patent/KR20180046361A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • G06F17/5009
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Development Economics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Geometry (AREA)
  • Game Theory and Decision Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

Provided is a method for measuring a size of a target object to be loaded by using a low-cost depth sensor without using a high-cost three-dimensional scanner and performing loading optimization for the target object to be loaded based on the measured size. According to one embodiment of the present invention, a method for loading optimization based on a depth sensor, which is performed by a computing device, comprises the following steps of: acquiring a depth image for a target object to be loaded, wherein the depth image is generated by the depth sensor; generating a three-dimensional point cloud with respect to the target object to be loaded based on the depth image; measuring a size of the target object to be loaded based on the three-dimensional point cloud; and simulation-loading of the target object to be loaded in a container based on the measured size and a predefined size of the container.

Description

깊이 센서 기반의 적재 최적화 방법 및 시스템{Method and System for loading optimization based on depth sensor}TECHNICAL FIELD [0001] The present invention relates to a depth sensor-based loading optimization method and system,

본 발명은 깊이 센서 기반의 적재 최적화 방법 및 시스템에 관한 것이다. 보다 자세하게는, 깊이 센서를 통해 획득된 적재 대상 객체에 대한 깊이 영상을 이용하여 상기 적재 대상 객체의 크기를 측정하고, 측정된 크기를 이용하여 적재 시뮬레이션을 수행하며, 상기 적재 시뮬레이션의 결과를 기초로 최적의 적재 방법을 결정하는 방법 및 상기 방법을 수행하는 시스템에 관한 것이다.The present invention relates to a depth sensor based loading optimization method and system. More specifically, the size of the object to be loaded is measured using a depth image of the object to be loaded obtained through the depth sensor, load simulation is performed using the measured size, and based on the result of the load simulation A method for determining an optimal loading method, and a system for performing the method.

제품의 길이, 면적, 체적 등의 크기 정보가 없는 경우에는, 적재를 최적화하는 시뮬레이션이 불가능하다. 특히, 이커머스(e-commerce) 창고의 경우, 다양한 제품을 취급하는 것이 일반적이기 때문에, 제품의 크기 정보가 없는 경우가 많다.If there is no size information such as product length, area, volume, etc., it is impossible to simulate loading optimization. Especially, in the case of e-commerce warehouses, since it is common to handle various products, there is often no information about size of products.

제품의 크기 정보를 획득하는 하나의 방편으로 3차원 스캐너가 이용될 수 있다. 3차원 스캐너는 스캔을 통해 생성된 제품의 3차원 공간 정보를 이용하여 제품의 크기를 측정하는 장치이다. 특히, 많이 이용되는 스캐너는 3차원 레이저 스캐너이다. 3차원 레이저 스캐너는 레이저를 해당 제품에 주사하고 반사되어 돌아오는 레이저를 수신하여 정밀한 3차원 공간 정보를 생성하기 때문에, 정확한 크기 측정이 가능하다. 따라서, 3차원 레이저 스캐너는 정밀 부품의 치수 분석, 공정 중 검사, 제품 역설계 등과 같이 정확한 크기 측정이 요구되는 산업 분야에서 폭넓게 활용되고 있다.A three-dimensional scanner can be used as a way to obtain size information of a product. The 3D scanner is a device for measuring the size of a product using three-dimensional spatial information of a product generated through scanning. Particularly, a commonly used scanner is a three-dimensional laser scanner. The 3D laser scanner scans the laser product and receives the returning laser to generate precise three-dimensional spatial information, so accurate size measurement is possible. Therefore, 3D laser scanners are widely used in industrial fields where accurate size measurement is required, such as dimensional analysis of precision parts, in-process inspection, and product reverse design.

그러나, 상술한 3차원 레이저 스캐너는 측정 결과의 정확성에 장점이 있는 반면 제품의 크기 측정에 소요되는 측정 시간이 길고, 무엇보다 3차원 레이저 스캐너의 가격이 매우 고가라는 단점이 존재한다. 예를 들어, 일본의 ViBRA, 미국의 CubiScan 등 3차원 레이저 스캐너의 가격은 낮게는 3천만원 높게는 1억원 이상을 호가한다.However, while the above-described three-dimensional laser scanner has advantages in accuracy of the measurement result, there is a disadvantage that the measurement time required for measuring the size of the product is long and the price of the three-dimensional laser scanner is extremely high. For example, the price of 3D laser scanners such as ViBRA in Japan and CubiScan in the US is lower than KRW 30 million and more than KRW 100 million.

이에 따라, 저가의 측정 장비를 이용하여 복수의 제품에 대한 크기 정보를 실시간으로 측정하고, 측정된 크기 정보를 이용하여 복수의 제품에 대한 적재 효율성을 극대화할 수 있는 방법이 요구된다.Accordingly, there is a need for a method for measuring size information of a plurality of products in real time using a low-cost measuring device and maximizing the loading efficiency for a plurality of products using the measured size information.

한국공개특허 제2011-0078566호 (2011.07.07 공개)Korean Published Patent No. 2011-0078566 (Published July 7, 2011)

본 발명이 해결하고자 하는 기술적 과제는, 고가의 3차원 스캐너를 이용하지 않고 적재 대상 객체에 대한 적재 최적화를 수행하는 방법 및 그 방법을 수행하는 시스템을 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a method for performing loading optimization on a target object without using an expensive three-dimensional scanner and a system for performing the method.

본 발명이 해결하고자 하는 다른 기술적 과제는, 저가의 깊이 센서를 통해 생성된 깊이 영상을 이용하여 적재 대상 객체의 크기를 신속하고 정확하게 측정하는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.Another object of the present invention is to provide a method for quickly and accurately measuring the size of a target object to be loaded using a depth image generated through a low-cost depth sensor and an apparatus for performing the method.

본 발명이 해결하고자 하는 또 다른 기술적 과제는, 적재 대상 객체의 크기 정보를 기초로 복수의 적재 대상 객체에 대한 최적의 적재 순서 및 배치 방향을 결정하는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.Another object of the present invention is to provide a method of determining an optimal loading order and a loading direction for a plurality of objects to be loaded based on size information of the object to be loaded and an apparatus for performing the method .

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The technical objects of the present invention are not limited to the above-mentioned technical problems, and other technical subjects not mentioned can be clearly understood by those skilled in the art from the following description.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 깊이 센서 기반의 적재 최적화 방법은, 컴퓨팅 장치에 의해 수행되는 깊이 센서 기반의 적재 최적화 방법에 있어서, 적재 대상 객체에 대한 깊이 영상을 획득하되, 상기 깊이 영상은 상기 깊이 센서를 통해 생성된 영상인 것인, 단계, 상기 깊이 영상을 기초로 상기 적재 대상 객체에 대한 3차원 점군을 생성하는 단계, 상기 3차원 점군을 기초로 상기 적재 대상 객체의 크기를 측정하는 단계 및 상기 측정된 크기 및 기 정의된 컨테이너의 크기를 기초로, 상기 적재 대상 객체를 상기 컨테이너에 모의 적재하는 단계를 포함할 수 있다.According to an aspect of the present invention, there is provided a depth sensor-based loading optimizing method based on a depth sensor, the depth optimizing method comprising: acquiring a depth image of a loading object; Wherein the depth image is generated through the depth sensor; generating a three-dimensional point cloud for the object to be loaded based on the depth image; Measuring the size of the object, and loading the object to be loaded into the container based on the measured size and the size of the predefined container.

일 실시예에서, 상기 적재 대상 객체는 제1 크기를 갖는 제1 적재 대상 객체 및 상기 제1 크기와 다른 제2 크기를 갖는 제2 적재 대상 객체를 포함하되, 상기 적재 대상 객체의 크기를 측정하는 단계는, 상기 제1 적재 대상 객체에 대한 3차원 점군을 기초로, 상기 제1 적재 대상 객체의 크기를 측정하는 단계 및 상기 제2 적재 대상 객체에 대한 3차원 점군을 기초로, 상기 제2 적재 대상 객체의 크기를 측정하는 단계를 포함할 수 있다.In one embodiment, the object to be loaded includes a first object to be loaded having a first size and a second object to be loaded having a second size different from the first size, wherein the size of the object to be loaded Wherein the step of measuring a size of the first object to be loaded includes the steps of measuring a size of the first object to be loaded on the basis of a three-dimensional point cloud of the first object to be loaded, And measuring the size of the target object.

일 실시예에서, 상기 깊이 영상을 획득하는 단계는, 제1 각도로 상기 적재 대상 객체를 스캔하여 생성된 제1 깊이 영상을 획득하는 단계 및 상기 제1 각도와 다른 제2 각도로 상기 적재 대상 객체를 스캔하여 생성된 제2 깊이 영상을 획득하는 단계를 포함하고, 상기 3차원 점군을 생성하는 단계는, 상기 제1 깊이 영상을 기초로 제1 3차원 점군을 생성하고, 상기 제2 깊이 영상을 기초로 제2 3차원 점군을 생성하는 단계 및 상기 제1 3차원 점군 및 상기 제2 3차원 점군을 정합하여, 상기 3차원 점군을 생성하는 단계를 포함할 수 있다.In one embodiment, the acquiring of the depth image may include acquiring a first depth image generated by scanning the object to be loaded at a first angle, and acquiring the first depth image at a second angle different from the first angle, Wherein the step of generating the 3D point cloud includes generating a first 3D point cloud based on the first depth image and generating the second 3D depth cloud based on the second depth image, Generating a second three-dimensional point cloud as a basis and generating the three-dimensional point cloud by matching the first three-dimensional point cloud and the second three-dimensional point cloud.

일 실시예에서, 상기 적재 대상 객체는 복수이되, 상기 3차원 점군을 생성하는 단계는, 상기 복수의 적재 대상 객체 각각에 대한 3차원 점군을 생성하는 단계를 포함하며, 상기 적재 대상 객체의 크기를 측정하는 단계는, 상기 복수의 적재 대상 객체 중에서, 제1 개수의 적재 대상 객체를 제1 그룹으로 그룹핑하고, 제2 개수의 적재 대상 객체를 제2 그룹으로 그룹핑하는 단계, 상기 제1 그룹에 소속된 각각의 적재 대상 객체에 대한 3차원 점군을 병합하여 제1 3차원 점군을 생성하는 단계, 상기 제2 그룹에 소속된 각각의 적재 대상 객체에 대한 3차원 점군을 병합하여 제2 3차원 점군을 생성하는 단계 및 상기 제1 3차원 점군을 기초로 상기 제1 그룹에 소속된 적재 대상 객체의 전체 크기를 측정하고, 상기 제2 3차원 점군을 기초로 상기 제2 그룹에 소속된 적재 대상 객체의 전체 크기를 측정하는 단계를 포함할 수 있다.In one embodiment, the loading target objects are plural, and the generating of the three-dimensional point cloud group includes generating a three-dimensional point cloud for each of the plurality of loading target objects, wherein the size of the loading target object is Wherein the measuring includes grouping a first number of objects to be loaded into a first group and a second number of objects to be loaded into a second group among the plurality of objects to be loaded, Dimensional point cloud by merging a three-dimensional point cloud for each object to be loaded, generating a first three-dimensional point cloud by merging the three-dimensional point clouds for each object to be loaded, Dimensional point group, and measuring a total size of the object to be loaded belonging to the first group based on the first three-dimensional point group, It may comprise the step of measuring the overall size of the object.

일 실시예에서, 상기 깊이 영상은 기준면으로부터 기 설정된 높이에 설치된 깊이 센서를 통해 생성된 영상이되, 상기 적재 대상 객체의 크기를 측정하는 단계는, 상기 적재 대상 객체가 위치하지 않은 상태의 상기 기준면에 대한 깊이 영상을 기초로 상기 기준면에 대한 3차원 점군을 생성하는 단계, 상기 기준면에 대한 3차원 점군에서 상기 기준면을 가리키는 제1 평면을 검출하는 단계, 상기 적재 대상 객체에 대한 3차원 점군에서 상기 제1 평면에 평행한 제2 평면을 검출하는 단계 및 상기 제1 평면과 상기 제2 평면과의 거리를 기초로 상기 적재 대상 객체의 높이를 결정하는 단계를 포함할 수 있다.In one embodiment, the depth image is an image generated through a depth sensor installed at a preset height from a reference plane, and the step of measuring the size of the object to be loaded includes: Generating a three-dimensional point cloud with respect to the reference plane based on a depth image of the object, detecting a first plane pointing to the reference plane in a three-dimensional point cloud with respect to the reference plane, Detecting a second plane parallel to the first plane, and determining a height of the object to be loaded based on the distance between the first plane and the second plane.

일 실시예에서, 상기 적재 대상 객체의 크기를 측정하는 단계는, 상기 3차원 점군에서 상기 적재 대상 객체의 제1 단면에 대응되는 제1 평면을 추출하는 단계, 상기 제1 평면을 2차원 좌표평면 상으로 이동시키는 제1 회전변환을 수행하는 단계 및 상기 2차원 좌표평면 상에서 측정된 상기 제1 평면의 크기를 기초로 상기 적재 대상 객체의 크기를 결정하는 단계를 포함할 수 있다.In one embodiment, the step of measuring the size of the object to be loaded includes the steps of: extracting a first plane corresponding to a first end face of the object to be loaded in the three-dimensional point cloud; And a step of determining the size of the object to be loaded based on the size of the first plane measured on the two-dimensional coordinate plane.

일 실시예에서, 상기 적재 대상 객체는 적어도 일부는 크기가 서로 다른 복수의 객체를 포함하고, 상기 적재 대상 객체를 상기 컨테이너에 모의 적재하는 단계는, 상기 복수의 객체에 대한 적재 순서 및 배치 방향 중 적어도 하나를 변경해가며 제1 모의 적재 및 제2 모의 적재를 수행하는 단계를 포함하고, 상기 제1 모의 적재와 상기 제2 모의 적재의 비교 결과에 기초하여, 최적의 적재 순서 및 배치 방향을 결정하는 단계를 더 포함할 수 있다.In one embodiment, the object to be loaded includes at least a plurality of objects having different sizes, and the step of loading the object to be loaded in the container includes loading the objects in the loading order and the loading direction And performing a first simulation loading and a second simulation loading while changing at least one of the first simulation load and the second simulation load based on a result of comparison between the first simulation load and the second simulation load Step < / RTI >

상기 기술적 과제를 해결하기 위한, 본 발명의 다른 실시예에 따른 깊이 센서 기반의 적재 최적화 시스템은, 적재 대상 객체에 대한 깊이 영상을 생성하는 깊이 센서, 상기 깊이 영상을 기초로 상기 적재 대상 객체에 대한 3차원 점군을 생성하고, 상기 3차원 점군을 기초로 상기 적재 대상 객체의 크기를 측정하는 3차원 계측 장치 및 상기 적재 대상 객체의 크기 및 컨테이너의 크기를 기초로 모의 적재를 수행하고, 상기 모의 적재의 결과로 상기 적재 대상 객체의 최적의 적재 순서 및 배치 방향을 결정하는 적재 최정화 장치를 포함할 수 있다.According to another aspect of the present invention, there is provided a depth-sensor-based loading optimization system including a depth sensor for generating a depth image for a target object to be loaded, A three-dimensional measuring apparatus for generating a three-dimensional point cloud and measuring the size of the object to be loaded on the basis of the three-dimensional point cloud, performing a simulated loading based on the size of the object to be loaded and the size of the container, And a stacking-maximizing device for determining an optimal stacking order and a placement direction of the object to be stacked as a result of the stacking process.

상기 기술적 과제를 해결하기 위한, 본 발명의 또 다른 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 적재 대상 객체에 대한 깊이 영상을 획득하되, 상기 깊이 영상은 상기 깊이 센서를 통해 생성된 영상인 것인, 단계, 상기 깊이 영상을 기초로 상기 적재 대상 객체에 대한 3차원 점군을 생성하는 단계, 상기 3차원 점군을 기초로 상기 적재 대상 객체의 크기를 측정하는 단계 및 상기 측정된 크기 및 기 정의된 컨테이너의 크기를 기초로, 상기 적재 대상 객체를 상기 컨테이너에 모의 적재하는 단계를 실행시키기 위하여 기록 매체에 저장될 수 있다.According to another aspect of the present invention, there is provided a computer program for acquiring a depth image of a target object to be loaded, the depth image being generated by the depth sensor, , Generating a three-dimensional point cloud for the object to be loaded on the basis of the depth image, measuring the size of the object to be loaded based on the three-dimensional point cloud, Based on the size of the container defined, loading the object to be loaded into the container.

상술한 본 발명의 실시예에 따르면, 저가의 깊이 센서를 이용하여 다양한 제품의 크기가 측정된다. 또한, 측정된 크기에 기초한 적재 시뮬레이션을 통해 최적의 적재 방법이 제공된다. 이를 통해, 제품의 적재와 관련되어 요구되는 제반 비용이 크게 절감될 수 있다.According to the embodiment of the present invention described above, the size of various products is measured using a low-cost depth sensor. An optimal loading method is also provided through loading simulation based on the measured size. This can significantly reduce the overall cost associated with loading the product.

특히, 이-커머스 물류 관리 등의 비즈니스에 본 발명이 적용되는 경우, 적재/운반 효율이 향상됨에 따라, 제반 관리 비용이 크게 절감될 수 있다. 더욱이, 저가의 깊이 센서와 컴퓨팅 장치 외에 별도의 시스템 구축 비용이 요구되지 않는 바, 이-커머스 사업자들은 최소 비용 투자를 통해 최대의 효과를 얻을 수 있다.Particularly, when the present invention is applied to a business such as e-commerce logistics management, as the loading / transportation efficiency is improved, the overall management cost can be greatly reduced. In addition, there is no need for a separate system construction cost besides a low-cost depth sensor and a computing device, and e-commerce providers can obtain the maximum effect through minimum cost investment.

또한, 깊이 센서는 3차원 스캐너에 비해 고속으로 깊이 영상을 제공할 수 있는 바, 신속하게 제품의 크기 측정이 가능하다. 이에 따라, 실시간으로 제품의 크기 측정 및 적재 시뮬레이션 기능이 제공될 수 있다.In addition, since the depth sensor can provide a depth image at a higher speed than a three-dimensional scanner, the size of the product can be measured quickly. Accordingly, the size measurement and the load simulation function of the product can be provided in real time.

또한, 3차원 점군 중에서 객체의 단면에 대응되는 일부 점군이 추출되고, 2차원 좌표평면 상에서 추출된 점군의 회전변환을 통해 객체의 크기가 측정된다. 즉, AABB(axis-aligned bounding box;), OBB (oriented bounding box)와 같이 객체 전체를 회전변환하지 않고, 특정 단면에 대응되는 점군만이 2차원 좌표평면 상에서 회전변환된다. 이에 따라, 축에 대한 정렬 오차, 방향성 오차에 따라 부정확한 측정 값이 산출되는 것이 방지될 수 있다.In addition, some point groups corresponding to the cross section of the object are extracted from the three-dimensional point group, and the size of the object is measured through rotation transformation of the point group extracted on the two-dimensional coordinate plane. That is, only the point group corresponding to the specific cross section is rotationally transformed on the two-dimensional coordinate plane without rotating the entire object such as an axis-aligned bounding box (AABB) or an oriented bounding box (OBB). Accordingly, it is possible to prevent an incorrect measurement value from being calculated according to alignment errors and directional errors with respect to the axis.

또한, 일부 점군에 대해서만 회전변환이 수행되므로, 제품의 크기 측정에 소요되는 시간 비용 및 컴퓨팅 비용이 절감될 수 있다.In addition, since rotation conversion is performed only for some point groups, the time cost and the computing cost for measuring the size of the product can be reduced.

또한, 최소 경계 박스(minimum bounding box), 회전변환 등을 이용하여 다양한 형태를 지닌 제2 형 객체의 크기까지 측정될 수 있다.In addition, the size of a second type object having various shapes can be measured using a minimum bounding box, rotation transformation, and the like.

본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood to those of ordinary skill in the art from the following description.

도 1은 본 발명의 일 실시예에 따른 깊이 센서 기반의 적재 최적화 시스템의 구성도이다.
도 2는 본 발명이 적용될 수 있는 비즈니스 유스케이스를 설명하기 위한 예시도이다.
도 3은 상기 적재 최적화 시스템을 구성하는 3차원 계측 장치(100) 및/또는 적재 최적화 장치(300)의 구현에 이용될 수 있는 예시적인 컴퓨팅 장치(400)의 하드웨어 구성도이다.
도 4는 본 발명의 일 실시예에 따른 깊이 센서 기반의 적재 최적화 방법을 개략적으로 나타내는 흐름도이다.
도 5는 도 4에 도시된 단계(S400)의 상세 흐름도이다.
도 6은 도 5에 도시된 단계(S470)의 상세 흐름도이다.
도 7a 내지 도 7c는 본 발명의 일 실시예에 따른 회전변환 기반의 제1형 객체의 크기 측정 방법을 설명하기 위한 도면이다.
도 8 내지 도 10은 본 발명의 일 실시예에 따른 최소 경계 박스 기반의 제2 형 객체의 크기 측정 방법을 설명하기 위한 도면이다.
도 11은 본 발명의 일 실시예에 따른 회전변환 기반의 제2 형 객체의 크기 측정 방법을 설명하기 위한 도면이다.
도 12는 도 4에 도시된 단계(S500)의 상세 흐름도이다.
도 13a 내지 도 13c는 본 발명의 몇몇 실시예에서 참조될 수 있는 모의 적재 결과의 예시도이다.
1 is a block diagram of a depth sensor based loading optimization system according to an embodiment of the present invention.
2 is an exemplary diagram illustrating a business use case to which the present invention can be applied.
3 is a hardware block diagram of an exemplary computing device 400 that may be used to implement the three-dimensional measuring device 100 and / or the load optimizing device 300 that make up the load optimization system.
4 is a flowchart schematically illustrating a method of optimizing a load based on a depth sensor according to an embodiment of the present invention.
5 is a detailed flowchart of step S400 shown in FIG.
6 is a detailed flowchart of the step S470 shown in FIG.
7A to 7C are views for explaining a method of measuring the size of a first type object based on rotation transformation according to an embodiment of the present invention.
8 to 10 are views for explaining a method of measuring a size of a second type object based on a minimum bounding box according to an embodiment of the present invention.
11 is a diagram for explaining a method for measuring the size of a second type object based on rotation transformation according to an embodiment of the present invention.
12 is a detailed flowchart of step S500 shown in FIG.
Figures 13A-13C are illustrations of simulated loading results that may be referenced in some embodiments of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs. Also, commonly used predefined terms are not ideally or excessively interpreted unless explicitly defined otherwise. The terminology used herein is for the purpose of illustrating embodiments and is not intended to be limiting of the present invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification.

명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.It is noted that the terms "comprises" and / or "comprising" used in the specification are intended to be inclusive in a manner similar to the components, steps, operations, and / Or additions.

본 명세서에 대한 설명에 앞서, 본 명세서에서 사용되는 몇몇 용어들에 대하여 명확하게 하기로 한다.Prior to the description of the present specification, some terms used in this specification will be clarified.

본 명세서에서, 객체(object)란, 계측 대상 또는 적재 대상이 되는 사물을 의미한다. 상기 객체는 직육면체와 같은 박스형 객체와 다양한 형태를 갖는 비-박스형 객체를 포함할 수 있다. 본 명세서에서, 상기 박스형 객체를 "제1 형 객체"로 명명하고, 상기 제1 형 객체에 포함되지 않는 객체를 "제2 형 객체"로 명명하도록 한다. 참고로, 복수의 팔레트가 컨테이너에 적재되는 경우, 상기 객체는 각각의 팔레트를 지칭할 수도 있다.In the present specification, an object means an object to be measured or an object to be loaded. The object may include a boxed object such as a rectangular parallelepiped and a non-boxed object having various shapes. In this specification, the box-shaped object is referred to as a "first type object", and an object not included in the first type object is referred to as a "second type object". For reference, when a plurality of pallets are loaded in a container, the object may refer to each pallet.

본 명세서에서, 3차원 점군(3D point cloud)이란, 3차원 객체의 공간 정보를 3차원 좌표공간 상의 점의 집합으로 표현한 것을 의미한다. 따라서, 상기 3차원 점군에 포함된 각각의 점은 3차원의 좌표를 포함하게 된다.In this specification, a 3D point cloud means that spatial information of a three-dimensional object is represented by a set of points on a three-dimensional coordinate space. Therefore, each point included in the three-dimensional point cloud includes three-dimensional coordinates.

본 명세서에서, 크기는 측정 항목을 총칭하는 용어로 이용된다. 크기는 예를 들어 길이, 면적, 체적 등을 포함할 수 있다. 그러나, 열거된 예시에 한정되지 아니한다.In this specification, a size is used as a generic term for a measurement item. The size can include, for example, length, area, volume, and the like. However, it is not limited to the listed examples.

본 명세서에서, 기준면이란, 객체의 높이 측정의 기준이 되는 것으로, 객체가 지면에 위치한 상태에서 크기 측정이 수행되는 경우 상기 지면이 기준면이 될 수 있다.In this specification, the reference plane is a reference for measuring the height of an object, and when the size measurement is performed in a state where the object is located on the ground, the ground plane may be a reference plane.

본 명세서에서, 컨테이너(container)란, 객체가 적재되는 용기를 의미한다. 상기 컨테이너를 예를 들어 팔레트(palette)를 의미하는 것일 수 있으나, 이에 한정되는 것은 아니다. 또한, 복수의 객체가 팔레트에 적재되고, 복수의 팔레트가 다시 하나의 컨테이너에 적재될 수도 있다.In this specification, a container means a container in which an object is loaded. The container may be, for example, a palette, but is not limited thereto. In addition, a plurality of objects may be loaded in a pallet, and a plurality of pallets may be loaded in one container again.

이하, 본 발명의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 깊이 센서 기반의 적재 최적화 시스템의 구성도이다. 특히, 도 1은 실시간으로 컨베이어 벨트를 통해 운반되는 적재 대상 객체(21, 23, 25)의 크기를 실시간으로 측정하고, 측정된 크기 정보를 기초로 적재 최적화를 위한 시뮬레이션을 수행하는 예를 도시하고 있다.1 is a block diagram of a depth sensor based loading optimization system according to an embodiment of the present invention. Particularly, FIG. 1 shows an example of real-time measurement of the size of the objects 21, 23 and 25 carried by the conveyor belt in real time and simulation for load optimization based on the measured size information have.

도 1을 참조하면 본 발명의 일 실시예에 따른 깊이 센서 기반의 적재 최적화 시스템은 3차원 계측 장치(100), 깊이 센서(200) 및 적재 최적화 장치(300)를 포함되도록 구성될 수 있다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일 뿐이며, 필요에 따라 일부 구성 요소가 추가되거나 삭제될 수 있음은 물론이다. 또한, 도 1에 도시된 적재 최적화 시스템의 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 적어도 하나의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다. 예를 들어, 3차원 계측 장치(100)와 적재 최적화 장치(300)는 단일한 컴퓨팅 장치 내의 서로 다른 로직(logic)으로 구현될 수도 있다. 이하, 상기 적재 최적화 시스템의 각 구성 요소에 대하여 설명하도록 한다.Referring to FIG. 1, a depth sensor-based loading optimization system according to an embodiment of the present invention can be configured to include a three-dimensional measuring apparatus 100, a depth sensor 200, and a loading optimization apparatus 300. However, it should be understood that the present invention is not limited to the above-described embodiments, and that various changes and modifications may be made without departing from the scope of the present invention. It should also be noted that each component of the load optimization system shown in FIG. 1 represents functionally distinct functional elements, and that at least one component may be implemented in a manner that is integrated with one another in an actual physical environment. For example, the three-dimensional measuring device 100 and the stack optimizing device 300 may be implemented with different logic in a single computing device. Hereinafter, each component of the load optimization system will be described.

상기 적재 최적화 시스템에서, 3차원 계측 장치(100)는 깊이 센서(200)로부터 수신된 깊이 측정 정보를 기초로 적재 대상 객체(21, 23, 25)의 크기를 측정하는 컴퓨팅 장치이다. 상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop) 등이 될 수 있으나, 이에 국한되는 것은 아니며 연산 수단 및 통신 수단이 구비된 모든 종류의 장치를 포함할 수 있다.In the load optimization system, the 3D measurement apparatus 100 is a computing device that measures the size of the object objects 21, 23, and 25 based on the depth measurement information received from the depth sensor 200. The computing device may be, but is not limited to, a notebook, a desktop, a laptop, and the like, and may include all kinds of devices having computing means and communication means.

본 발명의 실시예에 따르면, 3차원 계측 장치(100)는 깊이 센서(200)로부터 수신된 깊이 측정 정보를 이용하여 3차원 점군(3D point cloud)을 생성하고, 상기 3차원 점군을 이용하여 적재 대상 객체(21, 23, 25)의 크기를 측정할 수 있다. 이때, 적재 대상 객체(21, 23, 25)는 서로 다른 크기를 갖는 객체일 수 있으나, 이에 한정되는 것은 아니다. 본 실시예에 따르면, 고가의 3차원 스캐너를 이용하지 않고 저가의 깊이 센서(200)를 이용하여 신속하게 적재 대상 객체(21, 23, 25)의 크기가 측정될 수 있다. 이에 따라, 계측에 소요되는 제반 비용이 절감될 수 있다. 본 실시예에 대한 자세한 설명은 도 5 내지 도 11의 도면을 참조하여 상세하게 설명하도록 한다.According to an embodiment of the present invention, the three-dimensional measuring apparatus 100 generates a 3D point cloud using the depth measurement information received from the depth sensor 200, The size of the target objects 21, 23, and 25 can be measured. At this time, the objects 21, 23, and 25 may be objects having different sizes, but the present invention is not limited thereto. According to the present embodiment, the size of the objects 21, 23, and 25 can be quickly measured using the low-cost depth sensor 200 without using an expensive three-dimensional scanner. Accordingly, the total cost required for the measurement can be reduced. The detailed description of this embodiment will be described in detail with reference to Figs. 5 to 11.

상기 적재 최적화 시스템에서, 깊이 센서(200)는 적재 대상 객체(21, 23, 25)에 대한 깊이 측정 정보를 생성하고, 이를 3차원 계측 장치(100)로 제공하는 측정 장치이다. 도 1에서는 지지대를 이용하여 공중에 설치된 깊이 센서(200)가 아래 방향으로 적재 대상 객체(21, 23, 25)의 깊이 정보를 측정하는 것이 예로써 도시되었다. 이하에서는, 이해의 편의를 제공하기 위해, 적재 대상 객체(21, 23, 25)에 관한 깊이 정보는 도 1에 도시된 환경에서 측정된 정보라고 가정하여 설명하도록 한다. 다만, 본 발명의 범위가 이에 한정되는 것은 아니다.In the load optimization system, the depth sensor 200 is a measurement device that generates depth measurement information for the object objects 21, 23, 25 and provides the depth measurement information to the three-dimensional measurement device 100. In FIG. 1, the depth sensor 200 installed in the air using a support table measures the depth information of the object objects 21, 23, 25 in the downward direction. Hereinafter, in order to facilitate understanding, it is assumed that depth information about the objects 21, 23, and 25 to be loaded is information measured in the environment shown in FIG. However, the scope of the present invention is not limited thereto.

본 발명의 실시예에 따르면, 깊이 센서(200)는 적재 대상 객체(21, 23, 25)가 위치하지 않은 상태에서 측정된 제1 깊이 측정 정보를 생성하고, 적재 대상 객체(21, 23, 25)가 기준면에 위치한 상태에서 측정된 제2 깊이 측정 정보를 생성하며, 상기 제1 깊이 측정 정보 및 상기 제2 깊이 측정 정보를 3차원 계측 장치(100)로 제공할 수 있다.According to the embodiment of the present invention, the depth sensor 200 generates first depth measurement information measured in a state where the object objects 21, 23 and 25 are not positioned, And the second depth measurement information may be provided to the three-dimensional measurement apparatus 100. The three-dimensional measurement apparatus 100 may be configured to generate the first depth measurement information and the second depth measurement information.

상기 제1 깊이 측정 정보는 기준면에 대한 3차원 점군을 생성하는 용도로 이용된다. 또한, 기준면에 대한 3차원 점군은 적재 대상 객체(21, 23, 25)의 정확한 높이 측정을 위해, 기준면을 검출하는 용도로 이용된다. 따라서, 기준면의 위치, 각도 등과 같이 계측 결과에 영향을 미치는 요인이 변동되지 않는다면, 상기 제1 깊이 측정 정보는 초기 1회만 측정되어도 무방하다.The first depth measurement information is used to generate a three-dimensional point cloud with respect to the reference plane. Also, the three-dimensional point cloud with respect to the reference plane is used to detect the reference plane for accurately measuring the height of the objects 21, 23, and 25. Therefore, if the factors influencing the measurement result such as the position, angle, and the like of the reference plane do not vary, the first depth measurement information may be measured only once at the initial time.

깊이 센서(200)는 예를 들어 ToF(time of flight) 방식으로 깊이 정보가 포함된 적어도 하나의 깊이 영상 프레임을 생성하는 장치일 수 있으나, 상기 깊이 센서가 깊이 정보를 측정하는 방식이 상술한 예시에 한정되지는 것은 아니다.The depth sensor 200 may be, for example, a device for generating at least one depth image frame including depth information in a time-of-flight (ToF) manner. However, when the depth sensor measures the depth information according to the above- But is not limited thereto.

상기 적재 최적화 시스템에서, 적재 최적화 장치(300)는 3차원 계측 장치(100)에 의해 제공받은 각 적재 대상 객체(21, 23, 25)의 크기 정보를 기초로 모의 적재를 수행하는 컴퓨팅 장치이다. 상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop) 등이 될 수 있으나, 이에 국한되는 것은 아니며 연산 수단 및 통신 수단이 구비된 모든 종류의 장치를 포함할 수 있다.In the loading optimization system, the loading optimization device 300 is a computing device that performs a simulation loading based on size information of each of the loading objects 21, 23, and 25 provided by the three-dimensional measuring device 100. The computing device may be, but is not limited to, a notebook, a desktop, a laptop, and the like, and may include all kinds of devices having computing means and communication means.

본 발명의 실시예에 따르면, 적재 최적화 장치(300)는 적재 대상 객체(21, 23, 25)의 적재 순서 및 배치 방향을 변경해가며 모의 적재를 반복하여 수행하고, 복수의 모의 적재 결과를 비교하여 최적의 모의 적재 결과(30)를 결정할 수 있다. 이에 대한 자세한 설명은 도 12 내지 도 13c를 참조하여 후술하도록 한다.According to the embodiment of the present invention, the stack optimizing apparatus 300 repeatedly performs the simulated stacking while changing the stacking order and the stacking direction of the stacking target objects 21, 23, and 25, and compares the plurality of simulated stacking results The optimal simulated loading result 30 can be determined. A detailed description thereof will be given later with reference to Figs. 12 to 13C.

도 1에 도시된 깊이 센서 기반의 적재 최적화 시스템의 각 구성 요소는 네트워크를 통해 통신할 수 있다. 여기서, 상기 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 이동 통신망(mobile radio communication network), Wibro(Wireless Broadband Internet) 등과 같은 모든 종류의 유/무선 네트워크로 구현될 수 있다.Each component of the depth sensor based load optimization system shown in Figure 1 can communicate over a network. Here, the network may be any kind of wired / wireless network such as a local area network (LAN), a wide area network (WAN), a mobile radio communication network, a wibro Can be implemented.

지금까지 도 1을 참조하여, 본 발명의 일 실시예에 따른 적재 최적화 시스템에 대하여 설명하였다. 이하에서는, 보다 이해의 편의를 제공하기 위해, 상기 적재 최적화 시스템과 관련된 비즈니스 유스케이스(business use case)에 대하여 간략하게 살펴보도록 한다.With reference to FIG. 1, a load optimization system according to an embodiment of the present invention has been described. Hereinafter, a brief description will be given of a business use case related to the load optimization system in order to provide a more convenient understanding.

도 2는 본 발명의 실시예에 따른 적재 최적화 시스템이 이-커머스에 활용된 예를 도시하고 있다.FIG. 2 shows an example in which a loading optimization system according to an embodiment of the present invention is utilized in e-commerce.

도 2를 참조하면, 이-커머스 물류 센터에 각종 제품이 피킹(picking)되면, 컨베이어 벨트 등의 자동화된 운반 수단을 통해 각종 제품이 운반될 수 있다. 이때, 상기 각종 제품은 소정의 목적지로 배송이 요구되는 제품일 수 있다.Referring to FIG. 2, when various products are picked up at the e-commerce logistics center, various products can be conveyed through automated conveying means such as a conveyor belt. At this time, the various products may be products requiring delivery to a predetermined destination.

본 발명의 실시예에 따른 적재 최적화 시스템은 상기 이-커머스 물류 센터에 구축되어 제품의 크기를 측정하고 자동으로 최적의 모의 적재 결과를 제공할 수 있다. 이-커머스 물류 센터의 작업자 또는 자동화된 설비는 상기 최적의 모의 적재 결과를 기초로 제품을 컨테이너에 적재할 수 있다.The loading optimization system according to the embodiment of the present invention can be installed in the e-commerce logistics center to measure the size of the product and automatically provide an optimal simulation loading result. An operator or automated facility at an e-commerce logistics center can load the product into the container based on the optimal simulated loading results.

상술한 활용예에 따르면, 최적의 모의 적재 결과를 기초로 신속하고 정확하게 적재가 이루어질 수 있고, 컨테이너 별로 적재되는 제품의 개수가 증가되는 등 적재/운반 효율 또한 향상될 수 있다. 이에 따라, 이-커머스 물류 관리에 소요되는 제반 관리 비용이 절감될 수 있다. 특히, 본 발명의 실시예에 따른 적재 최적화 시스템은 저가의 깊이 센서를 이용하는 바, 시스템 구축 비용이 거의 요구되지 않다. 따라서, 이-커머스 사업자들은 최소 비용 투자를 통해 최대의 비용 절감 효과를 얻을 수 있다.According to the utilization example described above, loading can be performed quickly and accurately on the basis of the optimal simulated loading result, and the number of products stacked on a container-by-container basis can be increased. Accordingly, the overall management cost for e-commerce logistics management can be reduced. Particularly, since the loading optimization system according to the embodiment of the present invention uses a low-cost depth sensor, the system construction cost is hardly required. Therefore, e-commerce providers can achieve maximum cost savings through minimum cost investment.

지금까지 도 2를 참조하여, 본 발명이 적용될 수 있는 비즈니스 유스케이스와 본 발명의 적용에 따른 비즈니스 효과에 대하여 간략하게 살펴보았다. 이하에서는, 3차원 계측 장치(100) 및/또는 적재 최적화 장치(300)의 구현에 이용될 수 있는 예시적인 컴퓨팅 장치에 대하여 설명하도록 한다.With reference to FIG. 2, a brief description has been given of a business use case to which the present invention can be applied and a business effect according to the application of the present invention. Hereinafter, an exemplary computing apparatus that can be used to implement the three-dimensional measuring apparatus 100 and / or the load optimizing apparatus 300 will be described.

도 3은 본 발명의 실시예에 따른 3차원 계측 장치(100) 및 적재 최적화 장치(300)의 구현에 이용될 수 있는 예시적인 컴퓨팅 장치(400)의 하드웨어 구성도이다.3 is a hardware block diagram of an exemplary computing device 400 that may be used to implement the three-dimensional measuring device 100 and the load optimizing device 300 according to an embodiment of the present invention.

도 3을 참조하면, 컴퓨팅 장치(400)는 하나 이상의 프로세서(401), 버스(405), 네트워크 인터페이스(407), 프로세서(401)에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리(403)와, 깊이 센서 기반의 적재 최적화 소프트웨어(409a)를 저장하는 스토리지(409)를 포함할 수 있다. 다만, 도 3에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 3에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.3, a computing device 400 includes one or more processors 401, a bus 405, a network interface 407, a memory 403 that loads a computer program executed by the processor 401, And a storage 409 for storing depth sensor based load optimization software 409a. 3, only the components related to the embodiment of the present invention are shown. Accordingly, those skilled in the art will recognize that other general-purpose components may be included in addition to those shown in FIG.

프로세서(401)는 컴퓨팅 장치(400)의 각 구성의 전반적인 동작을 제어한다. 프로세서(401)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다. 또한, 프로세서(401)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 3차원 계측 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.The processor 401 controls the overall operation of each configuration of the computing device 400. The processor 401 may include a central processing unit (CPU), a microprocessor unit (MPU), a microcontroller unit (MCU), a graphics processing unit (GPU), or any type of processor well known in the art . The processor 401 may also perform operations on at least one application or program to perform the method according to embodiments of the present invention. The three-dimensional measuring apparatus 100 may include one or more processors.

메모리(403)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(403)는 본 발명의 실시예들에 따른 깊이 센서 기반의 적재 최적화 방법을 실행하기 위하여 스토리지(409)로부터 하나 이상의 프로그램(409a)을 로드할 수 있다. 도 3에서 메모리(403)의 예시로 RAM이 도시되었다.The memory 403 stores various data, commands, and / or information. The memory 403 may load one or more programs 409a from the storage 409 to perform a depth sensor based load optimization method in accordance with embodiments of the present invention. RAM is shown as an example of memory 403 in Fig.

버스(405)는 컴퓨팅 장치(400)의 구성 요소 간 통신 기능을 제공한다. 버스(405)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.The bus 405 provides communication functionality between the components of the computing device 400. The bus 405 may be implemented as various types of buses such as an address bus, a data bus, and a control bus.

네트워크 인터페이스(407)는 컴퓨팅 장치(400)의 유무선 인터넷 통신을 지원한다. 또한, 네트워크 인터페이스(407)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(407)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.The network interface 407 supports wired and wireless Internet communication of the computing device 400. In addition, the network interface 407 may support various communication methods other than Internet communication. To this end, the network interface 407 may comprise a communication module well known in the art.

스토리지(409)는 상기 하나 이상의 프로그램(409a)을 비임시적으로 저장할 수 있다. The storage 409 may store the one or more programs 409a non-temporarily.

스토리지(409)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The storage 409 may be a nonvolatile memory such as a ROM (Read Only Memory), an EPROM (Erasable Programmable ROM), an Electrically Erasable Programmable ROM (EEPROM), a flash memory, etc., a hard disk, a removable disk, And any form of computer-readable recording medium known in the art.

대상 소프트웨어(409a)는 이하에서 후술할 3차원 계측 방법 및/또는 모의 적재 방법을 수행할 수 있다. 즉, 대상 소프트웨어(409a)는 메모리(403)에 로드되어, 하나 이상의 프로세서(401)에 의해, 상기 3차원 계측 방법의 각 단계가 구현된 오퍼레이션 및/또는 상기 모의 적재 방법의 각 단계가 구현된 오퍼레이션을 실행할 수 있다.The target software 409a may perform a three-dimensional measurement method and / or a simulation loading method described below. That is, the target software 409a is loaded into the memory 403, and is executed by the one or more processors 401 so that the operations in which the respective steps of the three-dimensional measurement method are implemented and / Operation can be executed.

예를 들어, 컴퓨팅 장치(400)가 3차원 계측 장치(100)의 구현에 이용되는 경우, 대상 소프트웨어(409a)는 도 5 내지 도 11을 참조하여 후술될 3차원 계측 방법을 수행하는 컴퓨터 프로그램일 수 있다. 다른 예를 들어, 컴퓨팅 장치(400)가 적재 최적화 장치(300)의 구현에 이용되는 경우, 대상 소프트웨어(409a)는 도 12 내지 도 13c를 참조하여 후술될 모의 적재 방법을 수행하는 컴퓨터 프로그램일 수 있다. 또는, 3차원 계측 장치(100)와 적재 최적화 장치(300)가 하나의 컴퓨팅 장치로 구현되는 경우, 대상 소프트웨어(409a)는 도 4 내지 도 13c를 참조하여 후술될 깊이 센서 기반의 적재 최적화 방법을 수행하는 컴퓨터 프로그램일 수 있다.For example, when the computing device 400 is used in the implementation of the three-dimensional measuring device 100, the target software 409a may be a computer program that performs the three-dimensional measurement method described below with reference to Figures 5-11 . As another example, when computing device 400 is utilized in the implementation of load optimizer 300, target software 409a may be a computer program that performs the simulated loading method described below with reference to Figures 12 to 13c. have. Alternatively, when the three-dimensional measuring apparatus 100 and the loading optimization apparatus 300 are implemented as a single computing apparatus, the target software 409a may be a depth sensor-based loading optimization method described later with reference to FIGS. 4 to 13C Or may be a computer program to perform.

지금까지, 도 3을 참조하여 3차원 계측 장치(100) 및/또는 적재 최적화 장치(300)를 구현할 수 있는 예시적인 컴퓨팅 장치(400)에 대하여 설명하였다. 다음으로, 도 4 내지 도 13c를 참조하여 본 발명의 실시예에 따른 깊이 센서 기반의 적재 최적화 방법에 대하여 상세하게 설명한다.Up to now, an exemplary computing device 400 capable of implementing the three-dimensional measuring device 100 and / or the load optimizing device 300 has been described with reference to FIG. Next, referring to FIGS. 4 to 13C, a depth sensor-based loading optimization method according to an embodiment of the present invention will be described in detail.

이하에서 후술할 본 발명의 실시예에 따른 깊이 센서 기반의 적재 최적화 방법의 각 단계는, 컴퓨팅 장치에 의해 수행될 수 있다. 예를 들어, 상기 컴퓨팅 장치는 3차원 계측 장치(100) 또는 적재 최적화 장치(300)일 수 있다. 다만, 설명의 편의를 위해, 상기 깊이 센서 기반의 적재 최적화 방법에 포함되는 각 단계의 동작 주체는 그 기재가 생략될 수도 있다. 또한, 깊이 센서 기반의 적재 최적화 방법의 각 단계는 프로세서에 의해 실행되는 컴퓨터 프로그램의 각 오퍼레이션으로 구현될 수 있다.Each step of the depth sensor-based load optimization method according to an embodiment of the present invention to be described below may be performed by a computing device. For example, the computing device may be a three-dimensional measuring device 100 or a loading optimization device 300. However, for ease of explanation, the operation subject of each step included in the depth sensor-based load optimization method may be omitted. Also, each step of the depth sensor based load optimization method may be implemented with each operation of a computer program executed by the processor.

도 4는 본 발명의 일 실시예에 따른 깊이 센서 기반의 적재 최적화 방법을 나타내는 개략적인 흐름도이다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일 뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.4 is a schematic flow chart illustrating a method of optimizing loading based on a depth sensor according to an embodiment of the present invention. However, it should be understood that the present invention is not limited thereto and that some steps may be added or deleted as needed.

도 4를 참조하면, 단계(S100)에서, 깊이 센서(200)가 적재 대상 객체에 대한 스캐닝(scanning)을 수행한다. 스캐닝 결과로 적재 대상 객체에 대한 깊이 영상이 생성된다.Referring to FIG. 4, in step S100, the depth sensor 200 performs scanning for a target object to be loaded. As a result of the scanning, a depth image of the object to be loaded is generated.

본 발명의 실시예에 따르면, 깊이 센서(200)는 적재 대상 객체가 위치하지 않은 상태의 기준면에 대한 제1 스캐닝을 수행하여 제1 깊이 영상을 생성하고, 기준면에 적재 대상 객체가 위치한 상태에서 제2 스캐닝을 수행하여 제2 깊이 영상을 생성하며, 제1 깊이 영상 및 제2 깊이 영상을 각각 제공할 수 있다. 제1 깊이 영상을 기준면을 정확하게 검출하기 위한 용도로 이용되고, 기준면을 검출하는 이유는 적재 대상 객체의 높이를 정확하게 측정하기 위해서이다. 따라서, 제1 스캐닝은 기준면의 위치, 각도 등 적재 대상 객체의 높이 측정에 영향을 미치는 요인이 변경되지 않는 한 초기의 1회만 수행되어도 무방하다.According to an embodiment of the present invention, the depth sensor 200 generates a first depth image by performing a first scanning operation on a reference surface in a state in which the object to be loaded is not positioned, 2 scanning to generate a second depth image, and to provide a first depth image and a second depth image, respectively. The first depth image is used to accurately detect the reference surface, and the reason for detecting the reference surface is to accurately measure the height of the object to be loaded. Therefore, the first scanning may be performed only once at the initial time, so long as the factors affecting the height measurement of the object to be loaded, such as the position and angle of the reference plane, are not changed.

또한, 본 발명의 실시예에 따르면, 복수의 깊이 센서가 이용될 수도 있다. 예를 들어, 제1 각도로 적재 대상 객체를 스캔하여 제1 깊이 영상을 생성하는 제1 깊이 센서와 제1 각도와 다른 제2 각도로 적재 대상 객체를 스캔하여 제2 깊이 영상을 생성하는 제2 깊이 센서가 이용될 수 있다. 제1 깊이 영상 및 제2 깊이 영상은 적재 대상 객체의 3차원 점군을 정확하게 생성하기 위해 이용될 수 있다. 예를 들어, 제1 깊이 영상을 기초로 제1 3차원 점군이 생성되고, 제2 깊이 영상을 기초로 제2 3차원 점군이 생성되면, 제1 3차원 점군 및 제2 3차원 점군을 정합하여 계측에 이용되는 3차원 점군이 생성될 수 있다. 이하에서는, 다른 언급이 없는 한, "제1 깊이 영상"은 적재 대상 객체가 위치하지 않은 상태의 깊이 정보를 포함하는 영상을 지칭하고, "제2 깊이 영상"은 적재 대상 객체가 기준면에 위치한 상태의 깊이 정보를 포함하는 영상을 지칭하는 의미로 이용하도록 한다.Further, according to the embodiment of the present invention, a plurality of depth sensors may be used. For example, a first depth sensor that scans the object to be loaded at a first angle to generate a first depth image, and a second depth sensor that scans the object to be loaded at a second angle different from the first angle to generate a second depth image. Depth sensors can be used. The first depth image and the second depth image can be used to accurately generate a three-dimensional point cloud of the object to be loaded. For example, if a first three-dimensional point group is generated based on the first depth image and a second three-dimensional point group is generated based on the second depth image, the first three-dimensional point group and the second three-dimensional point group are matched A three-dimensional point cloud used for measurement can be generated. Hereinafter, unless otherwise stated, the "first depth image" refers to an image including depth information in a state in which the object to be loaded is not located, and the "second depth image" Quot ;, and " depth information "

단계(S200)에서, 3차원 계측 장치(100)가 깊이 영상을 획득한다. 예를 들어, 3차원 계측 장치(100)는 깊이 센서(200)로부터 실시간으로 깊이 영상을 수신할 수 있다.In step S200, the 3D measurement apparatus 100 acquires a depth image. For example, the 3D measurement apparatus 100 can receive a depth image from the depth sensor 200 in real time.

단계(S300)에서, 3차원 계측 장치(100)가 깊이 영상을 기초로 3차원 점군을 생성한다. 예를 들어, 3차원 계측 장치(100)는 기준면에 대한 제1 깊이 영상을 기초로 제1 3차원 점군을 생성하고, 적재 대상 객체에 대한 제2 깊이 영상을 기초로 제2 3차원 점군을 생성한다. 깊이 정보를 기초로 3차원 점군을 생성하는 방법은 당해 기술 분야의 종사자에게 자명한 사항이므로 이에 대한 설명은 생략하도록 한다. 이하에서는, 설명의 편의를 위해, "제1 3차원 점군"은 상기 제1 깊이 영상을 기초로 생성된 3차원 점군을 지칭하고, "제2 3차원 점군"은 상기 제2 깊이 영상을 기초로 생성된 3차원 점군을 지칭하는 의미로 사용하도록 한다.In step S300, the three-dimensional measuring apparatus 100 generates a three-dimensional point cloud based on the depth image. For example, the three-dimensional measuring apparatus 100 generates a first three-dimensional point cloud based on the first depth image with respect to the reference plane, generates a second three-dimensional point cloud based on the second depth image with respect to the object to be loaded do. The method of generating a three-dimensional point cloud based on the depth information is obvious to those skilled in the art, and a description thereof will be omitted. Hereinafter, for convenience of explanation, the "first three-dimensional point cloud group" refers to a three-dimensional point cloud group generated based on the first depth image, and the "second three-dimensional point cloud group" It is used to mean the generated three-dimensional point cloud.

단계(S400)에서, 3차원 계측 장치(100)가 상기 제1 3차원 점군 및/또는 상기 제2 3차원 점군을 이용하여 적재 대상 객체의 크기를 측정한다. 본 단계(S400)에 수행되는 3차원 계측 방법에 대한 자세한 설명은 도 5 내지 도 11을 참조하여 후술하도록 한다.In step S400, the three-dimensional measuring apparatus 100 measures the size of the object to be loaded using the first three-dimensional point group and / or the second three-dimensional point group. A detailed description of the three-dimensional measurement method performed in step S400 will be described later with reference to FIGS. 5 to 11. FIG.

한편, 본 발명의 실시예에 따르면, 3차원 계측 장치(100)는 복수의 적재 대상 객체를 하나의 그룹으로 그룹핑하고, 그룹핑된 복수의 적재 대상 객체를 하나의 객체로 간주하여 크기 측정이 수행할 수도 있다. 구체적으로, 3차원 계측 장치(100)는 복수의 적재 대상 객체 중에서 제1 개수의 적재 대상 객체를 제1 그룹으로 그룹핑하고, 제2 개수의 적재 대상 객체를 제2 그룹으로 그룹핑할 수 있다. 또한, 3차원 계측 장치(100)는 단계(S300)에서 생성된 복수의 적재 대상 객체 각각에 대한 3차원 점군 중에서, 상기 제1 그룹에 소속된 적재 대상 객체 각각에 대한 3차원 점군을 병합하여 제1 그룹의 3차원 점군을 생성하고, 동일한 방식으로 제2 그룹의 3차원 점군을 생성할 수 있다. 다음으로, 3차원 계측 장치(100)는 제1 그룹의 3차원 점군을 기초로 제1 그룹에 소속된 적재 대상 객체의 전체 크기를 측정하고, 제2 그룹의 3차원 점군을 기초로 제2 그룹에 소속된 적재 대상 객체의 전체 크기를 측정하며, 측정된 전체 크기 정보를 적재 최적화 장치(300)로 제공할 수 있다.Meanwhile, according to the embodiment of the present invention, the three-dimensional measuring apparatus 100 groups a plurality of objects to be loaded into one group, considers a plurality of grouped objects to be stacked as one object, It is possible. Specifically, the three-dimensional measuring apparatus 100 may group the first number of objects to be loaded into a first group and the second number of objects to be loaded into a second group among a plurality of objects to be loaded. In addition, the three-dimensional measuring apparatus 100 merges the three-dimensional point cloud for each of the objects to be loaded belonging to the first group among the three-dimensional point clouds for each of the plurality of objects to be loaded, generated in step S300, One group of three-dimensional point clouds can be generated, and a second group of three-dimensional point clouds can be generated in the same manner. Next, the three-dimensional measuring apparatus 100 measures the overall size of the object to be loaded belonging to the first group on the basis of the three-dimensional point cloud of the first group, And may provide the measured total size information to the stack optimizing apparatus 300. The stack optimizing apparatus 300 may be configured to determine the total size of the stacking target object.

이때, 상기 제1 개수 및/또는 상기 제2 개수는 기 설정된 고정 값 또는 상황에 따라 변동되는 변동 값일 수 있다.Here, the first number and / or the second number may be variable values that vary according to a predetermined fixed value or a predetermined condition.

일 예에서, 상기 제1 개수 및/또는 상기 제2 개수는 3차원 계측 장치(100)의 컴퓨팅 성능에 따라 동적으로 설정될 수 있다. 보다 자세한 예를 들어, 3차원 계측 장치(100)의 컴퓨팅 성능이 낮을수록 상기 제1 개수 및/또는 상기 제2 개수는 높은 값으로 설정될 수 있다. 이에 따라, 복수개의 적재 대상 객체를 하나의 묶음으로 크기 측정을 함으로써, 크기 측정에 소요되는 컴퓨팅 비용을 최소화하고, 성능이 낮은 컴퓨팅 장치라도 실시간 크기 측정이 가능하도록 구현될 수 있다.In one example, the first number and / or the second number may be dynamically set according to the computing capability of the three-dimensional measuring apparatus 100. For example, the first number and / or the second number may be set to a higher value as the computing performance of the three-dimensional measuring apparatus 100 is lower. Accordingly, the size of a plurality of objects to be stacked can be measured in a bundle, so that the computing cost required for size measurement can be minimized and a real time size measurement can be performed even for a low-performance computing device.

일 예에서, 상기 제1 개수 및/또는 상기 제2 개수는 2차원의 RGB 영상에 포함된 전경 영역의 크기를 기초로 동적으로 결정될 수 있다. 본 예에서, 깊이 영상 외에 적재 대상 객체에 대한 2차원 영상 또는 깊이 정보가 추가된 3차원 영상이 함께 제공된다고 가정한다. 또는, 전경 영역의 크기를 구할 수 있다면 깊이 영상이 그대로 이용되더라도 무방하다. 보다 구체적으로 설명하면, 적재 대상 객체가 포함된 2차원 영상에서 적재 대상 객체 각각에 대응되는 전경 영역의 크기가 산출될 수 있다. 상기 전경 영역의 크기는 개략적인 또는 상대적인 적재 대상 객체의 크기와 대응되므로, 상기 전경 영역의 크기를 기초로 상기 제1 개수 및/또는 상기 제2 개수가 동적으로 결정될 수 있다. 구체적인 예를 들어, 소정의 임계치가 정의되어 있다고 가정하면, 각 전경 영역의 크기의 합이 상기 임계치가 될 때까지 합해진 개수가 상기 제1 개수 및/또는 상기 제2 개수로 설정될 수 있다. 특히, 이-커머스 환경에서 적재 대상 객체의 크기는 다양할 것이므로, 상기 제1 개수 및/또는 상기 제2 개수는 계속해서 변동되는 값이 될 수 있다.In one example, the first number and / or the second number may be dynamically determined based on the size of the foreground region included in the two-dimensional RGB image. In this example, it is assumed that a two-dimensional image of the object to be loaded or a three-dimensional image to which depth information is added is provided together with the depth image. Alternatively, if the size of the foreground region can be obtained, the depth image may be used as it is. More specifically, the size of the foreground area corresponding to each of the objects to be loaded in the two-dimensional image including the object to be loaded can be calculated. Since the size of the foreground region corresponds to the size of a rough or relative object to be loaded, the first number and / or the second number can be dynamically determined based on the size of the foreground region. For example, assuming that a predetermined threshold value is defined, the first number and / or the second number may be set to the sum of the sum of the sizes of the foreground regions until the threshold value is reached. In particular, in the e-commerce environment, the size of the object to be loaded may vary, so that the first number and / or the second number may be continuously variable values.

참고로, 상기 제1 개수 및/또는 상기 제2 개수를 동적으로 결정하는 작업은 별도의 컴퓨팅 장치에서 병렬적으로 수행될 수도 있다. 이와 같은 경우, 별도의 컴퓨팅 장치가 영상 분석을 통해 제1 개수 및/또는 제2 개수를 실시간으로 결정하여 3차원 계측 장치(100)로 제공하면, 3차원 계측 장치(100)는 제공받은 개수를 기초로 적재 대상 객체를 그룹핑하고 그룹핑된 복수의 객체에 대한 전체 크기를 측정하도록 동작할 수 있다.For reference, the operation of dynamically determining the first number and / or the second number may be performed in parallel in a separate computing device. In such a case, when a separate computing device determines the first number and / or the second number in real time through image analysis and provides it to the three-dimensional measuring apparatus 100, the three-dimensional measuring apparatus 100 calculates the number And may operate to group the objects to be loaded on a basis and measure the total size of a plurality of grouped objects.

단계(S500)에서, 적재 최적화 장치(300)가 적재 대상 객체에 대한 모의 적재를 수행하고, 최적의 모의 적재 결과를 제공한다. 이때, 상기 적재 대상 객체는 복수이고, 적어도 일부의 객체는 서로 다른 크기를 갖는 객체일 수 있다. 본 단계(S500)에 대한 자세한 설명은 도 12 내지 도 13c를 참조하여 후술하도록 한다.In step S500, the load optimizing apparatus 300 performs a simulation load on the object to be loaded and provides an optimal simulation load result. At this time, there may be a plurality of objects to be loaded, and at least some objects may be objects having different sizes. Details of this step S500 will be described later with reference to Figs. 12 to 13C.

지금까지 도 4를 참조하여, 본 발명의 실시예에 따른 깊이 센서 기반의 적재 최적화 방법에 대하여 설명하였다. 상술한 방법에 따르면, 저가의 깊이 센서를 이용하여 다양한 제품의 크기가 측정된다. 또한, 측정된 크기에 기초한 적재 시뮬레이션을 통해 최적의 적재 방법이 제공된다. 이를 통해, 제품의 적재와 관련되어 요구되는 제반 비용이 크게 절감될 수 있다.With reference to FIG. 4, a depth sensor based loading optimization method according to an embodiment of the present invention has been described. According to the above-described method, the size of various products is measured using a low-cost depth sensor. An optimal loading method is also provided through loading simulation based on the measured size. This can significantly reduce the overall cost associated with loading the product.

이하에서는, 도 5 내지 도 10을 참조하여 단계(S400)에서 수행되는 3차원 계측 방법에 대하여 상세하게 설명하도록 한다.Hereinafter, the three-dimensional measurement method performed in step S400 will be described in detail with reference to FIGS. 5 to 10. FIG.

도 5는 도 4에 도시된 단계(S400)의 상세 흐름도이다.5 is a detailed flowchart of step S400 shown in FIG.

도 5를 참조하면, 단계(S410)에서, 기준면에 대한 제1 3차원 점군에서 기준면에 대응되는 제1 평면이 검출된다. 보다 자세하게는, 상기 제1 3차원 점군에서, 기준면에 대응되는 제1 평면이 검출되고, 제1 평면에 포함된 점군을 기초로 기준면에 대한 평면 방정식이 결정된다. 상기 평면 방정식은 추후 적재 대상 객체의 높이를 측정하는데 이용된다.Referring to Fig. 5, in step S410, a first plane corresponding to the reference plane in the first three-dimensional point cloud group with respect to the reference plane is detected. More specifically, in the first three-dimensional point cloud, a first plane corresponding to the reference plane is detected, and a plane equation for the reference plane is determined based on the point cloud included in the first plane. The plane equation is used to measure the height of the object to be loaded later.

단계(S430)에서, 적재 대상 객체에 대한 제2 3차원 점군에서 적재 대상 객체의 상단면에 대응되는 제2 평면이 검출된다.In step S430, a second plane corresponding to the top surface of the object to be loaded in the second three-dimensional point cloud group to the object to be loaded is detected.

단계(S450)에서, 단계(S410)에서 검출된 제1 평면과 단계(S430)에서 검출된 제2 평면이 평행한지 여부가 판정된다. 상기 판정은 예를 들어 각 평면의 노말 벡터(normal vector)가 평행한지 여부를 기초로 수행될 수 있다. 그러나, 이에 한정되는 것은 아니다.In step S450, it is determined whether or not the first plane detected in step S410 and the second plane detected in step S430 are parallel. The determination may be performed based on, for example, whether or not the normal vector of each plane is parallel. However, the present invention is not limited thereto.

판정 결과, 두 평면이 서로 평행한 경우, 적재 대상 객체는 직육면체 등과 같이 제1 형 객체에 해당할 확률이 높다. 이와 같은 경우, 단계(S470)에서 회전 변환을 이용하여 적재 대상 객체의 크기가 측정된다. 본 단계(S470)에 대한 자세한 설명은 도 6 내지 도 7c를 참조하여 후술하도록 한다.As a result of judgment, when the two planes are parallel to each other, the object to be loaded is likely to correspond to the first type object such as a rectangular parallelepiped. In this case, the size of the object to be loaded is measured using the rotation transformation in step S470. Details of this step S470 will be described later with reference to Figs. 6 to 7C.

판정 결과, 두 평면이 서로 평행하지 않은 경우, 적재 대상 객체는 원형, 서로 다른 크기를 갖는 복수의 제1 형 객체들 등과 같이 제2 형 객체에 해당할 확률이 높다. 이와 같은 경우, 단계(S450)에서, 최소 경계 박스를 이용하여 적재 대상 객체의 크기가 측정된다. 본 단계(S500)에 대한 자세한 설명은 도 8 내지 도 10을 참조하여 후술하도록 한다As a result of the determination, if the two planes are not parallel to each other, the object to be loaded is likely to correspond to the second type object such as a circle, a plurality of first type objects having different sizes, and the like. In this case, in step S450, the size of the object to be loaded is measured using the minimum bounding box. Details of this step S500 will be described later with reference to Figs. 8 to 10

지금까지 도 5를 참조하여 본 발명의 실시예에 따른 3차원 계측 방법에 대하여 설명하였다. 다음으로, 도 6 내지 도 7c를 참조하여, 적재 대상 객체가 제1 형 객체로 판정된 경우, 단계(S470)에서 수행되는 회전변환 기반의 크기 측정 방법에 대하여 상세하게 설명하도록 한다.The three-dimensional measurement method according to the embodiment of the present invention has been described with reference to FIG. Next, with reference to FIGS. 6 to 7C, a method of measuring the size of rotation-based transformation performed in step S470 when the object to be loaded is determined as a type 1 object will be described in detail.

도 6은 도 5에 도시된 단계(S470)의 상세 흐름도이다.6 is a detailed flowchart of the step S470 shown in FIG.

도 6을 참조하면, 단계(S471)에서, 적재 대상 객체에 대한 3차원 점군 중에서 적재 대상 객체의 상단면에 대응되는 점군이 추출된다. 이하, 본 실시예에 한하여, 설명의 편의를 위해, 상기 상단면에 대응되는 점군을 "제1 점군"으로 명명하도록 한다.Referring to FIG. 6, in step S471, a point group corresponding to the top surface of the object to be loaded is extracted from the three-dimensional point group of the object to be loaded. Hereinafter, for convenience of description, the point group corresponding to the top surface will be referred to as "first point group" in the present embodiment.

본 발명의 실시예에 따르면, 상단면에 대응되는 제1 점군을 정확하게 추출하기 위해, 상기 상단면의 경계선에 위치한 점군을 기준으로 확장 탐색이 수행될 수 있다. 이는, 깊이 센서로부터 제공받은 깊이 정보는 통상적으로 노이즈를 포함하고 있고, 이를 기초로 생성된 3차원 점군에도 노이즈가 포함되어 있기 때문에, 적재 대상 객체의 상단면에 대응되는 평면이 정확하게 검출되지 않을 수 있기 때문이다. 이와 같은 문제를 해결하기 위한 본 발명의 실시예에 따르면, 상기 제1 점군 중에서 경계선 상에 위치한 점군을 기준으로 주변 점군에 대한 탐색이 수행될 수 있다. 구체적으로, 경계선 상에 위치한 점군을 기준으로 3차원 공간 상에서 기 설정된 거리 이내에 위치한 주변 점군이 탐색되고, 탐색된 주변 점군까지 적재 대상 객체의 상단면에 대응되는 제1 점군(또는 평면)으로 추출되게 된다. 본 실시예에 따르면, 적재 대상 객체의 상단면에 대응되는 영역이 보다 정확하게 추출될 수 있기 때문에, 계측 결과의 정확도 및 신뢰도가 향상될 수 있다.According to the embodiment of the present invention, in order to accurately extract the first point group corresponding to the top surface, an extended search can be performed based on the point group located on the boundary line of the top surface. This is because the depth information provided from the depth sensor usually includes noise and the generated three-dimensional point cloud includes noise, so that the plane corresponding to the top surface of the object to be loaded can not be accurately detected It is because. According to an embodiment of the present invention for solving such a problem, a search for a neighboring point group may be performed based on a point group located on a boundary line among the first point group. Specifically, a group of neighboring points located within a predetermined distance in the three-dimensional space is searched based on the point group positioned on the boundary line, and the searched neighboring point group is extracted into a first point group (or plane) corresponding to the top surface of the object to be loaded do. According to the present embodiment, since the area corresponding to the top surface of the object to be loaded can be extracted more accurately, the accuracy and reliability of the measurement result can be improved.

단계(S473)에서, 단계(S471)를 통해 추출된 평면을 이용하여 적재 대상 객체의 높이가 측정된다. 보다 자세하게는, 기준면을 가리키는 평면 방정식과 상기 추출된 평면을 구성하는 제1 점군 중에서 적어도 하나의 점과의 거리가 산출되고, 상기 산출된 거리가 상기 적재 대상 객체의 높이로 결정된다. 기준면을 기초로 적재 대상 객체의 높이가 측정되므로, 적재 대상 객체가 경사진 곳에 놓여 있는 경우에도 정확하게 높이가 측정될 수 있다.In step S473, the height of the object to be loaded is measured using the plane extracted in step S471. More specifically, a distance between at least one point among a plane equation indicating a reference plane and a first point group constituting the extracted plane is calculated, and the calculated distance is determined as the height of the object to be loaded. Since the height of the object to be loaded is measured based on the reference plane, the height can be accurately measured even when the object to be loaded is placed on an inclined plane.

일 예에서, 적재 대상 객체의 높이는 상기 점군 중에서 임의로 결정된 한 점과 상기 평면 방정식과의 거리로 결정될 수 있다. 다른 일 예에서, 상기 적재 대상 객체의 높이는 상기 점군에 포함된 복수의 점 각각과 상기 평면 방정식과의 거리의 평균으로 결정될 수 있다. 또 다른 일 예에서, 상기 적재 대상 객체의 높이는 상기 평면 방정식과 상기 점군에 포함된 점과의 거리 중 최대 값 또는 최소 값으로 결정될 수 있다. 다만, 상기 적재 대상 객체의 높이가 결정되는 방식은 열거된 예시에 한정되는 것은 아니다.In one example, the height of the object to be loaded can be determined by a distance between the point and the plane equation arbitrarily determined from the point group. In another example, the height of the object to be loaded may be determined by an average of distances between each of the plurality of points included in the point group and the plane equation. In another example, the height of the object to be loaded may be determined as a maximum value or a minimum value of a distance between the plane equation and a point included in the point cloud. However, the manner in which the height of the object to be loaded is determined is not limited to the listed examples.

단계(S475)에서, 단계(S471)를 통해 추출된 평면을 2차원 좌표평면으로 회전변환하여 적재 대상 객체의 가로 및 세로 길이가 측정된다. 즉, 본 발명의 실시예에 따르면, AABB(axis-aligned bounding box;), OBB (oriented bounding box)와 같이 적재 대상 객체 전체를 회전변환하는 방식이 아니라, 단계(S471)에서 추출된 평면을 2차원 좌표평면 상에서 회전변환하는 방식이 이용된다. 이에 따라, 축에 대한 정렬 오차, 방향성 오차에 따라 부정확한 치수가 측정되는 것이 방지되고, 계측의 정확도가 향상될 수 있다. 이하에서는, 도 7a 내지 도 7c를 참조하여 단계(S475)에서 대하여 부연 설명하도록 한다.In step S475, the plane extracted through step S471 is rotationally transformed into a two-dimensional coordinate plane, and the horizontal and vertical lengths of the object to be loaded are measured. That is, according to the embodiment of the present invention, the plane extracted in the step S471 is not a rotation-transforming method such as an axis-aligned bounding box (AABB) or an oriented bounding box (OBB) A method of rotational conversion on a dimensional coordinate plane is used. Accordingly, it is possible to prevent measurement of an incorrect dimension according to an alignment error and a directional error with respect to an axis, and the accuracy of measurement can be improved. Hereinafter, step S475 will be described in detail with reference to Figs. 7A to 7C.

구체적으로, 단계(S450)에서, 2단계의 회전 변환이 수행된다. 도 7a는 첫번째 단계에서 수행되는 제1 회전변환을 도시하고, 도 7b는 두번째 단계에서 수행되는 제2 회전변환을 도시하고 있다.Specifically, in step S450, two-stage rotation conversion is performed. FIG. 7A shows the first rotation transformation performed in the first step, and FIG. 7B shows the second rotation transformation performed in the second step.

도 7a를 참조하면, 3차원 좌표공간에 존재하는 평면(510)이 2차원 좌표평면 상으로 이동되는 제1 회전변환이 수행된다. 특히, 도 7a는 평면(510)이 xy 평면으로 이동된 것을 도시하고 있다. 상기 제1 회전변환은 평면(510)의 노말 벡터(a, b, c)와 xy 평면의 노말 벡터(0, 0, 1)에 기초하여 수행될 수 있다.Referring to FIG. 7A, a first rotation transformation is performed in which a plane 510 existing in a three-dimensional coordinate space is moved on a two-dimensional coordinate plane. In particular, FIG. 7A shows the plane 510 being moved in the xy plane. The first rotation transformation can be performed based on the normal vectors (a, b, c) of the plane 510 and the normal vectors (0, 0, 1) of the xy plane.

다음으로, 도 7b를 참조하면, 2차원 좌표평면 상에서 회전각을 변경해가며 제2 회전변환이 수행된다. 구체적으로, xy평면으로 이동된 평면(530)의 (x, y) 성분에 대하여 회전각(rotangle)을 변경해가며 반복적으로 회전시키고, 특정 축(e.g. x축, y축)을 기준으로 최소 좌표 값(xmin)과 최대 좌표 값(xmax)의 차이 값(wi)이 매 회전마다 산출된다. 예를 들어, 제1 회전된 점군(530)에 대하여 차이 값(wi)이 연산되고, 제2 회전된 점군(550)에 대해서도 차이 값(wi)이 연산된다. 도 7b는 x축을 기준으로 상기 차이 값(wi)이 연산되는 것을 예로써 도시하였으나, y축을 기준으로 상기 차이 값(wi)이 연산되더라도 무방하다.Next, referring to FIG. 7B, the second rotation transformation is performed while changing the rotation angle on the two-dimensional coordinate plane. Specifically, the (x, y) component of the plane 530 moved in the xy plane is repeatedly rotated while varying the rotation angle , and the minimum coordinate (x, y) The difference value w i between the value (x min ) and the maximum coordinate value (x max ) is calculated for each rotation. For example, a first difference value (w i) it is calculated with respect to the rotation point group 530 and the second difference values (w i) about the rotation point group 550 is calculated. 7B illustrates that the difference value w i is calculated based on the x-axis. However, the difference value w i may be calculated based on the y-axis.

반복적으로 연산된 차이 값(wi) 중에서 최소 값(wmin)이 적재 대상 객체의 가로 또는 세로 길이로 결정된다. 도 7c에 도시된 바와 같이, 차이 값(wi)이 최소인 경우는 적재 대상 객체의 상단면에 대응되는 평면(590)이 각 축에 정확하게 정렬된 경우를 가리키기 때문이다. 따라서, 특정 회전각에 대하여 x축 상의 최소 값(wmin)이 가로 길이로 결정되었다면, 동일한 회전각에 대한 y축 상의 최소 값(lmin)이 적재 대상 객체의 세로 길이로 결정된다.The minimum value (w min ) among the repeated difference values (w i ) is determined as the width or length of the object to be loaded. As shown in FIG. 7C, when the difference value w i is minimum, it indicates that the plane 590 corresponding to the top surface of the object to be loaded is correctly aligned on each axis. Therefore, if the minimum value ( wmin ) on the x-axis for a specific rotation angle is determined as the width, the minimum value ( lmin ) on the y-axis for the same rotation angle is determined as the length of the object to be loaded.

지금까지, 도 6 내지 도 7c를 참조하여, 본 발명의 실시예에 따른 회전 변환 기반의 크기 측정 방법에 대하여 설명하였다. 이하에서는, 도 8 내지 도 10을 참조하여, 적재 대상 객체가 제2 형 객체로 판정된 경우, 단계(S500)에서 수행되는 최소 경계 박스 기반의 크기 측정 방법에 대하여 설명하도록 한다.Up to now, a method of measuring the size based on rotation transformation according to the embodiment of the present invention has been described with reference to FIGS. 6 to 7C. Hereinafter, with reference to FIG. 8 to FIG. 10, a method of measuring the minimum bounding box-based size performed in step S500 when the object to be loaded is determined as the second type object will be described.

도 8은 도 5에 도시된 단계(S490)의 상세 흐름도이다.8 is a detailed flowchart of step S490 shown in Fig.

도 8을 참조하면, 단계(S491)에서, 상기 제2 3차원 점군 중에서, 기준면에 대응되는 점군의 제외 처리가 수행된다. 또한, 상기 제외 처리의 결과로 적재 대상 객체를 가리키는 제1 점군이 획득된다. 이하, 설명의 편의를 위해, 3차원 점군 중에서 기준면에 대응되는 점군이 제외된 점군을 "제1 점군"으로 계속하여 명명하도록 한다.Referring to Fig. 8, in step S491, among the second three-dimensional point cloud group, exclusion processing of the point cloud corresponding to the reference plane is performed. As a result of the exclusion process, a first point group indicating the object to be loaded is obtained. Hereinafter, for convenience of explanation, the point group excluding the point group corresponding to the reference plane among the three-dimensional point group is named as "first point group ".

본 발명의 실시예에 따르면, 상기 제1 점군 중에서 상기 적재 대상 객체의 외곽선에 대응되는 점군을 기준으로 노이즈 보정이 수행되고, 상기 노이즈 보정의 결과로 상기 제1 점군과 적어도 일부는 상이한 제2 점군이 획득될 수 있다. 이하, 상기 노이즈 보정의 결과를 가리키는 점군을 "제2 점군"으로 계속하여 명명하도록 한다.According to an embodiment of the present invention, noise correction is performed on the basis of a point group corresponding to an outline of the object to be loaded among the first point group, and as a result of the noise correction, Can be obtained. Hereinafter, the point cloud indicating the result of the noise correction will be named "second point cloud" continuously.

상기 노이즈 보정은 3차원 공간 상에서 상기 적재 대상 객체의 외곽선에 대응되는 점들을 기준으로 수행된다. 구체적으로, 상기 외곽선에 대응되는 점들을 기준으로 지정된 거리 이내에 위치한 주변 점군의 밀도가 산출되고, 산출된 밀도가 임계 값 이상인 점군까지 제2 점군에 포함되게 된다.The noise correction is performed based on points corresponding to the outline of the object to be loaded on the three-dimensional space. Specifically, the density of neighboring point groups located within a specified distance based on the points corresponding to the outline is calculated, and the point group having the calculated density equal to or higher than the threshold value is included in the second point group.

단계(S493)에서, 기준면과 제2 점군(또는 제1 점군)과의 최대 거리를 기초로 적재 대상 객체의 높이가 측정된다. 구체적으로, 도 9에 도시된 바와 같이 적재 대상 객체가 복수의 객체(610, 630, 650)로 구성된 객체인 경우, 도 10에 도시된 바와 같이 제2 점군(710, 730, 750)이 결정되었다고 가정하자. 그러면, 기준면과 제2 점군(710, 730, 750) 중에서 각 객체를 가리키는 점군(710, 730, 750)과의 최대 거리가 측정되고, 측정된 최대 거리가 적재 대상 객체의 높이로 결정될 수 있다. 단, 적재 대상 객체의 높이를 측정하는 방법이 상술한 예시에 한정되는 것은 아니다.In step S493, the height of the object to be loaded is measured based on the maximum distance between the reference plane and the second point group (or the first point group). 9, when the object to be loaded is an object composed of a plurality of objects 610, 630, and 650, the second point group 710, 730, and 750 are determined as shown in FIG. 10 Let's assume. Then, the maximum distance between the reference plane and the second point group 710, 730, and 750 and the point groups 710, 730, and 750 indicating the respective objects is measured, and the measured maximum distance may be determined as the height of the object to be loaded. However, the method of measuring the height of the object to be loaded is not limited to the above-described example.

단계(S495)에서, 도 10에 도시된 바와 같은 최소 경계 박스(810)를 이용하여 적재 대상 객체의 크기가 측정된다. 이때, 최소 경계 박스의 높이(810)는 단계(S493)에서 측정된 높이가 될 수 있다. 또한, 최소 경계 박스(810)의 가로 및 세로 길이가 상기 적재 대상 객체의 가로 및 세로 길이가 될 수 있다. 최소 경계 박스를 구하는 방법은 당해 기술 분야의 종사자에게 이미 자명한 사항인 바 이에 대한 자세한 설명은 생략하도록 한다.In step S495, the size of the object to be loaded is measured using the minimum bounding box 810 as shown in FIG. At this time, the height 810 of the minimum bounding box may be the height measured in step S493. In addition, the width and height of the minimum bounding box 810 may be the width and length of the object to be loaded. The method of obtaining the minimum bounding box is already known to those skilled in the art, and a detailed description thereof will be omitted.

한편, 본 발명의 다른 실시예에 따르면, 최소 경계 박스를 이용하지 않고, 전술한 회전변환 기반으로 상기 적재 대상 객체의 크기가 측정될 수도 있다. 예를 들어, 단계(S491)의 수행 결과로 획득된 상기 제2 점군 중에서 상기 적재 대상 객체의 특정 단면에 대응되는 점군이 추출되고, 추출된 점군을 회전변환하여 상기 적재 대상 객체의 크기가 측정될 수 있다. 이에 대한 예는 도 11을 참조하도록 한다.Meanwhile, according to another embodiment of the present invention, the size of the object to be loaded may be measured based on the rotation transformation described above without using the minimum bounding box. For example, a point group corresponding to a specific cross section of the object to be loaded is extracted from the second point group obtained as a result of performing step S491, and the size of the object to be loaded is measured by rotating the extracted point group . An example of this is shown in Fig.

3차원 공간에서 적재 대상 객체의 특정 단면에 대응되는 점군을 추출하는 방법은 예를 들어 각 점의 좌표 중에서 어느 한 축에 대응되는 좌표를 제거하는 방법이 이용될 수 있으나, 이에 한정되는 것은 아니다. 참고로, 도 11은 각 점의 좌표 중에서 z축의 좌표가 제거된 것을 예로써 도시하고 있다. 회전변환을 이용하여 객체의 크기를 측정하는 방법은 전술한 바와 같으므로 중복된 설명을 배제하기 위해 생략하도록 한다.As a method of extracting a point group corresponding to a specific cross section of a target object in a three-dimensional space, for example, a method of removing coordinates corresponding to any one of the coordinates of each point may be used, but the present invention is not limited thereto. For reference, FIG. 11 shows an example in which the coordinates of the z-axis among the coordinates of each point are removed. Since the method of measuring the size of the object using the rotation transformation is as described above, it is omitted in order to exclude redundant description.

지금까지 도 8 내지 도 11을 참조하여, 본 발명의 실시예에 따른 제2 형 객체의 크기 측정 방법에 대하여 설명하였다. 상술한 방법에 따르면, 최소 경계 박스, 회전변환 등을 이용하여 다양한 형태를 가질 수 있는 제2 형 객체의 크기 또한 측정될 수 있다.A method of measuring the size of a second type object according to an embodiment of the present invention has been described with reference to FIGS. 8 to 11. FIG. According to the above-described method, the size of the second type object that can have various shapes using the minimum bounding box, the rotation transformation, and the like can also be measured.

지금까지 도 5 내지 도 11을 참조하여 도 4에 도시된 단계(S400)에서 수행되는 3차원 계측 방법에 대하여 설명하였다. 이하에서는, 도 12 내지 도 13c를 참조하여, 단계(S500)에서 수행되는 모의 적재 방법에 대하여 설명하도록 한다.The three-dimensional measuring method performed in step S400 shown in Fig. 4 has been described with reference to Figs. 5 to 11. Fig. Hereinafter, a simulation loading method performed in step S500 will be described with reference to FIGS. 12 to 13C.

도 12는 도 4에 도시된 단계(S500)의 상세 흐름도이다.12 is a detailed flowchart of step S500 shown in FIG.

도 12를 참조하면, 단계(S510)에서, 적재 순서 및 배치 방향 중 적어도 하나를 변경해가며 복수의 모의 적재가 수행된다. 구체적으로, 기 정의된 컨테이너의 크기와 적재 대상 객체의 크기를 기초로 모의 적재가 수행되며, 적재 대상 객체의 적재 순서 및 배치 방향 중 적어도 하나를 변경해가며 모의 적재가 수행된다. 모의 적재의 결과에 대해서는 도 13a 내지 도 13c에 도시된 모의 적재 예시(1010, 1030, 1050)를 참조하도록 한다.Referring to FIG. 12, in step S510, a plurality of simulation loads are performed while changing at least one of a loading order and a placement direction. Specifically, simulation loading is performed based on the size of the predefined container and the size of the object to be loaded, and simulation loading is performed while changing at least one of the loading order and the loading direction of the object to be loaded. Refer to the simulated loading examples 1010, 1030, and 1050 shown in Figs. 13A to 13C for the results of simulated loading.

단계(S530)에서, 모의 적재의 결과를 기초로 적재 점수가 산출된다. 예를 들어, 제1 모의 적재의 결과를 기초로 제1 적재 점수를 산출하고, 제2 모의 적재의 결과를 기초로 제2 적재 점수가 산출된다.In step S530, a loading score is calculated based on the result of simulation loading. For example, the first loading score is calculated based on the result of the first simulation loading, and the second loading score is calculated based on the result of loading the second simulation.

일 예에서, 상기 적재 점수는 적재 효율 점수에 기초하여 결정될 수 있다. 또한, 적재 효율 점수는 컨테이너에 적재된 객체의 수를 기초로 결정된 제1 점수, 적재 후 컨테이너의 잔여 공간을 기초로 결정된 제2 점수 및 컨테이너에 적재된 객체의 무게 중심을 기초로 결정된 제3 점수 중 적어도 하나의 점수와의 가중치 합(weighted sum)으로 결정될 수 있다. 상기 제1 점수는 컨테이너에 적재된 객체의 수가 많을수록 높은 점수로 결정될 수 있다. 상기 제2 점수는 컨테이너의 잔여 공간이 적을수록 높은 점수로 결정될 수 있다. 다만, 경우에 따라, 객체의 종류에 따라 컨테이너의 잔여 공간이 필요한 제품인 경우, 잔여 공간이 많을수록 높은 점수로 결정될 수도 있다. 상기 제3 점수는 무게 중심이 낮을수록 높은 점수로 결정될 수 있다.In one example, the loading score may be determined based on the loading efficiency score. The loading efficiency score is calculated based on a first score determined based on the number of objects loaded in the container, a second score determined based on the remaining space of the container after loading, and a third score determined based on the center of gravity of the object loaded in the container And a weighted sum of at least one of the scores. The first score may be determined as a higher score as the number of objects loaded in the container increases. The second score may be determined as a higher score as the remaining space of the container is smaller. However, in some cases, if the remaining space of the container is required depending on the type of the object, the higher the remaining space, the higher the score may be determined. The lower the center of gravity of the third score, the higher the score can be determined.

일 예에서, 컨테이너에 적재된 객체의 배송지를 기초로 결정된 운송 효율 점수를 더 고려하여 적재 점수가 결정될 수 있다. 구체적으로, 적재 점수는 상기 적재 효율 점수와 상기 운송 효율 점수의 가중치 합으로 결정될 수 있다. 일 예에서, 상기 운송 효율 점수는 컨테이너에 적재된 객체의 서로 다른 배송지의 개수에 기초하여 결정될 수 있다. 즉, 서로 다른 배송지의 개수가 많을수록 운송 효율 점수는 낮은 점수로 결정될 수 있다. 일 예에서, 상기 운송 효율 점수는 서로 다른 배송지 간의 거리의 합에 기초하여 결정될 수 있다. 보다 구체적인 예를 들어, 서로 다른 배송지 간에 최단 거리의 합(e.g. traveling salesman problem)을 산출하고, 거리가 길수록 운송 효율 점수는 낮은 점수로 결정될 수 있다. 다만, 적재 점수를 구하는 방법이 열거된 예시에 한정되는 것은 아니다.In one example, the loading score can be determined by further considering the transport efficiency score determined based on the destination of the object loaded in the container. Specifically, the loading score may be determined by summing up the loading efficiency score and the transportation efficiency score. In one example, the shipping efficiency score may be determined based on the number of different shipping destinations of the objects loaded in the container. That is, the higher the number of different destinations, the lower the score of transportation efficiency. In one example, the shipping efficiency score may be determined based on the sum of the distances between different shipping destinations. More specifically, for example, a traveling salesman problem (e.g., a traveling salesman problem) is calculated between different shipping destinations, and the longer the distance, the lower the transportation efficiency score can be determined. However, the method of obtaining the load score is not limited to the listed examples.

단계(S550)에서, 단계(S530)에 산출된 적재 점수를 기초로 최적의 적재 순서 및 배치 방향 결정된다. 구체적으로, 적재 점수의 비교 결과를 기초로, 가장 높은 적재 점수를 갖는 모의 적재의 적재 순서 및 배치 방향이 최적의 적재 순서 및 배치 방향으로 결정된다.In step S550, the optimum loading sequence and placement direction are determined based on the loading score calculated in step S530. Specifically, on the basis of the comparison result of the loading scores, the loading order and the loading direction of the simulation load having the highest loading score are determined in the optimum loading order and the placement direction.

실시예에 따라, 적재 점수가 아니라 적재 효율 점수는 운송 효율 점수 중 어느 하나의 점수를 기초로 최적의 적재 순서 및 배치 방향이 결정될 수도 있다.According to the embodiment, the loading efficiency score rather than the loading score may be determined based on the score of any one of the transportation efficiency scores.

지금까지, 도 12 내지 도 13c를 참조하여, 본 발명의 실시예에 따른 모의 적재 방법에 대하여 설명하였다. 상술한 방법에 따르면, 각 컨테이너 별로 적재 대상 객체를 적재하는 순서, 적재 대상 객체의 배치 방향 등이 제공될 수 있다. 이에 따라, 적재 효율 및 운송 효율이 크게 향상되고, 물류에 관한 제반 관리 비용이 절감될 수 있다.Up to now, the simulation loading method according to the embodiment of the present invention has been described with reference to Figs. 12 to 13C. According to the above-described method, the order of loading objects to be loaded and the direction of placement of objects to be loaded can be provided for each container. Accordingly, the loading efficiency and the transportation efficiency can be greatly improved, and the overall management cost for the logistics can be reduced.

지금까지 도 4 내지 도 13c를 참조하여 본 발명의 실시예에 따른 깊이 센서 기반의 적재 최적화 방법에 대하여 설명하였다. 특히, 이-커머스 물류 관리 등의 비즈니스에 본 발명이 적용되는 경우, 적재/운반 효율이 향상됨에 따라, 제반 관리 비용이 크게 절감될 수 있다. 더욱이, 저가의 깊이 센서와 컴퓨팅 장치 외에 별도의 시스템 구축 비용이 요구되지 않는 바, 이-커머스 사업자들은 최소 비용 투자를 통해 최대의 효과를 얻을 수 있다.4 to 13C, a depth sensor based loading optimization method according to an embodiment of the present invention has been described. Particularly, when the present invention is applied to a business such as e-commerce logistics management, as the loading / transportation efficiency is improved, the overall management cost can be greatly reduced. In addition, there is no need for a separate system construction cost besides a low-cost depth sensor and a computing device, and e-commerce providers can obtain the maximum effect through minimum cost investment.

지금까지 도 1 내지 도 13c를 참조하여 설명된 본 발명의 개념은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.The concepts of the present invention described above with reference to Figs. 1 to 13C can be implemented in computer readable code on a computer readable medium. The computer readable recording medium may be, for example, a removable recording medium (CD, DVD, Blu-ray disk, USB storage device, removable hard disk) . The computer program recorded on the computer-readable recording medium may be transmitted to another computing device via a network such as the Internet and installed in the other computing device, thereby being used in the other computing device.

도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.Although the operations are shown in the specific order in the figures, it should be understood that the operations need not necessarily be performed in the particular order shown or in a sequential order, or that all of the illustrated operations must be performed to achieve the desired result. In certain situations, multitasking and parallel processing may be advantageous. Moreover, the separation of the various configurations in the above-described embodiments should not be understood as such a separation being necessary, and the described program components and systems may generally be integrated together into a single software product or packaged into multiple software products .

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, I can understand that. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.

Claims (11)

컴퓨팅 장치에 의해 수행되는 깊이 센서 기반의 적재 최적화 방법에 있어서,
적재 대상 객체에 대한 깊이 영상을 획득하되, 상기 깊이 영상은 상기 깊이 센서를 통해 생성된 영상인 것인, 단계;
상기 깊이 영상을 기초로 상기 적재 대상 객체에 대한 3차원 점군을 생성하는 단계;
상기 3차원 점군을 기초로 상기 적재 대상 객체의 크기를 측정하는 단계; 및
상기 측정된 크기 및 기 정의된 컨테이너의 크기를 기초로, 상기 적재 대상 객체를 상기 컨테이너에 모의 적재하는 단계를 포함하는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
A depth sensor based load optimization method performed by a computing device,
Acquiring a depth image of a target object to be loaded, wherein the depth image is generated through the depth sensor;
Generating a 3D point cloud for the object to be loaded based on the depth image;
Measuring a size of the object to be loaded on the basis of the three-dimensional point cloud; And
And loading the object to be loaded into the container based on the measured size and the size of the predefined container.
Depth sensor based load optimization method.
제1 항에 있어서,
상기 적재 대상 객체는 제1 크기를 갖는 제1 적재 대상 객체 및 상기 제1 크기와 다른 제2 크기를 갖는 제2 적재 대상 객체를 포함하되,
상기 적재 대상 객체의 크기를 측정하는 단계는,
상기 제1 적재 대상 객체에 대한 3차원 점군을 기초로, 상기 제1 적재 대상 객체의 크기를 측정하는 단계; 및
상기 제2 적재 대상 객체에 대한 3차원 점군을 기초로, 상기 제2 적재 대상 객체의 크기를 측정하는 단계를 포함하는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
The method according to claim 1,
Wherein the object to be loaded includes a first object to be loaded having a first size and a second object to be loaded having a second size different from the first size,
Wherein the step of measuring the size of the object to be loaded comprises:
Measuring a size of the first object to be loaded on the basis of a three-dimensional point cloud of the first object to be loaded; And
And measuring the size of the second object to be loaded based on the three-dimensional point cloud of the second object to be loaded.
Depth sensor based load optimization method.
제1 항에 있어서,
상기 깊이 영상을 획득하는 단계는,
제1 각도로 상기 적재 대상 객체를 스캔하여 생성된 제1 깊이 영상을 획득하는 단계; 및
상기 제1 각도와 다른 제2 각도로 상기 적재 대상 객체를 스캔하여 생성된 제2 깊이 영상을 획득하는 단계를 포함하고,
상기 3차원 점군을 생성하는 단계는,
상기 제1 깊이 영상을 기초로 제1 3차원 점군을 생성하고, 상기 제2 깊이 영상을 기초로 제2 3차원 점군을 생성하는 단계; 및
상기 제1 3차원 점군 및 상기 제2 3차원 점군을 정합하여, 상기 3차원 점군을 생성하는 단계를 포함하는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
The method according to claim 1,
Wherein the acquiring of the depth image comprises:
Acquiring a first depth image generated by scanning the object to be loaded at a first angle; And
And acquiring a second depth image generated by scanning the object to be loaded at a second angle different from the first angle,
Wherein the step of generating the three-
Generating a first three-dimensional point cloud based on the first depth image and generating a second three-dimensional point cloud based on the second depth image; And
Dimensional point cloud; and generating the three-dimensional point cloud by matching the first three-dimensional point cloud group and the second three-
Depth sensor based load optimization method.
제1 항에 있어서,
상기 적재 대상 객체는 복수이되,
상기 3차원 점군을 생성하는 단계는,
상기 복수의 적재 대상 객체 각각에 대한 3차원 점군을 생성하는 단계를 포함하며,
상기 적재 대상 객체의 크기를 측정하는 단계는,
상기 복수의 적재 대상 객체 중에서, 제1 개수의 적재 대상 객체를 제1 그룹으로 그룹핑하고, 제2 개수의 적재 대상 객체를 제2 그룹으로 그룹핑하는 단계;
상기 제1 그룹에 소속된 각각의 적재 대상 객체에 대한 3차원 점군을 병합하여 제1 3차원 점군을 생성하는 단계;
상기 제2 그룹에 소속된 각각의 적재 대상 객체에 대한 3차원 점군을 병합하여 제2 3차원 점군을 생성하는 단계; 및
상기 제1 3차원 점군을 기초로 상기 제1 그룹에 소속된 적재 대상 객체의 전체 크기를 측정하고, 상기 제2 3차원 점군을 기초로 상기 제2 그룹에 소속된 적재 대상 객체의 전체 크기를 측정하는 단계를 포함하는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
The method according to claim 1,
The object to be loaded is a plurality of objects,
Wherein the step of generating the three-
And generating a three-dimensional point cloud for each of the plurality of objects to be loaded,
Wherein the step of measuring the size of the object to be loaded comprises:
Grouping a first number of objects to be loaded into a first group and a second number of objects to be loaded into a second group among the plurality of objects to be loaded;
Generating a first three-dimensional point cloud by merging a three-dimensional point cloud for each object to be loaded belonging to the first group;
Generating a second three-dimensional point cloud by merging a three-dimensional point cloud for each object to be loaded belonging to the second group; And
Measuring a total size of the object to be loaded belonging to the first group based on the first three-dimensional point cloud group and measuring an overall size of the object to be loaded belonging to the second group based on the second three- Lt; RTI ID = 0.0 > 1, < / RTI >
Depth sensor based load optimization method.
제4 항에 있어서,
상기 복수의 적재 대상 객체 각각이 포함된 2차원 영상을 획득하는 단계; 및
상기 2차원 영상에서 상기 복수의 적재 대상 객체 각각에 대응되는 영역의 크기를 산출하는 단계를 더 포함하되,
상기 제1 개수 및 상기 제2 개수는 상기 영역의 크기를 기초로 동적으로 결정되는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
5. The method of claim 4,
Acquiring a two-dimensional image including each of the plurality of objects to be loaded; And
Further comprising calculating a size of an area corresponding to each of the plurality of objects to be loaded in the two-dimensional image,
Wherein the first number and the second number are dynamically determined based on the size of the region.
Depth sensor based load optimization method.
제1 항에 있어서,
상기 깊이 영상은 기준면으로부터 기 설정된 높이에 설치된 깊이 센서를 통해 생성된 영상이되,
상기 적재 대상 객체의 크기를 측정하는 단계는,
상기 적재 대상 객체가 위치하지 않은 상태의 상기 기준면에 대한 깊이 영상을 기초로 상기 기준면에 대한 3차원 점군을 생성하는 단계;
상기 기준면에 대한 3차원 점군에서 상기 기준면을 가리키는 제1 평면을 검출하는 단계;
상기 적재 대상 객체에 대한 3차원 점군에서 상기 제1 평면에 평행한 제2 평면을 검출하는 단계; 및
상기 제1 평면과 상기 제2 평면과의 거리를 기초로 상기 적재 대상 객체의 높이를 결정하는 단계를 포함하는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
The method according to claim 1,
The depth image is an image generated through a depth sensor installed at a predetermined height from a reference surface,
Wherein the step of measuring the size of the object to be loaded comprises:
Generating a three-dimensional point cloud with respect to the reference plane based on a depth image of the reference plane in a state where the object to be loaded is not located;
Detecting a first plane indicating the reference plane in a three-dimensional point cloud with respect to the reference plane;
Detecting a second plane parallel to the first plane in a three-dimensional point cloud of the object to be loaded; And
And determining a height of the object to be loaded based on a distance between the first plane and the second plane.
Depth sensor based load optimization method.
제1 항에 있어서,
상기 적재 대상 객체의 크기를 측정하는 단계는,
상기 3차원 점군에서 상기 적재 대상 객체의 제1 단면에 대응되는 제1 평면을 추출하는 단계;
상기 제1 평면을 2차원 좌표평면 상으로 이동시키는 제1 회전변환을 수행하는 단계; 및
상기 2차원 좌표평면 상에서 측정된 상기 제1 평면의 크기를 기초로 상기 적재 대상 객체의 크기를 결정하는 단계를 포함하는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
The method according to claim 1,
Wherein the step of measuring the size of the object to be loaded comprises:
Extracting a first plane corresponding to a first end face of the object to be loaded in the 3D point group;
Performing a first rotation transformation to move the first plane onto a two-dimensional coordinate plane; And
And determining the size of the object to be loaded based on the size of the first plane measured on the two-dimensional coordinate plane.
Depth sensor based load optimization method.
제7 항에 있어서,
상기 제1 평면의 크기를 기초로 상기 적재 대상 객체의 크기를 결정하는 단계는,
상기 2차원의 좌표평면 상에서, 제2 평면을 회전시키는 제2 회전변환을 수행하되, 상기 제2 평면은 상기 제1 회전변환 된 제1 평면을 가리키는 것인, 제1 단계;
상기 2차원의 좌표평면을 구성하는 가로축 또는 세로축을 기준으로, 상기 제2 회전변환 된 제2 평면의 최대 좌표 값과 최소 좌표 값과의 차이 값을 산출하는 제2 단계;
회전각을 변경해가며, 상기 제1 단계 및 상기 제2 단계를 반복하여 수행하는 제3 단계; 및
상기 제1 단계 내지 상기 제3 단계를 통해 산출된 복수의 차이 값 중에서 어느 하나의 값을 상기 적재 대상 객체의 크기로 결정하는 단계를 포함하는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
8. The method of claim 7,
Wherein the step of determining the size of the object to be loaded based on the size of the first plane comprises:
Performing a second rotation transformation to rotate the second plane on the two-dimensional coordinate plane, the second plane indicating the first rotation-converted first plane;
A second step of calculating a difference value between a maximum coordinate value and a minimum coordinate value of the second rotation-converted second plane on the basis of a horizontal axis or a vertical axis constituting the two-dimensional coordinate plane;
A third step of repeating the first step and the second step while changing the rotation angle; And
And determining a value of any one of a plurality of difference values calculated through the first to third steps as the size of the object to be loaded,
Depth sensor based load optimization method.
제8 항에 있어서,
상기 어느 하나의 값은,
상기 제1 단계 내지 상기 제3 단계를 통해 산출된 복수의 차이 값 중에서 최소 값인 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
9. The method of claim 8,
The value of any one of the above-
Wherein the difference value is a minimum value among a plurality of difference values calculated through the first step to the third step.
Depth sensor based load optimization method.
제1 항에 있어서,
상기 적재 대상 객체는 적어도 일부는 크기가 서로 다른 복수의 객체를 포함하고,
상기 적재 대상 객체를 상기 컨테이너에 모의 적재하는 단계는,
상기 복수의 객체에 대한 적재 순서 및 배치 방향 중 적어도 하나를 변경해가며 제1 모의 적재 및 제2 모의 적재를 수행하는 단계를 포함하고,
상기 제1 모의 적재와 상기 제2 모의 적재의 비교 결과에 기초하여, 최적의 적재 순서 및 배치 방향을 결정하는 단계를 더 포함하는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
The method according to claim 1,
Wherein the object to be loaded includes at least a plurality of objects having different sizes,
Wherein the step of loading the object to be loaded into the container comprises:
And performing a first simulation loading and a second simulation loading while changing at least one of a loading order and a placement direction for the plurality of objects,
Further comprising determining an optimal loading sequence and placement direction based on a comparison result of the first simulation load and the second simulation load,
Depth sensor based load optimization method.
제10 항에 있어서,
상기 최적의 적재 순서 및 배치 방향을 결정하는 단계는,
상기 제1 모의 적재의 결과를 기초로 제1 적재 점수를 산출하고, 상기 제2 모의 적재의 결과를 기초로 제2 적재 점수를 산출하는 단계; 및
상기 제1 적재 점수 및 상기 제2 적재 점수의 비교 결과를 기초로, 상기 최적의 적재 순서 및 배치 방향을 결정하는 단계를 포함하되,
상기 제1 적재 점수 및 상기 제2 적재 점수는,
컨테이너에 적재된 객체의 수, 적재 후 컨테이너의 잔여 공간 및 컨테이너에 적재된 객체의 무게 중심을 기초로 결정된 적재 효율 점수와 컨테이너에 적재된 객체의 배송지를 기초로 결정된 운송 효율 점수의 가중치 합(weighted sum)으로 결정되는 것을 특징으로 하는,
깊이 센서 기반의 적재 최적화 방법.
11. The method of claim 10,
Wherein the step of determining the optimal loading order and placement direction comprises:
Calculating a first loading score based on a result of the first simulation loading and calculating a second loading score based on a result of the second simulation loading; And
Determining the optimal loading order and placement direction on the basis of a comparison result of the first loading score and the second loading score,
Wherein the first loading score and the second loading score are < RTI ID = 0.0 >
A weighted sum of the transportation efficiency score determined based on the number of objects loaded in the container, the remaining space of the container after loading, and the center of gravity of the object loaded in the container and the destination of the object loaded in the container sum).
Depth sensor based load optimization method.
KR1020170133952A 2016-10-27 2017-10-16 Method and System for loading optimization based on depth sensor KR20180046361A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160140894 2016-10-27
KR20160140894 2016-10-27

Publications (1)

Publication Number Publication Date
KR20180046361A true KR20180046361A (en) 2018-05-08

Family

ID=62187628

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170133952A KR20180046361A (en) 2016-10-27 2017-10-16 Method and System for loading optimization based on depth sensor

Country Status (1)

Country Link
KR (1) KR20180046361A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110414119A (en) * 2019-07-23 2019-11-05 武汉科技大学 A kind of yard craft shellfish bit optimization method based on improvement evolution algorithmic
KR20200136432A (en) * 2018-05-18 2020-12-07 이베이 인크. Physical object boundary detection technologies and systems
CN112631379A (en) * 2021-01-06 2021-04-09 Oppo广东移动通信有限公司 Cover plate assembling method and electronic equipment
KR20220009745A (en) * 2020-07-16 2022-01-25 삼성에스디에스 주식회사 Method and apparatus for determining dimension of space for packing objects
WO2023158047A1 (en) * 2022-02-18 2023-08-24 주식회사엔에스이 Optimal placement design method for 3d irregular objects in containers
KR102634025B1 (en) * 2022-11-24 2024-02-07 한국철도기술연구원 Method and device for providing loading simulation for optimal space utilization and stability

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200136432A (en) * 2018-05-18 2020-12-07 이베이 인크. Physical object boundary detection technologies and systems
US11830199B2 (en) 2018-05-18 2023-11-28 Ebay Inc. Physical object boundary detection techniques and systems
CN110414119A (en) * 2019-07-23 2019-11-05 武汉科技大学 A kind of yard craft shellfish bit optimization method based on improvement evolution algorithmic
CN110414119B (en) * 2019-07-23 2023-04-18 武汉科技大学 Port ship berth optimization method based on improved evolution algorithm
KR20220009745A (en) * 2020-07-16 2022-01-25 삼성에스디에스 주식회사 Method and apparatus for determining dimension of space for packing objects
CN112631379A (en) * 2021-01-06 2021-04-09 Oppo广东移动通信有限公司 Cover plate assembling method and electronic equipment
WO2023158047A1 (en) * 2022-02-18 2023-08-24 주식회사엔에스이 Optimal placement design method for 3d irregular objects in containers
KR102634025B1 (en) * 2022-11-24 2024-02-07 한국철도기술연구원 Method and device for providing loading simulation for optimal space utilization and stability

Similar Documents

Publication Publication Date Title
KR20180046361A (en) Method and System for loading optimization based on depth sensor
US11189033B2 (en) Robotic system with automated package registration mechanism and auto-detection pipeline
JP6729953B1 (en) Robot system with error detection and dynamic packing mechanism
US11488323B2 (en) Robotic system with dynamic packing mechanism
CN112589791B (en) Robotic system with wall-based packaging mechanism and method of operation thereof
KR102325417B1 (en) A robotic system with packing mechanism
KR102400028B1 (en) Robotic system for processing packages arriving out of sequence
KR101918168B1 (en) Method for performing 3D measurement and Apparatus thereof
CN113253737B (en) Shelf detection method and device, electronic equipment and storage medium
JP2021051721A (en) Method and computing system for object identification
CN111498212B (en) Robotic system for handling out-of-order arriving packages
CN111498213B (en) Robot system with dynamic packaging mechanism
TWI843363B (en) Shelf positioning method of a transporting device and transporting device capable of positioning a shelf
CN117474892A (en) Goods shelf identification method, mobile robot and storage medium
CN117630966A (en) Goods shelf detection, goods shelf butt joint method, robot and computer storage medium
CN111559544A (en) Robot system with error detection and dynamic packaging mechanism

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right