KR20220125876A - Apparatus and method for generating training data set using robot arm - Google Patents

Apparatus and method for generating training data set using robot arm Download PDF

Info

Publication number
KR20220125876A
KR20220125876A KR1020210029254A KR20210029254A KR20220125876A KR 20220125876 A KR20220125876 A KR 20220125876A KR 1020210029254 A KR1020210029254 A KR 1020210029254A KR 20210029254 A KR20210029254 A KR 20210029254A KR 20220125876 A KR20220125876 A KR 20220125876A
Authority
KR
South Korea
Prior art keywords
robot arm
axis
generating
model
image data
Prior art date
Application number
KR1020210029254A
Other languages
Korean (ko)
Other versions
KR102573020B1 (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 KR1020210029254A priority Critical patent/KR102573020B1/en
Publication of KR20220125876A publication Critical patent/KR20220125876A/en
Application granted granted Critical
Publication of KR102573020B1 publication Critical patent/KR102573020B1/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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Fuzzy Systems (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Abstract

Disclosed are a device and method for generating learning data using a robot arm. The device for generating learning data using a robot arm according to one aspect of the present invention comprises: a rotating body for implementing various angles of an object; a robot arm having a multi-joint structure including a plurality of links and a plurality of joints, and rotating each link at a predetermined angle while rotating each joint according to a control signal; a sensor unit mounted on the end link of the robot arm to sense the object; and a controlling device generating the control signal controlling the driving of at least one of the robot arm and the rotating body, obtaining image data from the sensor unit moving and rotating according to the control signal, and generating a bounding box for the object from the image data by using a reference 3D model for the object to generate learning data for the object. According to one embodiment of the present invention, the device and method for generating learning data using a robot arm can generate accurate learning data at a high speed by automatically generating a learning data set for the object using the robot arm.

Description

로봇팔을 이용한 학습 데이터셋 생성 장치 및 방법{APPARATUS AND METHOD FOR GENERATING TRAINING DATA SET USING ROBOT ARM}Apparatus and method for generating a learning dataset using a robot arm {APPARATUS AND METHOD FOR GENERATING TRAINING DATA SET USING ROBOT ARM}

본 발명은 로봇팔을 이용한 학습 데이터셋 생성 장치 및 방법에 관한 것으로서, 보다 상세하게는 로봇팔을 이용하여 대상물에 대한 학습 데이터를 자동으로 생성할 수 있도록 하는 로봇팔을 이용한 학습 데이터셋 생성 장치 및 방법에 관한 것이다. The present invention relates to an apparatus and method for generating a learning data set using a robot arm, and more particularly, to an apparatus and a method for generating a learning data set using a robot arm to automatically generate learning data for an object using the robot arm; it's about how

인공지능의 한분야인 머신러닝은 사람이 학습하듯이 데이터를 제공하여 학습하게 함으로써 지식을 얻어내게 하는 분야이다. 이를 위해서는 많은 데이터를 라벨링하여 데이터셋을 구성하여 학습을 시켜야 하는 것이 필요하다.Machine learning, which is a field of artificial intelligence, is a field that allows people to acquire knowledge by providing data and learning as a human would. To do this, it is necessary to label a lot of data and configure the dataset for training.

이는 학습시키기 위한 데이터를 분류하여 데이터셋을 구성하여 학습시킴으로써, 학습된 패턴의 양과 정확성에 따라 인공지능의 성과와 연결된다고 볼 수 있다. This can be seen as being connected with the performance of artificial intelligence according to the amount and accuracy of the learned pattern by classifying the data for learning and configuring the dataset to learn.

기존에는 데이터셋을 구성하기 위해 데이터를 증가(data augmentation)시키거나, 데이터를 수작업으로 분류(labeling, 라벨링)하였다. In the past, data was augmented to compose a dataset, or data was manually classified (labeled).

데이터 증가 시키는 방법은 원본 이미지에 대하여 상하나 좌우를 반전시키거나 일부 영역을 잘라내는 등을 통해 데이터셋을 확장하는 방식이며, 데이터 수작업 분류 방식은 수작업을 통해 데이터를 일일이 지정하여 처리하는 방식이다.The data increase method is a method of expanding the dataset by inverting the top or left or right side of the original image or cutting out some areas.

이러한 작업은 수작업으로 수행하기 때문에 학습을 위한 사전 준비 시간이 많이 소요됨으로써 실제 인공지능을 접목한 서비스의 효용성이 낮아지게 되는 결과가 나타나게 되는 단점이 있다. Since these tasks are performed manually, it takes a lot of time to prepare in advance for learning, which has the disadvantage of lowering the effectiveness of services incorporating actual artificial intelligence.

본 발명과 관련된 선행기술로는 대한민국등록특허 제10-2175531호(2020.11.06. 공고)가 있다.As a prior art related to the present invention, there is Republic of Korea Patent No. 10-2175531 (announced on November 6, 2020).

본 발명은 상기와 같은 문제점들을 개선하기 위하여 안출된 것으로, 본 발명의 목적은 로봇팔을 이용하여 대상물에 대한 학습 데이터를 자동으로 생성할 수 있도록 하는 로봇팔을 이용한 학습 데이터셋 생성 장치 및 방법을 제공하는 것이다. The present invention has been devised to improve the above problems, and an object of the present invention is to provide an apparatus and method for generating a learning data set using a robot arm so that learning data for an object can be automatically generated using the robot arm. will provide

본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제(들)로 제한되지 않으며, 언급되지 않은 또 다른 과제(들)은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the problem(s) mentioned above, and another problem(s) not mentioned will be clearly understood by those skilled in the art from the following description.

본 발명의 일 측면에 따른 로봇팔을 이용한 학습 데이터 생성 장치는, 대상물의 다양한 각도를 구현하기 위한 회전체, 복수의 링크와 복수의 관절부를 포함하는 다관절 구조로 이루어지고, 제어신호에 따라 각 관절부를 회전구동하면서 각 링크를 소정각도로 회동시키는 로봇팔, 상기 로봇팔의 종단링크에 장착되어, 상기 대상물을 감지하는 센서부, 상기 로봇팔 및 회전체 중 적어도 하나의 구동을 제어하기 위한 제어 신호를 생성하고, 상기 제어 신호에 따라 이동 및 회전하는 상기 센서부로부터 영상 데이터를 획득하며, 상기 대상물에 대한 기준 3D 모델을 이용하여 상기 영상 데이터로부터 상기 대상물에 대한 바운딩 박스(bounding box)를 생성함으로써 상기 대상물에 대한 학습 데이터를 생성하는 제어 장치를 포함한다. Learning data generating apparatus using a robot arm according to an aspect of the present invention is made of a multi-joint structure including a rotating body for implementing various angles of an object, a plurality of links and a plurality of joints, and each A robot arm that rotates each link at a predetermined angle while rotating a joint part, a sensor unit mounted on a terminal link of the robot arm to detect the object, a control for controlling the driving of at least one of the robot arm and the rotating body Generates a signal, obtains image data from the sensor unit that moves and rotates according to the control signal, and generates a bounding box for the object from the image data using a reference 3D model for the object and a control device for generating learning data for the object by doing so.

본 발명에서 상기 로봇팔은, 6축 다관절 로봇팔일 수 있다. In the present invention, the robot arm may be a 6-axis articulated robot arm.

본 발명에서 상기 로봇팔은, 몸체부, 상기 몸체부의 상부에 복수의 링크와 복수의 관절부를 포함하는 다관절 구조로 이루어지고, 각 관절부는 상기 제어신호에 따라 회전구동하면서 각 링크를 소정각도로 회동시키는 로봇암부, 상기 몸체부 내부에 설치되고, 상기 로봇암부의 구동에 따른 각 링크 및 관절부의 위치를 공간 좌표값으로 변환하며, 상기 센서부를 통해 획득된 영상 데이터 및 그 영상 데이터 획득 시점의 상기 로봇암부의 공간 좌표값을 상기 제어 장치로 전송하는 제어부를 포함할 수 있다. In the present invention, the robot arm is made of a multi-joint structure including a body portion, a plurality of links and a plurality of joints on the upper portion of the body portion, and each joint portion rotates according to the control signal and rotates each link at a predetermined angle. A robot arm that rotates, installed inside the body, converts the position of each link and joint according to the driving of the robot arm into spatial coordinate values, and the image data obtained through the sensor unit and the image data obtained at the time of acquisition It may include a control unit for transmitting the spatial coordinate value of the robot arm to the control device.

본 발명에서 상기 제어장치는, 통신부, 상기 대상물에 대한 기준 3D 모델이 획득된 로봇암부의 공간 좌표값을 초기값으로 저장하는 저장부, 상기 로봇팔 및 회전체 중 적어도 하나를 구동시키기 위한 제어 신호를 상기 통신부를 통해 전송하고, 상기 로봇팔로부터 상기 센서부를 통해 획득된 영상 데이터 및 로봇암부의 공간 좌표값을 수신하며, 상기 기준 3D 모델을 이용하여 상기 영상 데이터로부터 상기 대상물을 검출하고, 상기 대상물에 대한 바운딩 박스를 생성하는 제어부를 포함할 수 있다.In the present invention, the control device includes a communication unit, a storage unit that stores the spatial coordinate values of the robot arm from which the reference 3D model for the object is obtained as an initial value, and a control signal for driving at least one of the robot arm and the rotating body transmits through the communication unit, receives image data obtained through the sensor unit from the robot arm and spatial coordinate values of the robot arm unit, detects the object from the image data using the reference 3D model, and the object It may include a control unit for generating a bounding box for .

본 발명에서 상기 제어부는, 상기 로봇팔로부터 수신한 로봇암부의 공간 좌표값을 상기 초기값과 비교하여 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 중 적어도 하나의 변경값을 산출하고, 상기 변경값을 상기 기준 3D 모델에 적용하여 변경된 3D 모델을 생성하며, 상기 변경된 3D 모델의 외곽선을 추출하고, 상기 추출된 외곽선을 상기 검출된 대상물에 적용함으로써 세그먼테이션 바운딩 박스를 생성할 수 있다.In the present invention, the control unit compares the spatial coordinate value of the robot arm received from the robot arm with the initial value to determine the x-axis, y-axis, z-axis, pitch, roll, and yaw. Calculating at least one change value from among, applying the change value to the reference 3D model to generate a changed 3D model, extracting an outline of the changed 3D model, and applying the extracted outline to the detected object You can create a segmentation bounding box.

본 발명에서 상기 제어부는, 상기 로봇팔로부터 수신한 로봇암부의 공간 좌표값을 상기 초기값과 비교하여 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 중 적어도 하나의 변경값을 산출하고, 상기 변경값을 상기 기준 3D 모델에 적용하여 변경된 3D 모델을 생성하며, 상기 변경된 3D 모델의 중심으로부터 가장 먼 X축값 및 Y축값, 가장 가까운 X축값 및 Y축값을 각각 직선으로 그려 만나는 4개의 점을 상기 검출된 대상물에 적용함으로써 바운딩 박스를 생성할 수 있다.In the present invention, the control unit compares the spatial coordinate value of the robot arm received from the robot arm with the initial value to determine the x-axis, y-axis, z-axis, pitch, roll, and yaw. Calculating at least one changed value among, generating a changed 3D model by applying the changed value to the reference 3D model, the X-axis value and Y-axis value furthest from the center of the changed 3D model, and the closest X-axis value and Y-axis value A bounding box can be created by applying four points that meet by drawing a straight line, respectively, to the detected object.

본 발명에서 상기 회전체는, 상기 제어신호에 따라 수평방향으로 회전할 수 있다.In the present invention, the rotating body may rotate in the horizontal direction according to the control signal.

본 발명의 일 측면에 따른 로봇팔을 이용한 학습 데이터 생성 방법은, 제어장치가 로봇팔의 구동을 제어하기 위한 제어 신호를 상기 로봇팔로 전송하는 단계, 상기 로봇팔이 상기 제어 신호에 따라 구동하면서 센서부를 통해 대상물을 포함하는 영상 데이터를 획득하고, 상기 획득된 영상 데이터를 상기 제어장치로 전송하는 단계, 상기 제어장치가 상기 대상물에 대한 기준 3D 모델을 이용하여 상기 영상 데이터로부터 상기 대상물에 대한 바운딩 박스(bounding box)를 생성함으로써 상기 대상물에 대한 학습 데이터를 생성하는 단계를 포함한다. In a method for generating learning data using a robot arm according to an aspect of the present invention, the control device transmits a control signal for controlling the driving of the robot arm to the robot arm, the robot arm is driven according to the control signal, and the sensor acquiring image data including an object through a unit, and transmitting the obtained image data to the control device; and generating learning data for the object by generating a bounding box.

본 발명에서 상기 학습 데이터를 생성하는 단계는, 상기 제어장치가 상기 로봇팔로부터 상기 영상 데이터를 수신하는 단계, 상기 제어장치가 상기 영상 데이터 획득 시점의 상기 로봇팔의 공간 좌표값을 기 저장된 초기값과 비교하여 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 중 적어도 하나의 변경값을 산출하는 단계, 상기 제어장치가, 상기 변경값을 기준 3D 모델에 적용하여 변경된 3D 모델을 생성하는 단계, 및 상기 제어장치가 상기 변경된 3D 모델을 이용하여 상기 영상 데이터로부터 상기 대상물을 검출하며, 상기 대상물에 대한 바운딩 박스를 생성하는 단계를 포함할 수 있다.In the present invention, the step of generating the learning data includes: the control device receiving the image data from the robot arm; Comparing with the x-axis, the y-axis, the z-axis, the pitch (pitch), roll (roll), and the step of calculating at least one change value of yaw (yaw), the control device, the reference 3D model based on the change value generating a modified 3D model by applying to , and detecting, by the control device, the object from the image data using the changed 3D model, and generating a bounding box for the object.

본 발명은 상기 바운딩 박스를 생성하는 단계에서, 상기 제어장치는, 상기 변경된 3D 모델의 외곽선을 추출하고, 상기 추출된 외곽선을 상기 검출된 대상물에 적용함으로써 세그먼테이션 바운딩 박스를 생성할 수 있다.In the present invention, in the generating of the bounding box, the control device may generate a segmentation bounding box by extracting an outline of the changed 3D model and applying the extracted outline to the detected object.

본 발명은 상기 바운딩 박스를 생성하는 단계에서, 상기 제어장치는, 상기 변경된 3D 모델의 중심으로부터 가장 먼 X축값 및 Y축값, 가장 가까운 X축값 및 Y축값을 각각 직선으로 그려 만나는 4개의 점을 상기 검출된 대상물에 적용함으로써 바운딩 박스를 생성할 수 있다.In the present invention, in the step of generating the bounding box, the control device draws the X-axis value and the Y-axis value, the closest X-axis value and the Y-axis value from the center of the changed 3D model, respectively, with straight lines to meet the four points. A bounding box can be created by applying it to the detected object.

본 발명의 일 실시예에 따른 로봇팔을 이용한 학습 데이터셋 생성 장치 및 방법은, 로봇팔을 이용하여 대상물에 대한 학습 데이터셋을 자동으로 생성함으로써, 빠른 속도로 정확한 학습 데이터를 생성할 수 있다. 이를 통해 인공지능 머신 러닝의 학습 효율은 물론, 인공지능을 접목한 서비스의 효용성을 확대시킬 수 있다.The apparatus and method for generating a learning data set using a robot arm according to an embodiment of the present invention can generate accurate learning data at a high speed by automatically generating a learning data set for an object using the robot arm. Through this, it is possible to expand the learning efficiency of artificial intelligence machine learning as well as the utility of services incorporating artificial intelligence.

한편, 본 발명의 효과는 이상에서 언급한 효과들로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 효과들이 포함될 수 있다. On the other hand, the effects of the present invention are not limited to the above-mentioned effects, and various effects may be included within the range apparent to those skilled in the art from the description below.

도 1은 본 발명의 일 실시예에 따른 로봇팔을 이용한 학습 데이터 생성 장치를 나타낸 도면이다.
도 2는 도 1에 도시된 제어 장치의 구성을 개략적으로 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 기준 3D 모델을 설명하기 위한 예시도이다.
도 4는 본 발명의 일 실시예에 따른 기준 3D 모델을 이용하여 영상 데이터에서 대상물을 검출하는 방법을 설명하기 위한 예시도이다.
도 5는 본 발명의 일 실시예에 따른 기준 3D 모델을 이용하여 세그먼테이션 바운딩 박스를 생성하는 방법을 설명하기 위한 예시도이다.
도 6은 본 발명의 일 실시예에 따른 기준 3D 모델을 이용하여 사각형 바운딩 박스를 생성하는 방법을 설명하기 위한 예시도이다.
1 is a view showing an apparatus for generating learning data using a robot arm according to an embodiment of the present invention.
FIG. 2 is a block diagram schematically showing the configuration of the control device shown in FIG. 1 .
3 is an exemplary diagram for explaining a reference 3D model according to an embodiment of the present invention.
4 is an exemplary diagram for explaining a method of detecting an object from image data using a reference 3D model according to an embodiment of the present invention.
5 is an exemplary diagram for explaining a method of generating a segmentation bounding box using a reference 3D model according to an embodiment of the present invention.
6 is an exemplary diagram for explaining a method of generating a rectangular bounding box using a reference 3D model according to an embodiment of the present invention.

이하, 첨부된 도면들을 참조하여 본 발명의 일 실시예에 따른 로봇팔을 이용한 학습 데이터셋 생성 장치 및 방법을 설명한다. 이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. Hereinafter, an apparatus and method for generating a learning data set using a robot arm according to an embodiment of the present invention will be described with reference to the accompanying drawings. In this process, the thickness of the lines or the size of the components shown in the drawings may be exaggerated for clarity and convenience of explanation.

또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In addition, the terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to intentions or customs of users and operators. Therefore, definitions of these terms should be made based on the content throughout this specification.

또한, 본 명세서에서 설명된 구현은, 예컨대, 방법 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림 또는 신호로 구현될 수 있다. 단일 형태의 구현의 맥락에서만 논의(예컨대, 방법으로서만 논의)되었더라도, 논의된 특징의 구현은 또한 다른 형태(예컨대, 장치 또는 프로그램)로도 구현될 수 있다. 장치는 적절한 하드웨어, 소프트웨어 및 펌웨어 등으로 구현될 수 있다. 방법은, 예컨대, 컴퓨터, 마이크로프로세서, 집적 회로 또는 프로그래밍 가능한 로직 디바이스 등을 포함하는 프로세싱 디바이스를 일반적으로 지칭하는 프로세서 등과 같은 장치에서 구현될 수 있다. 프로세서는 또한 최종-사용자 사이에 정보의 통신을 용이하게 하는 컴퓨터, 셀 폰, 휴대용/개인용 정보 단말기(personal digital assistant: "PDA") 및 다른 디바이스 등과 같은 통신 디바이스를 포함한다.Further, implementations described herein may be implemented as, for example, a method or process, an apparatus, a software program, a data stream, or a signal. Although discussed only in the context of a single form of implementation (eg, discussed only as a method), implementations of the discussed features may also be implemented in other forms (eg, as an apparatus or program). The apparatus may be implemented in suitable hardware, software and firmware, and the like. A method may be implemented in an apparatus such as, for example, a processor, which generally refers to a computer, a microprocessor, a processing device, including an integrated circuit or programmable logic device, or the like. Processors also include communication devices such as computers, cell phones, portable/personal digital assistants ("PDA") and other devices that facilitate communication of information between end-users.

도 1은 본 발명의 일 실시예에 따른 로봇팔을 이용한 학습 데이터 생성 장치를 나타낸 도면, 도 2는 도 1에 도시된 제어장치의 구성을 개략적으로 나타낸 블록도, 도 3은 본 발명의 일 실시예에 따른 기준 3D 모델을 설명하기 위한 예시도, 도 4는 본 발명의 일 실시예에 따른 기준 3D 모델을 이용하여 영상 데이터에서 대상물을 검출하는 방법을 설명하기 위한 예시도, 도 5는 본 발명의 일 실시예에 따른 기준 3D 모델을 이용하여 세그먼테이션 바운딩 박스를 생성하는 방법을 설명하기 위한 예시도, 도 6은 본 발명의 일 실시예에 따른 기준 3D 모델을 이용하여 사각형 바운딩 박스를 생성하는 방법을 설명하기 위한 예시도이다. 1 is a view showing a learning data generating apparatus using a robot arm according to an embodiment of the present invention, Figure 2 is a block diagram schematically showing the configuration of the control device shown in Figure 1, Figure 3 is an embodiment of the present invention An exemplary diagram for explaining a reference 3D model according to an example, FIG. 4 is an exemplary diagram for explaining a method of detecting an object from image data using a reference 3D model according to an embodiment of the present invention, FIG. 5 is the present invention 6 is an exemplary diagram for explaining a method of generating a segmentation bounding box using a reference 3D model according to an embodiment of the present invention. It is an example diagram for explaining.

도 1을 참조하면, 본 발명의 일 실시예에 따른 로봇팔을 이용한 학습 데이터셋 생성 장치는 대상물(10)에 대한 학습 데이터를 생성할 수 있는 장치로, 대상물(10)이 올려지는 회전체(100), 센서부(300)가 장착된 로봇팔(200), 및 제어장치(400)를 포함할 수 있다.Referring to FIG. 1 , an apparatus for generating a learning data set using a robot arm according to an embodiment of the present invention is a device capable of generating learning data for an object 10, and a rotating body on which the object 10 is mounted ( 100 ), the sensor unit 300 may include a mounted robot arm 200 , and a control device 400 .

회전체(100)는 대상물(10)의 다양한 각도를 구현하기 위한 구성으로, 제어장치(400)로부터의 제어신호에 따라 수평방향으로 회전할 수 있다. 즉, 회전체(100)는 제어신호에 따라 수평방향으로 회동동가능하게 장착되는 프레임 구조물로서, 대상물(10)을 수평방향으로 360도 회전시킬 수 있다. 도시되지 않았으나 회전체(100)에는 제어장치(400)의 제어신호에 따라 회전구동하면서 수평회전에 필요한 구동력을 제공하기 위한 전기모터 등의 구동수단이 구비된다. 이러한 구동수단으로는 회전각 및 회전속도 등을 정밀하게 조절할 수 있는 스테핑모터 또는 서보모터를 이용할 수 있다.The rotating body 100 is configured to implement various angles of the object 10 , and may be rotated in a horizontal direction according to a control signal from the control device 400 . That is, the rotating body 100 is a frame structure that is rotatably mounted in the horizontal direction according to a control signal, and can rotate the object 10 by 360 degrees in the horizontal direction. Although not shown, the rotating body 100 is provided with a driving means such as an electric motor for providing a driving force necessary for horizontal rotation while rotating according to a control signal of the control device 400 . As such a driving means, a stepping motor or a servo motor capable of precisely adjusting a rotation angle and rotation speed may be used.

회전체(100)는 대상물(10)을 다양한 방향에서 센싱되도록 할 수 있다. The rotating body 100 may allow the object 10 to be sensed in various directions.

로봇팔(200)은 센서부(300)를 통해 영상 데이터를 획득하면서 종래의 매니퓰레이터 기능을 구현하는 로봇장치로서, 복수의 링크(220)와 복수의 관절부(230)를 포함하는 다관절 구조로 이루어져 있다. 로봇팔(200)은 6축 다관절 로봇팔(200)로 구현될 수 있다. The robot arm 200 is a robot device that implements a conventional manipulator function while acquiring image data through the sensor unit 300 , and has a multi-joint structure including a plurality of links 220 and a plurality of joint parts 230 . have. The robot arm 200 may be implemented as a 6-axis articulated robot arm 200 .

이러한 로봇팔(200)은 몸체부(210), 로봇암부(220,230) 및 제어부(미도시)를 포함할 수 있다. 또한, 로봇팔(200)은 제어장치(400)와 통신하기 위한 통신부(미도시)를 더 포함할 수 있다. The robot arm 200 may include a body part 210, robot arm parts 220 and 230, and a control unit (not shown). In addition, the robot arm 200 may further include a communication unit (not shown) for communicating with the control device (400).

몸체부(210)는 로봇팔(200)을 고정시키기 위한 구성일 수 있다. The body part 210 may be configured to fix the robot arm 200 .

로봇암부(220,230)는 몸체부(210)의 상부에 복수의 링크(220)와 복수의 관절부(230)를 포함하는 다관절 구조로 이루어질 수 있다. 각 관절부(230)는 제어장치(400)의 제어신호에 따라 회전구동하면서 각 링크(220)를 소정 각도로 회동시키며 상단에 배치된 종단링크의 단부에는 제어신호에 따라 회전하여 대상물(10)을 촬영(센싱)하는 센서부(300)가 장착될 수 있다. The robot arm parts 220 and 230 may have a multi-joint structure including a plurality of links 220 and a plurality of joint parts 230 on the upper portion of the body part 210 . Each joint 230 rotates each link 220 at a predetermined angle while rotating according to the control signal of the control device 400, and rotates according to the control signal at the end of the longitudinal link disposed at the top to rotate the object 10. A sensor unit 300 for photographing (sensing) may be mounted.

여기서, 로봇암부(220,230)는 요구되는 매니퓰레이터 기능에 따라 2관절 이상의 링크 구조로 이루어질 수 있으며, 관절부(230)는 수평방향 회전(패닝) 동작이외에 수직방향 회전(틸팅, Tilting)이 가능하도록 구비되는 것이 바람직하다.Here, the robot arm parts 220 and 230 may have a link structure of two or more joints according to the required manipulator function, and the joint part 230 is provided to enable vertical rotation (tilting, tilting) in addition to horizontal rotation (panning) operation. it is preferable

또한, 도시되지 않았으나 각 관절부(230)에는 제어부(160)의 제어신호에 따라 회전구동하면서 회전구동에 필요한 구동력을 제공하기 위한 전기모터 등의 구동수단이 구비되며, 상기 구동수단으로는 스테핑모터 또는 서보모터를 이용할 수 있고, 회전각의 정밀제어를 위해 일측에는 엔코더가 배치될 수 있다.In addition, although not shown, each joint part 230 is provided with a driving means such as an electric motor for providing a driving force necessary for rotational driving while rotating according to a control signal of the controller 160 , and the driving means includes a stepping motor or A servomotor may be used, and an encoder may be disposed on one side for precise control of the rotation angle.

제어부는 로봇팔(200)을 중앙제어하는 마이크로 컨트롤러로서, 제어장치(400)로부터의 제어신호에 따라 로봇암부(220,230)를 구동제어할 수 있다. 여기서, 제어신호는 로봇팔의 자세를 변경하는 신호일 수 있다. The control unit is a microcontroller that centrally controls the robot arm 200 , and may drive and control the robot arm units 220 and 230 according to a control signal from the control device 400 . Here, the control signal may be a signal for changing the posture of the robot arm.

제어부는 몸체부(210) 내부에 설치되고, 로봇암부(220,230) 의 구동에 따른 각 링크(220) 및 관절부(230)의 위치(자세)를 공간 좌표값으로 변환하며, 센서부(300)를 통해 획득된 영상 데이터 및 그 영상 데이터 획득 시점의 로봇암부(220,230) 의 공간 좌표값을 제어장치(400)로 전송할 수 있다. 여기서, 공간 좌표값은 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 값을 포함할 수 있다. The control unit is installed inside the body unit 210, converts the position (posture) of each link 220 and the joint unit 230 according to the driving of the robot arm units 220 and 230 into spatial coordinate values, and the sensor unit 300 The obtained image data and spatial coordinate values of the robot arms 220 and 230 at the time of acquiring the image data may be transmitted to the control device 400 . Here, the spatial coordinate value may include an x-axis, a y-axis, a z-axis, a pitch, a roll, and a yaw value.

제어부는 제어장치(400)로부터의 제어신호에 따라 관절부(230)를 구동 제어함으로써, 센서부(300)를 통한 영상 데이터 획득 동작을 보다 용이하고 정밀하게 수행할 수 있다.The control unit drives and controls the joint unit 230 according to a control signal from the control device 400 , so that the image data acquisition operation through the sensor unit 300 can be performed more easily and precisely.

센서부(300)는 대상물(10)을 감지하고, 감지된 데이터를 제어장치(400)로 전송할 수 있다. 여기서, 대상물(10)은 학습 데이터를 생성하기 위한 객체일 수 있다. The sensor unit 300 may detect the object 10 and transmit the sensed data to the control device 400 . Here, the object 10 may be an object for generating learning data.

이러한 센서부(300)는 영상 센서(미도시), 라이다 센서(미도시) 및 레이더 센서(미도시) 등을 포함할 수 있다. The sensor unit 300 may include an image sensor (not shown), a lidar sensor (not shown), and a radar sensor (not shown).

영상 센서는 대상물(10)을 촬영하고, 촬영된 영상 데이터를 제어장치(400)로 전송할 수 있다. 영상 센서는 예컨대, 카메라나 기타 영상 데이터를 입력받을 수 있는 장치 등이 포함될 수 있다. 영상 센서는 정지영상이나 동영상 등의 영상 데이터를 처리할 수 있으며, 동일한 대상물(10)을 포함하는 시간적으로 연속성 있는 이미지를 출력할 수 있다. 라이다 센서는 빛을 발산하고 대상물(10)에 반사되는 빛을 측정하여 대상물(10)과의 거리 및 다양한 물성을 감지하고, 이를 3D 영상으로 모델링할 수 있다. The image sensor may photograph the object 10 and transmit the photographed image data to the control device 400 . The image sensor may include, for example, a camera or other device capable of receiving image data. The image sensor may process image data such as still images or moving images, and may output temporally continuous images including the same object 10 . The lidar sensor emits light and measures the light reflected by the object 10 to detect a distance from the object 10 and various physical properties, and can model this as a 3D image.

영상 센서만을 이용하는 것보다 라이다 센서를 같이 이용함으로써 보다 정확하게 대상물(10)에 대한 학습 데이터를 생성할 수 있다.Learning data for the object 10 can be more accurately generated by using the lidar sensor rather than using only the image sensor.

상기와 같이 구성된 센서부(300)가 장착된 로봇팔(200)은 제어장치(400)로부터의 제어신호에 따라 구동하면서 센서부(300)를 통해 대상물(10)을 포함하는 영상 데이터를 획득하고, 획득된 영상 데이터를 제어장치(400)로 전송할 수 있다. The robot arm 200 equipped with the sensor unit 300 configured as described above acquires image data including the object 10 through the sensor unit 300 while driving according to a control signal from the control device 400 and , the obtained image data may be transmitted to the control device 400 .

제어장치(400)는 로봇팔(200) 및 회전체(100) 중 적어도 하나의 구동을 제어하기 위한 제어 신호를 생성하고, 제어 신호에 따라 이동 및 회전하는 센서부(300)로부터 영상 데이터를 획득하며, 대상물(10)에 대한 기준 3D 모델을 이용하여 영상 데이터로부터 대상물(10)에 대한 바운딩 박스(bounding box)를 생성함으로써 대상물(10)에 대한 학습 데이터를 생성할 수 있다.The control device 400 generates a control signal for controlling the driving of at least one of the robot arm 200 and the rotating body 100, and acquires image data from the sensor unit 300 that moves and rotates according to the control signal In addition, learning data for the object 10 may be generated by generating a bounding box for the object 10 from the image data using the reference 3D model for the object 10 .

대상물(10)에 대한 학습 데이터를 생성하기 위해서는 다양한 각도의 위치에서 대상물(10)을 촬영할 필요가 있다. 이에, 제어장치(400)는 로봇팔(200)의 구동을 제어하여 센서부(300)를 이동시키고, 회전체(100)의 구동을 제어하여 회전체(100) 상면에 올려진 대상물(10)을 회전시킨 후, 센서부(300)를 통해 획득된 영상 데이터에서 실제 대상물(10) 영역에 바운딩 박스를 입력하여 대상물(10)에 대한 학습 데이터를 생성할 수 있다. In order to generate learning data for the object 10 , it is necessary to photograph the object 10 at various angles. Accordingly, the control device 400 controls the driving of the robot arm 200 to move the sensor unit 300 , and controls the driving of the rotating body 100 to control the rotating body 100 to be mounted on the upper surface of the object 10 . After rotating , learning data for the object 10 may be generated by inputting a bounding box into the area of the real object 10 in the image data obtained through the sensor unit 300 .

이러한 제어장치(400)는 도 2에 도시된 바와 같이 저장부(410), 통신부(420) 및 제어부(430)를 포함할 수 있다. The control device 400 may include a storage unit 410 , a communication unit 420 , and a control unit 430 as shown in FIG. 2 .

통신부(420)는 회전체(100) 및 로봇팔(200)과의 통신을 위한 구성으로, 제어신호를 회전체(100) 및 로봇팔(200)로 전송하거나 로봇팔(200)로부터 영상 데이터 및 공간 좌표값을 수신할 수 있다. 이러한 통신부(420)는 근거리 통신모듈, 무선 통신모듈, 이동통신 모듈, 유선 통신모듈 등 다양한 형태로 구현될 수 있다.The communication unit 420 is configured for communication with the rotating body 100 and the robot arm 200 , and transmits a control signal to the rotating body 100 and the robot arm 200 or image data and It is possible to receive spatial coordinate values. The communication unit 420 may be implemented in various forms, such as a short-range communication module, a wireless communication module, a mobile communication module, and a wired communication module.

저장부(410)는 대상물(10)에 대한 기준 3D 모델이 획득된 로봇암부(220,230) 의 공간 좌표값을 초기값으로 저장할 수 있다. 여기서, 초기값은 로봇팔(200)을 이용하여 기준 3D 모델과 동일한 형상의 대상물(10)을 획득할 시 로봇암부(220,230) 의 공간 좌표값(x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 값)일 수 있다. The storage unit 410 may store the spatial coordinate values of the robot arms 220 and 230 from which the reference 3D model of the object 10 is obtained as an initial value. Here, the initial value is the spatial coordinate values (x-axis, y-axis, z-axis, pitch) of the robot arm units 220 and 230 when acquiring the object 10 having the same shape as the reference 3D model using the robot arm 200 ), roll, and yaw values).

