Archive

Journal of Korea Robotics Society - Vol. 15 , No. 4

[ ARTICLE ]
The Journal of Korea Robotics Society - Vol. 15, No. 4, pp.350-356
Abbreviation: J. Korea Robot. Soc.
ISSN: 1975-6291 (Print) 2287-3961 (Online)
Print publication date 30 Nov 2020
Received 07 Feb 2020 Revised 15 Sep 2020 Accepted 28 Sep 2020
DOI: https://doi.org/10.7746/jkros.2020.15.4.350

모바일 머니퓰레이터의 작업을 위한 카메라 보정 및 포즈 추정
최지훈1 ; 김해창2 ; 송재복

Camera Calibration and Pose Estimation for Tasks of a Mobile Manipulator
Ji-Hoon Choi1 ; Hae-Chang Kim2 ; Jae-Bok Song
1MS student, Mechatronics Engineering, Korea University, Seoul, Korea (johann7430@korea.ac.kr)
2MS student, Mechanical Engineering, Korea University, Seoul, Korea (bluesky1463@korea.ac.kr)
Correspondence to : Professor, Corresponding author: Mechanical Engineering, Korea University, Seoul, Korea (jbsong@korea.ac.kr)


© Korea Robotics Society. All rights reserved.
Funding Information ▼

Abstract

Workers have been replaced by mobile manipulators for factory automation in recent years. One of the typical tasks for automation is that a mobile manipulator moves to a target location and picks and places an object on the worktable. However, due to the pose estimation error of the mobile platform, the robot cannot reach the exact target position, which prevents the manipulator from being able to accurately pick and place the object on the worktable. In this study, we developed an automatic alignment system using a low-cost camera mounted on the end-effector of a collaborative robot. Camera calibration and pose estimation methods were also proposed for the automatic alignment system. This algorithm uses a markerboard composed of markers to calibrate the camera and then precisely estimate the camera pose. Experimental results demonstrate that the mobile manipulator can perform successful pick and place tasks on various conditions.


Keywords: Camera Calibration, Pose Estimation, Marker Detection, Mobile Manipulator

1. 서 론

최근 산업현장에서는 작업자 대신에 모바일 머니퓰레이터를 사용하여 특정 위치에 있는 물체를 집어 모바일 플랫폼에 물체를 적재하고 작업 위치까지 운반한 후에, 머니퓰레이터를 사용하여 적재된 물체를 작업대의 특정 위치에 놓는 작업이 많이 수행되고 있다. 그러나 모바일 플랫폼의 위치추정 오차[1,2]로 인해 작업 위치에 정확히 도착하지 못하는 경우가 많으며, 이러한 오차로 인해 머니퓰레이터는 사전에 교시한 정보를 사용하여 작업대 위에서 작업을 수행하는 것이 어려워진다. 모바일 머니퓰레이터를 활용하여 작업을 수행하기 위해서는 물체의 위치 또는 작업대의 위치를 파악하기 위한 비전 기술이 필요하다. 이러한 솔루션은 많은 머신비전 업체에서 제공하고 있다. 대표적인 솔루션인 Cognex 시스템의 경우, 작업대의 위치를 파악하는 방법을 사용하기 위해 작업대 위에 마커(Align tag)를 부착하고, 물체를 놓을 수 있는 지그를 작업대 위에 고정한다. 그리고 Cognex 카메라로 마커를 인식하고, 물체의 포즈(즉, 위치와 방위)를 추정하여 머니퓰레이터가 지그에 물체의 집기 및 놓기를 수행할 수 있다. 그러나 이러한 카메라와 소프트웨어가 매우 고가이므로 자동화 비용이 증가하게 된다. 따라서 비용 절감을 위해 저가의 카메라를 사용하여 모바일 머니퓰레이터의 작업을 수행할 수 있는 시스템이 필요하다.

마커(ArUco)[3]를 사용하여 카메라의 위치를 추정하는 대표적인 방법은 PnP[4] 기법이며, 이 기법은 3D-2D 정합에 기반하여 카메라의 위치를 추정한다. PnP 기법을 사용하여 정밀한 위치를 추정하기 위해서는 정확한 카메라의 내부 파라미터(intrinsic parameter)가 필요한데, 이를 구하는 대표적인 방법은 Zhang이 제안한 카메라 보정(camera calibration)[5] 기법이며, 이는 카메라를 고정하여 일정한 크기를 갖는 체스보드를 움직여 다양한 각도의 영상을 수집하고, 체스보드로부터 2차원 정보를 획득하여 카메라 보정에 사용한다. 그러나 다양한 영상을 수집하는 중 흐릿한 영상이 포함되어 부정확한 점이 추출되고, 이러한 정보가 반영되어 정교한 카메라의 내부 파라미터 및 왜곡계수를 구하기 힘들다. 실제로 다수의 영상 중 흐릿한 영상을 제거하는 방법은 어려우며, 예외적인 상황에 대처하기 힘들다. 카메라의 내부 파라미터를 정확하게 구할 수 있더라도 PnP 기법은 카메라의 이미지 센서를 기준으로 위치를 추정하는데, 여기서 발생하는 문제는 이미지 센서와 카메라 하드웨어의 조립(제조) 오차이다. PnP 기법은 이러한 오차가 반영되므로 정확한 위치를 추정하기 어렵다.

본 연구에서는 단일 영상을 사용하여 카메라를 보정하는 방법을 제안하고, 마커(April tag)[6,7]로 구성된 마커보드를 사용하여 카메라를 보정하였다. 그리고 정밀한 포즈를 추정하는 방법을 제안하고, 추정한 포즈를 기반으로 모바일 머니퓰레이터 기반의 작업을 수행하기 위해 자동 정렬 시스템을 개발하였다. 이 시스템은 모바일 머니퓰레이터가 마커를 관측할 수 있는 위치에 있을 경우, 작업대에서 물체의 집기 및 놓기를 수행할 수 있다.

본 논문은 다음과 같이 구성된다. 2장에서는 자동 정렬 시스템의 구성에 대하여 설명하고, 3장에서는 카메라 보정 방법과 마커를 사용한 포즈 추정 방법을 제안한다. 4장에서는 제안한 방법의 포즈 추정 성능과 Cognex의 포즈 추정 성능을 비교한 결과에 대해 설명한다. 그리고 실제 로봇에 제안한 방법을 적용하여 머니퓰레이터가 지그에 물체의 집기 및 놓기를 수행한 결과에 대해 설명한 후에, 5장에서는 결론을 도출한다.


2. 자동 정렬 시스템
2.1 모바일 머니퓰레이터 기반의 집기 및 놓기 작업

본 연구에서 모바일 머니퓰레이터 기반의 작업은 모바일 플랫폼 위에 있는 물체를 집어서 작업대의 지정된 위치에 놓거나 작업대의 지정된 위치에 있는 물체를 집어서 모바일 플랫폼 위에 놓는 작업이다. 머니퓰레이터는 모바일 플랫폼 위에 고정되어 상대 위치가 변하지 않으므로 머니퓰레이터 기반의 작업은 초기에 한 번만 교시하면 모바일 플랫폼의 위치와 관계없이 항상 정확하게 수행하는 것이 가능하다. 즉, [Fig. 1(a)]과 같이 머니퓰레이터의 베이스 좌표계 {B}를 기준으로 모바일 플랫폼 상의 지그의 위치(P2)를 교시하여 작업에 사용할 수 있다. 그러나 머니퓰레이터가 작업대 위에 있는 물체를 집거나 작업대 위의 지정 위치에 물체를 놓는 작업의 경우, 모바일 플랫폼의 위치추정 오차로 인하여 작업마다 머니퓰레이터의 베이스 좌표계를 기준으로 한 작업대의 위치 및 방위가 달라지므로, 단순하게 교시를 통해 생성한 작업을 수행해서는 정밀한 작업을 하기 어렵다. 따라서 모바일 머니퓰레이터를 정밀 작업에 활용하기 위해서는 작업대의 상대 위치를 정확하게 추정하여 머니퓰레이터를 작업대와 정렬하는 과정이 필수적이다.


[Fig. 1] 
Position teaching for manipulator task: (a) mobile manipulator, and (b) worktable

