TWI635746B - 扭曲畫面校正裝置及方法 - Google Patents
扭曲畫面校正裝置及方法 Download PDFInfo
- Publication number
- TWI635746B TWI635746B TW105114351A TW105114351A TWI635746B TW I635746 B TWI635746 B TW I635746B TW 105114351 A TW105114351 A TW 105114351A TW 105114351 A TW105114351 A TW 105114351A TW I635746 B TWI635746 B TW I635746B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- block
- block data
- data
- picture
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 27
- 238000012937 correction Methods 0.000 claims abstract description 38
- 238000010586 diagram Methods 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 4
- 238000003384 imaging method Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Image Processing (AREA)
- Geometry (AREA)
Abstract
一種扭曲畫面校正裝置,用以校正一扭曲畫面以產生一校正後畫面,包含:一緩衝記憶體,包含複數個記憶體區塊,分別用以儲存該扭曲畫面之複數個區塊資料中之一;一配置單元,根據一記憶體組態於該緩衝記憶體中配置該些記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量;一記憶體控制器,自一記憶體擷取該扭曲畫面之該些區塊資料,並根據該記憶體組態將該些區塊資料儲存至該緩衝記憶體;以及一校正電路,根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。
Description
本發明係關於影像處理,尤有關於扭曲畫面校正裝置及方法。
在經由成像鏡頭攝影成像時,由於光學失真,會使得其成像影像有所彎曲,例如呈現圓弧形或橢圓形;因此需對原始成像的扭曲畫面進行校正以得到校正後畫面。
請參閱圖1,其為習知技術於校正一扭曲畫面中之一扭曲線條所需緩衝記憶體容量的示意圖。在習知技術中,對一扭曲畫面104之一扭曲曲線108進行校正時,係先將包覆整條扭曲曲線108的畫面資料106由動態隨機存取記憶體載入緩衝記憶體(如靜態隨機存取記憶體)中,再進行後續的校正處理以得到校正後畫面102最上方的水平線110。
本發明之一目的在於提供一扭曲畫面校正裝置及方法,其可在不影響校正能力的情況下,降低緩衝記憶體的使用量,以提高緩衝記憶體的使用效率,亦可降低系統資源使用量與耗電量。
本發明揭露一種扭曲畫面校正裝置,用以校正一扭曲畫面以產生一校正後畫面,包含:一緩衝記憶體,包含複數個記憶體區塊,分別用以儲存該扭曲畫面之複數個區塊資料中之一;一配置單元,根據一記憶體組態於該緩衝記憶體中配置該些記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量;一記憶體控制器,自一記憶體擷取該扭曲畫面之該些區塊資料,並根據該記憶體組態將該些區塊資料儲存至該緩衝記憶體;以及一校正電路,根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一
區塊資料,並根據該區塊資料產生該校正後畫面之一部分。
本發明另揭露一種扭曲畫面校正方法,用以校正一扭曲畫面以產生一校正後畫面,包含:根據一記憶體組態於一緩衝記憶體中配置複數個記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量;自一記憶體擷取該扭曲畫面之複數個區塊資料;根據該記憶體組態將該些區塊資料儲存至該緩衝記憶體,其中該緩衝記憶體包含對應於該些區塊資料之複數個記憶體區塊,分別儲存該些區塊資料中之一;以及根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。
有關本發明的特徵、實作與功效,茲配合圖式作較佳範例詳細說明如下。
102‧‧‧校正後畫面
104‧‧‧扭曲畫面
106‧‧‧畫面資料
108、312‧‧‧扭曲曲線
110‧‧‧水平線
200‧‧‧扭曲畫面校正裝置
202‧‧‧記憶體
204‧‧‧記憶體控制器
206‧‧‧緩衝記憶體
208‧‧‧配置單元
210‧‧‧校正電路
302‧‧‧校正後畫面
304‧‧‧水平線
306-1、306-2、306-5、306-10‧‧‧區塊資料
310‧‧‧扭曲畫面
312-1~312-10‧‧‧扭曲線段
S610~S640‧‧‧步驟
〔圖1〕為習知技術於擷取處理一扭曲畫面外圍扭曲線條所需緩衝記憶體容量的示意圖;〔圖2〕為本發明之扭曲畫面校正裝置之一範例的功能方塊圖;〔圖3〕為扭曲地圖之部分示意圖;〔圖4〕為產生畫面中每一校正後水平線之各區段所需之區塊資料的估計資料大小之示意圖;〔圖5〕為本發明產生一校正後水平線之各區段所需之區塊資料於扭曲畫面中之一範例的示意圖;以及〔圖6〕為本發明之扭曲畫面校正方法之一範例的流程圖。
本發明之揭露內容包含扭曲畫面校正裝置與方法。該些裝置與系統之部分元件單獨而言可能為已知元件,在不影響發明之充分揭露及
可實施性的前提下,以下說明對於個別已知元件的細節將予以節略;另外,該方法可以是軟體及/或韌體之形式,可藉由本發明之裝置或其等效裝置來執行。
請參閱圖2,圖2為本發明之扭曲畫面校正裝置之一範例的功能方塊圖。如圖2所示,本範例之扭曲畫面校正裝置200,用以校正一扭曲畫面以產生一校正後畫面,扭曲畫面校正裝置200包含:一記憶體控制器204、一緩衝記憶體206、一配置單元208以及一校正電路210,其彼此間的耦接關係可由圖2得知,不再贅述。
緩衝記憶體206例如可為一靜態隨機存取記憶體,但不以此為限。緩衝記憶體206包含複數個記憶體區塊,分別用以儲存扭曲畫面之一區塊資料。舉例來說,假設畫面的解析度為1280x720,換句話說,畫面包含720條水平線,每一水平線上包含了1280個像素,且每一水平線在水平方向上被劃分為10個區段(即每個區段包含128個像素),則緩衝記憶體206對應包含10個記憶體區塊。因為每一區段在扭曲畫面中的扭曲程度不同,扭曲程度愈大需要愈大的區塊資料來進行校正,因此可以依據扭曲程度來個別設定每個記憶體區塊的記憶體容量,以更有效地使用記憶體。扭曲畫面的扭曲程度可以由成像鏡頭的扭曲地圖(distortion map)得知,扭曲地圖係記載某一像素於校正後畫面之一位置與扭曲後於扭曲畫面之一位置的對應關係。因此,參考扭曲地圖即可找出校正每一區段時所需的資料內容在畫面的垂直及/或水平方向上的分佈範圍。以下說明如何根據扭曲地圖來決定緩衝記憶體206之記憶體區塊的記憶體大小。
圖3係扭曲地圖之部分示意圖。此扭曲地圖在水平方向及垂直方向上的解析度皆為32個像素,也就是說在交叉點A0、A1、A2、...、B0、B1、B2、...等位置上的像素有準確的校正後畫面之像素位置與扭曲畫面之像素位置的對應關係,而不位在該些交叉點上之像素則必須以內插法(interpolation)找出像素位置的對應關係。假設對應於校正後畫面之第3條水平線之第2區段之交叉點A1、B1、C1、D1、E1的座標分別為(128,2)、(160,
2)、(192,2)、(224,2)、(256,2)(此處定義第1條水平線的y座標為0),且其所對應的扭曲後之像素位置分別為(128,80)、(160,78)、(192,75)、(224,70)、(256,64)(此處以處理垂直方向上的扭曲為例,本技術領域具有通常知識者可依據以下的說明將本發明推廣至其他維度的扭曲)。然而,嚴格說來,第2區段的像素範圍為128~255,假設根據內插法所求得之座標(255,2)所對應的扭曲後之像素位置為(255,65),則該第2區段之原始像素在扭曲畫面中之垂直方向上的資料分佈範圍為65~80。假設每個像素的RGB各以8位元呈現,總資料量為24位元,當要對第2區段進行校正時,所需的區塊資料的估計資料大小至少應為:128x(80-65+1)x24/1024/8=6KB。重覆上述的方法,將可得到如圖4所示的校正每一水平線之各區段所需之區塊資料的估計資料大小。
在一範例中,緩衝記憶體206之10個記憶體區塊的大小可以根據該區段所需的最大估計資料大小來決定;舉例來說,緩衝記憶體206之記憶體區塊1(對應區段1)的記憶體容量將依據產生每一校正後水平線之區段1所需之區塊資料中之最大的估計資料大小來決定。更詳細地說,如圖4所示,產生校正後水平線1至校正後水平線720之區段1所需之區塊資料的估計資料大小中最大者為8KB,因此可決定記憶體區塊1的記憶體容量為8KB;依此類推,區段1~10所對應的記憶體區塊1~10的記憶體容量將分別被決定為8KB、7KB、7KB、6KB、5KB、5KB、6KB、7KB、7KB、8KB,此些被決定的記憶體容量稱為一記憶體組態(memory configuration)。
此外,由該記憶體組態可知,對應於一邊緣區塊資料之一記憶體區塊之記憶體容量,大於對應於一中央區塊資料之一記憶體區塊之記憶體容量,其中該中央區塊資料相較該邊緣區塊資料靠近該扭曲畫面之中心。舉例來說,區段1所對應的記憶體區塊1的記憶體容量8KB大於區段2所對應的記憶體區塊2的記憶體容量7KB;另舉例來說,區段2所對應的記憶體區塊2的記憶體容量7KB大於區段4所對應的記憶體區塊4的記憶體容量6KB。
此外,水平線1或水平線720一般而言為扭曲程度最大的兩條水平線,因此,在其他範例中可以根據此特性來更快速地決定記憶體組態。更詳細地說,可以只取這兩條水平線的任一者(必要時可以參考扭曲地圖以決兩者的其中之一)來計算各區段所需的估計資料大小。而緩衝記憶體206之10個記憶體區塊的大小依據該水平線1或水平線720的10個估計資料大小來配置即可。在一範例中,緩衝記憶體206之記憶體區塊的大小可與估計資料大小相同,然而並不以此為限,在另一範例中,緩衝記憶體206之記憶體區塊的大小亦可稍大於估計資料大小。
配置單元208根據上述的記憶體組態於緩衝記憶體206中配置該些記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量。更詳細地說,上述的記憶體組態在配置單元208中以記憶體的起始位址及記憶體的結束位址的方式呈現,因此對應該10個記憶體區塊,該記憶體組態的記錄方式例如為:(起始位址1,結束位址1)、(起始位址2,結束位址2)、...、(起始位址10,結束位址10)。也就是說,配置單元208於緩衝記憶體206中配置該些記憶體區塊的動作,事實上是將上述的記憶體組態傳送給記憶體控制器204,使記憶體控制器204能依據記憶體組態存取緩衝記憶體206。
記憶體控制器204用以自記憶體202擷取扭曲畫面之複數個區塊資料,並根據配置單元208所提供的記憶體組態將該些區塊資料儲存至緩衝記憶體206。記憶體202例如可為一動態隨機存取記憶體,但不以此為限。如圖2所示,記憶體202例如可設置於校正裝置200外部;在另一範例中,記憶體202亦可設置於校正裝置200內部。請參閱圖5,其係本發明之扭曲畫面校正裝置之扭曲畫面與對應之區塊資料之一範例的示意圖。在本範例中,扭曲畫面310(虛線所包含之範圍)之一扭曲曲線312被劃分為10個區段,例如包含扭曲線段312-1~312-10,然而此並非為本發明之限制,扭曲線條曲線312可視需求被劃分為N個扭曲資料,其中N為大於一之正整數。如圖5所示的例子,記憶體控制器204依序將包含扭曲線段312-1的區塊資料306-1、包含扭曲線段312-2的區塊資料306-2、...、包含扭曲線段312-10的區塊資料306-10從記憶體202
複製或搬移至緩衝記憶體206,將該些區塊資料寫入緩衝記憶體206時,記憶體控制器204係參考記憶體組態以將該些區塊資料寫入對應的記憶體位址。如圖5所示,因為扭曲曲線312在靠近畫面邊緣處的扭曲程度比靠近畫面中央處來得嚴重(例如扭曲線段312-1及312-10比扭曲線段312-5及312-6來得彎曲),因此校正靠近畫面邊緣處之線段所需的區塊資料的資料量,比校正靠近畫面中央處之線段所需的區塊資料的資料量來得大(例如區塊資料306-1及306-10的資料量比區塊資料306-5的資料量來得大)。
校正電路210用以根據該記憶體組態自緩衝記憶體206之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部份。承上例,當記憶體控制器204將校正某一條水平線所需的10個區塊資料寫入緩衝記憶體206中對應的10個記憶體區塊後,校正電路210根據記憶體組態所記錄的記憶體位址,自緩衝記憶體206中讀取該些區塊資料,然後根據扭曲地圖進行校正程序。更詳細地說,校正電路210係根據扭曲地圖將扭曲畫面中的像素重新排列(data re-ordering),以將該些像素還原至校正後畫面中的對應位置。同樣的,重新排列像素的過程中在必要時必須對扭曲地圖進行內插運算。經過校正電路210對圖5所示的10個區段分別進行校後,理想上即可將扭曲曲線312校正為水平線304。
在一範例中,記憶體控制器204、緩衝記憶體206、配置單元208以及校正電路210係位於同一積體電路之內,記憶體202則設置於該積體電路外;在另一範例中,記憶體202、記憶體控制器204、緩衝記憶體206、配置單元208以及校正電路210可均位於同一積體電路之內。其中,配置單元208可由一或多個處理器配合軟體來實作,且記憶體組態可儲存於一快閃記憶體(flash memory)中。
相較於圖1,對應圖3之校正方法於校正扭曲曲線312之10個扭曲線段所需之10個區塊資料的資料大小總和,小於習知技術中用以校正扭曲曲線108所需之畫面資料106的資料大小,因此本發明可使用容量較小的緩衝記憶體來校正扭曲曲線312。換句話說,本發明之扭曲畫面校正裝置200可在不影
響校正能力的情況下,降低緩衝記憶體的使用量,以提高緩衝記憶體的使用效率,亦可降低系統資源使用量與耗電量。
在上述範例中,記憶體組態係事先儲存於快閃記憶體中,值得注意的是,不同規格之光學鏡頭其扭曲地圖也會有所不同,例如在具有前後鏡頭或可更換鏡頭的系統中,可事先儲存複數組記憶體組態,分別對應於不同規格之光學鏡頭,以達到降低系統資源與省電的功效。在另一範例中,記憶體組態亦可由配置單元208根據光學鏡頭之扭曲地圖動態產生。
圖6為本發明之扭曲畫面校正方法之一範例的流程圖,其中該扭曲畫面校正方法用以自一外部記憶體擷取一扭曲畫面之複數個區塊資料進行校正處理,以得到一校正後畫面。該影像校正方法包含:步驟S610:根據一記憶體組態於一緩衝記憶體中配置複數個記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量。更詳細地說,根據區段大小、扭曲地圖及每個像素的位元數即可得到如圖4所示的估計資料大小,再根據該估計資料大小即可決定記憶體組態。根據該記憶體組態,緩衝記憶體可被配置出複數個記憶體容量不完全相同的記憶體區塊;步驟S620:自一記憶體擷取該扭曲畫面之複數個區塊資料。校正前該扭曲畫面係暫存於該記憶體中,校正時根據區段及扭曲地圖,自該記憶體中擷取對應該區段所需的區塊資料。每一區塊資料的資料量小於等於其所對應的記憶體區塊的記憶體容量。再者,因為每個區段的扭曲程度不同,因此校正每個區段時所需的區塊資料的大小也不相同;步驟S630:根據該記憶體組態,將步驟S620所讀取的區塊資料儲存至該緩衝記憶體,其中該緩衝記憶體包含對應於該些區塊資料之複數個記憶體區塊,分別儲存該些區塊資料中之一。在一範例中,記憶體組態係記錄每個記憶體區塊的起始位址及結束位址,因此此步驟即可根據該些起始位址及結束位址將區塊資料存入緩衝記憶體中的適當位置;以及步驟S640:根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。自該緩衝記憶體取得區塊
資料後,即可根據扭曲地圖將區塊資料中的像素重新排列,以校正扭曲畫面的一部分,從而得到對應該區塊資料之校正後畫面的一部分。因應扭曲地圖有其解析度的限制,重新排列像素的過程中在必要時將對扭曲地圖進行內插運算。
由於本領域具有通常知識者能夠藉由前揭裝置與方法範例之揭露來推知本方法範例的細節與變化,更明確地說,前揭裝置與方法範例之技術特徵均可合理應用於本方法範例中,因此,在不影響本方法範例之揭露要求與可實施性的前提下,重複及冗餘之說明在此予以節略。
綜上所述,本發明藉由將緩衝記憶體劃分為複數個記憶體區塊來個別對應儲存所需的扭曲畫面區塊資料,再根據扭曲地圖配置個別記憶體區塊所需記憶體容量,其能降低緩衝記憶體的所需容量以降低成本、降低系統資源與電力的使用。
雖然本發明之範例如上所述,然而該些範例並非用來限定本發明,本技術領域具有通常知識者可依據本發明之明示或隱含之內容對本發明之技術特徵施以變化,凡此種種變化均可能屬於本發明所尋求之專利保護範疇,換言之,本發明之專利保護範圍須視本說明書之申請專利範圍所界定者為準。
Claims (14)
- 一種扭曲畫面校正裝置,用以校正一扭曲畫面以產生一校正後畫面,包含: 一緩衝記憶體,包含複數個記憶體區塊,分別用以儲存該扭曲畫面之複數個區塊資料中之一; 一配置單元,根據一記憶體組態(memory configuration)於該緩衝記憶體中配置該些記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量; 一記憶體控制器,自一記憶體擷取該扭曲畫面之該些區塊資料,並根據該記憶體組態將該些區塊資料儲存至該緩衝記憶體;以及 一校正電路,根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。
- 如申請專利範圍第1項所述之扭曲畫面校正裝置,其中該些區塊資料包含一邊緣區塊資料以及一中央區塊資料,該中央區塊資料相較該邊緣區塊資料靠近該扭曲畫面之中心,對應於該邊緣區塊資料之一記憶體區塊之記憶體容量,大於對應於該中央區塊資料之一記憶體區塊之記憶體容量。
- 如申請專利範圍第1項所述之扭曲畫面校正裝置,其中該記憶體組態包含該些記憶體區塊中一記憶體區塊於該緩衝記憶體中之一起始位址與一結束位址,該記憶體區塊之該起始位址與該結束位址係根據該記憶體區塊之一對應區塊資料之一估計資料大小來產生。
- 如申請專利範圍第3項所述之扭曲畫面校正裝置,其中對應於該記憶體區塊之該起始位址與該結束位址之記憶體容量,係等於該記憶體區塊之該對應區塊資料之該估計資料大小。
- 如申請專利範圍第3項所述之扭曲畫面校正裝置,其中該記憶體區塊之該起始位址與該結束位址,係根據該記憶體區塊之複數個對應區塊資料之複數個估計資料大小來產生。
- 如申請專利範圍第5項所述之扭曲畫面校正裝置,其中對應於該記憶體區塊之該起始位址與該結束位址之記憶體容量,係等於該記憶體區塊之該些對應區塊資料之該些估計資料大小中之一最大值。
- 如申請專利範圍第3項所述之扭曲畫面校正裝置,其中該對應區塊資料之該估計資料大小係根據該對應區塊資料所對應之一扭曲地圖來計算,該扭曲地圖包含該扭曲畫面與該校正後畫面間之一位置對應關係。
- 一種扭曲畫面校正方法,用以校正一扭曲畫面以產生一校正後畫面,包含: 根據一記憶體組態(memory configuration)於一緩衝記憶體中配置複數個記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量; 自一記憶體擷取該扭曲畫面之複數個區塊資料; 根據該記憶體組態將該些區塊資料儲存至該緩衝記憶體,其中該緩衝記憶體包含對應於該些區塊資料之複數個記憶體區塊,分別儲存該些區塊資料中之一;以及 根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。
- 如申請專利範圍第8項所述之方法,其中該些區塊資料包含一邊緣區塊資料以及一中央區塊資料,該中央區塊資料相較該邊緣區塊資料靠近該扭曲畫面之中心,對應於該邊緣區塊資料之一記憶體區塊之記憶體容量,大於對應於該中央區塊資料之一記憶體區塊之記憶體容量。
- 如申請專利範圍第8項所述之方法,其中該記憶體組態包含該些記憶體區塊中一記憶體區塊於該緩衝記憶體中之一起始位址與一結束位址,該記憶體區塊之該起始位址與該結束位址係根據該記憶體區塊之一對應區塊資料之一估計資料大小來產生。
- 如申請專利範圍第10項所述之方法,其中對應於該記憶體區塊之該起始位址與該結束位址之記憶體容量,係等於該記憶體區塊之該對應區塊資料之該估計資料大小。
- 如申請專利範圍第10項所述之方法,其中該記憶體區塊之該起始位址與該結束位址,係根據該記憶體區塊之複數個對應區塊資料之複數個估計資料大小來產生。
- 如申請專利範圍第12項所述之方法,其中對應於該記憶體區塊之該起始位址與該結束位址之記憶體容量,係等於該記憶體區塊之該些對應區塊資料之該些估計資料大小中之一最大值。
- 如申請專利範圍第10項所述之方法,其中該對應區塊資料之該估計資料大小係根據該對應區塊資料所對應之一扭曲地圖來計算,該扭曲地圖包含該扭曲畫面與該校正後畫面間之一位置對應關係。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105114351A TWI635746B (zh) | 2016-05-10 | 2016-05-10 | 扭曲畫面校正裝置及方法 |
US15/405,655 US20170330306A1 (en) | 2016-05-10 | 2017-01-13 | Distorted image correcting apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105114351A TWI635746B (zh) | 2016-05-10 | 2016-05-10 | 扭曲畫面校正裝置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201740719A TW201740719A (zh) | 2017-11-16 |
TWI635746B true TWI635746B (zh) | 2018-09-11 |
Family
ID=60295297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105114351A TWI635746B (zh) | 2016-05-10 | 2016-05-10 | 扭曲畫面校正裝置及方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20170330306A1 (zh) |
TW (1) | TWI635746B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6845173B2 (ja) | 2018-03-15 | 2021-03-17 | 株式会社東芝 | 画像処理装置及び画像処理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200937346A (en) * | 2007-12-17 | 2009-09-01 | Nvidia Corp | Image distortion correction |
TW201220828A (en) * | 2010-11-09 | 2012-05-16 | Avisonic Technology Corp | Image corretion method and related image corretion system thereof |
TW201443641A (zh) * | 2013-01-22 | 2014-11-16 | Lsi Corp | 用於寫入非揮發性記憶體之管理及區域選擇 |
-
2016
- 2016-05-10 TW TW105114351A patent/TWI635746B/zh not_active IP Right Cessation
-
2017
- 2017-01-13 US US15/405,655 patent/US20170330306A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200937346A (en) * | 2007-12-17 | 2009-09-01 | Nvidia Corp | Image distortion correction |
TW201220828A (en) * | 2010-11-09 | 2012-05-16 | Avisonic Technology Corp | Image corretion method and related image corretion system thereof |
TW201443641A (zh) * | 2013-01-22 | 2014-11-16 | Lsi Corp | 用於寫入非揮發性記憶體之管理及區域選擇 |
Also Published As
Publication number | Publication date |
---|---|
TW201740719A (zh) | 2017-11-16 |
US20170330306A1 (en) | 2017-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015120825A1 (en) | Data access methods and data access devices utilizing the same | |
US20060125835A1 (en) | DMA latency compensation with scaling line buffer | |
US11393064B2 (en) | Image processing device and image processing method | |
US20140111672A1 (en) | Image processing device and image capture device | |
WO2021055027A1 (en) | Image de-warping system | |
TWI635746B (zh) | 扭曲畫面校正裝置及方法 | |
JP2005135096A (ja) | 画像処理方法および画像処理装置、並びにプログラム | |
JP5947143B2 (ja) | 魚眼画像の補正装置及び補正方法 | |
US11838695B2 (en) | Projection apparatus and keystone correction method | |
US20230093967A1 (en) | Purple-fringe correction method and purple-fringe correction device | |
JP2012079108A (ja) | メモリアクセス判定回路、メモリアクセス判定方法、キャッシュ制御装置および電子機器 | |
JP5675278B2 (ja) | データ処理装置および画像処理装置 | |
TWI635747B (zh) | 扭曲畫面校正裝置及方法 | |
US6801209B1 (en) | Method and apparatus for storing data in a block-based memory arrangement | |
KR20150019192A (ko) | Avm 시스템을 위한 영상 합성 장치 및 그 방법 | |
JP6094224B2 (ja) | 画像処理装置 | |
CN107437235A (zh) | 扭曲画面校正装置及方法 | |
US9781353B2 (en) | Image processing apparatus, electronic apparatus, and image processing method | |
US8416252B2 (en) | Image processing apparatus and memory access method thereof | |
JP2011097629A (ja) | 画像処理装置および画像処理方法 | |
JP6273764B2 (ja) | 画像処理装置 | |
CN108307089B (zh) | 扭曲画面校正装置及方法 | |
JP5658612B2 (ja) | 画像処理装置、画像処理システム及び画像処理方法 | |
JP2017228849A (ja) | 画像処理装置、撮像装置、制御方法及びプログラム | |
US10866907B2 (en) | Eviction prioritization for image processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees | ||
MM4A | Annulment or lapse of patent due to non-payment of fees |