亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

面向目標(biāo)的調(diào)色板系統(tǒng)的制作方法

文檔序號(hào):2636406閱讀:309來源:國(guó)知局
專利名稱:面向目標(biāo)的調(diào)色板系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般地涉及在操作系統(tǒng)中使用的彩色調(diào)色板的管理,特別涉及在面向目標(biāo)的操作系統(tǒng)中管理彩色調(diào)色板。
面向目標(biāo)編程(OOP)是建立用戶友好、智能計(jì)算機(jī)軟件的優(yōu)選環(huán)境。OOP的關(guān)鍵元素是數(shù)據(jù)封裝、繼承和多形性。這些元素可被用來產(chǎn)生通常特征在于具有圖符、鼠標(biāo)光標(biāo)和選屏項(xiàng)的視窗環(huán)境的圖形用戶接口(GUI)。雖然這三種關(guān)鍵元素為OOP語言所共有,但大多數(shù)OOP語言有差別地實(shí)施這三種關(guān)鍵元素。
OOP語言的例子是Smalltalk、Object Pascal和C++。Smalltalk實(shí)際上不只是語言,它可被更準(zhǔn)確地稱為編程環(huán)境。Smalltalk是在七十年代早期在施樂(Xerox)的Palo A1-to研究中心(PARC)的“學(xué)習(xí)研究小組(Learning ResearchGroup)”中被制定的。在Smalltalk中,信息傳送給目標(biāo),以便對(duì)目標(biāo)本身進(jìn)行評(píng)價(jià)。信息執(zhí)行類似于通常編程語言中的功能調(diào)用任務(wù)的任務(wù)。編程人員不需要考慮數(shù)據(jù)的類型;相反地,編程人員只需要考慮建立正確的信息次序并利用正確的信息。Object Pascal是用于蘋果(Apple)的Macintosh計(jì)算機(jī)的語言。蘋果與Pascal的設(shè)計(jì)者Niklaus Wirth合作開發(fā)Object Pascal。AT&T(美國(guó)電話和電報(bào)公司)貝爾實(shí)驗(yàn)室的Bjarne Stroustrup于1983年開發(fā)了作為C的擴(kuò)展的C++。C++的關(guān)鍵概念是類別,它是用戶定義型的。類別提供面向目標(biāo)的編程特征。C++模塊與C模塊兼容并可被自由地鏈接,因此已有的C庫(kù)可以和C++程序一起使用。最廣泛使用的基于目標(biāo)和面向目標(biāo)的編程語言將它們的傳統(tǒng)上溯到由挪威的O—J.Dahl、B.Myhrhaug和K.Nygard在六十年代開發(fā)的Simula。有關(guān)OOP主題的進(jìn)一步信息可以通過參看加州Redwood市Benjimin/Cumming出版公司出版(1991年)的由Grady Booch所著的“應(yīng)用程序的面向目標(biāo)設(shè)計(jì)(Object oriented Design with Applications)”來得到。
考慮到上述OOP的簡(jiǎn)略綜述,彩色調(diào)色板管理在編程環(huán)境中產(chǎn)生了獨(dú)特的問題。監(jiān)視器表面上的每一象素包括紅熒光物質(zhì)(red phospnor)、綠熒光物質(zhì)和藍(lán)熒光物質(zhì)。每種熒光物質(zhì)具有確定監(jiān)視器可以顯示的色彩的物理特性。這三種滎光物質(zhì)和電子束槍的最大相等強(qiáng)度確定了監(jiān)視器的色彩區(qū)域。但是,雖然監(jiān)視器的熒光物質(zhì)理論上確定了設(shè)備實(shí)際上可以顯示哪一種色彩,但對(duì)每一監(jiān)視器能夠顯示的色彩數(shù)目有實(shí)際限制。例如,由于計(jì)算機(jī)以數(shù)字(與模擬相反)的方式操作,所以在監(jiān)視器上能被實(shí)際顯示的色彩數(shù)目被限制為有限的個(gè)數(shù)。隨著監(jiān)視器可以顯示的色彩數(shù)目增大,存儲(chǔ)屏幕數(shù)字圖象的存儲(chǔ)器也增大。存儲(chǔ)該屏幕的存儲(chǔ)器通常被包括在視頻卡中。
由于存儲(chǔ)器的成本,開發(fā)人員通常動(dòng)態(tài)地設(shè)置為操作所用的監(jiān)視器彩色區(qū)域的所需部分。這一方案利用色彩查閱表(CLUT)。有選擇地使彩色調(diào)色板與應(yīng)用程序中的窗口或與應(yīng)用程序本身相關(guān)聯(lián)。開發(fā)了調(diào)色板管理系統(tǒng),其中色彩可被視窗或應(yīng)用程序請(qǐng)求。根據(jù)所作請(qǐng)求的類型,可以友好地或非友好地共享色彩。當(dāng)改變有效視窗或應(yīng)用程序時(shí),調(diào)色板管理程序可以以盡可能對(duì)用戶視覺愉悅的方式在原有效調(diào)色板和新的調(diào)色板之間進(jìn)行轉(zhuǎn)換。
但是,雖然在通常的操作系統(tǒng)中可以相對(duì)容易地使CLUT與應(yīng)用程序或視窗相關(guān)聯(lián),但優(yōu)選的操作系統(tǒng)在這種關(guān)聯(lián)方面還是有問題的。
因此,本發(fā)明的目的是提供新的彩色調(diào)色板管理方法和系統(tǒng),在該新的彩色調(diào)色板管理方法和系統(tǒng)中,視圖可以協(xié)調(diào)地和視覺愉悅地共享彩色,該新的彩色調(diào)色板管理方法和系統(tǒng)供包括復(fù)合文件的操作系統(tǒng)使用,該復(fù)合文件由被組裝成為一個(gè)較大文件的一些封裝程序組成。本發(fā)明使CLUT與視圖相關(guān)聯(lián)并提供了不同色彩共享的原則。
在本發(fā)明的第一個(gè)方面中,管理用于面向目標(biāo)的操作系統(tǒng)的彩色調(diào)色板的方法包括以下步驟建立用于操作系統(tǒng)的色彩查閱表(CLUT),均勻地將CLUT分為預(yù)定數(shù)目的色彩;顯示具有多個(gè)視圖的圖形信息,在圖形信息的多個(gè)視圖之中共享在CLUT中的預(yù)定數(shù)目的色彩,其中預(yù)定數(shù)目的色彩包括多種色彩,當(dāng)每種彩色在多個(gè)視圖的第一和第二視圖之間被共享時(shí)具有預(yù)定的一致性。
以下參看附圖對(duì)本發(fā)明最佳實(shí)施例的詳細(xì)描述將更加清楚上述及其它的目的、方面和優(yōu)點(diǎn),附圖中


