專利名稱:用于在顯示器上顯示數(shù)字圖像的技術(shù)的制作方法
技術(shù)領域:
本發(fā)明涉及在顯示器上顯示數(shù)字圖像。
背景技術(shù):
數(shù)字攝影者可以使用軟件系統(tǒng)管理和組織數(shù)字圖像。數(shù)字攝影者經(jīng)??赡苄枰陲@示器上顯示大量的數(shù)字圖像。數(shù)字攝影者希望可視地呈現(xiàn)在顯示器上的數(shù)字圖像的數(shù)量可能太大或難以使每個數(shù)字圖像可視地、無阻礙地呈現(xiàn)在顯示器上。因此,在本領域中存有改進在顯示器上所顯示的數(shù)字圖像的顯示、管理、和組織的需要。
通過附圖中的實例示出了本發(fā)明,而并不用于限制本發(fā)明,其中相似的參考標號表示相似的元件,其中圖1是根據(jù)一個實施例的數(shù)字圖像系統(tǒng)的顯示的圖示;圖2是根據(jù)一個實施例在一堆棧、一組、或在一版本集中可視地描繪多個圖像的步驟的流程圖;圖3是根據(jù)一個實施例的包含圖1中所示的數(shù)字圖像的組的兩種狀態(tài)的圖示;
圖4描繪了根據(jù)一個實施例的、包含有用于改變組的狀態(tài)的控件的一幅精選圖像(pick image)的顯示畫面;圖5是描繪根據(jù)一個實施例的一個堆棧的所述精選圖像的變化的圖示;圖6是根據(jù)一個實施例的一個堆棧的兩種狀態(tài)的圖示;圖7示出了根據(jù)一個實施例的當一個堆棧中的一幅圖像被提升時,所述堆棧中的多幅圖像的運動;圖8是根據(jù)一個實施例的一版本集的兩種狀態(tài)的圖示;圖9是根據(jù)一個實施例的其中包含另一組和一個堆棧的一組的圖示;圖10是示出了根據(jù)一個實施例的使用虛擬放大鏡的步驟的流程圖;圖11是根據(jù)本發(fā)明實施例的示出虛擬放大鏡的顯示的圖示;圖12是根據(jù)本發(fā)明實施例的改變所述虛擬放大鏡的方位的描繪;圖13是根據(jù)一個實施例的具有浮動控制器的顯示器的圖示;圖14是根據(jù)一個實施例的有界的序列的圖像的圖示;圖15是根據(jù)一個實施例的可用于在一個以上的顯示器上顯示圖像的數(shù)字圖像系統(tǒng)的框圖;
圖16是根據(jù)一個實施例被排列成一系列行的數(shù)字圖像序列的顯示的圖示;圖17是示出根據(jù)一個實施例的以未遮蓋的方式觀看一組數(shù)字圖像中每一個的步驟的圖示;圖18是根據(jù)一個實施例的示出一圖像集(其中該圖像集中至少一個是至少部分被遮蓋住的)的第一顯示的圖示;圖19是根據(jù)一個實施例的以未遮蓋的方式示出圖18中的該圖像集的第二顯示的圖示;圖20是示出了可以在其上實施本發(fā)明實施例的計算機系統(tǒng)的框圖。
具體實施例方式
在以下描述中,為了說明的目的,闡述了許多細節(jié)以提供對此處描述的本發(fā)明實施例的透徹理解。然而,很顯然地,沒有這些具體細節(jié)也可以實施本發(fā)明的實施例。在其他實例中,為了避免不必要地使此處描述的本發(fā)明的實施例模糊不清,以框圖的形式示出了眾所周知的結(jié)構(gòu)和裝置。
功能概述數(shù)字圖像系統(tǒng)包括計算機系統(tǒng)、初級顯示裝置、以及一個或多個次級顯示裝置。計算機系統(tǒng)在一個初級顯示裝置和一個或多個次級顯示裝置上顯示內(nèi)容。計算機系統(tǒng)可運行于第一模式和第二模式。如果計算機系統(tǒng)處于第一模式,則在每個次級顯示器上,計算機系統(tǒng)都生成與同時正被顯示在初級顯示裝置上的顯示(畫面)相同的顯示(畫面)。如果計算機系統(tǒng)處于第二模式,則在每個次級顯示裝置上,計算機系統(tǒng)都生成與同時正被顯示在初級顯示裝置上的顯示畫面所不同的顯示畫面。通過將用戶輸入提交給計算機系統(tǒng),用戶就可以使計算機系統(tǒng)在第一模式和第二模式之間切換。
本發(fā)明實施例的數(shù)字圖像系統(tǒng)可被用于在通過被排列成一組行或列的圖像序列中的數(shù)字圖像進行滾動時,自動提升格(grid)中的一個或多個行或列。當用戶從選擇第一圖像改變到選擇第二圖像時,如果存在少于可配置的預定閾值的圖像,則可自動顯示額外的圖像。在顯示了額外的圖像后,所選擇的圖像可位于顯示器中心上。
根據(jù)本發(fā)明的實施例,被另一個圖像所遮蓋的圖像可以被整體的觀察到。包括排列成第一排列的多個圖像的一堆圖像(其中,該堆中的至少一個圖像與該堆中的至少一個其他圖像交疊)被數(shù)字圖像系統(tǒng)顯示在顯示器上。指示第一排列的每個圖像的位置的位置數(shù)據(jù)由數(shù)字圖像系統(tǒng)進行存儲。當以第一排列顯示堆中的多個圖像時,響應于數(shù)字圖像系統(tǒng)接收第一用戶輸入,無需改變位置數(shù)據(jù),數(shù)字圖像系統(tǒng)就以第二排列(其中,該堆中沒有圖像與該堆中任何其他圖像交疊)顯示屬于該堆的那些圖像。當以第二排列顯示該堆中的圖像時,響應于數(shù)字圖像系統(tǒng)接收第二用戶輸入,數(shù)字圖像系統(tǒng)就基于由數(shù)字圖像系統(tǒng)存儲的位置數(shù)據(jù)而以第一排列重新顯示該堆圖像。
組、堆棧和版本根據(jù)本發(fā)明的一個實施例,用戶,例如攝影者,可以使用數(shù)字圖像系統(tǒng)來管理并組織數(shù)字圖像的匯集,而該數(shù)字圖像系統(tǒng)使用組、堆棧和版本集來顯示數(shù)字圖像。圖1是根據(jù)本發(fā)明一個實施例的數(shù)字圖像系統(tǒng)的幾個數(shù)字圖像的顯示器100和存儲器110的圖示。正如下面所進一步詳細解釋的,數(shù)字圖像系統(tǒng)可以包括在顯示器(例如,圖1的顯示器100)上顯示一個或多個數(shù)字圖像的計算機系統(tǒng)。如圖1所示,四個不同的數(shù)字圖像,即,圖像A、圖像B、圖像C、和圖像D被可視地描繪在顯示器100上。雖然為了簡化說明而只示出了四個數(shù)字圖像,但是顯示器100可容易地顯示繁多的數(shù)字圖像(例如,兩千或更多),從而使用戶難以觀看并管理顯示器100上顯示的所有數(shù)字圖像。
顯示在顯示器100上的圖像被存儲在存儲器110中??梢允褂萌魏斡糜诖鎯?shù)字圖像的機構(gòu)(例如,數(shù)據(jù)庫,文件服務器、或易失性存儲器)來實現(xiàn)存儲器110。存儲在存儲器110中的數(shù)字圖像具有文件圖像分辨率,該分辨率為當數(shù)字圖像被存儲時的分辨率。數(shù)字圖像能夠以不同于文件圖像分辨率級別的分辨率級別被顯示出來,例如,特定圖像能夠以放大的分辨率級別被顯示出來。被顯示的圖像的分辨率級別應該被稱作被顯示的圖像分辨率。
為了幫助用戶管理并組織其數(shù)字圖像,可將一個或多個數(shù)字圖像排列進入一組、一個堆棧、或作為一版本集。圖2是示出根據(jù)本發(fā)明一個實施例的可視地描繪在堆棧、組、或作為版本集中的圖像的步驟的流程圖。在步驟210中,存儲集合數(shù)據(jù),該數(shù)據(jù)(a)標識多個圖像之間的關(guān)聯(lián),(b)標識代表性圖像,以及(c)標識所述多個圖像的當前狀態(tài)。當一個或多個數(shù)字圖像被排列進入一組、一個堆?;蜃鳛榘姹炯瘯r,生成并存儲集合數(shù)據(jù)來標識一個或多個數(shù)字圖像以及標識是否一個或多個數(shù)字圖像被排列進入組、堆棧、作為版本集、或其任何組合(如下面所解釋的,組和堆??梢允乔短椎?。下面將參照組、堆棧、和版本集更詳細地描述圖2中剩余的步驟的執(zhí)行。
組正如本文所使用的,組是一無序的數(shù)字圖像集合,其能夠以使用被稱作“精選圖像”的代表性圖像的第一狀態(tài)可視地表現(xiàn)出來。也能夠以第二狀態(tài)通過顯示該組中所有數(shù)字圖像而不是只顯示精選圖像來可視地表現(xiàn)組。該組的精選圖像(其顯示在顯示器上)可以被用于表現(xiàn)該組中的每個數(shù)字圖像,從而減少在顯示器上所顯示的數(shù)字圖像的數(shù)量。
圖3是根據(jù)本發(fā)明一個實施例的包含在圖1中示出的數(shù)字圖像的組的兩種狀態(tài)的圖示。如圖3所示,在該組的收縮狀態(tài),只顯示了精選圖像,而在該組的展開狀態(tài),顯示了該組中的每個數(shù)字圖像(包括精選圖像)。當組處于展開狀態(tài)時,可在表現(xiàn)精選圖像的特定位置顯示出精選圖像,例如把以展開狀態(tài)描繪的組的精選圖像顯示為該組的第一數(shù)字圖像。
數(shù)字圖像系統(tǒng)可以基于與該組一起存儲于存儲器110中的元數(shù)據(jù)來描繪組的圖像。存儲在存儲器110中的元數(shù)據(jù)標識該組、該組中的每個圖像、該組中哪個圖像是代表性圖像(或精選圖像)、以及該組的狀態(tài)。例如,與處于收縮狀態(tài)的組相關(guān)的元數(shù)據(jù)120存儲數(shù)據(jù),該數(shù)據(jù)(a)標識該組,(b)將圖像A、圖像B、圖像C、圖像D標識為屬于該組,(c)將當前狀態(tài)標識為收縮狀態(tài),以及(d)將圖像A標識為精選圖像。與處于收縮狀態(tài)的該組相關(guān)的元數(shù)據(jù)122存儲數(shù)據(jù),該數(shù)據(jù)(a)標識該組,(b)將圖像A、圖像B、圖像C、圖像D標識為屬于該組,(c)將當前狀態(tài)標識為展開狀態(tài),以及(d)將圖像A標識為精選圖像。數(shù)字圖像系統(tǒng)基于所存儲的、與該組相關(guān)的元數(shù)據(jù)來顯示該組的圖像,例如,當元數(shù)據(jù)120指示與其相關(guān)的組處于收縮狀態(tài)時,數(shù)字圖像系統(tǒng)只在顯示器100上顯示圖像A(其為精選圖像)。
在圖2的步驟220中,當該組的當前狀態(tài)為收縮狀態(tài)時,通過只顯示代表性圖像或精選圖像來可視地描繪該組的圖像。例如,正如圖3中所描繪的處于收縮狀態(tài)的組所顯示的,通過只可視地描繪圖像A來表現(xiàn)圖像A、圖像B、圖像C、和圖像D。在圖2的步驟230中,當該組的當前狀態(tài)為展開狀態(tài)時,通過顯示多個圖像中的兩個或更多圖像來可視地描繪該組中的多個圖像。例如,正如圖3中描繪的處于展開狀態(tài)的該組所顯示的,通過可視地描繪圖像A、圖像B、圖像C、以及圖像D來表現(xiàn)圖像A、圖像B、圖像C、以及圖像D。注意,在步驟230中,只要可視地描繪該組中的兩個或更多圖像,就可通過顯示少于該組中的所有圖像來可視地描繪該組的多個圖像,例如,在步驟230中,通過只顯示圖像A和圖像D來可視地描繪圖像A、圖像B、圖像C、以及圖像D。
變換組的顯示狀態(tài)用戶可在收縮狀態(tài)和展開狀態(tài)之間變換該組的狀態(tài)。在本發(fā)明的一個實施例中,可通過用戶向計算機系統(tǒng)提交輸入來變換該組的狀態(tài)??赏ㄟ^多種方式(包括一個或多個鍵擊序列或一次或多次鼠標單擊)將輸入提交給計算機系統(tǒng)。在本發(fā)明的一個特定實施例中,可通過用戶選擇與該組相關(guān)的控件來改變該組的狀態(tài)。圖4描繪了根據(jù)本發(fā)明一個實施例的顯示包含用于改變該組的狀態(tài)的控件410的精選圖像的顯示器400??赏ㄟ^用戶選擇被顯示在圖4的精選圖像上的控件410而將圖4的組從收縮狀態(tài)變換到展開狀態(tài)??梢允褂迷试S用戶選擇控件的任何圖形組件來實施控件410,例如通過單擊它的方式。注意,控件410無需被顯示在精選圖像上,而是可以被顯示在用戶可見的、屏幕上的任何地方,例如控件410可以顯示在工具欄上。因此,可以使用任何用于接收用戶輸入的機構(gòu)(例如,一個或多個鍵擊序列或一次或多次鼠標單擊)來實現(xiàn)控件410。
當改變了組的狀態(tài)時,也改變了可視地表現(xiàn)在顯示器上的數(shù)字圖像的數(shù)量(即,顯示了精選圖像或顯示了該組中兩個或更多數(shù)字圖像)??梢砸允褂脩裟軌蛑庇^化該組正在發(fā)生的情況的方式來執(zhí)行改變可視地表現(xiàn)在顯示器上的數(shù)字圖像的數(shù)量的這一過程。實現(xiàn)這一點的一種方法是提供顯示由該組可視地描繪的數(shù)字圖像的數(shù)量變化的動畫,以使用戶理解該組的狀態(tài)已經(jīng)變化了。換言之,為了在該組的狀態(tài)變化的瞬間,避免因改變該組的可視描繪而使觀察者迷惑,該組的可視描繪的變化可在便于察覺的時間段期間逐漸發(fā)生,以使用戶通過觀察顯示器上的變化而完全領會該組的狀態(tài)變化。例如,當該組從收縮狀態(tài)的可視描繪轉(zhuǎn)換到展開狀態(tài)的可視描繪時,可以顯示該組的一個或多個中間狀態(tài)。
改變該組的精選圖像用戶可以改變該組的精選圖像??梢酝ㄟ^包括輸入裝置2014和光標控制器2016的多種機構(gòu)來提交用于改變該組的精選圖像的用戶輸入。當以展開狀態(tài)顯示該組時,能夠以允許觀察者可視地確定該組中哪個圖像為精選圖像的這一方式來顯示該組的精選圖像。例如,可以使用視覺指示器(例如,邊界、陰影、或加亮)來顯示處于展開狀態(tài)的組的精選圖像,以對觀察者指示該組中哪個圖像為精選圖像。
當處于展開狀態(tài)的該組中的新圖像被用戶標識為新精選圖像時,可以使用視覺指示器來顯示新圖像,以指示所述新圖像現(xiàn)在就是精選圖像,并且可以停止使用視覺指示器來顯示先前的精選圖像。當用戶選擇該組的新精選圖像時,就不必要使處于展開狀態(tài)的組中的圖像中的任何一個在顯示器上移動,即,可以使用視覺指示器來顯示新精選圖像,而不必移動新精選圖像??梢砸允褂脩裟軌蛑庇^化該組正在發(fā)生的情況的方式來進行處于展開狀態(tài)的該組中的精選圖像的變化。
堆棧堆棧也可被用于管理和組織數(shù)字圖像。本文所使用的堆棧是有序的數(shù)字圖像的集合。類似于組,可以以使用代表性圖像(或精選圖像)的收縮狀態(tài)以及顯示與該堆棧相關(guān)的所有數(shù)字圖像的展開狀態(tài)來可視地表現(xiàn)堆棧。圖6是根據(jù)本發(fā)明一個實施例的一個堆棧的兩種狀態(tài)的圖示。堆棧中的每個數(shù)字圖像都具有等級(rank),并且堆棧中的每個數(shù)字圖像都以其等級的次序來被描繪。例如,在圖6所示的處于展開狀態(tài)的堆中,精選圖像A具有最高等級,圖像B具有次最高等級,圖像C具有再次的最高等級,如此等等。
數(shù)字圖像系統(tǒng)可以基于與堆棧一起存儲在存儲器610中的元數(shù)據(jù)來描繪堆棧的圖像。存儲在存儲器610中的元數(shù)據(jù)標識堆棧、該堆棧中的每個圖像、該堆棧中的哪個圖像是代表性圖像(或精選圖像)、該堆棧中的每個圖像的等級、以及該堆棧的狀態(tài)。例如,與處于收縮狀態(tài)的堆棧相關(guān)的元數(shù)據(jù)620存儲數(shù)據(jù),該數(shù)據(jù)(a)標識堆棧,(b)將圖像A、圖像B、圖像C、圖像D標識為屬于該堆棧,(c)將該堆棧的當前狀態(tài)標識為收縮狀態(tài),(d)標識與該堆棧的每個圖像相關(guān)的等級,以及(e)將圖像A標識為精選圖像。與展開狀態(tài)的堆棧相關(guān)的元數(shù)據(jù)622存儲數(shù)據(jù),該數(shù)據(jù)(a)標識堆棧,(b)將圖像A、圖像B、圖像C、圖像D標識為屬于該堆棧,(c)將該堆棧的當前狀態(tài)標識為展開狀態(tài),(d)標識與該堆棧中的每個圖像相關(guān)的等級,以及(e)將圖像A標識為精選圖像。數(shù)字圖像系統(tǒng)基于所存儲的、與堆棧相關(guān)的元數(shù)據(jù)來顯示該堆棧的多個圖像,例如當元數(shù)據(jù)620指示與其相關(guān)的堆棧處于收縮狀態(tài)時,數(shù)字圖像系統(tǒng)只在顯示器600上顯示圖像A(其為精選圖像)。
再返回圖2,在步驟220中,當堆棧的當前狀態(tài)為收縮狀態(tài)時,通過只顯示代表性圖像來可視地描繪堆棧的圖像。例如,通過圖6中所描繪的收縮狀態(tài)的狀態(tài),通過只可視地描繪圖像A來表現(xiàn)圖像A、圖像B、圖像C、和圖像D。
在圖2的步驟230中,當堆棧的當前狀態(tài)為展開狀態(tài)時,通過按照與每個顯示的圖像相關(guān)的等級的次序以顯示該堆棧中的兩個或更多圖像來可視地描繪該堆棧的多個圖像。例如,正如圖6中所描繪的處于展開狀態(tài)的堆棧中的圖像所示的,通過可視地描繪圖像A、圖像B、圖像C和圖像D來表現(xiàn)圖像A、圖像B、圖像C和圖像D。注意,在步驟230中,只要可視地描繪堆棧中的兩個或更多圖像,就通過顯示少于該堆棧中的所有圖像而可以可視地描繪堆棧中的圖像,例如,在步驟230中,可通過只顯示圖像A和圖像B來可視地描繪圖像A、圖像B、圖像C和圖像D。當堆棧處于展開狀態(tài)時,按照與每個顯示的圖像相關(guān)的等級的次序來顯示圖像。例如,在圖6中所描繪的處于展開狀態(tài)的堆棧中,圖像A(其為第一個)具有最高等級,圖像B(其被緊接著顯示)具有次最高等級,等等。
在本發(fā)明的一個實施例中,可以通過用戶選擇與堆棧相關(guān)的控件(例如,類似于圖4的控件410)來改變該堆棧的狀態(tài)。在本發(fā)明的另一個實施例中,可以通過用戶向計算機系統(tǒng)提交輸入來改變組的狀態(tài)。可以通過各種方式(包括一個或多個鍵擊序列或者,一個或多個鼠標單擊)將輸入提交給計算機系統(tǒng)。
提升堆棧中的圖像可將堆棧中的數(shù)字圖像提升到較高的等級或降級到較低的等級。用戶可以使用堆棧以通過在該堆棧中提升所喜愛的圖像以及在該堆棧中降級不喜愛的圖像的方式來決定在一組相關(guān)的數(shù)字圖像中的哪一個數(shù)字圖像是其所愛。用戶可以通過在特定的圖像上選擇類似于圖4的控件410的控件來使堆棧中的特定圖像被提升或降級。
當堆棧中的圖像被提升或降級時,就能夠以允許用戶直觀化堆中的圖像的順序的變化的方式來更新堆的視覺顯示。圖7是根據(jù)本發(fā)明一個實施例當堆棧中的圖像被提升時該堆棧中的圖像的移動的圖示700。如圖7所示,提升了圖像C,從而使它具有比圖像B更高的等級。因此,圖像C被顯示出通過穿過一個或多個中間位置(例如,臨時位置1)而從其當前位置移動到圖像B先前占據(jù)的位置。圖像B也可以被顯示出通過穿過一個或多個中間位置(例如,臨時位置2)從其當前位置移動到當前由圖像C所占據(jù)的位置。這樣,用戶可以通過觀察堆棧中成員的移動而完全領會該堆棧中的圖像的順序的變化。當堆棧中的圖像被提升或降級時,與該堆棧相關(guān)的元數(shù)據(jù)就被更新以反映該堆棧中的每個圖像等級的變化過程。
改變堆棧的精選圖像用戶可以改變堆棧的精選圖像。圖5是描繪根據(jù)本發(fā)明一個實施例的堆棧中的精選圖像的變化的圖示500。圖5示出了接收用戶輸入以使圖像C成為該堆棧的精選圖像的結(jié)果。精選圖像被顯示在當前由圖像A占據(jù)的位置510。用戶輸入可以通過多種結(jié)構(gòu)(包括輸入裝置2014和光標控制器2016)進行提交。當用戶標識了堆棧的新精選圖像時,新精選圖像就被提升到堆棧的第一位置,而該堆棧中的其他圖像則保持在其同樣的相對次序??梢砸允褂脩糁庇^化該組發(fā)生的情況的方式進行精選圖像的變化。
例如,如圖5所示,圖像C可以被顯示出通過穿過一個或多個中間位置(例如臨時位置1和臨時位置2)而從其當前位置移動到位置510。在圖像C被提升到位置510之后,圖像A、B、和D彼此保持同樣的相對次序。因此,可將圖像A和B的位置移動到顯示器上的右側(cè)以可視地表現(xiàn)其在該堆棧中的相對位置的變化。通過穿過一個或多個中間位置,圖像A可以被顯示出從其當前位置移動到由圖像B所占據(jù)的位置。圖像B可以被顯示出通過穿過一個或多個中間位置而從其當前位置移動到先前由圖像C所占據(jù)的位置。以此方式,用戶可以通過觀察顯示器上組中多個數(shù)字圖像的移動而完全領會該組中精選圖像的變化。
版本根據(jù)一個實施例,可將兩個或更多數(shù)字圖像建立為一版本集。版本集指的是能夠以使用代表性圖像(或精選圖像)的第一狀態(tài)可視地表現(xiàn)的,以及通過與該集合相關(guān)的每個數(shù)字圖像以第二狀態(tài)可視地表現(xiàn)的一組相關(guān)的數(shù)字圖像。版本集類似于組——除了版本中的圖像是直接或間接地從同一原始數(shù)字圖像中導出的。例如,用戶可能希望修改原始圖像以創(chuàng)建導出圖像。根據(jù)一個實施例,每個導出圖像都自動成為從中將其導出的圖像的版本集中的成員。例如,若用戶創(chuàng)建了彩色的原始圖像的黑白副本,則在版本集中黑白副本和原始圖像被自動關(guān)聯(lián)。因此,版本集包括原始圖像和產(chǎn)生自該原始圖像的任何導出圖像。
圖8是根據(jù)本發(fā)明一個實施例的版本集的兩種狀態(tài)的圖示。如圖8所示,圖像A是原始版本,而圖像B、圖像C、和圖像D中每個都是從圖像A中導出的。如圖8所示,版本集的收縮狀態(tài)只顯示精選圖像(圖像A),而版本集的展開狀態(tài)顯示了版本集中的每個數(shù)字圖像(包括精選圖像)。當一組版本處于第二狀態(tài)時,精選圖像就可被顯示在特定位置,例如,精選圖像可被顯示為該組的第一數(shù)字圖像。舉例來說,如圖8所示,圖像A是精選圖像,并且精選圖像是該組中所顯示的第一數(shù)字圖像。處于展開狀態(tài)的版本集中的圖像可以按照年代先后的順序列表,例如,用戶可能最近已創(chuàng)建了圖像A、其次創(chuàng)建了圖像B,等等。
再次返回到圖2,在步驟220中,當版本集的當前狀態(tài)為第一狀態(tài)時,通過只顯示代表性圖像或精選圖像來可視地描繪版本集的圖像。例如,正如圖8中所描繪的收縮狀態(tài)所示的,通過可視地只描述圖像A來表現(xiàn)圖像A、圖像B、圖像C、和圖像D。在圖2的步驟230中,當版本集的當前狀態(tài)為展開狀態(tài)時,通過顯示版本集的兩個或更多圖像來可視地描繪該版本集的圖像。
例如,正如處于圖8中所描繪的展開狀態(tài)的版本集所示出的,通過可視地描繪圖像A、圖像B、圖像C、和圖像D來表現(xiàn)圖像A、圖像B、圖像C、和圖像D。注意,在步驟230中,只要版本集中的至少兩個圖像被可視地描繪,就可通過顯示少于該版本集的所有圖像來可視地描繪該版本集的圖像,例如,在步驟230中,可通過只示出圖像A和圖像B來可視地描繪圖像A、圖像B、圖像C、和圖像D。版本集的狀態(tài)可通過用戶選擇與該版本集相關(guān)的控件(例如,類似于圖4的控件410的控件)而被改變。
數(shù)字圖像系統(tǒng)可以基于與版本集一起存儲在存儲器810中的元數(shù)據(jù)來描繪該版本集的多個圖像。存儲在存儲器810中的元數(shù)據(jù)標識版本集、該版本集中的每個圖像、該版本集中的哪個圖像是代表性圖像(或精選圖像)、以及該版本集的狀態(tài)。例如,與處于收縮狀態(tài)的版本集相關(guān)的元數(shù)據(jù)820存儲數(shù)據(jù),該數(shù)據(jù)(a)標識版本集,(b)將圖像A、圖像B、圖像C、圖像D標識為屬于該版本集,(c)將該版本集的當前狀態(tài)標識為收縮狀態(tài),以及(d)將圖像A標識為精選圖像。與處于展開狀態(tài)的版本集相關(guān)的元數(shù)據(jù)822存儲數(shù)據(jù),該數(shù)據(jù)(a)標識版本集,(b)將圖像A、圖像B、圖像C、圖像D標識為屬于該版本集,(c)將該版本集的當前狀態(tài)標識為展開狀態(tài),以及(d)將圖像A標識為精選圖像。數(shù)字圖像系統(tǒng)基于所存儲的、與版本集相關(guān)的元數(shù)據(jù)來顯示該版本的多個圖像,例如,當元數(shù)據(jù)820指示與其相關(guān)的版本集處于收縮狀態(tài)時,數(shù)字圖像系統(tǒng)就只在顯示器800上顯示圖像A(其為精選圖像)。
根據(jù)本發(fā)明的一個實施例,如果導出圖像是使用內(nèi)部應用程序創(chuàng)建的,則可以把表現(xiàn)從另一個圖像(原始圖像)導出的圖像(導出圖像)所需要的數(shù)據(jù)的數(shù)量最小化。內(nèi)部應用程序是使標識對原始圖像所作的一個或多個改變的可用數(shù)據(jù)創(chuàng)建導出圖像的任一應用程序。如果導出圖像是由外部應用程序(其為非內(nèi)部應用程序的任何應用程序)創(chuàng)建的,則標識特定圖像的數(shù)據(jù)就被存儲起來。由于導出圖像是被外部應用程序所創(chuàng)建的,所以標識對原始圖像所作的一個或多個改變以創(chuàng)建導出圖像的數(shù)據(jù)是不可用的;因此,整個導出圖像都被存儲起來。然而,如果特定圖像是由內(nèi)部應用程序創(chuàng)建的,則標識對原始圖像所作的一個或多個改變的數(shù)據(jù)就被存儲起來。在這種情況下,通過應用標識對原始圖像所作的改變的數(shù)據(jù)而如需地創(chuàng)建導出的圖像。版本集可以包括由外部應用程序創(chuàng)建的圖像的第一部分,以及由內(nèi)部應用程序創(chuàng)建的圖像的第二部分。
拖放操作取決于涉及的實體到底是堆棧、組、還是版本集,拖和放(drop)操作就產(chǎn)生不同的結(jié)果。當用戶從顯示器的第一位置到顯示器的第二位置對堆棧啟動拖和放操作時,數(shù)字圖像系統(tǒng)將標識第二位置的堆棧中的精選圖像的副本的數(shù)據(jù)存儲在存儲裝置中。當用戶從顯示器的第一位置到顯示器的第二位置對組啟動拖和放操作時,數(shù)字圖像系統(tǒng)將標識第二位置的組的每個圖像的副本的數(shù)據(jù)記錄在存儲裝置中。當用戶從顯示器的第一位置到顯示器的第二位置對版本集啟動拖和放操作時,數(shù)字圖像系統(tǒng)將標識第二位置的版本集中的精選圖像的副本的數(shù)據(jù)存儲在存儲裝置中。
取決于用戶是否對堆棧、組、或版本集發(fā)起操作,該用戶所發(fā)起的影響圖像的視覺顯示的操作就被不同地執(zhí)行。對于由用戶指定的對堆棧執(zhí)行的操作,數(shù)字圖像系統(tǒng)就對該堆棧的精選圖像執(zhí)行操作。對于由用戶指定的將對組執(zhí)行的操作,數(shù)字圖像系統(tǒng)就對該組的所有圖像執(zhí)行操作。對于由用戶指定的將對版本集執(zhí)行的操作,數(shù)字圖像系統(tǒng)就對該版本集的精選圖像執(zhí)行操作。
嵌套容器堆棧、組、和版本集可以為嵌套的。組可以包括其本身為堆棧、組、和/或版本集的成員。堆??梢园ㄆ渥陨頌槎褩:?或版本集的成員。圖9是根據(jù)本發(fā)明一個實施例的包含另一組和一個堆棧的一組的圖示900。如圖9中所示,組910包含圖像A、圖像B、組A、和堆棧A。組A自身可包含一個或多個堆棧、組、和/或版本集。堆棧A也可以包含一個或多個堆棧、組、和/或版本集。
數(shù)字圖像系統(tǒng)基于與嵌套組一起存儲在存儲器910中的元數(shù)據(jù)922來可視地描繪圖9的嵌套組。元數(shù)據(jù)922標識堆棧,在該堆棧中的每個圖像、每個組、每個堆?;蛎總€版本集,該堆棧中哪個圖像、組、堆棧、或版本集是代表性圖像(或精選圖像),以及該組的狀態(tài)。假如組910是堆棧的話,則元數(shù)據(jù)922也會標識該堆棧中的每個圖像、每個組、每個堆棧、或每個版本集等的等級。數(shù)字圖像系統(tǒng)基于所存儲的、與嵌套的實體相關(guān)的元數(shù)據(jù)來顯示堆棧的圖像。在組或集中的每個組、每個堆棧、或每個版本集可以被展開或收縮。當組或堆棧(父)的精選圖像本身為組、堆棧、或版本集(子)時,則當父處于收縮狀態(tài)時,子的精選圖像就被數(shù)字圖像系統(tǒng)用作父的精選圖像。
當管理多個相關(guān)的圖像時,嵌套的堆棧和組可能是有利的。例如,在用戶每次按壓數(shù)碼相機的快門的時候,一些數(shù)字相機可以拍攝多個照片,例如,來捕獲高速運動快照。用戶每次拍攝圖片時,就有把由相機拍攝的每個圖像集關(guān)聯(lián)在單個一組或單個堆棧中的好處。以此方式,用戶可在以后更悠閑地檢查該組或該堆棧中的圖像,這是由于很可能用戶只希望最后使用該組或該堆棧中的一幅數(shù)字圖像。
一圖像集可以由數(shù)字圖像系統(tǒng)基于與該圖像集相關(guān)的信息自動地分配給組、堆棧、或版本集。當將一圖像集被分配給組、堆棧、或版本集時,標識該圖像集和該圖像集所分配到的實體(組、堆棧、或版本集)的元數(shù)據(jù)就被存儲在存儲裝置中。這種元數(shù)據(jù)在各種動作(例如, 包圍曝光(exposure bracketing)和定序(sequencing))期間被自動生成。包圍曝光包括在不同的時刻使用不同的曝光量來拍攝多幅類似主題的照片。定序包括同時拍攝多幅照片。
假如一圖像集中的每一個都是同時被拍攝的,則數(shù)字圖像系統(tǒng)就可使用所生成的元數(shù)據(jù)將該圖像集中的每一個都分配到同一組。在另一個實例中,假如使用不同的曝光量來拍攝類似主題的一圖像集,則數(shù)字圖像系統(tǒng)就可使用所生成的元數(shù)據(jù)將該圖像集中的每一個都分配到同一組。另外,在一個實例中,如果導出圖像是從原始圖像中創(chuàng)建的,則數(shù)字圖像系統(tǒng)可將原始圖像和導出圖像分配到同一版本集。因此,數(shù)字圖像系統(tǒng)可以基于如在元數(shù)據(jù)中所描述的一圖像集的特性,將該圖像集分配給組、堆棧、或版本集。由于在元數(shù)據(jù)中描述的該圖像集的任何特性都可以確定該圖像集是否被分配到組、堆、或版本集,所以本發(fā)明其他實施例中的數(shù)字圖像系統(tǒng)就可以被配置來用于基于在未出現(xiàn)在上面的實例中的元數(shù)據(jù)中描述的該圖像集的附加特性,以將一圖像集分配給組、堆、或版本集。
虛擬放大鏡的使用本發(fā)明一個實施例的數(shù)字圖像系統(tǒng)可以被用于使用虛擬放大鏡觀看顯示在顯示器上的數(shù)字圖像。當用戶使得目標區(qū)域在顯示器上改變位置時,虛擬放大鏡的透鏡區(qū)域就可相對于顯示器上的目標區(qū)域自動地改變定位,以確保透鏡區(qū)域總是無遮蓋地顯示在顯示器上。
圖11是根據(jù)本發(fā)明一個實施例的示出虛擬放大鏡的顯示1100的圖示。圖11示出了可視地表現(xiàn)數(shù)字圖像1110的顯示1100。虛擬放大鏡包括目標區(qū)域1120和透鏡區(qū)域1130。由目標區(qū)域1120識別的可視信息被顯示在透鏡區(qū)域1130內(nèi)。通過指向可視信息或通過將可視信息包圍在目標區(qū)域1120之內(nèi),目標區(qū)1120就可以識別可視信息。
圖11的虛擬放大鏡包括線1122和線1124。線1122和線1124可以為不透明的、透明的、或混合透明的(alpha blended)。由線1122、透鏡區(qū)域1130、線1124限制的區(qū)域可以是不透明的、透明的、或混合透明的。在特定實施例中,線1122和線1124可以為透明的,并且由線1122、透鏡區(qū)域1130、線1124、以及目標區(qū)域1120限制的區(qū)域可以為透明的,以有利地允許攝影者在透鏡區(qū)域1130中以最小化顯示1100被遮蓋的數(shù)量的方式觀看由目標區(qū)1120所識別可視信息。
圖10是示出了根據(jù)本發(fā)明的一個實施例的使用虛擬放大鏡的步驟的流程圖。在圖10的步驟1010中,在顯示器上的第一有界的區(qū)域中,顯示了包圍在顯示器上的第二有界區(qū)域內(nèi)的可視信息的不同的視覺描述。第一有界區(qū)域和第二有界區(qū)域被包圍在第三有界區(qū)域內(nèi)。該第一有界區(qū)域?qū)谕哥R區(qū)域1130,第二有界區(qū)域?qū)谀繕藚^(qū)域1120,并且第三有界區(qū)域?qū)陲@示1100。
目標區(qū)域1120和透鏡區(qū)域1130都可以具有任意形狀和大小(包括圓形)。在本發(fā)明的一個實施例中,目標區(qū)域1120和透鏡區(qū)域1130形狀相同。在本發(fā)明的另一個實施例中,目標區(qū)域1120和透鏡區(qū)域1130形狀不同。目標區(qū)域1120和透鏡區(qū)域1130其每個都可以具有不透明的邊界、透明邊界、或混合透明邊界。正如本文所使用的,混合透明的物體如此被部分透明地顯示。
在本發(fā)明的一個實施例中,可以實現(xiàn)目標區(qū)域1120使得目標區(qū)域1120描繪將在透鏡區(qū)域1130中觀看的區(qū)域的輪廓,而不遮蓋該區(qū)域,例如具有不透明邊界和透明中心的圓。在另一個實施例中,使用可移動視覺指示器(例如箭頭或十字準線)來實現(xiàn)目標區(qū)域1120。由目標區(qū)域1120識別的可視信息,會至少部分地被可移動視覺指示器遮蓋,除非可移動視覺指示器是透明混合的。因此,在這樣的實施例中,通過使用透明混合使可移動視覺指示器部分透明是有利的。
存在于透鏡區(qū)域1130的圖像的可視信息的顯示圖像分辨率可能不同于那個圖像的文件圖像分辨率。在一個實例中,圖像的顯示圖像分辨率可相對于那個圖像的文件圖像分辨率為放大的。在另一個實例中,可以基于存儲的圖像來生成圖像1100,圖像1100能夠以比圖像1100的文件圖像分辨率低或高的分辨率顯示在顯示1100上,并且透鏡區(qū)域1130可以與圖像1100的文件圖像分辨率相同的分辨率來描繪可視信息。在該實例中,用戶可以觀看位于對應于圖像1130的精確分辨率的透鏡區(qū)域1130中的可視信息。在另一個實例中,透鏡區(qū)域1130能夠以比圖像1100的文件圖像分辨率更高的分辨率來描繪可視信息。
用戶可以配置虛擬放大鏡以便按不同級別的分辨率來顯示可視信息。例如,用戶可以配置虛擬放大鏡來以比圖像1100高或低的分辨率顯示可視信息,以與圖像1110的分辨率相同的分辨率描繪可視信息。在另一個實例中,用戶可以配置虛擬放大鏡,以與圖像1110相同的分辨率來顯示可視信息,以比圖像1110高的或低的分辨率來描繪可視信息。
當用戶將目標區(qū)域1120從以第一分辨率顯示的第一區(qū)域移動到以不同于第一區(qū)域的分辨率顯示的第二區(qū)域時,目標區(qū)域1120的大小就發(fā)生改變而并未改變顯示在透鏡區(qū)域1130中的可視信息的放大級別。當目標區(qū)域1120識別圖像的一部分而該圖像中的與該部分相關(guān)的可視信息被顯示在透鏡區(qū)域1130內(nèi)時,如果透鏡區(qū)域1130能夠描繪的可視信息的數(shù)量發(fā)生改變(例如,目標區(qū)域1120在比前一區(qū)域的分辨率更低的分辨率的區(qū)域上移動),則目標區(qū)域1120的大小就將發(fā)生改變(這是因為由目標區(qū)1120包圍的可視信息被描繪在透鏡區(qū)域1130中),以識別可由透鏡區(qū)域1130描繪的可視信息的新區(qū)域。
另外,目標區(qū)域1120的尺寸大小可保持固定,而透鏡區(qū)域1130尺寸大小可發(fā)生改變,以成比例對應(account for)可由透鏡區(qū)域1130描繪的可視信息的數(shù)量變化。例如,如果目標區(qū)域1120在比前一區(qū)域更低的分辨率的區(qū)域上移動,則目標區(qū)域1120的尺寸大小仍然保持固定,但是透鏡區(qū)域1130的尺寸將收縮,以成比例對應被描繪的可視信息所減小的數(shù)量。因此,當移動目標區(qū)域1120以便按與先前識別的分辨率不同級別的分辨率來識別可視信息的一部分時,目標區(qū)域1120或透鏡區(qū)域1130的大小就可改變,以成比例對應可由透鏡區(qū)域1130描繪的可視信息的數(shù)量變化。
自動方位調(diào)整在圖10的步驟1020中,當用戶在顯示1100內(nèi)移動目標區(qū)域1120時,透鏡區(qū)域1130的方位就可相對于目標區(qū)1120而發(fā)生變化。執(zhí)行步驟1020以確保透鏡區(qū)域1130總顯示在顯示1100上。
圖12是根據(jù)本發(fā)明一個實施例的改變虛擬放大鏡在顯示器1200上的方位的描述。如圖12所示,響應于用戶移動目標區(qū)域1120的位置,數(shù)字圖像系統(tǒng)使透鏡區(qū)域1130從位置1140移動到位置1142。用戶可以通過多種機構(gòu)(例如,輸入裝置2014和光標控制器2016)將用戶輸入提交給數(shù)字圖像系統(tǒng),來移動目標區(qū)域1120的位置。
數(shù)字圖像系統(tǒng)維護描述目標區(qū)域1120和透鏡區(qū)域1130的位置的數(shù)據(jù)。用戶可以通過使用輸入裝置2014和/或指針控制器2016而將用戶輸入提交給數(shù)字圖像系統(tǒng)來使目標區(qū)域1120在顯示1100上移動。透鏡區(qū)域1130根據(jù)目標區(qū)域1120來移動,例如,若將目標區(qū)域1120在顯示器上向左移動兩英寸,則透鏡區(qū)域1130在顯示器上就被向左移動兩英寸。當數(shù)字圖像系統(tǒng)檢測到用戶已經(jīng)提交了包括用于改變目標區(qū)域1120的位置指令的用戶輸入時,則數(shù)字圖像系統(tǒng)(a)更新描述目標區(qū)域1120的位置的數(shù)據(jù)以反映由用戶輸入識別的位置,并且(b)更新目標區(qū)域1120的顯示以反映新位置。類似地,當透鏡區(qū)域1130被數(shù)字圖像系統(tǒng)所移動時,則數(shù)字圖像系統(tǒng)(a)更新描述顯示器1200上的透鏡區(qū)域1130的位置的數(shù)據(jù),并且(b)更新顯示1200以反映透鏡區(qū)域1130的新位置。
在本發(fā)明的實施例中,數(shù)字圖像系統(tǒng)確保透鏡區(qū)域1130總是在顯示器上可見的,而不管目標區(qū)域1120位于顯示器上何處。當數(shù)字圖像系統(tǒng)檢測到目標區(qū)域1120正接近顯示1100的邊緣時,數(shù)字圖像系統(tǒng)就確定透鏡區(qū)域1130是否比目標區(qū)域1120更靠近顯示1100的邊緣。如果透鏡區(qū)域1130比目標區(qū)域1120更靠近顯示1100的邊緣,則數(shù)字圖像系統(tǒng)(a)改變顯示器上的目標區(qū)域1120和透鏡區(qū)域1130之間的方位,以使得目標區(qū)域1120比透鏡區(qū)域1130更靠近顯示1100的邊緣,并且(b)更新描述透鏡區(qū)域1130的位置的數(shù)據(jù)以反映透鏡區(qū)域1130的新位置。在透鏡區(qū)域1130的方位正在變化的同時,透鏡區(qū)域1130繼續(xù)描繪圖像1110的同一可視信息。通過相對于目標區(qū)域1120而改變透鏡區(qū)域1130的方位,數(shù)字圖像系統(tǒng)就確保透鏡區(qū)域1130總是在顯示器上可見的。
在一個實施例中,通過(a)在透鏡區(qū)域1130和目標區(qū)域1120之間保持恒定距離,以及(b)相對于目標區(qū)域1120改變透鏡區(qū)域1130的方位以和顯示器1200的中心對齊,例如,圖12所示,透鏡區(qū)域1130被從位置1140移動到位置1142,數(shù)字圖像系統(tǒng)就確定出透鏡區(qū)域的新位置應該在哪里。
在另一個實施例中,數(shù)字圖像系統(tǒng)使用多個子區(qū)域確定透鏡區(qū)域的新位置應該在哪。數(shù)字圖像系統(tǒng)對將顯示1200分割成多個子區(qū)域的數(shù)據(jù)進行維護,例如,圖12所示,數(shù)字圖像系統(tǒng)可以保存將顯示器1200分割成四個子區(qū)域的數(shù)據(jù)。每個子區(qū)域的分割不需要被可視地呈現(xiàn)給用戶。數(shù)字圖像系統(tǒng)通過基于目標區(qū)域1120位于顯示1100的哪一個子區(qū)域來確定目標區(qū)域1120和透鏡區(qū)域1130之間的方位而執(zhí)行步驟1020。當數(shù)字圖像系統(tǒng)改變目標區(qū)域1120和透鏡區(qū)域1130之間的方位時,數(shù)字圖像系統(tǒng)就在目標區(qū)域1120和透鏡區(qū)域1130之間保持相同的距離。
當數(shù)字圖像系統(tǒng)確定透鏡區(qū)域1130應該改變方位時,數(shù)字圖像系統(tǒng)就改變透鏡區(qū)域1130的方位以指向與透鏡區(qū)域所處的子區(qū)域相關(guān)的特定方位。例如,無論何時透鏡區(qū)域1130改變子區(qū)域1中的方位,數(shù)字圖像系統(tǒng)都可改變透鏡區(qū)域1130的方位以使得透鏡區(qū)域1130或多或少地位于目標區(qū)域1120的東南方位。如圖12所示,當透鏡區(qū)域1130位于子區(qū)域1中,在透鏡區(qū)域1130改變方位時,就旋轉(zhuǎn)透鏡區(qū)域1130使得透鏡區(qū)域1130或多或少位于目標區(qū)域1120的東南方位以確保透鏡區(qū)域1130被完全描繪在顯示器1200上。
在另一個實例中,無論何時透鏡區(qū)域1130在子區(qū)域2中改變方位時,數(shù)字圖像系統(tǒng)就可改變透鏡區(qū)域1130的方位,以使得透鏡區(qū)域1130或多或少地位于目標區(qū)域1120的東北方位。在另一個實例中,無論何時透鏡區(qū)域1130在子區(qū)域3中改變方位,數(shù)字圖像系統(tǒng)都可改變透鏡區(qū)域1130的方位,以使得透鏡區(qū)域1130或多或少地位于目標區(qū)域1120的西南方位。在另一個實例中,無論何時透鏡區(qū)域1130在子區(qū)域4中改變方位,數(shù)字圖像系統(tǒng)都可改變透鏡區(qū)域1130的方位,以使得透鏡區(qū)域1130或多或少的位于目標區(qū)域1120的西北方位。有利的是,本發(fā)明實施例為相對于目標區(qū)域1120而旋轉(zhuǎn)透鏡區(qū)域1130的方位以確保透鏡區(qū)域1130被完全描繪在顯示1100上做好了準備。因此,無論何時透鏡區(qū)域1130可能在顯示1100上被遮蓋時,例如當透鏡區(qū)域1130被顯示1100的邊界部分遮蓋的時候,透鏡區(qū)域1130都可相對于目標區(qū)域1120改變方位以確保透鏡區(qū)域1130被完全描繪在顯示1100上。
本發(fā)明的其他實施例可以采用與上述的方法不同的方法以確定透鏡區(qū)域1130相對于目標區(qū)域1120應該被旋轉(zhuǎn)到哪里。
通過在一段時間內(nèi)逐漸描繪透鏡區(qū)域1130穿越一個或多個中間位置而從第一位置(位置1140)到第二位置(位置1142)的移動,就可以執(zhí)行步驟1020。因此,用戶能夠可視地斷定透鏡正在被旋轉(zhuǎn)以提供透鏡區(qū)域1130的無遮蓋的視圖,這就避免用戶在顯示器1200上突然移動圖像時搞不清方位。
透鏡區(qū)域1130可以顯示由目標區(qū)域1120識別的任何視覺信息,并且目標區(qū)域1120可以被定位于顯示器上的任何位置。例如,目標區(qū)域1120可以被定位于浮動控制器(下面更詳細描述)上,以使透鏡區(qū)域1130顯示所顯示在浮動控制器上的圖像的可視信息。
目標區(qū)域1120可以被定位于顯示在顯示器上的任何可視信息上。例如,目標區(qū)域1120可以被定位于顯示在顯示器上的縮略像上或在顯示在工具欄上的縮略像上,例如下面描述的浮動控制器1310。當目標區(qū)域1120識別與縮略像相關(guān)的可視信息時,透鏡區(qū)域1130顯示關(guān)于縮略像的可視信息。例如,攝影者可以將目標區(qū)域1120定位在顯示在顯示器上的縮略像之上。此后,攝影者可以通過觀察透鏡區(qū)域1130來以文件圖像分辨率檢查縮略像的可視信息。這樣,即使縮略像以比文件圖像分辨率更低的級別的分辨率被顯示,攝影者也能夠以準確的分辨率來觀看縮略像的數(shù)字圖像,其中,數(shù)字圖像就是以該分辨率存儲的。
使用浮動控制器顯示圖像本發(fā)明一個實施例的數(shù)字圖像系統(tǒng)可以被用于使用浮動控制器顯示一個或多個數(shù)字圖像。圖13是根據(jù)本發(fā)明一個實施例的具有浮動控制器1310的顯示器1300的圖示。數(shù)字圖像系統(tǒng)可以存儲描述如何將浮動控制器1310呈現(xiàn)在顯示器1300上的數(shù)據(jù)。用戶可以選擇一個或多個在浮動控制器1310上所顯示的圖像以將其顯示在顯示器1300上。例如,圖13所示,浮動控制器1310能夠以其中兩個圖像(圖像1322和圖像1324)并排顯示在顯示器1300上以有助于比較的某一比較模式運行。當浮動控制器1310正運行于比較模式時,兩個被顯示的圖像中的一個圖像就保持固定(例如,圖像1324),同時用戶可以將用戶輸入提交給數(shù)字圖像系統(tǒng)以使得數(shù)字圖像系統(tǒng)把其他圖像(例如,圖像1322)的顯示改變成不同圖像。這樣,用戶可以將圖像1324與顯示在由圖像1322占據(jù)的位置上的多種圖像進行比較。
浮動控制器1310也可以運行于堆棧模式。堆棧模式類似于比較模式,(兩個圖像顯示在顯示器上,其中,可以將在第一位置的圖像中的一個與在第二位置的、一次一個地顯示的多個圖像進行比較)——除了未移動的圖像是組、堆棧、或版本集的精選圖像,以及屬于組、堆棧、或版本集的正在被比較的其它圖像。堆棧模式也可以被用于選擇組、堆、或版本集的新的精選圖像。
如果不是浮動控制器1310能夠顯示的所有圖像都顯示在浮動控制器1310上,則用戶可以通過位于浮動控制器1310上的控件(control)將用戶輸入提交給數(shù)字圖像系統(tǒng),使得數(shù)字圖像系統(tǒng)滾動圖像,以便于用戶觀看浮動控制器1310能夠顯示的所有圖像。
浮動控制器1310不需要具有靠近顯示器1300的任何邊界的任何邊界。例如,用戶可以使浮動控制器1310被顯示在顯示器1300上的任何位置(包括其中浮動控制器1310不靠近顯示器1300的任何邊界的位置,或者,不靠近任何屏、窗口、或應用程序的任何邊界或不與任何屏幕、窗口、或應用程序的任何邊界相關(guān),而顯示在顯示器1300上)。浮動控制器1310也可以被定位于顯示器1300上的一個或多個圖像上。例如,浮動控制器1310可以整體或部分地遮蓋圖像1322和圖像1324這兩者中的一個或多個。
用戶可以將浮動控制器1310定位在顯示器1300上的任何地方,包括不同的方位(例如水平或垂直的)。用戶可以使浮動控制器1310垂直地顯示在顯示器1300上,而不是如圖13所示的水平的這樣。浮動控制器1310可以由用戶從垂直方位到水平方位,或者從水平方位到垂直方位進行旋轉(zhuǎn)。在本發(fā)明的一個實施例中,如果浮動控制器1310被拖到顯示器1300的邊界附近,則可以自動調(diào)整浮動控制器1310的方位以對應于顯示器1300的邊界的方位。例如,如果浮動控制器1310當前被垂直顯示,并且用戶在顯示器1300的水平邊界的可配置的距離內(nèi)拖動浮動控制器1310,則浮動控制器1310就可被自動地水平顯示在顯示器1300上。浮動控制器1310的大小也可以由用戶進行配置。
當數(shù)字圖像系統(tǒng)接收指示了浮動控制器1310的大小、形狀、方位、或位置將被改變的用戶輸入時,數(shù)字圖像系統(tǒng)(a)更新描述浮動控制器1310的大小、形狀、和方位的數(shù)據(jù)來反映所述用戶輸入,以及(b)更新顯示器1300,以如在所接收的用戶輸入中所指示的來反映浮動控制器1310的新的大小、形狀、方位、或位置。
顯示和隱藏浮動控制器的顯示在本發(fā)明的一個實施例中,只要顯示在顯示器1300上的、由用戶輸入裝置控制的指針位于浮動控制器1310之上,就持續(xù)顯示浮動控制器1310。用戶可以使用輸入裝置2014或光標控制器2016來移動顯示器1300上的指針的顯示。數(shù)字圖像系統(tǒng)存儲并更新描述顯示器1300上的指針的當前位置的數(shù)據(jù)。
當指針被移出浮動控制器1310時,空閑期就被跟蹤??臻e期是其中任何類型的用戶輸入都沒有被接收到的時期,例如,沒有通過輸入裝置2014或光標控制2016的輸入被接收到。如果,當指針離開浮動控制器1310時,空閑期超過預定的閾值持續(xù)時間,則浮動控制器1310就被隱藏(浮動控制器1310不再顯示在顯示器1300上)。預定閾值持續(xù)時間可以由用戶使用顯示在浮動控制器1310上的控件進行配置。如果在空閑時期,浮動控制器1310被隱藏了,則響應于空閑期的結(jié)束,浮動控制器1310就被重新顯示在顯示器1300上。
將組、堆棧、或版本集中的圖像顯示在浮動控制器上序列中的圖像可以被顯示在浮動控制器1310上。如果一個圖像與另一個圖像具有關(guān)聯(lián),例如,兩個圖像都屬于堆棧、組、或版本集,則數(shù)字圖像系統(tǒng)可將視覺指示器顯示在顯示器1300上,來為用戶標識此關(guān)聯(lián)。例如,數(shù)字圖像系統(tǒng)在圖像1320、圖像1322、和圖像1324之間顯示視覺指示器,以及在圖像1326、圖像1328、和圖像1330之間顯示視覺指示器。在另一個實施例(未描述)中,不同的視覺指示器可被用于組、堆棧、或版本集以使得用戶能夠在其每個都具有視覺指示器的一圖像集之間標識特定的關(guān)聯(lián)(標識關(guān)聯(lián)是組、堆棧、還是版本集)。
用戶可以選擇顯示在浮動控制器1310上的圖像序列中的一個圖像。在一個實施例中,當用戶選擇顯示在浮動控制器1310上的圖像序列中的新圖像時,數(shù)字圖像系統(tǒng)就可以將圖像序列的顯示集中(center)到在浮動控制器1310上被選擇的圖像上。在另一實施例中,當用戶選擇在浮動控制器1310上所顯示的圖像序列中的新圖像時,數(shù)字圖像系統(tǒng)就可以將圖像序列集中到與所選擇的圖像相關(guān)的組、堆棧、或版本集上。在另一個實施例中,當用戶選擇所選擇的圖像時,如果所選擇的圖像位于與先前所選擇的圖像相同的組、堆棧、或版本集中,則數(shù)字圖像系統(tǒng)就不將圖像序列的顯示集中到所選擇的圖像上。例如,如果選擇了圖像1322,并且此后,用戶使圖像1324被選中,則數(shù)字圖像系統(tǒng)將不會把圖像序列的顯示集中到圖像1324上。另一方面,如果選擇了圖像1324,并且此后,用戶使圖像1326被選中,則數(shù)字圖像系統(tǒng)就使圖像序列的顯示被集中于圖像1326或組、堆棧、或包含圖像1326的版本周圍。
通過浮動控制器使用額定值浮動控制器1310可以包含額定值控件1350。用戶可以配置額定值控件1350以傳送將額定值分配給在浮動控制器1310上所顯示的每個圖像的用戶輸入。當用戶把用戶輸入傳送到將額定值與特定圖像相關(guān)聯(lián)的數(shù)字圖像系統(tǒng)時,數(shù)字圖像系統(tǒng)就把標識特定圖像的額定值的數(shù)據(jù)存儲起來。分配給特定圖像的額定值可以為額定值序列中的一個。用戶可以基于不同的標準(例如,他或她有多喜歡或多不喜歡特定圖像)來分配額定值。
用戶可以配置浮動控制器1310以把符合或超過指定的額定值的圖像顯示在顯示器1300上。用戶可以通過浮動控制器1310上所顯示的額定值控件1350將用戶輸入提交給數(shù)字圖像系統(tǒng),以使被分配了至少與用戶輸入中指定的額定值一樣高的額定值的圖像被顯示在顯示器1300上。作為響應,數(shù)字圖像系統(tǒng)至少部分基于特定額定值、額定值序列、以及分配給多個圖像中的每個圖像的額定值,來選擇圖像的子集。無論何時用戶使浮動控制器1310被顯示,數(shù)字圖像系統(tǒng)也都可以選擇圖像的子集。
在數(shù)字圖像系統(tǒng)確定了哪些圖像被分配了符合或超過特定額定值的額定值后,那些圖像就可以被顯示在顯示器1300上。在另一個實施例中,用戶可以使用浮動控制器1310,以只把被分配了正好與指定的額定值相同的額定值的那些圖像顯示在顯示器1300上。在其他實施例中,用戶可以使用浮動控制器1310,以只把被分配了符合由用戶通過配置額定值控件1350所指定的一組標準的額定值的那些圖像顯示在顯示器1300上。
額定值控件1350使用戶能將用戶輸入提交給數(shù)字圖像系統(tǒng)以改變當前分配給圖像的額定值。當數(shù)字圖像系統(tǒng)接收到指定分配給圖像的額定值將被改變到新值的用戶輸入時,數(shù)字圖像系統(tǒng)就更新數(shù)字圖像系統(tǒng)存儲的、描述那個圖像的額定值的數(shù)據(jù),以反映該新值。如果改變了特定圖像的額定值,則,若新額定值不符合當前在顯示器1300上所顯示的那些圖像的標準,就可將特定圖像從在顯示器1300上所顯示的一圖像集中除去。
在本發(fā)明的一個實施例中,無論何時開始執(zhí)行浮動控制器1310,用戶都可以根據(jù)特定的額定值集合來配置浮動控制器1310以顯示一個或多個圖像。例如,當數(shù)字圖像系統(tǒng)最初執(zhí)行浮動控制器1310的時候,浮動控制器1310就可以顯示對應于指定的一組額定值的一個或多個圖像。
使用浮動控制器搜索圖像浮動控制器1310也包括搜索控件1360,其可被用戶配置以將用戶輸入提交給數(shù)字圖像系統(tǒng)來使數(shù)字圖像系統(tǒng)搜索多個圖像而確定多個圖像中哪一個與包含在用戶輸入中的一個或多個搜索術(shù)語相關(guān)。由數(shù)字圖像系統(tǒng)存儲的每個圖像都可以自動地與可為一個或多個搜索術(shù)語的主題的信息相關(guān)。例如,關(guān)于數(shù)字圖像系統(tǒng)可用的每個圖像的信息(例如,創(chuàng)建日期、圖像大小、創(chuàng)建該圖像的應用程序)可通過數(shù)字圖像系統(tǒng)自動地與圖像相關(guān)??梢酝ㄟ^用戶配置搜索控制器1360以將用戶輸入提交給數(shù)字圖像系統(tǒng)以使數(shù)字圖像系統(tǒng)將信息(例如,標題、圖像的描述、或圖像的用途)與圖像相關(guān),從而使其他信息與每個圖像相關(guān)。
用戶可通過配置搜索控制器1360來將用戶輸入提交給數(shù)字圖像系統(tǒng),以確定多個圖像中哪些圖像對應于包含在用戶輸入中的多個搜索術(shù)語。在接收到用戶輸入時,數(shù)字圖像系統(tǒng)就確定哪些圖像對應于多個搜索術(shù)語。此后,對于對應于多個圖像中的至少一個圖像的多個搜索術(shù)語中的每個搜索術(shù)語,數(shù)字圖像系統(tǒng)在顯示器1300上都顯示一個圖像,該圖像指示對應于所述多個圖像中至少一個圖像的多個搜索術(shù)語中的特定搜索術(shù)語。例如,若用戶想要對兩個搜索術(shù)語(即大小和創(chuàng)建日期)進行搜索,并且只有創(chuàng)建日期搜索術(shù)語已產(chǎn)生匹配,則數(shù)字圖像系統(tǒng)就顯示與創(chuàng)建日期搜索術(shù)語相關(guān)的圖像。
用戶可以選擇與搜索術(shù)語相關(guān)的任何顯示的圖像,以觀看與那個搜索術(shù)語相關(guān)的搜索結(jié)果。例如,若用戶選擇了在顯示器上所顯示的創(chuàng)建日期搜索術(shù)語圖像,則數(shù)字圖像系統(tǒng)就呈現(xiàn)已與創(chuàng)建日期搜索術(shù)語相匹配的那些圖像。
顯示圖像序列浮動控制器1310可以顯示有界的圖像序列??娠@示在浮動控制器1310上的、有界的圖像序列可以包含比能夠同時被顯示在浮動控制器1310上的圖像更多的圖像。因此,浮動控制器1310可以包含使用戶能夠滾動顯示在浮動控制器1310上所顯示的圖像的控件。
在浮動控制器1310上所顯示的有界的圖像序列可用向用戶指示有界的圖像序列是位于開頭還是位于結(jié)尾的方式,或者可用有界的序列中的額外的圖像是否可通過進一步沿著一個方向或沿著另一個方向滾動而被顯示的方式,可視地進行描繪。在本發(fā)明的一個實施例中,當有界的序列中的圖像位于有界的圖像序列的開頭或結(jié)尾時,則那個圖像可以被無修改地完全描繪。在另一方面,當有界的序列中的圖像并不位于有界的圖像序列中的開頭或結(jié)尾時,則該圖像可以通過修改而被描繪,例如,圖像可以被部分變暗地顯示。
圖14是根據(jù)本發(fā)明一個實施例的有界的圖像序列的圖示1400。當圖14的有界的圖像序列中的多個圖像被顯示在浮動控制器1410上時,圖像序列就不需要被顯示在浮動控制器上。圖像1420-1432屬于有界的十個圖像的一序列,其中,圖像1420、1422、1424、1426、1428、1430、以及1432(全部或部分)被顯示在圖14的浮動控制器1410上,并且其中,圖像1434、1436、以及1438未被顯示在浮動控制器1410上。圖像1420是有界的序列的開始,而圖像1438是有界的序列的結(jié)尾。
在某些情況下,數(shù)字圖像序列可以使圖像不同地呈現(xiàn)在顯示器上。當有界的圖像序列中所描繪的圖像是第一個或最后一個被顯示的圖像時,并且該圖像位于有界的圖像序列的開頭或結(jié)尾,則可以無修改地完全描繪該圖像以發(fā)送信號通知觀察者該圖像位于有界的圖像序列的開頭或結(jié)尾。圖像1420被無修改地完全描繪,從而通知觀察者圖像1420是有界的圖像序列的開頭。當有界的圖像序列中被描繪的圖像是第一個或最后一個顯示的圖像時,且該圖像并不位于有界的圖像序列的開頭或結(jié)尾,則可以使用視覺指示器描繪該圖像,以發(fā)送信號通知視圖該圖像不位于有界的圖像序列的開頭或結(jié)尾。使用視覺指示器1440來描繪圖像1432以通知觀察者圖像1432不位于有界的圖像序列的結(jié)尾。能夠以多種不同的方式可視地描繪視覺指示器1440,例如,通過遮蔽圖像的一部分、通過包括靠近圖像的陰影、通過改變圖像的顏色以及包含標簽、圖標、或圖像內(nèi)容,來進行。
隨著用戶滾動有界的圖像序列,視覺指示器1440就可被更新。當用戶滾動有界的圖像序列時,至少第一圖像中的一部分就被停止顯示。同時,第二圖像中的先前未被顯示的一部分被顯示出來。然后,視覺指示就被顯示,其指示顯示先前未顯示的那部分是否完全顯示了對應于有界的序列中的特定位置處的一個項目的視覺描繪。在本發(fā)明的一個實施例中,特定位置是有界的圖像序列的開頭或結(jié)尾。在本發(fā)明的其他實施例中,特定位置包括了除有界的圖像序列的開頭或結(jié)尾以外(例如,位于有界的圖像序列中間的那個圖像)的另一個位置。
由于有界的圖像序列能夠以多種不同的方式(例如,水平或垂直的)呈現(xiàn)給用戶,取決于有界的圖像序列如何被顯示,用戶就可以水平地或垂直地滾動有界的圖像序列。
在一個以上的顯示器上顯示圖像本發(fā)明的一個實施例的數(shù)字圖像系統(tǒng)可以被用于在一個以上的顯示器上顯示圖像。圖15是根據(jù)本發(fā)明一個實施例的數(shù)字圖像系統(tǒng)1500的框圖,該系統(tǒng)可以用于在一個以上的顯示器上顯示圖像。數(shù)字圖像系統(tǒng)1500包括計算機系統(tǒng)1510、初級顯示裝置1520、次級顯示裝置1530、1532、以及1534。雖然圖15中只示出了三個次級顯示裝置,但是數(shù)字圖像系統(tǒng)1500可以包括任意數(shù)量(包括一個或多個)的次級顯示裝置??梢允褂媚軌蚴箶?shù)字圖像被顯示在初級顯示裝置1520和每個次級顯示裝置之上的任何部件來實現(xiàn)計算機系統(tǒng)1510??梢允褂媚軌蝻@示數(shù)字圖像的任何部件(例如CRT或投影儀)來實現(xiàn)初級顯示裝置1520和每個次級顯示裝置1530、1532、和1534。
在計算機系統(tǒng)1510的初級顯示裝置1520上,計算機系統(tǒng)1510生成顯示。如果計算機系統(tǒng)1510處于第一模式,則在次級顯示裝置1530、1532、和1534上,計算機系統(tǒng)1510生成與同時被顯示在初級顯示裝置1520上的顯示相同的顯示。另一方面,如果計算機系統(tǒng)1510處于第二模式,則在次級顯示裝置1530、1532和1534上,計算機系統(tǒng)1510生成與同時被顯示在初級顯示裝置1520上的顯示不同的顯示。
用戶可將用戶輸入傳送到計算機系統(tǒng)1510以在第一模式和第二模式之間切換計算機系統(tǒng)1510。用戶可通過多種機構(gòu)(例如輸入裝置2014和光標控制器2016)以將用戶輸入提交給數(shù)字圖像系統(tǒng)。用戶可能希望在第一模式和第二模式之間切換,以幫助將素材呈現(xiàn)給次級顯示裝置1530、1532、和1534的觀察者。
在本發(fā)明的一個實施例中,當計算機系統(tǒng)處于第二模式時,在初級顯示裝置上所生成的顯示就包括圖形用戶界面對象,例如浮動工具欄,其未被顯示在一個或多個次級顯示裝置1530、1532、和1534上。圖形用戶界面對象具有控件,該控件用于選擇什么應該被顯示在所述的一個或多個次級顯示裝置上。
在格中滾動圖像本發(fā)明的一個實施例中的數(shù)字圖像系統(tǒng)可用于,當滾動被排列成一組行或列的圖像序列的數(shù)字圖像時,自動地提升格中的一個或多個行或列。圖16是根據(jù)本發(fā)明一個實施例來顯示被排列成一系列行的數(shù)字圖像序列的顯示1600的圖示。顯示1600所定的大小是為了使得一次只有兩行可以被可視地呈現(xiàn)在顯示1600上。因此,只有在行2和行3中的圖像被顯示在顯示1600上。行1和行4當前未被顯示在顯示1600上。
用戶可以水平地(從列到列地)或垂直地(從行到行地)滾動數(shù)字圖像序列。在圖16的顯示1600中,用戶垂直地(行到行地)滾動圖像序列,這是由于每列中的每個圖像都可以被顯示在顯示1600上,但并不是圖像序列中的圖像的所有行都可以被一次顯示在顯示1600上。當用戶水平或垂直地滾動圖像格的時候,下面描述的技術(shù)是可適用的。因此,下面的方法將依據(jù)一排圖像(其為垂直或水平在顯示器上對齊的圖像)進行論述。例如,行1、行2、行3、列1、列2、和列3,其每個都是一排圖像。
在本發(fā)明的一個實施例中,所顯示的、來自圖像序列的一圖像集在顯示器視圖上被顯示給用戶。例如,行2和行3被顯示在顯示1600上,而圖像序列(即,圖像1602-1640)的部分中的、行2和行3中的多個圖像也就被顯示在顯示1600上。圖像序列包括一個或多個未被顯示的圖像,例如行1和行4中的圖像,其沒有被顯示出來。
用戶可以通過輸入裝置2014和/或從該組顯示的圖像(行2和行3中的圖像)選擇特定圖像的光標控制器2016而將用戶輸入提交給數(shù)字圖像系統(tǒng)。例如,用戶輸入可以由選擇圖像1614的數(shù)字圖像系統(tǒng)接收,其中圖像1624先前已被選中。
響應于接收了選擇新近被選擇的圖像的用戶輸入,數(shù)字圖像系統(tǒng)就確定在被顯示的一圖像集中的包含新近被選擇的圖像的那排之前的排的數(shù)量是否小于第一預定閾值。第一預定閾值是將被顯示(如果可行的話)在包含新近被選擇的圖像的排之前的排的可配置的數(shù)量。數(shù)字圖像系統(tǒng)對標識第一預定閾值的數(shù)據(jù)進行維護。用戶可以將用戶輸入提交給數(shù)字圖像系統(tǒng)以更新第一預定閾值來反映新的排數(shù)。
如果數(shù)字圖像系統(tǒng)確定在所顯示的一圖像集中的包含新近被選擇的圖像的那排之前的排的數(shù)量小于第一預定閾值,則數(shù)字圖像系統(tǒng)就顯示在所顯示的一圖像集之前的一排未被顯示的圖像,而停止顯示在新近被選擇的圖像之后的一排被顯示的圖像。在該實例中,如果選擇了圖像1614的用戶輸入被接收到,并且如果預定閾值指示一排圖像將被顯示(如果可行的話)在包含所選擇的圖像的那排(在該實例中,行2)之前,則數(shù)字圖像系統(tǒng)就顯示在包含所選擇的圖像1614的排之前的額外一排的圖像,例如數(shù)字圖像系統(tǒng)將在顯示1600上顯示行1,而停止在顯示1600上顯示行3。
此外,響應于接收選擇新近被選擇的圖像的用戶輸入,數(shù)字圖像系統(tǒng)確定在顯示的一圖像集中的包含新近被選擇的圖像的那排之后的排的數(shù)量是否小于第二預定閾值。第二預定閾值是將被顯示(如果可行的話)在包含新近被選擇的圖像之后的排的可配置數(shù)量。數(shù)字圖像系統(tǒng)對標識第二預定閾值的數(shù)據(jù)進行維護。用戶可以將用戶輸入提交給數(shù)字圖像系統(tǒng)以更新第二預定閾值來反映新的排數(shù)。
如果數(shù)字圖像系統(tǒng)確定在所顯示的一圖像集中的包含新近被選擇的圖像的那排之后的排的數(shù)量小于第二預定閾值,則數(shù)字圖像系統(tǒng)顯示被顯示的一圖像集之后的一排未被顯示的圖像,而停止顯示在新近被選擇的圖像之前的一排被顯示的圖像。舉例來說,如果接收到選擇圖像1624的用戶輸入,并且如果第二預定閾值指示至少一排圖像將被顯示(如果可行的話)在包含新近被選擇的圖像的那排之后,那么,就可以顯示在所選擇的圖像1624之后的額外的一排圖像(行4),并且可以停止顯示一排圖像(行1)。
新近被選擇的圖像不必位于緊臨新添加的排的那排之中。舉例來說,如果新近被選擇的圖像是圖像1614,并且如果第一預定閾值是三排,那么,如果沒有三排被顯示在新近被選擇的圖像之前,則可由數(shù)字圖像系統(tǒng)將三排添加進該顯示器。
在本發(fā)明的一個實施例中,在一排圖像已被添加到所顯示的一圖像集后,除了被停止顯示的那排以外的被顯示的圖像所有排都被移位,以便為新近被顯示的排騰出位置。舉例來說,如果將一排圖像添加到所顯示的一圖像集(行4),并且停止顯示行2,則可位移行3以容納額外的行4。
在本發(fā)明的一個實施例中,可以依據(jù)在一排中的圖像數(shù)量而不是排的數(shù)量來表示第一預定閾值和第二預定閾值。例如,在該實施例中,響應于接收了選擇新近被選擇的圖像的用戶輸入,數(shù)字圖像系統(tǒng)確定(a)在所顯示的一圖像集中的新近被選擇的圖像之前的圖像的數(shù)量是否小于第一預定閾值,以及(b)在所顯示的一圖像集中的新近被選擇的圖像之后的圖像的數(shù)量是否小于第二閾值。
散開或重新堆積一堆圖像本發(fā)明實施例的數(shù)字圖像系統(tǒng)可以被用于,當一組數(shù)字圖像中的一個或多個以遮蓋方式被顯示在顯示器上時,觀看未被遮蓋的一組數(shù)字圖像中的每一個。例如,若數(shù)字圖像的一部分位于另一個數(shù)字圖像之后,則在顯示器上被顯示的數(shù)字圖像就可能被遮蓋。圖17是示出了根據(jù)本發(fā)明一個實施例的以未遮蓋方式觀看一組數(shù)字圖像系統(tǒng)中每個圖像的步驟的流程圖。在步驟1710中,一堆圖像被顯示在顯示器上。該堆圖像包括多個被排列成第一排列的多個圖像,其中,該堆中至少一個圖像與該堆中至少一個其他圖像交疊。數(shù)字圖像系統(tǒng)可通過在顯示器上顯示該堆圖像來執(zhí)行步驟1710。在步驟1710中被顯示的該堆圖像可從由數(shù)字圖像系統(tǒng)存儲的多個圖像中生成出來。
圖18是根據(jù)本發(fā)明一個實施例顯示其中一圖像集中至少一個被至少部分地遮蓋的該圖像集的第一顯示1800的圖示。圖18的顯示1800可在執(zhí)行步驟1710之后產(chǎn)生。當被顯示在顯示1800上的、該堆圖像中的大多數(shù)圖像與另一個圖像交疊時,步驟1710中被顯示的該堆圖像中的任何數(shù)量的圖像都可被部分遮蓋或可以與另一個交疊。在執(zhí)行步驟1710之后,處理過程繼續(xù)進行到步驟1720。
在步驟1720中,對指示第一排列中的每個圖像的位置的位置數(shù)據(jù)進行存儲。位置數(shù)據(jù)可以由數(shù)字圖像系統(tǒng)進行存儲。在執(zhí)行步驟1720之后,處理過程繼續(xù)進行到步驟1730。
在步驟1730中,當該堆中的多個圖像以步驟1710的第一排列被顯示時,響應于接收第一組用戶輸入,無需改變位置數(shù)據(jù),屬于該堆圖像的圖像就由數(shù)字圖像系統(tǒng)以第二排列顯示在顯示器上。第二排列顯示該圖像集中的每個圖像,而未使該圖像與該圖像集中的另一圖像交疊。
圖19是以可在執(zhí)行步驟1730之后產(chǎn)生的未遮蓋的方式顯示圖18中該圖像集的第二顯示1900的圖示??梢允褂酶鞣N算法確定第二排列,確定向哪里移動每個圖像以使該圖像集中的每個圖像不與該圖像集中的另一圖像相遮蓋或交疊,例如,每個圖像所經(jīng)歷的移動量就可被最小化。用戶可以移動第二排列的任何圖像(例如,通過對其拖和放);然而,移動圖像導致位置數(shù)據(jù)被更新以反映圖像的新位置。在執(zhí)行步驟1730之后,處理過程繼續(xù)進行到步驟1740。
在步驟1740中,當該堆中的多個圖像以第二排列被顯示時,響應于接收第二組用戶輸入,基于位置數(shù)據(jù),數(shù)字圖像系統(tǒng)就將該堆圖像以第一排列顯示在顯示器上。作為執(zhí)行步驟1740的結(jié)果,如圖18所示,該堆圖像將在顯示器上被可視地描繪。
這樣的實施例有利地使得用戶能夠無需移動堆中的任何圖像而觀察該堆中的每個圖像。因此,即使圖像的顯示短暫地被其他圖像遮蓋,由于用戶可以可視地斷定每個圖像的性質(zhì),所以用戶可以更自信地管理一組被顯示的圖像。
實施機構(gòu)可以使用計算機系統(tǒng)來實施一個實施例的數(shù)字圖像系統(tǒng)。圖20是示出了在其上可以實施本發(fā)明實施例的計算機系統(tǒng)2000的框圖。如下面更詳細地解釋的,用戶可以使用計算機系統(tǒng)2000來觀看顯示器2012上的數(shù)字圖像、將數(shù)字圖像存儲在存儲裝置2010中、并且與顯示器2012、與輸入裝置2014或光標控制器2016交互。計算機系統(tǒng)2000包括用于傳遞信息的總線2002或其它通信裝置,以及用于處理信息的與總線2002連接的處理器2004。計算機系統(tǒng)2000還包括諸如隨機存取存儲器(RAM)或者其它動態(tài)存儲裝置的主存儲器2006,其連接至總線2002用于儲存信息和將由處理器2004執(zhí)行的指令。在執(zhí)行將由處理器2004執(zhí)行的指令期間,主存儲器2006還可用于儲存臨時變量或其他中間信息。計算機系統(tǒng)2000進一步包括連接至總線2002的只讀存儲器(ROM)2008或其他靜態(tài)存儲裝置,用于存儲靜態(tài)信息和用于處理器2004的指令。提供諸如磁盤或光盤的存儲裝置2010,并連接至總線2002用于存儲信息和指令。
計算機系統(tǒng)2000可以經(jīng)由總線2002連接至諸如陰極射線管(CRT)、計算機監(jiān)視器、網(wǎng)頁、或任何圖形界面的顯示器2012,用于向計算機用戶顯示信息。包括字母數(shù)字和其他鍵的輸入裝置2014連接至總線2002,用于將信息和指令選擇傳遞到處理器2004。另一種類型的用戶輸入裝置是光標控制器2016,諸如鼠標、跟蹤球、或光標方向鍵,用于將方向信息和命令選擇傳遞到處理器2004,并用于控制顯示器2012上的光標移動。該輸入裝置通常在兩個軸(第一軸(例如X)和第二軸(例如Y))上具有兩個自由度,使裝置能指定平面內(nèi)的位置。
本發(fā)明涉及用于執(zhí)行本文中描述的技術(shù)的計算機系統(tǒng)2000的使用。根據(jù)本發(fā)明的一個實施例,通過計算機系統(tǒng)2000響應于執(zhí)行包含在主存儲器2006中的一個或多個指令的一個或多個序列的處理器2004,來實現(xiàn)這些技術(shù)。這樣的指令可以從諸如存儲裝置2010的其它機器可讀介質(zhì)讀入主存儲器2006中。包含在主存儲器2006中的指令序列的執(zhí)行,使得處理器2004執(zhí)行此處所述的處理步驟。在可選實施例中,可以使用硬連線電路(hard-wired circuitry)來取代軟件指令或者與軟件指令結(jié)合來實施該發(fā)明。因此,本發(fā)明的實施例將不限于硬件電路和軟件的任何特定組合。
這里使用的術(shù)語“機器可讀介質(zhì)”是指參與提供數(shù)據(jù)以使機器以特定方式運轉(zhuǎn)的任何介質(zhì)。在使用計算機系統(tǒng)2000實施的實施例中,例如,各種機器可讀介質(zhì)被涉及到提供指令給處理器2004以用于執(zhí)行。這種介質(zhì)可以采取多種形式,包括但不限于非易失性介質(zhì)、易失性介質(zhì)、和傳輸介質(zhì)。非易失性介質(zhì)包括舉例來說,諸如存儲裝置2010的光盤或磁盤。易失性介質(zhì)包括諸如主存儲器2006的動態(tài)存儲器。傳輸介質(zhì)包括同軸電纜、銅線、和光纖(包括構(gòu)成總線2002的導線)。傳輸介質(zhì)還可采取聲波或光波形式,例如那些在無線電波和紅外線數(shù)據(jù)通信過程中產(chǎn)生的那些波。
通常形式的機器可讀介質(zhì)包括如軟盤、移動盤、硬盤、磁帶,或者任何其他磁性介質(zhì)、CD-ROM、任何其他光介質(zhì)、打孔紙、紙帶、或者任何孔狀式樣的物理介質(zhì)、RAM、PROM、EPROM、FLASH-EPROM、或者其他任何存儲芯片或者盒式磁帶,下文中提到的載波、或者計算機可讀的任何其他介質(zhì)。
各種形式的機器可讀介質(zhì)可涉及將一個或者多個指令的一個或多個序列運送到處理器2004用于執(zhí)行。例如,指令開始可承載在遠程計算機的磁盤中。遠程計算機可以將指令加載到其動態(tài)存儲器中,然后使用調(diào)制解調(diào)器通過電話線發(fā)送指令。計算機系統(tǒng)2000本地的調(diào)制解調(diào)器可接收電話線上的數(shù)據(jù),并使用紅外發(fā)射器將數(shù)據(jù)轉(zhuǎn)換成紅外信號。紅外探測器可以接收紅外信號攜帶的數(shù)據(jù),并且合適的電路可以將數(shù)據(jù)放到總線2002上??偩€2002將數(shù)據(jù)傳送到主存儲器2006,處理器2004從主存儲器2006提取并執(zhí)行這些指令。在由處理器2004執(zhí)行這些指令之前或之后,由主存儲器2006接收的指令可任選地儲存在存儲裝置2010上。
計算機系統(tǒng)2000還包括連接至總線2002的通信接口2018。連接到與本地網(wǎng)絡2022連接的網(wǎng)絡鏈路2020的通信接口2018提供雙向數(shù)據(jù)通信。例如,通信接口2018可以是綜合業(yè)務數(shù)字網(wǎng)(ISDN)卡或者調(diào)制解調(diào)器,用于提供到相應類型的電話線的數(shù)據(jù)通信連接。作為另一個實例,通信接口2018可以是局域網(wǎng)(LAN)卡,用于提供至兼容的LAN的數(shù)據(jù)通信連接。也可以使用無線鏈路。在任何這樣的實施中,通信接口2018發(fā)送和接收攜帶表示各種類型的信息的數(shù)字數(shù)據(jù)流的電信號、電磁信號、或光信號。
網(wǎng)絡鏈路2020通常通過一個或者多個網(wǎng)絡向其它數(shù)據(jù)裝置提供數(shù)據(jù)通信。例如,網(wǎng)絡鏈路2020可通過本地網(wǎng)絡2022提供到主機2024的連接,或者到由互聯(lián)網(wǎng)服務提供商(ISP)2026操作的數(shù)據(jù)設備的連接。ISP 2026又通過目前通稱為“互聯(lián)網(wǎng)”2028的全球分組數(shù)據(jù)通信網(wǎng)絡提供數(shù)據(jù)通信服務。本地網(wǎng)絡2022和互聯(lián)網(wǎng)2028都使用攜帶數(shù)字數(shù)據(jù)流的電信號、電磁信號、或光信號。通過各種網(wǎng)絡的信號和網(wǎng)絡鏈路2020上的信號以及通過通信接口2018的信號(其都運送數(shù)字數(shù)據(jù)給計算機系統(tǒng)2000或者運送來自計算機系統(tǒng)2000的數(shù)字數(shù)據(jù))是傳輸信息的載波的典型形式。
計算機系統(tǒng)2000能通過網(wǎng)絡、網(wǎng)絡鏈路2020、和通信接口2018發(fā)送消息和接收數(shù)據(jù)(包括程序代碼)。在互聯(lián)網(wǎng)的實例中,服務器2030可通過互聯(lián)網(wǎng)2028、ISP 2026、本地網(wǎng)絡2022、和通信接口2018,傳輸所請求的應用程序代碼。
所接收的代碼可以在其被接收時由處理器2004執(zhí)行,并且/或者儲存在存儲裝置2010或者其它非易失性介質(zhì)中用于以后執(zhí)行。按照這種方式,計算機系統(tǒng)2000可以獲得載波形式的應用程序代碼。
在上述的說明書中,已經(jīng)參照許多隨著不同的實施方式而不同的具體細節(jié)描述了本發(fā)明的實施例。因此,本發(fā)明以及申請人所期望的本發(fā)明的唯一的和獨占的指示是以發(fā)布該權(quán)利要求的具體形式從該申請所發(fā)布的包括任何后續(xù)修正的權(quán)利要求。此處清楚地闡述的包含在這樣的權(quán)利要求中術(shù)語的任何定義都將規(guī)定包含在這些權(quán)利要求中的術(shù)語的含意。因此,沒有在權(quán)利要求中明確地闡述的元件、特性、特征、優(yōu)點或?qū)傩圆粦撘匀魏畏绞较拗七@樣的權(quán)利要求的范圍。因此,說明書和附圖應該被看作示例性的而不是限制性的。
權(quán)利要求
1.一種機器執(zhí)行的方法,包括在計算機系統(tǒng)的初級顯示裝置的一部分上,所述計算機系統(tǒng)生成顯示;如果所述計算機系統(tǒng)處于第一模式,則在所述計算機系統(tǒng)的一組一個或多個次級顯示裝置中的每個次級顯示裝置上,所述計算機系統(tǒng)在所述次級裝置的一部分中都生成與同時正被顯示在所述初級顯示裝置的所述部分中的顯示相同的顯示;如果所述計算機系統(tǒng)處于第二模式,則在該一組一個或多個次級顯示裝置中的每個次級顯示裝置的所述部分中,所述計算機系統(tǒng)都生成與同時正被顯示在所述初級顯示裝置的所述部分中的所述顯示不同的顯示,其中,當所述計算機系統(tǒng)處于所述第二模式時,在所述初級顯示裝置上被生成的所述顯示對用于選擇什么將被顯示在所述一個或多個次級顯示裝置的所述部分上的控件進行顯示;以及響應于用戶輸入,在所述第一模式和所述第二模式之間切換。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述控件是未被顯示在所述一個或多個次級顯示裝置上的圖形用戶界面對象的一部分。
3.根據(jù)權(quán)利要求1所述的方法,其中,每個次級顯示裝置的所述部分是所述次級顯示裝置的整個屏幕。
4.根據(jù)權(quán)利要求1所述的方法,其中,所述初級顯示裝置的部分是所述初級顯示裝置的所述整個屏幕。
5.根據(jù)權(quán)利要求3所述的方法,其中,每個次級顯示裝置的所述部分是所述次級顯示裝置的所述整個屏幕。
6.根據(jù)權(quán)利要求1所述的方法,其中,所述用戶輸入是從包括下列內(nèi)容的組中選出的一員一個或多個鍵擊序列、一個或多個鼠標單擊序列、光筆的輸入、以及觸摸屏的輸入。
7.根據(jù)權(quán)利要求2所述的方法,其中,所述圖形用戶界面對象是工具欄。
8.根據(jù)權(quán)利要求1所述的方法,其中,所述初級和次級顯示裝置是CRT。
9.根據(jù)權(quán)利要求1所述的方法,其中,所述初級和所述次級顯示裝置中的至少一個是投影儀。
10.一種機器執(zhí)行的方法,包括顯示來自項目序列的被顯示的項目集,所述項目序列包括不屬于所述被顯示的項目集的一個或多個未被顯示的項目;其中,所述被顯示的項目集是以包括多個行和多個列的排列并按對應于所述序列的次序而被顯示出來的;接收從所述被顯示的項目集中選擇特定項目的用戶輸入;響應于所述用戶輸入,執(zhí)行以下步驟如果在被顯示的項目集中的所述特定項目之前的項目數(shù)量小于第一預定閾值,則顯示在所述被顯示的項目集之前的一排未被顯示的項目,并且停止顯示在所述特定項目之后的一排被顯示的項目。
11.根據(jù)權(quán)利要求10所述的方法,進一步包括以下步驟如果在被顯示的項目集中的所述特定項目之后的項目的數(shù)量小于第二預定閾值,則通過顯示在所述被顯示的項目集之后的一排未被顯示項目,以及通過停止顯示在所述特定項目之前的一排被顯示的項目,來響應于所述用戶輸入。
12.根據(jù)權(quán)利要求10所述的方法,其中所述項目序列是圖像序列;所述被顯示的項目集是被顯示的圖像集;以及所述未被顯示的項目是未被顯示的圖像。
13.根據(jù)權(quán)利要求12所述的方法,其中所述圖像序列是數(shù)字照片序列;所述被顯示的圖像集是被顯示的數(shù)字照片集;以及所述未被顯示的圖像是未被顯示的數(shù)字照片。
14.根據(jù)權(quán)利要求12所述的方法,其中,除了被停止顯示的那排以外的被顯示的圖像的所有排都被移位,以便為新近被顯示的排騰出空間。
15.根據(jù)權(quán)利要求12所述的方法,其中,所述特定圖像不在緊臨所述新添加的排的那排之中。
16.根據(jù)權(quán)利要求10所述的方法,其中,所述新添加的排是先前未被顯示的項目的、新添加的列。
17.根據(jù)權(quán)利要求10所述的方法,其中,所述新添加的排是先前未被顯示的項目的、新添加的行。
18.一種用于管理項目的方法,包括以下步驟顯示一堆項目,其中,該堆項目包括被排列成第一排列的多個項目,在該第一排列中,所述堆中的至少一個項目與所述堆中的至少一個其他項目交疊;存儲了指示所述第一排列中的每一項目的位置的位置數(shù)據(jù);當所述堆中的所述多個項目以所述第一排列來被顯示時,就響應于第一用戶輸入且無需改變位置數(shù)據(jù),使屬于所述堆的所述多個項目以第二排列來被顯示,在所述第二排列中,所述堆中沒有項目與所述堆中任何其他項目交疊;當所述堆的所述多個項目以所述第二排列來被顯示時,就響應于第二用戶輸入,而基于所述位置數(shù)據(jù)以所述第一排列重新顯示該堆項目。
19.根據(jù)權(quán)利要求18所述的方法,其中,該堆項目是一堆圖像。
20.根據(jù)權(quán)利要求19所述的方法,其中,該堆圖像是一堆數(shù)字照片。
21.根據(jù)權(quán)利要求18所述的方法,其中,所述以第二排列顯示所述多個項目的步驟包括通過一系列中間位置將所述多個項目從它們的第一排列位置移動到它們的第二排列位置以隨著時間在一系列位置逐漸顯示所述多個項目。
22.根據(jù)權(quán)利要求18所述的方法,其中,所述以第一排列重新顯示所述多個項目的步驟包括通過一系列中間位置將所述多個項目從它們的第二排列位置移動到它們的第一排列位置,隨著時間在一系列位置逐漸重新顯示所述多個項目。
23.一種承載一個或多個指令序列的計算機可讀介質(zhì),當所述指令被一個或多個處理器執(zhí)行時,就導致所述一個或多個處理器執(zhí)行權(quán)利要求1至22中任一項所述的方法。
全文摘要
提供了一種用于在顯示器上顯示數(shù)字圖像的方法和裝置。包括排列成第一排列的多個圖像的一堆圖像被顯示出來,在該第一排列中,該堆中至少一個圖像與該堆中至少一個其他圖像交疊。存儲了指示第一排列的每個圖像的位置的位置數(shù)據(jù)。當以第一排列顯示該堆中的多個圖像時,就響應于第一用戶輸入且無需改變位置數(shù)據(jù),而以第二排列顯示屬于該堆的那些圖像,在該第二排列中,該堆中沒有圖像與該堆中的任何其他圖像交疊。當以第二排列顯示該堆中的多個圖像時,就響應于第二用戶輸入,基于位置數(shù)據(jù)來以第一排列重新顯示該堆圖像。
文檔編號G06F3/033GK101036109SQ200580034173
公開日2007年9月12日 申請日期2005年10月4日 優(yōu)先權(quán)日2004年10月6日
發(fā)明者蘭迪·烏維略斯, 勞倫特·佩羅丹, 達恩·韋洛尼斯 申請人:蘋果電腦公司