KR102597991B1 - Apparatus and method for adjusting label data for artificial intelligence learning - Google Patents

Apparatus and method for adjusting label data for artificial intelligence learning Download PDF

Info

Publication number
KR102597991B1
KR102597991B1 KR1020220184450A KR20220184450A KR102597991B1 KR 102597991 B1 KR102597991 B1 KR 102597991B1 KR 1020220184450 A KR1020220184450 A KR 1020220184450A KR 20220184450 A KR20220184450 A KR 20220184450A KR 102597991 B1 KR102597991 B1 KR 102597991B1
Authority
KR
South Korea
Prior art keywords
data
folding tool
label data
processor
line
Prior art date
Application number
KR1020220184450A
Other languages
Korean (ko)
Inventor
이에녹
Original Assignee
주식회사 데이터메이커
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 데이터메이커 filed Critical 주식회사 데이터메이커
Priority to KR1020220184450A priority Critical patent/KR102597991B1/en
Application granted granted Critical
Publication of KR102597991B1 publication Critical patent/KR102597991B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/98Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns
    • G06V10/987Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns with the intervention of an operator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Computational Linguistics (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 입력부; 및 획득된 복수의 원천 데이터 중에서 가공 데이터를 로딩하고, 상기 데이터에 폴리곤 라벨링 공정을 수행하여 라벨 데이터를 생성하고, 상기 입력부를 통해 수신되는 사용자 입력에 기초하여, 폴딩툴을 이용하여, 상기 라벨 데이터를 수정하고, 기계 학습을 위한 가공 데이터 생성을 완료하는 프로세서;를 포함하고, 상기 폴딩툴은, 복수의 라인을 포함하고, 상기 복수의 라인의 연결 지점에 적어도 하나의 꺽임부를 갖는 인공지능 학습용 라벨 데이터 수정 장치에 관한 것이다.The present invention provides an input unit; and loading processed data from a plurality of acquired source data, performing a polygon labeling process on the data to generate label data, and using a folding tool based on user input received through the input unit, to collect the label data. and a processor that modifies and completes the generation of processed data for machine learning, wherein the folding tool includes a plurality of lines and an artificial intelligence learning label having at least one bend at a connection point of the plurality of lines. It is about a data modification device.

Description

인공지능 학습용 라벨 데이터 수정 장치 및 방법{Apparatus and method for adjusting label data for artificial intelligence learning}Apparatus and method for adjusting label data for artificial intelligence learning {Apparatus and method for adjusting label data for artificial intelligence learning}

본 발명은 인공지능 학습용 라벨 데이터 수정 방법 및 장치에 관한 것이다.The present invention relates to a method and device for modifying label data for artificial intelligence learning.

인공지능을 활용한 기술들이 산업 전반에 걸쳐 개발되고 활용되고 있다. 인공지능의 활용을 위해서는 기계학습이 필수적이다. 기계학습을 위해서는 많은 양의 데이터가 필요하고, 데이터를 기계가 인식할 수 있도록 가공하는 과정이 필요하다. 기계학습을 위한 데이터를 가공하는 방식에 대해 많은 연구가 이루어지고 있고, 라벨링 공정에 있어 효율적인 방법에 대한 연구가 필요하다.Technologies utilizing artificial intelligence are being developed and utilized across industries. Machine learning is essential to utilize artificial intelligence. Machine learning requires a large amount of data, and the process of processing the data so that the machine can recognize it is necessary. A lot of research is being done on how to process data for machine learning, and research is needed on efficient methods for the labeling process.

특히, 폴리곤 라벨링은 오브젝트를 구성하는 라인에 복수의 포인트를 찍는 방식으로 라벨링이 수행되는데, 오작업된 포인트를 수정하기 위해서는 일일이 다시 포인트를 찍어야 하는 불편함이 있다.In particular, polygon labeling is performed by stamping a plurality of points on the lines that make up the object, but in order to correct incorrect points, there is the inconvenience of having to stamp each point again one by one.

등록번호 10-2399425Registration number 10-2399425

본 발명은 상기한 문제점을 해결하기 위하여, 폴리곤 라벨링 시, 오작업된 포인트를 간단하게 수정할 수 있는 인공지능 학습용 라벨 데이터 수정 장치 및 방법을 제공하는데 목적이 있다.In order to solve the above problems, the purpose of the present invention is to provide a device and method for correcting label data for artificial intelligence learning that can easily correct incorrect points during polygon labeling.

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

상기 과제를 달성하기 위하여, 본 발명의 실시예에 따른 인공지능 학습용 라벨 데이터 수정 장치는 폴딩툴을 이용하여 라벨 데이터를 수정한다.In order to achieve the above task, the label data modification device for artificial intelligence learning according to an embodiment of the present invention modifies label data using a folding tool.

본 발명의 실시예에 따른 인공지능 학습용 라벨 데이터 수정 장치는 입력부; 및 획득된 복수의 원천 데이터 중에서 가공 데이터를 로딩하고, 상기 데이터에 폴리곤 라벨링 공정을 수행하여 라벨 데이터를 생성하고, 상기 입력부를 통해 수신되는 사용자 입력에 기초하여, 폴딩툴을 이용하여, 상기 라벨 데이터를 수정하고, 기계 학습을 위한 가공 데이터 생성을 완료하는 프로세서;를 포함하고, 상기 폴딩툴은, 복수의 라인을 포함하고, 상기 복수의 라인의 연결 지점에 적어도 하나의 꺽임부를 갖는다.An apparatus for modifying label data for artificial intelligence learning according to an embodiment of the present invention includes an input unit; and loading processed data from a plurality of acquired source data, performing a polygon labeling process on the data to generate label data, and using a folding tool based on user input received through the input unit, to collect the label data. and a processor that modifies and completes the generation of processed data for machine learning, wherein the folding tool includes a plurality of lines and has at least one bend at a connection point of the plurality of lines.

상기 프로세서는, 수정 대상 라인위에 상기 폴딩툴이 위치한 상태에서, 상기 폴딩툴을 이동시키는 방식으로 상기 라벨 데이터를 수정한다.The processor modifies the label data by moving the folding tool while the folding tool is positioned on the line to be corrected.

상기 폴딩툴은, 제1 방향으로 연장되는 제1 라인부; 상기 제1 라인부와의 연결 지점에 꺽임부를 형성하도록 상기 제1 방향과 다른 방향인 제2 방향으로 연장되는 제2 라인부; 및 상기 제1 라인부 또는 상기 제2 라인부에 수직하게 연결되어 푸시를 위한 사용자 입력을 수신하기 위한 푸시부;를 포함한다.The folding tool includes a first line portion extending in a first direction; a second line portion extending in a second direction different from the first direction to form a bend at a connection point with the first line portion; and a push unit vertically connected to the first line unit or the second line unit to receive a user input for a push.

상기 프로세서는, 라벨 데이터가 기 설정된 기준에 벗어나는 것으로 판단되는 경우, 라벨 데이터를 수정한다.If the processor determines that the label data deviates from preset standards, it modifies the label data.

본 발명의 실시예에 따른 인공지능 학습용 라벨 데이터 수정 방법은, 프로세서가, 복수의 원천 데이터를 획득하는 단계;A method of modifying label data for artificial intelligence learning according to an embodiment of the present invention includes steps of a processor acquiring a plurality of source data;

프로세서가, 상기 복수의 원천 데이터 중에서 가공 대상 데이터를 로딩하는 단계;Loading, by a processor, data to be processed from among the plurality of source data;

프로세서가, 상기 데이터에 폴리곤 라벨링 공정을 수행하여 라벨 데이터를 생성하는 단계; 입력부를 통해 수신되는 사용자 입력에 기초하여, 폴딩툴을 이용하여, 상기 라벨 데이터를 수정하는 단계; 및 상기 라벨 데이터의 수정이 완료되면, 기계 학습을 위한 가공 데이터 생성을 완료하는 단계;를 포함하고, 상기 폴딩툴은, 복수의 라인을 포함하고, 상기 복수의 라인의 연결 지점에 적어도 하나의 꺽임부를 갖는다.A processor performing a polygon labeling process on the data to generate label data; Modifying the label data using a folding tool based on user input received through an input unit; And when the modification of the label data is completed, completing the generation of processed data for machine learning, wherein the folding tool includes a plurality of lines, and at least one bend at a connection point of the plurality of lines. have wealth

기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Specific details of other embodiments are included in the detailed description and drawings.

본 발명에 따르면 다음과 같은 효과가 하나 혹은 그 이상 있다.According to the present invention, one or more of the following effects are achieved.

첫째, 폴딩툴을 이용하여 오작업된 라벨 데이터를 용이하게 수정함으로써 라벨 데이터 생산성이 높아지는 효과가 있다.First, label data productivity is increased by easily correcting incorrect label data using a folding tool.

둘째, 다수의 데이터에 대한 폴리곤 라벨링에 있어, 라벨 데이터 생성에 소요되는 시간을 줄이는 효과가 있다.Second, in polygon labeling for multiple data, it has the effect of reducing the time required to generate label data.

셋째, 폴딩툴을 다양한 방식으로 조절함으로써 사용자 편의성이 증대되는 효과가 있다.Third, adjusting the folding tool in various ways has the effect of increasing user convenience.

본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.

도 1은 본 발명의 실시예에 따른 데이터 라벨링을 설명하는데 참조되는 도면이다.
도 2는 본 발명의 실시예에 따른 인공지능 학습용 라벨 데이터 수정 장치를 설명하는데 참조되는 도면이다.
도 3 내지 도 4는 본 발명의 실시예에 따른 인공지능 학습용 라벨 데이터 수정 방법을 설명하는데 참조되는 플로우 차트이다.
도 5는 본 발명의 실시예에 따른 폴딩툴을 설명하는데 참조되는 도면이다.
도 6 내지 도 7은 본 발명의 실시예에 따른 인공지능 학습용 라벨 데이터 수정 동작을 설명하는데 참조되는 도면이다.
1 is a diagram referenced for explaining data labeling according to an embodiment of the present invention.
Figure 2 is a diagram referenced for explaining a label data correction device for artificial intelligence learning according to an embodiment of the present invention.
Figures 3 and 4 are flow charts referenced in explaining a method of modifying label data for artificial intelligence learning according to an embodiment of the present invention.
Figure 5 is a diagram referenced for explaining a folding tool according to an embodiment of the present invention.
Figures 6 and 7 are diagrams referenced for explaining the operation of modifying label data for artificial intelligence learning according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Hereinafter, embodiments disclosed in the present specification will be described in detail with reference to the attached drawings. However, identical or similar components will be assigned the same reference numbers regardless of reference numerals, and duplicate descriptions thereof will be omitted. The suffixes “module” and “part” for components used in the following description are given or used interchangeably only for the ease of preparing the specification, and do not have distinct meanings or roles in themselves. Additionally, in describing the embodiments disclosed in this specification, if it is determined that detailed descriptions of related known technologies may obscure the gist of the embodiments disclosed in this specification, the detailed descriptions will be omitted. In addition, the attached drawings are only for easy understanding of the embodiments disclosed in this specification, and the technical idea disclosed in this specification is not limited by the attached drawings, and all changes included in the spirit and technical scope of the present invention are not limited. , should be understood to include equivalents or substitutes.

제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms containing ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is said to be "connected" or "connected" to another component, it is understood that it may be directly connected to or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. Singular expressions include plural expressions unless the context clearly dictates otherwise.

본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this application, terms such as “comprise” or “have” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.

도 1은 본 발명의 실시예에 따른 데이터 라벨링을 설명하는데 참조되는 도면이다.1 is a diagram referenced for explaining data labeling according to an embodiment of the present invention.

도면을 참조하면, 인공지능(AI) 기계학습(ML)을 수행하여 아웃풋(OP)을 생성하려면 많은 양의 인풋 데이터(10)가 필요하다. 인풋 데이터(10)는 기계학습의 목적에 부합되고, 기계가 인식할 수 있도록 가공되야 한다. Referring to the drawing, a large amount of input data (10) is required to generate output (OP) by performing artificial intelligence (AI) machine learning (ML). Input data 10 must be processed so that it meets the purpose of machine learning and can be recognized by the machine.

가공되기 이전의 데이터는 원천 데이터(SD), 가공된 이후의 데이터는 가공 데이터로 명명될 수 있다.Data before processing may be referred to as source data (SD), and data after processing may be referred to as processed data.

가공 데이터(10)의 생성을 위해 원천 데이터(SD)에 라벨링 공정이 수행되어야 한다. 원천 데이터(SD)에 라벨링 공정이 수행된 데이터는 라벨 데이터로 명명될 수 있다. 라벨 데이터는 바로 가공 데이터(10)로 이용될 수 있지만, 라벨 데이터가 라벨링 기준에 벗어나는 경우에는 라벨 데이터를 수정하는 과정이 필요하다. To generate the processed data 10, a labeling process must be performed on the original data (SD). Data on which a labeling process has been performed on source data (SD) may be named label data. Label data can be used directly as processed data 10, but if the label data deviates from labeling standards, a process of modifying the label data is necessary.

본 발명의 실시예에 따른 장치(100) 및 방법(S300)은, 라벨 데이터를 수정하여 가공 데이터를 생성할 수 있다.The device 100 and method (S300) according to an embodiment of the present invention can generate processed data by modifying label data.

한편, 데이터 라벨링은, 바운딩 박스(Bounding box), 키포인트(Keypoint), 폴리곤(Polygon), 폴리라인(Polyline), 시멘틱 세그멘테이션(Semantic Segmentation), OCR(Optical Character Recognition) 등을 통해 이루어질 수 있다.Meanwhile, data labeling can be done through bounding box, keypoint, polygon, polyline, semantic segmentation, OCR (Optical Character Recognition), etc.

본 발명의 실시예에 따른 장치(100) 및 방법(S300)은, 폴리곤 라벨링 및 폴리라인 라벨링의 경우 이용될 수 있다.The device 100 and method (S300) according to an embodiment of the present invention can be used in the case of polygon labeling and polyline labeling.

도 2는 본 발명의 실시예에 따른 인공지능 학습용 라벨 데이터 수정 장치를 설명하는데 참조되는 도면이다.Figure 2 is a diagram referenced for explaining a label data correction device for artificial intelligence learning according to an embodiment of the present invention.

도면을 참조하면, 본 발명의 실시예에 따른 장치(100)는, 후술하는 방법(S300)을 통해, 인공지능 학습용 라벨 데이터를 수정할 수 있다.Referring to the drawings, the device 100 according to an embodiment of the present invention can modify label data for artificial intelligence learning through a method (S300) described later.

장치(100)는, 입력부(110), 통신부(120), 메모리(140), 출력부(150), 프로세서(170) 및 전원공급부(190)를 포함할 수 있다.The device 100 may include an input unit 110, a communication unit 120, a memory 140, an output unit 150, a processor 170, and a power supply unit 190.

입력부(110)는, 입력 신호를 전기적 신호로 전환할 수 있다. 입력부(110)는, 신호 전환을 위한 적어도 하나의 장치를 포함할 수 있다. 입력부(110)는, 키보드, 마우스, 터치 스크린 및 마이크 중 적어도 어느 하나를 포함할 수 있다.The input unit 110 can convert an input signal into an electrical signal. The input unit 110 may include at least one device for signal conversion. The input unit 110 may include at least one of a keyboard, mouse, touch screen, and microphone.

입력부(110)는, 사용자 입력을 수신할 수 있다. 입력부(110)는, 복수의 원천 데이터 획득, 데이터 로딩, 라벨링 공정 수행, 라벨 데이터 수정 등을 위한 사용자 입력을 수신할 수 있다.The input unit 110 can receive user input. The input unit 110 may receive user input for obtaining a plurality of source data, loading data, performing a labeling process, modifying label data, etc.

한편, 사용자는 라벨러로 명명될 수 있다.Meanwhile, the user may be named labeler.

통신부(120)는, 외부 장치와 유선 또는 무선으로 기 설정된 통신 프로토콜을 이용해 신호를 교환할 수 있다. The communication unit 120 may exchange signals with an external device wired or wirelessly using a preset communication protocol.

통신부(120)는, 외부 장치(예를 들면, 서버 또는 단말기)로부터 복수의 원천 데이터를 수신할 수 있다.The communication unit 120 may receive a plurality of source data from an external device (eg, a server or a terminal).

통신부(120)는, 외부 장치(예를 들면, 서버 또는 단말기)에 가공 데이터를 전송할 수 있다.The communication unit 120 may transmit processed data to an external device (eg, a server or a terminal).

메모리(140)는, 유닛에 대한 기본데이터, 유닛의 동작제어를 위한 제어데이터, 입출력되는 데이터를 저장할 수 있다. 메모리(140)는, 하드웨어적으로, ROM, RAM, EPROM, 플래시 드라이브, 하드 드라이브 등과 같은 다양한 저장기기 일 수 있다.The memory 140 can store basic data for the unit, control data for controlling the operation of the unit, and input/output data. In terms of hardware, the memory 140 may be a variety of storage devices such as ROM, RAM, EPROM, flash drive, hard drive, etc.

메모리(140)는, 복수의 원천 데이터를 저장할 수 있다.The memory 140 may store a plurality of source data.

메모리(140)는, 라벨 데이터를 저장할 수 있다.The memory 140 can store label data.

메모리(140)는, 가공 데이터를 저장할 수 있다.The memory 140 can store processed data.

메모리(140)는, 라벨링 기준 정보를 저장할 수 있다.The memory 140 may store labeling standard information.

출력부(150)는, 전기적 신호를 시각적 신호 또는 청각적 신호로 전환할 수 있다. 출력부(150)는 신호 전환을 위한 적어도 하나의 장치를 포함할 수 있다. 출력부(150)는, 디스플레이 및 스피커 중 적어도 어느 하나를 포함할 수 있다.The output unit 150 can convert electrical signals into visual or auditory signals. The output unit 150 may include at least one device for signal conversion. The output unit 150 may include at least one of a display and a speaker.

출력부(150)는, 로딩된 원천 데이터를 출력할 수 있다.The output unit 150 may output loaded source data.

출력부(150)는, 라벨링 공정을 출력할 수 있다. 출력부(150)는, 라벨링 공정 완료 후의 라벨 데이터를 출력할 수 있다. The output unit 150 can output the labeling process. The output unit 150 may output label data after completing the labeling process.

출력부(150)는, 라벨 데이터에 라벨링 기준 정보를 함께 출력할 수 있다.The output unit 150 may output labeling standard information together with the label data.

출력부(150)는, 라벨 데이터의 수정 과정을 출력할 수 있다. 출력부(150)는, 라벨 데이터의 수정 완료 후의 가공 데이터를 출력할 수 있다.The output unit 150 may output the modification process of label data. The output unit 150 may output processed data after the label data has been modified.

프로세서(170)는, 입력부(110), 통신부(120), 메모리(140), 출력부(150), 인터페이스부(180) 및 전원공급부(190)와 전기적으로 연결될 수 있다.The processor 170 may be electrically connected to the input unit 110, communication unit 120, memory 140, output unit 150, interface unit 180, and power supply unit 190.

프로세서(170)는, ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다.The processor 170 includes application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, and controllers. It may be implemented using at least one of controllers, micro-controllers, microprocessors, and other electrical units for performing functions.

프로세서(170)는, 후술하는 방법(S300)을 수행하는 동작의 주체일 수 있다. 프로세서(170)는, 방법(S300)의 수행을 통해, 가공 데이터(10)를 생성할 수 있다.The processor 170 may be the subject of an operation that performs a method (S300) described later. The processor 170 may generate processed data 10 by performing method S300.

전원공급부(190)는, 장치(100)의 각 구성요소들의 동작에 필요한 전원을 공급할 수 있다. 전원공급부(190)는, 상용 전원 또는 배터리로부터 전원을 제공받아 장치(100)의 각 구성요소들에 제공할 수 있다.The power supply unit 190 can supply power necessary for the operation of each component of the device 100. The power supply unit 190 can receive power from a commercial power source or a battery and provide it to each component of the device 100.

도 3 내지 도 4는 본 발명의 실시예에 따른 인공지능 학습용 라벨 데이터 수정 방법을 설명하는데 참조되는 플로우 차트이다.Figures 3 and 4 are flow charts referenced in explaining a method of modifying label data for artificial intelligence learning according to an embodiment of the present invention.

도면을 참조하면, 본 발명의 실시예에 따른 방법(S300)은, 인공지능 학습용 라벨 데이터를 수정할 수 있다. 방법(S300)은, 복수의 원천 데이터를 획득하는 단계(S310) 및 가공 데이터를 생성하는 단계(S320)를 포함할 수 있다.Referring to the drawings, the method (S300) according to an embodiment of the present invention can modify label data for artificial intelligence learning. The method (S300) may include acquiring a plurality of source data (S310) and generating processed data (S320).

도 3을 참조하면, 프로세서(170)는, 복수의 원천 데이터를 획득할 수 있다(S310). 프로세서(170)는, 통신부(120)를 통해, 외부 장치로부터 복수의 원천 데이터를 획득할 수 있다. 프로세서(170)는, 메모리(140)에 획득된 원천 데이터를 저장할 수 있다. 프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여, 복수의 원천 데이터를 획득할 수 있다.Referring to FIG. 3, the processor 170 may acquire a plurality of source data (S310). The processor 170 may obtain a plurality of source data from an external device through the communication unit 120. The processor 170 may store the acquired source data in the memory 140. The processor 170 may obtain a plurality of source data based on user input through the input unit 110.

프로세서(170)는 원천 데이터를 가공하여 가공 데이터를 생성할 수 있다(S320). 프로세서(170)는, 가공 데이터의 활용 분야에 기초하여 생성된 라벨링 기준에 따라 가공 데이터를 생성할 수 있다. 프로세서(170)는, 라벨링 공정을 수행함으로써 가공 데이터를 생성할 수 있다. 프로세서(170)는, 라벨 데이터를 수정함으로써 가공 데이터를 생성할 수 있다. The processor 170 may process source data to generate processed data (S320). The processor 170 may generate processed data according to labeling standards created based on the field of use of the processed data. The processor 170 may generate processed data by performing a labeling process. The processor 170 may generate processed data by modifying label data.

프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여, 가공 데이터를 생성할 수 있다.The processor 170 may generate processed data based on user input through the input unit 110.

가공 데이터를 생성하는 단계(S320)는, 가공 대상 데이터를 로딩하는 단계(S330), 라벨 데이터를 생성하는 단계(S340), 라벨 데이터가 라벨링 기준에 벗어나는지 판단하는 단계(S350), 라벨 데이터를 수정하는 단계(S360) 및 가공 데이터 생성을 완료하는 단계(S370)를 포함할 수 있다.The step of generating processed data (S320) includes loading the data to be processed (S330), generating label data (S340), determining whether the label data deviates from the labeling standard (S350), and labeling the data. It may include a step of modifying (S360) and a step of completing the creation of processed data (S370).

프로세서(170)는, 메모리(140)에 저장된 복수의 원천 데이터 중에서 가공 대상 데이터를 로딩할 수 있다(S330). 가공 대상 데이터는, 기계 학습의 목적에 따라 결정될 수 있다. 예를 들면, 기계 학습이 자율 주행의 특정 기능 구현을 위한 목적인 경우, 프로세서(170)는, 차량 외부 영상 데이터 중 어느 하나를 가공 대상 데이터로 로딩할 수 있다.The processor 170 may load processing target data from a plurality of source data stored in the memory 140 (S330). Data to be processed may be determined depending on the purpose of machine learning. For example, when machine learning is for the purpose of implementing a specific function of autonomous driving, the processor 170 may load any one of the vehicle exterior image data as data to be processed.

프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여, 가공 대상 데이터를 로딩할 수 있다.The processor 170 may load data to be processed based on user input through the input unit 110.

프로세서(170)는, 가공 대상 데이터에 라벨링 공정을 수행하여 라벨 데이터를 생성할 수 있다(S340). 라벨링 공정은, 바운딩 박스(Bounding box), 키포인트(Keypoint), 폴리곤(Polygon), 폴리라인(Polyline), 시멘틱 세그멘테이션(Semantic Segmentation), OCR(Optical Character Recognition) 중 적어도 어느 하나의 방식을 통해 이루어질 수 있다. 예를 들면, 프로세서(170)는, 가공 대상 데이터에 폴리곤 라벨링 공정을 수행하여 라벨 데이터를 생성할 수 있다.The processor 170 may generate label data by performing a labeling process on data to be processed (S340). The labeling process can be performed through at least one of the following methods: bounding box, keypoint, polygon, polyline, semantic segmentation, and OCR (Optical Character Recognition). there is. For example, the processor 170 may generate label data by performing a polygon labeling process on data to be processed.

한편, 복수의 라벨링 방식에서 이용 방식 선택은 기계 학습의 목적 또는 대상에 따라 결정될 수 있다.Meanwhile, selection of a usage method among multiple labeling methods may be determined depending on the purpose or target of machine learning.

라벨 데이터를 생성하는 단계(S340)는, 프로세서(170)가 가공 대상 데이터에 기초한 이미지에서 2차원 오브젝트의 테두리를 따라 복수의 포인트를 찍는 방식으로 라벨링 공정을 수행하는 단계를 포함할 수 있다. 이웃하는 포인트들끼리 선으로 연결되어 최종적으로 면적을 가지는 영역이 생성될 수 있다. 이러한 방식의 라벨링 공정은 폴리곤 라벨링 공정으로 설명될 수 있다.The step of generating label data (S340) may include performing a labeling process in which the processor 170 marks a plurality of points along the border of a two-dimensional object in an image based on data to be processed. Neighboring points can be connected with lines to create a final area with an area. This type of labeling process can be described as a polygon labeling process.

라벨 데이터는 가공 대상 데이터에 라벨링 공정이 수행된 결과물로 설명될 수 있다.Label data can be described as the result of a labeling process performed on data to be processed.

프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여 라벨링 공정을 수행하여 라벨 데이터를 생성할 수 있다.The processor 170 may generate label data by performing a labeling process based on user input through the input unit 110.

프로세서(170)는, 라벨 데이터가 기 설정된 라벨링 기준에 벗어나는지 여부를 판단할 수 있다(S350). 라벨링 기준은, 기계 학습의 목적 또는 대상에 따라 설정될 수 있다. 예를 들면, 행인이 소지한 위험물을 검출을 목적으로 CCTV 이미지를 대상으로 라벨링 공정을 수행하는 경우 라벨링 기준은 70%이상 노출된 행인과 행인이 소지한 물건 전부로 설정될 수 있다.The processor 170 may determine whether the label data deviates from preset labeling standards (S350). Labeling criteria can be set according to the purpose or target of machine learning. For example, when a labeling process is performed on CCTV images for the purpose of detecting dangerous substances held by passers-by, the labeling standard can be set to passers-by exposed to more than 70% and all items held by passers-by.

한편, 실시예에 따라, 라벨 데이터기 기 설정된 라벨링 기준에 벗어나는 것으로 판단되는 경우, 프로세서(170)는, 출력부(150)를 통해, 인디케이터(시각적 또는 청각적)를 출력할 수 있다.Meanwhile, depending on the embodiment, if it is determined that the label data deviates from the preset labeling standards, the processor 170 may output an indicator (visual or auditory) through the output unit 150.

라벨 데이터가 라벨링 기준에 벗어나는 것으로 판단되는 경우, 프로세서(170)는, 폴딩툴을 이용하여 라벨 데이터를 수정할 수 있다(S360). If it is determined that the label data deviates from the labeling standards, the processor 170 may modify the label data using a folding tool (S360).

폴딩툴은, 사용자 입력에 따라 라벨 데이터에 생성된 포인트의 위치를 이동시킴으로써 라벨 데이터를 수정하는 툴로 정의될 수 있다.A folding tool can be defined as a tool that modifies label data by moving the position of a point created in the label data according to user input.

폴딩툴은, 복수의 라인을 포함하고, 복수의 라인의 연결 지점에 적어도 하나의 꺽임부를 가질 수 있다.The folding tool may include a plurality of lines and have at least one bend at a connection point of the plurality of lines.

수정하는 단계(S360)에서, 프로세서(170)는, 수정 대상 라인위에 폴딩툴이 위치한 상태에서, 폴딩툴을 이동시키는 방식으로 라벨 데이터를 수정할 수 있다.In the modifying step (S360), the processor 170 may modify the label data by moving the folding tool while the folding tool is positioned on the line to be modified.

프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여, 라벨 데이터를 수정할 수 있다.The processor 170 may modify label data based on user input through the input unit 110.

도 4를 참조하면, 라벨 데이터를 수정하는 단계(S360)는, 폴딩툴을 호출하는 단계(S410), 폴딩툴을 조정하는 단계(S420), 폴딩툴을 이동하는 단계(S430), 수정 완료 상태인지 판단하는 단계(S440) 및 폴딩툴을 제거하는 단계(S450)를 포함할 수 있다.Referring to Figure 4, the step of modifying the label data (S360) includes the step of calling the folding tool (S410), the step of adjusting the folding tool (S420), the step of moving the folding tool (S430), and the modification complete state. It may include a step of determining whether the method is recognized (S440) and a step of removing the folding tool (S450).

프로세서(170)는, 폴딩툴을 호출할 수 있다(S410). 프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여, 메모리(140)에서 폴딩툴을 호출할 수 있다. 프로세서(170)는, 라벨 데이터에 기초한 이미지가 디스플레이에 표시된 상태에서 폴딩툴을 이미지 위에 호출할 수 있다. 프로세서(170)는, 폴리곤 라벨링에서 라벨링 대상이 되는 오브젝트의 외곽 라인 위에 폴딩툴을 표시할 수 있다.The processor 170 may call a folding tool (S410). The processor 170 may call a folding tool from the memory 140 based on user input through the input unit 110. The processor 170 may call a folding tool on the image while the image based on label data is displayed on the display. The processor 170 may display a folding tool on the outer line of the object to be labeled in polygon labeling.

프로세서(170)는, 폴딩툴을 조정할 수 있다(S420). 폴딩툴에 대한 조정 동작은 도 5를 참조하여 설명한다.The processor 170 can adjust the folding tool (S420). The adjustment operation for the folding tool will be described with reference to FIG. 5.

프로세서(170)는, 폴딩툴을 이동할 수 있다(S430). 프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여, 폴딩툴을 푸시할 수 있다.The processor 170 can move the folding tool (S430). The processor 170 may push the folding tool based on user input through the input unit 110.

프로세서(170)는, 폴리곤 라벨링 공정에서 폴딩툴로 테두리를 따라 형성된 복수의 포인트를 푸시하여 포인트를 이동시킬 수 있다. The processor 170 may move the points by pushing a plurality of points formed along the border with a folding tool in the polygon labeling process.

라벨 데이터 수정이 완료되는 경우(S440), 프로세서(170)는, 폴딩툴을 제거할 수 있다(S450).When label data modification is completed (S440), the processor 170 may remove the folding tool (S450).

라벨 데이터 수정이 완료되지 않는 경우(S440), S430 단계를 반복 수행할 수 있다.If label data modification is not completed (S440), step S430 can be repeated.

다시 도 3을 참조하면, 라벨 데이터 수정이 완료된 경우(S360), 프로세서(170)는, 기계 학습을 위한 가공 데이터 생성을 완료할 수 있다(S370). Referring to FIG. 3 again, when label data modification is completed (S360), the processor 170 may complete generating processed data for machine learning (S370).

프로세서(170)는, 메모리(140)에 가공 데이터를 저장할 수 있다.The processor 170 may store processed data in the memory 140 .

프로세서(170)는, 통신부(120)를 통해 가공 데이터를 외부 장치에 전송할 수 있다.The processor 170 may transmit processed data to an external device through the communication unit 120.

도 5는 본 발명의 실시예에 따른 폴딩툴을 설명하는데 참조되는 도면이다.Figure 5 is a diagram referenced for explaining a folding tool according to an embodiment of the present invention.

도면을 참조하면, 프로세서(170)는 폴딩툴(510)을 호출할 수 있다. 프로세서(170)는, 수정이 필요한 라벨 데이터 이미지 위에 폴딩툴(510)을 호출할 수 있다.Referring to the drawing, the processor 170 may call the folding tool 510. The processor 170 may call the folding tool 510 on the label data image that needs to be modified.

폴딩툴(510)는, 2차원 오브젝트를 구성하는 라인에 꺾임부분이 있는 경우 이용될 수 있다.The folding tool 510 can be used when there is a bend in the line constituting the two-dimensional object.

폴딩툴(510)은, 제1 라인부(511), 제2 라인부(512), 꺾임부(513) 및 푸시부(514)를 포함할 수 있다.The folding tool 510 may include a first line portion 511, a second line portion 512, a bend portion 513, and a push portion 514.

제1 라인부(511) 및 제2 라인부(512)는, 수정 대상 라인에 생성된 복수의 포인트 상에 배치되어 복수의 수정 대상 포인트를 인식하기 위한 것으로 정의될 수 있다.The first line portion 511 and the second line portion 512 may be defined as being disposed on a plurality of points created on a line to be modified to recognize a plurality of points to be modified.

제1 라인부(511)는, 제1 방향으로 연장될 수 있다. The first line portion 511 may extend in the first direction.

제2 라인부(512)는, 제1 라인부(511)와의 연결 지점에 꺽임부(513)를 형성하도록 제1 방향과 다른 방향인 제2 방향으로 연장될 수 있다.The second line portion 512 may extend in a second direction that is different from the first direction to form a bent portion 513 at a connection point with the first line portion 511.

푸시부(514)는, 제1 라인부(511)에 수직하게 연결되어 푸시를 위한 사용자 입력을 수신하기 위한 것으로 정의될 수 있다.The push unit 514 may be defined as being vertically connected to the first line unit 511 to receive a user input for pushing.

프로세서(170)는, 제1 라인부(511) 및 제2 라인부(512)가 수정 대상 라인에 위치한 상태에서, 푸시부(514)에 인디케이터(예를 들면, 마우스 포인트)를 위치시킬 수 있다. 이경우, 수정 대상 라인에 꺽임부분은 꺽임부(513)가 위치하게 된다. 푸시부(514)에 인디케이터가 위치된 상태에서, 입력부(110)를 통해 적어도 하나의 버튼이 눌려진 상태로 인디케이터를 이동시키면 제1 라인부(511) 및 제2 라인부(512)가 이동하면서 복수의 수정 대상 포인트도 함께 이동할 수 있다. The processor 170 may position an indicator (e.g., mouse point) on the push unit 514 while the first line unit 511 and the second line unit 512 are located on the line to be modified. . In this case, the bent portion 513 is located in the line to be corrected. With the indicator located on the push unit 514, when the indicator is moved while at least one button is pressed through the input unit 110, the first line unit 511 and the second line unit 512 move and a plurality of lines are formed. The point to be modified can also be moved together.

프로세서(170)는, 제1 라인부(511) 및 제2 라인부(512)를 통해, 제1 라인부(511) 및 제2 라인부(512)와 겹치거나 기 설정 거리 이내에 위치하는 복수의 수정 대상 포인트를 인식할 수 있다.The processor 170, through the first line portion 511 and the second line portion 512, overlaps the first line portion 511 and the second line portion 512 or is located within a preset distance. Points subject to correction can be recognized.

프로세서(170)는, 인디케이터가 푸시부(514)에 위치한 상태에서 입력부(110)를 통한 사용자 입력을 통해 푸시 입력을 수신할 수 있다.The processor 170 may receive a push input through a user input through the input unit 110 while the indicator is located on the push unit 514.

프로세서(170)는 폴딩툴(510)을 조정할 수 있다. 프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여 폴딩툴(510)을 조정할 수 있다.The processor 170 can adjust the folding tool 510. The processor 170 may adjust the folding tool 510 based on user input through the input unit 110.

프로세서(170)는, 제1 라인부(511) 및 제2 라인부(512)가 형성하는 내각의 각도를 조정할 수 있다. 프로세서(170)는, 지시부호 510에 예시한 바와 같이, 내각을 둔각으로 조정하거나, 지시부호 520에 예시한 바와 같이, 내각을 직각으로 조정하거나, 지시부호 530에 예시한 바와 같이, 내각을 예각으로 조정할 수 있다.The processor 170 may adjust the angle of the interior angle formed by the first line portion 511 and the second line portion 512. The processor 170 adjusts the interior angle to an obtuse angle, as illustrated by reference numeral 510, adjusts the interior angle to a right angle, as illustrated by reference symbol 520, or adjusts the interior angle to an acute angle, as illustrated by reference symbol 530. can be adjusted.

프로세서(170)는, 지시부호 540에 예시한 바와 같이, 폴딩툴(510)에 제3 라인부(515)를 추가할 수 있다. 라벨링 대상이 되는 2차원 오브젝트가 2군데의 꺽임부분이 있는 경우, 제1 라인부(511), 제2 라인부(512) 및 제3 라인부(515)가 포함된 폴딩툴(540)이 이용될 수 있다.The processor 170 may add a third line portion 515 to the folding tool 510, as illustrated by reference numeral 540. If the two-dimensional object subject to labeling has two bent parts, the folding tool 540 including the first line part 511, the second line part 512, and the third line part 515 is used. It can be.

프로세서(170)는, 제1 라인부(511) 및 제2 라인부(512) 중 적어도 어느 하나의 길이를 늘리거나 줄임으로써 폴딩툴(510)을 조정(530)할 수 있다. 제1 라인부(511) 및 제2 라인부(512) 중 적어도 어느 하나의 길이를 늘리거나 줄임으로써 오브젝트의 다양한 크기에 대응하여 수정 동작을 수행할 수 있다.The processor 170 may adjust the folding tool 510 (530) by increasing or decreasing the length of at least one of the first line portion 511 and the second line portion 512. By increasing or decreasing the length of at least one of the first line portion 511 and the second line portion 512, a correction operation can be performed in response to various sizes of the object.

프로세서(170)는, 출력부(150) 상에 표시되는 제1 라인부(511) 및 제2 라인부(512) 중 적어도 어느 하나의 자세가 변경(520)되도록 폴딩툴(510)을 조정(560)할 수 있다. 제1 라인부(511) 및 제2 라인부(512) 중 적어도 어느 하나의 자세를 변경시킴으로써 오브젝트의 다양한 형상에 대응하여 수정 동작을 수행할 수 있다.The processor 170 adjusts the folding tool 510 so that the posture of at least one of the first line portion 511 and the second line portion 512 displayed on the output portion 150 is changed (520). 560) You can. By changing the posture of at least one of the first line portion 511 and the second line portion 512, a correction operation can be performed in response to various shapes of the object.

