๐DexPilot ๋ฆฌ๋ทฐ
- DexPilot์ ์ ๋น์ฉ ๋น์ ๊ธฐ๋ฐ ์๊ฒฉ ์กฐ์ ์์คํ ์ผ๋ก, ์ฅ๊ฐ์ด๋ ๋ง์ปค ์์ด ๋งจ์ ์์ง์์ ์ฌ์ฉํ์ฌ 23 DoA์ ๋ก๋ด ํ/์ ์์คํ ์ ์๋ฒฝํ๊ฒ ์ ์ดํฉ๋๋ค.
- ์์คํ ์ ๋ฅ๋ฌ๋๊ณผ ๋ชจ๋ธ ๊ธฐ๋ฐ ์ถ์ (DART)์ ๊ฒฐํฉํ์ฌ ์ธ๊ฐ ์์ ํฌ์ฆ์ ๊ด์ ๊ฐ๋๋ฅผ ์ถ์ ํ๊ณ , ๋น์ ํ ์ต์ ํ ๊ธฐ๋ฐ์ ํค๋ค๋งํฑ ๋ฆฌํ๊ฒํ ์ ํตํด Allegro hand์ ๋์์ผ๋ก ๋ณํํฉ๋๋ค.
- DexPilot์ ๋ค์ํ ๋ณต์กํ ์กฐ์ ์์ ์์ ์ธ๊ฐ ์์ฐ์๋ฅผ ํตํด ๋์ ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํ๋ฉฐ, ์ด๋ฅผ ํตํด ์๋ จ๋ ๋์ ๋ฐ์ดํฐ ์์ง ๋ฐ ๋ฏธ๋์ ์์จ ์ ์ฑ ํ์ต ๊ฐ๋ฅ์ฑ์ ๋ณด์ฌ์ค๋๋ค.
Brief Review
๋ณธ ๋ ผ๋ฌธ์ ๊ณ ์์ ๋(high degree-of-actuation, DoA) ๋ก๋ด ์-ํ ์์คํ (Allegro Hand๊ฐ ์ฅ์ฐฉ๋ KUKA LBR iiwa)์ ์ํ ์ ๋น์ฉ, Vision Based Teleoperation ์์คํ ์ธ DexPilot์ ์๊ฐํ๋ค. DexPilot์ ํน๋ณํ ์ฅ๋น(markerless, glove-free) ์์ด ๋งจ์(bare human hand)์ ์์ง์์ ๊ด์ฐฐํ์ฌ ๋ก๋ด์ ์ง์ ๋ชจ๋ฐฉ ์ ์ด(direct imitation)ํ๋ค. ์ด ์์คํ ์ ์ ๊ตํ ํ์ง(precision grasp), ๋ค์ง ์กฐ์(multi-fingered manipulation), ์ธ-ํธ๋ ์กฐ์(in-hand manipulation) ๋ฑ ๋ค์ํ ๋ณต์กํ Task๋ฅผ ์ํํ ์ ์๊ฒ ํ๋ฉฐ, ์ด๋ฅผ ํตํด ํ์ต์ ์ํ ๊ณ ์ฐจ์ ์ผ์ ๋ฐ์ดํฐ ๋ฐ ํ๋ ๋ฐ์ดํฐ(sensorimotor state-action data)๋ฅผ ์์งํ๋ ๋ฐ ํ์ฉ๋ ์ ์๋ค.
์์คํ ์ํคํ ์ฒ ๋ฐ ํ๋์จ์ด: ์์คํ ์ KUKA LBR iiwa7 R800 ๋ก๋ด ํ๊ณผ Wonik Robotics Allegro Hand๋ก ๊ตฌ์ฑ๋ ๋ก๋ด ์์คํ ๊ณผ, ์กฐ์์์ ์์ ๊ด์ฐฐํ๋ 4๋์ Intel RealSense D415 RGB-D ์นด๋ฉ๋ผ๋ก ๊ตฌ์ฑ๋ ์ธ๊ฐ ์กฐ์์ ์์ญ์ผ๋ก ๋๋๋ค. Allegro Hand์๋ SynTouch BioTac ์ด๊ฐ ์ผ์์ 3M TB641 ๊ทธ๋ฆฝ ํ ์ดํ๊ฐ ์ฅ์ฐฉ๋์ด ์ด๊ฐ ํผ๋๋ฐฑ ์ ํธ(92๊ฐ)์ ๋ง์ฐฐ๋ ฅ์ ์ ๊ณตํ๋ค. ์์คํ ์ Vision Based Perception, Optimization, Motion Generation, Control ๋ชจ๋๋ก ๊ตฌ์ฑ๋๋ฉฐ, ์ฝ 1์ด์ Latency๋ฅผ ๊ฐ์ง๋ค.

ํต์ฌ ๋ฐฉ๋ฒ๋ก :
- ํธ๋ ํธ๋ํน (Hand Tracking): ์กฐ์์์ ์ ์ถ์ ์ DART ์ Deep Neural Networks์ ์กฐํฉ์ผ๋ก ์ด๋ฃจ์ด์ง๋ค.
- DART: articulated human hand model ([28, 29] ๊ธฐ๋ฐ)์ ์ ๋ ฅ Point Cloud์ ๋งค์นญํ์ฌ ์์ Pose์ 20๊ฐ Joint Angle์ ์ฐ์์ ์ผ๋ก ์ถ์ ํ๋ ๋ชจ๋ธ ๊ธฐ๋ฐ(model-based) ์ถ์ ๊ธฐ์ด๋ค. Nonlinear Optimization ๊ธฐ๋ฐ์ด๋ฏ๋ก ์ ํํ ์ด๊ธฐํ๊ฐ ํ์์ ์ด๋ฉฐ, Spurious Local Minima์ ๋น ์ง๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด Neural Network๋ก๋ถํฐ Hand Pose Prior์ Hand Segmentation ์ ๋ณด๋ฅผ ํ์ฉํ๋ค.
- Neural Networks: DART์ ์ด๊ธฐํ ๋ฐ ๊ฐ๊ฑด์ฑ(robustness) ํ๋ณด๋ฅผ ์ํด ๋ ๋จ๊ณ๋ก ํ์ต๋ Neural Network๊ฐ ์ฌ์ฉ๋๋ค.
- First Phase (with Glove for Annotation): ๋ฐ์ดํฐ ์์ง ์ด๊ธฐ์๋ ์์ ๋ธ๋กญ(coloured blobs)์ด ๋ถ์ฐฉ๋ ์ฅ๊ฐ์ ์ฐฉ์ฉํ๊ณ ResNet-50 with spatial-softmax ๊ธฐ๋ฐ์ GloveNet์ ํ๋ จ์์ผ RGB ์ด๋ฏธ์ง์์ ๋ธ๋กญ์ 2D ์์น๋ฅผ ์์ธกํ๋ค. ํนํ ์๋ฐ๋ฅ ๋ท๋ฉด์ 3๊ฐ ๋ธ๋กญ์ ์ฌ์ฉํ์ฌ Hand Pose๋ฅผ ์ถ์ ํ๋ค. 4๋ ์นด๋ฉ๋ผ์ ์์ธก ๋ฐ Depth ๊ฐ์ ์ด์ฉํ์ฌ 3D Hand Pose๋ฅผ ์ป๊ณ Hand Segmentation์ ์ํํ๋ค. DART๋ ์ด Segmentation๋ Point Cloud์ ๋ํด์๋ง ์ต์ ํํ์ฌ Annotation ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๋ค.
- Second Phase (Bare Hand Tracking): First Phase์์ ์์ฑ๋ Annotation์ ์ฌ์ฉํ์ฌ ๋งจ์(bare hand)์ Fused Point Cloud๋ฅผ ์ง์ ์ฒ๋ฆฌํ๋ค. PointNet++ ๊ธฐ๋ฐ ์ํคํ ์ฒ๊ฐ ์ฌ์ฉ๋๋ฉฐ, ํ ์ด๋ธ Point ์ ๊ฑฐ ํ Arm๊ณผ Body๋ฅผ ํฌํจํ Point Cloud๋ฅผ ์ ๋ ฅ๋ฐ์ Hand๋ฅผ Localizeํ๊ณ Hand Pose ๋ฐ Hand Segmentation(Auxiliary Segmentation Loss ์ฌ์ฉ)์ ์ถ์ ํ๋ค. ์ด ๋คํธ์ํฌ๋ ์์ 23๊ฐ Keypoint(์๊ฐ๋ฝ๋ณ 4๊ฐ ๊ด์ + ์๋ฐ๋ฅ ๋ท๋ฉด 3๊ฐ)์ 3D ์ขํ๋ฅผ ์์ธกํ๋๋ก ํ๋ จ๋๋ค. Uniform Sub-sampling์ผ๋ก ์ธํ ์๊ฐ๋ฝ Keypoint ์์ธก ์ ํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด, ์ฒซ ๋จ๊ณ์ Pose์ Segmentation์ ๊ธฐ๋ฐ์ผ๋ก ์ ์์ ํฌ์ธํธ๋ฅผ ๋ค์ ์ํ๋งํ์ฌ ๋ ๋ฒ์งธ ๋จ๊ณ(second stage)์์ Keypoint ์์ธก์ ์ ๋ฐํํ๋ค.
- JointNet: ์์ธก๋ 23๊ฐ Keypoint ์์น(23x3 ๋ฒกํฐ)๋ฅผ 20๊ฐ Joint Angle(์๊ฐ๋ฝ ๊ด์ )๋ก ๋งคํํ๋ 2-layer fully connected network์ธ JointNet์ ์ฌ์ฉํ์ฌ DART์ Joint Prior๋ฅผ ์ ๊ณตํ๋ค.
- ์ด๋ํ์ ๋ฆฌํ๊ฒํ
(Kinematic Retargeting): ์ธ๊ฐ ์์ ๊ด์ ์์ง์์ Allegro Hand์ ๊ด์ ์์ง์์ผ๋ก ๋งคํํ๋ ๊ณผ์ ์ด๋ค. ์ธ๊ฐ ์๊ณผ Allegro Hand๋ ์ด๋ํ์ ์ผ๋ก ๋ค๋ฅด๋ฏ๋ก, Grasping๊ณผ Manipulation์ ์ค์ํ Fingertip Task-Space Metrics์ ์ฐ์ ์์๋ฅผ ๋๋ค.
- ๋น์ฉ ํจ์(Cost Function)๋ ๋ค์๊ณผ ๊ฐ์ด ์ ์๋๋ค: C(q_h, q_a) = \frac{1}{2N}\sum_{i=0} s(d_i)||r_i(q_a) - f(d_i)\hat{r}_i(q_h)||^2 + \gamma||q_a||^2 ์ฌ๊ธฐ์ q_h, q_a๋ ๊ฐ๊ฐ ์ธ๊ฐ ์๊ณผ Allegro Hand์ ๊ด์ ๊ฐ๋์ด๋ฉฐ, r_i๋ ํ ์ขํ๊ณ(์: ์๋ฐ๋ฅ)์์ ๋ค๋ฅธ ์ขํ๊ณ(์: ์๊ฐ๋ฝ ๋)๊น์ง์ ๋ฒกํฐ์ด๋ค. d_i = ||r_i(q_h)||, \hat{r}_i(q_h) = \frac{r_i(q_h)}{||r_i(q_h)||}์ด๋ค.
- s(d_i)๋ ์ค์์นญ ๊ฐ์ค์น ํจ์(switching weight function)๋ก, ์ถ์ ์ค๋ฅ๊ฐ ์์ ๋ ์ ๋ฐ ํ์ง(precision grasp) ์ ์๊ฐ๋ฝ ์ถฉ๋์ ๋ฐฉ์งํ๊ณ Thumb์์ ์ ์ด์ ๊ฐ๊น๊ฒ ํ๋ Projection Scheme์ ์ฌ์ฉ๋๋ค. d_i๊ฐ ์๊ณ๊ฐ \epsilon๋ณด๋ค ์์ ๊ฒฝ์ฐ, Primary Finger-Thumb ๋ฒกํฐ์๋ 0, Primary Finger-Primary Finger ๋ฒกํฐ์๋ 400์ ๊ฐ์ค์น๋ฅผ ๋ถ์ฌํ๋ค (Table I).
- f(d_i)๋ ๊ฑฐ๋ฆฌ ํจ์(distancing function)๋ก, d_i๊ฐ \epsilon๋ณด๋ค ํด ๊ฒฝ์ฐ \beta d_i (\beta=1.6)๋ก ๋น๋ก ์ค์ผ์ผ๋งํ๊ณ , ์์ ๊ฒฝ์ฐ Primary Finger-Thumb ๊ฐ์ ๊ฑฐ๋ฆฌ๋ \eta_1 (10^{-4}m), Primary Finger ๊ฐ์ ๊ฑฐ๋ฆฌ๋ \eta_2 (3 \times 10^{-2}m)๋ก ๊ฐ์ ํ์ฌ ์ต์/์ต๋ ๊ฑฐ๋ฆฌ๋ฅผ ์ ์งํ๋ค.
- \gamma||q_a||^2๋ ์ ๊ทํ ํญ(regularization term)์ผ๋ก, \gamma=2.5 \times 10^{-3}์ด๋ฉฐ Allegro ๊ด์ ๊ฐ๋๋ฅผ 0(์์ ํ ์ด๋ฆฐ ์)์ผ๋ก ์ ๊ทํํ์ฌ ํด์ ์ค๋ณต์ ์ค์ด๊ณ ๋น์ ์์ ์ธ ์์ธ๋ฅผ ๋ฐฉ์งํ๋ค.
- ๋ฒกํฐ r_i๋ ๊ฑฐ๋ฆฌ์ ๋ฐฉํฅ๋ฟ๋ง ์๋๋ผ ์ขํ๊ณ์ Orientation ์ ๋ณด๋ ํฌํจํ๋ค. Allegro Hand์ Primary Finger distal ๊ด์ ์ medial ๊ด์ ๊ณผ ๋์ผํ๊ฒ ์ ์ฝ๋๋ค.
- ์ด ๋น์ฉ ํจ์๋ NLopt ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ Sequential Least-Squares Quadratic Programming (SLSQP) ์๊ณ ๋ฆฌ์ฆ [35, 36, 37]์ ์ฌ์ฉํ์ฌ ์ค์๊ฐ์ผ๋ก ์ต์ํ๋๋ค. Forward Kinematic ๊ณ์ฐ์ Orocos Kinematics and Dynamics library ๋ฅผ ์ฌ์ฉํ๋ค. ๊ฒฐ๊ณผ๋ First-Order Low-Pass Filter๋ฅผ ๊ฑฐ์น๋ค.
- ๋ชจ์
์์ฑ ๋ฐ ์ ์ด (Motion Generation and Control):
- Allegro Palm์ Cartesian Pose๋ Riemannian Motion Policies (RMPs) [39, 40]๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ด๋๋ค. RMPs๋ Arm์ Torque-Level Impedance Controller์ ๋ชฉํ Joint Trajectory๋ฅผ 200Hz๋ก ๋ณด๋ธ๋ค.
- Kinematically Retargeting๋ Allegro Angles๋ Allegro Hand์ Torque-Level Joint Controller์ 30Hz๋ก ๋ณด๋ธ๋ค.
- ๋ก๋ด๊ณผ ์นด๋ฉ๋ผ ์์คํ ๊ฐ์ ๊ณต๊ฐ ์ ๋ ฌ์ ์ด๊ธฐ ์ ์์ธ(ํ ์ด๋ธ๊ณผ ํํํ ์์ ํ ์ด๋ฆฐ ์)๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ณด์ ํ์ฌ ์กฐ์์๊ฐ ์ง๊ด์ ์ผ๋ก ๋ก๋ด์ ์ ์ดํ ์ ์๊ฒ ํ๋ค.

์คํ ๋ฐ ๊ฒฐ๊ณผ: DexPilot ์์คํ ์ Pringles ์บ ์ ๋ ฌ, ์ปต ์ฝ์ , ๋ ๊ฐ ํ๋ธ ํ์ง, ์ง๊ฐ์์ ๋ ๊บผ๋ด๊ธฐ ๋ฑ 15๊ฐ์ง ๋ค์ํ Task (Table II, Fig. 1)์ ๋ํด ๋ ๋ช ์ ์กฐ์์๋ฅผ ๋์์ผ๋ก ํ ์คํธ๋์๋ค. ์ฑ๋ฅ์ ํ๊ท ์๋ฃ ์๊ฐ(Mean Completion Time, CT)๊ณผ ์ฑ๊ณต๋ฅ (Success Rate)๋ก ์ธก์ ๋์๋ค (Fig. 14, 15). ๊ฒฐ๊ณผ๋ ์ด๊ฐ ํผ๋๋ฐฑ ๋ถ์ฌ์๋ ๋ถ๊ตฌํ๊ณ ๋ค์ํ Task์์ ๋์ ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํ์์ ๋ณด์ฌ์ค๋ค. ๋ณต์กํ Task ์ํ์ Bare Hand ๊ด์ฐฐ๋ง์ผ๋ก๋ ์ ๊ตํ Skill ์ ๋ฌ์ด ๊ฐ๋ฅํจ์ ์ ์ฆํ๋ค. Task ์ํ ์ค ์์ง๋ ํ๋ถํ Sensorimotor ๋ฐ์ดํฐ(BioTac ์ ํธ ๋ฑ)๋ ํฅํ ๋ก๋ด ํ์ต์ ํ์ฉ๋ ์ ์๋ค.
๋ ผ์ ๋ฐ ํ๊ณ: DexPilot์ ๋ณต์กํ Manipulation Task ํด๊ฒฐ์ ์ํ ์คํ ๊ฐ๋ฅํ๊ณ ์ ๋ ดํ Teleoperation ์๋ฃจ์ ์ ์ ๊ณตํ๋ฉฐ, ํ์ต์ ์ํ ๊ณ ํ์ง ๋ฐ์ดํฐ ์์ง์ ๊ฐ๋ฅํ๊ฒ ํ๋ค. ํฅํ ๊ฐ์ ๋ฐฉํฅ์ผ๋ก๋ Deep Learning ๋ฐ์ ์ ํตํ Hand Tracking ์ ํ๋ ํฅ์, RGB ๋ฐ์ดํฐ ํ์ฉ, ์์จ์ ์ธ ํ ์กฐ์ ์ ์ด ๊ธฐ๋ฅ ํตํฉ, ์๋ ์ธ์ ๋ฑ์ด ์ ์๋๋ค. ํ๊ณ์ ์ผ๋ก๋ ์ ํ์ ์ธ ์์ ๊ณต๊ฐ, Projection Scheme์ด Finger Gaiting์ด๋ ์์ ๋ฌผ์ฒด ๋๊ธฐ๋ฅผ ๋ฐฉํดํ๋ ๋ฌธ์ , ์ด๊ฐ ํผ๋๋ฐฑ ๋ถ์ฌ๋ก ์ธํ ์ ๋ฐ Task(์: NIST Peg-in-hole insertion)์ ์ด๋ ค์, ์์คํ Latency, ์กฐ์์ ์ ํฌ๊ธฐ/๋ชจ์์ ๋ํ ๊ฐ๊ฑด์ฑ ๋ฑ์ด ์ธ๊ธ๋๋ค. ํนํ Peg-in-hole Insertion๊ณผ ๊ฐ์ ๊ณ ์ ๋ฐ Task๋ ํ์ฌ ์์คํ ์ผ๋ก๋ ์๋๋ ๊ฐ๋ฅํ๋ ์ฑ๊ณต๋ฅ ์ด ๋งค์ฐ ๋ฎ์ ์ถ๊ฐ์ ์ธ ๊ฐ์ ์ด ํ์ํ๋ค.
์ฃผ์ Contribution:
- Markerless, glove-free, ์ ์ ์ผ๋ก Vision-based์ธ Teleoperation ์์คํ ์ผ๋ก ๊ณ ์์ ๋ ๋ก๋ด ์-ํ ์์คํ ์ ์ง์ ๋ชจ๋ฐฉ ์ ์ดํ๋ค.
- Hand Joint ์ถ์ ์ค๋ฅ ์กด์ฌ ์์๋ ์ ๊ธฐ๊ต์ Precision Grasp์ ์คํ ๊ฐ๋ฅ์ฑ์ ๋ณด์กดํ๋ Novel Cost Function ๋ฐ Projection Scheme for Kinematically Retargeting Human Hand Joints to Allegro Hand Joints.
- Fine Manipulation๊ณผ Dexterity๋ฅผ ํฌํจํ๋ ๋ค์ํ Task์์์ Teleoperation ์์คํ ์์ฐ ๋ฐ ํ๊ฐ.
- ์ด๊ฐ ํผ๋๋ฐฑ ๋ถ์ฌ์๋ ๋์ Task ์ฑ๊ณต๋ฅ ๋ฌ์ฑ.
Detail Review
1. ์ฐ๊ตฌ ๊ฐ์ ๋ฐ ๊ธฐ์ฌ
DexPilot์ ๊ณ ์์ ๋(23 DoF)์ ๋ค์ง๋ฅ ๋ก๋ด ์โํ ์์คํ ์ ์ ๋น์ฉยท์๊ฐ ๊ธฐ๋ฐ์ผ๋ก ์๊ฒฉ ์กฐ์ํ๊ธฐ ์ํ ์์คํ ์ด๋ค. ์ ํต์ ์ธ ํ ๋ ์คํผ๋ ์ด์ ์์คํ ์ ๊ณ ์์ ๋ ๋ก๋ด ์ ์ด์ ๊ณ ๊ฐ์ ์ผ์(๊ธ๋ฌ๋ธ, ๋ง์ปค, ๋ชจ์ ์บก์ฒ ๋ฑ)๋ฅผ ์๊ตฌํ์ง๋ง, DexPilot์ ์ค์ ์ธ๊ฐ์ ๋งจ์ ์์ง์๋ง์ผ๋ก 23์์ ๋์ Allegro ๋ก๋ด ์๊ณผ ๋ก๋ด ํ์ ์ง์ ๋ชจ์ฌยท์ ์ดํ๋ค. ์ฃผ์ ๊ธฐ์ฌ๋ก๋ (1) ๋ง์ปค๋ ์ฅ๊ฐ ์์ด ์์ RGB-D ์นด๋ฉ๋ผ๋ก ์ธ๊ฐ ์์ ์ถ์ ํ์ฌ ๋ก๋ด ์์ ์ ์ฌํ๋ ์๊ฐ ๊ธฐ๋ฐ ๊ธ๋ฌ๋ธ-ํ๋ฆฌ ํ ๋ ์คํผ๋ ์ด์ ๊ตฌํ, (2) ์ ๋(fingertip) ์์น ๋ฐ ๋ฐฉํฅ์ ๋ณด์กดํ๋ฉด์ ์ธ๊ฐ ์ ๊ด์ ์ํ๋ฅผ Allegro ์ ๊ด์ ๋ก ๋งคํํ๋ ์๋ก์ด ๋น์ฉ ํจ์ ๋ฐ ํฌ์(projection) ๊ธฐ๋ฒ ์ ์, (3) ์ ๋ฐํ ์ง๊ธฐ(pinching)์ ๋ค์ค ๋จ๊ณ ์กฐ์์ ํฌํจํ ๋ค์ํ ๊ณผ์ (์งํ ์ถ์ถ, ์๋ ์ด๊ธฐ, ์ฝ๋ณ ๊ฐ๋ด ๋ฑ)์์ 23DoA ์์คํ ์กฐ์์ ์์ฐ, (4) ๋ ๋ช ์ ํ์ผ๋ฟ์ผ๋ก ์งํํ ์คํ์์ ์๋ ๋ฐ ์ฑ๊ณต๋ฅ ์งํ๋ก ์์คํ ์ฑ๋ฅ์ ํ๊ฐ์ด๋ค. ์ด ๊ฒฐ๊ณผ ๊ณ ์์ ๋ ๋ก๋ด ์กฐ์์ฉ ๋์ฉ๋ ์ํยทํ๋(์ํ/์ก์ ) ๋ฐ์ดํฐ ์์ง์ด ๊ฐ๋ฅํ๋ฉฐ, ํฅํ ๋จธ์ ๋ฌ๋ ๊ธฐ๋ฐ ์กฐ์ ์ ์ฑ ํ์ต์ ์ ์ฉํ ๋ฐ์ดํฐ์ ์ ์ ๊ณตํ ์ ์๋ค.
2. ์์คํ ๊ตฌ์ฑ ๋ฐ ์ ์ถ์ ๋ฐฉ๋ฒ
DexPilot์ ํ๋์จ์ด๋ KUKA LBR iiwa7 ํ๋๋ก๋ด ํ๊ณผ Wonik Allegro ์์ผ๋ก ๊ตฌ์ฑ๋๋ฉฐ, Allegro ์ ๋์๋ Biotac ์ด๊ฐ ์ผ์๋ฅผ ์ฅ์ฐฉํ์๋ค[9]. ์ฌ๋ ํ์ผ๋ฟ ์์ญ์๋ ๊ฒ์์ ์ฒ์ผ๋ก ๋ฎ์ธ ํ ์ด๋ธ ์์ 4๋์ Intel RealSense D415 RGB-D ์นด๋ฉ๋ผ๊ฐ ๋ฐฐ์น๋์ด, ์ธ๊ฐ ์์ ์ฌ๋ฌ ์์ ์์ ๊ด์ฐฐํ๋ค. ์์คํ ์ ์ธ ๊ฐ์ ์ฒ๋ฆฌ ์ค๋ ๋๋ก ๋ณ๋ ฌ ์คํ๋๋ค. ํ์ต ์ค๋ ๋๋ 4๊ฐ ์นด๋ฉ๋ผ์ ์ตํฉ๋ ํฌ์ธํธ ํด๋ผ์ฐ๋๋ก๋ถํฐ ์์ ์์ธ ๋ฐ ๊ด์ ๊ฐ์ ์ถ์ ํ๋ ์ ๊ฒฝ๋ง์ ์คํํ๋ฉฐ, ์ด๋ฅผ ํตํด ์ป์ ์ด๊ธฐ ์ถ์ ๊ฐ์ ํ์ ๋ชจ๋์ ์ ๊ณตํ๋ค. ์ถ์ ์ค๋ ๋๋ DART(Differentiable Articulated Rigid-body Tracker)๋ฅผ ์ฌ์ฉํ์ฌ ์ธ๊ฐ ์ ๋ชจ๋ธ์ 6์์ ๋ ์์น ๋ฐ 20๊ฐ ๊ด์ (๊ฐ ์๊ฐ๋ฝ๋น 4๊ฐ: 1 abduction, 3 flexion)์ ์์ธ๋ฅผ ์ง์์ ์ผ๋ก ์ต์ ํ ์ถ์ ํ๋ค[11]. ์ด๋, ์ ๊ฒฝ๋ง์ด ์ ๊ณตํ ์ ์์น/๊ด์ ๊ฐ ์์ธก์ด ์ด๊ธฐ๊ฐ(prior)์ผ๋ก ์ฌ์ฉ๋์ด ๋ก์ปฌ ๋ฏธ๋๋ง๋ก ๋น ์ง๋ ๊ฒ์ ๋ฐฉ์งํ๋ค. ์ ์ด ์ค๋ ๋๋ Riemannian Motion Policy(RMP) ๊ธฐ๋ฐ์ ์ ์ด ๋ฐฉ์ ์์ ๊ณ์ฐํ์ฌ Allegro ์๋ฐ๋ฅ์ ๋ชฉํ ์์นยท์์ธ์ ํ ๋์์ ์์ฑํ๋ค. ์ ์ฒด ์์คํ ์ ์๋-ํฌ-์๋ ์ง์ฐ(latency)์ ์ฝ 1์ด ์ ๋๋ก ๋ณด๊ณ ๋์๋ค.
์๊ฐ ๊ธฐ๋ฐ ์ ์ถ์ ์ ์ํด DexPilot์ ๋ ๋จ๊ณ์ ๋ฅ๋ฌ๋ ๋ชจ๋ธ๊ณผ DART ์ต์ ํ๋ฅผ ๊ฒฐํฉํ์๋ค. ์ฒซ ๋ฒ์งธ ๋จ๊ณ์์๋ ํ์ผ๋ฟ์ด ์ฐฉ์ฉํ ์ปฌ๋ฌ ์ฅ๊ฐ(glove)์ ํ์ฉํ์ฌ ํ์ต ๋ฐ์ดํฐ๋ฅผ ์ป๋๋ค[15]. ์ฅ๊ฐ์ ์๊ฐ๋ฝ ๋๊ณผ ์๋ฐ๋ฅ์ ์๋ก ๋ค๋ฅธ ์์ ์ ์ ๋ถ์ฐฉํ๊ณ , 4๋์ RGB ์นด๋ฉ๋ผ๋ก ๊ด์ฐฐํ RGB ์์์ ResNet-50 ๊ธฐ๋ฐ์ ํ๊ท ๋คํธ์ํฌ(GloveNet)๋ฅผ ํตํด ์์ ์ 2D ์์น๋ฅผ ์ถ์ ํ๋ค[16]. ์ด๋ ๊ฒ ์ป์ 2D ์ขํ์ ๊น์ด(depth)๋ฅผ ๊ฒฐํฉํด 3D ์์น๋ฅผ ๊ณ์ฐํ๊ณ , ๊ทธ๋ก๋ถํฐ ์์ ํฌ์ฆ(์ธ ์ ์ ์์น)์ ๋ถํ (segmentation)์ ๊ตฌํ๋ค[17]. ์ด ์ ๋ณด๋ฅผ ์ด์ฉํด DART๊ฐ ์ ๋ชจ๋ธ์ ์ธ๋ถํ(segmented point cloud)์ ๋ง์ถ์ด ์ต์ ํํ๋๋ก ํจ์ผ๋ก์จ, ์ด๊ธฐ์๋ ์ฅ๊ฐ์ ์ด ์ํ์์ ์ ํํ ์ ๊ด์ ๊ฐ ์ด๋ ธํ ์ด์ ์ ์์ฑํ๋ค. ๋ ๋ฒ์งธ ๋จ๊ณ์์๋ ์ฅ๊ฐ ์์ด ์ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ค. 4๊ฐ ์นด๋ฉ๋ผ์ ๊น์ด ์์์ ์ตํฉํ์ฌ ํ ์ด๋ธ ํ๋ฉด์ ์ ๊ฑฐํ ํ, ๋จ์ ์ยทํ ํฌ์ธํธํด๋ผ์ฐ๋๋ฅผ PointNet++ ๊ธฐ๋ฐ ๋คํธ์ํฌ์ ์ ๋ ฅํ๋ค. ์ด ๋คํธ์ํฌ๋ ์ ๋ถ๋ถ์ ๋ถ๋ฆฌํ๊ณ (์๋ถํ ), ์๋ผ์ 23๊ฐ ์ฃผ์ ๊ด์ ์ (keypoints; ์๊ฐ๋ฝ๋น 4๊ฐ, ์๋ฐ๋ฅ ํ๋ฉด 3๊ฐ)๋ฅผ 3D ์ขํ๋ก ํ๊ทํ๋ค. ์ฒซ ๋จ๊ณ์ ์๋ฐ๋ฅ ์ปฌ๋ฌ ์ฅ๊ฐ ๋ฐฉ์์ผ๋ก ์์ฑ๋ ์ด๋ ธํ ์ด์ ์ ํ์ต์ ์ฌ์ฉํ์ฌ, ์ค์ ๋งจ์ ๋ฐ์ดํฐ์์๋ ์ ๊ด์ ํฌ์ฆ๋ฅผ ์์ธกํ๋ค. ๋ํ, 23๊ฐ ํคํฌ์ธํธ๋ฅผ 20์ฐจ์ ๊ด์ ๊ฐ์ผ๋ก ๋ณํํ๊ธฐ ์ํ JointNet(2์ธต ์์ ์ฐ๊ฒฐ๋ง)๋ ํจ๊ป ํ์ต์์ผฐ๋ค. ์ด ๋ฅ ๋คํธ์ํฌ๋ค ๋๋ถ์ DART ์ถ์ ์ด ์ฅ๊ธฐ๊ฐ ์์ ์ ์ผ๋ก ์ํ๋๋ฉฐ, ๊ฒ์ฆ ์ ์์ ํ๊ท ํคํฌ์ธํธ ์ค์ฐจ๋ ์ฝ 9.7mm, ๊ด์ ๊ฐ ์ค์ฐจ๋ ์ฝ 1.33ยฐ๋ก ๋ณด๊ณ ๋์๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก, DexPilot์ ์นด๋ฉ๋ผ ํฌ์ธํธํด๋ผ์ฐ๋โํคํฌ์ธํธโ๊ด์ ๊ฐ ์ถ์ โDART ๋ฏธ์ธ์กฐ์ ์ ํ์ดํ๋ผ์ธ์ ํตํด ์ธ๊ฐ ์์ ํฌ์ฆ์ ๊ด์ ์ํ๋ฅผ ์ค์๊ฐ์ผ๋ก ์ป์ด๋ธ๋ค.


3. ์ธ๊ฐ-๋ก๋ด ์ ๋งคํ ์ ๋ต ๋ฐ ์ํ์ ๋ชจ๋ธ๋ง
์ธ๊ฐ ์๊ณผ Allegro ๋ก๋ด ์์ ๊ด์ ์, ๊ด์ ์ถ ๋ฐฐ์น, ์๊ฐ๋ฝ ๊ธธ์ด ๋ฑ์ด ํฌ๊ฒ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋จ์ํ ๋์(mapping)์ด ๋ถ๊ฐ๋ฅํ๋ค. DexPilot์ ์ ๋ฐ ์กฐ์ ๊ด์ ์์ ์๋(fingertip) ์์ ๊ณต๊ฐ(task-space) ์ ์ต์ฐ์ ์ํ์ฌ ๋ ์์ ๋์์ ์ฐ๊ฒฐํ๋ค.

์๋์ ์๋ ์์น์ ๋ฐฉํฅ ์ ๋ณด๊ฐ ์ธ๊ฐยท๋ก๋ด ์์ ์ฃผ์ ์กฐ์์ ๊ฒฐ์ ํ๋ค๊ณ ๋ณด๊ณ , ์ด๋ค ์ฌ์ด ๊ฑฐ๋ฆฌ๋ฅผ ์ต์ํํ๋ ์ต์ ํ ๊ธฐ๋ฐ ๋งคํ(cost function)์ ์ค๊ณํ์๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, ์ธ๊ฐ ์ ์์ธ q_h์ Allegro ์ ๊ด์ q_a์ ๋ํด ๋ค์๊ณผ ๊ฐ์ ๋น์ฉ ํจ์๋ฅผ ์ ์:
C(q_h, q_a) = \frac{1}{2}\sum_{i=1}^N s(d_i)\,|r_i(q_a) - f(d_i)\,\hat{r}_i(q_h)|^2 \;+\; \gamma|q_a|^2,
- ์ฌ๊ธฐ์ r_i(q)๋ ์๋ฐ๋ฅ(origin)์ผ๋ก๋ถํฐ i๋ฒ์งธ ์๋๊น์ง์ ๋ฒกํฐ(๋๋ ์๊ฐ๋ฝ ๊ฐ ๋ฒกํฐ)๋ก, ๊ฐ๊ฐ Allegro ์(r_i(q_a))๊ณผ ์ธ๊ฐ ์ ๋ชจ๋ธ(\hat{r}_i(q_h))์ ์์ ๊ณต๊ฐ์์ ๊ณ์ฐ๋๋ค.
- \hat{r}_i(q_h)=r_i(q_h)/d_i๋ ์ ๊ทํ๋ ์ธ๊ฐ ์ ๋ฒกํฐ์ด๋ฉฐ, $d_i=|r_i(q_h)|.
- s(d_i)๋ ๊ฐ์ค์น ํจ์๋ก์ ์ธ๊ฐ ์์ ์์ง๊ฐ i๋ฒ์งธ ๋ฒกํฐ(r_i(q_h))์ ๊ฐ๊น๊ฒ ์ ์ดํ ๋ ์๋ ๊ฐ ๊ฑฐ๋ฆฌ์ ๋ ํฐ ์ค์๋๋ฅผ ๋ถ์ฌํ๋ค. ์๋ฅผ ๋ค์ด, ์๊ณ๊ฑฐ๋ฆฌ \epsilon ์ดํ๋ก ๊ฐ๊น์์ง๋ฉด ์์ง์ ์๋์ด ๋์๋๋ ๋ฒกํฐ ์งํฉ S1์ผ ๋ s(d_i)=200, ์๋ ์(S2)์ ๋ํด์๋ s(d_i)=400 ๋ฑ์ผ๋ก ๊ธ๊ฒฉํ ์ฆ๊ฐ์ํจ๋ค. ๋ฐ๋ฉด ๊ฑฐ๋ฆฌ๊ฐ \epsilon ์ด์์ด๋ฉด s(d_i)=1์ผ๋ก ์๊ฒ ์ค๋ค.
- f(d_i)๋ ๊ฑฐ๋ฆฌ ์กฐ์ ํจ์๋ก์, ๋ณดํต f(d_i)=\beta d_i (์ฆํญ๊ณ์ \beta=1.6)๋ก ์๋ ๊ฐ ๊ฑฐ๋ฆฌ๋ฅผ ๊ทธ๋๋ก ๋ณต์ฌํ์ง๋ง, ์๊ณ๊ฑฐ๋ฆฌ ์ดํ์ผ ๋ ์๊ฐ๋ฝ๋ผ๋ฆฌ ๊ฒน์น์ง ์๋๋ก ์ผ์ ๊ฑฐ๋ฆฌ(\eta_1,\eta_2)๋ฅผ ๊ฐ์ ํ๋ค. ์๋ฅผ ๋ค์ด ์์ง-์ฃผ์ ์๊ฐ๋ฝ ์ฌ์ด๊ฐ ๋๋ฌด ๊ฐ๊น์์ง๋ฉด \eta_1=0.1\;\mathrm{mm}๋ก ์ ์ด ๊ฑฐ๋ฆฌ๋ฅผ ์ ์ง์์ผ ํ์น ์ง๊ธฐ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํ๋ฉฐ, ์ฃผ์ ์๊ฐ๋ฝ ๊ฐ์๋ \eta_2=30\;\mathrm{mm}๋ก ์ผ์ ๊ฑฐ๋ฆฌ๋ฅผ ํ๋ณดํ๋ค.
- ๋ง์ง๋ง์ผ๋ก \gamma|q_a|^2 ํญ(์ ๊ทํ ํญ)์ Allegro ์์ ์์ ํ ํผ์น ์ํ(q_a=0)๋ก ์ ๋ํ์ฌ ์ค๋ณต์ฑ(redundancy)์ ์ํํ๊ณ ๊ธฐ๊ดดํ ์ต์ํด(์: ์๊ฐ๋ฝ์ด ์๋ฐ๋ฅ์ ํ๊ณ ๋๋ ํ์)๋ฅผ ๋ฐฉ์งํ๋ค. ์ด๋ ์ฌ์ฉํ๋ ๋ฒกํฐ ์งํฉ S1, S2๋ ํ I์ ์ ์๋ ๊ฒ์ฒ๋ผ โ์์ง์ ์ฃผ์ ์๊ฐ๋ฝ(๊ฒ์งยท์ค์งยท์ฝ์ง) ์ฌ์ด ๋ฒกํฐโ์ โ์์ง์ ๊ฐ๊ฐ ๋งคํ๋ ๋ ์ฃผ์ ์๊ฐ๋ฝ ์ฌ์ด ๋ฒกํฐโ๋ก ๊ตฌ์ฑํ๋ค. ๋ํ, ํด ๊ณต๊ฐ ํฌ๊ธฐ๋ฅผ ์ค์ด๊ธฐ ์ํด Allegro ์์ ๊ฒ์งยท์ค์งยท์ฝ์ง ๊ฐ๊ฐ์ ๋ํด ์์๊ด์ (distal joint)์ ๊ฐ๋๋ฅผ ์ค๊ฐ๊ด์ (medial joint)๊ณผ ๊ฐ๊ฒ ๊ณ ์ ํ๋ ์ ์ฝ์ ๋์๋ค. ์ด์ ๊ฐ์ด ์ค๊ณ๋ ๋น์ฉ ํจ์๋ฅผ ๋งค ํ๋ ์๋ง๋ค ์ต์ํํ๋ฉด ์ธ๊ฐ ์์ ์๋ ๋ฐฐ์น์ ์ ์ฌํ Allegro ์ ๊ตฌ์ฑ์ด ์์ฑ๋๋ค.
์ต์ ํ๋ NLopt ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ SLSQP(์์ฐจ์ ์ด์ฐจ๊ณํ๋ฒ) ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ค์๊ฐ ์ํ๋๋ค. ์ด๊ธฐ ํ๋ ์์๋ Allegro ๊ฐ๋๋ฅผ ๋ชจ๋ 0(์์ ํผ์นจ)์ผ๋ก ์์ํ๊ณ , ์ดํ ๋งค ํ๋ ์์ ์ด์ ํ๋ ์ ํด๋ฅผ ์ด๊ธฐ๊ฐ์ผ๋ก ์ฌ์ฉํ์ฌ ์ฐ์์ฑ์ ์ ์งํ๋ค. ์ธ๊ฐ ์ ๋ชจ๋ธ๊ณผ Allegro ์์ ์๋ฐฉํฅ ๊ธฐ๊ตฌํ ๊ณ์ฐ์๋ Orocos KDL ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์๋ค. ์ต์ ํ ๊ฒฐ๊ณผ๋ก ์ป์ Allegro ๊ด์ ๊ฐ์ ๊ณ ์ฃผํ ๋ ธ์ด์ฆ๋ฅผ ์ต์ ํ๊ธฐ ์ํด 1์ฐจ ์ ์ญ ํต๊ณผ ํํฐ๋ฅผ ๊ฑฐ์ณ ์ถ๋ ฅํ๋ค[34]. ๊ฒฐ๊ณผ์ ์ผ๋ก ์ด ๋ฆฌํ๊ฒํ ๋ชจ๋์ ์ธ๊ฐ ํ์ผ๋ฟ์ด ์์ ๊ตฌ๋ถ๋ฆฌ๊ฑฐ๋ ์์ง์ ์๊ฐ๋ฝ ์ฌ์ด ๊ฑฐ๋ฆฌ๋ฅผ ์กฐ์ ํ ๋, ๊ทธ ์๋ ๋์์ด ๋ก๋ด ์์์๋ ์์ฐ์ค๋ฝ๊ฒ ์ฌํ๋๋๋ก ๋[35].
4. ์ ๋ฆฌํ๊ฒํ ๋ชจ๋ ๋์ ์๋ฆฌ์ ์ ์ฝ์กฐ๊ฑด
DexPilot์ ๋ฆฌํ๊ฒํ ๋ชจ๋์ ์ถ์ ์ค๋ ๋ ๋ด๋ถ์์ ์๋ํ๋ฉฐ, ์ธ๊ฐ ์ ์ถ์ ๊ฒฐ๊ณผ๋ฅผ Allegro ์ ์ ์ด ๋ช ๋ น์ผ๋ก ๋ณํํ๋ ์ค์๊ฐ ์ต์ ํ ์์ง์ด๋ค. ๋งค ์ฃผ๊ธฐ๋ง๋ค ์์ ๊ณ์ฐ๋ ์ธ๊ฐ ์ ๊ด์ ๊ฐ์ ์ ๋ ฅ์ผ๋ก ํ์ฌ ์์ ๋น์ฉ ํจ์๋ฅผ ์ต์ํํ๋ฉฐ, ์ด๋ s(d_i)๋ f(d_i) ๋ฑ์ ๊ธฐ๋ฒ์ผ๋ก ์์ง-๊ฒ์ง ๊ฐ ํฝ์ค์ณ ๋์์ ๊ฐ์ ํ๋ค. ์๋ฅผ ๋ค์ด, ์งํ๋ฅผ ํ์นํ ๋์ ๊ฐ์ด ์์ง์ ๊ฒ์ง ์ฌ์ด ๊ฑฐ๋ฆฌ๊ฐ ์์์ ธ d_i<\epsilon์ด ๋๋ฉด ์๋ ๊ฐ ๊ฑฐ๋ฆฌ๋ฅผ ์ ์งํ๋๋ก f(d_i)๊ฐ ์์์ง๋ฉฐ, ๋์์ ๊ฐ์ค์น s(d_i)๊ฐ ์ปค์ ธ ํด๋น ์๋ ๋ฒกํฐ ํญ์ด ๋น์ฉ์ ํฌ๊ฒ ๋ฐ์๋๋ค. ์ด๋ฌํ ํฌ์(projection) ๊ธฐ๋ฒ์ ์นด๋ฉ๋ผ ๊ธฐ๋ฐ ์ถ์ ์ ์ค์ฐจ์๋ ๋ถ๊ตฌํ๊ณ ์ ํํ ํ์น ์์ธ๋ฅผ ์ ๋ํ ์ ์๊ฒ ํด์ฃผ์ง๋ง, ํ์ ํ ์์ ๋ฌผ์ฒด ๋๊ธฐ ๋ฑ์ ์ํฉ์์๋ ์๊ฐ๋ฝ์ ๋๋ฌด ์ค๋ ์ ์งํ๊ฒ ๋ง๋๋ ๋ถ์์ฉ๋ ๋ฐ์ํ ์ ์๋ค.
๋ฆฌํ๊ฒํ ์ต์ ํ๋ ์ค์๊ฐ์ผ๋ก ์คํ๋์ด์ผ ํ๋ฏ๋ก, ๊ณ์ฐ ๋ณต์ก๋๋ฅผ ์ค์ด๊ณ ์๋ฃจ์ ์ ์ฐ์์ฑ์ ๋ณด์ฅํ๋ ์ฌ๋ฌ ์ ์ฝ์กฐ๊ฑด๋ ์ ์ฉ๋๋ค. ๋จผ์ \gamma|q_a|^2 ์ ๊ทํ ํญ์ ํตํด ํด ๊ณต๊ฐ์ ์ค๋ณต์ฑ์ ์ต์ ํ๋ฉฐ, ๋์ผํ ํจ๊ณผ๋ก ์์ ์ธ๊ธํ ๊ฒ์งยท์ค์งยท์ฝ์ง์ distal=medial ๊ณ ์ ์ ์ฝ๋ ๋์ ํ๋ค. ์ด์ ํจ๊ป, ์ต์ ํ ์ด๊ธฐ๊ฐ์ ์ด์ ๊ฒฐ๊ณผ๋ก ์ค์ ํ์ฌ ์ฐ์ฐ ๋น์ฉ๊ณผ ์ง๋์ ์ํํ๋ค. ๋ง์ง๋ง์ผ๋ก ๋ก๋ด๊ณผ ์นด๋ฉ๋ผ ์ขํ๊ณ ์ ํฉ(calibration)์ ํตํด ์ํ๋ ์ด๊ธฐ ์ ์์ธ(ํผ์น ์, ์๋ฐ๋ฅ ํํ)๋ฅผ ์์คํ ์ ๋ง์ถ์ด ํ์ผ๋ฟ์ ์๊ณผ ๋ก๋ด ์์ด ์ผ์นํ๋๋ก ์ค์ ํ๋ค[39]. ์ข ํฉํ๋ฉด, DexPilot์ ๋ฆฌํ๊ฒํ ๋ชจ๋์ ๋น์ ํ ์ต์ ํ ๊ธฐ๋ฐ์ด๋ฉฐ, ์๋ ์์นยท๋ฐฉํฅ ์์ ๊ณต๊ฐ์ ๋ณด์กดํ๊ธฐ ์ํ ๋น์ฉ ํจ์์ ์ํด ์ธ๊ฐ ์๋์์ Allegro ๊ด์ ๊ฐ์ผ๋ก ๋ณ[40]. ์ถ๊ฐ์ ์ธ ํํฐ๋ง๊ณผ ์ ์ฝ์ ํตํด ๋ถ๋๋ฝ๊ณ ๋ฌผ๋ฆฌ์ ์ผ๋ก ํ๋นํ ์์ง์์ ๋ณด์ฅํ๋ฉฐ, ์ด๋ฅผ ํตํด ์ธ๊ฐ ํ์ผ๋ฟ์ ์ ์ ์ค์ฒ๋ ์ ๊ตํ๊ฒ ๋ก๋ด ์์ผ๋ก ๋ณต์ ๋๋ค.
5. ์คํ ์ค์ ๋ฐ ์ฑ๋ฅ ํ๊ฐ
DexPilot ์์คํ ์ ์ฑ๋ฅ์ ๋ค์ํ ์กฐ์ ๊ณผ์ (task)์์ ์ธก์ ๋์๋ค. ์ฌ์ฉ๋ ์คํ ์ฅ๋น๋ ์์ ์ค๋ช ํ KUKA iiwa7+Allegro ์, 4๋์ Intel RealSense D415 ์นด๋ฉ๋ผ์ด๋ค[9]. ์คํ์์ ํ์ผ๋ฟ(์กฐ์ข ์ฌ)์ ํ ์ด๋ธ ์์์ ์ ํด์ง ๋ฌผ์ฒด๋ฅผ ์กฐ์ํด์ผ ํ์ผ๋ฉฐ, ์คํ ๊ณผ์ ๋ ์ด 15๊ฐ์ง๊ฐ ์ ์๋์๋ค(ํ II ์ฐธ์กฐ). ์ฌ๊ธฐ์๋ ๋จ์ ๋ฌผ์ฒด ์ฎ๊ธฐ๊ธฐ(pick-and-place)๋ถํฐ, ๋์ ๋ด์ง ์งํ๋ฅผ ์ง๊ฐ์์ ๊บผ๋ด๊ธฐ(๊ทธ๋ฆผ 11), ์๋ ์ด๊ธฐ ๋ฐ ํฐ๋ฐฑ ๊บผ๋ด๊ธฐ(๊ทธ๋ฆผ 12), ๋ ์ฝฉํต ๋๊ป ํ๊ธฐ(๊ทธ๋ฆผ 13) ๊ฐ์ ๋ค๋จ๊ณ ์์ ๋ค์ด ํฌํจ.
๊ฐ ๊ณผ์ ๋ง๋ค ํ์ผ๋ฟ 2๋ช ์ด 5ํ ์ฐ์ ์๋ํ๋ฉฐ ์ฑ๊ณต๋ฅ ์ ์ธก์ ํ๊ณ , ์๋ฃ ์๊ฐ(mean completion time)๋ ๊ธฐ๋กํ๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก, DexPilot์ ๋๋ถ๋ถ ๊ณผ์ ์์ ๋์ ์ฑ๊ณต๋ฅ ์ ๋ณด์๋ค(Fig. 15). ํนํ ๋จ์ ํผํน/ํ๋ ์ด์ค ์์ ์ด๋ ๋น๊ต์ ํฐ ๋ฌผ์ฒด ์กฐ์ ์์ ๋ค์ ๋๋ถ๋ถ ์ฑ๊ณต๋ฅ 90โ100%์ ๋ฌํ๋ค. ํ๊ท ์๋ฃ ์๊ฐ์ ๊ณผ์ ๋์ด๋์ ๋ณต์ก๋์ ๋ฐ๋ผ ๋ค์ํ๋๋ฐ, ๋ฉํฐ์คํ ์์ (์: ์๋ ์ ๋ฌผ๊ฑด ๊บผ๋ด๊ธฐ)์ผ์๋ก ์ ๋ถ์ด ์์๋์๋ค[41]. ์ ๋ฐ์ ์ผ๋ก ์์คํ ์ ์ ๋ฐ ์ง๊ธฐยทํ์ง, ๋ค์ง ๊ฐ ์กฐ์, ๋นํ์ง(non-prehensile) ๋์ ๋ฑ์ ๋ชจ๋ ์ํํ ์ ์๋ ์ถฉ๋ถํ ์ ์ฐ์ฑ๊ณผ ์์ ์ฑ์ ๋ณด์๋ค[42]. ์ ์ฑ์ ํ๊ฐ์์๋ DexPilot์ ์ฑ๋ฅ์ ํ์ธํ ์ ์๋ค. ์๋ฅผ ๋ค์ด ๊ทธ๋ฆผ 11์ ์ง๊ฐ ๊ณผ์ ์์ ํ์ผ๋ฟ์ ์งํ๋ฅผ ์๊ฐ๋ฝ ์ฌ์ด์ ํ์นํ ์ฑ๋ก ์ฑ๊ณต์ ์ผ๋ก ์ง๊ฐ ๋ฐ๊นฅ์ผ๋ก ๋์ง์ด๋์ผ๋ฉฐ, ์ด๋ ๋ก๋ด ์๋ ์งํ๋ฅผ ๋์น์ง ์๊ณ ์ ์งํ๋ค[43]. ๊ทธ๋ฆผ 12์์๋ ์๋์ ์ด๊ณ ํฐ๋ฐฑ์ ์ก์ ๋น๊ธฐ๊ธฐ ์ํ ์๊ฐ๋ฝ์ ํ์ ๋ฐ ์ ์ด ๋์์ด ๋ช ํํ ๊ตฌํ๋์์ผ๋ฉฐ, ๊ทธ๋ฆผ 13์ ๋ ์ฝฉํต ๋๊ป ๊ณผ์ ์์๋ ๋๊ป์ ๋ฐ๋ณต ํ์ ์ํค๋ ๋์์ด ๋ก๋ด์๋ ๊ทธ๋๋ก ์ ๋ฌ๋์๋ค[44]. ์ด์ฒ๋ผ ์์ ๋ฌผ์ฒด๋ฅผ ์ง๊ฑฐ๋ ๋๋ฆฌ๋ ์ ๋ฐ ๋์ ๋ฟ ์๋๋ผ, ๋ ์๊ฐ๋ฝ์ผ๋ก ๋ฌผ์ฒด๋ฅผ ์ก์ ์ํ์์ ๋จ์ ์๊ฐ๋ฝ์ ์ด์ฉํด ์ถ๊ฐ ์กฐ์์ ์ํํ๋ ๋ณตํฉ ์กฐ์(compound manipulation)๋ ๋ชจ๋ ์ฌ๋์ด ํํ๋ฏ ์ํ ๊ฐ๋ฅํจ์ ๋ณด์๋ค[42].
๊ทธ๋ฌ๋ ์์ ๋ฌผ์ฒด๋ฅผ ๋ค๋ฃจ๋ ์์ ์์๋ ํ๊ณ๋ ๊ด์ฐฐ๋์๋ค. ์๋ฅผ ๋ค์ด ํฌ๊ธฐ๊ฐ ์์ ๋ธ๋ก(pick blocks small)์ด๋ ์ปจํ ์ด๋ ์ ๋ฌผ์ฒด ๋ฝ๊ธฐ(Container) ๋ฑ์ ์์ ์ ์๋ฃ ์๊ฐ์ด ๊ธธ๊ฑฐ๋ ์ฑ๊ณต๋ฅ ์ด ๋ฎ์๋ค. ํนํ ์์ ๋ธ๋ก์ ์ฅ์๋ค๊ฐ ๋๋ ๊ณผ์ ์์, ์์ ์ค๋ช ํ ํฌ์ ๊ธฐ๋ฒ์ด ์๊ฐ๋ฝ ๊ฐ ๊ฑฐ๋ฆฌ๋ฅผ ๊ฐํ๊ฒ ์กฐ์ ํ์ฌ ๋ฌผ์ฒด๋ฅผ ๋ฆ๊ฒ ๋๊ฒ ๋ง๋ค๊ฑฐ๋ ์๊ฐ๋ฝ์ด ๊ฐ์ญํ๋ ํ์์ด ๋ฐ์ํ๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์์ ๋ธ๋ก ์ฎ๊ธฐ๊ธฐ ๊ณผ์ ์ ๊ฒฝ์ฐ ์ฑ๊ณต๋ฅ ์ด ์๋์ ์ผ๋ก ํ์ ํ ๋ฎ์๊ณ , ์๋ฃ ์๊ฐ์ด ๋งค์ฐ ๊ธธ์ด์ก๋ค. ์ด๋ฌํ ํ์์ ์ฅ๊ฐ ๊ธฐ๋ฐ ์ถ์ ๋ฐ์ดํฐ์ ๋ถ์ ํ์ฑ์ด๋ ํฌ์ ํ๋ผ๋ฏธํฐ ์กฐ์ ์ ๊ธฐ์ธํ ๊ฒ์ผ๋ก ๋ถ์๋๋ค.
6. ๊ธฐ์กด ๋ฐฉ๋ฒ๊ณผ ๋น๊ต ๋ฐ ๊ธฐ์ ์ ํ๊ณ
DexPilot์ ๊ธ๋ฌ๋ธยท๋ง์ปค๋ฅผ ์ฌ์ฉํ์ง ์๋ ์์ ์๊ฐ ๊ธฐ๋ฐ ์์คํ ์ด๋ผ๋ ์ ์์ ๋ ์ฐฝ์ ์ด๋ค. ๊ธฐ์กด ์์ฉ ์์คํ ๋ค(์: CyberGlove, HaptX)์ ๋์ ์ ํ๋์ ๊ด์ ์ถ์ ๊ณผ ์ด๊ฐ ํผ๋๋ฐฑ์ ์ ๊ณตํ์ง๋ง, ์ฅ๋น ๋น์ฉ๊ณผ ๋ถํผ๊ฐ ํฌ๊ณ ์ฌ์ฉ์์ ์์ ๋ก์ด ์์ง์์ ์ ํํ๋ค. ๋ฐ๋ฉด DexPilot์ ์ ๋ ดํ RGB-D ์นด๋ฉ๋ผ ๋คํธ์ํฌ๋ง์ผ๋ก 23DoF ์ ์ด๋ฅผ ๊ฐ๋ฅํ๊ฒ ํ์๊ณ , ์ด๋ ์ข ๋์ ๊ธ๋ฌ๋ธ๋ ๋ชจ์ ์บก์ฒ ์์ด ๋ณต์ก ์กฐ์์ ์ํํ ์ฌ๋ก๋ก๋ ๋๋ฌผ๋ค. ๊ธฐ์กด ํ์ ์ฐ๊ตฌ์ ๋น๊ตํด ๋ณด๋ฉด, Li ๋ฑ์ ๋ฅ๋ฌ๋์ผ๋ก ์๋์ฐ ํธ๋(Shadow Hand) ๊ด์ ๊ฐ์ ์ถ์ ํ์์ผ๋ ์์คํ ์ ์ฒด ์ ์ฉ๊ณผ ์ ๋ฐ ์ง๊ธฐ์๋ ํ๊ณ๊ฐ ์์๋ค. Antotsiou ๋ฑ์ ์๋ฎฌ๋ ์ด์ ์์ ๊ฐ๋จํ ์กฐ์ ์์ ๋ง ๋ณด์๋ ๋ฐ๋ฉด, DexPilot์ ์ค์ ๋ฌผ๋ฆฌ์ ํ๊ฒฝ์์ ์๋ ์ ์ด๊ณผ ์ฐ๊ด๋ ๋ณต์ก ์์ ์ ์ํํ๋ค[47][48]. ์ด์ฒ๋ผ DexPilot์ ์๊ฐ-๋ชจ๋ธ ์ถ์ , ์ต์ ํ ๊ธฐ๋ฐ ๋ฆฌํ๊ฒํ , ์ํผ๋์ค ์ ์ด๋ฅผ ๊ฒฐํฉํ์ฌ ํ์ฅ์์ ์ ํ์ํ ์์ค์ ์กฐ์ ์ฑ๋ฅ์ ๋ณด์ฌ์ฃผ์๋ค๋ ์ ์์ ์๋ก์ด ํจ๋ฌ๋ค์์ ์ ์ํ๋ค.
๊ทธ๋ผ์๋ ๋ช ๊ฐ์ง ๊ธฐ์ ์ ํ๊ณ๊ฐ ๋ณด๊ณ ๋์๋ค. - ์ฒซ์งธ, ๊ด์ฐฐ ์์ญ(workspace)์ด ์นด๋ฉ๋ผ ๋ฒ์๋ก ์ ํ๋์ด ์์ด ๋์ ๊ณต๊ฐ์์์ ์กฐ์์๋ ๋ถ์ ํฉํ๋ค[49]. ์คํ์์๋ ์นด๋ฉ๋ผ๊ฐ ๊ด์ ๊ฑฐ๋ฆฌ 1m ์ด๋ด์์ ์ข์ ํ์ง์ ๋ณด์์ผ๋, ๋ฒ์๋ฅผ ๋ฒ์ด๋๋ฉด ๊น์ด ์ผ์ฑ ์ ํ๋๊ฐ ๊ธ๊ฒฉํ ๋จ์ด์ง๋ค. - ๋์งธ, ์์ ์ธ๊ธํ ๋ฆฌํ๊ฒํ ํฌ์ ๊ธฐ๋ฒ์ ๋ถ์์ฉ์ด๋ค. ์์ง-๊ฒ์ง ํ์น ์ ์ง ์ ์ก์ ๋ฌผ์ฒด๋ฅผ ๋ฆ๊ฒ ๋๊ฑฐ๋ ์๊ฐ๋ฝ๋ผ๋ฆฌ ๊ฐ์ญ์ด ๋ฐ์ํ ์ ์์ผ๋ฉฐ, ์ด๋ ์์ ๋ฌผ์ฒด ์์ ์์ ํจ์จ์ ๋จ์ด๋จ๋ฆฐ๋ค. ํ์ฌ๋ ์ด ๊ธฐ๋ฅ์ ์ต์ ์ผ๋ก ๋ ์ ์๋๋ก ํ์์ผ๋, ๊ถ๊ทน์ ์ผ๋ก๋ ์ ์ถ์ ์ ํ๋๋ฅผ ๋์ฌ ์ด๋ฌํ ๋ณด์ ์ด ํ์ ์๋๋ก ํด์ผ ํ๋ค. - ์ ์งธ, ์ด๊ฐ ํผ๋๋ฐฑ ๋ถ์ฌ๋ก ์ธํด ๋ฏธ์ธ ์กฐ์์ด ์ด๋ ต๋ค. DexPilot์๋ ์ด๊ฐ ์ผ์๊ฐ ์์ด ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋กํ ์ ์์ผ๋, ํ์ผ๋ฟ์๊ฒ๋ ํ/์ด๊ฐ ์ ๋ณด๊ฐ ๋์๊ฐ์ง ์๋๋ค. ์ด๋ก ์ธํด ๋ฌผ์ฒด๊ฐ ๋ฏธ๋๋ฌ์ง ๋ ์ง๊ด์ ์ผ๋ก ๊ฐ์งํ๊ธฐ ์ด๋ ค์ ์กฐ์ ์คํจ์จ์ด ๋์์ง ์ ์๋ค. ํฅํ ์ด๊ฐ ํผ๋๋ฐฑ ์ ๋ฌ์ด๋ ๋ฐ์๋ ํ ์ ์ด(์ก๊ธฐ ๊ฐ๋ ์๋ ์กฐ์ ) ๊ธฐ์ ์ ๊ฒฐํฉํ๋ค๋ฉด ์ด ๋ถ๋ด์ ์ค์ผ ์ ์์ ๊ฒ์ด๋ค. - ๋ท์งธ, ์ถ์ ๋ฐ ์ ์ด ์ง์ฐ์ด๋ค. ์ ์ฒด ์์คํ ์ ์๋ต ์ง์ฐ์ ์ฝ 1์ด์ด๋ฉฐ, RMP ์ ์ด์ ํ๋ผ๋ฏธํฐ ํ๋๊ณผ ๋คํธ์ํฌ ์ธํผ๋ฐ์ค ์ง์ฐ์ ์ต์ ํํ ์ ์๋ค. ๋ง์ง๋ง์ผ๋ก ๊ณ ์ ๋ฐ ์ฝ์ ์์ (์: ํ๊ทธ-์ธ-ํ)์ ์์ง ์๋ฒฝํ ์ํ๋์ง ๋ชปํ๋ค. ์ค์ ๋ก NIST ์ฝ์ ๊ณผ์ ๋ฅผ ์๋ํ์ง๋ง, ๋งค์ฐ ํ์ํ ๊ฐ๊ฒฉ(0.1mm)์์๋ ์ฑ๊ณต๋ฅ ์ด 10% ์ดํ๋ก ์ ์กฐํ๋ค[52]. ์ด๋ ์นด๋ฉ๋ผ ํด์๋, ์ ์ถ์ ์ ๋ฐ๋, ์ ์ด ์๋ต ์๋ ๋ฑ ๋ค์ํ ์์ธ์ด ๋ณตํฉ์ ์ผ๋ก ์์ฉํ ๊ฒฐ๊ณผ๋ก, ํ๊ณ๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด ๋ ์ ๋ฐํ ์ถ์ ๊ณผ ์๋ ์ ์ด ๋ณด์กฐ ๊ธฐ๋ฅ์ด ํ์ํ๋ค[52].
์ข ํฉํ๋ฉด, DexPilot์ ์ ๋น์ฉ ์๊ฐ ๊ธฐ๋ฐ ๋ฐฉ์์ผ๋ก ๊ณ ์์ ๋ ๋ก๋ด ์์ ์กฐ์ ๊ฐ๋ฅํ๊ฒ ํ ํ๊ธฐ์ ์ธ ์์คํ ์ด์ง๋ง, ์นด๋ฉ๋ผ ๊ด์ธก ๋ฒ์, ์ ์ถ์ ์ ํ๋, ์ด๊ฐ ๋ถ์ฌ ๋ฑ ์ค์ ํ์ฉ ์ ๊ณ ๋ คํด์ผ ํ ํ๊ณ์ ๋ค๋ ๋์์ ์ง๋๊ณ ์๋ค[53]. ์ด๋ฌํ ํ๊ณ๋ค์ ๊ฐ์ ํ๋ฉด ์์ผ๋ก ๋ณด๋ค ์ ๊ตํ ํ ๋ ์คํผ๋ ์ด์ ๊ณผ ๋ก๋ด ํ์ต ์์ฉ์ ํฐ ๊ธฐ์ฌ๋ฅผ ํ ์ ์์ ๊ฒ์ด๋ค.