KR20230061612A - 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법 - Google Patents
머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법 Download PDFInfo
- Publication number
- KR20230061612A KR20230061612A KR1020210145325A KR20210145325A KR20230061612A KR 20230061612 A KR20230061612 A KR 20230061612A KR 1020210145325 A KR1020210145325 A KR 1020210145325A KR 20210145325 A KR20210145325 A KR 20210145325A KR 20230061612 A KR20230061612 A KR 20230061612A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- picking
- camera
- detection
- unit
- Prior art date
Links
- 238000010801 machine learning Methods 0.000 title claims abstract description 35
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000001514 detection method Methods 0.000 claims abstract description 163
- 238000004458 analytical method Methods 0.000 claims abstract description 24
- 238000006243 chemical reaction Methods 0.000 claims abstract description 21
- 238000007781 pre-processing Methods 0.000 claims abstract description 14
- 238000013527 convolutional neural network Methods 0.000 claims description 16
- 238000002372 labelling Methods 0.000 claims description 12
- 238000003860 storage Methods 0.000 claims description 12
- 230000008901 benefit Effects 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 239000012636 effector Substances 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000003706 image smoothing Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1684—Tracking a line or surface by means of sensors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/10—Image acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Automation & Control Theory (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Biodiversity & Conservation Biology (AREA)
- Image Analysis (AREA)
- Manipulator (AREA)
- Image Processing (AREA)
Abstract
머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 방법을 개시한다. 본 발명은 카메라를 통해 물체를 검출하고 검출된 물체를 피킹하기 위한 위치 및 방향을 자동으로 결정할 수 있다.
Description
본 발명은 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 방법에 관한 발명으로서, 더욱 상세하게는 카메라를 통해 물체를 검출하고 검출된 물체를 피킹하기 위한 위치 및 방향을 자동으로 결정하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법에 관한 것이다.
많은 로봇은 하나 이상의 엔드 이펙터(end effector)를 사용하여 하나 이상의 객체(object)를 조작하도록 프로그래밍된다. 예를 들어, 로봇은 엔드 이펙터를 사용하여 객체에 힘을 가하여 해당 객체를 움직임일 수 있다.
예를 들어, 로봇은 객체를 반드시 파지하지 않고 객체를 이동시키기 위해 파지용 엔드 엔드 이펙터 또는 다른 엔드 이펙터를 이용할 수 있다.
또한, 로봇은 "충격식" 그리퍼 또는 "진입식" 그리퍼와 같은 파지용 엔드 이펙터를 이용하여 제1위치에서 객체를 피킹(Picking)하고, 그 객체를 제2 위치로 이동시켜, 제2 위치에 객체를 내려놓을 수 있다.
이러한 로봇을 이용한 스마트 팩토리와 물류 자동화 시스템의 구축에 대한 필요성 및 중요성은 최근 수 년동안 대두되고 있으며 이와 같은 시스템 구축에 있어서 로봇과 카메라는 시스템의 구성에서 중요한 역할을 수행하고 있다.
특히, 물체를 생산 라인으로 이동시키거나 혹은 생산 라인에서 다른 위치로 배출하기 위한 반복적인 동작은 그 목적과 구현 방향이 명확하기 때문에 로봇을 통한 해결이 가능하다.
또한, 로봇의 팔에 설치된 그리퍼 또는 석션은 로봇의 동작 하나 하나를 순차적으로 교시하여 기록한 후에 센서 등과 연동해서 로봇이 반복적으로 동작하도록 구성되었다.
그러나, 생산 라인 등이 물체가 고정되어 있지 않을 경우에는 교시의 방법만으로는 물체의 피킹이 불가능하기 때문에 카메라를 이용하여 물체를 검출하고, 그 검출된 결과 값, 예를 들면 로봇 좌표계의 좌표값 및 자세를 계산해서 로봇이 물체를 피킹할 수 있도록 한다.
또한, 로봇과 카메라를 이용해서 피킹 작업을 수행할 경우 일반적으로 카메라를 이용하여 물체를 검출하고, 검출된 데이터를 기반으로 로봇 기반의 좌표계를 계산해서 로봇을 통해 피킹을 수행하도록 한다.
다만 물체의 피킹에 사용되는 대부분의 카메라 제품 군은 일반적으로 다양한 범주의 물체를 피킹할 수 있는 정확도를 구비하고, 로봇과의 연동이 쉬운 장점이 있지만 중소형 물류 창고나 공장에서 사용하기에는 고가의 가격이 요구되는 문제점이 있다.
또한, 인공지능(Artificial Intelligence,AI) 학습을 통한 물체 피킹 시스템은 주로 카메라를 통해서 얻는 영상 내의 물체를 검출하고 검출된 물체를 기반으로 별도의 후처리 작업을 통해서 물체 피킹 위치를 결정하는 방법을 사용한다.
그러나, 물체의 피킹 위치를 결정함에 있어 물체의 형태와 로봇팔의 끝단의 툴의 종류에 따라서 최적화된 피킹 위치 결정이 필요하며 이를 시스템에 적용하기 위해서 별도의 영상처리 응용 기술이 필요하기 때문에 비전문가가 피킹 위치 등을 결정하도록 적용하기에는 어려움이 있다.
또한 물체의 종류가 변경되거나 또는 작업 환경이 변경될 경우 피킹을 수행하기 위해서 추가적인 작업 수행을 위해 전문가가 아니면 불가능한 기술적 한계가 있는 문제점이 있다.
이러한 문제점을 해결하기 위하여, 본 발명은 카메라를 통해 물체를 검출하고 검출된 물체를 피킹하기 위한 위치 및 방향을 자동으로 결정하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법을 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위하여 본 발명의 일 실시 예는 머신 러닝을 이용한 물체의 피킹 자동화 시스템으로서, 카메라를 통해 획득한 이미지에서 제1 검출 모델을 이용하여 임의의 물체 영역을 결정한 물체 영역 이미지를 출력하고, 상기 물체 영역 이미지에서 제2 검출 모델을 이용하여 물체의 영역 내에서 물체를 피킹하기 위한 물체의 중심점과 물체의 방향 값을 검출하며, 상기 카메라의 해상도를 기준으로 상기 검출된 물체의 중심점을 카메라의 깊이 정보에 기반하여 카메라 좌표계로 변환하고, 상기 카메라 좌표계를 로봇 좌표계로 변환하여 출력하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 제1 검출 모델은 카메라에서 획득한 이미지를 분석하여 물체 사각형 영역을 표시하기 위한 두 개의 좌표 값을 갖는 물체 영역 이미지를 추출하여 출력하고, 상기 제2 검출 모델은 제1 검출 모델에서 출력되는 물체 영역 이미지를 분석하여 피킹을 위한 물체의 중심점과 방향 값을 출력하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 물체의 피킹 자동화 시스템은 카메라로부터 물체의 이미지를 프레임 단위로 획득하는 이미지 획득부; 상기 획득한 이미지를 전처리하는 전처리부; 상기 이미지를 입력으로 하는 합성곱 신경망(Convolutional Neural Networks, CNN) 기반의 제1 검출 모델을 이용하여 정확도 높은 하나의 물체 영역을 포함한 물체 영역 이미지를 결정하는 물체 영역 검출부; 상기 물체 영역 이미지를 입력으로 합성곱 신경망 기반의 제2 검출 모델을 이용하여 로봇의 피킹에 필요한 물체의 중심점과 물체의 방향 값을 검출하는 피킹 위치 검출부; 상기 물체 영역과 피킹 위치에 대한 결과 값을 미리 설정된 유효 범위와 비교하여 유효성을 검증하고, 유효성이 검증됨에 따라 좌표계 변환 작업이 수행되도록 최종 검출 위치를 좌표 변환부로 출력하는 결과 분석부; 및 상기 검출된 물체의 중심점과 물체의 방향 값을 상기 이미지 획득부에서 획득한 이미지 크기에 기반한 카메라 좌표계로 변환하되, 상기 물체의 중심점에 카메라의 깊이 값을 포함하여 변환하고, 상기 변환된 카메라 좌표계는 로봇 좌표계로 변환하여 로봇으로 출력하는 좌표 변환부;를 포함하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 결과 분석부는 유효성이 검증되지 않으면 상기 이미지 획득부에서 획득한 카메라 이미지와 피킹 위치 검출부에서 검출한 피킹 위치 검출 결과를 기반으로 이미지 레이블링 작업과, 제1 및 제2 검출 모델의 재학습 요청 신호를 출력하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 결과 분석부는 물체영역 검출부와 피킹 위치 검출부에서 검출된 결과를 미리 설정된 물체 영역 검출 신뢰 확률과 검출된 피킹 위치의 유효 값 범위와 비교하여 제1 및 제2 검출 모델의 유효성을 평가하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 물체의 피킹 자동화 시스템은 물체영역 검출부와 피킹위치 검출부에서 사용하는 제1 및 제2 검출 모델의 학습 결과 값을 저장하고, 상기 물체영역 검출부와 피킹위치 검출부에서 사용하는 합성곱 기반의 제1 및 제2 검출 모델을 학습하기 위해 물체의 영역을 사각형의 형태로 레이블링하고, 사각형 레이블링 영역 내에서 물체의 피킹 위치를 로봇 팔의 중심점과 z축의 방향으로 표시하여 모델 학습을 수행하는 모델 관리부;를 더 포함하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 물체의 피킹 자동화 시스템은 물체영역 검출부와 피킹위치 검출부의 제1 및 제2 검출 모델을 학습하기 위한 이미지 정보를 파일과 임의의 데이터베이스 형태로 저장하는 영상 저장부;를 더 포함하는 것을 특징으로 한다.
또한, 본 발명의 일 실시 예는 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 방법으로서, a) 제어 단말이 카메라로부터 물체의 이미지를 획득하는 단계; b) 상기 제어 단말이 상기 물체의 이미지에서 합성곱 신경망 기반의 제1 검출 모델을 이용하여 물체 영역 이미지를 검출하는 단계; c) 상기 제어 단말이 검출된 물체 영역 이미지를 입력으로 합성곱 신경망 기반의 제2 검출 모델을 이용하여 물체를 피킹하기 위한 중심점 및 방향 값을 검출하는 단계; d) 상기 제어 단말이 검출된 물체 영역과 물체의 중심점 및 방향 값에 대한 유효성을 판단하는 단계; 및 e) 상기 유효성이 미리 설정된 기준에 부합됨에 따라 상기 제어 단말이 카메라의 해상도를 기준으로 물체의 중심점을 카메라의 깊이 정보에 기반하여 카메라 좌표계로 변환하고, 상기 카메라 좌표계를 로봇 좌표계로 변환하여 출력하는 단계;를 포함한다.
또한, 상기 실시 예에 따른 제1 검출 모델은 카메라에서 획득한 이미지를 분석하여 물체 사각형 영역을 표시하기 위한 두 개의 좌표 값을 갖는 물체 영역 이미지를 추출하여 출력하고, 상기 제2 검출 모델은 제1 검출 모델에서 출력되는 물체 영역 이미지를 분석하여 물체의 피킹 중심점과 방향 값을 출력하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 a) 단계는 제어 단말이 카메라로부터 프레임 단위의 이미지를 획득하고, 상기 이미지를 개선하기 위한 전처리 작업을 추가 수행하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 d) 단계는 유효성이 검증되지 않으면, 상기 제어 단말이 유효성이 검증되지 못한 오검출 횟수를 카운트하여 미리 설정된 재학습 판단용 기준값과 비교하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 비교 결과, 오검출 횟수가 재학습 판단용 기준값 이하면 제어 단말은 현재의 제1 및 제2 검출 모델을 유지하고, 상기 오검출 횟수가 재학습 판단용 기준값 이상이면, 카메라에서 획득한 카메라 이미지와 상기 c) 단계에서 검출한 피킹 위치 검출 결과를 기반으로 이미지 레이블링 작업과 제1 및 제2 검출 모델의 재학습 알람 신호를 출력하는 것을 특징으로 한다.
또한, 상기 실시 예에 따른 d) 단계는 제어 단말이 검출된 물체 영역과 물체의 중심점 및 방향 값을 미리 설정된 물체 영역 검출 신뢰 확률과 검출된 피킹 위치의 유효 값 범위와 비교하여 제1 및 제2 검출 모델의 유효성을 평가하는 것을 특징으로 한다.
본 발명은 카메라를 통해 물체를 검출하고 검출된 물체를 피킹하기 위한 위치 및 방향을 자동으로 결정할 수 있는 장점이 있다.
또한, 본 발명은 새로운 물체를 피킹함에 있어서 사용자가 영상처리 기술에 대한 기반 지식 없이 구축된 카메라를 통해서 영상을 획득 및 저장할 수 있는 장점이 있다.
또한, 본 발명은 저장된 영상에서 준비된 도구를 이용해서 학습 영상에 필요한 영상 레이블링 작업, 즉 물체 사각형 영역 설정 및 설정된 영역에서 피킹의 중심점과 방향을 지정하고 데이터베이스의 형태로 저장함으로써, 물체 피킹을 위한 모델의 훈련을 수행할 수 있는 장점이 있다.
또한, 본 발명은 훈련된 모델을 통해서 카메라에서 획득된 영상을 작업 물체의 영역과 물체 영역 내에서 피킹을 위한 물체의 중심점과 방향을 검출할 수 있고, 최종 결과를 로봇 좌표계로 변환하는 일련의 과정을 자동으로 수행할 수 있는 장점이 있다.
또한, 본 발명은 피킹의 다양한 포즈가 요구되는 복잡한 빈피킹(bin picking)을 타겟으로 하지 않고 로봇의 z축의 회전만으로 피킹이 가능한 생산 라인으로 시스템의 적용 분야를 제한하는 대신 작업 물체의 피킹을 별도의 영상 처리 기술 없이도 쉽게 운용이 가능한 장점이 있다.
또한, 본 발명은 별도의 학습 영상을 저장하기 위한 저장부를 운용함으로써, 사용자가 별도의 학습 영상 관리 없이 시스템 내에서 학습 영상을 관리할 수 있는 장점이 있다.
또한, 본 발명은 시스템의 운용 중에 물체 검출이 소정의 범위 이내로 내려갈 경우 또는 피킹 위치 검출 값의 분포가 설정된 기준을 벗어날 경우 사용자에게 단계 별로 현재 시스템의 개선이 필요함을 인지할 수 있는 기회를 제공할 수 있는 장점이 있다.
도1은 본 발명의 일 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템을 설명하기 위해 나타낸 예시도.
도2는 도1의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 단말 구성을 나타낸 블록도.
도3은 도1의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템을 통해 검출되는 물체 영역을 나타낸 예시도.
도4는 도1의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템을 통해 검출되는 피킹의 중심점과 Z축 방향의 검출을 나타낸 예시도.
도5는 본 발명의 일 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 방법을 설명하기 위해 나타낸 흐름도.
도6은 도5의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 방법을 설명하기 위해 나타낸 다른 흐름도.
도2는 도1의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 단말 구성을 나타낸 블록도.
도3은 도1의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템을 통해 검출되는 물체 영역을 나타낸 예시도.
도4는 도1의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템을 통해 검출되는 피킹의 중심점과 Z축 방향의 검출을 나타낸 예시도.
도5는 본 발명의 일 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 방법을 설명하기 위해 나타낸 흐름도.
도6은 도5의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 방법을 설명하기 위해 나타낸 다른 흐름도.
이하에서는 본 발명의 바람직한 실시 예 및 첨부하는 도면을 참조하여 본 발명을 상세히 설명하되, 도면의 동일한 참조부호는 동일한 구성요소를 지칭함을 전제하여 설명하기로 한다.
본 발명의 실시를 위한 구체적인 내용을 설명하기에 앞서, 본 발명의 기술적 요지와 직접적 관련이 없는 구성에 대해서는 본 발명의 기술적 요지를 흩뜨리지 않는 범위 내에서 생략하였음에 유의하여야 할 것이다.
또한, 본 명세서 및 청구범위에 사용된 용어 또는 단어는 발명자가 자신의 발명을 최선의 방법으로 설명하기 위해 적절한 용어의 개념을 정의할 수 있다는 원칙에 입각하여 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 할 것이다.
본 명세서에서 어떤 부분이 어떤 구성요소를 "포함"한다는 표현은 다른 구성요소를 배제하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.
또한, "‥부", "‥기", "‥모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어, 또는 그 둘의 결합으로 구분될 수 있다.
또한, "적어도 하나의" 라는 용어는 단수 및 복수를 포함하는 용어로 정의되고, 적어도 하나의 라는 용어가 존재하지 않더라도 각 구성요소가 단수 또는 복수로 존재할 수 있고, 단수 또는 복수를 의미할 수 있음은 자명하다 할 것이다.
또한, 각 구성요소가 단수 또는 복수로 구비되는 것은, 실시 예에 따라 변경가능하다 할 것이다.
또한, 본 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 본 명세서에서 ‘ 단말’ 은 휴대성 및 이동성이 보장된 무선 통신 장치일 수 있으며, 예를 들어 스마트 폰, 태블릿 PC 또는 노트북 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치일 수 있다. 또한, ‘ 단말’ 은 네트워크를 통해 다른 단말 또는 서버 등에 접속할 수 있는 PC 등의 유선 통신 장치인 것도 가능하다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법의 바람직한 실시예를 상세하게 설명한다.
도1은 본 발명의 일 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템을 설명하기 위해 나타낸 예시도이고, 도2는 도1의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 단말 구성을 나타낸 블록도이며, 도3은 도1의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템을 통해 검출되는 물체 영역을 나타낸 예시도이고, 도4는 도1의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템을 통해 검출되는 피킹의 중심점과 Z축 방향의 검출을 나타낸 예시도이다.
도1 내지 도4를 참조하면, 본 발명의 일 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템은 카메라(100)를 통해 획득한 이미지에서 제1 검출 모델을 이용하여 임의의 물체 영역을 결정한 물체 영역 이미지를 출력할 수 있다.
또한, 상기 물체의 피킹 자동화 시스템은 물체 영역 이미지에서 제2 검출 모델을 이용하여 물체의 영역 내에서 물체를 피킹하기 위한 물체의 중심점과 물체의 방향 값을 검출할 수 있다.
또한, 상기 물체의 피킹 자동화 시스템은 카메라(100)의 해상도를 기준으로 상기 검출된 물체의 중심점을 카메라의 깊이 정보에 기반하여 카메라 좌표계로 변환하고, 상기 카메라 좌표계를 로봇 좌표계로 변환하여 로봇(500)으로 출력할 수 있다.
이를 위해, 상기 물체의 피킹 자동화 시스템은 물체의 이미지를 획득하기 위한 카메라(100)와, 피킹을 요구하는 물체(300)가 이동하기 위한 생산 라인(200)과, 피킹의 주체가 되는 물체(300)와, 카메라(100)를 통해서 이미지를 획득한 후에 물체의 영역을 검출하고, 피킹에 필요한 위치를 획득해서 로봇(500)으로 전달하기 위한 제어 단말(400)과, 물체(300)의 피킹에 사용하기 위한 로봇(500)으로 구성될 수 있다.
상기 카메라(100)는 생산 라인(200)을 따라 이동하는 물체(300)를 프레임 단위의 이미지로 촬영하여 출력하는 구성으로서, CCD, CMOS 등의 이미지 센서, 또는 광학 신호를 전기 신호로 변환하여 출력하는 광전변환 센서로 이루어진 카메라 중 어느 하나로 구성될 수 있다.
또한, 상기 카메라(100)는 내재된 레이저 발생부에서 출력된 레이저 빔의 반사시간을 이용하여 물체(300)와의 거리 정보 즉, 깊이 정보를 산출하고, 산출된 깊이 정보는 촬영을 통해 획득한 이미지 정보와 함께 출력될 수 있도록 3차원 시각 센서 또는 스테레오 카메라로 구성될 수 있다.
또한, 상기 카메라(100)는 조명, 촬영각도, 촬영구도, 사진 해상도 등의 카메라 환경 정보를 제공할 수도 있다.
상기 제어 단말(400)은 피킹에 필요한 물체의 위치 정보를 획득해서 로봇(500)으로 전달하는 구성으로서, 이미지 획득부(410)와, 전처리부(420)와, 물체 영역 검출부(430)와, 피킹 위치 검출부(440)와, 결과 분석부(450)와, 좌표 변환부(460)와, 모델 관리부(470)와, 영상 저장부(480)를 포함하여 구성될 수 있다.
상기 이미지 획득부(410)는 카메라(100)로부터 물체의 이미지를 수신하고, 수신된 이미지를 프레임 단위로 구분하여 출력한다.
또한, 상기 이미지 획득부(410)는 카메라(100)로부터 획득한 깊이 정보는 좌표계 변환부(460)에서 최종적으로 검출된 물체의 피킹 위치를 로봇 좌표계로 변환할 때 사용될 수 있도록 물체 영역의 검출과 피킹 위치의 검출을 위해 상기 깊이 정보를 제외한 화소 정보를 사용할 수 있다.
상기 전처리부(420)는 획득한 이미지를 전처리하는 구성으로서, 획득된 이미지에서 노이즈를 제거하거나 또는 이미지 평활화 알고리즘 등을 이용하여 이미지의 밝기 등을 개선하기 위한 전처리 과정을 수행할 수 있다.
또한, 상기 전처리 과정은 물체 영역의 검출과 피킹 위치의 검출 모두 이미지 학습을 기반으로 하는 합성곱 신경망 모델을 구성하고 있기 때문에 학습 이미지와 실제 운용 시의 이미지가 조명 등에 의한 큰 변화가 없을 경우 생략할 수도 있다.
상기 물체 영역 검출부(430)는 이미지 획득부(410) 또는 전처리부(420)로부터 이미지를 입력받아 합성곱 신경망(Convolutional Neural Networks, CNN) 기반의 제1 검출 모델을 이용하여 물체 영역을 포함한 물체 영역 이미지를 결정하는 구성으로서, 다수의 물체 영역 이미지 중에서 정확도가 높은, 예를 들어 물체 영역에 대한 신뢰 확률 값이 가장 높은 하나의 물체 영역 이미지를 추출한다.
여기서, 물체 영역은 배경을 최소화하는 물체의 영역을 사각형으로 표시한 것으로서, 도3(a)와 같이, 도면상 좌측으로 기울어진 물체 1(300a)를 사각 형상의 물체 영역 이미지(110a)로 표시하거나, 도3(b)와 같이 물체 2(300b)를 사각 형상의 물체 영역 이미지 1(110b)로 표시하거나, 도3(c)와 같이 도면상 우측으로 기울어진 물체 3(300c)을 사각 형상의 물체 영역 이미지 2(300c)로 표시하여 출력할 수 있다.
또한, 상기 제1 검출 모델은 카메라(100)에서 획득한 이미지를 분석하여 물체 사각형 영역을 표시하기 위한 두 개의 좌표(x, y) 값을 갖는 물체 영역 이미지를 추출하여 출력할 수 있다.
또한, 상기 제1 검출 모델은 검출된 물체 영역에 대한 신뢰 확률 값을 예측하여 출력할 수 있다.
또한, 물체 영역을 검출하는 제1 검출 모델은 모델 관리부(470)에서 관리될 수 있고, 시스템의 초기화 단계에서 실행에 필요한 모델 정보를 상기 모델 관리부(470)에서 제공받을 수 있다.
또한, 상기 물체 영역 검출부(430)는 일반적으로 물체 영역 검출에 사용되는 모델을 사용할 수도 있고, 이미지 획득의 환경과 물체가 피킹으로 고정되어 있기 때문에 계산 속도가 작은 모델을 사용해도 무방하다.
상기 피킹 위치 검출부(440)는 물체 영역 검출부(430)에서 검출된 물체 영역 이미지를 입력으로 합성곱 신경망 기반의 제2 검출 모델을 이용하여 로봇의 피킹에 필요한 물체의 중심점과 물체의 방향 값을 검출할 수 있다.
즉, 상기 제2 검출 모델은 제1 검출 모델에서 출력되는 물체 영역 이미지를 분석하여 피킹을 위한 물체의 중심점과 방향 값을 출력한다.
여기서, 피킹을 위한 물체의 중심점은 입력 이미지에서 특정 위치를 (x, y)의 형태로 나타내고, 해당 중심점을 기준으로 물체가 회전되어 있는 방향을 라디안(radian)으로 표시한다.
이를 더욱 상세하게 설명하면, 상기 피킹 위치 검출부(440)에서 사용하는 제2 검출 모델은 제1 검출 모델에서 검출된 물체 영역 이미지(110a, 110b, 110c)를 입력으로 모델링을 수행하고, 출력은 세 개의 실수값(x, y, θ)을 출력으로 한다.
즉, 물체 영역 이미지(110a)에서 도4(a)와 같이 물체 1(300a)의 특정 위치(x1, y1)를 중심점으로 하고, 상기 중심점을 기준으로 한 수직방향 기준선(R1)과 물체(300a)가 회전된 방향의 기준선(R2)이 이루는 각도(θ2)를 추출하여 (x2, y2, θ2) 값으로 출력할 수 있다.
또한, 물체 영역 이미지(110b)에서 도4(b)와 같이 물체 2(300b)의 특정 위치(x2, y2)를 중심점으로 하고, 상기 중심점을 기준으로 한 수직방향 기준선(R1)과 물체 1(300b)이 회전된 방향의 기준선(R2)이 이루는 각도(θ1)를 추출하여 (x1, y1, θ1) 값으로 출력할 수 있다.
또한, 물체 영역 이미지(110c)에서 도4(c)와 같이 물체 3(300c)의 특정 위치(x3, y3)를 중심점으로 하고, 상기 중심점을 기준으로 한 수직방향 기준선(R1)과 물체 2(300c)가 회전된 방향의 기준선(R2)이 이루는 각도(θ3)를 추출하여 (x3, y3, θ3) 값으로 출력할 수 있다.
상기 합성곱 신경망 기반의 제1 및 제2 검출 모델은 머신러닝중에서 딥러닝(Deep learning)이라는 방법을 통해 만들어진 검출 모델들의 종류라고 볼 수 있다.
따라서, 제1 및 제2 검출 모델은 딥러닝 모델 또는 딥러닝 검출 모델의 표현으로 사용될 수도 있다.
또한, 머신러닝은 복잡한 시스템이 명시적으로 프로그래밍되지 않고서, 경험으로부터 자동으로 학습하고 개선할 수 있게 하는 인공 지능의 응용이다.
또한, 머신러닝 모델들의 정확도 및 유효성은 그들 모델들을 훈련시키는 데 사용되는 데이터에 부분적으로 의존할 수 있다.
또한, 제1 및 제2 검출 모델은 다수의 학습 데이터를 서로 비교한 결과 값에 기반하여 선택된 다수의 촬영 이미지와, 물체 영역 이미지를 학습 데이터로 반복 학습 할 수 있다.
즉, 물체의 중심점과 물체의 방향 값을 검출하기 위한 이미지로 분류된 학습 데이터를 기반으로 물체의 중심점과 물체의 방향을 분석하는 학습을 하게 된다.
또한, 다양한 환경 조건, 예를 들어, 조명, 촬영각도, 촬영구도, 사진 해상도, 객체의 위치 등 다양한 여건에서 촬영될 수 있는 물체 영역을 감안하여 물체 영역 이미지에 대한 다양한 조건 들의 이미지들을 사전에 학습함으로써, 실제 환경에서 입력되는 카메라를 이용하여 촬영한 이미지와 검출된 물체 영여역 이미지들에 대한 물체의 중심점 및 방향의 인식률과 분석률이 향상될 수 있도록 한다.
상기 결과 분석부(450)는 물체 영역과 피킹 위치에 대한 결과 값을 미리 설정된 유효 범위와 비교하여 유효성을 검증하고, 유효성이 검증되면 좌표계 변환 작업이 수행되도록 최종 검출 위치를 좌표 변환부(460)로 출력할 수 있다.
즉, 상기 결과 분석부(450)는 물체영역 검출부(430)와 피킹 위치 검출부(440)에서 검출된 결과를 미리 설정된 물체 영역 검출 신뢰 확률 기준 값과 검출된 피킹 위치의 유효 값 범위와 비교하여 제1 및 제2 검출 모델의 유효성을 평가할 수 있다.
상기 결과 분석부(450)는 물체 영역 검출부(430)에서 검출된 물체 영역에 대한 신뢰 확률 값을 미리 설정된 기준값과 비교하고, 상기 신뢰 확률 값이 미리 설정된 기준값 이상일 경우에는 추출된 물체 영역과 피킹 위치에 대한 결과 값을 최종 검출 위치로 결정하여 로봇(500)에 전달될 수 있도록 좌표계 변환부(460)로 전달한다.
이때, 상기 결과 분석부(450)는 좌표계 변환부(460)로 좌표 정보를 전달할 때, 카메라의 깊이 정보를 포함하여 변환된 (x, y, z)값과 방향 값(θ)을 전달한다.
또한, 상기 결과 분석부(450)는 상기 신뢰 확률 값이 미리 설정된 기준값 미만일 경우에는 영상 저장부(480)에 카메라(100)를 통해 획득한 이미지와 피킹 위치 검출 결과가 저장되도록 한다.
즉, 상기 결과 분석부(450)는 물체영역 검출부(430)와 피킹 위치 검출부(440)에서 검출된 결과가 상기 기준 값 이하로 유효성이 검증되지 않으면, 상기 이미지 획득부(410)에서 획득한 카메라 이미지와 피킹 위치 검출부(440)에서 검출한 피킹 위치 검출 결과를 기반으로 이미지 레이블링 작업과, 제1 및 제2 검출 모델의 재학습 요청 신호를 출력할 수 있다.
이를 위해, 상기 결과 분석부(450)는 영상 저장부(480)에 저장될 수 있도록 하고, 상기 영상 저장부(480)에 저장된 새로운 이미지들은 사용자가 영상 레이블링 작업을 추가적으로 수행하고 검출 모델들을 재훈련할 수 있도록 기회를 부여할 수 있다.
또한, 상기 결과 분석부(450)는 카메라(100)가 획득한 이미지의 해상도를 기준으로 값을 변경할 수 있다.
즉, 상기 결과 분석부(450)는 피킹 위치 검출부(440)에서 검출된 결과값(x, y, θ)이 이미지 획득부(410)에서 획득된 이미지의 해상도가 아니고, 물체 영역 검출부(430)를 통해서 물체 영역으로 검출된 일부의 이미지를 가지고 처리되었기 때문에, 검출 결과값, 특히 회전값(θ)을 제외한 (x, y)값을 카메라(100)가 획득한 이미지의 해상도를 기준으로 값을 변경할 수 있다.
이를 통해, 상기 결과 분석부(450)는 좌표계 변환부(460)에서 카메라 좌표계의 좌표를 로봇 좌표계의 좌표계로 변환할 수 있도록 한다.
상기 좌표 변환부(460)는 검출된 물체의 중심점과 물체의 방향 값을 상기 이미지 획득부(410)에서 획득한 이미지 크기에 기반한 카메라 좌표계로 변환한다.
또한, 상기 좌표 변환부(460)는 결과 분석부(450)에서 유효성을 검증 받은 최종 위치 정보로서, 물체의 중심점에 카메라의 깊이 값(정보)을 포함하여 변환하고, 상기 변환된 카메라 좌표계는 로봇 좌표계로 변환하여 로봇(500)으로 출력되도록 한다.
또한, 상기 좌표 변환부(460)는 카메라 좌표계에서 로봇 좌표계로의 변환하는 과정에 별도의 핸드아이 캘리브레이션 등을 통해서 변환 행렬을 결정할 수도 있다.
상기 모델 관리부(470)는 물체영역 검출부(430)과 피킹위치 검출부(440)에서 사용하는 제1 및 제2 검출 모델의 학습 결과 값을 저장하고, 시스템의 초기화 단계에서 물체영역 검출부(430)과 피킹위치 검출부(440)에서 사용할 수 있도록 배포하는 기능을 수행할 수 있다.
또한, 상기 모델 관리부(470)는 물체 영역 검출부(430)와 피킹위치 검출부(440)에서 사용하는 합성곱 기반의 제1 및 제2 검출 모델을 학습하기 위해 물체의 영역을 사각형의 형태로 레이블링하고, 사각형 레이블링 영역 내에서 물체의 피킹 위치를 로봇 팔의 중심점과 z축의 방향으로 표시하여 모델 학습을 수행할 수 있다.
상기 영상 저장부(480)는 물체영역 검출부(430)와 피킹위치 검출부(440)의 제1 및 제2 검출 모델을 학습하기 위한 이미지 정보를 파일과 임의의 데이터베이스 형태로 저장한다.
즉, 상기 영상 저장부(480)는 두 개의 데이터베이스로 구성될 수 있고, 하나는 물체영역 검출부(430)에서 사용하는 제1 검출 모델의 학습 이미지 정보를 저장하고, 다른 하나는 피킹 위치 검출부(440)의 제2 검출 모델 학습 이미지 정보를 저장할 수 있다.
또한, 각 데이터베이스는 공통적으로 이미지의 파일 위치와 레이블링 여부, 이미지의 해상도를 공통의 필드로 가질 수 있고, 물체 영역 검출부(430)의 제1 검출 모델은 물체의 사각형 영역을 표시하기 위한 두 개의 좌표값을 필드로 가질 수 있으며, 피킹 위치 검출부(430)의 제2 검출 모델은 피킹을 위한 물체의 중심점과 방향 값을 별도의 필드로 가질 수 있다.
다음은 본 발명의 일 실시 예는 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 방법을 설명한다.
도5는 본 발명의 일 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 방법을 설명하기 위해 나타낸 흐름도이고, 도6은 도5의 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 방법을 설명하기 위해 나타낸 다른 흐름도이다.
도1 내지 도6을 참조하면, 본 발명의 일 실시 예에 따른 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 방법은 제어 단말(400)의 이미지 획득부(410)가 카메라(100)로부터 생산 라인(200)을 통해서 이동하는 물체(300)를 촬영한 이미지를 획득(S100)한다.
상기 S100 단계에서 획득한 이미지 정보는 미리 지정된 해상도의 화소 값들과 깊이 값들로 구성될 수 있다.
또한, 상기 제어 단말(400)의 전처리부(420)는 카메라(100)로부터 프레임 단위의 이미지를 획득하고, 상기 획득된 이미지에서 노이즈를 제거하거나 또는 이미지 평활화 알고리즘 등을 이용하여 이미지의 밝기 등을 개선하기 위한 전처리 과정을 수행(S110)할 수 있다.
상기 깊이 값은 검출 결과 분석부(450)에서 카메라 좌표계를 기준으로 최종 피킹 위치를 변화할 때 사용된다.
계속해서, 상기 제어 단말(400)의 물체 영역 검출부(430)는 S100 또는 S110 단계에서 획득한 물체(300)를 촬영한 이미지로부터 모델 관리부(470)에서 학습된 합성곱 신경망 기반의 제1 검출 모델을 이용하여 물체 영역 이미지를 검출(S120)한다.
이때, 물체 영역을 적어도 하나 이상 검출할 수 있는데, 하나 이상의 물체가 검출되도, 로봇(500)이 피킹 가능한 물체의 개수는 1개 이므로 물체 영역을 검출하는 단계에서는 신뢰 확률이 가장 높은 1개의 물체 영역을 검출한다.
또한, 상기 S120 단계에서 제1 검출 모델은 카메라(100)를 통해 획득한 이미지를 분석하여 물체를 포함한 사각형 영역을 표시하기 위한 두 개의 좌표 값을 갖는 물체 영역 이미지를 추출하여 출력할 수 있다.
또한, 상기 S120 단계에서 제어 단말(400)의 물체 영역 검출부(430)는 물체의 영역을 검출했는지 판단(S130)하고, 상기 S130 단계의 판단 결과, 물체의 영역이 검출되지 않았으면, 획득한 카메라 이미지에 대한 추가 작은 진행하지 않고 종료한다.
계속해서, 상기 S130 단계의 판단 결과 물체 영역이 검출되면, 상기 제어 단말(400)의 피킹 위치 검출부(440)는 검출된 물체 영역 이미지를 입력으로 합성곱 신경망 기반의 제2 검출 모델을 이용하여 물체를 피킹하기 위한 중심점 및 방향 값을 검출(S140)한다.
즉, 상기 S140 단계에서 제2 검출 모델은 제1 검출 모델에서 출력되는 물체 영역 이미지를 분석하여 물체의 피킹 중심점과 방향 값을 출력한다.
또한, 상기 제어 단말(400)의 결과 분석부(450)는 S140 단계에서 검출된 물체 영역과 물체의 중심점 및 방향 값에 대한 유효성을 판단(S150)한다.
상기 S150 단계에서, 결과 분석부(450)는 물체영역 검출부(430)와 피킹 위치 검출부(440)에서 검출된 결과를 미리 설정된 물체 영역 검출 신뢰 확률 기준 값과 검출된 피킹 위치의 유효 값 범위와 각각 비교하여 제1 및 제2 검출 모델을 통해 검출된 결과의 유효성을 검증한다.
상기 S150 단계의 판단 결과, 상기 물체영역 검출부(430)와 피킹 위치 검출부(440)에서 검출된 결과의 유효성이 미리 설정된 기준에 부합되어 유효성 검증이 완료되면, 상기 제어 단말(400)의 좌표 변환부(460)는 카메라(100)의 해상도를 기준으로 물체의 중심점을 카메라의 깊이 정보에 기반하여 카메라 좌표계로 변환(S160)하고, 상기 S160 단계에서 변환된 카메라 좌표계는 핸드 아이 캘리브레이션을 이용하여 로봇 좌표계로 변환하여 출력(S170)한다.
한편, 상기 S150 단계의 판단 결과, 물체영역 검출부(430)와 피킹 위치 검출부(440)에서 검출된 결과가 물체 영역 검출 신뢰 확률 기준 값과 검출된 피킹 위치의 유효 값 범위에 부합되지 않아서 유효성이 검증되지 못하면, 상기 제어 단말(400)의 결과 분석부(450)는 이미지 획득부(410)에서 획득한 카메라 이미지와 피킹 위치 검출부(440)에서 검출한 피킹 위치 검출 결과를 영상 저장부(480)에 저장(S161)한다.
또한, 상기 결과 분석부(450)는 유효성이 검증되지 못한 오검출 횟수를 카운트하여 미리 설정된 재학습 판단용 기준값과 비교(S171)하고, 상기 S171 단계의 비교 결과, 오검출 횟수가 재학습 판단용 기준값 이하면 현재의 제1 및 제2 검출 모델이 유지되도록 한다.
또한, 상기 S171 단계의 비교 결과, 상기 오검출 횟수가 재학습 판단용 기준값 이상이면, 사용자가 상기 영상 저장부(480)에 저장된 새로운 이미지들 즉, 유효성이 검증되지 못한 이미지 획득부(410)에서 획득한 카메라 이미지와 피킹 위치 검출부(440)에서 검출한 피킹 위치 검출 결과를 이용하여 이미지 레이블링 작업을 추가적으로 수행하며 제1 및 제2 검출 모델들의 재학습을 위한 알람 신호를 출력(S181)한다.
따라서, 카메라를 통해 물체를 검출하고 검출된 물체를 피킹하기 위한 위치 및 방향을 자동으로 결정할 수 있다.
또한, 새로운 물체를 피킹함에 있어서 사용자가 영상처리 기술에 대한 기반 지식 없이 구축된 카메라를 통해서 영상을 획득 및 저장할 수 있
또한, 저장된 영상에서 준비된 도구를 이용해서 학습 영상에 필요한 영상 레이블링 작업, 즉 물체 사각형 영역 설정 및 설정된 영역에서 피킹의 중심점과 방향을 지정하고 데이터베이스의 형태로 저장함으로써, 물체 피킹을 위한 모델의 훈련을 수행할 수 있다.
상기와 같이, 본 발명의 바람직한 실시 예를 참조하여 설명하였지만 해당 기술 분야의 숙련된 당업자라면 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
또한, 본 발명의 특허청구범위에 기재된 도면번호는 설명의 명료성과 편의를 위해 기재한 것일 뿐 이에 한정되는 것은 아니며, 실시예를 설명하는 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다.
또한, 상술된 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있으므로, 이러한 용어들에 대한 해석은 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
또한, 명시적으로 도시되거나 설명되지 아니하였다 하여도 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기재사항으로부터 본 발명에 의한 기술적 사상을 포함하는 다양한 형태의 변형을 할 수 있음은 자명하며, 이는 여전히 본 발명의 권리범위에 속한다.
또한, 첨부하는 도면을 참조하여 설명된 상기의 실시예들은 본 발명을 설명하기 위한 목적으로 기술된 것이며 본 발명의 권리범위는 이러한 실시예에 국한되지 아니한다.
100 : 카메라
110a : 물체 영역 이미지
110b : 물체 영역 이미지 1 110c : 물체 영역 이미지 2
200 : 생산 라인 300 : 물체
300a : 물체 1 300b : 물체 2
300c : 물체 3 400 : 제어 단말
410 : 이미지 획득부 420 : 전처리부
430 : 물체 영역 검출부 440 : 피킹 위치 검출부
450 : 결과 분석부 460 : 좌표 변환부
470 : 모델 관리부 480 : 영상 저장부
500 : 로봇
110b : 물체 영역 이미지 1 110c : 물체 영역 이미지 2
200 : 생산 라인 300 : 물체
300a : 물체 1 300b : 물체 2
300c : 물체 3 400 : 제어 단말
410 : 이미지 획득부 420 : 전처리부
430 : 물체 영역 검출부 440 : 피킹 위치 검출부
450 : 결과 분석부 460 : 좌표 변환부
470 : 모델 관리부 480 : 영상 저장부
500 : 로봇
Claims (13)
- 카메라(100)를 통해 획득한 이미지에서 제1 검출 모델을 이용하여 임의의 물체 영역을 결정한 물체 영역 이미지를 출력하고,
상기 물체 영역 이미지에서 제2 검출 모델을 이용하여 물체의 영역 내에서 물체를 피킹하기 위한 물체의 중심점과 물체의 방향 값을 검출하며,
상기 카메라(100)의 해상도를 기준으로 상기 검출된 물체의 중심점을 카메라의 깊이 정보에 기반하여 카메라 좌표계로 변환하고, 상기 카메라 좌표계를 로봇 좌표계로 변환하여 출력하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템. - 제 1 항에 있어서,
상기 제1 검출 모델은 카메라에서 획득한 이미지를 분석하여 물체 사각형 영역을 표시하기 위한 두 개의 좌표 값을 갖는 물체 영역 이미지를 추출하여 출력하고,
상기 제2 검출 모델은 제1 검출 모델에서 출력되는 물체 영역 이미지를 분석하여 피킹을 위한 물체의 중심점과 방향 값을 출력하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템. - 제 1 항에 있어서,
상기 물체의 피킹 자동화 시스템은 카메라(100)로부터 물체의 이미지를 프레임 단위로 획득하는 이미지 획득부(410);
상기 획득한 이미지를 전처리하는 전처리부(420);
상기 이미지를 입력으로 하는 합성곱 신경망(Convolutional Neural Networks, CNN) 기반의 제1 검출 모델을 이용하여 정확도 높은 하나의 물체 영역을 포함한 물체 영역 이미지를 결정하는 물체 영역 검출부(430);
상기 물체 영역 이미지를 입력으로 합성곱 신경망 기반의 제2 검출 모델을 이용하여 로봇의 피킹에 필요한 물체의 중심점과 물체의 방향 값을 검출하는 피킹 위치 검출부(440);
상기 물체 영역과 피킹 위치에 대한 결과 값을 미리 설정된 유효 범위와 비교하여 유효성을 검증하고, 유효성이 검증됨에 따라 좌표계 변환 작업이 수행되도록 최종 검출 위치를 좌표 변환부(460)로 출력하는 결과 분석부(450); 및
상기 검출된 물체의 중심점과 물체의 방향 값을 상기 이미지 획득부(410)에서 획득한 이미지 크기에 기반한 카메라 좌표계로 변환하되,
상기 물체의 중심점에 카메라의 깊이 값을 포함하여 변환하고, 상기 변환된 카메라 좌표계는 로봇 좌표계로 변환하여 로봇(500)으로 출력하는 좌표 변환부(460);를 포함하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템. - 제 3 항에 있어서,
상기 결과 분석부(450)는 유효성이 검증되지 않으면 상기 이미지 획득부(410)에서 획득한 카메라 이미지와 피킹 위치 검출부(440)에서 검출한 피킹 위치 검출 결과를 기반으로 이미지 레이블링 작업과, 제1 및 제2 검출 모델의 재학습 요청 신호를 출력하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템. - 제 4 항에 있어서,
상기 결과 분석부(450)는 물체영역 검출부(430)와 피킹 위치 검출부(440)에서 검출된 결과를 미리 설정된 물체 영역 검출 신뢰 확률과 검출된 피킹 위치의 유효 값 범위와 비교하여 제1 및 제2 검출 모델의 유효성을 평가하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템. - 제 3 항에 있어서,
상기 물체의 피킹 자동화 시스템은 물체영역 검출부(430)과 피킹위치 검출부(440)에서 사용하는 제1 및 제2 검출 모델의 학습 결과 값을 저장하고,
상기 물체영역 검출부(430)와 피킹위치 검출부(440)에서 사용하는 합성곱 기반의 제1 및 제2 검출 모델을 학습하기 위해 물체의 영역을 사각형의 형태로 레이블링하고, 사각형 레이블링 영역 내에서 물체의 피킹 위치를 로봇 팔의 중심점과 z축의 방향으로 표시하여 모델 학습을 수행하는 모델 관리부(470);를 더 포함하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템. - 제 3 항에 있어서,
상기 물체의 피킹 자동화 시스템은 물체영역 검출부(430)와 피킹위치 검출부(440)의 제1 및 제2 검출 모델을 학습하기 위한 이미지 정보를 파일과 임의의 데이터베이스 형태로 저장하는 영상 저장부(480);를 더 포함하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템. - a) 제어 단말(400)이 카메라(100)로부터 물체의 이미지를 획득하는 단계;
b) 상기 제어 단말(400)이 상기 물체의 이미지에서 합성곱 신경망 기반의 제1 검출 모델을 이용하여 물체 영역 이미지를 검출하는 단계;
c) 상기 제어 단말(400)이 검출된 물체 영역 이미지를 입력으로 합성곱 신경망 기반의 제2 검출 모델을 이용하여 물체를 피킹하기 위한 중심점 및 방향 값을 검출하는 단계;
d) 상기 제어 단말(400)이 검출된 물체 영역과 물체의 중심점 및 방향 값에 대한 유효성을 판단하는 단계; 및
e) 상기 유효성이 미리 설정된 기준에 부합됨에 따라 상기 제어 단말(400)이 카메라(100)의 해상도를 기준으로 물체의 중심점을 카메라의 깊이 정보에 기반하여 카메라 좌표계로 변환하고, 상기 카메라 좌표계를 로봇 좌표계로 변환하여 출력하는 단계;를 포함하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 방법. - 제 8 항에 있어서,
상기 제1 검출 모델은 카메라에서 획득한 이미지를 분석하여 물체 사각형 영역을 표시하기 위한 두 개의 좌표 값을 갖는 물체 영역 이미지를 추출하여 출력하고,
상기 제2 검출 모델은 제1 검출 모델에서 출력되는 물체 영역 이미지를 분석하여 물체의 피킹 중심점과 방향 값을 출력하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 방법. - 제 8 항에 있어서,
상기 a) 단계는 제어 단말(400)이 카메라(100)로부터 프레임 단위의 이미지를 획득하고, 상기 이미지를 개선하기 위한 전처리 작업을 추가 수행하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 방법. - 제 8 항에 있어서,
상기 d) 단계는 유효성이 검증되지 않으면, 상기 제어 단말(400)은 유효성이 검증되지 못한 오검출 횟수를 카운트하여 미리 설정된 재학습 판단용 기준값과 비교하는 단계를 더 포함하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 방법. - 제 11 항에 있어서,
상기 비교 단계 결과, 오검출 횟수가 재학습 판단용 기준값 이하면 제어 단말(400)은 현재의 제1 및 제2 검출 모델을 유지하고, 상기 오검출 횟수가 재학습 판단용 기준값 이상이면, 카메라(100)에서 획득한 카메라 이미지와 상기 c) 단계에서 검출한 피킹 위치 검출 결과를 기반으로 이미지 레이블링 작업과 제1 및 제2 검출 모델의 재학습 알람 신호를 출력하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 방법. - 제 8 항에 있어서,
상기 d) 단계는 제어 단말(400)이 검출된 물체 영역과 물체의 중심점 및 방향 값을 미리 설정된 물체 영역 검출 신뢰 확률과 검출된 피킹 위치의 유효 값 범위와 비교하여 제1 및 제2 검출 모델의 유효성을 평가하는 것을 특징으로 하는 머신 러닝을 이용한 물체의 피킹 자동화 시스템의 제어 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210145325A KR20230061612A (ko) | 2021-10-28 | 2021-10-28 | 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210145325A KR20230061612A (ko) | 2021-10-28 | 2021-10-28 | 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230061612A true KR20230061612A (ko) | 2023-05-09 |
Family
ID=86408825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210145325A KR20230061612A (ko) | 2021-10-28 | 2021-10-28 | 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230061612A (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117689717A (zh) * | 2024-02-01 | 2024-03-12 | 青岛科技大学 | 用于机器人拾取的地面羽毛球位姿检测方法 |
CN118181304A (zh) * | 2024-05-13 | 2024-06-14 | 浙江正雅齿科股份有限公司 | 壳状矫治器的拾取方法、电子设备和存储介质 |
KR102689889B1 (ko) * | 2024-02-07 | 2024-07-30 | 주식회사 지티아 | 협동로봇 연동 비젼인식 시스템 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102211012B1 (ko) | 2016-09-15 | 2021-02-03 | 구글 엘엘씨 | 로봇 조작을 위한 심층 강화 학습 |
-
2021
- 2021-10-28 KR KR1020210145325A patent/KR20230061612A/ko not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102211012B1 (ko) | 2016-09-15 | 2021-02-03 | 구글 엘엘씨 | 로봇 조작을 위한 심층 강화 학습 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117689717A (zh) * | 2024-02-01 | 2024-03-12 | 青岛科技大学 | 用于机器人拾取的地面羽毛球位姿检测方法 |
CN117689717B (zh) * | 2024-02-01 | 2024-05-28 | 青岛科技大学 | 用于机器人拾取的地面羽毛球位姿检测方法 |
KR102689889B1 (ko) * | 2024-02-07 | 2024-07-30 | 주식회사 지티아 | 협동로봇 연동 비젼인식 시스템 |
CN118181304A (zh) * | 2024-05-13 | 2024-06-14 | 浙江正雅齿科股份有限公司 | 壳状矫治器的拾取方法、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109977813B (zh) | 一种基于深度学习框架的巡检机器人目标定位方法 | |
CN112476434B (zh) | 一种基于协作机器人的视觉3d取放方法及系统 | |
KR20230061612A (ko) | 머신 러닝을 이용한 물체의 피킹 자동화 시스템 및 그 제어 방법 | |
CN113168541B (zh) | 用于成像系统的深度学习推理系统和方法 | |
CN110948492B (zh) | 一种基于深度学习的三维抓取平台和抓取方法 | |
CN111421539A (zh) | 一种基于计算机视觉的工业零件智能识别与分拣系统 | |
CN111496770A (zh) | 基于3d视觉与深度学习的智能搬运机械臂系统及使用方法 | |
US20200001458A1 (en) | Method and system to generate a 3d model for a robot scene | |
CN112518748B (zh) | 面向运动物品的视觉机械臂自动抓取方法与系统 | |
Wang et al. | Auto-sorting system toward smart factory based on deep learning for image segmentation | |
CN114097004A (zh) | 基于视觉嵌入的自主任务性能 | |
CN116673962B (zh) | 一种基于Faster R-CNN和GRCNN的机械臂智能抓取方法及系统 | |
KR20220023726A (ko) | 딥 러닝 기반 실시간 공정 감시 시스템 및 그 방법 | |
CA3235569A1 (en) | Automated bin-picking based on deep learning | |
CN117824624B (zh) | 一种基于人脸识别的室内追踪定位方法、系统及存储介质 | |
Sharma et al. | Deep convolutional neural network design approach for 3D object detection for robotic grasping | |
CN109079777B (zh) | 一种机械臂手眼协调作业系统 | |
CN117274843B (zh) | 基于轻量级边缘计算的无人机前端缺陷识别方法及系统 | |
Uçar et al. | Determination of Angular Status and Dimensional Properties of Objects for Grasping with Robot Arm | |
Ogas et al. | A robotic grasping method using convnets | |
Gao et al. | An automatic assembling system for sealing rings based on machine vision | |
CN117021099A (zh) | 一种面向任意物体基于深度学习和图像处理的人机交互方法 | |
Turkoglu et al. | Incremental learning-based adaptive object recognition for mobile robots | |
Lin et al. | Inference of 6-DOF robot grasps using point cloud data | |
Suzui et al. | Toward 6 dof object pose estimation with minimum dataset |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |