新四季網

提供顏色管理的系統和方法

2023-05-20 11:19:36 1

專利名稱:提供顏色管理的系統和方法
技術領域:
本發明涉及用於提供顏色管理的系統和方法。更具體地,本發明涉及用於提供與具有不同顏色顯示特徵的多種設備相關的顏色管理的系統和方法。
背景技術:
彩色空間是一種在數值上用三維或更多維坐標來表示顏色的模型,例如RGB彩色空間以紅色、綠色和藍色坐標來表示顏色。
要想以一種可預知的方式通過不同的設備和材料來重現顏色,則必須用一種與用以生成顏色的機制和材料的特徵相獨立的方式來描述顏色。例如,陰極射線管(CTR)和彩色印表機使用完全不同的機制來重現顏色。為了解決這個問題,當前的方法需要用與設備無關的顏色坐標來描述顏色,然後再為每一個設備將這些與設備無關的顏色坐標轉換為與設備相關的顏色坐標。目前,由設備本身來提供用於轉換成與設備相關的系統的機制。
在這點上,顏色管理是描述一種將對象(例如,圖像、圖形或文本)的顏色從當前彩色空間轉換到輸出設備(例如監視器、印表機等)的彩色空間的技術或系統的術語。
在早期,通過申明支持一種特定的彩色空間,例如RGB,作業系統來支持彩色。但是,因為RGB在設備間存在不同,顏色不能可靠地通過不同設備來重現。
因為這種傳統的彩色支持方法是不充分的,各種作業系統增加了對使用國際顏色聯盟(ICC,International Color Consortium)的概要(profile)的支持,以通過與設備無關的方式描述與設備相關的顏色特徵。ICC的設備特徵概要規範是公共開放的並且是可以得到的,例如從ICC的網站上,即www.color.org。ICC使用產生圖像的輸入設備和顯示圖像的輸出設備的概要,並創建一種將圖像從輸入設備的彩色空間轉移到輸出設備的彩色空間的變換。雖然這可以帶來非常準確的顏色,但也增加了連同圖像一起傳送輸入設備的概要及在變換中管理圖像的開銷。
然後技術進一步發展到試圖提供中間的與設備無關的標準彩色空間。這些顏色管理技術中的一些現在已經存在於作業系統和應用之中,例如MICROSOFT WINDOW作業系統和MICROSOFTOFFICE平臺。除了ICC彩色空間外,彩色空間還包括標準彩色空間或簡稱為sRGB(國際工程聯盟(IEC)第61966-2-1號標準),它已經開始在WINDOWS98和OFFICE中作為一項核心技術被支持。顏色管理技術已繼續發展到制訂標準擴展彩色空間或簡稱為scRGB(IEC的第61966-2-2號標準)。
綜合ICC、sRGB和scRGB,當涉及各種各樣的支持彩色的輸入和輸出的計算設備時,存在大量的需要解決的問題。目前,sRGB是Windows中基於IEC 61966-2-1標準的默認彩色空間。一個sRGB兼容的設備不用提供一個概要或其它的顏色管理支持來正常工作。
在這點上,sRGB、scRGB和ICC彩色空間的結構具有一種固定的和明確的含義,它們是本發明的技術背景。參考這些彩色空間對本領域中的一般技術人員來說就具有了足夠的識別信息,雖然如此,下面還是給出一般性描述,並且可以被各彩色空間的任何公共開放的標準規範來補充。
標準RGB彩色空間sRGB包括描述了RGB感知空間的色調響應與物理亮度空間之間的非線性關係的1-D查詢表(LUT),例如CIEXYZ;一個描述了原色紅、綠和藍對應CIEXYZ值的3×3矩陣;感知意義上的白點值,例如CIEXYZ標準的D65,與6500K色溫時的日光相關;以及任選的影響最終用戶對目標設備顏色的感知的觀看條件,如邊緣、背景、亮度。
標準擴展彩色空間scRGB與sRGB相似,但是顏色值可以擴展到顏色的可視範圍之外。
ICC概要一般是一個包括了將設備相關的顏色和它們等同的人類視覺感知顏色相關聯的元數據結構。ICC概要的某些實例還可以提供任何兩個彩色空間(或者是與設備無關的,或者是與設備相關的)之間的轉換信息。
X協議發展於二十世紀八十年代中期,是為了滿足主要為UNIX作業系統提供一種網絡透明的圖形用戶接口(GUI)的需要。X協議使用與MICROSOFT WINDOW和IBM的顯示管理器(Presentation Manager)非常類似的方式,規定了關於圖形信息的顯示和管理。
X協議的體系和其它平臺的顏色管理技術的關鍵不同在於X協議的結構。WINDOW和其它的平臺,如IBM的顯示管理器(Presentation Manager),只顯示PC機本地的圖形應用,而X協議通過在應用層規定一種客戶-伺服器關係來分配應用的處理。應用的「做什麼」部分被稱為一個X客戶,將它與稱作X伺服器的「怎麼做」部分(顯示部分)分離開。典型的情況是X客戶運行在具有額外計算能力而顯示在X伺服器上的遠端機器上。它的好處就是真正的客戶-伺服器結構和分布式處理。
如圖1A所示,X協議在一個應用210a、210b和它的顯示240之間定義了一種客戶-伺服器關係。為此,被稱作X客戶的應用210a、210b與作為X伺服器240的顯示脫離開了。X客戶210a、210b包括一個X庫220及一個可選的工具包230。X伺服器240包括用來驅動設備260的設備驅動器250。如圖1B所示,X協議通過規定一個設備相關層200b和設備無關層200a,並基於在X客戶210和X伺服器240間通信的異步網絡協議,還提供了一個公共的開窗系統。X協議有效地隱藏了作業系統和下面的硬體的特徵。這種對於體系結構和工程上的不同的掩蔽,簡化了X客戶的發展,並為X Window系統的高度可移植性提供了跳板。
X協議方法的優點包括(1)基於本地和網絡的計算使得用戶和開發人員看到和感覺到的是相同的;(2)X伺服器的高度可移植性允許支持各種各樣的語言和作業系統;(3)X客戶同樣具有高度可移植性;(4)X協議可以支持本地或遠端的、任何面向字節流的網絡協議;(5)應用不經受性能惡化。
這樣,X協議的設計就規定了一種應用和它的顯示之間的客戶-伺服器關係。在X協議中,管理單一屏幕、鍵盤和滑鼠的軟體被認為是X伺服器。X客戶是顯示在X伺服器上的應用,有時就是指「應用」X客戶向X伺服器發送請求,例如一個繪圖或信息請求。X伺服器從多個客戶端接收請求,並向X客戶返回對信息請求、用戶輸入和錯誤的答覆。
X伺服器運行在本地機器上,接收和解復用基於網絡的或本地的進程間通信(IPC)的X客戶請求,並根據它們操作。X伺服器(1)在屏顯示繪圖請求;(2)答覆信息請求;(3)報告請求中的錯誤;(4)管理鍵盤、滑鼠和顯示設備;(5)將鍵盤和滑鼠輸入復用到網絡上,或經由本地IPC復用到各X客戶;(6)創建、繪製和消除窗口;(7)在窗口中寫和繪圖。
X客戶基本上是在庫例如利用X協議的Xlib和Xt的幫助下寫成的應用。X客戶(1)向伺服器發送請求;(2)從伺服器端接收事件;(3)從伺服器端接收錯誤。
關於請求,X客戶為了產生某個動作,例如創建窗口,而向X伺服器發送請求。為了提高性能,X客戶通常既不期待也不等待響應。取而代之的是,請求在典型情況下是留給可靠的網絡層去傳送的。X協議的請求是4位元組的任何倍數。
關於答覆,X伺服器響應需要答覆的一定X客戶的請求。應當注意並不是所有的請求都需要答覆。X協議的答覆最小長度是32位元組,並是4位元組的任何倍數。
關於事件,X伺服器向X客戶轉發應用所期望的事件,包括鍵盤或滑鼠的輸入。為了使網絡業務量最少,只將所期望的事件發送給X客戶。X協議的事件是32位元組的。
關於錯誤,X伺服器向X客戶報告請求中的錯誤。錯誤與事件相似但處理不同。X協議的錯誤與事件的長度相同以簡化對它們的處理。它們按32位元組的長度發送給X客戶的錯誤處理例程。
X伺服器的設計很大程度上依賴於它在其上執行的平臺硬體和作業系統。隨著下層技術的能力提高,X伺服器的能力也隨著提高了。
如前所述,圖1A示出存在一個X伺服器的設備相關層200b和設備無關層200a。設備相關層200b負責將X伺服器本地化為本地的環境,不管是WINDOWS還是Solaris,並利用不同字節排序從機器交換數據字節,字節排序是在每一個X協議請求中註明的。層200b隱藏了硬體和作業系統中的結構區別,也為鍵盤、滑鼠和視頻保持設備驅動器相關性。
對於一個單線程的結構,X伺服器是一個單時序進程,它使用本地的時間片結構來在X客戶之間調度解復用請求、復用答覆、事件和錯誤。
對於一個多線程結構,X伺服器是一個能夠通過將作業拆散為多個線程供作業系統和硬體來執行而利用作業系統的性質的多線程進程。真正的搶先式多任務處理、多線程環境為X伺服器提供了一個高級別的能力。
現今的X伺服器包括工作站、X終端和PC X伺服器。工作站有足夠的能力來處理複雜的計算需求和一般顯示本地X客戶以及一小部分網絡(遠端)X客戶。X終端是具有圖形能力的啞終端。X伺服器軟體從一個主機上下載。X終端比工作站便宜並且更容易維護。PC X伺服器將PC和對遠端應用伺服器的訪問集成到一個公用桌面,利用現有的PC投資和用戶的技巧集(桌面操作和訪問),可依據用戶的偏愛提供本地或遠端的窗口管理並且使用簡單。
X協議聯盟建立了X11圖形體系結構。在過去的幾年中,桌面已經從一種生產率或以用戶為中心的環境演變為一種集中於被全球資訊網協議和基於瀏覽器的用戶接口的適應所圍繞的集中管理的環境。由X協議聯盟最新發布的X Window系統-X11R6.5.1或簡稱X11或X11R6—已經涉及集成X協議應用和瀏覽器以便能夠不需要再編碼和加密而實現快速配置的問題。
最新發布的X11圖形結構已公開在全球資訊網(WWW)上,至少可以在X協議聯盟的網站上找到,www.x.org。簡而言之,X11R6顏色管理系統是一個圖形協議,通過藉助包括白點適應、色域映射、矩陣變換和一維(1-D)查詢表(LUT)的操作,(1)支持可插入的顏色管理功能,以及(2)支持將設備無關的應用內容轉換成設備相關的顏色值。
當X協議聯盟建立X11時,X11只支持一種很簡單的顏色管理機制,通過使用一個3×3的矩陣和3個1-D LUT來將標準的RGB顏色轉換為特定的顯示設備的RGB顏色。隨著X11R6的到來,X顏色管理系統(Xcms)的結構基於Tektronix的擴展了原先的簡單方案的工作而被合併,以提供將多種與設備無關的彩色空間轉換為與顯示設備相關的顏色。這個方案集中於加入白點色適應支持和色域壓縮支持。這樣,X11R6顏色管理系統採取了一種以三通道與設備無關顏色開始、並轉換為與顯示設備相關的顏色的工作流程。
這樣X11R6結構就具有兩個顏色管理方案。第一個方案是普遍用來刻畫簡單顯示設備(如CRT)的特徵的簡單的3×3矩陣和3個1-DLUT。第二個方案是主要包含白點轉換和色域壓縮的Xcms。由於Xcms的引入,顏色管理得到發展,並發現僅限於這兩種技術的解決方案是不夠的,因為大多數情況都採用源和目標設備,其中X11只支持目標設備並假定源是與設備無關的。
同樣,基於元數據設備表徵概要的現代顏色管理方案,例如ICC,採取了開始及結束於三、四或更多通道的與設備相關的顏色的工作流程。目前,X11隻允許一種開始於三個與設備無關的顏色並結束於與RGB顯示設備相關的顏色的工作流程。基於標準彩色空間的現代顏色管理方案,例如sRGB和scRGB,除了元數據被包含在設備本身內之外,與現代的元數據解決方案是類似的,使得工作流程表現為獨立於源和目標設備之外完全與設備無關。基本上,在設備顏色和標準彩色空間之間轉換的元數據只存在於源和目標設備的硬體本身之中。這就允許通過簡單得多的用戶經驗就可以進行操作,及在開放網絡中交換顏色內容,同樣允許包含多個應用和用戶的複雜的工作流程。
其它的現有技術解決方案目前並沒有與X11R6相結合,因此僅限於單個應用。因此,剪切和粘貼、應用間和複雜的工作流程在目前的解決方案中非常有限。另外,目前的解決方案在支持青色、品紅色、黃色和黑色(CMYK)和其它彩色空間方面非常有限。這樣,就需要一種使標準的X11R6圖形平臺能夠支持分別建立在ICC、sRGB和scRGB顏色管理系統的基礎上的事實上的工業元數據顏色管理標準的機制。此外,還需要一種允許支持開始及結束於與設備相關的顏色的現代顏色管理標準(例如ICC、sRGB和scRGB)的機制。

發明內容
考慮到前述的內容,本發明提供了用來提供與各種各樣的具有不同顏色顯示特徵的計算設備相關的顏色管理的系統和方法。更具體地,本發明提供了使X11圖形平臺支持開始及結束於與設備相關的顏色的顏色管理系統(例如ICC、sRGB和scRGB)的方法。本發明也提供了用以支持CMYK彩色空間和X11R6內的擴展的RGB彩色空間的方法,這樣就將X11R6圖形平臺擴展為支持任何現代顏色管理標準。
在本發明的各種實施例中,提供了與顏色管理系統相關的方法、計算機可讀取的媒體和計算設備。這些實施例包括從源設備處接收與設備無關的顏色數據以轉換到目標設備;生成一個表示源設備和目標設備之間的顏色特徵差異的設備連接概要;假冒(spoof)顏色管理系統的至少一個應用編程接口功能,並調用功能來為目標設備生成與目標設備相關的顏色值。
本發明的其它特徵和實施例將在下面進行描述。


根據本發明用來提供顏色管理的系統和方法將參考附圖給出進一步的描述,其中圖1A和1B示出了X協議聯盟的X協議的一些基本方面。
圖2A是一個表示本發明可以在其中實施的具有各種計算設備的示例性的網絡環境的方塊圖。
圖2B是一個表示一個本發明可以在其中實施的示例性的無限制的計算設備的方塊圖。
圖3A示出了X11R5顏色管理系統結構的示例性的操作。
圖3B示出了X11R6顏色管理系統結構的示例性的操作。
圖4A示出了X11R6顏色管理系統結構的另外的示例性方面。
圖4B示出了顏色管理模塊(CMM)的顏色管理結構的示例性操作。
圖4C示出了本發明所提供的顏色管理的結構。
圖5A到5C示出了與各種彩色空間相關的本發明的示例性使用。
具體實施例方式
綜述本發明提供了在X11R6圖形平臺的結構限制內,使用各種目前已被採用的解決方案來實現現代顏色管理的方法和系統。如前所述,X11採取了一種開始於三種與設備無關的顏色及結束於與RGB顯示設備相關的顏色的顏色管理工作流程結構。由此,本發明提供了一種能支持開始及結束於與設備相關的顏色的現代顏色管理(例如ICC、sRGB和scRGB)的機制。本發明還可以用來支持CMYK彩色空間和X11R6內擴展的RGB彩色空間,這樣就將X11R6圖形平臺擴展為支持所有的現代顏色管理技術。
示例性的網絡化的和分布式的環境本領域普通技術人員可以明白計算機或其它客戶或伺服器設備都可以被配置作為計算機網的一部分,或配置在分布式計算環境中。在這點上,本發明適合任何包含任意數量的存儲器或存儲單元、和任意數量的存在於任意數量的存儲單元或存儲體中的應用和進程(可以與顏色管理進程相關使用)的計算機系統。本發明可以應用到具有遠程或本地存儲、被配置在網絡環境或分布式計算環境中的伺服器和客戶計算機的環境。本發明還可以應用於具有程式語言功能、以及用於生成、接收和發送與遠程或本地顏色管理業務相關的信息的解釋和執行能力的獨立的計算設備。
分布式計算通過在計算設備和系統間直接交換有助於計算機資源和服務的共享。這些資源和服務包括信息交換、高速緩存和文件的磁碟存儲。分布式計算利用網絡的連通性,使得客戶利用它們的集體能力,從而使整個公司受益。在這點上,各種各樣設備可以具有與可使用本發明的技術的顏色管理進程有一定關係的應用、對象或資源。
圖2A提供了一個示例性的網絡化的或分布式的計算環境的示意圖。此分布式計算環境包括計算對象10a、10b等等,以及計算對象或設備110a、110b、110c等等。這些對象可能包括程序、方法、數據存儲、可編程邏輯等等。這些對象可能包含部分相同或不同的設備,例如個人數字助理(PDA)、電視機、活動圖像專家組(MPEG-1)的音頻層-3(MP3)播放器、個人計算機等等。每一個對象可以通過通信網絡14與其它的對象通信。這個網絡本身可以包括為圖2A的系統提供服務的其它的計算對象和計算設備。根據本發明的一個方面,每一個對象10a、10b等或110a、110b、110c等等可以包含一個可能會請求顏色管理服務的應用。
在一個分布式計算結構中,傳統意義上可能只被用作客戶機的計算機,直接在它們自身之間通信並既可以擔當客戶機又可以擔當伺服器,在網絡中充當最有效的角色。這樣減少了伺服器上的負擔,並使得所有的客戶機可以訪問其它客戶機上可用的資源,因此增加了整個網絡的性能和效率。這樣,依據本發明的顏色管理服務就可以分布在客戶機和伺服器之中,以一種對整個網絡有效的方式工作。
分布式計算可以使商業投遞業務及能力在不同的地理分界區域內更加有效。另外,分布式計算可以將數據轉移到更靠近使用數據的、充當網絡高速緩存機構的點上。分布式計算同樣使得計算網絡同時使用智能代理動態工作。代理駐留在對等計算機上,並來回傳遞各種信息。代理還可以以其它對等系統的名義發起任務。例如,智能代理可以用來在網絡上優先化任務、改變業務流、在本地搜索文件或判定異常行為(如病毒)並在它影響網絡之前阻止它。所有其它各種服務也同樣可以期望。因為圖形對象或其它顏色數據實際上可能物理上存在於一個或更多的位置,所以在這樣一個系統中分布顏色管理服務的能力具有很大的實用性。
同樣可以理解,一個對象例如110c可以被放置在另外的計算設備上,如10a、10b、110a、110b等。因此,雖然所述的物理環境可以將連接的設備顯示為計算機,這種舉例說明只是示意性的,並且還可以將物理環境可選地描述或說明為包括各種數字設備,例如PDA、電視機、MP3播放器等等,和軟體對象,例如接口、COM對象等。
存在各種各樣的支持分布式計算環境的系統、部件和網絡配置。例如,計算系統可以通過有線線路或無線系統,通過本地網絡或大範圍分布式網絡而連接在一起。目前,許多這種網絡都與提供了大範圍分布式計算的基礎設施和包含許多不同網絡的網際網路連接在一起。
在家用網絡環境中,存在至少四種全異的且每一種都支持唯一的協議的網絡傳輸媒體,例如電力線,數據(無線和有線)、語音(如電話)、和娛樂媒體。多數家用控制設備(如電燈開關)和電器可能使用電力線來連接。數據業務可能使用或者無線,例如家用射頻(HomeRF)或802.11b,或者有線,例如家用電話線聯網設備(PNA)、Cat 5,甚至電力線連接的方式進入家用作為寬帶(如DSL或電纜數據機)並在家用內可用。語音業務或者作為有線的,如Cat 3,或者無線的,如蜂窩電話機,而進入家庭,還可能使用Cat 3布線而分配於家庭內。娛樂媒體或其它的圖形數據,可以通過衛星或電纜而進入家用,並且典型的情況是使用同軸電纜分配於家庭內。IEEE 1394和DVI也作為用於媒體設備群集的數字互連而出現。所有這些網絡環境和其它可能出現的作為協議標準的環境可能會被連接在一起,以形成一個通過網際網路的方式連接外部的企業內部網。簡而言之,存在各種各樣的用於存儲和傳輸數據的全異的資源,因此隨著技術的向前發展,計算設備將需要多種方式來共享數據,例如圖像對象的顏色管理附帶的被訪問或使用的數據,或根據本發明的其它顏色數據。
另外,顏色是一種可以有效的表示各種物理或其它現象的手段,因此不管數據是磁共振圖像數據、超聲波數據還是圖形均衡數據等等,顏色通常是一種恰當的向人們表示數據以進行快速感性分析的方法。因此,顏色數據源如這裡所期望的那樣是無限的,並且可能要在被認為是「顏色」數據之間經歷一系列的變換。
網際網路一般是指使用傳輸控制協議/接口程序(TCP/IP)的協議組合的網絡和網關的集合,這在計算機網絡領域是眾所周知的。網際網路可以被描述為一個通過計算機執行使得用戶可以在網絡上交互和共享信息的網絡協議,而連接在一起的地理上分布式的遠程計算機網。因為這種廣泛傳播的信息共享,遠程網絡如網際網路因而通常演變為一個開放式的系統,因此開發人員可以設計完成專門操作或服務的軟體應用,而且基本上沒有限制。
因此,這種網絡基礎設施可兼容許多網絡拓撲(如客戶/伺服器、對等或混合結構)。「客戶」是一個類或組中的成員,使用另外一個與之不相關的類或組的服務。因此在計算技術中,一個客戶就是一個程序,也就是大致上需要別的程序提供的服務的指令或任務的集合。客戶進程在不需要「知道」其它程序或服務本身的任何工作細節的情況下,使用所請求的服務。在客戶/伺服器結構中,特別是一個網絡化的系統中,客戶通常是一個訪問別的計算機(如伺服器)所提供的共享網絡資源的計算機。在圖2A的例子中,計算機110a、110b等等可以被認為是客戶,而計算機10a、10b等等可以被認為是伺服器,其中伺服器10a、10b等等保存之後將在客戶計算機110a、110b等等上被複製的數據。
典型的情況下,伺服器是一個可以通過遠程網絡(如網際網路)來訪問的遠程計算機。客戶進程可以是工作於第一計算機系統中的,而伺服器進程可以工作於第二計算機系統中,它們通過一個通信媒體而相互通信,這樣就提供了分布式的功能,並使得多個客戶可以利用伺服器的信息收集能力。
客戶和計算機使用協議層所提供的功能來互相通信。例如,超文本傳輸協議(HTTP)是一種結合全球資訊網(WWW)而使用的公共協議。典型地,計算機網絡地址,如統一資源定位符(URL)或網際協議(IP)地址被用來彼此區分伺服器或客戶計算機。網絡地址可以指一個URL地址。例如,可以通過一個通信媒體來提供通信。特別地,為了大容量的通信,客戶和伺服器可以通過TCP/IP連接而結合在一起。
圖2A圖示了一個示例性的可以將本發明應用其中的網絡化的或分布式的環境,其中伺服器通過網絡/總線與客戶計算機通信。更詳細地,若干伺服器10a、10b等等通過一個通信網絡/總線14(可以是一個LAN、WAN、企業內部網、網際網路等等),與許多客戶或遠程計算設備110a、110b、110c、110d、110e等等相互連接在一起,後者如可攜式計算機、手持計算機、瘦客戶、網絡化的設備、或其它設備,如錄像機(VCR)、電視機(TV)、烤箱、燈、加熱器或根據本發明的類似設備。因此,將本發明應用於任何希望用來處理或顯示圖形對象或任何其它顏色數據的計算設備都是所期望的。
例如在一個通信網絡/總線14是網際網路的網絡環境中,伺服器10a、10b等等可以是Web伺服器,客戶110a、110b、110c、110d、110e等等通過大量已知的協議(如HTTP)中的任何一種與這些伺服器通信。如分布式計算環境所具有的特徵,伺服器10a、10b等等同樣可以作為客戶110a、110b、110c、110d、110e等等。通信可以是有線的或無線的,只要適合就行。客戶設備110a、110b、110c、110d、110e等等可以或不可以通過通信網絡/總線14來通信,還可能具有與之相關的獨立的通信。例如,在電視和VCR的情況下,可能有或沒有網絡方面來控制它。每一個客戶計算機110a、110b、110c、110d、110e等等和伺服器計算機10a、10b等等可能裝備有各種應用程式模塊或對象135,並且還連接有或可以訪問各種類型的存儲部件或對象,可以將文件存儲在這些存儲部件中,或將部分文件下載到或轉移到這些存儲部件中。任何計算機10a、10b、110a、110b等等可以根據本發明負責維護和更新資料庫20或其它的存儲部件,如用來存儲依據本發明的顏色對象或數據或中間顏色對象或處理過的數據的資料庫或存儲器20。這樣,本發明就可以應用於具有可以訪問和與計算機網絡/總線14進行交互的客戶計算機110a、110b等等、可以與客戶計算機110a、110b等等進行交互的伺服器計算機10a、10b等等、其它類似的設備以及資料庫20的計算機網絡環境中。
示例性的計算設備圖2B和隨後的討論的意圖是為本發明可以在其中實施的適合的計算環境提供一個簡要的一般描述。然而應當明白,如上所述,手持、可攜式和其它的計算設備及各種計算對象都是本發明所期望使用的。因此,雖然下面描述的是通用計算機,但這只是一個例子,本發明還可能通過其它的計算設備(如具有網絡/總線互操作性和交互作用的瘦客戶)而實現。因此,本發明可以實現於只涉及非常小或最少的客戶資源的網絡化的主機服務環境中,例如一種在其中客戶設備只作為至網絡/總線的接口(如放置於設備或其它計算設備和對象中的一個對象)的網絡化的環境。基本上,任何數據可以存儲或從中可以獲得數據的地方都是一個理想的或適合的用於運行本發明的顏色管理技術的環境。
儘管不是必需的,本發明可以通過一個作業系統來實現,以為用於設備或對象的服務的開發人員所使用,和/或包含於與本發明的顏色管理技術一起運行的應用軟體之中。軟體可以在一般意義上描述為計算機可以執行的指令,例如被一個或多個計算機(如客戶工作站、伺服器或其它設備)執行的程序模塊。一般說來,程序模塊包括例行程序、程序、對象、組件、數據結構和類似的執行特定任務或實現特定抽象數據類型的東西。典型的情況下,程序模塊的功能可以根據不同的實施例的需要被合併或分散。另外,本領域中的技術人員還會明白本發明可以在其它的計算機系統的配置下運行。其它已知的適合本發明使用的計算機系統、環境、和/或配置,包括但並不限於個人計算機(PC)、自動取款機、伺服器計算機、手持或膝上型設備、多處理器系統、基於微處理器的系統、可編程消費電子設備、網絡PC、器具、電燈、環境控制部件、小型計算機、大型計算機等。本發明還可以實踐於其中的任務由通過通信網/總線或其它數據傳輸媒體相連的遠程處理設備來執行的分布式計算環境中。在分布式計算環境中,程序模塊可以既存在於本地又存在於遠程計算機的包括內存存儲設備的存儲媒體中,以及客戶節點還可以作為伺服器節點。
圖2B圖示了一個本發明可以在其中實現的一個適合的計算系統環境100,儘管上面已經進行了清楚的描述,但是計算系統環境100隻是一個適合的計算環境的例子,目的並不是為本發明的使用或功能範圍提出任何限制。計算環境100也不應該被解釋為對示例性的操作環境100中所圖示的任何一個部件或部件的組合有任何的依賴或必需。
參考圖2B,用於實現本發明的示例性的系統包括一個計算機110形式的通用計算設備。計算機110的部件可以包括但並不僅限於一個處理單元120、一個系統存儲器130、和一個將各種系統部件包括系統存儲器連接到處理單元120的系統總線121。系統總線121可以是幾種總線結構中的任一種,包括一個存儲器總線或存儲器控制器、一個外圍總線、和一個使用各種總線結構中的任一種的局部總線。作為例子,而不是限制,這些結構包括工業標準結構(ISA)總線、微通道結構(MCA)總線、增強型的ISA(EISA)總線、視頻電子標準協會(VESA)局部總線、和外圍部件互連(PCI)總線(也叫Mezzanine總線)。
典型情況下,計算機110包括各種各樣的計算機可讀取的媒體。計算機可讀取的媒體可以是任何可以被計算機110讀取的可用媒體,包括易失性和非易失性媒體、可移動和不可移動媒體。作為例子,而不是限制,計算機可讀取的媒體可包括計算機存儲媒體和通信媒體。計算機存儲媒體包括以任何方法和技術實現的用於存儲信息(如計算機可讀取的指令、數據結構、程序模塊或其它數據)的易失性和非易失性媒體、可移動和不可移動媒體。計算機存儲媒體包括但並不限於隨機存取存儲器(RAM)、只讀存儲器(ROM)、電可擦可編程序只讀存儲器(EEPROM)、快閃記憶體或其它存儲器技術、只讀光碟(CDROM)、數字多功能光碟(DVD)或其它的光碟存儲器、盒式磁帶、磁帶、磁碟存儲器或其它的磁存儲設備、或任何其它的可以用來存儲所期望的信息並可以被計算機110存取的媒體。典型情況下,通信媒體以調製數據信號表示計算機可讀取的指令、數據結構、程序模塊或其它數據,如載波或其它傳輸機制,通信媒體包含任何信息傳送媒體。術語「調製數據信號」表示一種其自身的一個或多個特徵被設置或改變以將信息編碼到信號中的信號。作為例子,而不是限制,通信媒體包括有線媒體(如有線網絡或直接有線連接)、和無線媒體(如聲波、RF、紅外或其它的無線媒體)。上述的任何組合都應當包含在計算機可讀取媒體的範圍內。
系統存儲器130包括易失性和/或非易失性存儲器(如ROM 131和RAM 132)形式的計算機存儲媒體。包括在計算機110內的部件之間傳輸信息(如在啟動過程中)的基本例程的基本輸入/輸出系統133(BIOS),典型情況下存儲於ROM 131。典型情況下,RAM 132包含能被立即訪問或當前正在被處理單元120運行的數據和/或程序模塊。作為例子,而不是限制,圖2B圖示了作業系統134、應用程式135、其它程序模塊136、和程序數據137。
計算機110還包括其它的可移動/不可移動、易失性/非易失性計算機存儲媒體。僅作為例子,圖2B圖示了一個對不可移動、非易失性磁媒體讀取或寫入的硬碟驅動器141,一個對可移動、非易失性磁碟152讀取或寫入的磁碟驅動器151,和一個對可移動、非易失性光碟156(如CD ROM或其它光媒體)讀取或寫入的光碟驅動器155。其它的可用於示例性的操作環境中的可移動/不可移動、易失性/非易失性計算機存儲媒體包括但並不限於盒式磁帶、快閃記憶體卡、數字多功能光碟、數字錄像帶、固態RAM、固態ROM等。典型情況下,硬碟驅動器141通過一個不可移動存儲器接口(如接口140)與系統總線121相連;磁碟驅動器151和光碟驅動器155通過一個可移動存儲器接口(如接口150)與系統總線121相連。
上面已討論過的並由圖2B所圖示的驅動器和相關的計算機存儲媒體,為計算機110提供了對計算機可讀取的指令、數據結構、程序模塊和其它數據的存儲。例如在圖2B中,硬碟驅動器141被圖示為存儲作業系統144、應用程式145、其它程序模塊146、和程序數據147。注意,這些部件與作業系統134、應用程式135、其它程序模塊136、和程序數據137可以相同也可以不同。作業系統144、應用程式145、其它程序模塊146、和程序數據147在這裡被給出了不同的號碼,為了說明在最低程度上它們是不同的拷貝。用戶可以通過輸入設備(如鍵盤162和定位設備161(一般指滑鼠、跟蹤球或觸摸板))來向計算機110輸入命令和信息。其它輸入設備(未示出)可能包括話筒、操縱杆、遊戲鍵盤、圓盤式衛星電視天線、掃描儀或類似的。這些及其它的輸入設備通常是通過一個與系統總線121連接的用戶輸入接口160與處理單元120相連,但也可以通過其它接口和總線結構來連接,如串口、遊戲埠或通用串行總線(USB)。圖形接口182,如Northbridge,也可以與系統總線121相連。Northbridge是一個與CPU或主機處理單元120通信的晶片組,負責圖形加速埠(AGP)的通信。一個或多個圖形處理單元(GPU)184可能與圖形接口182通信。在這點上,GPU 184通常包括片上存儲器,例如寄存器存儲器,並且GPU 184與視頻存儲器186通信。然而GPU 184隻是一個協處理器的例子,各種各樣的協處理設備可以包含到計算機110中。監視器191或其它類型的顯示設備也通過接口與系統總線121相連,如與視頻存儲器186通信的視頻接口190。除了監視器191外,計算機還可以包括其它的外圍輸出設備如可通過輸出外設接口195相連的揚聲器197和印表機196。
計算機110可以通過使用與一個或多個遠程計算機(如遠程計算機180)相連的邏輯連接而運行於網絡化的或分布式的環境中。遠程計算機180可以是個人計算機、一個伺服器、一個路由器、一個網絡PC、一個對等設備或其它通用網絡節點,典型情況下,儘管圖2B只顯示了一個存儲器設備181,但它包含上述的與計算機110相關的許多或所有部件。圖2B中所描述的邏輯連接包括一個區域網(LAN)171和一個廣域網(WAN)173,但也可以包括其它的網絡/總線。這樣的網絡環境在家用、辦公室、企業範圍內的計算機網、企業內部網和網際網路中是很常見的。
當被應用於LAN網絡環境中時,計算機110通過一個網絡接口或適配器170來與LAN 171相連。當被應用於WAN網絡環境中時,典型情況下,計算機110包含一個數據機172或其它的可以在WAN 173如網際網路上建立通信的裝置。可以是內置的或外部的數據機172,可以通過用戶輸入接口160或其它適當的方法與系統總線121相連。在網絡環境中,所描述的與計算機110相聯繫的程序模塊或其某些部分,可以被存儲在遠程存儲器設備中。作為例子,而不是限制,圖2B將遠程應用程式185圖示為駐留於存儲器設備181中。應該明白,所顯示的網絡連接只是示例性的,其它的在計算機間建立通信連接的方法也是可用的。
示例性的分布式計算框架或結構各種不同的分布式計算框架已經並且正在依據個人計算和網際網路的匯聚而發展。個人和商業用戶同樣被提供一種用於應用和計算設備的無縫地可互操作的和Web使能的接口,使得計算行為日益面向Web瀏覽器或網絡。
例如,MICROFT的.NET平臺包括伺服器、積木式組件服務,如基於Web的數據存儲和可下載的設備軟體。一般而言,.NET平臺提供了(1)使全部範圍內的計算設備一起工作及使用戶信息自動在它們之中更新和同步的能力;(2)通過使用XML代替HTML而增加的用於Web網站的交互能力;(3)以定製訪問和從管理各種應用(如電子郵件)或軟體如Office.NET的中心起始點向用戶發送產品和服務為特色的在線服務;(4)可以增加信息存取的效率和簡單性及在用戶和設備中的信息同步的集中化的數據存儲;(5)集成各種通信媒體(如電子郵件、傳真和電話)的能力;(6)為開發人員提供創建可重用模塊的能力,從而增加生產率而減少編程出錯的數量;以及(7)許多其它的跨平臺集成特徵。
雖然此處示例性的實施例是與計算設備中的軟體一起描述的,但是本發明的一個或多個部分還可以通過作業系統、應用編程接口(API)、或處於協處理器和請求對象之間的「中間人」對象來實現,使得顏色管理服務可以通過所有的.NET語言和服務和在其它的分布式計算框架中執行、支持和訪問。
X11中的顏色管理如背景技術中所敘述的,X11R6顏色管理系統是一種圖形協議,它通過包括白點適應、色域映射、矩陣變換和1-D LUT的操作,而支持可插入的顏色管理功能,和支持將與設備無關的應用內容轉換成與設備相關的顏色值。
X11R6結構具有兩種顏色管理方案。第一種是通常用來刻畫簡單的顯示器(如CRT)的簡單的3×3矩陣和3個1-D LUT。第二種是主要包含白點轉換和色域壓縮的Xcms。由於Xcms的引入,顏色管理得到發展並發現僅限於這兩種技術的解決方案是不夠的,因為大多數都使用源和目標設備,其中X11只支持一個目標設備並假定源是與設備無關的。幸運的是,Xcms在這種結構中允許更靈活的實現。
CIELAB是由CIE在1976年採納的系統,作為一種在表示人類視覺系統(HVS)方面比以前的CIELUV更好地在它們的值中顯示了統一彩色空間的模型。CIELAB是基於早期(1942)的叫作L.a.b的Richard Hunter系統的對立顏色系統。在1960年代中期發現,顏色對立與視神經和大腦之間的某個地方相關,視網膜顏色刺激被轉換成亮和暗、紅和綠、藍和黃之間的差異。CIELAB用三個軸L*、a*和b*來表示這些值。術語的全稱是1976年的CIE L*a*b*空間。
中心的豎軸代表光亮度,表示為L*,光亮度值從0(黑色)變化到100(白色)。顏色軸以一種顏色不能既是紅色又是綠色,或既是藍色又是黃色這一事實為基礎,因為這些顏色是相互對立的。在每一個軸上值從正變化到負。在a-a』軸上,正值代表紅色的數量,而負值代表綠色的數量。在b-b』軸上,黃色為正,藍色為負。對於這兩個軸,零是中性的灰色。CIEXYZ數據結構是被X11所使用的數據結構,它包括一個特定顏色在特定的彩色空間中的x、y和z坐標。
圖3A圖示了一個X11R5如何工作的例子,它在X11中採取了直接彩色或真彩色表面。通過3×3矩陣300,從與設備無關的RGB值產生與顯示設備相關的、相對亮度為線性的RGB值。然後,與顯示設備相關的非線性RGB值在給定γ值(如γ=1.0)的情況下,通過3個1-D LUT 310來產生。這些與設備相關的值然後再由顯示設備320來重現。在這點上,設備320提供了為顯示設備320所特有的3×3矩陣和1-D LUT。
特別地,X彩色空間變換上下文(XCCC)支持兩類功能指針,toCIEXYZ和fromCIEXYZ。圖3B圖示了一個X11R6如何工作的例子。通過X11庫(Xlib)中的標準彩色空間變換機制,從與設備無關的顏色值,如CIELAB、CIELUV、CIEYxy、CIEXYZ、TekHVC、cmdPad,產生CIEXYZ值。然後通過Xcms的白點變換部件330來生成設備白點CIEXYZ值。然後通過Xcms的色域壓縮部件340來生成設備的色域CIEXYZ值。然後或者按照上面討論過的ZX11r5機制,或者通過XCCC的fromCIEXYZ機制生成與設備相關的RGB值。
這樣,如圖4A所示,X協議平臺中的顏色管理就通過toCIEXYZ和fromCIEXYZ功能而實現,toCIEXYZ和fromCIEXYZ功能生成X11數據結構或將X11數據結構變換成與設備相關的值。
圖4B圖示了標準WINDOWS顏色管理模塊(CMM)的操作。從各種各樣的源設備相關彩色空間和設備概要,CMM可以通過標準CMM功能轉換成與設備無關的彩色空間,如ICC、sRGB和scRGB。然後,通過目標設備概要,將獨立的彩色空間值轉換成適於目標設備的彩色空間。
如圖4C所示,本發明提供了一種通過標準ICC概要和顏色管理方法所提供的支持而增強XCCC的toCIEXYX和fromCIEXYZ功能的機制。
為了實現此目的,首先或者明確地通過用戶接口(UI)或隱含地通過設備關聯,來確定適當的源和目標概要。從這兩個設備概要,用戶可以使用標準的WINDOWSCMM功能來創建直接由源設備轉換到目標設備的設備連接概要,此概要處理源設備和目標設備的顏色特徵差異間的最終關係。將X11結構引入該進程中,用以通過使fromCIEXYZ功能的指針指向一個標準的基於CMM的、使用設備連接概要將源轉換成目標顏色或圖像的顏色轉換功能,而實現將值從源設備傳送到目標設備。可以將標準CMM支持從WINDOWS圖像顏色匹配(ICM)接口或其它的ICC顏色管理系統接口移植到X11中。
圖5A到圖5C圖示了本發明的幾個例子。在這些例子中,為了描述的簡單,白點、色域壓縮和其它的功能對空操作(null operations)來說是默認的。
在圖5A中,RGB或sRGB源設備顏色存在於源設備端。在計算完源設備和目標設備之間的設備連接概要後,本發明假冒X系統認為源設備RGB為CIEXYZ。然後,通過fromCIEXYZ功能(包括設備連接概要作為一個變元)產生與設備相關的目標顏色。
在圖5B中,CMYK源設備顏色存在於源設備端。在計算完源設備和目標設備之間的設備連接概要後,本發明通過將源設備RGB認定為cmsPad XcmsColor類型而對X系統進行假冒。然後,通過fromCIEXYZ功能(包括設備連接概要作為一個變元)產生與設備相關的目標顏色。
在圖5C中,scRGB源設備顏色存在於源設備端。在計算完源設備和目標設備之間的設備連接概要後,通過fromCIEXYZ功能(包含設備連接概要)產生與設備相關的目標顏色。或者,通過fromCIEXYZ功能(包含設備連接概要)產生擴展的與設備相關的目標顏色。在這個轉換中,由於Xcms顏色是無符號的短型,而scRGB是有符號的浮點型,所以提供了補償。可選地,色調壓縮可以通過附加的3個1-DLUT獨立完成。
其它的顏色管理方案,如RIMM RGB(EK/PIMA)、ROMM RGB(EK/PIMA)、esRGB(HP/PIMA),也可以通過使用圖5C的例子而得到支持。在上述的每一個本發明例子中,X功能fromCIEXYZ和toCIEXYZ被假冒以從現代顏色管理系統中接收數據。
關於對API的假冒的細節,這裡建議了兩個非限定性的選擇。第一個,當從與設備無關的應用內容移動到與設備相關的顏色值時,本發明對fromCIEXYZ功能進行假冒,以在實際中從與設備相關的顏色值轉變為CIEXYZ,然後使用3×3矩陣和1-D LUT來刻畫特定輸出設備的特徵。為了將與設備相關(dd)的值轉變為與設備無關(di)的值,本過程被反轉並且對toCIEXYZ API進行假冒。
或者,當從與設備無關的應用內容移動到與設備相關的顏色值時,本發明對fromCIEXYZ API進行假冒,以在實際中從與設備相關的顏色值轉變為CIEXYZ,然後將3×3矩陣設置為等同矩陣及將1-DLUT設置為等同LUT,以支持複雜的不能被矩陣和LUT所刻畫的目標設備。為了將與設備相關(dd)的值轉變為與設備無關(di)的值,本過程被反轉並且對toCIEXYZ API進行假冒。
在此,「假冒fromCIEXYZ」或「假冒toCIEXYZ」的意思是,將指針所指向的協議默認提供的功能替換為一個定製功能,此用戶功能實際上在ICC兼容的顏色管理模塊中進行調用,並將顏色由dd轉換為di或由dd轉換為dd。
如上面所提及的,雖然本發明的示例性的實施例是和各種各樣的計算設備和網絡結構一起描述的,但是基本概念可以應用到顏色管理系統所希望的任何計算設備或系統中。因此,依據本發明提供改進的信號處理的技術可以應用於各種應用和設備中。例如,本發明的算法可以應用於一個計算設備的作業系統中,該計算設備作為設備上獨立對象,作為另一個對象的部分,作為一個可以從伺服器上下載的對象,作為一個設備或對象與網絡間的「中間人」,作為一個分布式的對象等等。雖然此處所選擇的示例性的程式語言、名字和例子分別代表不同的選擇,但這些語言、名字和例子的目的並不是作為限制。本領域中的一般技術人員會明白,有大量的方法可以提供實現相同、類似或等價於本發明實現的顏色管理系統的目標代碼。
此處所描述的各種技術可以和硬體或軟體,或在適當的情況下與這兩者的結合一起來實現。因此,本發明的方法和設備,或者它的某些方面或部分,其形式可以是體現於有形媒體(如軟盤、CD-ROM、硬碟或其它任何機器可讀取的存儲媒體)中的程序代碼(即指令),其中,當程序代碼被加載到機器(如計算機)中並被執行時,該機器就成為了一個實施本發明的設備。在程序代碼在可編程計算機上執行的情況下,計算設備通常包括一個處理器、一個處理器可讀取的存儲媒體(包括易失性的和非易失性的存儲器和/或存儲部件)、至少一個輸入設備和至少一個輸出設備。可使用本發明的信號處理服務的一個或多個程序,例如通過使用數據處理API等,最好是用高級別程序化的或面向對象的程式語言來實現的,以便與計算機系統通信。但是如果需要,程序可以用彙編或機器語言來實現。在任何情況下,語言可以是被編譯或解釋語言,並與硬體實現相結合。
本發明的方法和設備還可以通過具體表現為通過某種傳輸媒體(如通過電線或電纜,通過光纖或通過其它的任何傳輸形式)而傳輸的程序代碼形式通信來實現,其中,當程序代碼被接收和加載到機器中並被執行時,如EPROM、門陣列、可編程邏輯器件(PLD)、客戶計算機、錄像機等,或一個具有上述實施例中所述信號處理能力的接收機,就變成了實現本發明的設備。當在一個通用處理器上實現時,程序代碼和處理器一起來提供一個調用本發明的功能的獨特的設備。另外,與本發明相關的任何存儲技術可以總是硬體和軟體的結合。
雖然本發明是與各個附圖所示優選實施例一起來描述的,但是應該明白,其它類似的實施例也可以使用,或者可以對所描述的實施例進行修改和增加來執行與本發明相同的功能,而不背離本發明。例如,雖然本發明示例性的網絡環境是以網絡化環境的上下文來描述的,如對等網絡化環境,但本領域中的技術人員可以理解本發明並不局限於此,並且在本申請中所描述的方法可以應用到任何計算設備或環境中,如遊戲控制臺、手持計算機、可攜式計算機等等,無論是有線的或無線的,並且可以應用於任何數量的通過通信網絡相連並在網絡中交互的這種計算設備中。另外,應當強調,各種計算機平臺,包括手持設備作業系統和其它應用所特有的作業系統,都是所預期的,特別是在無線網絡設備的數量在繼續增長的情況下。還有,本發明可以通過大量處理晶片或設備實現,存儲同樣可通過大量設備實現。因此,本發明不應該被限制於任何單一的實施例,而是應該根據附屬的權利要求的廣度和範圍被解釋。
權利要求
1.一種提供顏色管理的方法,包括從至少一個源設備處接收與設備無關的顏色數據,以將其轉換到至少一個目標設備;生成表示所述至少一個源設備和所述至少一個目標設備之間的至少一個顏色特徵差異的設備連接概要;對顏色管理系統的至少一個應用編程接口功能進行假冒;以及調用所述至少一個應用編程接口功能來為所述至少一個目標設備生成與目標設備相關的顏色值。
2.如權利要求1所述的方法,其中所述假冒包括對至少一個X11應用編程接口功能進行假冒。
3.如權利要求2所述的方法,其中所述假冒包括假冒toCIEXYZ功能和fromCIEXYZ功能中至少之一。
4.如權利要求1所述的方法,其中所述假冒包括為至少一個應用編程接口功能提供設備連接概要。
5.如權利要求1所述的方法,其中所述至少一個源設備和所述至少一個目標設備包括計算設備和軟體對象中至少之一。
6.如權利要求1所述的方法,還包括調用第二個顏色管理系統的至少一個功能。
7.如權利要求6所述的方法,其中所述調用第二個顏色管理系統的至少一個功能包括調用顏色管理模塊(CMM)。
8.如權利要求1所述的方法,其中所述與設備無關的顏色數據包括標準彩色空間(sRGB)數據、標準擴展彩色空間(scRGB)數據、國際顏色聯盟(ICC)概要數據、以及青色、品紅色、黃色和黑色(CMYK)數據中至少之一。
9.如權利要求1所述的方法,其中所述與設備無關的顏色數據包括scRGB、RIMM RGB(EK/PIMA)、ROMM RGB(EK/PIMA)和esRGB(HP/PIMA)顏色數據中至少之一。
10.如權利要求9所述的方法,還包括將有符號的符點數轉換為無符號短型數。
11.如權利要求9所述的方法,其中所述調用包括在設備連接概要中通過3個1-D查詢表(LUT)來提供色調壓縮。
12.如權利要求1所述的方法,其中所述假冒包括對至少一個應用編程接口功能進行假冒以將與設備相關的顏色值轉換為CIEXYZ值;以及下面兩者之一(1)在設備連接概要中使用3×3矩陣和1-D查詢表(LUT)來刻畫特定輸出設備的特徵;(2)將設備連接概要的3×3矩陣設置為等同矩陣及將設備連接概要的1-D LUT設置為等同LUT。
13.如權利要求1所述的方法,其中所述方法是可反向的,它反過來將與設備相關的顏色值轉換為與設備無關的值,所述假冒包括對應用編程接口的toCIEXYZ功能進行假冒。
14.如權利要求1所述的方法,其中所述假冒包括將指針所指向的提供給所述至少一個應用編程接口功能的協議默認功能,替換為調用ICC兼容的顏色管理模塊的定製功能。
15.用於提供權利要求1的可控紋理樣例的作業系統、驅動器代碼、應用編程接口、工具箱和協處理器中的至少一個。
16.一種傳載用於執行權利要求1的方法的計算機可執行指令的調製數據信號。
17.一種包含用於執行權利要求1的方法的裝置的計算設備。
18.一種提供顏色管理的計算機可讀取的媒體,在其上存儲有計算機可執行指令以執行一種方法,該方法包括從至少一個源設備處接收與設備無關的顏色數據,以將其轉換到至少一個目標設備;生成表示所述至少一個源設備和所述至少一個目標設備之間的至少一個顏色特徵差異的設備連接概要;對顏色管理系統的至少一個應用編程接口功能進行假冒;以及調用所述至少一個應用編程接口功能來為所述至少一個目標設備生成與目標設備相關的顏色值。
19.如權利要求18所述的計算機可讀取的媒體,其中所述假冒包括對至少一個X11應用編程接口功能進行假冒。
20.如權利要求19所述的計算機可讀取的媒體,其中所述假冒包括對toCIEXYZ和fromCIEXYZ功能中至少之一進行假冒。
21.如權利要求18所述的計算機可讀取的媒體,其中所述假冒包括為至少一個應用編程接口功能提供設備連接概要。
22.如權利要求18所述的計算機可讀取的媒體,其中所述至少一個源設備和所述至少一個目標設備包括計算設備和軟體對象中至少之一。
23.如權利要求18所述的計算機可讀取的媒體,還包括調用第二個顏色管理系統的至少一個功能。
24.如權利要求23所述的計算機可讀取的媒體,其中所述調用第二個顏色管理系統的至少一個功能包括調用顏色管理模塊(CMM)。
25.如權利要求18所述的計算機可讀取的媒體,其中所述與設備無關的顏色數據包括標準彩色空間(sRGB)數據、標準擴展彩色空間(scRGB)數據、國際顏色聯盟(ICC)概要數據、以及青色、品紅色、黃色和黑色(CMYK)數據中至少之一。
26.如權利要求18所述的計算機可讀取的媒體,其中所述與設備無關的顏色數據包括scRGB、RIMM RGB(EK/PIMA)、ROMM RGB(EK/PIMA)和esRGB(HP/PIMA)顏色數據中至少之一。
27.如權利要求26所述的計算機可讀取的媒體,還包括將有符號的符點數轉換為無符號短型數。
28.如權利要求26所述的計算機可讀取的媒體,其中所述調用包括在設備連接概要中通過3個1-D查詢表(LUT)來提供色調壓縮。
29.如權利要求18所述的計算機可讀取的媒體,其中所述假冒包括對至少一個應用編程接口功能進行假冒以將與設備相關的顏色值轉換為CIEXYZ值;以及下面兩者之一(1)在設備連接概要中使用3×3矩陣和1-D查詢表(LUT)來刻畫特定輸出設備的特徵;(2)將設備連接概要的3×3矩陣設置為等同矩陣及將設備連接概要的1-D LUT設置為等同LUT。
30.如權利要求18所述的計算機可讀取的媒體,其中所述方法的操作是可反向的,它反過來將與設備相關的顏色值轉換為與設備無關的值,所述假冒包括對應用編程接口的toCIEXYZ功能進行假冒。
31.如權利要求18所述的計算機可讀取的媒體,其中所述假冒包括將指針所指向的提供給所述至少一個應用編程接口功能的協議默認功能,替換為調用ICC兼容的顏色管理模塊的定製功能。
32.一種用於與顏色管理一起使用的計算設備,包括從至少一個源設備處接收與設備無關的顏色數據以將其轉換到至少一個目標設備的輸入部件;生成表示所述至少一個源設備和所述至少一個目標設備之間的至少一個顏色特徵差異的設備連接概要的處理部件;對顏色管理系統的至少一個應用編程接口功能進行假冒的假冒部件;以及調用所述至少一個應用編程接口功能來為所述至少一個目標設備生成與目標設備相關的顏色值的輸出部件。
33.如權利要求32所述的計算設備,其中所述假冒部件對至少一個X11應用編程接口功能進行假冒。
34.如權利要求33所述的計算設備,其中所述假冒部件對toCIEXYZ功能和fromCIEXYZ功能中至少之一進行假冒。
35.如權利要求32所述的計算設備,其中所述假冒部件為至少一個應用編程接口功能提供設備連接概要。
36.如權利要求32所述的計算設備,其中所述至少一個源設備和所述至少一個目標設備包括計算設備和軟體對象中至少之一。
37.如權利要求32所述的計算設備,還包括調用第二個顏色管理系統的至少一個功能的調用部件。
38.如權利要求37所述的計算設備,其中所述調用部件調用第二個顏色管理系統的至少一個功能包括調用顏色管理模塊(CMM)。
39.如權利要求32所述的計算設備,其中所述與設備無關的顏色數據包括標準彩色空間(sRGB)數據、標準擴展彩色空間(scRGB)數據、國際顏色聯盟(ICC)概要數據、以及青色、品紅色、黃色和黑色(CMYK)數據中至少之一。
40.如權利要求32所述的計算設備,其中所述與設備無關的顏色數據包括scRGB、RIMM RGB(EK/PIMA)、ROMM RGB(EK/PIMA)和esRGB(HP/PIMA)顏色數據中至少之一。
41.如權利要求40所述的計算設備,還包括將有符號的符點數轉換為無符號短型數的轉換部件。
42.如權利要求40所述的計算設備,其中所述調用部件在設備連接概要中通過3個1-D查詢表(LUT)來提供色調壓縮。
43.如權利要求32所述的計算設備,其中所述假冒部件對至少一個應用編程接口功能進行假冒以將與設備相關的顏色值轉換為CIEXYZ值,和下面兩者之一(1)在設備連接概要中使用3×3矩陣和1-D查詢表(LUT)來刻畫特定輸出設備的特徵;(2)將設備連接概要的3×3矩陣設置為等同矩陣及將設備連接概要的1-D LUT設置為等同LUT。
44.如權利要求32所述的計算設備,其中所述部件的操作是可反向的,它反過來將與設備相關的顏色值轉換為與設備無關的值,所述假冒部件對應用編程接口的toCIEXYZ功能進行假冒。
45.如權利要求32所述的計算設備,其中所述假冒部件將指針所指向的提供給所述至少一個應用編程接口功能的協議默認功能,替換為調用ICC兼容的顏色管理模塊的定製功能。
46.一種提供顏色管理的方法,包括從至少一個源設備處接收與設備無關的顏色數據,以將其轉換到至少一個目標設備;生成表示所述至少一個源設備和所述至少一個目標設備之間的至少一個顏色特徵差異的設備連接概要;對至少一個X11應用編程接口功能進行假冒;以及調用所述至少一個X11應用編程接口功能來為所述至少一個目標設備生成與目標設備相關的顏色值。
47.如權利要求46所述的方法,其中所述假冒包括假冒toCIEXYZ功能和fromCIEXYZ功能中至少之一。
48.如權利要求46所述的方法,其中所述假冒包括為至少一個X11應用編程接口功能提供設備連接概要。
49.如權利要求46所述的方法,還包括調用顏色管理模塊(CMM)系統的至少一個功能。
50.如權利要求46所述的方法,其中所述假冒包括對至少一個X11應用編程接口功能進行假冒以將與設備相關的顏色值轉換為CIEXYZ值;以及下面兩者之一(1)在設備連接概要中使用3×3矩陣和1-D查詢表(LUT)來刻畫特定輸出設備的特徵;(2)將設備連接概要的3×3矩陣設置為等同矩陣及將設備連接概要的1-D LUT設置為等同LUT。
51.如權利要求46所述的方法,其中所述方法是可反向的,它反過來將與設備相關的顏色值轉換為與設備無關的值,所述假冒包括對X11應用編程接口的toCIEXYZ功能進行假冒。
52.如權利要求46所述的方法,其中所述假冒包括將指針所指向的提供給所述至少一個X11應用編程接口功能的協議默認功能,替換為定製功能。
53.提供顏色管理、在其上存儲大量計算機可執行模塊包括計算機可執行指令的至少一種計算機可讀取的媒體,這些模塊包括用於從至少一個源設備處接收與設備無關的顏色數據,以將其轉換到至少一個目標設備的方法;用於生成表示所述至少一個源設備和所述至少一個目標設備之間的至少一個顏色特徵差異的設備連接概要的方法;用於對顏色管理系統的至少一個應用編程接口功能進行假冒的方法;以及用於調用所述至少一個應用編程接口功能來為所述至少一個目標設備生成與目標設備相關的顏色值的方法。
54.如權利要求53所述的至少一種計算機可讀取的媒體,其中所述用於假冒的方法對至少一個X11應用編程接口功能進行假冒。
55.一種與顏色管理系統一起使用的計算設備,包括用於從至少一個源設備處接收與設備無關的顏色數據以將其轉換到至少一個目標設備的裝置;用於生成表示所述至少一個源設備和所述至少一個目標設備之間的至少一個顏色特徵差異的設備連接概要的裝置;用於對顏色管理系統的至少一個應用編程接口功能進行假冒的裝置;以及用於調用所述至少一個應用編程接口功能來為所述至少一個目標設備生成與目標設備相關的顏色值的裝置。
56.如權利要求55所述的計算設備,其中所述用於假冒的裝置對至少一個X11應用編程接口功能進行假冒。
全文摘要
提供與各種具有不同顏色顯示特徵的計算設備相關的顏色管理的系統和方法。X11圖形平臺得到擴展以支持開始並結束於與設備相關的顏色的顏色管理系統,如ICC、sRGB和scRGB。同時支持CMYK彩色空間和X11R6中的擴展RGB彩色空間,從而將X11R6圖形平面擴展為支持任意的現代顏色管理標準。
文檔編號G09G5/06GK1467655SQ031105
公開日2004年1月14日 申請日期2003年4月10日 優先權日2002年6月24日
發明者麥可·D·斯託克斯, 艾德利恩·塞切, 恩 塞切, 麥可 D 斯託克斯 申請人:微軟公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