본 연구에서 대상으로 사용하는 작업대는 [Fig. 1(b)]와 같이 작업대 위에 부착된 마커가 있으며, 마커의 중심으로부터 일정한 거리 (∆x, ∆y)에 지그의 중심이 위치하여 머니퓰레이터가 물체를 내려놓을 수 있다. 따라서 머니퓰레이터의 말단에 부착된 카메라를 통해 마커를 인식하고, 마커가 카메라 영상의 중심에 위치하도록 머니퓰레이터 말단을 정렬시킨 뒤, 이 자세를 기준으로 머니퓰레이터가 물체를 지그에 내려놓는 상대 자세를 교시하면 모바일 플랫폼의 위치추정 오차와 관계없이 작업대 위의 일정한 위치에 집기 및 놓기 작업을 수행하는 것이 가능해진다. 이와 같이 카메라의 영상을 통해 머니퓰레이터 말단을 마커와 정렬하기 위한 일련의 기능 및 동작을 자동 정렬 시스템이라고 한다.

2.2 자동 정렬 시스템의 구성

자동 정렬 시스템은 카메라 영상에서 마커를 인식하여 마커의 포즈(즉, 위치와 방위)를 추정하고, 마커의 중심점이 카메라 영상의 중심으로 오도록 머니퓰레이터의 말단을 정렬하는 과정을 모두 포함한다. 이러한 과정을 통해 모바일 머니퓰레이터는 작업대 위의 고정된 지그에 물체를 내려놓거나 물체를 집어 올리는 작업을 수행하는 것이 가능하다.

[Fig. 2]는 자동 정렬 프로그램의 실행 순서도이다. 이 프로그램은 총 7단계로 실행되며, 각 단계에 해당하는 작업을 차례로 수행하여 카메라를 통한 머니퓰레이터 말단의 정렬 작업이 완료되면 머니퓰레이터가 작업대에 있는 지그에 물체를 집기 및 놓기를 수행한다. 자동 정렬 프로그램은 크게 마커 인식, 카메라 보정 및 포즈 추정, 머니퓰레이터 정렬과 집기-놓기 작업으로 나눌 수 있다. 1단계부터 2단계는 자동 정렬을 수행하기 위해 카메라가 작업대에 부착된 마커를 인식하는 단계이며, 3단계부터 5단계는 사전에 작업대에서 얻은 마커의 중심점과 현재 다른 위치에 있는 카메라가 관측한 마커를 사용하여 포즈를 추정하는 단계이다. 여기서 정확한 포즈를 추정하기 전에 카메라 보정이 사전에 필수적이며, 이러한 보정 작업은 사전에 한 번만 수행하면 된다. 6단계는 5단계에서 카메라를 사용하여 추정한 포즈 정보를 기반으로 머니퓰레이터의 말단을 이동하는 단계이다. 최종적으로 7단계는 정렬된 위치에서 머니퓰레이터가 마커로부터 떨어진 지그의 위치로 이동하여 지그에 물체의 집기 및 놓기를 수행한다.


[Fig. 2] 
Workflow for automatic alignment system


3. 마커를 통한 카메라 보정 및 포즈 추정
3.1 카메라 보정

본 연구에서는 [Fig. 3(a)]와 같이 서로 다른 ID의 마커로 구성된 마커보드를 사용하여 카메라 보정을 수행한다. 먼저, 카메라 보정을 위해 마커의 변과 중심이 필요하다. [Fig. 3(b)]에서 마커의 밑변이 Si,1이고, 다른 변은 Si,1을 기준으로 반시계 방향으로 Si,2, Si,3, Si,4로 정의한다. [Fig. 3(b)]에서 꼭짓점은 c이고, S의 교차점으로 구할 수 있다. 그리고 마커의 중심을 구하기 위해 ci,1ci,3를 지나는 직선 li,1ci,2ci,4를 지나는 직선 li,2을 구한다. 직선 li,1li,2의 교차점이 마커의 중심 mi이다. 여기서, i는 마커의 ID, S는 픽셀의 수이고, cm은 픽셀 단위의 영상 좌표이다. 그리고 xy 평면의 실제 마커보드에서 마커의 중심은 Mi이다.


[Fig. 3] 
Marker board: (a) the point of marker corresponding to the ID of marker in the image, and (b) extraction of the vertex and center points of the marker

