TW201740719A - 扭曲畫面校正裝置及方法 - Google Patents

扭曲畫面校正裝置及方法 Download PDF

Info

Publication number
TW201740719A
TW201740719A TW105114351A TW105114351A TW201740719A TW 201740719 A TW201740719 A TW 201740719A TW 105114351 A TW105114351 A TW 105114351A TW 105114351 A TW105114351 A TW 105114351A TW 201740719 A TW201740719 A TW 201740719A
Authority
TW
Taiwan
Prior art keywords
memory
block
data
block data
picture
Prior art date
Application number
TW105114351A
Other languages
English (en)
Other versions
TWI635746B (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 TW105114351A priority Critical patent/TWI635746B/zh
Priority to US15/405,655 priority patent/US20170330306A1/en
Publication of TW201740719A publication Critical patent/TW201740719A/zh
Application granted granted Critical
Publication of TWI635746B publication Critical patent/TWI635746B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/80Geometric correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1028Power efficiency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • G06F2212/1044Space efficiency improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still 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。
本發明之一目的在於提供一扭曲畫面校正裝置及方法,其可在不影響校正能力的情況下,降低緩衝記憶體的使用量,以提高緩衝記憶體的使用效率,亦可降低系統資源使用量與耗電量。
本發明揭露一種扭曲畫面校正裝置,用以校正一扭曲畫面以產生一校正後畫面,包含:一緩衝記憶體,包含複數個記憶體區塊,分別用以儲存該扭曲畫面之複數個區塊資料中之一;一配置單元,根據一記憶體組態於該緩衝記憶體中配置該些記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量;一記憶體控制器,自一記憶體擷取該扭曲畫面之該些區塊資料,並根據該記憶體組態將該些區塊資料儲存至該緩衝記憶體;以及一校正電路,根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。
本發明另揭露一種扭曲畫面校正方法,用以校正一扭曲畫面以產生一校正後畫面,包含:根據一記憶體組態於一緩衝記憶體中配置複數個記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量;自一記憶體擷取該扭曲畫面之複數個區塊資料;根據該記憶體組態將該些區塊資料儲存至該緩衝記憶體,其中該緩衝記憶體包含對應於該些區塊資料之複數個記憶體區塊,分別儲存該些區塊資料中之一;以及根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。
有關本發明的特徵、實作與功效,茲配合圖式作較佳範例詳細說明如下。
本發明之揭露內容包含扭曲畫面校正裝置與方法。該些裝置與系統之部分元件單獨而言可能為已知元件,在不影響發明之充分揭露及可實施性的前提下,以下說明對於個別已知元件的細節將予以節略;另外,該方法可以是軟體及/或韌體之形式,可藉由本發明之裝置或其等效裝置來執行。
請參閱圖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:根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。自該緩衝記憶體取得區塊資料後,即可根據扭曲地圖將區塊資料中的像素重新排列,以校正扭曲畫面的一部分,從而得到對應該區塊資料之校正後畫面的一部分。因應扭曲地圖有其解析度的限制,重新排列像素的過程中在必要時將對扭曲地圖進行內插運算。
由於本領域具有通常知識者能夠藉由前揭裝置與方法範例之揭露來推知本方法範例的細節與變化,更明確地說,前揭裝置與方法範例之技術特徵均可合理應用於本方法範例中,因此,在不影響本方法範例之揭露要求與可實施性的前提下,重複及冗餘之說明在此予以節略。
綜上所述,本發明藉由將緩衝記憶體劃分為複數個記憶體區塊來個別對應儲存所需的扭曲畫面區塊資料,再根據扭曲地圖配置個別記憶體區塊所需記憶體容量,其能降低緩衝記憶體的所需容量以降低成本、降低系統資源與電力的使用。
雖然本發明之範例如上所述,然而該些範例並非用來限定本發明,本技術領域具有通常知識者可依據本發明之明示或隱含之內容對本發明之技術特徵施以變化,凡此種種變化均可能屬於本發明所尋求之專利保護範疇,換言之,本發明之專利保護範圍須視本說明書之申請專利範圍所界定者為準。
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〕為本發明之扭曲畫面校正方法之一範例的流程圖。
200‧‧‧扭曲畫面校正裝置
202‧‧‧記憶體
204‧‧‧記憶體控制器
206‧‧‧緩衝記憶體
208‧‧‧配置單元
210‧‧‧校正電路

Claims (14)

  1. 一種扭曲畫面校正裝置,用以校正一扭曲畫面以產生一校正後畫面,包含: 一緩衝記憶體,包含複數個記憶體區塊,分別用以儲存該扭曲畫面之複數個區塊資料中之一; 一配置單元,根據一記憶體組態(memory configuration)於該緩衝記憶體中配置該些記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量; 一記憶體控制器,自一記憶體擷取該扭曲畫面之該些區塊資料,並根據該記憶體組態將該些區塊資料儲存至該緩衝記憶體;以及 一校正電路,根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。
  2. 如申請專利範圍第1項所述之扭曲畫面校正裝置,其中該些區塊資料包含一邊緣區塊資料以及一中央區塊資料,該中央區塊資料相較該邊緣區塊資料靠近該扭曲畫面之中心,對應於該邊緣區塊資料之一記憶體區塊之記憶體容量,大於對應於該中央區塊資料之一記憶體區塊之記憶體容量。
  3. 如申請專利範圍第1項所述之扭曲畫面校正裝置,其中該記憶體組態包含該些記憶體區塊中一記憶體區塊於該緩衝記憶體中之一起始位址與一結束位址,該記憶體區塊之該起始位址與該結束位址係根據該記憶體區塊之一對應區塊資料之一估計資料大小來產生。
  4. 如申請專利範圍第3項所述之扭曲畫面校正裝置,其中對應於該記憶體區塊之該起始位址與該結束位址之記憶體容量,係等於該記憶體區塊之該對應區塊資料之該估計資料大小。
  5. 如申請專利範圍第3項所述之扭曲畫面校正裝置,其中該記憶體區塊之該起始位址與該結束位址,係根據該記憶體區塊之複數個對應區塊資料之複數個估計資料大小來產生。
  6. 如申請專利範圍第5項所述之扭曲畫面校正裝置,其中對應於該記憶體區塊之該起始位址與該結束位址之記憶體容量,係等於該記憶體區塊之該些對應區塊資料之該些估計資料大小中之一最大值。
  7. 如申請專利範圍第3項所述之扭曲畫面校正裝置,其中該對應區塊資料之該估計資料大小係根據該對應區塊資料所對應之一扭曲地圖來計算,該扭曲地圖包含該扭曲畫面與該校正後畫面間之一位置對應關係。
  8. 一種扭曲畫面校正方法,用以校正一扭曲畫面以產生一校正後畫面,包含: 根據一記憶體組態(memory configuration)於一緩衝記憶體中配置複數個記憶體區塊,其中該些記憶體區塊具有不同的記憶體容量; 自一記憶體擷取該扭曲畫面之複數個區塊資料; 根據該記憶體組態將該些區塊資料儲存至該緩衝記憶體,其中該緩衝記憶體包含對應於該些區塊資料之複數個記憶體區塊,分別儲存該些區塊資料中之一;以及 根據該記憶體組態自該緩衝記憶體之一記憶體區塊擷取一區塊資料,並根據該區塊資料產生該校正後畫面之一部分。
  9. 如申請專利範圍第8項所述之方法,其中該些區塊資料包含一邊緣區塊資料以及一中央區塊資料,該中央區塊資料相較該邊緣區塊資料靠近該扭曲畫面之中心,對應於該邊緣區塊資料之一記憶體區塊之記憶體容量,大於對應於該中央區塊資料之一記憶體區塊之記憶體容量。
  10. 如申請專利範圍第8項所述之方法,其中該記憶體組態包含該些記憶體區塊中一記憶體區塊於該緩衝記憶體中之一起始位址與一結束位址,該記憶體區塊之該起始位址與該結束位址係根據該記憶體區塊之一對應區塊資料之一估計資料大小來產生。
  11. 如申請專利範圍第10項所述之方法,其中對應於該記憶體區塊之該起始位址與該結束位址之記憶體容量,係等於該記憶體區塊之該對應區塊資料之該估計資料大小。
  12. 如申請專利範圍第10項所述之方法,其中該記憶體區塊之該起始位址與該結束位址,係根據該記憶體區塊之複數個對應區塊資料之複數個估計資料大小來產生。
  13. 如申請專利範圍第12項所述之方法,其中對應於該記憶體區塊之該起始位址與該結束位址之記憶體容量,係等於該記憶體區塊之該些對應區塊資料之該些估計資料大小中之一最大值。
  14. 如申請專利範圍第10項所述之方法,其中該對應區塊資料之該估計資料大小係根據該對應區塊資料所對應之一扭曲地圖來計算,該扭曲地圖包含該扭曲畫面與該校正後畫面間之一位置對應關係。
TW105114351A 2016-05-10 2016-05-10 扭曲畫面校正裝置及方法 TWI635746B (zh)

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 true TW201740719A (zh) 2017-11-16
TWI635746B 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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6845173B2 (ja) * 2018-03-15 2021-03-17 株式会社東芝 画像処理装置及び画像処理方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9177368B2 (en) * 2007-12-17 2015-11-03 Nvidia Corporation Image distortion correction
TWI423659B (zh) * 2010-11-09 2014-01-11 Avisonic Technology Corp 影像校正方法與相關影像校正系統
US9395924B2 (en) * 2013-01-22 2016-07-19 Seagate Technology Llc Management of and region selection for writes to non-volatile memory

Also Published As

Publication number Publication date
TWI635746B (zh) 2018-09-11
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
US11669942B2 (en) Image de-warping system
JP2005135096A (ja) 画像処理方法および画像処理装置、並びにプログラム
TWI635746B (zh) 扭曲畫面校正裝置及方法
JPWO2013021525A1 (ja) 画像処理装置、画像処理方法、プログラム、及び集積回路
JP5327482B2 (ja) 画像処理装置及び画像処理方法
JP2012079108A (ja) メモリアクセス判定回路、メモリアクセス判定方法、キャッシュ制御装置および電子機器
WO2019114044A1 (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
TWI635747B (zh) 扭曲畫面校正裝置及方法
US6801209B1 (en) Method and apparatus for storing data in a block-based memory arrangement
KR20150019192A (ko) Avm 시스템을 위한 영상 합성 장치 및 그 방법
JP6094224B2 (ja) 画像処理装置
CN107437235A (zh) 扭曲画面校正装置及方法
JP2018157371A (ja) 撮像装置及び欠陥画素の補正方法
US20100030978A1 (en) Memory controller, memory control method, and image processing device
US9781353B2 (en) Image processing apparatus, electronic apparatus, and image processing method
JP2012098884A (ja) データ処理装置および画像処理装置
JP6762775B2 (ja) 画像処理装置、撮像装置、制御方法及びプログラム
US10866907B2 (en) Eviction prioritization for image processing
CN108307089B (zh) 扭曲画面校正装置及方法
JP6563358B2 (ja) 画像処理装置及び画像処理方法
JP5658612B2 (ja) 画像処理装置、画像処理システム及び画像処理方法
CN108257102B (zh) 鱼眼校正系统和方法
US20180090110A1 (en) Apparatus and method for video frame rotation

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