TW201406166A - 視訊編碼方法與視訊編碼裝置 - Google Patents
視訊編碼方法與視訊編碼裝置 Download PDFInfo
- Publication number
- TW201406166A TW201406166A TW101127294A TW101127294A TW201406166A TW 201406166 A TW201406166 A TW 201406166A TW 101127294 A TW101127294 A TW 101127294A TW 101127294 A TW101127294 A TW 101127294A TW 201406166 A TW201406166 A TW 201406166A
- Authority
- TW
- Taiwan
- Prior art keywords
- block
- filter
- motion vectors
- circuit
- obtaining
- Prior art date
Links
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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- 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
-
- 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/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- 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/90—Methods 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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一種視訊編碼的方法,用於視訊編碼裝置。此方法包括:取得目前影像與參考影像,其中目前影像包括一個第一方塊;取得多個動作向量,其中每一個動作向量是指向參考影像的一個參考方塊;針對每一個動作向量,根據所指向的參考方塊與第一方塊執行濾波器運算以產生一個第一濾波方塊,並且根據所指向的參考方塊與對應的第一濾波方塊計算一個誤差值。此方法還包括:取得上述誤差值中最小的第一誤差值,並且取得對應於第一誤差值的第二濾波方塊;以及根據第二濾波方塊編碼第一方塊。藉此,可以增加壓縮比與視訊品質。
Description
本發明是有關於一種視訊編碼的方法與裝置。
在視訊編碼中,通常會把一張影像劃分為多個巨方塊(macro block),並且一個巨方塊可以包括一或多個方塊。如果想要找到視訊中的時間冗餘(temporal redundancy),會搜尋一個方塊的動作向量(motion vector)。搜尋動作向量的過程又稱為動作估測(motion estimation)。一個動作向量是從目前影像的一個方塊指向參考影像的一個方塊。編碼器會利用參考影像上的方塊來預測目前影像的方塊,並且產生預測後的剩餘值(residual)。編碼器會對產生的剩餘值進行轉換、量化、和熵值編碼(entropy coding)等運算。
然而,在影像中通常都會有雜訊。這些雜訊可以經過濾波器運算來消除。而濾波器的種類又可分為空間上與時間上的濾波器(temporal filter)。若為時間上的濾波器,同樣會參考一個參考影像。因此,如何在視訊編碼時,同時進行濾波器運算,為此領域技術人員所關心的議題。
本發明的實施例提出一種視訊編碼方法與視訊編碼系統,可以在編碼時同時進行濾波器運算。
本發明一實施例提出一種視訊編碼的方法,用於視訊
編碼裝置。此方法包括:取得目前影像與參考影像,其中目前影像包括一個第一方塊;取得多個動作向量,其中每一個動作向量是指向參考影像的一個參考方塊;針對每一個動作向量,根據所指向的參考方塊與第一方塊執行濾波器運算以產生一個第一濾波方塊,並且根據所指向的參考方塊與對應的第一濾波方塊計算誤差值。此方法還包括:取得上述誤差值中最小的第一誤差值,並且取得對應於第一誤差值的第二濾波方塊;以及根據第二濾波方塊編碼第一方塊。
在一實施例中,上述針對每一個動作向量,根據所指向的參考方塊與對應的第一濾波方塊計算誤差值的步驟包括:根據對應的第一濾波方塊與第一方塊執行細節保留運算以取得細節保留方塊;以及,計算細節保留方塊與所指向的參考方塊之間的誤差值。上述根據第二濾波方塊編碼第一方塊的步驟包括:取得對應於第二濾波方塊的第一參考方塊;取得對應第二濾波方塊的細節保留方塊;以及編碼細節保留方塊與第一參考方塊之間的剩餘值。
在一實施例中,上述根據第二濾波方塊編碼第一方塊的步驟包括:取得參考影像中的零參考方塊,其中零參考方塊在參考影像的座標等於第一方塊在目前影像的座標;根據零參考方塊與第一方塊執行濾波器運算以取得第三濾波方塊;根據第二濾波方塊與第三濾波方塊執行濾波器運算以取得第四濾波方塊;取得在目前影像中相鄰於第一方塊的第二方塊;以及根據第二方塊預測第四濾波方塊以取
得一個剩餘值,並且編碼此剩餘值。
在一實施例中,上述根據第二濾波方塊編碼第一方塊的步驟包括:取得參考影像中的零參考方塊,其中零參考方塊在參考影像的座標等於第一方塊在目前影像的座標;根據零參考方塊與第一方塊執行濾波器運算以取得第三濾波方塊;根據第二濾波方塊與第三濾波方塊執行濾波器運算以取得第四濾波方塊;取得對應於第二濾波方塊的第一參考方塊;以及編碼第一參考方塊與第四濾波方塊之間的剩餘值。
在一實施例中,在取得動作向量的步驟之前,上述的方法還包括:取得多個粗動作向量,其中每一個粗動作向量是指向參考畫面的一個第二參考方塊;針對每一個粗動作向量,計算所指向的第二參考方塊與第一方塊之間的第三誤差值;取得第三誤差值中最小的第四誤差值,並且取得對應於第四誤差值的第一粗動作向量;取得多個細動作向量;並且根據這些細動作向量與第一粗動作向量產生上述的動作向量。
在一實施例中,上述的每一個粗動作向量的水平分量與垂直分量為整數,並且每一個細動作向量的水平方量與垂直分量為小於1的小數。
在一實施例中,上述的視訊編碼方法更包括:取得一個粗動作向量與目前畫面中的第四方塊,其中粗動作向量是指向參考影像的第一參考方塊;根據第一參考方塊與第四方塊執行濾波器運算以取得第二濾波方塊;根據第二濾
波方塊與第四方塊執行細節保留運算以取得一個細節保留方塊;根據此粗動作向量產生多個第一動作向量,其中每一個第一動作向量是指向參考影像的一個第二參考方塊;計算每一個第二參考方塊與細節保留方塊之間的第三誤差值;取得第三誤差值中最小的第四誤差值;取得對應於第四誤差值的第一細節保留方塊;根據第一細節保留方塊編碼第四方塊。
在一實施例中,上述的第一方塊屬於多個方塊類型的其中之一。在取得動作向量的步驟之前,此方法還包括:取得每一個方塊類型的多個第一動作向量,其中每一個第一動作向量是指向參考影像的一個第一參考方塊;針對每一個類型的每一個第一動作向量,根據所指向的第一參考方塊與第一方塊計算第一誤差值;以及針對每一個類型,取得第一誤差值中最小的第二誤差值,並取得對應第二誤差值的第二動作向量。其中這些第二動作向量為上述的動作向量。
以另外一個角度來說,本發明一實施例提出一種視訊編碼裝置,包括:動作估測電路、濾波器運算電路與編碼電路。動作估測電路是用以取得目前影像與參考影像,其中目前影像包括第一方塊。濾波器運算電路是耦接至動作估測電路,用以執行濾波器運算。編碼電路是耦接至動作估測電路與濾波器運算電路。動作估測電路用以取得多個動作向量,其中每一個動作向量是指向參考影像的一個參考方塊。針對每一個動作向量,濾波器運算電路用以根據
所指向的參考方塊與第一方塊執行濾波器運算以產生一個第一濾波方塊,並且動作估測電路用以根據所指向的參考方塊與對應的第一濾波方塊計算一個誤差值。動作估測電路用以取得這些誤差值中最小的第一誤差值,並且濾波器運算電路用以取得對應於第一誤差值的第二濾波方塊。編碼電路用以根據第二濾波方塊編碼第一方塊。
在一實施例中,針對每一個動作向量,濾波器運算電路還用以根據對應的第一濾波方塊與第一方塊執行細節保留運算以取得一個細節保留方塊;並且動作估測電路還用以計算細節保留方塊與所指向的參考方塊之間的誤差值。編碼電路還用以取得對應於第二濾波方塊的第一參考方塊,取得對應第二濾波方塊的細節保留方塊,並且編碼細節保留方塊與第一參考方塊之間的剩餘值。
在一實施例中,上述的濾波器運算電路還用以取得參考影像中的零參考方塊。零參考方塊在參考影像的座標等於第一方塊在目前影像的座標。濾波器運算電路還用以根據零參考方塊與第一方塊執行濾波器運算以取得第三濾波方塊,並且根據第二濾波方塊與第三濾波方塊執行濾波器運算以取得第四濾波方塊。編碼電路還用以取得在目前影像中相鄰於第一方塊的第二方塊,根據第二方塊預測第四濾波方塊以取得一個剩餘值,並且編碼此剩餘值。
在一實施例中,上述的濾波器運算電路還用以取得參考影像中的零參考方塊,其中零參考方塊在參考影像的座標等於第一方塊在目前影像的座標。濾波器運算電路還用
以根據零參考方塊與第一方塊執行濾波器運算以取得第三濾波方塊,根據第二濾波方塊與第三濾波方塊執行濾波器運算以取得第四濾波方塊。其中編碼電路還用以取得參考方塊中對應於第二濾波方塊的第一參考方塊並且編碼第一參考方塊與第四濾波方塊之間的一剩餘值。
在一實施例中,上述的動作估測電路還用以取得多個粗動作向量,其中每一個粗動作向量是從第一方塊指向參考畫面的第二參考方塊。針對每一個粗動作向量,動作估測電路還用以計算所指向的第二參考方塊與第一方塊之間的第三誤差值。動作估測電路還用以取得這些第三誤差值中最小的第四誤差值,取得對應於第四誤差值的第一粗動作向量,取得多個細動作向量,並且根據這些細動作向量與第一粗動作向量產生上述的動作向量。
在一實施例中,上述的每一個粗動作向量的水平分量與垂直分量為整數,並且每一個細動作向量的水平方量與垂直分量為小於1的小數。
在一實施例中,上述的動作估測電路還用以取得一個粗動作向量與目前畫面中的第四方塊。此粗動作向量是指向參考影像的第一參考方塊。濾波器運算電路還用以根據第一參考方塊與第四方塊執行濾波器運算以取得第二濾波方塊,並且根據第二濾波方塊與第四方塊執行細節保留運算以取得一個細節保留方塊。動作估測電路還用以根據粗動作向量產生多個第一動作向量,其中每一個第一動作向量是指向參考影像的一個第二參考方塊。動作估測電路還
用以計算每一個第二參考方塊與細節保留方塊之間的一個第三誤差值,並且取得這些第三誤差值中最小的第四誤差值。編碼電路還用以取得對應於第四誤差值的第一細節保留方塊,並且根據第一細節保留方塊編碼第四方塊。
在一實施例中,上述的第一方塊屬於多個方塊類型的其中之一。動作估測電路還用以取得每一個方塊類型的多個第一動作向量,其中每一個第一動作向量是指向參考影像的一個第一參考方塊。針對每一個類型的每一個第一動作向量,動作估測電路還用以根據所指向的第一參考方塊與第一方塊計算一個第一誤差值。針對每一個類型,動作估測電路還用以取得這些第一誤差值中最小的第二誤差值,並取得對應第二誤差值的第二動作向量。這些第二動作向量為上述的動作向量。
基於上述,本發明實施例所提出的視訊編碼方法與視訊編碼裝置,可以根據濾波器運算的結果來搜尋動作向量。藉此,可以增加壓縮比與視訊品質。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1是根據一實施例說明視訊編碼裝置的方塊圖。
請參照圖1,視訊編碼裝置100是用以編碼一段視訊以產生此視訊的位元串(bit stream)。視訊編碼裝置100包
括動作估測電路112、濾波器運算電路114、動作補償電路120、內部預測與補償電路130、多工器140、剩餘值計算電路150、轉換與量化電路160、熵值編碼電路170、重建電路180、去方塊電路182與記憶體190。視訊編碼裝置100可以被配置在電腦、智慧型手機、數位攝影機、數位相機或是伺服器上,本發明並不在此限。其中動作補償電路120、內部預測與補償電路130、多工器140、剩餘值計算電路150、轉換與量化電路160、熵值編碼電路170、重建電路180與去方塊電路182亦可被合稱為編碼電路122。
動作估測電路112會接收一段影片中的目前影像S101,並且從記憶體190中取得參考影像S102。對一個目前要編碼的巨方塊(亦稱目前巨方塊)來說,動作估測電路112會以方塊為單位,根據目前影像S101與參考影像S102執行動作估測並且取得動作向量S103。換言之,當一個巨方塊被分為多個方塊時,動作向量S103的數目會大於1。
濾波器運算電路114會根據目前影像S101與參考影像S102執行一個濾波器運算。特別的是,此濾波器運算的結果會傳送給動作估測電路112,影響動作估測的結果,以下將詳細說明。
動作補償電路120會根據動作向量S103執行動作補償(motion compensation),以產生一個預測的巨方塊S104。巨方塊S104是用以去除時間冗餘。
內部預測與補償電路130是根據目前影像S101自身的資訊來產生一個預測的巨方塊S105。巨方塊S105是用
以去除空間的冗餘(spatial redundancy)。
多工器140會從巨方塊S104與巨方塊S105中選擇一個並且傳送給剩餘值計算電路150。
由於巨方塊S104與巨方塊S105都是用以預測目前巨方塊的像素值,剩餘值計算電路150會根據預測的結果來產生目前巨方塊的剩餘值。例如,剩餘值計算電路150會將目前巨方塊中所有的像素值減去預測的巨方塊中對應位置的像素值,而相減後的結果便是剩餘值S106。
轉換與量化電路160會對剩餘值S106進行轉換與量化的運算。例如,此轉換為離散餘弦轉換(discrete cosine transform)。執行完轉換與量化的運算後,轉換與量化電路160會產生係數S107。
熵值編碼電路170會對係數S107執行熵值編碼。例如,此熵值編碼包括行程長度編碼(run-length coding)、霍夫曼(huffman)編碼或算術編碼(arithmetic coding),本發明並不在此限。最後,熵值編碼電路170會產生目前巨方塊的位元串S108。
然而,視訊編碼裝置100為了與一個解碼裝置同步,在編碼完目前影像S101以後也會重建出一張影像。具體來說,重建電路180會根據預測的巨方塊S104或S105,以及係數S107產生重建影像S109。重建影像S109與目前影像S101中每一個像素值會很接近但可能有一誤差,此誤差便是量化的結果。
去方塊電路182會對重建影像S109執行去方塊
(deblocking)運算。由於重建影像S109是以巨方塊為單位重建的,因此相鄰的巨方塊之間可能會發生視覺上不連續的情形。經過去方塊運算以後,此不連續的情形便可以減輕。最後去方塊電路182會產生影像S111並且儲存在記憶體190中。當視訊編碼裝置100編碼完目前影像S101以後,會接收下一張影像,此時影像S111便可以做為下一張影像的參考影像。
在本實施例中,目前影像S101、參考影像S102與影像S111都是指一個圖框(frame)。然而,在其他實施例中,目前影像S101、參考影像S102與影像S111也可以是一個圖場(field),此外,一個巨方塊所包括的像素值可以是代表亮度或是彩度的像素值,本發明並不在此限。
圖2是根據一實施例說明方塊類型的示意圖。
請參照圖2,一個巨方塊可以被分為方塊類型301~304。在不同方塊類型中,一個巨方塊會被切割為不同數目與大小的方塊。在本實施例中,一個巨方塊的寬度與高度都是16個像素值。在其他實施例中,一個巨方塊的寬度與高度也可是32或64個像素值,在本發明並不在此限。
在方塊類型301中,一個巨分塊只被分為一個方塊,即此方塊的寬度與高度都是16個像素值。
在方塊類型302中,一個巨方塊會被分為方塊311與方塊312。方塊311與方塊312的寬度都為16個像素值,但高度為8個像素值。當進行動作估測時,動作估測電路
112會產生屬於方塊311的多個動作向量,並且會產生屬於方塊312的多個動作向量。
在方塊類型303中,一個方塊會被分為兩個方塊,並且這兩個方塊的寬度為8個像素值,高度為16個像素值。
在方塊類型304中,一個方塊會被分為4個方塊,這四個方塊的高度與寬度都是8個像素值。
動作估測電路112會從方塊類型301~304中選擇一個方塊類型來編碼一個巨方塊。此選擇的依據可以是挑選出有壓縮比最高的方塊類型,但本發明並不在此限。具體來說,當進行動作估測時,動作估測電路112會對每一個方塊類型的每一個方塊都產生多個動作向量,並且根據這些動作向量計算出多個誤差值。動作估測電路112會根據這些誤差值來挑出一個方塊類型以及對應的一或多個動作向量。舉例來說,當一個方塊中所有的像素值都很類似時,方塊類型301被選中的機率較大;當一個方塊有一個水平的邊界時,則方塊類型302被選中的機率較大。然而,在其他實施例中,動作估測電路112也可以設定其他方塊類型,本發明並不在此限。
圖3是根據一實施例說明動作估測的示意圖。
請參照圖3,動作估測電路112會先取得目前影像S101與參考影像S102。目前影像S101包括了目前要編碼的方塊201(亦稱第一方塊),參考影像S102包括參考方塊214。方塊201在目前影像S101的座標會等於參考方塊214在參考影像S102中的座標。方塊201與參考方塊214的
大小(即,寬度與高度)會相同,並且參考方塊214亦可被稱為零參考方塊。值得注意的是,方塊201會屬於一個巨方塊,而此巨方塊的方塊類型可以是方塊類型301~304中的任何一個。圖3僅是說明計算某一個方塊類型時的動作估測。
動作估測電路112會取得動作向量221~223。其中,動作向量221是從參考方塊214指向參考影像S102上的參考方塊211;動作向量222是從參考方塊214指向參考方塊212;動作向量223是從參考方塊214指向參考方塊213。動作估測電路112是要從參考方塊211~213中找到與方塊201最相似的一個。
每個動作向量221~223都包括一個水平分量與一個垂直方量。參考方塊214是對應至一個水平分量與垂直方量皆為0的動作向量。動作向量221~223的產生可以是根據任意的動作估測演算法(例如,鑽石搜尋演算法),本發明並不限制如何產生動作向量221~223。並且,動作估測電路112也可以產生數目更多或更少的動作向量,本發明並不在此限。或者,在另一實施例中,動作估測電路112也可以使用多個參考影像,動作估測電路112會在每個參考影像中產生多個動作向量。本發明也不限制參考影像的數目。
對於每一個動作向量,濾波器運算電路114都會根據所指向的參考方塊與方塊201來執行一個濾波器運算。以動作向量221為例,假設方塊201中一個像素值被表示為
C,而參考方塊211中對應的像素值被表示為R。濾波器運算電路114會根據以下方程式(1)來執行濾波器運算。
C'= w1 R+w 2 C………(1)
其中,w1與w2為實數,表示濾波器運算中的權重。在一實施例中,w1與w2的和為1,但本發明並不限制w1與w2的值。或者,濾波器運算電路114也可以用C及C周圍的8個像素值和R及R周圍的8個像素值組成C’,本發明並不限制濾波器所需的像素數目。當方塊201與參考方塊211中的每一個像素值都經過方程式(1)的運算以後,所有的像素值C’便會組成濾波方塊231(亦稱第一濾波方塊)。動作估測電路112會根據參考方塊211與濾波方塊231計算一個誤差值。例如,動作估測電路112可以計算參考方塊211與濾波方塊231之間的絕對誤差和(sum of absolute difference,SAD)。然而,動作估測電路112也可以使用絕對轉換誤差和(Sum of absolute transformed differences,SATD)來計算誤差值,本發明並不在此限。在此稱動作向量221、參考方塊221、濾波方塊231以及所產生的誤差值相互對應。在本說明書中,當稱一個誤差值對應於一個參考方塊時,是表示此誤差值是根據此參考方塊所計算出,以下不再贅述。
類似地,對於動作向量222,濾波器運算電路114會根據參考方塊212與方塊201執行如方程式(1)的濾波器運算,藉此產生一個濾波方塊(亦稱第一濾波方塊)。並且,動作估測電路112會根據參考方塊212與此濾波方塊產生
一個誤差值。
對於動作向量223,濾波器運算電路114會根據參考方塊213與方塊201執行如方程式(1)的濾波器運算,藉此產生一個濾波方塊(亦稱第一濾波方塊)。並且,動作估測電路112會根據參考方塊213與此濾波方塊產生一個誤差值。
對於每一個方塊類型,動作估測電路112都會依照上述方式產生多個誤差值。動作估測電路112會從所產生的誤差值中,找到最小的一個(亦稱第一誤差值)。在此假設動作向量221所對應的誤差值為第一誤差值。動作估測電路112會取得此第一誤差值對應的濾波方塊231(此時亦被稱為第二濾波方塊)。接下來,編碼電路122會根據濾波方塊213來編碼方塊201。
具體來說,動作補償電路120會根據動作向量221取得參考方塊211(亦稱第一參考方塊)。多工器140會將參考方塊211傳送給剩餘值計算電路150。剩餘值計算電路150會計算參考方塊211與濾波方塊231之間的剩餘值,而轉換與量化電路160與熵值編碼電路170會編碼此剩餘值。
此外,重建電路180會根據方塊201的編碼結果(例如,圖1所示的係數S107)重建出一個方塊並儲存在記憶體190中。
圖4是根據一實施例說明內部預測的示意圖。
請參照圖4,濾波方塊231的位置即是方塊201的位置。當要用內部預測的方式來編碼方塊201時,內部預測
與補償電路130會取得相鄰於方塊201的方塊401與402。方塊401與方塊402是已經編碼過並且被重建出的方塊。內部預測與補償電路130會根據方塊401與402產生一個預測方塊。剩餘值計算電路150會計算此預測方塊與濾波方塊231之間的剩餘值。接下來,轉換與量化電路160與熵值編碼電路170會編碼這些剩餘值。
圖5是根據第一實施例說明視訊編碼方法的流程圖。
請參照圖5,在步驟S502中,動作估測電路110會取得目前影像與參考影像,其中目前影像包括一個第一方塊。
在步驟S504中,動作估測電路110會取得多個動作向量,其中每一個動作向量是指向參考影像的一個參考方塊。
在步驟S506中,針對每一個動作向量,濾波器運算電路114會根據所指向的參考方塊與第一方塊執行濾波器運算以產生一個第一濾波方塊;並且動作估測電路112會根據所指向的參考方塊與對應的第一濾波方塊產生一個誤差值。
在步驟S508中,動作估測電路110會取得這些誤差值中最小的一個第一誤差值,並且取得對應於第一誤差值的第二濾波方塊。
在步驟S510中,編碼電路122會根據第二濾波方塊編碼第一方塊。值得注意的是,在此所指的是根據第二濾波方塊來產生代表第一方塊的位元串,並不一定是編碼第一方塊中的像素值。例如,編碼電路122是編碼第二濾波
方塊與一個參考方塊之間的剩餘值來產生代表第一方塊的位元串。
然而,圖5中各步驟已詳細說明如上,在此便不再贅述。
第二實施例與第一實施例類似,在此僅描述不同之處。在第二實施例中,當做完動作估測以後,視訊編碼裝置100還會使用零參考方塊來編碼一個方塊。
圖6A是根據一實施例說明根據零參考方塊來編碼一個方塊的示意圖。
請參考圖3與圖6A,在此假設做完動作估測以後,動作向量221所對應的誤差值最小。當濾波器運算電路114根據參考方塊211與方塊201執行上述方程式(1)的濾波器運算以取得濾波方塊231以後,還會取得零參考方塊214。濾波器運算電路114會根據方塊201與零參考方塊再執行一次濾波器運算,以得到濾波方塊601(亦稱第三濾波方塊)。並且,濾波器運算電路114會根據濾波方塊231與濾波方塊601再執行一次濾波器運算,以得到濾波方塊602(亦稱第四濾波方塊)。接下來,剩餘值計算電路150會計算參考方塊211與濾波方塊602之間的剩餘值603。而轉換與量化電路160與熵值編碼電路170會編碼剩餘值603。
值得注意的是,圖6A所示的實施例中共執行了三次
濾波器運算,然而每一次濾波器運算中的權重w1與w2都可以不同,本發明並不在此限。
圖6B是根據第二實施例說明內部預測的示意圖。
請參照圖6B,濾波方塊602的位置就是方塊201的位置。當要用內部預測的方式來編碼方塊201時,內部預測與補償電路130會取得相鄰於方塊201的方塊401與402。內部預測與補償電路130會根據方塊401與402產生一個預測方塊。剩餘值計算電路150會計算此預測方塊與濾波方塊602之間的剩餘值。接下來,轉換與量化電路160與熵值編碼電路170會編碼這些剩餘值。
第三實施例與第一實施例類似,在此僅描述不同之處。在第三實施例中,在做動作估測時,不僅會使用濾波器運算,也會使用一個細節保留運算,藉此增加影像的銳利度。
如圖3的實施例所示,以動作向量221為例,動作估測電路112會取得對應動作向量211的濾波方塊231。此外,濾波器運算電路114會根據濾波方塊231與方塊201執行細節保留運算以產生一個細節保留方塊。
舉例來說,濾波器運算電路114會先對方塊201執行一個邊緣偵測以取得在邊緣的像素值。濾波器運算電路114可以根據方程式(2),將這些邊緣的像素值與濾波方塊231中的像素值合成出細節保留方塊。
C"=w 1 C+w 2 C'………(2)
其中,C為方塊201中的一個像素值。C’為濾波方塊231中的一個像素值。C”為細節保留方塊中的一個像素值。
然而,在其他實施例中,濾波器運算電路114也可以使用其他演算法來將方塊201的細節加入至濾波方塊231,本發明並不在此限。
取得細節保留方塊以後,動作估測電路112會計算此細節保留方塊與參考方塊211之間的誤差值。此外,對於動作向量222與223,動作估測電路112與濾波器運算電路114也會根據上述方式取得對應的誤差值。
圖7是根據第三實施例說明視訊編碼方法的流程圖。
請參照圖7,在步驟S702中,動作估測電路112會先取得一個動作向量。
在步驟S704中,濾波器運算電路114會根據目前影像S101的一個方塊與上述動作向量所指向的參考方塊來執行濾波器運算,藉此產生一個濾波方塊。
在步驟S706中,濾波器運算電路114會根據此濾波方塊與目前影像S101的方塊來執行細節保留運算,藉此產生一個細節保留方塊。
在步驟S708中,動作估測電路112會計算參考方塊與細節保留方塊之間的誤差值。
在步驟S710,動作估測電路112會判斷在一個方塊類型中,是否還有其他的動作向量要計算。若是,則動作估測電路112會回到步驟S702。若否,則動作估測電路112
會進行步驟S712。
在步驟S712中,動作估測電路112會判斷是否還有其他的方塊類型要計算。若是,則動作估測電路112會回到步驟S702。若否,則動作估測電路112會進行步驟S714。
在步驟S714中,動作估測電路112會從所計算的多個誤差值中,取得最小的第一誤差值。
在步驟S716中,濾波器運算電路114會取得對應第一誤差值的濾波方塊。在本實施例中,濾波器運算電路114會根據參考影像S102與目前影像S101重新計算濾波方塊。然而,在其他實施例中,濾波器運算電路114也可以在先前的步驟S704中將濾波方塊儲存在記憶體190中,如此一來,在步驟S716中便可以從記憶體190中讀取所需要的濾波方塊。
在步驟S718中,濾波器運算電路114會根據濾波方塊與目前的方塊(例如,方塊201)來執行細節保留運算,以取得一個細節保留方塊。
在步驟S720中,編碼電路122會根據細節保留方塊來編碼目前的方塊。例如,剩餘值計算電路150會計算對應的參考方塊(例如,參考方塊211)與細節保留方塊之間的剩餘值。而轉換與量化電路160與熵值編碼電路170會編碼此剩餘值。或者,編碼電路122也可以依照第二實施例的方式,再使用一個零參考方塊來編碼目前的方塊,本發明並不在此限。
圖7中各步驟的細節已詳細說明如上,在此便不再重
複贅述。
第四實施例與第一實施例相似,在此僅描述不同之處。在第一範例實施例中,濾波器運算電路114對於每一個方塊類型的每一個動作向都會執行濾波器運算。然而,在第四實施例中,濾波器運算電路114僅會對每一個方塊類型執行一次濾波器運算。
圖8是根據第四實施例說明視訊編碼方法的流程圖。
請參照圖8,在步驟S802中,動作估測電路112會取得一個動作向量(亦稱第一動作向量)。
在步驟S804中,動作估測電路112會根據此動作向量,計算所指向的參考方塊(亦稱第一參考方塊)與目前的方塊之間的誤差值(亦稱第一誤差值)。
在步驟S806,動作估測電路112會判斷是否還有其他的動作向量。若是,則動作估測電路112會回到步驟S802。若否,則動作估測電路112會執行步驟S808。
在步驟S808中,動作估測電路112會從目前產生的誤差值中選出最小的誤差值(亦稱第二誤差值),並且取得對應此最小誤差值的動作向量(亦稱第二動作向量)。
在步驟S810中,濾波器運算電路114會根據步驟S808中取得的動作向量取得一個參考方塊,並根據此參考方塊與目前要編碼的方塊執行濾波器運算,藉此產生一個濾波方塊。
在步驟S812中,濾波器運算電路114會根據此濾波方塊與目前要編碼的方塊執行細節保留運算,藉此產生一個細節保留方塊。
在步驟S814中,濾波器運算電路114會根據此細節保留方塊與對應的參考方塊之間的誤差值。
在步驟S816中,動作估測電路112會判斷是否還有其他的方塊類型要計算。若是,則動作估測電路112會回到步驟S802。若否,則動作估測電路112會進行步驟S818。
在步驟S818中,動作估測電路112會從所產生的誤差值(其數目等於方塊類型的數目)中,取得最小的一個。在步驟S820中,濾波器運算電路114會取得最小誤差值所對應的濾波方塊。在步驟S822中,濾波器運算電路114會取得對應最小誤差值的細節保留方塊。在步驟S824中,編碼電路122會根據此細節保留方塊來編碼目前的方塊。
圖8中各步驟的細節已詳細說明如上,在此便不再重複贅述。
第五實施例與第一實施例類似,在此僅說明不同之處。在第五實施例中,一個動作向量可以被分為粗動作向量(coarse motion vector)與細動作向量(fined motion vector)。動作估測電路112會在搜尋完粗動作向量以後執行濾波器運算,接著再搜尋細動作向量。
圖9是根據一實施例說明粗動作向量與細動作向量的
示意圖。
請參照圖9,在動作估測的運算中,動作估測電路112會先產生粗動作向量901~903。每一個粗動作向量都會指向一個參考方塊(亦稱第二參考方塊),例如方塊912與913。動作估測電路112會計算粗動作向量所指向的參考方塊與目前的方塊(即,方塊201)之間的誤差值(亦稱第三誤差值)。動作估測電路112會從這些誤差值中找到最小的一個(亦稱第四誤差值)。在此假設此最小誤差值所對應的是粗動作向量901(此時亦稱第一粗動作向量)。動作估測電路112會再產生細動作向量921與922,並根據這些細動作向量921~922與粗動作向量901產生多個動作向量。例如,動作估測電路112會將細動作向量921與粗動作向量901相加,以產生動作向量931。換言之,動作估測電路112是先用粗動作向量做大範圍的搜尋。接著再用細動作向量做小範圍的搜尋。
例如,粗動作向量901的水平分量與垂直分量都為整數,而細動作向量902的水平分量與垂直分量都為小於1的小數。然而,在另一實施例中,粗動作向量901的水平分量與垂直分量都大於一個臨界值(例如,3個像素值),而細動作向量902的水平分量與垂直分量都小於此臨界值,本發明並不在此限。或者,一個動作向量可以由多個粗動作向量與多個細動作向量組成,本發明並不在此限。
圖10是根據第五實施例說明視訊編碼方法的流程圖。
請參考圖10,在步驟S1002中,動作估測電路112
會先取得一個粗動作向量。
在步驟S1004中,動作估測電路112會根據此粗動向量,計算所指向的參考方塊與目前編碼的方塊(亦稱第四方塊)之間的誤差值。
在步驟S1006中,動作估測電路112會判斷是否還有其他的粗動作向量。若是,則動作估測電路112會回到步驟S1002。若否,則動作估測電路112會進行步驟S1008。
在步驟S1008中,動作估測電路112會從多個粗動作向量產生的誤差值中取得最小的誤差值,並且取得所對應的粗動作向量。
在步驟S1010中,濾波器運算電路114會根據步驟S1008中所取得的粗動作向量所指向的參考方塊(亦稱第一參考方塊),並根據此參考方塊與目前編碼的方塊執行濾波器運算,藉此取得一個濾波方塊(亦稱第二濾波方塊)。
在步驟S1012中,濾波器運算電路114會根據所取得的濾波方塊與目前的方塊執行細節保留運算,藉此產生一個細節保留方塊。
在步驟S1014中,動作估測電路112會取得一個細動作向量,並將此細動作向量加入步驟S1008所取得的粗動作向量,藉此取得一個新的動作向量(亦稱第一動作向量)。
在步驟S1016中,動作估測電路112會取得此新動作向量所指向的參考方塊(亦稱第二參考方塊),並根據此參考方塊與目前的方塊計算出一個誤差值(亦稱第三誤差值)。
在步驟S1018中,動作估測電路112會判斷是否有其他的細動作向量。若是,動作估測電路112會回到步驟S1014。若否,動作估測電路112會進行步驟S1020。
在步驟S1020中,動作估測電路112會判斷是否有其他方塊類型。若是,動作估測電路112會回到步驟S1002。若否,則會進行步驟S1022。
在步驟S1022中,動作估測電路112會從多個誤差值(其數目等於方塊類型的數目乘上一個方塊類型中細動作向量的數目)中取得最小的一個(亦稱第四誤差值),並且取得對應的一個動作向量。此動作向量是指向一個參考方塊。濾波器運算電路114會根據此參考方塊與目前的方塊執行濾波器運算以產生濾波方塊,並且根據此濾波方塊與前的方塊產生一個細節保留方塊(亦稱第一細節保留方塊),最後會根據此第一細節保留方塊編碼目前的方塊。
然而,圖10中各步驟的細節已詳細說明如上,在此便不再重複贅述。
第六實施例與第五實施例類似,在此僅說明不同之處。
圖11是根據第六實施例說明視訊編碼方法的流程圖。
請參照圖11,在步驟S1102,動作估測電路112會取得一個粗動作向量。
在步驟S1104中,動作估測電路112會根據此粗動作
向量計算一個誤差值。
在步驟S1106中,動作估測電路112會判斷是否有其他粗動作向量。若是,則動作估測電路112會回到步驟S1102。若否,則動作估測電路112會進行步驟S1108。
在步驟S1108中,動作估測電路112會從所產生的誤差值中取得最小的一個,並且取得對應的粗動作向量。
在步驟S1110中,動作估測電路112會取得一個細動作向量,並且加入至步驟S1108所取得的粗動作向量,藉此產生一個新的動作向量。
在步驟S1112,濾波器運算電路114會根據新的動作向量執行濾波器運算以產生一個濾波方塊。
在步驟S1114,濾波器運算電路114會根據上述的濾波器方塊與目前要編碼的方塊執行細節保留運算,藉此產生一個細節保留方塊。
在步驟S1116中,動作估測電路112會根據此新的動作向量取得一個參考方塊,並計算此參考方塊與細節保留方塊之間的誤差值。
在步驟S118中,動作估測電路112會判斷是否還有其他細動作向量。若是,則動作估測電路112會回到步驟S1110。若否,則動作估測電路112會進行步驟S1120。
在步驟S1120中,動作估測電路112會判斷是否有其他的方塊類型。若是,則動作估測電路112會回到步驟S1102。若否,則動作估測電路112會進行步驟S1122。
在步驟S1122中,動作估測電路112會從所產生的誤
差值(其數目等於方塊類型的數目乘上每個方塊類型中細動作向量的數目)中取得最小的一個。濾波器運算電路114會取得所對應的濾波方塊與細節保留方塊。最後,編碼電路122會根據細節保留方塊編碼目前的方塊。
然而,圖11中各步驟的細節已詳細說明如上,在此便不再重複贅述。
在另一實施例中,上述視訊編碼裝置100中各個電路的功能可以被實作為多個程式碼。這些程式碼被儲存在一個記憶體中,由一個處理器來執行。本發明並不限制要用硬體或軟體來實作。
綜上所述,本發明實施例所提出的視訊編碼方法與視訊編碼系統,可以在動作估測的過程中同時加入濾波器運算。藉此,動作估測所找到是經過濾波器運算且壓縮比最高的動作向量。如此一來,可以增加視訊品質與壓縮比。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100‧‧‧視訊編碼裝置
112‧‧‧動作估測電路
114‧‧‧濾波器運算電路
120‧‧‧動作補償電路
130‧‧‧內部預測與補償電路
140‧‧‧多工器
150‧‧‧剩餘值計算電路
160‧‧‧轉換與量化電路
170‧‧‧熵值編碼電路
180‧‧‧重建電路
182‧‧‧去方塊電路
190‧‧‧記憶體
S101‧‧‧目前影像
S102‧‧‧參考影像
S103‧‧‧動作向量
S104、S105‧‧‧巨方塊
S106‧‧‧剩餘值
S107‧‧‧係數
S108‧‧‧位元串
S109‧‧‧重建影像
S111‧‧‧影像
301~303‧‧‧方塊類型
311、312、201、214、401~403‧‧‧方塊
211~213、912、913‧‧‧參考方塊
221~223、931‧‧‧動作向量
231、601、602‧‧‧濾波方塊
S502、S504、S506、S508、S510、S702、S704、S706、S708、S710、S712、S714、S716、S718、S720、S802、S804、S806、S808、S810、S812、S814、S818、S820、S822、S824、S1002、S1004、S1006、S1008、S1010、S1012、S1014、S1016、S1018、S1020、S1022、S1102、S1104、S1106、S1108、S1110、S1112、S1114、S1116、S1118、S1120、S1122‧‧‧視訊編碼方法的步驟
603‧‧‧剩餘值
901~903‧‧‧粗動作向量
921、922‧‧‧細動作向量
圖1是根據一實施例說明視訊編碼裝置的方塊圖。
圖2是根據一實施例說明方塊類型的示意圖。
圖3是根據一實施例說明動作估測的示意圖。
圖4是根據一實施例說明內部預測的示意圖。
圖5是根據第一實施例說明視訊編碼方法的流程圖。
圖6A是根據一實施例說明根據零參考方塊來編碼一個方塊的示意圖。
圖6B是根據第二實施例說明內部預測的示意圖。
圖7是根據第三實施例說明視訊編碼方法的流程圖。
圖8是根據第四實施例說明視訊編碼方法的流程圖。
圖9是根據一實施例說明粗動作向量與細動作向量的示意圖。
圖10是根據第五實施例說明視訊編碼方法的流程圖。
圖11是根據第六實施例說明視訊編碼方法的流程圖。
S502、S504、S506、S508、S510‧‧‧視訊編碼方法的步驟
Claims (16)
- 一種視訊編碼的方法,用於一視訊編碼裝置,包括:取得一目前影像與一參考影像,其中該目前影像包括一第一方塊;取得多個動作向量,其中每一該些動作向量是指向該參考影像的一參考方塊;針對每一該些動作向量,根據所指向的該參考方塊與該第一方塊執行一濾波器運算以產生一第一濾波方塊,並且根據所指向的該參考方塊與對應的該第一濾波方塊計算一誤差值;取得該些誤差值中最小的一第一誤差值,並且取得該些第一濾波方塊中對應於該第一誤差值的一第二濾波方塊;以及根據該第二濾波方塊編碼該第一方塊。
- 如申請專利範圍第1項所述之視訊編碼方法,其中針對每一該些動作向量,根據所指向的該參考方塊與對應的該第一濾波方塊計算該誤差值的步驟包括:根據對應的該第一濾波方塊與該第一方塊執行一細節保留運算,以取得一細節保留方塊;以及計算該細節保留方塊與所指向的該參考方塊之間的該誤差值,其中在根據該第二濾波方塊編碼該第一方塊的步驟包括:取得該些參考方塊中對應於該第二濾波方塊的 一第一參考方塊;取得對應該第二濾波方塊的該細節保留方塊;以及編碼該細節保留方塊與該第一參考方塊之間的一剩餘值。
- 如申請專利範圍第1項所述之視訊編碼方法,其中根據該第二濾波方塊編碼該第一方塊的步驟包括:取得該參考影像中的一零參考方塊,其中該零參考方塊在該參考影像的座標等於該第一方塊在該目前影像的座標;根據該零參考方塊與該第一方塊執行該濾波器運算以取得一第三濾波方塊;根據該第二濾波方塊與該第三濾波方塊執行該濾波器運算以取得一第四濾波方塊;取得該些參考方塊中對應於該第二濾波方塊的一第一參考方塊;以及編碼該第一參考方塊與該第四濾波方塊之間的一剩餘值。
- 如申請專利範圍第1項所述之視訊編碼方法,其中根據該第二濾波方塊編碼該第一方塊的步驟包括:取得該參考影像中的一零參考方塊,其中該零參考方塊在該參考影像的座標等於該第一方塊在該目前影像的座標;根據該零參考方塊與該第一方塊執行該濾波器運算 以取得一第三濾波方塊;根據該第二濾波方塊與該第三濾波方塊執行該濾波器運算以取得一第四濾波方塊;取得在該目前影像中相鄰於該第一方塊的一第二方塊;以及根據該第二方塊預測該第四濾波方塊以取得一剩餘值,並且編碼該剩餘值。
- 如申請專利範圍第1項所述之視訊編碼方法,其中在取得該些動作向量的步驟之前,還包括:取得多個粗動作向量,其中每一該些粗動作向量是指向該參考畫面的一第二參考方塊;針對每一該些粗動作向量,計算所指向的該第二參考方塊與該第一方塊之間的一第三誤差值;取得該些第三誤差值中最小的一第四誤差值,並且取得該些粗動作向量中對應於該第四誤差值的一第一粗動作向量;以及取得多個細動作向量,並且根據該些細動作向量與該第一粗動作向量產生該些動作向量。
- 如申請專利範圍第5項所述之視訊編碼方法,其中每一該些粗動作向量的一水平分量與一垂直分量為整數,並且每一該些細動作向量的一水平方量與一垂直分量為小於1的小數。
- 如申請專利範圍第1項所述之視訊編碼方法,更包括: 取得一粗動作向量與該目前畫面中的一第四方塊,其中該粗動作向量是指向該參考影像的一第一參考方塊;根據該第一參考方塊與該第四方塊執行該濾波器運算以取得一第二濾波方塊;根據該第二濾波方塊與該第四方塊執行一細節保留運算以取得一細節保留方塊;根據該粗動作向量產生多個第一動作向量,其中每一該些第一動作向量是指向該參考影像的一第二參考方塊;計算每一該些第二參考方塊與該細節保留方塊之間的一第三誤差值;取得該些第三誤差值中最小的一第四誤差值,並且取得對應於該第四誤差值的一第一細節保留方塊;以及根據該第一細節保留方塊編碼該第四方塊。
- 如申請專利範圍第1項所述之視訊編碼方法,其中該第一方塊屬於多個方塊類型的其中之一,其中在取得該些動作向量的步驟之前,該視訊編碼方法還包括:取得每一該些方塊類型的多個第一動作向量,其中每一該些第一動作向量是指向該參考影像的一第一參考方塊;針對每一該些類型的每一該些第一動作向量,根據所指向的該第一參考方塊與該第一方塊計算一第一誤差值;以及針對每一該些類型,取得該些第一誤差值中最小的一第二誤差值,並取得該些第一動作向量中對應該第二誤差 值的一第二動作向量,其中該些第二動作向量為該些動作向量。
- 一種視訊編碼裝置,包括:一動作估測電路,用以取得一目前影像與一參考影像,其中該目前影像包括一第一方塊;一濾波器運算電路,耦接至該動作估測電路,用以執行一濾波器運算;以及一編碼電路,耦接至該動作估測電路與該濾波器運算電路,其中該動作估測電路用以取得多個動作向量,其中每一該些動作向量是指向該參考影像的一參考方塊,其中針對每一該些動作向量,該濾波器運算電路用以根據所指向的該參考方塊與該第一方塊執行該濾波器運算以產生一第一濾波方塊,並且該動作估測電路用以根據所指向的該參考方塊與對應的該第一濾波方塊計算一誤差值,其中該動作估測電路用以取得該些誤差值中最小的一第一誤差值,並且該濾波器運算電路用以取得該些第一濾波方塊中對應於該第一誤差值的一第二濾波方塊,其中該編碼電路用以根據該第二濾波方塊編碼該第一方塊。
- 如申請專利範圍第9項所述之視訊編碼裝置,其中針對每一該些動作向量,該濾波器運算電路還用以根據對應的該第一濾波方塊與該第一方塊執行一細節保留運算 以取得一細節保留方塊,並且該動作估測電路還用以計算該細節保留方塊與所指向的該參考方塊之間的該誤差值,其中該編碼電路還用以取得該些參考方塊中對應於該第二濾波方塊的一第一參考方塊,取得對應該第二濾波方塊的該細節保留方塊,並且編碼該細節保留方塊與該第一參考方塊之間的一剩餘值。
- 如申請專利範圍第9項所述之視訊編碼裝置,其中該濾波器運算電路還用以取得該參考影像中的一零參考方塊,其中該零參考方塊在該參考影像的座標等於該第一方塊在該目前影像的座標,其中該濾波器運算電路還用以該根據該零參考方塊與該第一方塊執行該濾波器運算以取得一第三濾波方塊,根據該第二濾波方塊與該第三濾波方塊執行該濾波器運算以取得一第四濾波方塊,其中該編碼電路還用以取得該些參考方塊中對應於該第二濾波方塊的一第一參考方塊並且編碼該第一參考方塊與該第四濾波方塊之間的一剩餘值。
- 如申請專利範圍第9項所述之視訊編碼裝置,其中該濾波器運算電路還用以取得該參考影像中的一零參考方塊,其中該零參考方塊在該參考影像的座標等於該第一方塊在該目前影像的座標,其中該濾波器運算電路還用以該根據該零參考方塊與該第一方塊執行該濾波器運算以取得一第三濾波方塊,根據該第二濾波方塊與該第三濾波方塊執行該濾波器運算 以取得一第四濾波方塊,其中該編碼電路還用以取得在該目前影像中相鄰於該第一方塊的一第二方塊,根據該第二方塊預測該第四濾波方塊以取得一剩餘值,並且編碼該剩餘值。
- 如申請專利範圍第9項所述之視訊編碼裝置,其中該動作估測電路還用以取得多個粗動作向量,其中每一該些粗動作向量是指向該參考畫面的一第二參考方塊,其中,針對每一該些粗動作向量,該動作估測電路還用以計算所指向的該第二參考方塊與該第一方塊之間的一第三誤差值,其中,該動作估測電路還用以取得該些第三誤差值中最小的一第四誤差值,取得該些粗動作向量中對應於該第四誤差值的一第一粗動作向量,取得多個細動作向量,並且根據該些細動作向量與該第一粗動作向量產生該些動作向量。
- 如申請專利範圍第13項所述之視訊編碼裝置,其中每一該些粗動作向量的一水平分量與一垂直分量為整數,並且每一該些細動作向量的一水平方量與一垂直分量為小於1的小數。
- 如申請專利範圍第9項所述之視訊編碼裝置,其中該動作估測電路還用以取得一粗動作向量與該目前畫面中的一第四方塊,其中該粗動作向量是指向該參考影像的一第一參考方塊,其中該濾波器運算電路還用以根據該第一參考方塊 與該第四方塊執行該濾波器運算以取得一第二濾波方塊,並且根據該第二濾波方塊與該第四方塊執行一細節保留運算以取得一細節保留方塊,其中該動作估測電路還用以根據該粗動作向量產生多個第一動作向量,其中每一該些第一動作向量是指向該參考影像的一第二參考方塊,其中該動作估測電路還用以計算每一該些第二參考方塊與該細節保留方塊之間的一第三誤差值,取得該些第三誤差值中最小的一第四誤差值,其中該編碼電路還用以取得對應於該第四誤差值的一第一細節保留方塊,並且根據該第一細節保留方塊編碼該第四方塊。
- 如申請專利範圍第9項所述之視訊編碼裝置,其中該第一方塊屬於多個方塊類型的其中之一,其中該動作估測電路還用以取得每一該些方塊類型的多個第一動作向量,其中每一該些第一動作向量是指向該參考影像的一第一參考方塊,針對每一該些類型的每一該些第一動作向量,該動作估測電路還用以根據所指向的該第一參考方塊與該第一方塊計算一第一誤差值,針對每一該些類型,該動作估測電路還用以取得該些第一誤差值中最小的一第二誤差值,並取得該些第一動作向量中對應該第二誤差值的一第二動作向量,其中該些第二動作向量為該些動作向量。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW101127294A TW201406166A (zh) | 2012-07-27 | 2012-07-27 | 視訊編碼方法與視訊編碼裝置 |
US13/655,427 US9549205B2 (en) | 2012-07-27 | 2012-10-18 | Method and device for encoding video |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW101127294A TW201406166A (zh) | 2012-07-27 | 2012-07-27 | 視訊編碼方法與視訊編碼裝置 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201406166A true TW201406166A (zh) | 2014-02-01 |
Family
ID=49994887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101127294A TW201406166A (zh) | 2012-07-27 | 2012-07-27 | 視訊編碼方法與視訊編碼裝置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9549205B2 (zh) |
TW (1) | TW201406166A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5890794B2 (ja) * | 2013-02-28 | 2016-03-22 | 株式会社東芝 | 画像処理装置 |
US10477235B2 (en) | 2017-07-11 | 2019-11-12 | Novatek Microelectronics Corp. | Video encoding apparatus and video encoding method that perform filtering operation during video encoding process |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5151784A (en) * | 1991-04-30 | 1992-09-29 | At&T Bell Laboratories | Multiple frame motion estimation |
KR100631777B1 (ko) | 2004-03-31 | 2006-10-12 | 삼성전자주식회사 | 다 계층의 모션 벡터를 효율적으로 압축하는 방법 및 장치 |
RU2472305C2 (ru) | 2007-02-23 | 2013-01-10 | Ниппон Телеграф Энд Телефон Корпорейшн | Способ кодирования видео и способ декодирования видео, устройства для этого, программы для этого и носители хранения, на которых хранятся программы |
WO2008140656A2 (en) * | 2007-04-03 | 2008-11-20 | Gary Demos | Flowfield motion compensation for video compression |
US20090245374A1 (en) * | 2008-03-26 | 2009-10-01 | Mediatek Inc. | Video encoder and motion estimation method |
CN102067605B (zh) | 2008-08-01 | 2014-05-07 | 卓瑞公司 | 用集成的时间滤波器降噪的视频编码器 |
US9078007B2 (en) * | 2008-10-03 | 2015-07-07 | Qualcomm Incorporated | Digital video coding with interpolation filters and offsets |
KR101538704B1 (ko) * | 2009-01-28 | 2015-07-28 | 삼성전자주식회사 | 보간 필터를 적응적으로 사용하여 영상을 부호화 및 복호화하는 방법 및 장치 |
US8320455B2 (en) | 2009-03-05 | 2012-11-27 | Qualcomm Incorporated | System and method to process motion vectors of video data |
CN102316317B (zh) * | 2010-07-10 | 2013-04-24 | 华为技术有限公司 | 一种生成图像预测值的方法和装置 |
JP5563403B2 (ja) | 2010-08-12 | 2014-07-30 | 日本電信電話株式会社 | 映像符号化方法,映像復号方法,映像符号化装置,映像復号装置およびそれらのプログラム |
TW201223249A (en) | 2010-09-24 | 2012-06-01 | Qualcomm Inc | Coding stereo video data |
-
2012
- 2012-07-27 TW TW101127294A patent/TW201406166A/zh unknown
- 2012-10-18 US US13/655,427 patent/US9549205B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US9549205B2 (en) | 2017-01-17 |
US20140029669A1 (en) | 2014-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI759389B (zh) | 用於視訊寫碼之低複雜度符號預測 | |
KR100714698B1 (ko) | 향상된 움직임 추정 방법, 상기 방법을 이용한 비디오인코딩 방법 및 장치 | |
JP2018524918A (ja) | 画像予測方法および画像予測装置 | |
WO2010064396A1 (ja) | 動画像復号化方法および動画像符号化方法 | |
TWI477107B (zh) | 圖像編碼方法、圖像解碼方法、圖像編碼裝置、圖像解碼裝置、圖像編碼程式,及圖像解碼程式 | |
CN112602326A (zh) | 一种运动矢量预测方法、装置与编解码器 | |
JP6527460B2 (ja) | 映像符号化装置、映像符号化方法及び映像符号化プログラム | |
US20150350670A1 (en) | Coding apparatus, computer system, coding method, and computer product | |
RU2487489C2 (ru) | Способ поиска векторов перемещений в динамических изображениях | |
TWI510050B (zh) | 量化控制裝置及方法,以及量化控制程式 | |
JP6339977B2 (ja) | 映像符号化装置及び映像符号化プログラム | |
TW201406166A (zh) | 視訊編碼方法與視訊編碼裝置 | |
JP6259272B2 (ja) | 映像符号化装置及び映像符号化プログラム | |
JP6176044B2 (ja) | ブロック構造決定回路および情報圧縮回路 | |
JP2019208090A (ja) | 映像符号化装置、映像復号装置及びプログラム | |
US11528485B2 (en) | Encoding apparatus and program | |
WO2014156647A1 (ja) | 複数の入力画像をエンコーディングする方法、プログラムを格納する記憶媒体および装置 | |
JP2017103723A (ja) | 符号化装置、復号装置、及びプログラム | |
JP6004852B2 (ja) | ピクセルブロックを符号化及び再構成する方法と装置 | |
JP5622613B2 (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム | |
CN103581689A (zh) | 视频编码方法与视频编码装置 | |
JP2018182435A (ja) | 動きベクトル予測装置及びコンピュータプログラム | |
JP6549516B2 (ja) | 映像符号化装置、映像符号化方法及び映像符号化プログラム | |
JP2010166275A (ja) | 画像符号化装置 | |
TWI646823B (zh) | 視訊壓縮方法及視訊壓縮裝置 |