KR102515081B1 - Apparatus and method for learning object detection software - Google Patents
Apparatus and method for learning object detection software Download PDFInfo
- Publication number
- KR102515081B1 KR102515081B1 KR1020220035336A KR20220035336A KR102515081B1 KR 102515081 B1 KR102515081 B1 KR 102515081B1 KR 1020220035336 A KR1020220035336 A KR 1020220035336A KR 20220035336 A KR20220035336 A KR 20220035336A KR 102515081 B1 KR102515081 B1 KR 102515081B1
- Authority
- KR
- South Korea
- Prior art keywords
- object recognition
- images
- recognition software
- learning
- version
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 50
- 238000013135 deep learning Methods 0.000 claims abstract description 30
- 238000013500 data storage Methods 0.000 claims description 23
- 230000000694 effects Effects 0.000 claims description 10
- 230000003287 optical effect Effects 0.000 claims description 10
- 238000002372 labelling Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/368—Test management for test version control, e.g. updating test cases to a new software version
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
Description
본 발명은 객체인식 소프트웨어 학습방법 및 학습장치에 관한 것으로, 더욱 상세하게는 객체인식 소프트웨어의 학습 데이터를 용이하게 생성하고 업데이트하여 객체 인식 정확도를 향상시킬 수 있는 객체인식 소프트웨어 학습방법 및 학습장치에 관한 것이다.The present invention relates to an object recognition software learning method and learning device, and more particularly, to an object recognition software learning method and learning device capable of improving object recognition accuracy by easily generating and updating object recognition software learning data. will be.
일반적으로 함정은 해양환경에서 운용된다. 주변을 탐색하고 외부의 위협을 감지하기 위해, 함정에는 다양한 광학장치가 탑재된다.In general, ships operate in a marine environment. In order to navigate the surroundings and detect external threats, ships are equipped with various optical devices.
이때, 광학장치가 생성한 영상에 다양한 객체들이 표시될 수 있다. 일부 객체는 함정에 탑승한 승무원은 영상을 확인하여, 자신의 경험에 따라 객체들 각각의 종류를 판단할 수 있다. 따라서, 판단되는 객체의 종류에 따라 표적 관리, 무장할당, 교전통제 등의 대응을 결정할 수 있다. 하지만 승무원의 경험으로 객체들의 종류를 판단하기 때문에, 객체의 종류를 오판하기 쉬운 문제가 있다.At this time, various objects may be displayed on the image generated by the optical device. For some objects, the crew on board the trap can check the images and determine the type of each object according to their own experience. Accordingly, responses such as target management, armament allocation, and engagement control may be determined according to the type of object to be judged. However, since the types of objects are judged based on the crew's experience, there is a problem in which the types of objects are easily misjudged.
종래에는 이러한 문제를 해결하기 위해 객체인식 소프트웨어를 딥러닝시키고, 영상에 표시되는 객체들의 종류를 자동으로 인식시키는 기술을 개발하고 있다. 그러나 보안 문제로 인해 실제 함정들에서 관찰할 수 있는 영상을 수집하기 어렵다. 이에, 객체인식 소프트웨어를 딥러닝시키기 위한 영상을 획득하지 못해, 객체인식 소프트웨어를 사용하지 못하는 문제가 있다.Conventionally, in order to solve this problem, object recognition software is deep-learned and a technology for automatically recognizing the types of objects displayed in an image is being developed. However, due to security concerns, it is difficult to collect observable images from actual ships. Accordingly, there is a problem in that the object recognition software cannot be used because an image for deep learning the object recognition software cannot be obtained.
본 발명은 인터넷을 기반으로 학습 데이터를 용이하게 생성할 수 있는 객체인식 소프트웨어 학습방법 및 학습장치를 제공한다.The present invention provides an object recognition software learning method and learning device capable of easily generating learning data based on the Internet.
본 발명은 군용장비를 운용하면서 획득한 영상으로 학습 데이터를 업데이트하여 객체 인식 정확도를 향상시킬 수 있는 객체인식 소프트웨어 학습방법 및 학습장치를 제공한다.The present invention provides an object recognition software learning method and learning device capable of improving object recognition accuracy by updating learning data with images acquired while operating military equipment.
본 발명은 제1 영상들로 제1 학습 데이터를 생성하는 과정; 상기 제1 학습 데이터를 이용하여 객체인식 소프트웨어의 딥러닝을 수행하는 과정; 상기 제1 영상들과 상이한 제2 영상들로 상기 제1 학습 데이터를 업데이트하여 제2 학습 데이터를 생성하는 과정; 상기 제2 학습 데이터를 이용하여 상기 객체인식 소프트웨어의 딥러닝을 수행하는 과정; 및 상기 제1 학습 데이터로 학습한 제1 버젼의 객체인식 소프트웨어와, 상기 제2 학습 데이터로 학습한 제2 버젼의 객체인식 소프트웨어를 비교하여, 사용할 객체인식 소프트웨어의 버젼을 선택하는 과정;을 포함한다.The present invention includes a process of generating first learning data with first images; performing deep learning of object recognition software using the first learning data; generating second training data by updating the first training data with second images different from the first images; performing deep learning of the object recognition software using the second learning data; and comparing a first version of the object recognition software learned with the first training data and a second version of the object recognition software learned with the second training data, and selecting a version of the object recognition software to be used. do.
상기 제1 학습 데이터를 이용하여 딥러닝을 수행한 후, 상기 제1 버젼의 객체인식 소프트웨어의 제1 객체 인식 정확도를 산출하는 과정; 및 상기 제2 학습 데이터를 이용하여 딥러닝을 수행한 후, 상기 제2 버젼의 객체인식 소프트웨어의 제2 객체 인식 정확도를 산출하는 과정;을 더 포함하고, 사용한 객체인식 소프트웨어의 버젼을 선택하는 과정은, 상기 제1 객체 인식 정확도와 상기 제2 객체 인식 정확도를 비교하여 사용할 객체인식 소프트웨어의 버젼을 결정하는 과정을 포함한다.calculating a first object recognition accuracy of the object recognition software of the first version after performing deep learning using the first training data; and calculating a second object recognition accuracy of the object recognition software of the second version after performing deep learning using the second learning data, and selecting a version of object recognition software used. The step of determining a version of object recognition software to be used by comparing the first object recognition accuracy with the second object recognition accuracy.
상기 제1 객체 인식 정확도를 산출하는 과정, 및 상기 제2 객체 인식 정확도를 산출하는 과정은, 객체가 미리 식별된 테스트용 영상을 객체인식 소프트웨어에 입력하는 과정; 및 객체인식 소프트웨어가 인식한 객체의 개수를, 테스트용 영상의 실제 객체의 개수와 비교하여 객체 인식 정확도를 계산하는 과정;을 포함한다.The process of calculating the first object recognition accuracy and the process of calculating the second object recognition accuracy may include inputting a test image in which an object is previously identified into object recognition software; and calculating object recognition accuracy by comparing the number of objects recognized by the object recognition software with the number of real objects in the test image.
상기 사용할 객체인식 소프트웨어의 버젼을 결정하는 과정은, 상기 제2 객체 인식 정확도가 상기 제1 객체 인식 정확도보다 높으면, 상기 제1 버젼의 객체인식 소프트웨어를 삭제하고 상기 제2 버젼의 객체인식 소프트웨어를 선택하며, 상기 제1 객체 인식 정확도가 상기 제2 객체 인식 정확도보다 높으면 상기 제2 버젼의 객체인식 소프트웨어를 삭제하고 상기 제1 버젼의 객체인식 소프트웨어를 선택하는 과정을 포함한다.In the process of determining the version of the object recognition software to be used, if the second object recognition accuracy is higher than the first object recognition accuracy, the object recognition software of the first version is deleted and the object recognition software of the second version is selected. and deleting the object recognition software of the second version and selecting the object recognition software of the first version if the first object recognition accuracy is higher than the second object recognition accuracy.
상기 제2 학습 데이터를 생성하는 과정은, 상기 제1 학습 데이터에 상기 제2 영상들을 추가하는 과정을 포함한다.The process of generating the second training data includes adding the second images to the first training data.
상기 제2 영상들을 상기 제1 학습 데이터에 추가하는 과정은, 상기 제2 학습 데이터에 포함되는 제1 영상들과 제2 영상들의 영상개수를 미리 설정된 제1 설정개수와 비교하는 과정; 및 상기 영상개수가 상기 제1 설정개수를 초과하면, 초과하는 개수만큼 제1 영상들을 삭제하는 과정;을 포함한다.The process of adding the second images to the first learning data may include comparing the number of first images and second images included in the second learning data with a preset number of first images; and deleting as many first images as the exceeding number when the number of images exceeds the first set number.
상기 제2 학습 데이터를 생성하는 과정은, 상기 제1 학습 데이터가 생성되고 경과된 경과시간을, 미리 설정된 설정시간과 비교하는 과정; 및 상기 경과시간이 상기 설정시간을 넘어가면, 상기 제2 학습 데이터로의 업데이트를 수행하는 과정;을 포함한다.The process of generating the second learning data may include: comparing an elapsed time after the first learning data is generated with a preset set time; and updating the second learning data when the elapsed time exceeds the set time.
상기 제2 학습 데이터를 생성하는 과정은, 상기 제1 학습 데이터를 생성한 후 획득한 제2 영상들의 수집개수를, 미리 설정된 제2 설정개수와 비교하는 과정; 및 상기 수집개수가 상기 제2 설정개수에 도달하면, 상기 제2 학습 데이터로의 업데이트를 수행하는 과정;을 포함한다.The process of generating the second learning data may include: comparing the number of collected second images acquired after generating the first learning data with a preset number of second images; and updating the second learning data when the collection number reaches the second set number.
상기 제1 학습 데이터를 생성하는 과정은, 인터넷에서 상기 제1 영상들을 획득하고 저장하여 상기 제1 학습 데이터로 만드는 과정을 포함하고, 상기 제2 학습 데이터를 생성하는 과정은, 군용장비를 운용하면서 수집한 제2 영상들을 상기 제1 학습 데이터에 추가하여 상기 제2 학습 데이터로 만드는 과정을 포함한다.The process of generating the first learning data includes obtaining and storing the first images from the Internet to make the first learning data, and the process of generating the second learning data includes operating military equipment while operating military equipment. and adding the collected second images to the first training data to make the second training data.
본 발명은 제1 영상들로 제1 학습 데이터를 생성하기 위한 제1 학습 데이터 생성부; 상기 제1 학습 데이터 생성부가 생성한 제1 학습 데이터를 전달받아 저장하기 위한 데이터 저장부; 상기 데이터 저장부에 저장된 학습 데이터를 이용하여 객체인식 소프트웨어를 딥러닝시키기 위한 학습부; 상기 제1 영상들과 상이한 제2 영상들을 상기 제1 학습 데이터에 추가하여 제2 학습 데이터로 업데이트하기 위한 제2 학습 데이터 생성부; 및 상기 제1 학습 데이터로 학습한 제1 버젼의 객체인식 소프트웨어와, 상기 제2 학습 데이터로 학습한 제2 버젼의 객체인식 소프트웨어를 비교하여, 사용할 객체인식 소프트웨어의 버젼을 선택하기 위한 선택부;를 포함한다.The present invention includes a first learning data generating unit for generating first learning data with first images; a data storage unit for receiving and storing the first learning data generated by the first learning data generation unit; a learning unit for deep learning object recognition software using the learning data stored in the data storage unit; a second training data generation unit configured to add second images different from the first images to the first training data and update the second training data to second training data; and a selection unit for selecting a version of the object recognition software to be used by comparing a first version of the object recognition software learned with the first training data and a second version of the object recognition software learned with the second training data; includes
상기 선택부는, 상기 제1 버젼의 객체인식 소프트웨어의 제1 객체 인식 정확도, 및 상기 제2 버젼의 객체인식 소프트웨어의 제2 객체 인식 정확도를 각각 산출하기 위한 정확도 산출기; 상기 제1 객체 인식 정확도와, 상기 제2 객체 인식 정확도를 비교하기 위한 정확도 비교기; 및 객체 인식 정확도가 낮은 버젼의 소프트웨어를 삭제하고, 객체 인식 정확도가 낮은 버젼의 소프트웨어를 선택하기 위한 선택기;를 포함한다.The selector may include: an accuracy calculator for calculating a first object recognition accuracy of the object recognition software of the first version and a second object recognition accuracy of the object recognition software of the second version; an accuracy comparator for comparing the first object recognition accuracy with the second object recognition accuracy; and a selector for deleting a version of software with low object recognition accuracy and selecting a version of software with low object recognition accuracy.
상기 제2 학습 데이터 생성부는, 상기 제1 학습 데이터가 생성되어 경과된 경과시간을, 미리 설정된 설정시간과 비교하기 위한 타이머; 및 상기 경과시간이 상기 설정시간을 넘어가면, 제1 학습 데이터에 상기 제2 영상들을 추가하여 업데이트를 수행하기 위한 업데이트 제어기;를 포함한다.The second learning data generation unit may include a timer for comparing an elapsed time after the first learning data is generated with a preset time; and an update controller configured to perform an update by adding the second images to the first training data when the elapsed time exceeds the set time.
상기 제2 학습 데이터 생성부는, 상기 제1 학습 데이터를 생성한 후 획득한 제2 영상들의 수집개수를, 미리 설정된 설정개수와 비교하기 위한 카운터; 및 상기 수집개수가 상기 제2 설정개수에 도달하면, 제1 학습 데이터에 상기 제2 영상들을 추가하여 업데이트를 수행하기 위한 업데이트 제어기;를 포함한다.The second learning data generation unit may include a counter for comparing the number of second images acquired after generating the first learning data with a preset number; and an update controller configured to perform an update by adding the second images to first learning data when the collected number reaches the second set number.
본 발명의 실시 예들에 따르면, 용이하게 학습 데이터를 생성할 수 있다. 이에, 보안 상의 이유로 군용 데이터를 활용하기 어려운 상황에서도 학습 데이터를 생성할 수 있기 때문에, 객체인식 소프트웨어의 딥러닝을 용이하게 수행할 수 있다.According to embodiments of the present invention, learning data can be easily generated. Accordingly, since learning data can be generated even in situations where it is difficult to utilize military data for security reasons, deep learning of object recognition software can be easily performed.
또한, 학습 데이터를 업데이트할 수 있다. 이에, 업데이트된 학습 데이터로 객체인식 소프트웨어의 딥러닝을 수행하여, 객체 인식 정확도를 향상시킬 수 있다.Also, learning data can be updated. Accordingly, object recognition accuracy may be improved by performing deep learning of object recognition software with the updated training data.
도 1은 본 발명의 실시 예에 따른 객체인식 소프트웨어 학습장치의 구조를 나타내는 도면이다.
도 2는 본 발명의 실시 예에 따른 객체인식 소프트웨어 학습방법을 나타내는 플로우 차트이다.1 is a diagram showing the structure of an object recognition software learning device according to an embodiment of the present invention.
2 is a flow chart showing a method for learning object recognition software according to an embodiment of the present invention.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 더욱 상세히 설명하기로 한다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하며, 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 발명을 상세하게 설명하기 위해 도면은 과장될 수 있고, 도면상에서 동일 부호는 동일한 요소를 지칭한다.Hereinafter, embodiments of the present invention will be described in more detail with reference to the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in a variety of different forms, only these embodiments will complete the disclosure of the present invention, and will fully cover the scope of the invention to those skilled in the art. It is provided to inform you. In order to describe the invention in detail, the drawings may be exaggerated, and like reference numerals refer to like elements in the drawings.
도 1은 본 발명의 실시 예에 따른 객체인식 소프트웨어 학습장치의 구조를 나타내는 도면이다. 하기에서는 본 발명의 실시 예에 따른 객체인식 소프트웨어 학습장치에 대해 설명하기로 한다.1 is a diagram showing the structure of an object recognition software learning device according to an embodiment of the present invention. Hereinafter, an object recognition software learning apparatus according to an embodiment of the present invention will be described.
본 발명의 실시 예에 따른 객체인식 소프트웨어 학습장치는, 군용장비에 탑재된 객체인식 소프트웨어를 학습시키기 위한 학습장치이다. 도 1을 참조하면, 객체인식 소프트웨어 학습장치(100)는 제1 학습 데이터 생성부(110), 데이터 저장부(120), 학습부(130), 제2 학습 데이터 생성부(140), 및 선택부(150)를 포함한다.An object recognition software learning device according to an embodiment of the present invention is a learning device for learning object recognition software loaded in military equipment. Referring to FIG. 1, the object recognition
이때, 군용장비는 함정, 항공기, 전차 등과 같이 광학기를 구비하여 군에서 운용되는 장비일 수 있다. 객체인식 소프트웨어는 군용장비에서 탑재되어 광학기에서 촬영된 영상에서 객체를 인식하고 식별할 수 있다. 객체인식 소프트웨어 학습장치(100)는 객체인식 소프트웨어를 학습시켜 객체인식 정확도를 향상시킬 수 있다.At this time, the military equipment may be equipment operated by the military equipped with an optical device such as a ship, an aircraft, or a tank. Object recognition software is installed in military equipment and can recognize and identify objects in images taken by optical instruments. The object recognition
제1 학습 데이터 생성부(110)는 제1 영상들로 제1 학습 데이터를 생성할 수 있다. 예를 들어, 제1 학습 데이터 생성부(110)는 인터넷에 접속될 수 있고, 인터넷에서 제1 영상들을 획득할 수 있다. 제1 학습 데이터 생성부(110)는 검색기(111), 제1 라벨링기(112), 및 제1 전송기(113)를 포함한다.The first learning
검색기(111)는 인터넷에서 군용장비가 운용되는 환경과 관련된 관련영상들을 검색하고 다운로드할 수 있다. 예를 들어, 군용장비가 함정인 경우 해양환경에서 운용된다. 따라서, 검색기(111)는 인터넷에서 해양환경에서 촬영된 관련영상들을 찾는 검색할 수 있다. 검색기(111)가 인터넷에서 관련영상들을 검색하기 때문에, 다량의 관련영상들을 신속하고 용이하게 찾을 수 있다.The
제1 라벨링기(112)는 검색기(111)와 데이터를 주고받을 수 있게 연결될 수 있다. 이에, 제1 라벨링기(112)는 검색기(111)가 다운로드한 관련영상들을 전달받을 수 있다. 또한, 제1 라벨링기(112)는 관련영상들에서 객체가 표시된 영역을 표시하고 객체에 대한 라벨링을 수행하여 제1 영상들을 생성할 수 있다. 예를 들어, 어느 한 관련영상에 배와 비행기가 있는 경우, 관련영상에서 배와 비행기가 차지하는 영역을 각각 표시하고, 각각의 영역을 배와 비행기라고 라벨링하여 제1 영상을 생성할 수 있다.The
제1 전송기(113)는 제1 라벨링기(112) 및 데이터 저장부(120)와 데이터를 주고받을 수 있게 연결될 수 있다. 이에, 제1 전송기(113)는 제1 라벨링기(112)로부터 제1 영상들을 전달받을 수 있고, 제1 영상들을 모아 제1 학습 데이터를 생성하여 데이터 저장부(120)로 전송할 수 있다.The
데이터 저장부(120)는 데이터가 저장되는 저장장치 또는 서버일 수 있다. 데이터 저장부(120)는 제1 학습 데이터 생성부(110)와 데이터를 주고받을 수 있게 연결될 수 있다. 이에, 데이터 저장부(120)는 제1 학습 데이터 생성부(110)가 생성한 제1 학습 데이터를 전달받아 저장할 수 있다.The
학습부(130)는 데이터 저장부(120) 및 객체인식 소프트웨어와 데이터를 주고받을 수 있게 연결될 수 있다. 이에, 학습부(130)는 데이터 저장부(120)에 저장된 학습 데이터를 이용하여 객체인식 소프트웨어를 딥러닝시킬 수 있다. 즉, 데이터 저장부(120)에 제1 학습 데이터가 저장된 경우 학습부(130)는 제1 학습 데이터를 이용하여 객체인식 소프트웨어를 딥러닝시킬 수 있고, 데이터 저장부(120)에 제2 학습 데이터가 저장된 경우 학습부(130)는 제2 학습 데이터를 이용하여 객체인식 소프트웨어를 딥러닝시킬 수 있다. 예를 들어, 학습부(130)는 합성곱 신경망(CNN: Convolutional Neural Networks) 기반으로 객체인식 소프트웨어의 딥러닝을 수행할 수 있고, 객체인식 소프트웨어에 객체를 식별하기 위한 가중치 값이 딥러닝에 의해 설정될 수 있다.The
제2 학습 데이터 생성부(140)는 데이터 저장부(120)와 데이터를 주고받을 수 있게 연결될 수 있다. 제2 학습 데이터 생성부(140)는 제1 영상들과 상이한 제2 영상들을 제1 학습 데이터에 추가하여 제2 학습 데이터로 업데이트할 수 있다. 예를 들어, 제2 학습 데이터 생성부(140)는 객체인식 소프트웨어가 탑재된 군용장비를 운용하면서 생성된 영상들로부터 제2 영상들로 수집할 수 있다. 제2 학습 데이터 생성부(140)는 수집기(141), 제2 라벨링기(142), 및 제2 전송기(143)를 포함한다.The second
수집기(141)는 군용장비를 운용하면서 생성된 운용영상들을 수집할 수 있다. 예를 들어, 군용장비가 함정인 경우, 함정에 구비된 광학기로 영상을 촬영할 수 있다. 따라서, 수집기(141)는 함정에 구비된 광학기가 촬영한 운용영상들을 캡쳐하여 수집할 수 있다. 이에, 실제 군용장비가 운용되는 환경에서 촬영된 운용영상들을 용이하게 수집할 수 있다.The
제2 라벨링기(142)는 수집기(141)와 데이터를 주고받을 수 있게 연결될 수 있다. 이에, 제2 라벨링기(142)는 수집기(141)가 수집한 운용영상들을 전달받을 수 있다. 또한, 제2 라벨링기(142)는 운용영상들에서 객체가 표시된 영역을 표시하고 객체에 대한 라벨링을 수행하여 제2 영상들을 생성할 수 있다. 예를 들어, 어느 한 운용영상에 배와 비행기가 있는 경우, 관련영상에서 배와 비행기가 차지하는 영역을 각각 표시하고, 각각의 영역을 배와 비행기라고 라벨링하여 제2 영상을 생성할 수 있다.The
제2 전송기(143)는 제2 라벨링기(142) 및 데이터 저장부(120)와 데이터를 주고받을 수 있게 연결될 수 있다. 따라서, 제2 전송기(143)는 제2 라벨링기(142)로부터 제2 영상들을 전달받을 수 있고, 제2 영상들을 데이터 저장부(120)로 전송할 수 있다. 제2 전송기(143)가 전송한 제2 영상들을 데이터 저장부(120)에 저장된 제1 학습 데이터에 추가되어 제2 학습 데이터로 업데이트될 수 있다.The
이때, 제2 학습 데이터 생성부(140)가 타이머(144) 및 업데이트 제어기(146)를 구비할 수도 있다. 따라서, 정해진 시점에 제1 학습 데이터를 제2 학습 데이터로 업데이트할 수 있다.At this time, the second
타이머(144)는 제1 학습 데이터가 생성되어 경과된 경과시간을 측정할 수 있다. 또한, 타이머(144)는 경과시간과 미리 설정된 설정시간을 비교할 수 있다.The
업데이트 제어기(146)는 타이머(144) 및 제2 학습 데이터 생성부(140)와 신호를 주고받을 수 있게 연결될 수 있다. 이에, 경과시간이 설정시간을 넘어가면, 업데이트 제어기(146)는 제1 학습 데이터가 생성된 후 제2 학습 데이터 생성부(140)에서 수집된 영상들을 제1 학습 데이터에 추가하여 업데이트를 수행할 수 있다. 따라서, 정해진 시점에 자동으로 제1 학습 데이터가 제2 학습 데이터로 업데이트될 수 있다.The
또는, 제2 학습 데이터 생성부(140)가 카운터(145) 및 업데이트 제어기(146)를 구비할 수도 있다. 따라서, 수집된 제2 영상의 개수에 따라 제1 학습 데이터를 제2 학습 데이터로 업데이트할 수 있다.Alternatively, the second
카운터(145)는 제1 학습 데이터를 생성한 후 군용장비를 운용하면서 획득한 영상들의 수집개수를 카운트할 수 있다. 또한, 카운터(145)는 수집개수와 미리 설정된 설정개수와 비교할 수 있다.The
업데이트 제어기(146)는 카운터(145) 및 제2 학습 데이터 생성부(140)와 신호를 주고받을 수 있게 연결될 수 있다. 이에, 수집개수가 설정개수에 도달하면, 업데이트 제어기(146)는 제1 학습 데이터가 생성된 후 제2 학습 데이터 생성부(140)에서 수집된 영상들을 제1 학습 데이터에 추가하여 업데이트를 수행할 수 있다. 따라서, 수집되는 영상의 개수에 따라 자동으로 제1 학습 데이터가 제2 학습 데이터로 업데이트될 수 있다.The
또는, 제2 학습 데이터 생성부(140)가 타이머(144), 카운터(145), 및 업데이트 제어기(146)를 구비할 수도 있다. 업데이트 제어기(146)가 타이머(144), 카운터(145), 및 제2 학습 데이터 생성부(140)와 신호를 주고받을 수 있게 연결될 수 있다. 이에, 경과시간이 설정시간을 넘어가거나 수집개수가 설정개수에 도달하면, 업데이트 제어기(146)는 제1 학습 데이터가 생성된 후 제2 학습 데이터 생성부(140)에서 수집된 영상들을 제1 학습 데이터에 추가하여 업데이트를 수행할 수 있다. 따라서, 정해진 시점이나 수집된 영상의 개수에 따라 자동으로 제1 학습 데이터를 제2 학습 데이터로 업데이트할 수 있다.Alternatively, the second
한편, 제2 학습 데이터 생성부(140)는 제2 학습 데이터의 용량을 조절할 수도 있다. 데이터 저장부(120)에 데이터가 저장되는 용량에 한계가 있을 수 있다. 이에, 제2 학습 데이터 생성부(140)가 제1 학습 데이터에 제2 영상들을 추가하면서, 제1 학습 데이터에 포함된 다른 영상들을 삭제하여 제2 학습 데이터의 용량을 조절할 수 있다. 예를 들어, 제1 학습 데이터를 업데이트하면서 제2 영상들이 추가되는 개수만큼, 제1 영상들을 삭제할 수 있다. 삭제되는 제1 영상들은 오래된 순으로 선택될 수 있다.Meanwhile, the second learning
또한, 제2 학습 데이터 생성부(140)는 제2 학습 데이터를 생성한 후 군용장비를 운용하면서 획득한 영상들로 제2 학습 데이터를 추가로 업데이트할 수도 있다. 군용장비를 운용하면서 제2 영상들이 지속적으로 수집되기 때문에, 제2 학습 데이터에 새로 수집한 제2 영상들을 추가하여 추가 업데이트를 수행할 수 있다. 추가 업데이트는 타이머(144) 또는 카운터(145)에 의해 자동으로 수행될 수도 있다. 즉, 제2 학습 데이터가 생성되어 경과된 경과시간과 미리 설정된 설정시간을 비교하여 설정된 주기마다 추가 업데이트를 수행하거나, 제2 학습 데이터를 생성한 후 군용장비를 운용하면서 획득한 영상들의 수집개수와 미리 설정된 설정개수를 비교하여 수집되는 영상의 개수에 따라 추가 업데이트를 수행할 수 있다. 이에, 학습 효과를 더 높이기 위해 제2 학습 데이터를 정기적으로 업데이트할 수 있다.In addition, after generating the second learning data, the second learning
선택부(150)는 객체인식 소프트웨어와 데이터를 주고받을 수 있게 연결될 수 있다. 선택부(150)는 제1 학습 데이터로 학습한 제1 버젼의 객체인식 소프트웨어와, 제2 학습 데이터로 학습한 제2 버젼의 객체인식 소프트웨어를 비교하여, 사용할 객체인식 소프트웨어의 버젼을 선택할 수 있다. 선택부(150)는 정확도 산출기(151), 정확도 비교기(152), 및 선택기(153)를 포함한다.The
정확도 산출기(151)는 제1 버젼의 객체인식 소프트웨어의 제1 객체 인식 정확도, 및 제2 버젼의 객체인식 소프트웨어의 제2 객체 인식 정확도를 각각 산출할 수 있다. 예를 들어, 미리 객체가 식별된 테스트용 영상들을 마련하고, 제1 버젼 객체인식 소프트웨어에 정확도 산출기(151)가 테스트용 영상 데이터를 입력하여, 테스트용 데이터들에 대한 제1 버젼의 객체인식 소프트웨어의 제1 객체 인식 정확도(또는, 객체 식별률)를 산출할 수 있다. 이후, 객체인식 소프트웨어가 제2 학습 데이터로 학습을 수행하면, 제2 버젼의 객체인식 소프트웨어에 정확도 산출기(151)가 테스트용 영상들을 입력하여, 테스트용 데이터들에 대한 제2 버젼의 객체인식 소프트웨어의 제2 객체 인식 정확도(또는, 객체 식별률)를 산출할 수 있다.The
정확도 비교기(152)는 정확도 산출기(151)와 데이터를 주고받을 수 있게 연결될 수 있다. 이에, 정확도 비교기(152)는 정확도 산출기(151)로부터 제1 객체 인식 정확도와 제2 객체 인식 정확도를 전달받아 둘을 비교할 수 있다. 즉, 정확도 비교기(152)는 각각 산출된 제1 객체 인식 정확도와, 제2 객체 인식 정확도의 값 크기를 비교할 수 있다.The
선택기(153)는 정확도 비교기(152)와 데이터를 주고받을 수 있게 연결될 수 있다. 선택기(153)는 객체 인식 정확도가 낮은 버젼의 소프트웨어를 삭제하고, 객체 인식 정확도가 낮은 버젼의 소프트웨어를 선택할 수 있다. 예를 들어, 제2 객체 인식 정확도가 제1 객체 인식 정확도보다 높으면, 제1 버젼의 객체인식 소프트웨어를 삭제하고 제2 버젼의 객체인식 소프트웨어를 선택할 수 있다. 제1 객체 인식 정확도가 제2 객체 인식 정확도보다 높으면 제2 버젼의 객체인식 소프트웨어를 삭제하고 제1 버젼의 객체인식 소프트웨어를 선택할 수 있다. 따라서, 학습 효과가 더 높은 버젼의 객체인식 소프트웨어가 선택되어 사용될 수 있다.The
이처럼, 용이하게 학습 데이터를 생성할 수 있기 때문에, 보안 상의 이유로 군용 데이터를 활용하기 어려운 상황에서도 학습 데이터를 생성할 수 있다. 따라서, 객체인식 소프트웨어의 딥러닝을 용이하게 수행할 수 있다. 또한, 학습 데이터를 업데이트할 수 있다. 이에, 업데이트된 학습 데이터로 객체인식 소프트웨어의 딥러닝을 수행하여, 객체 인식 정확도를 향상시킬 수 있다.As such, since learning data can be easily generated, learning data can be generated even in a situation where it is difficult to utilize military data for security reasons. Therefore, deep learning of object recognition software can be easily performed. Also, learning data can be updated. Accordingly, object recognition accuracy may be improved by performing deep learning of object recognition software with the updated learning data.
도 2는 본 발명의 실시 예에 따른 객체인식 소프트웨어 학습방법을 나타내는 플로우 차트이다. 하기에서는 본 발명의 실시 예에 따른 객체인식 소프트웨어 학습방법에 대해 설명하기로 한다.2 is a flow chart showing a method for learning object recognition software according to an embodiment of the present invention. Hereinafter, an object recognition software learning method according to an embodiment of the present invention will be described.
본 발명의 실시 예에 따른 객체인식 소프트웨어 학습방법은, 군용장비에 탑재된 객체인식 소프트웨어를 학습시키기 위한 학습방법이다. 객체인식 소프트웨어 학습방법은, 제1 영상들로 제1 학습 데이터를 생성하는 과정(S110), 제1 학습 데이터를 이용하여 객체인식 소프트웨어의 딥러닝을 수행하는 과정(S120), 제1 영상들과 상이한 제2 영상들로 제1 학습 데이터를 업데이트하여 제2 학습 데이터를 생성하는 과정(S130), 제2 학습 데이터를 이용하여 객체인식 소프트웨어의 딥러닝을 수행하는 과정(S140), 및 제1 학습 데이터로 학습한 제1 버젼의 객체인식 소프트웨어와, 제2 학습 데이터로 학습한 제2 버젼의 객체인식 소프트웨어를 비교하여, 사용할 객체인식 소프트웨어의 버젼을 선택하는 과정(S150)을 포함한다.An object recognition software learning method according to an embodiment of the present invention is a learning method for learning object recognition software loaded in military equipment. The object recognition software learning method includes a process of generating first training data from first images (S110), a process of performing deep learning of object recognition software using the first training data (S120), the first images and A process of generating second training data by updating the first training data with different second images (S130), a process of performing deep learning of object recognition software using the second training data (S140), and first learning Comparing the object recognition software of the first version learned with the data and the object recognition software of the second version learned with the second learning data, and selecting a version of the object recognition software to be used (S150).
이때, 객체인식 소프트웨어 학습방법은, 도 1과 같은 본 발명의 실시 예에 따른 객체인식 소프트웨어 학습장치(100)에 의해 수행될 수 있다. 따라서, 하기에서는 객체인식 소프트웨어 학습장치(100)로 객체인식 소프트웨어 학습방법을 수행하는 것을 예시해서 설명하기로 한다. 그러나 이에 한정되지 않고 다양한 학습장치에 의해 객체인식 소프트웨어 학습방법이 수행될 수 있다.At this time, the object recognition software learning method may be performed by the object recognition
우선, 제1 영상들로 제1 학습 데이터를 생성한다(S110). 제1 영상들은 인터넷에서 획득할 수 있고, 제1 영상들을 저장하여 제1 학습 데이터로 만들 수 있다. 상세하게는 인터넷에서 군용장비가 운용되는 환경과 관련된 관련영상들을 검색하여 컴퓨터 등에 다운로드할 수 있다. 또한, 관련영상들에서 객체가 표시된 영역을 표시하고 객체에 대한 라벨링을 수행하여 제1 영상들을 생성할 수 있다. 예를 들어, 어느 한 관련영상에 배와 비행기가 있는 경우, 작업자는 컴퓨터 프로그램 등을 이용하여 관련영상에서 배와 비행기가 차지하는 영역을 각각 표시하고, 각각의 영역을 배와 비행기라고 라벨링하여 제1 영상을 생성할 수 있다. 제1 영상들이 생성되면 제1 영상들을 모아 데이터 저장부(120)에 저장하여 초기 학습을 위한 제1 학습 데이터를 만들 수 있다.First, first training data is generated from the first images (S110). The first images can be obtained from the Internet, and the first images can be stored and made into first learning data. In detail, images related to the environment in which military equipment is operated can be searched for on the Internet and downloaded to a computer. In addition, first images may be generated by displaying an area where an object is displayed in related images and performing labeling on the object. For example, when there is a ship and an airplane in a related image, the operator displays the areas occupied by the ship and the airplane in the related image using a computer program, etc., labels each area as a ship and an airplane, and first You can create video. When the first images are generated, the first images may be collected and stored in the
그 다음, 제1 학습 데이터를 이용하여 객체인식 소프트웨어의 딥러닝을 수행한다(S120). 즉, 제1 학습 데이터로 딥러닝한 제1 버젼의 객체인식 소프트웨어가 생성될 수 있다. 보안 상의 이유로 군용 데이터를 활용하기 어려운 상황에서도 인터넷을 기반으로 초기 학습을 위한 제1 학습 데이터를 용이하게 생성할 수 있기 때문에, 학습부(130)가 데이터 저장부(120)에 저장된 제1 학습 데이터를 이용하여 객체인식 소프트웨어의 초기 딥러닝을 용이하게 수행할 수 있다. 따라서, 군용장비에 탑재된 객체인식 소프트웨어가, 군용장비에 구비된 광학기로 촬영한 영상으로부터 객체를 인식하고 식별하여 군용장비의 탑승자에게 디스플레이 등을 통해 표시해줄 수 있다. 이때, 제1 버젼의 객체인식 소프트웨어는 군용장비의 실제 운용환경이 아닌 인터넷에서 획득한 제1 영상들로부터 학습된 상태이기 때문에 초기 성능이 낮을 수 있다. 따라서, 제1 버젼의 객체인식 소프트웨어의 성능을 개선하기 위해 제1 학습 데이터를 업데이트하여 제2 버젼의 객체인식 소프트웨어를 생성할 필요가 있다.Next, deep learning of object recognition software is performed using the first training data (S120). That is, object recognition software of the first version deep-learned with the first training data may be created. Since the first learning data for initial learning can be easily generated based on the Internet even in a situation where it is difficult to utilize military data for security reasons, the
한편, 제1 학습 데이터를 이용하여 딥러닝을 수행한 후, 제1 버젼의 객체인식 소프트웨어의 제1 객체 인식 정확도를 산출할 수 있다. 예를 들어, 미리 객체가 식별된 테스트용 영상들을 마련하고, 제1 학습 데이터로 학습한 객체인식 소프트웨어에 테스트용 영상 데이터를 입력할 수 있다. 제1 학습 데이터로 학습한 객체인식 소프트웨어가 인식한 객체의 개수를, 테스트용 영상의 실제 객체의 개수와 비교하여 제1 객체 인식 정확도를 계산할 수 있다.Meanwhile, after performing deep learning using the first training data, the first object recognition accuracy of the object recognition software of the first version may be calculated. For example, it is possible to prepare test images in which an object is identified in advance, and input the test image data to the object recognition software learned with the first learning data. First object recognition accuracy may be calculated by comparing the number of objects recognized by the object recognition software learned with the first learning data to the number of real objects in the test image.
그 다음, 제1 영상들과 상이한 제2 영상들로 제1 학습 데이터를 업데이트하여 제2 학습 데이터를 생성한다(S130). 제2 학습 데이터를 생성하기 위해, 군용장비를 운용하면서 생성된 운용영상들을 캡쳐하고 수집할 수 있다. 상세하게는 군용장비를 운용하면서 군용장비에 구비된 광학기로 촬영한 운용영상들을 모아 수집할 수 있다. 또한, 운용영상들에서 객체가 표시된 영역을 표시하고 객체에 대한 라벨링을 수행하여 제2 영상들을 생성할 수 있다. 예를 들어, 어느 한 운용영상에 배와 비행기가 있는 경우, 작업자는 컴퓨터 프로그램 등을 이용하여 운용영상에서 배와 비행기가 차지하는 영역을 각각 표시하고, 각각의 영역을 배와 비행기라고 라벨링하여 제2 영상을 생성할 수 있다. 제2 영상들이 생성되면 제2 영상들을 제1 학습 데이터에 추가하여 제2 학습 데이터로 만들 수 있다.Next, second training data is generated by updating the first training data with second images different from the first images (S130). In order to generate the second learning data, operation images generated while operating military equipment may be captured and collected. In detail, while operating military equipment, it is possible to collect and collect operational images taken with optical instruments provided in military equipment. In addition, second images may be generated by displaying an area where an object is displayed in operation images and performing labeling on the object. For example, if there is a ship and an airplane in one operation image, the operator displays the area occupied by the ship and the airplane in the operation image using a computer program, etc., labels each area as a ship and an airplane, and second You can create video. When the second images are generated, the second images may be added to the first training data to make the second training data.
이때, 제2 영상들을 제1 학습 데이터에 추가하여 제2 학습 데이터로 업데이트할 때, 제2 학습 데이터의 용량을 조절할 수도 있다. 이를 위해, 제2 학습 데이터에 포함되는 제1 영상들과 제2 영상들의 영상개수를 미리 설정된 제1 설정개수와 비교할 수 있다. 영상개수가 제1 설정개수를 초과하면, 초과하는 개수만큼 제1 영상들을 삭제할 수 있다. 따라서, 제2 학습 데이터에서 인터넷 기반으로 생성된 제1 영상은 감소시키고, 실제 군용장비의 운용환경에서 획득한 제2 영상들을 증가시켜 제2 학습 데이터의 용량을 일정하게 관리할 수 있다.In this case, when updating the second training data by adding the second images to the first training data, the capacity of the second training data may be adjusted. To this end, the number of first images and second images included in the second learning data may be compared with a preset number of first images. If the number of images exceeds the first set number, the excess number of first images may be deleted. Accordingly, the capacity of the second learning data can be constantly managed by reducing the first image generated based on the Internet in the second learning data and increasing the second images acquired in the operating environment of actual military equipment.
한편, 제1 학습 데이터에서 제2 학습 데이터로의 업데이트 과정은 자동으로 수행되게 설정될 수도 있다. 예를 들어, 제1 학습 데이터가 생성되고 경과된 경과시간을 측정하고, 미리 설정된 설정시간과 비교할 수 있다. 경과시간이 상기 설정시간을 넘어가면, 제2 학습 데이터로의 업데이트를 수행할 수 있다. 즉, 경과시간이 설정시간을 넘어가면, 제1 학습 데이터가 생성된 후 제2 학습 데이터 생성부(140)에서 수집된 영상들을 제1 학습 데이터에 추가하여 업데이트를 수행할 수 있다. 따라서, 정해진 시점에 자동으로 제1 학습 데이터가 제2 학습 데이터로 업데이트될 수 있다.Meanwhile, the update process from the first learning data to the second learning data may be set to be automatically performed. For example, an elapsed time after the first learning data is generated may be measured and compared with a preset time. When the elapsed time exceeds the set time, the second learning data may be updated. That is, if the elapsed time exceeds the set time, after the first learning data is generated, the images collected by the second
또는, 제1 학습 데이터를 생성한 후 획득한 제2 영상들의 수집개수를 카운트하고, 미리 설정된 제2 설정개수와 비교할 수 있다. 수집개수가 제2 설정개수에 도달하면, 제2 학습 데이터로의 업데이트를 수행할 수 있다. 즉, 수집개수가 설정개수에 도달하면, 제1 학습 데이터가 생성된 후 제2 학습 데이터 생성부(140)에서 수집된 영상들을 제1 학습 데이터에 추가하여 업데이트를 수행할 수 있다. 이에, 수집되는 영상의 개수에 따라 자동으로 제1 학습 데이터가 제2 학습 데이터로 업데이트될 수 있다.Alternatively, the collected number of second images obtained after generating the first training data may be counted and compared with a preset second set number. When the collected number reaches the second set number, the second learning data may be updated. That is, when the collected number reaches the set number, after the first learning data is generated, the images collected by the second
그 다음, 제2 학습 데이터를 이용하여 객체인식 소프트웨어의 딥러닝을 수행한다(S140). 즉, 제2 학습 데이터로 딥러닝한 제2 버젼의 객체인식 소프트웨어가 생성될 수 있다. 이에, 초기 학습 이후로 실제 군용장비를 이용하여 획득한 제2 영상들을 이용하여 제2 학습 데이터를 생성하기 때문에, 실제 군용장비가 운용되는 환경으로부터 생성된 제2 학습 데이터를 이용한 추가 딥러닝을 용이하게 수행할 수 있다. 따라서, 실제 군용장비의 운용환경에 맞추어 객체인식 소프트웨어가 딥러닝될 수 있다.Next, deep learning of object recognition software is performed using the second learning data (S140). That is, the object recognition software of the second version deep-learned with the second training data can be created. Therefore, since the second learning data is generated using the second images acquired using the actual military equipment after the initial learning, additional deep learning using the second training data generated from the environment in which the actual military equipment is operated is easy. can be done Therefore, object recognition software can be deep-learned according to the operating environment of actual military equipment.
한편, 제2 학습 데이터를 이용하여 딥러닝을 수행한 후, 제2 버젼의 객체인식 소프트웨어의 제2 객체 인식 정확도를 산출할 수 있다. 예를 들어, 미리 객체가 식별된 테스트용 영상들을 마련하고, 제2 학습 데이터로 학습한 객체인식 소프트웨어에 테스트용 영상 데이터를 입력할 수 있다. 제2 학습 데이터로 학습한 객체인식 소프트웨어가 인식한 객체의 개수를, 테스트용 영상의 실제 객체의 개수와 비교하여 제2 객체 인식 정확도를 계산할 수 있다.Meanwhile, after performing deep learning using the second training data, the second object recognition accuracy of the object recognition software of the second version may be calculated. For example, it is possible to prepare test images in which objects are identified in advance, and input test image data to object recognition software learned with the second learning data. Second object recognition accuracy may be calculated by comparing the number of objects recognized by the object recognition software learned with the second learning data with the number of real objects in the test image.
그 다음, 제1 학습 데이터로 학습한 제1 버젼의 객체인식 소프트웨어와, 제2 학습 데이터로 학습한 제2 버젼의 객체인식 소프트웨어를 비교하여, 사용할 객체인식 소프트웨어의 버젼을 선택한다(S150). 상세하게는, 제1 객체 인식 정확도와 제2 객체 인식 정확도를 비교하여 사용할 객체인식 소프트웨어의 버젼을 결정할 수 있다. 예를 들어, 제2 객체 인식 정확도가 상기 제1 객체 인식 정확도보다 높으면, 제2 학습 데이터가 제1 학습 데이터보다 의 학습 효과가 높은 것을 나타내기 때문에, 제1 버젼의 객체인식 소프트웨어를 삭제하고 제2 버젼의 객체인식 소프트웨어를 선택할 수 있다. 반대로, 제1 객체 인식 정확도가 제2 객체 인식 정확도보다 높으면, 제1 학습 데이터가 제2 학습 데이터보다 의 학습 효과가 높은 것을 나타내기 때문에, 제2 버젼의 객체인식 소프트웨어를 삭제하고 제1 버젼의 객체인식 소프트웨어를 선택할 수 있다. 따라서, 학습 효과가 더 높은 버젼의 객체인식 소프트웨어가 선택되어 사용되기 때문에, 군용장비를 운용하면서 객체인식 소프트웨어가 영상에서 객체를 더 정확하게 인식 및 식별할 수 있다.Then, a version of the object recognition software to be used is selected by comparing the object recognition software of the first version learned with the first training data and the object recognition software of the second version learned with the second training data (S150). In detail, the version of object recognition software to be used may be determined by comparing the first object recognition accuracy with the second object recognition accuracy. For example, if the second object recognition accuracy is higher than the first object recognition accuracy, the second learning data indicates that the learning effect of is higher than the first learning data, so the object recognition software of the first version is deleted and the first object recognition software is deleted. There are 2 versions of object recognition software to choose from. Conversely, if the first object recognition accuracy is higher than the second object recognition accuracy, the first training data indicates that the learning effect of is higher than the second training data, so the second version of the object recognition software is deleted, and the first version of the object recognition software is deleted. You can choose object recognition software. Therefore, since a version of the object recognition software having a higher learning effect is selected and used, the object recognition software can more accurately recognize and identify an object in an image while operating military equipment.
한편, 제2 버젼의 객체인식 소프트웨어를 사용하면서, 제2 학습 데이터를 추가로 업데이트할 수도 있다. 즉, 군용장비를 운용하면서 제2 영상들이 지속적으로 수집되기 때문에, 제2 학습 데이터에 새로 수집한 제2 영상들을 추가하여 추가 업데이트를 수행할 수 있다. 추가 업데이트된 제2 학습 데이터로 객체인식 소프트웨어를 딥러닝시켜 버젼을 상승시킬 수 있다.Meanwhile, while using the object recognition software of the second version, the second learning data may be additionally updated. That is, since the second images are continuously collected while the military equipment is being operated, an additional update may be performed by adding the newly collected second images to the second learning data. The version may be increased by performing deep learning on the object recognition software with the additionally updated second training data.
이때, 추가 업데이트는 타이머(144) 또는 카운터(145)에 의해 자동으로 수행될 수도 있다. 즉, 제2 학습 데이터가 생성되어 경과된 경과시간과 미리 설정된 설정시간을 비교하여 설정된 주기마다 추가 업데이트를 수행하거나, 제2 학습 데이터를 생성한 후 군용장비를 운용하면서 획득한 영상들의 수집개수와 미리 설정된 설정개수를 비교하여 수집되는 영상의 개수에 따라 추가 업데이트를 수행할 수 있다. 따라서, 학습 효과를 더 높이기 위해 제2 학습 데이터를 정기적으로 업데이트할 수 있다. 또한, 제2 학습 데이터에 포함되는 영상의 개수가 미리 설정된 개수를 넘어가면 제2 학습 데이터에서 오래된 영상부터 삭제할 수 있다. 이에, 제2 학습 데이터를 업데이트할수록 오래된 영상들이 삭제되면서 제1 영상들이 제2 영상들로 완전히 대체될 수 있다. 객체인식 소프트웨어가 실제 군용장비가 운용된 환경에서 획득한 제2 영상들로만 딥러닝을 하게 되어 객체인식 소프트웨어의 버젼이 상승할수록 학습 효과가 높아질 가능성이 상승한다.At this time, the additional update may be automatically performed by the
한편, 추가 업데이트 후에, 추가 업데이트 전후의 제2 학습 데이터로 딥러닝한 객체인식 소프트웨어의 객체 인식 정확도를 비교하여, 사용할 객체인식 소프트웨어의 버젼을 선택할 수 있다. 이에, 학습 효과가 더 높은 버젼의 객체인식 소프트웨어가 선택되어 사용되기 때문에, 군용장비를 운용할수록 객체인식 소프트웨어의 객체 인식 정확도가 향상될 수 있다.Meanwhile, after the additional update, the object recognition accuracy of the deep learning object recognition software may be compared with the second learning data before and after the additional update, and the version of the object recognition software to be used may be selected. Accordingly, since a version of the object recognition software having a higher learning effect is selected and used, object recognition accuracy of the object recognition software may be improved as military equipment is operated.
이처럼, 용이하게 학습 데이터를 생성할 수 있기 때문에, 보안 상의 이유로 군용 데이터를 활용하기 어려운 상황에서도 학습 데이터를 생성할 수 있다. 따라서, 객체인식 소프트웨어의 딥러닝을 용이하게 수행할 수 있다. 또한, 학습 데이터를 업데이트할 수 있다. 이에, 업데이트된 학습 데이터로 객체인식 소프트웨어의 딥러닝을 수행하여, 객체 인식 정확도를 향상시킬 수 있다.As such, since learning data can be easily generated, learning data can be generated even in a situation where it is difficult to utilize military data for security reasons. Therefore, deep learning of object recognition software can be easily performed. Also, learning data can be updated. Accordingly, object recognition accuracy may be improved by performing deep learning of object recognition software with the updated training data.
이와 같이, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범주에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능하며, 실시 예들 간에 다양한 조합도 가능하다. 그러므로, 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며, 아래에 기재될 특허청구범위뿐만 아니라 이 청구범위와 균등한 것들에 의해 정해져야 한다.As described above, in the detailed description of the present invention, specific embodiments have been described, but various modifications are possible without departing from the scope of the present invention, and various combinations are also possible between the embodiments. Therefore, the scope of the present invention should not be limited to the described embodiments and should not be defined, but should be defined by not only the claims to be described below, but also those equivalent to these claims.
100: 객체인식 소프트웨어 학습장치 110: 제1 학습 데이터 생성부
120: 데이터 저장부 130: 학습부
140: 제2 학습 데이터 생성부 150: 선택부100: object recognition software learning device 110: first learning data generator
120: data storage unit 130: learning unit
140: second learning data generation unit 150: selection unit
Claims (13)
상기 제1 학습 데이터를 이용하여 객체인식 소프트웨어의 딥러닝을 수행하고, 상기 제1 학습 데이터로 학습한 제1 버젼의 객체인식 소프트웨어의 제1 객체 인식 정확도를 값으로 산출하는 과정;
상기 제1 영상들과 상이한 제2 영상들로 상기 제1 학습 데이터를 업데이트하여 제2 학습 데이터를 생성하는 과정;
상기 제2 학습 데이터를 이용하여 상기 객체인식 소프트웨어의 딥러닝을 수행하고, 상기 제2 학습 데이터로 학습한 제2 버젼의 객체인식 소프트웨어의 제2 객체 인식 정확도를 값으로 산출하는 과정; 및
상기 제1 버젼의 객체인식 소프트웨어와, 상기 제2 버젼의 객체인식 소프트웨어를 비교하여, 사용할 객체인식 소프트웨어의 버젼을 선택하는 과정;을 포함하고,
상기 사용할 객체인식 소프트웨어의 버젼을 선택하는 과정은,
상기 제1 객체 인식 정확도와 상기 제2 객체 인식 정확도의 값을 비교하는 과정, 및
객체 인식 정확도의 값이 더 높은 객체인식 소프트웨어의 버젼을, 학습 효과가 더 높다고 판단하여 사용할 객체인식 소프트웨어의 버전으로 결정하는 과정을 포함하고,
상기 제1 학습 데이터를 생성하는 과정은, 인터넷에서 군용장비의 운용환경과 관련된 관련영상들을 검색하고 상기 관련영상들에서 객체에 대한 라벨링을 수행하여 상기 제1 영상들을 생성하는 과정을 포함하고,
상기 제2 학습 데이터를 생성하는 과정은,
상기 제1 학습 데이터를 생성한 후, 군용장비를 운용하면서 군용장비에 구비된 광학기로 촬영된 운용영상들을 수집하는 과정,
상기 운용영상들에서 객체에 대한 라벨링을 수행하여 상기 제2 영상들을 생성하는 과정,
상기 제2 영상들의 수집개수를, 미리 설정된 설정개수와 비교하는 과정, 및
상기 수집개수가 상기 설정개수에 도달하면, 제1 학습 데이터에 상기 제2 영상들을 추가하여 상기 제2 학습 데이터로 업데이트를 수행하는 과정을 포함하는 객체인식 소프트웨어 학습방법.generating first learning data from first images;
performing deep learning of the object recognition software using the first training data, and calculating a first object recognition accuracy of the object recognition software of the first version learned with the first training data as a value;
generating second training data by updating the first training data with second images different from the first images;
performing deep learning of the object recognition software using the second training data, and calculating a second object recognition accuracy of the object recognition software of a second version learned with the second training data as a value; and
Comparing the object recognition software of the first version with the object recognition software of the second version, and selecting a version of the object recognition software to be used;
The process of selecting the version of the object recognition software to be used,
Comparing values of the first object recognition accuracy and the second object recognition accuracy, and
Including the process of determining the version of object recognition software with a higher object recognition accuracy value as the version of object recognition software to be used by determining that the learning effect is higher,
The process of generating the first learning data includes the process of generating the first images by searching for related images related to the operating environment of military equipment from the Internet and labeling objects in the related images,
The process of generating the second learning data,
After generating the first learning data, a process of collecting operational images taken with optical equipment provided in the military equipment while operating the military equipment;
A process of generating the second images by performing labeling on objects in the operating images;
Comparing the collected number of second images with a preset number, and
and adding the second images to first learning data and updating the second learning data when the collection number reaches the set number.
상기 제1 객체 인식 정확도를 산출하는 과정, 및 상기 제2 객체 인식 정확도를 산출하는 과정은,
객체가 미리 식별된 테스트용 영상을 객체인식 소프트웨어에 입력하는 과정; 및
객체인식 소프트웨어가 인식한 객체의 개수를, 테스트용 영상의 실제 객체의 개수와 비교하여 객체 인식 정확도를 계산하는 과정;을 포함하는 객체인식 소프트웨어 학습방법.The method of claim 1,
The process of calculating the first object recognition accuracy and the process of calculating the second object recognition accuracy,
A process of inputting an object-identified test image into object recognition software; and
An object recognition software learning method comprising: comparing the number of objects recognized by the object recognition software with the number of actual objects in the test image to calculate object recognition accuracy.
객체 인식 정확도의 값이 더 높은 객체인식 소프트웨어의 버젼을, 사용할 객체인식 소프트웨어의 버전으로 결정하는 과정은,
상기 제2 객체 인식 정확도가 상기 제1 객체 인식 정확도보다 높으면, 상기 제1 버젼의 객체인식 소프트웨어를 삭제하고 상기 제2 버젼의 객체인식 소프트웨어를 선택하며, 상기 제1 객체 인식 정확도가 상기 제2 객체 인식 정확도보다 높으면 상기 제2 버젼의 객체인식 소프트웨어를 삭제하고 상기 제1 버젼의 객체인식 소프트웨어를 선택하는 과정을 포함하는 객체인식 소프트웨어 학습방법.The method of claim 1,
The process of determining the version of object recognition software with a higher value of object recognition accuracy as the version of object recognition software to be used,
If the second object recognition accuracy is higher than the first object recognition accuracy, the object recognition software of the first version is deleted and the object recognition software of the second version is selected, and the first object recognition accuracy is the second object and deleting the object recognition software of the second version and selecting the object recognition software of the first version if it is higher than the recognition accuracy.
상기 제2 영상들을 상기 제1 학습 데이터에 추가하는 과정은,
상기 제2 학습 데이터에 포함되는 제1 영상들과 제2 영상들의 영상개수를 미리 설정된 제1 설정개수와 비교하는 과정; 및
상기 영상개수가 상기 제1 설정개수를 초과하면, 초과하는 개수만큼 제1 영상들을 삭제하는 과정;을 포함하는 객체인식 소프트웨어 학습방법.The method of claim 1,
The process of adding the second images to the first learning data,
comparing the number of first images and second images included in the second learning data with a preset first set number; and
When the number of images exceeds the first set number, deleting as many first images as the exceeding number; object recognition software learning method comprising a.
상기 제2 학습 데이터를 생성하는 과정은,
상기 제1 학습 데이터가 생성되고 경과된 경과시간을, 미리 설정된 설정시간과 비교하는 과정; 및
상기 경과시간이 상기 설정시간을 넘어가면, 상기 제2 학습 데이터로의 업데이트를 수행하는 과정;을 포함하는 객체인식 소프트웨어 학습방법.The method of claim 1,
The process of generating the second learning data,
comparing an elapsed time after the first learning data is generated with a preset set time; and
and updating the second learning data when the elapsed time exceeds the set time.
제1 영상들로 제1 학습 데이터를 생성하기 위한 제1 학습 데이터 생성부;
상기 제1 학습 데이터 생성부가 생성한 제1 학습 데이터를 전달받아 저장하기 위한 데이터 저장부;
상기 데이터 저장부에 저장된 학습 데이터를 이용하여 객체인식 소프트웨어를 딥러닝시키기 위한 학습부;
상기 제1 영상들과 상이한 제2 영상들을 상기 제1 학습 데이터에 추가하여 제2 학습 데이터로 업데이트하기 위한 제2 학습 데이터 생성부; 및
상기 제1 학습 데이터로 학습한 제1 버젼의 객체인식 소프트웨어와, 상기 제2 학습 데이터로 학습한 제2 버젼의 객체인식 소프트웨어를 비교하여, 사용할 객체인식 소프트웨어의 버젼을 선택하기 위한 선택부;를 포함하고,
상기 선택부는,
상기 제1 버젼의 객체인식 소프트웨어의 제1 객체 인식 정확도의 값, 및 상기 제2 버젼의 객체인식 소프트웨어의 제2 객체 인식 정확도의 값을 각각 산출하기 위한 정확도 산출기,
상기 제1 객체 인식 정확도의 값과, 상기 제2 객체 인식 정확도의 값을 비교하기 위한 정확도 비교기, 및
객체 인식 정확도의 값이 더 높은 객체인식 소프트웨어의 버젼을, 학습 효과가 더 높다고 판단하여 사용할 객체인식 소프트웨어의 버전으로 결정하기 위한 선택기를 포함하고,
상기 제1 학습 데이터 생성부는, 인터넷에서 군용장비의 운용환경과 관련된 관련영상들을 검색하고 상기 관련영상들에서 객체에 대한 라벨링을 수행하여 상기 제1 영상들을 생성하고,
상기 제2 학습 데이터 생성부는,
상기 제1 학습 데이터를 생성한 후, 군용장비를 운용하면서 군용장비에 구비된 광학기로 촬영된 운용영상들을 수집하기 위한 수집기,
상기 운용영상들에서 객체에 대한 라벨링을 수행하여 상기 제2 영상들을 생성하기 위한 제2 라벨링기,
상기 제2 영상들의 수집개수를, 미리 설정된 설정개수와 비교하기 위한 카운터, 및
상기 수집개수가 상기 설정개수에 도달하면, 제1 학습 데이터에 상기 제2 영상들을 추가하여 업데이트를 수행하기 위한 업데이트 제어기를 포함하는 객체인식 소프트웨어 학습장치.As a learning method for learning object recognition software mounted on military equipment,
a first learning data generating unit configured to generate first learning data with first images;
a data storage unit for receiving and storing the first learning data generated by the first learning data generation unit;
a learning unit for deep learning object recognition software using the learning data stored in the data storage unit;
a second training data generation unit configured to add second images different from the first images to the first training data and update the second training data to second training data; and
a selection unit for selecting a version of the object recognition software to be used by comparing a first version of the object recognition software learned with the first training data and a second version of the object recognition software learned with the second training data; include,
The selector,
An accuracy calculator for calculating a first object recognition accuracy value of the object recognition software of the first version and a second object recognition accuracy value of the object recognition software of the second version, respectively;
An accuracy comparator for comparing the first object recognition accuracy value and the second object recognition accuracy value, and
A selector for determining the version of object recognition software with a higher object recognition accuracy value as the version of object recognition software to be used by determining that the learning effect is higher,
The first learning data generator generates the first images by searching for related images related to the operating environment of military equipment from the Internet and labeling objects in the related images;
The second learning data generator,
After generating the first learning data, a collector for collecting operation images taken with optical equipment provided in the military equipment while operating the military equipment;
A second labeler for generating the second images by performing labeling on objects in the operating images;
A counter for comparing the collected number of second images with a preset number, and
and an update controller configured to perform an update by adding the second images to first learning data when the collection number reaches the set number.
상기 제2 학습 데이터 생성부는,
상기 제1 학습 데이터가 생성되어 경과된 경과시간을, 미리 설정된 설정시간과 비교하기 위한 타이머; 및
상기 경과시간이 상기 설정시간을 넘어가면, 제1 학습 데이터에 상기 제2 영상들을 추가하여 업데이트를 수행하기 위한 업데이트 제어기;를 포함하는 객체인식 소프트웨어 학습장치.The method of claim 10,
The second learning data generator,
a timer for comparing an elapsed time after the first learning data is generated with a preset time; and
and an update controller configured to perform an update by adding the second images to first learning data when the elapsed time exceeds the set time.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220035336A KR102515081B1 (en) | 2022-03-22 | 2022-03-22 | Apparatus and method for learning object detection software |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220035336A KR102515081B1 (en) | 2022-03-22 | 2022-03-22 | Apparatus and method for learning object detection software |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102515081B1 true KR102515081B1 (en) | 2023-03-29 |
Family
ID=85800130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220035336A KR102515081B1 (en) | 2022-03-22 | 2022-03-22 | Apparatus and method for learning object detection software |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102515081B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019132170A1 (en) * | 2017-12-28 | 2019-07-04 | (주)휴톰 | Learning data management method, device, and program |
KR20210009941A (en) | 2019-07-18 | 2021-01-27 | 국방과학연구소 | Method of multiple selection and deselection of targets and other objects using the trackball for tactical screen of naval combat system |
WO2021256597A1 (en) * | 2020-06-16 | 2021-12-23 | (주) 씨이랩 | System for generation of user-customized image identification deep learning model through object labeling and operation method thereof |
US20220036100A1 (en) * | 2020-07-29 | 2022-02-03 | Korea University Research And Business Foundation | Method for object recognition using queue-based model selection and optical flow in autonomous driving environment, recording medium and device for performing the method |
-
2022
- 2022-03-22 KR KR1020220035336A patent/KR102515081B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019132170A1 (en) * | 2017-12-28 | 2019-07-04 | (주)휴톰 | Learning data management method, device, and program |
KR20210009941A (en) | 2019-07-18 | 2021-01-27 | 국방과학연구소 | Method of multiple selection and deselection of targets and other objects using the trackball for tactical screen of naval combat system |
WO2021256597A1 (en) * | 2020-06-16 | 2021-12-23 | (주) 씨이랩 | System for generation of user-customized image identification deep learning model through object labeling and operation method thereof |
US20220036100A1 (en) * | 2020-07-29 | 2022-02-03 | Korea University Research And Business Foundation | Method for object recognition using queue-based model selection and optical flow in autonomous driving environment, recording medium and device for performing the method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108961238A (en) | Display screen quality determining method, device, electronic equipment and storage medium | |
CN108846841A (en) | Display screen quality determining method, device, electronic equipment and storage medium | |
CN107438841A (en) | The privacy-sensitive inquiry of file is described for localization region | |
CN108830837A (en) | A kind of method and apparatus for detecting ladle corrosion defect | |
JP5825810B2 (en) | Tsunami damage prediction device, tsunami damage prediction program and recording medium | |
KR102179598B1 (en) | Apparatus and method for learning facilities using video file | |
CN111292327A (en) | Machine room inspection method, device, equipment and storage medium | |
CN112613569A (en) | Image recognition method, and training method and device of image classification model | |
CN112200296B (en) | Network model quantization method and device, storage medium and electronic equipment | |
CN112949519A (en) | Target detection method, device, equipment and storage medium | |
KR102515081B1 (en) | Apparatus and method for learning object detection software | |
KR102226536B1 (en) | Method, device and program for recommending charts to apply security data using AI model | |
CN116485796B (en) | Pest detection method, pest detection device, electronic equipment and storage medium | |
CN115049839B (en) | Quality detection method for objective quality test of flight simulation training equipment | |
CN116225070A (en) | Environment monitoring method and system based on unmanned aerial vehicle automatic patrol | |
CN116205885A (en) | Abnormal state detection method, system, electronic device and readable storage medium | |
CN115147684A (en) | Target striking effect evaluation method based on deep learning | |
CN114648735A (en) | Flame detection method, system, device and storage medium | |
CN114034972A (en) | Intelligent cable fault determination method and device based on image data | |
CN113449130A (en) | Image retrieval method and device, computer readable storage medium and computing equipment | |
CN112487889A (en) | Unmanned aerial vehicle ground detection method and system based on deep neural network | |
US20200065630A1 (en) | Automated early anomaly detection in a continuous learning model | |
CN112131418A (en) | Target labeling method, target labeling device and computer-readable storage medium | |
CN111338837B (en) | Data processing method, device, equipment and medium | |
KR101362851B1 (en) | Apparatus for updating video database |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |