TW202001499A - 使用演現命令及後續接收之眼睛位置資料之圖像內容之注視點演現 - Google Patents

使用演現命令及後續接收之眼睛位置資料之圖像內容之注視點演現 Download PDF

Info

Publication number
TW202001499A
TW202001499A TW108121309A TW108121309A TW202001499A TW 202001499 A TW202001499 A TW 202001499A TW 108121309 A TW108121309 A TW 108121309A TW 108121309 A TW108121309 A TW 108121309A TW 202001499 A TW202001499 A TW 202001499A
Authority
TW
Taiwan
Prior art keywords
image content
eye position
area
gaze point
processor
Prior art date
Application number
TW108121309A
Other languages
English (en)
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 TW202001499A publication Critical patent/TW202001499A/zh

Links

Images

Classifications

    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • G06T3/047Fisheye or wide-angle transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00Solving problems of bandwidth in display systems
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers

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)
  • Controls And Circuits For Display Device (AREA)

Abstract

本發明描述用於產生圖像內容之實例技術,該等技術係藉由獲取該圖像內容之一圖框之一演現命令、在獲取該演現命令之後獲取一使用者之一眼睛位置、基於該眼睛位置而判定該圖像內容之一區域之一注視點參數;以及使用該注視點參數及該演現命令來演現對應於該圖像內容之該區域的該圖框之一圖塊。

Description

使用演現命令及後續接收之眼睛位置資料之圖像內容之注視點演現
電子裝置可執行程式以在顯示器上呈現圖像內容。舉例而言,電子裝置可執行虛擬實境(VR)程式或強化實境(AR)程式。
在一些應用程式中,可在同一圖框中以不同的解析度演現(render)顯示器上所呈現的圖像。舉例而言,VR頭戴式顯示器可追蹤使用者之凝視(例如,使用感測器),以識別將在使用者的中央窩視覺中之圖像部分。若VR頭戴式顯示器判定使用者之眼睛運動跟隨顯示器上呈現的特定目標,或指示使用者之中央窩視覺覆蓋一或多個區域,則電子裝置可以較高解析度演現相應區域(例如,目標之區域),且以較低解析度演現其他區域。
本文描述用於產生圖像內容之方法、裝置、設備以及電腦可讀媒體。一種方法可包括獲取該圖像內容之一圖框的一演現命令,在獲取該演現命令之後獲取一使用者之一眼睛位置,基於該眼睛位置而判定該圖像內容之一區域之一注視點參數,以及使用該注視點參數及該演現命令來演現對應於該圖像內容之該區域之該圖框之一圖塊。
在一些實施例中,該方法可進一步包括基於包括該圖塊的多個圖塊來產生該圖像內容之該圖框,其中圖像內容之該圖框顯示於一虛擬實境頭戴式顯示器或一蜂巢式手持話機上。
在額外實施例中,可使用一圖像處理單元執行該方法,且該圖像處理單元可自一中央處理單元獲取該演現命令。該圖像處理單元亦可自與不同於該圖像處理單元及該中央處理單元之一處理器共用之一共用緩衝器中獲取該眼睛位置。該圖像處理單元、該中央處理單元及該處理器可位於相同裝置或不同裝置上。
在其他實施例中,該眼睛位置可用於判定對應於圖像內容之該圖框的每一圖塊之注視點參數。
在一些實施中,該方法可進一步包括獲取該圖像內容之該圖框的一第二演現命令,在演現該圖塊之後獲取該使用者之一第二眼睛位置,基於該第二眼睛位置而判定該圖像內容之一第二區域之一第二注視點參數,以及使用該圖像內容之該圖框的該第二注視點參數及該第二演現命令來演現對應於該圖像內容之該第二區域之該圖框的一第二圖塊。
在額外實施中,可判定該區域在使用者之中央窩視覺中,且可基於視窩參數而以比對應於圖像內容之圖框的其他圖塊更高的解析度來演現該圖塊。
在其他實施中,可判定該區域在一使用者的外圍視覺中,且可基於該注視點參數而以比對應於該圖像內容之該圖框的其他圖塊更低的一解析度來演現該圖塊。
在一些實施例中,該注視點參數可對應於一解析度、一抗混疊層級、一模糊層級及/或一濾波器。
一種裝置可包括一記憶體及耦接至該記憶體的一處理器,該處理器經組態以使該裝置執行一種方法,該方法包括獲取圖像內容之一圖框的一演現命令,在獲取該演現命令之後獲取一使用者之一眼睛位置,基於該眼睛位置而判定該圖像內容之一區域的一注視點參數,以及使用該注視點參數及該演現命令來演現對應於該圖像內容之該區域之該圖框的一圖塊。
在一些實施例中,該裝置可為一虛擬實境頭戴式顯示器或一蜂巢式手持話機。
一電腦可讀媒體可為儲存含有指令之一程式之一非暫態電腦可讀媒體,當該裝置之一處理器執行該等指令時,使得該裝置執行一種方法,該方法包括獲取圖像內容之一圖框的一演現命令、在獲取該演現命令後獲取一使用者之一眼睛位置、基於該眼睛位置而判定該圖像內容之一區域的一注視點參數、以及使用該注視點參數及該演現命令來演現對應於該圖像內容之該區域之該圖框的一圖塊。
一種設備可包括:用於獲取圖像內容之一圖框的一演現命令之構件;用於在獲取該演現命令之後獲取一使用者之一眼睛位置之構件;用於基於該眼睛位置而判定該圖像內容之一區域之一注視點參數之構件;以及用於使用該注視點參數及該演現命令來演現對應於該圖像內容之該區域之該圖框的一圖塊之構件。
本申請案主張2019年5月8日申請的美國非臨時專利申請案第16/406,515號的權益,該非臨時專利申請案主張2018年6月21日申請的美國臨時專利申請案第62/688,312號的優先權,該臨時專利申請案的全部內容以引用的方式併入本文中。
本文所揭示的系統、裝置、電腦可讀媒體以及方法可提供用於基於使用者之一或兩隻眼睛相對於座標系統及/或裝置之位置(下文稱為「眼睛位置」)而不同地演現電腦圖像內容之圖框的區域的方法。舉例而言,一或多個較高解析度區域及一或多個較低解析度區域可在同一影像/圖框中演現。如本文所使用,較高解析度可為大於較低解析度區域的任何區域。在各種實施例中,較高解析度可為例如1400×1200像素、1080×1200像素等,且較低解析度可為例如較高解析度的二分之一、四分之一、八分之一、十六分之一等。此等解析度僅為實例,且並不意欲為限制性的。在一些實施例中,較高解析度可代表顯示裝置的全解析度,且較低解析度可為全解析度的部分解析度。在其他實施例中,較高解析度可大於或小於特定顯示裝置的全解析度,且較高解析度可在顯示於特定顯示器裝置上之前經下採樣或按比例擴大。在其他實施例中,在同一圖框之不同區域,其他演現參數可不同,諸如抗混疊(AA)層級、模糊層級、所使用濾波器、幾何細節層級、紋理mipmap層級及類似者。
如本文所使用,圖像內容之「區域」可指光學空間中對應於圖像內容之圖框的子集之規則柵格。在一些實施例中,區域對於圖像內容之每一圖框可為相同的。舉例而言,圖像內容之每一圖框可經分割成相同的64個區域。在其他實施例中,在圖像內容中,區域之數量及形狀可隨圖框而變化。
演現低效可能為當前電腦圖像演現中的一個技術問題。舉例而言,使用VR程式、應用程式及/或裝置來產生圖像內容可包括演現圖像內容之兩個視圖,其可使內容演現慢兩倍(潛在地引起一些延遲、限制硬體組件匯流排上之可用頻寬、影響所顯示圖框速率、影響運動至光子延遲等)及/或致使裝置使用更多的功率。解決該技術問題的一種方法可為使用利用更多處理資源之參數(例如,以較高解析度)來演現圖像內容之區域,且使用利用較少處理資源之參數(例如,以一或多個較低解析度)來演現場景之其他區域。
舉例而言,在一些情況下,使用者可主要專注於圖像內容之中心。因此,外部部分更可能位於使用者之外圍視覺中,使得例如使用者之視覺系統不能在與圖像內容之中心相同的層級下識別偽影及/或鑑別細節。因此,藉由以一或多個較低解析度演現外部區域可不會對使用者之體驗產生不良影響,且藉由不以較高解析度演現彼等區域來獲得演現效率。
在一些情況下,識別使用者之凝視之區域可涉及執行眼睛追蹤以判定使用者中央窩視覺中之圖像內容之區域。如本文所使用,使用者之中央窩視覺可指使用者的視野中心之視覺,其中視覺靈敏度通常最高。如本文另外所使用,使用者的中央窩視覺中(或經判定為位於其中)之圖像內容的區域可指表示使用者的中央窩視覺之投影及與投影相交之圖像內容之二維截面之相交的圖像內容的區域。
一旦判定使用者中央窩視覺中之圖像內容之區域,則此方法可包括以較高解析度演現該區域,且以一或多個較低解析度演現場景之其他區域。同樣,由於使用者之中央窩視覺中之區域保持較高解析度,因此以一或多種較低解析度演現使用者的周邊視覺中之區域不會對使用者之體驗產生不利影響,且藉由不以較高解析度演現彼等區域來獲得演現效率。如本文所使用,使用者之周邊視覺可指使用者中央窩視覺外部之視覺。
如本文所使用,「注視點演現」可指基於不同的注視點參數來演現場景之不同區域之方法。注視點參數可包括(但不限於)解析度、AA層級、模糊層級、待應用濾波器、幾何細節層級及紋理mipmap層級。
如本文進一步使用,「注視點區域」可指使用利用更多的處理資源之參數來演現的圖像內容之一或多個圖框中之區域。在一些實施例中,可基於經判定、預測及/或假定在使用者之中央窩視覺內之區域來判定注視點區域。舉例而言,注視點區域可為以較高解析度、較高AA層級、較低模糊層級、提高區域之質量的濾波器、較高幾何細節層級、較高紋理mipmap層級及類似者演現之區域。在一些實施例中,可基於除眼睛位置/座標之外的感測器讀數來調整注視點區域。舉例而言,可基於使用者之眼睛未完全睜開之判定來降低本文所論述之注視點參數。相比之下,「非注視點區域」可指圖框使用利用較少的處理資源之參數演現之圖像內容之一或多個圖框中的區域。在一些實施例中,可基於未經判定、預測及/或假定在使用者之中央窩視覺內(例如,在使用者之周邊視覺內)之區域來判定非注視點區域。舉例而言,非注視點區域可為以較低解析度、較低AA層級、較高模糊層級、提高處理效率的濾波器、較低幾何細節層級、較低紋理mipmap層級及類似者演現之區域。
電腦圖像演現中(尤其VR應用程式中)之另一技術問題為運動至光子延遲。運動光子延遲可描述為在顯示螢幕上反映使用者之活動所需的時間。若運動至光子延遲較高(例如,大於20毫秒(ms)),則使用者之體驗可能受到負面影響,此係由於顯示螢幕可能無法基於使用者運動而準確反映使用者期望在螢幕上展現的內容及/或使用者可能體驗到由使用者之凝視移動至基於經判定為在使用者之外圍視覺內之區域而演現的區域(例如,以較低解析度演現或者使用參數用於更有效/更不詳細的顯示)所導致的視覺假影。此等影響會導致使用者遭受定向力障礙及/或動暈症,且亦可能破壞使用者之VR體驗。
運動至光子延遲亦可降低使用者在使用眼睛或頭部追蹤用於注視點演現的其他應用程式中之體驗,諸如行動遊戲應用程式或顯示於超大螢幕上之應用程式。
如下文進一步詳細論述,此等技術問題可使用產生演現命令後接收的眼睛位置資料來解決。此係由於在將圖像命令發送至圖像處理器(例如,圖像處理單元(GPU))之後獲得使用者之眼睛位置,因此該部分圖像內容更有可能基於使用者的當前的眼睛位置來演現。此提供了改良的注視點演現效率,同時減少了眼睛運動至光子延遲。
現參考附圖描述各種組態,在附圖中,相同的參考標記可指示功能上類似的元件。可以多種不同組態來配置及設計如附圖中所大體描述及說明的系統及方法。因此,如在附圖中所表示,對若干組態的以下更詳細的描述不意欲限制所主張的範疇,而僅僅為代表系統及方法。
圖1描繪可執行注視點演現之裝置100之說明性實例。作為一說明性實例,裝置100可包括或包括於圖像處理單元(GPU)或任何其他類型的處理單元(例如,中央處理單元(CPU)或數位信號處理器(DSP)),該處理單元經組態以使用圖像內容102執行圖像處理操作。在一些實例中,圖像內容102可對應於來自AR、VR應用程式及/或混合現實應用程式之圖像內容。
圖像內容102可包括一或多個圖框,諸如第一圖框114。第一圖框114可包括第一區域108及一或多個第二區域109。在各種實施例中,圖像內容102可基於AR或VR應用程式之狀態、基於裝置100之位置資訊(例如,基於全球定位系統(GPS)座標、本地座標、現實世界目標之位置等)、基於裝置100之定向及/或基於裝置100、使用者(例如,頭部或眼睛位置)、或由裝置100之照相機(未描劃)捕獲的現實世界目標之所判定運動來產生。在一些實施例中,裝置100可包括中央窩估計引擎104。
裝置100可進一步包括執行圖像內容102之注視點演現之演現引擎112。舉例而言,第一圖框114之第一區域108可為以較高解析度演現之區域。因此,演現引擎112中之第一圖框114可包括基於圖像內容102之第一圖框114之第一區域108的較高解析度區域116。另外,第一圖框114之第二區域109可為以較低解析度演現的區域。舉例而言,所有第二區域可以較高解析度之四分之一演現,第二區域中之一者可以較高解析度之二分之一演現,且第二區域中之另一者可以較高解析度之八分之一演現等。演現引擎112中之第一圖框114可包括基於圖像內容102之第一圖框114之一或多個第二區域109的一或多個較低解析度區域118。
在一些實施中,演現引擎112可為GPU或另一類型處理器,可包括GPU或另一類型處理器或可為GPU或另一類型處理器之一部分。
在一些實施例中,中央窩估計引擎104可經組態以產生圖像內容102之關注區域106 (例如,第一區域108)之指示。舉例而言,中央窩估計引擎104可自感測器(未描劃)接收眼睛位置資訊,且判定使用者的中央窩視覺內之顯示器內的關注區域。舉例而言,眼睛位置資料可包括使用者的凝視之估計方向,以及其他感測器讀數,諸如使用者的瞳孔之座標或使用者的眼睛的睜開度之量測值。在一些實施例中,關注區域可與第一圖框114之第一區域108相關聯。中央窩估計引擎104可將關注區域106之指示發送至演現引擎112,且演現引擎112可判定第一區域108應為較高解析度區域116,且第二區域109 (未在關注區域中)應為一或多個較低解析度區域118。
在一些實施中,中央窩估計引擎104可為與演現引擎112相同的處理器之一部分,而在其他實施中,中央窩估計引擎104可為獨立處理器之一部分。
在一些實例中,例如,當圖像內容102及裝置100對應於AR應用程式時,裝置100可接收場景資訊110。舉例而言,場景資訊110可由裝置100之照相機(未描劃)捕獲,且裝置100可將圖像內容102疊加在場景資訊110上。
參考圖2,描繪可執行注視點演現之裝置200之說明性實例。在各種實施例中,裝置200可與圖1中之裝置100相同或相似。在圖2之實例中,裝置200可經組態以使用圖塊化演現來演現圖像內容,且因此可包括圖塊化引擎206。
如本文所述,圖塊化演現可指藉由光學空間中之規則柵格分割圖像內容之圖框且分別演現柵格之每個部分(亦即,每一圖塊)之方法。使用圖塊化演現可提供技術優勢,此係由於與一次性演現繪製整個圖框之系統相比,記憶體及頻寬之量可能會減少。因此,圖塊化演現可適用於能夠產生顯示之任何類型的裝置(例如,膝上型電腦、桌上型電腦、高級駕駛輔助系統等),但尤其常見於行動裝置中,諸如蜂巢式手持話機(例如智慧型電話)、VR及/或AR頭戴式顯示器、智慧型眼鏡、智慧型手錶及類似者。
如本文所使用,「圖塊」可指光學空間中之柵格(例如,16X16或32X32像素之柵格)及/或「圖塊」可指儲存與光學空間中之柵格相關聯之樣本值的圖塊記憶體之一部分。
如本文所使用,「樣本」或「樣本值」可指表示通道(例如,紅色、綠色或藍色)與像素之交叉點的值。在一些實施例中,對樣本之參考可包括具有多個子樣本的樣本。舉例而言,在紅、綠、藍(RGB)顏色空間中,樣本可包括3個子樣本,而在紅、綠、藍、阿爾法 (alpha) (RGBA)顏色空間中,樣本可包括4個子樣本。
在一些實施例中,圖塊化引擎206可為演現引擎(例如,圖1中之演現引擎112)之一部分。如圖2中所展示,圖塊化引擎206可接收圖像內容201。在一些實施例中,圖塊化引擎206亦可自中央窩估計引擎203接收關注區域205之指示。
圖塊化引擎206可經組態以執行與圖像內容201之處理相關聯之圖塊化方法。圖塊化方法可包括判定與圖像內容201相關聯的圖塊集合。舉例而言,圖像內容201之每一圖框可經分割成多個區域,其中每一區域對應於一個圖塊,多個區域對應於一個圖塊及/或一個圖塊對應於多個區域。為了說明,圖2描繪第一圖框207可經分割成圖塊集合,該圖塊集合包括第一圖塊202 (例如,第一圖框207之第一區域)及第二圖塊204 (例如,第一圖框207之第二區域)。第一圖框207可包括第一圖框207中額外區域之額外圖塊。
在圖2之實例中,圖塊化引擎206可經組態以將圖像內容201之樣本演現為與第一圖框207相關聯的每一圖塊之值之集合(例如,藉由執行操作(例如,頂點著色操作、紋理操作、點陣化操作、一或多種其他操作或其組合),以判定與圖塊相關聯的區域中之每一像素之一或多個樣本值)。在一些實施例中,樣本值可與顏色值(例如,RGB顏色值)相關聯,且可基於樣本在圖像內容之圖框中的位置以及與圖框中之該位置圖框重疊的目標來判定。如本文所使用,「像素」可指最終顯示器中之像素(例如,1920X1080顯示器具有2,073,600個像素)。另外,如本文亦使用,「像素」可指記憶體中最終對應於最終顯示器中之一個像素(若顯示器之解析度與記憶體中的相同)、最終顯示器中多於一個像素(若顯示器之解析度大於記憶體中之解析度)、或最終顯示器中少於一個像素及/或一個像素之一部分(若顯示器之解析度小於記憶體中之解析度)之資料。
每一圖塊可經單獨演現,可為每個樣本產生值,且可將值儲存在圖塊記憶體208中。在一些實施例中,可使用多樣本抗混疊(MSAA)。在MSAA中,多個樣本可與顯示器中之每一像素位置相關聯,且可為每一樣本產生值。舉例而言,圖塊記憶體208可包括第一圖塊202之值,該等值可包括第一像素212之一或多個樣本、第二像素214之一或多個樣本、第三像素216之一或多個樣本,以及第四像素218之一或多個樣本。另外,圖塊記憶體208可包括第二圖塊204之值,該等值可包括第五像素222之一或多個樣本、第六像素224之一或多個樣本、第七像素226之一或多個樣本,以及第八像素228之一或多個樣本。
在一些實施例中,隨後可將樣本儲存在系統記憶體230中。舉例而言,第一像素212之一或多個樣本可作為第一像素之值232儲存在系統記憶體230中,第二像素214之一或多個樣本可作為第二像素之值234儲存在系統記憶體230中,第七像素226之一或多個樣本可作為第七像素之值236儲存在系統記憶體230中,且第八像素228之一或多個樣本可作為第八像素之值238儲存在系統記憶體230中。第三像素至第六像素之樣本亦可作為值儲存在系統記憶體230中。
在其他實施例中,可另外地或可替代地將樣本儲存在其他類型之記憶體中,例如,本地GPU記憶體(GMEM)或快取記憶體。
若使用MSAA,則可對樣本進行下採樣以產生像素值(例如,RGB顏色值)。舉例而言,若使用2XMSAA,則可能會為顯示器中之每一像素判定兩個樣本。在將值傳送至例如系統記憶體230時,可對樣本進行下採樣(例如,一起平均)以判定系統記憶體230中之像素的值。在一些實施例中,一些圖塊(例如,與較低解析度相關聯的圖塊)可具有在比顯示器更低的解析度下判定之樣本。因此,樣本值可按比例擴大以匹配顯示器之解析度。
隨後,儲存在系統記憶體230中之像素的值可用於產生顯示。舉例而言,值可指示像素之RGB顏色值,且可相應地設置像素以產生顯示。
圖2之實例說明產生圖像內容之圖塊化演現之態樣。可替代地或另外地,與所揭示的實施例一致,可使用其他技術來產生圖像內容。
參考圖3,展示基於眼睛位置的注視點演現之實例方法300。在各種實施例中,可使用裝置(例如,圖1中之裝置100及/或圖2中之裝置200)之圖像處理器320 (例如,GPU)及一或多個其他處理器310 (例如,CPU、GPU、DSP及類似者)執行方法300。如圖3中所展示,框330可表示在觀看圖像內容時使用者的眼睛隨著時間改變的位置。在一些實施例中,位置1、位置2以及位置3可表示對應於圖像內容內之使用者的凝視之位置的座標(例如,x、y及/或z座標)、當前與使用者的凝視相關聯的圖像內容之區域及/或對應於圖像內容內之使用者的凝視的關注目標。
在元件311處,一或多個其他處理器310可判定使用者之眼睛在位置1處(如框330中所展示),且基於眼睛位置1及來自產生圖像內容之應用程式(例如VR應用程式)的指令而產生演現命令。
在元件312處,一或多個其他處理器310可將產生的眼睛位置1之命令發送至圖像處理器320。
在元件322處,圖像處理器320可基於眼睛位置1之命令而應用程式演現圖像內容。因此,在一些實施例中,眼睛位置1處之圖像內容之區域可經演現為注視點區域(例如,以比圖像內容之其他區域更高的解析度)。如圖3中所展示,在圖像處理器320完成在元件322處演現圖像內容時,使用者之眼睛位置保持在眼睛位置1處。因此,使用者的凝視之位置對應於注視點區域,且使用者可觀看更高質量的影像及/或不會在彼圖像內容之圖框中看見明顯的偽影。
在元件313處,一或多個其他處理器310可判定使用者之眼睛在位置1處(如框330中所展示),且基於眼睛位置1及來自產生圖像內容的應用程式之指令而產生演現命令。
在元件314處,一或多個其他處理器310可將產生的眼睛位置1之命令發送至圖像處理器320。
在元件324處,圖像處理器320可基於眼睛位置1之命令而為應用程式演現圖像內容。如圖3中所展示,在圖像處理器320完成在元件324處演現圖像內容時,使用者之眼睛位置已移動至眼睛位置2處。因此,使用者的凝視之位置可不對應於注視點區域及/或可對應於非注視點區域,且使用者可觀察到在彼圖像內容之圖框中的較低質量的影像及/或明顯的偽影。
在元件315處,一或多個其他處理器310可判定使用者的眼睛在位置2處(如框330中所展示),且基於眼睛位置2及來自產生圖像內容之應用程式的指令而產生演現命令。
在元件316處,一或多個其他處理器310可將產生的眼睛位置2之命令發送至圖像處理器320。
在元件326處,圖像處理器320可基於眼睛位置2之命令而為應用程式演現圖像內容。如圖3中所展示,在圖像處理器320完成在元件326處演現圖像內容時,使用者之眼睛位置已移動至眼睛位置3。因此,使用者的凝視之位置可能不對應於注視點區域,且使用者可繼續觀察到彼圖像內容之圖框中的較低質量的影像及/或明顯的偽影。
在以上實例中,由於使用者之眼睛位置不一定對應於圖像內容之注視點區域,因此使用者可經歷運動至光子延遲,其可致使定向力障礙、動暈症及/或整體降低使用者體驗。
參考圖4,展示基於眼睛位置的注視點演現之實例方法400。在各種實施例中,可使用裝置(例如,圖1中之裝置100及/或圖2中之裝置200)之圖像處理器420 (例如,GPU)、一或多個其他處理器410及430 (例如,CPU、GPU、DSP或其組合及類似者)執行方法400。在各種實施例中,一或多個處理器410及430可表示相同的處理器(例如,CPU),可各自表示單一處理器,可表示多個處理器等。另外,一或多個處理器410及430可彼此與圖像處理器420在同一裝置上,或者可在與每個其他裝置連通的不同裝置上(例如,經由有線或無線連接進行連接)。如圖4中所展示,框440可表示在觀看圖像內容時使用者的眼睛隨著時間改變的位置。在一些實施例中,位置1、位置2以及位置3可表示對應於圖像內容內之使用者的凝視之位置的座標(例如,x、y及/或z座標)、當前與使用者的凝視相關聯的圖像內容之區域及/或對應於圖像內容內之使用者的凝視的關注目標。
在元件412處,一或多個其他處理器410可判定使用者之眼睛位於位置1處(如框440中所展示),且將使用者的眼睛位置之指示儲存在共用緩衝器450中。在一些實施例中,一或多個其他處理器410可連續地或以設定的間隔(例如,每5 ms)判定使用者之眼睛位置,且當眼睛位置改變時更新共用緩衝器450。在各種實施例中,儲存在共用緩衝器中之眼睛位置資料可包括使用者的凝視之估計方向,以及其他感測器讀數,諸如使用者的瞳孔之座標或使用者的眼睛的睜開度之量測值。
在元件431處,一或多個其他處理器430可在不使用眼睛位置的情況下,且基於來自產生圖像內容的應用程式 (例如,VR應用程式)之指令而產生演現命令。在一些實施例中,如下面參考圖5-8更詳細論述,一或多個其他處理器430可在元件431處產生高層級之注視點參數。在一些實施方式中,高層級的注視點參數可為產生的命令之一部分,或在其他實施中,可為單獨的資料。
在元件432處,一或多個其他處理器430可將產生的具有高層級的注視點參數之命令發送至圖像處理器420。
在元件422處,圖像處理器420可基於所接收命令而開始為應用程式演現圖像內容。在演現圖像內容時,圖像處理器420可在元件452處自共用緩衝器450中檢索使用者之眼睛位置(位置1)。因此,若眼睛位置在元件431處用於產生命令,則更晚地檢索眼睛位置(例如,早幾毫秒)。隨後,圖像處理器420可使用具有高層級的注視點參數之眼睛位置1來完成對眼睛位置1之圖像內容的演現。
如圖4中所展示,在圖像處理器420完成在元件422處演現圖像內容時,使用者之眼睛位置保持在眼睛位置1處。因此,使用者凝視之位置對應於注視點區域,且使用者可觀看更高質量的影像及/或不在彼圖像內容之圖框中觀察到明顯的偽影。
在元件433處,一或多個其他處理器430可在不使用眼睛位置的情況下,且基於來自產生圖像內容的應用程式之指令產生演現命令。在一些實施例中,一或多個其他處理器430可在元件433處產生高層級的注視點參數。
在元件434處,一或多個其他處理器430可將產生的具有高層級的注視點參數之命令發送至圖像處理器420。
在元件424處,圖像處理器420可基於所接收命令而開始為應用程式演現圖像內容。
在元件414處,一或多個其他處理器410可判定使用者之眼睛位於位置2處(如框440中所展示),且將使用者的眼睛位置之指示儲存在共用緩衝器450中。
當在元件424處演現圖像內容時,且在元件414之後,圖像處理器420可在元件454處自共用緩衝器450中檢索使用者的眼睛位置(位置2)。因此,若眼睛位置在元件433處用於產生命令,則更晚地檢索眼睛位置(例如,早幾毫秒)。另外,在元件433處產生命令之後,眼睛位置自眼睛位置1改變到眼睛位置2。因此,隨後圖像處理器420可使用具有高層級注視點參數的眼睛位置2來完成對眼睛位置2的圖像內容的演現。
如圖4中所展示,當圖像處理器420完成在元件424處演現圖像內容時,由於已在元件433處產生命令,因此使用者之眼睛位置已改變。因此,即使命令係於使用者之凝視改變之前產生,使用者之凝視之位置仍然對應於注視點區域,且使用者可觀看更高質量的影像及/或不在彼圖像內容之圖框中觀察到明顯的偽影。與圖3中所展示的方法相比,此可為一種改進,其中在產生命令時,眼睛位置用於演現圖像內容。
在元件435處,一或多個其他處理器430可在不使用眼睛位置的情況下,且基於來自產生圖像內容的應用程式之指令而產生演現命令。在一些實施例中,一或多個其他處理器430可在元件435處產生高層級的注視點參數。
在元件436處,一或多個其他處理器430可將產生的具有高層級的注視點參數之命令發送至圖像處理器420。
在元件426處,圖像處理器420可基於所接收命令而開始為應用程式演現圖像內容。
在元件416處,一或多個其他處理器410可判定使用者之眼睛位於位置3處(如框440中所展示),且將使用者之眼睛位置之指示儲存在共用緩衝器450中。
當在元件426處演現圖像內容時,且在元件416之後,圖像處理器420可在元件456處自共用緩衝器450中檢索使用者之眼睛位置(位置3)。因此,比在元件435處使用眼睛位置來產生命令且在元件435處產生命令之後眼睛位置自眼睛位置2改變到眼睛位置3更晚地檢索眼睛位置。因此,隨後圖形處理器420可使用具有高層級注視點參數的眼睛位置3來完成對眼睛位置3的圖像內容的演現。
在元件437處,一或多個其他處理器430可在不使用眼睛位置的情況下,且基於來自產生圖像內容的應用程式之指令而產生演現命令。在一些實施例中,一或多個其他處理器430可在元件437處產生高層級的注視點參數。
在元件438處,一或多個其他處理器430可將產生的具有高層級的注視點參數之命令發送至圖像處理器420。
在元件428處,圖像處理器420可基於所接收到命令而開始為應用程式演現圖像內容。當在元件428處演現圖像內容時,圖像處理器420可在元件458處自共用緩衝器450中檢索使用者之眼睛位置(位置3)。由於在元件456中檢索眼睛位置時眼睛位置並未移動直至在元件458中檢索眼睛位置,因此圖像處理器420可自共用緩衝器450中檢索相同的值。換言之,在元件456與元件458之間,共用緩衝器450並未藉由一或多個其他處理器410更新。因此,圖像處理器420可再次使用具有高層級注視點參數的眼睛位置3來完成對眼睛位置3的圖像內容的演現。
參考圖5,展示使用高層級注視點參數之實例方法500。在各種實施例中,可藉由計算裝置,諸如圖1中描繪的裝置100、圖2中描繪的裝置200,或者下面參考圖9描述的裝置900執行實例方法500。在其他實施例中,可使用一或多個處理器,諸如CPU、DSP及/或GPU執行實例方法500。舉例而言,可藉由圖4中所展示的一或多個其他處理器430執行方法500。另外地或可替代地,在一些實施例中,計算裝置可為VR頭戴式顯示器、AR頭戴式顯示器、蜂巢式手持話機(或其他無線通信裝置)、膝上型電腦、平板電腦、桌上型電腦、伺服器、網路化裝置集合、高級駕駛輔助系統、智慧型手錶、智慧型眼鏡及類似者。在各種實施例中,計算裝置可包括顯示裝置,可經連接至顯示裝置及/或能夠將資訊傳輸至顯示裝置。
在方塊510中,處理器可產生用於演現圖像內容之圖框之演現命令。在一些實施例中,演現命令可包括來自應用程式(例如,VR應用程式、行動遊戲應用程式,或顯示於大螢幕上之應用程式)之樣本及指令,該等指令包括(例如)縮小樣本之指令、關於如何縮小樣本(例如,如何加權樣本)之指令、按比例擴大樣本之指令等。在其他實施例中,演現命令可獲自應用程式。
在方塊520中,處理器可獲取高層級注視點參數。在一些實施例中,可自應用程式接收高層級注視點參數,而在其他實施例中,高層級注視點參數可由計算裝置產生。在各種實施例中,高層級注視點參數可為所產生的演現註釋之條件性修改,其中條件係基於稍後(例如,在出現基於演現命令之演現時)檢索的眼睛位置。
在一些實施方式中,高層級注視點參數可包括查找表,其中索引為眼睛位置,且該索引用於檢索與眼睛位置相關聯的等式、影像、紋理等。該等等式可為以較高解析度、較低解析度、使用特定AA層級、使用特定模糊層級、使用特定濾波器、以特定的幾何細節層級、以特定的紋理mipmap層級及類似者演現圖像內容之區域的等式。高層級注視點參數可隨後與所產生演現命令(及/或經包括作為所產生演現命令之一部分)一起使用,且與在稍後時間檢索的眼睛位置一起使用,以利用對應於眼睛位置之注視點及非注視點區域來演現圖像內容。舉例而言,與當前眼睛位置相關聯的區域(即,在使用者之中央窩視覺中)可比與當前眼睛位置不相關聯的區域(即,在使用者之周邊視覺中)以較高解析度演現。
在方框530中,處理器可將演現命令及可為演現命令之一部分的高層級注視點參數發送至圖像處理器(例如,GPU、CPU、DSP等)。隨後,實例方法500可返回至方塊510,用於圖像內容之下一圖框。
參考圖6,展示追蹤眼睛位置且使用共用緩衝器之實例方法600。在各種實施例中,可藉由計算裝置,諸如圖1中描繪的裝置100、圖2中描繪的裝置200,或下文參考圖9描繪的裝置900執行實例方法600。在其他實施例中,可使用一或多個處理器,諸如CPU、DSP及/或GPU執行實例方法500。舉例而言,可藉由圖4中所展示的一或多個其他處理器410執行方法600。另外地或可替代地,在一些實施例中,計算裝置可為VR頭戴式顯示器、AR頭戴式顯示器、蜂巢式手持話機、膝上型電腦、平板電腦、桌上型電腦、伺服器、網路化裝置集合、高級駕駛輔助系統、智慧型手錶、智慧型眼鏡及類似者。在各種實施例中,計算裝置可包括顯示裝置,可經連接至顯示裝置及/或能夠將資訊傳輸至顯示裝置。
在方塊610中,處理器可判定使用者之眼睛位置。舉例而言,處理器可使用VR頭戴式顯示器之嵌入式感測器來判定佩戴VR頭戴式顯示器的使用者之眼睛位置。如本文所使用,使用者之眼睛位置可指使用者的左眼之位置、使用者的右眼之位置或表示兩隻眼睛之位置的位置。感測器能夠捕獲使用者之左眼、右眼或兩隻眼睛之影像,且處理器可判定對應於使用者之凝視的圖像內容之對應區域。舉例而言,若一隻眼睛之虹膜指向上方及左側(自使用者之視角看),則處理器可基於使用者之眼睛的捕獲影像而判定使用者之凝視位於圖像內容之左上角區域。
在方塊620中,處理器可判定使用者的眼睛之位置是否有變化。舉例而言,若使用者之虹膜已自第一位置移動至第二位置,且第一位置與第二位置之間的距離大於一臨界值,則處理器可判定位置有變化(620:是)。否則,處理器可判定位置沒有變化(620:否)。在其他實施例中,若未將使用者之眼睛的位置儲存在當前場次中(例如,方塊610及方塊620之第一次迭代),則處理器可視位置已經改變而接續運作(620:是)。
若無變化(620:否),則實例方法可返回至方塊610。因此,處理器可連續地、幾乎連續地及/或以設定的間隔監測使用者的眼睛位置(例如,每5毫秒量測使用者的眼睛位置)。
若有變化(620:是),則實例方法可前進至方塊630。在方塊630中,處理器可將新的眼睛位置儲存在共用緩衝器中。共用緩衝器可為例如圖4中所展示的共用緩衝器450。舉例而言,處理器可儲存對應於使用者之眼睛內的使用者的虹膜之位置值,處理器可儲存對應於圖像內容內的使用者的凝視之x、y座標,處理器可儲存對應於圖像內容內的使用者的凝視之區域標識符及類似者。隨後,實例方法600可返回至方塊610。
參考圖7,展示基於眼睛位置的注視點演現之實例方法700。在各種實施例中,可藉由計算裝置,諸如圖1中描繪的裝置100、圖2中描繪的裝置200,或下面參考圖9描繪的裝置900執行實例方法700。在其他實施例中,可使用一或多個處理器,諸如GPU、CPU、及/或DSP執行實例方法700。舉例而言,可藉由圖4中所展示的圖像處理器420執行方法700。另外或可替代地,在一些實施例中,計算裝置可為VR頭戴式顯示器、AR頭戴式顯示器、蜂巢式手持話機、膝上型電腦、平板電腦、桌上型電腦、伺服器、網路化裝置集合、高級駕駛輔助系統、智慧型手錶、智慧型眼鏡及類似者。在各種實施例中,計算裝置可包括顯示裝置,可經連接至顯示裝置及/或能夠將資訊傳輸至顯示裝置。
在方塊710中,處理器可獲取用於演現圖像內容之圖框的演現命令及高層級注視點參數(例如,自另一處理器)。舉例而言,可自執行圖5中所展示的實例方法500之處理器接收演現命令及高層級注視點參數。在一些實施例中,高層級注視點參數可為演現命令之一部分。
在方塊720中,處理器可判定且儲存每個區域演現命令。在一些實施例中,如上文所述,區域可對應於圖像內容之圖塊化演現中之圖塊。在其他實施例中,區域可對應於多個圖塊及/或圖塊可對應於多個區域。
舉例而言,處理器可判定在框710中獲取的一些演現命令對應於圖像內容中的特定區域,且分割及儲存與特定區域相關聯的彼等演現命令。作為另一實例,處理器可判定一些演現命令對應於多個區域,且若需要,修改演現命令以應用程式於一個區域,且儲存與該一個區域相關聯的演現命令。
在方塊730中,處理器可自共用緩衝器獲取眼睛位置(例如,左眼位置、右眼位置或兩者)。共用緩衝器可為例如圖4中所展示的共用緩衝器450及/或共用緩衝器,其中眼睛位置由執行圖6中所展示的實例方法600之處理器儲存。在參考圖7描述的實施例中,方塊730中所獲取的眼睛位置可用於演現圖像內容之圖框之每一圖塊。
在方塊740中,處理器可基於在方塊730中自共用緩衝器獲取的眼睛位置及在方塊710中獲取的高層級注視點參數來判定且儲存每個區域注視點參數。
在一些實施例中,高層級注視點參數可為使眼睛位置與每個區域的等式相關聯的表。舉例而言,等式可用於判定及/或以特定解析度演現每一區域(例如,對應於眼睛位置的區域將基於來自表之等式而以較高解析度演現,且其他區域將基於來自表之等式而以較低解析度演現)。因此,可使用眼睛位置作為索引值來檢索等式,且可將等式與相應區域相關聯地儲存。
在方塊750中,處理器可獲取圖塊之演現命令。在一些實施例中,圖塊可與區域、部分區域或多個區域相關聯。因此,處理器可獲取儲存在方塊720中的區域相關聯之演現命令,該等區域與圖塊相關聯。若圖塊僅與部分區域相關聯,則處理器可修改演現命令以對應於圖塊。
在方塊760中,處理器可獲取圖塊之注視點參數。類似於方塊750,處理器可獲取儲存在方塊740中之與區域相關聯的注視點參數,該等區域與圖塊相關聯。若圖塊僅與部分區域相關聯,則處理器可修改每個區域之注視點參數以對應於圖塊。
在方塊770中,處理器可使用圖塊之演現命令及圖塊之注視點參數來演現圖塊的圖像內容。在一些實施例中,若圖塊經判定為與注視點區域相關聯(例如,經判定為在使用者之中央窩視覺中),則圖塊之注視點參數可致使以較高解析度、較高AA層級、較低模糊層級、使用與非注視點區域匹配的某些濾波器、較高幾何細節層級及/或較高紋理mipmap層級來演現圖像內容。類似地,在其他實施例中,若圖塊經判定為與非注視點區域相關聯(例如,經判定為在使用者之外圍視覺中),則圖塊之注視點參數可致使以較低解析度、利用較低AA層級、利用較高模糊層級、使用與注視點區域匹配的某些濾波器、以較低幾何細節層級及/或以較低紋理mipmap層級來演現圖像內容。
在方塊780中,處理器可判定是否所有圖塊已經演現。若未演現所有的圖塊(780:否),則實例方法700可返回至方塊750以處理下一圖塊。若所有圖塊已經演現(780:是)圖框,則可完成圖像內容之圖框之演現,圖像內容之圖框可儲存在系統記憶體中及/或圖像內容之圖框可用於調整像素值以在計算裝置之顯示裝置上及/或連接至計算裝置的顯示裝置上顯示圖像內容之圖框。另外,實例方法700可返回至710以處理圖像內容之下一圖框。
參考圖8,展示基於眼睛位置的注視點演現之實例方法800。在各種實施例中,可藉由計算裝置,諸如圖1中描繪的裝置100、圖2中描繪的裝置200,或下文參考圖9描繪的裝置900執行實例方法800。在其他實施例中,可使用一或多個處理器,諸如GPU、CPU、及/或DSP執行實例方法800。舉例而言,可藉由圖4中所展示的圖像處理器420執行方法800。另外地或可替代地,在一些實施例中,計算裝置可為VR頭戴式顯示器、AR頭戴式顯示器、蜂巢式手持話機、膝上型電腦、平板電腦、桌上型電腦、伺服器、網路化裝置集合、高級駕駛輔助系統、智慧型手錶、智慧型眼鏡及類似者。在各種實施例中,計算裝置可包括顯示裝置,可經連接至顯示裝置及/或能夠將資訊傳輸至顯示裝置。
在方塊810中,處理器可自另一處理器獲取用於演現圖像內容之圖框的演現命令及高層級注視點參數。舉例而言,可自執行圖5中所展示的實例方法500之處理器接收演現命令及高層級注視點參數。在一些實施例中,高層級注視點參數可為演現命令之一部分。
在方塊820中,處理器可判定且儲存每個區域的演現命令。在一些實施例中,如上文所述,區域可對應於圖像內容之圖塊化演現中之圖塊。在其他實施例中,區域可對應於多個圖塊及/或圖塊可對應於多個區域。
在方塊830中,處理器可自共用緩衝器獲取眼睛位置(例如,左眼位置、右眼位置或兩者)。共用緩衝器可為例如圖4中所展示的共用緩衝器450及/或其中眼睛位置由執行圖6中所展示的實例方法600之處理器儲存的共用緩衝器。在參考圖8描述的實施例中,方塊830中獲取的眼睛位置可用於演現圖像內容之圖框的當前圖塊。
在方塊840中,處理器可獲取圖塊(亦即,當前圖塊)之演現命令。在一些實施例中,圖塊可與區域、部分區域或多個區域相關聯。因此,處理器可獲取儲存在框820中之與區域相關聯之演現命令,該等區域與圖塊相關聯。若圖塊僅與部分區域相關聯,則處理器可修改演現命令以對應於圖塊。
在方塊850中,處理器可基於自方塊830中之共用緩衝器獲取的眼睛位置及方塊810中獲取的高層級注視點參數來判定圖塊之每個區域注視點參數。
在方塊860中,處理器可使用圖塊之演現命令及圖塊之注視點參數來演現圖塊的圖像內容。在一些實施例中,若圖塊與注視點區域相關聯,則圖塊之注視點參數可致使以較高解析度、較高AA層級、較低模糊層級、使用與非注視點區域匹配的某些濾波器、較高幾何細節層級及/或較高紋理mipmap層級來演現圖像內容。類似地,在其他實施例中,若圖塊與非注視點區域相關聯,則圖塊之注視點參數可致使以較低解析度、較低AA層級、與注視點區域匹配的某些濾波器、較高模糊層級、較高幾何細節層級及/或較高紋理mipmap層級來演現圖像內容。
在方塊870中,處理器可判定是否已演現所有圖塊。若未演現所有圖塊(870:否),則實例方法800可返回至方塊830以處理下一圖塊。在參考圖8描述的實施例中,處理器可自方塊830中之共用緩衝器中多次檢索眼睛位置以演現相同的圖框及/或可自方塊830中之共用緩衝器中檢索眼睛位置用於經演現的每一圖塊。因此,若在圖框仍在演現時眼睛位置發生變化,則可基於稍後更新的眼睛位置來演現在變化之前未經演現的圖塊。
作為一實例,若在演現左上圖塊時眼睛位置對應於圖像內容之左上圖塊中之區域,則左上圖塊可經演現為注視點區域。若隨後眼睛位置在演現右下圖塊之前改變至圖像內容的右下圖塊中之區域,則右下圖塊亦可經演現為注視點區域。
若已演現所有圖塊(870:是),可完成圖像內容之圖框的演現,圖像內容之圖框可儲存在系統記憶體中及/或圖像內容之圖框可用於調整像素值以在計算裝置之顯示裝置上及/或連接至計算裝置的顯示裝置上顯示圖像內容之圖框。另外,實例方法800可返回至810以處理圖像內容之下一圖框。
參看圖9,描繪可執行注視點演現之電子裝置之實例圖式,且通常指定為電子裝置900。電子裝置900可對應於行動裝置(例如無線通信裝置,諸如蜂巢式手持話機)、電腦(例如伺服器、膝上型電腦、平板電腦或桌上型電腦)、接入點、基站、穿戴式電子裝置(例如個人照相機、頭戴式顯示器、VR頭戴式顯示器、AR頭戴式顯示器、智慧型眼鏡或智慧型手錶)、車輛控制系統或控制台(例如高級駕駛輔助系統)、自主車輛(例如機器人汽車或無人機)、家用電器、機上盒、娛樂裝置、導航裝置、個人數位助理(PDA)、電視、監控器、調諧器、無線電(例如衛星無線電)、音樂播放器(例如數位音樂播放器或攜帶型音樂播放器)、視訊播放器(例如數位視訊播放器,諸如數位視訊光碟(DVD)播放器或攜帶型數位視訊播放器)、機器人、醫療保健裝置、另一電子裝置或其組合。
電子裝置900包括一或多個處理器,諸如處理器910及圖像處理單元(GPU) 996。處理器910可包括中央處理單元(CPU)、數位訊號處理器(DSP)、另一處理裝置或其組合。在圖9之實例中,處理器可包括中央窩估計引擎904,且GPU 996可包括演現引擎912。在其他實施例中,演現引擎912可包括在處理器910中及/或中央窩估計引擎904可包括在GPU 996中等。
處理器910可經耦接至GPU 996。在一說明性實例中,處理器910可經組態以使用圖像應用程式程式介面(API)調用與GPU 996連通。舉例而言,GPU 996可包括API調用分析器(未展示),且處理器910可經組態以在由GPU 996執行圖像處理期間向API調用分析器提供API調用。
電子裝置900可進一步包括一或多個記憶體,諸如記憶體932。記憶體932可耦接至處理器910、GPU 996或兩者。記憶體932可包括隨機存取記憶體(RAM)、磁電阻隨機存取記憶體(MRAM)、快閃記憶體、唯讀記憶體(ROM)、可程式化唯讀記憶體(PROM)、抹除式可程式化唯讀記憶體(EPROM)、電抹除式可程式化唯讀記憶體(EEPROM)、一或多個暫存器、硬碟、可移除式磁碟或緊密光碟唯讀記憶體(CD-ROM)、另一記憶體裝置或其組合。
記憶體932可儲存指令960。指令960可由處理器910、GPU 996或兩者執行。在一些實施例中,指令960可指示處理器910及/或GPU 996執行關於圖5-8所描述的方法。
寫碼器/解碼器(CODEC) 934亦可經耦接至處理器910。CODEC 934可經耦接至一或多個麥克風,諸如麥克風938。CODEC 934亦可經耦接至一或多個揚聲器,諸如揚聲器936。CODEC 934可包括記憶體990,該記憶體儲存可由CODEC 934執行的指令995。
圖9亦展示耦接至處理器910及顯示器928之顯示控制器926。在一些實施例中,電子裝置900可進一步包括耦接至天線942之無線控制器940。在其他實施例中,電子裝置900可進一步包括耦接至電腦網路電纜之有線網路控制器(未展示)。
電子裝置900可進一步包括感測器950 (例如,照相機)。感測器950可為經組態以捕捉使用者之眼睛的影像之任何類型的感測器。中央窩估計引擎904可經組態以基於來自感測器950之所捕獲影像來識別眼睛位置資訊。
在一特定實例中,處理器910、GPU 996、記憶體932、顯示控制器926、CODEC 934及無線控制器940包括在系統單晶片(SoC)裝置中。另外,輸入裝置930及電源944可經耦接至SoC裝置922。此外,在一特定實例中,如圖9中所說明,顯示器928、輸入裝置930、揚聲器936、麥克風938、天線942、電源944及感測器950在SoC裝置922之外部。然而,顯示器928、輸入裝置930、揚聲器936、麥克風938、天線942、電源944及感測器950中之每一者可經耦接至SoC裝置922之組件,諸如耦接至介面或控制器。
如本文所所用,「耦接」可包括通信耦接、電耦接、磁耦接、實體地耦接、光耦接及其組合。兩個裝置(或組件)可經由一或多個其他裝置、組件、導線、匯流排、網路(例如有線網路、無線網路或其組合)等直接或間接地耦接(例如通信耦接、電耦接或實體地耦接)。作為說明性的非限制性實例,經電耦接的兩個裝置(或組件)可包括在相同裝置或不同的裝置中,且可經由電子裝置、一或多個連接器或電感耦接來連接。在一些實施中,諸如在電通信中以通信方式耦接之兩個裝置(或組件)可諸如經由一或多個導線、匯流排、網路等直接或間接地發送及接收電信號(數位信號或類比信號)。
前文所揭示的裝置及功能可使用電腦檔案(例如,呈包括圖像資料庫系統II (GDSII)、GERBER等的檔案格式之電腦檔案)來設計及表示。可將電腦檔案儲存於電腦可讀媒體上。可將一些或所有此類檔案提供至基於此類檔案製造裝置之製造操作者。所得產品包括晶圓,隨後將晶圓切割成晶粒且封裝成積體電路(或「晶片」)。隨後,在電子裝置,諸如圖9之電子裝置900中採用積體電路。
儘管為方便起見,已單獨描述某些實例,但應注意,在不脫離本發明之範疇的情況下,可適當地組合此類實例之態樣。舉例而言,裝置100可經組態以基於參考圖2-9中之每一者描述的態樣來操作。熟習此項技術者將認識到在本發明之範疇內的其他此類修改。
結合本文中所揭示的實例描述的各種說明性邏輯區塊、組態、模組、電路,以及演算法步驟可實施為電子硬體、由處理器執行的電腦軟體,或兩者的組合。上文大體就功能性方面描述各種說明性組件、區塊、組態、模組、電路及步驟。此功能性實施為硬體抑或處理器可執行指令取決於特定應用程式及強加於整個系統的設計約束。對於每一特定應用程式而言,熟習此項技術者可針對每一特定應用程式而以變化之方式實施所描述的功能性,但不應將此類實施方式解譯為致使脫離本發明之範疇。
本文描述的方法或演算法之一或多個操作可直接體現在硬體、由處理器執行的軟體模組或兩者之組合中。舉例而言,圖5之實例方法500、圖6之實例方法600、圖7之實例方法700、圖8之實例方法800及類似者之一或多個操作可由現場可程式化閘陣列(FPGA)裝置、專用積體電路(ASIC)、諸如CPU、數位訊號處理器(DSP)、控制器、另一硬體裝置、韌體裝置或其組合來啟動、控制或執行。軟體模組可駐存在RAM、MRAM、快閃記憶體、ROM、EPROM、EEPROM、暫存器、硬碟、可卸除式磁碟、CD-ROM或此項技術已知的任何其他形式的非暫態儲存媒體中。實例儲存媒體經耦接至處理器,使得處理器可自儲存媒體讀取資訊且將資訊寫入至儲存媒體。另外地或在可替代方案中,可將儲存媒體整合至處理器。處理器及儲存媒體可駐存於ASIC中。ASIC可駐存在計算裝置或使用者終端機中。另外地或在可替代方案中,處理器及儲存媒體可作為離散組件駐存在計算裝置或使用者終端機中。
提供所揭示實例之先前描述以使得熟習此項技術者能夠製作或使用所揭示實例。對此等實例的各種修改對於熟習此項技術者而言將為顯而易見的,且在不脫離本發明的範疇的情況下,本文所定義的原理可應用程式於其他實例。因此,本發明並不意欲侷限於本文所展示的實例,而是符合與由以下申請專利範圍所定義的原理及新穎特徵一致的最廣泛的可能範疇。
100‧‧‧裝置 102‧‧‧圖像內容 104‧‧‧中央窩估計引擎 106‧‧‧關注區域 108‧‧‧第一區域 109‧‧‧第二區域 110‧‧‧場景資訊 112‧‧‧演現引擎 114‧‧‧第一圖框 116‧‧‧較高解析度區域 118‧‧‧較低解析度區域 200‧‧‧裝置 201‧‧‧圖像內容 202‧‧‧第一圖塊 203‧‧‧中央窩估計引擎 204‧‧‧第二圖塊 205‧‧‧關注區域 206‧‧‧圖塊化引擎 207‧‧‧第一圖框 208‧‧‧圖塊記憶體 212‧‧‧第一像素 214‧‧‧第二像素 216‧‧‧第三像素 218‧‧‧第四像素 222‧‧‧第五像素 224‧‧‧第六像素 226‧‧‧第七像素 228‧‧‧第八像素 230‧‧‧系統記憶體 232‧‧‧第一像素值 234‧‧‧第二像素值 236‧‧‧第七像素值 238‧‧‧第八像素值 300‧‧‧方法 310‧‧‧處理器 311‧‧‧元件 312‧‧‧元件 313‧‧‧元件 314‧‧‧元件 315‧‧‧元件 316‧‧‧元件 320‧‧‧圖像處理器 322‧‧‧元件 324‧‧‧元件 326‧‧‧元件 330‧‧‧框 400‧‧‧方法 410‧‧‧處理器 412‧‧‧元件 414‧‧‧元件 416‧‧‧元件 420‧‧‧圖像處理器 422‧‧‧元件 424‧‧‧元件 426‧‧‧元件 428‧‧‧元件 430‧‧‧處理器 431‧‧‧元件 432‧‧‧元件 433‧‧‧元件 434‧‧‧元件 435‧‧‧元件 436‧‧‧元件 437‧‧‧元件 438‧‧‧元件 440‧‧‧框 450‧‧‧共用緩衝器 452‧‧‧元件 454‧‧‧元件 456‧‧‧元件 458‧‧‧元件 500‧‧‧方法 510‧‧‧方塊 520‧‧‧方塊 530‧‧‧方塊 600‧‧‧方法 610‧‧‧方塊 620‧‧‧方塊 630‧‧‧方塊 700‧‧‧方法 710‧‧‧方塊 720‧‧‧方塊 730‧‧‧方塊 740‧‧‧方塊 750‧‧‧方塊 760‧‧‧方塊 770‧‧‧方塊 780‧‧‧方塊 800‧‧‧方法 810‧‧‧方塊 820‧‧‧方塊 830‧‧‧方塊 840‧‧‧方塊 850‧‧‧方塊 860‧‧‧方塊 870‧‧‧方塊 900‧‧‧裝置 904‧‧‧中央窩估計引擎 910‧‧‧處理器 912‧‧‧演現引擎 922‧‧‧系統單晶片裝置 926‧‧‧顯示控制器 928‧‧‧顯示器 930‧‧‧輸入裝置 932‧‧‧記憶體 934‧‧‧寫碼器/解碼器 936‧‧‧揚聲器 938‧‧‧麥克風 940‧‧‧無線控制器 942‧‧‧天線 944‧‧‧電源 950‧‧‧感測器 960‧‧‧指令 990‧‧‧記憶體 995‧‧‧指令 996‧‧‧圖像處理單元
圖1為與所揭示的實施例一致的可執行注視點演現的裝置的實例圖式。
圖2為與所揭示的實施例一致的能夠執行注視點演現的裝置的實例圖式。
圖3為與所揭示的實施例一致的基於眼睛位置的注視點演現之實例繪示。
圖4為與所揭示的實施例一致的基於眼睛位置的注視點演現之實例繪示。
圖5為與所揭示的實施例一致的使用高層級注視點參數之實例繪示。
圖6為與揭示的實施例一致的追蹤眼睛位置且使用共用緩衝器之實例繪示。
圖7為與所揭示的實施例一致的基於眼睛位置的注視點演現之實例繪示。
圖8為與所揭示的實施例一致的基於眼睛位置的注視點演現之實例繪示。
圖9為與所揭示的實施例一致的可執行注視點演現之電子裝置的實例圖式。
400‧‧‧方法
410‧‧‧處理器
412‧‧‧元件
414‧‧‧元件
416‧‧‧元件
420‧‧‧圖像處理器
422‧‧‧元件
424‧‧‧元件
426‧‧‧元件
428‧‧‧元件
430‧‧‧處理器
431‧‧‧元件
432‧‧‧元件
433‧‧‧元件
434‧‧‧元件
435‧‧‧元件
436‧‧‧元件
437‧‧‧元件
438‧‧‧元件
440‧‧‧框
450‧‧‧共用緩衝器
452‧‧‧元件
454‧‧‧元件
456‧‧‧元件
458‧‧‧元件

