專利名稱:用于圖像變換過(guò)程的自適應(yīng)濾波的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于變換圖像數(shù)據(jù),諸如但不限于,對(duì)圖像數(shù)據(jù)進(jìn)行智能重新采樣、調(diào) 整大小、或各向異性濾波的智能或自適應(yīng)系統(tǒng)和過(guò)程。背景作為關(guān)于常規(guī)系統(tǒng)的背景,在將源圖像數(shù)據(jù)變換成目標(biāo)圖像數(shù)據(jù)時(shí),在源圖像數(shù) 據(jù)與目標(biāo)圖像數(shù)據(jù)中的像素的數(shù)量不同的情況下,執(zhí)行調(diào)整大小或重新采樣操作,因?yàn)樵?像素不能在一對(duì)一的基礎(chǔ)上精確地映射到目標(biāo)像素。例如,當(dāng)在計(jì)算機(jī)上將來(lái)自源視頻數(shù) 據(jù)的視頻數(shù)據(jù)呈現(xiàn)給軟件媒體播放器時(shí),在計(jì)算機(jī)屏幕上觀看的目標(biāo)像素空間通常與源像 素空間不同,并且因此對(duì)源視頻數(shù)據(jù)中表示的圖像進(jìn)行重新采樣以適合目標(biāo)像素空間來(lái)用 于正確的觀看。在某些情況下,用戶可以在進(jìn)行中改變屏上像素空間,在這種情況下,動(dòng)態(tài) 地調(diào)整圖像數(shù)據(jù)大小以供快速顯示的能力是合乎需要的。當(dāng)今,這一調(diào)整大小或重新采樣操作是通過(guò)對(duì)于目標(biāo)中的每一給定像素位置確定 目的地像素值來(lái)執(zhí)行的,該值是通過(guò)關(guān)于源圖像中定義的與該目的地像素的位置相對(duì)應(yīng)的 某像素區(qū)域進(jìn)行內(nèi)插來(lái)確定的。向設(shè)計(jì)者給出了用于執(zhí)行這種內(nèi)插的各種不同的固定濾 波算法,每一種都具有變化的復(fù)雜度、成本、以及性能折衷。就此,當(dāng)今,呈現(xiàn)系統(tǒng)的設(shè)計(jì)者 根據(jù)不同的性能折衷特性選擇固定算法之一來(lái)執(zhí)行這一調(diào)整大小或重新采樣操作,通常針 對(duì)最差情況來(lái)設(shè)計(jì)或針對(duì)給定應(yīng)用來(lái)優(yōu)化速度對(duì)復(fù)雜度。然而,這種選擇可導(dǎo)致對(duì)簡(jiǎn)單圖 像數(shù)據(jù)的過(guò)度復(fù)雜的實(shí)現(xiàn),從而執(zhí)行大量不必要的工作,并且反過(guò)來(lái),在變換復(fù)雜圖像數(shù)據(jù) 時(shí),這種選擇可導(dǎo)致產(chǎn)生過(guò)多不可接受偽像的過(guò)度簡(jiǎn)單的實(shí)現(xiàn)。因此,提供用于變換視頻或圖像數(shù)據(jù)的、不對(duì)所有圖像數(shù)據(jù)盲目地應(yīng)用預(yù)先選擇 的變換算法而將性能限于該預(yù)先選擇的算法的改進(jìn)算法是合乎需要的。上述使用常規(guī)視頻 或圖像變換算法的缺點(diǎn)僅旨在提供常規(guī)系統(tǒng)的一些問題的概覽,并且不旨在是窮盡性的。 在仔細(xì)閱讀了以下描述后,當(dāng)今圖形領(lǐng)域的其他問題和各非限制性實(shí)施例的對(duì)應(yīng)好處可變 得顯而易見。概述此處提供了簡(jiǎn)化概述以幫助能夠?qū)σ韵赂敿?xì)的描述和附圖中的示例性、非限制 性實(shí)施例的各方面有基本或大體的理解。然而,本概述并不旨在是詳盡的或窮盡的。相反, 本概述的唯一目的是以簡(jiǎn)化的形式來(lái)提出與一些示例性非限制性實(shí)施例相關(guān)的一些概念, 作為以下各實(shí)施例的更為詳細(xì)的描述的序言。在各實(shí)施例中,闡明了改進(jìn)視頻回放性能的自適應(yīng)濾波技術(shù)。計(jì)算正在經(jīng)歷圖像 變換操作的源像素的色彩相似性度量以確定目標(biāo)像素位置的色值。色彩相似性度量的值定 義了選擇什么算法來(lái)從源像素確定目標(biāo)像素位置的色值。盡管色彩相似性度量的計(jì)算引入 對(duì)每一像素的附加指令,但比常規(guī)系統(tǒng)有利的是,通過(guò)在更簡(jiǎn)單的指令集就足夠的情況下 避免不必要的復(fù)雜內(nèi)插指令集而獲得的極大性能節(jié)省超過(guò)了因附加指令而導(dǎo)致的任何這 樣的成本。如針對(duì)圖像數(shù)據(jù)的自適應(yīng)濾波的各實(shí)施例所描述的,除視頻回放之外,色彩相似 性度量的概念可有效地適用于各種各樣的圖形上下文。
4
附圖簡(jiǎn)述參考附圖進(jìn)一步描述用于圖像變換過(guò)程的自適應(yīng)濾波的各實(shí)施例,附圖中
圖1示出用于確定目標(biāo)圖像中的像素值的圖像變換過(guò)程的框圖;圖2是示出用于基于源圖像中的像素的色值差來(lái)選擇像素變換算法的一般過(guò)程 的框圖;圖3是示出用于基于源圖像中的像素的色值是否基本相似來(lái)選擇像素變換算法 的過(guò)程的框圖;圖4是示出計(jì)算系統(tǒng)中的用于基于源圖像中的像素的色值差來(lái)選擇像素變換算 法的一組總體動(dòng)作的流程圖;圖5是示出計(jì)算系統(tǒng)中的用于基于源圖像中的像素的色值是否基本相似來(lái)選擇 像素變換算法的一組動(dòng)作的流程圖;圖6示出用于確定目標(biāo)圖像變換中的像素值的各向異性濾波過(guò)程的框圖;圖7是示出用于基于源圖像的一段中的像素的色值是否基本相似來(lái)選擇用于各 向異性濾波過(guò)程的混合算法的過(guò)程的框圖;圖8是示出用于基于源圖像的一段中的像素的色值是否基本相似來(lái)選擇用于各 向異性濾波過(guò)程的混合算法的一組動(dòng)作的流程圖;圖9是示出用于根據(jù)此處描述的各實(shí)施例變換圖像的各種技術(shù)之間的性能折衷 的優(yōu)化的一方面的框圖;圖10是示出用于確定兩個(gè)像素之間的色距的非限制性方式的框圖;圖11是示出用于基于一組像素之間的色距來(lái)計(jì)算色彩相似性度量的各非限制性 方式的框圖;圖12是示出其中被用來(lái)確定選擇什么目標(biāo)像素值計(jì)算算法的一個(gè)或多個(gè)閾值色 彩相似性基于動(dòng)態(tài)圖像特性而實(shí)時(shí)地改變的實(shí)施例的框圖;圖13是表示其中可實(shí)現(xiàn)一個(gè)或多個(gè)實(shí)施例的示例性、非限制性網(wǎng)絡(luò)化環(huán)境的框 圖;以及圖14是表示其中可實(shí)現(xiàn)本發(fā)明的各方面的示例性、非限制性計(jì)算系統(tǒng)或操作環(huán) 境的框圖。詳細(xì)描述概覽如在背景中所討論的,在呈現(xiàn)圖像時(shí),如由于從源圖像分辨率到顯示器分辨率的 改變,它們通常經(jīng)歷從源圖像中表示的像素到目標(biāo)圖像中表示的像素的尺寸和/或透視的 改變。在這些情況下,當(dāng)像素在目標(biāo)圖像中的位置與像素在源圖像中的位置不在一對(duì)一的 基礎(chǔ)上精確對(duì)應(yīng)的任何時(shí)候,通常執(zhí)行重新采樣操作,這可以是用于確定目標(biāo)圖像的每一 像素的結(jié)果色值的任何算法,例如鄰近像素、源圖像中的鄰近像素的混合、跨源圖像的部分 或全部像素所應(yīng)用的窗口濾波等。類似地,大多數(shù)時(shí)候,當(dāng)在屏幕上繪制紋理形狀時(shí),在不對(duì)紋理像素(texel)進(jìn)行 任何重新采樣的情況下,該紋理不與其所存儲(chǔ)的完全一樣來(lái)顯示。結(jié)果,大多數(shù)像素最終使 用紋理上的在紋理像素“之間”的點(diǎn)。將源圖像調(diào)整大小或重新采樣成目標(biāo)圖像的一示例 性、非限制性圖像變換操作在圖1中概括地示出。
在圖1中,可以將源圖像10的大小調(diào)整成具有更多像素的目標(biāo)圖像20,但為避免 疑惑,調(diào)整大小還適用于具有更少像素的目標(biāo)圖像,并且調(diào)整大小可獨(dú)立地應(yīng)用于垂直或 水平軸。使用這一調(diào)整大小操作,目標(biāo)圖像20中的目標(biāo)像素位置22對(duì)應(yīng)于源圖像10中的 像素位置12,但如圖所示,像素位置12落在兩個(gè)或更多個(gè)像素之間。就此,像素位置12落 在源圖像中的、目標(biāo)像素位置所映射到的最接近像素14中,例如源圖像中的四個(gè)最接近像素。如上所述,存在可用來(lái)計(jì)算目的地像素或紋理像素值的各種常規(guī)算法,其中目的 地像素或紋理像素位置映射回源圖像中的像素或紋理像素之間的某一位置。常規(guī)算法中的 每一種都具有性能折衷,這使它們?cè)诓煌那闆r下合乎需要。一開始過(guò)于簡(jiǎn)化一些,一些算 法相對(duì)簡(jiǎn)單且快速,但只在特定情況下有效,否則它們可能將諸如區(qū)塊效應(yīng)(blockiness) 等偽像引入結(jié)果圖像。其他算法更加復(fù)雜但結(jié)果更緩慢,但卻在更一般情況下有效,即使是 在色值在源圖像上快速和/或不可預(yù)測(cè)地變化的情況下也有效。其他算法表示這些極端之 間的各種性能折衷。因此,在以下描述的各實(shí)施例中,提供了在基于與被變換的像素相關(guān)聯(lián)的動(dòng)態(tài)條 件變換圖像時(shí)使得能夠?qū)崿F(xiàn)混合性能折衷的自適應(yīng)濾波技術(shù)。在一個(gè)實(shí)施例中,試探指的 是引入色彩相似性值來(lái)驅(qū)動(dòng)哪一算法適用于確定目標(biāo)圖像的目標(biāo)像素值。基于從來(lái)自源圖 像的與目標(biāo)圖像中的目標(biāo)像素相對(duì)應(yīng)的像素確定的色彩相似性值,應(yīng)用適當(dāng)?shù)膬?nèi)插技術(shù)。 例如,在一個(gè)非限制性實(shí)施例中,在色彩相似性值指示源圖像中的像素之間的高度色彩相 似性的情況下執(zhí)行最接近鄰居內(nèi)插,在色彩相似性值表示源像素的高度不相似色彩的情況 下執(zhí)行雙線性或雙三次內(nèi)插。用于圖像變換過(guò)程的自適應(yīng)濾波一般而言,為維持視頻的良好質(zhì)量,在縮放結(jié)果以適合所需目標(biāo)時(shí)應(yīng)對(duì)結(jié)果進(jìn)行 濾波。不幸的是,具有最高性能特性的、在變換圖像數(shù)據(jù)時(shí)能夠解決源圖像中的快速變化圖 像數(shù)據(jù)的算法(例如,雙線性內(nèi)插、雙三次內(nèi)插等)是相當(dāng)CPU密集的。因此,對(duì)于更簡(jiǎn)單 快速的算法表現(xiàn)相同、更好、或幾乎一樣好的許多像素變換,盲目應(yīng)用這些算法通常“做得 過(guò)度”。盡管在時(shí)間或成本(考慮任何增加的硬件要求)不是限制時(shí)“過(guò)度復(fù)雜來(lái)實(shí)現(xiàn)更優(yōu) 結(jié)果”是可以接受的,但經(jīng)調(diào)整大小的視頻的實(shí)時(shí)呈現(xiàn)可能不能夠承受對(duì)整個(gè)視頻序列的 每一源圖像所遇到的每一像素變換過(guò)程采用高昂內(nèi)插算法的奢侈。就此,大多數(shù)視頻序列的現(xiàn)實(shí)是色值在視頻序列的任何源圖像中的任何給定小段 (locus)像素上的高度變化的概率很低。換言之,視頻圖像中的大多數(shù)區(qū)域可以通過(guò)平滑色 彩過(guò)渡或淡變來(lái)表征,例如在墻、桌、窗、臉、襯衫等的表面可找到的,其中跨該表面預(yù)期有 相同或相似的色彩。相反,就圖像的總體百分比而言,圖像的非常小的一部分通常涉及對(duì)人 眼的任何顯著程度的色彩變化,例如通常,在將源圖像變換成目標(biāo)圖像時(shí)所牽涉的圖像變 換過(guò)程中小于大約5-20%可從計(jì)算上密集的內(nèi)插受益。5-20%的范圍不是固定范圍,并且 可從計(jì)算上密集的內(nèi)插受益的像素的實(shí)際百分比取決于圖像數(shù)據(jù)本身,但此處使用該示例 范圍來(lái)示出從高質(zhì)量?jī)?nèi)插算法受益的圖像變換過(guò)程的少數(shù)量。同樣,這是由于圖像的大部 分是平滑的觀察結(jié)果。這造成以下觀察結(jié)果在此處描述的各實(shí)施例中顯而易見的,如果快速地執(zhí)行則 即使在原始表面的色彩的鄰域中的壞的猜測(cè)也可對(duì)大約80-95%的圖像變換過(guò)程表現(xiàn)良好,同時(shí)可以對(duì)將受益的5-20%的操作保留一個(gè)或多個(gè)更高質(zhì)量算法。因此,在一個(gè)實(shí)施例 中,基于源圖像中的與圖像變換過(guò)程的目標(biāo)圖像中的目標(biāo)像素位置相關(guān)的像素集合來(lái)確定 相似性度量。因此,在各非限制性實(shí)施例中,提供了用于將來(lái)自源圖像的像素或紋理像素?cái)?shù)據(jù) 重新采樣成目標(biāo)圖像中的對(duì)應(yīng)位置的自適應(yīng)圖像變換技術(shù)。在一個(gè)實(shí)施例中,提供了一種算法,該算法在逐像素的基礎(chǔ)上確定是否將從一個(gè) 或多個(gè)高級(jí)算法發(fā)生好處,并且如果否,則選擇將產(chǎn)生良好或至少相似結(jié)果的較便宜的較 不復(fù)雜的和/或較快速的算法。圖2示出該一般實(shí)施例,其中對(duì)于要從對(duì)源圖像進(jìn)行某種方 式的變換來(lái)生成的目標(biāo)圖像的每一像素230,首先發(fā)生對(duì)源圖像的映射到像素230的源像 素200的評(píng)估。這一評(píng)估確定像素鄰域200的像素“在色彩上有多接近”。因此,如圖所示, 選擇在源圖像中映射到像素位置230的位置的四個(gè)最接近像素,分別具有色值Cll、C12、 C21、以及C22。因此,取決于205處的評(píng)估色值差的函數(shù),隨后自適應(yīng)地選擇一算法來(lái)使用 適當(dāng)復(fù)雜度的算法。在一個(gè)非限制性實(shí)現(xiàn)中,例如,首先在C11-C21和C12-C22之間內(nèi)插一個(gè)點(diǎn),并隨 后在該點(diǎn)處執(zhí)行色彩比較以確定鄰域200中的色彩相似性。實(shí)際上,這樣的實(shí)現(xiàn)是有利的, 因?yàn)槠洚a(chǎn)生在認(rèn)為鄰域200中的色彩基本上不相似的情況下對(duì)雙線性內(nèi)插仍然有用結(jié)果。 即使對(duì)于可接受結(jié)果不需要雙線性內(nèi)插,C11-C21和C12-C22之間的內(nèi)插仍然可輸出給若 干像素以用于縮放操作。例如,如果色值差處于針對(duì)任意色彩描繪的第一容許范圍內(nèi)(實(shí)際上描繪灰度, 但本領(lǐng)域技術(shù)人員可以明白,可以使用根據(jù)任何任意色彩模型的任何任意色彩),即如果像 素鄰域200包括充分相似色彩的像素,則可以選擇用于從源圖像進(jìn)行采樣的簡(jiǎn)單算法來(lái)形 成目標(biāo)像素位置230的值。例如,在此類情況下,可以采用以下算法其是色值Cll、C12、 C21、或C22中的任一個(gè),因?yàn)樗鼈兌际窍嗨粕?。作為處于第一容許范圍200內(nèi)的閾值可 以試探式地設(shè)置,或通過(guò)設(shè)置在人眼的平均能力所規(guī)定的色差檢測(cè)閾值內(nèi)來(lái)設(shè)置。類似地,如果像素鄰域200的色值差規(guī)定根據(jù)第二容許范圍215的色彩相似性,例 如源像素200有點(diǎn)相似但也有點(diǎn)不相似,則基于第一替換過(guò)程235 (例如,雙線性內(nèi)插)來(lái) 確定目標(biāo)像素位置230的色值。這適用于N個(gè)容許范圍,以使得在像素鄰域200的色值差規(guī)定根據(jù)第N個(gè)容許范 圍210的色彩相似性的情況下,例如源像素200的色彩高度不相似,則可以使用第(N-1)個(gè) 替換過(guò)程250 (如雙三次內(nèi)插)。就此,在205評(píng)估的色彩相似性度量使得能夠快速確定結(jié) 果內(nèi)插過(guò)程需要多復(fù)雜。通常,執(zhí)行算法240在目標(biāo)圖像中并不產(chǎn)生危害或不可檢測(cè)的危 害,在這種情況下,性能通過(guò)此處描述的自適應(yīng)濾波技術(shù)而顯著增強(qiáng)。圖3是示出采用閾值色彩相似性評(píng)估來(lái)確定從源圖像的像素鄰域300如何內(nèi)插到 目標(biāo)像素位置330的值的自適應(yīng)濾波的實(shí)施例的框圖。就此,如果色彩Cll、C12、C21、和 C22是閾值色彩相似性的,如色值320的情況,則選擇簡(jiǎn)單算法340,該算法選擇例如最接近 的鄰居。該附圖中的最接近鄰居是像素鄰域300的右上象限的源像素,并且因此向目標(biāo)像 素位置330分配值C12。然而,如果色彩C11、C12、C21、和C22不是彼此閾值相似性的,如色 值310所示,則可采用更精確的內(nèi)插技術(shù)350來(lái)執(zhí)行內(nèi)插,例如使用雙線性內(nèi)插。圖4是示出根據(jù)此處描述的實(shí)施例的用于執(zhí)行自適應(yīng)濾波的總體過(guò)程的流程圖。在400,對(duì)于目標(biāo)像素空間的每一像素位置,標(biāo)識(shí)源圖像中的對(duì)應(yīng)的像素集合。在410,測(cè)量 源圖像中的像素集合的色值的相似性。在420,基于所測(cè)量的像素集合的色彩的相似性,選 擇或挑選將設(shè)定目標(biāo)像素位置的色值的算法。隨后,如步驟430、40、450及以后的步驟所表 示的,取決于在410確定的色彩相似性落入的色彩相似性范圍,可以選擇任何數(shù)量的不同 算法來(lái)執(zhí)行目標(biāo)像素的值的內(nèi)插。例如,盡管存在多種計(jì)算“色彩相似性”的方式,但一種方式是觀察差別相對(duì)于最 大差別(如100%差別,其中兩種色彩在色譜的兩端)的百分比是什么。因此,在一個(gè)實(shí)施 例中,在430,如果來(lái)自源圖像的像素集合的色彩充分相似,例如在0% -5%的色彩差別內(nèi), 則根據(jù)最接近鄰居技術(shù)將目標(biāo)圖像的像素位置的色值設(shè)為該像素集合中的一個(gè)像素的色 值。隨后,盡管對(duì)給定應(yīng)用可以選擇多種不同的具體范圍和值,但可以選擇另一算法(例 如,雙線性內(nèi)插)來(lái)處理源像素集合的色彩指示大約5-10%的色彩差別的情況。類似地,如 果源像素集合的色彩指示大約10-25%的色彩差別,則在450,可以應(yīng)用又一算法(例如雙 三次),并且對(duì)于設(shè)計(jì)者定義的那樣多或那樣少的范圍或差別容限依此類推。圖5示出其中確定閾值色彩相似性的存在并且規(guī)定采用簡(jiǎn)單還是更復(fù)雜內(nèi)插技 術(shù)的非限制性實(shí)施例。如圖所示,在500,對(duì)于目標(biāo)像素空間的每一像素位置,確定源圖像中 的對(duì)應(yīng)像素集合。在510,如果該像素集合的色值之間的計(jì)算得到的色距不超過(guò)(即小于) 閾值距離,則在520,采用最接近鄰居內(nèi)插。如果否,則在530,通過(guò)諸如雙線性內(nèi)插、雙三次 內(nèi)插等更高質(zhì)量算法來(lái)確定該像素位置的色值。例如,在將圖像轉(zhuǎn)移到屏幕涉及調(diào)整大小變換時(shí),應(yīng)用其中不需要復(fù)雜度的較快 算法的凈效果是顯著地降低了將圖像轉(zhuǎn)移到屏幕所花費(fèi)的時(shí)間。因此,提供了用于從盤或 從流傳輸網(wǎng)絡(luò)源實(shí)時(shí)地呈現(xiàn)視頻數(shù)據(jù)的基本上更好的體驗(yàn),因?yàn)闇p輕了因呈現(xiàn)流水線中的 計(jì)算瓶頸而導(dǎo)致的影響。在采用沒有當(dāng)今專用硬件的好處的主要軟件呈現(xiàn)技術(shù)的情況下, 這具有更多好處。然而,應(yīng)當(dāng)注意,此處描述的各實(shí)施例對(duì)硬件實(shí)現(xiàn)也實(shí)現(xiàn)了性能增益。作為一個(gè)觀察結(jié)果,根據(jù)對(duì)來(lái)自各媒體流的樣本圖像運(yùn)行的測(cè)試,顯示出自適應(yīng) 濾波算法的實(shí)現(xiàn)比現(xiàn)有實(shí)現(xiàn)平均每像素花費(fèi)小35%到50%,包括雙線性和雙三次內(nèi)插的 實(shí)現(xiàn)。圖6示出稱為各向異性濾波的另一圖形圖像變換過(guò)程,作為對(duì)象的透視變化的一 部分,該過(guò)程幫助目標(biāo)圖像在該對(duì)象退回背景或進(jìn)入前景時(shí)保留該對(duì)象的銳度。形成經(jīng)濾 波圖像620以將圖像數(shù)據(jù)表示成針對(duì)透視變化而被重新采樣的圖像數(shù)據(jù)。就此,與上述實(shí) 施例相類似,從源對(duì)象或圖像600的樣本中確定經(jīng)濾波圖像620的每一目標(biāo)像素位置(如 目標(biāo)像素位置622)的色值。一般而言,像素段605最終對(duì)應(yīng)于目標(biāo)像素位置,如目標(biāo)像素 位置622。在這種情況下,混合源圖像600的像素段605以形成目標(biāo)像素位置622的值?;?合多個(gè)像素是昂貴的操作。然而,如圖7所示,如果這一段700的像素包含充分相似的色彩,例如如示出像素 PI、P2、P3、P4、P5、P6、P7、P8、P9、P10的示例相似色彩的像素色值720所示,則可以采用最 接近鄰居方法740,其中最接近像素(例如P8)確定目標(biāo)像素位置730的色值。在其中該段 的色彩基本上不相似的情況下,例如如示例色值710所示,則更精確的混合技術(shù)750可以顧 及像素 PI、P2、P3、P4、P5、P6、P7、P8、P9、以及 P10 的所有色值。上述用于自適應(yīng)各向異性濾波的方法在圖8的流程圖中表示。在800,對(duì)于目標(biāo)像素空間的每一像素位置,確定源圖像中的對(duì)應(yīng)像素集合,例如沿透視線的像素段。在810,如 果該像素集合的色值之間的計(jì)算得到的色距不超過(guò)(即小于)閾值距離,則在820,對(duì)該像 素集合采用簡(jiǎn)單的混合操作。如果否,則在830,通過(guò)更高質(zhì)量算法,如對(duì)該像素集合的全部 像素執(zhí)行加權(quán)混合的算法,來(lái)確定該像素位置的色值。能以高色彩相似性為基礎(chǔ)的較低復(fù)雜度操作的一非限制性示例是輸入沿透視線 的較少樣本來(lái)作為形成輸出的一部分的操作。因此,在沿透視線的色彩高度相似的情況下, 可以使用較少數(shù)量的樣本來(lái)產(chǎn)生目標(biāo)圖像中目標(biāo)位置處的對(duì)應(yīng)色值。相反,在沿透視線的 像素段展示更高的色彩變化程度的情況下,可以使用更多數(shù)量的樣本來(lái)作為輸入,其中最 高的變化程度使用所有樣本來(lái)作為混合操作的一部分以產(chǎn)生目標(biāo)像素值。用于確定可接受沿該段的多少樣本來(lái)計(jì)算目標(biāo)圖像中的像素的色值的另一替換 或補(bǔ)充技術(shù)是確定目標(biāo)圖像中的像素位置距目標(biāo)圖像的查看者有多遠(yuǎn)。在目標(biāo)圖像的像素 位置相對(duì)遠(yuǎn)離目標(biāo)圖像的查看者的情況下,通常需要較多數(shù)量的源樣本來(lái)生成有質(zhì)量的結(jié) 果。相反,在目標(biāo)圖像中的像素位置相對(duì)接近目標(biāo)圖像的查看者的情況下,通常需要較少數(shù) 量的源樣本來(lái)產(chǎn)生可接受的質(zhì)量。圖9是示出此處描述的各實(shí)施例的一般適用性的框圖,其中本發(fā)明的技術(shù)適用于 對(duì)源圖像中的像素集合900、902、…、90n進(jìn)行變換或重新采樣以生成目標(biāo)圖像空間的目標(biāo) 樣本的任何色彩相關(guān)圖像變換。就此,因?yàn)槿搜蹮o(wú)法很好地檢測(cè)到色彩的微小變化,尤其是 在以視頻呈現(xiàn)圖像的速率的情況下,所以可以采用簡(jiǎn)單色彩相似性度量910來(lái)規(guī)定在920 處選擇哪一算法來(lái)進(jìn)行該目標(biāo)像素的變換。與用于處理高度相似色彩內(nèi)容的快速算法相 比,在920選擇并在930執(zhí)行以計(jì)算目標(biāo)像素的色值的這一算法可以具有低復(fù)雜度,因?yàn)樵?這些情況下不可能注意到任何誤差。此外,對(duì)于色彩不相似性的每一等級(jí),可以選擇其他更 復(fù)雜但相對(duì)更慢的算法。因?yàn)閳D像中的大多數(shù)小像素區(qū)域往往具有相似的色彩內(nèi)容,所以 除非需要更精確否則默認(rèn)最接近鄰居方法的一實(shí)施例可以是對(duì)于依賴于源圖像的像素的 色值的任何復(fù)雜圖像變換操作的高效實(shí)現(xiàn)。圖10和圖11是示出用于確定兩個(gè)像素之間的色距的非限制性方式的框圖。例 如,在圖10中,兩個(gè)像素1000、1010分別具有紅、綠、藍(lán)(RGB)色彩空間的色值R1、G1、B1和 R2、G2、B2。計(jì)算像素1000和像素1010之間的色距D的一種方式是計(jì)算各單獨(dú)的分量級(jí)距 離表示紅色分量的距離dl、表示綠色分量的距離d2、以及表示藍(lán)色分量的距離d3。隨后, 可將D作為dl、d2、和d3的任何合理函數(shù)。例如,D可被定義成(dl2+d22+d32)的平方根或 簡(jiǎn)單定義成dl+d2+d3,即在色彩變得更相似或更不相似時(shí)往往增大或減小的任何度量。與RGB色彩空間相反,諸如YUV色彩空間等色彩空間以亮度為基礎(chǔ),并且因而嚴(yán)格 來(lái)講,可以基于人眼的限制來(lái)仔細(xì)地指定距離計(jì)算。在存在時(shí)間的情況下,或在進(jìn)程能以其 他方式進(jìn)行上述實(shí)施例中的任一個(gè)的情況下,可基于人眼的非線性特性來(lái)將源圖像數(shù)據(jù)轉(zhuǎn) 換成色彩模型。然而,實(shí)際上,RGB色彩空間中的色距對(duì)人眼也是有意義的,并且因此發(fā)現(xiàn) 在RGB色彩空間中大約5-10 %差距的閾值差是有效的。圖11還示出即使在定義了用于確定兩個(gè)像素之間的色距的函數(shù)之后,定義像素 集合1100、1110、1120、1130(或任意數(shù)量)的色彩相似性設(shè)計(jì)設(shè)計(jì)度量時(shí)的附加選擇。例 如,在存在四個(gè)像素的情況下,如圖所示,可以確定6個(gè)比較或6個(gè)距離Dl、D2、D3、D4、D5、 以及D6。距離計(jì)算的次數(shù)隨添加到該像素集合的每一像素而增長(zhǎng)。
9
確定像素集合之間的色彩相似性的單個(gè)分?jǐn)?shù)的一種方式是確定作為Dl、D2、D3、 D4、D5、以及D6的函數(shù)的任何函數(shù)1140。例如,函數(shù)1140可以確定D1、D2、D3、D4、D5、以及 D6中的任一個(gè)是否超過(guò)預(yù)定義閾值。另一方式是檢查源圖像中的映射到目的地或目標(biāo)像素 的最接近鄰居像素。在圖11中,假定像素是像素1110。則較快算法可只檢查與最接近鄰 居像素1100的距離,即只計(jì)算Dl、D2、和D5并且將其與預(yù)定義閾值相比較。因此,可以看 到,存在用于形成確定源圖像中的一段像素在色彩方面有多相似的色彩相似性度量的大量 替換。圖12示出顯示用于合并到此處描述的各實(shí)施例中的任一個(gè)的可任選特征的框 圖。如上所述,在1210,基于源圖像中的像素1200、1202、…、120n來(lái)計(jì)算色彩相似性度量 1210。在1220,根據(jù)色彩相似性度量1210并根據(jù)一些預(yù)定義范圍或閾值來(lái)選擇目標(biāo)像素計(jì) 算算法。隨后,在1230采用該算法來(lái)內(nèi)插目標(biāo)像素的色值。同時(shí),在作為視頻序列的一部 分呈現(xiàn)的逐圖像級(jí)別上,可以維護(hù)關(guān)于一個(gè)或多個(gè)過(guò)去或新近圖像的一些數(shù)據(jù)。由于像素 色值的跨圖像并在圖像內(nèi)保持平滑的時(shí)間以及空間趨勢(shì),時(shí)間信息可以通知對(duì)決定哪些算 法適用于給定像素集合的哪些色彩相似性值的范圍或閾值的選擇。例如,假定已經(jīng)處理了最新近圖像的呈現(xiàn)系統(tǒng)知道對(duì)該最新近圖像只選擇了一次 更復(fù)雜的算法(例如,維護(hù)一簡(jiǎn)單計(jì)數(shù)器),并且還知道實(shí)時(shí)視頻呈現(xiàn)要求可以支持在每一 幀中進(jìn)行更復(fù)雜算法的數(shù)千次執(zhí)行。則,可以針對(duì)當(dāng)前幀動(dòng)態(tài)地降低用于在色彩相似性方 面達(dá)到該更復(fù)雜算法的閾值,從而在不采取性能命中的情況下達(dá)到更高質(zhì)量,因?yàn)楫?dāng)前幀 也可能具有高度相似的色彩內(nèi)容。因此,一般而言,正被變換的圖像數(shù)據(jù)的一些已知特性 1250 (例如,對(duì)先前圖像幀的頻率內(nèi)容的一些知識(shí))可被輸入到調(diào)節(jié)組件1240,該組件基于 可用處理帶寬和實(shí)時(shí)需求來(lái)動(dòng)態(tài)地調(diào)節(jié)應(yīng)當(dāng)應(yīng)用哪一計(jì)算算法。在這一方面,通過(guò)將閾值 移位,可以根據(jù)所需折衷來(lái)動(dòng)態(tài)地調(diào)節(jié)圖像變換的質(zhì)量。作為另一非限制性實(shí)施例,在視頻中存在關(guān)鍵幀(對(duì)比增量幀)的情況下,在編碼 中已經(jīng)可以獲得關(guān)于給定幀將改變多少的信息,并且因而在解碼視頻時(shí)可以提取這一信息 中的至少一些并將其用于動(dòng)態(tài)地調(diào)節(jié)一個(gè)或多個(gè)色彩相似性閾值來(lái)達(dá)到最優(yōu)折衷。與用于與自適應(yīng)濾波技術(shù)一起使用的各替換濾波算法相關(guān)的補(bǔ)充上下文對(duì)于關(guān)于在可以從一個(gè)或多個(gè)復(fù)雜算法得到好處的情況下從簡(jiǎn)單算法回退到該 一個(gè)或多個(gè)復(fù)雜算法的各替換自適應(yīng)濾波實(shí)現(xiàn)的進(jìn)一步的補(bǔ)充上下文,以下描述概括地描 述了該一個(gè)或多個(gè)復(fù)雜算法的一些替換。作為一般背景,認(rèn)為位圖是在每一像素上采樣的, 而非超采樣(多于每像素一個(gè)數(shù)據(jù)點(diǎn))或次采樣(少于每像素一個(gè)數(shù)據(jù)點(diǎn))。對(duì)該位圖重 新采樣涉及創(chuàng)建覆蓋在像素上的樣本網(wǎng)格。根據(jù)每一網(wǎng)格點(diǎn)與每一像素的原始中心相距多 遠(yuǎn),并根據(jù)使用的是什么重新采樣算法,向新樣本點(diǎn)給出色值。位圖重新采樣背后的數(shù)學(xué)是兩個(gè)空間變量之間的多變量?jī)?nèi)插,并且對(duì)每一色彩通 道分開執(zhí)行,其概括了對(duì)位圖重新采樣可用的方法。最簡(jiǎn)單的多變量方法被稱為最接近鄰 居或點(diǎn)采樣。使用與每一樣本網(wǎng)格點(diǎn)最接近的像素中心,而沒有來(lái)自其他周圍像素的輸入。 最接近鄰居內(nèi)插因而是用于一個(gè)或多個(gè)維度的多變量?jī)?nèi)插的簡(jiǎn)單方法。內(nèi)插是在給定圍繞某些空間中的非給定點(diǎn)的各點(diǎn)的一些值的情況下逼近該點(diǎn)的 值的問題。最接近鄰居算法簡(jiǎn)單地選擇最接近點(diǎn)的值,并且根本不考慮其他鄰近點(diǎn)的值,從 而產(chǎn)生分段恒定的內(nèi)插。
由于其相似性,有時(shí)結(jié)合多列直插映射(mipmapping) —起使用的最接近鄰居方 法對(duì)某幾種應(yīng)用也是有效的,但對(duì)其他應(yīng)用并不一樣有效。與以下描述的更復(fù)雜算法形成 對(duì)比,最接近鄰居算法相對(duì)快速,但引入注意得到的圖像偽像,尤其是在被調(diào)整大小的具有 高色彩變化級(jí)別的圖像區(qū)域中(例如,一般對(duì)應(yīng)于高頻內(nèi)容)??偠灾?,使用最接近鄰居方法,新位圖網(wǎng)格基本上覆蓋在原始網(wǎng)格上,并且使用 最接近新目標(biāo)像素的坐標(biāo)的那一原始像素坐標(biāo)的值。最接近鄰居方法在處理方面也是簡(jiǎn)單 系統(tǒng),其具有圖像中使用的色彩是不變的直接優(yōu)點(diǎn),這在處理其中色彩調(diào)色板已經(jīng)有限且 固定的經(jīng)索引的圖形交換文件(GIF)圖像時(shí)是有益的。作為最接近鄰居方法的不足,每一輸出像素的坐標(biāo)不可能直接覆蓋原始像素的坐 標(biāo),并且在每一圖像內(nèi),一些像素將是比其他像素更接近的匹配。另外,在目標(biāo)圖像中可能 丟棄許多原始像素,而其他像素可能被使用超過(guò)一次。例如,這可在圖像變換涉及源圖像的 旋轉(zhuǎn)的情況下發(fā)生。像素值選擇的任意性在造成快速選擇的同時(shí)還導(dǎo)致對(duì)圖像特征的“分 解”,尤其是成角度線和其他強(qiáng)烈色彩對(duì)比特征,這導(dǎo)致“階梯”、“鋸齒”、和/或用于圖像中 的失真或誤差的其他行業(yè)術(shù)語(yǔ)。如上所述,大多數(shù)時(shí)間,當(dāng)在呈現(xiàn)期間在屏幕上繪制紋理形狀或調(diào)整圖像的大小 時(shí),該紋理或源圖像各自不在沒有任何失真的情況下與其所存儲(chǔ)的完全一樣地顯示,即,大 多數(shù)像素映射回該紋理或源圖像上的分別在兩個(gè)或更多個(gè)紋理像素或像素之間的點(diǎn)。就 此,作為最接近鄰居技術(shù)的替換,雙線性濾波使用這些點(diǎn)來(lái)在最接近該像素所表示的點(diǎn)的 四個(gè)紋理像素或四個(gè)像素之間執(zhí)行雙線性內(nèi)插。雙線性濾波是用于在顯示成在任何維度上 大于或小于它們實(shí)際的大小時(shí)對(duì)紋理進(jìn)行平滑的紋理濾波方法。雙線性濾波相當(dāng)精確,直至紋理縮放伸縮到該紋理的原始大小的一半以下的點(diǎn)或 雙倍以上的點(diǎn)——即,如果紋理在每一方向上都是256個(gè)像素,則因?yàn)閬G失像素或過(guò)多平 滑,將其縮放到128個(gè)像素以下或512個(gè)像素以上都可產(chǎn)生差的結(jié)果。通常,使用多列直插 映射來(lái)提供紋理的縮小版本以在經(jīng)縮小的多列直插映射級(jí)別獲得更好的性能和更好的圖 像質(zhì)量;然而,使用雙線性濾波,紋理上兩個(gè)不同大小的多列直插映射之間的過(guò)渡在透視上 是陡峭的。此外,多列直插映射本身構(gòu)建起來(lái)在計(jì)算上是昂貴的,這可能影響視頻應(yīng)用或服 務(wù)的實(shí)時(shí)變換要求。三線性濾波雖然有點(diǎn)更復(fù)雜且執(zhí)行起來(lái)更昂貴,但可以使該過(guò)渡到處都更平滑。 就此,開銷自身可表現(xiàn)為用于更快地執(zhí)行固定指令集的更昂貴硬件的成本,或者開銷自身 還可表現(xiàn)為平均必須執(zhí)行的算法指令數(shù)量的增加并且因而表現(xiàn)為花費(fèi)來(lái)執(zhí)行該算法的時(shí) 間量的增加。三線性濾波因而是雙線性紋理濾波方法的擴(kuò)展,其還執(zhí)行多列直插映射之間 的線性內(nèi)插。雙線性濾波具有使其在許多情況下成為不具吸引力的選擇的若干缺點(diǎn)在縮放到 非常小的大小的時(shí)候?qū)⑵溆糜谌?xì)節(jié)紋理會(huì)因丟失紋理像素而造成準(zhǔn)確性問題,并且通過(guò) 在整個(gè)多邊形中使用多個(gè)多列直插映射來(lái)補(bǔ)償這一點(diǎn)導(dǎo)致模糊度的陡峭變化,這在相對(duì)于 照相機(jī)成尖銳角度的多邊形中是最明顯的。為解決這一問題,三線性濾波在最接近該像素 處的多邊形所需的細(xì)節(jié)的兩個(gè)多列直插映射上的雙線性濾波的結(jié)果之間進(jìn)行內(nèi)插,但同樣 要注意三線性濾波的附加開銷。三線性濾波也是次最優(yōu)的,因?yàn)槿匀患俣ㄏ袼卦诩y理上占據(jù)正方形區(qū)域。具體而言,在紋理與照相機(jī)相比成陡峭角度時(shí),可能丟失細(xì)節(jié),因?yàn)橄袼貙?shí)際上占據(jù)窄但長(zhǎng)的不規(guī) 則四邊形在窄方向上,該像素得到來(lái)自比其實(shí)際所覆蓋的紋理像素更多紋理像素的信息, 所以模糊了細(xì)節(jié),并且在長(zhǎng)方向上,該像素得到來(lái)自比其實(shí)際所覆蓋的紋理像素更少紋理 像素的信息,所以細(xì)節(jié)落在像素之間。為減輕這一點(diǎn),可以使用各向異性(即方向無(wú)關(guān))濾 波。在計(jì)算機(jī)圖形學(xué)中,各向異性濾波(有時(shí)簡(jiǎn)稱為AF)是一種增強(qiáng)在相對(duì)于照相機(jī) 呈傾斜視角的表面上的紋理的圖像質(zhì)量的方法,其中紋理的投影(與該紋理在其上呈現(xiàn)的 多邊形或其他圖元相比)顯得是非正交的。如雙線性和三線性濾波一樣,各向異性濾波消 除了混疊效果,但在極端查看角度引入較少模糊并且因而保留更多細(xì)節(jié)。各向異性濾波通 常在計(jì)算上是相對(duì)昂貴的,但適用標(biāo)準(zhǔn)空間_時(shí)間折衷規(guī)則。各向異性濾波當(dāng)今在現(xiàn)代圖 形硬件中是常見的,并且由用戶通過(guò)驅(qū)動(dòng)程序設(shè)置或經(jīng)由編程接口通過(guò)圖形應(yīng)用程序和視 頻游戲來(lái)啟用。在數(shù)學(xué)子域數(shù)值分析中,雙三次內(nèi)插是一種在兩個(gè)維度進(jìn)行多變量?jī)?nèi)插的方法。 就此,只在離散的點(diǎn)處具有已知值的兩變量函數(shù)可以使用內(nèi)插在這些離散的點(diǎn)之間逼近, 并且術(shù)語(yǔ)“雙三次”指的是經(jīng)內(nèi)插的表面在各處都是連續(xù)的,并且在一階導(dǎo)數(shù)中在所有方向 上也連續(xù),這意味著值的變化率是連續(xù)的。盡管比雙線性內(nèi)插更復(fù)雜且更慢,但從圖像質(zhì)量觀點(diǎn)來(lái)看,雙三次內(nèi)插一般表現(xiàn) 得更好。結(jié)果,對(duì)于許多非實(shí)時(shí)呈現(xiàn)應(yīng)用,雙三次算法通常用于縮放圖像和視頻以供顯示, 因?yàn)橐阎湟话惚A艟?xì)的細(xì)節(jié),例如如在面紗或服裝中的花邊中可找到的,這比雙線性 算法更好。Lanczos重新采樣是用于通過(guò)重新采樣來(lái)使數(shù)字圖像更大或更小的另一多變量?jī)?nèi) 插方法。使用Lanczos重新采樣,最終值是原始值的基于與原始圖像的相對(duì)位置的加權(quán)和, 其中加權(quán)是由Lanczos加權(quán)sine函數(shù)給出的。Lanczos技術(shù)采用歸一化sine函數(shù)的加窗 (windowed)積來(lái)作為用于圖像重新采樣的卷積核。spline內(nèi)插是一種形式的內(nèi)插,其中內(nèi)插是稱為spline的一種特殊分段多項(xiàng)式。 spline內(nèi)插比多項(xiàng)式內(nèi)插優(yōu)選,因?yàn)榧词乖趯⒌痛味囗?xiàng)式用于spline時(shí)也可以使內(nèi)插誤 差很小。其他線性濾波器也是已知的Lanczos、Mitchell、Catmull-Rom、以及其他spline??偠灾?,線性重新采樣方法表示三個(gè)偽像之間的折衷模糊、混疊、以及振鈴 (ringing)。模糊是圖像銳度的損失。這可以在使用雙線性或雙三次內(nèi)插來(lái)放大的圖像上 看到?;殳B表現(xiàn)為鋸齒邊緣(在放大期間)或波紋圖案(在縮小期間)。其存在于使用所 有線性方法放大的圖像中,但其在最接近鄰居、雙三次、以及雙線性方法中最為可見。振鈴也被稱為Gibbs現(xiàn)象,表現(xiàn)為光環(huán)邊緣。其在sine、Lanczos、以及雙三次方 法中清晰可見。一些少量振鈴提高了圖像的感知銳度,但大量振鈴是不合需要的。因此,可 以看到,不同的內(nèi)插方法產(chǎn)生非常不同的結(jié)果并且實(shí)現(xiàn)起來(lái)具有不同的復(fù)雜度。結(jié)果,基于 源像素的色彩相似性的自適應(yīng)濾波技術(shù)是平衡這些折衷的高效方式。示例性聯(lián)網(wǎng)和分布式環(huán)境本領(lǐng)域普通技術(shù)人員可以理解,此處描述的各實(shí)施例可以結(jié)合任何計(jì)算機(jī)或其他 客戶機(jī)或服務(wù)器設(shè)備的任何圖形處理系統(tǒng)或子系統(tǒng)來(lái)實(shí)現(xiàn),這些設(shè)備可作為計(jì)算機(jī)網(wǎng)絡(luò)的 一部分來(lái)部署或部署在分布式計(jì)算環(huán)境中并可連接到任何種類的數(shù)據(jù)存儲(chǔ)。就此,自適應(yīng)濾波技術(shù)可涉及任何計(jì)算機(jī)系統(tǒng)或環(huán)境,其具有任意數(shù)量的存儲(chǔ)器或存儲(chǔ)單元,以及發(fā)生 在任意數(shù)量的存儲(chǔ)單元或卷上的任意數(shù)量的應(yīng)用程序和進(jìn)程,它們可結(jié)合根據(jù)此處的實(shí)施 例的變換圖像技術(shù)來(lái)使用。分布式計(jì)算通過(guò)計(jì)算設(shè)備和系統(tǒng)之間的交換提供了計(jì)算機(jī)資源和服務(wù)的共享。這 些資源和服務(wù)包括信息的交換、對(duì)于諸如圖形數(shù)據(jù)等對(duì)象的高速緩存存儲(chǔ)和盤存儲(chǔ)。分布 式計(jì)算利用網(wǎng)絡(luò)連接,從而允許客戶機(jī)利用它們的集體力量來(lái)使整個(gè)企業(yè)受益。就此,各種 設(shè)備可具有可整體或部分地執(zhí)行此處描述的圖像處理實(shí)施例中的一個(gè)或多個(gè)的應(yīng)用程序、 對(duì)象、或資源。圖13提供了示例性的聯(lián)網(wǎng)或分布式計(jì)算環(huán)境的示意圖。該分布式計(jì)算環(huán)境包括 服務(wù)器計(jì)算對(duì)象或設(shè)備1310、1312等,和計(jì)算對(duì)象或設(shè)備1320、1322、1324、1326、1328等。 這些對(duì)象可包括程序、方法、數(shù)據(jù)存儲(chǔ)、可編程邏輯等等。這些對(duì)象可包括諸如PDA、音頻/ 視頻設(shè)備、MP3播放器、個(gè)人計(jì)算機(jī)、移動(dòng)電話等相同或不同設(shè)備的各部分。每一對(duì)象可通 過(guò)通信網(wǎng)絡(luò)1300與另一對(duì)象通信。網(wǎng)絡(luò)1300本身可以包括向圖13的系統(tǒng)提供服務(wù)的其 他計(jì)算對(duì)象和計(jì)算設(shè)備,且其本身還可以表示多個(gè)互連的網(wǎng)絡(luò)。每一對(duì)象或設(shè)備1310、1312 等或1320、1322、1324、1326、1328等可包含可利用API或其他對(duì)象、軟件、固件、和/或硬件 的適用于執(zhí)行此處描述的圖像變換過(guò)程的各實(shí)施例中的任一個(gè)的應(yīng)用程序。存在支持分布式計(jì)算環(huán)境的各種系統(tǒng)、組件和網(wǎng)絡(luò)配置。例如,計(jì)算系統(tǒng)可以通過(guò) 有線或無(wú)線系統(tǒng)、本地網(wǎng)絡(luò)或廣泛分布的網(wǎng)絡(luò)連接在一起。當(dāng)前,許多網(wǎng)絡(luò)被耦合至因特 網(wǎng),后者為廣泛分布的計(jì)算提供了基礎(chǔ)結(jié)構(gòu)并包含許多不同的網(wǎng)絡(luò)。這些基礎(chǔ)結(jié)構(gòu)中的任 一個(gè)都可用于使得易于進(jìn)行此處描述的圖像變換過(guò)程的示例性通信。例如,在其中圖像數(shù) 據(jù)從媒體服務(wù)器持續(xù)流傳輸?shù)匠尸F(xiàn)客戶機(jī)設(shè)備的流視頻應(yīng)用中,客戶機(jī)和/或軟件媒體呈 現(xiàn)客戶機(jī)應(yīng)用或服務(wù)處的媒體呈現(xiàn)硬件可利用該基于色彩相似性的自適應(yīng)技術(shù)以高效地 實(shí)時(shí)呈現(xiàn)圖像數(shù)據(jù)。因此,網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)允許各種各樣的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),諸如客戶機(jī)/服務(wù)器、對(duì)等、 或混合體系結(jié)構(gòu)?!翱蛻魴C(jī)”是使用與它無(wú)關(guān)的另一類或組的服務(wù)的一個(gè)類或組中的成員。 由此,在計(jì)算時(shí),客戶機(jī)是進(jìn)程,即,粗略地而言是一組請(qǐng)求由另一程序提供的服務(wù)的指令 或任務(wù)??蛻魴C(jī)進(jìn)程利用所請(qǐng)求的服務(wù),而不必“知道”有關(guān)其他程序或服務(wù)本身的任何工 作細(xì)節(jié)。在客戶機(jī)/服務(wù)器體系結(jié)構(gòu)中,尤其在網(wǎng)絡(luò)化系統(tǒng)中,客戶機(jī)通常是訪問由例如 服務(wù)器等另一計(jì)算機(jī)提供的共享的網(wǎng)絡(luò)資源的計(jì)算機(jī)。在圖13的圖示中,作為示例,計(jì)算 機(jī)1320、1322、1324、1326、1328等可以被認(rèn)為是客戶機(jī),而計(jì)算機(jī)1310、1312等可以被認(rèn)為 是服務(wù)器,其中服務(wù)器1310、1312等維護(hù)隨后被復(fù)制到客戶計(jì)算機(jī)1320、1322、1324、1326、 1328等的數(shù)據(jù),但取決于環(huán)境,任何計(jì)算機(jī)都可被認(rèn)為是客戶機(jī)、服務(wù)器或兩者。這些計(jì)算 設(shè)備中的任一個(gè)可以結(jié)合根據(jù)此處描述的實(shí)施例中的任一個(gè)所執(zhí)行的圖像變換操作來(lái)接 收、發(fā)送、存儲(chǔ)、或處理數(shù)據(jù)。服務(wù)器通常是可通過(guò)諸如因特網(wǎng)或無(wú)線網(wǎng)絡(luò)基礎(chǔ)架構(gòu)等遠(yuǎn)程網(wǎng)絡(luò)或本地網(wǎng)絡(luò)訪 問的遠(yuǎn)程計(jì)算機(jī)系統(tǒng)??蛻魴C(jī)進(jìn)程可以在第一計(jì)算機(jī)系統(tǒng)中活動(dòng),而服務(wù)器進(jìn)程可以在第 二計(jì)算機(jī)系統(tǒng)中活動(dòng),它們通過(guò)通信介質(zhì)彼此通信,從而提供分布式功能并允許多個(gè)客戶 機(jī)利用服務(wù)器的信息收集能力。用于執(zhí)行此處所描述的圖像變換操作的技術(shù)所使用的任何 軟件對(duì)象因此可分布在多個(gè)計(jì)算設(shè)備或?qū)ο笊稀?br>
13
例如,在其中通信網(wǎng)絡(luò)/總線1300是因特網(wǎng)的網(wǎng)絡(luò)環(huán)境中,服務(wù)器1310、1312等 可以是客戶機(jī)1320、1322、1324、1326、1328等通過(guò)諸如HTTP等多種已知協(xié)議中的任一種與 其通信的web服務(wù)器。服務(wù)器1310、1312等也可擔(dān)當(dāng)客戶機(jī)1320、1322、1324、1326、1328 等,這是分布式計(jì)算環(huán)境的特性。示例性計(jì)算設(shè)備如上所述,其中需要變換圖像數(shù)據(jù)的任何設(shè)備可以使用此處闡明的自適應(yīng)過(guò)程, 例如在根據(jù)與原始圖像數(shù)據(jù)規(guī)定的大小或尺度所不同的任何大小或尺度來(lái)從該原始圖像 數(shù)據(jù)顯示或以其他方式確定圖像數(shù)據(jù)時(shí)。因此,應(yīng)當(dāng)理解,還構(gòu)想了使用所有種類的手持 式、便攜式、以及其他計(jì)算設(shè)備和計(jì)算對(duì)象,即只要設(shè)備可包括圖形處理和/或顯示能方。因此,以下在圖14中描述的通用遠(yuǎn)程計(jì)算機(jī)僅是一個(gè)示例,并且自適應(yīng)濾波過(guò)程 可以用任何獨(dú)立設(shè)備來(lái)實(shí)現(xiàn)或結(jié)合網(wǎng)絡(luò)中的服務(wù)器或客戶機(jī)關(guān)系來(lái)實(shí)現(xiàn)。盡管并非所需, 但自適應(yīng)濾波可以部分地經(jīng)由操作系統(tǒng)來(lái)實(shí)現(xiàn),以供設(shè)備或?qū)ο蟮姆?wù)開發(fā)者使用,和/ 或被包括在應(yīng)用軟件中。軟件可以在由諸如客戶機(jī)工作站、服務(wù)器或其他設(shè)備等一個(gè)或多 個(gè)計(jì)算機(jī)執(zhí)行的諸如程序模塊等計(jì)算機(jī)可執(zhí)行指令的通用上下文中描述。本領(lǐng)域的技術(shù)人 員可以理解,此處描述的各替換實(shí)施例可以用其他計(jì)算機(jī)系統(tǒng)配置和協(xié)議來(lái)實(shí)施。因此,圖14示出了合適的計(jì)算系統(tǒng)實(shí)現(xiàn)環(huán)境1400的示例,但如上所述,計(jì)算系統(tǒng) 環(huán)境1400僅是合適的計(jì)算環(huán)境的一個(gè)示例,并且不旨在對(duì)此處描述的各實(shí)施例的使用范 圍或功能提出任何限制。也不應(yīng)該將計(jì)算環(huán)境1400解釋為對(duì)示例性操作環(huán)境1400中示出 的任一組件或其組合有任何依賴性或要求。參考圖14,示例性遠(yuǎn)程設(shè)備包括計(jì)算機(jī)1410形式的通用計(jì)算設(shè)備。計(jì)算機(jī)1410 的組件可以包括,但不限于,處理單元1420、系統(tǒng)存儲(chǔ)器1430和將包括系統(tǒng)存儲(chǔ)器在內(nèi)的 各種系統(tǒng)組件耦合至處理單元1420的系統(tǒng)總線1421。計(jì)算機(jī)1410通常包括各種計(jì)算機(jī)可讀介質(zhì),并可以是可由計(jì)算機(jī)1410訪問的任 何可用介質(zhì)。系統(tǒng)存儲(chǔ)器1430可以包括諸如只讀存儲(chǔ)器(ROM)和/或隨機(jī)存取存儲(chǔ)器 (RAM)等易失性和/或非易失性存儲(chǔ)器形式的計(jì)算機(jī)存儲(chǔ)介質(zhì)。作為示例而非限制,存儲(chǔ)器 1430還可以包括操作系統(tǒng)、應(yīng)用程序、其他程序模塊、和程序數(shù)據(jù)。用戶可以通過(guò)輸入設(shè)備1440向計(jì)算機(jī)1410輸入命令和信息。監(jiān)視器或其他類型 的顯示設(shè)備也經(jīng)由接口,諸如輸出接口 1450連接至系統(tǒng)總線1421。除監(jiān)視器之外,計(jì)算機(jī) 還可以包括其他外圍輸出設(shè)備,如揚(yáng)聲器和打印機(jī),它們可以通過(guò)輸出接口 1450連接。計(jì)算機(jī)1410可使用至一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī),諸如遠(yuǎn)程計(jì)算機(jī)1470的邏輯連接 在網(wǎng)絡(luò)化或分布式環(huán)境中操作。遠(yuǎn)程計(jì)算機(jī)1470可以是個(gè)人計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò) PC、對(duì)等設(shè)備或其他常見網(wǎng)絡(luò)節(jié)點(diǎn)、或任何其他遠(yuǎn)程媒體消費(fèi)或傳輸設(shè)備,并且可以包括上 面關(guān)于計(jì)算機(jī)1410所描述的任何或全部元件。圖14所示的邏輯連接包括諸如局域網(wǎng)(LAN) 或廣域網(wǎng)(WAN)等的網(wǎng)絡(luò)1471,但也可以包括其他網(wǎng)絡(luò)/總線。這樣的聯(lián)網(wǎng)環(huán)境在家庭、辦 公室、企業(yè)范圍計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)中是常見的。如上所述,盡管結(jié)合各種計(jì)算設(shè)備和網(wǎng)絡(luò)體系結(jié)構(gòu)描述了各示例性實(shí)施例,但基 本概念可被應(yīng)用于其中需要執(zhí)行高效的圖像變換的任何網(wǎng)絡(luò)系統(tǒng)和任何計(jì)算設(shè)備或系統(tǒng)。有多種實(shí)現(xiàn)此處描述的自適應(yīng)濾波的方法,例如適當(dāng)?shù)腁PI、工具箱、驅(qū)動(dòng)程序代 碼、操作系統(tǒng)、控件、獨(dú)立或可下載軟件對(duì)象等,它們使得應(yīng)用程序和服務(wù)能夠使用該自適應(yīng)圖像變換過(guò)程。因此,此處描述的本發(fā)明的各種實(shí)現(xiàn)可以具有完全采用硬件、部分采用硬 件并且部分采用軟件、以及采用軟件的方面。在本文中使用的詞語(yǔ)“示例性”意味著用作示例、范例或說(shuō)明。為避免疑惑,本文公 開的主題不受限于這樣的示例。此外,本文描述為“示例性”的任何方面或設(shè)計(jì)不必解釋成 優(yōu)于其他方面或設(shè)計(jì)或比其他方面或設(shè)計(jì)有利,它也不旨在排除本領(lǐng)域的普通技術(shù)人員所 知的等效示例性結(jié)構(gòu)和技術(shù)。而且,就術(shù)語(yǔ)“包括”、“具有”、“包含”和其他類似的詞語(yǔ)在詳 細(xì)描述或權(quán)利要求書中的使用而言,為避免疑惑,這樣的術(shù)語(yǔ)旨在以類似于術(shù)語(yǔ)“包括”作 為開放的過(guò)渡詞的方式解釋而不排除任何附加或其他元素。如上所述,此處所述的各種技術(shù)可結(jié)合硬件或軟件,或在適當(dāng)時(shí)以兩者的組合來(lái) 實(shí)現(xiàn)。如在此所使用的,術(shù)語(yǔ)“組件”、“系統(tǒng)”等同樣指的是計(jì)算機(jī)相關(guān)實(shí)體,或者是硬件、 硬件和軟件的組合、軟件或執(zhí)行中的軟件。例如,組件可以是,但不限于是,在處理器上運(yùn)行 的進(jìn)程、處理器、對(duì)象、可執(zhí)行碼、執(zhí)行的線程、程序和/或計(jì)算機(jī)。作為說(shuō)明,運(yùn)行在計(jì)算機(jī) 上的應(yīng)用程序和計(jì)算機(jī)本身都可以是計(jì)算機(jī)組件。一個(gè)或多個(gè)組件可以駐留在進(jìn)程和/或 執(zhí)行的線程中,并且組件可以位于一個(gè)計(jì)算機(jī)內(nèi)和/或分布在兩個(gè)或更多的計(jì)算機(jī)之間。已經(jīng)關(guān)于若干組件之間的交互描述了前述系統(tǒng)。應(yīng)該理解,這樣的系統(tǒng)和組件可 以包括根據(jù)前述的各種置換和組合的那些組件或指定的子組件、指定的組件或子組件中的 某一些、和/或另外的組件。子組件也可以被實(shí)現(xiàn)為通信耦合至其它組件而非被包括在父 組件(分層)內(nèi)的組件。另外,應(yīng)注意到一個(gè)或多個(gè)組件可被組合成提供聚集功能的單個(gè) 組件,或被分成若干單獨(dú)的子組件,且諸如管理層等任何一個(gè)或多個(gè)中間層可被設(shè)置成通 信耦合到這樣的子組件以便提供集成功能。此處描述的任何組件也可以與在此未具體描述 但本領(lǐng)域的技術(shù)人員公知的一個(gè)或多個(gè)其它組件交互??紤]到以上描述的示例性系統(tǒng),參考各附圖的流程圖將可以更好地理解依照所公 開的主題實(shí)現(xiàn)的方法。盡管出于說(shuō)明簡(jiǎn)單的目的,各方法被顯示和描述為一系列框,但應(yīng)該 理解和領(lǐng)會(huì),所要求保護(hù)的主題不受框次序的限制,因?yàn)橐恍┛蚰軌蛞圆煌拇涡蚝?或 與在此描繪和描述的其他框并發(fā)地發(fā)生。盡管經(jīng)由流程圖示出了非順序或分支的流程,但 可以理解,可實(shí)現(xiàn)達(dá)成相同或類似結(jié)果的各種其他分支、流程路徑和框次序。而且,并非所 有示出的框都是實(shí)現(xiàn)以下描述的方法所必需的。盡管結(jié)合各附圖的優(yōu)選實(shí)施例描述了各實(shí)施例,但可以理解,可以使用其他類似 的實(shí)施例,或可以對(duì)所描述的實(shí)施例進(jìn)行修改和添加來(lái)執(zhí)行相同或類似的功能而不背離本 發(fā)明。此外,自適應(yīng)濾波過(guò)程可以在多個(gè)處理芯片或設(shè)備中實(shí)現(xiàn)或跨多個(gè)處理芯片或設(shè)備 實(shí)現(xiàn),且存儲(chǔ)可以類似地跨多個(gè)設(shè)備來(lái)實(shí)現(xiàn)。因此,沒有單個(gè)實(shí)施例應(yīng)被認(rèn)為是限制性的, 而相反,保護(hù)范圍應(yīng)當(dāng)根據(jù)所附權(quán)利要求書以及任何等效方案的廣度和范圍來(lái)解釋。
1權(quán)利要求
一種用于將圖像數(shù)據(jù)從具有第一像素的第一表示變換成具有第二像素的第二表示的方法,其中所述第一表示的第一像素不全都在一對(duì)一的基礎(chǔ)上映射到所述第二表示的第二像素,所述方法包括對(duì)于所述第二表示的每一像素位置,確定所述第一表示中的對(duì)應(yīng)的至少兩個(gè)像素的集合400;確定所述第一表示中的所述至少兩個(gè)像素的色值之間的色距是否指示閾值色彩相似性410;如果所述至少兩個(gè)像素之間的色距指示閾值色彩相似性,則將所述第二表示的所述像素位置的色值設(shè)定成所述第一表示中的所述至少兩個(gè)像素之一的色值430;以及如果所述色距不指示所述閾值色彩相似性,則執(zhí)行至少一個(gè)替換過(guò)程440或450來(lái)設(shè)定所述第二表示的所述像素位置的色值。
2.如權(quán)利要求1所述的方法,其特征在于,所述設(shè)定430包括根據(jù)最接近鄰居內(nèi)插來(lái)設(shè) 定所述第二表示的所述像素位置的色值。
3.如權(quán)利要求1所述的方法,其特征在于,所述確定色距是否是閾值色彩相似性410包 括確定所述至少兩個(gè)像素之間的最大色距是否處于閾值色距內(nèi)。
4.如權(quán)利要求1所述的方法,其特征在于,所述確定色距是否是閾值色彩相似性410包 括確定所述至少兩個(gè)像素之間的最大色距是否處于相關(guān)聯(lián)的色彩模型所表示的最大色距 的預(yù)定義百分比內(nèi)。
5.如權(quán)利要求1所述的方法,其特征在于,所述執(zhí)行至少一個(gè)替換過(guò)程440或450包括 內(nèi)插來(lái)自所述第一表示中的對(duì)應(yīng)于所述第二表示的所述像素位置的多個(gè)像素的色值的內(nèi) 插像素值,并將所述第二表示的所述像素位置的色值設(shè)定成所述內(nèi)插色值。
6.如權(quán)利要求1所述的方法,其特征在于,所述執(zhí)行至少一個(gè)替換過(guò)程440或450包括 執(zhí)行雙線性內(nèi)插以設(shè)定所述第二表示的所述像素位置的色值。
7.如權(quán)利要求1所述的方法,其特征在于,所述執(zhí)行至少一個(gè)替換過(guò)程440或450包括 執(zhí)行雙三次內(nèi)插以設(shè)定所述第二表示的所述像素位置的色值。
8.如權(quán)利要求1所述的方法,其特征在于,還包括基于至少?gòu)挠伤龇椒ㄋ幚淼倪^(guò) 去圖像數(shù)據(jù)導(dǎo)出的至少一個(gè)特性來(lái)動(dòng)態(tài)地調(diào)節(jié)所述閾值色彩相似性1240。
9.一種包括用于執(zhí)行如權(quán)利要求1所述的方法的計(jì)算機(jī)可執(zhí)行指令的有形地具體化 的計(jì)算機(jī)可讀介質(zhì)。
10.一種包括用于執(zhí)行如權(quán)利要求1所述的方法的計(jì)算機(jī)硬件裝置。
11.一種用于將來(lái)自源圖像的源像素?cái)?shù)據(jù)的大小調(diào)整成具有至少一個(gè)與所述源圖像不 同的維度的目標(biāo)圖像的目標(biāo)像素?cái)?shù)據(jù)的方法,包括對(duì)于所述目標(biāo)圖像的每一像素位置,標(biāo)識(shí)所述源圖像中的與所述目標(biāo)圖像中的所述像 素位置最接近的對(duì)應(yīng)的四個(gè)像素的集合500 ;確定所述源圖像中的所述四個(gè)最接近像素的集合是否是充分相似的色彩510 ;如果所述源圖像中的所述四個(gè)最接近像素的集合是充分相似的色彩,則將所述目標(biāo)圖 像的所述像素位置的色值設(shè)定成所述源圖像中的所述四個(gè)最接近像素之一的色值520 ;以 及如果所述源圖像中的所述四個(gè)最接近像素的集合不是充分相似的色彩,則執(zhí)行至少包括所述源圖像中的所述四個(gè)最接近像素的色值的色值的內(nèi)插530 ;
12.如權(quán)利要求11所述的方法,其特征在于,所述確定510包括確定所述源圖像中的所 述四個(gè)最接近像素的集合的色值之間的色距是否低于閾值色距。
13.如權(quán)利要求11所述的方法,其特征在于,如果所述源圖像中的所述四個(gè)最接近像 素的集合是充分相似的色彩,則所述設(shè)定530包括執(zhí)行將所述目標(biāo)圖像的所述像素位置的 色值設(shè)定成所述四個(gè)最接近像素中的最接近者的色值的最接近鄰居內(nèi)插。
14.如權(quán)利要求11所述的方法,其特征在于,如果所述源圖像中的所述四個(gè)最接近像 素的集合不是充分相似的色彩,則執(zhí)行所述源圖像中的所述四個(gè)最接近像素的色值的雙線 性內(nèi)插530。
15.如權(quán)利要求11所述的方法,其特征在于,如果所述源圖像中的所述四個(gè)最接近像 素的集合不是充分相似的色彩,則執(zhí)行所述源圖像中的另一像素集合的色值的雙三次內(nèi)插 以確定所述目標(biāo)圖像的所述像素位置的色值530。
16.一種包括用于執(zhí)行如權(quán)利要求11所述的方法的計(jì)算機(jī)可執(zhí)行指令的有形地具體 化的計(jì)算機(jī)可讀介質(zhì)。
17.一種用于根據(jù)源圖像的透視變換來(lái)執(zhí)行從所述源圖像的源數(shù)據(jù)到目標(biāo)圖像的目標(biāo) 數(shù)據(jù)的各向異性濾波的方法,包括對(duì)于所述目標(biāo)圖像的每一像素位置,標(biāo)識(shí)所述源圖像中的、要被混合以生成所述目標(biāo) 圖像中的所述像素位置的色值的、沿一個(gè)段的對(duì)應(yīng)的像素集合800 ;確定所述源圖像中的沿所述段的像素集合是否是充分相似的色彩810 ;如果所述源圖像中的沿所述段的像素集合是充分相似的色彩,則將所述目標(biāo)圖像的所 述像素位置的色值設(shè)定成所述源圖像中的沿所述段的各像素中最接近地映射到所述目標(biāo) 圖像的所述像素位置的像素的色值820 ;以及如果所述源圖像中的沿所述段的像素集合不是充分相似的色彩,則執(zhí)行包括至少所述 源圖像中的沿所述段的像素的色值內(nèi)插的色值內(nèi)插830。
18.如權(quán)利要求17所述的方法,其特征在于,所述確定所述源圖像中的沿所述段的像 素述集合是否是充分相似的色彩810包括確定所述像素集合之間的最大色距是否處于閾 值色距內(nèi)。
19.如權(quán)利要求17所述的方法,其特征在于,如果所述源圖像中的沿所述段的像素集 合不是充分相似的色彩,則所述內(nèi)插的執(zhí)行830包括對(duì)沿所述對(duì)的像素的色值執(zhí)行混合操作。
20.至少一種包括用于執(zhí)行如權(quán)利要求17所述的方法的裝置的硬件設(shè)備。
全文摘要
闡明了改進(jìn)視頻回放性能的自適應(yīng)濾波技術(shù)。計(jì)算正在經(jīng)歷圖像變換操作的源像素的色彩相似性度量以確定目標(biāo)像素位置的色值。色彩相似性度量的值定義了使用什么算法來(lái)從源像素確定目標(biāo)像素位置的色值。盡管色彩相似性度量的計(jì)算引入對(duì)每一像素的附加指令,但比常規(guī)系統(tǒng)有利的是,通過(guò)在更簡(jiǎn)單的指令集就足夠的情況下避免不必要的復(fù)雜內(nèi)插指令集而獲得的極大性能節(jié)省超過(guò)了因附加指令而導(dǎo)致的任何這樣的成本。
文檔編號(hào)H04N9/64GK101855912SQ200880116371
公開日2010年10月6日 申請(qǐng)日期2008年11月12日 優(yōu)先權(quán)日2007年11月14日
發(fā)明者A·A·米哈爾, D·D·卡爾洛夫 申請(qǐng)人:微軟公司