KR102515259B1 - Ai 물체 인식 학습용 라벨링 데이터 자동 수집 장치 - Google Patents

Ai 물체 인식 학습용 라벨링 데이터 자동 수집 장치 Download PDF

Info

Publication number
KR102515259B1
KR102515259B1 KR1020220118518A KR20220118518A KR102515259B1 KR 102515259 B1 KR102515259 B1 KR 102515259B1 KR 1020220118518 A KR1020220118518 A KR 1020220118518A KR 20220118518 A KR20220118518 A KR 20220118518A KR 102515259 B1 KR102515259 B1 KR 102515259B1
Authority
KR
South Korea
Prior art keywords
information
template
hand
coordinate system
eye camera
Prior art date
Application number
KR1020220118518A
Other languages
English (en)
Inventor
박주홍
Original Assignee
주식회사 랑데뷰
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 랑데뷰 filed Critical 주식회사 랑데뷰
Priority to KR1020220118518A priority Critical patent/KR102515259B1/ko
Priority to KR1020220176388A priority patent/KR102528594B1/ko
Priority to PCT/KR2022/020759 priority patent/WO2024063217A1/ko
Application granted granted Critical
Publication of KR102515259B1 publication Critical patent/KR102515259B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/006Controls for manipulators by means of a wireless system for controlling one or several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • B25J15/0019End effectors other than grippers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0096Programme-controlled manipulators co-operating with a working support, e.g. work-table
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/0031
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Automation & Control Theory (AREA)
  • Image Analysis (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Fuzzy Systems (AREA)

Abstract

본 발명은 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치 및 자동 수집 방법에 관한 것으로서, 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치는, 복수의 조인트, 상기 복수의 조인트와 연동되어 회전 가능하도록 서로 연결된 복수의 암 모듈, 및 상기 복수의 조인트 중 하나와 연결되어 작업대 상부에 위치하는 외부 물체와 마주보게 구성되는 엔드 이펙터를 구비하는 머니퓰레이터; 상기 머니퓰레이터의 엔드 이페터와 결합되어 작업대에 위치하는 외부 물체를 촬영하기 위한 핸드아이 카메라; 상기 핸드아이 카메라와 유선 또는 무선으로 연결되는 통신인터페이스; 및 상기 머니퓰레이터 및 상기 통신인터페이스와 전기적으로 연결되어 상기 머니퓰레이터 및 핸드아이 카메라의 동작을 제어함과 동시에 상기 작업대 상부에 위치한 외부물체의 3D 오브젝트에 대한 AI물체인식 학습용 라벨링 데이터를 자동으로 생성 수집하는 제어부;를 구비할 수 있다.
따라서, 본 발명은, AI 물체 인식 학습용 라벨링 데이터를 대량으로 손쉽게 수집할 수 있으면서도 정확도를 향상시킬 수 있는 효과가 있다.

Description

AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치 {Automatic Collecting Apparatus for Machine Learning Labeling Data of Objects Detecting }
본 발명은 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치 및 이를 이용한 AI 물체 인식 학습용 라벨링 데이터 자동 수집방법에 관한 것으로, 더욱 상세하게는, 머니퓰레이터의 엔드 이펙터에 설치되는 핸드 아이 카메라와 상기 핸드 아이 카메라에 의해 촬영되는 외부 물체 사이에서 좌표계 변환을 통해 생성된 가상의 이미지 템플릿을 이용해 AI 물체 인식 학습용 라벨링 데이터를 자동으로 대량 생성 및 수집이 가능한 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치 및 이를 이용 AI 물체 인식 학습용 라벨링 데이터 자동 수집 방법에 관한 것이다.
최근 들어 인공지능(AI, Artificial Intelligence) 관련 기술이 급속도로 발달하고 있다.
이러한 인공지능의 경우 데이터에 대한 결과를 출력하기 위하여, 그 전에 관련된 데이터들을 학습용 데이터로서 입력하고, 이를 학습하여 결과를 출력하기 위한 알고리즘을 도출하게 된다.
이때, 상기 학습용 데이터는 인공지능이 학습 할 수 있는 형태의 데이터로 가공되야 하는데, 이와 같이, 사람이 만든 사진, 문서 등의 데이터를 인공지능이 학습할 수 있는 형태로 가공(라벨링)되는 것을 데이터 라벨링이라 한다.
데이터 라벨링의 간단한 예시로는 강아지 사진과 동영상에 '강아지'라는 라벨을 붙이는 것이 있다.
이와 같이 데이터 라벨링 처리되어 가공된 데이터를 통해 학습한 인공지능은 다음에 유사한 형태의 이미지를 강아지로 구분할 수 있다.
한편, 종래기술에 따라 인공지능이 학습하기 위해서는 상술한 바와 같이 라벨링 처리된 많은 양의 학습용 데이터가 필요하였다.
그러나, 종래기술에 따라 학습용 라벨링 데이터를 구하기 위해서는 학습용 원본 데이터에 일일이 수작업으로 라벨링을 수행해야 하는 문제점이 있었다.
도 1은 종래기술에 따른 AI 물체인식 학습용 원본 데이터의 데이터 라벨링 방법을 개략적으로 설명하기 위한 도면이다.
도면에 도시된 바와 같이, 종래기술에 따른 물체인식 학습용 데이터 라벨링 방법은 물체 인식 대상의 ROI(관심) 영역에 해당하는 위치를 일일이 마우스로 클릭하여 단일의 학습용 데이터에 해당하는 마스킹 이미지를 라벨링 데이터로 생성하기 때문에 한사람이 하나의 학습용 데이터를 수집하는데 많은 시간이 소요될 뿐만 아니라 수작업으로 인해 정확도도 떨어지는 문제점이 있었다.
따라서, AI 물체 인식 학습용 라벨링 데이터를 대량으로 손쉽게 수집할 수 있으면서도 정확도를 향상시킬 수 있는 현실적이고도 적용이 가능한 기술이 절실한 실정이다.
대한민국 공개특허공보 10-2018-0080730호 (2018년7월12일 공개)
본 발명은 상기 문제점을 해결하기 위해 안출된 것으로서, 본 발명은 AI 물체 인식 학습용 라벨링 데이터를 대량으로 손쉽게 수집할 수 있으면서도 정확도를 향상시키는데 목적이 있다.
또한, 본 발명은, 머니퓰레이터와 핸드아이 카메라의 좌표계 변환을 이용해 획득한 가상의 2D 이미지 템플릿을 이용해 수작업에 의한 데이터 라벨링 작업을 거치지 않더라도 대량의 AI물체인식 학습용 라벨링 데이터를 구하는데 목적이 있다.
또한, 본 발명은, OPEN GL의 MVP변환을 이용해 작업대 상부에 위치하는 외부물체의 3D 오브젝트에 대한 2D 가상이미지 템플릿을 용이하게 구하는데 목적이 있다.
또한 본 발명은, 실제 입력 이미지 정보 및 가상의 2D 이미지 템플릿 정보를 분석하여 획득한 대상물과 배경의 명암을 구분하는 정보를 포함한 2진 에지 이미지 정보를 이용해 실제 입력 이미지와 가상의 이미지 템플릿 매칭 단계에서 유사도 판단시 오류를 방지하는데 목적이 있다.
또한, 본 발명은, 외부물체에 대한 2D 이미지 정보, 컨투어 정보, 및 3D POSE정보를 이용해 작업대 상부에 위치하는 외부물체에 대한 다양한 형태의 이미지 정보에 대응되는 다수의 AI물체인식 학습용 라벨링 데이터를 자동으로 대량 생성하여 수집하는데 목적이 있다.
전술한 기술적 과제를 해결하기 위한 수단으로서, 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치는, 복수의 조인트, 상기 복수의 조인트와 연동되어 회전 가능하도록 서로 연결된 복수의 암 모듈, 및 상기 복수의 조인트 중 하나와 연결되어 작업대 상부에 위치하는 외부 물체와 마주보게 구성되는 엔드 이펙터를 구비하는 머니퓰레이터; 상기 머니퓰레이터의 엔드 이페터와 결합되어 작업대에 위치하는 외부 물체를 촬영하기 위한 핸드아이 카메라; 상기 핸드아이 카메라와 유선 또는 무선으로 연결되는 통신인터페이스; 및 상기 머니퓰레이터 및 상기 통신인터페이스와 전기적으로 연결되어 상기 머니퓰레이터 및 핸드아이 카메라의 동작을 제어함과 동시에 상기 작업대 상부에 위치한 외부물체의 3D 오브젝트에 대한 AI물체인식 학습용 라벨링 데이터를 자동으로 생성 수집하는 제어부;를 구비할 수 있다.
상기 제어부는, 상기 머니퓰레이터의 동작에 따라 상기 머니플레이터의 베이스 좌표계와 상기 핸드아이 카메라의 좌표계 사이를 정의하고, 상기 작업대 상에 배치되는 외부 물체의 3D 오브젝트를 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿으로 변환시키는 변환부; 상기 핸드아이 카메라에 의해 촬영되어 획득한 외부물체의 실제 입력이미지와 상기 제어부에 의해 획득된 적어도 하나 이상의 2D 가상 이미지 템플릿을 매칭시켜 가장 유사도가 높은 2D가상 이미지 템플릿에 대한 외부물체의 2D 이미지 정보, 및 외부물체의 컨투어 정보, 핸드아이 카메라 좌표계 기반 외부물체의 3D POSE정보를 획득하는 템플릿 매칭부; 및 상기 템플릿 매칭부에서 획득한 외부물체의 2D 이미지 정보, 컨투어 정보, 3D POSE정보를 이용하여 다수의 AI물체인식 학습용 라벨링 데이터를 가상으로 생성 수집하는 학습용 데이터 수집부;를 구비할 수 있다.
또한, 상기 변환부는, 상기 머니퓰레이터의 조인트를 이동시켜 핸드아이 카메라의 3차원 위치(X,Y,Z)변화와 회전변화(roll,pitch,yaw)를 계산하는 핸드아이 카메라 좌표계 변환부; 및 OPNE GL의 MVP변환을 통해 상기 핸드아이 카메라에 의해 쵤영되는 작업대 상부에 배치되는 외부 물체의 3D 오브젝트를 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿으로 변환시키는 MVP변환부;를 구비할 수 있다.
또한, 상기 제어부는, 상기 핸드아이 카메라에 의해 촬영된 작업대에 위치하는 외부 물체의 실제 2D 이미지를 저장하는 이미지 저장부; 상기 변환부를 구성하는 MVP변환부에 의해 생성된 적어도 하나 이상의 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿을 저장하는 템플릿 저장부; 및 상기 템플릿 매칭부에서 획득한 외부물체의 컨투어 정보 및 3D POSE정보를 저장하는 학습용 데이터 저장부;를 구비할 수 있다.
또한, 상기 MVP변환부는, 작업대 상부에 배치되는 외부 물체의 좌표계와 머니퓰레이터 베이스 좌표계에 사이에서 상기 외부물체의 촬영 화면에 나타내고자 하는 대상물에 대한 좌표계 변환에 해당하는 대상물(Model) 좌표 변환; 머니플레이터 베이스 좌표계와 외부 물체를 촬영하는 카메라 객체의 좌표계 사이에서 카메라 객체 기반의 좌표계 변환에 해당하는 뷰(View) 좌표 변환; 및 카메라 객체의 좌표계와 카메라가 외부물체를 바라볼 수 있는 2D 이미지 좌표계 사이에서 2D 이미지 좌표계 변환에 해당하는 프로젝션(Projection) 좌표 변환;을 순차적으로 수행할 수 있다.
또한, 본 발명의 일실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치는, 상기 MVP변환부에 의해 상기 외부물체의 촬영 화면에 나타내고자 하는 대상물의 3D 오브젝트가 카메라의 상에 맺히는 이미지 형태인 2D 가상 이미지 템플릿으로 변환될 수 있다.
또한, 상기 템플릿 매칭부는, 복수의 2진 에지 이미지정보를 생성하는 물체인식 알고리즘을 이용할 수 있다.
또한, 상기 템플릿 매칭부는, 상기 핸드아이 카메라에 의해 촬영되어 획득한 외부물체의 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보를 생성하는 제 1 에지 정보 생성부; 상기 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 제 2 에지 정보 생성부; 상기 제 1 에지 정보 생성부에서 생성된 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보와 상기 제 2 에지 정보 생성부에서 생성된 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 매칭시켜 유사도를 판단하는 유사도 판단부; 및 상기 유사도 판단부의 판단결과에 따라 사전에 설정된 기준값 이상인 2D 가상 이미지 템플릿 중 유사도가 가장 높은 2D 가상 이미지 템플릿에 대한 2D 이미지 정보, 컨투어 정보, 3D 포즈(POSE) 정보를 추출하는 학습용 데이터 추출부;를 구비할 수 있다.
또한, 상기 제 2 에지 정보 생성부는, 상기 변환부를 구성하는 MVP변환부와 연동하여 핸드 아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿 모델에 대한 초기화를 수행하는 템플릿 초기화부; 상기 변환부를 구성하는 핸드아이 카메라 좌표계 변환부와 연동하여 상기 2D 가상 이미지 템플릿 모델을 구성하는 핸드 아이 카메라 좌표계의 위치(X,Y,Z)와 회전(roll, pitch, yaw)을 불규칙적으로 변화시켜 불규칙적이고 랜덤한 형태의 2D 가상 이미지 템플릿 정보를 다수개 생성하는 랜덤 탬플릿 정보 생성부; 및 상기 랜덤 탬플릿 정보 생성부에서 생성한 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 2진 에지 이미지 정보 생성부;를 구비할 수 있다.
또한, 상기 2진 에지 이미지 정보는, 이미지 정보를 구성하는 대상물과 배경의 명암을 구분하는 정보를 포함하여 유사도 판단시 오류를 방지할 수 있다.
또한, 상기 학습용 데이터 수집부는, 상기 템플릿 매칭부에서 획득한 외부물체의 2D 이미지 정보, 컨투어 정보, 3D POSE정보를 이용하여 머니플레이터의 조인트를 다양하게 변화시킨 상태를 가정하여 작업대 상부에 위치하는 외부물체를 인식할 수 있는 다수의 AI물체인식 학습용 라벨링 데이터를 자동으로 생성하고 수집할 수 있다.
본 발명의 다른 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집 방법은, 복수의 조인트 및 상기 복수의 조인트 중 적어도 일부와 연동되어 회전 가능하도록 서로 연결된 복수의 암 모듈을 구비하는 머니퓰레이터와, 상기 머니퓰레이터의 끝단에 결합되어 작업대 상에 위치하는 외부 물체를 촬영하기 위한 핸드아이 카메라를 구비하여 AI물체인식 학습용 라벨링 데이터를 자동수집하는 방법에 있어서, 상기 머니퓰레이터를 제어하여 상기 핸드아이 카메라의 중심이 작업대 상에 배치되는 외부 물체의 중심과 일치하도록 동작하는 머니퓰레이터 조절단계; 상기 핸드아이 카메라를 이용하여 상기 작업대 상의 외부 물체를 촬영하여 외부 물체의 실제 이미지를 획득하는 단계; 상기 작업대 상의 외부 물체에 대한 3D 오브젝트를 적어도 하나 이상의 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿으로 변환시키는 템플릿 변환단계: 및 상기 이미지 획득단계에서 획득한 실제 이미지와 상기 적어도 하나 이상의 2D 가상 이미지 템플릿을 매칭시켜 상기 작업대 상부에 위치한 외부물체의 3D 오브젝트에 대한 AI물체인식 학습용 라벨링 데이터를 자동으로 생성 수집하는 단계;를 포함할 수 있다.
또한, 상기 템플릿 변환단계는, 상기 머니플레이터의 베이스 좌표계와 상기 핸드아이 카메라 좌표계의 관계를 정의하고 작업대 상에 위치하는 외부 물체를 촬영하는 핸드아이 카메라의 3차원 위치(X,Y,Z)변화와 회전(roll, pitch, yaw)변화를 계산하는 핸드아이 카메라 좌표계 변환 단계; 및 상기 핸드아이 카메라 좌표계 변환 단계 이후에 작업대 상의 외부 물체에 대한 3D 오브젝트를 적어도 하나 이상의 핸드아이 카메라 기반의 2D 가상 이미지 템플릿으로 변환하는 MVP변환단계;를 구비할 수 있다.
또한, 상기 MVP변환단계는, 작업대 상부에 배치되는 외부 물체의 좌표계와 머니퓰레이터 베이스 좌표계에 사이에서 상기 외부물체의 촬영 화면에 나타내고자 하는 대상물에 대한 좌표계를 변환하는 대상물(Model) 좌표 변환 단계; 머니플레이터 베이스 좌표계와 외부 물체를 촬영하는 카메라 객체의 좌표계 사이에서 카메라 객체 기반의 좌표계로 변환하는 뷰(View) 좌표 변환단계; 및 카메라 객체의 좌표계와 카메라가 외부물체를 바라볼 수 있는 2D 이미지 좌표계 사이에서 2D 이미지 좌표계로 변환하는 프로젝션(Projection) 좌표 변환 단계;를 순차적으로 수행할 수 있다.
또한, 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집 방법은, 상기 MVP변환단계를 통해 상기 외부물체의 촬영 화면에 나타내고자 하는 대상물의 3D 오브젝트가 카메라의 상에 맺히는 이미지 형태인 2D 가상 이미지 템플릿으로 변환될 수 있다.
또한, 상기 AI물체인식 학습용 라벨링 데이터를 자동으로 생성 수집하는 단계는, 상기 이미지 획득단계에서 획득한 실제 이미지와 상기 템플릿 변환단계에서 획득한 적어도 하나 이상의 2D 가상 이미지 템플릿을 매칭시켜 가장 유사도가 높은 2D가상 이미지 템플릿에 대한 외부물체의 컨투어 정보 및 핸드아이 카메라 좌표계 기반 외부물체의 3D POSE정보를 획득하는 템플릿 매칭단계; 및 상기 실제 이미지와 상기 템플릿 매칭단계에서 획득한 외부물체의 컨투어 정보 및 3D POSE정보를 이용하여 다수의 AI물체인식 학습용 라벨링 데이터를 수집하는 학습용 데이터 수집단계;를 구비할 수 있다.
또한, 상기 템플릿 매칭단계는, 복수의 2진 에지 이미지 정보를 생성하는 물체인식 알고리즘을 이용할 수 있다.
또한, 상기 템플릿 매칭단계는, 상기 핸드아이 카메라에 의해 촬영되어 획득한 외부물체의 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보를 생성하는 단계; 상기 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 단계; 상기 외부물체의 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보와 상기 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 매칭시켜 유사도를 판단하는 단계; 및 상기 유사도 판단결과에 따라 가상 유사도가 높은 2D 가상 이미지 템플릿에 대한 2D 이미지 정보, 컨투어 정보, 3D 포즈(POSE) 정보를 추출하는 단계;를 포함할 수 있다.
또한, 상기 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 단계는, 2D 가상 이미지 템플릿 모델의 정보를 초기화하는 템플릿 초기화 단계; 상기 2D 가상 이미지 템플릿 모델을 구성하는 핸드 아이 카메라 좌표계의 위치(X,Y,Z)와 회전(roll, pitch, yaw)을 불규칙적으로 변화시켜 불규칙적이고 랜덤한 형태의 2D 가상 이미지 템플릿 정보를 다수개 생성하는 랜텀 템플릿 정보 생성단계; 및 상기 랜덤하게 생성된 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 단계;를 포함할 수 있다.
또한, 상기 2진 에지 이미지 정보는, 이미지 정보를 구성하는 대상물과 배경의 명암을 구분하는 정보를 포함하여 유사도 판단시 오류를 방지할 수 있다.
또한, 상기 학습용 데이터 수집단계는, 상기 템플릿 매칭단계에서 획득한 외부물체의 2D 이미지 정보, 컨투어 정보, 3D POSE정보를 이용하여 머니플레이터의 조인트를 다양하게 변화시킨 상태를 가정하여 작업대 상부에 위치하는 외부물체를 인식할 수 있는 다수의 AI물체인식 학습용 라벨링 데이터를 자동으로 생성하고 수집할 수 있다.
이상에서 설명한 바와 같이, 본 발명은 AI 물체 인식 학습용 라벨링 데이터를 대량으로 손쉽게 수집할 수 있으면서도 정확도를 향상시킬 수 있는 효과가 있다.
또한, 본 발명은, 머니퓰레이터와 핸드아이 카메라의 좌표계 변환을 이용해 획득한 가상의 2D 이미지 템플릿을 이용해 수작업에 의한 데이터 라벨링 작업을 거치지 않더라도 대량의 AI물체인식 학습용 라벨링 데이터를 구할 수 있는 효고가 있다.
또한, 본 발명은, 2차원 및 3차원 그래픽스 표준API 규약으로 알려진 OPEN GL의 MVP변환을 이용해 작업대 상부에 위치하는 외부물체의 3D 오브젝트에 대한 2D 가상이미지 템플릿을 용이하게 구할 수 있는 효과가 있다.
또한 본 발명은, 실제 입력 이미지 정보 및 가상의 2D 이미지 템플릿 정보를 분석하여 획득한 대상물과 배경의 명암을 구분하는 정보를 포함한 2진 에지 이미지 정보를 이용해 실제 입력 이미지와 가상의 이미지 템플릿 매칭 단계에서 유사도 판단시 오류를 방지하는 효과가 있다.
또한, 본 발명은, 외부물체에 대한 2D 이미지 정보, 컨투어 정보, 및 3D POSE정보를 이용해 작업대 상부에 위치하는 외부물체에 대한 다양한 형태의 이미지 정보에 대응되는 다수의 AI물체인식 학습용 라벨링 데이터를 자동으로 대량 생성하여 수집할 수 있는 효과가 있다.
도 1은 종래기술에 따른 AI 학습용 원본 데이터의 데이터 라벨링 방법을 개략적으로 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치를 개략적으로 설명하기 위한 도면이다.
도 3은 도 2에 도시된 제어부를 개략적으로 설명하기 위한 도면이다.
도 4는 도 3에 도시된 제어부의 변환부를 개략적으로 설명하기 위한 도면이다.
도 5 내지 도 6은 본 발명의 실시예에 따라 머니퓰레이터의 베이스 좌표계와 핸드아이 카메라 좌표계 사이의 관계를 개략적으로 설명하기 위한 도면이다.
도 7은 본 발명의 실시예에 따라 핸드아이 카메라 좌표계의 이동변화에 따른 외부물체(촬영대상물)의 다양한 이미지 정보를 개략적으로 설명하기 위한 도면이다.
도 8은 본 발명의 실시예에 따라 OPEN GL의 MVP변환을 개략적으로 설명하기 위한 도면이다.
도 9는 본 발명의 실시예에 따라 MVP변환을 이용해 핸드아이 카메라 좌표계 변화에 따른 3D 오브젝트의 가상의 2D 이미지를 개략적으로 나타내기 위한 도면이다.
도 10은 본 발명의 실시예에 따라 핸드아이 카메라에 의해 촬영된 실제 입력이미지와 MVP변환을 이용한 가상의 2D 이미지를 개략적으로 비교설명하기 위한 도면이다.
도 11은 도 3에 도시된 제어부의 템플릿 매칭부를 개략적으로 설명하기 위한 도면이다.
도 12는 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집방법을 개략적으로 설명하기 위한 흐름도이다.
도 13은 도 12에 도시된 방법 중 템플릿 매칭단계를 더욱 상세하게 설명하기 위한 세부단계를 개략적으로 나타내는 도면이다.
도 14는 도 13의 세부단계 중 입력이미지에서 ROI영역에 대한 이미지 정보를 개략적으로 설명하기 위한 도면이다.
도 15 내지 도 16은 본 발명의 실시예에 따른 2진 에지 이미지 정보를 개략적으로 설명하기 위한 도면이다.
도 17 내지 도 19는 도 13의 세부단계 중 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 단계를 개략적으로 설명하기 위한 도면이다.
도 20은 실제 입력이미지의 2진 에지 이미지정보와 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 매칭시켜 유사도를 측정하는 과정을 개략적으로 설명하기 위한 도면이다.
도 21은 본 발명의 실시예에 따라 가장 유사도가 높은 2D 가상 이미지 템플릿의 매칭결과를 개략적으로 설명하기 위한 도면이다.
도 22 내지 도 23은 본 발명의 실시예에 따라 학습용 데이터로 저장되는 실제이미지 정보, 실제 이미지에서 대상물의 컨투어 정보, 및 대상물의 3D Pose정보를 개략적으로 설명하기 위한 도면이다.
이상의 본 발명의 목적들, 다른 목적들, 특징들 및 이점들은 첨부된 도면과 관련된 이하의 바람직한 실시 예들을 통해서 쉽게 이해될 것이다. 그러나 본 발명은 여기서 설명되는 실시 예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 오히려, 여기서 소개되는 실시 예들은 개시된 내용이 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되는 것이다.
어떤 경우에는, 발명을 기술하는 데 있어서 흔히 알려졌으면서 발명과 크게 관련 없는 부분들은 본 발명을 설명하는 데 있어 별 이유 없이 혼돈이 오는 것을 막기 위해 기술하지 않음을 미리 언급해 둔다.
본 명세서에서 제1, 제2 등의 용어가 구성요소들을 기술하기 위해서 사용된 경우, 이들 구성요소들이 이 같은 용어들에 의해서 한정되어서는 안 된다. 이들 용어들은 단지 어느 구성요소를 다른 구성요소와 구별시키기 위해서 사용되었을 뿐이다.
또한, 제1구성요소가 제2구성요소 상(ON)에서 동작 또는 실행된다고 언급될 때, 제1구성요소는 제2구성요소가 동작 또는 실행되는 환경에서 동작 또는 실행되거나 또는 제2구성요소와 직접 또는 간접적으로 상호 작용을 통해서 동작 또는 실행되는 것으로 이해되어야 할 것이다.
어떤 구성요소, 장치, 또는 시스템이 프로그램 또는 소프트웨어로 이루어진 구성요소를 포함한다고 언급되는 경우, 명시적인 언급이 없더라도, 그 구성요소, 장치, 또는 시스템은 그 프로그램 또는 소프트웨어가 실행 또는 동작하는데 필요한 하드웨어(예를 들면, 메모리, CPU 등)나 다른 프로그램 또는 소프트웨어(예를 들면 운영체제나 하드웨어를 구동하는데 필요한 드라이버 등)를 포함하는 것으로 이해되어야 할 것이다.
또한, 어떤 구성요소가 구현됨에 있어서 특별한 언급이 없다면, 그 구성요소는 소프트웨어, 하드웨어, 또는 소프트웨어 및 하드웨어 어떤 형태로도 구현될 수 있는 것으로 이해되어야 할 것이다.
또한, 본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다(comprises)' 및/또는 '포함하는(comprising)'은 언급된 구성요소는 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
또한, 본 명세서에서 '부', '모듈', '서버', '시스템', '플랫폼', '장치' 또는 '단말' 등의 용어는 하드웨어 및 해당 하드웨어에 의해 구동되거나 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 지칭하는 것으로 의도될 수 있다. 예를 들어, 여기서 하드웨어는 CPU 또는 다른 프로세서(processor)를 포함하는 데이터 처리 기기일 수 있다. 또한, 하드웨어에 의해 구동되는 소프트웨어는 실행중인 프로세스, 객체(object), 실행파일(executable), 실행 스레드(thread of execution), 프로그램(program) 등을 지칭할 수 있다.
또한, 상기 용어들은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것이 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.
본 발명의 실시에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치는 머니퓰레이터의 베이스 좌표계, 머니퓰레이터의 엔드 이펙터에 설치되는 핸드아이 카메라 기반의 좌표계, 작업대상에 위치하는 외부물체의 3D 오브젝트에 대한 설계 정보가 사전에 계산된 상태를 가정하여 적용하였다.
또한, 이와 같은 가정은 본 발명의 다른 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집방법에도 동일하게 적용되었으며, 따라서, 본 발명의 실시예에 따라 머니퓰레이터의 핸드아이 카메라가 촬영하여 획득한 외부물체의 입력 이미지와 컨투어정보를 비롯하여 외부물체에 대한 핸드아이 카메라 기준의 3D 포즈정보를 계산하여 물체인식 학습용 라벨링 데이터를 구할 수 있다.
즉, 딥러닝을 이용하여 물체 인식을 위한 학습을 하기 위해선 다양한 카메라 각도와 촬영대상물(외부물체)의 자세 변화에 따른 수많은 양의 이미지 데이터가 필요하고, 그 이미지 데이터 안에서 인식하고자 하는 대상물에 하나씩 라벨을 붙여야 하는 데이터 라벨링을 수행해야 한다. 이때, 대상물을 기준으로 단순한 색깔이나 단순한 형태의 배경만 있어서는 안되고 배경 이미지도 다양하게 변화시켜 가면서 다양한 환경하에서의 데이터 수집이 이루어져야 한다.
본 발명은, 현실적으로 실제 검출해야 하는 물체를 직접 회전시키고 배경을 변화시켜 가면서 데이터를 수집할 경우 시간이 오래 걸리고 다양한 이미지를 모으는데 비용이 많이 드는 종래의 데이터 라벨링 과정에 대하여 사람이 직접 라벨링 할 경우 오랜 시간과 비용이 드는 문제점을 해결하기 위하여 상술한 정보들, 핸드아이 카메라가 촬영한 실제 이미지 정보, 상기 실제 이미지 정보 중 촬영 대상물인 외부물체의 컨투어 정보(Edge Points), 및 계산된 촬영대상물의 3D 포즈정보(X,Y,Z, Roll, Pitch, Yaw)를 구할 수 있도록 함으로써, 이러한 정보를 이용하면 자동으로 외부물체의 회전 및 배경의 변화를 적용하게 할 수 있어 물체인식 학습용 라벨링 데이터를 대량으로 생성하여 수집할 수 있다.
이하, 도면을 참조하여 본 발명에 따른 실시예를 상세하게 설명하기로 한다.
도 2는 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치를 개략적으로 설명하기 위한 도면이고, 도 3은 도 2에 도시된 제어부를 개략적으로 설명하기 위한 도면이며, 도 4는 도 3에 도시된 제어부의 변환부를 개략적으로 설명하기 위한 도면이다.
도면에 도시된 바와 같이, 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집 장치는, 머니퓰레이터(100), 핸드아이 카메라(200), 통신인터페이스(210), 및 제어부(300)를 구비할 수 있다.
이때, 도면부호 10은 핸드아이 카메라가 촬영하기 위한 외부물체인 촬영대상물을 가리키는 것으로 본 발명의 실시예에서는 모종컵을 샘플로 사용하였다.
도면을 참조하여 더욱 상세하게 설명하면, 상기 머니퓰레이터(100)는, 복수의 조인트, 상기 복수의 조인트와 연동되어 회전 가능하도록 서로 연결된 복수의 암 모듈, 및 상기 복수의 조인트 중 하나와 연결되어 작업대 상부에 위치하는 외부 물체와 마주보게 구성되는 엔드 이펙터를 구비할 수 있다. 본 발명의 실시예에 사용된 머니퓰레이터(100)는, 산업현장에서 널리 사용되는 로봇팔의 일종으로서 인간의 팔과 유사한 동작을 하도록 로봇기구를 통칭하며, 보통은 여러개의 자유도를 가지며 대상물을 붙잡거나 옮길 목적으로 상대적인 회전운동이나 미끄럼 운동을 하는 관절(조인트)의 연결로 구성된 기구이다. 본 발명의 실시예에서는 핸드아이 카메라(200)를 설치하여 다양한 각도에서 외부물체를 촬영하기 위한 용도로 사용되었다.
즉, 상기 핸드아이 카메라(200)는, 상기 머니퓰레이터(100)의 엔드 이펙터와 결합되어 작업대에 위치하는 외부 물체를 촬영하기 위한 용도로 사용되었다.
또한, 상기 통신인터페이스(210)는, 상기 핸드아이 카메라(200)와 유선 또는 무선으로 연결되어 상기 핸드아이 카메라(200)에 의해 촬영된 외부 물체의 실제 이미지를 제어부로 입력할 수 있다.
또한, 상기 제어부(300)는, 상기 머니퓰레이터(100) 및 상기 통신인터페이스(210)와 전기적으로 연결되어 상기 머니퓰레이터(100) 및 핸드아이 카메라(200)의 동작을 제어함과 동시에 상기 작업대 상부에 위치한 외부물체의 3D 오브젝트에 대한 AI물체인식 학습용 라벨링 데이터를 자동으로 생성 수집할 수 있다.
여기서, 상기 외부물체의 3D 오브젝트는, 외부물체로 사용된 실제 모종컵이 아니라 핸드아이 카메라에 의해 촬영된 모종컵의 실제 입력 이미지와 좌표계 변환을 통해 획득한 후술하는 2D 가상이미지 템플릿을 이용해 구한 가상의 외부물체에 대한 3D POSE정보로 이루어진 가상의 3D 설계 대상 물체인 것이 바람직하다.
보다 상세하게는, 상기 제어부(300)는, 변환부(310), 템플릿 매칭부(320), 및 학습용 데이터 수집부(330)을 구할 수 있다.
여기서, 상기 변환부(310)는, 상기 머니퓰레이터(100)의 동작에 따라 상기 머니플레이터(100)의 베이스 좌표계와 상기 핸드아이 카메라(200)의 좌표계 사이를 정의하고, 상기 작업대 상에 배치되는 외부 물체의 촬영이미지를 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿으로 변환시킬 수 있다.
또한, 상기 템플릿 매칭부(320)는, 상기 핸드아이 카메라(200)에 의해 촬영되어 획득한 외부물체의 실제 입력이미지와 상기 제어부(300)에 의해 획득된 적어도 하나 이상의 2D 가상 이미지 템플릿을 매칭시켜 가장 유사도가 높은 2D가상 이미지 템플릿에 대한 외부물체의 컨투어 정보 및 핸드아이 카메라 좌표계 기반 외부물체의 3D POSE정보를 획득할 수 있다.
또한, 상기 학습용 데이터 수집부(330)는, 실제 입력이미지와 상기 템플릿 매칭부(320)에서 획득한 외부물체의 컨투어 정보 및 3D POSE정보를 이용하여 다수의 AI물체인식 학습용 라벨링 데이터를 가상으로 생성 수집할 수 있다.
한편, 본 발명의 실시예에 있어서, 도 4에 도시된 바와 같이, 상기 변환부(310)는, 상기 머니퓰레이터의 조인트를 이동시켜 핸드아이 카메라의 3차원 위치(X,Y,Z)변화와 회전변화(roll,pitch,yaw)를 계산하는 핸드아이 카메라 좌표계 변환부(311), 및 OPNE GL의 MVP변환을 통해 상기 핸드아이 카메라에 의해 쵤영되는 작업대 상부에 배치되는 외부 물체의 촬영이미지를 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿으로 변환시키는 MVP변환부(312)를 구비할 수있다.
여기서, 본 발명의 실시예에 따른 제어부(300)는, 상기 핸드아이 카메라(200)에 의해 촬영된 작업대에 위치하는 외부 물체의 실제 2D 이미지를 저장하는 이미지 저장부(340), 상기 변환부(310)를 구성하는 MVP변환부(312)에 의해 생성된 적어도 하나 이상의 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿을 저장하는 템플릿 저장부(350), 및 상기 템플릿 매칭부(320)에서 획득한 외부물체의 컨투어 정보 및 3D POSE정보를 저장하는 학습용 데이터 저장부(360)를 구비할 수 있다.
도 5 내지 도 7을 참조하여 본 발명의 실시예에 따라 머니퓰레이터의 이동에 따른 핸드아이 카메라의 촬영대상물에 대안 이미지 정보의 변화를 상세하게 설명하면 다음과 같다.
도 5 내지 도 6은 본 발명의 실시예에 따라 머니퓰레이터의 베이스 좌표계와 핸드아이 카메라 좌표계 사이의 관계를 개략적으로 설명하기 위한 도면이고, 도 7은 본 발명의 실시예에 따라 핸드아이 카메라 좌표계의 이동변화에 따른 외부물체(촬영대상물)의 다양한 이미지 정보를 개략적으로 설명하기 위한 도면이다.
도면에 도시된 바와 같이, 본 발명의 실시예에 따라 머니퓰레이터(로봇팔)을 움직이면 핸드아이 카메라의 좌표계가 변할 수 있다. 이때, 핸드아이 카메라의 좌표계가 변화하면 핸드아이 카메라에 입력되는 대상물의 이미지 모양도 변하게 된다. 즉, 핸드아이 카메라 좌표계와 촬영 대상물 좌표계 사이의 관계를 이용하여 머니퓰레이터의 작업대 상부에 위치하는 외부물체인 촬영대상물이 핸드아이 카메라에 2D 이미지로 입력되는 경우에 어떻게 변화되어 보이는 지 계산이 가능하다.
도 7을 참조하면, 머니퓰레이터(로봇팔)의 관절을 이동시켜 핸드아이 카메라의 3차원 위치정보(X,Y,Z)와 회전변화(roll, pitch, yaw)를 자유롭게 줄 수 있으며, 머니퓰레이터의 각 관절의 회전각도를 이용하여 핸드아이 카메라의 3차원 위치(X,Y,Z)변화량과 회전(roll, pitch,yaw)의 변화량을 계산할 수 있으며, 또한, 핸드아이 카메라 좌표계 이동(변화)에 따른 촬영대상물의 다양한 카메라 입력이미지 데이터를 수집할 수 있다.
도 8은 본 발명의 실시예에 따라 OPEN GL의 MVP변환을 개략적으로 설명하기 위한 도면이고, 도 9는 본 발명의 실시예에 따라 MVP변환을 이용해 핸드아이 카메라 좌표계 변화에 따른 3D 오브젝트의 가상의 2D 이미지를 개략적으로 나타내기 위한 도면이다.
본 발명의 실시예에 따르면, 상술한 MVP변환부는, 순차적으로 대상물(Model)좌표변환, 뷰(View)좌표 변환, 및 프로젝션(Projection)좌표 변환이 일어나는 것을 알 수 있다.
도8을 참조하면, 상기 대상물(Model)좌표 변환은, 작업대 상부에 배치되는 외부 물체의 좌표계와 머니퓰레이터 베이스 좌표계에 사이에서 상기 외부물체의 촬영 화면에 나타내고자 하는 대상물에 대한 좌표계 변환에 해당할 수 있다.
또한, 상기 뷰(View) 좌표 변환은, 머니플레이터 베이스 좌표계와 외부 물체를 촬영하는 카메라 객체의 좌표계 사이에서 카메라 객체 기반의 좌표계 변환에 해당할 수 있다.
또한, 상기 프로젝션(Projection) 좌표 변환은, 카메라 객체의 좌표계와 카메라가 외부물체를 바라볼 수 있는 2D 이미지 좌표계 사이에서 2D 이미지 좌표계 변환에 해당할 수 있다.
도 9를 참조하면, 상기 MVP변환부에 의해 상기 외부물체의 촬영 화면에 나타내고자 하는 촬영대상물이 카메라의 상에 맺히는 이미지 형태인 2D 가상 이미지 템플릿으로 변환된 것을 알 수 있다.
본 발명의 실시예에서 사용된 MVP변환부는 2차원 및 3차원 그래픽스 표준API 규약으로 알려진 OPEN GL에서 오픈소스로 제공하는 API를 활용한 MVP변환을 이용한 것으로, 3D 대상물을 카메라가 바라보는 2D 공간상에 표현이 가능한 변환방법이다.
본 발명의 실시예에서 적용된 OpenGL의 MVP 변환 matrix 계산을 설명하면 다음과 같다.
1. Model Transform Matrix
모델(대상물)의 변환은 없는 (위치 이동과 회전 이동이 없는) 고정으로 아래와 같이 모델 변환 행렬은 단위 행렬로 구성한다.
glm::mat4 model_transform_matrix = glm::mat4(1.0f);
2. (Camera)View Transform Matrix
2.1. 카메라 회전에 따른 카메라 중심축 normalize vector 계산
//입력1 : Camera_Roll : Roll radian 값
//입력2 : Camera_Pitch : Pitch radian 값
//입력3 : Camera_Yaw : Yaw radian 값
glm::vec3 front; front.x = cos(Camera_Yaw) * cos(Camera_Pitch);
front.y = sin(Camera_Pitch);
front.z = sin(Camera_Yaw) * cos(Camera_Pitch);
glm::vec3 Front;
glm::vec3 Up;
glm::vec3 Right;
glm::vec3 WorldUp;
Front = glm::normalize(front);
Right = glm::normalize(glm::cross(Front, WorldUp));
Up = glm::normalize(glm::cross(Right, Front));
2.2. 카메라 이동에 따른 카메라 이동 vector 계산
//입력1 : x : 카메라 x축 이동 값
//입력2 : y : 카메라 y축 이동 값
//입력3 : z : 카메라 z축 이동 값
Position = glm::vec3(x, y, z);
2.3. 카메라 View Matrix 계산
camera_view_matrix = glm::lookAt(Position, Position + Front, Up);
3. Projection Matrix
3.1. perspective 행렬 계산
//입력1 : fov : 카메라의 Vertical FOV degree 각도
//입력2 : width : 카메라의 x축 pixel width
//입력3 : height : 카메라의 y축 pixel height
glm::mat4 perspective = glm::perspective(glm::radians(fov), (float)width / (float)height, 0.1f, 1000.0f);
3.2. projection 변환 행렬 계산
projection = perspective * camera_view_matrix ;
최종 MVP 변환 행렬 계산
mvp_matrix = projection * model_transform_matrix ;
도 10은 본 발명의 실시예에 따라 핸드아이 카메라에 의해 촬영된 실제 입력이미지와 MVP변환을 이용한 가상의 2D 이미지를 개략적으로 비교설명하기 위한 도면이고, 도 11은 도 3에 도시된 제어부의 템플릿 매칭부를 개략적으로 설명하기 위한 도면이다.
도 10에 도시된 바와 같이, 핸드아이 카메라의 좌표변화에 따른 실제 카메라로 입력되는 이미지와 핸드아이 카메라 좌표계 정보에 의한 OPEN GL의 MVP변환을 이용한 대상물의 가상이미지를 비교해 보면 실제 입력이미지와 가상의 이미지 템플릿이 100% 일치하지 않은 것을 알 수 있다.
이와 같은, 이미지의 불일치는 여러가지 원인이 있을 수 있는데, 카메라렌즈의 Distortion, CCD센서의 노이즈, 핸드아이 카메라 플랜지 제작과정의 오차로 인한 노이즈, 머니퓰레이터와 핸드아이카메라 및 모델의 설치과정에서 발생하는 노이즈, 핸드아이 카메라 센서와 대상물이 놓인 테이블의 수평노이즈, 머니퓰레이터 관절 유격에 의한 제어오차 노이즈, 및 여러가지 예상못한 노이즈 요인으로 실제 대상물의 이미지와 가상의 모델 이미지가 일치하지 않을 수 있다.
본 발명의 실시예에서는, 도 11에 도시된 복수의 2진 에지 이미지 정보를 생성하는 물체인식 알고리즘이 적용된 템플릿 매칭부(320)를 활용해 이러한 노이즈를 조정할 수 있다.
보다 상세하게는, 상기 템플릿 매칭부(320)는, 제 1 에지 정보 생성부(321), 제 2 에지 정보 생성부(322), 유사도 판단부(323), 및 학습용 데이터 추출부(324)를 구비할 수 있다.
여기서, 상기 제 1 에지 정보 생성부(321)는, 상기 핸드아이 카메라에 의해 촬영되어 획득한 외부물체의 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보를 생성할 수 있다. 본 발명의 실시예에 따른 2진 에지 이미지정보는 후술하는 도면 14 내지 16에서 상세하게 설명하기로 한다.
한편, 본 발명의 실시예에서, 상기 2진 에지 이미지정보는 컨투어 정보를 기반으로 하는 입력 이미지에서 생성한 정보이며, 2진 에지 이미지정보는 본 발명의 실시예에서 템플릿 매칭단계에서 사용하고 학습과정에는 사용하지 않고, 학습과정에는 상기 컨투어 정보를 사용하게 된다.
이때, 학습용 데이터에 사용되는 컨투어 정보는 후술하는 바와 같이 템플릿 매칭단계를 통해 학습용 데이터 추출부(324)에서 최종적으로 획득하게 된다.
또한, 상기 제 2 에지 정보 생성부(322)는, 본 발명의 실시예에 따른 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성할 수 있다.
또한, 상기 유사도 판단부(323)는, 상기 제 1 에지 정보 생성부(321)에서 생성된 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보와 상기 제 2 에지 정보 생성부(322)에서 생성된 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 매칭시켜 유사도를 판단할 수 있다.
또한, 상기 학습용 데이터 추출부(324)는, 상기 유사도 판단부(323)의 판단결과에 따라 사전에 설정된 기준값 이상인 2D 가상 이미지 템플릿 중 유사도가 가장 높은 2D 가상 이미지 템플릿에 대한 컨투어 정보 및 3D 포즈(POSE)정보를 추출할 수 있다.
한편, 본 발명의 실시예에서 상기 제 2 에지 정보 생성부(322)는, 후술하는 도 13에 도시된 바와 같이, 템플릿 초기화부(322-1), 랜덤 템플릿 정보 생성부(322-2), 가상의 2진 에지 이미지 정보 생성부(322-3)을 구비할 수 있다.
이때, 상기 템플릿 초기화부(322-1)는, 상기 변환부를 구성하는 MVP변환부와 연동하여 핸드 아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿 모델에 대한 초기화를 수행할 수 있으며, 후술하는 도 17을 참조한다.
또한, 상기 랜덤 템플릿 정보 생성부(322-2)는, 상기 변환부를 구성하는 핸드아이 카메라 좌표계 변환부와 연동하여 상기 2D 가상 이미지 템플릿 모델을 구성하는 핸드 아이 카메라 좌표계의 위치(X,Y,Z)와 회전(roll, pitch, yaw)을 불규칙적으로 변화시켜 불규칙적이고 랜덤한 형태의 2D 가상 이미지 템플릿 정보를 다수개 생성할 수 있으며, 후술하는 도 18을 참조한다.
또한, 상기 가상의 2진 에지 이미지 정보 생성부(322-3)는, 상기 랜덤 탬플릿 정보 생성부(322-2)에서 생성한 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성할 수 있다.
본 발명의 실시예에서, 상술한 2진 에지 이미지 정보는, 후술하는 도 15 내지 16에 상세하게 설명하기로 하며, 이미지 정보를 구성하는 대상물과 배경의 명암을 구분하는 정보를 포함하여 유사도 판단시 오류를 방지할 수 있다.
이와 같이, 본 발명의 실시예에 따른 AI 물체인식 학습용 라벨링 데이터 수집장치는, 상기 제어부(300)를 구성하는 학습용 데이터 수집부(330)을 이용해 실제 입력이미지와 상기 템플릿 매칭부(320)에서 획득한 외부물체의 컨투어 정보, 3D POSE정보를 이용하여 머니플레이터의 조인트를 다양하게 변화시킨 상태를 가정하여 작업대 상부에 위치하는 외부물체를 인식할 수 있는 다수의 AI물체인식 학습용 라벨링 데이터를 자동으로 생성하고 수집할 수 있다.
다음으로, 도 12 내지 도 21을 참조하여 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집방법을 더욱 상세하게 설명하기로 한다.
도 12는 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집방법을 개략적으로 설명하기 위한 흐름도이다.
도면에 도시된 바와 같이, 본 발명의 실시예에 따른 AI 물체 인식 학습용 라벨링 데이터 자동 수집방법은, 복수의 조인트 및 상기 복수의 조인트 중 적어도 일부와 연동되어 회전 가능하도록 서로 연결된 복수의 암 모듈을 구비하는 머니퓰레이터(100)와, 상기 머니퓰레이터(100)의 끝단에 결합되어 작업대 상에 위치하는 외부 물체를 촬영하기 위한 핸드아이 카메라(200)를 구비하여 AI물체인식 학습용 라벨링 데이터를 자동수집하는 방법에 관한 것으로서, 머니퓰레이터 조절단계(S100), 촬영대상물인 외부 물체의 실제 이미지 획득 단계(S200), 템플릿 변환단계(S300), 템플릿 매칭단계(S400), 및 학습용 데이터 수집단계(S500)를 구비할 수 있다.
먼저, 상기 머니퓰레이터 조절단계(S100)는, 상기 머니퓰레이터(100)를 제어하여 상기 핸드아이 카메라(200)의 중심이 작업대 상에 배치되는 외부 물체의 중심과 일치하도록 동작하는 단계일 수 있다.
다음으로, 상기 촬영대상물인 외부 물체의 실제 이미지 획득 단계(S200)는, 상기 핸드아이 카메라를 이용하여 상기 작업대 상의 외부 물체를 촬영하여 외부 물체의 실제 이미지를 획득하여 저장하는 단계일 수 있다.
다음으로, 상기 템플릿 변환단계(S300)는, 상기 작업대 상의 외부 물체에 대한 촬영이미지를 적어도 하나 이상의 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿으로 변환시키는 단계일 수 있다.
본 발명의 실시예에서, 상기 템플릿 변환단계(S300)는 앞서 상술한 바와 같이, 상기 머니플레이터의 베이스 좌표계와 상기 핸드아이 카메라 좌표계의 관계를 정의하고 작업대 상에 위치하는 외부 물체를 촬영하는 핸드아이 카메라의 3차원 위치(X,Y,Z)변화와 회전(roll, pitch, yaw)변화를 계산하는 핸드아이 카메라 좌표계 변환 단계, 및 상기 핸드아이 카메라 좌표계 변환 단계 이후에 작업대 상의 외부 물체에 대한 촬영이미지를 적어도 하나 이상의 핸드아이 카메라 기반의 2D 가상 이미지 템플릿으로 변환하는 MVP변환단계를 구비할 수 있다.
여기서, 상기 MVP변환단계는, 작업대 상부에 배치되는 외부 물체의 좌표계와 머니퓰레이터 베이스 좌표계에 사이에서 상기 외부물체의 촬영 화면에 나타내고자 하는 대상물에 대한 좌표계를 변환하는 대상물(Model) 좌표 변환 단계, 머니플레이터 베이스 좌표계와 외부 물체를 촬영하는 카메라 객체의 좌표계 사이에서 카메라 객체 기반의 좌표계로 변환하는 뷰(View) 좌표 변환단계, 및 카메라 객체의 좌표계와 카메라가 외부물체를 바라볼 수 있는 2D 이미지 좌표계 사이에서 2D 이미지 좌표계로 변환하는 프로젝션(Projection) 좌표 변환 단계를 순차적으로 수행할 수 있다.
또한, 상기 상기 MVP변환단계를 통해 상기 외부물체의 촬영 화면에 나타내고자 하는 대상물의 촬영이미지가 카메라의 상에 맺히는 이미지 형태인 2D 가상 이미지 템플릿으로 변환될 수 있다.
다음으로, 상기 템플릿 매칭단계(S400) 및 학습용 데이터 수집단계(S500)는, 상기 이미지 획득단계에서 획득한 실제 이미지와 상기 적어도 하나 이상의 2D 가상 이미지 템플릿을 매칭시켜 상기 작업대 상부에 위치한 외부물체의 3D 오브젝트에 대한 AI물체인식 학습용 라벨링 데이터를 자동으로 생성 수집하는 단계일 수 있다.
이때,상기 템플릿 매칭단계(S400)는, 상기 이미지 획득단계에서 획득한 실제 이미지와 상기 템플릿 변환단계에서 획득한 적어도 하나 이상의 2D 가상 이미지 템플릿을 매칭시켜 가장 유사도가 높은 2D가상 이미지 템플릿에 대한 외부물체의 컨투어 정보 및 핸드아이 카메라 좌표계 기반 외부물체의 3D POSE정보를 획득하는 단계일 수 있다.
다음으로, 상기 학습용 데이터 수집단계(S500)는, 상기 실제 이미지와 상기 템플릿 매칭단계에서 획득한 외부물체의 컨투어 정보 및 3D POSE정보를 이용하여 다수의 AI물체인식 학습용 라벨링 데이터를 수집하는 단계일 수 있다.
도 13은 도 12에 도시된 방법 중 템플릿 매칭단계(S400)를 더욱 상세하게 설명하기 위한 세부단계를 개략적으로 나타내는 도면이다.
도 13에 도시된 템플릿 매칭단계는 전체적으로 랜덤 파티클을 이용한 3D EDGE 템플릿 매칭과 자세추정(POSE ESTIMATION) 알고리즘을 수행하게 된다.
본 발명의 실시예에서, 상기 템플릿 매칭단계(S400)는, 복수의 2진 에지 이미지 정보를 생성하는 물체인식 알고리즘을 이용하는 것을 특징으로 하며, 이하 도면을 참조하여 상세하게 설명하기로 한다.
도 13에 도시된 바와 같이, 본 발명의 실시예에서, 상기 템플릿 매칭단계(S400)는, 상기 핸드아이 카메라에 의해 촬영되어 획득한 외부물체의 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보를 생성하는 단계(S410), 상기 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 단계(S420), 상기 외부물체의 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보와 상기 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 매칭시켜 유사도를 판단하는 단계(S430), 및 상기 유사도 판단결과에 따라 가상 유사도가 높은 2D 가상 이미지 템플릿에 대한 2D 이미지 정보, 컨투어 정보, 3D 포즈(POSE) 정보를 추출하는 단계(S440)를 포함할 수 있다.
여기서, 상기 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 단계(S420)는, 도면에 도시된 바와 같이, 템플릿 초기화 단계(S421), 랜덤 템플릿 정보 생성단계(S422), 및 가상의 2진 에지 이미지 정보 생성단계(S423)를 포함할 수 있다.
더욱 상세하게는, 상기 템플릿 초기화 단계(S421)는, 2D 가상 이미지 템플릿 모델의 정보를 초기화하는 단계일 수 있다.
또한, 상기 랜덤 템플릿 정보 생성단계(S422)는, 상기 2D 가상 이미지 템플릿 모델을 구성하는 핸드 아이 카메라 좌표계의 위치(X,Y,Z)와 회전(roll, pitch, yaw)을 불규칙적으로 변화시켜 불규칙적이고 랜덤한 형태의 2D 가상 이미지 템플릿 정보를 다수개 생성하는 단계일 수 있다.
또한, 상기 가상의 2진 에지 이미지 정보 생성단계(S423)는, 상기 랜덤하게 생성된 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 단계일 수 있다.
한편, 본 발명의 실시예에 따르면, 이와 같이 2진 에지 이미지 정보를 구함으로써, 이미지 정보를 구성하는 대상물과 배경의 명암을 구분하는 정보를 포함하여 유사도 판단시 오류를 방지할 수 있다.
본 발명의 실시예에 따른 2진 에지 이미지 정보는 후술하는 도 14 내지 도 16을 통해 상세하게 설명하기로 한다.
도 14는 도 13의 세부단계 중 입력이미지에서 ROI영역에 대한 이미지 정보를 개략적으로 설명하기 위한 도면이고, 도 15 내지 도 16은 본 발명의 실시예에 따른 2진 에지 이미지 정보를 개략적으로 설명하기 위한 도면이다.
도 14에 도시된 바와 같이, 핸드아이 카메라에 의해 촬영된 이미지에서 ROI영역에 대한 이미지를 추출하게 된다.
이때, ROI영역은 도 13에서 상술한 템플릿 초기화 단계(S421)에서 2D 가상 이미지 템플릿 모델의 정보를 초기화하여 추정한 ROI영역을 반영하는 것이 바람직하다.
즉, 핸드아이 카메라에 입력되는 이미지 전체 영역에서 라벨링 데이터의 대상물을 찾는 것보다는 템플릿 모델의 초기화 정보를 이용하여 ROI 이미지를 만들어 ROI영역안에서 대상물체를 찾는 알고리즘을 수행하는 훨씬 효율적일 수 있다.
도 15를 참조하면 본 발명의 실시예에 따른 2진 에지 이미지 정보에 대해 더욱 상세하게 설명할 수 있다.
템플릿 샘플이미지 1과 샘플이미지2를 비교하여 살펴보면 일반 에지 이미지 관점에서는 구조적으로는 같은 모양이지만 EDGE의 방향으로 살펴보면 같은 물체라고 보기 어렵다. 그러나, 에지값만 가지고 템플릿 매칭을 하게 되면 종래에는 일반 적으로 동일한 물체로 계산되어 판단 될 수 밖에 없어 템플릿 매칭시 오류가 발생하게 된다.
본 발명의 실시예에서는 이러한 문제점을 극복하고자, 에지를 기준으로 대상물과 배경에 따른 에지값을 구분하여 2진 에지 이미지 정보를 생성하여 형태상으로 동일한 물체라 하더라도 에지의 방향에 따라 다른 물체로 인식될 수 있도록 2진 에지 이미지 정보를 대상물 검출에 사용하게 되었다.
도 16은 ROI이미지를 이용해 2진 에지 이미지 정보를 도출하는 과정을 상세하게 도시하였다. 도면에 도시된 바와 같이, ROI 이미지에서 마스크 영역의 안쪽과 바깥쪽 영역을 구분하여 외곽선(에지)를 기준으로 안쪽과 바깥쪽에 서로 다른 에지 값을 적용함으로써 2진 에지 이미지 정보를 출력할 수 있다.
도 17 내지 도 19는 도 13의 세부단계 중 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 단계를 개략적으로 설명하기 위한 도면이다.
도 17은 핸드아이 카메라 포즈 정보기반의 MVP 변환을 이용해 핸드아이 카메라 포즈정보에 기반하여 촬영대상물에 대한 가상의 2D 이미지정보를 초기화하여 생성하였다.
다음으로, 도 18에서는 랜덤 파티클을 이용한 랜덤 템플릿 이미지 정보를 생성하는 것을 나타내고 있다.
즉, 도 17에서 초기화하여 획득한 핸드아이 카메라 포즈정보의 초기값을 기반으로하여, X, Y, Z, roll, pitch, yaw 값을 랜덤하게 변화시킨 템플릿 샘플이미지를 반복적으로 생성하여 템플릿 매칭을 한다.
랜덤 템플릿 샘플이미지들의 템플릿 매칭을 통해 가장 유사도가 높은 템플릿 (Tb)를 선택하고 이렇게 선택된 Tb의 X,Y,Z, roll, pitch, yaw 값을 기준으로 X,Y,Z,roll,pitch,yaw 값을 랜덤하게 변화시킨 템플릿 샘플 이미지들을 생성하여 템플릿 매칭을 통하여 가장 유사도가 높은 템플릿을 찾아간다.
템플릿 매칭 점수가 일정 기준에 부합되었다면 반복하여 랜덤 파티클 템플릿 매칭을 중단하고 대상물을 인식한 것으로 본다.
만약 최대 반복 횟수 이상 반복하였으나 템플릿 매칭 점수가 일정기준에 부합되지 않는다면 찾고자 하는 대상물이 없다고 판단한다.
Ti : 초기 입력값에 의한 템플릿 기준값
T(template)=(X,Y,Z,roll,pitch,yaw)
도면에서 가운데 붉은색 컨투어 정보는 초기 템플릿 기준값이고, 다수의 흰색 컨투어 정보는 랜덤 파티클 템플릿 샘플 이미지이다.
Particle sample = {P1, P2, ..., Pn)
Pi={X, Y, Z, roll, pitch, yaw}
도 19는 이와 같이 생성된 랜덤 파티클 템플릿 샘플이미지의 2진 에지 이미지 정보를 나타내는 도면이다.
본 발명의 실시예에서 가상의 템플릿 샘플이미지의 2진 에지 이미지 정보의 에지값은 앞서 상술한 도 15 내지 도 16에서의 2진 에지 이미지 정보의 적용사례를 따르기로 한다.
도 20은 실제 입력이미지의 2진 에지 이미지정보와 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 매칭시켜 유사도를 측정하는 과정을 개략적으로 설명하기 위한 도면이다.
도면에 도시된 바와 같이, 도 17 내지 도 19를 통해 획득한 가상의 2진 에지 이미지 템플릿 정보와 실제 입력 이미지의 ROI 2진 에지 이미지정보를 매칭시켜 유사도 검사를 수행하게 된다.
본 발명의 실시예에서는 가장 유사도 점수가 높은 템플릿을 출력하여 포즈저보 Ti={X,Y,Z,roll,pitch,yaw}를 구하게 된다.
본 발명의 실시예에 적용된 유사도 검사 식은 하기와 같다.
Figure 112022098712050-pat00001
한편, 본 발명의 실시예에서는 두 이미지의 유사도 점수가 기준보다 낮다면 랜덤 템플릿 샘플 이미지를 생성하는 과정으로 돌아가 유사도 판단 과정을 반복하게 된다.
도 21은 본 발명의 실시예에 따라 가장 유사도가 높은 2D 가상 이미지 템플릿의 매칭결과를 개략적으로 설명하기 위한 도면으로서, 템플릿 매칭 단계가 완료된 상태를 도시하고 있으며, 이로써, 실제 입력이미지에 추가하여 학습용 라벨링 데이터를 생성하기 위해 필요한 정보인 대상물의 컨투어 정보 및 대상물의 3D POSE정보를 최종적으로 획득할 수 있게 된다.
도 22 내지 도 23은 본 발명의 실시예에 따라 학습용 데이터로 저장되는 실제이미지 정보, 실제 이미지에서 대상물의 외곽선에 해당하는 컨투어 정보, 및 대상물의 3D Pose정보를 개략적으로 설명하기 위한 도면이다.
도면에 도시된 바와 같이, 도 22의 실제 이미지 정보는 핸드아이 카메라(100)에서 촬영한 2D 이미지 정보 형태의 RGB 이미지정보로 구성되며, 본 발명의 실시예에서 png 이미지 파일로 이미지 저장부(340)에 저장할 수 있다.
또한, 도 23에 도시된 바와 같이, 템플릿 매칭부(320)를 통해 획득한 컨투어 정보 및 3D 포즈 정보를 json 형식의 파일로 학습용 데이터 저장부(360)에 저장할 수 있다.
이와 같이, 본 발명의 실시예에 따른 AI물체인식 학습용 라벨링 데이터 자동수집방법은, 상기 템플릿 매칭단계를 통해 최종적으로 획득한 외부물체의 2D 이미지 정보, 컨투어 정보, 3D POSE정보를 이용하여 머니플레이터의 조인트를 다양하게 변화시킨 상태를 가정하여 작업대 상부에 위치하는 외부물체를 인식할 수 있는 다수의 AI물체인식 학습용 라벨링 데이터를 자동으로 생성하고 수집하는 학습용 데이터 수집단계를 수행하는 것을 알 수 있다.
상기와 같이, 본 발명은 AI 물체 인식 학습용 라벨링 데이터를 대량으로 손쉽게 수집할 수 있으면서도 정확도를 향상시킬 수 있는 효과가 있다.
또한, 본 발명은, 머니퓰레이터와 핸드아이 카메라의 좌표계 변환을 이용해 획득한 가상의 2D 이미지 템플릿을 이용해 수작업에 의한 데이터 라벨링 작업을 거치지 않더라도 대량의 AI물체인식 학습용 라벨링 데이터를 구할 수 있는 효고가 있다.
또한, 본 발명은, 2차원 및 3차원 그래픽스 표준API 규약으로 알려진 OPEN GL의 MVP변환을 이용해 작업대 상부에 위치하는 외부물체의 3D 오브젝트에 대한 2D 가상이미지 템플릿을 용이하게 구할 수 있는 효과가 있다.
또한 본 발명은, 실제 입력 이미지 정보 및 가상의 2D 이미지 템플릿 정보를 분석하여 획득한 대상물과 배경의 명암을 구분하는 정보를 포함한 2진 에지 이미지 정보를 이용해 실제 입력 이미지와 가상의 이미지 템플릿 매칭 단계에서 유사도 판단시 오류를 방지하는 효과가 있다.
또한, 본 발명은, 외부물체에 대한 2D 이미지 정보, 컨투어 정보, 및 3D POSE정보를 이용해 작업대 상부에 위치하는 외부물체에 대한 다양한 형태의 이미지 정보에 대응되는 다수의 AI물체인식 학습용 라벨링 데이터를 자동으로 대량 생성하여 수집할 수 있는 효과가 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다.
한편, 이상으로 본 발명의 기술적 사상을 예시하기 위한 바람직한 실시 예와 관련하여 설명하고 도시하였지만, 본 발명은 이와 같이 도시되고 설명된 그대로의 구성 및 작용에만 국한되는 것이 아니며, 기술적 사상의 범주를 일탈함이 없이 본 발명에 대해 다수의 변경 및 수정 가능함을 당업자들은 잘 이해할 수 있을 것이다. 따라서, 그러한 모든 적절한 변경 및 수정과 균등물들도 본 발명의 범위에 속하는 것으로 간주하여야 할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
10 : 외부물체(촬영대상물)
100 : 머니퓰레이터
200 : 핸드아이 카메라
210 : 통신인터페이스
300 : 제어부
310 : 변환부
311 : 핸드아이카메라 좌표계 변환부
312 : MVP 변환부
320 : 템플릿 매칭부
321 : 제1 에지정보 생성부
322 : 제2 에지정보 생성부
322-1 : 템플릿 초기화부
322-2 : 랜덤 템플릿 정보 생성부
322-3 : 가상의 2진 에지 이미지정보 생성부
330 : 학습용 데이터 수집부
340 : 이미지 저장부
350 : 템플릿 저장부
360 : 학습용 데이터 저장부

Claims (21)

  1. 복수의 조인트, 상기 복수의 조인트와 연동되어 회전 가능하도록 서로 연결된 복수의 암 모듈, 및 상기 복수의 조인트 중 하나와 연결되어 작업대 상부에 위치하는 외부 물체와 마주보게 구성되는 엔드 이펙터를 구비하는 머니퓰레이터;
    상기 머니퓰레이터의 엔드 이페터와 결합되어 작업대에 위치하는 외부 물체를 촬영하기 위한 핸드아이 카메라;
    상기 핸드아이 카메라와 유선 또는 무선으로 연결되는 통신인터페이스; 및
    상기 머니퓰레이터 및 상기 통신인터페이스와 전기적으로 연결되어 상기 머니퓰레이터 및 핸드아이 카메라의 동작을 제어함과 동시에 상기 작업대 상부에 위치한 외부물체의 3D 오브젝트에 대한 AI물체인식 학습용 라벨링 데이터를 자동으로 생성 수집하는 제어부;를 구비하고,
    상기 제어부는,
    상기 머니퓰레이터의 동작에 따라 상기 머니퓰레이터의 베이스 좌표계와 상기 핸드아이 카메라의 좌표계 사이를 정의하고, 상기 작업대 상에 배치되는 외부 물체의 3D 오브젝트를 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿으로 변환시키는 변환부;
    상기 핸드아이 카메라에 의해 촬영되어 획득한 외부물체의 실제 입력이미지와 상기 제어부에 의해 획득된 적어도 하나 이상의 2D 가상 이미지 템플릿을 매칭시켜 가장 유사도가 높은 2D가상 이미지 템플릿에 대한 외부물체의 컨투어 정보, 및 핸드아이 카메라 좌표계 기반 외부물체의 3D POSE정보를 획득하는 템플릿 매칭부; 및
    상기 템플릿 매칭부에서 획득한 외부물체의 2D 이미지 정보, 컨투어 정보, 3D POSE정보를 이용하여 다수의 AI물체인식 학습용 라벨링 데이터를 가상으로 생성 수집하는 학습용 데이터 수집부;를 구비하는 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  2. 삭제
  3. 청구항 1에 있어서, 상기 변환부는,
    상기 머니퓰레이터의 조인트를 이동시켜 핸드아이 카메라의 3차원 위치(X,Y,Z)변화와 회전변화(roll,pitch,yaw)를 계산하는 핸드아이 카메라 좌표계 변환부; 및
    OPNE GL의 MVP변환을 통해 상기 핸드아이 카메라에 의해 쵤영되는 작업대 상부에 배치되는 외부 물체의 3D 오브젝트를 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿으로 변환시키는 MVP변환부;를 구비하는 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  4. 청구항 3에 있어서, 상기 제어부는,
    상기 핸드아이 카메라에 의해 촬영된 작업대에 위치하는 외부 물체의 실제 2D 이미지를 저장하는 이미지 저장부;
    상기 변환부를 구성하는 MVP변환부에 의해 생성된 적어도 하나 이상의 핸드아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿을 저장하는 템플릿 저장부; 및
    상기 템플릿 매칭부에서 획득한 외부물체의 컨투어 정보 및 3D POSE정보를 저장하는 학습용 데이터 저장부;
    를 구비하는 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  5. 청구항 3에 있어서, 상기 MVP변환부는,
    작업대 상부에 배치되는 외부 물체의 좌표계와 머니퓰레이터 베이스 좌표계에 사이에서 상기 외부물체의 촬영 화면에 나타내고자 하는 대상물에 대한 좌표계 변환에 해당하는 대상물(Model) 좌표 변환;
    머니플레이터 베이스 좌표계와 외부 물체를 촬영하는 카메라 객체의 좌표계 사이에서 카메라 객체 기반의 좌표계 변환에 해당하는 뷰(View) 좌표 변환; 및
    카메라 객체의 좌표계와 카메라가 외부물체를 바라볼 수 있는 2D 이미지 좌표계 사이에서 2D 이미지 좌표계 변환에 해당하는 프로젝션(Projection) 좌표 변환;을 순차적으로 수행하는 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  6. 청구항 5에 있어서,
    상기 MVP변환부에 의해 상기 외부물체의 촬영 화면에 나타내고자 하는 대상물의 3D 오브젝트가 카메라의 상에 맺히는 이미지 형태인 2D 가상 이미지 템플릿으로 변환된 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  7. 청구항 1에 있어서, 상기 템플릿 매칭부는,
    복수의 2진 에지 이미지정보를 생성하는 물체인식 알고리즘을 이용하는 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  8. 청구항 1에 있어서, 상기 템플릿 매칭부는,
    상기 핸드아이 카메라에 의해 촬영되어 획득한 외부물체의 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보를 생성하는 제 1 에지 정보 생성부;
    상기 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 제 2 에지 정보 생성부;
    상기 제 1 에지 정보 생성부에서 생성된 실제 입력이미지의 ROI영역에 대한 2진 에지 이미지 정보와 상기 제 2 에지 정보 생성부에서 생성된 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 매칭시켜 유사도를 판단하는 유사도 판단부; 및
    상기 유사도 판단부의 판단결과에 따라 사전에 설정된 기준값 이상인 2D 가상 이미지 템플릿 중 유사도가 가장 높은 2D 가상 이미지 템플릿에 대한 2D 이미지 정보, 컨투어 정보, 3D 포즈(POSE) 정보를 추출하는 학습용 데이터 추출부;를 구비하는 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  9. 청구항 8에 있어서, 상기 제 2 에지 정보 생성부는,
    상기 변환부를 구성하는 MVP변환부와 연동하여 핸드 아이 카메라 좌표계 기반의 2D 가상 이미지 템플릿 모델에 대한 초기화를 수행하는 템플릿 초기화부;
    상기 변환부를 구성하는 핸드아이 카메라 좌표계 변환부와 연동하여 상기 2D 가상 이미지 템플릿 모델을 구성하는 핸드 아이 카메라 좌표계의 위치(X,Y,Z)와 회전(roll, pitch, yaw)을 불규칙적으로 변화시켜 불규칙적이고 랜덤한 형태의 2D 가상 이미지 템플릿 정보를 다수개 생성하는 랜덤 탬플릿 정보 생성부; 및
    상기 랜덤 탬플릿 정보 생성부에서 생성한 2D 가상 이미지 템플릿의 2진 에지 이미지 정보를 생성하는 2진 에지 이미지 정보 생성부;를 구비하는 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  10. 청구항 7 내지 청구항 9 중 어느 한 항에 있어서, 상기 2진 에지 이미지 정보는,
    이미지 정보를 구성하는 대상물과 배경의 명암을 구분하는 정보를 포함하여 유사도 판단시 오류를 방지하는 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  11. 청구항 1에 있어서, 상기 학습용 데이터 수집부는,
    상기 템플릿 매칭부에서 획득한 외부물체의 2D 이미지 정보, 컨투어 정보, 3D POSE정보를 이용하여 머니플레이터의 조인트를 다양하게 변화시킨 상태를 가정하여 작업대 상부에 위치하는 외부물체를 인식할 수 있는 다수의 AI물체인식 학습용 라벨링 데이터를 자동으로 생성하고 수집하는 것을 특징으로 하는 AI 물체인식 학습용 라벨링 데이터 수집장치
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
KR1020220118518A 2022-09-20 2022-09-20 Ai 물체 인식 학습용 라벨링 데이터 자동 수집 장치 KR102515259B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020220118518A KR102515259B1 (ko) 2022-09-20 2022-09-20 Ai 물체 인식 학습용 라벨링 데이터 자동 수집 장치
KR1020220176388A KR102528594B1 (ko) 2022-09-20 2022-12-15 Ai 물체 인식 학습용 라벨링 데이터 자동 수집방법
PCT/KR2022/020759 WO2024063217A1 (ko) 2022-09-20 2022-12-19 Ai 물체 인식 학습용 라벨링 데이터 자동 수집 장치 및 이를 이용한 ai 물체 인식 학습용 라벨링 데이터 자동 수집 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220118518A KR102515259B1 (ko) 2022-09-20 2022-09-20 Ai 물체 인식 학습용 라벨링 데이터 자동 수집 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220176388A Division KR102528594B1 (ko) 2022-09-20 2022-12-15 Ai 물체 인식 학습용 라벨링 데이터 자동 수집방법

Publications (1)

Publication Number Publication Date
KR102515259B1 true KR102515259B1 (ko) 2023-03-30

Family

ID=85985987

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020220118518A KR102515259B1 (ko) 2022-09-20 2022-09-20 Ai 물체 인식 학습용 라벨링 데이터 자동 수집 장치
KR1020220176388A KR102528594B1 (ko) 2022-09-20 2022-12-15 Ai 물체 인식 학습용 라벨링 데이터 자동 수집방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220176388A KR102528594B1 (ko) 2022-09-20 2022-12-15 Ai 물체 인식 학습용 라벨링 데이터 자동 수집방법

Country Status (2)

Country Link
KR (2) KR102515259B1 (ko)
WO (1) WO2024063217A1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180189607A1 (en) * 2016-12-29 2018-07-05 Elektrobit Automotive Gmbh Generating training images for machine learning-based objection recognition systems
KR20180080630A (ko) * 2017-01-04 2018-07-12 삼성전자주식회사 핸드-아이 캘리브레이션을 수행하는 로봇 및 전자 장치
KR20180080730A (ko) 2017-01-04 2018-07-13 현대자동차주식회사 모터 제어 시스템 및 방법
KR20220090203A (ko) * 2020-12-22 2022-06-29 주식회사 에스원 딥 러닝 객체 검출 및 추적 기반 자동 데이터 라벨링 방법 및 이를 이용한 자동 데이터 라벨링 시스템

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4449410B2 (ja) * 2003-10-27 2010-04-14 ソニー株式会社 ロボット装置及びその物体学習方法
KR20170098637A (ko) * 2016-02-22 2017-08-30 엘지전자 주식회사 이미지 처리장치, 및 이를 구비하는 영상표시장치
KR101725166B1 (ko) * 2016-06-22 2017-04-12 주식회사 엑스콜로 2차원 이미지들을 이용하여 3차원 이미지를 재구성하는 방법 및 이를 위한 장치
KR101988937B1 (ko) * 2017-09-07 2019-06-13 주식회사 인지 카메라와 로봇 핸드의 캘리브레이션 방법 및 장치
KR102619004B1 (ko) * 2018-12-14 2023-12-29 삼성전자 주식회사 로봇 장치 및 로봇의 작업 기술을 학습하는 방법
KR20210073001A (ko) * 2019-12-10 2021-06-18 엘지전자 주식회사 로봇 및 로봇 시스템
KR102366513B1 (ko) * 2020-08-05 2022-02-23 이성호 다중 카메라를 이용한 물체 검출 및 추적 방법 및 이를 포함하는 인공위성
KR20220085242A (ko) * 2020-12-15 2022-06-22 현대위아 주식회사 공작기계용 기구물 종류 및 위치 인식 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180189607A1 (en) * 2016-12-29 2018-07-05 Elektrobit Automotive Gmbh Generating training images for machine learning-based objection recognition systems
KR20180080630A (ko) * 2017-01-04 2018-07-12 삼성전자주식회사 핸드-아이 캘리브레이션을 수행하는 로봇 및 전자 장치
KR20180080730A (ko) 2017-01-04 2018-07-13 현대자동차주식회사 모터 제어 시스템 및 방법
KR20220090203A (ko) * 2020-12-22 2022-06-29 주식회사 에스원 딥 러닝 객체 검출 및 추적 기반 자동 데이터 라벨링 방법 및 이를 이용한 자동 데이터 라벨링 시스템

Also Published As

Publication number Publication date
KR102528594B1 (ko) 2023-05-08
WO2024063217A1 (ko) 2024-03-28

Similar Documents

Publication Publication Date Title
Romero-Ramirez et al. Speeded up detection of squared fiducial markers
Zubizarreta et al. A framework for augmented reality guidance in industry
JP5837508B2 (ja) 姿勢状態推定装置および姿勢状態推定方法
Azad et al. Stereo-based 6d object localization for grasping with humanoid robot systems
TWI419081B (zh) 提供擴增實境的標籤追蹤方法、系統與電腦程式產品
JP5873442B2 (ja) 物体検出装置および物体検出方法
JP5812599B2 (ja) 情報処理方法及びその装置
US6697072B2 (en) Method and system for controlling an avatar using computer vision
JP5715833B2 (ja) 姿勢状態推定装置および姿勢状態推定方法
Lee et al. Depth-assisted real-time 3D object detection for augmented reality
CN110926330B (zh) 图像处理装置和图像处理方法
Kim et al. Robust elevator button recognition in the presence of partial occlusion and clutter by specular reflections
JP6397354B2 (ja) 人物領域検出装置、方法およびプログラム
WO2019177539A1 (en) Method for visual inspection and apparatus thereof
Tofighi et al. Rapid hand posture recognition using adaptive histogram template of skin and hand edge contour
US10623629B2 (en) Imaging apparatus and imaging condition setting method and program
JP4379459B2 (ja) 物体照合方法,物体照合装置,およびそのプログラムを記録した記録媒体
Krispel et al. Automatic texture and orthophoto generation from registered panoramic views
KR102515259B1 (ko) Ai 물체 인식 학습용 라벨링 데이터 자동 수집 장치
Rink et al. Feature based particle filter registration of 3D surface models and its application in robotics
CN113689365B (zh) 一种基于Azure Kinect的目标跟踪定位方法
Zhang et al. Setforge-synthetic RGB-D training data generation to support CNN-based pose estimation for augmented reality
CN113139946A (zh) 一种基于视觉的衬衫污渍定位设备
Hartanto et al. Hand-motion-guided articulation and segmentation estimation
CN111915632A (zh) 一种基于机器学习的贫纹理目标物体真值数据库构建方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant