桌面區(qū)域共享方法、系統(tǒng)及相應(yīng)的共享端和觀看端的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體而言,涉及一種桌面區(qū)域共享方法、系統(tǒng)及相應(yīng)的共享端和觀看端。
【背景技術(shù)】
[0002]目前,電腦桌面或者桌面上某個(gè)應(yīng)用程序窗口(桌面動(dòng)態(tài)顯示區(qū)域)的共享顯示功能,主要用于多方互助或視頻會(huì)議領(lǐng)域。例如,一方用戶將自己的電腦桌面共享給另一方用戶控制解決某個(gè)問(wèn)題;或者多方視頻會(huì)議中,一方用戶將某篇文檔共享顯示給其他用戶討論,可將整個(gè)桌面共享給其他用戶或只共享該文檔的窗口給其他用戶觀看。
[0003]傳統(tǒng)方案如果要保證良好的圖像質(zhì)量和實(shí)時(shí)性,盡管會(huì)采用一些數(shù)據(jù)壓縮算法,但是還是會(huì)產(chǎn)生非常龐大的數(shù)據(jù)量,這會(huì)給網(wǎng)絡(luò)傳輸帶來(lái)巨大的壓力,在復(fù)雜的網(wǎng)絡(luò)環(huán)境下不僅會(huì)占用相當(dāng)大的網(wǎng)絡(luò)帶寬,一旦數(shù)據(jù)出現(xiàn)丟包、延時(shí)等狀況,共享桌面圖像質(zhì)量和實(shí)時(shí)性會(huì)大打折扣,尤其在移動(dòng)網(wǎng)絡(luò)環(huán)境下,帶寬資源相當(dāng)珍貴這便成了致命的缺點(diǎn)。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明實(shí)施例的目的在于提供一種桌面區(qū)域共享方法、系統(tǒng)及相應(yīng)的共享端和觀看端,以改善上述問(wèn)題。
[0005]本發(fā)明是這樣實(shí)現(xiàn)的:
[0006]本發(fā)明實(shí)施例提供的一種桌面區(qū)域共享方法,應(yīng)用于共享端和觀看端之間進(jìn)行桌面區(qū)域共享,包括壓縮發(fā)送方法和解壓接收方法,所述壓縮發(fā)送方法包括:
[0007]圖像采集步驟,采集整個(gè)桌面或指定區(qū)域的圖像,每次采集獲得一個(gè)參考幀;
[0008]變化區(qū)域計(jì)算步驟,將最新采集的圖像和任一所述參考幀進(jìn)行對(duì)比,得到圖像變化區(qū)域;
[0009]圖像分塊步驟,將整個(gè)桌面的圖像、指定區(qū)域的圖像或最新采集的圖像分割為多個(gè)小塊,并分為多個(gè)區(qū)域;
[0010]分塊壓縮步驟,根據(jù)所述多個(gè)區(qū)域中的每個(gè)區(qū)域的特點(diǎn),將所述多個(gè)區(qū)域采用不同的壓縮方法進(jìn)行壓縮;
[0011]數(shù)據(jù)發(fā)送步驟,將壓縮后的圖像數(shù)據(jù)發(fā)送至所述觀看端;
[0012]所述解壓接收方法包括:
[0013]數(shù)據(jù)接收步驟,接收共享端發(fā)送的多個(gè)壓縮后的圖像數(shù)據(jù);
[0014]分塊解壓步驟,將多個(gè)壓縮后的圖像數(shù)據(jù)采用不同的解壓方法進(jìn)行解壓;
[0015]背景緩存步驟,將解壓后的多個(gè)區(qū)域緩存為整個(gè)桌面圖像或緩存為變化區(qū)域的圖像;
[0016]渲染展示步驟,將緩存的桌面圖像進(jìn)一步渲染。
[0017]優(yōu)選的,所述變化區(qū)域計(jì)算步驟包括,將多個(gè)參考幀與采集的圖像分別分成多個(gè)單元,再將所述多個(gè)參考幀和所述采集的圖像內(nèi)的所有單元進(jìn)行對(duì)比,把有差異的所述多個(gè)單元組成多個(gè)變化區(qū),對(duì)比所述多個(gè)變化區(qū)的面積大小,面積最小變化區(qū)即為所述變化區(qū)域計(jì)算步驟的所述變化區(qū)域。
[0018]優(yōu)選的,所述圖像分塊步驟包括,根據(jù)顏色數(shù)量的不同分成單色區(qū)域、雙色區(qū)域、多色區(qū)域。
[0019]優(yōu)選的,所述圖像分塊步驟還包括,所述多個(gè)區(qū)域?yàn)橛袚p壓縮區(qū)域和無(wú)損壓縮區(qū)域。
[0020]優(yōu)選的,所述分塊壓縮步驟包括,所述單色區(qū)域使用區(qū)域的大小和填充顏色代替像素?cái)?shù)據(jù)達(dá)到圖像數(shù)據(jù)進(jìn)行壓縮,所述雙色區(qū)域采用二值化壓縮,用一個(gè)比特表示一個(gè)像素,所述多色區(qū)域的顏色少于或者等于256種時(shí),采用調(diào)色板壓縮,所述多色區(qū)域的顏色大于256種時(shí),采用JPEG(Joint Photographic Experts Group,聯(lián)合圖像專家組)壓縮。
[0021 ]優(yōu)選的,所述分塊壓縮步驟包括,所述有損壓縮區(qū)域采用JPEG壓縮,所述無(wú)損壓縮區(qū)域采用ZIP壓縮。
[0022]優(yōu)選的,所述數(shù)據(jù)發(fā)送步驟包括,一個(gè)桌面區(qū)域共享的周期中,第一次發(fā)送整個(gè)桌面的圖像數(shù)據(jù),其他發(fā)送的次數(shù)發(fā)送所述變化區(qū)域的數(shù)據(jù)。
[0023]—種共享端,與一觀看端通信連接,所述共享端包括:
[0024]圖像采集模塊,用于采集整個(gè)桌面或指定區(qū)域的圖像,每次采集獲得一個(gè)參考幀;
[0025]變化區(qū)域計(jì)算模塊,用于將最新采集的圖像和任一所述參考幀進(jìn)行對(duì)比,得到圖像變化區(qū)域;
[0026]圖像分塊模塊,用于將整個(gè)桌面的圖像、指定區(qū)域的圖像或最新采集的圖像分割為多個(gè)小塊,并分為多個(gè)區(qū)域;
[0027]分塊壓縮模塊,用于根據(jù)所述多個(gè)區(qū)域中的每個(gè)區(qū)域的特點(diǎn),將所述多個(gè)區(qū)域采用不同的壓縮方法進(jìn)行壓縮;
[0028]數(shù)據(jù)發(fā)送模塊,用于將壓縮后的圖像數(shù)據(jù)發(fā)送至所述觀看端。
[0029]—種觀看端,與一共享端通信連接,所述觀看端包括:
[0030]數(shù)據(jù)接收模塊,用于接收共享端發(fā)送的多個(gè)壓縮后的圖像數(shù)據(jù);
[0031 ]分塊解壓模塊,用于將多個(gè)壓縮后的圖像數(shù)據(jù)采用不同的解壓方法進(jìn)行解壓;
[0032]背景緩存模塊,用于將解壓后的多個(gè)區(qū)域緩存為整個(gè)桌面圖像或緩存為變化區(qū)域的圖像;
[0033]渲染展示模塊,用于將緩存的桌面圖像進(jìn)一步渲染。
[0034]—種桌面區(qū)域共享系統(tǒng),包括共享端和觀看端,所述共享端與所述觀看端通信連接,所述共享端包括:
[0035]圖像采集模塊,用于采集整個(gè)桌面或指定區(qū)域的圖像,每次采集獲得一個(gè)參考幀;
[0036]變化區(qū)域計(jì)算模塊,用于將最新采集的圖像和任一所述參考幀進(jìn)行對(duì)比,得到圖像變化區(qū)域;
[0037]圖像分塊模塊,用于將整個(gè)桌面的圖像、指定區(qū)域的圖像或最新采集的圖像分割為多個(gè)小塊,并分為多個(gè)區(qū)域;
[0038]分塊壓縮模塊,用于根據(jù)所述多個(gè)區(qū)域中的每個(gè)區(qū)域的特點(diǎn),將所述多個(gè)區(qū)域采用不同的壓縮方法進(jìn)行壓縮;
[0039]數(shù)據(jù)發(fā)送模塊,用于將壓縮后的圖像數(shù)據(jù)發(fā)送至所述觀看端;
[0040]所述觀看端包括:
[0041]數(shù)據(jù)接收模塊,用于接收共享端發(fā)送的多個(gè)壓縮后的圖像數(shù)據(jù);
[0042]分塊解壓模塊,用于將多個(gè)壓縮后的圖像數(shù)據(jù)采用不同的解壓方法進(jìn)行解壓;
[0043]背景緩存模塊,用于將解壓后的多個(gè)區(qū)域緩存為整個(gè)桌面圖像或緩存為變化區(qū)域的圖像;
[0044]渲染展示模塊,用于將緩存的桌面圖像進(jìn)一步渲染。
[0045]與現(xiàn)有技術(shù)相比,本發(fā)明的桌面區(qū)域共享方法及系統(tǒng)第一次傳輸整個(gè)桌面區(qū)域或指定區(qū)域(例如一個(gè)應(yīng)用程序)的圖像,后續(xù)采集的圖像和參考幀對(duì)比后得到變化區(qū)域,傳輸?shù)淖兓瘏^(qū)域的圖像數(shù)據(jù)大小小于整個(gè)桌面區(qū)域或指定區(qū)域的圖像數(shù)據(jù)大小,能夠減小傳輸?shù)臄?shù)據(jù)量,提高傳輸效率。
[0046]不但如此,將第一次傳輸?shù)恼麄€(gè)桌面區(qū)域或指定區(qū)域以及變化區(qū)域進(jìn)行分塊,并針對(duì)不同的分塊通過(guò)不同的壓縮方式進(jìn)行壓縮,不但能保證共享圖像的質(zhì)量,還能減小傳輸?shù)臄?shù)據(jù)大小,占用網(wǎng)絡(luò)帶寬小,在網(wǎng)絡(luò)不佳的時(shí)候出現(xiàn)丟包、延時(shí)、抖動(dòng)的情況降低,即使在觀看端在由于數(shù)據(jù)丟失不能解碼的時(shí)候,可以通過(guò)網(wǎng)絡(luò)控制通道向共享端請(qǐng)求某個(gè)分塊或者參考幀,共享端在收到數(shù)據(jù)丟失消息時(shí),可以將觀看端請(qǐng)求的區(qū)域再次發(fā)送。
[0047]本發(fā)明實(shí)施例提供的桌面區(qū)域共享方法及系統(tǒng)減弱了不良網(wǎng)