KR101749613B1 - 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 - Google Patents
고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 Download PDFInfo
- Publication number
- KR101749613B1 KR101749613B1 KR1020160028536A KR20160028536A KR101749613B1 KR 101749613 B1 KR101749613 B1 KR 101749613B1 KR 1020160028536 A KR1020160028536 A KR 1020160028536A KR 20160028536 A KR20160028536 A KR 20160028536A KR 101749613 B1 KR101749613 B1 KR 101749613B1
- Authority
- KR
- South Korea
- Prior art keywords
- video
- information
- encoding
- motion
- macroblock
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 원본 비디오에 대해 압축한 둘 이상의 멀티트랙 비디오를 SVC 비디오로 변환하여 인코딩 할 때 기존의 멀티트랙 비디오의 움직임 정보를 활용하여 고속으로 인트라-레이어 및 인터-레이어 움직임을 예측할 수 있도록 함으로써, 비디오 인코딩에서 가장 높은 연산량을 가지는 움직임 예측 시간을 고속화하여 스케일러블 비디오로의 변환 속도를 향상시킬 수 있도록 된, 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치에 관한 것이다.
본 발명에 따른 비디오 인코딩 장치는, 멀티트랙 비디오에 대해 인접하는 두 비디오를 입력받아 비트스트림 디코딩을 통해 매크로블럭 파티션 정보와 움직임 벡터 정보를 추출하고, 이에 근거해 인코딩할 매크로블럭의 파티션 정보를 비교해 동일하면 움직임 정보를 비교하여 움직임 정보가 동일하면 인터레이어 모션 프리딕션 모드(inter-layer motion prediction mode)로 인코딩을 수행하며, 파티션 정보가 동일하지 않거나 움직임 정보가 동일하지 않으면 현재 매크로블럭의 인코딩 모드로 인코딩을 수행하는 모션 프리딕션 모드(motion prediction mode) 또는 SVC 인트라 프리딕션 모드(intra prediction mode)로 인코딩하는 것을 특징으로 한다.
본 발명에 따른 비디오 인코딩 장치는, 멀티트랙 비디오에 대해 인접하는 두 비디오를 입력받아 비트스트림 디코딩을 통해 매크로블럭 파티션 정보와 움직임 벡터 정보를 추출하고, 이에 근거해 인코딩할 매크로블럭의 파티션 정보를 비교해 동일하면 움직임 정보를 비교하여 움직임 정보가 동일하면 인터레이어 모션 프리딕션 모드(inter-layer motion prediction mode)로 인코딩을 수행하며, 파티션 정보가 동일하지 않거나 움직임 정보가 동일하지 않으면 현재 매크로블럭의 인코딩 모드로 인코딩을 수행하는 모션 프리딕션 모드(motion prediction mode) 또는 SVC 인트라 프리딕션 모드(intra prediction mode)로 인코딩하는 것을 특징으로 한다.
Description
본 발명은 멀티트랙 비디오를 스케일러블 비디오로 제공하기 위해 비디오 크기를 압축하는 비디오 인코딩 기술에 관한 것으로서, 더욱 자세하게는 원본 비디오에 대해 압축한 둘 이상의 멀티트랙 비디오(multi-track video)를 SVC(Scalable Video Coding) 비디오로 변환하여 인코딩 할 때 기존의 멀티트랙 비디오의 움직임(motion) 정보를 활용하여 고속으로 인트라-레이어(intra-layer) 및 인터-레이어(inter-layer) 움직임을 예측할 수 있도록 함으로써, 비디오 인코딩에서 가장 높은 연산량을 가지는 움직임 예측(motion estimation) 시간을 고속화하여 스케일러블 비디오로의 변환 속도를 향상시킬 수 있도록 된 것이다.
컨텐츠 제공자(CP)로부터 제공받은 비디오 및 오디오를 포함하는 컨텐츠를 사용자 단말기에 서비스 하기 위해서는 기본적인 해상도 스케일링(Resolution Scaling), 프레임율 변환(frame rate conversion), 비디오/오디오 인코딩(Vidoe/audio Encoding), 메타데이터 삽입(Metadata Insertion), 패키징(Packaging) 등의 인제스팅(Ingesting) 과정을 거친다.
이때, 컨텐츠 서버에서 인제스팅 과정을 수행할 때 오류가 발생한 비디오를 사용자 단말기에 서비스하는 경우 사용자 단말기에서 재생할 때 문제가 발생하게 된다. 이를 방지하기 위해 최종 결과물을 재생하여 사람이 직접 확인하는 과정을 마지막으로 거치게 된다.
그런데, 컨텐츠 서버에서 사용자 단말기에 제공하는 대부분의 비디오는 그 양이 많거나 방대하므로 인제스팅 하기 위해서 사용자가 일일이 확인하는 과정은 오래 걸리거나 한계가 있으므로 사람에 의한 확인 과정을 자동화하여 좀 더 빠르게 수행하는 기술이 최근에 많이 제안되고 있다.
이와 함께 온라인 비디오 서비스는 인터넷을 통해 비디오를 스트리밍하여 사용자가 비디오를 소비할 수 있도록 하는데, 이 때 사용자의 네트워크 환경에 맞게 비디오 데이터량을 조절하면서 전송하는 적응적 비디오 스트리밍(adaptive video streaming) 기술을 통해 사용자에게 중간에 끊기거나 영상이 깨진 비디오를 시청하도록 하는 일을 방지하는 기술이 일반화되고 있다. 현재의 adaptive video streaming 기술은 하나의 원본 비디오에 대해 다양한 데이터 크기를 가지는 압축비디오를 만들어 두고 사용자의 네트워크 환경에 맞는 압축비디오를 선택하는 기술이 주를 이루고 있는데, 이러한 방법은 서비스 시스템이 하나의 비디오에 대해 여러 개의 압축 비디오(Multi-track video)를 인제스팅해야 한다.
한편, 최근에는 하나의 압축 비디오로 다양한 device와 네트워크 환경에 대해 비디오 서비스를 제공하는 것을 목적으로 Scalable Video Coding(SVC) 방법이 ITU와 MPEG의 join video technology(JVT) group에 의해 H.264를 기반으로 표준화 되었다.
그러나 SVC는 표준화가 최근에 이루어져 상용화에 있어서는 초기 단계에 있으며, 현재는 SVC 전 단계로 video를 H.264와 같은 기존의 coding방법으로 여러 개의 파일을 준비하여 각 device와 네트워크 환경에 맞는 파일을 제공하는 multi-track video 방식을 활용하고 있다. 앞으로 SVC로 전환하는 경우, 기존의 multi-track video를 SVC로 재인코딩해야 하며, 이러한 재인코딩은 시간이 많이 소요되는 문제점이 있다.
전술한 문제점을 해결하기 위한 본 발명은, 원본 비디오에 대해 압축한 둘 이상의 멀티트랙 비디오(multi-track video)를 SVC(Scalable Video Coding) 비디오로 변환하여 인코딩 할 때 기존의 멀티트랙 비디오의 움직임(motion) 정보를 활용하여 고속으로 인트라-레이어(intra-layer) 및 인터-레이어(inter-layer) 움직임을 예측할 수 있도록 함으로써, 비디오 인코딩에서 가장 높은 연산량을 가지는 움직임 예측(motion estimation) 시간을 고속화하여 스케일러블 비디오로의 변환 속도를 향상시킬 수 있도록 된, 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치를 제공함에 그 목적이 있다.
본 발명의 일 실시 예에 따른 SVC 비디오 디코딩 방법은 복수의 레이어의 비디오에 대한 비트스트림을 수신하는 단계, 상기 복수의 레이어 중에서 하위 레이어의 매크로블록에 대한 인코딩 모드(encoding mode)와 예측 정보(prediction information)를 결정하는 단계, 상기 결정된 인코딩 모드와 예측 정보를 이용하여 상기 하위 레이어의 매크로 블록에 대한 예측을 수행하는 단계, 상기 복수의 레이어 중에서 상위 레이어의 매크로블록에 대한 인코딩 모드와 예측 정보를 결정하는 단계 및 상기 상위 레이어의 매크로블록에 대한 인코딩 모드와 예측 정보를 이용하여 상위 레이어의 비디오에 대한 인터 레이어 예측을 수행하여 비디오를 복원하는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 하위 레이어의 매크로블록에 대한 인코딩 모드 정보는 인터 예측 모드 또는 인트라 예측 모드를 나타낼 수 있다.
또한, 상기 상위 레이어의 매크로블록에 대한 인코딩 모드 정보는 인터 예측 모드, 인트라 예측 모드 또는 인터레이어 예측 모드 중 하나를 나타낼 수 있다.
또한, 상기 하위 레이어의 매크로블록에 대한 예측 정보는 움직임 벡터 정보 및 매크로블록 분할 정보를 포함할 수 있다.
본 발명에 의하면, 멀티트랙 비디오를 스케일러블 비디오로 변환 시 기존의 멀티트랙 비디오의 움직임 정보를 활용하여 고속으로 인트라 레이어 및 인터 레이어 움직임 예측을 수행할 수 있다.
또한, 비디오 인코딩에서 가장 높은 연산량을 가지는 움직임 예측 시간을 고속화 함으로써 스케일러블 비디오로의 변환 속도를 향상시킬 수 있다.
그리고, 스케일러블 비디오에서의 고속 움직임 예측을 통해 멀티트랙 비디오의 스케일러블 비디오로의 인코딩 시간을 단축시켜 고속화를 가능하게 할 수 있다.
도 1은 본 발명의 실시예에 따른 비디오 제공 시스템의 전체적인 구성을 개략적으로 나타낸 구성도이다.
도 2는 본 발명의 실시예에 따른 비디오 인코딩 장치의 내부 기능 블럭을 개략적으로 나타낸 구성도이다.
도 3은 본 발명의 실시예에 따른 비디오 인코딩 장치의 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법을 설명하기 위한 동작 흐름도이다.
도 4는 본 발명의 실시예에 따라 원본 비디오를 N 개의 멀티트랙 비디오로 생성하는 예를 나타낸 도면이다.
도 5는 본 발명의 실시예에 따른 움직임 예측을 이용한 비디오 인코딩 과정을 나타낸 동작 흐름도이다.
도 6은 본 발명의 실시예에 따른 SVC 인코딩부의 N번째 레이어를 인코딩하는 과정을 나타낸 도면이다.
도 2는 본 발명의 실시예에 따른 비디오 인코딩 장치의 내부 기능 블럭을 개략적으로 나타낸 구성도이다.
도 3은 본 발명의 실시예에 따른 비디오 인코딩 장치의 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법을 설명하기 위한 동작 흐름도이다.
도 4는 본 발명의 실시예에 따라 원본 비디오를 N 개의 멀티트랙 비디오로 생성하는 예를 나타낸 도면이다.
도 5는 본 발명의 실시예에 따른 움직임 예측을 이용한 비디오 인코딩 과정을 나타낸 동작 흐름도이다.
도 6은 본 발명의 실시예에 따른 SVC 인코딩부의 N번째 레이어를 인코딩하는 과정을 나타낸 도면이다.
본 발명의 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 실시예를 상세하게 설명한다.
도 1은 본 발명의 실시예에 따른 비디오 제공 시스템의 전체적인 구성을 개략적으로 나타낸 구성도이다.
도 1을 참조하면, 본 발명에 따른 비디오 제공 시스템(100)은 비디오 인코딩 장치(110), 통신망(120) 및 사용자 단말기(130) 등을 포함한다.
비디오 인코딩 장치(110)는 멀티트랙 비디오에 대해 인접하는 두 비디오를 입력받아 비트스트림 디코딩을 통해 매크로블럭 파티션 정보와 움직임 벡터 정보를 추출하고, 이에 근거해 모션 프리딕션 모드(motion prediction mode) 또는 SVC 인트라 프리딕션 모드(intra prediction mode)로 인코딩을 수행한다.
여기서, 비디오 인코딩 장치(110)는 인코딩할 매크로블럭의 파티션 정보를 비교해 동일할 경우에 움직임 정보를 비교하여 움직임 정보도 동일하면 인터레이어 모션 프리딕션 모드(inter-layer motion prediction mode)로 인코딩을 수행하며, 파티션 정보가 동일하지 않거나 움직임 정보가 동일하지 않으면 현재 매크로블럭의 인코딩 모드로 인코딩을 수행한다.
이어, 비디오 인코딩 장치(110)는 재인코딩 된 SVC 비디오를 통신망(120)을 통해 사용자 단말기(130)에 전송하여 제공한다.
여기서, 비디오 인코딩 장치(110)는 재인코딩 된 SVC 비디오를 하나 이상의 사용자 단말기(130)에 전송해 주는 미디어 서버 등이 될 수 있으며, 원본 비디오를 입력받아 둘 이상 다수 개의 멀티트랙 비디오로 인제스팅하고 SVC 비디오로 재인코딩하여 통신망(120)을 통해 전송할 수 있는 전용 미디어 장치 등이 될 수 있다.
통신망(120)은 비디오 인코딩 장치(110)에서 사용자 단말기(130)로 비디오를 전송하는 전송 경로를 제공하고, 사용자 단말기(130)가 비디오 인코딩 장치(110)에 접속하기 위한 접속 경로를 제공한다. 여기서, 통신망(120)은 WCDMA, HDPA, 3G, 4G 등 이동 통신망과, 블루투스(Bluetooth)와 지그비(Zigbee), 와이파이(Wi-Fi) 등 근거리 통신망과, 인터넷이나 PSTN 등 유선 통신망 등을 포함한다.
사용자 단말기(130)는 비디오 인코딩 장치(110)로부터 전송받은 SVC 비디오를 수신하여 디코딩해서 디스플레이한다.
여기서, 사용자 단말기(130)는 비디오 인코딩 장치(110)로부터 비디오 데이터를 수신하여 디스플레이할 수 있는 IPTV, 셋탑박스(Settop Box) 등이 될 수 있으며, 사용자가 이동하면서 비디오 데이터를 재생하여 볼 수 있는 스마트 폰이나 이동통신 단말기 등이 될 수 있다.
도 2는 본 발명의 실시예에 따른 비디오 인코딩 장치의 내부 기능 블럭을 개략적으로 나타낸 구성도이다.
도 2를 참조하면, 본 발명에 따른 비디오 인코딩 장치(110)는, 통신부(210), 원본비디오 저장부(220), 멀티트랙비디오 인코더(230), 비디오 정렬부(240), 비트스트림 분석부(250) 및 SVC 인코딩부(260) 등을 포함한다.
통신부(210)는 사용자 단말기(130)와 통신망(120)을 통해 통신한다.
즉, 통신부(210)는 사용자 단말기(130)로부터 통신망(120)을 통해 비디오 및 오디오를 포함하는 컨텐츠의 전송 요청을 수신하거나, 사용자 단말기(130)에 재인코딩 된 SVC 비디오를 전송한다.
원본비디오 저장부(220)는 오디오와 비디오를 포함하는 원본 비디오를 다양한 종류에 따라 다수 개로 저장하고 있다.
멀티트랙 비디오 인코더(230)는 원본 비디오를 입력받아 도 4에 도시된 바와 같이 화질이 서로 다른 둘 이상 N 개의 멀티트랙 비디오를 생성한다. 도 4는 본 발명의 실시예에 따라 원본 비디오를 N 개의 멀티트랙 비디오로 생성하는 예를 나타낸 도면이다.
비디오 정렬부(240)는 둘 이상의 멀티트랙 비디오를 화질(Quality) 순으로 SVC 인코딩에 맞게 정렬한다.
이때, 비디오 정렬부(240)는, 둘 이상의 멀티트랙 비디오에 대해 해상도가 높은 비디오를 더 높은 레이어(Layer)에 정렬하고, 해상도가 동일한 비디오 중에서 프레임율(frame rate)이 높은 비디오를 더 높은 레이어에 위치하도록 정렬하며, 해상도와 프레임율이 동일한 경우에 비트율(bit rate)이 높은 비디오를 더 높은 레이어에 위치하도록 정렬할 수 있다.
비트스트림 분석부(250)는 정렬된 멀티트랙 비디오 중에서 인접하는 두 개의 비디오를 입력받아 비트스트림 디코딩(bitstream decoding)을 통해 매크로블럭 파티션(macroblock partition) 정보, 움직임 벡터(motion vector) 정보를 추출하여 SVC 인코딩부(260)에 전달한다.
또한, 비트스트림 분석부(250)는 정렬된 멀티트랙 비디오 중에서 가장 화질이 높은 "압축비디오 N"과, 그 다음으로 화질이 높은 "압축비디오 N-1"을 SVC로 인코딩한 SVC (N-1)th 레이어 비트스트림의 두 개의 비디오에 대해 매크로블럭 파티션(macroblock partition) 정보, 움직임 벡터(motion vector) 정보를 추출해 SVC 인코딩부(260)에 전달한다. SVC 인코딩부(260)는 비트스트림 분석부(250)로부터 전달받은 매크로블럭 파티션 정보와 움직임 벡터 정보에 기반하여, 인코딩 할 매크로블럭에 대해 모션 프리딕션 모드(motion prediction mode) 또는 SVC 인트라 프리딕션 모드(intra prediction mode)로 인코딩한다.
여기서, 모션 프리딕션 모드는 움직임 예측을 활용하여 매크로블럭의 시간적 중복성을 제거하여 압축하는 인코딩 모드를 의미하고, SVC 인트라 프리딕션 모드는 H.264의 인트라 프리딕션과 SVC에서 추가된 인터레이어 인트라 프리딕션을 포함하는 모드를 의미한다. 또한, 인트라 프리딕션은 블럭 주위의 pixle값을 활용하여 현재 블럭의 pixel값을 예측하는 방법을 의미하고, 인터레이어 인트라 프리딕션은 이때 하위 레이어의 pixle값을 활용하여 현재 블럭의 pixel값을 예측하는 방법을 의미한다. 그리고, 인터레이어 모션 프리딕션 모드는 SVC에서 움직임 벡터 예측시 하위 레이어의 움직임 벡터를 활용하는 경우을 의미한다.
또한, SVC 인코딩부(260)는 두 개의 압축비디오 중 가장 화질이 높은 "압축비디오 N"을 SVC의 N 번째 레이어로 인코딩할 수 있다.
또한, SVC 인코딩부(260)는, 현재 인코딩 할 매크로블럭이 모션 프리딕션 모드(motion prediction mode)로 인코딩되었는지를 확인하여 모션 프리딕션 모드가 아니면 SVC 인트라 프리딕션 모드(intra prediction mode)로 인코딩하며, 모션 프리딕션 모드의 경우 하위 레이어와 상위 레이어의 파티션 정보를 비교해 동일하면 움직임 정보를 비교하고 두 움직임 정보가 동일하면 인터레이어 모션 프리딕션 모드(inter-layer motion prediction mode)로 인코딩을 수행하며, 두 파티션 정보가 동일하지 않거나 두 움직임 정보가 동일하지 않으면 현재 매크로블럭의 인코딩 모드로 인코딩할 수 있다.
이때, SVC 인코딩부(260)는, 모션 프리딕션 모드의 경우 하위 레이어에 해당하는 (N-1)th SVC 레이어 비트스트림에 대응되는 매크로블럭의 파티션을 업스케일(up-scale)한 정보와 현재 매크로블럭의 파티션 정보를 비교하여 동일한지를 확인한다.
또한, SVC 인코딩부(260)는, 두 파티션 정보가 동일한 경우 하위 레이어에 해당하는 (N-1)th SVC 레이어 비트스트림에 대응되는 매크로블럭의 움직임 정보를 업스케일(up-scale)한 정보와 현재 매크로블럭의 움직임 정보를 비교하여 동일한지를 확인한다.
그리고, SVC 인코딩부(260)는 하위 레이어에 해당하는 (N-1)th SVC 레이어 비트스트림에 대응되는 매크로블럭의 움직임 정보를 업스케일(up-scale)한 정보가 half pel 단위까지 존재하여, 두 움직임 정보를 half pel까지만 비교하여 두 움직임 정보가 동일한지를 확인한다.
도 3은 본 발명의 실시예에 따른 비디오 인코딩 장치의 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법을 설명하기 위한 동작 흐름도이다.
도 3을 참조하면, 본 발명에 따른 비디오 인코딩 장치(110)는 멀티트랙 비디오 인코더(230)에 원본 비디오를 입력하여 둘 이상의 멀티트랙 비디오를 생성한다(S310).
이어, 비디오 인코딩 장치(110)는 비디오 정렬부(240)를 통해 둘 이상의 멀티트랙 비디오를 화질(Quality) 순으로 정렬한다(S320).
이어, 비디오 인코딩 장치(110)는 정렬된 멀티트랙 비디오 중에서 인접하는 두 개의 비디오를 비트스트림 분석부(250)에 입력하여 비트스트림 디코딩(bitstream decoding)을 통해 매크로블럭 파티션(macroblock partition) 정보, 움직임 벡터(motion vector) 정보를 추출한다(S330).
이때, 비디오 인코딩 장치(110)는 정렬된 멀티트랙 비디오 중에서 가장 화질이 높은 "압축비디오 N"과, 인접하여 그 다음으로 화질이 높은 "압축비디오 N-1"을 SVC로 인코딩한 SVC (N-1)th 레이어 비트스트림의 두 개의 비디오에 대해 매크로블럭 파티션 정보, 움직임 벡터 정보를 추출할 수 있다.
여기서, SVC 인코딩부(260)는 두 개의 압축비디오 중 "압축비디오 N"을 SVC의 N 번째 레이어로 인코딩할 수 있다.
이어, 비디오 인코딩 장치(110)는 매크로블럭 파티션 정보와 움직임 벡터 정보에 기반하여, 인코딩 할 매크로블럭에 대해 모션 프리딕션 모드(motion prediction mode) 또는 SVC 인트라 프리딕션 모드(intra prediction mode)로 인코딩한다(S340).
즉, 비디오 인코딩 장치(110)는 SVC 인코딩부(260)를 통해 도 5에 도시된 바와 같은 과정으로 모션 프리딕션 모드 또는 SVC 인트라 프리딕션 모드로 인코딩을 수행한다. 도 5는 본 발명의 실시예에 따른 움직임 예측을 이용한 비디오 인코딩 과정을 나타낸 동작 흐름도이다.
먼저, 비디오 인코딩 장치(110)는 현재 인코딩 할 매크로블럭이 모션 프리딕션 모드(motion prediction mode)로 인코딩되었는지를 확인하여(S510) 모션 프리딕션 모드가 아니면(S510-아니오) SVC 인트라 프리딕션 모드(intra prediction mode)로 인코딩한다(S580).
이어, 비디오 인코딩 장치(110)는 모션 프리딕션 모드의 경우(S510-예), 하위 레이어에 해당하는 (N-1)th SVC 레이어 비트스트림에 대응되는 매크로블럭이 모션 프리딕션 모드인지를 판단하여(S520), 모션 프리딕션 모드가 아닌 경우(S520-아니오) 현재 매크로블럭의 인코딩 모드로 인코딩을 수행한다(S590).
그러나, 하위 레이어에 해당하는 (N-1)th SVC 레이어 비트스트림에 대응되는 매크로블럭이 모션 프리딕션 모드인 경우(S520-예), 비디오 인코딩 장치(110)는 업스케일(up-scale)된 하위 레이어의 매크로블럭 파티션(macroblock partition)과 상위 레이어의 매크로블럭 파티션을 비교한다(S530).
이어, 비디오 인코딩 장치(110)는 두 파티션이 동일하지 않은 경우(S540-아니오) 현재 매크로블럭의 인코딩 모드로 인코딩을 수행하고(S590), 두 파티션이 동일한 경우(S540-예) 업스케일 된 하위 레이어의 움직임 벡터(motion vector)와 상위 레이어의 움직임 벡터를 비교한다(S550).
이어, 비디오 인코딩 장치(110)는 움직임 정보를 Quarter pel 단위로 예측하므로, 두 움직임 정보의 비교는 half pel까지만 수행하고, 두 움직임 벡터가 동일하지 않는 경우(S560-아니오) 현재 매크로블럭의 인코딩 모드로 인코딩을 수행하며(S590), 두 움직임 벡터가 동일한 경우(S560-예) 인터레이어 모션 프리딕션 모드로 매크로블럭을 인코딩한다(S570).
*비디오 인코딩 장치(110)는 전술한 과정을 N=2에서 멀티트랙 비디오의 개수가 K인 경우 N=K까지 N을 1씩 증가시키면서 수행하여 전체 SVC 인코딩을 수행한다.
도 6은 본 발명의 실시예에 따른 SVC 인코딩부의 N번째 레이어를 인코딩하는 과정을 나타낸 도면이다.
도 6을 참조하면, 본 발명에 따른 SVC 인코딩부(260)는 영상이 입력되면, 입력영상을 인코딩하기 위한 인코딩 모드를 결정(mode decision)해야 하는데, 하위 레이어 텍스처(layer texture) 정보에 근거해 인트라 프리딕션(intra prediction) 모드로 결정하거나, 하위 레이어 움직임(motion) 정보와 역양자화/IDCT에 근거해 모션 프리딕션(motion prediction) 모드로 결정한다. 그리고, SVC 인코딩부(260)는 결정된 동작 모드에 따라 SVC 비디오에 대해 DCT (Discrete Cosine Transform)/양자화(Qunatization) 과정과 CAVLC(Context-adaptive variable-length coding)/CABAC(Context-adaptive binary arithmetic coding) 과정을 수행한다.
즉, 비디오 인코딩 장치(110)는 SVC 인코딩부(260)를 통해 하위 레이어 텍스처 정보에 근거해 SVC 인트라 프리딕션 모드(intra prediction mode)로 인코딩하고, 하위 레이어의 움직임 정보에 근거해 모션 프리딕션 모드(motion prediction mode)로 인코딩을 수행할 때, 인코딩할 매크로블럭의 파티션 정보를 비교해 동일하면 움직임 정보를 비교하여 움직임 정보가 동일하면 인터레이어 모션 프리딕션 모드(inter-layer motion prediction mode)로 인코딩을 수행하고, 파티션 정보가 동일하지 않거나 움직임 정보가 동일하지 않으면 현재 매크로블럭의 인코딩 모드로 인코딩을 수행하는 것이다.
전술한 바와 같이 본 발명에 의하면, 원본 비디오에 대해 압축한 둘 이상의 멀티트랙 비디오(multi-track video)를 SVC(Scalable Video Coding) 비디오로 변환하여 인코딩 할 때 기존의 멀티트랙 비디오의 움직임(motion) 정보를 활용하여 고속으로 인트라-레이어(intra-layer) 및 인터-레이어(inter-layer) 움직임을 예측할 수 있도록 함으로써, 비디오 인코딩에서 가장 높은 연산량을 가지는 움직임 예측(motion estimation) 시간을 고속화하여 스케일러블 비디오로의 변환 속도를 향상시킬 수 있도록 된, 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치를 실현할 수 있다.
본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있으므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
본 발명은 컨텐츠 서버에서 사용자 단말기로 비디오를 포함하는 컨텐츠를 전송하는 서비스 및 시스템에 적용할 수 있다.
또한, 사용자 단말기에 컨텐츠를 전송하기 위해 멀티트랙 비디오를 SVC 비디오로 인코딩하는 과정을 수행하는 컨텐츠 서버에 적용할 수 있다.
그리고, 비디오 및 오디오를 포함하는 컨텐츠를 통신망을 이용해 서비스하는 컨텐츠 서버 또는 컨텐츠를 수신하여 디스플레이하는 사용자 단말기를 포함하는 컨텐츠 미디어 통신 시스템에 적용할 수 있다.
100: 비디오 제공 시스템 110: 비디오 인코딩 장치
120: 통신망 130: 사용자 단말기
210: 통신부 220: 원본비디오 저장부
230: 멀티트랙비디오 인코더 240: 비디오 정렬부
250: 비트스트림 분석부 260: SVC 인코딩부
120: 통신망 130: 사용자 단말기
210: 통신부 220: 원본비디오 저장부
230: 멀티트랙비디오 인코더 240: 비디오 정렬부
250: 비트스트림 분석부 260: SVC 인코딩부
Claims (3)
- 복수의 레이어의 비디오에 대한 비트스트림을 수신하는 통신부; 및
상기 복수의 레이어 중에서 하위 레이어의 매크로블록에 대한 인코딩 모드(encoding mode) 정보와 예측 정보(prediction information)를 결정하고, 상기 결정된 인코딩 모드 정보와 예측 정보를 이용하여 상기 하위 레이어의 매크로블록에 대한 예측을 수행하며,
상기 복수의 레이어 중에서 상위 레이어의 매크로블록에 대한 인코딩 모드 정보를 획득하고, 상기 상위 레이어의 매크로블록에 대한 인코딩 모드 정보에 따라 인터 레이어 예측이 수행되는 경우, 상기 상위 레이어의 매크로블록에 대응하는 하위 레이어의 매크로블록에 대한 예측 정보에 기초하여 상기 상위 레이어의 매크로블록에 대한 예측 정보를 결정하고, 상기 인코딩 모드 정보와 예측 정보를 이용하여 상위 레이어의 비디오에 대한 인터 레이어 예측을 수행하여 비디오를 복원하는 비트스트림 분석부를 포함하는 스케일러블 비디오 디코딩 장치에 있어서,
상기 하위 레이어의 매크로블록에 대한 인코딩 모드 정보는 인터 예측 모드 또는 인트라 예측 모드를 나타내는 것을 특징으로 하되,
상기 하위 레이어의 매크로블록에 대한 예측 정보는 움직임 벡터 정보 및 매크로블록 분할 정보를 포함하는 것을 특징으로 하는 스케일러블 비디오 디코딩 장치.
- 제1항에 있어서,
상기 상위 레이어의 매크로블록에 대한 인코딩 모드 정보는 인터 예측 모드, 인트라 예측 모드 또는 인터레이어 예측 모드 중 하나를 나타내는 것을 특징으로 하는 스케일러블 비디오 디코딩 장치.
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160028536A KR101749613B1 (ko) | 2016-03-09 | 2016-03-09 | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160028536A KR101749613B1 (ko) | 2016-03-09 | 2016-03-09 | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150138786A Division KR101625441B1 (ko) | 2015-10-01 | 2015-10-01 | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170069116A Division KR101875853B1 (ko) | 2017-06-02 | 2017-06-02 | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160034867A KR20160034867A (ko) | 2016-03-30 |
KR101749613B1 true KR101749613B1 (ko) | 2017-06-21 |
Family
ID=55660401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160028536A KR101749613B1 (ko) | 2016-03-09 | 2016-03-09 | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101749613B1 (ko) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050195899A1 (en) | 2004-03-04 | 2005-09-08 | Samsung Electronics Co., Ltd. | Method and apparatus for video coding, predecoding, and video decoding for video streaming service, and image filtering method |
US20090262803A1 (en) * | 2005-09-15 | 2009-10-22 | Sony Corporation | Encoding Apparatus, Encoding Method, and Program of Same and Decoding Apparatus, Decoding Method, and Program of Same |
US20090268816A1 (en) | 2007-11-13 | 2009-10-29 | Purvin Bibhas Pandit | Advanced video coding to multiview video coding transcoder |
US20100232521A1 (en) | 2008-07-10 | 2010-09-16 | Pierre Hagendorf | Systems, Methods, and Media for Providing Interactive Video Using Scalable Video Coding |
-
2016
- 2016-03-09 KR KR1020160028536A patent/KR101749613B1/ko active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050195899A1 (en) | 2004-03-04 | 2005-09-08 | Samsung Electronics Co., Ltd. | Method and apparatus for video coding, predecoding, and video decoding for video streaming service, and image filtering method |
US20090262803A1 (en) * | 2005-09-15 | 2009-10-22 | Sony Corporation | Encoding Apparatus, Encoding Method, and Program of Same and Decoding Apparatus, Decoding Method, and Program of Same |
US20090268816A1 (en) | 2007-11-13 | 2009-10-29 | Purvin Bibhas Pandit | Advanced video coding to multiview video coding transcoder |
US20100232521A1 (en) | 2008-07-10 | 2010-09-16 | Pierre Hagendorf | Systems, Methods, and Media for Providing Interactive Video Using Scalable Video Coding |
Also Published As
Publication number | Publication date |
---|---|
KR20160034867A (ko) | 2016-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104641645B (zh) | 用于视频译码的交错视频数据的指示的方法和设备 | |
CN101467461B (zh) | 基于多层的视频编码方法及其装置 | |
CN103546757B (zh) | 视频编码方法和系统 | |
US20150312575A1 (en) | Advanced video coding method, system, apparatus, and storage medium | |
US11743475B2 (en) | Advanced video coding method, system, apparatus, and storage medium | |
JP2023126928A (ja) | マルチラインイントラ予測に対するmpmリスト生成を実現するための方法、装置、及びコンピュータプログラム | |
CN1938728A (zh) | 使用包括多个宏块的预测和非预测画面对画面序列编码的方法和装置 | |
US8243798B2 (en) | Methods and apparatus for scalable video bitstreams | |
US10750185B2 (en) | High speed scalable video coding device and method using multi-track video | |
CN101888545B (zh) | 一种低码率信源压缩编码方法 | |
KR101594411B1 (ko) | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 | |
KR101875853B1 (ko) | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 | |
KR101853744B1 (ko) | 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 | |
KR101749613B1 (ko) | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 | |
KR101625441B1 (ko) | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 | |
KR101626757B1 (ko) | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 | |
KR20180080167A (ko) | 고속 움직임 예측을 이용하여 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 | |
KR101990098B1 (ko) | 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 | |
KR101834531B1 (ko) | 멀티트랙 비디오를 스케일러블 비디오로 인코딩하는 방법 및 장치 | |
WO2016193949A1 (en) | Advanced video coding method, system, apparatus and storage medium | |
Joshi et al. | Review of Different Standards for Digital Video Compression | |
KR20140080569A (ko) | 비트스트림 분석 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
A107 | Divisional application of patent |