프로세서(170)는, 푸시부(514)의 위치를 제1 라인부(511)와의 상대적 관계에서 변경(540)시킬 수 있다. 프로세서(170)는, 푸시부(514)의 면적을 늘리거나 줄임으로써 폴딩툴(510)을 조정(570)할 수 있다. The processor 170 may change the position of the push unit 514 in a relative relationship with the first line unit 511 (540). The processor 170 may adjust the folding tool 510 (570) by increasing or decreasing the area of the push unit 514.

푸시부(514)의 위치는 라벨링에 있어 중요도가 높은 부분을 나타낼 수 있다. 제1 라인부(511)에서 푸시부(514)가 위치한 부분은 중요도가 높은 부분으로 분류될 수 있다. 프로세서(170)는, 수정시, 푸시부(514)가 위치한 부분에 포인트를 추가로 생성할 수 있다.The location of the push unit 514 may indicate a part of high importance in labeling. The portion of the first line portion 511 where the push portion 514 is located may be classified as a portion of high importance. When modifying, the processor 170 may additionally create a point at the portion where the push unit 514 is located.

푸시부(514)의 면적이 늘어남으로써, 제1 라인부(511)에서 푸시부(514)가 위치한 부분이 증가되는 경우, 프로세서(170)는 증가되는 부분만큼 포인트를 추가로 생성할 수 있다.When the area of the push unit 514 increases and the portion of the first line portion 511 where the push portion 514 is located increases, the processor 170 may generate additional points corresponding to the increased portion.