또한, 저장부(410)에는 회전체(100) 및 로봇팔(200)의 이동 및 회전에 대한 시나리오를 저장할 수 있다. 이 경우, 회전체(100) 및 로봇팔(200)은 저장부(410)에 저장된 시나리오에 따라 스스로 이동 및 회전할 수 있고, 제어장치(400)는 로봇팔(200)로부터의 영상 데이터를 이용하여 대상물(10)에 대한 학습 데이터를 자동으로 생성할 수 있다. Also, the storage unit 410 may store a scenario for movement and rotation of the rotating body 100 and the robot arm 200 . In this case, the rotating body 100 and the robot arm 200 can move and rotate by themselves according to the scenario stored in the storage unit 410 , and the control device 400 uses the image data from the robot arm 200 . Thus, learning data for the object 10 may be automatically generated.

또한, 저장부(410)는 대상물(10)에 대한 기준 3D 모델을 저장할 수 있다. 예를 들어 도 3의 (a)와 같은 영상 데이터의 경우, 저장부(410)는 도 3의 (b)와 같은 기준 3D 모델을 저장할 수 있다. 기준 3D 모델은 3D 스캔 모델링 데이터일 수 있다. Also, the storage unit 410 may store a reference 3D model of the object 10 . For example, in the case of image data as shown in (a) of FIG. 3 , the storage unit 410 may store a reference 3D model as shown in (b) of FIG. 3 . The reference 3D model may be 3D scan modeling data.

