KR100973083B1 - Motion vector extractor based array and method thereof - Google Patents

Motion vector extractor based array and method thereof Download PDF

Info

Publication number
KR100973083B1
KR100973083B1 KR1020080138130A KR20080138130A KR100973083B1 KR 100973083 B1 KR100973083 B1 KR 100973083B1 KR 1020080138130 A KR1020080138130 A KR 1020080138130A KR 20080138130 A KR20080138130 A KR 20080138130A KR 100973083 B1 KR100973083 B1 KR 100973083B1
Authority
KR
South Korea
Prior art keywords
frame data
sad
block
motion vector
previous frame
Prior art date
Application number
KR1020080138130A
Other languages
Korean (ko)
Other versions
KR20100079597A (en
Inventor
김동순
김제우
이주영
최병호
Original Assignee
전자부품연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전자부품연구원 filed Critical 전자부품연구원
Priority to KR1020080138130A priority Critical patent/KR100973083B1/en
Publication of KR20100079597A publication Critical patent/KR20100079597A/en
Application granted granted Critical
Publication of KR100973083B1 publication Critical patent/KR100973083B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명의 움직임 벡터 추출기는 프레임 데이터를 입력받기 위하여 외부 메모리와 인터페이스싱하는 인터페이스/라우터 블록과, 읽기와 쓰기 동작이 동시에 수행되는 내부 메모리 및 레지스터 어댑터를 포함한다. 이러한 본 발명에 의하면, 움직임 추정을 수행하기 위해 필요한 프레임 데이터를 보다 속도가 빠른 내부 메모리로 복사함과 동시에 SAD(Sum of Absolute Difference) 연산을 하기 위한 프레임 데이터를 내부 메모리에서 Register 어댑터로 복사한다. 따라서 메모리의 읽기 동작 및 쓰기 동작에 의한 지연시간을 최소화함으로써, 연산효율을 향상시킬 수 있다. 또한, 각 연산 블록에 가변적으로 제어되는 파이프라인 레지스터를 구비함으로써, 기존의 일관된 파이프라인 구조에 따른 전력 소모량을 줄일 수 있다.The motion vector extractor includes an interface / router block for interfacing with an external memory to receive frame data, and an internal memory and a register adapter to simultaneously perform read and write operations. According to the present invention, the frame data required for performing the motion estimation is copied to a faster internal memory, and the frame data for a SAD (Sum of Absolute Difference) operation is copied from the internal memory to the register adapter. Therefore, the operational efficiency can be improved by minimizing the delay time caused by the read and write operations of the memory. In addition, by providing a pipeline register that is variably controlled in each operation block, it is possible to reduce the power consumption according to the existing consistent pipeline structure.

Description

어레이 기반의 움직임 벡터 추출기 및 그 방법{Motion vector extractor based array and method thereof}Motion vector extractor based array and method

본 발명은 움직임 벡터 추출기에 관한 것으로서, 보다 자세하게는 유니버설 미디어 서비스를 위한 신축형 비디오 코딩(scalable video coding, SVC)의 실시간 부호화를 위한 어레이 기반의 움직임 벡터 추출기 및 그 방법에 관한 것이다. The present invention relates to a motion vector extractor, and more particularly, to an array-based motion vector extractor and a method for real-time coding of scalable video coding (SVC) for universal media services.

최근 방송 미디어와 통신 미디어가 점차로 융합되어 가는 추세에서 디지털 TV 및 디지털 STB(Set-Top Box)는 방송 콘텐츠, 상용 콘텐츠(통신, 인터넷 등) 및 자작 콘텐츠를 통합하는 홈 미디어 서버로서 기능이 부각되고 있는 실정이다. In the recent trend of convergence of broadcasting media and communication media, digital TV and digital set-top boxes (STBs) are emerging as home media servers that integrate broadcasting contents, commercial contents (communications, internet, etc.) and home-grown contents. There is a situation.

특히, 최근 사회 전반에 걸친 유비쿼터스 시대로의 급속한 전환이 방송통신 미디어 서비스 산업의 컨버전스화를 가속화시키고 있기 때문에, 이에 능동적으로 대응하기 위해서는 방송통신 미디어 콘텐츠의 호환성, 미디어 콘텐츠의 접근 용이성, 미디어 콘텐츠 분배의 적응성 및 안전성 등이 가능한 디지털 TV를 기반으로 한 유니버설 미디어 서비스 산업의 핵심 기술 및 융합 기술 개발이 절실히 요구된다. In particular, the rapid transition to the ubiquitous era of the entire society is accelerating the convergence of the broadcasting and telecommunications media service industry. Therefore, in order to proactively cope with this, the compatibility of broadcasting and telecommunication media contents, the accessibility of media contents, and the distribution of media contents There is an urgent need for the development of core and convergence technologies in the universal media services industry based on digital TV, which is adaptable and safe.

또한, 방송통신 네트워크를 연계하는 홈 네트워크의 보급과 방송통신 미디어를 통합하는 미디어 정보기기의 확산으로 가정 내외에서 방송과 통신 미디어 산업 의 경계가 무너지고 있기 때문에 향후 미디어 서비스 산업의 발전은 사용자 입장에서 다양한 미디어 기기를 통해서 언제 어디서라도 원하는 미디어 콘텐츠를 서비스 받을 수 있도록 전개되어야 한다.In addition, the boundaries of the broadcasting and communication media industries are breaking down within and outside the home due to the spread of home networks linking broadcast communication networks and the proliferation of media information devices integrating broadcast communication media. It should be deployed to receive desired media contents anytime and anywhere through various media devices.

하지만, 기존의 미디어 서비스는 방송 콘텐츠, 인터넷 미디어 콘텐츠 그리고 정보기기용 콘텐츠 등의 미디어들이 서로 다른 미디어 포맷, 전송 그리고 서비스 방식 측면에서 상호 호환성을 확보하지 못하고 있기 때문에 유비쿼터스 및 방송통신 융합 미디어 서비스 환경에 대한 대응이 미흡한 실정이다.However, in the existing media services, media such as broadcast contents, internet media contents, and information device contents do not have mutual compatibility in terms of different media formats, transmissions, and service methods. The response to the situation is insufficient.

도 1에 도시된 바와 같이 기존의 미디어 코덱들은 디지털 방송, HDTV 및 DVD 등에 사용되는 MPEG-2, 인터넷 스트리밍, 동영상 파일(DviX, Xvid 등)에 이용되는 MPEG-4와 WMV9, 그리고 최근에 DMB, DVB-H, HD-DVD 등에 채택된 MPEG-4 AVC/H.264 등이 존재한다. As shown in FIG. 1, existing media codecs are MPEG-2 used for digital broadcasting, HDTV and DVD, Internet streaming, MPEG-4 and WMV9 used for video files (DviX, Xvid, etc.), and recently DMB, MPEG-4 AVC / H.264 and the like adopted in DVB-H, HD-DVD, and the like exist.

이들 미디어 코덱들은 대부분 특정 목적에 맞는 규격을 갖고 있기 때문에 상호 호환이 어렵고, 또한 다양한 네트워크 및 이기종 단말기 등의 범용적인 환경에 직접적으로 적용하기 어렵다.Since most of these media codecs have a standard for a specific purpose, they are difficult to interoperate with each other, and it is difficult to directly apply them to general environments such as various networks and heterogeneous terminals.

또한, 디지털 방송, 인터넷 등의 다양한 미디어 규격, 다양한 무선 단말기 그리고 다양한 미디어 코덱 등과 같이 복합적으로 혼재된 기존의 환경에서 디지털 TV에서는 다양한 이종의 미디어 규격들을 통합하고 사용자로 하여금 보다 쉽게 미디어에 접근할 수 있도록 요구되고 있는 실정이다.In addition, in the existing mixed environment such as various media standards such as digital broadcasting, Internet, various wireless terminals, and various media codecs, digital TV integrates various heterogeneous media standards and enables users to access media more easily. It is required to be.

한편, 인터넷, 모바일 단말기, 무선 통신 기술의 발전으로 PDA, PMP, 핸드폰 등에서 동영상 서비스가 가능하게 됨에 따라 다양한 네트워크 및 이기종 단말기 등 에 끊김 없는 동영상 서비스를 제공하기 위해서 기존의 코덱 기술 간의 트랜스코딩 기술을 적용하는 솔루션이 개발되었으나, 이 솔루션은 기존 코덱 간의 트랜스코딩에 따른 화질의 열화뿐만 아니라 동적인 네트워크 환경에 적용하기 위해 반드시 실시간 트랜스코딩이 요구되기 때문에 극히 일부 응용 제품에만 적용되고 있는 실정이다.Meanwhile, with the development of the Internet, mobile terminals, and wireless communication technologies, video services are available in PDAs, PMPs, mobile phones, and the like, so that transcoding technologies between existing codec technologies are used to provide seamless video services to various networks and heterogeneous terminals. Although a solution has been developed, this solution is applied to only a few applications because real-time transcoding is required to be applied to dynamic network environments as well as degradation of image quality due to transcoding between existing codecs.

따라서, 기존 코덱들 및 솔루션이 갖고 있는 한계를 극복하고 동시에 방송통신의 미디어 융합이 가능하며 언제, 어디서나,어떠한 기기에서도 다양한 네트워크 환경에 공유하는 유비쿼터스 환경에 적합한 유니버설 미디어 서비스를 제공할 수 있는 유니버설 미디어 코덱 기술의 개발이 절실하다.Therefore, it is possible to overcome the limitations of existing codecs and solutions, and at the same time, media convergence of broadcasting communication is possible, and universal media that can provide universal media service suitable for ubiquitous environment shared in various network environments at any time, anywhere and any device. Development of codec technology is urgently needed.

따라서, 상기의 종래 문제점을 해결하기 위해 개발되어지고 있는 신축형 비디오 코딩(Scalable Video Coding, SVC) 기술을 이용한 인코더(encoder)의 경우, 최대 HD급의 영상을 실시간으로 부호화하기 위해서 동작 주파수를 올리고, 이에 따르는 파이프라인 구조 및 병렬화 구조를 사용하여 구현되고 있지만, 이 경우 일관된 파이프라인 구조에 따른 전력 소모량이 증가하고 영상 소스에 따른 성능 차이에 따라 실시간 처리가 안되는 경우도 발생하게 된다. Therefore, in the case of an encoder using a scalable video coding (SVC) technology that has been developed to solve the above-mentioned problems, the operating frequency is raised to encode a maximum HD level image in real time. In this case, power consumption due to a consistent pipeline structure is increased and in some cases, real-time processing may not be performed due to performance differences of video sources.

이와 함께 과도한 프레임 메모리 사용으로 집적화의 효율성이 떨어지고, 메모리의 읽기 동작 및 쓰기 동작에 의한 지연시간이 오히려 실시간 연산에 영향을 주게 되기 때문에, 이의 효과적으로 처리하는 방법이 요구된다.In addition, since the efficiency of integration decreases due to excessive use of frame memory, and delay time caused by read and write operations of the memory affects real-time operation, a method of effectively processing the same is required.

본 발명의 목적은 상술한 바와 같은 종래의 문제점을 해결하기 위한 것으로서, 유니버설 미디어 서비스(Universal Media Service, UMS)를 위한 신축형 비디오 코딩(scalable video coding, SVC)의 실시간 부호화를 하는 어레이 기반의 움직임 벡터 추출기 및 그 방법을 제공하는 것이다. Disclosure of Invention An object of the present invention is to solve the conventional problems as described above, an array-based motion for real-time coding of scalable video coding (SVC) for Universal Media Service (UMS) A vector extractor and its method are provided.

상기와 같은 목적을 달성하기 위하여, 본 발명의 일면에 따른 움직임 추출기는 특정 블록 단위로 분할된 이전 프레임 데이터를 병렬적으로 입력받아서 저장하는 내부 메모리 블록과, 상기 저장된 특정 블록 단위로 분할된 이전 프레임 데이터를 병렬적으로 입력받아서 동시에 출력하는 파이프라인 구조의 레지스터 어댑터과, 병렬적으로 구성되어 현재 프레임 데이터와 상기 레지스터 어댑터로부터 제공되는 이전 프레임 데이터를 각각 입력받아서 SAD(Sum of Absolute difference) 연산을 각각 수행하는 다수의 SAD 트리 블록을 포함하는 SAD 연산부와, 병렬적으로 구성되어 상기 다수의 SAD 트리 블록 중 해당 SAD 트리 블록으로부터 출력되는 현재의 SAD 값을 입력받아서 기존에 계산된 SAD 값과 상기 현재의 SAD 값을 각각 비교하는 다수의 비교기를 포함하는 비교 연산부 및 상기 다수의 비교기로부터의 비교 결과치들에 근거하여 각 픽셀의 모션 벡터(motion vector) 값을 병합하여 정렬하는 움직임 벡터 병합기를 포함한다. In order to achieve the above object, a motion extractor according to an aspect of the present invention is an internal memory block for receiving and storing previous frame data divided in units of specific blocks in parallel, and the previous frame divided in units of the stored specific blocks. Performs SAD (Sum of Absolute Difference) operation by receiving register data of parallel structure and receiving parallel output of data, and parallel frame configured to receive current frame data and previous frame data provided from the register adapter. A SAD operation unit including a plurality of SAD tree blocks, and configured in parallel to receive a current SAD value output from a corresponding SAD tree block among the plurality of SAD tree blocks, and a previously calculated SAD value and the current SAD. A comparison year that includes a number of comparators, each comparing a value Portion and include a motion vector merging arranged to merge the motion vector (motion vector) values for each pixel based upon the comparison results received from the plurality of comparators.

본 발명의 다른 일면에 따른 움직임 추출기는 외부 메모리와 인터페이싱하는 인터페이스/라우터와, 상기 인터페이스/라우터 블록을 통해 상기 외부 메모리에 저장된 프레임 데이터를 상기 이전 프레임 데이터로서 전달받는 읽기와 쓰기 동작이 동시에 수행되는 내부 메모리와, 상기 SAD 연산을 수행하기 위해 상기 내부 메모리에 저장된 상기 이전 프레임 데이터를 복사해오는 레지스터 그룹을 이루어진 레지스터 어댑터 및 상기 인터페이스/라우터, 상기 내부 메모리 및 상기 레지스터 어댑터의 전반적인 동작을 제어하는 컨트롤러를 포함한다. According to another aspect of the present invention, a motion extractor includes an interface / router for interfacing with an external memory and a read and write operation for receiving frame data stored in the external memory as the previous frame data through the interface / router block. A register adapter and a controller for controlling the overall operation of the interface / router, the internal memory and the register adapter having an internal memory and a register group for copying the previous frame data stored in the internal memory to perform the SAD operation. Include.

본 발명의 또 다른 일면에 따른 움직임 벡터 추출방법은 외부 메모리로부터 프레임 데이터를 입력받아서, 이전 프레임에 대응하는 상기 프레임 데이터(이하, 이전 프레임 데이터)를 특정 블록 단위로 분할하는 단계와, 특정 블록 단위로 분할된 이전 프레임 데이터를 병렬적으로 입력받아서 저장하는 단계와, 상기 저장된 특정 블록 단위로 분할된 이전 프레임 데이터를 병렬적으로 입력받아서 파이프라인 구조의 레지스터 어댑터에 저장하는 단계와, 병렬적으로 구성된 다수의 SAD 트리 블록을 통해 현재 프레임에 대응하는 현재 프레임 데이터(이하 현재 프레임 데이터)와 상기 이전 프레임 데이터를 각각 입력받아서 SAD(Sum of Absolute difference) 연산을 각각 수행하는 단계와, 병렬적으로 구성된 다수의 비교기를 통해 상기 SAD 연산된 결과치인 현재의 SAD 값과 기존에 계산된 SAD 값을 각각 비교하는 단계 및 상기 다수의 비교기로부터의 비교 결과치들에 근거하여 각 픽셀의 모션 벡터(motion vector) 값을 병합하여 정렬하는 단계를 포함한다. According to another aspect of the present invention, there is provided a method of extracting a motion vector, by receiving frame data from an external memory, dividing the frame data (hereinafter, referred to as previous frame data) corresponding to a previous frame into a specific block unit, and Receiving and storing the previous frame data divided into parallel in parallel; receiving the previous frame data divided into the stored specific block units in parallel and storing the same in the pipelined register adapter; Performing a sum of absolute difference (SAD) operation by receiving current frame data (hereinafter, referred to as current frame data) and previous frame data corresponding to a current frame through a plurality of SAD tree blocks, respectively; The current SAD value that is the result of the SAD operation through the comparator of And a step of comparing the SAD value computed for each of the existing and aligning and merging the motion vector (motion vector) values for each pixel based upon the comparison results received from the plurality of comparators.

본 발명에 의하면, 본 발명의 움직임 벡터 추출기는 프레임 데이터를 입력받 기 위하여 외부 메모리와 인터페이스싱하는 인터페이스/라우터 블록과, 읽기와 쓰기 동작이 동시에 수행되는 내부 메모리 및 레지스터 어댑터를 포함한다. 이러한 본 발명에 의하면, 움직임 추정을 수행하기 위해 필요한 프레임 데이터를 보다 속도가 빠른 내부 메모리로 복사함과 동시에 SAD(Sum of Absolute Difference) 연산을 하기 위한 프레임 데이터를 내부 메모리에서 Register 어댑터로 복사한다. 따라서 메모리의 읽기 동작 및 쓰기 동작에 의한 지연시간을 최소화함으로써, 연산효율을 향상시킬 수 있다. 또한, 각 연산 블록에 가변적으로 제어되는 파이프라인 레지스터를 구비함으로써, 기존의 일관된 파이프라인 구조에 따른 전력 소모량을 줄일 수 있다.According to the present invention, the motion vector extractor of the present invention includes an interface / router block for interfacing with an external memory to receive frame data, and an internal memory and a register adapter simultaneously performing read and write operations. According to the present invention, the frame data required for performing the motion estimation is copied to a faster internal memory, and the frame data for a SAD (Sum of Absolute Difference) operation is copied from the internal memory to the register adapter. Therefore, the operational efficiency can be improved by minimizing the delay time caused by the read and write operations of the memory. In addition, by providing a pipeline register that is variably controlled in each operation block, it is possible to reduce the power consumption according to the existing consistent pipeline structure.

이하, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 가장 바람직한 실시예를 첨부한 도면을 참조하여 상세하게 설명한다. 또한, 본 발명을 설명하는데 있어서 동일 부분은 동일 부호를 붙이고, 그 반복 설명은 생략한다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. In addition, in describing this invention, the same code | symbol is attached | subjected and the repeated description is abbreviate | omitted.

먼저, 본 발명의 실시예에 대한 설명에 앞서 적응적 비트스트림 생성을 위한 신축형 비디오 코딩의 구조에 대한 설명을 한다.First, before describing the embodiment of the present invention, a description will be given of a structure of flexible video coding for adaptive bitstream generation.

도 2는 적응적 비트스트림을 생성을 위한 신축형 비디오 코딩을 위한 전체 코어 인코더를 보여주는 블록도이다.2 is a block diagram showing an entire core encoder for flexible video coding for generating an adaptive bitstream.

유니버설 미디어 코딩(Universal Media Coding, UMC) 인코더는 다양한 미디어 컨텐츠와 다양한 형태의 미디어 기기를 통해 유니버설 미디어 서비스(Universal Media Service, UMS)를 제공하기 위한 비디오 스트림을 생성한다.Universal Media Coding (UMC) encoder generates a video stream for providing Universal Media Service (UMS) through various media contents and various types of media devices.

다양한 상황에 대해 적응적(adaptive) 비트스트림을 제공하기 위해 UMC 인코더는 신축형 비디오 코딩(Scalable Video Coding, SVC) 기술을 기반으로 UMS 서비스에 적합한 특징을 중점적으로 적용하였다.In order to provide adaptive bitstreams for various situations, the UMC encoder focused on features suitable for UMS services based on scalable video coding (SVC) technology.

도 2에 도시한 바와 같이, 상기 신축형 비디오 코딩은 시간축 신축성(Temporal Scalability)를 위해 Hierarchical P/B 구조를 사용한다. 디지털 방송 서비스를 기반으로 하고 다중의 단말로 UMS 서비스를 제공할 필요가 있기 때문에 최고 HD급의 영상을 서비스해야 하고 그 이하의 다양한 해상도를 지원할 필요가 있다.As shown in FIG. 2, the flexible video coding uses a Hierarchical P / B structure for temporal scalability. Since it is necessary to provide UMS service to multiple terminals based on digital broadcasting service, it is necessary to service the highest HD video and support various resolutions below it.

또한, 현재 표준화된 SVC 표준에서 정한 프로파일(profile)에 보면 이동 단말들에 대한 프로파일로는 svc baseline profile로서 H.264/AVC baseline profile을 기반으로 한다. 그래서, 단말들을 위한 SD급 이하의 UMC 코딩에는 I/P-slice만으로 부호화하고, HD급 영상에만 I/B/P-slice로 부호화는 방식을 채택하여 Hier. P/B 혼용 구조를 적용하게 된다.In addition, in the profile defined by the current standardized SVC standard, the profile for mobile terminals is based on the H.264 / AVC baseline profile as the svc baseline profile. Therefore, the UMC coding of the SD or lower for the terminal is encoded only by I / P-slice, and only the HD-class video is encoded by I / B / P-slice by adopting Hier. P / B mixed structure is applied.

이하 아래에서는 상술한 바와 같은 유니버셜 미디어 코덱의 실시간 부호화를 위한 어레이 기반의 움직임 벡터 추출기에 대해 상세히 설명하기로 한다.Hereinafter, the array-based motion vector extractor for real-time encoding of the universal media codec as described above will be described in detail.

도 3는 본 발명의 실시예에 따른 어레이 기반의 움직임 벡터 추출기의 블록도이다.3 is a block diagram of an array based motion vector extractor according to an embodiment of the present invention.

이미지 압축에서 움직임 추정(motion estimation)과정은 압축(compression) 효율을 증가시키는 과정에서 연산의 복잡성(computational complexity)이 증가한 다. 이러한 증가된 연산량을 적절한 시간 안에 처리하고 구현상의 복잡성(complexity)를 감소시키기 위해 일반적으로 prediction을 두 개의 과정으로 구분하여 구현한다. 즉 정수 추정(integer estimation)과 분수 추정(fractional estimation)으로 구분된다. 먼저, 정수 추정 과정을 통해서 대략적인 추정을 수행하고 fractional motion estimation을 통해서 더욱 정교한 추정이 수행된다. The motion estimation process in image compression increases computational complexity in the process of increasing the compression efficiency. In order to process this increased amount of computation in a timely manner and to reduce implementation complexity, prediction is generally divided into two processes. That is, it is divided into integer estimation and fractional estimation. First, rough estimation is performed through the integer estimation process, and more sophisticated estimation is performed through fractional motion estimation.

도 3에 도시된 움직임 벡터 추출기(10)는 상기 정수 추정과정을 처리하는 처리 유닛으로서, 기존의 SAD(Sum of Absolute difference) Tree 기반의 병렬화 된 구조를 이용하여 인코딩(encoding)과정에서의 critical path를 application에 따라서 적절하게 분배한다. 따라서, 발명의 실시예에 따른 어레이 기반의 움직임 벡터 추출기(100)는 메모리의 읽고 쓰는 지연시간에 의한 HD급의 영상이 실시간으로 부호화되지 못하는 점을 해결한다. 이를 위하여 본 발명의 실시예에 따른 어레이 기반의 움직임 벡터 추출기(100)는 외부 메모리(External Memory)와의 인터페이싱하는 인터페이스/라우터(Interface and Router) 블록(10)과, 내부 메모리 블록(12) 및 레지스터 어댑터(Register adapter) 블록(14)을 포함하는 것을 특징으로 한다. The motion vector extractor 10 shown in FIG. 3 is a processing unit for processing the integer estimating process, and is a critical path in an encoding process by using a parallel structure based on a conventional Sum of Absolute difference (SAD) tree. Appropriately distributed according to the application. Therefore, the array-based motion vector extractor 100 according to the embodiment of the present invention solves a problem in that HD-quality images are not encoded in real time due to the delay time of reading and writing the memory. To this end, the array-based motion vector extractor 100 according to the embodiment of the present invention includes an interface / router block 10 for interfacing with external memory, an internal memory block 12, and a register. It is characterized in that it comprises a register adapter block (14).

보다 구체적으로는, 본 발명의 실시예에 따른 어레이 기반의 움직임 벡터 추출기(100)는 상기한 블록들(10, 12, 14) 외에 레퍼런스 어레이 블록(16, Ref.array)과, 커런트 어레이 블록(28, Cur.array), 다수의 SAD 트리 블록(18), 다수의 비교기 블록(20), 움직임 벡터 병합기(22, Motion vector merger), 어드레스 생성기(24, Address generator), 데이터 버퍼(26, Data buffer) 및 컨트롤러(30)를 더 포함한다. More specifically, the array-based motion vector extractor 100 according to the embodiment of the present invention may include the reference array block 16 (Ref.array) and the current array block (aside from the blocks 10, 12, 14). 28, Cur.array), a plurality of SAD tree blocks 18, a plurality of comparator blocks 20, a motion vector merger 22, an address generator 24, an address generator, a data buffer 26, Data buffer) and the controller 30 further.

인터페이스/라우터 블록(10)은 HD급 또는 SD급의 YUV(YCbCr/YPbPr) 데이터를 입력받기 위하여 상기 외부 메모리(예컨대, 프레임 버퍼)의 컨트롤러의 역할 즉, 인터페이싱 역할을 수행한다. The interface / router block 10 serves as a controller of the external memory (eg, a frame buffer), that is, interfacing to receive YUV (YCbCr / YPbPr) data of HD or SD class.

구체적으로, 상기 인터페이스/라우터 블록(10) 상기 외부 메모리로부터 YUV 데이터(이하 프레임 데이터)를 프레임 단위로 입력받고, 상기 이전 프레임에 대응하는 프레임 데이터(이전 프레임 데이터)를 특정 블록 단위(예컨대, 4x4 크기의 블록 단위)로 분할하여, 특정 블록 단위로 분할된 각 이전 프레임 데이터를 1차적으로 상기 내부 메모리 블록(12)에 일시적으로 분산 저장한다. 동시에 상기 인터페이스/라우터 블록(10)은 현재 프레임에 대응하는 프레임 데이터(현재 프레임 데이터)를 데이터 버퍼(26)에 일시적으로 저장한다.In detail, the interface / router block 10 receives YUV data (hereinafter, referred to as frame data) from the external memory in units of frames and receives frame data (previous frame data) corresponding to the previous frame in units of specific blocks (eg, 4x4). The previous frame data divided into specific block units are temporarily distributed and stored temporarily in the internal memory block 12. At the same time, the interface / router block 10 temporarily stores frame data (current frame data) corresponding to the current frame in the data buffer 26.

내부 메모리 블록(12)은 병렬적으로 구성된 다수의 에스램(SRAM)으로 구현될수 있으며, 내부 메모리 블록(12)이 다수의 에스램으로 구현되는 경우, 각 에스램은 어드레스 생성기(24)에 의해 생성된 어드레스 값에 응답하여 특정 블록 단위로 분할된 이전 프레임 데이터를 1차적으로 각각 분산 저장한다. 여기서, 각 에스램은 리드 타임(read time)과 라이트 타임(write time)에 따른 지연 시간을 최소화하기 위하여 듀얼 포트 에스램(Dual port SRAM)으로 구현되는 것이 바람직하다. 싱글 포트 에스램(Single port SRAM)의 경우, 데이터의 읽기 동작과 쓰기 동작이 동시에 일어 날수 없지만, 듀얼 포트 에스램의 경우, 읽기 동작과 쓰기 동작의 두 동작이 동시에 가능하기 때문에 메모리의 읽기 동작과 쓰기 동작에 따른 지연시간을 최소화할 수 있다.The internal memory block 12 may be implemented with a plurality of SRAMs configured in parallel, and when the internal memory block 12 is implemented with a plurality of SRAMs, each of the SRAMs may be implemented by the address generator 24. In response to the generated address value, the previous frame data divided into specific block units are primarily distributed and stored. In this case, each of the SRAMs may be implemented as dual port SRAMs in order to minimize delay time according to read time and write time. In the case of single port SRAM, data read and write operations cannot occur at the same time. In the case of dual port SRAM, both read and write operations can be performed simultaneously. The delay time due to the write operation can be minimized.

레지스터 어댑터 블록(14)은 파이프라인(pipeline)을 위한 레지스터 군(register group)으로서, 상기 내부 메모리 블록(12)에 특정 블록 단위로 분할된 이전 프레임 데이터를 입력받아서 상기 컨트롤러(30)의 제어에 따라 레퍼런스 어레이 블록(16)에 전달한다. 이때, 상기 데이터 버퍼(26)는 상기 컨트롤러(30)의 제어에 따라 저장된 현재 프레임 데이터를 커런트 어레이 블록(28)에 전달한다. The register adapter block 14 is a register group for a pipeline. The register adapter block 14 receives previous frame data divided in a specific block unit into the internal memory block 12 to control the controller 30. The reference array block 16 is then transferred to the reference array block 16. At this time, the data buffer 26 transfers the current frame data stored under the control of the controller 30 to the current array block 28.

레퍼런스 어레이 블록(16)은 상기 레지스터 어댑터 블록(14)으로부터 전달받은 이전 프레임 데이터를 저장하는 일종의 메모리 역할을 수행하며, 컨트롤러(30)의 제어에 따라 저장된 이전 프레임 데이터를 다수의 SAD 트리 블록(18)으로 전달한다. The reference array block 16 serves as a kind of memory for storing previous frame data received from the register adapter block 14, and stores the previous frame data stored in the plurality of SAD tree blocks 18 under the control of the controller 30. ).

커런트 어레이 블록(28)은 상기 데이터 버퍼로부터 전달받은 현재 프레임 데이터를 저장하는 일종의 메모리 역할을 수행하며, 상기 컨트롤러(30)의 제어에 따라 저장된 현재 프레임 데이터를 기준 프레임 데이터로서 상기 다수의 SAD 트리 블록(18)으로 전달한다. The current array block 28 serves as a kind of memory for storing current frame data received from the data buffer, and the plurality of SAD tree blocks are stored as reference frame data using the current frame data stored under the control of the controller 30. (18).

다수의 SAD 트리 블록(18)은 병렬적으로 구성되어, 각각은 상기 레퍼런스 어레이 블록(28)과 상기 커런트 어레이 블록(28)으로부터 각각 전달받은 이전 프레임 데이터와 현재 프레임 데이터를 매크로 블록 단위로 SAD 연산하고, 연산된 결과치 중 최소값을 현재의 SAD 값으로서 출력한다. The plurality of SAD tree blocks 18 are configured in parallel, and each of the SAD tree blocks 18 performs SAD operations on macro frame units from previous frame data and current frame data received from the reference array block 28 and the current array block 28, respectively. The minimum value of the calculated results is output as the current SAD value.

다수의 비교기 블록(20)은 병렬적으로 구성되어, 상기 다수의 SAD 트리 블록(18)의 개수와 동일한 개수로 구성된다. 각 비교 블록(20)은 해당 SAD 트리 블록으로부터 출력되는 현재의 SAD 값을 입력받아서 기존에 계산된 SAD 값과 상기 현재 의 SAD 값을 비교하고, 비교 결과치를 움직임 벡터 병합기(22)로 전달한다. The plurality of comparator blocks 20 are configured in parallel, the same number as the number of the plurality of SAD tree blocks 18. Each comparison block 20 receives the current SAD value output from the corresponding SAD tree block, compares the previously calculated SAD value with the current SAD value, and transfers the comparison result to the motion vector merger 22. .

이와 같이, 본 실시예에서는 병렬적으로 각각 구성된 다수의 SAD 트리 블록(18)과 다수의 비교기 블록(20)에 의해 한 프레임에 대응하는 모든 픽셀을 매크로 블록 단위로 병렬로 계산한다. 이때, 컨트롤러(30)는 모든 SAD 트리 블록들과 비교기 블록들을 동시에 제어한다. 즉, 입력 영상의 해상도 및 복잡도에 따라 일괄적으로 제어된다. 한편, SD급의 TV의 경우, 상기 다수의 SAD 트리 블록(18)과 상기 다수의 비교기 블록은 각각 16개씩 구현된다.As described above, in the present embodiment, all the pixels corresponding to one frame are calculated in macroblock units by the plurality of SAD tree blocks 18 and the plurality of comparator blocks 20 respectively configured in parallel. At this time, the controller 30 simultaneously controls all the SAD tree blocks and the comparator blocks. That is, it is controlled collectively according to the resolution and complexity of the input image. On the other hand, in the case of an SD TV, the plurality of SAD tree blocks 18 and the plurality of comparator blocks are each implemented with 16 units.

움직임 벡터 병합기(22)는 상기 다수의 비교기 블록(20)으로부터 전달된 비교 결과치에 근거하여 각 픽셀의 모션 벡터(motion vector)값을 하나의 프레임과 같이 데이터를 병합하여 정렬한다. 여기서, 모셔 벡터 값이란 현재의 매크로 블록과 가장 유사한 매크로 블록까지의 거리를 의미한다. The motion vector merger 22 merges and sorts the motion vector values of each pixel as one frame based on the comparison result values transmitted from the plurality of comparator blocks 20. Here, the Mosher vector value means the distance to the macro block most similar to the current macro block.

컨트롤러(30)는 상술한 바와 같이, 각 블록들(10, 12, 14, 16, 18, 20, 22, 24, 26, 28)을 제어한다. 특히 컨트롤러(30)는 SAD 트리의 매크로 블록의 구성(configuration)을 제어한다. The controller 30 controls each of the blocks 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 as described above. In particular, the controller 30 controls the configuration of the macro block of the SAD tree.

또한, 본 실시예에서는 SAD 트리 블록(18), 비교기 블록(20), 움직임 벡터 병합기(22)의 각 블록의 종단(또는 출력단)에 인에이블 컨트롤러 레지스터(또는 파이프라인 레지스터)가 설계된다. 컨트롤러(30)가 상기 설계된 인에이블 컨트롤러 레지스터를 제어하여, 파이프라인 스테이지를 가변적으로 조절한다. In addition, in this embodiment, an enable controller register (or pipeline register) is designed at the end (or output end) of each block of the SAD tree block 18, the comparator block 20, and the motion vector merger 22. The controller 30 controls the designed enable controller register to variably adjust the pipeline stage.

결과적으로, 본 발명의 실시예에 따른 움직임 벡터 추출기(100)는 컨트롤러에 의해 각 연산 블록(18, 20, 22)마다 설계된 파이프라인 레지스터를 제어함으로 써, 파이프라인을 가변적으로 제어함으로써, 연산 효율성을 극대화시키고, 일관된 파이프라인의 구조에 따른 전력 소모를 줄일 수 있다.As a result, the motion vector extractor 100 according to the embodiment of the present invention controls the pipeline register by designing the pipeline registers designed for each operation block 18, 20, 22 by the controller, thereby controlling the pipeline, thereby increasing the computational efficiency. To maximize power consumption and reduce power consumption due to a consistent pipeline structure.

위의 정수 추정 기법에 따라 움직임 벡터를 추출하는 본 발명의 실시예에 따른 움직임 벡터 추출기는 SAD(Sum of Absolute difference) Tree 기반의 병렬화 된 구조를 이용하여 인코딩(encoding)과정에서의 critical path를 application에 따라서 적절하게 분배한다. 만일 본 발명의 실시예에 따른 움직임 벡터 추출기가 SD급의 TV에 적용되는 경우, 16개의 SAD 트리 및 비교 경로(comparator path)를 통해서 움직임 벡터(motion vector)를 결정하게 된다.The motion vector extractor according to an embodiment of the present invention extracts a motion vector according to the above integer estimation technique by using a parallel structure based on a Sum of Absolute difference (SAD) tree to apply a critical path in the encoding process. Distribute accordingly. If the motion vector extractor according to the embodiment of the present invention is applied to an SD TV, a motion vector is determined through 16 SAD trees and a comparator path.

이상, 본 발명자에 의해서 이루어진 발명을 상기 실시예에 따라 구체적으로 설명하였지만, 본 발명은 상기 실시예에 한정되는 것은 아니고, 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 물론이다. As mentioned above, although the invention made by this inventor was demonstrated concretely according to the said Example, this invention is not limited to the said Example and can be variously changed in the range which does not deviate from the summary.

도 1은 차세대 DTV에서 요구되는 각종 미디어 코덱을 보여주는 도면이다.1 is a view showing various media codecs required in the next generation DTV.

도 2는 적응적 비트스트림을 생성을 위한 신축형 비디오 코딩을 위한 전체 코어 인코더를 보여주는 블록도이다.2 is a block diagram showing an entire core encoder for flexible video coding for generating an adaptive bitstream.

도 3는 본 발명의 실시예에 따른 어레이 기반의 움직임 벡터 추출기의 블록도이다.3 is a block diagram of an array based motion vector extractor according to an embodiment of the present invention.

Claims (12)

유니버설 미디어 코딩을 위하여 다양한 미디어 컨텐츠의 이전 프레임 데이터와 현재 프레임 데이터가 저장된 외부 메모리와 인터페이싱 하고, 상기 외부 메모리에 저장된 상기 이전 프레임 데이터와 상기 현재 프레임 데이터를 순차적으로 입력받고, 상기 이전 프레임 데이터를 특정 블록 단위로 분할하여 병렬적으로 출력하는 인터페이스/라우터 블록;For universal media coding, interface with an external memory storing previous frame data and current frame data of various media contents, sequentially receiving the previous frame data and the current frame data stored in the external memory, and specifying the previous frame data. An interface / router block divided into block units and outputting in parallel; 상기 인터페이스/라우터 블록을 통해 상기 외부 메모리로부터 상기 특정 블록 단위로 분할된 이전 프레임 데이터를 병렬적으로 입력받아서 저장하고, 상기 외부 메모리에 저장된 상기 이전 프레임 데이터의 읽기 동작 및 쓰기 동작에 의한 지연시간을 줄이기 위한 읽기와 쓰기 동작이 동시에 수행되는 듀얼 포트 램으로 구성된 내부 메모리 블록;Through the interface / router block, the previous frame data divided into the specific block units are received and stored in parallel from the external memory, and the delay time due to the read operation and the write operation of the previous frame data stored in the external memory is stored. An internal memory block including dual port RAM for simultaneously reading and writing to reduce the memory; 상기 듀얼 포트 램에 저장된 상기 특정 블록 단위로 분할된 이전 프레임 데이터를 병렬적으로 입력받아서 동시에 출력하는 파이프라인 구조의 레지스터 어댑터;A register adapter having a pipelined structure to simultaneously receive and simultaneously output previous frame data divided into the specific block units stored in the dual port RAM; 상기 인터페이스/라우터 블록을 통해 상기 외부 메모리에 저장된 현재 프레임 데이터를 전달받아서 일시적으로 저장하는 데이터 버퍼;A data buffer for temporarily receiving current frame data stored in the external memory through the interface / router block and temporarily storing the current frame data; 상기 레지스터 어댑터에 복사된 상기 이전 프레임 데이터를 정렬하는 레퍼런스 어레이 블록;A reference array block for sorting the previous frame data copied to the register adapter; 상기 인터페이스/라우터 블록과 상기 데이터 버퍼를 통해 상기 현재 프레임 데이터를 입력받아서 정렬하는 커런트 어레이 블록;A current array block configured to receive and arrange the current frame data through the interface / router block and the data buffer; 16개의 SAD 트리로 병렬적으로 구성되어 상기 인터페이스/라우터 블록, 상기 데이터 버퍼 및 상기 커런트 어레이 블록을 거쳐 제공되는 상기 현재 프레임 데이터와, 상기 인터페이스/라우터 블록, 상기 레지스터 어댑터 및 상기 레퍼런스 어레이 블록을 거쳐 제공되는 이전 프레임 데이터를 각각 입력받아서 매크로 블록 단위로 병렬로 SAD(Sum of Absolute difference) 연산을 각각 수행하는 다수의 SAD 트리 블록을 포함하는 SAD 연산부;16 current SAD trees arranged in parallel and provided via the interface / router block, the data buffer and the current array block, and through the interface / router block, the register adapter and the reference array block. A SAD operation unit including a plurality of SAD tree blocks each receiving previous frame data provided and performing SAD (Sum of Absolute difference) operations in parallel in macroblock units; 병렬적으로 구성되어 상기 다수의 SAD 트리 블록 중 해당 SAD 트리 블록으로부터 출력되는 현재의 SAD 값을 입력받아서 기존에 계산된 SAD 값과 상기 현재의 SAD 값을 각각 비교하는 16개의 비교경로를 형성하는 다수의 비교기를 포함하는 비교 연산부;A plurality of SAD tree blocks configured in parallel to receive 16 current SAD values outputted from the corresponding SAD tree blocks to form 16 comparison paths for comparing the SAD values previously calculated with the current SAD values, respectively. A comparison operation unit comprising a comparator of; 상기 다수의 비교기로부터의 비교 결과치들에 근거하여 각 픽셀의 모션 벡터(motion vector) 값을 병합하여 정렬하여, 신축형 비디오 코딩의 실시간 부호화를 수행하는 움직임 벡터 병합기; 및A motion vector merger for merging and aligning motion vector values of each pixel based on comparison results from the plurality of comparators to perform real-time encoding of stretchable video coding; And 상기 다수의 SAD 트리 블록, 상기 다수의 비교기 및 상기 움직임 벡터 병합기의 출력단에 구비된 파이프라인 구조의 레지스터를 가변적으로 제어하는 컨트롤러;A controller for variably controlling a register of a pipeline structure provided at outputs of the plurality of SAD tree blocks, the plurality of comparators, and the motion vector merger; 를 포함하는 것을 특징으로 하는 움직임 벡터 추출기.Motion vector extractor comprising a. 삭제delete 제1항에 있어서, 상기 이전 프레임 데이터와 상기 현재 프레임 데이터 각각은 YUV(YCbCr/YPbPr) 데이터인 것을 특징으로 하는 움직임 벡터 추출기. The motion vector extractor of claim 1, wherein each of the previous frame data and the current frame data is YUV (YCbCr / YPbPr) data. 삭제delete 삭제delete 삭제delete 제1항에 있어서, 정수 추정(interger estimation) 기법에 따른 상기 이전 프레임 데이터와 상기 현재 프레임 데이터를 상기 SAD 연산을 통해 신축형 비디오 코딩의 실시간 부호화를 위한 움직임 벡터를 추출하는 것을 특징으로 하는 움직임 벡터 추출기. The motion vector of claim 1, wherein the motion vector for real-time encoding of stretchable video coding is extracted from the previous frame data and the current frame data according to an integer estimation technique through the SAD operation. Extractor. 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020080138130A 2008-12-31 2008-12-31 Motion vector extractor based array and method thereof KR100973083B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080138130A KR100973083B1 (en) 2008-12-31 2008-12-31 Motion vector extractor based array and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080138130A KR100973083B1 (en) 2008-12-31 2008-12-31 Motion vector extractor based array and method thereof

Publications (2)

Publication Number Publication Date
KR20100079597A KR20100079597A (en) 2010-07-08
KR100973083B1 true KR100973083B1 (en) 2010-07-29

Family

ID=42640671

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080138130A KR100973083B1 (en) 2008-12-31 2008-12-31 Motion vector extractor based array and method thereof

Country Status (1)

Country Link
KR (1) KR100973083B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010076707A (en) * 2000-01-27 2001-08-16 윤종용 Motion estimator
KR20060046730A (en) * 2004-07-26 2006-05-17 닛본 덴끼 가부시끼가이샤 Vector processing apparatus, information processing apparatus, and vector precessing method
KR20060106953A (en) * 2005-04-07 2006-10-12 주식회사 텔레칩스 Motion estimation device and method suitable hardware implementation
KR20080091651A (en) * 2007-04-09 2008-10-14 아주대학교산학협력단 Method and circuit operation for motion estimation of deverse multimedia codec

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010076707A (en) * 2000-01-27 2001-08-16 윤종용 Motion estimator
KR20060046730A (en) * 2004-07-26 2006-05-17 닛본 덴끼 가부시끼가이샤 Vector processing apparatus, information processing apparatus, and vector precessing method
KR20060106953A (en) * 2005-04-07 2006-10-12 주식회사 텔레칩스 Motion estimation device and method suitable hardware implementation
KR20080091651A (en) * 2007-04-09 2008-10-14 아주대학교산학협력단 Method and circuit operation for motion estimation of deverse multimedia codec

Also Published As

Publication number Publication date
KR20100079597A (en) 2010-07-08

Similar Documents

Publication Publication Date Title
JP7368414B2 (en) Image prediction method and device
TWI686076B (en) Enhanced multiple transforms for prediction residual
CN110460858B (en) Information processing apparatus and method
EP4277269A2 (en) An encoder, a decoder and corresponding methods for intra prediction
JP7068501B2 (en) Methods, equipment and computer programs for intramode coding
CN110944185B (en) Video decoding method and device, computer equipment and storage medium
JP7332703B2 (en) Method and apparatus for affine-based inter-prediction of chroma sub-blocks
CN111416976B (en) Video decoding method, video encoding method, device, equipment and storage medium
US10291934B2 (en) Modified HEVC transform tree syntax
CN113557741B (en) Method and apparatus for adaptive streaming of point clouds
JP7018447B2 (en) Systems and methods for signaling motion constraint tile sets for virtual reality applications
CN115665408B (en) Filtering method and apparatus for cross-component linear model prediction
JP2022501978A (en) Video encoders, video decoders, and corresponding methods
JP7314300B2 (en) Method and apparatus for intra prediction
CN118118693A (en) Method and apparatus for decoding or encoding video data
KR20210024164A (en) System and method for signaling a picture order count value for a picture included in a coded video
CN101945285A (en) Embedded interactive application service transcoding and encoding system
CN114556942A (en) Quantizer for lossless and near-lossless compression
CN115380306A (en) Method and device for encoding and decoding video
CN111953987B (en) Video transcoding method, computer device and storage medium
CN113545055A (en) Video coding and decoding method and device
KR100973083B1 (en) Motion vector extractor based array and method thereof
CN112640460B (en) Apparatus and method for boundary partitioning
Garrido-Cantos et al. H. 264/AVC-to-SVC temporal video transcoder for video broadcasting in wireless networks
Garrido-Cantos et al. Low-complexity transcoding algorithm from H. 264/AVC to SVC using data mining

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130621

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140708

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150626

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160725

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190715

Year of fee payment: 10