[發明專利]基于瓦片分割原理對2D OpenGL紋理做無損實時壓縮方法有效
| 申請號: | 202110007289.X | 申請日: | 2021-01-05 |
| 公開(公告)號: | CN112734868B | 公開(公告)日: | 2023-06-23 |
| 發明(設計)人: | 孟妍妮;吳鐘鳴;凌秀軍;智淑亞 | 申請(專利權)人: | 金陵科技學院 |
| 主分類號: | G06T9/00 | 分類號: | G06T9/00;G06T11/00;G06T7/00;G06T7/11 |
| 代理公司: | 南京眾聯專利代理有限公司 32206 | 代理人: | 蔣昱 |
| 地址: | 210000 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 瓦片 分割 原理 opengl 紋理 無損 實時 壓縮 方法 | ||
基于瓦片分割原理對2D?OpenGL紋理做無損實時壓縮方法。基于人工繪制圖像存在大面積空白及大面積單色的特征,該發明以瓦片對齊方式對OpenGL紋理實現實時壓縮,壓縮流程見附圖。實現占用內存大幅度減少,壓縮時間快,解壓實時,壓縮后的圖像直接渲染顯示無需解壓。壓縮后的圖像解壓及顯示和原圖像完全相同無質量損失,需要反復編輯的圖像,可多次任意解壓壓縮保證原圖內容。該壓縮技術適用于個人電腦,工作站,移動設備,嵌入式設備等所有以OpenGL顯示技術為基礎的各種設備。支持包含OpenGL,OpenGL?ES,WebGL等不同編程接口的應用環境。算法涉及到所有的計算都可以在GPU中通過多次渲染完成,在GPU和CPU之間無數據傳輸。
技術領域
本發明涉及無損實時壓縮領域,特別設計基于瓦片分割原理對2D?OpenGL紋理做無損實時壓縮方法。
背景技術
OpenGL顯示復雜表面常使用圖片表達便面細節,或平面繪圖軟件的多圖層支持時,其使用的未壓縮紋理會占用大量顯示內存。一張4096x4096的32位紋理為例,其占用的內存為64M,考慮其他開銷,采用非壓縮紋理的情況下一個包含2G顯示內存的顯示設備最多支持32個圖層,顯卡制作商支持一些紋理壓縮方式,如ECT1,PVRTC,ATITC,S3TC,單目前這些方式普遍存在一下問題:1)由于缺乏統一規范,兼容性差,應用程序不能在電腦及移動設備,或者不同品牌的移動設備之間部署實現;2)實時性差,不能支持在原圖和壓縮紋理之間做實時轉換,對于需要對紋理內容實現靈活編輯的繪圖系統存在不可逾越的使用障礙;3)由于要針對不同平臺,不同硬件設備的不同接口開發代碼并實現在應用層兼容,實現成本高。
發明內容
為了解決上述存在問題。本發明提出基于瓦片分割原理對2D?OpenGL紋理做無損實時壓縮方法,該技術可適用于所有基于OpenGL顯示的電腦,工作站及移動終端,適用OpenGL,OpenGL?ES,WebGL等不同編程接口的應用環境,為達此目的:
本發明提出基于瓦片分割原理對2D?OpenGL紋理做無損實時壓縮方法,具體步驟如下,其特征在于:
1)對圖像內容瓦片化檢測,對RGBA圖像做2x2全卷積降低分辨率;
2)比較卷積后數值和卷積前像素值的差異,存在變化則重復步驟1);
3)所有數值無變化或分辨率已經降低到1x1,卷積過程結束;
4)根據卷積結果,可以進行下一步的數據編碼,按最優原則,對不同的2n大小做最佳拼接組合編碼成一個2D紋理;
最佳拼接后編碼為一個2D紋理,該紋理直接用于顯示或解碼恢復原圖或在壓縮狀態下整體編輯;
5)對不同顏色的單值像素做無重復編碼為1D紋理;
6)2n大小位置及索引信息編碼為一個結構數組;
7)設計支持顯示及解碼的著色器;
編程著色器,接受紋理數據作為2D紋理,不重復的顏色編碼作為1D紋理,位置及大小索引作為繪制坐標,一次渲染實現繪制原圖像;
8)根據編碼出2D,1D紋理及位置索引信息采用專用著色器實時顯示全部圖像或一部分,通過繪制原圖像到顯示緩沖區,實現原圖像效果的顯示過程;
9)根據編碼出2D,1D紋理及位置索引信息采用專用著色器還原圖像全部或一部分,繪制原圖像到離屏紋理,實現還原原圖像的解碼過程;
10)將2D及1D紋理,位置及索引壓縮保存到文件,提供一種可長期保存的壓縮紋理格式。
作為本發明進一步改進,所述步驟2)中RGBA圖像做2x2全卷積降低分辨率,公式表述如下:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于金陵科技學院,未經金陵科技學院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110007289.X/2.html,轉載請聲明來源鉆瓜專利網。





