日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

生成正則成像函數(shù)的制作方法

文檔序號:9308632閱讀:358來源:國知局
生成正則成像函數(shù)的制作方法
【技術(shù)領(lǐng)域】
[0001]本技術(shù)一般指向圖像處理。更具體地,本技術(shù)涉及一種用于通過使用正則成像函數(shù)來優(yōu)化圖像處理流水線的裝置。
【背景技術(shù)】
[0002]圖像處理流水線典型地包括從跨圖像像素的并行執(zhí)行獲益的許多數(shù)據(jù)并行階段,但是各階段通常是存儲器帶寬受限的,即各階段可能在存儲器訪問(加載和存儲)操作方面是低效率的。已經(jīng)通過優(yōu)化流水線的內(nèi)循環(huán)以尤其消除冗余存儲器拷貝并且減少存儲器業(yè)務(wù)而實現(xiàn)了流水線性能中的一些適度增益。然而,這樣的優(yōu)化是要求具有目標(biāo)計算或處理架構(gòu)以及要處理的特定成像算法的知識的程序員的技能的手動過程。另外,這樣的優(yōu)化一般不是跨計算或處理架構(gòu)而可移動的。
【附圖說明】
[0003]通過參考附圖可以更好地理解以下詳細(xì)描述,所述附圖包含所公開的主題的眾多目標(biāo)和特征的特定示例。
[0004]圖1A是依照實施例的單片(monolithic)函數(shù)的框圖;
圖1B是依照實施例的正則(canonical)成像函數(shù)模板或類的框圖;
圖2是依照實施例的合并的正則成像函數(shù)的框圖;
圖3是圖示了依照實施例的用于合并正則成像函數(shù)的方法的過程流程圖;
圖4是依照實施例的可以使用的計算設(shè)備的框圖;以及
圖5是依照實施例的存儲用于合并正則成像函數(shù)的方法的指令的有形、非暫時性計算機(jī)可讀介質(zhì)的框圖。
【具體實施方式】
[0005]如以上討論的,圖像處理流水線的手動優(yōu)化是耗時的,并且這樣的優(yōu)化不是跨計算或處理架構(gòu)可移動的。作為結(jié)果,圖像處理流水線的優(yōu)化可能是成本高昂的。
[0006]本技術(shù)的實施例提供正則成像函數(shù)模板或類。由單片成像函數(shù)形成正則成像函數(shù)的集合。正則成像函數(shù)遵循正則成像函數(shù)模板。正則成像函數(shù)被合并成經(jīng)合并的成像函數(shù)。
[0007]在以下描述和權(quán)利要求中,可以使用術(shù)語“耦合的”和“連接的”連同其派生詞。應(yīng)當(dāng)理解的是,這些術(shù)語不意圖作為針對彼此的同義詞。而是,在特定實施例中,“連接的”可以用于指示兩個或更多元件與彼此直接物理或電氣接觸。“耦合的”可以意指兩個或更多元件直接物理或電氣接觸。然而,“耦合的”也可以意指兩個或更多元件不與彼此直接接觸,但是還仍與彼此協(xié)作或交互。
[0008]一些實施例可以實現(xiàn)在硬件、固件和軟件中的一個或組合中。一些實施例還可以實現(xiàn)為存儲在機(jī)器可讀介質(zhì)上的指令,其可以被計算平臺讀取和執(zhí)行以履行本文所描述的操作。機(jī)器可讀介質(zhì)可以包括用于以由機(jī)器(例如計算機(jī))可讀的形式存儲或傳輸信息的任何機(jī)制。例如,除其它之外,機(jī)器可讀介質(zhì)可以包括只讀存儲器(ROM)、隨機(jī)存取存儲器(RAM),磁盤存儲介質(zhì)、光學(xué)存儲介質(zhì)、閃速存儲器設(shè)備。
[0009]實施例是實現(xiàn)方式或示例。在說明書中對“實施例”、“一個實施例”、“一些實施例”、“各種實施例”或“其它實施例”的提及意指結(jié)合實施例描述的特定特征、結(jié)構(gòu)或特性被包括在至少一些實施例中,但是不一定在本發(fā)明的所有實施例中。“實施例”、“一個實施例”或“一些實施例”的各種出現(xiàn)不一定都是指相同的實施例。來自實施例的元件或方面可以與另一實施例的元件或方面組合。
[0010]并非本文所描述和圖示的所有組件、特征、結(jié)構(gòu)、特性等都需要被包括在一個或多個特定實施例中。如果說明書陳述了例如“可以”、“可能”、“能夠”或“可”包括組件、特征、結(jié)構(gòu)或特性,則不要求包括該特定組件、特征、結(jié)構(gòu)或特性。如果說明書或權(quán)利要求提到“一”或“一個”元件,則那不意指存在僅一個元件。如果說明書或權(quán)利要求提到“附加”元件,則那不排除存在多于一個的附加元件。
[0011]要指出的是,盡管已經(jīng)參考特定實現(xiàn)方式描述了一些實施例,但是根據(jù)一些實施例,其它實現(xiàn)方式是可能的。此外,在附圖中圖示和/或在本文描述的電路元件或其它特征的布置和/或次序不需要以所圖示和描述的特定方式布置。根據(jù)一些實施例,許多其它布置是可能的。
[0012]在圖中所示的每一個系統(tǒng)中,一些情況中的元件可以每一個具有相同的參考標(biāo)號或不同的參考標(biāo)號以暗示所表示的元件可以是不同和/或類似的。然而,元件可以足夠靈活以具有不同的實現(xiàn)方式并且與本文所示或所描述的一些或全部系統(tǒng)一起工作。圖中所示的各種元件可以是相同或不同的。哪一個稱為第一元件和哪個被稱為第二元件是任意的。
[0013]圖1A圖示了單片成像函數(shù)100。函數(shù)100被構(gòu)造為計算機(jī)可讀代碼的單一塊或單個片段,所述計算機(jī)可讀代碼在執(zhí)行時執(zhí)行多個示例性例程102-120。更具體地,成像函數(shù)100包括參數(shù)檢查器102、存儲器分配器104、循環(huán)尺度(loop dimens1n) 106和外循環(huán)108。外循環(huán)108包括數(shù)據(jù)讀取優(yōu)化器110、計算112和數(shù)據(jù)寫入優(yōu)化器114。成像函數(shù)100還包括存儲器解分配器(de-allocator) 116和狀態(tài)報告器120。
[0014]參數(shù)檢查器102在執(zhí)行時讀取或以其它方式接收成像函數(shù)100所要求的輸入數(shù)據(jù),并且存儲器分配器104分配對于存儲成像函數(shù)100所要求或創(chuàng)建的數(shù)據(jù)可能要求的存儲器。到成像函數(shù)100的輸入數(shù)據(jù)可以包括從輸入圖像數(shù)據(jù)緩沖器或其它計算機(jī)可讀存儲器讀取的圖像數(shù)據(jù)。循環(huán)尺度106可以指示外循環(huán)108的參數(shù)或尺度。在實施例中,循環(huán)尺度106可以指示將由外循環(huán)108處理的圖像的區(qū)或像素的數(shù)目。外循環(huán)108管理外循環(huán)108內(nèi)的例程的執(zhí)行,諸如例如通過遞增或以其它方式維持計數(shù)器和其它外循環(huán)控制數(shù)據(jù)。在實施例中,外循環(huán)108記錄圖像的什么部分(例如哪個像素或區(qū))在被處理或者接下來要在外循環(huán)108內(nèi)被處理。
[0015]在外循環(huán)108內(nèi),數(shù)據(jù)讀取優(yōu)化器110執(zhí)行將由成像函數(shù)100的外循環(huán)108讀取并且在其上進(jìn)行操作或由其處理的圖像數(shù)據(jù)的緩存和前瞻緩沖。計算112例程在圖像數(shù)據(jù)上執(zhí)行一個或多個計算。在實施例中,計算112例程可以對圖像數(shù)據(jù)進(jìn)行濾波、求卷積(convolute)或以其它方式修改或增強。數(shù)據(jù)寫入優(yōu)化器114優(yōu)化由外循環(huán)108內(nèi)的操作(包括計算112)引起的寫入數(shù)據(jù)的過程。
[0016]當(dāng)外循環(huán)108完成時,存儲器解分配器116在執(zhí)行時,釋放或以其它方式清除之前被分配給成像函數(shù)100的存儲器以可用于供其它函數(shù)使用或用于其它目的。狀態(tài)報告器120提供與成像函數(shù)100的執(zhí)行有關(guān)的狀態(tài)或其它信息。
[0017]圖1B圖示了示例性正則成像函數(shù)類或模板140。在實施例中,正則成像函數(shù)模板140體現(xiàn)在計算機(jī)可讀代碼中,諸如例如源代碼、比如C++的高級編程語言,或者其它合適的計算機(jī)可讀代碼或編程語言。正則成像函數(shù)模板140定義包括可以從其構(gòu)造正則成像函數(shù)的標(biāo)準(zhǔn)部分的集合的模板或類。通過使用正則成像函數(shù)設(shè)計每一個成像函數(shù),函數(shù)的集合可以容易地被一起組合成經(jīng)優(yōu)化的復(fù)合函數(shù),因為正則函數(shù)的公共區(qū)段可以從創(chuàng)建復(fù)合函數(shù)的組合過程中析出因子(factor out),留下將一起構(gòu)成單個復(fù)合函數(shù)的每一個正則函數(shù)的獨特處理元素。以此方式,每一個函數(shù)的公共元素在外循環(huán)、函數(shù)前序或函數(shù)后文(post-amble)中被共享一次。函數(shù)前序是函數(shù)的開始的一部分,而函數(shù)后文是函數(shù)的結(jié)尾的一部分。這兩個部分可以用于設(shè)立或協(xié)調(diào)數(shù)據(jù)處理。另外,每一個正則函數(shù)的獨特元素,諸如處理和算法元素,保持在如圖2中所示的復(fù)合函數(shù)中。更具體地,在實施例中,正則成像函數(shù)模板140包括參數(shù)檢查器142、存儲器分配器144、循環(huán)尺度146、外循環(huán)148、數(shù)據(jù)讀取優(yōu)化器150、計算152、數(shù)據(jù)寫入優(yōu)化器154、存儲器解分配器156和狀態(tài)報告器160。
[0018]本文所示的當(dāng)前實施例不反映本發(fā)明的所有方法。例如,實施例可以根據(jù)在解決的問題的需要而定義附加專用正則區(qū)段。例如,圖像讀取區(qū)段、圖像顏色修正區(qū)段、圖像顏色轉(zhuǎn)換區(qū)段、圖像幾何修正區(qū)段等等可以被包括在正則成像函數(shù)內(nèi)。正則成像函數(shù)可以按需擴(kuò)展到其它問題領(lǐng)域,并且尤其順從C++和JAVA編程語言的面向?qū)ο蟮木幊谭椒?,其使得正則成像函數(shù)模板能夠被用作基本類,所述基本類然后可以擴(kuò)展成包括附加的特定正則區(qū)段。
[0019]模板140的參數(shù)檢查器142被配置成持有或合并代碼,所述代碼在執(zhí)行時將檢測可以被讀取或?qū)懭氲膮?shù),或者以其它方式接收由合并的正則成像函數(shù)使用的輸入或輸出數(shù)據(jù)的參數(shù)。類似地,模板140的存儲器分配器144被配置成持有或合并代碼,所述代碼在執(zhí)行時分配可以用于存儲由合并的成像函數(shù)使用的數(shù)據(jù)的存儲器。輸入數(shù)據(jù)可以包括從輸入圖像數(shù)據(jù)緩沖器或其它計算機(jī)可讀存儲器讀取的圖像數(shù)據(jù)。循環(huán)尺度146被配置成持有或合并代碼,所述代碼指示合并的成像函數(shù)的外循環(huán)的參數(shù)或尺度。在實施例中,循環(huán)尺度146可以包括代碼,所述代碼指示將由合并的成像函數(shù)的外循環(huán)處理的圖像的區(qū)或像素的數(shù)目。外循環(huán)148被配置成持有或合并代碼,所述代碼管理合并的成像函數(shù)的執(zhí)行,諸如例如通過遞增或以其它方式維持計數(shù)器和其它外循環(huán)控制數(shù)據(jù)。在實施例中,外循環(huán)148記錄在處理或接下來要被處理的圖像內(nèi)的位置(例如哪個像素或區(qū))。數(shù)據(jù)讀取優(yōu)化器150被配置成持有或合并代碼,所述代碼在執(zhí)行時履行將由合并的成像函數(shù)的外循環(huán)148讀取、在其上進(jìn)行操作或由其處理的圖像數(shù)據(jù)的緩存和前瞻緩沖。計算152被配置成持有或合并代碼,所述代碼在執(zhí)行時在圖像數(shù)據(jù)上執(zhí)行一個或多個計算、處理或算法元素。數(shù)據(jù)寫入優(yōu)化器154被配置成持有或合并代碼,所述代碼在執(zhí)行時優(yōu)化由合并的成像函數(shù)的操作引起的寫入數(shù)據(jù)的過程。存儲器解分配器156被配置成持有或合并代碼,所述代碼在執(zhí)行時釋放或以其它方式清除之前被分配給合并的成像函數(shù)的存儲器使得這樣的存儲器可以可用于供其它函數(shù)使用或用于其它目的。狀態(tài)報告器160被配置成持有或合并
當(dāng)前第1頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1