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