도 6 내지 도 7은 본 발명의 실시예에 따른 인공지능 학습용 라벨 데이터 수정 동작을 설명하는데 참조되는 도면이다.Figures 6 and 7 are diagrams referenced for explaining the operation of modifying label data for artificial intelligence learning according to an embodiment of the present invention.

도 6을 참조하면, 프로세서(170)는, 가공 대상 데이터를 로딩하여, 상기 데이터에 기초한 이미지를 디스플레이에 표시할 수 있다.Referring to FIG. 6, the processor 170 may load data to be processed and display an image based on the data on a display.

프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여, 라벨링(620) 공정을 수행하여 라벨 데이터를 생성할 수 있다.The processor 170 may generate label data by performing a labeling 620 process based on user input through the input unit 110.

프로세서(170)는, 라벨 데이터에 기초한 이미지(610)를 디스플레이에 표시할 수 있다.The processor 170 may display an image 610 based on label data on the display.

프로세서(170)는 사용자 입력에 기초하여 폴딩툴(630)을 생성할 수 있다. 폴딩툴(630)은, 라벨 데이터에 기초한 이미지(610) 상에 표시될 수 있다.The processor 170 may generate the folding tool 630 based on user input. The folding tool 630 may be displayed on the image 610 based on label data.

프로세서(170)는, 폴딩툴(630)을 조정할 수 있다. 프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여 폴딩툴(630)을 조정할 수 있다.The processor 170 can adjust the folding tool 630. The processor 170 may adjust the folding tool 630 based on user input through the input unit 110.

한편, 프로세서(170)는, 폴딩툴(630)의 위치를 변경할 수 있다. 프로세서(170)는, 입력부(110)를 통한 사용자 입력에 기초하여 폴딩툴(630)의 위치를 변경할 수 있다. 프로세서(170)는, 수정 대상 포인트를 향해 폴딩툴(630)의 위치를 변경할 수 있다.Meanwhile, the processor 170 may change the position of the folding tool 630. The processor 170 may change the position of the folding tool 630 based on user input through the input unit 110. The processor 170 may change the position of the folding tool 630 toward the point to be modified.

한편, 라벨링(620) 공정은 복수의 포인트를 찍는 과정을 통해 이루어질 수 있다. 이경우, 복수의 포인트들 사이는 선으로 연결될 수 있다. 이렇게 연결된 선들은 이미지 내의 오브젝트와 배경을 구분짓는 기능을 할 수 있다.Meanwhile, the labeling 620 process may be performed through the process of stamping a plurality of points. In this case, multiple points may be connected with lines. These connected lines can function to distinguish between objects and backgrounds in the image.

도 7을 참조하면, 프로세서(170)는, 폴딩툴(630)을 수정 대상 포인트를 향해 이동시킬 수 있다. 프로세서(170)는, 폴딩툴(630)이 수정 대상 포인트에 접촉된 상태에서 폴딩툴(630)을 푸시할 수 있다. 프로세서(170)는, 수정 대상 포인트를 특정 변위만큼 폴딩툴(630)이 푸시되는 방향으로 폴딩툴(630)과 함께 이동시킬 수 있다. 수정 대상 포인트가 이동되면서, 이동된 포인트와 이동되지 않는 포인트를 잇는 선의 길이가 늘어나게 된다.Referring to FIG. 7 , the processor 170 may move the folding tool 630 toward the point to be corrected. The processor 170 may push the folding tool 630 while the folding tool 630 is in contact with the point to be modified. The processor 170 may move the point to be modified together with the folding tool 630 by a specific displacement in the direction in which the folding tool 630 is pushed. As the point to be modified is moved, the length of the line connecting the moved point and the non-moved point increases.

폴딩툴(630)이 푸시된 상태에서, 프로세서(170)는, 폴딩툴(630)의 푸시 방향(670)과 다른 방향(680)으로 폴딩툴(630)을 드래그할 수 있다. 프로세서(170)는, 수정 대상 포인트를 폴딩툴(630)이 드래그되는 방향으로 폴딩툴(630)과 함께 이동시킬 수 있다. 수정 대상 포인트가 이동되면서, 기존에 이동된 포인트와 가까워지도록 이동된 포인트 사이를 잇는 선의 길이는 짧아지게 되고, 이동된 포인트와 이동되지 않는 포인트 사이를 잇는 선의 길이는 늘어나게 된다.In a state in which the folding tool 630 is pushed, the processor 170 may drag the folding tool 630 in a direction 680 that is different from the pushing direction 670 of the folding tool 630. The processor 170 may move the point to be modified together with the folding tool 630 in the direction in which the folding tool 630 is dragged. As the point to be modified is moved, the length of the line between the moved points to get closer to the previously moved point becomes shorter, and the length of the line between the moved point and the non-moved point increases.

프로세서(170)는, 푸시 및 드래그 이후 폴딩툴(630)을 다른 지점으로 이동시킬 수 있다. 프로세서(170)는, 폴딩툴(630)이 다른 수정 대상 포인트에 접촉된 상태에서 폴딩툴(630)을 다시 푸시할 수 있다.The processor 170 may move the folding tool 630 to another point after pushing and dragging. The processor 170 may push the folding tool 630 again while the folding tool 630 is in contact with another point to be modified.

전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 상기 컴퓨터는 프로세서 또는 제어부를 포함할 수도 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.The above-described present invention can be implemented as computer-readable code on a program-recorded medium. Computer-readable media includes all types of recording devices that store data that can be read by a computer system. Examples of computer-readable media include HDD (Hard Disk Drive), SSD (Solid State Disk), SDD (Silicon Disk Drive), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. There is. Additionally, the computer may include a processor or control unit. Accordingly, the above detailed description should not be construed as restrictive in all respects and should be considered illustrative. The scope of the present invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the present invention are included in the scope of the present invention.

100 : 인공지능 학습용 라벨 데이터 수정 장치
S300 : 인공지능 학습용 라벨 데이터 수정 방법
100: Label data correction device for artificial intelligence learning
S300: How to modify label data for artificial intelligence learning

Claims (5)

입력부; 및
획득된 복수의 원천 데이터 중에서 가공 데이터를 로딩하고,
상기 데이터에 폴리곤 라벨링 공정을 수행하여 라벨 데이터를 생성하고,
상기 입력부를 통해 수신되는 사용자 입력에 기초하여, 폴딩툴을 이용하여, 상기 라벨 데이터를 수정하고,
기계 학습을 위한 가공 데이터 생성을 완료하는 프로세서;를 포함하고,
상기 폴딩툴은,
복수의 라인을 포함하고, 상기 복수의 라인의 연결 지점에 적어도 하나의 꺽임부를 갖되,
제1 방향으로 연장되는 제1 라인부;
상기 제1 라인부와의 연결 지점에 꺽임부를 형성하도록 상기 제1 방향과 다른 방향인 제2 방향으로 연장되는 제2 라인부; 및
상기 제1 라인부 또는 상기 제2 라인부에 수직하게 연결되어 푸시를 위한 사용자 입력을 수신하기 위한 푸시부;를 포함하고,
상기 프로세서는,
복수의 포인트를 이동시켜 상기 라벨 데이터를 수정하고,
상기 제1 라인부 및 상기 제2 라인부 중 적어도 어느 하나의 길이를 늘리거나 줄임으로써 상기 폴딩툴을 조정하고,
수정 대상 라인위에 상기 폴딩툴이 위치한 상태에서, 상기 폴딩툴을 이동시키는 방식으로 상기 라벨 데이터를 수정하고,
상기 수정 대상 라인위에 상기 폴딩툴이 위치한 상태로 상기 푸시부에 인디케이터를 위치시킨 상태에서, 상기 입력부를 통해 적어도 하나의 버튼이 눌려진 상태로 상기 인디케이터를 이동시킴으로써, 상기 제1 라인부 및 상기 제2 라인부가 이동되면서 복수의 수정 대상 포인트를 함께 이동시키는 인공지능 학습용 라벨 데이터 수정 장치.
input unit; and
Loading processed data from a plurality of acquired source data,
Generate label data by performing a polygon labeling process on the data,
Based on the user input received through the input unit, the label data is modified using a folding tool,
It includes a processor that completes the generation of processed data for machine learning,
The folding tool is,
It includes a plurality of lines and has at least one bend at a connection point of the plurality of lines,
a first line portion extending in a first direction;
a second line portion extending in a second direction different from the first direction to form a bend at a connection point with the first line portion; and
It includes a push unit vertically connected to the first line unit or the second line unit to receive a user input for a push,
The processor,
Modify the label data by moving a plurality of points,
Adjusting the folding tool by increasing or decreasing the length of at least one of the first line portion and the second line portion,
With the folding tool located on the line to be modified, the label data is modified by moving the folding tool,
With the folding tool located on the line to be corrected and the indicator positioned on the push unit, the indicator is moved while at least one button is pressed through the input unit, thereby making the first line unit and the second A label data correction device for artificial intelligence learning that moves multiple correction target points together as the line part moves.
삭제delete 삭제delete 제 1항에 있어서,
상기 프로세서는,
라벨 데이터가 기 설정된 기준에 벗어나는 것으로 판단되는 경우, 라벨 데이터를 수정하는 인공지능 학습용 라벨 데이터 수정 장치.
According to clause 1,
The processor,
A label data correction device for artificial intelligence learning that corrects label data when it is judged to be outside of preset standards.
프로세서가, 복수의 원천 데이터를 획득하는 단계;
프로세서가, 상기 복수의 원천 데이터 중에서 가공 대상 데이터를 로딩하는 단계;
프로세서가, 상기 데이터에 폴리곤 라벨링 공정을 수행하여 라벨 데이터를 생성하는 단계;
입력부를 통해 수신되는 사용자 입력에 기초하여, 폴딩툴을 이용하여, 상기 라벨 데이터를 수정하는 단계; 및
상기 라벨 데이터의 수정이 완료되면, 기계 학습을 위한 가공 데이터 생성을 완료하는 단계;를 포함하고,
상기 폴딩툴은,
복수의 라인을 포함하고, 상기 복수의 라인의 연결 지점에 적어도 하나의 꺽임부를 갖되,
제1 방향으로 연장되는 제1 라인부;
상기 제1 라인부와의 연결 지점에 꺽임부를 형성하도록 상기 제1 방향과 다른 방향인 제2 방향으로 연장되는 제2 라인부; 및
상기 제1 라인부 또는 상기 제2 라인부에 수직하게 연결되어 푸시를 위한 사용자 입력을 수신하기 위한 푸시부;를 포함하고,
상기 수정하는 단계는,
복수의 포인트를 이동시켜 상기 라벨 데이터를 수정하고,
상기 제1 라인부 및 상기 제2 라인부 중 적어도 어느 하나의 길이를 늘리거나 줄임으로써 상기 폴딩툴을 조정하고,
수정 대상 라인위에 상기 폴딩툴이 위치한 상태에서, 상기 폴딩툴을 이동시키는 방식으로 상기 라벨 데이터를 수정하고,
상기 수정 대상 라인위에 상기 폴딩툴이 위치한 상태로 상기 푸시부에 인디케이터를 위치시킨 상태에서, 상기 입력부를 통해 적어도 하나의 버튼이 눌려진 상태로 상기 인디케이터를 이동시킴으로써, 상기 제1 라인부 및 상기 제2 라인부가 이동되면서 복수의 수정 대상 포인트를 함께 이동시키는 인공지능 학습용 라벨 데이터 수정 방법.
Obtaining, by a processor, a plurality of source data;
Loading, by a processor, data to be processed from among the plurality of source data;
A processor performing a polygon labeling process on the data to generate label data;
Modifying the label data using a folding tool based on user input received through an input unit; and
When the modification of the label data is completed, completing the generation of processed data for machine learning,
The folding tool is,
It includes a plurality of lines and has at least one bend at a connection point of the plurality of lines,
a first line portion extending in a first direction;
a second line portion extending in a second direction different from the first direction to form a bend at a connection point with the first line portion; and
It includes a push unit vertically connected to the first line unit or the second line unit to receive a user input for a push,
The above modifying steps are:
Modify the label data by moving a plurality of points,
Adjusting the folding tool by increasing or decreasing the length of at least one of the first line portion and the second line portion,
With the folding tool located on the line to be modified, the label data is modified by moving the folding tool,
With the folding tool located on the line to be corrected and the indicator positioned on the push unit, the indicator is moved while at least one button is pressed through the input unit, thereby making the first line unit and the second A method of modifying label data for artificial intelligence learning in which multiple correction target points are moved together as the line part is moved.
KR1020220184450A 2022-12-26 2022-12-26 Apparatus and method for adjusting label data for artificial intelligence learning KR102597991B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220184450A KR102597991B1 (en) 2022-12-26 2022-12-26 Apparatus and method for adjusting label data for artificial intelligence learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220184450A KR102597991B1 (en) 2022-12-26 2022-12-26 Apparatus and method for adjusting label data for artificial intelligence learning

Publications (1)

Publication Number Publication Date
KR102597991B1 true KR102597991B1 (en) 2023-11-06

Family

ID=88748336

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220184450A KR102597991B1 (en) 2022-12-26 2022-12-26 Apparatus and method for adjusting label data for artificial intelligence learning

Country Status (1)

Country Link
KR (1) KR102597991B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021179839A (en) * 2020-05-14 2021-11-18 株式会社日立製作所 Classification system of features, classification method and program thereof
KR102340998B1 (en) * 2021-07-06 2021-12-20 (주) 웨다 Auto labeling method and system
KR102399425B1 (en) 2021-11-02 2022-05-18 (주)넥스트박스 Data labelling pre-processing, distributing and checking system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021179839A (en) * 2020-05-14 2021-11-18 株式会社日立製作所 Classification system of features, classification method and program thereof
KR102340998B1 (en) * 2021-07-06 2021-12-20 (주) 웨다 Auto labeling method and system
KR102399425B1 (en) 2021-11-02 2022-05-18 (주)넥스트박스 Data labelling pre-processing, distributing and checking system

Similar Documents

Publication Publication Date Title
US10740911B2 (en) Method, system and apparatus for correcting translucency artifacts in data representing a support structure
CN109685870B (en) Information labeling method and device, labeling equipment and storage medium
CN102136201B (en) Image pickup type point-reading machine
CA2963808A1 (en) Systems and methods for recognizing characters in digitized documents
CN105631393A (en) Information recognition method and device
KR102470522B1 (en) System and method for management of handwritten diagram connectors
CN110728210A (en) Semi-supervised target labeling method and system for three-dimensional point cloud data
US10346681B2 (en) Method and computing device for optically recognizing mathematical expressions
JP2018524734A (en) System for recognizing input of multiple objects, method and product therefor
CN106326802B (en) Quick Response Code bearing calibration, device and terminal device
JP2015215889A (en) Reflow type electronic book creation method and web site system
US20200364463A1 (en) Intelligently generating digital note compilations from digital video
CN104881673A (en) Mode identification method based on information integration and system thereof
CN113283355A (en) Form image recognition method and device, computer equipment and storage medium
KR101158679B1 (en) Method for directly inputting figure on electronic document, and computer-readable recording medium storing program of directly inputting figure on electronic document
CN113343740A (en) Table detection method, device, equipment and storage medium
CN110827301B (en) Method and apparatus for processing image
US11200694B2 (en) Apparatus and method for extracting object information
CN114359533B (en) Page number identification method based on page text and computer equipment
CN110008923B (en) Image processing method, training method, device, medium, and computing device
CN111291752A (en) Invoice identification method, equipment and medium
KR102597991B1 (en) Apparatus and method for adjusting label data for artificial intelligence learning
KR102597987B1 (en) Method and apparatus for adjusting label data for artificial intelligence learning
JP2017120503A (en) Information processing device, control method and program of information processing device
US9110926B1 (en) Skew detection for vertical text

Legal Events

Date Code Title Description
AMND Amendment
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant