flowchart TD
A["Raw DIGIT Images\n(left + right finger, 640x480)"] --> B["Keypoint Encoder\n(ResNet-18 mini)"]
B --> C["K=8 Feature Maps\n-> Active Keypoint k=[x,y,i]"]
C --> D["State: s = [k_L, k_R, j]\n(14-dimensional)"]
D --> E["Neural Network\nDynamics Model\nf(s,a) -> s'"]
E --> F["MPC + CEM Optimizer\n250 particles, horizon T=10\n~120 iterations per step"]
F --> G["Optimal Action a*_t"]
G --> H["Allegro Hand\n(8 DOF: 4 joints ร 2 fingers)"]
H --> A
style A fill:#2d6a9f,color:#fff
style D fill:#1a6b3a,color:#fff
style E fill:#7b3291,color:#fff
style F fill:#c0392b,color:#fff
๐DIGIT ๋ฆฌ๋ทฐ
- ๐ค DIGIT์ ๊ธฐ์กด vision-based tactile sensor์ ์ ์ฝ์ ๊ฐ์ ํ์ฌ ์ํํ, ๋ด๊ตฌ์ฑ ๊ฐํ, ์ ๋น์ฉ ๋๋ ์์ฐ์ ๊ฐ๋ฅํ๊ฒ ํ ์๋ก์ด ๊ณ ํด์๋ ์ด๊ฐ ์ผ์์ ๋๋ค.
- ๐ฆพ ์ด ๋ ผ๋ฌธ์ DIGIT ์ผ์๋ฅผ Allegro hand์ ์ฅ์ฐฉํ์ฌ ๋ณต์กํ in-hand marble manipulation ์์ ์ ์ํํ๋ฉฐ, tactile-MPC์ ํจ์จ์ ์ธ Struct-NN ๊ธฐ๋ฐ์ ๋์ญํ ๋ชจ๋ธ ํ์ต์ ํตํด ์ด๋ฅผ ์ ์ดํฉ๋๋ค.
- ๐ ํ์ต๋ ๋ชจ๋ธ ๊ธฐ๋ฐ ์ ์ด๊ธฐ๋ ์๋์ผ๋ก ํ๋๋ ์ปจํธ๋กค๋ฌ๋ณด๋ค ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์ฌ์ฃผ๋ฉฐ, DIGIT์ ์คํ ์์ค ๋์์ธ์ ๋ก๋ด ์ปค๋ฎค๋ํฐ์์ ์ด๊ฐ ์ผ์์ ๊ด๋ฒ์ํ ์ฑํ์ ์ด์งํ ๊ฒ์ผ๋ก ๊ธฐ๋๋ฉ๋๋ค.
๐ Ping Review
๐ Ping โ A light tap on the surface. Get the gist in seconds.
์ด ๋ ผ๋ฌธ์ ๋ก๋ด ๊ณตํ์์ In-Hand Manipulation์ ์ค๋ ๋์ ์ค ํ๋์ธ ์ ๋ฐํ ์ ์ด๋ ฅ ๊ฐ์ง๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ ๋น์ฉ, ์ํ, ๊ณ ํด์๋ ์ด๊ฐ ์ผ์์ธ DIGIT๋ฅผ ์ ์ํฉ๋๋ค. DIGIT๋ ๊ธฐ์กด vision-based tactile sensor์ ์ฅ์ ์ ์ ์งํ๋ฉด์ ์ํํ, ์ ์กฐ ๊ณต์ ๊ฐ์ํ, ์ ๋ขฐ์ฑ ํฅ์์ ํตํด ๋จ์ ์ ๊ฐ์ ํ์ต๋๋ค.
I. DIGIT ์ผ์ ๋์์ธ
DIGIT๋ 20mm x 27mm x 18mm ํฌ๊ธฐ์ ์ฝ 20g์ ๋ฌด๊ฒ๋ฅผ ๊ฐ์ง ์ํ ์ผ์๋ก, ๋ค์งํ ๋ก๋ด ํธ๋(์: Allegro hand)์ ์ฅ์ฐฉํ๊ธฐ ์ ํฉํฉ๋๋ค. ์ฃผ์ ๊ฐ์ ์ฌํญ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์ํํ ๋ฐ ๋ชจ๋ํ: ๊ธฐ์กด GelSight ์ผ์์ ๋นํด ํฌ๊ธฐ๊ฐ ๋ํญ ์ค์์ผ๋ฉฐ, โpress fitโ ์ฐ๊ฒฐ ๋ฐฉ์์ ์ฌ์ฉํ์ฌ elastomer, housing, camera ๋ฑ ๊ฐ๋ณ ๊ตฌ์ฑ ์์๋ฅผ ์ฝ๊ฒ ๊ต์ฒดํ ์ ์๋ modular ๋์์ธ์ ์ฑํํ์ต๋๋ค. ์ด๋ ์์๋ ๋ถํ ๊ต์ฒด ๋ฐ ๋ค์ํ task-specific elastomer ์ฌ์ฉ์ ์ฉ์ดํ๊ฒ ํฉ๋๋ค.
- ์ ๋น์ฉ ๋ฐ ์ ์กฐ ์ฉ์ด์ฑ: 3D ํ๋ฆฐํ ๋๋ injection mold์ ์ ํฉํ ํ๋ผ์คํฑ multi-body housing ๋์์ธ์ ์ฌ์ฉํ๋ฉฐ, ์์ ์ฉ ๋ถํ(commercial off-the-shelf components)์ ์ ๊ทน ํ์ฉํ์ฌ ๋๋ ์์ฐ ์ ๊ฐ๋น ์ฝ $15์ ๋ฎ์ ์ ์กฐ ๋น์ฉ์ ๋ฌ์ฑํ์ต๋๋ค.
- ํฅ์๋ ๊ธฐ๊ณ์ ์ ๋ขฐ์ฑ ๋ฐ ๋ด๊ตฌ์ฑ: ์ ์ด๋ฉด์ ์ฌ์ฉ๋๋ elastomer์ ๋ด๊ตฌ์ฑ์ ๊ฐ์ ํ์ต๋๋ค. ์๋ก์ด ์ ์กฐ ๊ณต์ ๊ณผ Smooth-On Solaris ์ค๋ฆฌ์ฝ์ ์ฌ์ฉํ์ฌ image transfer layer์ ๋ง๋ชจ๋ฅผ ์ค์์ต๋๋ค. abrasion test ๊ฒฐ๊ณผ, DIGIT์ elastomer๋ ๋ค๋ฅธ GelSight ๊ณ์ด elastomer์ ๋นํด ํจ์ฌ ๋ฎ์ ๋ง๋ชจ๋๋ฅผ ๋ณด์ฌ์ฃผ๋ฉฐ, ์ด๋ ์ผ์์ ์๋ช ๊ณผ ์ ๋ขฐ์ฑ์ ํฌ๊ฒ ํฅ์์ํต๋๋ค.
- ๋ง์ถคํ ์ ์ ํ๋ก: ์นด๋ฉ๋ผ ํน์ฑ, ์กฐ๋ช ๋ฐ ๋น๋์ค ์บก์ฒ๋ฅผ ์ ์ดํ๊ธฐ ์ํด custom-designed electronics๋ฅผ ์ฌ์ฉํ์ต๋๋ค. Omnivision OVM7692 CMOS ์นด๋ฉ๋ผ(60fps)์ SuperSpeed USB 3.0 ํ๋ธ๋ฅผ ์ฐ๊ฒฐํ๋ custom PCB๋ฅผ ํฌํจํ๋ฉฐ, RGB LEDs๋ฅผ ํตํด ์กฐ๋ช ๊ฐ๋๋ฅผ ์กฐ์ ํ ์ ์์ต๋๋ค.
II. In-Hand Manipulation ์์ฉ ๋ฐ ํ์ต ๋ฐฉ๋ฒ๋ก
DIGIT ์ผ์์ ์ฑ๋ฅ์ ์ ์ฆํ๊ธฐ ์ํด Allegro hand์ DIGIT๋ฅผ ์ฅ์ฐฉํ์ฌ ์ ๋ฆฌ ๊ตฌ์ฌ(marble)์ ์ ๋ฐํ๊ฒ in-hand manipulationํ๋ ์์ ์ ์ํํ์ต๋๋ค. ์ด๋ ๊ตฌ์ฌ์ ๋ฏธ๋๋ฌ์ง(slipping)๊ณผ ํ์ (rolling) ์ญํ์ ์ฌ์ธํ๊ฒ ์ ์ดํด์ผ ํ๋ ๊ณ ๋์ด๋ task์ ๋๋ค.
- ์์จ ํ์ต ๋ฐ์ดํฐ ์์ง: Allegro hand๊ฐ ๊ตฌ์ฌ์ ์ง์ ํ, ์๊ฐ๋ฝ์ ๋ฌด์์๋ก ์์ง์ฌ ์ฝ 10์ด ๋์ 4800๊ฐ์ trial ๋ฐ์ดํฐ๋ฅผ ์์จ์ ์ผ๋ก ์์งํ์ต๋๋ค. ์ด ๊ณผ์ ์์ ๋ DIGIT ์ผ์์ ๋น๋์ค, 8๊ฐ์ joint servo์ ๊ฐ๋ ์์น (j), ๊ทธ๋ฆฌ๊ณ joint angular displacement command (a)๊ฐ ๊ธฐ๋ก๋์์ต๋๋ค.
- Tactile Predictive Model (์ด๊ฐ ์์ธก ๋ชจ๋ธ): ๊ณ ํด์๋ ์ด๊ฐ ์ด๋ฏธ์ง๋ผ๋ ๊ณ ์ฐจ์ ์
๋ ฅ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด Structural VRNN ์ํคํ
์ฒ์์ ์๊ฐ์ ๋ฐ์ compactํ๊ณ ์ ์ฐจ์์ ์ธ โkeypointโ ํํ์ ํ์ตํ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ต๋๋ค.
- Keypoint Autoencoder: ์ ๋ ฅ ์ด๋ฏธ์ง๋ฅผ (x, y, i) ํํ์ keypoint๋ก ์ธ์ฝ๋ฉํ๊ณ ์ด๋ฅผ ๋ค์ ์ด๋ฏธ์ง๋ก ์ฌ๊ตฌ์ฑํ๋ autoencoder๋ฅผ ํ๋ จ์์ผฐ์ต๋๋ค. ์ฌ๊ธฐ์ (x, y)๋ ๊ตฌ์ฌ์ 2D ์์น๋ฅผ ๋ํ๋ด๊ณ , (i)๋ ๊ตฌ์ฌ์ด elastomer์ ๋๋ฆฌ๋ ๊น์ด, ์ฆ ์๋ ฅ์ ๋ํ๋ ๋๋ค. ์ด autoencoder๋ ResNet-18์ backbone network๋ก ์ฌ์ฉํ๋ฉฐ L2 image reconstruction error๋ฅผ ํตํด self-supervised ๋ฐฉ์์ผ๋ก ํ์ต๋ฉ๋๋ค. ์ด ๊ณผ์ ์ ํตํด 64x64 raw image๋ฅผ 14์ฐจ์์ compactํ ์ํ ํํ s = [k_l, k_r, j] (์ข์ฐ DIGIT์ keypoint ๋ฐ joint ๊ฐ๋)๋ก ์ค์ผ ์ ์์ต๋๋ค.
- Dynamics Model: ํ์ต๋ keypoint ํํ์ ์ฌ์ฉํ์ฌ ๋ค์ ์ํ๋ฅผ ์์ธกํ๋ ์ ๊ฒฝ๋ง ๋์ญํ ๋ชจ๋ธ s' = f(s, a)๋ฅผ ํ๋ จ์์ผฐ์ต๋๋ค. ์ด ๋ชจ๋ธ์ ๊ฐ๋จํ Multi-Layer Perceptron (MLP)์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค.
- Model Predictive Control (MPC): ํ์ต๋ ๋์ญํ ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก Cross-Entropy Method (CEM)๋ฅผ ์ฌ์ฉํ์ฌ MPC๋ฅผ ์ํํ์ต๋๋ค.
- ๊ณ์ฐ ํจ์จ์ฑ ์ต์ ํ: ๊ธฐ์กด ์ฐ๊ตฌ์ ๋ฌ๋ฆฌ, ๊ณํ(planning)์ ์ด๋ฏธ์ง ๊ณต๊ฐ์ด ์๋ 14์ฐจ์์ keypoint ๊ณต๊ฐ์์ ์ง์ ์ํํฉ๋๋ค. ์์ฝ๋ ๋คํธ์ํฌ(๋ชจ๋ธ์์ ๊ฐ์ฅ ๊ณ์ฐ ๋น์ฉ์ด ๋ง์ด ๋๋ ๋ถ๋ถ)๋ MPC ๋จ๊ณ ์์ ์ ํ ๋ฒ๋ง ํธ์ถ๋๋ฏ๋ก, ํ MPC ๋จ๊ณ๋น ๊ณ์ฐ ์๊ฐ์ 1.4์ด๋ก ๋จ์ถํ์ฌ ์ค์๊ฐ ์ ์ด๋ฅผ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค (CDNA ๋ชจ๋ธ์ 69์ด ์์).
- Cost function: ๊ณํ ๊ณผ์ ์์ ๊ฐ action sequence์ ๋น์ฉ์ ํ์ฌ keypoint ์์น์ ๋ชฉํ keypoint ์์น ๊ฐ์ Euclidean distance๋ก ์ ์๋ฉ๋๋ค. ์ด๋ ๊ตฌ์ฌ์ ์ํ๋ (x, y) ์์น๋ก ์ด๋์ํค๊ณ , ๋๋ฌด ์ธ๊ฒ ๋๋ฅด๊ฑฐ๋ ๋จ์ด๋จ๋ฆฌ๋ ๊ฒ์ ๋ฐฉ์งํฉ๋๋ค.
III. ์คํ ๊ฒฐ๊ณผ
- Video Predictive Model ํ๊ฐ: Struct-NN ๋ชจ๋ธ์ ์ ์ฑ์ ์ผ๋ก ์ข์ ์์ธก ์ฑ๋ฅ์ ๋ณด์ด๋ฉฐ (Fig. 7), CDNA ๋ชจ๋ธ์ ๋นํด RMSE๋ ์ฝ๊ฐ ๋์ง๋ง (Table III), ํจ์ฌ ์ ์ ํ๋ผ๋ฏธํฐ ์์ ์๋์ ์ผ๋ก ๋น ๋ฅธ inference ๋ฐ MPC ๊ณ์ฐ ์๋๋ฅผ ๋ณด์ฌ์ฃผ์์ต๋๋ค. ํนํ MPC ๋จ๊ณ์์ ์๋ ์ฐจ์ด๋ ์ฝ 50๋ฐฐ ์ด์์ผ๋ก, ์ค์๊ฐ ๋ค์งํ ์ ์ด์ Struct-NN์ ํจ์จ์ฑ์ด ํ์์ ์์ ์ ์ฆํ์ต๋๋ค.
- Marble Manipulation ๊ฒฐ๊ณผ: ํ์ต๋ ๋์ญํ ๋ชจ๋ธ์ ์ฌ์ฉํ MPC ์ปจํธ๋กค๋ฌ๋ ์๋์ผ๋ก ํ๋๋ ์ ํ P controller์ ๋นํด ๋ชฉํ ์์น๊น์ง์ Euclidean distance๋ฅผ ์ง์์ ์ผ๋ก ๊ฐ์์์ผ ๋ ๋์ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค (Fig. 8 ์๋จ). ์ด๋ learned model์ด complexํ๊ณ non-linearํ ๊ตฌ์ฌ์ ๋์ญํ์ ํจ๊ณผ์ ์ผ๋ก ์ ์ดํจ์ ๋ํ๋ ๋๋ค. ๋น๋ก ์ฝ 25%์ trial์์ ๊ตฌ์ฌ์ด ๋จ์ด์ง๋ ํ๊ณ๊ฐ ์์์ผ๋ (Fig. 8 ํ๋จ), ์ด๋ task์ ๋์ด๋์ actuation noise ๋ฐ ๊ณํ์ ๋ถ์ ํ์ฑ ๋๋ฌธ์ผ๋ก ๋ถ์๋ฉ๋๋ค.
๊ฒฐ๋ก : DIGIT๋ ๊ณ ํด์๋ ์ด๊ฐ ๊ฐ์ง๋ฅผ ์ ๊ณตํ๋ฉด์ ์ํํ, ๋ด๊ตฌ์ฑ, ์ ๋น์ฉ์ ๋ชจ๋ ๋ง์กฑํ๋ ํ์ ์ ์ธ tactile sensor์ ๋๋ค. ์ด ์ผ์๋ฅผ ํ์ฉํ์ฌ deep model predictive control ๊ธฐ๋ฐ์ผ๋ก ๋ณต์กํ in-hand marble manipulation ์์ ์ ์ฑ๊ณต์ ์ผ๋ก ์ํํ ์ ์์์ ์ ์ฆํ์ต๋๋ค. ๋ ผ๋ฌธ ์ ์๋ค์ DIGIT์ ๋์์ธ๊ณผ ์ ์กฐ ๊ณต์ ์ www.digit.ml์ open-sourceํํ์ฌ ๋ก๋ด ๊ณตํ ์ปค๋ฎค๋ํฐ์ ๊ด๋ฒ์ํ ์ฑํ์ ์ฅ๋ คํ๊ณ ์์ต๋๋ค. ํฅํ ์ฐ๊ตฌ๋ ์ผ์์ ์ถ๊ฐ์ ์ธ ์ํํ ๋ฐ curved, omni-directional sensing field๋ฅผ ๊ฐ์ง ์ผ์ ๋์์ธ์ ์ด์ ์ ๋ง์ถ ๊ฒ์ ๋๋ค.
๐ Ring Review
๐ Ring โ An idea that echoes. Grasp the core and its value.
IEEE Robotics and Automation Letters (RA-L), 2020
Facebook AI Research (FAIR)
์๋ก : ์ ๋ก๋ด์ ์์ง๋ ์์ ๋ชป ์ฐ๋๊ฐ?
์ ๊น ์๊ฐํด๋ณด์. ๋น์ ์ด ์ฑ ์ ์์ ๋์ธ ์ ๋ฆฌ ๊ตฌ์ฌ์ ์ง์ด ์๊ฐ๋ฝ ์ฌ์ด์์ ๊ตด๋ฆฐ๋ค๊ณ ํด๋ณด์. ์ด ๋์์ด ์ผ๋ง๋ ๋ณต์กํ์ง๋ฅผ. ์๊ฐ๋ฝ์ด ๊ตฌ์ฌ ์๋ฅผ ๋ฏธ๋๋ฌ์ง์ง ์๊ฒ ์ ๋นํ ํ์ ์ฃผ๋ฉด์๋, ๋๋ฌด ์ธ๊ฒ ์ก์ ๊ตฌ์ฌ์ด ํ์ด๋๊ฐ์ง ์๊ฒ ํด์ผ ํ๋ค. ๊ตฌ์ฌ์ด ์ด๋์ ์๋์ง, ์ผ๋ง๋ ๋๋ ธ๋์ง, ๋ฏธ๋๋ฌ์ง๋ ค ํ๋์งโ์ด ๋ชจ๋ ์ ๋ณด๋ฅผ ๋น์ ์ ์๋ ์ ๊ฒฝ์ด ์ค์๊ฐ์ผ๋ก ๋์ ์ ๋ฌํ๊ณ ์๋ค.
๋ก๋ด์ด ์ด๊ฑธ ๋ชป ํ๋ ์ด์ ๊ฐ ๋ญ๊น? ๋ฌผ๋ก ์ฌ๋ฌ ์ด์ ๊ฐ ์์ง๋ง, ์ด๊ฐ ์ผ์์ ๋ถ์ฌ๊ฐ ํต์ฌ ๋ณ๋ชฉ ์ค ํ๋๋ค. ๋ก๋ด์ด ๋ฌผ์ฒด๋ฅผ ์ก์ ๋ ๋ฌด์จ ์ผ์ด ๋ฒ์ด์ง๋์ง โ๋๋โ ์ ์๋ค๋ฉด, ์ ๊ตํ ์กฐ์์ ๊ทผ๋ณธ์ ์ผ๋ก ๋ถ๊ฐ๋ฅํ๋ค. ์นด๋ฉ๋ผ๋ก ์์ ๋ฐ๊นฅ์ ๋ณด๋ ๊ฑด ์๊ฐ๋ฝ ๋ด๋ถ์ ์ ์ด ์ํฉ์ ์๋ ค์ฃผ์ง ๋ชปํ๋ค.
์ด ๋ ผ๋ฌธ์ด ๋ฑ์ฅํ ๋ฐฐ๊ฒฝ์ด ๋ฐ๋ก ์ฌ๊ธฐ์ ์๋ค. DIGIT๋ Facebook AI Research(FAIR) ํ์ด ๊ฐ๋ฐํ ๋น์ ๊ธฐ๋ฐ ์ด๊ฐ ์ผ์๋ก, ํฌ๊ฒ ๋ ๊ฐ์ง ๋ฌธ์ ๋ฅผ ๋์์ ํด๊ฒฐํ๊ณ ์ ํ๋ค.
๋ฌธ์ 1: ๊ธฐ์กด ์ด๊ฐ ์ผ์๋ค์ ์ ์ ์ฐ์ด๋?
๊ธฐ์กด ๊ณ ํด์๋ ์ด๊ฐ ์ผ์(GelSight ๋ฑ)๋ ์ฑ๋ฅ์ ์ข์ง๋ง ๋ถํผ๊ฐ ๋๋ฌด ํฌ๊ณ , ์ ์กฐ ์ฌํ์ฑ์ด ๋ฎ์ผ๋ฉฐ, ๋น์๋ค. ๋ฐ๋ฉด ์ ๋ ดํ ์๋ ฅ ์ผ์๋ค์ ๊ณต๊ฐ ํด์๋๊ฐ ๋ฎ์ ์ฌ์ธํ ์กฐ์์ ์ฐ๊ธฐ ์ด๋ ค์ ๋ค. โ์ฑ๋ฅ vs. ์ค์ฉ์ฑโ์ ํธ๋ ์ด๋์คํ๊ฐ ์ค๋ซ๋์ ์ฐ๊ตฌ์๋ค์ ๊ดด๋กญํ ์๋ค.
๋ฌธ์ 2: ๊ณ ํด์๋ ์ด๊ฐ์ผ๋ก ์ค์ ์กฐ์์ ์ด๋ป๊ฒ ํ๋?
์ค๋ น ์ข์ ์ผ์๊ฐ ์๋๋ผ๋, 640ร480 ํฝ์ ์ง๋ฆฌ ์ด๋ฏธ์ง๊ฐ 60fps๋ก ์์์ง๋ ๋ฐ์ดํฐ๋ฅผ ์ค์๊ฐ ์ ์ด์ ์ฐ๊ธฐ๋ ๊ณ์ฐ์ ์ผ๋ก ๋ถ๋ด์ค๋ฝ๋ค. ์ฌ๋ฌ ์๊ฐ๋ฝ์์ ๋์์ ๋ค์ด์ค๋ ์ด๊ฐ ์คํธ๋ฆผ์ ์ด๋ป๊ฒ ์ฒ๋ฆฌํด์ผ ํ๋๊ฐ?
DIGIT๋ ์ด ๋ ๋ฌธ์ ์ ๋ํ ๊ณตํ์ ยท์๊ณ ๋ฆฌ์ฆ์ ํด๋ต์ ๋์์ ์ ์ํ๋ค.
๋ฐฉ๋ฒ I: DIGIT ์ผ์ ์ค๊ณ
๋น์ ๊ธฐ๋ฐ ์ด๊ฐ ์ผ์์ ์๋ฆฌ
๋จผ์ ์ด ๊ณ์ด ์ผ์๊ฐ ์ด๋ป๊ฒ ์๋ํ๋์ง๋ถํฐ ์ดํดํ์. ์๋ฆฌ ์์ฒด๋ ์๋ฆ๋ต๋๋ก ๋จ์ํ๋ค.
[Object] --presses--> [Soft Elastomer Gel]
[Deformed surface reflects light differently]
[RGB Camera inside sensor] --captures--> [Deformation image]
์๋ผ์คํ ๋จธ(ํ์ฑ ๊ณ ๋ถ์)๋ก ๋ง๋ ๋ถ๋๋ฌ์ด ์ ค์ด ์ผ์ ํ๋ฉด์ ๋ฎ๊ณ ์๋ค. ๋ฌผ์ฒด๊ฐ ์ด ์ ค์ ์ ์ดํ๋ฉด ์ ค ํ๋ฉด์ด ๋ณํ๋๊ณ , ๋ด๋ถ LED ์กฐ๋ช ์ด ์ด ๋ณํ๋ ํ๋ฉด์ ๋น์ถ๋ค. ๋ด๋ถ ์นด๋ฉ๋ผ๋ ์ด ๋น์ ๋ณํ๋ฅผ ์ด๋ฏธ์ง๋ก ํฌ์ฐฉํ๋ค. ๋ณํ = ์ด๋ฏธ์ง ๋ณํ = ์ ์ด ์ ๋ณด. ์ด๊ฒ์ด GelSight ๊ณ์ด ์ผ์๋ค์ ๊ทผ๋ณธ ์๋ฆฌ๋ค.
์ด ๋ฐฉ์์ ์ฅ์ ์ ๊ณต๊ฐ ํด์๋๊ฐ ์นด๋ฉ๋ผ ํด์๋์ ์ํด์๋ง ์ ํ๋๋ค๋ ๊ฒ์ด๋ค. ์นด๋ฉ๋ผ ํฝ์ ์ด ์ถฉ๋ถํ ์์ผ๋ฉด ์์ญ ๋ง์ดํฌ๋ก๋ฏธํฐ ์์ค์ ํ๋ฉด ๊ตฌ์กฐ๋ ๊ฐ์งํ ์ ์๋ค โ ๋ ผ๋ฌธ์ Fig. 3์ด ๋ณด์ฌ์ฃผ๋ฏ, DIGIT๋ ์๋ธ๋ฐ๋ฆฌ๋ฏธํฐ ๊ตฌ์กฐ๋ฅผ ์ ๋ช ํ๊ฒ ํฌ์ฐฉํ๋ค.
๊ธฐ๊ณ์ ์ค๊ณ: ์๊ฐ๋ฝ ๋์ ๋ค์ด๊ฐ๋ ์นด๋ฉ๋ผ
DIGIT๊ฐ ๊ธฐ์กด GelSight ๋๋น ๊ฐ์ฅ ๊ทน์ ์ผ๋ก ๊ฐ์ ํ ๋ถ๋ถ์ ํผํฉํฐ๋ค.
| ์ผ์ | ํฌ๊ธฐ (mm) | ๋ฌด๊ฒ (g) | ์ผ์ฑ ๋ฉด์ (mm) | ํด์๋ | FPS | ๋ถํ ๋น์ฉ |
|---|---|---|---|---|---|---|
| DIGIT (Ours) | 20ร27ร18 | 20 | 19ร16 | 640ร480 | 60 | $15* |
| Fingertip GelSight [11] | 35ร60ร35 | NA | 18ร14 | 1920ร1080 | 30 | ~$30 |
| GelSlim [12] | 50ร205ร20 | NA | 30ร40 | 640ร480 | 60 | NA |
1,000๊ฐ ๋จ์ ์์ฐ ๊ธฐ์ค
GelSight์ ๊ธด ์ถ์ด 205mm์ธ ๋ฐ๋ฉด, DIGIT๋ 27mm๋ค. ์ด ์ฐจ์ด๊ฐ ๊ฒฐ์ ์ ์ด๋ค. GelSight๋ Allegro Hand ๊ฐ์ ๋ฉํฐํ๊ฑฐ ๋ก๋ด ์์ ์ฅ์ฐฉ ์์ฒด๊ฐ ๋ถ๊ฐ๋ฅํ๋ค. DIGIT๋ ์ฒ์๋ถํฐ Allegro Hand์ ๊ฐ ์๊ฐ๋ฝ ๋์ ์ฅ์ฐฉ ๊ฐ๋ฅํ๋๋ก ์ค๊ณ๋์๋ค(Fig. 1 ์ฐธ์กฐ).
๊ตฌ์กฐ๋ 7๊ฐ ๋ถํ์ผ๋ก ์ด๋ฃจ์ด์ง๋ค:
A) Elastomer (contact surface)
B) Acrylic window
C) Snap-fit holder
D) Lighting PCB (RGB LEDs)
E) Plastic housing
F) Camera PCB (OVM7692)
G) Back housing
ํต์ฌ ์ค๊ณ ์ฒ ํ์ ๋ชจ๋์ฑ๊ณผ press-fit ์กฐ๋ฆฝ์ด๋ค. ๋์ฌ๋ฅผ ํ๋๋ง ํ๋ฉด ์ ค์ ๊ต์ฒดํ ์ ์๊ณ , ํ์์ ๋ฐ๋ผ ๋ค๋ฅธ ์ข ๋ฅ์ ์๋ผ์คํ ๋จธ๋ฅผ ๋ผ์ธ ์ ์๋ค:
- ๋ถํฌ๋ช ๋ฐ์ฌํ: ํ๋ฉด ํ ์ค์ฒยทํ์ ์ธก์ (๊ธฐ๋ณธ๊ฐ)
- ๋ง์ปค ์๋ ๋ฐ์ฌํ: ๊ดํ ํ๋ฆ(optical flow) ๊ณ์ฐ
- ๋ง์ปค ์๋ ํฌ๋ช ํ: ํ์ง ์ค ์๊ฐ๋ฝ ์์น ํ์ธ (FingerVision ์คํ์ผ)
ํ๋์ ํ๋์จ์ด๋ก ์ธ ๊ฐ์ง ์ด์ฉ ๋ชจ๋๋ฅผ ์ง์ํ๋ค๋ ์ ์ ์ฐ๊ตฌ ํ๋ซํผ์ผ๋ก์ ๋งค๋ ฅ์ ์ด๋ค.
์ ์ ์ค๊ณ: 7cmยฒ์ ๋ด์ ์นด๋ฉ๋ผ ์์คํ
DIGIT๋ ๊ธฐ์ฑํ ์นด๋ฉ๋ผ ๋ชจ๋ ๋์ ์ปค์คํ PCB๋ฅผ ์ค๊ณํ๋ค. ์นด๋ฉ๋ผ๋ก๋ Omnivision OVM7692๋ฅผ ์ฑํํ๋๋ฐ, ์ด ์นฉ์ ์ด์ ๊ฑฐ๋ฆฌ 1.15mm, ์ฌ๋ 30cm์ ๋ง์ดํฌ๋ก๋ ์ฆ ์ด๋ ์ด๋ฅผ ๋ด์ฅํด ๋๋จํ ์งง์ ๊ฑฐ๋ฆฌ์์๋ ์ ๋ช ํ ์ด๋ฏธ์ง๋ฅผ ์ป๋๋ค. ์ ์ฒด ์ ์๋ถํ์ด ์ฐจ์งํ๋ ๋ฉด์ ์ 7cmยฒ โ ์ธ๊ฐ ์๊ฐ๋ฝ ๋๋ณด๋ค ์กฐ๊ธ ํด ๋ฟ์ด๋ค.
์กฐ๋ช ์ ์ธ ๊ฐ์ RGB LED๋ก ๊ตฌ์ฑ๋์ด ์๋ผ์คํ ๋จธ ํ๋ฉด์ ์ต๋ 4๋ฃจ๋ฉ์ ๊ณต๊ธํ๋ค. ์ฌ๋ฌ DIGIT๋ฅผ ํ๋์ USB ํฌํธ์ ์ฐ๊ฒฐํ ์ ์๋๋ก SuperSpeed USB 3.0 ํ๋ธ๋ฅผ PCB์ ํตํฉํ๋ค. ์ด๋ ๋ฉํฐํ๊ฑฐ ํธ๋ ์ด์ฉ์์ ์ค์ํ ์ค์ฉ์ ๊ณ ๋ ค์ฌํญ์ด๋ค.
์๋ผ์คํ ๋จธ ์ค๊ณ: ๋ด๊ตฌ์ฑ์ ํ์
๊ธฐ์กด GelSight ๊ณ์ด ์ผ์์ ๊ฐ์ฅ ํฐ ์ฝ์ ์ ์ ค์ ๋ง๋ชจ์๋ค. ์ ค ํ๋ฉด์ ๋ถํฌ๋ช ์ด๋ฏธ์ง ์ ์ฌ ๋ ์ด์ด๊ฐ ๋ฐ๋ณต ์ ์ด์ผ๋ก ์์๋๋ฉด ์ผ์ ํน์ฑ์ด ๋ฌ๋ผ์ง๊ณ , ์ ์ ค๋ก ๊ต์ฒดํ๋ฉด ์ฌํ๋ จ์ด ํ์ํ ์ ์์๋ค.
DIGIT์ ์ ค ์ ์กฐ ๊ณต์ ์ 3๋จ๊ณ๋ค:
Step 1: Airbrush silicone-based white pigment into mold
+ chemical kicker -> uniform image transfer layer
Step 2: Apply base layer silicone to finger-shaped mold, cure
Step 3: Remove from mold, glue onto acrylic window
using Smooth-On Sil-Poxy (optically clear adhesive)
-> Acrylic-gel unit press-fit into DIGIT body
์์ฌ๋ก๋ ํ์๊ด ํจ๋ ์ฝํ ์ ์ฐ์ด๋ Smooth-On Solaris ์ค๋ฆฌ์ฝ์ ์ฌ์ฉํ๋ค. ์ด ์์ฌ ์ ํ๊ณผ ์ ์กฐ ๊ณต์ ์ด ๋ด๊ตฌ์ฑ์ ๊ฒฐ์ ์ ์ธ ์ฐจ์ด๋ฅผ ๋ง๋ ๋ค.
์ ๋์ ๊ฒ์ฆ ๊ฒฐ๊ณผ๊ฐ ์ธ์์ ์ด๋ค. ์ ๊ณ ํ์ค ์ ํ ๋ง๋ชจ ์ฅ์น(1.7N, H-18 Calibrade ์ค๊ฐ ๋ง๋ชจ ํ)๋ก 5ํ ํจ์ค์ฉ ์ฌ์ดํด์ ์งํํ๋ฉด์ ๊ดํฌ๊ณผ์จ ๋ณํ(%)๋ก ๋ง๋ชจ๋๋ฅผ ์ธก์ ํ๋ค:
| ์ ค / ๋ง๋ชจ ์ฌ์ดํด | 5ํ | 10ํ | 15ํ |
|---|---|---|---|
| DIGIT (Ours) | 0% | 0.3% | 0.3% |
| Yuan et al. [11] ์ ค | 276% | 482% | 805% |
| GelSight Inc. ์ ค | 475% | 662% | 918% |
๋จ 5๋ฒ์ ํจ์ค ๋ง์ ๊ธฐ์กด ์ ค๋ค์ ์ฐข์ด์ง๊ฑฐ๋ ํ๋ฉด ์์ฌ๊ฐ ํ๋ฝํด ์ฌ์ฉ ๋ถ๊ฐ ์ํ๊ฐ ๋ ๋ฐ๋ฉด, DIGIT ์ ค์ 15๋ฒ ์ฌ์ดํด ํ์๋ 0.3% ๋ณํ์ ๊ทธ์ณค๋ค. 1,000๋ฐฐ ์ด์์ ๋ด๊ตฌ์ฑ ์ฐจ์ด๋ค.
ํ ๊ฐ์ง trade-off๋ฅผ ์ง์ ํด๋์ด์ผ ํ๋ค: DIGIT ์ ค์ ๊ธฐ์กด ์ ค ๋๋น ํฌ๊ณผ์จ์ด ๋๋ค(676 Lux vs. 17~16 Lux). ์ ค์ด ์ฝ๊ฐ ๋ ๋ฐํฌ๋ช ํ๋ค๋ ์๋ฏธ์ธ๋ฐ, ์ ์๋ค์ ์ด๊ฒ์ด ์ด๊ฐ ์ผ์ฑ ์ฑ๋ฅ์ ๋ถ์ ์ ์ํฅ์ ์ฃผ์ง ์์์ ์คํ์ผ๋ก ๋ณด์๋ค.
๋ฐฉ๋ฒ II: ์ด๊ฐ ๊ธฐ๋ฐ ์ธ-ํธ๋ ์กฐ์ ํ์ต
DIGIT ์ผ์ ์์ฒด์ ์ค๊ณ๊ฐ ๋ ผ๋ฌธ์ ์ ๋ฐ์ด๋ผ๋ฉด, ๋๋จธ์ง ์ ๋ฐ์ ์ด ์ผ์๋ฅผ ์ฌ์ฉํด ์ด๋ป๊ฒ ์กฐ์ ๋ฅ๋ ฅ์ ํ์ตํ๋๊ฐ๋ค. ์ ๋ฆฌ ๊ตฌ์ฌ์ ๋ ์๊ฐ๋ฝ ์ฌ์ด์์ ์ํ๋ ์์น๋ก ๊ตด๋ฆฌ๋ ๊ฒ์ด ๋ชฉํ ํ์คํฌ๋ค. ์ด ํ์คํฌ๊ฐ ์ผ๋ง๋ ์ด๋ ค์ด์ง ์๊ฐํด๋ณด๋ผ: ๊ตฌ์ฌ์ ์๊ณ ๋งค๋๋ฝ๊ณ , ์ ์ด๋ฉด์ ๊ณก๋ฉด์ด๊ณ ๋ณํ๋๋ฉฐ, ๋๋ฌด ์ธ๊ฒ ์ก์ผ๋ฉด ํ์ด๋๊ฐ๊ณ ๋๋ฌด ์ฝํ๋ฉด ๋จ์ด์ง๋ค.
์์คํ ํ์ดํ๋ผ์ธ ๊ฐ์
์๊ธฐ์ง๋ ๋ฐ์ดํฐ ์์ง
4,800๋ฒ์ ์ํ์์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ค. ๊ฐ ์ํ์์:
- ๊ธ์ ๋ฐ์นจ๋๊ฐ ๊ตฌ์ฌ์ ๋ค์ด์ฌ๋ฆฐ๋ค
- Sawyer ๋ก๋ด ์์ด ์ฌ์ ํ๋ก๊ทธ๋๋ฐ๋ ๋์์ผ๋ก ๊ตฌ์ฌ์ ์ง๋๋ค
- 4๊ฐ ์๋ณด ร 2์๊ฐ๋ฝ = 8์ฐจ์ ํ๋ ๊ณต๊ฐ์์ ๋๋ค ๊ฐ๋ ๋ณ์ ๋ช ๋ น 20ํ ๋ฐํ (~10์ด)
- ๊ตฌ์ฌ์ด ๋จ์ด์ง๋ฉด ๊ทธ๋ฆ์ ๋ด๊ธฐ๊ณ ๋ฐ์นจ๋๊ฐ ๋ค์ ๋ค์ด์ฌ๋ฆฐ๋ค
์ ์ฒด ๋ฆฌ์ ์ฌ์ดํด์ด ์๋ํ๋์ด ์์ด ์ธ๊ฐ ๊ฐ์ ์์ด ์์ฒ ํ ์์จ ๋ฐ์ดํฐ ์์ง์ด ๊ฐ๋ฅํ๋ค. 950๊ฐ ์ํ์ ๊ฒ์ฆ ์ธํธ๋ก ๋ถ๋ฆฌํ๋ค.
ํคํฌ์ธํธ ์คํ ์ธ์ฝ๋: ์ด๋ฏธ์ง๋ฅผ 14์ฐจ์์ผ๋ก ์์ถํ๊ธฐ
์ด ๋ถ๋ถ์ด ์๊ณ ๋ฆฌ์ฆ์ ์ผ๋ก ๊ฐ์ฅ ํต์ฌ์ ์ธ ์์ด๋์ด๋ค. 640ร480 ์ด๋ฏธ์ง๋ฅผ ์ง์ ๋ค๋ฃจ๋ฉด์ ์์ญ๋ง ๋ฒ์ ์์ธก์ ์ค์๊ฐ์ ๋๋ฆฌ๋ ๊ฑด ๋ถ๊ฐ๋ฅํ๋ค. ์ด๋ป๊ฒ ํ ๊น?
ํต์ฌ ํต์ฐฐ: ๊ตฌ์ฌ ์กฐ์ ํ์คํฌ์์ ์ค์ ๋ก ์ค์ํ ์ ๋ณด๋ ๊ตฌ์ฌ์ด ์ด๋์ ์๋๊ฐ ์ ์ผ๋ง๋ ๋๋ ธ๋๊ฐ ๋ฟ์ด๋ค. ๋๋จธ์ง ํฝ์ ์ ๋ณด๋ ์ ์ด ๋ชฉ์ ์ ์ก์์ด๋ค.
๊ตฌ์กฐ์ ์คํ ์ธ์ฝ๋(Structural VRNN [31] ๊ธฐ๋ฐ)๊ฐ ์ด ์์ถ์ ํ์ตํ๋ค:
์ธ์ฝ๋ ๊ฒฝ๋ก:
\text{Encoder}(I) \rightarrow \{f_1, f_2, \ldots, f_K\} \quad (K \text{ feature maps})
๊ฐ ํผ์ฒ๋งต f_k์์ ํคํฌ์ธํธ๋ฅผ ์ถ์ถํ๋ค:
k_k = [x_k, y_k, i_k]
- (x_k, y_k): ํผ์ฒ๋งต์์ ํ์ฑํ๊ฐ ์ต๋์ธ 2D ์์น
- i_k: ํด๋น ํผ์ฒ๋งต์ ํ๊ท ํ์ฑํ ํฌ๊ธฐ (๊ตฌ์ฌ์ด ์ผ๋ง๋ ๋๋ ธ๋์ง)
๋์ฝ๋ ๊ฒฝ๋ก:
๊ฐ ํคํฌ์ธํธ (x_k, y_k)์ ๋ํด ๋น ํผ์ฒ๋งต์ ๊ฐ์ฐ์์ ๋ธ๋กญ์ ๊ทธ๋ฆฐ๋ค. ์ด K๊ฐ์ ํผ์ฒ๋งต์ ๋์ฝ๋์ ์ ๋ ฅํด ์๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ฌ๊ตฌ์ฑํ๋ค.
์์ค ํจ์๋ L2 ์ด๋ฏธ์ง ์ฌ๊ตฌ์ฑ ์ค์ฐจ + ํคํฌ์ธํธ ํฌ์์ฑยท๋น์ค๋ณต์ฑ์ ๊ฐ์ ํ๋ ๋ณด์กฐ ์์ค์ ํฉ์ด๋ค:
\mathcal{L} = \mathcal{L}_{\text{reconstruction}} + \lambda \mathcal{L}_{\text{sparsity}} + \mu \mathcal{L}_{\text{separation}}
์คํ ๊ฒฐ๊ณผ K=8๋ก ์ค์ ํ์ ๋ 8๊ฐ ํคํฌ์ธํธ ์ค 7๊ฐ๋ ๋นํ์ฑํ๋๊ณ , ํ๋์ ํ์ฑ ํคํฌ์ธํธ๋ง์ด ๊ตฌ์ฌ์ ์์น๋ฅผ ์ ํํ ์ถ์ ํ๋ค. ๊ฐ๋ i๋ ๊ตฌ์ฌ์ด ๊น๊ฒ ๋๋ฆด์๋ก ์ฆ๊ฐํ๋ค. ์ด ์๊ธฐ์ง๋ ํ์ต์ด ํ์คํฌ ๊ด๋ จ ํํ์ ์๋์ผ๋ก ๋ฐ๊ฒฌํ ๊ฒ์ด๋ค.
์ต์ข ์ํ ํํ:
s = [k_L, k_R, j] \in \mathbb{R}^{14}
- k_L = [x_L, y_L, i_L]: ์ผ์ชฝ(์์ง) DIGIT ํคํฌ์ธํธ
- k_R = [x_R, y_R, i_R]: ์ค๋ฅธ์ชฝ(์ค์ง) DIGIT ํคํฌ์ธํธ
- j \in \mathbb{R}^8: 8๊ฐ ์๋ณด์ ๊ด์ ๊ฐ๋
64ร64 ์ด๋ฏธ์ง ๋ ์ฅ(= 8,192์ฐจ์)์ด 14์ฐจ์์ผ๋ก ์์ถ๋๋ค. 585๋ฐฐ ์ฐจ์ ๊ฐ์๋ค.
๋์ญํ ๋ชจ๋ธ: Struct-NN
์์ถ๋ ์ํ ๊ณต๊ฐ์์ ๋์ญํ์ ํ์ตํ๋ค:
s' = f_\theta(s, a)
14์ฐจ์ ์ํ s์ 8์ฐจ์ ํ๋ a๋ฅผ ์ ๋ ฅ๋ฐ์ ๋ค์ ์ํ s'๋ฅผ ์์ธกํ๋ MLP๋ค. ํ๊ฒฝ์ด ์์ ๊ด์ธก ๊ฐ๋ฅํ๋ฏ๋ก(ํคํฌ์ธํธ๊ฐ ๊ตฌ์ฌ ์์น๋ฅผ ์์ ํ ๊ธฐ์ ), ๋ณต์กํ VRNN ๋์ ๊ฐ๋จํ MLP๋ก ์ถฉ๋ถํ๋ค.
ํ๋ จ ์ ๋ ๊ฐ์ง ๋ฐ์ดํฐ ์ฆ๊ฐ์ ์ ์ฉํ๋ค: - Zero-action ํํ ์ฝ์ : (s, 0, s) ํํ์ ๋ฐ์ดํฐ๋ฅผ ๋ฌด์์ ์ฝ์ ํ์ฌ ๋ชจ๋ธ์ด โ์๋ฌด๊ฒ๋ ์ ํ๋ฉด ์ํ๊ฐ ๋ณํ์ง ์๋๋คโ๋ ๋ฌผ๋ฆฌ์ ์์์ ํ์ตํ๊ฒ ํจ - RGB ๊ฐยท๊ฐ๋ง ๊ต๋: ์กฐ๋ช ๋ณํ์ ๋ํ ๊ฐ์ธ์ฑ ํ๋ณด
| ๋ชจ๋ธ | 1 forward-backward | 1 forward | MPC 1 step | ํ๋ผ๋ฏธํฐ ์ |
|---|---|---|---|---|
| Struct-NN (Ours) | 4.3 ms | 1.6 ms | 1.4 s | 1.2M |
| CDNA [35] | 6.8 ms | 2.3 ms | 69 s | 4M |
MPC 1์คํ ์์ 50๋ฐฐ ์๋ ์ฐจ์ด๊ฐ ํต์ฌ์ด๋ค. CDNA๋ 69์ด๊ฐ ๊ฑธ๋ ค ์ค์๊ฐ ์ ์ด์ ์ฌ์ฉ ๋ถ๊ฐ๋ฅํ๋ค.
๋ชจ๋ธ ๊ธฐ๋ฐ ์ ์ด: MPC + CEM
ํ์ต๋ ๋์ญํ ๋ชจ๋ธ๋ก ๋ชจ๋ธ ์์ธก ์ ์ด(MPC)๋ฅผ ์ํํ๋ค. ์ต์ ํ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก๋ ๊ต์ฐจ ์ํธ๋กํผ ๋ฐฉ๋ฒ(CEM)์ ์ฌ์ฉํ๋ค.
MPC with CEM (one control step):
Input: current state s_t, goal keypoint (x_g, y_g, i_g)
Parameters: 250 particles, horizon T=10, ~120 CEM iterations
for each CEM iteration:
sample 250 action sequences {a_t:t+T-1} from current distribution
for each sequence:
rollout: s_t+1 = f(s_t, a_t), ..., s_t+T = f(s_t+T-1, a_t+T-1)
cost = sum_{tau=t}^{t+T} ||[x_tau, y_tau, i_tau] - [x_g, y_g, i_g]||_2
update distribution from top-K lowest-cost sequences
Apply a*_t (first action of best sequence) to Allegro Hand
๋น์ฉ ํจ์๋ ํคํฌ์ธํธ ๊ณต๊ฐ์์์ ์ ํด๋ฆฌ๋ ๊ฑฐ๋ฆฌ ํฉ์ฐ์ด๋ค. (x, y) ํญ์ ๊ตฌ์ฌ์ ๋ชฉํ ์์น๋ก ์ด๋์ํค๊ณ , i ํญ์ ๊ตฌ์ฌ์ ๋จ์ด๋จ๋ฆฌ๊ฑฐ๋(๋ฎ์ i) ๋๋ฌด ์ธ๊ฒ ๋๋ฅด๋(๋์ i) ํ๋์ ์ต์ ํ๋ค. ์ฐ์ํ๊ฒ ๋จ์ํ ๋น์ฉ ์ค๊ณ๋ค.
Struct-NN ๋๋ถ์ ์ธ์ฝ๋๋ ์ค์ ์ด๋ฏธ์ง์ ๋ํด MPC 1์คํ ๋น ๋จ 1๋ฒ๋ง ํธ์ถ๋๊ณ , ์ดํ ์์ญ๋ง ๋ฒ์ ์์ธก์ 14์ฐจ์ MLP๋ง์ผ๋ก ์ํ๋๋ค. ๊ณ์ฐ ๋ณ๋ชฉ์ ์ธ์ฝ๋ฉ์์ ๊ณํ(planning)์ผ๋ก ์ด๋์ํจ ์ค๊ณ๋ค.
์คํ: ๊ฒฐ๊ณผ์ ํด์
๋์์ ์์ธก ๋ชจ๋ธ ์ฑ๋ฅ
๋จผ์ ๋์ญํ ๋ชจ๋ธ ์์ฒด๋ฅผ ๋ฒค์น๋งํนํ๋ค. BAIR ๋ก๋ด ํธ์ฑ ๋ฐ์ดํฐ์ ๊ณผ ์์ฒด ๊ตฌ์ฌ ์กฐ์ ๋ฐ์ดํฐ์ ๋ชจ๋์์ CDNA์ ๋น๊ตํ๋ค.
| ๋ฐ์ดํฐ์ | Struct-NN RMSE | CDNA RMSE |
|---|---|---|
| BAIR ํธ์ฑ | 0.06023 | 0.01082 |
| ๊ตฌ์ฌ ์กฐ์ | 0.00657 | 0.00028 |
ํฅ๋ฏธ๋ก์ด ํจํด์ด ๋ณด์ธ๋ค. RMSE๋ CDNA๊ฐ ๋ซ์ง๋ง, MPC ์ค์ ์ฑ๋ฅ์์๋ Struct-NN์ด ์ฐ์ธํ๋ค. ์? ์ด๋ฏธ์ง ์ฌ๊ตฌ์ฑ ์ค์ฐจ๊ฐ ์ ์ด ์ฑ๋ฅ๊ณผ ์ง๊ฒฐ๋์ง ์๊ธฐ ๋๋ฌธ์ด๋ค. Struct-NN์ด ํฌ์ฐฉํ๋ ํคํฌ์ธํธ ํํ์ด ์ ์ด์ ์ถฉ๋ถํ ์ข์ ํํ์์ ์์ฌํ๋ค.
๊ตฌ์ฌ ์กฐ์ ์คํ
๊ฐ ์คํ์ 50ํ ๋ฐ๋ณต์ด๋ฉฐ, ๋ชฉํ ์์น๋ ํ์ฌ ์์น์์ ์ต์ 16ํฝ์ ๋จ์ด์ง ๊ณณ์ผ๋ก ๋๋ค ์ํ๋ง๋๋ค.
๋น๊ต ๋์: ์๋ ํ๋ํ ์ ํ ๋น๋ก(P) ์ ์ด๊ธฐ
P ์ ์ด๊ธฐ์ ์ด๋ ํ๋ ฌ์ P \in \mathbb{R}^{3 \times 8}์ผ๋ก, 3์ฐจ์ ๋ณ์ ๋ฒกํฐ(ํคํฌ์ธํธ ์ค์ฐจ)๋ฅผ 8์ฐจ์ ํ๋์ผ๋ก ๋งคํํ๋ค. ์ด ํ๋ ฌ์ ์์์ ์ผ๋ก ํ๋ํ๋ ๊ฒ์ด ์ผ๋ง๋ ์ด๋ ค์ด๊ฐ๋ฅผ ์๊ฐํด๋ณด๋ผ โ 24๊ฐ ํ๋ผ๋ฏธํฐ๋ฅผ ๋์ญํ์ด ๋น์ ํ์ธ ์์คํ ์์ ์์ผ๋ก ๋ง์ถฐ์ผ ํ๋ค.
๊ฒฐ๊ณผ (Fig. 8 ์ฐธ์กฐ):
- Struct-NN MPC: ํ๋ ์๊ฐ ๋์ด๋ ์๋ก ๋ชฉํ๊น์ง์ ์ ํด๋ฆฌ๋ ๊ฑฐ๋ฆฌ๊ฐ ๊พธ์คํ ๊ฐ์
- P ์ ์ด๊ธฐ: ๊ฑฐ๋ฆฌ๊ฐ ์คํ๋ ค ์ฆ๊ฐ (ํ๊ท )
- ๊ตฌ์ฌ ๋ํ์จ: ๋ ๋ฐฉ๋ฒ ๋ชจ๋ ์๊ฐ์ด ์ง๋ ์๋ก ๋ํ ์ฆ๊ฐ, Struct-NN์ด ์ ๋ฐ์ ์ผ๋ก ๋ฎ์
- ์ฝ 25%์ ์ํ์์ ๊ตฌ์ฌ์ด ๋ชฉํ ๋๋ฌ ์ ๋ํ
25% ๋ํ์จ์ด ๋์ ๋ณด์ผ ์ ์์ง๋ง, ์ด ํ์คํฌ์ ๋์ด๋๋ฅผ ๊ฐ์ํด์ผ ํ๋ค: 20g์ ์ ๋ฆฌ ๊ตฌ์ฌ์ 6mm ์ง๊ฒฝ ๊ณก๋ฉด ํ์ฑ ์ ค ๋ ๊ฐ ์ฌ์ด์์ ์ ๋ฐ ์ ์ดํ๋ ๊ฒ์ ์ธ๊ฐ๋ ์ฐ์ต์ด ํ์ํ ๋์์ด๋ค. ์ ์๋ค์ ๋ฎ์ ์์ค ์ปจํธ๋กค๋ฌ ๊ฐ์ ๊ณผ ์ถ๊ฐ ๋ฐ์ดํฐ ์์ง์ผ๋ก ๋ํ์จ์ ๋ฎ์ถ ์ ์๋ค๊ณ ์ง์ ํ๋ค.
P ์ ์ด๊ธฐ ์คํจ์ ๊ทผ๋ณธ ์์ธ์ ๋์ญํ์ ๋น์ ํ์ฑ์ด๋ค. ์๊ฐ๋ฝ ์๋ณด ๋ช ๋ น์์ DIGIT ํ๋ฉด์ ์ ์ ๋ฐฉํฅ๊น์ง์ ๋งคํ์ ์ผ๊ฐํจ์๋ก ์ด๋ฃจ์ด์ง ๋ณต์กํ ๋ณํ์ด๋ฉฐ, ๊ฒ๋ค๊ฐ DIGIT ํ๋ฉด ์์ฒด๊ฐ ๊ณก๋ฉด์ด๊ณ ๋ณํ๋๋ค. ๋จ์ผ ์ ํ ํ๋ ฌ๋ก ๋ชจ๋ ๊ตฌ์ฑ ๊ณต๊ฐ์์ ์ต์ ์ด๊ธฐ๋ฅผ ๊ธฐ๋ํ๋ ๊ฒ์ ๋ฌด๋ฆฌ๋ค.
์ ์ฒด ์์คํ ํ๋ฆ๋
flowchart LR
subgraph Hardware["Hardware Platform"]
A1["Sawyer Arm"]
A2["Allegro Hand\n(4-finger)"]
A3["DIGIT x2\n(Thumb + Middle)"]
A1 --> A2 --> A3
end
subgraph DataCollection["Self-supervised Data Collection"]
B1["Random Action\nExploration\n4,800 trials"]
B2["Auto-reset\nMechanism\n(bowl + platform)"]
B1 <--> B2
end
subgraph Learning["Learning Pipeline"]
C1["Keypoint\nAutoencoder\n(ResNet-18 mini)"]
C2["State Compression\n640x480 img x2\n-> 14D vector"]
C3["MLP Dynamics\nModel f(s,a)->s'"]
C1 --> C2 --> C3
end
subgraph Control["Model Predictive Control"]
D1["CEM Optimizer\n250 particles\nHorizon T=10"]
D2["Cost:\nL2 distance\nin keypoint space"]
D1 --> D2
end
Hardware --> DataCollection
DataCollection --> Learning
Learning --> Control
Control --> Hardware
๋นํ์ ๊ณ ์ฐฐ: ๊ฐ์ ๊ณผ ํ๊ณ
๊ฐ์
1. ๊ณตํ์ ์์ฑ๋์ ์คํ์์ค ๊ณต๊ฐ
๋
ผ๋ฌธ์ด ๋จ์ํ ํ๋กํ ํ์
๋ณด๊ณ ์ ๊ทธ์น์ง ์๊ณ , ๋๋ ์์ฐ์ ๊ณ ๋ คํ ์ค๊ณ ๊ฒฐ์ (injection molding, press-fit, ํ์ค ๋ถํ)๊น์ง ์์ธํ ๊ธฐ์ ํ๋ค. ์ค๊ณ๋ฅผ www.digit.ml์ ์คํ์์ค๋ก ๊ณต๊ฐํ ๊ฒ์ ์ปค๋ฎค๋ํฐ์ ๋ํ ์ค์ง์ ๊ธฐ์ฌ๋ค. ์ค์ ๋ก DIGIT๋ ์ด ๋
ผ๋ฌธ ์ดํ ์ด๊ฐ ์ผ์ฑ ์ฐ๊ตฌ์ ์ฌ์ค์์ ํ์ค ํ๋ซํผ ์ค ํ๋๊ฐ ๋์๋ค.
2. ๋ด๊ตฌ์ฑ ๊ฐ์ ์ ์ ๋์ ๊ฒ์ฆ
๋ง๋ชจ ํ
์คํธ๋ฅผ ์ ๋์ ์ผ๋ก ์ํํ๊ณ ๋น๊ตํ ๊ฒ์ ๋
ผ๋ฌธ์ ์ ๋ขฐ๋๋ฅผ ๋์ธ๋ค. โ๋ ํผํผํ๋คโ๋ ์ฃผ์ฅ์ ์์น๋ก ๋ท๋ฐ์นจํ๋ค.
3. ์๊ณ ๋ฆฌ์ฆ์ ํ์ฅ์ฑ
Struct-NN์ ํต์ฌ ๊ธฐ์ฌ๋ ํคํฌ์ธํธ ์ถ์ํ๋ก ์ด๊ฐ MPC๋ฅผ ๋จ์ผ ์ผ์์์ ๋ฉํฐํ๊ฑฐ ์ค์ ์ผ๋ก ํ์ฅํ ๊ฒ์ด๋ค. CDNA ๋๋น 50ร ์๋ ํฅ์์ ์ค์ฉ์ฑ์ ์ํ ํ์์ ๊ฐ์ ์ด์๋ค.
4. ์๊ธฐ์ง๋ ํํ ํ์ต์ ํต์ฐฐ
K=8 ํคํฌ์ธํธ ์ค 7๊ฐ๊ฐ ๋นํ์ฑํ๋๊ณ 1๊ฐ๊ฐ ๊ตฌ์ฌ ์์น๋ฅผ ์ ํํ ์ถ์ ํ๋ค๋ ๊ฒฐ๊ณผ๋, ์คํ ์ธ์ฝ๋๊ฐ ํ์คํฌ ๊ด๋ จ ๊ตฌ์กฐ๋ฅผ ๋ฐ์ดํฐ๋ก๋ถํฐ ์ค์ค๋ก ๋ฐ๊ฒฌํ์์ ๋ณด์ฌ์ค๋ค. ์ด๋ ์ด๊ฐ ๋ฐ์ดํฐ์์์ ๋น์ง๋ ํํ ํ์ต ๊ฐ๋ฅ์ฑ์ ์์ฌํ๋ ํฅ๋ฏธ๋ก์ด ๊ด์ฐฐ์ด๋ค.
์ฝ์ ๊ณผ ํ๊ณ
1. ํ์คํฌ์ ์ ํ์ ๋ฒ์
์ ๋ฆฌ ๊ตฌ์ฌ ํ๋๋ฅผ ๋ ์๊ฐ๋ฝ ์ฌ์ด์์ ๊ตด๋ฆฌ๋ ๊ฒ์ ์ธ-ํธ๋ ์กฐ์์ ๊ทนํ ์ผ๋ถ๋ค. ๋ค์ํ ๋ฌผ์ฒด, ๋ค์ํ ๊ทธ๋ฆฝ, ๋ค์ํ ๋์์ ๋ํ ์ผ๋ฐํ๋ ๊ฒ์ฆ๋์ง ์์๋ค. ๊ตฌ์ฌ์ด๋ผ๋ ํ์คํฌ๊ฐ ํคํฌ์ธํธ ํํ์ ํนํ ์ ๋ฆฌํ๊ฒ ์์ฉํ์ ๊ฐ๋ฅ์ฑ์ด ์๋ค(๊ตฌํ์ด๋ผ ํ๋์ (x,y,i)๋ก ์์ ํ ๊ธฐ์ ๊ฐ๋ฅ).
2. 25% ๋ํ์จ
ํ์คํฌ์ ๋์ด๋๋ฅผ ๊ฐ์ํ๋๋ผ๋, 4๋ฒ ์ค 1๋ฒ ์คํจ๋ ์ค์ฉ์ ๋ฐฐ์น์๋ ๋ถ์กฑํ๋ค. ์ ์๋ค ์ค์ค๋ก ์ด๋ฅผ ์ธ์ ํ๊ณ ํฅํ ๊ณผ์ ๋ก ๋จ๊ฒจ๋์์ง๋ง, ํ ์์คํ
์ ์์ฑ๋๋ฅผ ๋ณด์ฌ์ฃผ๋ ์งํ์ด๊ธฐ๋ ํ๋ค.
3. ์ด๊ฐ ์ด๋ฏธ์ง ํด์์ ๊น์ด ๋ถ์ฌ
๋
ผ๋ฌธ์ ์์ ์ด๊ฐ ์ด๋ฏธ์ง๋ฅผ ์ง์ ํด์ํ๋ ๊ฒ๋ณด๋ค๋ ํคํฌ์ธํธ๋ก ์์ถํด ์ฌ์ฉํ๋ค. ์ด๋ ๊ณ์ฐ ํจ์จ์ ์ํ ํฉ๋ฆฌ์ ์ ํ์ด์ง๋ง, ์ผ์ ์์ฒด๊ฐ ์ ๊ณตํ๋ ํ๋ถํ ์ ๋ณด(ํ๋ฉด ํ
์ค์ฒ, ํ ๋ถํฌ, ๋ณํ ํจํด)๋ฅผ ๋๋ถ๋ถ ๋ฒ๋ฆฌ๋ ๊ฒ์ด๊ธฐ๋ ํ๋ค.
4. ๋จ์ผ ํ์คํฌ์ ํนํ๋ ํ์ดํ๋ผ์ธ
ํคํฌ์ธํธ ์คํ ์ธ์ฝ๋์ MPC ๋น์ฉ ํจ์๋ ๊ตฌ์ฌ ์์น ์ถ์ ์ ํนํ๋์ด ์๋ค. ์๋ก์ด ํ์คํฌ์ ์ ์ฉํ๋ ค๋ฉด ํ์ดํ๋ผ์ธ ์ ์ฒด๋ฅผ ์ฌ์ค๊ณํด์ผ ํ ๊ฐ๋ฅ์ฑ์ด ๋๋ค. ํ์คํฌ-๋
๋ฆฝ์ ์ด๊ฐ ํํ์ ์ํ ๋ณด๋ค ๋ฒ์ฉ์ ์ธ ์ ๊ทผ์ด ํ์ํ๋ค.
5. ์ผ์ ๊ฐ ์ฌํ์ฑ ๋ฏธ๊ฒ์ฆ
์ ์๋ค์ ๋๋ ์์ฐ ์ฌํ์ฑ์ ๊ฐ์กฐํ์ง๋ง, ์ค์ ๋ก ์ฌ๋ฌ DIGIT ์ ๋ ๊ฐ์ ๊ต์ฒด ๊ฐ๋ฅ์ฑ(Sensor-to-sensor consistency)์ ์คํ์ ์ผ๋ก ๊ฒ์ฆํ์ง๋ ์์๋ค. ์ด๊ฐ ์ผ์์์ ๊ฐ๋ณ ์ ค์ ํน์ฑ ํธ์ฐจ๋ ์ค์ฉ์ ์ผ๋ก ์ค์ํ ๋ฌธ์ ๋ค.
๊ด๋ จ ์ฐ๊ตฌ์์ ๋น๊ต
graph TD
A["Vision-based Tactile Sensors"] --> B["TacTip Family\n[13,14]\nMarker pins, low resolution"]
A --> C["FingerVision [10]\nTransparent gel, dual-use\nbut lower tactile resolution"]
A --> D["GelSight [11]\nHigh res, bulky\n35x60x35mm"]
A --> E["GelSlim [12]\nSlimmer but 50x205mm\nAlegro-incompatible"]
A --> F["DIGIT (This work)\n20x27x18mm\nAllegro-compatible\n$15/unit"]
G["Tactile Control Methods"] --> H["tactile-MPC [17]\nSingle sensor, 3-DOF\nCDNA-based, slow"]
G --> I["DIGIT + Struct-NN\nDual sensor, 8-DOF\n50x faster MPC"]
G --> J["OpenAI Dexterous\nManipulation [26]\nNo tactile, many cameras"]
style F fill:#2196F3,color:#fff
style I fill:#2196F3,color:#fff
DIGIT์ ์ง์ ์ ์ ์กฐ๋ GelSight[11]์ GelSlim[12]์ด๋ค. GelSight๋ ์ฑ๋ฅ์ ๋ฐ์ด๋์ง๋ง ๋ฉํฐํ๊ฑฐ ํธ๋ ์ฅ์ฐฉ์ด ๋ถ๊ฐ๋ฅํ๋ค. GelSlim์ ๋ ๋ฉ์ํ์ง๋ง ๊ธธ์ด๊ฐ 205mm๋ก ์๊ฐ๋ฝ ๋์๋ ๋ง์ง ์๋๋ค. DIGIT๋ ์ด ๋ ์ผ์๊ฐ ์ด์ง ๋ชปํ ๋ฉํฐํ๊ฑฐ ๊ณ ํด์๋ ์ด๊ฐ ์กฐ์์ ๋ฌธ์ ์ฒ์ ์ด์๋ค.
์ ์ด ์๊ณ ๋ฆฌ์ฆ ์ธก๋ฉด์์ tactile-MPC[17]๋ ์ง์ ์ ์ ์ ์ด๋ค. DIGIT ๋ ผ๋ฌธ์ ์ด๋ฅผ ๋จ์ผ ์ผ์ 3-DOF ์ค์ ์์ ์ด์ค ์ผ์ 8-DOF ์ค์ ์ผ๋ก ํ์ฅํ๋ ๊ฒ์ด ์ ์ด๋ ค์ด์ง(๊ณ์ฐ ๋น์ฉ), ๊ทธ๋ฆฌ๊ณ Struct-NN์ด ์ด๋ป๊ฒ ์ด๋ฅผ ํด๊ฒฐํ๋์ง๋ฅผ ์ค๋ช ํ๋ค.
OpenAI์ Dexterous In-Hand Manipulation[26]๊ณผ ๋น๊ตํ๋ฉด ํฅ๋ฏธ๋กญ๋ค. OpenAI๋ ์ด๊ฐ ์์ด ์์ญ ๋์ ์ถ์ ์นด๋ฉ๋ผ๋ก ์๊ฐ๋ฝ ์ํ๋ฅผ ์ถ์ ํ๋ ์ ๊ทผ์ ํํ๋ค. DIGIT๋ ๋ฐ๋๋ก ์ด๊ฐ์์ ์ง์ ์ํ๋ฅผ ์ป์ด ์นด๋ฉ๋ผ ๊ธฐ๋ฐ ์ถ์ ์ ์์กด์ฑ์ ์ค์ธ๋ค. ๋ ์ ๊ทผ ๋ชจ๋ ๊ฐ์์ ์ฅ๋จ์ ์ด ์๋ค.
์์ฝ ๋ฐ ๊ฒฐ๋ก
DIGIT๋ ๋ ๊ฐ์ง๋ฅผ ๋์์ ํด๋๋ค๋ ์ ์์ ๋ก๋ด๊ณตํ ์ปค๋ฎค๋ํฐ์ ๊ฐ์น ์๋ ๊ธฐ์ฌ๋ค.
ํ๋์จ์ด ์ธก๋ฉด: ๊ณ ํด์๋ ์ด๊ฐ ์ผ์ฑ์ ๋ฉํฐํ๊ฑฐ ํธ๋์์ ์ค์ฉ์ ์ผ๋ก ์ฌ์ฉํ ์ ์๊ฒ ๋ง๋ ํผํฉํฐ์ ์ํํ. ์ ์กฐ ๋น์ฉ($15)๊ณผ ๋ด๊ตฌ์ฑ(๊ธฐ์กด ๋๋น 1,000ร+) ๊ฐ์ ์ ์คํ์ค ํ๋กํ ํ์ ์ ๋์ด ์ฐ๊ตฌ ํ๋ซํผ์ผ๋ก์์ ์ง์ ๊ฐ๋ฅ์ฑ์ ์๋ฏธํ๋ค.
์๊ณ ๋ฆฌ์ฆ ์ธก๋ฉด: ํคํฌ์ธํธ ์คํ ์ธ์ฝ๋๋ฅผ ํตํ ๊ณ ์ฐจ์ ์ด๊ฐ ์ด๋ฏธ์ง์ ํ์คํฌ-๊ด๋ จ ์ ์ฐจ์ ํํ ์์ถ, ๊ทธ๋ฆฌ๊ณ ์ด๋ฅผ ํตํ ๋ฉํฐํ๊ฑฐ ์ด๊ฐ MPC์ ์ค์ฉ์ ๊ตฌํ. 50ร ์๋ ํฅ์์ด ๋จ์ํ ์์ง๋์ด๋ง ํธ๋ฆญ์ด ์๋๋ผ ์์คํ ์ ์ค์๊ฐ ์ ์ด ๊ฐ๋ฅ/๋ถ๊ฐ๋ฅ์ผ๋ก ๊ฐ๋ฅด๋ ์ง์ ์ฐจ์ด๋ฅผ ๋ง๋ ๋ค.
ํ๊ณ๋ ๋ช ํํ๋ค: ๋จ์ผ ํ์คํฌ ๊ฒ์ฆ, 25% ๋ํ์จ, ๋ฒ์ฉ ์ด๊ฐ ํํ ๋ถ์ฌ. ๊ทธ๋ฌ๋ ์ด ๋ ผ๋ฌธ์ด ์ด์ด๋์ ๋ฐฉํฅโ๊ณ ํด์๋ ์ด๊ฐ + ๋ฉํฐํ๊ฑฐ + ํ์ต ๊ธฐ๋ฐ ์ ์ดโ์ ์ดํ ๋ง์ ์ฐ๊ตฌ๊ฐ ๋ฐ๋ผ๊ฐ๊ฒ ๋ ๊ธธ์ด๋ค.
์ด๊ฐ ์ผ์ฑ์ด ๋ก๋ด ์กฐ์์ ๋ณด์กฐ ์๋จ์ด ์๋ ํต์ฌ ๋ชจ๋ฌ๋ฆฌํฐ๋ก ์๋ฆฌ ์ก๊ธฐ ์ํ ํ ๋ ์์ ์ผ๋ก์, DIGIT๋ ์๊ธฐ์ ์ ํ๊ณ ์ ์คํ๋ ์ฐ๊ตฌ๋ค.
์ฐธ๊ณ ๋ฌธํ (์ฃผ์)
- [11] Yuan et al., โGelSight: High-Resolution Robot Tactile Sensors for Estimating Geometry and Force,โ Sensors, 2017
- [12] Donlon et al., โGelSlim: A High-Resolution, Compact, Robust, and Calibrated Tactile-Sensing Finger,โ IROS, 2018
- [17] Tian et al., โManipulation by Feel: Touch-Based Control with Deep Predictive Models,โ ICRA, 2019
- [31] Minderer et al., โUnsupervised Learning of Object Structure and Dynamics from Videos,โ NeurIPS, 2019
- [35] Finn et al., โUnsupervised Learning for Physical Interaction through Video Prediction,โ NeurIPS, 2016