KR20220115742A - Method and system of generating data for machine learning training - Google Patents

Method and system of generating data for machine learning training Download PDF

Info

Publication number
KR20220115742A
KR20220115742A KR1020210019095A KR20210019095A KR20220115742A KR 20220115742 A KR20220115742 A KR 20220115742A KR 1020210019095 A KR1020210019095 A KR 1020210019095A KR 20210019095 A KR20210019095 A KR 20210019095A KR 20220115742 A KR20220115742 A KR 20220115742A
Authority
KR
South Korea
Prior art keywords
generating
data
virtual environment
information
shape information
Prior art date
Application number
KR1020210019095A
Other languages
Korean (ko)
Other versions
KR102556642B1 (en
Inventor
김덕수
김대건
김영우
조재수
박요한
한현규
송영기
Original Assignee
한국기술교육대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국기술교육대학교 산학협력단 filed Critical 한국기술교육대학교 산학협력단
Priority to KR1020210019095A priority Critical patent/KR102556642B1/en
Publication of KR20220115742A publication Critical patent/KR20220115742A/en
Application granted granted Critical
Publication of KR102556642B1 publication Critical patent/KR102556642B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/12Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Pure & Applied Mathematics (AREA)
  • Multimedia (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Medical Informatics (AREA)
  • Computational Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Architecture (AREA)
  • Computational Linguistics (AREA)
  • Image Analysis (AREA)

Abstract

The present invention relates to a method performed by a device for generating data for learning of object posture recognition. A data generating method includes the steps of: generating shape information about an object to be recognized as a posture of an object; generating a virtual environment in which the object is located using shape information; and photographing the object in a virtual environment. According to the present invention, data suitable for an objective function of an artificial intelligence learning model can be generated.

Description

기계 학습 훈련을 위한 데이터 생성방법 및 시스템{METHOD AND SYSTEM OF GENERATING DATA FOR MACHINE LEARNING TRAINING}Data generation method and system for machine learning training

본 발명은 기계 학습 훈련을 위한 데이터 생성방법 및 시스템에 관한 것으로, 더욱 상세하게는 물체의 자세 인식을 위한 인공 신경망의 학습용 데이터 생성방법 및 시스템에 관한 것이다.The present invention relates to a data generating method and system for machine learning training, and more particularly, to a data generating method and system for learning of an artificial neural network for posture recognition of an object.

제조 공정 자동화는 수작업 공정보다 효율성이 높고, 인력 감소로 인한 자동화 장비 교체의 필요성 증가 및 비전과 로봇 기술의 발전으로 산업혁명 이후 꾸준히 발전해왔다. 제조 공정 자동화는 단순 반복 작업을 대체할 수 있는 로봇개발에 집중되어 로봇 반복 정밀도 향상 등과 같은 하드웨어 관련 분야에서 주로 연구되어 왔다.Manufacturing process automation is more efficient than manual processes, and has been steadily developing since the Industrial Revolution due to the increase in the need for replacement of automated equipment due to the reduction of manpower and the development of vision and robot technology. Manufacturing process automation has been focused on the development of robots that can replace simple repetitive tasks, and has been mainly researched in hardware-related fields such as improving robot repeatability.

그러나 전자분야의 부품 포장 및 조립공정 작업에 대한 자동화는 기술개발의 한계로 인하여 여전히 수작업에 의존하고 있다. 최근 4차 산업혁명으로 인하여 스마트공장 분야가 대두되면서 실시간 모니터링, 부품조립, 물류 및 작업 내역 추적관리, 작업 상태파악, 불량관리 등의 분야에 자동화를 위한 인공지능기술이 적용되고 있다.However, automation of parts packaging and assembly process work in the electronic field still relies on manual work due to the limitations of technology development. With the recent rise of the smart factory field due to the 4th industrial revolution, artificial intelligence technology for automation is being applied to fields such as real-time monitoring, parts assembly, logistics and work history tracking management, work status identification, and defect management.

전자부품 포장 및 조립 공정 자동화에 대한 수요의 증가로 부품조립 분야에서는 인공지능기술을 기반으로 움직이는 물체를 인식하고 추적하여 로봇이 물체를 파지할 수 있도록 하는 비주얼 서보잉 기술 개발이 활발히 진행되고 있다. 비주얼 서보잉을 이용한 물체 추적 기술은 위치기반 시각적 제어(Position Based Visual Servoing, PBVS)와 이미지기반 시각적 제어(Image Based Visual Servoing, IBVS)로 분류될 수 있다.As the demand for electronic component packaging and assembly process automation increases, the development of visual servoing technology that recognizes and tracks moving objects based on artificial intelligence technology so that the robot can grip the object is actively progressing in the parts assembly field. Object tracking technology using visual servoing can be classified into Position Based Visual Servoing (PBVS) and Image Based Visual Servoing (IBVS).

PBVS는 3차원 공간 속의 물체와 2차원 공간의 영상과의 관계를 이용하여 제어하는 기법으로써, 카메라 내외부 매개 변수 추출 및 영상 왜곡으로 인한 오차 보상이 필요하다는 단점이 있다.PBVS is a control technique using the relationship between an object in a 3D space and an image in a 2D space, and has a disadvantage in that it is necessary to extract internal and external parameters of the camera and to compensate for errors due to image distortion.

IBVS는 카메라 내외부 매개변수 추출은 필요하지 않지만, 카메라 영상에서 획득한 특징점들이 영상 위의 목표 위치로 이동하는 제어 방식을 카메라 영상에 의존하고 있기 때문에 조명 등 외부 환경 변화에 영향을 받아 제어가 어려운 단점이 있다. 따라서 이러한 단점을 보완하기 위해 두 가지 방법을 결합하여 사용하는 기술 등의 연구개발이 진행되고 있다.Although IBVS does not require the extraction of internal and external parameters of the camera, it is difficult to control due to the influence of external environment changes such as lighting because it depends on the camera image to control the movement of the feature points acquired from the camera image to the target position on the image. There is this. Therefore, in order to compensate for these shortcomings, research and development, such as a technology that combines the two methods, is in progress.

제조 현장의 작업자들이 작업하고 있는 조립분야를 로봇으로 대체하기 위해서는 물체 검출 정확도가 높고 실시간 처리 기술이 요구되기 때문에 실제 현장에 적용할 수 있는 상용화 단계의 기술 개발은 미흡한 편이다. 현재 연구단계에서, 저속 동적 물체에 대한 비주얼 서보잉 기술은 로봇이 안정적으로 물체를 추적하는 단계까지 기술이 개발되어 있는 실정이다.In order to replace the assembly field where workers at the manufacturing site are working with robots, high object detection accuracy and real-time processing technology are required. In the current research stage, the visual servoing technology for low-speed dynamic objects has been developed until the robot stably tracks the object.

고속 동적 물체 조립의 경우, 물체 검출의 정확도 및 자세 추정 정밀도를 높이는 연구가 진행되어 왔지만, 동적 물체의 경우 속도가 높을수록 영상 블러링이 많이 발생하기 때문에 물체 검출 정확도와 자세 추정 정밀도가 떨어지는 문제점이 발생한다.In the case of high-speed dynamic object assembly, research has been carried out to increase the accuracy of object detection and posture estimation, but in the case of dynamic objects, the higher the speed, the more image blurring occurs. Occurs.

로봇은 비주얼 서보잉을 위해 먼저 타겟 물체를 정하고 그 물체의 위치와 방향을 인지해야 한다. 다음 로봇은 이미 알고 있는 DB를 통해 물체를 인식하고 스테레오 카메라를 통해 그 물체에 대한 3차원 좌표를 구한다. 또한 비주얼 서보잉을 위해서 그 물체의 자세가 추정되어야 한다. 물체의 자세 추정을 통해 비주얼 서보잉이 수행될 수 있다.For visual servoing, the robot must first determine the target object and recognize the position and direction of the object. The next robot recognizes an object through a known DB and obtains three-dimensional coordinates for the object through a stereo camera. Also, for visual servoing, the posture of the object must be estimated. Visual servoing may be performed by estimating the posture of the object.

물체 인식을 위해 물체의 크기, 회전, 이동에 불변인 디스크립터(descriptor)를 사용하는 SIFT(Scale Invariant Feature Transform)를 사용한다. SIFT를 통해 물체가 인식된다.For object recognition, SIFT (Scale Invariant Feature Transform) is used, which uses a descriptor that is invariant to the size, rotation, and movement of an object. Objects are recognized through SIFT.

3차원 정보 획득을 위해 스테레오 비전을 사용될 수 있다. 두 영상 간의 매칭은 SIFT를 이용하여 매칭을 수행한 후, 3차원 정보가 획득된다. 획득된 3차원 정보들을 가지고 원하는 물체의 자세 추정이 수행된다. 정확한 자세 추정을 위해 3차원 정보를 이용하여 위치 오차를 통한 매칭 검증이 수행된다.Stereo vision can be used to obtain three-dimensional information. Matching between two images is performed using SIFT, and then 3D information is obtained. Posture estimation of a desired object is performed using the obtained 3D information. For accurate posture estimation, matching verification is performed through position error using 3D information.

산업 현장 제조 공정과정에 실제 적용하기 위해서는 먼저, 실시간으로 안정적인 물체 검출이 이루어져야 한다. 그러나 기존 전통방식을 동적 물체 조립에 적용할 경우 정확한 물체 검출 및 자세 추정 정밀도가 저하되는 문제점이 발생될 수 있다.In order to be practically applied to the industrial field manufacturing process, first, stable object detection in real time must be performed. However, when the conventional method is applied to dynamic object assembly, there may be a problem in that the accuracy of accurate object detection and posture estimation is deteriorated.

최근에는 인공지능 알고리즘, 예를 들어 인공 신경망에 기반하는 물체 인식 기술이 로봇의 비주얼 서보잉에 사용되고 있다. 그런데, 인공 신경망을 비주얼 서보잉에 이용하기 위해서는, 인공 신경망에 대한 학습이 선행되어야 한다.Recently, artificial intelligence algorithms, for example, object recognition technology based on artificial neural networks, have been used for visual servoing of robots. However, in order to use the artificial neural network for visual servoing, learning about the artificial neural network must be preceded.

인공 신경망의 학습에는 학습용 데이터와 테스트용 데이터가 필요하고, 인공 신경망의 학습 효율은 데이터의 양과 질에 달려있기 때문에 양질의 다량의 데이터가 필요하다. 그런데 학습에 필요한 데이터를 직접 만들어서 사용되는 경우 보다는 이미 만들어진 공공 데이터를 이용하기 때문에, 목적 함수에 적합한 학습용 데이터 및 테스트용 데이터를 얻는 것은 어려운 일이다.Learning of an artificial neural network requires data for training and testing, and since the learning efficiency of an artificial neural network depends on the quantity and quality of data, a large amount of high-quality data is required. However, it is difficult to obtain training data and test data suitable for the objective function because public data that has already been created is used rather than when the data required for learning is directly created and used.

관련 발명으로서 공개번호 제10-2021-0002410호의 발명은, 외형인식모델 학습용 데이터셋 구축 방법, 장치 및 프로그램에 관한 것으로, 학습용 영상데이터 획득단계, 학습용 영상데이터 제공단계, 세부 개별외형특성 획득단계 및 학습용 데이터셋 구축 단계를 포함하는 방법을 개시하고 있으나, 어떻게 학습용 영상데이터를 획득하는 지에 대해서는 구체적인 언급이 없다.The invention of Publication No. 10-2021-0002410 as a related invention relates to a method, apparatus and program for constructing a dataset for learning an appearance recognition model, and includes a step of acquiring image data for learning, a step of providing image data for learning, a step of acquiring detailed individual appearance characteristics, and Although a method including a training dataset construction step is disclosed, there is no specific mention on how to acquire the training image data.

관련 발명으로서 등록번호 제10-2207489호의 발명은, 데이터 생성방법에 관한 것으로, 냉동기기의 운전에 관한 데이터 수집에 있어서, 실제 데이터를 기반으로 어떻게 인공데이터를 생성하는 지에 대한 언급이 없다.The invention of Registration No. 10-2207489 as a related invention relates to a data generation method, and there is no mention of how to generate artificial data based on actual data in data collection related to the operation of a refrigeration device.

관련 발명으로서 공개번호 제10-2021-0004162호의 발명은, 인공지능 머신러닝 학습을 위한 데이터셋 자동 생성 장치 및 SW와 그의 제어 방법에 관한 것으로, 공간에 위치한 물품에 대한 이미지를 획득하는 카메라를 포함하는 데이터셋 자동 생성 인공지능 장치를 개시하고 있으나, 카메라는 사람에 의해 수동으로 조작될 수 밖에 없기 때문에 자동화의 문제점이 있다.The invention of Publication No. 10-2021-0004162 as a related invention relates to an apparatus for automatically generating a dataset for artificial intelligence machine learning learning, a SW, and a control method thereof, including a camera for acquiring an image of an article located in space Although an artificial intelligence device for automatically generating datasets is disclosed, there is a problem in automation because the camera can only be manually operated by a human.

위에 소개된 관련 발명들은 인공지능 모델의 학습에 필요한 데이터를 생성한다는 발명의 목적 면에서 본 발명과 공통점이 있을 수는 있으나, 가상환경을 통해 영상을 직접 생성하는 본 발명의 구성과 구별되고, 따라서 효과 면에서도 큰 차이를 보이고 있다.Although the related inventions introduced above may have in common with the present invention in terms of the purpose of the invention of generating data necessary for learning an artificial intelligence model, it is distinguished from the configuration of the present invention that directly generates an image through a virtual environment, and thus There is also a big difference in effectiveness.

한국 공개 특허 제10-2021-0002410호 (2021.01.08 공개)Korean Patent Publication No. 10-2021-0002410 (published on Aug. 8, 2021) 한국 등록 특허 제10-2207489호 (2021,01.26 공고)Korean Registered Patent No. 10-2207489 (Announced on Jan. 26, 2021) 한국 공개 특허 제10-2021-0004162호 (2021.01.13 공개)Korean Patent Laid-Open Patent No. 10-2021-00004162 (published on January 13, 2021)

본 발명이 해결하고자 하는 일 과제는, 공공 데이터에 의존하여 학습을 수행했던 종래 기술에 따른 인공지능 학습 모델의 학습 훈련의 문제점을 해결하는 것이다.One problem to be solved by the present invention is to solve the problem of learning and training of an artificial intelligence learning model according to the prior art that performed learning depending on public data.

본 발명이 해결하고자 하는 일 과제는, 인공지능 학습 모델의 목적 함수에 적합한 학습용 및 테스트용 데이터를 직접 생성할 수 있는 방법 및 시스템을 제안하는 것이다.One problem to be solved by the present invention is to propose a method and system capable of directly generating data for learning and testing suitable for an objective function of an artificial intelligence learning model.

본 발명이 해결하고자 하는 일 과제는, 물체의 3차원 설계 정보를 이용하여 물체의 자세 인식의 학습에 필요한 데이터를 직접 생성할 수 있는 방법 및 시스템을 제안하는 것이다.One problem to be solved by the present invention is to propose a method and system capable of directly generating data required for learning of posture recognition of an object by using three-dimensional design information of the object.

본 발명의 일 실시 예에 따른 데이터 생성방법은, 물체의 자세 인식의 학습을 위한 데이터를 생성하는 장치에 의해 수행되는 방법으로서, 물체의 자세 인식 대상이 되는 물체에 관한 형상 정보를 생성하는 단계; 형상 정보를 이용하여 상기 물체가 위치하는 가상환경을 생성하는 단계; 및 가상환경에서 물체를 촬영하는 단계를 포함하도록 구성될 수 있다.A data generating method according to an embodiment of the present invention is a method performed by an apparatus for generating data for learning the posture recognition of an object, comprising: generating shape information about an object as a posture recognition target of the object; generating a virtual environment in which the object is located by using shape information; and photographing an object in a virtual environment.

본 발명의 일 실시 예에 따른 데이터 생성방법은, 물체의 자세 인식의 학습을 위한 데이터를 생성하는 장치에 의해 수행되는 방법으로서, 물체의 자세 인식 대상이 되는 물체에 관한 형상 정보를 생성하는 단계; 형상 정보를 이용하여 상기 물체가 위치하는 가상환경을 생성하는 단계; 및 가상환경에서 물체를 촬영하는 단계를 포함하고, 물체에 관한 형상 정보를 생성하는 단계는, 물체에 관한 CAD 모델을 생성하는 단계를 포함하도록 구성될 수 있다.A data generating method according to an embodiment of the present invention is a method performed by an apparatus for generating data for learning the posture recognition of an object, comprising: generating shape information about an object as a posture recognition target of the object; generating a virtual environment in which the object is located by using shape information; and photographing the object in a virtual environment, wherein the generating of the shape information about the object may include generating a CAD model of the object.

본 발명의 일 실시 예에 따른 데이터 생성방법은, 물체의 자세 인식의 학습을 위한 데이터를 생성하는 장치에 의해 수행되는 방법으로서, 물체의 자세 인식 대상이 되는 물체에 관한 형상 정보를 생성하는 단계; 형상 정보를 이용하여 상기 물체가 위치하는 가상환경을 생성하는 단계; 및 가상환경에서 물체를 촬영하는 단계를 포함하고, 가상환경을 생성하는 단계는, 물체가 속하는 3차원 공간을 정의하기 위해 기준 축에 관한 정보를 수신하는 단계; 기준 축에 대해 상기 물체의 기준 자세에 관한 정보를 수신하는 단계; 및 물체의 배경에 관한 정보를 수신하는 단계를 포함하도록 구성될 수 있다.A data generating method according to an embodiment of the present invention is a method performed by an apparatus for generating data for learning the posture recognition of an object, comprising: generating shape information about an object as a posture recognition target of the object; generating a virtual environment in which the object is located by using shape information; and photographing an object in a virtual environment, wherein the generating of the virtual environment includes: receiving information about a reference axis to define a three-dimensional space to which the object belongs; receiving information about a reference posture of the object with respect to a reference axis; and receiving information regarding the background of the object.

본 발명의 일 실시 예에 따른 데이터 생성방법은, 물체의 자세 인식의 학습을 위한 데이터를 생성하는 장치에 의해 수행되는 방법으로서, 물체의 자세 인식 대상이 되는 물체에 관한 형상 정보를 생성하는 단계; 형상 정보를 이용하여 상기 물체가 위치하는 가상환경을 생성하는 단계; 및 가상환경에서 물체를 촬영하는 단계를 포함하고, 물체를 촬영하는 단계는, 상기 물체에 대한 RGB 정보 및 깊이 정보를 수집하는 단계를 포함하도록 구성될 수 있다.A data generating method according to an embodiment of the present invention is a method performed by an apparatus for generating data for learning the posture recognition of an object, comprising: generating shape information about an object as a posture recognition target of the object; generating a virtual environment in which the object is located by using shape information; and photographing the object in a virtual environment, wherein the photographing of the object may be configured to include collecting RGB information and depth information about the object.

본 발명의 일 실시 예에 따른 데이터 생성 시스템은, 물체의 자세 인식의 대상이 되는 물체에 관한 형상 정보를 이용하여 물체 및 물체가 속하는 3차원 공간을 생성하는 가상환경 설정부; 가상환경에서 상기 물체를 촬영하는 가상 촬영부; 및 촬영된 영상, 물체에 관한 정보 및 촬영에 사용된 카메라 정보가 포함된 데이터를 생성하는 학습용 데이터 생성부를 포함하도록 구성될 수 있다.A data generation system according to an embodiment of the present invention includes: a virtual environment setting unit for generating an object and a three-dimensional space to which the object belongs by using shape information about an object that is a target of posture recognition of the object; a virtual photographing unit for photographing the object in a virtual environment; and a data generating unit for learning that generates data including a photographed image, information about an object, and camera information used for photographing.

또한, 데이터 생성방법은, 런타임 핸들러를 이용하여 오일러 각도로 출력되는 물체의 자세 정보의 기준축을 설정하는 단계를 더 포함하도록 구성될 수 있다.In addition, the data generating method may be configured to further include the step of setting a reference axis of the posture information of the object output as an Euler angle using a runtime handler.

또한, 데이터 생성방법은, 물체에 관한 CAD 파일을 이용하여 메쉬 파일을 생성하는 단계를 더 포함하도록 구성될 수 있다.Also, the data generating method may be configured to further include generating a mesh file by using a CAD file related to the object.

또한, 데이터 생성방법은, 카메라에 관한 정보를 수신하는 단계를 더 포함하도록 구성될 수 있다.Also, the data generating method may be configured to further include receiving information about the camera.

또한, 데이터 생성방법은, 물체의 좌표 값 정보 및 회전 정보를 수신하는 단계를 더 포함하도록 구성될 수 있다.Also, the data generating method may be configured to further include receiving coordinate value information and rotation information of the object.

또한, 데이터 생성방법은, 이미지의 크기, 상기 물체의 위치, 물체의 자세 및 물체의 점유 범위에 관한 정보를 포함하는 데이터를 생성하는 단계를 더 포함하도록 구성될 수 있다.In addition, the data generating method may be configured to further include generating data including information about the size of the image, the position of the object, the posture of the object, and the occupancy range of the object.

기타 실시 예의 구체적인 사항은 "발명을 실시하기 위한 구체적인 내용" 및 첨부 "도면"에 포함되어 있다.Specific details of other embodiments are included in "Details for carrying out the invention" and attached "drawings".

본 발명의 이점 및/또는 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 각종 실시 예를 참조하면 명확해질 것이다.Advantages and/or features of the present invention, and methods for achieving them, will become apparent with reference to various embodiments described below in detail in conjunction with the accompanying drawings.

그러나 본 발명은 이하에서 개시되는 각 실시 예의 구성만으로 한정되는 것이 아니라 서로 다른 다양한 형태로도 구현될 수도 있으며, 단지 본 명세서에서 개시한 각각의 실시 예는 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구범위의 각 청구항의 범주에 의해 정의될 뿐임을 알아야 한다.However, the present invention is not limited to the configuration of each embodiment disclosed below, but may also be implemented in a variety of different forms, and each embodiment disclosed herein only makes the disclosure of the present invention complete, It is provided to fully inform those of ordinary skill in the art to which the scope of the present invention belongs, and it should be understood that the present invention is only defined by the scope of each of the claims.

본 발명에 의하면, 인공지능 학습 모델의 목적 함수에 적합한 데이터를 생성할 수 있다.According to the present invention, it is possible to generate data suitable for the objective function of the artificial intelligence learning model.

또한, 물체의 위치 및 회전 정보가 포함된 데이터를 물체 자세 인식의 인공지능 모델의 학습에 이용할 수 있다.In addition, data including position and rotation information of an object can be used for learning an artificial intelligence model of object posture recognition.

도 1은 본 발명의 일 실시 예에 따른 데이터 생성 시스템의 블록도이다.
도 2는 본 발명의 일 실시 예에 따른 데이터 생성 시스템의 네트워크 관계도이다.
도 3은 본 발명의 일 실시 예에 따른 데이터 생성 방법의 흐름도이다.
도 4는 본 발명의 일 실시 예에 따른 데이터 생성 방법의 예시도이다.
도 5는 본 발명의 일 실시 예에 따른 데이터 생성 시스템 사용자 인터페이스의 예시도이다.
도 6은 본 발명의 일 실시 예에 따른 데이터 생성 시스템 사용자 인터페이스의 예시도이다.
도 7은 본 발명의 일 실시 예에 따른 데이터 생성방법에 의해 생성된 데이터의 예시도이다.
1 is a block diagram of a data generation system according to an embodiment of the present invention.
2 is a network relationship diagram of a data generating system according to an embodiment of the present invention.
3 is a flowchart of a data generation method according to an embodiment of the present invention.
4 is an exemplary diagram of a data generation method according to an embodiment of the present invention.
5 is an exemplary diagram of a data generation system user interface according to an embodiment of the present invention.
6 is an exemplary diagram of a data generation system user interface according to an embodiment of the present invention.
7 is an exemplary diagram of data generated by a data generating method according to an embodiment of the present invention.

본 발명을 상세하게 설명하기 전에, 본 명세서에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 무조건 한정하여 해석되어서는 아니 되며, 본 발명의 발명자가 자신의 발명을 가장 최선의 방법으로 설명하기 위해서 각종 용어의 개념을 적절하게 정의하여 사용할 수 있고, 더 나아가 이들 용어나 단어는 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 함을 알아야 한다.Before describing the present invention in detail, the terms or words used herein should not be construed as being unconditionally limited to their ordinary or dictionary meanings, and in order for the inventor of the present invention to describe his invention in the best way It should be understood that the concepts of various terms can be appropriately defined and used, and further, these terms or words should be interpreted as meanings and concepts consistent with the technical idea of the present invention.

즉, 본 명세서에서 사용된 용어는 본 발명의 바람직한 실시 예를 설명하기 위해서 사용되는 것일 뿐이고, 본 발명의 내용을 구체적으로 한정하려는 의도로 사용된 것이 아니며, 이들 용어는 본 발명의 여러 가지 가능성을 고려하여 정의된 용어임을 알아야 한다.That is, the terms used in this specification are only used to describe preferred embodiments of the present invention, and are not used for the purpose of specifically limiting the content of the present invention, and these terms represent various possibilities of the present invention. It should be noted that the term has been defined with consideration in mind.

또한, 본 명세서에서, 단수의 표현은 문맥상 명확하게 다른 의미로 지시하지 않는 이상, 복수의 표현을 포함할 수 있으며, 유사하게 복수로 표현되어 있다고 하더라도 단수의 의미를 포함할 수 있음을 알아야 한다.Also, in this specification, it should be understood that, unless the context clearly indicates otherwise, the expression in the singular may include a plurality of expressions, and even if it is similarly expressed in plural, it should be understood that the meaning of the singular may be included. .

본 명세서의 전체에 걸쳐서 어떤 구성 요소가 다른 구성 요소를 "포함"한다고 기재하는 경우에는, 특별히 반대되는 의미의 기재가 없는 한 임의의 다른 구성 요소를 제외하는 것이 아니라 임의의 다른 구성 요소를 더 포함할 수도 있다는 것을 의미할 수 있다.In the case where it is stated throughout this specification that a component "includes" another component, it does not exclude any other component, but further includes any other component unless otherwise indicated. It could mean that you can.

더 나아가서, 어떤 구성 요소가 다른 구성 요소의 "내부에 존재하거나, 연결되어 설치된다"라고 기재한 경우에는, 이 구성 요소가 다른 구성 요소와 직접적으로 연결되어 있거나 접촉하여 설치되어 있을 수 있고, 일정한 거리를 두고 이격되어 설치되어 있을 수도 있으며, 일정한 거리를 두고 이격되어 설치되어 있는 경우에 대해서는 해당 구성 요소를 다른 구성 요소에 고정 내지 연결하기 위한 제 3의 구성 요소 또는 수단이 존재할 수 있으며, 이 제 3의 구성 요소 또는 수단에 대한 설명은 생략될 수도 있음을 알아야 한다.Furthermore, when it is described that a component is "exists in or is connected to" of another component, this component may be directly connected or installed in contact with another component, and a certain It may be installed spaced apart by a distance, and in the case of being installed spaced apart by a certain distance, a third component or means for fixing or connecting the corresponding component to another component may exist, and now It should be noted that the description of the components or means of 3 may be omitted.

반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결"되어 있다거나, 또는 "직접 접속"되어 있다고 기재되는 경우에는, 제 3의 구성 요소 또는 수단이 존재하지 않는 것으로 이해하여야 한다.On the other hand, when it is described that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the third element or means does not exist.

마찬가지로, 각 구성 요소 간의 관계를 설명하는 다른 표현들, 즉 " ~ 사이에"와 "바로 ~ 사이에", 또는 " ~ 에 이웃하는"과 " ~ 에 직접 이웃하는" 등도 마찬가지의 취지를 가지고 있는 것으로 해석되어야 한다.Likewise, other expressions describing the relationship between components, such as "between" and "immediately between", or "adjacent to" and "directly adjacent to", have the same meaning. should be interpreted as

또한, 본 명세서에서 "일면", "타면", "일측", "타측", "제 1", "제 2" 등의 용어는, 사용된다면, 하나의 구성 요소에 대해서 이 하나의 구성 요소가 다른 구성 요소로부터 명확하게 구별될 수 있도록 하기 위해서 사용되며, 이와 같은 용어에 의해서 해당 구성 요소의 의미가 제한적으로 사용되는 것은 아님을 알아야 한다.In addition, if terms such as "one side", "other side", "one side", "other side", "first", "second" are used in this specification, with respect to one component, this one component is It is used to be clearly distinguished from other components, and it should be understood that the meaning of the component is not limitedly used by such terms.

또한, 본 명세서에서 "상", "하", "좌", "우" 등의 위치와 관련된 용어는, 사용된다면, 해당 구성 요소에 대해서 해당 도면에서의 상대적인 위치를 나타내고 있는 것으로 이해하여야 하며, 이들의 위치에 대해서 절대적인 위치를 특정하지 않는 이상은, 이들 위치 관련 용어가 절대적인 위치를 언급하고 있는 것으로 이해하여서는 아니된다.In addition, in this specification, terms related to positions such as "upper", "lower", "left", "right", etc., if used, should be understood as indicating a relative position in the drawing with respect to the corresponding component, Unless an absolute position is specified for their position, these position-related terms should not be construed as referring to an absolute position.

또한, 본 명세서에서는 각 도면의 각 구성 요소에 대해서 그 도면 부호를 명기함에 있어서, 동일한 구성 요소에 대해서는 이 구성 요소가 비록 다른 도면에 표시되더라도 동일한 도면 부호를 가지고 있도록, 즉 명세서 전체에 걸쳐 동일한 참조 부호는 동일한 구성 요소를 지시하고 있다.In addition, in this specification, in specifying the reference numerals for each component of each drawing, the same component has the same reference number even if the component is indicated in different drawings, that is, the same reference is made throughout the specification. The symbols indicate the same components.

본 명세서에 첨부된 도면에서 본 발명을 구성하는 각 구성 요소의 크기, 위치, 결합 관계 등은 본 발명의 사상을 충분히 명확하게 전달할 수 있도록 하기 위해서 또는 설명의 편의를 위해서 일부 과장 또는 축소되거나 생략되어 기술되어 있을 수 있고, 따라서 그 비례나 축척은 엄밀하지 않을 수 있다.In the drawings attached to this specification, the size, position, coupling relationship, etc. of each component constituting the present invention are partially exaggerated, reduced, or omitted for convenience of explanation or in order to sufficiently clearly convey the spirit of the present invention. may be described, and thus the proportion or scale may not be exact.

또한, 이하에서, 본 발명을 설명함에 있어서, 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 구성, 예를 들어, 종래 기술을 포함하는 공지 기술에 대해 상세한 설명은 생략될 수도 있다.In addition, in the following, in describing the present invention, a detailed description of a configuration determined that may unnecessarily obscure the subject matter of the present invention, for example, a detailed description of a known technology including the prior art may be omitted.

이하, 본 발명의 실시 예에 대해 관련 도면들을 참조하여 상세히 설명하기로 한다.Hereinafter, an embodiment of the present invention will be described in detail with reference to the related drawings.

도 1은 본 발명의 일 실시 예에 따른 데이터 생성 시스템의 블록도이다.1 is a block diagram of a data generation system according to an embodiment of the present invention.

도 1을 참조하면, 데이터 생성 시스템(100)은 제어부(110), 입력 장치(120), 출력 장치(130), 저장 장치(140), 통신 장치(150), 및 메모리(160)를 포함하도록 구성될 수 있다. 그리고 메모리(160)는 런타임 핸들러(161), 임포트/엑스포트(162), 가상환경 설정부(163), 장면 컨트롤러(164) 및 카메라 컨트롤러(165)를 포함하도록 구성될 수 있다.Referring to FIG. 1 , the data generation system 100 includes a controller 110 , an input device 120 , an output device 130 , a storage device 140 , a communication device 150 , and a memory 160 . can be configured. In addition, the memory 160 may be configured to include a runtime handler 161 , an import/export 162 , a virtual environment setting unit 163 , a scene controller 164 , and a camera controller 165 .

제어부(110)는, 프로세서(processor)에 해당하는 중앙처리장치 형태로 구현될 수 있고, 데이터 생성방법을 구성하는 명령어 셋을 실행하는 기능을 수행한다.The control unit 110 may be implemented in the form of a central processing unit corresponding to a processor, and performs a function of executing an instruction set constituting a data generation method.

제어부(110)는 사용자 입력장치, 카메라, 출력 장치, 저장 장치, 통신 장치로의 데이터 송신 및 이들로부터의 데이터 수신을 통해 이들의 동작을 기본적으로 제어할 수 있다.The controller 110 may basically control their operations through data transmission to, and data reception from, a user input device, a camera, an output device, a storage device, and a communication device.

사용자 입력 장치(121)는, 데이터 생성방법(S100)의 실행에 있어서 필요한 각종 사용자 입력, 예를 들어 문자, 숫자 입력 등을 수신하는 기능을 수행한다.The user input device 121 performs a function of receiving various user inputs necessary for executing the data generating method S100, for example, characters and numbers.

카메라(122)는 실제 촬영된 이미지를 제공하는 기능을 한다. 예를 들어 카메라(122)는 가상환경에서 사용될 배경 이미지로서, 실제 공장 내의 조립라인이 촬영된 이미지, 예를 들어 RGB 정보 및 깊이 정보를 포함하는 이미지를 배경 이미지로 데이터 생성 장치(100)에 제공할 수 있다.The camera 122 functions to provide an actual photographed image. For example, the camera 122 is a background image to be used in a virtual environment, and an image of an assembly line in an actual factory, for example, an image including RGB information and depth information, is provided to the data generating device 100 as a background image. can do.

출력 장치(130)는, 데이터 생성방법(S100)의 실행에 있어서 사용자에게 각종 데이터와 정보, 예를 들어 런타임 핸들러(161), 사용자 인터페이스 등을 디스플레이 하거나, 소리를 출력하는 기능을 수행한다.The output device 130 performs a function of displaying various data and information to the user, for example, a runtime handler 161, a user interface, or the like, or outputting a sound when the data generating method S100 is executed.

저장 장치(140)는, 데이터 생성방법의 실행에 있어서 각종 데이터와 정보, 예를 들어 물체의 3차원 형상 정보, 카메라 정보 등을 저장하는 기능을 수행한다.The storage device 140 performs a function of storing various data and information, for example, 3D shape information of an object, camera information, and the like in executing the data generating method.

통신 장치(150)는, 데이터 생성방법의 실행에 있어서 카메라를 비롯하여 각종 외부 기기 및 외부 기기, 예를 들어 서버와 다양한 프로토콜을 통해 데이터를 송신 및 수신하는 기능을 수행한다. 따라서 통신 장치는 내부적으로 다양한 프로토콜에 대응하는 통신 모듈, 예를 들어 병렬통신 모듈, 직렬통신 모듈, 근거리 통신 모듈, 셀룰러 통신 모듈, 무선랜 통신 모듈, 및 인터넷 통신 모듈 등을 포함하도록 구성될 수 있다.The communication device 150 performs a function of transmitting and receiving data through various protocols including a camera and various external devices and external devices, for example, a server in executing the data generating method. Accordingly, the communication device may be configured to include a communication module corresponding to various protocols internally, for example, a parallel communication module, a serial communication module, a short-range communication module, a cellular communication module, a wireless LAN communication module, and an Internet communication module. .

메모리(160)는 전원의 ON/OFF에 따라 저장된 데이터가 유지되거나 사라지는 비휘발성 또는 휘발성 반도체 소자를 통해서 구현될 수 있다. 메모리(170)는 소프트웨어 형태로 구현된 명령 수행 모듈들을 로드하고, 이를 저장하는 기능을 수행한다.The memory 160 may be implemented through a non-volatile or volatile semiconductor device in which stored data is maintained or disappeared according to ON/OFF of power. The memory 170 loads and stores command execution modules implemented in software form.

런타임 핸들러(161)는, 3차원 가상공간에 기준 축을 설정하고, 기준 축에 따라 물체를 배치하는 기능을 수행한다.The runtime handler 161 sets a reference axis in the three-dimensional virtual space and performs a function of arranging an object along the reference axis.

임포트/엑스포트(162)는 물체의 입체 형상 정보, 예를 들어 3D CAD 파일을 읽어 들이고, 변환된 다른 형태의 파일을 출력하는 기능을 한다.The import/export 162 reads three-dimensional shape information of an object, for example, a 3D CAD file, and outputs a converted file in another format.

가상환경 설정부(163)는 물체에 관한 정보 및 배경에 관한 정보를 수신하고 이를 이용하여 가상환경을 설정하고, 가상환경에서 배치된 카메라의 설정에 따라 물체를 촬영하는 기능을 한다.The virtual environment setting unit 163 functions to receive information about an object and information about a background, set a virtual environment using the information, and photograph an object according to the settings of a camera disposed in the virtual environment.

가상환경 설정부(163)는, 실제 물체가 놓여 있거나, 물체가 움직이는 생산 라인의 작업 환경에 근접하도록, 가상환경에서 조명의 위치, 방향, 및 조도를 제어할 수 있다.The virtual environment setting unit 163 may control the position, direction, and illuminance of the lighting in the virtual environment so that the real object is placed or the object moves close to the working environment of the production line.

장면 컨트롤러(164)는 가상환경에서 물체 및 배경을 포함하는 장면을 컨트롤하는 기능을 한다.The scene controller 164 functions to control a scene including an object and a background in the virtual environment.

카메라 컨트롤러(165)는 가상환경에서 카메라 정보에 기반하여 배치된 카메라를 컨트롤하는 기능을 한다. 가상환경에 배치된 카메라는 가상의 카메라에 해당한다. 사용자는, 가상환경 설정부(163)를 이용하여 가상환경에 다양한 종류의 카메라 중에서 촬영에 사용될 카메라를 선택할 수 있다.The camera controller 165 functions to control the arranged cameras based on camera information in the virtual environment. A camera disposed in the virtual environment corresponds to a virtual camera. The user may select a camera to be used for shooting among various types of cameras in the virtual environment by using the virtual environment setting unit 163 .

도 2는 본 발명의 일 실시 예에 따른 데이터 생성 시스템의 네트워크 관계도이다.2 is a network relationship diagram of a data generating system according to an embodiment of the present invention.

도 2를 참조하면, 데이터 생성 시스템(100)은 네트워크(300)를 통해 통신할 수 있도록 서버(200)와 연결될 수 있다.Referring to FIG. 2 , the data generating system 100 may be connected to the server 200 to communicate through the network 300 .

서버(300)는 물체에 대한 3차원 형상 정보, 3차원 CAD 파일 등을 데이터 생성 시스템(100)에 제공할 수 있다. 그 밖에 서버(300)는 가상환경에 필요한 카메라에 관한 정보 등을 데이터 생성 시스템(100)에 제공할 수 있다.The server 300 may provide three-dimensional shape information about an object, a three-dimensional CAD file, and the like to the data generating system 100 . In addition, the server 300 may provide the data generating system 100 with information about a camera required for the virtual environment.

네트워크(300)는 유선 및 무선 네트워크, 예를 들어, LAN(local area network), WAN(wide area network), TCP/IP의 인터넷(internet), 인트라넷(intranet) 및 엑스트라넷(extranet), 그리고 모바일 네트워크, 예를 들어 셀룰러, 3G, LTE, WiFi 네트워크, 애드혹 네트워크 및 이들의 조합을 비롯한 임의의 적절한 통신 네트워크 일 수 있다.The network 300 is a wired and wireless network, for example, a local area network (LAN), a wide area network (WAN), the Internet of TCP/IP, an intranet and an extranet, and a mobile network, eg, any suitable communication network, including cellular, 3G, LTE, WiFi networks, ad hoc networks, and combinations thereof.

네트워크(300)는 허브, 브리지, 라우터, 스위치 및 게이트웨이와 같은 네트워크 요소들의 연결을 포함할 수 있다. 네트워크(300)는 인터넷과 같은 공용 네트워크 및 안전한 기업 사설 네트워크와 같은 사설 네트워크를 비롯한 하나 이상의 연결된 네트워크들, 예컨대 다중 네트워크 환경을 포함할 수 있다. 네트워크(300)에의 액세스는 하나 이상의 유선 또는 무선 액세스 네트워크들을 통해 제공될 수 있다.Network 300 may include connections of network elements such as hubs, bridges, routers, switches, and gateways. Network 300 may include one or more connected networks, eg, multiple network environments, including public networks such as the Internet and private networks such as secure enterprise private networks. Access to network 300 may be provided via one or more wired or wireless access networks.

도 3은 본 발명의 일 실시 예에 따른 데이터 생성 방법의 흐름도이다.3 is a flowchart of a data generation method according to an embodiment of the present invention.

도 4는 본 발명의 일 실시 예에 따른 데이터 생성 방법의 예시도이다.4 is an exemplary diagram of a data generation method according to an embodiment of the present invention.

도 4를 참조하면, 도 3을 참조하면, 데이터 생성 방법(S100)은 물체에 관한 형상 정보 생성(S110), 물체에 관한 형상 정보를 이용하여 가상환경 생성(S120), 가상환경에서 물체를 촬영(S130) 및 촬영 정보를 이용하여 학습에 필요한 데이터 생성(S140)을 포함하도록 구성될 수 있다.Referring to FIG. 4 , referring to FIG. 3 , the data generation method ( S100 ) includes generating shape information about an object ( S110 ), creating a virtual environment using shape information about the object ( S120 ), and photographing an object in the virtual environment It may be configured to include (S130) and data generation (S140) necessary for learning using the photographing information.

도 1의 데이터 생성 시스템(100)은 도 3의 데이터 생성방법(S100)을 수행하는 주체에 해당한다.The data generating system 100 of FIG. 1 corresponds to a subject performing the data generating method S100 of FIG. 3 .

S110 단계에서 데이터 생성 시스템(100)은, 데이터 생성 시스템(100)은 물체에 관한 형상 정보를 생성할 수 있다. 도 4를 참조하면, 물체에 관한 형상 정보는 컴퓨터 지원 설계(Computer Aided Design, CAD)에 의해 생성된 3D 설계 파일일 수 있다. 데이터 생성 시스템(100)은 임포트/익스포트(162)를 이용하여 컴퓨터 지원 설계를 통해 제작된 3D 설계 파일을 읽어 들이고, 다른 프로그램 모듈이 공유할 수 있도록 이를 다른 형태의 파일로 변환하여 출력할 수 있다.In step S110 , the data generating system 100 may generate shape information about the object. Referring to FIG. 4 , shape information about an object may be a 3D design file generated by computer aided design (CAD). The data generation system 100 reads a 3D design file produced through computer-aided design by using the import/export 162, converts it into a file in another format so that other program modules can share it, and outputs it. .

S120 단계에서 데이터 생성 시스템(100)은, 물체에 관한 형상 정보를 이용하여 가상환경을 생성할 수 있다. 도 4를 참조하면, 가상환경은, 기준 축 설정, 물체의 기준 자세 설정 및 장면 설정을 포함하도록 구성될 수 있다. 장면 설정에는 주변 환경 및 물체의 재질 등이 표현될 수 있다.In step S120 , the data generating system 100 may generate a virtual environment using shape information about the object. Referring to FIG. 4 , the virtual environment may be configured to include a reference axis setting, a reference posture setting of an object, and a scene setting. In the scene setting, the surrounding environment and the material of the object may be expressed.

S130 단계에서 데이터 생성 시스템(100)은, 데이터 생성 시스템(100)은 가상환경에서 물체를 촬영할 수 있다. 도 4를 참조하면, 데이터 생성 시스템(100) 가상환경에 가상의 카메라를 배치하고 물체의 랜덤한 면을 촬영할 수 있다. 임의의 자세 및 위치를 구현하기 위해 카메라가 회전하거나, 물체가 자유낙하할 수 있다.In step S130 , the data generating system 100 may photograph the object in the virtual environment. Referring to FIG. 4 , the data generating system 100 may arrange a virtual camera in a virtual environment and photograph a random surface of an object. In order to implement an arbitrary posture and position, the camera may rotate or the object may freely fall.

S140 단계에서 데이터 생성 시스템(100)은, 데이터 생성 시스템(100)은 촬영 정보를 이용하여 학습에 필요한 데이터를 생성할 수 있다. 도 4를 참조하면 학습용 데이터 및 테스트용 데이터가 생성될 수 있으며, 이들 데이터는, RGB 이미지, 깊이 이미지와 물체 및 배경에 관한 정보를 포함할 수 있다.In step S140 , the data generation system 100 may generate data necessary for learning by using the photographing information. Referring to FIG. 4 , data for training and data for testing may be generated, and these data may include RGB images, depth images, and information about objects and backgrounds.

본 발명의 일 실시 예에 따른 데이터 생성방법 및 시스템은 대용량의 이미지 데이터를 이용하여 인공 신경망의 일종인 CNN(Convolutional Neural Network)를 학습하여 다양한 정보를 주는 알고리즘을 위하여 대용량의 데이터를 자율적으로 생성할 수 있다.A method and system for generating data according to an embodiment of the present invention learns a Convolutional Neural Network (CNN), which is a kind of artificial neural network, using a large amount of image data to autonomously generate a large amount of data for an algorithm that provides various information. can

데이터 생성 시스템(100)은 고해상도의 이미지를 생성할 수 있는 렌더링 기술을 이용하여 실제 사진 이미지와 유사한 데이터를 생성하고, 가상환경에서의 깊이 값을 이용하여 깊이 이미지를 생성할 수 있다.The data generating system 100 may generate data similar to an actual photographic image by using a rendering technology capable of generating a high-resolution image, and may generate a depth image using a depth value in a virtual environment.

데이터 생성방법에 의해 생성된 이미지에 대해서 물체의 위치를 특정할 수 있는 좌표 값과, 이미지 사진 상에서 물체의 회전 정도를 알 수 있도록 각 축에 대한 회전 정도인 오일러 각도를 출력한다. 이 회전 정보는 카메라의 위치 및 각도를 모두 고려하여 생성된 각도로 이미지상에서 물체가 취하는 자세 정보를 가진다.With respect to the image generated by the data generation method, the coordinate values that can specify the position of the object and the Euler angle, which is the degree of rotation about each axis, are output so that the degree of rotation of the object on the image can be known. This rotation information is an angle generated by considering both the position and angle of the camera, and has information on the posture taken by the object on the image.

본 발명의 일 실시 예에 따른, 데이터 생성방법(S100)은 이를 실행하는 명령어 셋을 포함하는 프로그램 형태로 구현될 수 있다. 데이터 생성방법을 실행하는 프로그램은, 프로그램은 기준 축 설정 프로그램에 해당하는 런타임 핸들러, 공유 폴더, 장면 촬영 프로그램에 해당하는 가상환경 설정부를 포함하도록 구성될 수 있다.According to an embodiment of the present invention, the data generating method S100 may be implemented in the form of a program including an instruction set for executing it. The program for executing the data generation method may be configured to include a runtime handler corresponding to the reference axis setting program, a shared folder, and a virtual environment setting unit corresponding to the scene shooting program.

본 발명의 일 실시 예에 따른 프로그램은, 사용자에게 필요한 정보를 입력 받는 프로그램과 실제 동작 프로그램을 분리한 구조로서, 기준 축 설정 프로그램에서, 데이터를 생성할 때 카메라의 속성 및 물체의 재질, 장면의 배경 등을 선택할 수 있도록 하였다. 이 정보는 기준 축 설정 프로그램과 장면 촬영 프로그램 둘 모두 접근할 수 있는 공유 폴더에 출력되어 생성된다. 장면 촬영 프로그램에서는 이 정보들을 가지고 가상 환경의 구성, 카메라의 속성을 변경하여 사용자가 원하는 데이터를 생성할 수 있도록 한다.The program according to an embodiment of the present invention has a structure in which a program for receiving information required by a user and an actual operation program are separated. You can choose the background, etc. This information is generated by outputting it to a shared folder that both the reference axis setting program and the scene shooting program can access. The scene shooting program uses this information to change the configuration of the virtual environment and the properties of the camera so that the user can create desired data.

기준 축 설정 프로그램에 해당하는 런타임 핸들러(161)는 사용자가 원하는 데이터를 출력할 수 있도록 세부사항들을 조정할 수 있다.The runtime handler 161 corresponding to the reference axis setting program may adjust details so that the user can output desired data.

임포트/엑스포트(162)는 정보를 입력 받을 수 있는 환경을 제공하는 그래픽 유저 인터페이스와 데이터를 생성하고 싶은 3D 모델 파일(.obj, .3ds)을 임포트하고 공유 폴더에 저장할 파일들을 출력하는 임포트/엑스포트 기능을 제공한다.The import/export 162 imports 3D model files (.obj, .3ds) from which you want to generate data and a graphical user interface that provides an environment in which information can be input and import/export to output files to be stored in a shared folder. function is provided.

런타임 핸들러(161)는 오일러 각도로서 출력되는 물체의 자세 정보의 기준 축을 사용자가 설정할 수 있도록 물체를 직접 돌려가며 기준 축을 맞출 수 있는 기능을 제공한다. 이에 대한 정보들은 공유 폴더에 저장된다.The runtime handler 161 provides a function of aligning the reference axis by directly rotating the object so that the user can set the reference axis of the posture information of the object output as the Euler angle. Information about this is stored in a shared folder.

공유폴더에 저장되는 파일은 3D 모델 파일을 유니티 프로그램에서 재구현할 수 있도록 변환된 메쉬 파일과, 카메라 설정 및 물체에 대한 정보가 담긴 파일이다. 공유 폴더는 기준 축 설정 프로그램에 해당하는 런타임 핸들러(161)와 장면 촬영 프로그램에 해당하는 가상환경 설정부(163)가 모두 접근할 수 있도록 설정된 폴더이다.The files saved in the shared folder are a mesh file converted so that the 3D model file can be re-implemented in the Unity program, and a file containing information about camera settings and objects. The shared folder is a folder set to be accessible to both the runtime handler 161 corresponding to the reference axis setting program and the virtual environment setting unit 163 corresponding to the scene shooting program.

가상환경 설정부(163)는 공유 폴더에 저장되어 있는 파일 정보들을 통해서 이미지를 생성할 때 쓰이는 카메라의 세부사항들을 설정하여 주고 대상이 되는 물체의 재질 등의 속성을 설정하고, 공유 폴더 안의 파일들에 대한 정보들이 모두 반영된 가상환경에서 물체에 대한 영상을 생성할 수 있다.The virtual environment setting unit 163 sets the details of the camera used to generate an image through the file information stored in the shared folder, sets properties such as the material of the target object, and sets the files in the shared folder. An image of an object can be created in a virtual environment in which all information about the object is reflected.

가상환경 설정부(163)는 인식 대상이 되는 물체를 랜덤한 자세를 취하게 하고 가상의 카메라를 이용하여 물체에 대한 영상을 생성할 수 있다. 또는 카메라 자체가 일정한 각도로 회전하면서 물체에 대한 영상이 촬영될 수 있다. 카메라는, 물체에 대한 RGB 이미지를 먼저 촬영하게 하고, 그 후 물체에 대한 깊이 이미지를 RGB 이미지를 생성할 때와 동일한 물체와 카메라의 위치, 자세를 맞춘 후에 생성하도록 구성될 수 있다.The virtual environment setting unit 163 may make an object to be recognized take a random posture and may generate an image of the object using a virtual camera. Alternatively, an image of an object may be captured while the camera itself rotates at a certain angle. The camera may be configured to first take an RGB image of the object, and then generate a depth image of the object after matching the position and posture of the object and the camera to the same as when generating the RGB image.

인식 대상 물체의 다양한 면이 자연스럽게 생성되기 위해, 물체를 가상환경에서 자유낙하 시키고, 떨어지면서 자세가 변하는 물체가 촬영될 수 있다. 여기서, 물체는, 그 형상에 따라 자유낙하 시에 물리적 법칙, 예를 들어 모멘트에 의한 회전을 통해 랜덤한 면이 촬영될 수 있다.In order to naturally generate various faces of the object to be recognized, the object is allowed to fall freely in a virtual environment, and the object whose posture changes as it falls may be photographed. Here, according to the shape of the object, a random surface may be photographed through a physical law, for example, rotation by a moment during free fall.

임포트/엑스포트(162)는 가상환경 설정부(163)에 의해 생성된 이미지들에 대하여 각 이미지와 같은 이름을 가진 바이너리 파일을 생성하는데 여기에는 이미지의 크기, 물체의 위치, 물체의 자세 및 이미지에서 물체가 점유하는 범위에 대한 정보를 포함된다.The import/export 162 creates a binary file with the same name as each image for the images generated by the virtual environment setting unit 163, which includes the size of the image, the position of the object, the posture of the object, and the image. Contains information about the range the object occupies.

도 5는 본 발명의 일 실시 예에 따른 데이터 생성 시스템 사용자 인터페이스의 예시도이다.5 is an exemplary diagram of a data generation system user interface according to an embodiment of the present invention.

도 5를 참조하면, 기준 축이 설정된 후, 물체가 배치된 가상환경이 묘사되어 있다.Referring to FIG. 5 , after a reference axis is set, a virtual environment in which an object is disposed is depicted.

도 6은 본 발명의 일 실시 예에 따른 데이터 생성 시스템 사용자 인터페이스의 예시도이다.6 is an exemplary diagram of a data generation system user interface according to an embodiment of the present invention.

도 6을 참조하면, 기준 축이 설정된 후, 물체가 배치된 가상환경의 배경 화면이 묘사되어 있다.Referring to FIG. 6 , after a reference axis is set, a background screen of a virtual environment in which an object is disposed is depicted.

도 7은 본 발명의 일 실시 예에 따른 데이터 생성방법에 의해 생성된 데이터의 예시도이다.7 is an exemplary diagram of data generated by a data generating method according to an embodiment of the present invention.

도 7을 참조하면, 본 발명의 일 실시 예에 따른 데이터 생성 시스템(100)의 의해 생성된 데이터의 구조가 묘사되어 있다. 생성된 데이터는, RGB 이미지, 깊이 정보(Depth image) 및 자세정보를 포함할 수 있다. 여기서 자세정보는, 물체의 중심 좌표(x, y, z)에 관한 정보, 카메라 시점에서 기준 자세 대비 회전 정보를 포함할 수 있다.Referring to FIG. 7 , the structure of data generated by the data generating system 100 according to an embodiment of the present invention is depicted. The generated data may include an RGB image, depth image, and posture information. Here, the posture information may include information about the center coordinates (x, y, z) of the object, and rotation information compared to the reference posture from the camera point of view.

이와 같이 본 발명의 일 실시 예에 따르면, 인공지능 학습 모델의 목적 함수에 적합한 데이터를 생성할 수 있다.As described above, according to an embodiment of the present invention, it is possible to generate data suitable for the objective function of the artificial intelligence learning model.

또한, 물체의 위치 및 회전 정보가 포함된 데이터를 물체 자세 인식의 인공지능 모델의 학습에 이용할 수 있다.In addition, data including position and rotation information of an object can be used for learning an artificial intelligence model of object posture recognition.

이상, 일부 예를 들어서 본 발명의 바람직한 여러 가지 실시 예에 대해서 설명하였지만, 본 "발명을 실시하기 위한 구체적인 내용" 항목에 기재된 여러 가지 다양한 실시 예에 관한 설명은 예시적인 것에 불과한 것이며, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 이상의 설명으로부터 본 발명을 다양하게 변형하여 실시하거나 본 발명과 균등한 실시를 행할 수 있다는 점을 잘 이해하고 있을 것이다.In the above, although several preferred embodiments of the present invention have been described with some examples, the descriptions of various various embodiments described in the "Specific Contents for Carrying Out the Invention" item are merely exemplary, and the present invention Those of ordinary skill in the art will understand well that the present invention can be practiced with various modifications or equivalents to the present invention from the above description.

또한, 본 발명은 다른 다양한 형태로 구현될 수 있기 때문에 본 발명은 상술한 설명에 의해서 한정되는 것이 아니며, 이상의 설명은 본 발명의 개시 내용이 완전해지도록 하기 위한 것으로 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것일 뿐이며, 본 발명은 청구범위의 각 청구항에 의해서 정의될 뿐임을 알아야 한다.In addition, since the present invention can be implemented in various other forms, the present invention is not limited by the above description, and the above description is intended to complete the disclosure of the present invention, and is generally It should be understood that this is only provided to fully inform those with knowledge of the scope of the present invention, and that the present invention is only defined by each of the claims.

100: 데이터 생성 시스템
110: 제어부
120: 입력 장치
121: 사용자 입력 장치
122: 카메라
130: 출력 장치
140: 저장 장치
150: 통신 장치
160: 메모리
161: 런타임 핸들러
162: 임포트/엑스포트
163: 가상환경 설정부
164: 장면 컨트롤러
165: 카메라 컨트롤러
100: data generation system
110: control unit
120: input device
121: user input device
122: camera
130: output device
140: storage device
150: communication device
160: memory
161: runtime handler
162: import/export
163: virtual environment setting unit
164: scene controller
165: camera controller

Claims (5)

물체의 자세 인식의 학습을 위한 데이터를 생성하는 장치에 의해 수행되는 방법으로서,
물체의 자세 인식 대상이 되는 물체에 관한 형상 정보를 생성하는 단계;
상기 형상 정보를 이용하여 상기 물체가 위치하는 가상환경을 생성하는 단계; 및
상기 가상환경에서 상기 물체를 촬영하는 단계를 포함하도록 구성되는,
데이터 생성방법.
A method performed by an apparatus for generating data for learning of posture recognition of an object, comprising:
generating shape information about an object that is a target for posture recognition of the object;
generating a virtual environment in which the object is located by using the shape information; and
configured to include photographing the object in the virtual environment,
How to create data.
물체의 자세 인식의 학습을 위한 데이터를 생성하는 장치에 의해 수행되는 방법으로서,
물체의 자세 인식 대상이 되는 물체에 관한 형상 정보를 생성하는 단계;
상기 형상 정보를 이용하여 상기 물체가 위치하는 가상환경을 생성하는 단계; 및
상기 가상환경에서 상기 물체를 촬영하는 단계를 포함하고,
상기 물체에 관한 형상 정보를 생성하는 단계는,
상기 물체에 관한 CAD 모델을 생성하는 단계를 포함하도록 구성되는,
데이터 생성방법.
A method performed by an apparatus for generating data for learning of posture recognition of an object, comprising:
generating shape information about an object that is a target for posture recognition of the object;
generating a virtual environment in which the object is located by using the shape information; and
Comprising the step of photographing the object in the virtual environment,
The step of generating shape information about the object comprises:
configured to include generating a CAD model of the object;
How to create data.
물체의 자세 인식의 학습을 위한 데이터를 생성하는 장치에 의해 수행되는 방법으로서,
물체의 자세 인식 대상이 되는 물체에 관한 형상 정보를 생성하는 단계;
상기 형상 정보를 이용하여 상기 물체가 위치하는 가상환경을 생성하는 단계; 및
상기 가상환경에서 상기 물체를 촬영하는 단계를 포함하고,
상기 가상환경을 생성하는 단계는,
상기 물체가 속하는 3차원 공간을 정의하기 위해 기준 축에 관한 정보를 수신하는 단계;
상기 기준 축에 대해 상기 물체의 기준 자세에 관한 정보를 수신하는 단계; 및
상기 물체의 배경에 관한 정보를 수신하는 단계를 포함하도록 구성되는,
데이터 생성방법.
A method performed by a device for generating data for learning of posture recognition of an object, comprising:
generating shape information about an object that is a target for posture recognition of the object;
generating a virtual environment in which the object is located by using the shape information; and
Comprising the step of photographing the object in the virtual environment,
Creating the virtual environment includes:
receiving information about a reference axis to define a three-dimensional space to which the object belongs;
receiving information about a reference posture of the object with respect to the reference axis; and
configured to include receiving information regarding the background of the object;
How to create data.
물체의 자세 인식의 학습을 위한 데이터를 생성하는 장치에 의해 수행되는 방법으로서,
물체의 자세 인식 대상이 되는 물체에 관한 형상 정보를 생성하는 단계;
상기 형상 정보를 이용하여 상기 물체가 위치하는 가상환경을 생성하는 단계; 및
상기 가상환경에서 상기 물체를 촬영하는 단계를 포함하고,
상기 물체를 촬영하는 단계는,
상기 물체에 대한 RGB 정보 및 깊이 정보를 수집하는 단계를 포함하도록 구성되는,
데이터 생성방법.
A method performed by an apparatus for generating data for learning of posture recognition of an object, comprising:
generating shape information about an object that is a target for posture recognition of the object;
generating a virtual environment in which the object is located by using the shape information; and
Comprising the step of photographing the object in the virtual environment,
The step of photographing the object is
configured to include collecting RGB information and depth information for the object,
How to create data.
물체의 자세 인식의 대상이 되는 물체에 관한 형상 정보를 이용하여 상기 물체 및 상기 물체가 속하는 3차원 공간을 생성하는 가상환경 설정부;
상기 가상환경에서 상기 물체를 촬영하는 가상 촬영부; 및
촬영된 영상, 상기 물체에 관한 정보 및 촬영에 사용된 카메라 정보가 포함된 데이터를 생성하는 학습용 데이터 생성부를 포함하도록 구성되는,
데이터 생성 시스템.
a virtual environment setting unit for generating the object and a three-dimensional space to which the object belongs by using shape information about an object that is a target of posture recognition of the object;
a virtual photographing unit for photographing the object in the virtual environment; and
It is configured to include a data generating unit for learning that generates data including the captured image, information about the object, and camera information used for photographing,
data generation system.
KR1020210019095A 2021-02-10 2021-02-10 Method of generating data for machine learning training KR102556642B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210019095A KR102556642B1 (en) 2021-02-10 2021-02-10 Method of generating data for machine learning training

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210019095A KR102556642B1 (en) 2021-02-10 2021-02-10 Method of generating data for machine learning training

Publications (2)

Publication Number Publication Date
KR20220115742A true KR20220115742A (en) 2022-08-18
KR102556642B1 KR102556642B1 (en) 2023-07-18

Family

ID=83112102

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210019095A KR102556642B1 (en) 2021-02-10 2021-02-10 Method of generating data for machine learning training

Country Status (1)

Country Link
KR (1) KR102556642B1 (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002260010A (en) * 2001-02-28 2002-09-13 Konami Computer Entertainment Japan Inc Image forming method and program used therefor
KR20170074413A (en) * 2015-12-22 2017-06-30 연세대학교 산학협력단 2d image data generation system using of 3d model, and thereof method
KR101947650B1 (en) * 2017-11-14 2019-05-20 국방과학연구소 Apparatus and method for generating learning image in game engine-based machine learning
US20190377980A1 (en) * 2018-06-07 2019-12-12 Microsoft Technology Licensing, Llc Generating training data for machine learning classifier
KR20200136723A (en) * 2019-05-28 2020-12-08 한국전자통신연구원 Method and apparatus for generating learning data for object recognition using virtual city model
KR20210002410A (en) 2019-06-10 2021-01-08 (주)사맛디 System, method and program of constructing dataset for training appearance recognition model
KR20210003937A (en) * 2018-05-23 2021-01-12 모비디어스 리미티드 Deep learning system
KR20210004162A (en) 2019-07-03 2021-01-13 주식회사 현대아이티앤이 Automatic Data Set Generation Device and SW and their Control Method for AI Machine Learning Learning
KR102207489B1 (en) 2020-01-14 2021-01-26 엘지전자 주식회사 Data generation method

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002260010A (en) * 2001-02-28 2002-09-13 Konami Computer Entertainment Japan Inc Image forming method and program used therefor
KR20170074413A (en) * 2015-12-22 2017-06-30 연세대학교 산학협력단 2d image data generation system using of 3d model, and thereof method
KR101947650B1 (en) * 2017-11-14 2019-05-20 국방과학연구소 Apparatus and method for generating learning image in game engine-based machine learning
KR20210003937A (en) * 2018-05-23 2021-01-12 모비디어스 리미티드 Deep learning system
US20190377980A1 (en) * 2018-06-07 2019-12-12 Microsoft Technology Licensing, Llc Generating training data for machine learning classifier
KR20200136723A (en) * 2019-05-28 2020-12-08 한국전자통신연구원 Method and apparatus for generating learning data for object recognition using virtual city model
KR20210002410A (en) 2019-06-10 2021-01-08 (주)사맛디 System, method and program of constructing dataset for training appearance recognition model
KR20210004162A (en) 2019-07-03 2021-01-13 주식회사 현대아이티앤이 Automatic Data Set Generation Device and SW and their Control Method for AI Machine Learning Learning
KR102207489B1 (en) 2020-01-14 2021-01-26 엘지전자 주식회사 Data generation method

Also Published As

Publication number Publication date
KR102556642B1 (en) 2023-07-18

Similar Documents

Publication Publication Date Title
CN108656107B (en) Mechanical arm grabbing system and method based on image processing
CN113524194B (en) Target grabbing method of robot vision grabbing system based on multi-mode feature deep learning
CN109483573A (en) Machine learning device, robot system and machine learning method
CN107953329A (en) Object identification and Attitude estimation method, apparatus and mechanical arm grasping system
CN113370217B (en) Object gesture recognition and grabbing intelligent robot method based on deep learning
KR20220160066A (en) Image processing method and apparatus
CN111383263A (en) System, method and device for grabbing object by robot
WO2019059343A1 (en) Workpiece information processing device and recognition method of workpiece
CN115903541A (en) Visual algorithm simulation data set generation and verification method based on twin scene
Ben et al. Research on visual orientation guidance of industrial robot based on cad model under binocular vision
US20230330858A1 (en) Fine-grained industrial robotic assemblies
CN117252928B (en) Visual image positioning system for modular intelligent assembly of electronic products
Jing Coverage planning for robotic vision applications in complex 3d environment
CN116018599A (en) Apparatus and method for training a machine learning model to identify an object topology of an object from an image of the object
CN111275758B (en) Hybrid 3D visual positioning method, device, computer equipment and storage medium
CN114187312A (en) Target object grabbing method, device, system, storage medium and equipment
Scheuermann et al. Mobile augmented reality based annotation system: A cyber-physical human system
CN112070835A (en) Mechanical arm pose prediction method and device, storage medium and electronic equipment
Kim et al. Digital twin for autonomous collaborative robot by using synthetic data and reinforcement learning
KR20220115742A (en) Method and system of generating data for machine learning training
CN110942083A (en) Imaging device and imaging system
CN113436293B (en) Intelligent captured image generation method based on condition generation type countermeasure network
JP2020052032A (en) Imaging device and imaging system
JP2012165135A (en) Imaging device, imaging condition setting method, and program
CN115219492A (en) Appearance image acquisition method and device for three-dimensional object

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant