인터레이스와 프로그레시브는 일반적으로 촬영 또는 압축(인코딩) 과정에서 사용되는 용어입니다.

인터레이스로 촬영한 영상은 인터레이스로, 프로그레시브로 촬영한 영상은 프로그레시브로 압축하는 것이 일반적이지만

프로그레시브로 촬영하고 인터레이스로 압축(인코딩)하거나 그 반대도 가능하기 때문에 촬영과 압축(인코딩) 과정은 별개라고 볼 수 있습니다.




우선 각각의 과정에서 프로그레시브와 인터레이스의 차이점을 정리하기 위해 간단한 상황을 가정해 보겠습니다.

1부터 60까지의 숫자가 적힌 총 60장의 그림이 1초동안 차례대로 보여지고 이 장면을 카메라로 촬영하는 상황입니다.

먼저 카메라의 촬영 모드가 1920x1080 60p일 때를 생각해 보겠습니다.

60p는 초당 60장의 프레임을 저장한다는 뜻이고 1920x1080은 한 번에 저장되는 프레임의 크기(해상도)를 말합니다.

이 경우에는 그림이 보여지는 속도와 카메라가 화면을 저장하는 속도가 똑같기 때문에 모든 그림이 빠짐없이 저장됩니다.

저장된 영상의 처음 6 프레임을 그림으로 보면 아래와 같습니다. (보기와는 조금 다르지만...숫자 그림 한 장의 크기는 1920x1080이라고 가정하겠습니다.)


이번에는 카메라의 촬영 모드가 1920x1080 30p일 때를 생각해 보겠습니다.

30p는 초당 30장의 프레임을 저장한다는 뜻이고 따라서 짝수 또는 홀수 번째의 그림만 저장되겠죠.

저장된 영상의 처음 3 프레임을 그림으로 보면 아래와 같습니다.


이런식으로 일정 순간마다 하나의 온전한 프레임을 그대로 저장하는 촬영 방식이 프로그레시브 촬영 방식입니다.



이제 카메라의 촬영 모드가 1920x1080 60i일 때를 생각해 보겠습니다.

60i는 초당 60장의 필드를 저장한다는 뜻이고 한 번에 저장되는 필드의 크기는 1920x540입니다. 초당 60장의 필드가 저장되기 때문에 모든 그림이

빠짐없이 저장되기는 하지만 프로그레시브와는 다르게 온전한 프레임으로 저장되는 것이 아니라 반쪽짜리 필드로 저장됩니다.

이렇게 저장된 영상의 처음 6 필드를 그림으로 보면 아래와 같습니다.


이런식으로 일정 순간마다 프레임의 짝수 또는 홀수 번째 라인(필드)만 선택해서 저장하는 촬영 방식이 인터레이스 촬영 방식입니다.




이제부터는 압축(인코딩) 과정에서의 인터레이스와 프로그레시브의 차이점을 정리해 보겠습니다.


먼저 촬영 방식과 압축 방식이 같은 경우들을 생각해 보겠습니다.

우선 앞선 예시에서 1920x1080 30p로 촬영한 영상을 프로그레시브 방식으로 압축하는 경우인데

이 경우는 가장 일반적이고 간단합니다. 1920x1080 30p로 촬영한 프레임을 그 상태 그대로 프레임으로 압축하는 것입니다.

마찬가지로 앞선 예시의 1920x1080 60i로 촬영한 영상을 인터레이스 방식으로 압축하는 경우도 간단합니다.

1920x1080 60i로 촬영한 필드를 그 상태 그대로 필드로 압축하는 것입니다.



이번에는 촬영 방식과 압축 방식이 다른 경우들을 생각해 보겠습니다.

먼저 1920x1080 30p로 촬영한 영상을 인터레이스 방식으로 압축하는 경우입니다.

인터레이스 압축 방식은 하나의 프레임을 두 개의 필드로 나눠서 따로 따로 압축하는 방식입니다. 따라서 아래와 같은 1920x1080 30p 영상이 있을 때,


아래와 같이 프레임들을 먼저 두 개의 필드로 나누고 각각의 필드를 필드 단위로 압축하는 방식입니다.


위와 같이 1920x1080 30p로 촬영하고 인터레이스로 압축한 영상은 1920x1080 60i로 촬영하고 인터레이스로 압축한 영상과 어떻게 다를까요?

다음과 같이 그림으로 보면 간단합니다. (위가 1920x1080 30p 촬영->인터레이스 압축, 아래가 1920x1080 60i 촬영->인터레이스 압축입니다.)



보시는 것처럼 똑같은 인터레이스 압축이지만 1920x1080 30p로 촬영한 영상은 두 개의 필드가 같은 화면(숫자)을 저장하고 있습니다.

반면 1920x1080 60i로 촬영한 영상은 모든 필드가 서로 다른 화면(숫자)을 저장하고 있습니다.

이처럼 압축 방식이 같다고 하더라도 촬영을 어떻게 했는지에 따라서 영상이 담고있는 정보가 달라질 수 있습니다.

그렇기 때문에 인코딩하려는 소스가 어떻게 촬영되고 어떤 방식으로 압축되었는지를 정확이 판별하는 것이 중요합니다.




마지막으로 인터레이스 영상을 프로그레시브 방식으로 압축(인코딩)할 때 빼놓을 수 없는 디인터레이스에 대해서도 간단히 정리해 보겠습니다.

디인터레이스란 인터레이스 영상의 필드를 프레임으로 바꾸는 작업을 말합니다. 즉, 인터레이스 영상을 프로그레시브 영상으로 바꾸는 작업입니다.

디인터레이스의 종류에도 여러가지가 있는데 크게 세 가지로 나뉩니다.


먼저 weave 방식입니다.

이 방식은 두 개의 필드를 옷감 짜듯이 엮어서 하나의 프레임으로 만드는 방식입니다.

예를 들면 아래와 같이 1920x1080 60i영상이 있을 때,


weave를 적용하면 아래와 같은 1920x1080 30p 영상으로 바뀌게 됩니다.


별다른 처리를 하지 않고 두 필드를 합치는 방식이기 때문에 가로 방향으로 어긋남이 보이는 것이 특징입니다.


다음은 blend 방식입니다.

이 방식은 두 개의 필드를 적절히 섞어서 하나의 프레임으로 만드는 방식입니다.

적절히 섞는다는 표현이 조금 애매하지만..그만큼 두 개의 필드로 하나의 프레임을 만드는 여러가지 방식을 통칭하는 말이라고 보시면 됩니다.


마지막으로 bob 방식입니다.

이 방식은 각각의 필드를 모두 프레임으로 만드는 방식입니다.

즉, 아래와 같은 1920x1080 60i영상이 있을 때,


각각의 필드의 빈 자리를 주변 필드를 적절히 사용해서 채우는 방식입니다. 따라서 bob을 적용하면 아래와 같이 1920x1080 60p영상이 만들어집니다.


여기에서도 주변 필드를 적절히 사용한다는 말이 조금은 애매하지만 마찬가지로 여러가지 방식들을 통칭하는 말이기 때문에 그렇습니다.


인터레이스 영상을 프로그레시브 방식으로 인코딩하기 위해서는 언제나 위와 같은 디인터레이스 작업들을 반드시 거쳐야 합니다.

인터레이스 상태 그대로는 프로그레시브 인코딩이 불가능하기 때문입니다.

따라서 인터레이스 영상을 다시 인코딩하는 경우에는 소스의 상태를 정확히 파악하고 그에 따른 적절한 디인터레이스 방식을

선택하는 것이 가장 중요한 부분이라고 할 수 있겠습니다.




'인코딩 일반' 카테고리의 다른 글

x264 QP 값의 범위  (6) 2012.12.13
H.264/AVC 인코딩과 레벨  (2) 2012.12.13
영상의 해상도와 16배수  (0) 2012.12.12
x264 CRF 인코딩과 프레임 레이트  (0) 2012.12.10
MeGUI 2460 버전의 x264 옵션 정리  (29) 2012.12.09
인터레이스와 프로그레시브  (20) 2012.12.05
Posted by 김코덱

댓글을 달아 주세요

  1. 2013.03.12 17:55  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다

    • 김코덱 2013.03.12 20:08 신고  댓글주소  수정/삭제

      어떤 프로그램을 사용중이신지 모르겠지만..24p 영상을 30p로 인코딩하는 과정에서 가로줄이 보인다면
      인코딩 과정 중간에 텔레시네가 적용된 것 같습니다
      24p 영상이면 24p로 인코딩하는 게 좋겠지만..꼭 30p로 인코딩해야 하는 상황이라면
      텔레시네 적용 후 디인터레이스를 하시거나 가로줄이 안 보이는 2224 풀다운을 사용해야겠네요

      저는 인코딩에 주로 avisynth를 사용하기 때문에 다른 프로그램들에서 어떻게 적용해야 하는지는 잘 모르겠습니다;

  2. th2rain 2013.04.12 14:08 신고  댓글주소  수정/삭제  댓글쓰기

    DSLR로 촬영된 1920*1080*60i(29.970 인터레이스 top field first) 영상 디인터레이스를 yadif()로 하면 30p로 되는데 60p로 yadif(mode=1)로 하면
    화면 떨림이 있는데 왜 그런지 아세요?

    • 김코덱 2013.04.12 15:01 신고  댓글주소  수정/삭제

      필드오더 때문일지도 모르겠네요
      yadif(mode=1,order=0)
      yadif(mode=1,order=1)
      이렇게 둘 다 해보셨나요?

    • th2rain 2013.04.12 20:43 신고  댓글주소  수정/삭제

      (mode=1) 로만 했었고 알려주신 것 중에 order=1로 하니 정상으로 되네요. 감사합니다
      근데 eac3to로 보면 1080i60으로 나오고 mediainfo로 보면 29.970 인터레이스로 나오는데 미디어인포보단 eac3to가 정확하겠죠?

    • 김코덱 2013.04.12 21:46 신고  댓글주소  수정/삭제

      eac3to에서는 인터레이스 영상을 필드 레이트로 표시하거든요
      1080i60 /1.001은 필드 레이트가 60 /1.001이라는 뜻이니까 mediainfo의 인터레이스 29.97 프레임 레이트와 같은 겁니다

  3. none 2013.04.20 07:20  댓글주소  수정/삭제  댓글쓰기

    blend와 bob 차이가 궁금했는데 본문글을 읽고 조금 이해가 되었습니다.
    감사합니다.

  4. none2 2013.07.07 07:51  댓글주소  수정/삭제  댓글쓰기

    blend와 bob 차이가 궁금했는데 본문글을 읽고 조금 이해가 되네요 절대 위에분과 동일한사람아닙니다 감사합니다 ㅎㅎ

  5. none3 2014.01.22 23:06  댓글주소  수정/삭제  댓글쓰기

    감사합니다 작성자님
    인터레이스랑 프로그레시브의 개념이 이해가 되는군요

  6. 2016.07.01 01:09  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다

    • 김코덱 2016.07.01 22:00 신고  댓글주소  수정/삭제

      60i로 촬영된 구간이라면 bob 디인터레이스 했을 때 60p가 됩니다
      올려주신 영상은 60p가 맞네요

    • 2016.07.04 21:16  댓글주소  수정/삭제

      비밀댓글입니다

    • 김코덱 2016.07.06 20:42 신고  댓글주소  수정/삭제

      30p 촬영 -> 60i 인코딩 -> 송출1
      60i 촬영 -> 60i 인코딩 -> 송출2
      60p 촬영 -> 60i 인코딩 -> 송출3

      위 세가지 경우를 생각해보면 송출1은 원본이 30p 촬영이니까 bob 처리해도 2장씩 같은 프레임이 나옵니다
      송출2와 송출3은 bob 처리했을 때 매번 다른 프레임이 나오겠죠
      말씀하신대로 [60i의 소스]를 녹화하는 일반 시청자 입장에서 bob 처리했을 때 매번 다른 프레임이 나온다면
      원본이 60i 촬영인지 60p 촬영인지 알 수는 없습니다
      뭐 촬영을 어떤 카메라로 어떻게 했다는 식의 뉴스라든가 그런 게 있다면 유추해볼 순 있겠죠

    • 2016.07.14 11:05  댓글주소  수정/삭제

      비밀댓글입니다

  7. 길선 2017.06.22 11:38  댓글주소  수정/삭제  댓글쓰기

    자세한 설명 너무너무 감사드립니다!
    궁금증이 확실하게 풀렸고 개념적으로도 확실하게 이해가 갔네요!^^
    좋은 글 올려주신 쥔장님,
    언제나 건강하시고 행복하세요^^

  8. 어려워유 2017.10.07 03:15  댓글주소  수정/삭제  댓글쓰기

    촬영 방식과 압축 방식이 다른 경우에서 왜 필드가 위아래로 나뉘는 건가요?
    인터레이스면 본문 세 번째 그림처럼 되어야 주사시에 착시로 자연스럽게 보이지 않나요?
    그런데 저렇게 위 아래로 필드가 나뉜 상태로 주사되면 화면에서 숫자가 위아래로 빠르게 와리가리 되지 않나요?

    • 김코덱 2017.10.08 22:03 신고  댓글주소  수정/삭제

      촬영 방식과 압축 방식이 다른 경우에 예로 든 그림은 압축을 프레임 단위가 아니라 필드 단위로 한다는 걸 표현한 거고요
      이렇게 필드 단위로 압축되면 본문의 세 번째 그림처럼 표시가 되는 거죠

    • 어려워유 2017.10.09 21:33  댓글주소  수정/삭제

      아아 프로그레시브가 인터레이스로 압축되면서 나뉜 두 필드가 각각 압축된 것을 표현하신 거군요
      감사합니다 ㅠㅠ 정말 많이 배워갑니다.

  9. 어려워유 2017.10.09 22:07  댓글주소  수정/삭제  댓글쓰기

    질문 또 있습니다!
    제가 요즘 장기혁 선생님이 쓰신 <촬영감독이 쉽게 풀어 쓴 HD영상촬영 이론과 실제> 책으로 공부하고 있는데요,
    여기에선 인터레이스 60i를 설명할 때, 1개의 프레임을 2필드로 나눠서 1/60초 속도로 1필드씩 2번 주사한다고 나와있습니다.
    출력되는 프레임 수도 "60장의 1/2 : 30장" 이라고 나와 있는데요,
    그렇다면 본문 세 번째 그림에 나오는 '1필드씩의 123456' 배열이 '1필드씩의 113355' 배열로 가야 맞는 것 아닌지 의구심이 듭니다.
    아니면 책에서 이해를 돕기 위해 대충 설명한 것인가요?
    책이 맞다면 디인터레이스 존재 자체가 말이 안되는 것 같아서 책이 이상하다는 생각은 드는데 일반적인 정보 검색에도 책과 비슷하게 30프레임 이야기가 많이 나오네요

    • 김코덱 2017.10.10 20:15 신고  댓글주소  수정/삭제

      책에서 말하는 것도 맞고 본문의 글도 맞고 그렇습니다
      책에서 말하는 건 단순히 60i는 초당 60장의 필드를 주사하니까
      초당 30장의 프레임을 출력한다는 건데
      이것도 딱히 틀린 말은 아니죠
      다만 본문에서 '1필드씩 123456' 배열로 나가는 건
      60i로 촬영할 때 매 필드가 다른 순간을 저장한다는 걸 설명하려고 하는 거고요
      30p로 촬영한 영상을 60i로 표시하면 '1필드씩 113355' 배열로 가게되겠죠
      촬영 방식과 표시(디스플레이) 방식을 잘 구분하시면 될 것 같습니다