圖片存儲系統及方法
【技術領域】
[0001]本發明涉及圖片處理領域,尤其涉及一種圖片存儲系統及方法。
【背景技術】
[0002]大多數網絡游戲客戶端所占空間較大,其中尤其以圖片資源占用量為首。通常情況下,常用圖像文件格式存儲容量大,內存占用量大,且并不能被GPU所識別。因此,需要在CHJ內存中對圖片進行解碼。有些圖片格式能夠表現豐富的色彩和細節,但存儲容量大。但如果選擇存儲容量小的格式,圖片會存在較大的失真。
【發明內容】
[0003]為了解決現有技術存在的問題,本發明提供一種圖片存儲系統,包括:
[0004]切割模塊,用于將圖片切割分塊并去除無效塊;
[0005]壓縮紋理轉換模塊,用于將剩余的塊轉換成壓縮紋理格式;以及
[0006]壓縮模塊,用于對壓縮紋理格式的圖片進行壓縮并存儲。
[0007]可選的,所述的圖片存儲系統還包括圖像抖動模塊,用于對圖片進行抖動處理以對圖片透明過渡進行優化。
[0008]可選的,所述抖動模塊僅對切割分塊后效果較差的部分塊進行抖動處理。
[0009]可選的,所述無效塊為透明度大于一特定值的塊。
[0010]可選的,無效塊為沒有圖像的塊。
[0011 ] 可選的,所述壓縮紋理格式為DXT格式。
[0012]可選的,對壓縮紋理格式的圖片進行壓縮的方法為Zlib壓縮。
[0013]本發明還提供一種圖片存儲方法,包括:
[0014]切割模塊將圖片切割分塊并去除無效塊;
[0015]壓縮紋理轉換模塊將剩余的塊轉換成壓縮紋理格式;以及
[0016]壓縮模塊對壓縮紋理格式的圖片進行壓縮并存儲。
[0017]可選的,在去除所述無效塊之后,通過圖像抖動模塊對剩余塊中效果較差的部分塊進行抖動處理。
[0018]可選的,所述壓縮紋理格式為DXT格式。
[0019]本發明提供一種圖片存儲系統,包括切割模塊、壓縮紋理轉換模塊和壓縮模塊,能夠將圖片切割分塊并去除無效塊后,將剩余的塊轉換成壓縮紋理格式并進行壓縮和存儲。本發明還提供一種圖片存儲方法,可減少圖片資源存儲容量,從而減小游戲客戶端的容量以及資源內存占用量。使用壓縮紋理格式提高效率,使圖像在最小失真的情況下,達到更小的存儲容量。在網絡游戲中,使用本方法可對圖片塊讀取后單獨繪制及內存管理,減少資源內存占用量,并使用GPU能識別的紋理格式提高效率。
【附圖說明】
[0020]圖1為本發明一實施例所述圖片存儲系統的結構示意圖;
[0021]圖2為本發明一實施例所述圖片存儲系統中切割模塊切割后的圖片示意圖;
[0022]圖3為本發明一實施例所述圖片存儲方法的流程圖。
【具體實施方式】
[0023]以下結合附圖和具體實施例對本發明作進一步詳細說明。根據下面說明和權利要求書,本發明的優點和特征將更清楚。需說明的是,附圖均采用非常簡化的形式且均使用非精準的比率,僅用以方便、明晰地輔助說明本發明實施例的目的。
[0024]本發明提供一種圖片存儲系統,如圖1所不,包括:
[0025]切割模塊10,用于將圖片切割分塊并去除無效塊;
[0026]壓縮紋理轉換模塊30,用于將剩余的塊轉換成壓縮紋理格式;以及
[0027]壓縮模塊40,用于對壓縮紋理格式的圖片進行壓縮并存儲。
[0028]在本實施例中,圖片存儲系統還包括圖像抖動模塊20,連接于所述切割模塊10與所述壓縮紋理轉換模塊30之間,用于對圖片進行抖動處理以對圖片透明過渡進行優化。在一優選方案中,所述抖動模塊20僅對切割分塊后效果較差(例如透明過渡效果較差)的部分塊進行抖動處理。所述抖動模塊20的圖像抖動算法能夠對圖像塊的透明過渡進行優化,提尚顯不效果。
[0029]切割后的所述無效塊為透明度大于一特定值的塊,即在對整個圖像切割分塊后,透明度較高的塊為內容相對較少,甚至可以忽略的塊,因此去除此部分塊不會影響整個圖片的含義表達,同時也能減小圖片壓縮后文件所占用的空間。在本實施例中,無效塊還可以是沒有圖像的塊。具體依據何種特征去除圖像的無效部分,本發明不作任何限制。如圖2所示,對原圖片100進行切割形成多個圖像塊。所述有效圖像所在的為中心圖像110,其周邊沒有內容的塊為周邊圖像120。其中,由于周邊圖像120并無內容,因此可以直接去除;而在本實施例中,中心圖像110中的圖像塊I和圖像塊2為經過切割后形成的無內容的塊,因此可以判定為無效塊而去除。在去除上述周邊圖像120和中心圖像中的無效塊(圖像塊I和圖像塊2)后,剩余的有效塊即可經所述壓縮紋理轉換模塊30轉換成壓縮紋理格式。
[0030]可以理解的是,切割模塊10對圖片的切割越小,則能夠去除的無效塊越多,壓縮后減小所占容量的效果就越好。可以根據對圖像精度和壓縮后大小的綜合考慮,設置切割模塊10切割圖像的大小。
[0031]在本實施例中,所述壓縮紋理格式為DXT格式。可以理解的是,本發明并不限制具體的壓縮紋理格式,只要所述紋理格式為GPU能識別的紋理格式即可。使用GPU能識別的紋理格式能夠提高渲染的速度和效率,同時也能降低紋理內存需求。使圖像在最小失真的情況下,達到更小的存儲容量,同時加速將紋理上傳到紋理內存的過程。
[0032]本實施例的圖片存儲系統中,對壓縮紋理格式的圖片進行壓縮的方法為Zlib壓縮。當然,對于具體的壓縮格式和壓縮方法,本發明不作限制。
[0033]本發明還提供一種圖片存儲方法,如圖3所示,包括:
[0034]切割模塊將圖片切割分塊并去除無效塊;
[0035]壓縮紋理轉換模塊將剩余的塊轉換成壓縮紋理格式;以及
[0036]壓縮模塊對壓縮紋理格式的圖片進行壓縮并存儲。
[0037]可選的是,在去除所述無效塊之后,通過圖像抖動模塊對剩余塊中效果較差的部分塊進行抖動處理,之后再進行壓縮紋理轉換模塊將剩余的塊轉換成壓縮紋理格式的步驟。
[0038]本發明在存儲圖片時,將圖像按透明度或其他特征切除無效部分,并按特定規則分塊,并按透明度或其他特征剔除無效的塊,將最終的每個塊的圖像數據轉換成壓縮紋理格式后(例如:DXT格式等),再通過數據壓縮算法進行最終壓縮(例如zlib壓縮等),最后進行存儲,減少存儲的成本;所述系統包括圖像切割分塊模塊、圖像抖動模塊、壓縮紋理轉換模塊和數據壓縮模塊。本發明可減少圖片資源存儲容量,從而減小游戲客戶端的容量以及資源內存占用量。使用壓縮紋理格式提高效率,使圖像在最小失真的情況下,達到更小的存儲容量。在網絡游戲中,使用本方法可對圖片塊讀取后單獨繪制及內存管理,減少資源內存占用量,并使用GPU能識別的紋理格式提高效率。
[0039]顯然,本領域的技術人員可以對發明進行各種改動和變型而不脫離本發明的精神和范圍。這樣,倘若本發明的這些修改和變型屬于本發明權利要求及其等同技術的范圍之內,則本發明也意圖包括這些改動和變型在內。
【主權項】
1.一種圖片存儲系統,其特征在于,包括: 切割模塊,用于將圖片切割分塊并去除無效塊; 壓縮紋理轉換模塊,用于將剩余的塊轉換成壓縮紋理格式;以及 壓縮模塊,用于對壓縮紋理格式的圖片進行壓縮并存儲。2.如權利要求1所述的圖片存儲系統,其特征在于,還包括圖像抖動模塊,用于對圖片進行抖動處理以對圖片透明過渡進行優化。3.如權利要求2所述的圖片存儲系統,其特征在于,所述抖動模塊僅對切割分塊后效果較差的部分塊進行抖動處理。4.如權利要求1所述的圖片存儲系統,其特征在于,所述無效塊為透明度大于一特定值的塊。5.如權利要求1所述的圖片存儲系統,其特征在于,無效塊為沒有圖像的塊。6.如權利要求1所述的圖片存儲系統,其特征在于,所述壓縮紋理格式為DXT格式。7.如權利要求1所述的圖片存儲系統,其特征在于,對壓縮紋理格式的圖片進行壓縮的方法為Zlib壓縮。8.一種圖片存儲方法,其特征在于,包括: 切割模塊將圖片切割分塊并去除無效塊; 壓縮紋理轉換模塊將剩余的塊轉換成壓縮紋理格式;以及 壓縮模塊對壓縮紋理格式的圖片進行壓縮并存儲。9.如權利要求8所述的圖片存儲方法,其特征在于,在去除所述無效塊之后,通過圖像抖動模塊對剩余塊中效果較差的部分塊進行抖動處理。10.如權利要求8所述的圖片存儲方法,其特征在于,所述壓縮紋理格式為DXT格式。
【專利摘要】本發明提供一種圖片存儲系統,包括切割模塊、壓縮紋理轉換模塊和壓縮模塊,能夠將圖片切割分塊并去除無效塊后,將剩余的塊轉換成壓縮紋理格式并進行壓縮和存儲。本發明還提供一種圖片存儲方法,可減少圖片資源存儲容量,從而減小游戲客戶端的容量以及資源內存占用量。使用壓縮紋理格式提高效率,使圖像在最小失真的情況下,達到更小的存儲容量。在網絡游戲中,使用本方法可對圖片塊讀取后單獨繪制及內存管理,減少資源內存占用量,并使用GPU能識別的紋理格式提高效率。
【IPC分類】G06F17/30
【公開號】CN105224698
【申請號】CN201510790732
【發明人】張衛國, 岳曉軍, 杜君
【申請人】盛趣信息技術(上海)有限公司
【公開日】2016年1月6日
【申請日】2015年11月17日