Claims (22)

  1. 一種用於產生圖像內容之裝置,其包含: 一記憶體;及 一處理器,其經耦接至該記憶體,該記憶體經組態以使該裝置執行一方法,該方法包含: 獲取該圖像內容之一圖框之一演現命令; 在獲取該演現命令之後,獲取一使用者之一眼睛位置; 基於該眼睛位置而判定該圖像內容之一區域的一注視點參數;以及 使用該注視點參數及該演現命令來演現對應於該圖像內容之該區域的該圖框之一圖塊。
  2. 如請求項1之裝置,其中該眼睛位置用於判定對應於該圖像內容之該圖框的複數個圖塊中之每一圖塊的注視點參數。
  3. 如請求項1之裝置,該方法進一步包含: 獲取該圖像內容之該圖框之一第二演現命令; 在演現該圖塊之後獲取該使用者之一第二眼睛位置; 基於該第二眼睛位置而判定該圖像內容之一第二區域之一第二注視點參數;以及 使用該圖像內容之該圖框之該第二注視點參數及該第二演現命令來演現對應於該圖像內容之該第二區域之該圖框的一第二圖塊。
  4. 如請求項1之裝置,其中: 該區域經判定為在一使用者之中央窩視覺中;且 基於該注視點參數而以比對應於該圖像內容之該圖框的其他圖塊更高的一解析度演現該圖塊。
  5. 如請求項1之裝置,其中: 該區域經判定為在一使用者之周邊視覺中;且 基於該注視點參數而以比對應於該圖像內容之該圖框的其他圖塊更低的一解析度演現該圖塊。
  6. 如請求項1之裝置,其中該注視點參數對應於選自由以下組成之群中之至少一者: 一解析度; 一抗混疊層級; 一模糊層級; 一濾波器; 一幾何細節層級;以及 一紋理mipmap層級。
  7. 如請求項1之裝置,其中該處理器包含一圖像處理單元(GPU),其中該GPU獲取該演現命令,獲取該眼睛位置,判定該等注視點參數,以及演現該圖塊。
  8. 如請求項7之裝置,其中該處理器進一步包含一中央處理單元(CPU),其中該GPU自該CPU獲取該演現命令。
  9. 如請求項8之裝置,其中該GPU自與不同於該GPU及該CPU之一處理器共用之一共用緩衝器中獲取該眼睛位置。
  10. 如請求項1之裝置,該方法進一步包含基於包含該圖塊之複數個圖塊而產生該圖像內容之該圖框,其中該圖像內容之該圖框顯示於一虛擬實境頭戴式顯示器或一蜂巢式手持話機上。
  11. 如請求項10之裝置,其中該裝置包含該虛擬實境頭戴式顯示器或該蜂巢式手持話機。
  12. 一種用於產生圖像內容之方法,其包含: 獲取該圖像內容之一圖框之一演現命令; 在獲取該演現命令之後,獲取一使用者之一眼睛位置; 基於該眼睛位置而判定該圖像內容之一區域的一注視點參數;以及 使用一處理器,使用該注視點參數及該演現命令來演現對應於該圖像內容之該區域的該圖框之一圖塊。
  13. 如請求項12之方法,其中該眼睛位置用於判定對應於該圖像內容之該圖框的複數個圖塊中之每一圖塊的注視點參數。
  14. 如請求項12之方法,其進一步包含: 獲取該圖像內容之該圖框之一第二演現命令; 在演現該圖塊之後獲取該使用者之一第二眼睛位置; 基於該第二眼睛位置而判定該圖像內容之一第二區域之一第二注視點參數;以及 使用該圖像內容之該圖框之該第二注視點參數及該第二演現命令來演現對應於該圖像內容之該第二區域之該圖框的一第二圖塊。
  15. 如請求項12之方法,其中: 該區域經判定為在一使用者之中央窩視覺中;且 基於該注視點參數而以比對應於該圖像內容之該圖框的其他圖塊更高的一解析度演現該圖塊。
  16. 如請求項12之方法,其中: 該區域經判定為在一使用者之周邊視覺中;且 基於該注視點參數而以比對應於該圖像內容之該圖框的其他圖塊更低的一解析度演現該圖塊。
  17. 如請求項12之方法,其中該注視點參數對應於選自由以下組成之群中之至少一者: 一解析度; 一抗混疊層級; 一模糊層級; 一濾波器; 一幾何細節層級;以及 一紋理mipmap層級。
  18. 如請求項12之方法,其中一裝置之一圖像處理單元(GPU)獲取該演現命令,獲取該眼睛位置,判定該等注視點參數,以及演現該圖塊。
  19. 如請求項18之方法,其中該GPU自該裝置之一中央處理單元(CPU)獲取該演現命令。
  20. 如請求項19之方法,其中,該GPU自與不同於該GPU及該CPU之一處理器共用之一共用緩衝器中獲取該眼睛位置。
  21. 如請求項12之方法,其進一步包含: 基於包含該圖塊之複數個圖塊而產生該圖像內容之該圖框;且 在一虛擬實境頭戴式顯示器或一蜂巢式手持話機上顯示該圖像內容之該圖框。
  22. 一種用於產生圖像內容之非暫態電腦可讀媒體,該非暫態電腦可讀媒體儲存含有指令之一程式,當該等指令由一裝置之一處理器執行時,致使該裝置執行包含以下步驟之一方法: 獲取該圖像內容之一圖框之一演現命令; 在獲取該演現命令之後,獲取一使用者之一眼睛位置; 基於該眼睛位置而判定該圖像內容之一區域的一注視點參數;以及 使用該注視點參數及該演現命令來演現對應於該圖像內容之該區域的該圖框之一圖塊。
TW108121309A 2018-06-21 2019-06-19 使用演現命令及後續接收之眼睛位置資料之圖像內容之注視點演現 TW202001499A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862688312P 2018-06-21 2018-06-21
US62/688,312 2018-06-21
US16/406,515 2019-05-08
US16/406,515 US11194389B2 (en) 2018-06-21 2019-05-08 Foveated rendering of graphics content using a rendering command and subsequently received eye position data

Publications (1)

Publication Number Publication Date
TW202001499A true TW202001499A (zh) 2020-01-01

Family

ID=68981752

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108121309A TW202001499A (zh) 2018-06-21 2019-06-19 使用演現命令及後續接收之眼睛位置資料之圖像內容之注視點演現

Country Status (3)

Country Link
US (1) US11194389B2 (zh)
TW (1) TW202001499A (zh)
WO (1) WO2019245969A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2583061B (en) * 2019-02-12 2023-03-15 Advanced Risc Mach Ltd Data processing systems
JP7392105B2 (ja) * 2019-07-28 2023-12-05 グーグル エルエルシー 没入型ビデオコンテンツをフォービエイテッドメッシュを用いてレンダリングするための方法、システム、および媒体
GB2595872B (en) * 2020-06-09 2023-09-20 Sony Interactive Entertainment Inc Gaze tracking apparatus and systems
US11562715B2 (en) * 2020-08-28 2023-01-24 Arm Limited Graphics processing systems
KR102539910B1 (ko) * 2020-12-15 2023-06-05 세종대학교산학협력단 포비티드 렌더링에 관한 집중도 기반의 레이 트레이싱 방법 및 장치
US20220270539A1 (en) * 2021-02-22 2022-08-25 Novatek Microelectronics Corp. Display driver integrated circuit, image processor, and operation method thereof
CN113542799A (zh) * 2021-06-22 2021-10-22 青岛小鸟看看科技有限公司 Vr图像的压缩传输方法、系统
WO2023049216A1 (en) * 2021-09-24 2023-03-30 Apple Inc. Protected access to rendering information for electronic devices
CN114972608B (zh) * 2022-07-29 2022-11-08 成都航空职业技术学院 一种渲染动漫人物的方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8328610B2 (en) * 2006-08-16 2012-12-11 Nintendo Co., Ltd. Intelligent game editing system and method with autocomplete and other functions that facilitate game authoring by non-expert end users
US9760966B2 (en) * 2013-01-08 2017-09-12 Nvidia Corporation Parallel processor with integrated correlation and convolution engine
KR101890602B1 (ko) * 2013-12-19 2018-08-24 인텔 코포레이션 다수의 디스플레이를 이용하는 다중 사용자 아이 트래킹
US9779466B2 (en) 2015-05-07 2017-10-03 Microsoft Technology Licensing, Llc GPU operation
US10474321B2 (en) * 2015-11-30 2019-11-12 Snap Inc. Network resource location linking and visual content sharing
US10373592B2 (en) 2016-08-01 2019-08-06 Facebook Technologies, Llc Adaptive parameters in image regions based on eye tracking information
GB2553353B (en) 2016-09-05 2021-11-24 Advanced Risc Mach Ltd Graphics processing systems and graphics processors
US10330935B2 (en) * 2016-09-22 2019-06-25 Apple Inc. Predictive, foveated virtual reality system
US10482648B2 (en) 2016-12-13 2019-11-19 Qualcomm Incorporated Scene-based foveated rendering of graphics content

Also Published As

Publication number Publication date
US20190391641A1 (en) 2019-12-26
WO2019245969A1 (en) 2019-12-26
US11194389B2 (en) 2021-12-07

Similar Documents

Publication Publication Date Title
TW202001499A (zh) 使用演現命令及後續接收之眼睛位置資料之圖像內容之注視點演現
US10997954B2 (en) Foveated rendering using variable framerates
US10957093B2 (en) Scene-based foveated rendering of graphics content
CN107636534B (zh) 用于图像处理的方法和系统
JP2023513304A (ja) 分散システムにおける動き平滑化
US10572764B1 (en) Adaptive stereo rendering to reduce motion sickness
WO2017086244A1 (ja) 画像処理装置、情報処理装置、および画像処理方法
US20200221061A1 (en) Server, display device and control method therefor
CN112073748A (zh) 全景视频的处理方法、装置及存储介质
KR20190011212A (ko) 출력면을 제공하는 방법 및 데이터 처리 시스템
US10997951B2 (en) Preserving sample data in foveated rendering of graphics content
KR20180059210A (ko) 영상 처리 장치 및 그 영상 처리 방법
US11430178B2 (en) Three-dimensional video processing
JP6965439B2 (ja) 基準画像生成装置、表示画像生成装置、基準画像生成方法、および表示画像生成方法
WO2021020200A1 (ja) 情報処理装置、情報処理方法、及びプログラム
CN111200758B (zh) 全景视频的多视场控制方法、装置、电子设备及存储介质
CN111277886B (zh) 全景视频的视场控制方法、装置、电子设备及存储介质
US11880920B2 (en) Perspective correct vector graphics with foveated rendering
CN111200749A (zh) 全景视频的播放控制方法、装置、电子设备及存储介质
WO2020036099A1 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
CN111200748A (zh) 全景视频的视场控制方法、装置、电子设备及存储介质
CN115834908A (zh) 多视图视频编解码器