圖1是根據(jù)最佳實(shí)施例的計(jì)算機(jī)系統(tǒng)的方框圖;圖2表示最佳實(shí)施例的監(jiān)視器和視頻卡的配置;圖3表示最佳實(shí)施例的紅、綠和藍(lán)(RGB)彩色空間;圖4表示最佳實(shí)施例的監(jiān)視器的彩色區(qū)域的一個(gè)例子;圖5表示最佳實(shí)施例的“色彩查閱表(CLUT)”;圖6表示最佳實(shí)施例的復(fù)合文件;圖7表示根據(jù)最佳實(shí)施例,監(jiān)視器的典型彩色區(qū)域的曲線圖;圖8表示根據(jù)最佳實(shí)施例,在圖7中繪出的區(qū)域的剖視圖;圖9表示根據(jù)最佳實(shí)施例,放置在平面的周邊正確位置處的彩色和在該平面中的白色點(diǎn);圖10表示最佳實(shí)施例的張馳技術(shù)(relaxation tech-nique)的結(jié)果;圖11是最佳實(shí)施例的流程圖。
最好在駐留在諸如IBM PS/2或Apple Macintosh計(jì)算機(jī)這樣的個(gè)人計(jì)算機(jī)上的操作系統(tǒng)的范圍內(nèi)實(shí)施本發(fā)明。典型的硬件環(huán)境如圖1所示,圖中表示了根據(jù)主題發(fā)明的工作站的典型硬件配置,包括了例如通常的微處理器這樣的中央處理單元10和通過系統(tǒng)總線12互連的一些其它部件。圖1所示的工作站包括隨機(jī)存取存儲(chǔ)器(RAM)14,只讀存儲(chǔ)器(ROM)16,將諸如磁盤部件20這樣的外圍設(shè)備與總線連接的I/O適配器18,將鍵盤24、鼠標(biāo)26、揚(yáng)聲器28、麥克風(fēng)32和/或諸如觸摸屏設(shè)備(未示出來)這樣的用戶接口設(shè)備與總線連接的用戶接口適配器22,將工作站與數(shù)據(jù)處理網(wǎng)絡(luò)連接的通信適配器34,以及將總線與顯示設(shè)備38連接的顯示適配器36。工作站在其上已駐留了例如Apple System/7操作系統(tǒng)這樣的操作系統(tǒng)。
在最佳實(shí)施例中,利用面向目標(biāo)的編程技術(shù)用C++編程語言來實(shí)現(xiàn)本發(fā)明。如本領(lǐng)域普通技術(shù)人員所懂得的那樣,面向目標(biāo)編程(OOP)的對(duì)象是包括數(shù)據(jù)結(jié)構(gòu)和對(duì)數(shù)據(jù)的操作的軟件實(shí)體。這些元素使目標(biāo)能根據(jù)用其數(shù)據(jù)元素表示的其特性和用其數(shù)據(jù)操縱功能表示的其行為來實(shí)際地模擬任何真實(shí)世界的實(shí)體。以這一方式,目標(biāo)能夠模擬類似人和計(jì)算機(jī)這樣的具體事物,也能夠模擬類似數(shù)字或幾何概念這樣的抽象概念。目標(biāo)技術(shù)的好處來自于三個(gè)基本原理封裝、多形性和繼承。
目標(biāo)隱藏或封裝其數(shù)據(jù)的內(nèi)部結(jié)構(gòu)和其功能工作的算法。目標(biāo)不暴露這些實(shí)施細(xì)節(jié),而是呈現(xiàn)界面,這些界面表示其完全的抽象且無其它信息。多形性使封裝更進(jìn)一步。該概念是許多形態(tài),一個(gè)界面。軟件部件可以不需要準(zhǔn)確地知道一部件是什么而對(duì)該一部件進(jìn)行請(qǐng)求。接收該請(qǐng)求的部件對(duì)請(qǐng)求進(jìn)行解釋并根據(jù)部件的變量和數(shù)據(jù)決定如何執(zhí)行該請(qǐng)求。第三個(gè)原理是繼承,它允許開發(fā)人員重復(fù)使用預(yù)先存在的設(shè)計(jì)和代碼。這一功能允許開發(fā)人員避免根據(jù)擦除建立軟件。相反地,利用繼承,開發(fā)人員獲得繼承了行為的子類,然后對(duì)子類進(jìn)行定制以便滿足他們的特殊需要。
已有技術(shù)的方案是在過程環(huán)境中分層目標(biāo)和類別庫(kù)。市場(chǎng)上的許多應(yīng)用程序結(jié)構(gòu)采用這一設(shè)計(jì)方案。在這一設(shè)計(jì)中,在單一操作系統(tǒng)的頂部有一個(gè)或多個(gè)目標(biāo)層級(jí)。雖然這一方案在目標(biāo)層中利用了封裝、多形性和繼承的全部原路,并且對(duì)于過程編程技術(shù)有顯著的改進(jìn),但這一方案有其局限性。局限性來自這一事實(shí),即雖然開發(fā)人員容易重復(fù)使用他們自己的目標(biāo),但使用其它系統(tǒng)的目標(biāo)是困難的,開發(fā)人員仍然需要利用過程操作系統(tǒng)(OS)調(diào)用到達(dá)較低的非目標(biāo)層。
面向目標(biāo)編程的另一個(gè)方面是對(duì)于應(yīng)用開發(fā)的結(jié)構(gòu)方案。結(jié)構(gòu)(frameworks)的最合理定義之一來自于伊利諾斯(Illinois)大學(xué)的Ralph E.Johnson和普渡(Purdue)大學(xué)的Vincent F.Russo。在他們1991年發(fā)表示伊利諾斯大學(xué)技術(shù)報(bào)告UIUCDCS91-1696上的論文“重復(fù)使用的面向目標(biāo)設(shè)計(jì)”中,他們提出以下定義“抽象類別是協(xié)同完成一組任務(wù)的一組目標(biāo)的設(shè)計(jì)。因此,結(jié)構(gòu)(framework)是協(xié)同執(zhí)行預(yù)定的一組計(jì)算任務(wù)的一組對(duì)象類別?!睆木幊痰挠^點(diǎn)來看,結(jié)構(gòu)實(shí)際上是提供了工作應(yīng)用程序的預(yù)先制造好的結(jié)構(gòu)的互連對(duì)象類別組。例如,用戶接口結(jié)構(gòu)可以提供繪圖視窗、卷動(dòng)條、選項(xiàng)屏等的支持和“缺省”行為。由于結(jié)構(gòu)基于目標(biāo)技術(shù),所以這一行為可被繼承和置換,以便允許開發(fā)人員擴(kuò)展結(jié)構(gòu)和在某一專門知識(shí)領(lǐng)域建立定制的解決辦法。由于程序員不在改變?cè)即a而是在擴(kuò)展軟件,所以這是優(yōu)于傳統(tǒng)編程的主要優(yōu)點(diǎn)。此外,因?yàn)榻Y(jié)構(gòu)提供了體系結(jié)構(gòu)指引和模型化,所以開發(fā)人員不是盲目地在代碼層上工作,而是與此同時(shí)釋放它們,以便然后提供只有問題域才有的專門操作。
從商業(yè)的觀點(diǎn)來看,結(jié)構(gòu)可被看作是在特定的知識(shí)領(lǐng)域封裝或具體化專門知識(shí)的方法。公司發(fā)展機(jī)構(gòu)即“獨(dú)立軟件銷售商(ISV)”和系統(tǒng)集成者已獲得了特定領(lǐng)域的專門知識(shí),例如制造、會(huì)計(jì)或者作為我們?cè)缦葘?shí)例中的貨幣交易。這一專門知識(shí)體現(xiàn)在它們的代碼中。結(jié)構(gòu)允許各機(jī)構(gòu)通過將該專門知識(shí)的共同特征體現(xiàn)在機(jī)構(gòu)的代碼中來對(duì)其進(jìn)行收集和包裝。首先,這允許開發(fā)人員建立或擴(kuò)展利用專門知識(shí)的應(yīng)用程序,因此問題就得到解決,并且一致性地實(shí)施和使用商業(yè)規(guī)則和設(shè)計(jì)。還有,結(jié)構(gòu)和在結(jié)構(gòu)后面的具體化的專門知識(shí)具有對(duì)于那些已在縱深市場(chǎng)中獲得了例如制造、會(huì)計(jì)這樣的專門知識(shí)的機(jī)構(gòu)的戰(zhàn)略利益蘊(yùn)涵,或者生物技術(shù)將具有包裝、再銷售和采用它們的專門知識(shí)以及使技術(shù)進(jìn)一步進(jìn)步和普及的分布機(jī)制。
根據(jù)歷史的觀點(diǎn),結(jié)構(gòu)只是最近才作為在個(gè)人計(jì)算平臺(tái)上的主流概念而出現(xiàn)的。這一轉(zhuǎn)移已由于例如C++這樣的面向目標(biāo)語言的使用而得到支持。在過去,C++主要用于U-NIX系統(tǒng)和研究工作者的工作站,而不是用于商業(yè)設(shè)置的個(gè)人計(jì)算機(jī)。正是例如C++這樣的語言和其它面向目標(biāo)語言,例如Smalltalk等使一些大學(xué)和研究機(jī)構(gòu)提出了今日商品化的結(jié)構(gòu)和類別庫(kù)的先驅(qū)物。這些先驅(qū)物的一些例子是斯坦福(Stanford)大學(xué)的InterViews、卡內(nèi)基—梅隆(Carnegie—Mellon)大學(xué)的Andrew toolkit和蘇黎世(Zurich)大學(xué)的ET++結(jié)構(gòu)。
根據(jù)你所關(guān)心的系統(tǒng)的級(jí)別和你正在試圖解決的問題的種類的不同,有許多種結(jié)構(gòu)。結(jié)構(gòu)的種類的范圍從支持開發(fā)用戶接口的應(yīng)用結(jié)構(gòu)到提供例如通信、打印、文件系統(tǒng)支持和圖形等這樣的基本系統(tǒng)軟件服務(wù)的較低級(jí)別的結(jié)構(gòu)。應(yīng)用結(jié)構(gòu)的工業(yè)例子是MacApp(Apple)、Bedrock(Symantec)、OWL(Borland)、NeXTStep App Kit(NeXT)和Smalltalk—80 MVC(ParcPlace),這里只列舉了少數(shù)例子。
利用結(jié)構(gòu)進(jìn)行編程要求熟悉其它類型系統(tǒng)的開發(fā)人員要有新的思考方式。事實(shí)上,它根本不是傳統(tǒng)意義上的“編程”。在老式的操作系統(tǒng)例如DOS或UNIX中,開發(fā)人員自己的程序提供全部結(jié)構(gòu)。操作系統(tǒng)通過系統(tǒng)調(diào)用提供服務(wù)——當(dāng)操作需要服務(wù)時(shí),開發(fā)人員的程序進(jìn)行調(diào)用,當(dāng)服務(wù)已被提供時(shí),就進(jìn)行控制返回。程序結(jié)構(gòu)是以控制流為基礎(chǔ)的,這在開發(fā)人員書寫的代碼中得到體現(xiàn)。
當(dāng)使用結(jié)構(gòu)時(shí),情況就反了過來。開發(fā)人員不再對(duì)控制流負(fù)責(zé)。開發(fā)人員必須放棄根據(jù)執(zhí)行流程理解編程任務(wù)的意向。相反地,思考必須依據(jù)目標(biāo)的責(zé)任,這就必須依賴于結(jié)構(gòu)來確定什么時(shí)候應(yīng)該執(zhí)行任務(wù)。開發(fā)人員書寫的例行程序用由不是開發(fā)人員書寫的和開發(fā)人員甚至根據(jù)看不到的代碼來啟動(dòng)??刂屏髦械倪@一觸發(fā)對(duì)于只具有過程編程經(jīng)驗(yàn)的開發(fā)人員來說可以是很大的心理障礙。但是,一旦理解了這一點(diǎn),結(jié)構(gòu)編程所需的工作量要比其它類型的編程要少得多。
按照應(yīng)用結(jié)構(gòu)為開發(fā)人員提供預(yù)制功能的相同方式,系統(tǒng)結(jié)構(gòu),例如在最佳實(shí)施例中包括的系統(tǒng)結(jié)構(gòu)通過提供系統(tǒng)級(jí)的服務(wù)來利用相同的概念,作為系統(tǒng)程序員的開發(fā)人員用有系統(tǒng)級(jí)的服務(wù)來進(jìn)行細(xì)分/置換以便產(chǎn)生定制的解決方案。例如,考慮多媒體結(jié)構(gòu),它可以提供支持新的和多樣化設(shè)備例如音頻、視頻、MIDI、動(dòng)畫等的基礎(chǔ)。需要支持新類型設(shè)備的開發(fā)人員將必須寫出設(shè)備驅(qū)動(dòng)程序。利用結(jié)構(gòu)來完成這一任務(wù),則開發(fā)人員只需要提供該新設(shè)備特有的特性和行為。
在這一情形中,開發(fā)人員提供將要被多媒體結(jié)構(gòu)調(diào)用的某一成員函數(shù)的實(shí)現(xiàn)。開發(fā)人員得到的眼前利益是多媒體結(jié)構(gòu)已經(jīng)提供了每一類設(shè)備所需的類屬代碼(generic code)。這意味著設(shè)備驅(qū)動(dòng)程序開發(fā)人員書寫、檢測(cè)和調(diào)試較少的代碼。利用系統(tǒng)結(jié)構(gòu)的另一個(gè)例子是使用于SCSI設(shè)備、NuBus卡和圖形設(shè)備有單獨(dú)I/O結(jié)構(gòu)。因?yàn)橛斜焕^承的功能,所以每一結(jié)構(gòu)提供對(duì)在其設(shè)備類型中存在的共同功能的支持。其它開發(fā)人員然后可以依賴于所有類型設(shè)備的這些一致的接口。
最佳實(shí)施例利用結(jié)構(gòu)的概念并將其貫穿整個(gè)系統(tǒng)。對(duì)于商業(yè)或協(xié)會(huì)開發(fā)者、系統(tǒng)集成者或OEM,這意味著對(duì)于例如MacApp這樣的結(jié)構(gòu)已指出的優(yōu)點(diǎn)不僅可以在諸如文本和用戶接口這樣的應(yīng)用級(jí)別上實(shí)現(xiàn),也可以在諸如圖形、多媒體、文件系統(tǒng)、I/O、測(cè)試等這樣的服務(wù)的系統(tǒng)級(jí)別上實(shí)現(xiàn)。在最佳實(shí)施例體系結(jié)構(gòu)中應(yīng)用程序的生成將基本上類似于寫遵守結(jié)構(gòu)協(xié)議的特定領(lǐng)域的謎語。這樣一來,編程的整個(gè)概念改變了,不是逐行地書寫調(diào)用多個(gè)API分層結(jié)構(gòu)的代碼,而是通過從這一環(huán)境內(nèi)已有結(jié)構(gòu)獲取類別,然后根據(jù)需要增加新的行為和/或置換繼承的行為來開發(fā)軟件。
因此,開發(fā)人員的應(yīng)用程序成為了為所有其它結(jié)構(gòu)的應(yīng)用程序而寫并被共享的代碼集合。因?yàn)殚_發(fā)人員將能夠在相互工作的基礎(chǔ)上進(jìn)行程序編寫,所以這是強(qiáng)有力的概念,這還給開發(fā)人員提供了根據(jù)需要盡可能多地或盡可能少地進(jìn)行定制的靈活性。某些結(jié)構(gòu)將原樣地被使用。在某些情形中,定制的數(shù)量是極少的,所以開發(fā)人員插入的謎語也是很少的。在其它情形中,開發(fā)人員可以進(jìn)行廣泛的修改,建立全新的事物。考慮到上述OOP的概述,彩色調(diào)色板管理在編程環(huán)境中產(chǎn)生特殊的問題。以下簡(jiǎn)要討論圖象彩色顯形(colorvisualization)的使用。一般來說,彩色空間是有助于定義彩色的標(biāo)量分量的顯形的三維表示。在監(jiān)視器上描繪色彩時(shí)使用的最普遍的色彩空間是“紅”、“綠”和“藍(lán)”(RGB)彩色空間,該色彩空間如圖3所示,是可加的色彩空間。在RGB色彩空間中,在彩色監(jiān)視器中使用的紅、綠和藍(lán)的每一“電子束槍”與立方體的坐標(biāo)軸相關(guān),即紅電子束槍與紅坐標(biāo)軸相關(guān)、綠電子束槍與綠坐標(biāo)軸相關(guān)、藍(lán)電子束槍與藍(lán)坐標(biāo)軸相關(guān)。三坐標(biāo)軸表示顯示器彩色原色的紅、綠、藍(lán)。由于標(biāo)量分量值在0和1.0之間變化,所以能夠產(chǎn)生RGB空間中包含的所有顏色。
彩色監(jiān)視器的表面上的每一象素包括紅熒光物質(zhì)、綠熒光物質(zhì)和藍(lán)熒光物質(zhì)。每種熒光物具有確定監(jiān)視器可以顯示的顏色的物理性質(zhì)。三種熒光物質(zhì)和電子束槍的的最大相等強(qiáng)度確定監(jiān)視器的彩色區(qū)域。如圖3所示,彩色區(qū)域確定監(jiān)視器能夠顯示什么樣的可視頻譜顏色。馬蹄形曲線包括全部可視顏色、在彩色區(qū)域中的全部強(qiáng)度信息之外的曲線因子和只包括色度信息。當(dāng)在色度空間中描繪彩色監(jiān)視器的區(qū)域時(shí),就產(chǎn)生圖4所示的三角形。
監(jiān)視器不能夠在圖4中所示的三角形外產(chǎn)生色彩。因此,監(jiān)視器的熒光物質(zhì)確定什么樣的可視色彩子集可以被再現(xiàn)。但是,在監(jiān)視器的三角形中,可以被組成的色彩的數(shù)量在本質(zhì)上是有限的。雖然監(jiān)視器的熒光物質(zhì)理論上確定設(shè)備實(shí)際上可以顯示哪種色彩,但每一監(jiān)視器能夠顯示的色彩數(shù)目是有實(shí)際限制的。例如,由于計(jì)算機(jī)以數(shù)字(與模擬相反)方式操作,所以在監(jiān)視器上實(shí)際能夠被產(chǎn)生的色彩數(shù)目被限制為有限個(gè)數(shù)。隨著監(jiān)視器可產(chǎn)生的色彩數(shù)目的增大,存儲(chǔ)屏幕的數(shù)字圖象的存儲(chǔ)器也增大。存儲(chǔ)屏幕的存儲(chǔ)器通常被包括在視頻卡中。
由于存儲(chǔ)器的成本,開發(fā)人員通常動(dòng)態(tài)地設(shè)定用于操作的監(jiān)視器彩色區(qū)域的所需部分。這一方案,如圖5所示,利用存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)器中或存儲(chǔ)在安裝在計(jì)算機(jī)內(nèi)的顯示適配器的存儲(chǔ)器中的色彩查尋表(CLUT)。在所示的例子中,應(yīng)用程序可以從一千六百萬種顏色中選擇256種。因此,監(jiān)視器的色彩再現(xiàn)不是受到監(jiān)視器再現(xiàn)彩色的能力的限制而是受到計(jì)算機(jī)中視頻卡局限性的限制。但是,假定有限數(shù)目的色彩可被再現(xiàn),則決定將哪種色彩設(shè)置在CLUT中就是問題(即缺乏靈活性。另一個(gè)問題是也許有若干種應(yīng)用程序共享同一CLUT。
另外,可以提供足夠多的色彩來足夠細(xì)致地覆蓋監(jiān)視器的彩色區(qū)域,使得不需要CLUT并提供了直接的或連續(xù)的色彩。人類視覺系統(tǒng)能夠區(qū)分50000不同的彩色。人類視覺系統(tǒng)的彩色靈敏度在馬蹄形曲線的范圍內(nèi)不是平坦的。對(duì)于最佳的操作系統(tǒng),當(dāng)大于每象素16比較時(shí),啟動(dòng)直接的色彩。因此,如果提供了至少16位/象素色彩,則RGB彩色空間被足夠細(xì)致地劃分,不需要CLUT。但是,以上討論的問題在8位的CLUT中存在。
例如,在一種通常的操作系統(tǒng)中,開發(fā)了一種方法來處理系統(tǒng)CLUT的共享。選擇性地使彩色調(diào)色板與應(yīng)用程序中的視窗或與應(yīng)用程序本身相關(guān)。開發(fā)了調(diào)色板管理系統(tǒng)其中,色彩可以被視,窗或被應(yīng)用程序請(qǐng)求。根據(jù)所作請(qǐng)求的種類,可以以友善或非友善的方式共享色彩。當(dāng)有效視窗或應(yīng)用程序被改變時(shí),調(diào)色板管理程序?qū)⒁员M可能使用戶視覺愉悅的方式在老的有效調(diào)色板和新的調(diào)色板之間進(jìn)行轉(zhuǎn)換。
但是,雖然在通常的操作系統(tǒng)中使CLUT與應(yīng)用程序或視窗相關(guān)是相對(duì)容易的,但最佳的操作系統(tǒng)對(duì)于這種相關(guān)存在問題。在最佳的操作系統(tǒng)中,文件結(jié)構(gòu)與通常的操作系統(tǒng)明顯不同。最佳操作系統(tǒng)包含由若干小的封裝程序(例如微型應(yīng)用程序)組成的復(fù)合文件,即這些封裝程序“粘結(jié)”成為較大的文件。如圖6所示,每一封裝程序在視圖中并且知道它需要什么樣的系統(tǒng)資源,但不知道其它封裝程序需要什么。因此,在包含由若干被集成為一個(gè)文件的小的封裝程序組成的復(fù)合文件的操作系統(tǒng)中,使CLUT與視圖相關(guān)是非常困難的。因此必須根據(jù)在通常的系統(tǒng)中使用的色彩共享方法來產(chǎn)生不同的色彩共享方法。
為了確定一個(gè)給定的彩色監(jiān)視器的合適的CLUT表目值,為圖11所示,必須執(zhí)行若干個(gè)步驟。在最佳實(shí)施例中使用彩色區(qū)域定義。對(duì)于彩色監(jiān)視器,通過利用例如分光光度計(jì)這樣的儀器進(jìn)行八次仔細(xì)控制的測(cè)量來確定該區(qū)域。在XYZ空間中進(jìn)行這些測(cè)量。該8點(diǎn)在RGB彩色監(jiān)視器上的定義是全無黑全紅全綠全藍(lán)全黃全青全深紅全白在XYZ彩色空間中,監(jiān)視器通常的彩色區(qū)域的曲線圖如圖7所示。一旦在XYZ坐標(biāo)上確定了彩色區(qū)域,就必須利用數(shù)學(xué)變換將其轉(zhuǎn)變換成為L(zhǎng)UV彩色空間。LUV彩色空間在數(shù)學(xué)上是非線性的并在彩色感覺方面接近線性。轉(zhuǎn)換成為L(zhǎng)UV彩色空間明顯地改變了在如圖3所示的RGB彩色空間中表示的彩色區(qū)域的立方性質(zhì)。將圖8與圖3比較就可看出這一點(diǎn)。在圖8中,按表示的L值在LUV彩色空間中對(duì)圖7所描繪的區(qū)域進(jìn)行分塊。
用平面張馳技術(shù)來確定在CLUT中的實(shí)際RGB色彩。在這一技術(shù)中,按照預(yù)定的L值在彩色區(qū)域中進(jìn)行分塊。與這些分塊的L軸的垂直交叉確定了其典型表示如圖8所示的平面。計(jì)算每一個(gè)這些平面的面積。求平面面積的和以便確定總面積。全部平面的總面積然后可用來計(jì)算每單位面積CLUT色彩。這是通過將該總面積除以通常為256的CLUT表目個(gè)數(shù)來實(shí)現(xiàn)的。用該值來確定每平面CLUT表目個(gè)數(shù)。L=62.5的一個(gè)例子如圖9所示,該特定平面需要52種色彩或52個(gè)CLUT表目。
用來實(shí)際確定這些值的方法是張馳技術(shù)。如圖9所示,色彩首先分布在平面周邊的正確位置和該平面中的白點(diǎn)處。平面中的白點(diǎn)是畫過的白和黑點(diǎn)的線將與該平面交叉的點(diǎn)。然后剩余的色彩隨機(jī)地分布在白點(diǎn)的附近。按照與某點(diǎn)附近各點(diǎn)的分隔成反比的距離遞增地調(diào)整每一點(diǎn)到其近鄰的點(diǎn)。對(duì)每一點(diǎn)重復(fù)這一調(diào)整,直到對(duì)全部點(diǎn)獲得可接受的誤差為止。對(duì)于L=50,張馳技術(shù)的結(jié)果如圖10所示。對(duì)每一平面重復(fù)這一過程,由此產(chǎn)生完整的CLUT表目集。這一處理詳細(xì)示于圖11。圖11是最佳實(shí)施例的流程圖。處理從功能框1100開始,在此色彩區(qū)域被測(cè)量并被轉(zhuǎn)換成為L(zhǎng)UV色彩空間。該處理相應(yīng)于圖7和圖8的說明。然后在功能框1110,確定亮度電平數(shù)目,在功能框1120確定全部亮度平面的總面積,在功能框1130將變量S初始化為每色彩查閱表表目單位面積。隨后在功能框1140通過將S劃分為每一亮度平面的面積來確定每亮度平面色彩查閱表表目的個(gè)數(shù)。接著,在功能框1150處,對(duì)于每一亮度平面,將色彩設(shè)定在平面邊界附近。色彩分布在相應(yīng)于圖9所示的每色彩查閱表表目單位面積的均方根的位置處。最后,如在功能框1160中所指出的,附加色彩隨機(jī)地設(shè)定,并且對(duì)于每一亮度平面,如在功能框1170的指出和圖11所表示的,對(duì)色彩進(jìn)行張馳以便獲得象素的相等支出。
如圖2所示,在最佳實(shí)施例中,支持若干監(jiān)視器和視頻卡結(jié)構(gòu)。最佳實(shí)施例的彩色調(diào)色板管理系統(tǒng)最好不有效支持8位以下的色彩。最好足夠細(xì)地劃分8位以上的監(jiān)視器色彩區(qū)域,以便提供直接(例如連續(xù))的色彩。如上所述,8位CLUT必須被全部視圖共享。
因此,最佳操作系統(tǒng)中的調(diào)色板管理集中在劃分一個(gè)系統(tǒng)的具有預(yù)定位數(shù)的CLUT上,使得在文件(例如復(fù)合文件)中的全部視圖能夠協(xié)調(diào)地和一致地共享彩色。根據(jù)本發(fā)明,由于灰色和彩色配置必須得到支持,所以本發(fā)明選擇預(yù)定數(shù)目的灰色,使得即使在存在彩色時(shí)在灰色之間也有平滑的過渡。此外,選擇的灰色最好是純灰。由于眼睛能夠相當(dāng)容易地檢測(cè)灰色梯度,所以灰度梯度不應(yīng)只是接近灰色。例如,最好使用的24個(gè)灰度梯度(不包括如下所述算作彩色的6個(gè)灰度梯度)。
因此,本發(fā)明最好處理232(如256-24=232)種彩色。由于(例如與在屏幕上顯示圖象的速度相關(guān)的)實(shí)際原因,應(yīng)當(dāng)均勻地劃分彩色區(qū)域。例如,如果規(guī)定6種紅色深淺度、6種綠色深淺度和6種藍(lán)色深淺度,這就導(dǎo)致6×6×6=216種不同的彩色組合。在原來256—24—216種色彩中,還剩下16種。最好這樣選擇剩下的16種彩色,使它們一致地出現(xiàn)在多個(gè)圖形設(shè)備上。此外,在編程環(huán)境中,這16種色彩最好應(yīng)是唯一的并且用命名而不是用值來表示。例如,兩種彩色最好與在Taligent商標(biāo)Teal(Panton 3125C)和Purple(2735C)中使用的色彩一致。
本發(fā)明的特點(diǎn)之一是它給予利用本發(fā)明的彩色調(diào)色板管理系統(tǒng)的開發(fā)人員一定的自由度。例如,某些開發(fā)人員也許希望改變底層的CLUT。本發(fā)明通過建立開發(fā)人員可以建立新的圖形設(shè)備和選擇他們自己的256種色彩集合的鉤符來規(guī)定了這種特征。即使在運(yùn)行最佳操作系統(tǒng)的時(shí)候這種特征也是可能的。此外,利用本發(fā)明,開發(fā)人員具有改變彩色監(jiān)視器設(shè)備上的伽馬表的能力,這種能力由本發(fā)明作為一種功能來提供。
總而言之,本發(fā)明通過選擇駐留在操作系統(tǒng)中的通用8位CLUT為彩色調(diào)色板管理提供了保證。為監(jiān)視器2位和4位彩色CLUT提供了鉤符,但鉤符不被實(shí)施。2位和4位脫屏CLUT被完全實(shí)施。8位灰色CLUT將被實(shí)施。還提供了鉤符來改變8位CLUT但鉤符將不被實(shí)施。伽馬表控制被實(shí)施并且命名彩色(例如16種)被支持。因此,本發(fā)明的彩色調(diào)色板管理系統(tǒng)可以被應(yīng)用程序開發(fā)人員定制并且被看作是位于操作系統(tǒng)內(nèi)的結(jié)構(gòu),使得開發(fā)人員能夠利用提供的鉤符改變底層的CLUT和選擇他們自己的256種彩色。
雖然已根據(jù)單個(gè)實(shí)施例描述了本發(fā)明,但本領(lǐng)域的技術(shù)人員知道可以在權(quán)利要求的精神和范圍內(nèi)實(shí)施本發(fā)明。
權(quán)利要求
1.管理在帶有顯示設(shè)備的計(jì)算機(jī)存儲(chǔ)器中的彩色調(diào)色板的方法,存儲(chǔ)器包含面向目標(biāo)的操作系統(tǒng),該方法包括以下步驟(a)為操作系統(tǒng)建立色彩查閱表(CLUT);(b)將CLUT劃分為預(yù)定數(shù)目的色彩;(c)顯示具有多個(gè)視圖的圖形信息;以及(d)在圖形信息的多個(gè)視圖之間共享CLUT中的預(yù)定數(shù)目的色彩,其中預(yù)定數(shù)目的色彩包括多種色彩,當(dāng)在多個(gè)視圖的第一和第二視圖之間被共享時(shí),每種彩色具有預(yù)定的一致性。
2.權(quán)利要求1所述的方法,包括在計(jì)算機(jī)存儲(chǔ)器中生成帶有預(yù)定數(shù)目色彩的固定深淺度CLUT的步驟。
3.權(quán)利要求1所述的方法,包括建立根據(jù)第一基準(zhǔn)CLUT建立第二CLUT的設(shè)備的步驟,第二CLUT在計(jì)算機(jī)存儲(chǔ)器中是可定制的。
4.權(quán)利要求1所述的方法,包括在計(jì)算機(jī)存儲(chǔ)器的CLUT中確定多種彩色的預(yù)定數(shù)目的深淺度的步驟。
5.權(quán)利要求1所述的方法,其中色彩包括在計(jì)算機(jī)存儲(chǔ)器中的紅、綠、藍(lán)和灰。
6.權(quán)利要求1所述的方法,包括在計(jì)算機(jī)存儲(chǔ)器中給CLUT提供8位分辨率的步驟。
7.權(quán)利要求1所述的方法,包括在計(jì)算機(jī)存儲(chǔ)器中給CLUT提供16位分辨率的步驟。
8.權(quán)利要求1所述的方法,包括在計(jì)算機(jī)存儲(chǔ)器中給CLUT提供64位分辨率的步驟。
9.權(quán)利要求1所述的方法,包括在計(jì)算機(jī)存儲(chǔ)器中給CLUT提供128位分辨率的步驟。
10.權(quán)利要求1所述的方法,包括在復(fù)合文件中提供多個(gè)視圖的步驟,復(fù)合文件包括帶有裝配在復(fù)合文件中的多個(gè)應(yīng)用程序的封裝程序,每一個(gè)封裝程序位于計(jì)算機(jī)存儲(chǔ)器的相應(yīng)視圖中。
11.權(quán)利要求1所述的方法,包括在顯示設(shè)備上顯示與伽馬表相關(guān)的圖形信息的步驟。
12.權(quán)利要求11所述的方法,包括修改計(jì)算機(jī)存儲(chǔ)器中的伽馬表以便隨后在顯示設(shè)備上進(jìn)行顯示的步驟。
13.權(quán)利要求12所述的方法,包括將伽馬表存儲(chǔ)在顯示設(shè)備的存儲(chǔ)器中的步驟。
14.管理在帶有顯示設(shè)備的計(jì)算機(jī)存儲(chǔ)器中的彩色調(diào)色板的設(shè)備,存儲(chǔ)器包含面向目標(biāo)的操作系統(tǒng),該設(shè)備包括(a)為操作系統(tǒng)建立色彩查閱表(CLUT)的裝置;(b)將CLUT劃分為預(yù)定數(shù)目的色彩的裝置;(c)顯示具有多個(gè)視圖的圖形信息的裝置;以及(d)在圖形信息的多個(gè)視圖之間共享CLUT中的預(yù)定數(shù)目的色彩的裝置,其中預(yù)定數(shù)目的色彩包括多種色彩,當(dāng)在多個(gè)視圖的第一和第二視圖之間被共享時(shí),每種色彩具有預(yù)定的一致性。
15.權(quán)利要求14所述的,包括在計(jì)算機(jī)存儲(chǔ)器中生成預(yù)定數(shù)目色彩的固定深淺度CLUT的裝置。
16.權(quán)利要求14所述的設(shè)備,包括建立根據(jù)第一基準(zhǔn)CLUT建立第二CLUT的設(shè)備的裝置,第二CLUT在計(jì)算機(jī)存儲(chǔ)器中是可定制的。
17.權(quán)利要求14所述的設(shè)備,包括在計(jì)算機(jī)存儲(chǔ)器的CLUT中確定多種色彩的預(yù)定數(shù)目的深淺度的步驟。
18.權(quán)利要求14所述的設(shè)備,其中色彩包括在計(jì)算機(jī)存儲(chǔ)器中的紅、綠、藍(lán)和灰。
19.權(quán)利要求14所述的設(shè)備,包括在計(jì)算機(jī)存儲(chǔ)器中給CLUT提供8位分辨率的裝置。
20.權(quán)利要求14所述的設(shè)備,包括在計(jì)算機(jī)存儲(chǔ)器中給CLUT提供16位分辨率的裝置。
21.權(quán)利要求14所述的設(shè)備,包括在計(jì)算機(jī)存儲(chǔ)器中給CLUT提供64位分辨率的裝置。
22.權(quán)利要求14所述的設(shè)備,包括在計(jì)算機(jī)存儲(chǔ)器中給CLUT提供128位分辨率的裝置。
23.權(quán)利要求14所述的設(shè)備,包括在復(fù)合文件中提供多個(gè)視圖的裝置,復(fù)合文件包括帶有裝配在復(fù)合元件中的多個(gè)應(yīng)用程序的封裝程序,每一個(gè)封裝程序位于計(jì)算機(jī)存儲(chǔ)器的相應(yīng)視圖中。
24.權(quán)利要求14所述的設(shè)備,包括在顯示設(shè)備上顯示與伽馬表相關(guān)的圖形信息的裝置。
25.權(quán)利要求24所述的設(shè)備,包括修改計(jì)算機(jī)存儲(chǔ)器中的伽馬表以便隨后在顯示設(shè)備上進(jìn)行顯示的裝置。
26.權(quán)利要求25所述的設(shè)備,包括將伽馬表存儲(chǔ)在顯示設(shè)備的存儲(chǔ)器中的步驟。
27.管理在供面向目標(biāo)的操作系統(tǒng)使用的帶有顯示設(shè)備的計(jì)算機(jī)存儲(chǔ)器中的彩色調(diào)整板的結(jié)構(gòu),該結(jié)構(gòu)包括(a)在顯示設(shè)備上顯示圖形信息的裝置,圖形信息包括多個(gè)視圖;(b)為在計(jì)算機(jī)存儲(chǔ)器中的操作系統(tǒng)建立色彩查閱表(CLUT)的裝置;(c)在計(jì)算機(jī)存儲(chǔ)器中均勻地將CLUT劃分為預(yù)定數(shù)目的色彩的裝置;以及(d)在圖形信息的多個(gè)視圖之間共享CLUT中的預(yù)定數(shù)目的彩色的裝置,其中預(yù)定數(shù)目的色彩包括多種色彩,當(dāng)在多個(gè)視圖的第一和第二視圖之間被共享時(shí),每種彩色具有預(yù)定的一致性,其中建立CLUT的裝置包括規(guī)定多個(gè)程序員定義的部件的裝置,每一程序員定義的部件可被存取,以便修改表示正在顯示的圖形信息的數(shù)據(jù),根據(jù)程序員的需要,用戶定義的部件是在面向目標(biāo)的結(jié)構(gòu)內(nèi)選擇性地可交換的。
全文摘要
管理面向目標(biāo)的操作系統(tǒng)的彩色調(diào)色板的系統(tǒng)和方法為被外部設(shè)備顯示的多種(例如256)彩色的共享提供了保證。在第一個(gè)方面中,8位色彩查閱表(CLUT)被正在外部設(shè)備上被顯示的文件中的多個(gè)視圖所共享,使得在多個(gè)圖形設(shè)備之間提供一致的觀看彩色。發(fā)明的方法包括為操作系統(tǒng)建立色彩查閱表(CLUT)、均勻地將其分為預(yù)定數(shù)目的彩色、顯示具有多個(gè)視圖的圖形信息以及在圖形信息的多個(gè)視圖之間共享CLUT中的預(yù)定數(shù)目的彩色的步驟。預(yù)定數(shù)目的彩色包括多種彩色,當(dāng)在不同的彩色顯示設(shè)備上被顯示時(shí),每種彩色是一致的。
文檔編號(hào)G09G5/06GK1116456SQ94190879
公開日1996年2月7日 申請(qǐng)日期1994年1月3日 優(yōu)先權(quán)日1993年8月11日
發(fā)明者詹姆斯·安東尼·夸拉托 申請(qǐng)人:塔里根特公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1