TWI565303B - 影像處理系統及影像處理方法 - Google Patents

影像處理系統及影像處理方法 Download PDF

Info

Publication number
TWI565303B
TWI565303B TW104127478A TW104127478A TWI565303B TW I565303 B TWI565303 B TW I565303B TW 104127478 A TW104127478 A TW 104127478A TW 104127478 A TW104127478 A TW 104127478A TW I565303 B TWI565303 B TW I565303B
Authority
TW
Taiwan
Prior art keywords
image processing
block
frame buffer
temporary storage
storage area
Prior art date
Application number
TW104127478A
Other languages
English (en)
Other versions
TW201709735A (zh
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 TW104127478A priority Critical patent/TWI565303B/zh
Priority to US15/208,799 priority patent/US10026149B2/en
Application granted granted Critical
Publication of TWI565303B publication Critical patent/TWI565303B/zh
Publication of TW201709735A publication Critical patent/TW201709735A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • 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
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • 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/102Methods 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/115Selection of the code volume for a coding unit prior to coding
    • 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/423Methods 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 characterised by memory arrangements
    • H04N19/426Methods 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 characterised by memory arrangements using memory downsizing methods
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00Solving problems of bandwidth in display systems
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/122Tiling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream

Description

影像處理系統及影像處理方法
本發明與影像處理技術相關,並且尤其與用以儲存影像資料的框緩衝器相關。
隨著各類數位電子產品的蓬勃發展,目前的影音多媒體資料大多是以數位格式存在。影音資料的數位檔案通常相當龐大,且解析度愈高者資料量愈大。舉例來說,於視訊電話或數位電視等的應用中,這些影音資料通常以串流的方式經由無線網路傳輸,由於資料量很高,可能導致傳輸頻寬不足的問題。因此,在傳送端會採用數位影音編碼技術將這些影音資料編碼之後再行傳輸,目前廣為應用的數位影音編碼技術例如為MPEG-4、H.264等。
當接收端接收到被影音編碼後的資料,令解碼器將編碼後的資料解碼還原為傳送端發送的影音資料。許多接收端會使用雙倍資料率同步動態隨機存取記憶體(Double Data Rate Synchronous Dynamic Random Access Memory,DDR SDRAM)等儲存裝置做為緩衝器(buffer)來暫存還原後的影音資料,以供後續的影像處理程序使用。
解碼後的影音資料包含多個視訊框,儲存於框緩衝器中,每個視訊框被定義為具有多個影像區塊,每個影像區塊作為視訊框被存取的單位,供進行後續的影像處理程序,例如圖一(A)中的視訊框包含影像區塊(0,0)~影像區塊(M,N),而每個影像區塊的大小是固定的。
然而,由於影音資料的資料量龐大,所耗費的框緩衝器空間也大;另一方面,在進行影像處理程序時,若希望提高自框緩衝器存取影音資料的速度,便需要採用頻寬較大、但也較為昂貴的記憶體。如此一來無疑會造成硬體系統的整體成本上升。
為解決上述問題,本發明提出一種新的視訊框緩衝器及動態影像處理系統。
根據本發明之一具體實施例為一種影像處理系統,用以針對多個影像區塊進行一影像處理程序。該多個影像區塊中之每一影像區塊包含複數個第一類編碼區塊與至少一第二類編碼區塊。該影像處理系統包含一影像處理模組、一框緩衝編碼模組、一框緩衝器與一框緩衝控制器。該影像處理模組對一目標影像區塊中之複數個第一類編碼區塊施以影像處理,以產生一組第一影像處理結果。該框緩衝編碼模組對該組第一影像處理結果施以框緩衝編碼,以產生一組第一框緩衝編碼結果。該框緩衝器對應於該目標影像區塊設有一第一暫存區域以及一第二暫存區域。該第一暫存區域具有至少一第一隨機存取點。該第二暫存區域具有至少一第二隨機存取點,獨立於該至少一第一隨機存取點。該框緩衝控制器令該組第一框緩衝編碼結果被存入該框緩衝器中之該第一暫存區域,並且令該目標影像區塊之至少一第二類編碼區塊被存入該框緩衝器中之該第二暫存區域。
根據本發明之另一具體實施例為一種影像處理方法,用以配合一框緩衝器針對多個影像區塊進行一影像處理程序。該多個影像區塊中之每一影像區塊包含複數個第一類編碼區塊與至少一第二類編碼區塊。該框緩衝器對應於一目標影像區塊設有一第一暫存區域以及一第二暫存區域。該第一暫存區域具有至少一第一隨機存取點。該第二暫存區域具有至少一第二隨機存取點,獨立於該至少一第一隨機存取點。首先,該目標影像區塊中之複數個第一類編碼區塊被施以影像處理,以產生一組第一影像處理 結果。接著,該組第一影像處理結果被施以框緩衝編碼,以產生一組第一框緩衝編碼結果。隨後,該組第一框緩衝編碼結果被存入該框緩衝器中該第一暫存區域,且該目標影像區塊之至少一第二類編碼區塊被存入該框緩衝器中之該第二暫存區域。
關於本發明的優點與精神可以藉由以下發明詳述及所附圖式得到進一步的瞭解。
300、500‧‧‧影像處理系統
31、51‧‧‧框緩衝器
32、52‧‧‧框緩衝控制器
33、53‧‧‧影像解碼模組
34、54‧‧‧影像處理模組
35、55‧‧‧框緩衝編碼模組
410‧‧‧第一暫存區域
420‧‧‧第二暫存區域
S71~S74‧‧‧流程步驟
圖一(A)為一畫面被分割為多個影像區塊之示意圖。
圖一(B)為一影像區塊被分割為多個編碼區塊之示意圖。
圖二(A)呈現一種典型的框緩衝器內儲存空間規劃方式。
圖二(B)呈現一種配合資料壓縮之框緩衝器內儲存空間的規劃方式。
圖三(A)~圖三(C)為根據本發明之一實施例中的影像處理系統之功能方塊圖。
圖四(A)~圖四(D)以一個影像區塊的八個編碼區塊為例,呈現根據本發明之框緩衝器中隨機存取點與第一暫存區域、第二暫存區域之相對關係的幾種範例。
圖五為根據本發明之另一實施例中的影像處理系統之功能方塊圖。
圖六呈現一種將編碼區塊分割為多個預測區塊之示意圖。
圖七為根據本發明之一實施例中的影像處理方法之流程圖。
須說明的是,本發明的圖式包含呈現多種彼此關聯之功能性模組的功能方塊圖。該等圖式並非細部電路圖,且其中的連接線僅用以表示信號流。功能性元件及/或程序間的多種互動關係不一定要透過直接的電性連結始能 達成。此外,個別元件的功能不一定要如圖式中繪示的方式分配,且分散式的區塊不一定要以分散式的電子元件實現。
根據本發明之一實施例中,各個影像區塊又被進一步定義為多個編碼區塊,例如影像區塊(0,0)被進一步定義為圖一(B)中的編碼區塊0~編碼區塊7。本實施例中,編碼區塊是存取視訊框的最小單位。圖二(A)繪示一影像區塊以編碼區塊為單位儲存於框緩衝器中。以這些編碼區塊的資料量各自為64個位元組的情況為例,呈現一種框緩衝器內儲存空間規劃方式。在這個範例中,影像區塊(0,0)的八個編碼區塊0~7(以符號EB0(0,0)、EB1(0,0)、...、EB7(0,0)表示,統稱[EB0~EB7](0,0))各自被儲存在一個長度為64位元組的記憶體空間內。
根據本發明之一實施例為一種影像處理系統300,其功能方塊圖係繪示於圖三(A)。影像處理系統300包含一框緩衝器31、一框緩衝控制器32、一影像解碼模組33、一影像處理模組34與一框緩衝編碼模組35。影像處理系統300係用以針對多個影像區塊,例如圖一(A)中的影像區塊(0,0)~影像區塊(M,N),進行影像處理程序。以下段落主要以圖一(A)影像區塊劃分方式為例來說明,本發明所屬技術領域中具有通常知識者透過後續說明可理解,本發明的範疇不以上述區塊劃分方式為限。
請一併參考圖二(A)的影像區塊的架構以及圖三(A)的影像處理系統300。在進行影像處理程序時,常見的情況是,由於影像區塊(0,0)的編碼區塊6、7在原始畫面中與影像區塊(1,0)相鄰,在針對所欲處理的目標影像區塊,也就是影像區塊(1,0),於影像處理模組34中進行影像處理程序時,需將影像區塊(0,0)當作參考影像區塊。更詳細來說,其係參考影像區塊(0,0)之編碼區塊6、7的資料。假設影像區塊(0,0)稍早已被存入框緩衝器31,影像處理模組34在針對影像區塊(1,0)進行影像處理程序時,例如 去區塊化程序,框緩衝控制器32便依照影像處理模組34的請求,自框緩衝器31將影像區塊(0,0)之編碼區塊6、7的資料讀出至影像處理模組34。在一實施例中,為了達到僅讀取部分編碼區塊而非整個影像區塊的目的,存放影像區塊(0,0)之編碼區塊0~7的八個記憶體空間各自被分派以一個隨機存取點(random access point),如同圖二(A)中的隨機存取點0~7。框緩衝控制器32因此得以依照影像處理模組34的請求,自框緩衝器31中直接存取影像區塊(0,0)的任一個編碼區塊,而不需先從位於較前位址的編碼區塊開始讀取。
如圖三(A)所示之本發明一實施例中,解碼後的影音資料於存入框緩衝器31之前,會被框緩衝編碼模組35進行框緩衝編碼,再將框緩衝編碼後的影音資料存入框緩衝器31,可節省自框緩衝器31存取影音資料時所需要的傳輸頻寬。本文中所稱的框緩衝編碼可為一種壓縮方式,在此不對壓縮方式進行任何限定,壓縮方式也不應限定本發明的範疇。
此外,圖二(B)呈現一種配合資料壓縮之框緩衝器內儲存空間規劃方式。在這個範例中,對應於影像區塊(0,0)之八個編碼區塊的八筆壓縮後資料(以符號[EB0~EB7]”(0,0)表示)大小不等。如圖二(B)所示,壓縮後資料[EB0~EB7]”(0,0)自隨機存取點0開始被連續無間隔地儲存在框緩衝器內。於此範例中,壓縮後資料EB0(0,0)與壓縮後資料EB1(0,0)的資料量總和為64位元,因此共同佔據自隨機存取點0開始第一列長度為64位元組的記憶體空間。壓縮後資料EB2(0,0)的資料量小於64位元,因此有一部份的壓縮後資料EB3(0,0)(標示為EB3A(0,0))與壓縮後資料EB2(0,0)共同佔據第二列長度為64位元組的記憶體空間。相似地,另一部分的壓縮後資料EB3(0,0)(標示為EB3B(0,0))與一部分的壓縮後資料EB4(0,0)(標示為EB4A(0,0)))共同佔據第三列長度為64位元組的記憶體空間。依此類推,圖二(B)之範例中的壓縮後資料[EB0~EB7]”(0,0)自隨機存取點0開始,總共佔據了六列記憶體空間(僅使用一部份而非全部的第六列)。
如本發明所屬技術領域中具有通常知識者所知,每次能自框緩衝器被讀取出的資料量為定值,例如32個位元組或64個位元組。以每次能自框緩衝器被讀取出之資料量為32個位元組(對應於半列記憶體空間)的情況為例,比較圖二(A)與圖二(B)可看出,如需被讀出與編碼區塊0~7相關的資料,圖二(A)所示的編碼區塊總共需被讀取512個位元組(8列)的資料,而圖二(B)所示,已經過框緩衝編碼後的編碼區塊的只需從隨機存取點0開始,被讀取352個位元組(5.5列)的資料。顯然,採用如圖二(B)所示的經過框緩衝編碼的編碼區塊可以達到節省資料傳輸量的效果。然而,圖二(B)這種做法的缺點在於,當僅有壓縮後資料[EB6~EB7]”(0,0)需被讀取出來時,因為只有一個隨機存取點0存在於框緩衝器的起始位置(也就是壓縮後資料EB0(0,0)的起始位置),在壓縮後資料[EB6~EB7]”(0,0)被讀取出來之前,壓縮後資料[EB0~EB5]”(0,0)也需被全部讀取出來,反而導致讀取效率低落以及讀取頻寬的浪費。
在根據本發明的另一實施例中,影像區塊中所包含的編碼區塊被分為兩類。更明確地說,每一影像區塊各自包含複數個第一類編碼區塊與至少一個第二類編碼區塊。此等編碼區塊分類的方式係基於以下因素:欲對一影像區塊(稱之目標影像區塊)之一部分進行影像處理時,另一影像區塊(稱之參考影像區塊)之一部分亦須被讀取以供上述影像處理程序。據此,上述目標影像區塊的一部分被視為第一類編碼區塊,上述參考影像區塊的一部分被視為第二類編碼區塊。當參考影像區塊的第二類編碼區塊需被讀取,而該參考影像區塊的第一類編碼區塊不需被讀取的狀況下,該第二類編碼區塊可自框緩衝器31被單獨讀取。以影像編碼規格H.264和圖一(B)呈現的編碼區塊劃分方式為例,每一個影像區塊中的編碼區塊0~5可被視為第一類編碼區塊,而編碼區塊6、7可被視為第二類編碼區塊。請參考圖三(A),本發明一實施例之影像處理系統300中,針對每一個處理中的影像區塊,框緩衝器31設有對應於第一類編碼區塊的第一暫存區域以及對應於 第二類編碼區塊的第二暫存區域。該第一暫存區域具有至少一第一隨機存取點,且該第二暫存區域具有至少一第二隨機存取點。藉由不同的隨機存取點的設置,在對應於同一個影像區塊之第一類編碼區塊未被讀取的情況下,第二類編碼區塊仍可單獨自框緩衝器31被讀取,也就是說,讀取第二類編碼區塊之前,不需先讀取第一類編碼區塊。根據本發明之第一隨機存取點與第二隨機存取點的設置方式範例隨後將配合圖四(A)~圖四(D)說明。
如圖三(A)所示,在影像處理系統300中,影像解碼模組33負責對輸入資料I施以影像解碼,以得到各個編碼區塊的資料(例如各個畫素的灰階、彩度、亮度...等)。每一個編碼區塊在所屬影像區塊中的相對位置為預先所知者。因此,影像解碼模組33可判斷解碼出的每一個編碼區塊為第一類編碼區塊或第二類編碼區塊。影像解碼模組33的輸出端會將不同類的編碼區塊傳遞至不同的信號路徑。更明確地說,對同一影像區塊而言,影像解碼模組33將其第一類編碼區塊提供至影像處理模組34,並透過框緩衝控制器32的控制將其第二類編碼區塊存入框緩衝器31。框緩衝控制器32負責接收各個模組對於框緩衝器31的存取請求、協調框緩衝器31之資料出入埠的使用權,並可根據各影像區塊的編號將相對應的存取起始位址提供給提出請求的模組。舉例而言,在收到影像解碼模組33希望將某一個影像區塊之第二類編碼區塊存入框緩衝器31的請求後,框緩衝控制器32會將對應於該影像區塊之第二類編碼區塊的儲存起始位址提供給影像解碼模組33,令該一個或多個第二類編碼區塊被存入框緩衝器31中對應於該影像區塊的第二暫存區域。在接收到影像解碼模組33提供的第一類編碼區塊後,影像處理模組34會對該等第一類編碼區塊施以影像處理,以產生一組第一影像處理結果。舉例而言,影像處理模組34所進行的影像處理可以為一去區塊化程序。隨後,框緩衝編碼模組35負責將對該組第一影像處理結果施以框緩衝編碼,以產生一組第一框緩衝編碼結果,並且透過框緩衝控制器32的協助,將該組第一框緩衝編碼結果存入框緩衝器31中對應於該 等第一類編碼區塊所屬之影像區塊的第一暫存區域。
此外,圖三(A)以影像處理系統300處理圖一(A)中之影像區塊(1,0)的情況為例,標示出各模組間傳遞的信號內容。假設每一個影像區塊中的編碼區塊0~5為第一類編碼區塊,編碼區塊6、7為第二類編碼區塊。又,如先前所述,假設影像處理模組34在對某一目標影像區塊之第一類編碼區塊進行影像處理時需要參考一參考影像區塊的第二類編碼區塊。如圖三(A)所示,影像解碼模組33在完成影像區塊(1,0)的解碼後,將影像區塊(1,0)的第一類編碼區塊[EB0~EB5](1,0)傳遞給影像處理模組34,並將影像區塊(1,0)的第二類編碼區塊[EB6~EB7](1,0)傳遞給框緩衝器31。若影像區塊(0,0)相對於影像區塊(1,0)為其參考影像區塊,且影像區塊(0,0)的兩個第二類編碼區塊[EB6~EB7](0,0)已在稍早被影像解碼模組33存入框緩衝器31,則影像處理模組34可對框緩衝控制器32提出請求,以自框緩衝器31中對應於影像區塊(0,0)的第二暫存區域讀取出影像區塊(0,0)的第二類編碼區塊[EB6~EB7](0,0)。接著,影像處理模組34與框緩衝編碼模組35負責據此依序產生對應於影像區塊(1,0)的一組第一影像處理結果[EB0~EB5]’(1,0)以及一組第一框緩衝編碼結果[EB0~EB5]”(1,0)。隨後,該組第一框緩衝編碼結果[EB0~EB5]”(1,0)將被存入框緩衝器31中對應於影像區塊(1,0)的第一暫存區域。
於一實施例中,影像處理模組34在對影像區塊(1,0)的第一類編碼區塊[EB0~EB5](1,0)進行影像處理時,也會對影像區塊(0,0)的第二類編碼區塊[EB6~EB7](0,0)進行影像處理,產生一組第二影像處理結果[EB6~EB7]’(0,0)。以影像處理模組34之功能為去區塊化的情況為例,影像處理模組34亦可能一併參考影像區塊(1,0)的第一類編碼區塊[EB0~EB5](1,0)以及影像區塊(0,0)的第二類編碼區塊[EB6~EB7](0,0)來修改影像區塊(0,0)的第二類編碼區塊[EB6~EB7](0,0)。這個情況下,上述第二影像處理結果[EB6~EB7]’(0,0)也就是經過去區塊化後的第二類編碼區塊[EB6~EB7](0,0)。如 圖三(B)所示,該組第二影像處理結果[EB6~EB7]’(0,0)被回存至框緩衝器31中對應於影像區塊(0,0)的第二暫存區域。或者,如圖三(C)所示,該組第二影像處理結果[EB6~EB7]’(0,0)被交由框緩衝編碼模組35進行框緩衝編碼為一組第二框緩衝編碼結果[EB6~EB7]”(0,0)。隨後,框緩衝編碼模組35會對框緩衝控制器32提出請求,以令第二框緩衝編碼結果[EB6~EB7]”(0,0)被存回框緩衝器31中對應於影像區塊(0,0)的第二暫存區域。須說明的是,影像資料的框緩衝編碼方式為本發明所屬技術領域中具有通常知識者所知,於此不贅述。
如先前所述,第一類編碼區塊在經過影像處理後,被存入框緩衝器31之前,都會被框緩衝編碼模組35壓縮,而第二類編碼區塊在經過影像處理後,被存入框緩衝器31之前,亦可能經過框緩衝編碼模組35的壓縮處理,例如圖三(C)所示。圖四(A)~圖四(D)以影像區塊(1,0)的八個編碼區塊0~7為例,呈現框緩衝器31中隨機存取點與第一暫存區域、第二暫存區域之相對關係的幾種範例。在這四個圖例中,用以儲存第一類編碼區塊的第一暫存區域被標示為410,用以儲存第二類編碼區塊的第二暫存區域被標示為420。實務上,第一類編碼區塊與第二類編碼區塊的數量為可預先得知者,並可據此設定第一暫存區域410和第二暫存區域420的容量。以高效能影像編碼(HEVC)規範和圖一(B)呈現的編碼區塊劃分方式為例,若每一個影像區塊的長寬各自為32畫素*16畫素,則八個編碼區塊0~7被壓縮前的資料量大小各自為64個位元組。在採用無損式(lossless)壓縮技術的情況下,第一暫存區域410可被設計為包含六個長度為64位元組的記憶體空間,而第二暫存區域420可被設計為包含兩個長度為64位元組的記憶體空間,以確保無論實際壓縮比例為何,第一暫存區域410和第二暫存區域420加總後皆足以容納一個影像區塊的完整資料。
首先請參見圖四(A)。於此範例中,第一暫存區410包含八個長度為64位元組的記憶體空間。框緩衝編碼模組35提供的第一組框緩 衝編碼結果[EB0~EB5]”(1,0)被各自存入第一暫存區域410。由圖四(A)中可看出,這五個框緩衝編碼結果[EB0~EB5]”(1,0)分別對應於一個編碼區塊,且各自被框緩衝控制器32分派以一個第一隨機存取點(1-0、1-1、...、1-5)。影像解碼模組33提供的兩個第二類編碼區塊[EB6~EB7](1,0)則是被存入第二暫存區域420,且各自被框緩衝控制器32分派以一個第二隨機存取點(2-0、2-1)。在這個情況下,影像處理系統300中的各個模組可請求框緩衝控制器32協助,自框緩衝器31中單獨存取框緩衝編碼結果[EB0~EB5]”(1,0)及編碼區塊[EB6~EB7](1,0)這八筆資料中的任一筆資料。
請參見圖四(B)。於此範例中,框緩衝編碼模組35提供的第一組框緩衝編碼結果[EB0~EB5]”(1,0)被連續無間隔地儲存在第一暫存區域410內,且有一第一隨機存取點(1-0)。也就是說,框緩衝編碼結果EB0(1,0)之後會緊接著的記憶體空間會被用以儲存框緩衝編碼結果EB1(1,0),依此類推。直到某一列記憶體空間已滿,框緩衝控制器才會開始於第一暫存區域410內的下一列記憶體空間儲存資料。如圖四(B)所示,第一暫存區域410中的第一列記憶體空間便同時儲存有框緩衝編碼結果EB0(1,0)與框緩衝編碼結果EB1(1,0),而第一暫存區域410中的第二列記憶體空間同時儲存有框緩衝編碼結果EB2(1,0)和一部分的框緩衝編碼結果EB3(1,0)(標示為EB3A(1,0))。在這個範例中,第一組框緩衝編碼結果[EB0~EB5]”(1,0)佔據了第一暫存區域410中的第一~四列記憶體空間(僅使用一部份而非全部的第四列)。另一方面,兩個編碼區塊[EB6~EB7](1,0)各自被儲存在第二暫存區域420中的一列記憶體空間內,且各自被框緩衝控制器32分派以一個第二隨機存取點(2-0、2-1)。這種做法的好處在於,編碼區塊[EB6~EB7](1,0)中的任一個編碼區塊可被單獨讀取。
請參見圖四(C)。於此範例中,框緩衝編碼模組35提供的框緩衝編碼結果[EB0~EB5]”(1,0)被分為五個部分,各自存入第一暫存區域410,且各自被框緩衝控制器32分派以一個第一隨機存取點(1-0、1-1、...、1-5)。 另一方面,未經框緩衝編碼的兩個第二類編碼區塊[EB6~EB7](1,0)則是被連續無間隔地儲存在第二暫存區域420內,且共用一第二隨機存取點(2-0)。
請參見圖四(D)。於此範例中,框緩衝編碼模組35提供的框緩衝編碼結果[EB0~EB5]”(1,0)被連續無間隔地儲存在第一暫存區域410內,且共用一第一隨機存取點(1-0)。相似地,未經框緩衝編碼的兩個第二類編碼區塊[EB6~EB7](1,0)被連續無間隔地儲存在第二暫存區域420內,且共用一第二隨機存取點(2-0)。實務上,框緩衝編碼模組35可將各個編碼區塊是否經過框緩衝編碼以及各個框緩衝編碼結果的資料量記錄下來,儲存在框緩衝器31內或是其他暫存器中。易言之,框緩衝器31中對應於各個編碼區塊的資料量可為已知數。假設框緩衝控制器32每次能自框緩衝器31讀取的資料量固定為32個位元組(對應於圖中的半列記憶體空間)。就圖四(D)呈現的範例而言,欲從框緩衝器31讀取影像區塊(1,0)時,框緩衝控制器32可根據框緩衝編碼結果[EB0~EB5]”(1,0)各自的資料量估計出框緩衝編碼結果[EB0~EB5]”(1,0)係佔據第一暫存區域410中的第一~四列記憶體空間,且使用超過一半的第四列記憶體空間。另一方面,未經框緩衝編碼的編碼區塊[EB6~EB7](1,0)係佔據第二暫存區域420中的第一列與第二列記憶體空間。因此,框緩衝控制器32首先應自第一隨機存取點1-0開始,連續八次讀取32個位元組(共讀取256個位元組的資料),便可將框緩衝編碼結果[EB0~EB5]”(1,0)讀出。隨後,框緩衝控制器32再自第二隨機存取點2-0開始,連續四次讀取32個位元組(共讀取96個位元組的資料),便可將編碼區塊[EB6~EB7](1,0)讀出。另一方面,自框緩衝器31讀取編碼區塊[EB6~EB7](1,0)時,框緩衝控制器32可直接自第二隨機存取點2-0開始,連續四次讀取32個位元組(共讀取96個位元組的資料)。
值得注意的是,因第二類編碼區塊被存放在不同於第一暫存區域410的第二暫存區域420,獨立於壓縮後第一類編碼區塊之外讀取、修改、壓縮並回存壓縮後第二類編碼區塊是可行的。此外,若無單獨讀取框 緩衝編碼結果[EB0~EB5]”(1,0)中任一框緩衝編碼結果的需求,令框緩衝編碼結果[EB0~EB5]”(1,0)用同一個第一隨機存取點並不會造成問題,亦即不需要將各個框緩衝編碼結果分別儲存在不同記憶體空間且各自分派一個隨機存取點。
須說明的是,將儲存於第二暫存區域420中的第二類編碼區塊交給影像處理模組34做為參考資料只是一種使用第二類編碼區塊的可能性。該等第二類編碼區塊亦可為影像處理系統300中的其他模組所用。
圖五為根據本發明之另一實施例中的影像處理系統之功能方塊圖。影像處理系統500與圖三(A)中之影像處理系統300的主要差別在於,影像解碼模組53解碼產生的編碼區塊都會被先儲存到框緩衝器51中。待影像處理模組54需要某些編碼區塊的資料時,才對框緩衝控制器52提出請求,自框緩衝器51將該等資料取出。相似地,影像處理模組54產生的第一影像處理結果會交由框緩衝編碼模組55壓縮後,再存入框緩衝器51。與框緩衝器31相同,框緩衝器51亦為每一個處理中的影像區塊設有對應於第一類編碼區塊的第一暫存區域以及對應於第二類編碼區塊的第二暫存區域。該第一暫存區域具有至少一第一隨機存取點,且該第二暫存區域具有至少一第二隨機存取點。藉此,即使在對應於同一個影像區塊之第一類編碼區塊未被讀取的情況下,第二類編碼區塊仍可單獨自框緩衝器51被讀取。
本發明所屬技術領域中具有通常知識者可理解,本發明的範疇不以上述範例中的區塊數量、資料量大小、區塊劃分方式、記憶體空間分配方式等為限。
實務上,每一編碼區塊可如圖六所示,各自再被劃分為包含複數個預測區塊。在圖六的範例中,一編碼區塊包含四個預測區塊。舉例而言,假設做為動態影像編碼基本單位的每一個影像區塊之長寬為32畫素 *16畫素,則每一編碼區塊的長寬可為16畫素*4畫素,而每一預測區塊的長寬可為4畫素*4畫素。預測區塊可被設定為一最小壓縮/解壓縮單位區塊。也就是說,該複數個預測區塊中每一預測區塊各自具有相對應之一壓縮資訊,例如壓縮後之位元長度(bit length)。
須說明的是,若編碼區塊於存入框緩衝器31、51前經過框緩衝編碼的壓縮,在後續被取出使用前可交由一框緩衝解碼模組(未繪示)解壓縮。於一實施例中,框緩衝編碼模組35、55係選擇性地對影像處理模組34、54輸出的影像處理結果施以框緩衝編碼,並係根據一壓縮效率門檻值決定是否對一影像處理結果進行壓縮。舉例而言,假設該壓縮效率門檻值為70%,框緩衝編碼模組35在針對一影像處理結果進行壓縮前可先評估壓縮後資料量是否會低於壓縮前資料量的70%。若否,則框緩衝編碼模組35便不對該影像處理結果施以壓縮程序。這個做法的好處在於能省去對壓縮效率不佳的影像處理結果進行框緩衝編碼/框緩衝解碼所需要的電力和時間。
根據本發明之另一實施例為一種影像處理方法,用以配合一框緩衝器針對多個影像區塊進行一影像處理程序,其流程圖係繪示於圖七。該多個影像區塊中之每一影像區塊包含複數個第一類編碼區塊與至少一第二類編碼區塊。該框緩衝器對應於一目標影像區塊設有一第一暫存區域以及一第二暫存區域。該第一暫存區域具有至少一第一隨機存取點。該第二暫存區域具有至少一第二隨機存取點,獨立於該至少一第一隨機存取點。首先,步驟S71為對該目標影像區塊中之複數個第一類編碼區塊施以影像處理,以產生一組第一影像處理結果。接著,步驟S72為對該組第一影像處理結果施以框緩衝編碼,以產生一組第一框緩衝編碼結果。隨後,步驟S73為將該組第一框緩衝編碼結果存入該框緩衝器中之該第一暫存區域。步驟S74則是將該目標影像區塊之至少一第二類編碼區塊被存入該框緩衝器中之該第二暫存區域。須說明的是,步驟S74可獨立於步驟S71~步驟S73 存在,亦即其執行時間可不受步驟S71~步驟S73之執行時間的限制。
本發明所屬技術領域中具有通常知識者可理解,先前在介紹影像處理系統300、500時描述的各種可能變化亦可應用至圖七中的影像處理方法,其細節不再贅述。本發明的概念能應用在H.264、高效能影像編碼(HEVC)等影音壓縮編碼技術中,但不以為限。
藉由以上較佳具體實施例之詳述,係希望能更加清楚描述本發明之特徵與精神,而並非以上述所揭露的較佳具體實施例來對本發明之範疇加以限制。相反地,其目的是希望能涵蓋各種改變及具相等性的安排於本發明所欲申請之專利範圍的範疇內。
300‧‧‧影像處理系統
31‧‧‧框緩衝器
32‧‧‧框緩衝控制器
33‧‧‧影像解碼模組
34‧‧‧影像處理模組
35‧‧‧框緩衝編碼模組

Claims (20)

  1. 一種影像處理系統,用以針對多個影像區塊進行影像處理,該多個影像區塊中之每一影像區塊包含複數個第一類編碼區塊與至少一第二類編碼區塊,該影像處理系統包含:一影像處理模組,對一目標影像區塊中之複數個第一類編碼區塊施以影像處理,以產生一組第一影像處理結果;一框緩衝編碼模組,對該組第一影像處理結果施以框緩衝編碼,以產生一組第一框緩衝編碼結果;一框緩衝器,對應於該目標影像區塊,設有一第一暫存區域以及一第二暫存區域,該第一暫存區域具有至少一第一隨機存取點,該第二暫存區域具有至少一第二隨機存取點,獨立於該至少一第一隨機存取點;以及一框緩衝控制器,令該組第一框緩衝編碼結果被存入該框緩衝器之該第一暫存區域,並且令該目標影像區塊之至少一第二類編碼區塊被存入該框緩衝器之該第二暫存區域。
  2. 如申請專利範圍第1項所述之影像處理系統,其中該框緩衝控制器令該組第一框緩衝編碼結果從該至少一第一隨機存取點中之一第一隨機存取點被連續無間隔地儲存於該第一暫存區域中。
  3. 如申請專利範圍第1項所述之影像處理系統,其中該組第一框緩衝編碼結果包含複數個框緩衝編碼結果,該第一暫存區域具有複數個第一隨機存取點;該框緩衝控制器令該複數個框緩衝編碼結果各自從不同之第一隨機存取點被儲存於該第一暫存區域。
  4. 如申請專利範圍第1項所述之影像處理系統,其中該框緩衝控制器令該目標影像區塊之該至少一第二類編碼區塊自該至少一第二隨機存取點中之一第二隨機存取點連續無間隔地儲存於該第二暫存區域中。
  5. 如申請專利範圍第1項所述之影像處理系統,其中該目標影像區塊包含複數個第二類編碼區塊,該第二暫存區具有複數個第二隨機存取點,該框緩衝控制器使該複數個第二類編碼區塊各自從不同之第二隨機存取點被儲存於該第二暫存區域。
  6. 如申請專利範圍第1項所述之影像處理系統,其中,對應於相鄰於該目標影像區塊之一參考影像區塊,該框緩衝器設有一第一參考暫存區域以及一第二參考暫存區域,該第一參考暫存區具有至少一第一隨機存取點,該第二參考暫存區域具有獨立於該至少一第一隨機存取點之至少一第二隨機存取點;該影像處理模組對該目標影像區塊中之該複數個第一類編碼區塊施以影像處理時,該框緩衝控制器自該框緩衝器之該第二參考暫存區域之該至少一第二隨機存取點讀出該參考影像區塊中之至少一第二類編碼區塊,提供給該影像處理模組參考。
  7. 如申請專利範圍第6項所述之影像處理系統,其中該影像處理模組進一步對被讀出之該參考影像區塊之該至少一第二類編碼區塊進行影像處理,以產生一組第二影像處理結果,使得該組第二影像處理結果相關於該組第一影像處理結果。
  8. 如申請專利範圍第7項所述之影像處理系統,其中,該框緩衝編碼模組亦對該組第二影像處理結果施以框緩衝編碼,以產生一組第二框緩衝編碼結果;該框緩衝控制器令該組第二框緩衝編碼結果自該框緩衝器中對應於該參考影像區塊之該第二參考暫存區域之該至少一第二隨機存取點開始被存回該框緩衝器。
  9. 如申請專利範圍第7項所述之影像處理系統,其中該影像處理模組係一併根據該參考影像區塊之該至少一第二類編碼區塊以及該目標影像區塊中之該複數個第一類編碼區塊,以產生該組第一影像處理結果以及該組第二影像處理結果。
  10. 如申請專利範圍第1項所述之影像處理系統,其中該框緩衝編碼模組係根據一壓縮效率門檻值對該組第一影像處理結果進行壓縮以得到該組第一框緩衝編碼結果。
  11. 一種影像處理方法,用以配合一框緩衝器針對多個影像區塊進行一影像處理程序,該多個影像區塊中之每一影像區塊包含複數個第一類編碼區塊與至少一第二類編碼區塊,該框緩衝器對應於一目標影像區塊設有一第一暫存區域以及一第二暫存區域,該第一暫存區域具有至少一第一隨機存取點,該第二暫存區域具有至少一第二隨機存取點,獨立於該至少一第一隨機存取點,該影像處理方法包含:(a)對該目標影像區塊中之複數個第一類編碼區塊施以影像處理,以產生一組第一影像處理結果;(b)對該組第一影像處理結果施以框緩衝編碼,以產生一組第一框緩衝編碼結果;(c)令該組第一框緩衝編碼結果被存入該框緩衝器之該第一暫存區域;以及(d)令該目標影像區塊之至少一第二類編碼區塊被存入該框緩衝器之該第二暫存區域。
  12. 如申請專利範圍第11項所述之影像處理方法,其中步驟(c)包含:令該組第一框緩衝編碼結果從該至少一第一隨機存取點中之一第一隨機存取點被連續無間隔地儲存於該第一暫存區域中。
  13. 如申請專利範圍第11項所述之影像處理方法,其中該組第一框緩衝編碼結果包含複數個框緩衝編碼結果,該第一暫存區域具有複數個第一隨機存取點;步驟(c)包含:令該複數個框緩衝編碼結果各自從不同之第一隨機存取點被儲存於該第一暫存區域。
  14. 如申請專利範圍第11項所述之影像處理方法,其中步驟(d)包含:令該 目標影像區塊之該至少一第二類編碼區塊自該至少一第二隨機存取點中之一第二隨機存取點連續無間隔地儲存於該第二暫存區域中。
  15. 如申請專利範圍第11項所述之影像處理方法,其中該目標影像區塊包含複數個第二類編碼區塊,該第二暫存區具有複數個第二隨機存取點,步驟(d)包含:令該複數個第二類編碼區塊各自從不同之第二隨機存取點被儲存於該第二暫存區域。
  16. 如申請專利範圍第11項所述之影像處理方法,其中,對應於相鄰於該目標影像區塊之一參考影像區塊,該框緩衝器設有一第一參考暫存區域以及一第二參考暫存區域,該第一參考暫存區具有至少一第一隨機存取點,該第二參考暫存區域具有獨立於該至少一第一隨機存取點之至少一第二隨機存取點;該影像處理方法於步驟(a)之前進一步包含:自該框緩衝器之該第二參考暫存區域之該至少一第二隨機存取點讀出該參考影像區塊中之至少一第二類編碼區塊,提供給步驟(a)所進行之影像處理參考。
  17. 如申請專利範圍第16項所述之影像處理方法,進一步包含:對被讀出之該參考影像區塊之該至少一第二類編碼區塊進行影像處理,以產生一組第二影像處理結果,使得該組第二影像處理結果相關於該組第一影像處理結果。
  18. 如申請專利範圍第17項所述之影像處理方法,進一步包含:對該組第二影像處理結果施以框緩衝編碼,以產生一組第二框緩衝編碼結果;以及令該組第二框緩衝編碼結果自該框緩衝器中對應於該參考影像區塊之該第二參考暫存區域之該至少一第二隨機存取點開始被存回該框緩衝器。
  19. 如申請專利範圍第17項所述之影像處理方法,其中步驟(a)包含:一併 根據該參考影像區塊之該至少一第二類編碼區塊以及該目標影像區塊中之該複數個第一類編碼區塊,以產生該組第一影像處理結果以及該組第二影像處理結果。
  20. 如申請專利範圍第11項所述之影像處理方法,其中步驟(b)包含:根據一壓縮效率門檻值對該組第一影像處理結果進行壓縮以得到該組第一框緩衝編碼結果。
TW104127478A 2015-08-24 2015-08-24 影像處理系統及影像處理方法 TWI565303B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW104127478A TWI565303B (zh) 2015-08-24 2015-08-24 影像處理系統及影像處理方法
US15/208,799 US10026149B2 (en) 2015-08-24 2016-07-13 Image processing system and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW104127478A TWI565303B (zh) 2015-08-24 2015-08-24 影像處理系統及影像處理方法

Publications (2)

Publication Number Publication Date
TWI565303B true TWI565303B (zh) 2017-01-01
TW201709735A TW201709735A (zh) 2017-03-01

Family

ID=58104082

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104127478A TWI565303B (zh) 2015-08-24 2015-08-24 影像處理系統及影像處理方法

Country Status (2)

Country Link
US (1) US10026149B2 (zh)
TW (1) TWI565303B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113781302B (zh) * 2021-08-25 2022-05-17 北京三快在线科技有限公司 多路图像拼接方法、系统、可读存储介质、及无人车

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201233189A (en) * 2011-01-17 2012-08-01 Mediatek Inc Buffering apparatus and method for buffering multi-partition video/image bitstream
TW201318436A (zh) * 2011-10-31 2013-05-01 Mediatek Inc 用以緩衝內容陣列的緩衝裝置、緩衝方法以及熵解碼器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9767529B1 (en) * 2013-12-18 2017-09-19 Mediatek Inc. Method and apparatus for accessing compressed data and/or uncompressed data of image frame in frame buffer

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201233189A (en) * 2011-01-17 2012-08-01 Mediatek Inc Buffering apparatus and method for buffering multi-partition video/image bitstream
TW201318436A (zh) * 2011-10-31 2013-05-01 Mediatek Inc 用以緩衝內容陣列的緩衝裝置、緩衝方法以及熵解碼器

Also Published As

Publication number Publication date
TW201709735A (zh) 2017-03-01
US20170061573A1 (en) 2017-03-02
US10026149B2 (en) 2018-07-17

Similar Documents

Publication Publication Date Title
CN101252694B (zh) 基于块的视频解码的帧存储压缩和地址映射系统
US20140086309A1 (en) Method and device for encoding and decoding an image
JP2017184250A (ja) 係数圧縮を用いて復号するための装置及び方法
US20070047655A1 (en) Transpose buffering for video processing
US20150103086A1 (en) Display device with graphics frame compression and methods for use therewith
US8340506B2 (en) System and method for signal processing
JP5156655B2 (ja) 画像処理装置
US20140177710A1 (en) Video image compression/decompression device
US20060133512A1 (en) Video decoder and associated methods of operation
US8443413B2 (en) Low-latency multichannel video port aggregator
US20120033727A1 (en) Efficient video codec implementation
TWI565303B (zh) 影像處理系統及影像處理方法
US10750182B2 (en) Embedded codec circuitry for visual quality based allocation of refinement bits
US10798419B2 (en) Embedded codec circuitry for sub-block based encoding of quantized prediction residual levels
US20200137402A1 (en) Embedded codec circuitry for sub-block based entropy coding of quantized-transformed residual levels
US20140301719A1 (en) Processing cache for multiple bit precisions
CN106954074B (zh) 一种视频数据处理方法和装置
US10939107B2 (en) Embedded codec circuitry for sub-block based allocation of refinement bits
KR101484101B1 (ko) 동영상 변환 장치
US7423652B2 (en) Apparatus and method for digital video decoding
TW201635788A (zh) 具有初始化片段之視訊及音訊之寫碼
US10778990B2 (en) Embedded codec circuitry for randomized refinement of uncoded-bits
US10904578B2 (en) Video processing apparatus and video processing circuits thereof
US20240146975A1 (en) Dynamic queuing of entropy-coded data for transmission in a bitstream
US20130287100A1 (en) Mechanism for facilitating cost-efficient and low-latency encoding of video streams