TW201926990A - 針對片上系統中的圖像幀的中央凹型壓縮的系統和方法 - Google Patents

針對片上系統中的圖像幀的中央凹型壓縮的系統和方法 Download PDF

Info

Publication number
TW201926990A
TW201926990A TW107128538A TW107128538A TW201926990A TW 201926990 A TW201926990 A TW 201926990A TW 107128538 A TW107128538 A TW 107128538A TW 107128538 A TW107128538 A TW 107128538A TW 201926990 A TW201926990 A TW 201926990A
Authority
TW
Taiwan
Prior art keywords
compression
partitions
image frame
partition
compressing
Prior art date
Application number
TW107128538A
Other languages
English (en)
Other versions
TWI705695B (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 美商高通公司
Publication of TW201926990A publication Critical patent/TW201926990A/zh
Application granted granted Critical
Publication of TWI705695B publication Critical patent/TWI705695B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/162User input
    • 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/0207Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/917Television signal processing therefor for bandwidth reduction
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/40Specific encoding of data in memory or cache
    • G06F2212/401Compressed data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/50Control mechanisms for virtual memory, cache or TLB
    • G06F2212/502Control mechanisms for virtual memory, cache or TLB using adaptive policy
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Studio Devices (AREA)

Abstract

針對智慧壓縮的示例性方法使用中央凹型壓縮方法。首先,確定圖像幀內的注視點的位置。接著,將圖像幀分區成兩個或更多個分區,以使得該兩個或更多個分區中的一個分區被指定為注視分區,並且其餘的分區被指定為中央凹分區。可以由圖像幀內的一或多個圖塊來定義分區。注視分區包括包含注視點的特定圖塊,並且根據無損壓縮算法被壓縮。中央凹分區根據有損壓縮算法被壓縮。當中央凹分區的位置距注視分區的位置以角度距離增加時,可以增加壓縮因數。

Description

針對片上系統中的圖像幀的中央凹型壓縮的系統和方法
本揭示涉及針對片上系統中的圖像幀的中央凹型壓縮的系統和方法。
可攜式計算設備(「PCD」)逐漸成為人們在個人和專業等級的必需品。該等設備可以包括蜂巢式電話、可攜式數位助理(「PDA」)、可攜式遊戲控制器、掌上電腦、以及其他可攜式電子設備。PCD通常包含積體電路或者片上系統(「SoC」),其包括被設計為一同工作以向使用者傳遞功能的多個部件。例如,SoC可以包含任何數量的處理引擎,例如數據機、由核心組成的中央處理單元(「CPU」)、圖形處理單元(「GPU」)等,其從SoC上的記憶體部件中讀取資料和指令並且向SoC上的記憶體部件寫入資料和指令。該資料和指令經由被稱為匯流排的線路的集合而在設備之間被發送。
PCD中的匯流排頻寬和記憶體部件的有效大小對於最佳化SoC上的處理部件的功能能力以及保證所需要的最小服務品質(「QoS」)等級是重要的。通常而言,藉由壓縮資料以使得資料需要較少的匯流排頻寬來發送以及記憶體中的較少空間來儲存,從而進一步最佳化記憶體容量和匯流排頻寬的利用。不是所有的資料/圖像幀皆用相同的效率來被壓縮,或者就此而言,需要相同的壓縮效率,以便維持合適的QoS,並且由此PCD設計者面對折衷決策——使用當被解壓時產生較低品質的輸出,並且進而從較小的記憶體部件和匯流排頻寬要求中獲益的有損壓縮方法進行壓縮,或者可替代地,使用當被解壓時產生高品質的輸出但需要相對較大的記憶體部件和匯流排頻寬來維持滿意的QoS的無損壓縮方法進行壓縮。無論哪種方式,設計者皆不得不根據壓縮的「實際最壞情況」來調整匯流排和記憶體部件的大小,否則他們將冒著由任何數量的關鍵效能指標所量測的降低的QoS的風險。
簡單而言,本領域中已知的資料/圖像幀壓縮的當前的系統和方法指定:為了確保可接受的QoS等級的傳遞,PCD設計者必須利用對於大多數使用情況過大的記憶體部件和匯流排頻寬。但顯然,使用者的視覺敏銳度在中央凹處最高,在包括注視點的焦點區域之外存在可感知的視覺細節的快速下降。由此,與使用者的焦點區域之外的區域相關聯的圖像幀內的資料的高品質壓縮可以不提供對QoS的顯著積極影響。因此,在本領域中存在對智慧壓縮系統以及利用使用者的焦點注視點的知識來以中央凹型的方式壓縮圖像幀的方法的需求,以對與使用者焦點相關聯的幀區域使用使得無/低壓縮、高品質輸出壓縮算法,而對與使用者周圍視覺相關聯的幀區域成功地使用較高壓縮、較低品質輸出壓縮算法。
揭示針對可攜式計算設備(「PCD」)中的智慧資料壓縮的方法和系統的各種實施例。示例性方法藉由確定圖像幀內的注視點而開始。利用所確定的注視點,接下來的圖像幀被分區成兩個或更多個分區以使得該兩個或更多個分區中的一個分區被指定為注視分區,並且其餘的分區被指定為中央凹分區。分區可以由圖像幀內的一或多個圖塊來定義。注視分區包括包含注視點的特定圖塊,並且根據具有低壓縮因數的壓縮算法(例如,無損壓縮算法)被壓縮。中央凹分區根據具有相對於用於壓縮注視分區的算法較高的壓縮因數的壓縮算法而被壓縮。當中央凹分區的位置距注視分區的位置在角度距離上增加時,該解決方案的實施例可以增加用於壓縮給定的中央凹分區內的圖塊的算法的壓縮因數。以該方式,圖像幀可以根據中央凹型壓縮方法而被壓縮。經壓縮的幀可以被儲存在記憶體中,直到之後被取回、解壓縮和渲染為止。
取決於實施例,圖像幀可以被分區成方網格的中央凹型壓縮圖案、拼接網格的中央凹型壓縮圖案、蜂巢壓縮圖案等。此外,取決於實施例,給定分區中的所有圖塊皆可以根據單個壓縮算法和壓縮因數而被壓縮,或者可替代地,該壓縮因數可以針對給定分區內的圖塊而不同(分級壓縮)。
在本文中所使用的詞語「示例性的」意味著用作示例、實例,或說明。在本文中所描述為「示例性」的任何態樣不一定被解釋為是排他性的、比其他態樣較佳或有利的。
在該描述中,術語「應用」亦可以包括具有可執行內容的檔案,例如:物件代碼、腳本、位元組碼、標記語言檔案、以及補丁。此外,在本文中所引用的「應用」亦可以包括:本質上不可執行的檔案,例如,需要被打開的文件或者需要被存取的其他資料檔案。
在該描述中,對「DRAM」或「DDR」記憶體部件的引用應當被理解為設想更寬泛類別的揮發性隨機存取記憶體(「RAM」)中的任何一個,並且不應將本文所揭示的解決方案的範疇限制於特定類型或某代RAM。亦即,應當理解的是,該等系統和方法的各種實施例提供了用於管理已根據無損及/或有損壓縮算法進行壓縮的資料的事務的解決方案,其不一定被限制為應用於與雙倍資料速率記憶體相關聯的壓縮資料事務。此外,可以預期的是,本文所揭示的解決方案的某些實施例可以適用於DDR、DDR-2、DDR-3、低功率DDR(「LPDDR」)或者任何後續世代的DRAM。
如在該描述中所使用的,術語「部件」、「資料庫」、「模組」、「系統」、等等意欲代表通常與電腦相關的實體,無論其是硬體、韌體、硬體和軟體的組合、軟體,或者執行中的軟體,除非專門將其限制於與電腦相關的某種實體。例如,部件可以是,但不限於是:在處理器上執行的程序、處理器、物件、可執行檔案、執行的執行緒、程式,及/或電腦。舉例而言,在計算設備上執行的應用程序和該計算設備兩者皆可以是部件。一或多個部件可以常駐在程序及/或執行的執行緒中,並且部件可以位於一個電腦上及/或分佈在兩個或更多個電腦之間。此外,該等部件可以從其上儲存有各種資料結構的各種電腦可讀取媒體中執行。該等部件可以藉由諸如根據具有一或多個資料封包(例如,來自一個部件的資料,該部件與本端系統、分散式系統中的另一個部件進行交互及/或以信號的方式跨諸如網際網路之類的網路與其他系統進行交互)的信號,以本端及/或遠端處理的方式進行通訊。
在該描述中,術語「中央處理單元(「CPU」)」、「數位訊號處理器(「DSP」)」、「圖形處理單元(「GPU」)」和「晶片」可互換地使用。此外,CPU、DSP、GPU,或晶片可以由在本文中通常稱為「核心」的一或多個不同的處理部件組成。
在該描述中,術語「引擎」、「處理引擎」、「處理部件」、「產生器」等等用於代表產生資料及/或圖像幀,並且經由匯流排向記憶體部件傳輸資料及/或圖像幀或者傳輸來自記憶體部件的資料及/或圖像幀的片上系統(「SoC」)內的任何部件。由此,引擎可以代表但不限於代表:CPU、DSP、GPU、數據機、控制器、相機、視訊錄影機等。
在該描述中,術語「匯流排」代表一組線路,經由該組線路,將資料從處理引擎發送到位於SoC之上或者之外的記憶體部件或其他設備。應當理解的是,匯流排由兩部分所組成:位址匯流排和資料匯流排,其中資料匯流排傳輸實際資料,而位址匯流排傳輸用於指定該資料在記憶體部件中的位置的資訊(亦即,位址和相關聯的中繼資料)。術語「寬度」或「匯流排寬度」或「頻寬」是指資料的量(亦即,「塊大小」),其可以經由給定匯流排來每週期進行發送。例如,16位元組匯流排可以一次發送16位元組的資料,而32位元組匯流排可以每週期發送32位元組的資料。此外,「匯流排速度」是指每秒可以經由給定匯流排來發送資料區塊的次數。類似地,「匯流排週期」或「週期」是指經由給定匯流排對一個資料區塊的傳輸。
在該描述中,使用術語「可攜式計算設備(「PCD」)」來描述在有限容量的電源(例如,電池)下操作的任何設備。儘管電池供電的PCD已經使用了數十年,但隨著第三代(「3G」)和第四代(「4G」)和第五代(「5G」)無線技術的出現,可再充電電池的技術進步已經使得具有多種能力的許多PCD成為可能。因此,PCD可以是蜂巢式電話、衛星電話、傳呼機、PDA、智慧型電話、導航設備、智慧型電腦或讀取器、媒體播放機、前述設備的組合、具有無線連接的膝上型電腦等。
在該描述中,術語「無損」和「有損」代表不同類別的壓縮算法或方法,並且不意味著代表任何特定的算法。給定的特定壓縮算法是「無損的」還是「有損的」將由本領域一般技藝人士辨識。一般而言,並且如本領域一般技藝人士將理解的,「無損」和「有損」是描述在資料集合或圖像幀的壓縮中,當檔案被解壓時是否能夠恢復所有原始資料的術語。利用「無損」壓縮,原本在未經壓縮的幀中之每一單位元的資料在該幀被解壓縮後仍然保留,亦即所有資訊被完全恢復。圖形交換檔案(「GIF」)是提供無損壓縮的示例性圖像格式。作為對比,有損壓縮算法藉由永久地消除某些資訊(尤其是冗餘資訊)來降低幀或資料集合。由此,當利用有損算法壓縮的檔案被解壓縮時,僅僅一部分的原始資訊仍然存在(但使用者體驗可以不受此影響)。有損壓縮算法可以適合於基於視訊和聲音的用例,例如,由於使用者可能偵測不到一定量的資訊損失。JPEG圖像檔案是提供有損壓縮的示例性圖像格式。使用有損壓縮算法,設計者可以決定引入多少損失(根據與給定的有損壓縮算法相關聯的壓縮因數)並且在檔案大小與輸出圖像品質之間進行折衷。針對有損壓縮算法的壓縮因數越高,所得出的經壓縮的檔案的大小就相對越小,並且當檔案之後被解壓縮時輸出圖像品質就相對越低。類似地,針對有損壓縮算法的壓縮因數越低,所得出的經壓縮的檔案的大小就相對越大,並且當檔案之後被解壓縮時輸出圖像品質就相對越高(接近或滿足無損壓縮的輸出品質)。
在該描述中,術語「圖像」、「資料集合」、「資料」、「幀」、「圖像幀」、「緩衝區」、「檔案」等可互換地使用。儘管在本文中在產生器部件產生(例如,可以由相機或視訊子系統產生)以圖像幀為形式的資料集合的上下文內描述了解決方案的實施例,但將理解的是,在本文中所描述的解決方案不限於應用於圖像幀。相反,可以預期的是,解決方案的實施例可以適用在可以通常從資料的壓縮中受益的任何用例中。
在該描述中,術語「圖塊」和「單元」可互換地使用以代表形成了較大塊資料的子集(例如,圖像幀)的像素的區塊。取決於解決方案的實施例,「圖塊」或「單元」可以展示適合於實施例的任何縱橫比,並且由此,本領域一般技藝人士將理解,圖像幀內的「圖塊」或「單元」不一定限於具有「方形」縱橫比——亦即,取決於實施例,「圖塊」或「單元」可以是矩形。
在該說明書中,術語「分區」和「中央凹分區」可互換地使用以代表由一或多個圖塊所組成的圖像幀的部分。在本文中所描述的解決方案的上下文中,「分區」可以是任何形狀或大小,只要其是能夠由一或多個完整圖塊分割的。
在該說明書中,術語「注視點」代表圖像幀內被確定為在解壓後需要相對最高輸出品質的位置。「注視點」可以對應於由使用者的中央凹所感知的,或者在由距中央凹的某一標準差所定義的範圍內(見以下圖表1)的圖像幀的一部分,與在使用者的周圍視野內所感知的部分形成對照。「注視點」可以對應於圖像幀的給定的分區,或者有可能是給定的圖塊。圖表1
在該描述中,術語「掃視」代表使用者的眼睛在注視點之間的相對快速的運動。使用者是否感知到受到掃視的圖像,亦即使用者是否「快速地」從一個注視點到另一個注視點來回切換,可能是根據解決方案的特定實施例而可定義的。
在該描述中,術語「未經壓縮的」代表保持其原本的、壓縮前的狀態的幀,而術語「經解壓的」代表首先使用壓縮算法從其未經壓縮的狀態被壓縮,並且接著之後被解壓縮的幀。取決於所使用的壓縮的類別,經解壓縮的幀的資料集合可以等同於幀的原本的、未經壓縮的狀態的資料集合(無損壓縮)或者其可以不等同於幀的原本的、未經壓縮的狀態的資料集合(有損壓縮)。
如將由幀壓縮領域的一般技藝人士理解的,藉由任何給定的壓縮算法所產生的作為結果的壓縮率不可避免地各幀不同。數位擷取的視訊序列的給定幀中的紋理水平、光照條件、ISO設置等可以在同一序列中根據不同的幀而顯著不同,並且由此,針對幀的壓縮的相對等級亦將顯著地不同。例如,與擷取幾個人沖下街道遠離背景中的爆炸的後續的幀相比,擷取相同的幾個人站著和談話的視訊序列中的幀更有可能經歷高等級的壓縮。簡而言之,具有跑動的物件和爆炸的幀就是具有許多資料,若該幀要在之後被解壓時傳遞高品質的渲染,則其在壓縮中的損失可能是不可承受的。
利用足夠大的處理部件、記憶體部件、匯流排頻寬和電源,PCD設計者將不一定要考慮一個壓縮算法對另一壓縮算法的折衷——其將簡單地以可能的最高品質等級產生幀,並且若有可能,利用無損壓縮算法來進行壓縮。以此方式,其將確保使用者所體驗的QoS總是處於其可能的最高等級。但是,針對PCD的受限的形狀因數的現實迫使設計者當設置PCD中的部件的大小時在各種壓縮算法之間進行折衷,以針對所有預測的用例傳遞最小可接受的QoS。
最終,PCD設計者在評估針對所有已知的用例所需的頻寬要求和部件大小時通常已經使用「現實最壞情況」壓縮率。因此,現實最壞情況是維持針對需要壓縮的最難的幀(例如,擷取人們沖下街道遠離背景中的爆炸的幀)的最小可接受QoS所需要的壓縮率。使用現實最壞情況,設計者進行保守的大小選擇以確保記憶體和匯流排頻寬將總是充足的,而無論給定的幀的複雜度。顯然,若設計者將頻寬設置過小,則在出現問題的用例期間在處理時所導致的潛時可能引起丟幀、每秒幀(「FPS」)率的降低等。相反,針對比現實最壞情況好的所有用例,系統可能對於傳遞最小可接受QoS而顯著地大小過大,從而產生較高成本的系統及/或系統的較高功耗。
有利地,解決方案的實施例給設計者提供了將產生器、記憶體部件、以及匯流排頻寬「正確設置大小」的能力,以跨用例的範圍來最佳化功耗和QoS等級。顯然,解決方案的實施例利用幀內的注視點(亦即,使用者關注的幀的區域)的知識來應用混合模式的壓縮方法,該壓縮方法針對該幀內包括注視點的分區使用無損壓縮(或者可能無壓縮),而針對幀的其餘分區使用有損壓縮。在如此做時,並且如將在下文中根據附圖更加徹底地解釋的,實施例巧妙地提供了在對給定圖像幀進行壓縮時對無損和有損壓縮算法的使用,由此降低了針對現實最壞情況所需要的處理和匯流排頻寬。
例如,返回到視訊序列內擷取了幾個人沖下街道遠離背景中的爆炸的視訊幀的用例,解決方案的實施例利用關於使用者關注幀中的位置的知識(例如,該幾個人的面部、背景爆炸、路上的車等),並且僅對幀中受到使用者關注的部分應用無損壓縮,而不是跨整個幀應用無損壓縮。以該方式,幀內的被感知為在使用者的中央凹區域之外(亦即,在使用者的擴展視野周圍內的)的並且因此在根據無損算法被壓縮時對QoS提供很少或沒有積極影響的資料可以根據有損壓縮算法被壓縮(並且之後被解壓縮)。此外,可以預期的是,一些實施例甚至可以辨識使用者的盲點的位置,並且使用極高的壓縮算法來壓縮與盲點相關聯的資料(或者,可替代地,完全丟棄與盲點相關聯的資料而不對其進行壓縮)。
轉到圖1,圖示的是對由多個資料子單元或圖塊所組成的圖像幀進行壓縮的效果。在該描述中,可以在由256位元組圖塊所組成的圖像幀或者圖像幀的部分的上下文中描述各種實施例。然而,顯然應當理解的是,256位元組的圖塊大小以及各種經壓縮的資料事務大小在本質上是示例性的,並且不暗示該解決方案的實施例只限於256位元組的圖塊大小的應用。此外,應當理解的是,在該描述中對DRAM的任何特定最小存取長度(「MAL」)或「存取塊大小」(ABS)的引用僅僅出於描述該解決方案的方便而使用,並且不暗示該解決方案的實施例只限於具有特定MAL要求的DRAM設備的應用。由此,本領域一般技藝人士應當認識到,在該描述中引用的特定資料傳輸大小、塊大小、匯流排寬度、MAL等等僅僅是出於示例性目的提供的,而不將預期的解決方案的範疇限制為適用於具有相同資料傳輸大小、塊大小、匯流排寬度、MAL等的應用。
返回圖1的視圖,將未經壓縮的圖像幀(亦稱為「緩衝區」)的一部分描述成由30個未經壓縮的圖塊或單元組成,每個圖塊或單元具有如缺少陰影所表示的大小「K」。示例性大小K可以是256位元組,然而,如上面所解釋的,圖塊不限於任何特定大小,並且可以根據應用而不同。為了說明和描述的簡便,較大的未被壓縮的圖像幀的30個圖塊部分被描述為整個圖像幀的代表。如本領域一般技藝人士所理解的,可以藉由壓縮器塊(在圖1中將其圖示成圖像CODEC模組113)減小未經壓縮的圖像幀的大小,從而最佳化其在匯流排上的傳輸、減小整體系統功耗並且最小化其對記憶體容量的影響,其中該壓縮器塊在逐個圖塊的基礎上應用壓縮算法。壓縮的結果是經壓縮的圖像幀加上中繼資料檔案,如圖1中相對於幀的所圖示部分的視圖中可見的。在已經受制於壓縮塊113的壓縮算法之後,經壓縮的圖像幀由原始的、未經壓縮的圖像幀中的圖塊組成。
在未經壓縮的圖像幀中,每個圖塊可以具有大小K,而在經壓縮的圖像幀中,每個圖塊可以具有大小K或者更小(K對應於可能的無壓縮、K-1位元組、K-2位元組、K-3位元組、...、K = 1位元組)。在該圖示中,形成經壓縮的圖像幀的各種圖塊藉由不同等級的陰影來表示,陰影取決於壓縮塊113A已經將其壓縮算法應用於由給定圖塊所保存的資料而產生的壓縮的程度。顯然,壓縮塊113A為經壓縮的圖像幀中繼資料建立了伴隨緩衝區,如本領域一般技藝人士將理解的。經壓縮的圖像幀中繼資料包含針對經壓縮的圖像幀中每個經壓縮的圖塊的大小、類型和屬性的記錄。因為DRAM存取可以限於最小存取長度MAL的單元,所以可以將給定的經壓縮的圖塊的大小在中繼資料中表示為表示該經壓縮的圖塊大小所需要的ABS的數量(例如,1 MAL、2 MAL、...、n MAL)。中繼資料中的該大小描述允許緩衝區的未來讀取器僅向記憶體詢問用於將每個圖塊解壓縮回原始大小K所需要的最小所需資料量。
圖2圖示具有DRAM記憶體部件的經壓縮的資料事務,其中該DRAM記憶體部件滿足每個事務是每事務最小存取長度(「MAL」)的整數倍的要求。如根據圖2的圖示所理解的,經壓縮的圖塊的長度可以小於儲存其的DRAM的最小存取長度要求的整數倍。因此,對經壓縮的資料的請求需要事務,其中該事務包括滿足MAL要求的整數倍所需要的一定量的無用資料或「填充」。向經壓縮的圖塊資料添加表示無用資訊的填充,以使得事務大小是系統MAL的整數倍(i *MAL)。取決於特定的晶片技術(例如,LPDDR2、LPDDR3、LPDDR4等)和記憶體匯流排寬度(x16、x32、x64),示例性MAL可以是32位元組或64位元組。作為實例,具有63位元組大小的經壓縮的圖塊可以用1位元組的填充資料來填充,以便形成完整的64位元組事務大小(2x32B MAL或1x64B MAL)。類似地,MAL是32位元組,具有65位元組大小的經壓縮的圖塊可以用31位元組來填充(3x32B MAL),或者若MAL是64位元組,則用63位元組的填充資料進行填充,以便獲得完整的128位元組事務大小(2x64B MAL )。應當注意,在上面的實例中,經壓縮的圖塊大小的差異僅僅為2個位元組;然而,由於65位元組經壓縮的圖塊超過64位元組,所以其事務必須包括顯著更多的填充。
圖3圖示與示例性圖像幀相關聯的一系列經壓縮的資料事務。顯然,圖3的圖示中的事務或單元可以被認為是已經根據無損或有損壓縮算法之一而被壓縮(以及在圖1和圖2的圖示中所圖示的彼等單元)。
該圖像幀被圖示為具有「N」列和「M」行的圖塊。根據本領域已知的方法,第一行圖塊中的前四個連續圖塊以其未經壓縮的長度、經壓縮的長度和事務長度(經壓縮的長度加上填充)來圖示。為了便於說明,在前四個連續圖塊的上下文內進行說明(所圖示的概念與除了圖像幀的第一行圖塊中的前四個連續圖塊之外的圖塊群組相關),如本領域一般技藝人士所將理解的。
看向以其未經壓縮的狀態的四個示例性的連續圖塊,每個圖塊(#1,0;#2,0;#3,0;#4,0)具有256位元組的長度(可以預期其他長度)。當被壓縮時,該四個示例性的連續圖塊分別具有112位元組、56位元組、33位元組和177位元組的長度。假設MAL是64位元組,則針對四個示例性的連續圖塊中的每一個的事務長度可以分別是128位元組(112位元組的經壓縮的資料加上16位元組的填充)、64位元組(56位元組的經壓縮的資料加上8位元組的填充)、64位元組(33位元組的經壓縮的資料加上31位元組的填充)和192位元組(177位元組的經壓縮的資料加上15位元組的填充)。顯然,為了處理所有四個示例性的連續圖塊,本領域中已知的方法進行四個事務,每個經壓縮的圖塊一個事務。
現在轉到其餘附圖,描述了解決方案的其他實施例。如將從以下附圖和相關的描述中顯而易見的,圖像幀可以被細分成分區,每個分區由一或多個相鄰圖塊的封包來定義。注視點位置可以被確定為在給定的分區內。從彼處開始,有利地,包含注視點的分區可以使用無損壓縮算法(或者具有相對低的壓縮因數的接近無損的有損壓縮算法)來壓縮,而幀內的其餘分區根據不斷增加的有損壓縮算法而被壓縮。此外,在一些實施例中,盲點位置可以被確定為在第二給定分區內,第二給定分區最終使用非常高的壓縮的有損壓縮算法被壓縮、完全被丟棄,或者用填充資料所替代,因為與盲點相關聯的經解壓的資料的品質對QoS沒有影響。以該方式,解決方案的實施例提供圖像幀內的混合壓縮方法,而不是單個壓縮算法跨圖像幀中的所有圖塊被應用。
圖4是圖示使用中央凹型壓縮方法的智慧壓縮(「IC」)的片上系統102的實施例的功能方塊圖。如能夠從圖4的圖示中理解的,監視器模組114與注視點感測器159進行通訊。注視感測器159可以被配置為確定由資料/幀引擎201所產生的給定圖像幀內的使用者焦點區域。注視點位置可以由監視器模組114提供至智慧壓縮(「IC」)模組101。與壓縮函數資料庫109進行通訊的智慧壓縮模組101可以產生將圖像幀分成一系列分區的壓縮圖。與壓縮函數資料庫109進行通訊的智慧壓縮模組101亦可以產生基於與注視點感測器159及/或監視器模組114相關聯的潛時因數的知識來調節資料幀中的中央凹區域的大小的壓縮圖。可以預期的是,取決於潛時因數,中央凹區域可以由單個分區或者多個相鄰的分區來定義。
智慧壓縮模組101亦可以作為其壓縮圖的一部分而產生用於壓縮一或多個分區內的圖塊的指令。壓縮圖可以從智慧壓縮模組101被提供至圖像CODEC模組113B,智慧壓縮模組101進而根據壓縮圖來壓縮從資料/幀引擎201所接收的圖像幀。以該方式,圖像CODEC模組113B可以根據最適合的壓縮算法來壓縮每個所定義的分區內的圖塊,例如,針對與從注視點感測器159所確定的注視點相對應的給定分區內的圖塊使用無損壓縮算法,而針對不與該注視點位置相對應的分區使用有損壓縮算法。
圖像CODEC模組113B可以經由匯流排211將根據如在上文和下文中所描述的中央凹型壓縮方法來壓縮的經過壓縮的圖像幀發送至記憶體112(其可以包含DDR記憶體部件)以供儲存。隨後,經壓縮的圖像幀可以被返回至圖像CODEC模組113B,以用於在經由顯示器132被呈現給使用者之前根據原本由智慧壓縮模組101所產生的壓縮圖而被解壓。在解壓的程序中,圖像CODEC模組113B可以與智慧壓縮模組101進行通訊,或者直接與壓縮函數資料庫109進行通訊,以辨識用於對圖像幀進行壓縮的壓縮圖。
有利地,藉由使用中央凹型壓縮方法,解決方案的實施例可以最佳地壓縮圖像幀使得僅圖像幀中對QoS具有最大影響的彼等分區使用低壓縮、無損壓縮算法被壓縮,而對QoS具有很少或沒有影響的彼等分區使用有損壓縮算法激進地被壓縮。此外,在一些實施例中,被確定為包含盲點(其位置可以由IC模組101基於注視點的已知位置來確定)的分區可以根據對解決方案的特定實施例可用的最激進的有損壓縮算法來被壓縮。如將從以下說明中顯而易見的,可以預期到解決方案的實施例可以隨著分區距與注視點相關聯的給定分區的距離的增加而應用具有越來越高的壓縮因數的有損壓縮算法(並且因此,越來越低品質的經解壓的輸出)。圖像CODEC模組113B可以被分成用於將幀寫入記憶體的編碼器模組,以及用於從記憶體中讀取經壓縮的幀的解碼器模組。該兩種模組可以並置,或者可以實體上分離並且位於晶片內的其他塊內。
圖5是圖示針對智慧壓縮方法的實施而配置的圖4的圖像CODEC模組113B的編碼器部分的實施例的功能方塊圖,該智慧壓縮方法利用包括無損算法和有損算法的中央凹型壓縮方法。如相對圖4圖示和描述的,產生器引擎201可以向圖像CODEC 113B提供其未經壓縮的幀輸入,圖像CODEC 113B進而可以根據由智慧壓縮模組101所產生的壓縮圖來以逐分區的方式壓縮該幀。取決於分區,圖像CODEC模組113B可以利用無損壓縮器塊或者有損壓縮器塊。關於可以使用哪個壓縮器塊來壓縮給定分區內的圖塊,以及由該壓縮器塊所應用的算法的壓縮因數的確定取決於從智慧壓縮模組101所接收的指令。智慧壓縮模組101可以根據從壓縮函數資料庫109所查詢的壓縮圖或者壓縮函數來產生指令。
圖6圖示數學等式的示例性圖形輸出601以及示例性查找表602,每個條目指定根據給定分區距注視點的距離的壓縮率。能夠產生圖形輸出601和示例性查找表602的示例性數學等式可以被儲存在壓縮函數資料庫109中。如能夠從圖6的圖示中理解的,智慧壓縮方法可以指出:具有遞增的相對壓縮因數的壓縮算法可以取決於給定分區相對於與注視點相關聯的分區的位置/距離而被使用在圖像幀內的分區上。簡而言之,給定的分區距與注視點相關聯的分區越遠,由解決方案的實施例用來壓縮給定分區的壓縮算法的壓縮因數就越高。
圖7圖示在圖像幀內所定義的示例性中央凹分區,每個中央凹分區包括圖像幀的一或多個圖塊。如能夠從圖7的圖示中理解的,中央凹分區「Lx」可以被定義為包含根據「n」列和「m」行而佈置在分區內的任何數量的圖塊。同樣能夠從圖7的圖示中理解的,給定的中央凹分區「Lx」可以包括具有任何合適的縱橫比的圖塊,以及由此,可以預期到圖塊可以實質上是方形的或矩形的。
圖8圖示示例性圖像幀800,其是根據利用示例性方網格中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的。方網格的中央凹型壓縮圖案亦可以被描述和分類為邊和角相鄰性中央凹型圖案,如能夠從對圖8的圖示的瀏覽所理解的。應當理解的是,儘管示例性圖像幀800被圖示為分成某一數量的分區,但解決方案的實施例不由任何特定數量或形狀的分區所限制。此外,儘管在圖8的圖示中所圖示的分區是方形的,但可以預期的是,像圖塊一樣,分區可以由任何縱橫比來定義而不脫離本解決方案的範圍。
由智慧壓縮模組101所產生或者從壓縮函數資料庫109中查詢到的壓縮圖可以定義分區的大小、數量、圖案和相對位置。在本說明中,分區的圖案是方網格的中央凹型壓縮圖案。此外,壓縮圖亦可以指出應用至每個特定分區的特定壓縮算法(並且,作為擴展,壓縮因數),以及以什麼方式應用。
如能夠在圖8的圖示中看到的,由「星」所標識的注視點位於給定的分區內,其在下文中被稱為注視分區。注視點位置可以已經由利用注視點感測器159工作的監視模組114所確定。進而,被確定為注視分區的給定分區是圖像幀內包含該注視點的分區。
如在上文中所描述的,每個分區「Lx」可以包含一或多個完整圖塊。在圖8的圖示中被標記為「L1」的注視分區中的圖塊可以根據無損壓縮算法或者具有相對低的壓縮因數的非常高品質的有損壓縮算法來被壓縮。根據所圖示的示例性方網格的中央凹型壓縮圖案,與注視分區的邊或角並列的每個分區被指定為「L2」分區,並且由此,「L2」分區內的每個圖塊根據壓縮算法來被壓縮,其中該壓縮算法具有與用於壓縮注視分區的算法相關聯的壓縮因數相比相等或更高的壓縮因數。
類似地,與「L2」分區的邊或角並列的每個分區被指定為「L3」分區,並且由此,「L3」分區內的每個圖塊根據壓縮算法來被壓縮,該壓縮算法具有與用於壓縮L2分區的算法相關聯的壓縮因數相比相等或更高的壓縮因數。此外,與「L3」分區的邊或角並列的每個分區被指定為「L4」分區,並且由此,「L4」分區內的每個圖塊根據壓縮算法來被壓縮,該壓縮算法具有與用於壓縮L3分區的算法相關聯的壓縮因數相比相等或更高的壓縮因數。該圖案相應地繼續,並且如能夠從圖8的圖示中理解的,使得實現在對QoS最小影響的情況下最佳化壓縮資源的中央凹型壓縮方法。
圖9圖示示例性圖像幀900,其是根據利用示例性分級方網格中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的。示例性圖像幀900已經與在上文中相對圖8的圖示所描述的一致地被分區。然而,針對示例性圖像幀900的壓縮圖不同於與圖8的圖示相關聯的壓縮圖,因為其亦包括用於將分區內的壓縮圖案分級的指令。
藉由將分區內的壓縮圖案分級,可以預期到利用具有分級指令的壓縮圖的解決方案的實施例可以根據距注視分區的距離來產生輸出品質的漸變的、細紋理的下降。為此,給定分區內的圖塊可以根據不同的壓縮算法及/或與不同的壓縮因數相關聯的算法來被壓縮。通常,隨著距注視分區的距離的增加,圖塊將受制於具有增加的壓縮因數的壓縮,如由在圖像幀900的分區中可見的由箭頭所指示的。儘管圖像幀800的給定分區之每一者圖塊可以是根據具有單個壓縮因數的單個壓縮算法被壓縮的,但圖像幀900的給定分區內的不同圖塊可以受制於不同的壓縮因數的壓縮。顯然,儘管當圖像幀受制於分級方網格中央凹型壓縮圖案時,圖像幀900的給定分區內的圖塊可能受制於不同的壓縮因數而被壓縮,但可以預期,針對給定分區內的所有圖塊的平均壓縮因數可以落在由整體壓縮分類Lx針對該給定分區所辨識的範圍內。
例如,參考回圖7的圖示,考慮在圖9的圖示中利用從左到右引導的箭頭所圖示的分區——列#1中的圖塊可以全皆受制於相對於列#n中的圖塊具有最不激進的壓縮因數的有損壓縮算法,列#n中的圖塊可以全皆受制於具有相對於應用於分區中的其他圖塊的算法而言最激進的壓縮因數的有損壓縮算法。
作為根據圖7的圖示的另一實例,考慮在圖9的圖示中利用從分區的左下角到右上角有角度地向上引導的箭頭所圖示的分區——在位置「1,m」處的圖塊可以受制於相對於位置「n,0」處的圖塊具有最不激進的壓縮因數的有損壓縮算法,位置「n,0」處的圖塊可以受制於相對於應用至分區中的其他圖塊的算法具有最激進的壓縮因數的有損壓縮算法。此外,與從圖塊「1,0」到圖塊「n,m」的對角線中角對角並列的圖塊可以受制於相對於應用至分區中的其他圖塊的算法具有平均壓縮因數的有損壓縮算法。
圖10圖示示例性圖像幀1000,其是根據利用示例性拼接網格中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的。應當理解的是,儘管示例性圖像幀1000被圖示為被分成某一數量的分區,但解決方案的實施例不由任何特定數量或形狀的分區來限制。此外,儘管在圖10中所圖示的分區是方形的,但可以預期到,例如圖塊的分區可以由任何縱橫比來定義,而不脫離解決方案的範疇。
由智慧壓縮模組101所產生或者從壓縮函數資料庫109中查詢到的壓縮圖可以定義分區的大小、數量、圖案和相對位置。在本說明中,分區的圖案是拼接網格中央凹型壓縮圖案。此外,壓縮圖亦可以指出應用至每個特定分區的特定壓縮算法(並且,作為擴展,壓縮因數),以及以什麼方式應用。
如在圖10的圖示中可見的,由「星」表示的注視點位於給定的分區內,該給定的分區在下文中被稱為注視分區。注視點位置可以已經由利用注視點感測器159工作的監視器模組114確定。進而,被確定為注視分區的給定分區是圖像幀內包含注視點的分區。
如在上文中所描述的,每個分區「Lx」可以包含一或多個完整圖塊。在圖10的圖示中被標記為「L1」的注視分區中的圖塊可以根據無損壓縮算法或者具有相對低的壓縮因數的非常高品質的有損壓縮算法來被壓縮。根據所圖示的示例性拼接網格中央凹型壓縮圖案,與注視分區的邊(但不是角)並列的每個分區被指定為「L2」分區,並且由此,「L2」分區內的每個圖塊根據壓縮算法來被壓縮,該壓縮算法具有與用於壓縮注視分區的算法相關聯的壓縮因數相比相等或更高的壓縮因數。
類似地,與「L2」分區的邊(但不是角)並列的每個分區被指定為「L3」分區,並且由此,「L3」分區內的每個圖塊根據壓縮算法來被壓縮,該壓縮算法具有與用於壓縮L2分區的算法相關聯的壓縮因數相比相等或更高的壓縮因數。此外,與「L3」分區的邊(但不是角)並列的每個分區被指定為「L4」分區,並且由此,「L4」分區內的每個圖塊根據壓縮算法來被壓縮,該壓縮算法具有與用於壓縮L3分區的算法相關聯的壓縮因數相比相等或更高的壓縮因數。該圖案相應地繼續,並且如能夠從圖10的圖示中理解的,使得實現在對QoS最小影響的情況下最佳化壓縮資源的中央凹型壓縮方法。
圖11圖示示例性圖像幀1100,其是根據利用示例性分級拼接網格中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的。示例性圖像幀1100已經與在上文中相對圖10的圖示所描述的一致地被分區。然而,針對示例性圖像幀1100的壓縮圖不同於與圖10的圖示相關聯的壓縮圖,因為其亦包括用於將分區內的壓縮圖案分級的指令。
藉由將分區內的壓縮圖案分級,可以預期到利用具有分級指令的壓縮圖的解決方案的實施例可以根據距注視分區的距離來產生輸出品質的漸變的、細紋理的下降。為此,給定分區內的圖塊可以根據不同的壓縮算法及/或與不同的壓縮因數相關聯的算法來被壓縮。通常,隨著距注視分區的距離的增加,圖塊將受制於具有增加的壓縮因數的壓縮,如由在圖像幀1100的分區中可見的由箭頭所指示的。儘管圖像幀1000的給定分區之每一者圖塊可以是根據具有單個壓縮因數的單個壓縮算法被壓縮的,但圖像幀1100的給定分區內的不同圖塊可以受制於不同的壓縮因數的壓縮。顯然,儘管當圖像幀受制於分級拼接網格中央凹型壓縮圖案時,圖像幀1100的給定分區內的圖塊可能受制於不同的壓縮因數而被壓縮,但可以預期針對給定分區內的所有圖塊的平均壓縮因數可以落在由整體壓縮分類Lx針對該給定分區所辨識的範圍內。
例如,參考回圖7的圖示,考慮在圖11的圖示中利用從左到右引導的箭頭所圖示的分區——列#1中的圖塊可以全皆受制於相對於列#n中的圖塊具有最不激進的壓縮因數的有損壓縮算法,列#n中的圖塊可以全皆受制於具有相對於應用於分區中的其他圖塊的算法具有最激進的壓縮因數的有損壓縮算法。
作為根據圖7的圖示的另一實例,考慮在圖11的圖示中利用從分區的左下角到右上角有角度地向上引導的箭頭所圖示的分區——在位置「1,m」處的圖塊可以受制於相對於位置「n,0」處的圖塊具有最不激進的壓縮因數的有損壓縮算法,位置「n,0」處的圖塊可以受制於相對於應用至分區中的其他圖塊的算法具有最激進的壓縮因數的有損壓縮算法。此外,與從圖塊「1,0」到圖塊「n,m」的對角線中角對角並列的圖塊可以受制於相對於應用至分區中的其他圖塊的算法具有平均壓縮因數的有損壓縮算法。
圖12圖示示例性圖像幀1200,其是根據利用示例性蜂巢中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的。應當理解的是,儘管示例性圖像幀1200被示出為被分成某一數量的分區,但解決方案的實施例不由任何特定數量或形狀的分區來限制。此外,儘管在圖12圖示中所圖示的分區是方形的,但可以預期到,例如圖塊的分區可以由任何縱橫比來定義,而不脫離解決方案的範疇。
由智慧壓縮模組101所產生或者從壓縮函數資料庫109中查詢到的壓縮圖可以定義分區的大小、數量、圖案和相對位置。在本說明中,分區的圖案是蜂巢中央凹型壓縮圖案。此外,壓縮圖亦可以指出應用至每個特定分區的特定壓縮算法(並且,作為擴展,壓縮因數),以及以什麼方式應用。
如在圖12的圖示中可見的,由「星」表示的注視點位於給定的分區內,該給定的分區在下文中被稱為注視分區。注視點位置可以已經由利用注視點感測器159工作的監視器模組114確定。進而,被確定為注視分區的給定分區是圖像幀內包含注視點的彼分區。
如在上文中所描述的,每個分區「Lx」可以包含一或多個完整圖塊。在圖12的圖示中被標記為「L1」的注視分區中的圖塊可以根據無損壓縮算法或者具有相對低的壓縮因數的非常高品質的有損壓縮算法來被壓縮。根據所圖示的示例性蜂巢中央凹型壓縮圖案,分區的每個水平線相對於分區中其相鄰的線有所偏移,以使得沒有分區的角與相鄰分區的角相對應。與注視分區並列的任何分區被指定為「L2」分區,並且由此,「L2」分區內的每個圖塊根據壓縮算法來被壓縮,該壓縮算法具有與用於壓縮注視分區的算法相關聯的壓縮因數相比相等或更高的壓縮因數。
類似地,與「L2」分區並列的每個分區被指定為「L3」分區,並且由此,「L3」分區內的每個圖塊根據壓縮算法來被壓縮,該壓縮算法具有與用於壓縮L2分區的算法相關聯的壓縮因數相比相等或更高的壓縮因數。此外,與「L3」分區並列的每個分區被指定為「L4」分區,並且由此,「L4」分區內的每個圖塊根據壓縮算法來被壓縮,該壓縮算法具有與用於壓縮L3分區的算法相關聯的壓縮因數相比相等或更高的壓縮因數。該圖案相應地繼續,並且如能夠從圖12的圖示中理解的,使得實現在對QoS具有最小影響的情況下最佳化壓縮資源的中央凹型壓縮方法。
圖13圖示示例性圖像幀1300,其是根據利用示例性分級蜂巢中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的。示例性圖像幀1300已經與在上文中相對圖12的圖示所描述的一致地被分區。然而,針對示例性圖像幀1300的壓縮圖區別於與圖12的圖示相關聯的壓縮圖,因為其亦包括用於將分區內的壓縮圖案分級的指令。
藉由將分區內的壓縮圖案分級,可以預期到利用具有分級指令的壓縮圖的解決方案的實施例可以根據距注視分區的距離來產生輸出品質的漸變的、細紋理的下降。為此,給定分區內的圖塊可以根據不同的壓縮算法及/或與不同的壓縮因數相關聯的算法來被壓縮。通常,隨著距注視分區的距離的增加,圖塊將受制於具有增加的壓縮因數的壓縮,如由在圖像幀1300的分區中可見的由箭頭所指示的。儘管圖像幀1200的給定分區之每一者圖塊可以是根據具有單個壓縮因數的單個壓縮算法被壓縮的,但圖像幀1300的給定分區內的不同圖塊可以受制於不同的壓縮因數的壓縮。顯然,儘管當圖像幀受制於分級蜂巢中央凹型壓縮圖案時,圖像幀1300的給定分區內的圖塊可能受制於不同壓縮因數而被壓縮,但可以預期針對給定分區內的所有圖塊的平均壓縮因數可以落在由整體壓縮分類Lx針對該給定分區所辨識的範圍內。
例如,參考回圖7的圖示,考慮在圖13的圖示中利用從左到右引導的箭頭所圖示的分區——列#1中的圖塊可以全皆受制於相對於列#n中的圖塊具有最不激進的壓縮因數的有損壓縮算法,列#n中的圖塊可以全皆受制於具有相對於應用於分區中的其他圖塊的算法具有最激進的壓縮因數的有損壓縮算法。
圖14圖示示例性圖像幀1400,其是根據利用示例性分級蜂巢中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的。示例性圖像幀1400已經與在上文中相對圖12的圖示所描述的一致地被分區。然而,針對示例性圖像幀1400的壓縮圖區別於與圖12的圖示相關聯的壓縮圖,因為其亦包括用於將分區內的壓縮圖案分級的指令。針對示例性圖像幀1400的壓縮圖同樣區別於與圖13的圖示相關聯的壓縮圖,因為其包括用於將分區內的壓縮圖案分級的不同指令。提供了圖14的圖示以圖示預期到分級的不同圖案,並且最終,解決方案的實施例不限於用於壓縮分區內的分級的任何特定的圖案或方式。
藉由將分區內的壓縮圖案分級,可以預期到利用具有分級指令的壓縮圖的解決方案的實施例可以根據距注視分區的距離來產生輸出品質的漸變的、細紋理的下降。為此,給定分區內的圖塊可以根據不同的壓縮算法及/或與不同的壓縮因數相關聯的算法來被壓縮。通常,隨著距注視分區的距離的增加,圖塊將受制於具有增加的壓縮因數的壓縮,如由在圖像幀1400的分區中可見的由箭頭所指示的。儘管圖像幀1200的給定分區之每一者圖塊可以是根據具有單個壓縮因數的單個壓縮算法被壓縮的,但圖像幀1400的給定分區內的不同圖塊可以受制於不同的壓縮因數而被壓縮。顯然,儘管當圖像幀受制於分級蜂巢中央凹型壓縮圖案時,圖像幀1400的給定分區內的圖塊可能受制於不同的壓縮因數而被壓縮,但可以預期針對給定分區內的所有圖塊的平均壓縮因數可以落在由整體壓縮分類Lx針對該給定分區所辨識的範圍內。
例如,參考回圖7的圖示,考慮在圖14的圖示中利用從左到右引導的箭頭所圖示的分區——列#1中的圖塊可以全皆受制於相對於列#n中的圖塊具有最不激進的壓縮因數的有損壓縮算法,列#n中的圖塊可以全皆受制於具有相對於應用於分區中的其他圖塊的算法具有最激進的壓縮因數的有損壓縮算法。
作為根據圖7的圖示的另一實例,考慮在圖14的圖示中利用從分區的左下角到右上角有角度地向上引導的箭頭所圖示的分區——在位置「1,m」處的圖塊可以受制於相對於位置「n,0」處的圖塊具有最不激進的壓縮因數的有損壓縮算法,位置「n,0」處的圖塊可以受制於相對於應用至分區中的其他圖塊的算法具有最激進的壓縮因數的有損壓縮算法。此外,與從圖塊「1,0」到圖塊「n,m」的對角線中角對角並列的圖塊可以受制於相對於應用至分區中的其他圖塊的算法具有平均壓縮因數的有損壓縮算法。
圖15是邏輯流程圖,其圖示根據利用包括無損和有損算法的中央凹型壓縮方法的解決方案的智慧壓縮方法1500。在方塊1505處開始,使用者的關注點被監視。如視覺焦點領域的一般技藝人士將理解的,使用者在圖像上的關注點,或注視點以最高等級的敏銳度被感知。此外,並且如能夠從在上文中與注視點的定義一同呈現的圖表1中理解的,敏銳度根據距使用者的中央凹的距離(或者角度)而降低(亦即,使用者的敏銳度在視場周圍降低)。有利地,藉由利用使用者在圖像上的注視點的知識,與圖像中距離上遠離注視點的分區相關聯的資料可以使用有損壓縮算法被壓縮,此是因為在解壓之後的相對較低的輸出品質不會顯著地影響QoS。
返回方法1500,在決策方塊1510處,可以從對注視點的監視來確定是否在發生掃視,即使用者是否快速地從一個注視點轉移到另一注視點。若在發生掃視,則跟隨「是」分支到方塊1515,並且圖像可以根據預先確定的壓縮率而被壓縮。然而,若對注視點進行監視確定使用者關注在圖像的特定區域上(而不是在圖像內的兩個注視點之間轉換),則跟隨「否」分支到方塊1520,並且根據該注視點來產生中央凹型壓縮圖案。顯然,可以預期到在方塊1520處所產生的中央凹型壓縮圖案可以或可以不在分區內被分級,如在上文中相對於圖8至圖14所描述的。此外,可以預期到在方塊1520處所產生的中央凹型壓縮圖案可以但不限於與相對於圖8至圖14所圖示和描述的示例性中央凹型壓縮圖案中的任何一個相一致。
從方塊1520起,方法1500繼續至方塊1525。在方塊1525處,圖像基於所產生的中央凹型壓縮圖案而被壓縮。如在上文中更加詳細地描述的,圖像幀可以被分區並且注視分區(亦即,包含注視點的分區)被確定。注視分區使用無損壓縮算法或者在一些情況下使用與相對低壓縮因數相關聯的有損壓縮算法來被壓縮。以該方式,對圖像的之後的解壓將在與使用者體驗以及作為擴展,與QoS最相關的圖像的分區處產生最高品質的輸出。如在上文中解釋的,不同於注視分區的分區可以根據有損壓縮算法來被壓縮(並且之後被解壓),該有損壓縮算法與根據距注視分區的距離而相對越來越高的壓縮因數相關聯,亦即距注視分區最遠的分區可以受制於具有相對最高的壓縮因數的有損壓縮算法。方法1500返回。
圖16是功能方塊圖,其圖示用於實施根據該解決方案的智慧壓縮方法和系統的、以無線電話為形式的可攜式計算設備(「PCD」)100的示例性、非限制性態樣。如圖所示,PCD 100包括片上系統102,其包括多核心中央處理單元(「CPU」),以及耦合在一起的類比信號處理器126。CPU 110可以包括第零核心222、第一核心224、以及第N核心230,如由本領域一般技藝人士理解的。此外,如由本領域一般技藝人士理解的,亦可以採用數位訊號處理器(「DSP」)來替代CPU 110。
通常而言,智慧壓縮(「IC」)模組101可以經由硬體及/或韌體來形成,並且可以負責產生中央凹型壓縮圖以及使得圖像CODEC模組113使用有損和無損壓縮算法以中央凹型的方式來壓縮圖像。如在圖16中所示,顯示控制器128和觸控式螢幕控制器130耦合至數位訊號處理器110。在片上系統102外部的觸控式螢幕顯示器132耦合至顯示控制器128和觸控式螢幕控制器130。PCD 100亦可以包括視訊轉碼器134,例如,逐行倒相(「PAL」)編碼器、順序與儲存彩色電視系統(「SECAM」)編碼器、國家電視制式委員會(「NTSC」)編碼器,或者任何其他類型的視訊轉碼器134。視訊轉碼器134耦合至多核CPU 110。視訊放大器136耦合至視訊轉碼器134和觸控式螢幕顯示器132。視訊連接埠138耦合至視訊放大器136。如在圖16中所示,通用序列匯流排(「USB」)控制器140耦合至CPU 110。同樣,USB埠142耦合至USB控制器140。
記憶體112(其可以包括PoP記憶體、快取記憶體、遮罩ROM/啟動ROM、啟動OTP記憶體、DDR類型的DRAM記憶體等)亦可以耦合至CPU 110。用戶辨識模組(「SIM」)卡146亦可以耦合至CPU 110。此外,如圖16中所示,數碼相機148可以耦合至CPU 110。在一示例性態樣中,數碼相機148是電荷耦合設備(「CCD」)相機或者互補金屬氧化半導體(「CMOS」)相機。
如圖16中所進一步圖示的,身歷聲音訊CODEC 150可以耦合至類比信號處理器126。此外,音訊放大器152可以耦合至身歷聲音訊CODEC 150。在一個示例性態樣中,第一身歷聲揚聲器154和第二身歷聲揚聲器156耦合至音訊放大器152。圖16圖示麥克風放大器158亦可以耦合至身歷聲音訊CODEC 150。另外地,麥克風160可以耦合至麥克風放大器158。在特定的態樣中,調頻(「FM」)無線電調諧器162可以耦合至身歷聲音訊CODEC 150。同樣,FM天線164耦合至FM無線電調諧器162。此外,身歷聲耳機166可以耦合至身歷聲音訊CODEC 150。
圖16亦指示射頻(「RF」)收發機168可以耦合至類比信號處理器126。RF開關170可以耦合至RF收發機168和RF天線172。如在圖16中所示,鍵盤174可以耦合至類比信號處理器126。同樣,具有麥克風的單聲道耳機176可以耦合至類比信號處理器126。此外,振動器設備178可以耦合至類比信號處理器126。圖16亦圖示電源188(例如,電池)經由電源管理積體電路(「PMIC」)180而耦合至片上系統102。在特定的態樣中,電源188包括可充電DC電池或者DC電源,該DC電源是經由從交流電(「AC」)到連接到AC電源的DC變換器而得到的。
CPU 110亦可以耦合至一或多個內部、片上熱感測器157A,以及一或多個外部、片外熱感測器157B。片上熱感測器157A可以包括一或多個正比於絕對溫度(「PTAT」)的溫度感測器,其基於垂直PNP結構,並通常專用於互補金屬氧化物半導體(「CMOS」)甚大規模集成(「VLSI」)電路。片外熱感測器157B可以包括一或多個熱敏電阻。熱感測器157可以產生電壓下降,利用類比數位轉換器(「ADC」)控制器(未圖示)將該電壓下降轉換成數位信號。然而,亦可以使用其他類型的熱感測器157。
觸控式螢幕顯示器132、視訊連接埠138、USB埠142、相機148、第一身歷聲揚聲器154、第二身歷聲揚聲器156、麥克風160、FM天線164、身歷聲耳機166、RF開關170、RF天線172、小鍵盤174、單聲道耳機176、振動器178、熱感測器157B、PMIC 180和電源188在片上系統102之外。然而,應當理解的是,在圖16中的PCD 100的示例性實施例中描述成在片上系統102之外的該等設備中的一或多個,可以在其他示例性實施例中常駐在晶片102上。
在特定的態樣中,在本文中所描述的方法步驟中的一或多個可以由在記憶體112中所儲存的可執行指令和參數來實施,或者被實施為形成IC模組101及/或圖像CODEC模組113。此外,IC模組101、圖像CODEC模組113、記憶體112、在其中所儲存的指令,或其組合可以充當用於執行在本文中所描述的方法步驟中的一或多個的單元。
圖17是示意圖1700,其圖示用於執行智慧壓縮方法的、圖16的PCD的示例性軟體架構。如在圖17中所圖示的,CPU或數位訊號處理器110經由主匯流排211耦合至記憶體112。如在上文中所述,CPU 110是具有N核心處理器的多核心處理器。亦即,CPU 110包括第一核心222、第二核心224、以及第N核心230。如對本領域技藝人士已知的,第一核心222、第二核心224、以及第N核心230之每一者可用於支援專用應用或程式。可替代地,一或多個應用程序或程式可以被分配以跨可用的核心中的兩個或更多個進行處理。
CPU 110可以從IC模組101(其可以包括軟體及/或硬體)接收命令。若被體現為軟體,則模組101包括由CPU 110執行的指令,其向由CPU 110和其他處理器執行的其他應用程式發出命令。
可以將CPU 110的第一核心222、第二核心224到第N核心230整合在單個積體電路晶粒上,或者可以將其整合或耦合在多電路封裝中的不同晶粒上。設計人員可以經由一或多個共享快取記憶體來耦合第一核心222、第二核心224到第N核心230,並且他們可以經由諸如匯流排、迴路、網格和交叉拓撲之類的網路拓撲來實施訊息或指令傳遞。
匯流排211可以包括經由一或多個有線或無線連接的多個通訊路徑,如在本領域中已知的、以及如在上文的定義中所描述的。匯流排211可以具有用於賦能通訊的額外元件(例如,控制器、緩衝器(快取記憶體)、驅動器、中繼器和接收器),但為了簡單起見省略了該等元件。此外,匯流排211可以包括位址、控制,及/或資料連接,以使能在前述部件之間實現合適的通訊。
當PCD 100所使用的邏輯是以軟體實施的時,如在圖17中所示,則應當注意的是,可以將以下中的一或多個儲存在任何電腦可讀取媒體上,以藉由或結合任何與電腦相關的系統或方法來使用:啟動邏輯250、管理邏輯260、IC介面邏輯270、應用程序儲存器280中的應用、以及檔案系統290的部分。
在該文件的上下文中,電腦可讀取媒體是能夠包含或儲存電腦程式和資料以藉由或結合與電腦相關的系統或方法來使用的電、磁、光或其他實體設備或構件。各種邏輯元件和資料儲存可以在任何電腦可讀取媒體中體現,以藉由或結合指令執行系統、裝置或設備來使用,該等指令執行系統、裝置或設備例如是基於電腦的系統、包含處理器的系統,或者是可以從該指令執行系統、裝置或設備提取指令並執行該等指令的其他系統。在本文件的上下文中,「電腦可讀取媒體」可以是能夠儲存、傳輸、傳播或者傳送程式,以藉由或結合指令執行系統、裝置或設備使用的任何構件。
電腦可讀取媒體可以是例如但不限於:電子、磁、光、電磁、紅外,或半導體的系統、裝置、設備,或傳播媒體。電腦可讀取媒體的更加特定的實例(非詳盡列表)將包括以下各項:具有一或多個電線的電連接(電子)、可攜式電腦磁碟(磁)、隨機存取記憶體(RAM)(電子)、唯讀記憶體(ROM)(電子)、可抹除可程式設計唯讀記憶體(EPROM、EEPROM或快閃記憶體)(電子)、光纖(光)和可攜式壓縮光碟唯讀記憶體(CDROM)(光)。應當注意,電腦可讀取媒體甚至可以是紙質的,或者是在其上列印程式的其他合適的媒體,此是由於例如經由紙媒體或其他媒體的光掃瞄,可以電子地擷取該程式,接著以合適的方式進行編譯、解譯,或者處理(若需要的話),並接著被儲存在電腦記憶體中。
在可替代的實施例中,在啟動邏輯250、管理邏輯260以及可能的IC介面邏輯270中的一或多個是以硬體來實施的情況下,可以利用以下技術中的任何一種或者組合來實施各種邏輯,其中該等技術中的每種技術皆是本領域公知的:具有用於在資料信號上實現邏輯功能的邏輯門的離散邏輯電路、具有合適組合的邏輯門的特殊應用積體電路(ASIC)、可程式設計閘陣列(PGA)、現場可程式設計閘陣列(FPGA)等。
記憶體112是諸如快閃記憶體或固態記憶設備之類的非揮發性資料儲存設備。儘管將記憶體112描述為單個設備,但記憶體112可以是將不同的資料儲存設備耦合至數位訊號處理器110(或者其他處理器核心)的分散式記憶體設備。
啟動邏輯250包括用於選擇性地辨識、載入和執行用於智慧壓縮的選擇程式的一或多個可執行指令。啟動邏輯250可以辨識、載入和執行選擇智慧壓縮程式。可以在嵌入式檔案系統290的程式儲存器296中找到示例性選擇程式。當被CPU 110中的核心處理器中的一或多個執行時,該示例性選擇程式可以根據IC模組101所提供的一或多個信號進行操作以實施智慧壓縮方法。
管理邏輯260包括用於終止相應的處理器核心中的一或多個上的IC程式,以及選擇性地辨識、載入和執行更合適的替換程式的一或多個可執行指令。管理邏輯260被安排為在執行時執行該等功能,或者當PCD 100加電並被該設備的操作者使用時,執行該等功能。可以在嵌入式檔案系統290的程式儲存器296中找到替換程式。
介面邏輯270包括用於呈現、管理、以及與外部輸入進行互動,以觀測、配置或者以其他方式更新在嵌入式檔案系統290中儲存的資訊的一或多個可執行指令。在一個實施例中,介面邏輯270可以結合經由USB埠142接收的製造商輸入進行操作。該等輸入可以包括要從程式儲存器296中刪除或者增加到程式儲存器296中的一或多個程式。可替代地,該等輸入可以包括針對程式儲存器296中的程式中的一或多個的編輯或改變。此外,該等輸入可以辨識針對啟動邏輯250和管理邏輯260中的一個或二者的一或多個改變或者其完全替換。作為實例,該等輸入可以包括對與用於分區「Lx」的特定類型的壓縮算法相關聯的壓縮因數的改變及/或對優選的經分區的壓縮圖案的改變。
介面邏輯270使製造商能夠根據在PCD 100上定義的操作狀況而可控制地配置和調整終端使用者的體驗。當記憶體112是快閃記憶體時,可以對以下中的一或多個進行編輯、替換或者修改:啟動邏輯250、管理邏輯260、介面邏輯270、應用程序儲存器280中的應用程式,或者嵌入式檔案系統290中的資訊。在一些實施例中,介面邏輯270可以准許PCD 100的終端使用者或者操作者搜尋、定位、修改,或者替換啟動邏輯250、管理邏輯260、應用程序儲存器280中的應用程序和嵌入式檔案系統290中的資訊。操作者可以使用所得出的介面來進行改變,其中該等改變將在PCD 100的下一次啟動時被實施。可替代地,操作者可以使用所得出的介面來進行改變,其中該等改變在執行期間被實施。
嵌入式檔案系統290包括分層佈置的記憶體管理儲存器292。就此而言,檔案系統290可以包括其總的檔案系統容量的保留部分,以便儲存用於配置和管理PCD 100使用的各種IC算法的資訊。
該說明書所描述的處理或者處理流程中的某些步驟自然地在本發明的其他步驟之前以用於如前述的功能。然而,本發明不限於該等所描述的步驟的順序,若此種順序或者序列不改變本發明的功能。亦即,應當認識到,在不脫離本發明的保護範疇者精神的基礎上,一些步驟可以在其他步驟之前執行、之後執行或者並行地執行(大體上同時地執行)。在一些實例中,在不脫離本發明的基礎上,可以省略或者不執行某些步驟。此外,諸如「其後」、「接著」、「接下來」等之類的詞語不意欲限制該等步驟的順序。該等詞語僅僅只是用於引導讀者通讀該示例性方法的描述。
另外地,程式設計領域的一般技藝人士能夠編寫電腦代碼或者辨識合適的硬體及/或電路,以便例如基於該說明書中的流程圖和相關聯的描述,沒有困難地實施所揭示的發明內容。因此,對於充分地理解如何利用和使用本發明而言,並不認為是必需要揭示特定的程式碼指令集或者詳細的硬體設備。在上面的描述中,結合可以圖示各個處理流程的附圖來更加詳細地解釋所要求保護的電腦實施的程序的創新型功能。
在一或多個示例性態樣中,所描述的功能可以以硬體、軟體、韌體,或其任何組合來實施。若是以軟體實施的,則可以將該等功能儲存在電腦可讀取媒體中或者作為電腦可讀取媒體上的一或多個指令或代碼來傳輸。電腦可讀取媒體包括電腦儲存媒體和通訊媒體兩者,其中通訊媒體包括促進從一個地方向另一個地方傳送電腦程式的任何媒體。儲存媒體可以是電腦能夠存取的任何可用媒體。作為實例但非限制,此種電腦可讀取媒體可以包括RAM、ROM、EEPROM、CD-ROM,或其他光碟記憶體、磁碟記憶體或其他磁性儲存設備,或者能夠用於攜帶或儲存具有指令或資料結構形式的期望的程式碼,並能夠由電腦存取的任何其他媒體。
因此,儘管詳細地說明和描述了選定的態樣,但應當理解的是,可以在不脫離本發明的精神和保護範疇的基礎上,對其進行各種替代和改變,如由申請專利範圍所定義的。
100‧‧‧可攜式計算設備(「PCD」)
101‧‧‧智慧壓縮模組
102‧‧‧片上系統
109‧‧‧壓縮函數資料庫
110‧‧‧CPU
112‧‧‧記憶體
113‧‧‧圖像CODEC模組
113A‧‧‧壓縮塊
113B‧‧‧圖像CODEC模組
114‧‧‧監視模組
126‧‧‧類比信號處理器
128‧‧‧顯示控制器
130‧‧‧觸控式螢幕控制器
132‧‧‧觸控式螢幕顯示器
134‧‧‧視訊轉碼器
136‧‧‧視訊放大器
138‧‧‧視訊連接埠
140‧‧‧USB控制器
142‧‧‧USB埠
146‧‧‧用戶辨識模組(「SIM」)卡
148‧‧‧數碼相機
150‧‧‧身歷聲音訊CODEC
152‧‧‧音訊放大器
154‧‧‧第一身歷聲揚聲器
156‧‧‧第二身歷聲揚聲器
157A‧‧‧片上熱感測器
157B‧‧‧片外熱感測器
158‧‧‧麥克風放大器
159‧‧‧注視點感測器
160‧‧‧麥克風
162‧‧‧調頻(「FM」)無線電調諧器
164‧‧‧FM天線
166‧‧‧身歷聲耳機
168‧‧‧射頻(「RF」)收發機
170‧‧‧RF開關
172‧‧‧RF天線
174‧‧‧小鍵盤
176‧‧‧單聲道耳機
178‧‧‧振動器
180‧‧‧PMIC
188‧‧‧電源
201‧‧‧資料/幀引擎
211‧‧‧主匯流排
222‧‧‧第零核心
224‧‧‧第一核心
230‧‧‧第N核心
250‧‧‧啟動邏輯
260‧‧‧管理邏輯
270‧‧‧IC介面邏輯
280‧‧‧應用程序儲存器
290‧‧‧檔案系統
292‧‧‧記憶體管理儲存器
296‧‧‧程式儲存器
601‧‧‧圖形輸出
602‧‧‧查找表
800‧‧‧圖像幀
900‧‧‧圖像幀
1000‧‧‧圖像幀
1100‧‧‧圖像幀
1200‧‧‧圖像幀
1300‧‧‧圖像幀
1400‧‧‧圖像幀
1500‧‧‧智慧壓縮方法
1505‧‧‧方塊
1510‧‧‧決策方塊
1515‧‧‧方塊
1520‧‧‧方塊
1525‧‧‧方塊
1700‧‧‧示意圖
在附圖中,除非另外指出,否則各個視圖通篇中相同的元件符號代表類似的部件。對於利用諸如「102A」或「102B」之類的字母字元進行命名的元件符號而言,該等字母字元命名可以區分在同一附圖中出現的兩個類似部分或者元件。當一個元件符號意欲涵蓋所有附圖之中具有該相同元件符號的所有部分時,可以省略用於元件符號的字母字元命名。
圖1圖示對由多個資料子單元或圖塊組成的圖像幀進行壓縮的效果;
圖2圖示與DRAM記憶體部件的壓縮資料事務,該DRAM記憶體部件具有每事務所需的最小存取長度(「MAL」);
圖3圖示與示例性圖像幀相關聯的一系列經壓縮的資料事務;
圖4是圖示使用中央凹型壓縮方法的用於智慧壓縮的片上系統的實施例的功能方塊圖;
圖5是圖示針對智慧壓縮方法的實施而配置的圖4的圖像CODEC模組的實施例的功能方塊圖,該智慧壓縮方法利用包括無損算法和有損算法的中央凹型壓縮方法;
圖6圖示數學等式的示例性圖形輸出以及示例性查找表,每個條目指定根據給定分區距注視點的距離的壓縮率;
圖7圖示在圖像幀內所定義的示例性中央凹分區,每個中央凹分區包括圖像幀的一或多個圖塊;
圖8圖示示例性圖像幀,其是根據利用示例性方網格中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的;
圖9圖示示例性圖像幀,其是根據利用示例性分級方網格中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的;
圖10圖示示例性圖像幀,其是根據利用示例性拼接網格中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的;
圖11圖示示例性圖像幀,其是根據利用示例性分級拼接網格中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的;
圖12圖示示例性圖像幀,其是根據利用示例性蜂巢中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的;
圖13圖示示例性圖像幀,其是根據利用示例性分級蜂巢中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的;
圖14圖示示例性圖像幀,其是根據利用示例性分級蜂巢中央凹型壓縮圖案的解決方案的實施例來分區和壓縮的;
圖15是邏輯流程圖,其圖示根據利用包括無損和有損算法的中央凹型壓縮方法的解決方案的智慧壓縮方法;
圖16是功能方塊圖,其圖示用於實施根據該解決方案的智慧壓縮方法和系統的、以無線電話為形式的可攜式計算設備(「PCD」)的示例性、非限制性態樣;
圖17是示意圖,其圖示用於執行智慧壓縮方法的、圖16的PCD的示例性軟體架構。
國內寄存資訊 (請依寄存機構、日期、號碼順序註記) 無
國外寄存資訊 (請依寄存國家、機構、日期、號碼順序註記) 無

Claims (44)

  1. 一種用於一可攜式計算設備(「PCD」)中的智慧資料壓縮的方法,該方法包括以下步驟: 確定一圖像幀內的一注視點; 將該圖像幀分區成兩個或更多個分區,其中該兩個或更多個分區包括一注視分區和一或多個中央凹型分區,該注視分區包括該注視點; 壓縮該圖像幀以使得該注視分區根據具有一低壓縮因數的一壓縮算法被壓縮,並且該一或多個中央凹型分區根據具有一高壓縮因數的一壓縮算法被壓縮;及 儲存該經壓縮的圖像幀。
  2. 如請求項1所述之方法,其中該具有一低壓縮因數的壓縮算法是一無損壓縮算法。
  3. 如請求項1所述之方法,其中該具有一高壓縮因數的壓縮算法是一有損壓縮算法。
  4. 如請求項1所述之方法,亦包括以下步驟: 確定一圖像幀內的一盲點; 確定一盲中央凹型分區,其中該盲中央凹型分區是該一或多個中央凹型分區中包括該盲點的一個中央凹型分區;及 根據具有一最高壓縮因數的一有損壓縮算法來壓縮該盲中央凹型分區。
  5. 如請求項1所述之方法,其中該一或多個中央凹型壓縮分區包括根據不同的壓縮因數所壓縮的分區。
  6. 如請求項1所述之方法,其中將該圖像幀分區成兩個或更多個分區之步驟包括以下步驟以一方網格中央凹型壓縮圖案來佈置該等分區。
  7. 如請求項6所述之方法,其中壓縮該圖像幀之步驟亦包括以下步驟:對該一或多個中央凹型分區內的圖塊的壓縮分級。
  8. 如請求項1所述之方法,其中將該圖像幀分區成兩個或更多個分區之步驟包括以下步驟:以一拼接網格中央凹型壓縮圖案來佈置該等分區。
  9. 如請求項8所述之方法,其中壓縮該圖像幀之步驟亦包括以下步驟:對該一或多個中央凹型分區內的圖塊的壓縮分級。
  10. 如請求項1所述之方法,其中將該圖像幀分區成兩個或更多個分區之步驟包括以下步驟:以一蜂巢中央凹型壓縮圖案來佈置該等分區。
  11. 如請求項10所述之方法,其中壓縮該圖像幀之步驟亦包括以下步驟:將該一或多個中央凹型分區內的圖塊的壓縮分級。
  12. 一種用於一可攜式計算設備(「PCD」)中的智慧資料壓縮的系統,該系統包括: 一智慧壓縮模組、一監視模組、以及一圖像CODEC模組,其共同被配置為: 確定一圖像幀內的一注視點; 將該圖像幀分區成兩個或更多個分區,其中該兩個或更多個分區包括一注視分區和一或多個中央凹型分區,該注視分區包括該注視點; 壓縮該圖像幀以使得該注視分區根據具有一低壓縮因數的一壓縮算法被壓縮,並且該一或多個中央凹型分區根據具有一高壓縮因數的一壓縮算法被壓縮;及 儲存該經壓縮的圖像幀。
  13. 如請求項12所述之系統,其中該具有一低壓縮因數的壓縮算法是一無損壓縮算法。
  14. 如請求項12所述之系統,其中該具有一高壓縮因數的壓縮算法是一有損壓縮算法。
  15. 如請求項12所述之系統,其中該智慧壓縮模組、監視模組、以及圖像CODEC模組亦共同被配置為: 確定一圖像幀內的一盲點; 確定一盲中央凹型分區,其中該盲中央凹型分區是該一或多個中央凹型分區中包括該盲點的一個中央凹型分區;及 根據具有一最高壓縮因數的一有損壓縮算法來壓縮該盲中央凹型分區。
  16. 如請求項12所述之系統,其中該一或多個中央凹型壓縮分區包括根據不同的壓縮因數所壓縮的分區。
  17. 如請求項12所述之系統,其中將該圖像幀分區成兩個或更多個分區包括以一方網格中央凹型壓縮圖案來佈置該等分區。
  18. 如請求項17所述之系統,其中壓縮該圖像幀亦包括對該一或多個中央凹型分區內的圖塊的壓縮分級。
  19. 如請求項12所述之系統,其中將該圖像幀分區成兩個或更多個分區包括以一拼接網格中央凹型壓縮圖案來佈置該等分區。
  20. 如請求項19所述之系統,其中壓縮該圖像幀亦包括對該一或多個中央凹型分區內的圖塊的壓縮分級。
  21. 如請求項12所述之系統,其中將該圖像幀分區成兩個或更多個分區包括以一蜂巢中央凹型壓縮圖案來佈置該等分區。
  22. 如請求項21所述之系統,其中壓縮該圖像幀亦包括對該一或多個中央凹型分區內的圖塊的壓縮分級。
  23. 一種用於一可攜式計算設備(「PCD」)中的智慧資料壓縮的系統,該系統包括: 用於確定一圖像幀內的一注視點的構件; 用於將該圖像幀分區成兩個或更多個分區的構件,其中該兩個或更多個分區包括一注視分區和一或多個中央凹型分區,該注視分區包括該注視點; 用於壓縮該圖像幀以使得該注視分區根據具有一低壓縮因數的一壓縮算法被壓縮,並且該一或多個中央凹型分區根據具有一高壓縮因數的一壓縮算法被壓縮的構件;及 用於儲存該經壓縮的圖像幀的構件。
  24. 如請求項23所述之系統,其中該具有一低壓縮因數的一壓縮算法是一無損壓縮算法。
  25. 如請求項23所述之系統,其中該具有一高壓縮因數的壓縮算法是一有損壓縮算法。
  26. 如請求項23所述之系統,亦包括: 用於確定一圖像幀內的一盲點的構件; 用於確定一盲中央凹型分區的構件,其中該盲中央凹型分區是該一或多個中央凹型分區中包括該盲點的一個中央凹型分區;及 用於根據具有一最高壓縮因數的一有損壓縮算法來壓縮該盲中央凹型分區的構件。
  27. 如請求項23所述之系統,其中該一或多個中央凹型壓縮分區包括根據不同的壓縮因數所壓縮的分區。
  28. 如請求項23所述之系統,其中將該圖像幀分區成兩個或更多個分區包括以一方網格中央凹型壓縮圖案來佈置該等分區。
  29. 如請求項28所述之系統,其中壓縮該圖像幀亦包括對該一或多個中央凹型分區內的圖塊的壓縮分級。
  30. 如請求項23所述之系統,其中將該圖像幀分區成兩個或更多個分區包括以一拼接網格中央凹型壓縮圖案來佈置該等分區。
  31. 如請求項30所述之系統,其中壓縮該圖像幀亦包括對該一或多個中央凹型分區內的圖塊的壓縮分級。
  32. 如請求項23所述之系統,其中將該圖像幀分區成兩個或更多個分區包括以一蜂巢中央凹型壓縮圖案來佈置該等分區。
  33. 如請求項32所述之系統,其中壓縮該圖像幀亦包括對該一或多個中央凹型分區內的圖塊的壓縮分級。
  34. 一種電腦程式產品,其包括具有在其中體現的一電腦可讀取程式碼的一電腦可使用媒體,該電腦可讀取程式碼適合於被執行以實施用於一可攜式計算設備(「PCD」)中的智慧資料壓縮的一方法,該方法包括: 確定一圖像幀內的一注視點; 將該圖像幀分區成兩個或更多個分區,其中該兩個或更多個分區包括一注視分區和一或多個中央凹型分區,該注視分區包括該注視點; 壓縮該圖像幀以使得該注視分區根據具有一低壓縮因數的一壓縮算法被壓縮,並且該一或多個中央凹型分區根據具有一高壓縮因數的一壓縮算法被壓縮;及 儲存該經壓縮的圖像幀。
  35. 如請求項34所述之電腦程式產品,其中該具有一低壓縮因數的壓縮算法是一無損壓縮算法。
  36. 如請求項34所述之電腦程式產品,其中該具有一高壓縮因數的壓縮算法是一有損壓縮算法。
  37. 如請求項34所述之電腦程式產品,其中該方法亦包括: 確定一圖像幀內的一盲點; 確定一盲中央凹型分區,其中該盲中央凹型分區是該一或多個中央凹型分區中包括該盲點的一個中央凹型分區;及 根據具有一最高壓縮因數的一有損壓縮算法來壓縮該盲中央凹型分區。
  38. 如請求項34所述之電腦程式產品,其中該一或多個中央凹型壓縮分區包括根據不同的壓縮因數所壓縮的分區。
  39. 如請求項34所述之電腦程式產品,其中將該圖像幀分區成兩個或更多個分區包括以一方網格中央凹型壓縮圖案來佈置該等分區。
  40. 如請求項39所述之電腦程式產品,其中壓縮該圖像幀亦包括對該一或多個中央凹型分區內的圖塊的壓縮分級。
  41. 如請求項34所述之電腦程式產品,其中將該圖像幀分區成兩個或更多個分區包括以一拼接網格中央凹型壓縮圖案來佈置該等分區。
  42. 如請求項41所述之電腦程式產品,其中壓縮該圖像幀亦包括對該一或多個中央凹型分區內的圖塊的壓縮分級。
  43. 如請求項34所述之電腦程式產品,其中將該圖像幀分區成兩個或更多個分區包括以一蜂巢中央凹型壓縮圖案來佈置該等分區。
  44. 如請求項43所述之電腦程式產品,其中壓縮該圖像幀亦包括對該一或多個中央凹型分區內的圖塊的壓縮分級。
TW107128538A 2017-10-06 2018-08-16 針對片上系統中的圖像幀的中央凹型壓縮的系統和方法 TWI705695B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/727,517 US10511842B2 (en) 2017-10-06 2017-10-06 System and method for foveated compression of image frames in a system on a chip
US15/727,517 2017-10-06

Publications (2)

Publication Number Publication Date
TW201926990A true TW201926990A (zh) 2019-07-01
TWI705695B TWI705695B (zh) 2020-09-21

Family

ID=63684597

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107128538A TWI705695B (zh) 2017-10-06 2018-08-16 針對片上系統中的圖像幀的中央凹型壓縮的系統和方法

Country Status (6)

Country Link
US (2) US10511842B2 (zh)
EP (2) EP4242856A3 (zh)
CN (2) CN117135356A (zh)
SG (1) SG11202001643TA (zh)
TW (1) TWI705695B (zh)
WO (1) WO2019070365A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI699661B (zh) * 2019-07-11 2020-07-21 台達電子工業股份有限公司 場景模型之建構系統及其建構方法
US11127199B2 (en) 2019-07-11 2021-09-21 Delta Electronics, Inc. Scene model construction system and scene model constructing method

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018223179A1 (en) * 2017-06-05 2018-12-13 Immersive Robotics Pty Ltd Digital content stream compression
US10511842B2 (en) 2017-10-06 2019-12-17 Qualcomm Incorporated System and method for foveated compression of image frames in a system on a chip
US11721307B1 (en) 2018-11-02 2023-08-08 Meta Platforms Technologies, Llc Beam-racing pixel generation in a display engine
JP7182006B2 (ja) * 2018-12-20 2022-12-01 テレフオンアクチーボラゲット エルエム エリクソン(パブル) ピクチャにおける均一なセグメントスプリットを使用したビデオコーディングのための方法および装置
BR112022001434A2 (pt) * 2019-07-28 2022-06-07 Google Llc Métodos, sistemas e mídia para renderizar conteúdo de vídeo imersivo com malhas otimizadas
EP4035376A1 (en) * 2019-09-24 2022-08-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Multiple stage residual coding in modern hybrid image and video coding solutions
CN113518249B (zh) * 2020-04-10 2023-03-10 华为技术有限公司 一种远端图像处理方法及装置
US11871131B2 (en) * 2021-08-06 2024-01-09 Raytheon Company Foveal compressive upsampling

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6252989B1 (en) 1997-01-07 2001-06-26 Board Of The Regents, The University Of Texas System Foveated image coding system and method for image bandwidth reduction
US6879266B1 (en) * 1997-08-08 2005-04-12 Quickshift, Inc. Memory module including scalable embedded parallel data compression and decompression engines
WO2000062543A1 (en) 1999-04-08 2000-10-19 New York University Extremely high resolution foveated display
US7167519B2 (en) 2001-12-20 2007-01-23 Siemens Corporate Research, Inc. Real-time video object generation for smart cameras
KR100723505B1 (ko) * 2005-10-06 2007-05-30 삼성전자주식회사 하이브리드 방식의 영상 데이터 처리 시스템 및 영상데이터 처리 방법
US7481533B2 (en) * 2006-10-30 2009-01-27 Johnson & Johnson Vision Care, Inc Method for designing multifocal contact lenses
JP4807284B2 (ja) * 2007-03-07 2011-11-02 カシオ計算機株式会社 カメラ装置、カメラ装置制御プログラム及びカメラ装置制御方法
WO2009119110A1 (ja) * 2008-03-27 2009-10-01 パナソニック株式会社 死角表示装置
US8194736B2 (en) * 2008-04-15 2012-06-05 Sony Corporation Video data compression with integrated lossy and lossless compression
JP5492139B2 (ja) * 2011-04-27 2014-05-14 富士フイルム株式会社 画像圧縮装置、画像伸長装置、方法、及びプログラム
US20140204107A1 (en) * 2013-01-22 2014-07-24 Vixs Systems, Inc. Video processor with frame buffer compression and methods for use therewith
US20160007026A1 (en) 2013-03-08 2016-01-07 Jie Dong Techniques for image encoding based on region of interest
US9230302B1 (en) 2013-03-13 2016-01-05 Hrl Laboratories, Llc Foveated compressive sensing system
US10242462B2 (en) * 2013-04-02 2019-03-26 Nvidia Corporation Rate control bit allocation for video streaming based on an attention area of a gamer
EP2958074A1 (en) * 2014-06-17 2015-12-23 Thomson Licensing A method and a display device with pixel repartition optimization
TWI571768B (zh) * 2015-04-29 2017-02-21 由田新技股份有限公司 使用者介面同步系統、裝置、方法、電腦可讀取記錄媒體、及電腦程式產品
WO2017025483A1 (de) 2015-08-07 2017-02-16 SensoMotoric Instruments Gesellschaft für innovative Sensorik mbH Verfahren und vorrichtung zur datenerfassung und auswertung von umgebungsdaten
US10424097B2 (en) * 2017-04-01 2019-09-24 Intel Corporation Predictive viewport renderer and foveated color compressor
US10511842B2 (en) 2017-10-06 2019-12-17 Qualcomm Incorporated System and method for foveated compression of image frames in a system on a chip

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI699661B (zh) * 2019-07-11 2020-07-21 台達電子工業股份有限公司 場景模型之建構系統及其建構方法
US11127199B2 (en) 2019-07-11 2021-09-21 Delta Electronics, Inc. Scene model construction system and scene model constructing method

Also Published As

Publication number Publication date
EP3692444A1 (en) 2020-08-12
EP3692444B1 (en) 2023-08-02
US20200092564A1 (en) 2020-03-19
CN117135356A (zh) 2023-11-28
CN111149095B (zh) 2023-08-01
SG11202001643TA (en) 2020-04-29
CN111149095A (zh) 2020-05-12
EP4242856A2 (en) 2023-09-13
US11006127B2 (en) 2021-05-11
US20190110053A1 (en) 2019-04-11
US10511842B2 (en) 2019-12-17
WO2019070365A1 (en) 2019-04-11
TWI705695B (zh) 2020-09-21
EP3692444C0 (en) 2023-08-02
EP4242856A3 (en) 2023-11-01

Similar Documents

Publication Publication Date Title
TW201926990A (zh) 針對片上系統中的圖像幀的中央凹型壓縮的系統和方法
CN110583018B (zh) 用于片上系统中的智能数据/帧压缩的系统和方法
CN110521208B (zh) 用于片上系统中的智能数据/帧压缩的系统和方法
CN105282430B (zh) 使用照片的构图信息的电子装置及使用该装置的拍摄方法
CN105075241B (zh) 电子装置和处理图像的方法
JP2008065834A (ja) フュージョンメモリ装置及び方法
CN108604211B (zh) 用于片上系统中的多区块数据事务的系统和方法
US20160173125A1 (en) Semiconductor device and operating method thereof
TWI634421B (zh) 用以存取資料之電子裝置及其資料存取方法
CN107577474B (zh) 升级文件的处理方法及装置、电子设备
CN108765281A (zh) 一种生成缩略图的方法、装置以及计算机存储介质
US20200250101A1 (en) System and method for intelligent tile-based memory bandwidth management
JP2018505489A (ja) システムオンチップにおける動的メモリ利用
US20180041612A1 (en) System and method for out-of-stream order compression of multi-media tiles in a system on a chip
CN110996013A (zh) 电子装置和处理图像的方法
JP2012039291A (ja) 電子カメラ