
아이폰 뒷면에 렌즈가 두세 개 달려 있잖아요. 그런데 사진을 찍을 때는 사실 한 번에 하나만 써요. 줌을 당기면 광각에서 망원으로 '전환'되는 방식이지, 두 렌즈가 힘을 합치는 게 아니거든요. 그 아까운 나머지 렌즈를 놀리지 말자는 아이디어로, 두 렌즈로 같은 순간을 동시에 촬영해서 한 장의 사진으로 융합해주는 앱을 한 개인 개발자가 만들어 공개했어요.
어떻게 가능한 걸까요
기술적 토대는 애플이 iOS 13부터 열어준 AVCaptureMultiCamSession이라는 API예요. 이게 뭐냐면, 원래 앱은 한 번에 카메라 하나의 영상 스트림만 받을 수 있었는데, 이 API를 쓰면 여러 카메라의 스트림을 동시에 받을 수 있게 해주는 거거든요. 다만 두 개의 카메라 파이프라인을 동시에 돌리는 건 전력과 발열 부담이 커서, 애플이 해상도나 프레임레이트에 제약을 걸어두고 있어요.
이 앱은 그 API로 광각과 망원을 같은 순간에 찍은 다음 융합(fusion)을 해요. 융합이 뭐냐면, 두 장을 옆으로 이어 붙이는 게 아니라, 두 이미지에서 같은 지점끼리 정확히 겹치도록 맞추는 정합(registration) 작업을 먼저 하고, 망원 렌즈가 담아낸 세밀한 디테일을 광각 사진의 해당 영역에 녹여 넣는 거예요. 결과적으로 넓은 화각은 유지하면서 중심부 선명도는 망원급인 사진이 나오는 거죠.
말은 쉬운데 실제로는 꽤 어려운 문제예요. 두 렌즈는 물리적으로 몇 밀리미터 떨어져 있어서 시차(parallax)가 생기거든요. 오른쪽 눈 감았다 왼쪽 눈 감았다 해보면 가까운 물체가 더 많이 움직여 보이죠? 그것처럼 가까운 피사체일수록 두 렌즈의 이미지가 어긋나서, 단순히 겹치면 유령처럼 번진 사진이 돼요. 게다가 두 렌즈는 센서도 다르고 색감과 노이즈 특성도 달라서, 이걸 티 안 나게 맞추는 보정도 필요하고요.
사실 애플도 몰래 하고 있는 일이에요
재미있는 건, 이런 렌즈 간 협업을 애플도 내부적으로는 이미 하고 있다는 거예요. 아이폰에서 줌을 당길 때 렌즈가 바뀌는데도 화면이 부드럽게 이어지는 건 내부에서 여러 렌즈의 데이터를 섞고 있기 때문이고, 인물 모드의 배경 흐림도 두 렌즈의 시차로 깊이를 추정해서 만드는 거거든요. 차이가 있다면 애플은 그 과정을 전부 블랙박스로 감추고 결과물만 준다는 거예요. 이 앱은 그 융합 과정을 사용자 손에 쥐여준다는 점에서 방향이 달라요.
업계 흐름으로 보면 이건 계산 사진학(computational photography)의 연장선이에요. 구글의 HDR+나 나이트 사이트가 여러 장을 '시간축'으로, 즉 연속 촬영으로 합성해서 화질을 끌어올렸다면, 이 앱은 '공간축'으로, 즉 서로 다른 렌즈 두 개로 같은 순간을 합성하는 접근이거든요. 스마트폰 카메라의 발전이 광학 절반, 소프트웨어 절반이라는 걸 보여주는 또 하나의 사례죠.
한국 개발자에게 주는 시사점
iOS 개발자라면 AVFoundation의 멀티캠 기능을 눈여겨볼 만해요. 나온 지 꽤 됐는데도 의외로 쓰는 앱이 드물어서, 카메라 관련 앱을 만든다면 차별화 포인트가 될 수 있거든요. 컴퓨터 비전에 관심 있는 분에게는 이미지 정합, 시차 보정 같은 고전적이면서도 실전적인 문제를 다뤄볼 좋은 학습 소재고요. 무엇보다 이 사례가 보여주는 건, 대기업만 만질 수 있을 것 같은 하드웨어 깊숙한 기능도 공개 API를 파고들면 개인 개발자가 제품으로 만들어낼 수 있다는 거예요. 플랫폼이 열어놓고도 아무도 안 쓰는 API, 거기에 개인 개발자의 기회가 숨어 있는 경우가 많거든요.
마무리
한 줄로 정리하면, 폰에 이미 달려 있는 렌즈 두 개를 동시에 굴려서 하드웨어 추가 없이 소프트웨어만으로 화질의 한계를 밀어 올린 영리한 앱이라는 거예요. 여러분이라면 멀티캠 동시 촬영으로 뭘 만들어보고 싶으세요? 두 렌즈 시차를 이용한 3D 스캔, 광각과 망원 두 화각을 동시에 담는 브이로그 카메라 같은 아이디어도 떠오르는데, 댓글로 여러분의 아이디어를 들려주세요.
🔗 출처: Hacker News