# 드론 영상에 글자를 '딱' 붙이는 비밀 (그림으로 보는 이야기)
> 이 글은 **초등학생도 이해할 수 있게** 쓴 설명서예요.
> 어려운 수학 대신 **그림과 이야기**로, 드론 영상 위에 글자를 어떻게 흔들림 없이 딱 붙이는지 알려줄게요.
> (더 어려운 진짜 기술 설명은 같은 폴더의 기술문서를 보세요.)
---
## 0. 한 문장으로 말하면
**날아다니는 드론이 찍은 영상** 위에 "여기는 ○○다리, 저기는 △△터널" 같은 글자를
**떨지 않고, 부드럽게, 딱 맞는 자리에** 붙여 주는 기술 이야기예요.
> 🎮 **비유**: 게임에서 캐릭터 머리 위에 이름표가 떠다니죠? 그 이름표가 흔들리지 않고
> 캐릭터를 졸졸 따라다니게 만드는 비법이라고 생각하면 돼요.
---
## 1. 무슨 문제가 있었을까?
드론은 하늘에서 바람을 맞으며 날아요. 그래서 영상이 **조금씩 부르르 떨려요.**
그냥 글자를 붙이면, 글자도 같이 **부르르 떨려서** 보기 싫어요.
게다가 영상은 1초에 **사진 30장**으로 만들어지는데, 글자가 30번만 움직이면
**뚝뚝 끊겨** 보여요. 우리는 **물 흐르듯 부드럽게** 움직이길 바라죠.
그림 1. 떨림(왼쪽)과 끊김(오른쪽) — 이 두 가지를 동시에 해결해야 해요.
이 두 가지를 **한꺼번에** 해결하는 게 이 기술의 핵심이에요. 하나씩 볼까요?
---
## 2. 비법 ① 똑똑한 평균 내기 — "곧을 땐 많이, 돌 땐 적게"
### 떨림을 없애는 가장 쉬운 방법은 '평균'
떨리는 값들을 **여러 개 모아 평균**을 내면 부드러워져요.
예를 들어 드론이 보는 방향이 `10°, 12°, 9°, 11°` 처럼 떨릴 때, 평균을 내면 `≈10.5°`로 매끈해지죠.
> ✏️ **비유**: 손을 떨면서 그은 선도, 옆 점들과 평균을 내면 자를 댄 듯 매끈해져요.
### 그런데 함정이 있어요!
드론이 **방향을 휙 트는 순간**까지 평균에 섞으면, 글자가 **늦게 따라와요.**
회전했는데 글자는 아직 직진 방향을 보고 있는 거죠. (답답!)
### 그래서 '똑똑한 평균'을 써요
- **곧게 갈 때** → 옆 사진을 **많이** (앞뒤 약 60장, 2초어치) 모아 평균 → 떨림 꽉 잡기 💪
- **방향 틀 때** → "어, 방향이 확 달라졌네?" 하고 거기서 **딱 멈춰서** 그 부분은 평균에 안 섞어요 → 즉시 따라가기 ⚡
방향 차이가 **8도**보다 크게 벌어지면 "여기는 다른(도는) 구간이다!" 하고 평균 범위를 멈춰요.
그림 2. 곧을 땐 넓게 평균(떨림 제거), 돌 땐 꺾이는 지점에서 멈춤(지연 없음).
이렇게 하면 **직선에서는 떨림이 사라지고, 회전에서는 늦지 않게** 따라가요. 일석이조죠! 🐦🐦
---
## 3. 비법 ② 사진 사이를 채우기 — "30장을 60장처럼"
영상은 1초에 사진 30장이에요. 글자를 그 30장에만 맞춰 움직이면 **뚝뚝** 끊겨 보여요.
그래서 **사진과 사진 사이**의 값을 **계산으로 만들어** 채워요.
예를 들어 10번 사진은 "방향 20°", 11번 사진은 "방향 24°"라면,
그 **딱 중간**은 "방향 22°"라고 만들어 내는 거예요.
> 🎨 **비유**: 만화 영화에서 두 그림 사이에 그림을 더 그려 넣으면 더 부드럽게 움직이죠.
> 그것과 똑같아요. ("사이 그림 채우기")
그림 3. 진짜 사진(파랑) 사이에 계산으로 만든 값(주황)을 채워 끊김을 없앱니다.
이렇게 사이를 채우면 글자가 **물 흐르듯** 부드럽게 움직여요. 화면이 60번씩 새로 그려져도
글자가 항상 **딱 맞는 중간 자리**에 있게 되는 거죠.
> 💡 작은 비밀: 방향(각도)은 **359° 다음이 0°** 라서, 그냥 계산하면 글자가 한 바퀴 빙 돌아버려요.
> 그래서 "**가까운 쪽으로 돌기**" 규칙을 따로 넣어 뒀어요. (359°→0°은 한 칸만 돌게)
---
## 4. 비법 ③ 화면에서 한 번 더 다듬기 — "살살 vs 빨리"
비법 ①, ②로 이미 많이 부드러워졌지만, 화면에서 **마지막으로 한 번 더** 다듬어요.
규칙은 아주 똑똑해요:
- **천천히 움직일 때(=떨림일 가능성 큼)** → 글자를 **살살** 움직여 떨림을 죽여요. 🐢
- **빨리 움직일 때(=진짜로 휙 도는 중)** → 글자를 **빨리** 따라가게 해요. 🐇
그림 4. 천천히면 떨림으로 보고 살살, 빠르면 진짜 움직임으로 보고 빨리 따라갑니다.
### 깜짝 점프는 무시해요 (단, 너무 오래는 말고)
가끔 데이터가 **확 튀어서** 글자가 엉뚱한 데로 점프하려 해요. 이런 건 **"어, 이상한데?" 하고 무시**해요.
하지만 영상을 **확 건너뛰기(시크)** 했을 땐 진짜로 멀리 가야 하니까,
**계속 8번 넘게** 같은 점프가 들어오면 "이건 진짜구나" 하고 받아들여요.
> 🚦 **비유**: 친구가 갑자기 펄쩍 뛰면 "장난이지?" 하고 무시하지만,
> 계속 그쪽으로 가면 "아, 진짜 가는구나" 하고 따라가는 것과 같아요.
---
## 5. 비법 ④ 미리 정해두기 vs 그때그때 그리기 (제일 중요!)
화면은 1초에 **60번**이나 새로 그려져요. 매번 모든 걸 다시 계산하면 컴퓨터가 **헉헉**대요.
그래서 일을 **두 종류로 나눴어요.**
| 종류 | 무슨 일? | 언제 하나? |
|------|---------|-----------|
| **무거운 일** | "어떤 글자를 **보여줄지**" 정하기 (가려진 것 빼기, 겹친 것 정리) | 미리 한 번만 |
| **가벼운 일** | "그 글자를 화면 **어디에 그릴지**" 계산 | 매 순간(60번) |
> 🍱 **비유**: 도시락을 미리 싸 두면(무거운 일), 점심시간엔 뚜껑만 열면 돼요(가벼운 일).
> 매번 처음부터 요리하면 점심시간이 다 가버리죠!
그림 5. 무거운 결정은 미리, 가벼운 위치 계산만 매 순간 — 그래서 부드러운 60프레임 유지.
### 더 똑똑한 점들
- **지금 보는 곳부터 미리 계산** → 영상을 틀면 바로 글자가 떠요. (멀리 있는 건 천천히 준비)
- **컴퓨터가 한가할 때 조금씩** 준비해서, 영상이 안 끊겨요.
- 글자 위치는 **진짜 땅 위 좌표**로 저장해 둬요. 그래야 드론이 움직여도 그 자리에 정확히 다시 그릴 수 있죠.
---
## 6. 비법 ⑤ 글자가 겹치면 누가 이길까?
화면에 글자가 많으면 서로 **겹쳐서** 못 읽어요. 그래서 겹치면 **누구를 남길지** 규칙으로 정해요.
1. **기차역**이 가장 힘이 세요 → 역은 무조건 남겨요. 🚉
2. 같은 급이면 **드론에 더 가까운 것**이 이겨요. (가까운 게 더 중요하니까)
그림 6. 겹치면 기차역 먼저, 그다음 가까운 것 순으로 남겨 화면을 깔끔하게.
### 위·아래 선로 형제 구분 (똑똑!)
같은 다리가 **위로 가는 선로용(상)** 과 **아래로 가는 선로용(하)** 두 개로 있을 때가 있어요.
드론이 지금 **위로 가는 선로**를 따라가면 `○○다리(상)` 을, 아래면 `○○다리(하)` 를 보여줘요.
**드론이 진짜 지나는 쪽**의 이름표를 골라주는 거죠.
> 🚂 **비유**: 상행선·하행선 플랫폼이 따로 있을 때, 내가 탄 기차 쪽 안내판을 보여주는 것과 같아요.
---
## 7. 보너스 — 빙글빙글 나침반
화면 구석엔 **나침반**이 있어요. 드론이 도는 대로 같이 돌아서 "지금 어느 쪽을 보는지" 알려줘요.
큰 글자들은 **떨림 제거를 많이** 해서 살짝 느긋한데, 나침반은 **방향을 바로바로** 보여줘야 하니까
**떨림 제거를 살짝만** 해서 회전에 **재빠르게** 반응하게 만들었어요.
그리고 나침반이 359°에서 0°로 갈 때 **휙 한 바퀴 안 돌고** 가까운 쪽으로만 살짝 돌게 해 뒀어요.
그림 7. 나침반은 회전에 빠르게 반응하도록 일부러 가볍게 다듬습니다.
---
## 8. 전체를 한 그림으로 정리
그림 8. 네 가지 비법이 차례로 작동해, 떨림 없이 부드러운 글자 붙이기가 완성됩니다.
---
## 9. 왜 이게 대단할까? (특허감인 이유)
1. **곧을 땐 많이, 돌 땐 멈추는 똑똑한 평균** — 보통은 "부드러움"과 "빠른 반응" 중 하나만 얻는데,
이건 **둘 다** 얻어요. (회전 끝나고 한 번 튀는 문제도 없앴어요.)
2. **미리 정하기 + 매 순간 위치만 그리기** — 무거운 일과 가벼운 일을 나눠서,
느린 컴퓨터에서도 **부드러운 60프레임**을 만들어요.
3. **30장을 60장처럼 사이 채우기 + 가까운 쪽으로만 돌기** — 끊김 없이, 방향도 안 헷갈리게.
4. **느리면 살살·빠르면 빨리 + 튀는 값 무시** — 떨림과 진짜 움직임을 구별해요.
5. **위·아래 선로 형제 이름표 골라주기** — 드론이 진짜 지나는 쪽 이름을 보여줘요.
> ⚠️ 단, 특허는 **비슷한 게 이미 있는지** 전문가가 꼭 찾아봐야 확정돼요.
---
## 10. 쉬운 용어 사전
| 어려운 말 | 쉬운 뜻 |
|----------|---------|
| **평활(스무딩)** | 떨리는 값을 주변과 평균 내어 부드럽게 만드는 것 |
| **보간** | 사진과 사진 **사이 값을 계산으로 채우는** 것 (사이 그림 그리기) |
| **yaw(요)** | 드론이 **좌우로 돈 방향** (어느 쪽을 보나) |
| **프레임** | 영상을 이루는 **사진 한 장** (1초에 보통 30장) |
| **RAF (매 순간 그리기)** | 화면을 1초에 약 60번 다시 그리는 것 |
| **사전계산(미리 정하기)** | 무거운 결정을 **미리 한 번** 해서 저장해 두는 것 |
| **이상치 무시** | 갑자기 확 튀는 **이상한 값을 버리는** 것 |
| **나침반(heading-up)** | 드론이 보는 방향에 맞춰 도는 방향 표시 |
---
## 11. 마치며
> 드론은 바람에 흔들리고, 영상은 사진 30장으로 뚝뚝 끊겨요.
> 그런데도 글자가 **떨지 않고, 부드럽게, 딱 맞는 자리**에 붙는 건
> **① 똑똑한 평균 ② 사이 채우기 ③ 화면 다듬기 ④ 미리 정하고 그리기** —
> 이 네 가지 비법이 함께 일하기 때문이에요.
어려워 보여도, 사실은 **"떨리는 선 매끈하게 다듬기, 만화 사이 그림 그리기, 도시락 미리 싸기"** 같은
**일상의 아이디어**를 컴퓨터로 정밀하게 만든 것뿐이랍니다. 🙂