201141237 六、發明說明: 【發明所屬之技術領域】 [0001] 本發明係有關圖框速率的提升,特別是關於一種針對内 插圖框的空間内插(spat i a 1 i nterpo 1 at i on)處理與平 . 滑化。 [先前技術] [0002] 提升圖框速率技術(frame rate up conversion, FRUC)經常應用在數位影像的顯示(例如數位電視),其可 0 在二相鄰原始圖框間產生一或多張内插圖框,以提升顯 示圖框的速率,例如由60Hz提升至12〇Hz甚至24〇Hz。内 插圖框通常係藉由動作補償(m〇ti〇n c〇mpensati〇n, MC)的内插技術所產生。第一圖顯示以區塊為基礎的動作 估汁/補償技術,其根據前一圖框A和目前圖框產生内 插圖框。首先,估計目前圖框Β之巨集區塊 (macroblock,MB)相對於前一圖框人之相應巨集區塊的 動作。接著,根據動作估計以得到内插圖裎。 ❹侧]肖於以區塊為基礎之動作補償所產生的内插圖框,經常 會產生破裂(或裂開)區域,於該區域内不具有動作向 量再者對於以區塊為基礎之動作補償,沿著相鄰區 塊之間的邊界通常存在有邊界效應(side ⑴。為 克服破裂區域的問題’傳統系統或方法係使用線緩衝器 (line-buffer)來健存目前區塊的像素以及前-區塊與 下—區塊的某些像素。例如,對於8x8區塊為基礎的系統 或方法,需使用十個線緩衝器來儲存目前區塊的8條線' 前一區塊的最後-條線及下一區塊的第一條線。由於存 099114570 表單編號A0101 第3頁/共22頁 0992025738-0 201141237 取十個線緩衝器的像素需要耗費大量㈣間,因此,傳 統的系統或方法並無法· ”影像的顯示。另外,十 個線緩衝n會«轉面積料本的增加。 [0004] [0005] [0006] [0007] 鑑於傳統线與方法無料效的料韻㈣的問題與 邊界效應,因此’ Μ提出—種新穎的系統與方法,以 、讀且U的方生沒有破㈣域與邊界效應的内插 圖框。 【發明内容】 鑑於上述,本發明實施_目的之_在於提供—種提升 圖框速率(fr_ rate up conversion,FRUC)的系統 與方法,使用較傳統少的緩衝器資源,以修補及平滑化 所產生的内插圖框。 根據本發明實施例,提升圖框速率系統包含動作估計 (motion estimation,ME)單元與三線緩衝器為基礎之 動作補償料。動作料杨轉賴輸入產 生至少一動作向量(m〇ti〇n德输,MV)。動作補償單 兀根據動作向量、參考圖框與i前圖框以產生内插圖框 ,藉此,產生一圖框輪出,其圖框速率高於圖框輸入之 圖桓速率。 【實施方式】 第二A圖顯示本發明實施例之提升圖框速率(frame rate up conversion ’ FRUC)的系統方塊圖。第二B圖顯示本 發明實施例之提升圖框速率的方法流程圖。提升圖框速 率系統主要包含動作估計單元(motion estimation , 奸)21 與動作補償(motion compensation,MC)單元 22 099114570 表單編號A0101 第4頁/共22頁 0992025738-0 201141237 〇 [0008] 。於步驟31 ’動作估計單元21接收具原始圖框速率(例如 隱z)之連續圖框輪入,用以產生動作向量(㈣_ Μ,,或動作向量圖(咖_ Vector map,MV map)。於步驟32,動作補償單元22(特別是以三線 (triple llne)緩衝器為基礎的動作補償單元)根據動作 向量/動作向量圖、參考圖框(例如前—圖框或後_圖框) 及目前圖框以產生内插圖框,藉此產生圖框速率提升(例 如腫z)的連續圖框輸出。在本實施例巾,係採用以區 塊為基礎的動作補償。 第三A圖顯示本發明實施例中第二A圖之動作補償單元22 的詳細方塊圖。第三B圖顯示本發明實施例令第二B圖之 内插圖框產生步驟(步驟32)的詳細流程圖。在本實施例 中,動作補償單元22包含時間(temp〇ral)内插單元221 、空間内插單元222與平滑化單元223。於步驟321,時 間内插單元221根據動作向量/動作向量圖、參考圖框與 目前圖框’以產生時間内插圖框(其中,參考圖框與目前 ❹ 圖框可從動作估計單元21或圖框儲存記憶體取得)鑑於 以區塊為基礎的動作補償所產生之時間内插圖框中經常 會有破裂(或裂開)區域,因此於步驟322中,使用空間内 插單元222針對時間内插圖框執行空間内插,_ = 區域。有關破裂區域修補之細節,稍後將會於本說 詳加說明區塊為基礎_作補償存在有 邊界效應於區塊間的邊界,因此於步驟323中,使用平滑 化單元 以減少邊界效應。有關區塊邊界平滑化之細節,:後將 099114570 表單編號A0101 第5頁/共22頁 0992025738-0 201141237 會於本說明書詳加說明。 [0009] 第四A圖顯示本發明實施例中第三A圖之空間内插單元222 的詳細方塊圖。第四B圖顯示本發明實施例中第三B圖之 空間内插以修補破裂區域步驟(步驟322)的詳細流程圖。 在本實施例中,空間内插單元222包含記憶體2221、三線 緩衝器2222與空間内插處理器2223。記憶體222 1提供一 些像素區塊的線條。三線緩衝器2222包含三個線缓衝器 ,分別用以儲存將被處理的目前線、前一區塊的最後一 條線與下一區塊的第一條線(步驟3222)。接著,根據所 儲存之前一(上端鄰近)區塊的最後一條線與下一(下端鄰 近)區塊的第一條線,使用空間内插處理器2223對目前線 執行空間内插(步驟3223)。由於本實施例僅使用三線缓 衝器以進行空間内插(與平滑化),相較於傳統系統與方 法,本實例可大量減少硬體資源與加快内插(與平滑化) 速度。201141237 VI. Description of the Invention: [Technical Field] [0001] The present invention relates to an improvement in frame rate, and more particularly to a spatial interpolation (spat ia 1 i nterpo 1 at i on) processing for an inner frame With flat. Sliding. [Prior Art] [0002] The frame rate up conversion (FRUC) is often applied to the display of digital images (for example, digital television), which can generate one or more images between two adjacent original frames. An illustration box to increase the rate at which the frame is displayed, for example from 60 Hz to 12 〇 Hz or even 24 〇 Hz. The inner frame is usually generated by the interpolation technique of motion compensation (m〇ti〇n c〇mpensati〇n, MC). The first figure shows a block-based action estimation/compensation technique that produces an inner frame based on the previous frame A and the current frame. First, it is estimated that the macroblock (MB) of the current frame is opposite to the action of the corresponding macroblock of the previous frame. Next, based on the motion estimation to get the inner illustration 裎. ❹ ] ] 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于 于There is usually a boundary effect along the boundary between adjacent blocks (side (1). To overcome the problem of broken regions' traditional systems or methods use line-buffers to store the pixels of the current block and Pre-block and down-block certain pixels. For example, for an 8x8 block-based system or method, use ten line buffers to store the 8 lines of the current block'. - The first line of the line and the next block. Since the memory is 099114570 Form No. A0101 Page 3 / Total 22 Page 0992025738-0 201141237 It takes a lot of (four) to take the pixels of the ten line buffers, so the traditional system Or the method does not display the image. In addition, the ten line buffers n will increase the area of the transfer area. [0004] [0005] [0006] [0007] In view of the traditional line and method, there is no material rhyme (4) Problems and boundary effects, so ' Μ A novel system and method for reading, and the U's square has no broken (four) domain and boundary effect inner frame. [Invention] In view of the above, the present invention is to provide a lifting frame. A system and method for fr_ rate up conversion (FRUC) uses less buffer resources than conventional to repair and smooth the resulting inset frame. According to an embodiment of the invention, the elevated frame rate system includes motion estimates ( Motion estimation, ME) unit and three-line buffer-based motion compensation material. The action material Yang input input generates at least one motion vector (m〇ti〇n German input, MV). The motion compensation unit is based on the motion vector and the reference map. The frame and the i-frame are used to generate an inner frame, whereby a frame is rotated, and the frame rate is higher than the frame rate of the frame input. [Embodiment] FIG. 2A shows an embodiment of the present invention. A system block diagram of a frame rate up conversion (FRUC). A second block diagram shows a flow chart of a method for increasing the frame rate according to an embodiment of the present invention. Motion estimation unit (motion estimation) 21 and motion compensation (MC) unit 22 099114570 Form number A0101 Page 4 of 22 page 0992025738-0 201141237 〇 [0008]. In step 31 'action estimation unit 21 A continuous frame round with a raw frame rate (eg, hidden z) is received for generating an action vector ((4) _ Μ, or an action vector map (Vector map, MV map). In step 32, the motion compensation unit 22 (especially a motion compensation unit based on a triple llne buffer) is based on an action vector/action vector map, a reference frame (eg, a front-frame or a back_frame), and The current frame is used to generate an inset frame, thereby producing a continuous frame output with a frame rate increase (eg, swollen z). In the embodiment of the invention, block-based motion compensation is employed. The third A diagram shows a detailed block diagram of the action compensation unit 22 of the second A diagram in the embodiment of the present invention. Fig. 3B is a detailed flow chart showing the steps (step 32) of the inset frame in the second B diagram of the embodiment of the present invention. In the present embodiment, the motion compensation unit 22 includes a temp〇ral interpolation unit 221, a spatial interpolation unit 222, and a smoothing unit 223. In step 321, the time interpolation unit 221 generates a time frame according to the motion vector/action vector map, the reference frame and the current frame' (where the reference frame and the current frame are available from the motion estimation unit 21 or the figure). The frame storage memory is obtained. In view of the fact that there is often a cracked (or split) region in the illustration frame during the time period caused by the block-based motion compensation, in step 322, the spatial interpolation unit 222 is used for the time illustration. The box performs spatial interpolation, _ = area. For details on the repair of the rupture zone, there will be a boundary effect between the blocks based on the block-based compensation. Therefore, in step 323, a smoothing unit is used to reduce the boundary effect. Details on block boundary smoothing: Post 099114570 Form No. A0101 Page 5 of 22 0992025738-0 201141237 This manual will be explained in detail. 4 is a detailed block diagram of the spatial interpolation unit 222 of the third A diagram in the embodiment of the present invention. Figure 4B shows a detailed flow chart of the step of spatial interpolation of the third B diagram to repair the rupture zone (step 322) in the embodiment of the present invention. In the present embodiment, the spatial interpolation unit 222 includes a memory 2221, a three-line buffer 2222, and a spatial interpolation processor 2223. The memory 222 1 provides lines of some pixel blocks. The three-line buffer 2222 includes three line buffers for storing the current line to be processed, the last line of the previous block, and the first line of the next block (step 3222). Then, spatial interpolation is performed on the current line using the spatial interpolation processor 2223 according to the first line of the previous (upper end adjacent) block and the first line of the next (lower end adjacent) block (step 3223). . Since this embodiment uses only a three-wire buffer for spatial interpolation (and smoothing), this example can significantly reduce hardware resources and speed up interpolation (and smoothing) compared to conventional systems and methods.
[0010] 第五A圖顯示一例子,其中前一區塊N-1的最後一條線儲 存在緩衝器1,目前區塊N的目前線儲存在緩衝器2且下一 區塊N+1的第一條線儲存在緩衝器3,上述區塊N-1、區塊 N與區塊N + 1為影像垂直方向之連續區塊。對於相同區塊N ,每次係以下一條線覆蓋缓衝器2的内容。如第五B圖所 顯示的另一例子,在處理完區塊N的最後一條線之後,區 塊N + 1的第一條線成為目前線。由於此目前線已預先儲存 在緩衝器3,故不需要再次由記憶體2221擷取。再者,保 留在緩衝器2之區塊N所完成處理的最後一條線將成為前 一區塊N的最後一條線。同時,由記憶體2221擷取區塊 099114570 表單編號A0101 第6頁/共22頁 0992025738-0 201141237 N + 2的第一條線並將其儲存在緩衝器j。對同一區塊N+i, 每次係以下一條線覆蓋緩衝器3 (而非第五A圖所示之緩衝 器2)的内容。藉此,第五A圖與第五B圖所示之例子可重 複執行於所有區塊。 [0011] 第六圖顯示藉由空間内插處理器2 2 2 3以執行空間内插(步 驟3222)的例子。在一實施例中,根據前一區塊的最後一 條線之像素pi與下_區塊的第一條線之像素口2,對目前 線的像素pc執行空間内插。例如,可由下列算式算出像 素pc的值: pc=[pl*nl+p2*n2]/(nl+n2), 其中nl與n2分別為像素“與以的權重(weighting)。 [0012] 在另-實施例中,根據以下四個像素對目前線的像素Μ 執行空間内插:前-區塊之最後_條線的像糾、下一區 塊之第-條㈣像素P2、左側相鄰區塊的像如與右側 相鄰區塊的像素p 4。 [0013] Ο 接下來’以平;f化單兀223對空_漏框執行平滑化處 理(步驟323)。在本實施例中,採用低通遽波U〇W-Pass filtering,LPF)以平滑化區塊邊界,進而減少邊界效 應。第七關示執行平滑化㈣子。在本實關中,根 據目前線的像素be本身與前-區塊之最後__條線的像素 b卜以平滑化目前線的像素bc。例如,可由下列算式算 出平滑化像素be’的值: be’ =[bl*nl+bc*n2]/(nHn2), 其中nl與n2分別為像素1)1與1)(;的權重(weighting)。 099114570 表單編號A0101 第7頁/共22頁 0992025738-0 201141237 [0014] 以上所述僅為本發明之較佳實施例而已,並非用以限定 本發明之申請專利範圍;凡其它未脫離發明所揭示之精 神下所完成之等效改變或修飾,均應包含在下述之申請 專利範圍内。 【圖式簡單說明】 [0015] 第一圖顯示根據前一圖框與目前圖框以產生内插圖框的 例子。 第二A圖顯示本發明實施例之提升圖框速率的系統方塊圖 〇 第二B圖顯示本發明實施例之提升圖框速率的方法流程圖 〇 第三A圖顯示本發明實施例中第二A圖之動作補償(MC)單 元的詳細方塊圖。 第三B圖顯示本發明實施例中第二B圖之内插圖框產生步 驟的詳細流程圖。 第四A圖顯示本發明實施例中第三A圖之空間内插單元的 詳細方塊圖。 第四B圖顯示本發明實施例中第三B圖之空間内插以修補 破裂區域步驟的詳細流程圖。 第五A圖及第五B圖例示將前一區塊之最後一條線、目前 線與下一區塊的第一條線儲存於三線緩衝器。 第六圖顯示藉由空間内插處理器以執行空間内插的例子 〇 第七圖顯示執行平滑化的例子。 【主要元件符號說明】 099114570 表單編號A0101 第8頁/共22頁 0992025738-0 201141237 [0016] Ο 21 動作估計單元 22 動作補償單元 221 時間内插單元 222 空間内插單元 223 平滑化單元 2221 記憶體 2222 三線緩衝器 2223 空間内插處理器 31-32 步驟 321-323 步驟 3222-3223 步驟 pi ' p2 ' p3 ' p4 ' pc ' bl ' be 像素 ο pTC 專 099114570 表單編號A0101 第9頁/共22頁 0992025738-0[0010] FIG. 5A shows an example in which the last line of the previous block N-1 is stored in the buffer 1, and the current line of the current block N is stored in the buffer 2 and the next block N+1. The first line is stored in the buffer 3, and the block N-1, the block N and the block N+1 are contiguous blocks in the vertical direction of the image. For the same block N, the following line covers the contents of the buffer 2 each time. As another example shown in Fig. 5B, after processing the last line of the block N, the first line of the block N + 1 becomes the current line. Since the current line has been previously stored in the buffer 3, it is not necessary to retrieve it from the memory 2221 again. Furthermore, the last line remaining in the block N of buffer 2 will be the last line of the previous block N. At the same time, the block is retrieved by the memory 2221. 099114570 Form No. A0101 Page 6 of 22 0992025738-0 201141237 The first line of N + 2 is stored in the buffer j. For the same block N+i, the following line covers the contents of the buffer 3 (not the buffer 2 shown in Figure 5A). Thereby, the examples shown in the fifth A diagram and the fifth B diagram can be repeatedly executed in all the blocks. [0011] The sixth figure shows an example of performing spatial interpolation (step 3222) by spatially interpolating the processor 2 2 2 3 . In one embodiment, spatial interpolation is performed on the pixels pc of the current line based on the pixel pi of the last line of the previous block and the pixel port 2 of the first line of the lower_block. For example, the value of the pixel pc can be calculated by the following equation: pc = [pl * nl + p2 * n2] / (nl + n2), where nl and n2 are respectively the weighting of the pixel "and the weighting." [0012] In an embodiment, spatial interpolation is performed on the pixels 目前 of the current line according to the following four pixels: image correction of the last _ line of the pre-block, the first (four) pixel P2 of the next block, and the adjacent area of the left side The image of the block is, for example, the pixel p 4 adjacent to the right block. [0013] Next, the smoothing process is performed on the empty_leak frame by the flattening unit 223 (step 323). In this embodiment, Low-pass 〇W〇P-Pass filtering (LPF) is used to smooth the block boundary, thereby reducing the boundary effect. The seventh is to perform the smoothing (four) sub. In this real pass, according to the current line of the pixel be itself and the former - the pixel b of the last __ line of the block is used to smooth the pixel bc of the current line. For example, the value of the smoothed pixel be' can be calculated by the following formula: be' = [bl * nl + bc * n2] / ( nHn2), where nl and n2 are the weighting of pixels 1)1 and 1) respectively; 099114570 Form No. A0101 Page 7 of 22 0992025738-0 201141237 [0014] The above description is only for the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention; all other equivalent changes or modifications which are not departing from the spirit of the invention should be included in the following [0015] The first figure shows an example of generating an inner frame according to the previous frame and the current frame. The second A shows the frame rate of the embodiment of the present invention. System Block Diagrams FIG. 2B is a flow chart showing a method for increasing the frame rate according to an embodiment of the present invention. FIG. 3A is a detailed block diagram showing a motion compensation (MC) unit of the second A picture in the embodiment of the present invention. FIG. 3B is a detailed block diagram showing the steps of generating the inset frame in the second B diagram of the embodiment of the present invention. FIG. 4A is a detailed block diagram showing the spatial interpolation unit of the third A diagram in the embodiment of the present invention. Figure B shows a detailed flow chart of the steps of spatial interpolation of the third B diagram to repair the rupture zone in the embodiment of the present invention. The fifth A diagram and the fifth B diagram illustrate the last line, the current line and the lower part of the previous block. The first block The lines are stored in the three-line buffer. The sixth figure shows an example of performing spatial interpolation by spatially interpolating the processor. The seventh figure shows an example of performing smoothing. [Key Symbol Description] 099114570 Form No. A0101 Page 8 / Total 22 pages 0992025738-0 201141237 [0016] Ο 21 motion estimation unit 22 motion compensation unit 221 time interpolation unit 222 space interpolation unit 223 smoothing unit 2221 memory 2222 three-wire buffer 2223 space interpolation processor 31-32 Steps 321-323 Step 3222-3223 Step pi ' p2 ' p3 ' p4 ' pc ' bl ' be Pixel ο pTC Special 099114570 Form No. A0101 Page 9 / Total 22 Page 0992025738-0