[go: up one dir, main page]

KR102742116B1 - 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치 - Google Patents

다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치 Download PDF

Info

Publication number
KR102742116B1
KR102742116B1 KR1020220153070A KR20220153070A KR102742116B1 KR 102742116 B1 KR102742116 B1 KR 102742116B1 KR 1020220153070 A KR1020220153070 A KR 1020220153070A KR 20220153070 A KR20220153070 A KR 20220153070A KR 102742116 B1 KR102742116 B1 KR 102742116B1
Authority
KR
South Korea
Prior art keywords
hand
eye calibration
data set
values
calibration method
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020220153070A
Other languages
English (en)
Other versions
KR20240071533A (ko
Inventor
박태준
서승훈
윤종완
고병진
Original Assignee
주식회사 브레인봇
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 브레인봇 filed Critical 주식회사 브레인봇
Priority to KR1020220153070A priority Critical patent/KR102742116B1/ko
Priority to PCT/KR2022/021473 priority patent/WO2024106610A1/ko
Publication of KR20240071533A publication Critical patent/KR20240071533A/ko
Application granted granted Critical
Publication of KR102742116B1 publication Critical patent/KR102742116B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • 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/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Image Processing (AREA)

Abstract

본 기술은 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치에 관한 것이다. 본 기술의 다중 연산을 이용한 핸드-아이 캘리브레이션 방법은 프로세서에 의해 구현되는 핸드-아이 캘리브레이션 방법으로서, 로봇아암의 N개(N은 2 이상의 정수)의 모션 각각에서 소정의 시간동안 입력 데이터 세트를 입력받는 단계; 상기 N개의 입력 데이터 세트들 각각에 대해 확률 분포 변환 모델을 통하여 전처리를 수행하여 N개의 전처리 데이터 세트들을 도출하는 단계; 및 상기 N개의 전처리 데이터 세트들을 이용하여 생성된 비전-로봇 좌표계 변환 매트릭스로부터 병진값 및 회전값으로 구성된 출력 데이터를 출력하는 단계;를 포함하되, 상기 출력하는 단계는 적어도 K번(K는 상기 N보다 큰 정수) 반복적으로 수행되어 출력 데이터 세트를 구성하고, 상기 출력 데이터 세트에 대해 확률 분포 변환 모델을 통하여 후처리를 수행하여 단일의 후처리 데이터를 출력한다.

Description

다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치{Method and apparatus for hand-eye calibration using multiple operations}
본 발명은 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치에 관한 것으로, 보다 구체적으로는 비전 기반 아암 형태의 산업용 로봇에 적용될 수 있는 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치에 관한 것이다.
비전 기반 아암 형태의 산업용 로봇에는 관찰자와 로봇간 보정을 위한 자동 손-눈 보정 시스템(자동 핸드-아이 캘리브레이션 시스템; Auto Hand Eye Calibration System, 도 1 참조)이 적용된다.
자동 손-눈 보정 시스템은 비전센서로부터 취득한 영상 데이터에서 추출한 좌표 정보를 다시 로봇 좌표계를 기준으로 재정의한다. 예를 들어, 자동 손-눈 보정 시스템은 아암 형태의 로봇의 엔드이펙터(End Effector)에 마커를 부착하고, 여러 자세로 로봇을 동작하게 한 후, 비전 카메라로 마커 사진을 촬영하여, 마커가 촬영될 당시의 로봇의 위치 정보와, 마커를 통해 얻은 마커를 기준으로 한 카메라의 공간적인 정보를 갖고서, 로봇의 베이스(Base) 부분과 비전 카메라 사이의 변환 매트릭스 방정식(Homogeneous Transformation Matrix Equation)을 세우고 풀이하여 보정하는 작업을 자동으로 수행한다.
기존의 방식은 정확도면에서 한계가 있는데, 그 이유를 살펴보면 다음과 같다. 로봇공학에서 지터링(Jittering)은 제어되지 않은 미세한 떨림이다. 도 2에 도시된 바와 같이, 로봇의 전원이 인가가 되면, 로봇이 동작하고 있지 않더라도, 로봇의 Base to End Effector 값이 특정값을 기준으로 미세한 진동값을 가지게 된다. 지터링은 손-눈 보정 연산시 카메라 파라미터(Camera Parameter)와 로봇 파라미터(Robot Parameter)를 취득하는데 있어서 장애가 되며, 값의 정밀도에 영향을 주게 된다.
이에, 기존의 자동 손-눈 보정 시스템은 지터링으로부터 강력한 솔루션을 제공하기 위해, 손-눈 보정 방정식을 변형하거나 로봇의 하드웨어 제어 기술을 개량하는 것에 초점이 맞추어져 있다. 그런데, 이들의 공통점은 바로 단일 연산 방식을 이용한다는 것이다. 단일 연산은 보정에 필요한 데이터를 취득하는 방법이 특정 순간의 데이터인 델타(Delta) 신호를 사용함을 전제로 한다. 따라서, 단일 연산 방식을 사용하게 될 경우, 노이즈가 심한 상태에서의 파라미터를 갖고서 작업을 수행하는 환경에 그대로 노출된다. 예를 들어, 지터링이 매우 심할 때의 데이터를 갖고서 연산을 할 수도 있다. 이는 보정 값의 정밀성을 크게 떨어뜨린다.
지터링, 즉, 로봇의 고유진동으로 인한 노이즈 문제로부터 자유로울 수 없는 한계로 인하여 기존의 단일 연산 계산 방법은 정밀도 하락의 문제를 필연적으로 갖는다.
본 발명의 실시예는 다중연산을 통해 결과값의 정밀도를 개선시킬 수 있는 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치를 제공한다.
한편, 본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 것이다.
일 실시예에 따른 프로세서에 의해 구현되는 핸드-아이 캘리브레이션 방법으로서, 로봇아암의 N개(N은 2 이상의 정수)의 모션 각각에서 소정의 시간동안 입력 데이터 세트를 입력받는 단계; 상기 N개의 입력 데이터 세트들 각각에 대해 확률 분포 변환 모델을 통하여 전처리를 수행하여 N개의 전처리 데이터 세트들을 도출하는 단계; 및 상기 N개의 전처리 데이터 세트들을 이용하여 생성된 비전-로봇 좌표계 변환 매트릭스로부터 병진값 및 회전값으로 구성된 출력 데이터를 출력하는 단계;를 포함하되, 상기 출력하는 단계는 적어도 K번(K는 상기 N보다 큰 정수) 반복적으로 수행되어 출력 데이터 세트를 구성하고, 상기 출력 데이터 세트에 대해 확률 분포 변환 모델을 통하여 후처리를 수행하여 단일의 후처리 데이터를 출력할 수 있다.
상기 생성된 비전-로봇 좌표계 변환 매트릭스는 상기 단일의 후처리 데이터를 이용하여 수정될 수 있다.
상기 도출하는 단계에서 확률 분포 변환 모델은 상기 입력 데이터 세트를 크기 순으로 배열하고, 이를 일정 구간별로 나누며, 각 구간에 해당하는 값들의 이항분포를 연산한 후 정규근사화를 적용하여 정규분포의 형태로 변환한 이후에 연속성 상수를 제거하는 과정을 포함할 수 있다.
상기 출력하는 단계에서 확률 분포 변환 모델은 상기 출력 데이터 세트를 크기 순으로 배열하고, 이를 일정 구간별로 나누며, 각 구간에 해당하는 값들의 이항분포를 연산한 후 정규근사화를 적용하여 정규분포의 형태로 변환한 이후에 연속성 상수를 제거하는 과정을 포함할 수 있다.
상기 확률 분포 변환 모델은 NSE(Normalization Softmax Ensemble) 기법을 포함할 수 있다.
상기 N은 3이고 상기 K는 100일 수 있다.
또한 일 실시예에 따른 하나 이상의 컴퓨터 프로그램을 저장한 컴퓨터 판독 가능 기록 매체는 상기 어느 한 항의 방법을 수행하기 위한 명령어를 포함할 수 있다.
또한 일 실시예에 따른 핸드-아이 캘리브레이션 장치에 있어서, 로봇아암의 N개(N은 2 이상의 정수)의 모션 각각에서 소정의 시간동안 입력 데이터 세트를 획득하는 입력 데이터 세트 획득부; 및 상기 획득된 N개의 입력 데이터 세트들 각각에 대해 확률 분포 변환 모델을 통하여 전처리를 수행하여 N개의 전처리 데이터 세트들을 도출하고, 상기 N개의 전처리 데이터 세트들을 이용하여 생성된 비전-로봇 좌표계 변환 매트릭스로부터 병진값 및 회전값으로 구성된 출력 데이터를 출력하는 프로세서;를 포함하되, 상기 프로세서는 상기 출력 데이터를 출력하는 과정을 적어도 K번(K는 상기 N보다 큰 정수) 반복적으로 수행하여 출력 데이터 세트를 구성하고, 상기 출력 데이터 세트에 대해 확률 분포 변환 모델을 통하여 후처리를 수행하여 단일의 후처리 데이터를 출력할 수 있다.
본 기술은 다중연산을 통해 결과값의 정밀도를 개선시킬 수 있는 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치를 제공할 수 있다.
도 1은 자동 손-눈 보정 시스템을 도시하는 도면이다.
도 2는 자동 손-눈 보정 시스템에서 발생하는 지터링을 그래프로 도시한 도면이다.
도 3은 일 실시예에 따른 핸드-아이 캘리브레이션 방법을 시간의 흐름에 따라 도시하는 순서도이다.
도 4는 일 실시예에 따른 핸드-아이 캘리브레이션 방법에 적용되는 NSE 기법의 전체적인 흐름을 도시하는 도면이다.
도 5는 일 실시예에 따른 출력하는 단계의 전체적인 흐름을 도시하는 도면이다.
도 6은 일 실시예에 따른 핸드-아이 캘리브레이션 방법에 적용되는 NSE 기법을 활용한 데이터 처리 기법의 효용성을 보여주기 위해 100회 실험을 실시한 결과를 나타내는 그래프이다.
도 7은 일 실시예에 따른 핸드-아이 캘리브레이션 방법에 적용되는 NSE 기법을 활용한 데이터 처리 기법의 성능평가를 나타내는 그래프이다.
도 8은 일 실시예에 따른 핸드-아이 캘리브레이션 방법에 적용되는 NSE 기법을 활용한 데이터 처리 기법의 지터링 강도에 의한 내구성 실험 결과를 나타내는 그래프이다.
도 9는 일 실시예에 따른 핸드-아이 캘리브레이션 장치의 하드웨어 구현의 예를 도시하는 도면이다.
첨부된 도면은 본 발명의 기술사상에 대한 이해를 위하여 참조로서 예시된 것임을 밝히며, 그것에 의해 본 발명의 권리범위가 제한되지는 아니한다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
핸드-아이 캘리브레이션 과정에서 로봇의 고유진동이 심한 상태에서의 파라미터로 그 과정을 수행하는 것은 보정값의 정밀도를 크게 떨어뜨린다. 이에 일 실시예에 따른 핸드-아이 캘리브레이션 과정에서는 NSE(Normalization Softmax Ensemble; 정규화 소프트맥스 앙상블) 모델을 이용한 입력 데이터 전처리 과정 및 NSE 기법을 이용한 다중 연산(Multi Calculation) 과정의 두 가지 과정들을 적용한다.
도 3은 일 실시예에 따른 핸드-아이 캘리브레이션 방법을 시간의 흐름에 따라 도시한다. 핸드-아이 캘리브레이션 방법은 입력 데이터 세트를 입력받는 단계(S10), 전처리 데이터 세트들을 도출하는 단계(S20), 및 출력 데이터를 출력하는 단계(S30)를 포함한다.
단계(S10)에서 핸드-아이 캘리브레이션 장치는 로봇아암의 N개의 모션 각각에서 소정의 시간동안 입력 데이터 세트를 입력받는다. 여기서 N은 2 이상의 정수일 수 있고, 바람직하게는 3 이상의 정수일 수 있다. 이하에서는 N이 3인 실시예를 중심으로 설명하나 본 발명이 개수에 한정되지 않는다.
소정의 시간은 다중 연산을 위한 기초가 된다. 한 순간의 값을 받아오는 것이 아닌, 소정의 시간동안 여러 데이터들이 입력되게 되며 이 데이터들에 대해 NSE 기법을 통한 전처리를 수행함으로써 로봇의 고유진동인 지터링을 해소하는 하나의 수단이 된다. 소정의 시간은 예를 들어 0.1초~1초일 수 있다. 이하에서는 소정의 시간이 0.1초인 예를 중심으로 설명하기로 하며 본 발명이 수치에 한정되지 않는다.
입력 데이터 세트는 병진값(Tx, Ty, Tz)과 회전값(Rx, Ry, Rz)으로 구성된 행렬일 수 있다. 예를 들어, 초기값이 0의 원소로 채워진 A, B, X 행렬이 있고, 각각의 행렬에 필요한 값이 충족될 때까지 소정의 시간이 지속될 수 있다. 이때, A는 베이스-로봇 변환 행렬(Base to Robot Homogeneous Transformation Matrix)일 수 있다. B는 엔드이펙터-카메라 변환 행렬(End Effector to Camera Homogeneous Transformation Matrix)일 수 있다. X는 베이스-엔드이펙터 변환 행렬(Base to End Effector Homogeneous Transformation Matrix)일 수 있다.
입력 데이터 세트는 N개의 모션 각각에서 입력받게 되어 결과적으로 N개의 입력 데이터 세트들이 된다. 이는 후술하는 비전-로봇 좌표계 변환 매트릭스를 생성하는 데에 이용된다.
단계(S20)에서 핸드-아이 캘리브레이션 장치는 N개의 입력 데이터 세트들 각각에 대해 확률 분포 변환 모델을 통하여 전처리를 수행하여 N개의 전처리 데이터 세트들을 도출한다.
확률 분포 변환 모델은 NSE 기법일 수 있다. 일 실시예에 따른 NSE 기법은 이항분포를 연산하는 과정과, 정규분포로 변환하는 과정과, 연속성 상수를 제거하는 과정을 포함할 수 있다. 구체적으로, 도 4a 내지 도 4c에 도시된 바와 같이, NSE 기법은 입력 데이터 세트를 크기 순으로 배열하고, 이를 일정 구간별로 나누며, 각 구간에 해당하는 값들의 이항분포를 연산한 후 정규근사화를 적용하여 정규분포의 형태로 변환한 이후에 연속성 상수를 제거하기 위해 Softmax를 이용할 수 있다.
그러면, 이 배열의 원소의 개수는 구간의 개수만큼 되고 그 총합은 1이 되므로, 이를 소정의 시간동안 입력받은 입력 데이터 세트가 해당되는 구간에 대칭하는 배열의 원소와 곱하고 더함으로써 전처리된 최종 값을 산출할 수 있다. 그리고, 이 최종 값은 후술하는 비전-로봇 좌표계 변환 매트릭스(Hand Eye Calibration Matrix)의 입력 파라미터로 들어가게 된다.
예를 들어, 0.1초동안 입력받은 100개의 데이터 값들을 크기순으로 정렬할 수 있다. 이를 다음의 수학식 1로 나타낼 수 있다.
이때, α는 클래스 개수이다. 이로써 α개의 클래스가 정의되고, 100개의 결과 값들은 α개의 클래스 중 하나의 원소로 들어가게 된다. 일 실시예에 따르면, α = 10으로 정의될 수 있다. 이를 통해, 임의의 결과 값이 특정 구간 내에 존재할 확률을 나타내는 이항분포로 재정의 할 수 있다. 이항분포로 재정의 된 데이터를 다시 정규 근사화를 시켜줄 수 있다.
상기 수학식 2에서 ±C는 이항분포와 정규분포 사이의 오차를 줄이기 위한, 연속성 보정 상수이다.
한편, 이항분포와 정규분포 사이의 오차를 최소화시키기 위해서 최적의 상수 C(0 ~ 1) 값을 찾을 수 있고, 이때, 최적의 상수 C값은 분포도마다 다르다는 문제가 있으므로, 이를 해결하기 위해, 다음과 같은 소프트맥스 함수를 사용할 수 있다.
이렇게 해서 얻은 값들을 배열에 저장할 수 있다. 이 배열을 W라 하면, W에는 클래스의 수만큼 원소가 들어오게 되고, 이 원소들의 총합은 1이 될 것이다. 따라서, 0.1초동안 들어온 데이터의 값을 d라고하면, 핸드-아이 캘리브레이션에 사용되는 데이터 신호 값은 다음과 같이 정의할 수 있다.
즉 하나의 delta 값 * 해당 값이 등장할 확률을 반영한 결과라고 볼 수 있으며, 여기서 w값은 di가 해당되는 클래스가 가지고 있는 확률 값이다.
단계(S30)에서 핸드-아이 캘리브레이션 장치는 N개의 전처리 데이터 세트들을 이용하여 비전-로봇 좌표계 변환 매트릭스를 생성하고, 비전-로봇 좌표계 변환 매트릭스로부터 병진값 및 회전값으로 구성된 출력 데이터를 출력한다.
비전-로봇 좌표계 변환 매트릭스 생성에 사용되는 데이터는 상술한 NSE 기법으로 전처리된 데이터임을 주목한다.
비전-로봇 좌표계 변환 매트릭스(이하 간단히 '변환 매트릭스'라고도 함) 생성을 위해서는 예를 들어, A, B, X 행렬로 된 수식을 해결해야 하며, 이를 위해 다양한 솔루션이 적용될 수 있으나, 일 실시예예 따라 Aj*inv(Ai)*X = X*Bj*inv*(Bi)와 같은 수식을 해결하는 경우를 가정한다.
출력 데이터는 병진값(Tx, Ty, Tz)과 회전값(Rx, Ry, Rz)으로 구성된 행렬일 수 있다.
한편, 핸드-아이 캘리브레이션 장치는 단계(S30)를 적어도 K번 반복적으로 수행하여 출력 데이터 세트를 구성하고, 출력 데이터 세트에 대해 확률 분포 변환 모델(즉, NSE 기법)을 통하여 후처리를 수행하여 단일의 후처리 데이터를 출력한다. 이로써, 비전-로봇 좌표계 변환 매트릭스는 단일의 후처리 데이터를 이용하여 수정된다.
K는 N보다 큰 정수일 수 있으며, 바람직하게는 100 이상의 정수일 수 있다. 이하에서는 N이 100인 실시예를 중심으로 설명하나 본 발명이 개수에 한정되지 않는다.
상술한 N은 변환 매트릭스 생성을 위한 것으로서 변환 매트릭스만 생성될 수 있다면 되도록 작은 것이 연산의 효율을 위해 바람직한 반면, K는 다중 연산을 위한 또 다른 기초가 되는 바, 되도록 큰 것이 지터링 해소를 위해 바람직하고 한편으로는 연산의 효율성도 함께 고려함이 바람직하다.
상술한 단계(S20)에서는 소정의 시간동안 입력받아 구성된 입력 데이터 세트에 대해 수행되고, 단계(S30)에서는 단계(S30)가 반복 수행되어 구성된 출력 데이터 세트에 대해 수행됨을 주목한다. 즉, 전자에서는 데이터 세트의 크기가 소정의 시간에 의해 결정되고 후자에서는 데이터 세트의 크기가 반복 수행 횟수에 의해 결정되는 성질의 것이다. 이는 NSE 기법을 이용한 입력 데이터 전처리 과정 및 NSE 기법을 이용한 다중 연산 과정의 두 가지 과정들을 지터링 해소를 위해 적용 가능하게 한다.
단계(S30)에서 NSE 기법은 상술한 단계(S20)에서의 NSE 기법과 대체로 유사하다. 즉, 단계(S30)에서 NSE 기법은 이항분포를 연산하는 과정과, 정규분포로 변환하는 과정과, 연속성 상수를 제거하는 과정을 포함한다. 구체적으로, NSE 기법은 데이터 세트를 크기 순으로 배열하고, 이를 일정 구간별로 나누며, 각 구간에 해당하는 값들의 이항분포를 연산한 후 정규근사화를 적용하여 정규분포의 형태로 변환한 이후에 연속성 상수를 제거하기 위해 Softmax를 이용할 수 있다.
그러면, 이 배열의 원소의 개수는 구간의 개수만큼 되고 그 총합은 1이 되므로, 이를 반복 수행 과정동안 출력된 출력 데이터 세트가 해당되는 구간에 대칭하는 배열의 원소와 곱하고 더함으로써 후처리된 단일의 최종 값을 산출할 수 있다. 그리고, 이 최종 값은 비전-로봇 좌표계 변환 매트릭스를 수정하는 데에 이용된다.
예를 들어, N개의 전처리 데이터 세트들을 이용하여 비전-로봇 좌표계 변환 매트릭스를 생성하고, 생성된 변환 매트릭스로부터 Tx, Ty, Tz, Rx, Ry, Rz값을 추출한 후, Txset, Tyset, Tzset, Rxset, Ryset, Rzset에 각각 저장할 수 있다. 이 과정을 100회 수행하면, 각각의 set에는 100개의 계산 값들이 저장될 수 있다. 계산 값들은 연속형 확률변수로, -∞ ~ ∞ 사이의 값을 가질 수 있으며, 0에 근사한 확률을 갖게 되지만, 정상적으로 Hand Eye Calibration이 수행되었다면, 그러한 계산 값은, 일정 범위 내에서, 특정값 중심으로 몰려있을 것이다. 이와 같이 100회 연산된 데이터들을 상술한 단계(S20)에서의 NSE 기법을 Tx, Ty, Tz, Rx, Ry, Rz에 대하여 모두 적용시킨 후, 변환 매트릭스를 수정할 수 있다.
결과적으로, 후처리된 단일의 최종 값으로 구성된, 수정된 비전-로봇 좌표계 변환 매트릭스가 생성되게 된다. 그리고, 수정된 비전-로봇 좌표계 변환 매트릭스는 비전센서로부터 취득한 영상 데이터에서 추출한 좌표 정보를 다시 로봇 좌표계를 기준으로 재정의하는 데에 활용된다. 즉, 수정된 비전-로봇 좌표계 변환 매트릭스는 로봇의 엔드이펙터 제어에 활용된다.
도 5는 상술한 단계(S30)의 전체적인 흐름을 도시한다. 도 5에 도시된 바와 같이, 핸드-아이 캘리브레이션에 필요한 행렬값이 충족될 때까지, 대기한다(Wait). 초기값은 0의 원소로 채워진 행렬이다.
핸드-아이 캘리브레이션 행렬 방정식(Hand Eye Calibration Matrix Equation)을 형성하기 위해, 최소 3개의 모션에서 데이터를 받아온다(i>=3 ?)). 이때, 들어오는 데이터는 NSE 기법으로 전처리된 데이터이다.
핸드-아이 캘리브레이션 행렬 방정식(Hand Eye Calibration Matrix Equation)을 해결하고(i=0, Solve A2*inv(A1)*X = X*B2*inv*(B1)), 결과값으로 얻은 행열(Matrix)(X)로부터 병진값(Tx, Ty, Tz)과 회전값(Rx, Ry, Rz)을 구한다(Get Tx, Ty, Tz, Rx, Ry, Rz from X).
이를 100회 반복실시한다(c==100 ?).
100회 연산을 실시해서 구한 병진값(Tx, Ty, Tz)과 회전값(Rx, Ry, Rz)의 값들을 NSE 기법을 이용해서(Tfx, Tfy, Tfz, Rfx, Rfy, Rfz=Fnse(Txset, Tyset, Tzset, Rxset, Ryset, Rzset)), 최종적인 하나의 값들로 종합한다(Homogeneous Transformation Matrix from Tfx, Tfy, Tfz, Rfx, Rfy, Rfz).
<실험예>
도 6은 일 실시예에 따른 핸드-아이 캘리브레이션 방법에 적용되는 NSE 기법을 활용한 데이터 처리 기법의 효용성을 보여주기 위해 100회 실험을 실시한 결과를 나타낸다.
도 6에 도시된 바와 같이, Input Signal의 Delta 값(Delta), 0.1초동안 수신되는 약 20만개의 Input Signal들의 평균(AVG)로 처리했을 때의 결과(Average(0.1 sec)), 및 NSE 기법으로 처리했을 때(Normalize & Softmax Ensemble(0.1 sec))의 그래프가 각각 도시된다. 그리고, 값의 흩어진 정도를 파악하기 위해, 평균을 0으로 만들고, 각 기법을 사용했을 때의 최대값과 최소값의 차, 그리고, 표준편차를 구해 표로 나타내었다.
AVG 방식은 0.1초 동안 받아지는 약 20만개의 데이터를 평균화시키는 방식을 사용하고 있는데, 이상치로 값이 얻어지는 경우를 해결하기 위해 고안한 방식이다. AVG 방식을 바탕으로, 성능을 더 끌어올리기 위해, 확률적 모델을 적용시킨 방식이 NSE 방식으로서, 0.1초 동안 들어오는 Data들에 대해, 각각의 Data가 발생할 확률에 근거하여, 가중치를 곱하는 방식이다. 0.1초 동안 수신한 Data의 평균에 가까운 신호일수록 더 높은 영향력을 평균에서부터 멀어질수록 낮은 영향력을 행사하여, 반영해 최종값을 구하는 방식이므로, 100회 실험을 수행하였을 때, Delta 방식 및 AVG 방식에 비해 더 낮은 최대값과 최소값의 차이와 표준편차를 보여주었다. 이는 NSE 방식이 지터링의 영향을 감소시키고, 안정적인 핸드-아이 캘리브레이션을 연산하는데 필요한 카메라 파라미터와 로봇 파라미터를 얻는 데 기여할 수 있음을 보여준다.
도 7은 일 실시예에 따른 핸드-아이 캘리브레이션 방법에 적용되는 NSE 기법을 활용한 데이터 처리 기법의 성능평가를 나타낸다.
병진부분에 대한, 성능을 평가하기 위해서, 카메라 좌표계와 로봇의 베이스 좌표계 간의 유클리드 거리를 구하여, 이를 분모로 하고, 실측치의 병진 값(Tx, Ty, Tz)과, 추정치의 병진 값(Tx', Ty', Tz') 사이의 유클리드 거리를 구해, 이를 분자로 하여, 백분율로 나타내는 방식을 사용하였다.
한편 각도 값의 경우에는 병진 값처럼 유클리드 거리 방식으로 나타낼 수 없고, 위와 유사한 방식(예를 들어, 각도 값(Rx, Ry, Rz)에 대해 실측치를 분모로 두고, 실측치와 추정치 사이의 오차를 분자로 두어, 각도 값의 각각 요소의 백분율을 평균을 내어, 종합적인, 각도오차 성능을 평가하는 방법과 같이)은 경우에 따라 두 좌표계 사이의 각도값에 변화가 없어, 실측치 값이 0인 요소가 존재할 수 있으므로, 이를 백분율로 나타내게 되면, 무한값을 가질 수도 있기 때문에, 단순히, 실측치의 각도 값(Rx, Ry, Rz)과 추정치의 각도 값(Rx', Ry', Rz')의 차이를 구해서, 평균 차이값을 구하는 방식을 사용하였다.
상술한 도 6에서와 유사하게, 단일 연산 방식, 100회 연산을 수행하여 각 결과치에 평균을 내는 방식, 및 100회 연산을 수행하여 각 결과치에 NSE 방식을 사용한 모델에 대해 비교분석을 진행하였다. 세 가지 모델에는 공통적으로 NSE 데이터 처리 기법을 사용하여 핸드-아이 캘리브레이션 연산에 필요한 데이터를 취득해 연산하였다.
또한, 공정한 성능평가 실험을 위해, NSE 데이터 처리 기법을 이용해 취득한 Dataset 100장 중 임의로 n장을 골라 연산하는 방식을 사용하였으며, 본 실험에서는 (n = 3, 4, 5, 6, 7)에 대해 각각 100회씩 실험을 수행하여 그래프로 표현하였다. 연산에 활용된 이미지수가 많을수록 정교한 카메라 캘리브레이션 값을 추정할 수가 있어서, 점진적으로 모델의 정확도가 올라가는 경향을 띄고 있지만, 무작위로 Data를 선정하여 실험을 진행했기에, 그래프 상에서 절대적으로 보여지지는 않는다. 각 모델별로, 모델의 성능과 관련하여 표를 첨부하면 다음과 같다. 아래 표에는 Translation과 Rotation에 대한 평균오차와 평균표준오차가 기입되어 있다. 평균오차는 모델의 정확성을 평균표준오차는 모델의 안정성과 관련이 있으며, 둘 다 낮을수록 좋다.
표 1에서 나타낸 바와 같이, 단일 연산 방식 모델 대비, Translation 평균오차는 0.4077%, Rotation 평균오차는 0.1141% 감소함을 확인하였고, Translation 평균표준오차는 0.0223, Rotation 평균표준오차는 0.0281 감소함을 확인하였다.
앞서 도 6에서 상술한 Multi Calculation AVG 방식이 Delta 방식보다 향상된 정도에 비해, 도 7에서 보여지는 Single Calculation Model 대비 Multi Calculation AVG Model의 향상도가 뚜렷하게 나타난 것을 확인할 수 있다. 특히, 도 7에 나타난 그래프처럼 적은 수의 이미지를 연산에 활용할 때, 차이가 더 두드러지는 것을 확인할 수 있다. 그 이유는 적은 수의 이미지를 연산에 활용할 경우, 카메라의 Instrinsic Parameter의 정교함이 떨어지게 되고, 이는 곧 카메라의 Extrinsic Parameter에도 영향을 주어, Camera Parameter에 해당하는 행렬 값이 전부 달라지기 때문이다.
이미지 장수가 많아질수록, Camera Calibration 기법으로 인해, Camera Parameter가 비교적 정교한 값을 가지게 되면서, 향상도가 감소하는 경향을 보이지만, 여전히, 유효하다는 것을 보여준다. Multi_Calculation_NSE 모델은, Multi_Calculation_AVG 모델을 기반으로, 각각의 연산 결과 값들에 확률적인 모델을 적용시켜 성능을 향상시키기 위해 고안된 모델이다.
도 8은 일 실시예에 따른 핸드-아이 캘리브레이션 방법에 적용되는 NSE 기법을 활용한 데이터 처리 기법의 지터링 강도에 의한 내구성 실험 결과이다. 지터링을 의도적으로 발생시켜, 지터링 세기에 따라, 7개의 Position에서 추출한 데이터를 가지고, 100회 실험을 수행한 후에 유클리드 거리의 평균오차, 그리고, Degree의 평균 오차를 각 지터링 세기별로 나타낸 그래프이다.
도면에 도시된 바와 같이, Single 방식이 지터링으로 발생한 이상 데이터의 영향을 많이 받는 것을 알 수 있고, Single 방식에 비해, Multi AVG와 Multi NSE 방식이 지터링에 대해 강인한 것을 확인할 수가 있었다. 그리고, 연산 결과 전체를 평균으로 산출하는 방식보다, 확률에 기반한 Multi NSE 방식이 보다 강인한 것을 확인할 수 있었다.
이와 같이, 일 실시예에 따르면, NSE 방식을 활용한 Data 전처리 기법과 확률적 모델에 기반한 다중연산 시스템 방식은 Auto Hand Eye Calibaration System에서 Jittering의 영향과 Dataset간 발생하는 결과값 편차를 감소시켜, 보다 강인하고, 안정성 있는 결과 값을 제공할 수 있다.
도 9는 일 실시예에 따른 핸드-아이 캘리브레이션 장치의 하드웨어 구현의 예를 도시한다. 일 실시예에 따른 핸드-아이 캘리브레이션 장치(1000)는 입력 데이터 세트 획득부(1010), 프로세서(1020) 및 메모리(1030)를 포함할 수 있다.
입력 데이터 세트 획득부(1010)는 로봇아암의 N개(N은 2 이상의 정수)의 모션 각각에서 소정의 시간동안 입력 데이터 세트를 획득할 수 있다. 입력 데이터 세트 획득부(1010)는 비전 카메라와 연결되어 입력 데이터 세트를 수신하는 통신부 등을 포함할 수 있다.
프로세서(1020)는 메모리(1030)에 저장된 확률 분포 변환 모델(즉, NSE 기법)을 이용하여 상기 획득된 N개의 입력 데이터 세트들 각각에 대해 전처리를 수행하여 N개의 전처리 데이터 세트들을 도출하고, N개의 전처리 데이터 세트들을 이용하여 생성된 비전-로봇 좌표계 변환 매트릭스로부터 병진값 및 회전값으로 구성된 출력 데이터를 출력할 수 있다. 이때, 이 과정을 적어도 K번(K는 상기 N보다 큰 정수) 반복적으로 수행하여 출력 데이터 세트를 구성하고, 출력 데이터 세트에 대해 확률 분포 변환 모델을 통하여 후처리를 수행하여 단일의 후처리 데이터를 출력할 수 있다. 그리고, 생성된 비전-로봇 좌표계 변환 매트릭스는 이러한 단일의 후처리 데이터를 이용하여 수정될 수 있다. 다만, 프로세서(1020)의 동작을 이로 한정하는 것은 아니고, 도 3 내지 도 8에서 설명된 동작들을 수행할 수도 있다.
메모리(1030)는 확률 분포 변환 모델(즉, NSE 기법)을 저장할 수 있다. 메모리(1030)는 일 실시예에 따른 핸드-아이 캘리브레이션 방법을 수행하기 위해 요구되는 데이터를 임시적으로 또는 영구적으로 저장할 수 있다. 예를 들어, 메모리(1030)는 입력 데이터 세트(들), 전처리 데이터 세트(들), 비전-로봇 좌표계 변환 매트릭스, 출력 데이터 세트, 수정된 비전-로봇 좌표계 변환 매트릭스 등을 저장할 수 있다.
일 실시예에 따른 장치(1000)는 핸드-아이 캘리브레이션 과정에 필요한 입력 데이터를 소정의 시간동안 받은 후 NSE 기법을 사용해 전처리한다. 또한, 변환 매트릭스로부터 얻어지는 출력 데이터에 NSE 기법을 사용해 후처리하여 다중 연산 프로세스를 적용한다. 이로써 지터링에 의한 핸드-아이 캘리브레이션 정밀도를 개선한다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 저장할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
1000 : 핸드-아이 캘리브레이션 장치
1010 : 입력 데이터 세트 획득부
1020 : 프로세서
1030 : 메모리

Claims (8)

  1. 프로세서에 의해 구현되는 핸드-아이 캘리브레이션 방법으로서,
    로봇아암의 N개(N은 2 이상의 정수)의 모션 각각에서 소정의 시간동안 입력 데이터 세트를 입력받는 단계;
    상기 N개의 입력 데이터 세트들 각각에 대해 확률 분포 변환 모델을 통하여 전처리를 수행하여 N개의 전처리 데이터 세트들을 도출하는 단계; 및
    상기 N개의 전처리 데이터 세트들을 이용하여 생성된 비전-로봇 좌표계 변환 매트릭스로부터 병진값 및 회전값으로 구성된 출력 데이터를 출력하는 단계;를 포함하되,
    상기 출력하는 단계는 적어도 K번(K는 상기 N보다 큰 정수) 반복적으로 수행되어 출력 데이터 세트를 구성하고, 상기 출력 데이터 세트에 대해 확률 분포 변환 모델을 통하여 후처리를 수행하여 단일의 후처리 데이터를 출력하는, 핸드-아이 캘리브레이션 방법.
  2. 제1항에 있어서,
    상기 생성된 비전-로봇 좌표계 변환 매트릭스는 상기 단일의 후처리 데이터를 이용하여 수정되는, 핸드-아이 캘리브레이션 방법.
  3. 제1항에 있어서,
    상기 도출하는 단계에서 확률 분포 변환 모델은 상기 입력 데이터 세트를 크기 순으로 배열하고, 이를 일정 구간별로 나누며, 각 구간에 해당하는 값들의 이항분포를 연산한 후 정규근사화를 적용하여 정규분포의 형태로 변환한 이후에 연속성 상수를 제거하는 과정을 포함하는, 핸드-아이 캘리브레이션 방법.
  4. 제1항에 있어서,
    상기 출력하는 단계에서 확률 분포 변환 모델은 상기 출력 데이터 세트를 크기 순으로 배열하고, 이를 일정 구간별로 나누며, 각 구간에 해당하는 값들의 이항분포를 연산한 후 정규근사화를 적용하여 정규분포의 형태로 변환한 이후에 연속성 상수를 제거하는 과정을 포함하는, 핸드-아이 캘리브레이션 방법.
  5. 제1항에 있어서,
    상기 확률 분포 변환 모델은 NSE(Normalization Softmax Ensemble) 기법을 포함하는, 핸드-아이 캘리브레이션 방법.
  6. 제1항에 있어서,
    상기 N은 3이고 상기 K는 100인, 핸드-아이 캘리브레이션 방법.
  7. 제1항 내지 제6항 중 어느 한 항의 방법을 수행하기 위한 명령어를 포함하는 하나 이상의 컴퓨터 프로그램을 저장한 컴퓨터 판독 가능 기록 매체.
  8. 핸드-아이 캘리브레이션 장치에 있어서,
    로봇아암의 N개(N은 2 이상의 정수)의 모션 각각에서 소정의 시간동안 입력 데이터 세트를 획득하는 입력 데이터 세트 획득부; 및
    상기 획득된 N개의 입력 데이터 세트들 각각에 대해 확률 분포 변환 모델을 통하여 전처리를 수행하여 N개의 전처리 데이터 세트들을 도출하고, 상기 N개의 전처리 데이터 세트들을 이용하여 생성된 비전-로봇 좌표계 변환 매트릭스로부터 병진값 및 회전값으로 구성된 출력 데이터를 출력하는 프로세서;를 포함하되,
    상기 프로세서는 상기 출력 데이터를 출력하는 과정을 적어도 K번(K는 상기 N보다 큰 정수) 반복적으로 수행하여 출력 데이터 세트를 구성하고, 상기 출력 데이터 세트에 대해 확률 분포 변환 모델을 통하여 후처리를 수행하여 단일의 후처리 데이터를 출력하는, 핸드-아이 캘리브레이션 장치.
KR1020220153070A 2022-11-15 2022-11-15 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치 Active KR102742116B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220153070A KR102742116B1 (ko) 2022-11-15 2022-11-15 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치
PCT/KR2022/021473 WO2024106610A1 (ko) 2022-11-15 2022-12-28 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220153070A KR102742116B1 (ko) 2022-11-15 2022-11-15 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20240071533A KR20240071533A (ko) 2024-05-23
KR102742116B1 true KR102742116B1 (ko) 2024-12-16

Family

ID=91084700

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220153070A Active KR102742116B1 (ko) 2022-11-15 2022-11-15 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치

Country Status (2)

Country Link
KR (1) KR102742116B1 (ko)
WO (1) WO2024106610A1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017170571A (ja) 2016-03-24 2017-09-28 セイコーエプソン株式会社 ロボット、ロボット制御装置、及びロボットシステム
KR102220173B1 (ko) 2019-11-01 2021-02-25 주식회사 뉴로메카 로봇 비전 시스템을 위한 자동 캘리브레이션 방법 및 장치
JP2021122899A (ja) 2020-02-05 2021-08-30 株式会社デンソー 軌道生成装置、多リンクシステム、及び軌道生成方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07314359A (ja) * 1994-05-30 1995-12-05 Nippon Telegr & Teleph Corp <Ntt> マニピュレータ用追従装置およびその制御方法
KR102576842B1 (ko) * 2017-01-04 2023-09-12 삼성전자주식회사 핸드-아이 캘리브레이션을 수행하는 로봇 및 전자 장치
KR101988937B1 (ko) * 2017-09-07 2019-06-13 주식회사 인지 카메라와 로봇 핸드의 캘리브레이션 방법 및 장치
KR102332314B1 (ko) * 2020-01-16 2021-12-01 한국기술교육대학교 산학협력단 로봇과 카메라 간 좌표값 보정 장치 및 보정 방법
KR102459373B1 (ko) * 2020-11-25 2022-10-31 아이둡 주식회사 핸드 아이 캘리브레이션 시스템 및 방법
JP7437343B2 (ja) * 2021-03-29 2024-02-22 株式会社日立製作所 ロボット制御用のキャリブレーション装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017170571A (ja) 2016-03-24 2017-09-28 セイコーエプソン株式会社 ロボット、ロボット制御装置、及びロボットシステム
KR102220173B1 (ko) 2019-11-01 2021-02-25 주식회사 뉴로메카 로봇 비전 시스템을 위한 자동 캘리브레이션 방법 및 장치
JP2021122899A (ja) 2020-02-05 2021-08-30 株式会社デンソー 軌道生成装置、多リンクシステム、及び軌道生成方法

Also Published As

Publication number Publication date
KR20240071533A (ko) 2024-05-23
WO2024106610A1 (ko) 2024-05-23

Similar Documents

Publication Publication Date Title
EP2684651A2 (en) Robot system, robot, robot control device, robot control method, and robot control program
KR102715161B1 (ko) 영상 복원 방법 및 장치
CN113787522A (zh) 消除机械臂累积误差的手眼标定方法
KR102220173B1 (ko) 로봇 비전 시스템을 위한 자동 캘리브레이션 방법 및 장치
CN113172636B (zh) 一种自动手眼标定方法、装置及存储介质
CN112446917B (zh) 一种姿态确定方法及装置
US10623629B2 (en) Imaging apparatus and imaging condition setting method and program
CN116019562A (zh) 机器人控制系统和方法
KR102742116B1 (ko) 다중 연산을 이용한 핸드-아이 캘리브레이션 방법 및 장치
CN119850739A (zh) 目标抓取点数据生成方法、装置、设备及人形机器人
CN119871452A (zh) 机器人控制方法、装置及电子设备
JP7598115B2 (ja) 自動カメラキャリブレーションを実施する方法及びシステム
US12406110B2 (en) Computer-implemented method for low-latency generation and input of sensor data into a control unit or into control unit networks
WO2019228195A1 (zh) 空间环境的感知方法及装置
CN111383262A (zh) 遮挡检测方法、系统、电子终端以及存储介质
CN112348874B (zh) 一种车道线的结构化参数表示确定方法及装置
CN112529943A (zh) 一种物体检测方法、物体检测装置及智能设备
US11472036B2 (en) Reducing motion blur for robot-mounted cameras
KR20210081797A (ko) 복합 마커 패턴을 사용한 증강현실 기기의 카메라 좌표계의 추정 방법 및 장치
KR20200094021A (ko) 캘리브레이션 장치
CN118570249B (zh) 基于脉冲神经网络的视觉追踪方法、装置及电子设备
CN117733867B (zh) 一种安全人机交互柔顺控制方法、装置、设备及介质
KR102698868B1 (ko) 비전 기반 로봇의 좌표계 통합 시스템 및 그 방법
CN116866705A (zh) 图像获取方法、装置、机器人及计算机可读存储介质
CN112395916B (zh) 目标的运动状态信息确定方法、确定装置及电子设备

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20221115

PA0201 Request for examination
PN2301 Change of applicant

Patent event date: 20230203

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20241112

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20241209

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20241209

End annual number: 3

Start annual number: 1

PG1601 Publication of registration