超輕量瀏覽器的製作方法
2023-04-29 20:24:51 2
專利名稱:超輕量瀏覽器的製作方法
技術領域:
本發明涉及計算機技術領域,確切地說,涉及一種方法和系統,對行列結構的多色位像表示進行數字數據壓縮,以利於其低帶寬數據通信。
背景技術:
現有技術的說明和缺點1988年SHENON INDUSTRIES出版的CHINONINDUSTRIES,INC.的掃描儀手冊「IMAGE SCANNER」,TECHNICAL REFERENCE MANUAL,N-207,DS-3000中公開了一種現有技術壓縮方案,而且可以從SHENON AMERICA,INC.INFORMATION EQUIPMENT DIFF.,660MAPLE AVENUE,TORRANCE,CA 90503 U.S.A獲得。
為了提供有效的二維數據壓縮方案,該現有技術方法中提出,通過以下的基本壓縮方案,普遍地減少所述數據量以及各自的傳輸時間將一條線中的數據分成若干個8位。當8位全是「0」時,將跳過它們。反之,這8位將以壓縮編碼「1」傳輸。如果對一條線中的數據最多為例如316位元組,進行編碼後所述數據由40位元組的壓縮編碼表達,其中最後字節的低4位沒有意義。如果40位元組的壓縮編碼再壓縮兩次,所述編碼就被壓縮至1位元組。換句話說,具有一位或多位「1」的字節被映射到位值「1」,而且所述字節以可檢索的方式存儲,最好直接位於所述壓縮串之後,只有由「0」位組成的字節被映射至位值「0」。為了使這種基本壓縮方法適合上述二維圖像表示,這種現有技術文獻提議在行列結構的位圖表達中連續若干行的各位即各像素之間,進行按位異或(X-OR)運算。這意味著當在同一列位置上的若干前行位即像素相同時,那麼所述X-OR的結果就是「0」,而如果所述二位不同,那麼所述X-OR運算的結果就是「1」。先按線(按行)進行所述X-OR運算,再執行前述的一維數據壓縮。
這種現有技術壓縮方法的缺點是壓縮圖像表示的效率不夠高,所以典型情況下它出現在面向GUI程序應用中,以及僅僅處理黑白圖片時。
根據本發明的第二個方面,此類壓縮的數據經常通過網絡傳遞,帶寬或小或大。例如,當使用內聯網瀏覽某個主頁時,大量的傳輸時間花費在傳輸所需的大量數據,以使得終端用戶在其終端設備上看到多色、高解析度的圖形。尤其是所述設備通過低帶寬線路連接時,這就要花費無法容忍的時間,用戶才能在其終端上看到GUI結構的屏幕。在例如每秒9.6k位的傳輸率時,主頁屏幕的傳輸時間可能約為六分鐘。
對於此類低帶寬連接的、可能是手持的終端設備與後端應用伺服器之間的遠程應用控制,也存在著同樣的問題。
本發明的目的因此,本發明的目的是為聯網應用提供一種改進的壓縮方法及其有利用途。
發明內容
本發明的目的由附帶的獨立權利要求書中陳述的特徵實現。在各自的子權利要求中闡明了本發明進一步的有益方式和實施例。現在應當參考附帶的權利要求書。
根據本發明的第一個主要方面,它公開了為了量化所述圖像表示,僅僅包含縮減數目的顏色,優選情況下小數目的顏色是比如2、4、8、16...256種,從而與一種單色相關聯的位圖位定義了位圖位各自的子集。每個所述子集然後受到上述基於X-OR的壓縮,或進一步的壓縮步驟,以及隨後的位串編碼步驟。其後的思路在於,尤其是當考慮基於網絡的應用時,或者對於一般的聯網應用,沒有必要最初就看到所述屏幕的所有細節及其多色真實字體的外觀,尤其是當所述實際傳輸的屏幕僅僅用於某些屏幕之間的導航時,由於在簡單的導航期間,在大多數情況下並非真正需要所傳送的屏幕或網頁為高解析度和真實字體的外觀。因此建議在第一步驟中把所述圖像表示減少至小數目的顏色,例如2或4種灰色的灰度級,例如白色、淺灰色、深灰色和黑色,總共是4種顏色的灰度級。
當進一步在垂直於所述第一X-OR運算方向的第二方向上應用第二X-OR運算時,在壓縮典型的GUI式屏幕快照時,就會實現獨特的優勢。這是由於以下事實,在每個人都從其臺式機知曉的此類屏幕中,基本的圖形結構是若干窗口,它們最常見的是正交單色區域,由文本信息所貫穿或覆蓋。對於這種特定的類型形狀,在前述第一X-OR運算之後,進行所述第二X-OR運算。在典型的基於GUI屏幕中,其結果是10%量級的進一步壓縮。
在進一步優選情況下,由上述措施得到的所述壓縮結果最好是接著進行根據本發明的進一步壓縮步驟。所述進一步壓縮例如可以是霍夫曼壓縮或本文稱為「LZ77」壓縮的進一步壓縮,可以公開取自URLwww.qzip.org/zlib/,進一步詳細的說明在URLwww.qzip.org/zlib/feldspar.html。此外,霍夫曼編碼和LZ77編碼都可以優選地組合,在該組合中次序無關緊要。
根據本發明的第二個主要方面,公開了在伺服器-客戶通信過程中,進行圖形用戶界面(GUI)數據多色位像表示的低帶寬傳輸所用的方法,既包括所述伺服器方,也包括所述客戶方,其中所述伺服器方的方法特徵在於以下步驟a)從上述壓縮產生的若干子集中至少判定主子集和次子集,b)在第一傳輸過程中,傳送所述位像表示之縮減顏色像素的主子集對應的若干位,c)在跟隨所述第一傳輸過程的第二傳輸過程中,傳送所述像素位像表示之所述像素的次子集對應的若干位。當然,在大多數情況下上述步驟a)將意味著將最重要信息即對所述用戶關係最大的信息關聯到所述主子集,以便使其在所述客戶設備上首先出現。在大多數情況下是文本信息。但是,由於實際具體應用不同,如果圖形信息格外需要,例如在傳遞了某些過濾標準,如「僅選擇預定尺寸範圍和顏色的圓圈」之後,也可以首先傳送圖形信息。應該理解,本發明的範圍將覆蓋所有這些應用方面。
本發明公開了在伺服器-客戶通信過程中,在所述客戶方參與圖形用戶界面(GUI)數據之多色位像表示的低帶寬傳輸所用的方法,它在上述方法中起到相應客戶方的作用,其特徵在於以下步驟a)從第一傳輸過程接收(340)所述位像表示(40)之所述縮減顏色像素的主子集對應的若干位,b)對所述收到的若干位執行解壓縮步驟,執行上述對應壓縮的逆過程,c)顯示與所述第一主子集對應的位像表示,d)隨後,從跟隨所述第一傳輸過程的第二傳輸過程接收(355)與所述位像表示(40)像素的次子集對應的若干位,e)對所述隨後收到的若干位執行解壓縮步驟,執行上述對應壓縮的逆過程,f)與從所述第一傳輸過程顯示的所述位像表示一起,顯示與所述次子集對應的位像表示。因此,可以首先傳送所述位像表示的最重要信息,這對傳輸時間提供了顯著的節省。
此外,在所述客戶端最好可以執行以下步驟在所述傳輸位像表示的各自位置上,填充灰度級差異位對應的插值後灰度級的灰度級像素。這樣就減弱了強烈的灰度級反差。
另外,本發明的方法還可以優選地應用在代理伺服器和終端用戶相關聯設備之間的基於網絡的應用中,所述設備配置為接收所傳送的所述位像表示的縮減顏色像素,並且只有不多的計算和/或顯示資源。
在這方面,進一步的性能增強公開如下在所述客戶端,當接收到所傳送的所述位像表示(40)的縮減顏色的像素時,為處理用戶控制響應提供了各自的控制程序裝置,用於以用戶啟動的控制響應的方式響應所顯示的位像表示,比如在某個X-Y-屏幕位置點擊滑鼠或任何等效的動作,或者按下任何專門預定的按鍵,並且把所述用戶控制響應轉發至所述代理伺服器,例如以包括X、Y坐標和對所述控制的性質、滑鼠左右鍵、雙擊等編碼位的短控制消息形式。
在這方面,在通常實施網絡瀏覽器的所述代理伺服器執行的步驟如下a)使用控制程序裝置,將從所述客戶設備轉發的所述用戶控制響應轉換為瀏覽器專用的用戶控制命令,b)評估所述命令,所述命令表示網絡請求,它在執行後包括不同於在所述第一傳輸過程中傳送並且將由所述第二傳輸過程細化的位像表示的顯示,c)只要尚未完成,就中斷所述當前第一和/或第二傳輸過程,d)根據所述瀏覽器專用的用戶控制命令開始新的傳輸過程。
優選情況下,如果所述評估步驟b)的結果包括執行超連結,即所存取網頁內部的連結,在所述代理伺服器的所述瀏覽器中涉及基本的不同屏幕的顯示,就對新屏幕進行壓縮並且傳送給所述用戶,而不是繼續完成對其中啟動了所述連結之前一屏幕的顯示。因此,所述優點使得所述接收用戶在所述網頁的其餘部分傳送給他之前,可以立刻做些事情,例如繼續導航,即使在所述第二甚至所述第一傳輸過程的一部分已經完成,各自的位圖信息已經顯示給所述用戶時也不例外。由於它節省了大量時間,這的確有益於網頁之間的導航或應用的遠程菜單控制。
更加有利的是,所述顏色子集是雙色子集,優選情況下是黑/白子集,因而黑色像素與所述主子集相關聯,而且在所述第一傳輸過程之內傳送。
此外,在所述第二傳輸過程之後,可以給所述用戶請求更多圖像細節的選項,例如真實字體風格或者任何中間的解析度或色標,如1024色,或4096色等。
如果上述顏色子集是雙色子集,如黑/白子集,並且如果特定的信息類型關聯到黑色,所述圖像的其餘部分關聯到白色,那麼就能夠顯著地節省傳輸時間。當例如所述選定的信息類型比所述圖像中包含的其餘信息更重要時,那麼基本上要應用過濾標準,優選情況下它使得在所述的第一傳輸過程中,僅僅傳送所述圖像的所述重要內容。一種良好的選擇是將文本信息關聯到所述選擇的特定信息類型,因為在許多情況下文本覆蓋了某些圖形環境,例如在GUI窗口中即是如此。
此外,優選情況下所述黑色關聯到所述文本信息,並且在任何網站中通常以藍色表示的URL特定文本也可以轉換為黑色。因此,將GUI類數據的改進壓縮與文本信息優先於圖形信息傳輸相結合,對於在所述用戶希望的任何應用目的中節省帶寬提供了顯著的技術進步。
另外,廣泛的應用領域都可以從本發明中受益,如果所述客戶與之通信的商務應用伺服器僅僅運行任何商務應用,比如電子表格應用、字處理器、資料庫應用或任何其他的非標準商務應用,因而與網際網路不發生相互作用,即
圖1的情形,其中圖1的右面部分,即所述網絡伺服器不起作用。因此,本發明可以用於任何情況,其中要將GUI數據在信道中傳送給用戶,它的容量不大或者數據傳輸相對昂貴,因此這裡公開的所述壓縮和發明的客戶/伺服器對話值得做。如果在所述應用伺服器中解釋並執行所述用戶控制響應,而且導致大量的不同位圖表達,那麼也會中斷當前活化的至所述用戶的傳輸過程,並且開始新的傳輸過程,使得在所述客戶端處所述終端用戶新請求的應用屏幕得以顯示。評判是否有「大量」差異的標準在優選情況下可以是屏幕上最頂部和最左面的區域。因為經驗已經表明在大多數程序應用中,這些就是為所述用戶顯示最重要信息的屏幕區域。另外,通過計算可以判斷,最好是通過傳送已顯示屏幕和新屏幕之間的差異信息,以刷新在客戶端已經顯示的屏幕,還是完全從零做起重新啟動和傳送所述新的屏幕。
因此,從今天的用戶觀點考慮,本方法能夠通過低帶寬連接,如作為低帶寬傳輸的主要實例的GSM連接,對所述GUI類型的程序應用實現遠程控制。同時,分別對於移動客戶和與所述移動客戶相關聯之各自代理伺服器之間的所述低帶寬情況,以及高帶寬連結的網絡伺服器,專門改進了網際網路和內聯網的使用作為其特定情況。此外,所述優點也能夠用於高帶寬連結,如未來的UMTS連接,這時所述用戶必須為所傳送的數據量支付費用。
在以下優選實施例的說明中將給出進一步的細節。
附圖簡要說明本發明通過實例的方式展示,並且不限於附圖描繪的外形,其中圖1是一幅示意圖,表示了客戶設備通過低帶寬連接訪問網際網路或後端應用伺服器時,使用本發明基本原理的系統中的基本部件;圖2是一幅示意框圖表達,展示了根據本發明的所述壓縮過程中的控制流;圖3是一幅示意框圖表達,顯示了傳輸過程的發明實施例中的控制流,由本發明的兩個前述主要方面強化;圖4是網頁的四色灰度級屏幕快照實例;圖5是應用所述按行X-OR運算之後的同一網頁;圖6展示了對圖5中的圖片應用了所述按列X-OR運算;圖7是一張表,展示了對給定類型的小數目顏色的.gif格式圖片,與使用最好的現有技術壓縮形式對比,所提議之壓縮技術的明確效果。所述比較是在客戶主頁的7張代表性的主頁頁面上進行的。
具體實施例方式
一般地參考所述圖件,現在尤其是參考圖1,更加詳細地介紹一種應用情形,其中展示了移動計算機設備及其用戶如何可以分別從本發明的若干基本特徵受益。
假定移動計算機設備,如具有引用號10的筆記本電腦或個人數字助理(PDA),需要訪問內聯網/網際網路。在替代的應用情況下,可以假定需要遠程控制後端應用。這兩種應用都受限於設備10和關聯到設備10的代理伺服器20之間的低帶寬網絡連接。所述低帶寬可以是具有9.6kbps帶寬的標準GSM連接。
在行動裝置訪問內聯網的情況下,假定所述用戶需要例如對其企業進行主頁訪問。為此目的,所述代理伺服器20通過高帶寬連接由網絡伺服器30連接,它可以位於所述企業方本身,如通過高帶寬本地網絡。在所述網絡伺服器處於所述企業之外的情況下,可以假定是對網際網路的訪問,對於本發明的目的也可以假定代理伺服器20和網絡伺服器30之間的高帶寬。
根據圖1和圖4以及本發明的優選實施例——應用於所述代理伺服器裝置20和所述終端用戶相關聯的設備10如移動客戶端之間,所述設備10用於以減少顏色像素的格式接收位像表示40,見圖4。
根據具體的有益方面,實現以下特徵a)在所述終端用戶設備10處使用控制程序裝置15,以便向所述代理伺服器裝置轉發終端用戶的響應,以響應所述傳送的位像表示40,以及b)在所述代理伺服器處配備控制程序裝置25,以便接收所述轉發的用戶響應並將其轉換為瀏覽器專用的用戶控制命令。
所述部件15負責在設備10上檢測所有的用戶輸入(鍵盤按鍵/滑鼠點擊、觸摸板敲擊等),以及向放置和處理這些互動的所述代理伺服器20傳送即轉發這種信息,如同這些互動在該代理伺服器上本地發生,轉發時如以僅僅包括少量控制位之控制消息的形式,其中對各次點擊的X-Y位置和用戶動作的類型進行了編碼,如上所述。
這種特徵能夠有利地用於中斷所述當前傳輸,即第一和第二傳輸過程或進一步的過程,如上所述,並且開始由所述「滑鼠點擊」及所述代理伺服器對其「翻譯」控制的新傳輸。因此在這種情況下,如果顯示給所述客戶端終端用戶之位圖的X-Y位置對應所述代理伺服器處所述各自位圖中的連結或超連結,那麼所述代理伺服器的控制程序就執行這個連結,並且中斷前者的傳輸,因為正如所述終端用戶對所述連結執行的「點擊」所確定,它們現在已經過時。由此,在這種位圖表達對應的所述各個網站內部的用戶導航顯著加速,因為在所述代理伺服器收到了新請求網站對應的新位圖表達後,根本不傳送多餘的信息,而是向所述終端用戶傳送看來對他更感興趣的新信息。在應用伺服器如資料庫伺服器取代所述代理伺服器的情況下,則在這種應用中的導航顯著增強。
根據本發明另外的有益特徵,在所述伺服器端實施了也具有引用號25的差異檢測機制,在所述代理伺服器20上定期記錄位像表示40,如屏幕快照,以檢測任何變化,比如在訪問所述網絡伺服器30的代理伺服器20上運行的瀏覽器應用中的變化。這些變化將由本發明的方法傳送到所述客戶端的所述接收程序組件15中,它將所述傳送的信息解壓縮,然後將其顯示在設備10上。優選情況下,僅僅傳送屏幕之間的差異信息,其本身從現有技術已知。
現在再參考圖2,首先介紹根據本發明的優選實施例應用其壓縮方法時的進一步細節。在第一個步驟即預先步驟210中,對代理伺服器20處可見的屏幕快照進行量化,如將顏色縮減至四種灰色。優選情況下,所述算法可以把這種顏色縮減控制到根據各個背後的應用,以經驗發現的規律。例如,為了在基於網絡的應用中收集所有包含的文本信息,建議除了最主要的黑色文本之外,還要把通常用於表示URL所用的典型的藍色收集到所述黑色中。
此外,已知特別經常用於文本表示的其它顏色也應當映射至所述黑色。作為替代,為了增強所述方法區分文本和圖像信息的能力,可以通過分開提供的文本識別器濾掉組成屏幕快照的所有文本元素,而將其設定為預定的不常用的顏色。可以通過普通的置標符輔助完成。由於這種額外的特徵,本發明的方法可以區分在所述屏幕快照中位於不同位置的黑色區域和文本信息。考慮到224色顏色範圍的巨大深度,可以容忍在選定的顏色代碼與不屬於所述文本信息的單圖像像素之間的偶然巧合。
在已經識別了所述文本信息之後,將從該圖像幀中提取它,並且準備在第一傳輸過程中傳送。在所述屏幕快照中造成的間隙優選情況下使用所述幀鄰近區域中具有相同顏色編碼的像素填充,如果所述幀鄰近區域中的顏色不同,優選情況下用插值後的像素填充所述間隙。因此,在間隙的一側是紅色,其相鄰的另一側是黃色,所述間隙將由橙色像素填充。這樣做主要是為了允許其餘的屏幕幀可以具有高效的進一步壓縮性,因為當整個圖像幀被縮減至小數目級的灰度級時,後面的壓縮方法像JPEG將不會識別出邊緣。
對於各個顏色對應的、位圖位的每個子集中執行以下描述的其次步驟215至265,優選情況下開始於最重要的顏色,往往為黑色。
因此在步驟215中,在按行方向執行X-OR運算。這具體意味著本發明的方法開始按位對比第一行和第二行。由於所述幀已經被減至四種不同的灰色,所以每個像素用2位編碼,例如,位「00」為黑色編碼,「01」為深灰色編碼,「10」為淺灰色編碼以及「11」為白色編碼。僅對相同列位置的位相互比較。第一行和第二行之間的所述X-OR運算的結果取代第一行。第二行和第三行之間的所述X-OR的結果取代所述第二行,依此類推,直至達到所述屏幕幀的底線。其結果是只有在相同列位置中一行的像素代碼不同於另一行的這種位置,才分配給「1」位。在上述現有技術參考文獻中更加詳細地介紹了這個過程。因此,步驟215的結果是壓縮的位串集,它可以再次解壓縮以傳遞以前的原始位串而不損失信息。
此外在優選情況下,以類似的方式在步驟220中按列執行了類似的X-OR運算,例如從最左邊的列開始,對比相同行位置的位。這是本發明的特徵,優選情況下能夠應用於具有大量矩形圖形元素的位圖,而且尤其是如果這種矩形元素是單色的。
在下一個步驟230中,把從步驟215和220得出的壓縮結果——本文稱為「中間結果」——編碼成位串,優選情況下通過重複地執行以下步驟——將具有一個或多個「1」位的字節映射至位值「1」,並且以可檢索的方式存儲所述字節,最好把所述含「1」字節存儲在所述壓縮的位串值之後。
——將只包含「0」位的字節映射至「0」。
在圖2中由引用號240、245和250幫助,展示了這個過程。在以上現有技術的參考文獻中給出了這個具體過程更詳細的說明。
所述結果可以在步驟260中由所謂的LZ77的壓縮進一步編碼,並且在步驟265中由上述霍夫曼壓縮進一步編碼。這種壓縮方法有些令人驚奇,因為它在步驟250中已經壓縮的輸出上進行。步驟250的壓縮輸出,至少對有小量不同顏色的屏幕快照,具有低熵的特徵,使得所述壓縮步驟260和265值得應用。應當指出,其他壓縮圖像格式,像GIF、JPEG...具有大約8(每個字節的位數)的熵,因此不允許進行另外的壓縮。
然後對位圖位的剩餘子集重複以上步驟。
現在再參考圖3,更詳細地介紹本發明的第二方面,其中低帶寬傳輸的圖形用戶界面(GUI數據)的這種多色屏幕快照——它們通常出現在網頁或任何臺式機應用的屏幕快照中——已經由以上介紹的壓縮方法進行了預壓縮,然後通過低帶寬連接傳送至遠程客戶10。所述客戶10基本上通過專用瀏覽器代理20通信,它處理由所述客戶10請求的網絡內容,並且將它們傳送給所述客戶10。這種情況上面參考圖1進行了介紹。對每個子集分別進行壓縮位的傳輸,從最重要的子集開始。細節如下在第一個步驟300中所述客戶向其代理伺服器20發出請求。在所述客戶應用從零開始,以及可以假定為內聯網會話的情況下,所述客戶端設備10有一種「超輕量」瀏覽器工具,用於向所述代理伺服器發出請求。在下一個步驟305中——見圖3中右側列的若干活動,它們都關聯到所述代理伺服器20——所述代理伺服器20接收所述請求。現在可以假定這個請求包括URL,指明在客戶端設備10的用戶希望瀏覽的網站。在下一個步驟310中,代理伺服器20通過高帶寬連接向對應的網絡伺服器轉發所述請求。這也許是內聯網,也許是連接著世界上任何兩點之間的網際網路連接。在下一個步驟315中所述代理伺服器從所述網絡伺服器接收所述響應。
本文稱為代理控制邏輯(PCL)25的特別配備的邏輯,在步驟320中從提供給所述用戶的屏幕中提取位圖。
然後,為了壓縮所述屏幕快照,執行了上面參考圖2介紹的步驟,其結果是所述壓縮的位圖信息在步驟335中作為「屏幕」向所述客戶轉發。
然後,在步驟340中所述客戶10接收所述屏幕。
再返回參考圖1,所述客戶控制邏輯(CCL)15在需要處對所述壓縮的數據進行解壓縮,見圖3中的步驟345,並且準備接收用戶輸入,以便所述用戶希望執行任何典型的用戶動作,如請求另外的URL、點擊所述屏幕快照包含的某個對象,它可以是例如超連結等。還給所述用戶另外的選項,從當前顯示的屏幕快照請求更多的圖像信息。這可能有實質意義,例如在所述用戶停止導航,希望詳細地觀看(更多的灰度級)某個具體網頁時。因此,把控制反饋至步驟300,以便使得所述客戶端用戶10能夠向其代理伺服器20發出任何進一步的請求。只要客戶端10的用戶需要,這種方式就可以重複地執行以上介紹和由圖3展示的過程。
如圖3底部所描述,通過在兩個不同過程中採取上述的傳輸,優選情況下可以進一步增強本發明的傳輸方法優選情況下,所述第一傳輸過程335傳送屏幕快照這些像素的主子集對應的所述若干位,它們被視為對所述用戶重要(因為它們可能包含控制信息或文本信息),接著是第二傳輸過程350,傳送所述屏幕快照中所述像素的次子集對應的若干位。這個第二傳輸傳送了表示重要性次之的若干像素的像素信息,例如黑色即表示文本之像素以外的信息。在步驟355中接收這種次子集,在步驟360中在客戶10的所述顯示表達中填充,它已經包含了信息的所述最重要子集。優選情況下,在一次傳輸中可以傳送單個或多個非主要子集,即第二、第三、第四子集第,只要它看來最適合相應的應用。
在一個具體實例中,所述第一傳輸傳送黑色和文本信息,而所述第二傳輸包括三種其它灰色,表示信息的剩餘部分。在這個具體的情況下,可以獲益於特殊的優點,它「隱藏」在某個數學關係背後編碼a)+編碼b)的求和結果<編碼c),詳細表述如下a)1位黑/白圖像的編碼;b)包括3種「灰色」深灰、淺灰和白色的2位灰度級圖像的編碼;小於c)2位、4種「灰色」組成圖像的編碼,包括黑色、深灰、淺灰和白色。
應當指出,對於情況a)的所述映射規則特別適於在所述壓縮代碼中黑色用於所述原始圖像中發現黑色之處,白色用於其他位置。
情況b)深灰色用於所述原始圖像中深灰色之處,淺灰色用於所述原始圖像中淺灰色之處,白色用於所述原始圖像中白色之處,此外「XX」色用於原始圖像是黑色之處。優選情況下,「XX」色是可以自由使用的任選色,因此也可以由所述壓縮算法定義,取決於正在使用的當前應用情況的實際需要。
現在再參考圖4-6,圖4描述了四種灰度級的屏幕快照40。應用了所述按行X-OR運算之後,給出了圖5中的結果。圖6顯示了按列X-OR運算的應用結果(圖片的右部)。
參考圖6,在其左部另外展示了執行所述壓縮步驟260和265之前,對每條線實際0/1編碼。Y軸表示相應屏幕圖像的行,X軸表示存儲需要。描繪的一條平衡線分開了本發明的壓縮有利的區域(紅色背景)和不宜應用的區域(黑色背景)。這有助於為熟悉本技術的人員提供逼真感受,當應用本發明原理時,如何可以形成屏幕,何時可以期待明顯的優勢。確切地說,白色峰值和黑色背景之間的邊界是所述壓縮起作用的平衡點,換言之,可見的白色越多,所述壓縮的作用越好。
圖7以表格表達表示了真實的樣本,展示了根據本發明達到的極好的壓縮結果。顯示了與使用對於給定類型的小數目顏色圖片的已知最佳壓縮格式——所述.gif文件格式相比,所提議壓縮技術的明確效果。在自由選擇之客戶主頁的7個代表性主頁上進行所述對比。
本發明能夠由硬體、軟體或硬體和軟體的組合實現。根據本發明的工具能夠在一個計算機系統中以集中的方式實現,也能夠以分布的方式實現,不同的部件分散在幾個互連的計算機系統中。適於進行本文所介紹之方法的任何種類的計算機系統或其他裝置都適用。硬體和軟體的典型組合可以是通用計算機系統,當其帶有的電腦程式加載和執行時,控制所述計算機系統,以使其執行本文介紹的方法。
本發明也能夠嵌入在電腦程式產品中,它包括使本文所介紹的方法得以實施的全部所述特徵,並且當加載在計算機系統中時,能夠執行這些方法。
本發明上下文中的電腦程式裝置即電腦程式意味著以任何語言、代碼或符號寫成的一組指令的任何表達式,它們試圖使具有信息處理能力的執行特定功能,或者直接執行或者是在執行以下的一個或兩個過程之後a)轉換成另外一種語言、代碼或符號;b)以不同的材料形式再現。
權利要求
1.一種對行列結構的多色位像表示(40)的數字數據進行壓縮的方法,包括以下步驟a)縮減(210)所述圖像表示至縮減數目的顏色,每種顏色對應於位圖位的相應子集,b)對於所述子集至少其中之一執行以下步驟b1)在所述位圖的一個方向上執行(215)按位基於XOR的壓縮,產生第一中間結果,b2)通過重複地執行以下步驟,把所述第一中間結果編碼(230)為位串,產生壓縮結果b3)將具有一個或多個「1」位的字節映射(245)至位值「1」,並且以可檢索的方式存儲所述字節,b4)將只包含「0」位的字節映射(240)至「0」。
2.根據權利要求1的方法,進一步包括在第二個方向上執行(220)XOR的步驟。
3.根據權利要求1或權利要求2的方法,在另外的壓縮步驟中進一步壓縮所述壓縮結果。
4.根據以上權利要求的方法,其中所述進一步壓縮是霍夫曼壓縮。
5.根據以上權利要求的方法,其中所述進一步壓縮是LZ77壓縮(266)。
6.根據權利要求3的方法,其中所述進一步壓縮是霍夫曼和LZ77的組合(260)。
7.根據權利要求1的方法,其中所述顏色子集包括256、16或4灰度級,而且對於兩個或更多的灰度級執行權利要求1的步驟b1)至b4)。
8.根據權利要求1的方法,其中所述圖像表示源自與電腦程式應用相關聯的屏幕快照(40)。
9.一種在伺服器-客戶通信過程中進行圖形用戶界面(GUI)數據的多色位像表示(40)的低帶寬傳輸的方法,其特徵在於包括以下步驟a)從根據權利要求1至8中任何一條壓縮的所述子集至少判定主子集和次子集,b)在第一傳輸過程中傳送(335)所述位像表示(40)的縮減顏色像素的所述主子集對應的若干位,c)在跟隨所述第一傳輸過程的第二傳輸過程中傳送(350)所述位像表示(40)的像素的所述次子集對應的若干位。
10.根據權利要求9的方法,其中所述顏色子集是雙色子集,優選情況下是黑/白子集,而且黑色像素與所述主子集相關聯並在所述第一傳輸過程之內傳送。
11.根據以上權利要求的方法,其中所述屏幕快照(40)內含的文本信息關聯到所述兩種顏色之一,而且所述文本信息在所述第一傳輸過程中傳送(335)。
12.根據以上權利要求的方法,其中來自所述多色屏幕快照的文本信息映射到所述兩種顏色之一,優選情況下是黑色。
13.根據以上權利要求的方法,其中傳送四種灰色。
14.根據以上權利要求的方法,包括以下步驟a)在所述第一傳輸過程中傳送黑色像素的所述主子集對應的若干位(335),b)在所述第二傳輸過程中傳送3灰度級差異位的所述次子集對應的若干位(350)。
15.根據權利要求9的方法,應用於代理伺服器裝置(20)和配置為接收所述位像表示(40)的傳送的縮減顏色像素的與終端用戶相關聯的客戶設備(10)之間,包括以下步驟a)使用控制程序裝置(25),把從所述客戶設備(20)轉發的用戶控制響應轉換為瀏覽器專用的用戶控制命令,b)評估所述命令,所述命令表示網絡請求,它在執行後包括不同於在所述第一傳輸過程中傳送並且將由所述第二傳輸過程細化的位像表示的顯示,c)只要尚未完成,就中斷所述當前第一和/或第二傳輸過程,d)根據所述瀏覽器專用的用戶控制命令開始新的傳輸過程。
16.根據以上權利要求的方法,其中所述用戶控制響應關聯到某個(X/Y)屏幕位置,而且所述評估步驟b)的結果包括超連結的執行。
17.根據權利要求9的方法,應用於應用伺服器裝置和配置為接收所述位像表示(40)的傳送的縮減顏色像素的與終端用戶相關聯的客戶設備(10)之間,包括以下步驟a)使用控制程序裝置(25),把從所述客戶設備(20)轉發的用戶控制響應轉換為應用特定的用戶控制命令,b)評估所述命令,如果其執行包括與所述第一傳輸過程中傳送的位像表示的差異達到預定程度的位像表示的顯示,並且將由所述第二傳輸過程細化,c)只要尚未完成,就中斷所述當前第一和/或第二傳輸過程,d)根據所述應用特定的用戶控制命令開始新的傳輸過程。
18.一種在伺服器-客戶通信過程中參與圖形用戶界面(GUI)數據的多色位像表示(40)的低帶寬傳輸的方法,其特徵在於包括以下步驟a)從第一傳輸過程接收(340)所述位像表示(40)的縮減顏色像素的主子集對應的若干位,b)對所述收到的若干位執行解壓縮步驟,執行根據權利要求1至8中任何一條的各項壓縮的逆過程,c)顯示與所述第一主子集對應的位像表示,d)隨後,從跟隨所述第一傳輸過程的第二傳輸過程接收(355)與所述位像表示(40)像素的次子集對應的若干位,e)對所述隨後收到的若干位執行解壓縮步驟,執行根據權利要求1至8中任何一條的各項壓縮的逆過程,f)與從所述第一傳輸過程顯示的所述位像表示一起,顯示與所述次子集對應的位像表示。
19.根據以上權利要求的方法,應用於伺服器裝置(20)和配置為接收所述位像表示(40)的傳送的縮減顏色像素的與終端用戶相關聯的客戶設備(10)之間,包括以下步驟使用控制程序裝置(15)向所述伺服器轉發用戶控制響應,以響應所述顯示的位像表示,因而所述控制響應包括用戶控制的用戶啟動的動作在所述X-Y-屏幕位置的信息。
20.根據以上權利要求的方法,其中所述伺服器是商務應用伺服器或者代理伺服器。
21.根據權利要求16的方法,進一步包括以下步驟在所述顯示的位像表示的相應位置上填充(355)灰度級差異位對應的、插值後灰度級的灰度級像素。
22.一種計算機系統(20),具有執行根據以上權利要求1至21之一的方法步驟所用的裝置。
23.根據以上權利要求的計算機系統,形式為與終端用戶相關聯的客戶設備(10),具有執行根據以上權利要求18至21之一的方法步驟所用的裝置。
24.根據權利要求22的計算機系統,形式為代理伺服器(20),具有執行根據以上權利要求1至16之一的方法步驟所用的裝置。
25.根據權利要求22的計算機系統,形式為應用伺服器(20),具有執行根據以上權利要求1至14或17之一的方法步驟所用的裝置。
26.一種在數據處理系統中執行的電腦程式,包括若干電腦程式代碼部分,在計算機上執行所述電腦程式代碼部分時,執行根據以上權利要求1至21中任何一條的所述方法的各個步驟。
27.一種在計算機可用介質上存儲的電腦程式產品,包括若干計算機可讀的程序軟體,在計算機上執行所述電腦程式產品時,使計算機執行根據所述權利要求1至21中任何一條的所述方法。
全文摘要
多計算組件系統所用的一種電源管理系統。所述管理系統能夠對掛起和休眠兩種低功率運行狀態下的各個計算組件進行運行管理。此外,所述管理系統還能夠對各個計算組件之內的功耗附件進行粒度管理。當計算組件處於掛起或休眠的低功率狀態時,它可以熱交換到另一個位置。此外,當計算組件從休眠的低功率狀態恢復時,它可以訪問所述系統中的替換圖像。所以,所述電源管理系統允許多計算組件系統中的各個組件有五種運行狀態。
文檔編號H04N1/41GK1745581SQ200480002578
公開日2006年3月8日 申請日期2004年3月16日 優先權日2003年3月27日
發明者諾伯特·高茨, 赫爾曼·斯塔姆-維爾布蘭特 申請人:國際商業機器公司