TW202427364A - 產生包括多個影像的佈局的影像處理裝置和影像處理方法 - Google Patents
產生包括多個影像的佈局的影像處理裝置和影像處理方法 Download PDFInfo
- Publication number
- TW202427364A TW202427364A TW111148134A TW111148134A TW202427364A TW 202427364 A TW202427364 A TW 202427364A TW 111148134 A TW111148134 A TW 111148134A TW 111148134 A TW111148134 A TW 111148134A TW 202427364 A TW202427364 A TW 202427364A
- Authority
- TW
- Taiwan
- Prior art keywords
- vertex
- display area
- data structure
- image
- address
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 9
- 238000013507 mapping Methods 0.000 claims abstract description 98
- 230000004044 response Effects 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 20
- 238000002156 mixing Methods 0.000 claims description 12
- 230000011218 segmentation Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 22
- 239000000203 mixture Substances 0.000 description 6
- 230000001186 cumulative effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 2
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 2
- 230000003321 amplification Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
提供產生多個影像的佈局的影像處理裝置和影像處理方法。方法包含:將佈局分割成多個圖磚;從多個圖磚中選出位於第一顯示區域與第二顯示區域的交界處的第一圖磚,且自第一圖磚裁切出第一子區塊;將第一子區塊映射至校正圖以取得映射區域;響應於映射區域中的第三頂點與第一頂點和第二頂點相對應,對第一資料結構和第二資料結構執行內插運算以取得對應於第三頂點的第三資料結構;根據第三頂點和第三資料結構更新頂點列表以產生組合頂點列表;以及根據組合頂點列表將輸入影像映射到佈局以產生輸出影像。
Description
本發明是有關於一種影像處理技術,且特別是有關於一種產生包括多個影像的佈局的影像處理裝置和影像處理方法。
公告號「US10104288」的美國專利或公告號「I622021」的台灣專利揭露了一種具接合功能的全景影像產生方法及裝置,可利用頂點列表(vertex list)定義的資料結構將相機影像轉換為全景影像。然而,上述的專利僅能輸出單一全景影像。
目前,有許多的軟體(例如:視訊會議軟體或監控系統)需要輸出各種不同的佈局(layout),且一佈局中需要顯示多個不同的影像。舉例來說,視訊會議軟體的佈局需要顯示包括不同與會者的多個影像。由於上述的專利僅能輸出單一全景影像,故其無法滿足多樣性的佈局需求。
本發明提供一種影像處理裝置和影像處理方法,可產生包括多個影像的佈局。
本發明的一種產生包含多個影像的佈局的影像處理裝置,包含:收發器,取得對應於輸入影像的校正圖以及頂點列表,其中頂點列表包含校正圖上的第一頂點、校正圖上的第二頂點、對應於第一頂點的第一資料結構以及對應於第二頂點的第二資料結構;儲存媒體,儲存多個模組;以及處理器,耦接儲存媒體以及收發器,並且存取和執行多個模組,其中多個模組包含:感興趣區域組合器,通過收發器接收佈局資訊以決定佈局中的第一顯示區域以及第二顯示區域;幀圖磚分割單元,將佈局分割成多個圖磚;圖磚分離器,從多個圖磚中選出位於第一顯示區域與第二顯示區域的交界處的第一圖磚,並且自第一圖磚裁切出對應於第一顯示區域的第一子區塊;座標轉換器,將第一子區塊映射至校正圖以取得映射區域;屬性內插器,響應於映射區域中的第三頂點與第一頂點和第二頂點相對應,對第一資料結構和第二資料結構執行內插運算以取得對應於第三頂點的第三資料結構;頂點產生器,根據第三頂點和第三資料結構更新頂點列表以產生組合頂點列表;以及影像處理模組,根據組合頂點列表將輸入影像映射到佈局以產生輸出影像,並且通過收發器輸出輸出影像。
在本發明的一實施例中,上述的多個模組更包含:圖元組裝單元,根據映射區域的尺寸將映射區域分割成多個圖元,其中多個圖元包含具有第三頂點的第一圖元。
在本發明的一實施例中,上述的多個模組更包含:圖元組裝單元,根據頂點列表判斷映射區域是否包含多個原始影像的拼接區域,並且響應於映射區域包含拼接區域而根據拼接區域的尺寸將映射區域分割成多個圖元,其中多個圖元包含具有第三頂點的第一圖元。
在本發明的一實施例中,上述的多個圖元的每一者為具有頂點的幾何結構。
在本發明的一實施例中,上述的佈局資訊包含佈局中的第一原始顯示區域以及第二原始顯示區域,其中感興趣區域組合器響應於第一原始顯示區域與第二原始顯示區域部分地重疊而從第一原始顯示區域分割出包含第一顯示區域的多個子顯示區域,其中多個子顯示區域彼此不重疊,且多個子顯示區域的每一者與第二原始顯示區域不重疊。
在本發明的一實施例中,上述的佈局資訊包含對應於第一原始顯示區域的第一優先次序以及對應於第二原始顯示區域的第二優先次序,其中感興趣區域組合器響應於第一優先次序低於第二優先次序而分割第一原始顯示區域。
在本發明的一實施例中,上述的感興趣區域組合器根據佈局資訊決定投影方法,其中座標轉換器根據投影方法將第一子區塊映射至校正圖以取得映射區域。
在本發明的一實施例中,上述的屬性內插器根據第三頂點與第一頂點在第一方向上的距離決定對應於第一頂點的第一權重以及對應於第二頂點的第二權重。
在本發明的一實施例中,上述的屬性內插器計算第一資料結構中的第一屬性值與第一權重的第一乘積以及第二資料結構中的第二屬性值與第二權重的第二乘積以產生第三資料結構。
在本發明的一實施例中,上述的第一資料結構包含對應於第一頂點的第一縮放因子以及第一混合權重,並且第二資料結構包含對應於第二頂點的第二縮放因子以及第二混合權重,其中屬性內插器計算第一混合權重與第一權重的第一乘積以取得或更新對應於第一縮放因子的第一累加值,並且將計算第二混合權重與第二權重的第二乘積以取得或更新對應於第二縮放因子的第二累加值,其中屬性內插器響應於第一累加值大於第二累加值而從第一縮放因子和第二縮放因子中選擇第一縮放因子以產生第三資料結構。
在本發明的一實施例中,上述的儲存媒體更儲存第一記憶陣列和第二記憶陣列,其中在取得第一乘積後,屬性內插器判斷第一縮放因子與第一記憶陣列中的第一位址是否匹配並且判斷第一位址是否儲存資料,其中若第一位址已經儲存資料,響應於判斷第一縮放因子與第一位址匹配,屬性內插器將第一乘積累加至第二記憶陣列中與第一位址相對應的第二位址,其中若第一位址已經儲存資料,響應於判斷第一縮放因子與第一位址不匹配,屬性內插器將第一縮放因子儲存在第一記憶陣列中的第三位址,並且將第一乘積累加至第二記憶體中與第三位址相對應的第四位址,其中若第一位址並未儲存資料,屬性內插器將第一縮放因子儲存在第一位址中,並且將第一乘積累加至第二位址。
在本發明的一實施例中,上述的儲存媒體更儲存第一記憶陣列和第二記憶陣列,其中第一縮放因子與第一記憶陣列中的第一位址匹配,其中屬性內插器根據查找表將第一乘積累加至第二記憶陣列中與第一位址相對應的第二位置。
在本發明的一實施例中,上述的頂點產生器根據組合頂點列表產生對應於輸出影像的當前幀的當前幀標頭,其中當前幀標頭指示佈局中的第三顯示區域,其中屬性內插器響應於輸出影像的下一幀中的第四顯示區域與第三顯示區域匹配而複製當前幀標頭中的資料以產生對應於下一幀的新組合頂點列表,其中資料包含對應於第三顯示區域的第四頂點和對應於第四頂點的第四資料結構。
在本發明的一實施例中,上述的輸入影像為等距長方投影影像。
在本發明的一實施例中,上述的佈局資訊至少包含:對應於來源影像的第一感興趣區域的座標及寬度和高度以及對應於目標影像的顯示區域的座標及寬度和高度。
本發明的一種產生包含多個影像的佈局的影像處理方法,包含:取得對應於輸入影像的校正圖以及頂點列表,其中頂點列表包含校正圖上的第一頂點、校正圖上的第二頂點、對應於第一頂點的第一資料結構以及對應於第二頂點的第二資料結構;接收佈局資訊以決定佈局中的第一顯示區域以及第二顯示區域;將佈局分割成多個圖磚;從多個圖磚中選出位於第一顯示區域與第二顯示區域的交界處的第一圖磚,並且自第一圖磚裁切出對應於第一顯示區域的第一子區塊;將第一子區塊映射至校正圖以取得映射區域;響應於映射區域中的第三頂點與第一頂點和第二頂點相對應,對第一資料結構和第二資料結構執行內插運算以取得對應於第三頂點的第三資料結構;根據第三頂點和第三資料結構更新頂點列表以產生組合頂點列表;以及根據組合頂點列表將輸入影像映射到佈局以產生輸出影像,並且輸出輸出影像。
本發明的一種產生包含多個影像的佈局的影像處理裝置,包含處理器。處理器經配置以執行:取得對應於輸入影像的校正圖以及頂點列表,其中頂點列表包含校正圖上的第一頂點、校正圖上的第二頂點、對應於第一頂點的第一資料結構以及對應於第二頂點的第二資料結構;接收佈局資訊以決定佈局中的第一顯示區域以及第二顯示區域;將佈局分割成多個圖磚;從多個圖磚中選出位於第一顯示區域與第二顯示區域的交界處的第一圖磚,並且自第一圖磚裁切出對應於第一顯示區域的第一子區塊;將第一子區塊映射至校正圖以取得映射區域;響應於映射區域中的第三頂點與第一頂點和第二頂點相對應,對第一資料結構和第二資料結構執行內插運算以取得對應於第三頂點的第三資料結構;根據第三頂點和第三資料結構更新頂點列表以產生組合頂點列表;以及根據組合頂點列表將輸入影像映射到佈局以產生輸出影像,並且輸出輸出影像。
基於上述,本發明的影像處理裝置可將佈局分割成多個圖磚,並以多個頂點形成圖磚為單位來將輸入影像映射至佈局的顯示區域中。當顯示區域包含交界處或拼接區域時,影像處理裝置進一步將圖磚裁切成更小的子區塊或圖元,藉以增加交界處或拼接區域中的頂點數量。如此,當影像處理裝置基於公告號「US10104288」的美國專利或公告號「I622021」的台灣專利揭露的方法而根據頂點的資料結構將輸入影像轉換成輸出影像時,影像處理裝置將可根據更多的頂點資訊來渲染出輸出影像中的交界處或拼接區域。因此,影像處理裝置可在維持產生輸出影像之效率的情況下,改善交界處或拼接區域的失真問題。
圖1根據本發明的一實施例繪示一種影像處理裝置10的示意圖。影像處理裝置10可包含處理器110、儲存媒體120以及收發器130。
處理器110例如是中央處理單元(central processing unit,CPU),或是其他可程式化之一般用途或特殊用途的微控制單元(micro control unit,MCU)、微處理器(microprocessor)、數位信號處理器(digital signal processor,DSP)、可程式化控制器、特殊應用積體電路(application specific integrated circuit,ASIC)、圖形處理器(graphics processing unit,GPU)、影像訊號處理器(image signal processor,ISP)、影像處理單元(image processing unit,IPU)、算數邏輯單元(arithmetic logic unit,ALU)、複雜可程式邏輯裝置(complex programmable logic device,CPLD)、現場可程式化邏輯閘陣列(field programmable gate array,FPGA)或其他類似元件或上述元件的組合。處理器110可耦接至儲存媒體120以及收發器130,並且存取和執行儲存於儲存媒體120中的多個模組和各種應用程式。
儲存媒體120例如是任何型態的固定式或可移動式的隨機存取記憶體(random access memory,RAM)、唯讀記憶體(read-only memory,ROM)、快閃記憶體(flash memory)、硬碟(hard disk drive,HDD)、固態硬碟(solid state drive,SSD)或類似元件或上述元件的組合,而用於儲存可由處理器110執行的多個模組或各種應用程式。
收發器130以無線或有線的方式傳送及接收訊號。收發器130還可以執行例如低噪聲放大、阻抗匹配、混頻、向上或向下頻率轉換、濾波、放大以及類似的操作。
影像處理裝置10可依照使用者對佈局的需求,產生對應於佈局的輸出影像,如圖2A所示。在圖2A中,輸出影像的佈局200可包含顯示區域A、顯示區域B和顯示區域C等多個顯示區域,且不同的顯示區域可分別顯示相同或不同的輸入影像中的感興趣區域。舉例來說,假設佈局200為遠端會議軟體的佈局,則顯示區域A、顯示區域B和顯示區域C可分別顯示用戶A、用戶B和用戶C等不同的與會者的影像。用戶A的影像和用戶C的影像可分別對應於相同輸入影像的不同感興趣區域。用戶B的影像可對應於不同輸入影像的感興趣區域。
圖3A根據本發明的一實施例繪示儲存媒體120中的多個模組的示意圖。處理器110可存取和執行儲存媒體120中的多個模組,藉以執行影像處理裝置10的各項功能。在本實施例中,儲存媒體120可包含對應性產生器(correspondence generator)121、校正圖生成器(calibration map builder)122、感興趣區域(region of interest,ROI)組合器(composer)123、即時組合器(real-time composer)124、影像擷取模組125、影像接收模組126以及影像處理模組127等多個模組,其功能將於後續說明。
對應性產生器121用以產生對應於輸入影像的原始頂點列表(original vertex list)。產生原始頂點列表的方式可參考公告號「US10104288」的美國專利或公告號「I622021」的台灣專利記載的內容。在一實施例中,對應性產生器121可通過收發器130接收原始頂點列表。影像擷取模組125或影像接收模組126通過收發器130取得原始影像,並產生輸入影像。具體來說,影像擷取模組125可通過收發器130通訊連接至一或多個影像擷取裝置,進而接收由一或多個影像擷取裝置可用於產生等距長方投影影像(equirectangular)的原始影像。另一方面,影像接收模組126可通過收發器130通訊連接至一或多個電子裝置,進而接收非用於產生等距長方投影影像的其他種類的原始影像。輸入影像可包含由影像擷取模組125取得的原始影像轉換成的等距長方投影影像或由影像接收模組126所取得的原始影像轉換成的其他種類的影像。在一實施例中,對應性產生器121可根據來自影像擷取模組125或影像接收模組126的輸入影像產生對應的原始頂點列表,如公告號「US10104288」的美國專利或公告號「I622021」的台灣專利所描述。在一實施例中,單一輸入影像可包含一或多個紋理(texture),其中紋理例如是相機影像(即:原始影像)。舉例來說,作為輸入影像的等距長方投影影像可以是由多個相機所擷取的多個相機影像(或透過轉換相機影像而取得的等距長方投影影像)拼接而成的,故所述輸入影像可包含多個紋理。
原始頂點列表記載了多個頂點以及分別對應於多個頂點的多個資料結構。在取得原始頂點列表後,校正圖生成器122可根據原始頂點列表產生對應於輸入影像的校正圖。舉例來說,若輸入影像的解析度為1920x1080,則對應性產生器121可產生對應於解析度1920x1080的校正圖。原始頂點列表可包含輸入影像與佈局200(或輸出影像)之間的映射關係,並可用以將特定輸入影像映射至佈局200中的特定顯示區域(或特定子顯示區域)。
校正圖可包含原始頂點列表記載的多個頂點。圖4根據本發明的一實施例繪示校正圖400的示意圖。校正圖400可包含144個頂點,並可包含分別對應於144個頂點的144個資料結構。多個頂點可形成圖磚(tile)。舉例來說,校正圖400可包含頂點v0、頂點v1、頂點v2和頂點v3,並可包含分別對應於頂點v0、頂點v1、頂點v2和頂點v3的多個資料結構。頂點v0、頂點v1、頂點v2和頂點v3可形成圖磚410。
表1為原始頂點列表所包含的資訊的範例,其中原始頂點列表(或校正圖400)被假設為包含n個頂點。表1中的資料結構的記憶體位址可指向特定頂點的資料結構。表2為校正圖400的頂點的資料結構的範例,其中表1和表2中各個屬性均可自原始頂點列表中取得。公告號「US10104288」的美國專利或公告號「I622021」的台灣專利記載了根據頂點的資料結構渲染輸入影像以產生輸出影像的具體實施方式。
表1
表2
屬性(attribute) | 說明 |
id | 校正圖對應的輸入影像的識別符 |
v[0].(u, v) | 校正圖中的頂點v0的座標 |
v[0].vertex_ptr[] | 頂點v0的資料結構的記憶體位址 |
… | … |
v[n].(u, v) | 校正圖中的頂點vn的座標 |
v[n].vertex_ptr[] | 頂點vn的資料結構的記憶體位址 |
屬性 | 說明 |
ntex | 頂點所對應的紋理(即:來源影像)的數量(若頂點接近多個來源影像的拼接區域,則頂點可能對應於多個紋理) |
tex_id | 紋理的識別符 |
(u, v) | 頂點的座標 |
alpha | 用於紋理的混合權重(blend weighting) |
sca_id1 | 輸入影像中的第一重疊控制區域的識別符(指向第一重疊控制區域的縮放因子) |
sca_blend1 | 第一重疊控制區域的混合權重 |
sca_id2 | 輸入影像中的第二重疊控制區域的識別符 (指向第二重疊控制區域的縮放因子) |
sca_blend2 | 第二重疊控制區域的混合權重 |
… | … |
sca_idm | 輸入影像中的第m重疊控制區域的識別符 (指向第 m重疊控制區域的縮放因子) |
sca_blendm | 第m重疊控制區域的混合權重 |
scaling coefficient | 縮放係數 |
另一方面,參照圖3A,感興趣區域組合器123可通過收發器130接收由用戶編輯的佈局資訊,其中佈局資訊包含來源影像(即:輸入影像)與目標影像(即:輸出影像)之間的映射關係。具體來說,感興趣區域組合器123可從佈局資訊中取得ROI視窗描述符。表3為ROI視窗描述符的範例。感興趣區域組合器123可從ROI視窗描述符中取得一或多個顯示區域的相關資訊,並且根據所述資訊決定如圖2A所示的佈局200。舉例來說,顯示區域(例如:顯示區域A、B或C)的位置和大小可基於屬性「(dst_x, dst_y)」和屬性「(dst_w, dst_h)」決定。值得注意的是,雖然表3的範例僅記載一組來源影像中的ROI視窗與目標影像中的顯示區域之間的映射關係,但ROI視窗描述符也可包含多組映射關係。換句話說,用戶可在一或多個輸入影像上定義出多個ROI視窗,或可在輸出影像(或佈局200)上定義出多個顯示區域。表3中的投影方法可包含但不限於透視投影(perspective projection)、線性裁切投影(linear crop projection)或同形異義轉換(homograph transform)等渲染方法。線性裁切投影可適用於裁切和縮放等距長方投影影像以產生具有較大視角的輸出影像。
表3
屬性 | 說明 |
win_id | 來源影像中的ROI視窗的識別符 |
(src_x, src_y) | 來源影像中的ROI視窗的原點(左上點)座標 |
(src_w, src_h) | 來源影像中的ROI視窗的寬度和高度 |
(dst_x, dst_y) | 目標影像中的顯示區域的原點(左上點)座標 |
(dst_w, dst_h) | 目標影像中的顯示區域的寬度和高度 |
projection | 投影方法 |
src_domain_id | 來源影像的領域(指示來源影像來自影像擷取模組125或影像接收模組126) |
在一實施例中,感興趣區域組合器123可根據屬性「projection」檢查屬性「(src_x, src_y)」和屬性「(src_w, src_h)」是否符合規定。舉例來說,若屬性「projection」指示投影方法為透視投影,感興趣區域組合器123可檢查屬性「(src_x, src_y)」和屬性「(src_w, src_h)」以確保所述兩個屬性描述的ROI視窗的視角(view angle)小於180度。若ROI視窗的視角大於或等於180度,則感興趣區域組合器123可判斷佈局資訊有誤,並可通過收發器130輸出警示訊息。
在一實施例中,感興趣區域組合器123可根據輸出影像(或佈局200)的範圍檢查屬性「(dst_x, dst_y)」和屬性「(dst_w, dst_h)」是否符合規定。舉例來說,感興趣區域組合器123可檢查屬性「(dst_x, dst_y)」和屬性「(dst_w, dst_h)」以確保所述兩個屬性描述的顯示區域(或子顯示區域)並未超出輸出影像的預設範圍。若顯示區域(或子顯示區域)超出輸出影像的預設範圍,則感興趣區域組合器123可判斷佈局資訊有誤,並可通過收發器130輸出警示訊息。
在一實施例中,佈局資訊可包含佈局200中的多個原始顯示區域。若佈局200中有多個原始顯示區域重疊,則感興趣區域組合器123根據多個重疊原始顯示區域的優先次序來對特定原始顯示區域進行分割,藉以產生佈局200中的多個顯示區域。圖5根據本發明的一實施例繪示原始顯示區域510與原始顯示區域520的重疊模式(overlap pattern)的示意圖。假設佈局資訊包含原始顯示區域510和原始顯示區域520,且佈局資訊記載了原始顯示區域520的優先次序低於原始顯示區域510的優先次序,則感興趣區域組合器123可從原始顯示區域510和原始顯示區域520中選擇分割原始顯示區域520。
具體來說,感興趣區域組合器123可響應於原始顯示區域510與原始顯示區域520部分地重疊而從原始顯示區域520中分割出一或多個子顯示區域,其中所述原始顯示區域彼此不重疊,且所述原始顯示區域的每一者與原始顯示區域510不重疊。以重疊模式530為例,若原始顯示區域520與原始顯示區域510部分地重疊,且原始顯示區域520的優先次序低於原始顯示區域510的優先次序,則感興趣區域組合器123可從原始顯示區域520分割出子顯示區域521和子顯示區域522。子顯示區域521和子顯示區域522彼此不重疊,且子顯示區域521或子顯示區域522都不與顯示區域510重疊。在一實施力中,感興趣區域組合器123可根據ROI視窗的識別符決定顯示區域的優先次序。舉例來說,若子顯示區域521所對應的ROI視窗的識別符之次序(例如:ID#2)大於子顯示區域522所對應的ROI視窗的識別符之次序(例如:ID#1),則子顯示區域521的優先次序可高於子顯示區域522的優先次序。
感興趣區域組合器123可以子顯示區域描述符來代表所產生的一或多個子顯示區域。表4為子顯示區域之子顯示區域描述符的範例。當感興趣區域組合器123產生了多個子顯示區域時,感興趣區域組合器123可產生分別對應於多個子顯示區域的多個子顯示區域描述符。以圖5的重疊模式530為例,感興趣區域組合器123可分別為子顯示區域521和子顯示區域522產生對應的子顯示區域描述符。由於子顯示區域521和子顯示區域522對應於相同的原始顯示區域520(或相同的ROI視窗),故子顯示區域521的描述的屬性「id1」和子顯示區域522的描述符的屬性「id1」相同。當前幀的屬性「id1」和屬性「id2」可被記錄於儲存媒體120中的快取中以作為下一幀的屬性「cache_ref_id1」和屬性「cache_ref_id2」。換句話說,當前幀將成為下一幀的參考幀。
表4
屬性 | 說明 |
id1 | 子顯示區域所對應的ROI視窗的識別符 |
id2 | 子顯示區域的識別符 |
(dst_x, dst_y) | 目標影像中的子顯示區域的原點(左上點)座標 |
(dst_w, dst_h) | 目標影像中的子顯示區域的寬度和高度 |
cache_ref_id1 | 參考幀的ROI視窗的識別符 |
cache_ref_id2 | 參考幀的子顯示區域的識別符 |
vertex_ptr[] | 子顯示區域中的頂點的資料結構的記憶體位址 |
在產生一或多個子顯示區域後,感興趣區域組合器123可根據一或多個子顯示區域將如表3所示的ROI視窗描述符更新為如表5所示的ROI視窗描述符。感興趣區域組合器123可將更新後的ROI視窗描述符傳送至即時組合器124。
表5
屬性 | 說明 |
win_id | 來源影像中的ROI視窗的識別符 |
(src_x, src_y) | 來源影像中的ROI視窗的原點(左上點)座標 |
(src_w, src_h) | 來源影像中的ROI視窗的寬度和高度 |
(dst_x, dst_y) | 目標影像中的顯示區域的原點(左上點)座標 |
(dst_w, dst_h) | 目標影像中的顯示區域的寬度和高度 |
projection | 投影方法 |
src_domain_id | 來源影像的領域(指示來源影像是否為等距長方投影影像) |
subwin_num | 子顯示區域的數量 |
subwin_desc | 子顯示區域描述符的記憶體位址 |
圖3B根據本發明的一實施例繪示即時組合器124的管線的示意圖。即時組合器124的管線可包含幀圖磚分割單元(frame tile partition unit)31、圖磚分離器(tile splitter)32、座標轉換器(coordinate transformer)33、圖元組裝單元(primitive assembly unit)34、校正圖尋找器(calibration map searcher)35、屬性內插器(attribute interpolator)36和頂點產生器(vertex generator)37。管線的三個輸入包含輸入至幀圖磚分割單元31的ROI視窗描述符、輸入至校正圖尋找器35的原始頂點列表以及輸入至校正圖尋找器35的校正圖。管線可根據上述的三個輸入產生組合頂點列表(composed vertex list)。頂點產生器38可將組合頂點列表輸出至影像處理模組127。
請同時參考圖2A~2C。幀圖磚分割單元31可根據ROI視窗描述符產生如圖2A所示的佈局200,並可將佈局200分割成多個圖磚。圖2B根據本發明的一實施例繪示將佈局200分割成多個圖磚的示意圖。
圖磚分離器32可從多個圖磚中選出位於顯示區域A和顯示區域B的交界處21的圖磚210。接著,圖磚分離器32可自圖磚210裁切出多個子區塊,其中所述多個子區塊可包含對應於顯示區域A的子區塊211、對應於交界處21的子區塊212以及對應於顯示區域B的子區塊213,如圖2C所示,其中頂點2111為子區塊211的其中一個頂點。
座標轉換器33可將顯示區域中的圖磚或子區塊中的各個點映射至對應的校正圖以取得校正圖上的映射區域。座標轉換器33可將顯示區域中的圖磚或子區塊的頂點映射至對應的校正圖以取得校正圖上的映射頂點,其中映射頂點可構成映射區域。
以下以將顯示區域A中的圖磚或子區塊映射至校正圖為例,假設顯示區域A與校正圖400相對應,則座標轉換器33可將對應於顯示區域A中的圖磚或子區塊(例如:子區塊211)映射至校正圖400,以在校正圖400中產生對應於顯示區域A的映射區域。具體來說,感興趣區域組合器123可根據佈局資訊決定如表5所述的投影方法。座標轉換器33可根據投影方法將顯示區域A中的圖磚或子區塊的多個頂點映射至校正圖400以產生分別對應於多個頂點的多個映射頂點,其中多個映射頂點可構成映射區域。
以顯示區域A中的子區塊211為例,若投影方法為線性裁切投影,則座標轉換器33可根據方程式(1)和(2)將子區塊211的頂點映射至校正圖400,其中
i代表ROI視窗的索引(或ROI視窗的識別符),
x’代表對應於校正圖400的橫座標(即:子區塊211的映射區域的橫座標),
x代表對應於輸出影像的橫座標(即:子區塊211的橫座標),src_x代表來源影像(即:輸入影像)中的ROI視窗的原點橫座標,src_w代表來源影像中的ROI視窗的寬度,dst_x代表目標影像(即:輸出影像)中的顯示區域的原點橫座標,dst_w代表目標影像中的顯示區域的寬度,
y’代表對應於校正圖400的縱座標(即:子區塊211的映射區域的縱座標),
y代表對應於輸出影像的縱座標(即:子區塊211的縱座標),src_y代表來源影像中的ROI視窗的原點縱座標,src_h代表來源影像中的ROI視窗的高度,dst_y代表目標影像中的顯示區域的原點縱座標,並且dst_h代表目標影像中的顯示區域的高度。上述的座標中,輸出影像的座標之座標系的原點可為顯示區域A的中心點,且校正圖400的座標之座標系的原點可為顯示區域A的映射區域的中心點。
…(1)
…(2)
圖6根據本發明的一實施例繪示透視投影的示意圖。若投影方法為透視投影,則座標轉換器33可根據方程式(3)~(8)將顯示區域A映射至校正圖400以取得映射區域A’,其中映射區域A’的中心點與顯示區域A的中心點相對應。
f代表針對顯示區域A的透視投影所使用的焦距,
H代表顯示區域A的水平寬度的一半,
θ代表映射區域A’的水平視角或水平寬度的一半,
δ代表映射區域A’的中心點與校正圖400的赤道(equator)60之間的距離,
x代表對應於顯示區域A的橫座標,
y代表對應於顯示區域A的縱座標,
α代表映射點與映射區域A’的中心點之間的水平距離(水平距離可被換算為等距長方投影影像的水平角度),並且β代表映射點與赤道60之間的垂直距離(垂直距離可被換算為等距長方投影影像的垂直角度)。屬性dst_w、屬性src_w、屬性src_y和屬性src_h的資訊可來自於如表3所示的ROI視窗描述符。EQT_VFOV可為等距長方投影影像的最大垂直角度,EQT_HFOV可為等距長方投影影像的最大水平角度,EQT_Width可為等距長方投影影像的寬度,並且EQT_Height可為等距長方投影影像的高度。EQT_VFOV、EQT_HFOV、EQT_Width或EQT_Height等參數可與影像擷取裝置的硬體規格相關聯。
…(3)
…(4)
…(5)
…(6)
…(7)
…(8)
在將顯示區域的圖磚或子區塊的頂點映射至校正圖400以產生映射頂點以及映射區域後,圖元組裝單元34可根據映射區域的尺寸將映射區域分割成多個圖磚,並且每個圖磚彼此不重疊。以子區塊211為例,圖7A根據本發明的一實施例繪示對應於子區塊211的映射區域611的示意圖,其中映射區域611是由分別對應於子區塊211的多個頂點的多個映射頂點所構成的。例如,映射區域611的頂點6111是由子區塊211的頂點2111被映射至校正圖400而產生的。圖元組裝單元34可根據映射區域611的尺寸將映射區域611分割成多個圖磚61,並且每個圖磚61彼此不重疊。
在一實施例中,圖元組裝單元34可根據校正圖或原始頂點列表所記載的資訊判斷映射區域是否包含多個原始影像的拼接區域。若頂點的資料結構(即:如表2所示的屬性「ntex」)記載了該頂點對應於多個紋理,則圖元組裝單元34可判斷由所述頂點構成的映射區域是否包含拼接區域。若映射區域包含拼接區域,則圖元組裝單元34可進一步將校正圖中的圖磚分割成多個圖元。具體來說,圖元組裝單元34可根據拼接區域的尺寸來決定圖元的形狀,進而將映射區域分割成多個圖元。
圖7B和7C根據本發明的一實施例繪示將圖磚分割成多個圖元的示意圖。參照圖2B和7B,假設座標轉換器33將佈局200中的圖磚220的頂點映射至校正圖以產生映射區域620,並且假設圖磚220(或顯示區域C)對應於校正圖400。由於圖磚220包含兩個原始影像的拼接線22,故映射區域620包含與拼接線22相對應的拼接區域621。圖元組裝單元34可根據對應於校正圖400的原始頂點列表判斷映射區域620包含拼接區域621。若與校正圖400中的特定點相關的至少一頂點對應於多個紋理(即:與拼接區域621相對應的多個紋理),則圖元組裝單元34可判斷特定點位於拼接區域621中。否則,圖元組裝單元34可判斷特定點位於拼接區域621外。
具體來說,若校正圖400上的特定點位於校正圖400的既有頂點(即:記載於原始頂點列表中的頂點)上,則圖元組裝單元34可判斷所述既有頂點與特定點相關聯,並且根據所述既有頂點判斷特定點是否位於拼接區域621中。若特定點位於校正圖400的兩個既有頂點之間的連線上,則圖元組裝單元34可判斷所述兩個既有頂點的其中之一是否對應於多個紋理。若兩個既有頂點的其中之一對應於多個紋理,則圖元組裝單元34可判斷特定點位於拼接區域621中。若特定點位於校正圖400的圖磚(例如:圖磚410)之內,則圖元組裝單元34可判斷校正圖400上與特定點最接近的四個既有頂點(即:記載於原始頂點列表中且包圍住特定點的四個頂點)是否對應於多個紋理。若四個既有頂點的其中之一對應於多個紋理,則圖元組裝單元34可判斷特定點位於拼接區域621中。
在判斷映射區域620包含拼接區域621後,圖元組裝單元34可根據拼接區域621的尺寸將映射區域620(或拼接區域621)分割成多個圖元,其中所述多個圖元彼此不重疊。所產生的數個圖元可拼湊出完整的拼接區域621。以圖7B為例,假設拼接區域621為長方形,圖元組裝單元34可將與拼接區域621部分地重疊的圖磚61分割成兩個長方形的圖元62。拼接區域621可由3個圖磚61和3個圖元62拼湊而成。以圖7C為例,假設拼接區域621為平行四邊形,圖元組裝單元34可將映射區域620分割成多個三角形的圖元,諸如圖元71、圖元72和圖元73等。映射區域620中的拼接區域621可由12個三角形的圖元拼湊而成。
在圖元組裝單元34將映射區域620分割成多個圖元後,校正圖400可包含既有頂點(即:原始頂點列表記載的頂點)、映射區域(例如:映射區域620)中的映射頂點(例如:由佈局200中的圖磚22的頂點映射至校正圖400而產生的頂點)以及圖元頂點(例如:圖元62的頂點)等數種頂點。由於原始頂點列表僅記載既有頂點的資料結構,故映射頂點或圖元頂點的資料結構是未知的。據此,屬性內插器36可根據既有頂點的資料結構執行內插運算以取得映射頂點或圖元頂點的資料結構。
具體來說,校正圖尋找器35可判斷校正圖400中的哪一個既有頂點與映射區域中的特定頂點(即:映射頂點或圖元頂點)相關。以如圖4所示的圖磚410為例,校正圖尋找器35可基於特定頂點在圖磚410中的位置來判斷圖磚410的哪一個頂點與所述特定頂點相關聯。圖8A、8B和8C根據本發明的一實施例繪示圖磚410的示意圖,其中圖磚410的頂點v0、v1、v2和v3為記載在原始頂點列表的既有頂點。參照圖8A,若映射區域(例如:映射區域620)中的頂點v’位於校正圖400的頂點v1上,則校正圖尋找器35可判斷頂點v1關聯於頂點v’。參照圖8B,若頂點v’位於校正圖40 0的兩個既有頂點(即:頂點v0和v1)之間的連線上,則校正圖尋找器35可判斷頂點v0和頂點v1關聯於頂點v’。參照圖8C,若頂點v’位於校正圖400的圖磚410之內,則校正圖尋找器35可判斷校正圖400上與頂點v’最接近的四個既有頂點(即:頂點v0、v1、v2和v’)關聯於頂點v’。
若頂點v’與單一個既有頂點相關聯,則屬性內插器36可產生頂點v’的資料結構,其中頂點v’的資料結構與既有頂點的資料結構相同。以圖8A為例,屬性內插器36可將v’的資料結構設為v1的資料結構。另一方面,若頂點v’與多個既有頂點相關聯,則屬性內插器36可對分別對應於多個既有頂點的多個資料結構執行內插運算以取得對應於頂點v’的資料結構。
以圖8C為例,屬性內插器36可對分別對應於頂點v0、v1、v2和v3的多個資料結構執行內插運算以取得頂點v’的資料結構。在一實施例中,屬性內插器36可執行如方程式(9)所示的雙線性內插法(bilinear interpolation)運算以取得頂點v’的資料結構中的屬性「(u, v)」或屬性「alpha」,其中dx為圖磚410的原點(即:左上角的頂點v0)與頂點v’在x方向上的距離,dy為圖磚410的原點與頂點v’在y方向上的距離,v’.k為頂點v’的屬性值(例如:屬性(u, v)或alpha的屬性值),v0.k為頂點v0的屬性值,B[0]為對應於頂點v0的權重,v1.k為頂點v1的屬性值,B[1]為對應於頂點v1的權重,v2.k為頂點v2的屬性值,B[2]為對應於頂點v2的權重,v3.k為頂點v3的屬性值,並且B[3]為對應於頂點v3的權重。
…(9)
在頂點v’的資料結構中,並非所有的屬性值都是通過執行內插運算取得。在一實施例中,屬性內插器36可為資料結構中的各個重疊控制區域(對應於屬性
sca_
bland[
i])計算縮放因子的累加值。屬性內插器36可根據方程式(10)計算縮放因子的累加值
w[
i],其中
i代表重疊控制區域的索引(
i=1~m),
j代表關聯於頂點v’的既有頂點的索引(
j=0~3),
w[
i]代表對應於第
i重疊控制區域的縮放因子的累加值,
v[
j].
sca_blend[
i]代表頂點
vj的屬性「
sca_
blandi(
i=1~
m)」指示的混合權重,並且
B[
j]代表對應於頂點
vj的權重。
…(10)
屬性內插器36可從多個縮放因子中選擇具有較大累加值的一或多個縮放因子以分配給頂點v’,進而產生頂點v’的資料結構。若多個縮放因子包含第一縮放因子和第二縮放因子,則屬性內插器36可響應於對應於第一縮放因子的第一累加值大於對應於第二縮放因子的第二累加值而從第一縮放因子和第二縮放因子之中優先地選擇第一縮放因子來產生頂點v’的資料結構。縮放因子的累加值越大,代表所述縮放因子對頂點v’的影響程度越大。縮放因子的累加值越小,代表所述縮放因子對頂點v’的影響程度越小。屬性內插器36可將頂點v’的屬性「sca_id1」設定為指向具有最大累加值的縮放因子,並可將頂點v’的屬性「sca_id2」設定為指向具有次大累積值的縮放因子。以此類推,屬性內插器36可將頂點v’的屬性「sca_idm」設定為指向具有最小累加值的縮放因子。
舉例來說,在為
m個重疊控制區域計算完
m個累加值
(
i=1~
m)後,屬性內插器36可從
m個累加值
中選出較大的
n個累加值(
n≤m)。以
n=2為例,屬性內插器36可響應於累加值
w[
p1]為
m個累加值中的最大累加值而選擇對應於累加值
w[
p1]的縮放因子,並且根據受選縮放因子設定頂點v’的屬性「sca_id1」和屬性「sca_blend1」。屬性內插器36可響應於累加值
w[
p2]為
m個累加值中的次大累加值而選擇對應於累加值
w[
p2]的縮放因子,並且根據受選縮放因子設定頂點v’的屬性「sca_id2」和屬性「sca_blend2」。屬性內插器36可將頂點v’的屬性「sca_id1」設定為指向對應於累加值
w[
p1]的受選縮放因子的識別符,並可根據方程式(11)計算屬性「sca_blend1」。屬性內插器36可將頂點v’的屬性「sca_id2」設定為指向對應於累加值
w[
p2]的受選縮放因子的識別符,並可根據方程式(11)計算屬性「sca_blend2」。
k代表屬性「sca_blend」的索引(
k=1時,sca_blend[
k]代表屬性sca_blend1),
j代表
n個受選累加值的索引(例如:
j=1指示累加值
w[
p1];
j=2指示累加值
w[
p1]),並且
l代表受選縮放因子的累加值的索引(例如:
l=
p1時,
w[
l]代表累加值
w[
p1];
l=
p2時,
w[
l]代表累加值
w[
p2])。
…(11)
在一實施例中,儲存媒體120記憶陣列hid和記憶陣列hist,其中記憶陣列hid用以儲存
m個重疊控制區域的屬性「sca_id」,並且記憶陣列hist用以儲存
m個重疊控制區域的屬性「sca_blend」。
在一實施例中,在計算完乘積
(
)後,屬性內插器36可判斷對應於乘積
的縮放因子(對應於屬性sca_id[
α])與記憶陣列hid中的位址#1是否匹配,並且判斷記憶陣列hid中的位址#1是否儲存任何資料。若位址#1並未儲存任何資料(如表6所示),則屬性內插器36可將指示縮放因子的屬性sca_id[
α]儲存在記憶陣列hid中的位址#1,並且將乘積
累加至記憶陣列hist的位址#A中的累加值A,如表7所示,其中位址#A對應於位址#1。
表6
表7
記憶陣列 | 位址#1 | 位址#2 | 位址#3 | … | 位址# m |
hid | - | - | - | … | - |
記憶陣列 | 位址#1 | 位址#2 | 位址#3 | … | 位址# m |
hid | sca_id[ α] | - | - | … | - |
記憶陣列 | 位址#A | 位址#B | 位址#C | … | 位址# M |
hist | 累加值A | - | - | … | - |
若記憶陣列hid中的位址#1已經儲存資料,則屬性內插器36可進一步判斷對應於乘積
的縮放因子(對應於屬性sca_id[
α])與記憶陣列hid中的位址#1是否匹配。若對應於乘積
的縮放因子與記憶陣列hid中的位址#1匹配(如表8所示),則屬性內插器36可將乘積
累加至記憶陣列hist的位址#A中的累加值A,如表7所示,其中位址#A對應於位址#1。
表8
記憶陣列 | 位址#1 | 位址#2 | 位址#3 | … | 位址# m |
hid | sca_id[ α] | - | - | … | - |
若記憶陣列hid中的位址#1已經儲存資料,並且對應於乘積
的縮放因子與記憶陣列hid中的位址#1不匹配(如表9所示),則屬性內插器36可將指示縮放因子的屬性sca_id[
α]儲存在記憶陣列hid中尚未儲存任何資料的位址#2,並且將乘積
累加至記憶陣列hist的位址#B中的累加值B,如表10所示,其中位址#B對應於位址#2。
表9
表10
記憶陣列 | 位址#1 | 位址#2 | 位址#3 | … | 位址# m |
hid | sca_id[ β] | - | - | … | - |
記憶陣列 | 位址#1 | 位址#2 | 位址#3 | … | 位址# m |
hid | sca_id[ β] | sca_id[ α] | - | … | - |
記憶陣列 | 位址#A | 位址#B | 位址#C | … | 位址# M |
hist | 累加值A | 累加值B | - | … | - |
在一實施例中,儲存媒體120可儲存查找表,其中查找表可包含屬性「sca_id」與記憶陣列hid的位址的映射關係。在計算完對應於「屬性sca_id[
α]」的乘積
後,屬性內插器36可根據查找表判斷記憶陣列hid中與「屬性sca_id[
α]」相對應的位址(例如:位址#1)。屬性內插器36可進一步將乘積
累加至記憶陣列hist中的對應位址(例如:對應於位址#1的位址#A)。利用查找表計算累加值可避免執行「判斷乘積與記憶陣列hid的位址是否匹配」的步驟,進而顯著地降低運算資源的消耗。
在取得頂點v’的一或多個屬性「sca_id」和屬性「sca_blend」後,屬性內插器36可根據方程式(12)計算頂點v’的屬性「scaling coefficient」,其中
i代表重疊控制區域的索引,
j代表關聯於頂點v’的既有頂點的索引,
v’.
S代表頂點v’的屬性「scaling coefficient」的屬性值,
v[
j].
S代表對應於既有頂點的扭轉(warping)值,
B[
j]代表對應於既有頂點的權重,
代表既有頂點的縮放因子,
代表既有頂點的混合權重,並且
C(
)代表對應於縮放因子
的扭轉係數(warping coefficient)。
…(12)
在一實施例中,處理器110可具備多個核心。屬性內插器36可分別利用都個核心產生分別對應於多個頂點的多個資料結構。如此,影像處理裝置10可快速地取得各個頂點(例如:頂點v’)的資料結構。
在取得頂點v’的資料結構後,頂點產生器37可將頂點v’的資料結構加入至原始頂點列表以更新原始頂點列表,進而產生組合頂點列表(composed vertex list)。頂點產生器37可將組合頂點列表輸出至影像處理模組127。影像處理模組127可根據組合頂點列表將輸入影像映射至佈局200以產生輸出影像。換句話說,影像處理模組127可根據組合頂點列表渲染輸入影像以產生輸出影像。影像處理模組127可通過收發器130輸出所產生的輸出影像。公告號「US10104288」的美國專利或公告號「I622021」的台灣專利記載了根據頂點列表渲染輸入影像以產生輸出影像的具體實施方式。
在一實施例中,處理器110可從原始頂點列表、ROI視窗描述符及子顯示區域描述符取得資訊,並將取得的資訊儲存在儲存媒體120的幀內快取(intra frame cache)中。表11為幀內快取的資料結構的範例,其中所述資料結構包含屬性「ntex」、屬性「win_id」和屬性「vtx_addr」的群組。在屬性內插器36為一頂點產生資料結構之前,屬性內插器36可判斷所述頂點的屬性值是否與任意群組中的屬性「ntex」和屬性「win_id」匹配。若所述頂點的屬性值與一群組中的屬性「ntex」和屬性「win_id」匹配,代表所述頂點的資料結構已經存在。據此,屬性內插器36可將所述頂點的資料結構設定為群組中的屬性「vtx_addr」所指示的資料結構。舉例來說,若映射區域(例如:映射區域611)中的兩個圖磚相鄰,分別為圖磚#1和圖磚#2。在產生完圖磚#1的各個頂點的資料結構後,屬性內插器36可根據幀內快取判斷圖磚#1和圖磚#2的共邊上的頂點的資料結構已經產生。因此,在產生圖磚#2的各個頂點的資料結構時,屬性內插器36可省略產生共邊上的頂點的資料結構的步驟,進而加快影像處理流程。
表11
屬性 | 說明 |
ntex | 幀中的頂點所對應的紋理的數量 |
win_id | 幀的來源影像中的ROI視窗的識別符 |
vtx_addr | 幀中的頂點的資料結構的記憶體位址 |
在一實施例中,頂點產生器37可根據組合頂點列表產生對應於輸出影像的當前幀的當前幀標頭。表12為幀標頭的範例,其中屬性「win_desc」可指示輸出影像的佈局200中的顯示區域。當輸出影像進入下一幀時,當前幀標頭將會成為下一幀的參考幀標頭。
表12
屬性 | 說明 |
vertex_data | 幀中的頂點的資料結構的記憶體位址 |
win_num | 幀中的ROI視窗的數量 |
win_desc | ROI視窗描述符的記憶體位址 |
subwin_desc | 幀中的子顯示區域描述符的記憶體位址 |
當屬性內插器36為對應於輸出影像的下一幀的顯示區域(或子顯示區域)中的頂點產生資料結構時,屬性內插器36可判斷下一幀的顯示區域與參考幀標頭指示的顯示區域是否匹配。具體來說,參考幀標頭可指示儲存媒體120中與參考幀的顯示區域(或子顯示區域)相對應的幀間快取(inter frame cache),其中幀間快取包含屬性「cache_ref_id1」與「cache_ref_id2」。若下一幀的顯示區域的屬性「id1」與參考幀標頭所指示的屬性「cache_ref_id1」相同,並且下一幀的顯示區域的屬性「id2」與參考幀標頭所指示的屬性「cache_ref_id2」相同,則屬性內插器36可判斷兩個顯示區域匹配。否則,屬性內插器36可判斷兩個顯示區域不匹配。
屬性內插器36可響應於下一幀的顯示區域與參考幀標頭指示的顯示區域匹配而複製參考幀標頭中的資料,其中所述資料包含參考幀標頭所指示的顯示區域中的頂點和對應於所述頂點的資料結構。複製的資料用以產生對應於下一幀的組合頂點列表。
圖9根據本發明的一實施例繪示一種產生包括多個影像的佈局的影像處理方法的流程圖,其中影像處理方法可由如圖1所示的影像處理裝置10實施。在步驟S901中,取得對應於輸入影像的校正圖以及頂點列表,其中頂點列表包含校正圖上的第一頂點、校正圖上的第二頂點、對應於第一頂點的第一資料結構以及對應於第二頂點的第二資料結構。在步驟S902中,接收佈局資訊以決定佈局中的第一顯示區域以及第二顯示區域。在步驟S903中,將佈局分割成多個圖磚。在步驟S904中,從多個圖磚中選出位於第一顯示區域與第二顯示區域的交界處的第一圖磚,並且自第一圖磚裁切出對應於第一顯示區域的第一子區塊。在步驟S905中,將第一子區塊映射至校正圖以取得映射區域。在步驟S906中,響應於映射區域中的第三頂點與第一頂點和第二頂點相對應,對第一資料結構和第二資料結構執行內插運算以取得對應於第三頂點的第三資料結構。在步驟S907中,根據第三頂點和第三資料結構更新頂點列表以產生組合頂點列表。在步驟S908中,根據組合頂點列表將輸入影像映射到佈局以產生輸出影像,並且輸出輸出影像。
綜上所述,本發明的影像處理裝置可基於使用者對佈局的需求而根據校正圖的頂點列表產生具有多個顯示區域的佈局,其中不同的顯示區域可用於顯示不同的影像。影像處理裝置可以圖磚為單位來將顯示區域映射至校正圖以產生映射區域,再根據校正圖的頂點列表對映射區域執行內插運算以取得每一像素的資料結構。影像處理裝置可根據各個像素的資料結構將輸入影像映射至佈局的顯示區域中,以產生輸出影像。針對不同顯示區域的交界處或拼接區域,影像處理裝置可進一步將圖磚裁切成子區塊或圖元,以使所述交界處或拼接區域包含更多個頂點及其資料結構。據此,在根據頂點列表將輸入影像映射至佈局時,影像處理裝置可為顯示區域中的交界處或拼接區域分配更多的運算資源。因此,本發明可以最佳的效率產生具有多個顯示區域的輸出影像。
10:影像處理裝置
110:處理器
120:儲存媒體
121:對應性產生器
122:校正圖生成器
123:感興趣區域組合器
124:即時組合器
125:影像擷取模組
126:影像接收模組
127:影像處理模組
130:收發器
200:佈局
21:交界處
210、220、410、61:圖磚
211、212、213:子區塊
2111、6111:頂點
22:拼接線
31:幀圖磚分割單元
32:圖磚分離器
33:座標轉換器
34:圖元組裝單元
35:校正圖尋找器
36:屬性內插器
37:頂點產生器
400:校正圖
510、520:原始顯示區域
521、522:子顯示區域
530:重疊模式
60:赤道
611、620:映射區域
62、71、72、73:圖元
621:拼接區域
S901、S902、S903、S904、S905、S906、S907、S908:步驟
圖1根據本發明的一實施例繪示一種影像處理裝置的示意圖。
圖2A根據本發明的一實施例繪示對應於佈局的輸出影像的示意圖。
圖2B根據本發明的一實施例繪示將佈局分割成多個圖磚的示意圖。
圖2C根據本發明的一實施例繪示自圖磚裁切出多個子區塊的示意圖。
圖3A根據本發明的一實施例繪示儲存媒體中的多個模組的示意圖。
圖3B根據本發明的一實施例繪示即時組合器的管線(pipeline)的示意圖。
圖4根據本發明的一實施例繪示校正圖的示意圖。
圖5根據本發明的一實施例繪示原始顯示區域510與原始顯示區域520的重疊模式的示意圖。
圖6根據本發明的一實施例繪示透視投影的示意圖。
圖7A根據本發明的一實施例繪示對應於子區塊的映射區域的示意圖。
圖7B和7C根據本發明的一實施例繪示將圖磚分割成多個圖元的示意圖。
圖8A、8B和8C根據本發明的一實施例繪示圖磚410的示意圖。
圖9根據本發明的一實施例繪示一種產生包括多個影像的佈局的影像處理方法的流程圖。
S901、S902、S903、S904、S905、S906、S907、S908:步驟
Claims (17)
- 一種產生包括多個影像的佈局的影像處理裝置,包括: 收發器,取得對應於輸入影像的校正圖以及頂點列表,其中所述頂點列表包括所述校正圖上的第一頂點、所述校正圖上的第二頂點、對應於所述第一頂點的第一資料結構以及對應於所述第二頂點的第二資料結構; 儲存媒體,儲存多個模組;以及 處理器,耦接所述儲存媒體以及所述收發器,並且存取和執行所述多個模組,其中所述多個模組包括: 感興趣區域組合器,通過所述收發器接收佈局資訊以決定所述佈局中的第一顯示區域以及第二顯示區域; 幀圖磚分割單元,將所述佈局分割成多個圖磚; 圖磚分離器,從所述多個圖磚中選出位於所述第一顯示區域與所述第二顯示區域的交界處的第一圖磚,並且自所述第一圖磚裁切出對應於所述第一顯示區域的第一子區塊; 座標轉換器,將所述第一子區塊映射至所述校正圖以取得映射區域; 屬性內插器,響應於所述映射區域中的第三頂點與所述第一頂點和所述第二頂點相對應,對所述第一資料結構和所述第二資料結構執行內插運算以取得對應於所述第三頂點的第三資料結構; 頂點產生器,根據所述第三頂點和所述第三資料結構更新所述頂點列表以產生組合頂點列表;以及 影像處理模組,根據所述組合頂點列表將所述輸入影像映射到所述佈局以產生輸出影像,並且通過所述收發器輸出所述輸出影像。
- 如請求項1所述的影像處理裝置,其中,其中所述多個模組更包括: 圖元組裝單元,根據所述映射區域的尺寸將所述映射區域分割成多個圖元,其中所述多個圖元包括具有所述第三頂點的第一圖元。
- 如請求項1所述的影像處理裝置,其中所述多個模組更包括: 圖元組裝單元,根據所述頂點列表判斷所述映射區域是否包括多個原始影像的拼接區域,並且響應於所述映射區域包括所述拼接區域而根據所述拼接區域的尺寸將所述映射區域分割成多個圖元,其中所述多個圖元包括具有所述第三頂點的第一圖元。
- 如請求項2所述的影像處理裝置,其中所述多個圖元的每一者為具有頂點的幾何結構。
- 如請求項1所述的影像處理裝置,其中所述佈局資訊包括所述佈局中的第一原始顯示區域以及第二原始顯示區域,其中 所述感興趣區域組合器響應於所述第一原始顯示區域與所述第二原始顯示區域部分地重疊而從所述第一原始顯示區域分割出包括所述第一顯示區域的多個子顯示區域,其中所述多個子顯示區域彼此不重疊,且所述多個子顯示區域的每一者與所述第二原始顯示區域不重疊。
- 如請求項5所述的影像處理裝置,其中所述佈局資訊包括對應於所述第一原始顯示區域的第一優先次序以及對應於所述第二原始顯示區域的第二優先次序,其中 所述感興趣區域組合器響應於所述第一優先次序低於所述第二優先次序而分割所述第一原始顯示區域。
- 如請求項1所述的影像處理裝置,其中 所述感興趣區域組合器根據所述佈局資訊決定投影方法,其中 所述座標轉換器根據所述投影方法將所述第一子區塊映射至所述校正圖以取得所述映射區域。
- 如請求項1所述的影像處理裝置,其中 所述屬性內插器根據所述第三頂點與所述第一頂點在第一方向上的距離決定對應於所述第一頂點的第一權重以及對應於所述第二頂點的第二權重。
- 如請求項8所述的影像處理裝置,其中 所述屬性內插器計算所述第一資料結構中的第一屬性值與所述第一權重的第一乘積以及所述第二資料結構中的第二屬性值與所述第二權重的第二乘積以產生所述第三資料結構。
- 如請求項8所述的影像處理裝置,其中所述第一資料結構包括對應於所述第一頂點的第一縮放因子以及第一混合權重,並且所述第二資料結構包括對應於所述第二頂點的第二縮放因子以及第二混合權重,其中 所述屬性內插器計算所述第一混合權重與所述第一權重的第一乘積以取得或更新對應於所述第一縮放因子的第一累加值,並且將計算所述第二混合權重與所述第二權重的第二乘積以取得或更新對應於所述第二縮放因子的第二累加值,其中 所述屬性內插器響應於所述第一累加值大於所述第二累加值而從所述第一縮放因子和所述第二縮放因子中選擇所述第一縮放因子以產生所述第三資料結構。
- 如請求項10所述的影像處理裝置,其中所述儲存媒體更儲存第一記憶陣列和第二記憶陣列,其中 在取得所述第一乘積後,所述屬性內插器判斷所述第一縮放因子與所述第一記憶陣列中的第一位址是否匹配並且判斷所述第一位址是否儲存資料,其中 若所述第一位址已經儲存所述資料,響應於判斷所述第一縮放因子與所述第一位址匹配,所述屬性內插器將所述第一乘積累加至所述第二記憶陣列中與所述第一位址相對應的第二位址,其中 若所述第一位址已經儲存所述資料,響應於判斷所述第一縮放因子與所述第一位址不匹配,所述屬性內插器將所述第一縮放因子儲存在所述第一記憶陣列中的第三位址,並且將所述第一乘積累加至所述第二記憶體中與所述第三位址相對應的第四位址,其中 若所述第一位址並未儲存所述資料,所述屬性內插器將所述第一縮放因子儲存在所述第一位址中,並且將所述第一乘積累加至所述第二位址。
- 如請求項10所述的影像處理裝置,其中所述儲存媒體更儲存第一記憶陣列和第二記憶陣列,其中所述第一縮放因子與所述第一記憶陣列中的第一位址匹配,其中 所述屬性內插器根據查找表將所述第一乘積累加至所述第二記憶陣列中與所述第一位址相對應的第二位置。
- 如請求項1所述的影像處理裝置,其中 所述頂點產生器根據所述組合頂點列表產生對應於所述輸出影像的當前幀的當前幀標頭,其中所述當前幀標頭指示所述佈局中的第三顯示區域,其中 所述屬性內插器響應於所述輸出影像的下一幀中的第四顯示區域與所述第三顯示區域匹配而複製所述當前幀標頭中的資料以產生對應於所述所述下一幀的新組合頂點列表,其中所述資料包括對應於所述第三顯示區域的第四頂點和對應於所述第四頂點的第四資料結構。
- 如請求項1所述的影像處理裝置,其中所述輸入影像為等距長方投影影像。
- 如請求項1所述的影像處理裝置,其中所述佈局資訊至少包括:對應於來源影像的第一感興趣區域的座標及寬度和高度以及對應於目標影像的顯示區域的座標及寬度和高度。
- 一種產生包括多個影像的佈局的影像處理方法,包括: 取得對應於輸入影像的校正圖以及頂點列表,其中所述頂點列表包括所述校正圖上的第一頂點、所述校正圖上的第二頂點、對應於所述第一頂點的第一資料結構以及對應於所述第二頂點的第二資料結構; 接收佈局資訊以決定所述佈局中的第一顯示區域以及第二顯示區域; 將所述佈局分割成多個圖磚; 從所述多個圖磚中選出位於所述第一顯示區域與所述第二顯示區域的交界處的第一圖磚,並且自所述第一圖磚裁切出對應於所述第一顯示區域的第一子區塊; 將所述第一子區塊映射至所述校正圖以取得映射區域; 響應於所述映射區域中的第三頂點與所述第一頂點和所述第二頂點相對應,對所述第一資料結構和所述第二資料結構執行內插運算以取得對應於所述第三頂點的第三資料結構; 根據所述第三頂點和所述第三資料結構更新所述頂點列表以產生組合頂點列表;以及 根據所述組合頂點列表將所述輸入影像映射到所述佈局以產生輸出影像,並且輸出所述輸出影像。
- 一種產生包括多個影像的佈局的影像處理裝置,包括: 處理器,經配置以執行: 取得對應於輸入影像的校正圖以及頂點列表,其中所述頂點列表包括所述校正圖上的第一頂點、所述校正圖上的第二頂點、對應於所述第一頂點的第一資料結構以及對應於所述第二頂點的第二資料結構; 接收佈局資訊以決定所述佈局中的第一顯示區域以及第二顯示區域; 將所述佈局分割成多個圖磚; 從所述多個圖磚中選出位於所述第一顯示區域與所述第二顯示區域的交界處的第一圖磚,並且自所述第一圖磚裁切出對應於所述第一顯示區域的第一子區塊; 將所述第一子區塊映射至所述校正圖以取得映射區域; 響應於所述映射區域中的第三頂點與所述第一頂點和所述第二頂點相對應,對所述第一資料結構和所述第二資料結構執行內插運算以取得對應於所述第三頂點的第三資料結構; 根據所述第三頂點和所述第三資料結構更新所述頂點列表以產生組合頂點列表;以及 根據所述組合頂點列表將所述輸入影像映射到所述佈局以產生輸出影像,並且輸出所述輸出影像。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111148134A TWI829475B (zh) | 2022-12-15 | 2022-12-15 | 產生包括多個影像的佈局的影像處理裝置和影像處理方法 |
US18/315,485 US20240202868A1 (en) | 2022-12-15 | 2023-05-10 | Image processing device and image processing method of generating layout including multiple images |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111148134A TWI829475B (zh) | 2022-12-15 | 2022-12-15 | 產生包括多個影像的佈局的影像處理裝置和影像處理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI829475B TWI829475B (zh) | 2024-01-11 |
TW202427364A true TW202427364A (zh) | 2024-07-01 |
Family
ID=90459044
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111148134A TWI829475B (zh) | 2022-12-15 | 2022-12-15 | 產生包括多個影像的佈局的影像處理裝置和影像處理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20240202868A1 (zh) |
TW (1) | TWI829475B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI860944B (zh) * | 2024-02-19 | 2024-11-01 | 信驊科技股份有限公司 | 用於渲染影像的影像處理裝置和影像處理方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10186067B2 (en) * | 2016-10-25 | 2019-01-22 | Aspeed Technology Inc. | Method and apparatus for generating panoramic image with rotation, translation and warping process |
US10104288B2 (en) * | 2017-02-08 | 2018-10-16 | Aspeed Technology Inc. | Method and apparatus for generating panoramic image with stitching process |
GB2569342B (en) * | 2017-12-14 | 2019-12-11 | Imagination Tech Ltd | Multi-view Primitive blocks |
CN109885424B (zh) * | 2019-01-16 | 2024-05-31 | 平安科技(深圳)有限公司 | 一种数据备份方法、装置及计算机设备 |
US11373268B2 (en) * | 2020-09-30 | 2022-06-28 | Qualcomm Incorporated | Apparatus and method for graphics processing unit hybrid rendering |
-
2022
- 2022-12-15 TW TW111148134A patent/TWI829475B/zh active
-
2023
- 2023-05-10 US US18/315,485 patent/US20240202868A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20240202868A1 (en) | 2024-06-20 |
TWI829475B (zh) | 2024-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5473173B2 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
US20130058589A1 (en) | Method and apparatus for transforming a non-linear lens-distorted image | |
US20050265619A1 (en) | Image providing method and device | |
CN107516319A (zh) | 一种高精度简易交互式抠图方法、存储设备及终端 | |
JP2002015335A (ja) | モーションブラー画像描画方法及び描画装置 | |
JP2022524806A (ja) | 画像融合方法及び携帯端末 | |
WO2020098721A1 (zh) | 虚拟现实设备的图像呈现方法、装置、设备和计算机存储介质 | |
US20240208419A1 (en) | Display method and display system of on-vehicle avm, electronic device, and storage medium | |
TWI683569B (zh) | 全景視頻的壓縮方法及裝置 | |
JP2008311890A (ja) | 画像データ変換装置、及びこれを備えたカメラ装置 | |
CN111556227B (zh) | 一种视频去噪方法、装置、移动终端和存储介质 | |
CN105678687A (zh) | 基于图像内容的立体图像拼接方法 | |
CN106412669A (zh) | 一种全景视频渲染的方法和设备 | |
TWI829475B (zh) | 產生包括多個影像的佈局的影像處理裝置和影像處理方法 | |
WO2024002064A1 (zh) | 三维模型构建方法、装置、电子设备及存储介质 | |
US20160189350A1 (en) | System and method for remapping of image to correct optical distortions | |
CN104952101A (zh) | 一种基于高度场的动态矢量渲染方法 | |
US11528412B2 (en) | Apparatus and method for stitching together multiple images | |
CN118229591A (zh) | 产生包括多个影像的布局的影像处理装置和影像处理方法 | |
WO2011015029A1 (zh) | 基于参数化的快速梯度网格图像矢量化方法及其系统 | |
JP4212430B2 (ja) | 多重画像作成装置、多重画像作成方法、多重画像作成プログラム及びプログラム記録媒体 | |
CN105847779B (zh) | 垂直方向立体接缝雕刻缩放方法 | |
JP7366563B2 (ja) | 画像生成装置、画像生成方法、及びプログラム | |
TWI860944B (zh) | 用於渲染影像的影像處理裝置和影像處理方法 | |
CN113240573A (zh) | 一种针对千万级像素数字图像的基于局部和全局并行学习的风格变换方法及系统 |