실제 마커보드의 마커는 정사각형이고, 각 마커 간의 거리는 동일한 간격으로 구성되어 있다. 렌즈의 왜곡으로 인해 영상의 마커보드와 실제 마커보드 간에 차이가 존재하여, 마커들의 위치와 길이가 다르다. 이를 해결하기 위해 [Fig. 4]와 같이 왜곡보정을 수행할 수 있는 순서도를 사용한다. 먼저, 왜곡된 영상에서 각 마커의 꼭짓점을 왜곡보정 모델[8]에 적용하여 영상 좌표를 구한다. 이때, 왜곡보정 모델에 사용되는 주점(principal point) cx, cy와 왜곡계수 k1, k2, p1, p2의 초기값이 필요하다. 여기서, 주점은 카메라 렌즈의 중심에서 이미지 센서에 내린 수선의 발의 영상 좌표이고, k1, k2는 방사왜곡(radial distortion), p1, p2는 접선왜곡(tangential distortion)이다. 주점의 초기값은 카메라 센서의 해상도(resolution)의 절반이고, 왜곡계수의 초기값은 0으로 설정하였다.


[Fig. 4] 
Camera calibration method: (a) Marker board in the image, and (b) flowchart of nonlinear optimization

실제 마커보드와 왜곡된 영상에서 마커보드의 차이를 사용하여 오차를 구한다. 그리고 오차가 최소가 되도록 비선형 최소제곱법을 사용하여 카메라의 내부 파라미터와 왜곡보정 계수를 구한다. 비선형 최소제곱법을 사용하기 위해 오차를 구하는 방법은 다음과 같다.

Si,1=ci,1-ci,22,Si,2=ci,2-ci,32,Si,3=ci,3-ci,42,Si,4=ci,4-ci,12(1) 

식 (1)은 마커의 각 변의 픽셀 수를 구하는 식이다.

α=Actual lenght of one side of markerk=14S7,k/4(2) 

식 (2)는 Mi와 단위를 일치시키기 위한 식이다. α는 실제 마커의 한 변의 길이를 S7의 평균값으로 나눈 값으로, 여기서 7번의 마커는 마커보드에서 중앙에 있는 마커이다.

piu,υ=mi-m7(3) 
e1d=i=014αpi-Miα2(4) 
e2d=i=014Si,1-Si,22+Si,1-Si,32+Si,1-Si,42+Si,2-Si,32+Si,2-Si,42+Si,3-Si,42(5) 
ed=e1d,e2dT(6) 
minded22=minde1d+e2d(7) 

식 (3)에서 pi는 영상에서 마커보드의 중앙 m7을 기준으로 다른 14개 마커들의 중심 mi 값의 차이이고, 단위는 픽셀이다. Mi와 단위를 일치시키기 위해 pi에 앞서 구한 α를 곱한다. 식 (4)에서 αpi와 실제 마커보드 Mi의 차는 밀리미터 단위의 오차이므로, 이 오차를 α로 나눠 픽셀의 오차 e1을 구한다. 그리고 마커의 픽셀 수로 구한 변을 이용하여 식 (5)에서 오차 e2를 구한다. 여기서 e1은 마커의 일정한 간격의 오차를 의미하고, e2는 마커의 각 변의 픽셀 수 오차를 나타낸다. 식 (6)에서 오차 e가 최소가 될 수 있도록 비선형 최소제곱법인 식 (7)을 사용한다. 오차 e가 가장 최소가 되는 d = [cx, cy, k1, k2, p1, p2]의 값을 구하여 [Table 1]에 정리하였다.

[Table 1] 
Results of camera calibration
Camera parameters
cx cy k1 k2 p1 p2
622 543 5.7×10-8 7.5×10-14 2.1×10-7 2.3×10-6

카메라 보정은 15개의 마커로 설계된 마커보드를 카메라로 한번 관측하여 1개의 마커에서 4개의 꼭짓점과 1개의 중심을 추출하여 총 75개의 점을 사용하였다. [Fig. 5]는 영상에서 마커보드의 왜곡된 점들과 왜곡 보정된 점을 나타낸 결과이다. 왜곡 보정된 점은 [Table 1]에서 구한 값을 왜곡 보정 모델에 적용하여 구하였다. [Fig. 5]에서 청색은 왜곡된 점이고, 적색은 왜곡 보정된 점이다. 청색의 점을 보면 영상의 중심에서 멀어질수록 왜곡의 영향이 커지는 것을 확인할 수 있다.


[Fig. 5] 
Camera calibration result

3.2 포즈 추정

포즈 추정의 성능을 정밀하게 측정하기 위해 카메라를 이동시키는 대신 카메라를 움직이지 않게 고정한 후, 마커 간의 거리가 일정한 마커보드를 사용했다. 마커 간의 포즈 추정은 영상의 마커를 기준으로 주변의 다른 마커의 포즈를 상대적으로 추정할 수 있다. 즉, 마커 간의 포즈 추정은 하나의 마커를 움직였을 때, 마커의 이동량을 추정할 수 있음을 의미한다. 마커나 카메라 둘 중 어느 것이 움직여도 상대적인 움직임은 동일하므로 이와 같은 방법은 의미가 있다.

[Fig. 6]에서 ∆u, ∆v는 0번 마커의 중심과 1번 마커 중심 간의 픽셀 수이다. 이때, 픽셀 수는 각 마커의 위치 왜곡 오차를 보정한 마커 사이의 픽셀 수이다. 이 거리에 α을 곱하면 0번 마커의 중심으로부터 1번 마커의 중심까지의 실제 거리를 다음과 같이 구할 수 있다.

xy=αuυ,α=0.0678 mm/pixel(8) 

[Fig. 6] 
Pose estimation between markers

식 (8)에서 α는 각 픽셀의 길이이다. 그리고 내적을 사용하면 마커의 각도도 다음과 같이 구할 수 있다.

θ=cos-1a·bab(9) 

식 (9)에서 ab는 마커의 밑변과 관련된 벡터이고, θab를 내적 한 결과이다. 이와 같은 방법으로 한 개의 마커를 기준으로 다른 마커 간의 포즈 (x, y, θ)를 구할 수 있다.


4. 실 험
4.1 마커 간의 포즈 추정 실험

본 실험에서는 Cognex의 프로그램을 변경할 수 없기 때문에 Cognex의 카메라 보정 방법과 Cognex 사에서 사용하는 마커를 Point grey 카메라에는 적용할 수 없고, 반대로 Cognex에 본 논문에서 제안하는 방법과 마커를 사용할 수 없었다. 따라서 제안한 방법과 Cognex의 포즈 추정 정확도를 비교하기 위해 [Fig. 7]과 같이 카메라가 움직이지 않도록 브라켓에 고정한 뒤 마커보드를 관측할 수 있는 환경을 구축하였다. Cognex 카메라를 이용한 포즈 추정 실험은 [Fig. 7(a)]과 같이 Cognex 사에서 사용하는 마커를 사용하여 수행하였으며, Point grey 카메라를 이용한 포즈 추정 실험은 [Fig. 7(b)]과 같은 마커를 사용하여 수행하였다. 서로 다른 마커를 사용하였지만, 마커의 크기 및 마커들의 간격은 모두 동일하며, 마커보드는 아크릴판에 UV 프린터(최대 20 μm 정밀도)를 사용하여 제작하였다. 또한, Point grey 카메라의 경우 본 논문에서 제안한 방식으로 보정하였으며, Cognex의 경우 회사에서 제공하는 방식으로 보정한 후에 실험을 진행하였다.


[Fig. 7] 
Experimental environment: (a) Cognex camera, and (b) Point grey camera

Cognex는 실제 산업현장에서 사용되고 있고, 이미 기술적으로 검증된 센서이므로 Cognex와 Point grey를 동일한 환경으로 설정하여 비교하는 것은 의미가 있다. 실험을 통해 [Fig. 7]과 같이 마커보드를 관측하여 중앙에 있는 마커의 포즈와 다른 14개 마커의 포즈를 추정하고, 실제 마커의 간격과 추정한 포즈의 차를 구하여 오차를 측정하였다. Cognex와 제안한 방법을 비교하기 위해 오차의 평균과 표준편차를 [Table 2]에 정리하였다.

[Table 2] 
Comparison of the proposed method with Cognex
Camera Cognex Point grey
Pose estimation error x μ (mm) 0.0524 0.0572
σ 0.0425 0.0414
y μ (mm) 0.0602 0.0446
σ 0.0667 0.0443
θ μ (mm) 0.180 0.167
σ 0.138 0.120

다음으로 마커가 회전한 상태에서의 포즈 추정 정확도를 비교하기 위해 [Fig. 8]과 같이 마커보드의 중앙에 있는 마커를 제외하고, 다른 14개의 마커를 45° 회전하여 마커보드를 UV 프린터를 사용하여 제작하였다. 앞선 실험 환경과 동일하게 브라켓을 사용하였으며, 마커보드는 0°, 45°를 사용하여 마커 간의 포즈를 추정하였다. 실험을 통해 Cognex 기반의 포즈 추정, 제안한 방법으로 보정한 Point grey 기반의 포즈 추정을 수행하였다. 그리고 OpenCV에서 제공하는 카메라 보정 알고리즘을 사용하기 위해 카메라를 고정하여 일정한 크기를 갖는 체커보드를 움직여 다양한 각도의 영상을 수집하여 카메라 보정에 사용하고 Point grey에 적용하여 포즈 추정을 수행하였다. 이때, 마커 간의 추정한 포즈의 오차는 평균 RMS (root mean square) 위치오차를 계산하여 평균 RMS 위치오차의 평균과 표준편차를 구하여 [Table 3]에 정리하였다.


[Fig. 8] 
Rotation of marker: (a) Align tag, and (b) April tag

[Table 3] 
Pose estimation results
Method Camera calibration with OpenCV Cognex Proposed method
RMS μ (mm) 0.263 0.0865 0.0843
σ 0.0139 0.00202 0.00158

[Table 3]에서 평균 RMS 위치오차의 평균과 표준편차를 결과를 비교하였을 때, 제안한 방법의 오차의 평균은 OpenCV에서 제공하는 카메라 보정 방법보다 67.9% 작고, Cognex보다 2.5% 작았다.

4.2 로봇에 적용한 자동 정렬 시스템 실험

본 연구에서의 성능을 검증하기 위해 [Fig. 9]와 같이 모바일 머니퓰레이터가 모바일 플랫폼 위에 고정된 지그 A에 있는 물체를 집어 작업대 위에 고정된 지그 B에 내려놓는 작업과 반대로 지그 B에 있는 물체를 집어서 지그 A에 내려놓는 작업을 수행하였다. 이때, 작업대 위에는 지그 B로부터 (∆x, ∆y)만큼 떨어진 위치에 마커가 고정되며, 모바일 머니퓰레이터는 머니퓰레이터 말단에 고정된 카메라를 통해 마커를 인식하여 마커의 위치 및 방위를 추정함으로써 지그 B의 위치 및 방위를 알아내어 집기 및 놓기 작업을 수행한다. 지그는 물체의 길이에 0.54 mm의 여유를 갖는다.


[Fig. 9] 
Experimental environment: (a) Point grey camera, (b) April tag and zig fixed to the worktable, (c) Cognex camera, and (d) Align tag and zig fixed to the worktable

마커의 중심이 카메라 영상의 중심과 일치되도록 모바일 머니퓰레이터를 이동시켜 15회 실험을 하였고, 카메라 영상을 사분면으로 나누어 카메라의 영상에서 각 사분면에 마커가 보이는 위치로 모바일 머니퓰레이터를 이동시킨 후 각각 15회씩 실험을 진행하여, 총 75회의 실험을 수행하였다. 머니퓰레이터가 현재 포즈를 추정하기 위해 앞서 설명한 자동 정렬 시스템의 5단계까지 수행한다. 그리고 머니퓰레이터는 카메라의 포즈 추정을 기반으로 6단계를 수행하여 정렬한다. 그리고 머니퓰레이터는 지그 A에 있는 물체를 집고 정렬한 위치까지 이동하여 지그 B에 물체를 놓고 다시 물체를 집어 지그 A에 물체를 놓는다. 이와 같은 방법으로 75회 반복 실험하여 물체를 지그에 놓을 수 있는 성공 횟수를 측정하였는데, Cognex와 제안한 방법 모두 75회 성공, 즉 100% 성공률을 보여주었다. 실험 결과로부터 알 수 있듯이, 제안한 방법은 모바일 플랫폼의 위치추정 오차와 관계없이 작업대 위에 고정된 지그에 물체를 집기 및 놓기 작업을 수행할 수 있다.


5. 결 론

본 연구에서는 모바일 머니퓰레이터의 작업을 위해 자동 정렬 시스템을 구축하였으며, 해당 시스템에 필요한 작업을 개발하였다. 이 시스템은 작업대에 부착된 마커를 관측해서, 7단계의 자동화된 기능을 수행하여 머니퓰레이터가 작업대에 고정된 지그에 물체를 집기 및 놓기를 수행할 수 있도록 카메라 보정 및 포즈 추정을 제안하였다. 제안한 방식으로 카메라를 보정한 후에, 마커 간의 포즈 추정 성능과 자동 정렬 시스템을 실험해 본 결과 다음과 같은 결론을 도출할 수 있다.

  • 1) 제안한 방법의 오차 평균은 OpenCV에서 제공하는 카메라 보정보다 67.9% 작고, Cognex보다 2.5% 작았다. 그리고 제안한 방법의 카메라 보정은 OpenCV의 카메라 보정과 다르게 다양한 영상이 필요하지 않으므로 현장에서 적용하기 용이하다.
  • 2) 로봇에 적용한 자동 정렬 시스템의 실험에 100%의 성공률을 보였다.
  • 3) 모바일 머니퓰레이터가 카메라의 시야에 마커를 관측할 수 있는 위치에 있을 경우, 작업대 위에 고정된 지그에 물체를 집기 및 놓기를 수행할 수 있다.

추후에는 하드웨어적인 오차를 반영하지 않고 동일한 마커를 인식할 수 있도록 마커 인식 기술을 개발하고, 카메라와 작업대가 평행하지 않는 경우에도 정밀한 위치 추정에 대한 연구를 수행할 예정이다.


Acknowledgments

This work was supported by IITP grant funded by the Korea Government MSIT. (No. 2018-0-00622)


References
1. K. Krinkin, A. Filatov, A. yom Filatov, A. Huletski, and D. Kartashov, “Evaluation of modern laser based indoor slam algorithms,” Conference of Open Innovations Association, Jyvaskyla, Finland, pp. 101-106, 2018.
2. Y. Tian and N. Sarkar, “Control of a mobile robot subject to wheel slip,” Journal of Intelligent & Robotic Systems, vol .74, no. 4, pp. 915-929, 2014.
3. S. Garrido-Jurado, R. Muñoz-Salinas, F. J. Madrid-Cuevas, and M. J. Marín-Jiménez, “Automatic generation and detection of highly reliable fiducial markers under occlusion,” Pattern Recognition, vol. 47, no. 6, pp. 2280-2292, 2014.
4. V. Lepetit, F. Moreno-Noguer, and P. Fua, “EPnP: An accurate O(n) Solution to the PnP Problem,” International Journal of Computer Vision, vol. 81, no. 2, pp. 155-166, 2009.
5. Z. Zhang, “A flexible new technique for camera calibration,” IEEE Transactions on pattern analysis and machine intelligence, vol. 22, no. 11, pp. 1330-1334, 2000.
6. E. Olson, “AprilTag: A robust and flexible visual fiducial system,” IEEE International Conference on Robotics and Automation, Shanghai, China, pp. 3400-3407, 2011.
7. J. Wang and O. Edwin, “AprilTag 2: Efficient and robust fiducial detection,” IEEE/RSJ International Conference on Intelligent Robots and Systems, Daejeon, South Korea, pp. 4193-4198, 2016.
8. J. P. de Villiers, F. W. Leuschner, and R. Geldenhuys, “Centi-pixel accurate real-time inverse distortion correction,” Optomechatronic Technologies, San Diego, California, USA, vol. 7266, pp. 1-8, 2008.

최 지 훈

2017 강원대학교 기계메카트로닉스 공학과(학사)

2018~현재 고려대학교 메카트로닉스 공학과(석사과정)

관심분야: 이동로봇의 주행, 모바일 머니퓰레이터

김 해 창

2019 고려대학교 기계공학과(학사)

2019~현재 고려대학교 기계공학과(석박사통합과정)

관심분야: 이동로봇의 주행, 지능로봇 시스템

송 재 복

1983 서울대학교 기계공학과(공학사)

1985 서울대학교 기계공학과(공학석사)

1992 MIT(공학박사)

1993~현재 고려대학교 기계공학부 정교수

관심분야: 다양한 머니퓰레이터의 개발, 지능로봇 시스템의 설계 및 제어, 이동로봇의 주행.