제어부(430)는 회전체(100) 및 로봇팔(200) 중 적어도 하나의 구동을 제어하기 위한 제어 신호를 생성하여 회전체(100) 및 로봇팔(200) 중 적어도 하나의 구동을 제어할 수 있다. The control unit 430 may generate a control signal for controlling the driving of at least one of the rotating body 100 and the robot arm 200 to control the driving of at least one of the rotating body 100 and the robot arm 200 . have.

제어부(430)는 회전체(100) 및 로봇팔(200)의 구동 시나리오를 미리 저장하고, 그 구동 시나리오에 따라 회전체(100) 및 로봇팔(200)의 구동을 제어할 수 있다. 여기서, 구동 시나리오는 이동 및 움직임 경로는 관리자에 의해 미리 설정될 수 있다.The controller 430 may store in advance a driving scenario of the rotating body 100 and the robot arm 200 and control the driving of the rotating body 100 and the robot arm 200 according to the driving scenario. Here, the driving scenario may be set in advance by an administrator for movement and movement paths.

제어부(430)는 회전체(100) 및 로봇팔(200)의 구동에 따라 센서부(300)로부터 영상 데이터를 수신하고, 기준 3D 모델을 이용하여 영상 데이터로부터 대상물(10)을 검출하며, 대상물(10)에 대한 바운딩 박스를 생성함으로써, 학습 데이터를 생성할 수 있다.The control unit 430 receives image data from the sensor unit 300 according to the driving of the rotating body 100 and the robot arm 200, detects the object 10 from the image data using the reference 3D model, and the object By creating a bounding box for (10), it is possible to generate training data.

제어부(430)의 제어에 따라 로봇팔(200)이 구동하여 센서부(300)가 이동 및 회전하게 되면, 제어부(430)는 제어 신호에 따른 로봇암부(220,230) 의 공간 좌표값을 초기값과 비교하여 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 중 적어도 하나의 변경값을 산출할 수 있다. 여기서, 로봇암부(220,230) 의 공간 좌표값은 로봇암부(220,230) 의 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 중 적어도 하나의 값을 포함할 수 있다. When the robot arm 200 is driven under the control of the control unit 430 to move and rotate the sensor unit 300, the control unit 430 sets the spatial coordinate values of the robot arms 220 and 230 according to the control signal to the initial value and By comparison, a change value of at least one of an x-axis, a y-axis, a z-axis, a pitch, a roll, and a yaw may be calculated. Here, the spatial coordinate values of the robot arm units 220 and 230 include at least one value of the x axis, y axis, z axis, pitch, roll, and yaw of the robot arm units 220 and 230 . can

변경값이 산출되면, 제어부(430)는 변경값을 기준 3D 모델에 적용하여 변경된 3D 모델을 생성할 수 있고, 변경된 3D 모델의 외곽선을 추출하며, 추출된 외곽선을 영상 데이터에서 검출된 대상물(10)에 적용함으로써 세그먼테이션 바운딩 박스를 생성할 수 있다. When the changed value is calculated, the controller 430 may generate a changed 3D model by applying the changed value to the reference 3D model, extract an outline of the changed 3D model, and apply the extracted outline to the object 10 detected from the image data. ) to create a segmentation bounding box.

제어부(430)의 제어로 회전체(100)가 회전하고 로봇팔(200)이 구동하면, 대상물(10)에 대한 센서부(300)의 관측점(시야각)이 변하므로, 제어부(430)는 변하는 관측점(시야각)을 기준 3D 모델에 적용할 수 있다. 그러면, 기준 3D 모델의 모양이 변하게 되고, 제어부(430)는 변화된 3D 모델을 이용하여 센서부(300)로부터의 영상 데이터에서 어느 영역이 대상물(10)인지를 인지할 수 있다. When the rotating body 100 rotates under the control of the control unit 430 and the robot arm 200 is driven, the observation point (viewing angle) of the sensor unit 300 for the object 10 changes, so the control unit 430 changes A viewpoint (viewing angle) can be applied to the reference 3D model. Then, the shape of the reference 3D model is changed, and the controller 430 may recognize which area is the object 10 in the image data from the sensor unit 300 using the changed 3D model.

예를 들어, 액추에이터의 동작으로 기준 3D 모델이 도 4의 (a)와 같이 변한 경우에 대해 설명하기로 한다. 이 경우, 제어부는 도 4의 (b)의 영상 데이터에서 (a)의 3D 모델에 대응되는 대상물(A)을 검출할 수 있다. For example, a case in which the reference 3D model is changed as shown in FIG. 4A due to the operation of the actuator will be described. In this case, the controller may detect the object A corresponding to the 3D model of (a) from the image data of (b) of FIG. 4 .

제어부(430)는 변경된 3D 모델의 외곽선을 추출하고, 추출된 외곽선을 검출된 대상물(10)에 적용함으로써 세그먼테이션 바운딩 박스를 생성할 수 있다. 예를 들어, 도 5의 (a)와 같은 3D 모델의 외곽선(B)이 추출된 경우, 제어부(430)는 3D 모델의 외곽선을 도 5의 (b)와 같이 대상물(10)의 외곽선(B')으로 적용할 수 있다. 이는 제어부(430)가 이동체 하우징의 이동 거리, 센서부(300)의 움직인 각도 및 높이 변경값을 기준 3D 모델에 적용하기 때문에, 변경된 3D 모델은 영상 데이터 내 대상물(10)의 크기 및 모양과 동일할 수 있다. 이에, 3D 모델의 외곽선을 대상물(10)의 외곽선으로 적용할 수 있다. The controller 430 may generate a segmentation bounding box by extracting the changed outline of the 3D model and applying the extracted outline to the detected object 10 . For example, when the outline B of the 3D model as shown in (a) of FIG. 5 is extracted, the controller 430 converts the outline of the 3D model to the outline B of the object 10 as shown in FIG. ') can be applied. This is because the controller 430 applies the moving distance of the movable body housing, the moving angle, and the height change value of the sensor unit 300 to the reference 3D model, so the changed 3D model is the size and shape of the object 10 in the image data. may be the same. Accordingly, the outline of the 3D model may be applied as the outline of the object 10 .

또한, 제어부(430)는 제어 신호에 따른 로봇암부(220,230) 의 공간 좌표값을 초기값과 비교하여 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 중 적어도 하나의 변경값을 산출하고, 변경값을 기준 3D 모델에 적용하여 변경된 3D 모델을 생성하며, 변경된 3D 모델의 중심으로부터 가장 큰 X축값 및 Y축값, 가장 작은 X축값 및 Y축값을 각각 직선으로 그려 만나는 4개의 점을 검출된 대상물(10)에 적용함으로써 바운딩 박스를 생성할 수 있다. In addition, the control unit 430 compares the spatial coordinate values of the robot arms 220 and 230 according to the control signal with the initial values, and compares the x-axis, y-axis, z-axis, pitch, roll, and yaw. Calculate at least one change value among A bounding box can be created by applying four points drawn to meet to the detected object 10 .

예를 들어, 도 6의 (a)와 같은 3D 모델의 중심점으로부터 가장 큰 X축, 가장 작은 X축, 가장 큰 y축, 및 가장 큰 y축을 직선으로 그리고, 그 직선이 만나는 4개의 점을 센서부(300)로부터의 영상 데이터에 적용하면, 도 6의 (b)와 같은 바운딩 박스를 생성할 수 있다. For example, the largest X-axis, the smallest X-axis, the largest y-axis, and the largest y-axis are drawn as straight lines from the center point of the 3D model as shown in FIG. When applied to the image data from the unit 300, a bounding box as shown in (b) of FIG. 6 can be generated.

상술한 바와 같이 제어부(430)는 영상 데이터 내의 대상물(10)에 바운딩 박스(bounding box)를 생성하고, 바운딩 박스에 대상물(10)을 특정하는 클래스(ex. 소파, 액자, 책, 카펫, 커튼 등)를 영상 데이터에 레이블링하여 학습 데이터 DB(미도시)에 저장할 수 있다. As described above, the controller 430 creates a bounding box on the object 10 in the image data, and specifies a class (eg, sofa, picture frame, book, carpet, curtain) for specifying the object 10 in the bounding box. etc.) can be stored in the training data DB (not shown) by labeling the image data.

한편, 본 발명의 실시예에서는 제어장치(400)를 로봇팔(200) 외부에 존재하는 장치로 설명하였으나, 제어장치(400)는 로봇팔(200) 내부에 존재하는 장치일 수도 있다. Meanwhile, in the embodiment of the present invention, the control device 400 has been described as a device existing outside the robot arm 200 , but the control device 400 may be a device existing inside the robot arm 200 .

또한, 본 발명의 실시예에서는 로봇암부(220,230) 의 공간 좌표값을 로봇팔(200)에서 산출하는 것으로 설명하였으나, 로봇암부(220,230) 의 공간 좌표값은 제어장치(400)에서 산출할 수도 있다. In addition, in the embodiment of the present invention, it has been described that the spatial coordinate values of the robot arm units 220 and 230 are calculated by the robot arm 200 , but the spatial coordinate values of the robot arm units 220 and 230 may be calculated by the control device 400 . .

상술한 바와 같이 자동적으로 생성한 레이블된 학습데이터를 이용하여 다양한 기계 학습에 응용할 수 있다. As described above, it can be applied to various machine learning using the automatically generated labeled learning data.

상술한 바와 같이, 본 발명의 일 실시예에 따른 로봇팔을 이용한 학습 데이터셋 생성 장치 및 방법은, 로봇팔을 이용하여 대상물(10)에 대한 학습 데이터셋을 자동으로 생성함으로써, 빠른 속도로 정확한 학습 데이터를 생성할 수 있다. 이를 통해 인공지능 머신 러닝의 학습 효율은 물론, 인공지능을 접목한 서비스의 효용성을 확대시킬 수 있다.As described above, the apparatus and method for generating a learning data set using a robot arm according to an embodiment of the present invention automatically generate a learning data set for the object 10 using the robot arm, thereby providing an accurate and fast You can create training data. Through this, it is possible to expand the learning efficiency of artificial intelligence machine learning as well as the utility of services incorporating artificial intelligence.

본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다.Although the present invention has been described with reference to the embodiment shown in the drawings, this is merely exemplary, and those of ordinary skill in the art to which various modifications and equivalent other embodiments are possible. will understand

따라서 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다.Therefore, the true technical protection scope of the present invention should be defined by the following claims.

10 : 대상물
100 : 회전체
200 : 로봇팔
210 : 몸체부
220 : 링크
230 : 관절부
300 : 센서부
400 : 제어장치
410 : 저장부
420 : 통신부
430 : 제어부
10: object
100: rotating body
200: robot arm
210: body part
220 : link
230: joint
300: sensor unit
400: control device
410: storage
420: communication department
430: control unit

Claims (11)

대상물의 다양한 각도를 구현하기 위한 회전체;
복수의 링크와 복수의 관절부를 포함하는 다관절 구조로 이루어지고, 제어신호에 따라 각 관절부를 회전구동하면서 각 링크를 소정각도로 회동시키는 로봇팔;
상기 로봇팔의 종단링크에 장착되어, 상기 대상물을 감지하는 센서부; 및
상기 로봇팔 및 회전체 중 적어도 하나의 구동을 제어하기 위한 제어 신호를 생성하고, 상기 제어 신호에 따라 이동 및 회전하는 상기 센서부로부터 영상 데이터를 획득하며, 상기 대상물에 대한 기준 3D 모델을 이용하여 상기 영상 데이터로부터 상기 대상물에 대한 바운딩 박스(bounding box)를 생성함으로써 상기 대상물에 대한 학습 데이터를 생성하는 제어 장치
를 포함하는, 로봇팔을 이용한 학습 데이터 생성 장치.
Rotating body for implementing various angles of the object;
a robot arm having a multi-joint structure including a plurality of links and a plurality of joints, and rotating each link at a predetermined angle while rotating each joint according to a control signal;
a sensor unit mounted on the end link of the robot arm to detect the object; and
Generates a control signal for controlling the driving of at least one of the robot arm and the rotating body, acquires image data from the sensor unit that moves and rotates according to the control signal, and uses a reference 3D model for the object A control device for generating learning data for the object by generating a bounding box for the object from the image data
Including, learning data generating device using a robot arm.
제1항에 있어서,
상기 로봇팔은,
6축 다관절 로봇팔인 것을 특징으로 하는 로봇팔을 이용한 학습 데이터 생성 장치.
According to claim 1,
The robot arm,
Learning data generating device using a robot arm, characterized in that it is a 6-axis articulated robot arm.
제1항에 있어서,
상기 로봇팔은,
몸체부;
상기 몸체부의 상부에 복수의 링크와 복수의 관절부를 포함하는 다관절 구조로 이루어지고, 각 관절부는 상기 제어신호에 따라 회전구동하면서 각 링크를 소정각도로 회동시키는 로봇암부; 및
상기 몸체부 내부에 설치되고, 상기 로봇암부의 구동에 따른 각 링크 및 관절부의 위치를 공간 좌표값으로 변환하며, 상기 센서부를 통해 획득된 영상 데이터 및 그 영상 데이터 획득 시점의 상기 로봇암부의 공간 좌표값을 상기 제어 장치로 전송하는 제어부를 포함하는 것을 특징으로 하는 로봇팔을 이용한 학습 데이터 생성 장치.
According to claim 1,
The robot arm,
body part;
a robot arm part having a multi-joint structure including a plurality of links and a plurality of joint parts on the upper portion of the body part, and each joint part rotates according to the control signal and rotates each link at a predetermined angle; and
It is installed inside the body, converts the positions of the links and joints according to the driving of the robot arm into spatial coordinate values, and the image data obtained through the sensor unit and the spatial coordinates of the robot arm at the time of acquiring the image data Learning data generating apparatus using a robot arm, characterized in that it comprises a control unit for transmitting a value to the control device.
제1항에 있어서,
상기 제어 장치는,
통신부;
상기 대상물에 대한 기준 3D 모델이 획득된 로봇암부의 공간 좌표값을 초기값으로 저장하는 저장부; 및
상기 로봇팔 및 회전체 중 적어도 하나를 구동시키기 위한 제어 신호를 상기 통신부를 통해 전송하고, 상기 로봇팔로부터 상기 센서부를 통해 획득된 영상 데이터 및 로봇암부의 공간 좌표값을 수신하며, 상기 기준 3D 모델을 이용하여 상기 영상 데이터로부터 상기 대상물을 검출하고, 상기 대상물에 대한 바운딩 박스를 생성하는 제어부를 포함하는 것을 특징으로 하는 로봇팔을 이용한 학습 데이터 생성 장치.
According to claim 1,
The control device is
communication department;
a storage unit for storing the spatial coordinate values of the robot arm from which the reference 3D model of the object is obtained as an initial value; and
Transmitting a control signal for driving at least one of the robot arm and the rotating body through the communication unit, receiving image data obtained through the sensor unit from the robot arm and spatial coordinate values of the robot arm unit, and the reference 3D model and a control unit for detecting the object from the image data by using and generating a bounding box for the object.
제4항에 있어서,
상기 제어부는,
상기 로봇팔로부터 수신한 로봇암부의 공간 좌표값을 상기 초기값과 비교하여 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 중 적어도 하나의 변경값을 산출하고, 상기 변경값을 상기 기준 3D 모델에 적용하여 변경된 3D 모델을 생성하며, 상기 변경된 3D 모델의 외곽선을 추출하고, 상기 추출된 외곽선을 상기 검출된 대상물에 적용함으로써 세그먼테이션 바운딩 박스를 생성하는 것을 특징으로 하는 로봇팔을 이용한 학습 데이터 생성 장치.
5. The method of claim 4,
The control unit is
By comparing the spatial coordinate value of the robot arm received from the robot arm with the initial value, the change value of at least one of the x-axis, y-axis, z-axis, pitch, roll, and yaw Calculating, applying the changed value to the reference 3D model to generate a changed 3D model, extracting an outline of the changed 3D model, and applying the extracted outline to the detected object to generate a segmentation bounding box Learning data generating device using a robot arm characterized in that.
제4항에 있어서,
상기 제어부는,
상기 로봇팔로부터 수신한 로봇암부의 공간 좌표값을 상기 초기값과 비교하여 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 중 적어도 하나의 변경값을 산출하고, 상기 변경값을 상기 기준 3D 모델에 적용하여 변경된 3D 모델을 생성하며, 상기 변경된 3D 모델의 중심으로부터 가장 먼 X축값 및 Y축값, 가장 가까운 X축값 및 Y축값을 각각 직선으로 그려 만나는 4개의 점을 상기 검출된 대상물에 적용함으로써 바운딩 박스를 생성하는 것을 특징으로 하는 로봇팔을 이용한 학습 데이터 생성 장치.
5. The method of claim 4,
The control unit is
By comparing the spatial coordinate value of the robot arm received from the robot arm with the initial value, the change value of at least one of the x-axis, y-axis, z-axis, pitch, roll, and yaw Calculate, apply the changed value to the reference 3D model to generate a changed 3D model, and draw the X-axis and Y-axis values, the closest X-axis values and the Y-axis values from the center of the changed 3D model with straight lines, respectively, and meet 4 Learning data generating apparatus using a robot arm, characterized in that by applying the dots to the detected object to generate a bounding box.
제1항에 있어서,
상기 회전체는,
상기 제어신호에 따라 수평방향으로 회전하는 것을 특징으로 하는 로봇팔을 이용한 학습 데이터 생성 장치.
According to claim 1,
The rotating body is
Learning data generating apparatus using a robot arm, characterized in that it rotates in the horizontal direction according to the control signal.
제어장치가 로봇팔의 구동을 제어하기 위한 제어 신호를 상기 로봇팔로 전송하는 단계;
상기 로봇팔이 상기 제어 신호에 따라 구동하면서 센서부를 통해 대상물을 포함하는 영상 데이터를 획득하고, 상기 획득된 영상 데이터를 상기 제어장치로 전송하는 단계; 및
상기 제어장치가 상기 대상물에 대한 기준 3D 모델을 이용하여 상기 영상 데이터로부터 상기 대상물에 대한 바운딩 박스(bounding box)를 생성함으로써 상기 대상물에 대한 학습 데이터를 생성하는 단계
를 포함하는, 로봇팔을 이용한 학습 데이터 생성 방법.
transmitting, by a control device, a control signal for controlling the driving of the robot arm to the robot arm;
acquiring image data including an object through a sensor unit while driving the robot arm according to the control signal, and transmitting the obtained image data to the control device; and
generating, by the control device, learning data for the object by generating a bounding box for the object from the image data using a reference 3D model for the object
Including, a method of generating learning data using a robot arm.
제8항에 있어서,
상기 학습 데이터를 생성하는 단계는,
상기 제어장치가 상기 로봇팔로부터 상기 영상 데이터를 수신하는 단계;
상기 제어장치가 상기 영상 데이터 획득 시점의 상기 로봇팔의 공간 좌표값을 기 저장된 초기값과 비교하여 x축, y축, z축, 피치(pitch), 롤(roll), 및 요(yaw) 중 적어도 하나의 변경값을 산출하는 단계;
상기 제어장치가, 상기 변경값을 기준 3D 모델에 적용하여 변경된 3D 모델을 생성하는 단계; 및
상기 제어장치가 상기 변경된 3D 모델을 이용하여 상기 영상 데이터로부터 상기 대상물을 검출하며, 상기 대상물에 대한 바운딩 박스를 생성하는 단계를 포함하는 것을 특징으로 하는 로봇팔을 이용한 학습 데이터 생성 방법.
9. The method of claim 8,
The step of generating the learning data is,
receiving, by the control device, the image data from the robot arm;
The control device compares the spatial coordinate value of the robot arm at the time of acquiring the image data with an initial value stored in x-axis, y-axis, z-axis, pitch, roll, and yaw. calculating at least one change value;
generating, by the controller, a changed 3D model by applying the changed value to a reference 3D model; and
and detecting, by the control device, the object from the image data using the changed 3D model, and generating a bounding box for the object.
제9항에 있어서,
상기 바운딩 박스를 생성하는 단계에서,
상기 제어장치는, 상기 변경된 3D 모델의 외곽선을 추출하고, 상기 추출된 외곽선을 상기 검출된 대상물에 적용함으로써 세그먼테이션 바운딩 박스를 생성하는 것을 특징으로 하는 로봇팔을 이용한 학습 데이터 생성 방법.
10. The method of claim 9,
In the step of creating the bounding box,
The control device extracts the outline of the changed 3D model, and generates a segmentation bounding box by applying the extracted outline to the detected object.
제9항에 있어서,
상기 바운딩 박스를 생성하는 단계에서,
상기 제어장치는, 상기 변경된 3D 모델의 중심으로부터 가장 먼 X축값 및 Y축값, 가장 가까운 X축값 및 Y축값을 각각 직선으로 그려 만나는 4개의 점을 상기 검출된 대상물에 적용함으로써 바운딩 박스를 생성하는 것을 특징으로 하는 로봇팔을 이용한 학습 데이터 생성 방법.
10. The method of claim 9,
In the step of creating the bounding box,
The control device draws the X-axis value and Y-axis value, the closest X-axis value and the Y-axis value from the center of the changed 3D model in straight lines, respectively, and applies four points that meet to the detected object to generate a bounding box. A method of generating learning data using a robot arm characterized by the
KR1020210029254A 2021-03-05 2021-03-05 Apparatus and method for generating training data set using robot arm KR102573020B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210029254A KR102573020B1 (en) 2021-03-05 2021-03-05 Apparatus and method for generating training data set using robot arm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210029254A KR102573020B1 (en) 2021-03-05 2021-03-05 Apparatus and method for generating training data set using robot arm

Publications (2)

Publication Number Publication Date
KR20220125876A true KR20220125876A (en) 2022-09-15
KR102573020B1 KR102573020B1 (en) 2023-08-31

Family

ID=83281494

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210029254A KR102573020B1 (en) 2021-03-05 2021-03-05 Apparatus and method for generating training data set using robot arm

Country Status (1)

Country Link
KR (1) KR102573020B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240071538A (en) 2022-11-15 2024-05-23 한국생산기술연구원 Data generator for robot stiffness model machine learning

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5981087A (en) * 1982-10-29 1984-05-10 株式会社東芝 Multi-joint arm device
US20070211240A1 (en) * 2006-03-10 2007-09-13 Omron Corporation Device for and method of inspecting surface condition
KR20170054074A (en) * 2015-11-09 2017-05-17 한국항공우주연구원 Multi purpose robot arm having camera stabilizing function
KR101818869B1 (en) * 2016-12-12 2018-01-17 한국과학기술원 Broadcasting Image Equipment using Multi-Joint Movement Manipulator and Method of Controlling thereof
KR20180082818A (en) * 2017-01-11 2018-07-19 한창엽 Photographing apparatus having multi-joint camera part
KR20210004162A (en) * 2019-07-03 2021-01-13 주식회사 현대아이티앤이 Automatic Data Set Generation Device and SW and their Control Method for AI Machine Learning Learning
US20210012524A1 (en) * 2018-03-29 2021-01-14 National University Corporation NARA Institute of Science and Technology Learning dataset creation method and device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5981087A (en) * 1982-10-29 1984-05-10 株式会社東芝 Multi-joint arm device
US20070211240A1 (en) * 2006-03-10 2007-09-13 Omron Corporation Device for and method of inspecting surface condition
KR20170054074A (en) * 2015-11-09 2017-05-17 한국항공우주연구원 Multi purpose robot arm having camera stabilizing function
KR101818869B1 (en) * 2016-12-12 2018-01-17 한국과학기술원 Broadcasting Image Equipment using Multi-Joint Movement Manipulator and Method of Controlling thereof
KR20180082818A (en) * 2017-01-11 2018-07-19 한창엽 Photographing apparatus having multi-joint camera part
US20210012524A1 (en) * 2018-03-29 2021-01-14 National University Corporation NARA Institute of Science and Technology Learning dataset creation method and device
KR20210004162A (en) * 2019-07-03 2021-01-13 주식회사 현대아이티앤이 Automatic Data Set Generation Device and SW and their Control Method for AI Machine Learning Learning

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240071538A (en) 2022-11-15 2024-05-23 한국생산기술연구원 Data generator for robot stiffness model machine learning

Also Published As

Publication number Publication date
KR102573020B1 (en) 2023-08-31

Similar Documents

Publication Publication Date Title
US11207781B2 (en) Method for industrial robot commissioning, industrial robot system and control system using the same
US20190184570A1 (en) Intelligent robots
Ott et al. A humanoid two-arm system for dexterous manipulation
JP2016099257A (en) Information processing device and information processing method
US8924020B2 (en) Apparatus for controlling robot and control method thereof
JP2022544007A (en) Visual Teaching and Repetition of Mobile Manipulation System
JP2012218119A (en) Information processing apparatus, method for controlling the same, and program
JP7376268B2 (en) 3D data generation device and robot control system
TWI607814B (en) Flying Laser Marking System with Real-time 3D Modeling and Method Thereof
Gratal et al. Visual servoing on unknown objects
CN114434442B (en) Automatic detection method and system based on cooperative robot
JP2018051634A (en) Robot control device, robot, robot system and posture specifying device
KR102573020B1 (en) Apparatus and method for generating training data set using robot arm
Shen et al. A multi-view camera-projector system for object detection and robot-human feedback
JP2021000694A (en) Device for teaching robot and robot system
Mohamed et al. Automating active stereo vision calibration process with cobots
WO2022107684A1 (en) Device for adjusting parameter, robot system, method, and computer program
KR102452315B1 (en) Apparatus and method of robot control through vision recognition using deep learning and marker
Niu et al. Eye-in-hand manipulation for remote handling: Experimental setup
KR102573019B1 (en) Apparatus and method for generating training data set
WO2021256464A1 (en) Image capturing system and robot system
Pajor et al. Stereovision system for motion tracking and position error compensation of loading crane
JP7249221B2 (en) SENSOR POSITION AND POSTURE CALIBRATION DEVICE AND SENSOR POSITION AND POSTURE CALIBRATION METHOD
KR20220132087A (en) Apparatus and method for generating training data set
Muis et al. Realistic human motion preservation-imitation development on robot with kinect

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant