포스테키안

2019 가을호 / 기획특집 / 미디어 콘텐츠 시대

2020-01-03 48

기획특집 / 미디어 콘텐츠 시대

요즘 들어 유튜브, 넷플릭스 등 미디어 콘텐츠 기업이 급속도로 성장해 나가고 있습니다.  스마트폰, 태블릿 PC 등 전자기기의 발달로 인해 언제 어디서나 미디어 콘텐츠를 감상할 수 있는 환경이 조성된 것도 미디어 콘텐츠 산업의 발전에 크게 기여했습니다. 하지만 수준 높은 콘텐츠를 제작하기 위한 기술과 사용자 맞춤 정보 제공 기법, 효율적인 정보 처리 기술이 없었다면 지금의 위치까지 성장하기는 힘들었겠죠? 그렇다면 이제부터 본격적으로 미디어 콘텐츠 산업이 어떠한 기반들을 바탕으로 발전해 왔는지 알아볼까요?

<기획특집Ⅰ>

미디어 콘텐츠 기술의 정점, 컴퓨터 그래픽스!

다양한 매체의 발달로 이제는 미디어 콘텐츠가 모든 세대에게 친숙한 시대가 되었습니다. 미디어 콘텐츠의 확산으로 콘텐츠에 사용되는 기술도 비약적으로 발전해 나가고 있는데요. 이번 기사에서는 미디어 콘텐츠의 한계를 돌파하고 새로운 시대를 열어준 CG, 즉 컴퓨터 그래픽스에 대해 살펴보도록 하겠습니다. 컴퓨터 그래픽스에서 가장 까다로운 유체의 표현과 다양한 영화에서 사용되는 모션 캡처에 대해 알아볼까요?

3차원 컴퓨터 그래픽스
Computer Graphics는 앞글자를 따서 보통 CG라고 많이 부릅니다. CG는 컴퓨터를 사용해 영상을 만들어 내는 모든 기술을 총칭합니다. 요즘 영상매체에서는 CG가 없는 미디어 콘텐츠를 상상하기 어렵습니다. 그렇다면 미디어 콘텐츠에서 주로 사용되는 3차원 컴퓨터 그래픽스에 대해 먼저 알아보도록 하겠습니다. 3차원 컴퓨터 그래픽은 컴퓨터에 저장된 모델의 기하학적 데이터를 이용해 3차원적으로 표현한 뒤에 2차원적 결과물로 처리 후 출력하는 컴퓨터 그래픽입니다. 이러한 3차원 컴퓨터 그래픽스의 제작 과정은 3차원 모델링, 레이아웃과 애니메이션, 3차원 렌더링 이렇게 3가지 과정으로 나뉘게 됩니다. 3차원 모델링은 일반적으로 2차원상의 작도를 통해 공간에 선을 그리고 이 선들을 이어 붙여 다각형의 면을 만들어내는 방법으로 이루어집니다. 물론 3차원상에서 표현되는 기하학적인 도형이나 해당 도형들을 연산하는 방법을 통해서도 만들어질 수 있습니다. 이런 모델링 과정이 끝나면 해당 모델이 화면상에서 어떻게 배치될 것인지 그 순간순간의 특징을 결정짓게 됩니다. 이후 3차원 렌더링 과정을 통해 모델을 그림으로 변화시키게 됩니다.

영화 모아나에서 표현된 파도 이미지 출처 : https://movie.naver.com/movie/bi/mi/photoView.nhn?code=130849

컴퓨터 그래픽스를 통한 유체의 표현
이제부터 컴퓨터 그래픽스를 통해 유체를 어떻게 표현하는지에 대해 알아보도록 하겠습니다. 앞서 살펴본 것처럼 3차원 컴퓨터 그래픽스는 기본적으로 3차원 도형을 기반으로 이루어집니다. 따라서 물체의 표면이 고정된 경우 그렇지 않은 경우보다 구현하기가 수월합니다. 물과 같은 유체는 특정한 모양이나 표면이 없이 수시로 변화하기 때문에 유체의 움직임은 특정한 3차원 도형으로 구현하기 어렵습니다. 따라서 초기에는 3차원 도형을 여러 개 사용하여 유체를 표현하는 방법을 사용했습니다. 하지만 해당 방법으로는 자연스러운 유체를 표현하기 힘들었고, 이 문제의 해법은 바로 수학에 있었습니다. 바로 점성을 가진 유체의 운동을 기술하는 비선형 편미분 방정식인 ‘나비에-스토크스 방정식’입니다.

p는 밀도, v는 속도, p는 압력, T는 응력, f는 체적력을 나타낸다.) 다음과 같이 표현되는 나비에-스토크스 방정식을 통해 유체의 움직임을 파악하고 예측할 수 있습니다. 나비에-스토크스 방정식의 해가 3차원 상에 항상 존재하는지, 만약 존재한다면 해를 어떻게 구하는지 등 이 방정식의 해의 존재성은 아직 증명되지 않았고, 리만가설이나 P-NP 문제와 같은 수학의 대표적인 난제들과 함께 밀레니엄 문제에 선정되어 있기도 합니다. 그렇다면 아직 해가 밝혀지지 않은 방정식을 통해 어떻게 유체를 구현할까요? 이를 해결하기 위해 공학자들은 근사해를 사용했습니다. 근사해를 사용할 경우 약간의 오차가 발생하지만, 유체를 구현하기 위해 정확한 해가 필요한 것이 아니기에 이를 통해 유체를 보다 효과적으로 구현해낼 수 있게 되었습니다. 하지만 방정식의 해를 컴퓨터의 힘에 기대 계산하는 과정은 컴퓨터의 성능 한계에 부딪히기 마련입니다. 이를 해결하는 방법으로 level-set simulation이라는 기법이 사용되었습니다. 입자의 위치를 모두 계산하지 않고 일부 입자들의 위치만 활용하여 유체의 움직임을 표현하는 기법입니다. 이를 통해 더 많은 유체의 움직임을 보다 효율적으로 표현해낼 수 있습니다. 또한, 애니메이션 ‘모아나’에서는 새로운 시뮬레이션 기법인 APIC(The Affine Particle-In-Cell) 기법이 사용되었습니다. 이 기법은 물 표면에 발생하는 잡티와 부자연스러운 움직임을 보완했습니다. 이처럼 계속해서 새로운 기법을 통해 미디어 콘텐츠도 훨씬 더 실감 나게 표현되고 있습니다.

모션 캡처

물체를 표현하는 것뿐만 아니라 사람 또한 컴퓨터 그래픽스의 도움을 받아 영상물에서 새로운 모습으로 변모할 수 있습니다. 바로 모션 캡처를 활용해서 말이죠. 여러분 모두 어벤져스에서 타노스의 모습을 본 경험이 있을 겁니다. 타노스 역을 맡은 조쉬 브롤린은 얼굴에 무려 35개의 카메라를 단 상태에서 영화를 촬영했습니다. 이 카메라를 통해 얼굴 근육의 미세한 변화를 잡아내고 이를 컴퓨터로 가공하여 화면에서 실제로 존재하는 것처럼 표현해낼 수 있습니다. 심지어 <호빗>에서는 베네딕트 컴버배치가 모션 캡처를 통해 상상의 동물인 용을 연기하였습니다. 이처럼 모션 캡처는 미디어 콘텐츠 세상을 더욱 확장할 수 있는 기술로 평가받고 있습니다.


용을 연기하는 베네딕트 컴버배치 이미지 출처 : https://www.businessinsider.com/hobbit-benedict-cumberbatch-motion -capture-smaug-2014-12

지금까지 미디어 콘텐츠의 새로운 지평을 연 컴퓨터 그래픽스에 대해 알아보았습니다. 컴퓨터 그래픽스를 통해 미디어 콘텐츠는 인간의 상상력을 자극해 왔는데요, 그렇다면 이렇게 만들어진 미디어 콘텐츠는 여러분에게 어떻게 다가갈까요? 이제부터는 미디어 콘텐츠의 새로운 지평을 연 스트리밍 기술에 대해 알아보도록 하겠습니다.

알리미 24기 전자전기공학과 18학번 현진


<기획특집Ⅱ>
고화질 영상이 실시간으로 내 손에, 스트리밍 기술!

이렇게 컴퓨터 그래픽스 기술의 발달로 높은 퀄리티의 영상들이 탄생하게 되었군요! 하지만 이런 영상들도 대중들에게 널리 퍼지지 못한다면 아무런 의미가 없었겠죠? 이렇게 손쉽게 영상을 접할 수 있게 만들어준 배경에는 바로 스트리밍 기술이 있었는데요. 미국의 4대 IT 기업 중 2개와 연관되어 있을 정도로 IT 시장의 큰 지분을 차지하는 스트리밍 기술! 스트리밍 기술의 탄생과 기술을 실현할 수 있게 해주었던 배경을 함께 알아볼까요?


스트리밍 기술의 시작

스트리밍의 탄생을 살펴보려면, 먼저 기존의 방식과 그것의 문제점을 알아보아야 하겠죠? 스트리밍 기술의 탄생 전, 우리는 영상을 보기 위해 다운로드 방식을 사용했습니다. 지금도 인터넷 연결 없이 사용할 수 있다는 장점이 있어 종종 사용되기도 하지만, 기존의 다운로드 방식에는 몇 가지 불편한 점이 있었습니다. 영상이 모두 다운로드 되기 전까지는 영상을 이용할 수 없었고, 전체 영상이 아니라 일부분만 보고자 하더라도 전체 영상을 모두 다운로드해야 했습니다. 그리고 영상을 재생하는 컴퓨터와 같은 전자기기의 용량이 제한되어있어 새로운 영상을 보기 위해서는 지속해서 저장소를 비워주어야 했기 때문에 매우 번거로웠습니다. 하지만 스트리밍 기술은 큰 용량의 영상을 작은 여러 조각으로 쪼개어 정보를 받기 때문에 정보 수신과 영상 재생이 동시에 일어날 수 있는 특징을 가지고 있습니다. 또한, 스트리밍 서버에 저장된 정보들을 가져와 재생한 후 삭제하는 방식으로 재생기기의 용량에 큰 영향을 주지 않는다는 편리함 덕분에 우리는 바야흐로 스트리밍 시대에 돌입하게 됩니다.


다운로드와 스트리밍의 차이점 이미지 참고 : http://center.cast.kr/html/images/chart.gif

스트리밍의 핵심 기술 : 이산 코사인 변환

스트리밍이 현실적으로 구현되기 위해서는 용량이 큰 정보를 압축하는 기술이 필요했습니다. 그래서 고안된 것이 바로 이산 코사인 변환인데요. 이산 코사인 변환을 알기 위해서는 일단 푸리에 급수와 푸리에 변환에 대해서 먼저 알아야 합니다. 푸리에 급수와 푸리에 변환은 모두 프랑스의 수학자 푸리에가 처음 제시한 개념으로, 매우 간단하게 이야기하면 ‘푸리에 급수는 모든 주기함수를 삼각함수의 합으로 나타낼 수 있다’라는 것입니다. 푸리에 변환은 여기에서 착안해 일반적인 함수를 주기가 무한대인 주기함수로 보고 일반적인 함수 또한 삼각함수의 합으로 나타낼 수 있다는 것이죠. 이를 실생활에 적용하여 특정 신호 파동을 구성하는 파장, 진폭 등의 성분으로 분해해 신호를 해석할 수 있게 된 것입니다. 식으로 표현하면

k:진동수, x:시간 ) 시간에 따라 변하는 f(x)를 가지고 변환하여 주파수 k에 대한 함수 F(k)로 변환되는 것을 볼 수 있습니다. 푸리에 변환이 기본이 되어 탄생한 것이 ‘이산 코사인 변환’인데요, 이산 코사인 변환은 영상 신호를 압축하여 전기 신호로 바꾸는 것으로 생각하시면 됩니다. 영상 신호를 전기 신호, 즉 주파수로 변환하게 되면 신호는 상대적으로 주파수가 낮은 쪽으로 몰리는 에너지 집중 현상이 나타납니다. 좀 더 쉽게 설명해보자면, 한 장면을 8 x 8의 구역으로 나누었을 때 인접한 구역 간에 색상이 동일하면 주파수가 낮아지고, 색상에 변화가 생기면 주파수가 높아집니다. 인접한 구역 간은 거의 비슷한 색상으로 이루어져 있어서 자연스럽게 낮은 주파수에 정보가 몰리게 되는 것이죠.


낮은 주파수 성분에 정보가 몰린 모습 이미지 출처 : https://t1.daumcdn.net/cfile/tistory/11392B034B53138E5C

사람의 눈 또한 높은 주파수 성분보다 낮은 주파수 성분에 민감하게 반응하기 때문에, 높은 주파수 성분을 조금 생략한다고 하더라도 화질의 차이를 잘 느끼지 못합니다. 따라서 변환 과정에서 주파수가 높은 잉여 정보를 제거하여 변환해 화질은 유지하면서도 더 적은 용량으로 영상을 압축할 수 있게 되는 것입니다.


미래의 스트리밍 : 리얼타임 스트리밍

현재의 스트리밍 기술도 과거의 방식들의 단점을 보완하여 나온 것이지만, 아직 여러 단점이 존재합니다. 예를 들면 스트리밍으로 축구 경기를 시청하고 있을 때 내 화면에서는 아직 아무 일도 일어나지 않았는데, 옆집의 환호로 골이 들어갔음을 미리 알게 되어 김이 샌 적이 있을 겁니다. 또한 스트리밍을 이용하기 위해서는 개별 플랫폼에 따라 다른 플러그인을 다운로드해야 사용할 수 있다는 단점이 있었습니다. 이런 단점을 해결한 방식으로 리얼타임 스트리밍이 대두되었는데요. WebRTC 기술, 즉 별도의 프로그램 없이 웹 브라우저만으로 통신할 수 있게 만든 표준을 활용하여 개별 프로그램 다운로드도 필요하지 않게 되었습니다. 또한 정보를 주고받을 때 서로 주고받는 형식이 아니라 한쪽에서 일방적으로 정보를 보내는 방식인 UDP 형식을 접목, 활용합니다. 이를 통해 스트리밍에서 정보를 처리할 때 여러 조각으로 나누어 전송하던 과정에서 발생한 시간 차이를, 조각으로 나누는 불필요한 과정을 생략하여 사용자에게 1초 미만으로 지연 시간을 줄였다는 특징이 있습니다.

스트리밍에 이런 과학적 지식이 들어 있다니 매우 놀라운데요! 저 또한 유튜브나 넷플릭스 같은 스트리밍 사이트에서 많은 영상을 즐겨 보곤 한답니다! 하지만 자기 전 한 번 영상을 보기 시작했다가는 너무 늦게 잠이 들기 다반사였죠. 바로 연관 동영상이나 추천 영상 때문인데요, 이렇게 사용자에 따라 영상을 추천해주는 방식에도 과학이 숨어 있다고 합니다! 함께 이에 대해 알아볼까요?

알리미 25기 무은재학부 19학번 김태호

<기획특집Ⅲ>
맞춤 영상 추천 알고리즘

스트리밍의 기술이 발전하며 영상 매체는 우리의 삶에뗄래야 뗄 수 없는 존재가 되었습니다. 그런데 이런 스트리밍 기술이 발전하여 우리가 언제 어디서든 영상을 접할 수 있다고 하더라도 우리 입맛에 맞지 않는 영상이라면 의미가 없겠죠? 그래서 발전한 된 기술이 바로 ‘추천 시스템’입니다. 실제로 ‘넷플릭스’에서는 사용자가 로그인하는 순간 해당 사용자의 취향에 맞춰 전체 페이지가 구성될 정도로 추천 시스템에 많이 의존하고 있죠. 그럼 이제부터 많은 기업에서 탐내고 있는 ‘추천 시스템’은 어떤 원리로 이루어져 있는지 알아볼까요?


내가 선호하는 콘텐츠와 비슷한 영상을 추천해주는 넷플릭스(Netflix)

추천 시스템의 주요 기술
추천 시스템은 사용자가 선호할 만한 아이템을 추측함으로써 여러 가지 항목 중 사용자에게 적합한 특정 항목을 제공하는 시스템을 일컫습니다. 그래서 단순히 영상뿐 아니라 온라인 쇼핑몰, 심지어는 SNS에서 쓰일 정도로 많은 범용성을 가지고 있죠. 추천 시스템의 바탕에는 ‘필터링(Filtering)’이라는 중요한 기술이 자리하고 있는데요. 기술이 점차 발전하며 딥러닝 기술을 기반에 둔 다양한 추천 시스템들이 제공되고 있지만 가장 보편적이면서 모든 기술의 기본이 되는 원리는 바로 ‘협업 필터링(CF, Collaborative Filtering)’입니다. 협업 필터링은 추천 시스템의 가장 기본적이면서도 핵심적인 기술입니다. 우리가 현실 세계에서 친구에게 어떤 것을 선물할 때, 가장 합리적인 방법은 친구와 비슷한 관심사의 사람들을 찾고, 그들이 좋아하는 상품 또는 구매하는 상품을 친구에게 선물하는 것입니다. 또는 친구가 전에 샀던 상품과 비슷한 상품을 선물하는 것도 하나의 방법이겠죠. 이런 당연한 것 같은 생각이 협업 필터링의 가장 기본적인 원리입니다. 즉, 유사한 성향을 지닌 사람들은 관심사가 유사하다는 가정을 바탕으로 대규모의 기존 사용자 행동 정보를 분석하여 해당 사용자와 비슷한 성향의 사용자들이 기존에 좋아했던 항목을 추천하는 방법이죠. 여기서 유사하다는 것의 대상이 ‘사람이냐 상품이냐’에 따라 협업 필터링은 ‘사용자 기반 협업 필터링(User-based Collaborative Filtering)’과 ‘아이템 기반 협업 필터링(Item-based Collaborative Filtering)’으로 나누어지게 됩니다. 그리고 이번 기사에서는 두 방식 중 ‘사용자 기반 협업 필터링’에 대해 이야기하고자 합니다. 이 방식에 관해 설명하기 전에 예시 상황을 가정하도록 합시다. 아래 표는 각각의 사용자들이 각각의 드라마에 대해 0~5점 사이의 값으로 평점을 매긴 결과입니다.

사용자 기반 협업 필터링 (User-based Collaborative Filtering)
이 방식은 유사한 성향을 지닌 사람들을 구분하고 해당 성향의 사람들이 좋아하는 것을 추천하는 방식입니다. 이 방식의 경우에는 실시간으로 유사도 계산이 이루어져야 하므로 보통 데이터가 작은 경우에 사용됩니다. 이 방식의 경우에는 아래의 과정을 따라 추천이 이루어집니다.

– 각 사용자에 대해 아이템 선호도를 조사
– 사용자 사이의 유사도 계산
– 가장 유사한 사용자가 선호하는 아이템 선택 후 추천
말로만 설명하면 이해가 잘 안되니 위의 사례로 직접 계산해 보도록 합시다. 표를 통해 선호도 조사는 마쳤으니 두 번째 단계부터 직접 계산해 봅시다.

사용자 사이의 유사도 계산
사용자 간의 유사도는 두 사용자의 성향이 얼마나 비슷한지를 알아내는 척도로 수학적으로는 사용자들이 평가한 선호도를 벡터로 표현해서 벡터 간의 유사도로 계산합니다. 벡터 간의 유사도는 다양한 방법으로 계산할 수 있지만 이번 시간에는 코사인 유사도를 이용하여 계산해 보려합니다. 코사인 유사도는 두 벡터 간의 각도를 계산하고 그 각도가 작을수록 가까이 있기 때문에 유사하다고 판단하는 방식으로, 다음의 공식으로 계산할 수 있습니다

위의 사례에 적용해본다면 동희의 평가 벡터는 (3,5,-,4,3,-)이며 태호의 평가 벡터는 (-,5,-,2,3,4)가 됩니다. 유사도는 동희와 태호 모두 평가한 항목에 대해 적용해야 하므로 동희는 (-,5,-,4,3,-) 태호는 (-,5,-,2,3,-)를 이용하여 계산합니다. 위 수식을 활용하여 계산해 보면 아래와 같습니다.

동희와 태호 사이의 유사도는 0.96으로 정의되게 됩니다. 이러한 방식으로 동희와 다른 사용자의 유사도를 구하면 현우는 0.97, 지윤은 0.85, 태호는 0.96, 혜인이는 0.96이 나오게 되죠.

가장 유사한 사용자가 선택한 아이템 선택 후 추천
코사인 유사도를 이용하여 가장 유사한 사용자를 찾았으니 이제 대망의 마지막 단계인 아이템 선택 후 추천입니다. 유사도 계산 결과 동희와 가장 유사한 사용자는 유사도 0.97인 현우였습니다. 그리고 컴퓨터는 동희에게 가장 유사한 사용자인 현우가 가장 높은 점수를 준 ‘존 윅’이라는 영화를 추천하게 되겠지요. 그렇다면 동희는 존 윅을 보고 과연 몇 점의 평점을 주게 될까요? 이는 전체를 대상으로 유사도 기반의 Weighted Sum을 이용하여 점수를 예측할 수 있습니다. 이를 이용하여 동희의 존 윅 영화의 예측 점수를 구해본다면 아래와 같이 예측할 수 있습니다

이렇게 추천 시스템의 가장 대표적이면서도 가장 기본적인 ‘사용자 기반 협업 필터링’에 대해 알아보았습니다. 협업 필터링은 구현이 간단하고 직관적으로 이해하기 쉽다는 장점이 있습니다. 그러나 Memory Based Methods 즉, 기존의 데이터들을 기반으로 추천이 이루어지기 때문에 사용자나 아이템에 대한 정보가 부족할 때는 예측의 정확도가 높지 않다는 단점을 가지고 있습니다. 그래서 요즘에는 이런 단점을 보완한 머신러닝을 활용해, 아이템의 특성 자체를 분석하여 추천해 주는 ‘모델 기반 방법’을 사용한다고 합니다. 미디어 콘텐츠 시대에 사는 지금, 여러 가지 매체나 플랫폼을 통해 많은 양의 콘텐츠들이 쏟아지고 있습니다. CG의 발전으로 질 높은 영상을 만날 수 있고 스트리밍 기술과 추천 시스템의 발전으로 언제 어디서든 나에게 맞는 영상 매체를 접할 수 있게 되었죠. 점점 미디어 콘텐츠들은 모두를 위한 콘텐츠가 아닌 개개인에 맞는 형태로 변화하고 있습니다. 이런 미디어 콘텐츠들이 앞으로 더욱 발전하게 된다면 우리의 삶을 어떻게 변화시켜 나갈지 기대가 되네요!

알리미 25기 무은재학부 19학번 서동희