本發(fā)明涉及地理信息,尤其涉及一種基于cog柵格數(shù)據(jù)的數(shù)據(jù)存儲與服務(wù)方法及裝置。
背景技術(shù):
1、柵格數(shù)據(jù)(raster?data)是一種用于表示地理空間信息的數(shù)據(jù)模型,廣泛應(yīng)用于gis(geographic?information?system,地理信息系統(tǒng))中,用于存儲和處理各種類型的地理空間數(shù)據(jù),如衛(wèi)星圖像、航空攝影照片、地形高程數(shù)據(jù)等,常見的柵格數(shù)據(jù)格式包括tiff(tagged?image?file?format,標(biāo)簽圖像文件格式)、geo?tiff、net?cdf(network?commondata?form,網(wǎng)絡(luò)通用數(shù)據(jù)格式)、hdf(hierarchical?data?format)等。一景遙感衛(wèi)星影像正射融合產(chǎn)品的數(shù)據(jù)量級為gb,并且隨著衛(wèi)星傳感器精度增加,單個(gè)影像文件越來越大,給數(shù)據(jù)高效應(yīng)用帶來了更大挑戰(zhàn)。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本發(fā)明提供一種基于cog柵格數(shù)據(jù)的數(shù)據(jù)存儲與服務(wù)方法及裝置,用于解決目前遙感衛(wèi)星影像數(shù)據(jù)量大而導(dǎo)致占用的存儲空間過大、存儲成本過高,以及無法高效應(yīng)用的問題。
2、為解決上述技術(shù)問題,第一方面,本發(fā)明提供一種基于cog柵格數(shù)據(jù)的數(shù)據(jù)存儲與服務(wù)方法,該方法包括:
3、獲取遙感衛(wèi)星影像數(shù)據(jù),驗(yàn)證所述遙感衛(wèi)星影像數(shù)據(jù)是否為cog格式,并在所述遙感衛(wèi)星影像數(shù)據(jù)不是cog格式的情況,將所述遙感衛(wèi)星影像數(shù)據(jù)轉(zhuǎn)換為cog格式;
4、將cog格式的遙感衛(wèi)星影像數(shù)據(jù)上傳到對象存儲,獲取上傳的遙感衛(wèi)星影像數(shù)據(jù)的元數(shù)據(jù)并存儲至對象-關(guān)系型數(shù)據(jù)庫中;
5、基于接收到的用戶的數(shù)據(jù)訪問請求,并根據(jù)所述元數(shù)據(jù)確定目標(biāo)遙感衛(wèi)星影像數(shù)據(jù),將所述目標(biāo)遙感衛(wèi)星影像數(shù)據(jù)發(fā)送給用戶。
6、可選的,所述將cog格式的遙感衛(wèi)星影像數(shù)據(jù)上傳到對象存儲,獲取上傳的遙感衛(wèi)星影像數(shù)據(jù)的元數(shù)據(jù)并存儲至對象-關(guān)系型數(shù)據(jù)庫中的步驟之后,所述方法還包括:
7、將所述對象存儲中的至少部分遙感衛(wèi)星影像數(shù)據(jù)發(fā)布為符合ogc標(biāo)準(zhǔn)的wmts服務(wù)。
8、可選的,所述方法還包括:
9、基于接收到的用戶的wmts服務(wù)請求,在存儲所述wmts服務(wù)對應(yīng)的瓦片的分布式文件存儲系統(tǒng)中查找是否存在對應(yīng)的目標(biāo)瓦片;
10、若存在所述目標(biāo)瓦片,則向用戶發(fā)送所述目標(biāo)瓦片;
11、若不存在所述目標(biāo)瓦片,則從所述對象存儲中獲取對應(yīng)的遙感衛(wèi)星影像數(shù)據(jù)并切片為瓦片,將切片后的瓦片發(fā)送給用戶以及存儲至所述分布式文件存儲系統(tǒng)中。
12、可選的,所述基于接收到的用戶的數(shù)據(jù)訪問請求,并根據(jù)所述元數(shù)據(jù)確定目標(biāo)遙感衛(wèi)星影像數(shù)據(jù)的步驟包括:
13、基于所述數(shù)據(jù)訪問請求對應(yīng)的訪問位置,在整幅遙感衛(wèi)星影像中找到目標(biāo)訪問范圍并獲取對應(yīng)的行列信息;
14、根據(jù)所述元數(shù)據(jù)以及所述行列信息,確定所述目標(biāo)訪問范圍需要偏移的字節(jié)數(shù),繼而確定目標(biāo)遙感衛(wèi)星影像數(shù)據(jù)。
15、可選的,所述獲取遙感衛(wèi)星影像數(shù)據(jù),驗(yàn)證所述遙感衛(wèi)星影像數(shù)據(jù)是否為cog格式,并在所述遙感衛(wèi)星影像數(shù)據(jù)不是cog格式的情況,將所述遙感衛(wèi)星影像數(shù)據(jù)轉(zhuǎn)換為cog格式的步驟包括:
16、采用gdal柵格空間數(shù)據(jù)轉(zhuǎn)換庫封裝驗(yàn)證方法以驗(yàn)證所述遙感衛(wèi)星影像數(shù)據(jù)是否為cog格式;
17、在所述遙感衛(wèi)星影像數(shù)據(jù)不是cog格式的情況,采用所述gdal柵格空間數(shù)據(jù)轉(zhuǎn)換庫提供的轉(zhuǎn)換方法對所述遙感衛(wèi)星影像數(shù)據(jù)進(jìn)行cog格式轉(zhuǎn)換。
18、可選的,所述獲取上傳的遙感衛(wèi)星影像數(shù)據(jù)的元數(shù)據(jù)并存儲至對象-關(guān)系型數(shù)據(jù)庫中的步驟包括:
19、使用tifffile庫獲取上傳的遙感衛(wèi)星影像數(shù)據(jù)的元數(shù)據(jù),所述元數(shù)據(jù)包括ifd標(biāo)簽數(shù)據(jù);
20、將所述元數(shù)據(jù)存儲至postgresql對象-關(guān)系型數(shù)據(jù)庫中。
21、第二方面,本發(fā)明還提供一種基于cog柵格數(shù)據(jù)的數(shù)據(jù)存儲與服務(wù)裝置,該裝置包括:
22、獲取模塊,用于獲取遙感衛(wèi)星影像數(shù)據(jù),驗(yàn)證所述遙感衛(wèi)星影像數(shù)據(jù)是否為cog格式,并在所述遙感衛(wèi)星影像數(shù)據(jù)不是cog格式的情況,將所述遙感衛(wèi)星影像數(shù)據(jù)轉(zhuǎn)換為cog格式;
23、存儲模塊,用于將cog格式的遙感衛(wèi)星影像數(shù)據(jù)上傳到對象存儲,獲取上傳的遙感衛(wèi)星影像數(shù)據(jù)的元數(shù)據(jù)并存儲至對象-關(guān)系型數(shù)據(jù)庫中;
24、數(shù)據(jù)發(fā)送模塊,用于基于接收到的用戶的數(shù)據(jù)訪問請求,并根據(jù)所述元數(shù)據(jù)確定目標(biāo)遙感衛(wèi)星影像數(shù)據(jù),將所述目標(biāo)遙感衛(wèi)星影像數(shù)據(jù)發(fā)送給用戶。
25、可選的,所述裝置還包括:
26、發(fā)布模塊,用于將所述對象存儲中的至少部分遙感衛(wèi)星影像數(shù)據(jù)發(fā)布為符合ogc標(biāo)準(zhǔn)的wmts服務(wù)。
27、可選的,所述裝置還包括:
28、查找模塊,用于基于接收到的用戶的wmts服務(wù)請求,在存儲所述wmts服務(wù)對應(yīng)的瓦片的分布式文件存儲系統(tǒng)中查找是否存在對應(yīng)的目標(biāo)瓦片;
29、瓦片發(fā)送模塊,用于若存在所述目標(biāo)瓦片,則向用戶發(fā)送所述目標(biāo)瓦片;
30、瓦片處理模塊,用于若不存在所述目標(biāo)瓦片,則從所述對象存儲中獲取對應(yīng)的遙感衛(wèi)星影像數(shù)據(jù)并切片為瓦片,將切片后的瓦片發(fā)送給用戶以及存儲至所述分布式文件存儲系統(tǒng)中。
31、可選的,所述數(shù)據(jù)發(fā)送模塊包括:
32、查找單元,用于基于所述數(shù)據(jù)訪問請求對應(yīng)的訪問位置,在整幅遙感衛(wèi)星影像中找到目標(biāo)訪問范圍并獲取對應(yīng)的行列信息;
33、確定單元,用于根據(jù)所述元數(shù)據(jù)以及所述行列信息,確定所述目標(biāo)訪問范圍需要偏移的字節(jié)數(shù),繼而確定目標(biāo)遙感衛(wèi)星影像數(shù)據(jù)。
34、可選的,所述獲取模塊包括:
35、驗(yàn)證單元,用于采用gdal柵格空間數(shù)據(jù)轉(zhuǎn)換庫封裝驗(yàn)證方法以驗(yàn)證所述遙感衛(wèi)星影像數(shù)據(jù)是否為cog格式;
36、轉(zhuǎn)換單元,用于在所述遙感衛(wèi)星影像數(shù)據(jù)不是cog格式的情況,采用所述gdal柵格空間數(shù)據(jù)轉(zhuǎn)換庫提供的轉(zhuǎn)換方法對所述遙感衛(wèi)星影像數(shù)據(jù)進(jìn)行cog格式轉(zhuǎn)換。
37、可選的,所述存儲模塊包括:
38、獲取單元,用于使用tifffile庫獲取上傳的遙感衛(wèi)星影像數(shù)據(jù)的元數(shù)據(jù),所述元數(shù)據(jù)包括ifd標(biāo)簽數(shù)據(jù);
39、存儲單元,用于將所述元數(shù)據(jù)存儲至postgresql對象-關(guān)系型數(shù)據(jù)庫中。
40、本發(fā)明的上述技術(shù)方案的有益效果如下:
41、本發(fā)明實(shí)施例中,通過將遙感衛(wèi)星影像數(shù)據(jù)統(tǒng)一轉(zhuǎn)為cog格式,可以大幅度地節(jié)省存儲空間,結(jié)合對象存儲可以降低存儲成本,提供按需訪問實(shí)現(xiàn)數(shù)據(jù)高效分發(fā)和基于cog渲染的地圖服務(wù),同時(shí)提供標(biāo)準(zhǔn)ogc服務(wù),使得各地圖引擎無需改造而可以直接加載,在訪問服務(wù)時(shí)將瓦片存入分布式文件存儲系統(tǒng)mongodb中,通過該機(jī)制實(shí)現(xiàn)瓦片緩存,實(shí)現(xiàn)高效的地圖服務(wù)。
1.一種基于cog柵格數(shù)據(jù)的數(shù)據(jù)存儲與服務(wù)方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將cog格式的遙感衛(wèi)星影像數(shù)據(jù)上傳到對象存儲,獲取上傳的遙感衛(wèi)星影像數(shù)據(jù)的元數(shù)據(jù)并存儲至對象-關(guān)系型數(shù)據(jù)庫中的步驟之后,所述方法還包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述方法還包括:
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于接收到的用戶的數(shù)據(jù)訪問請求,并根據(jù)所述元數(shù)據(jù)確定目標(biāo)遙感衛(wèi)星影像數(shù)據(jù)的步驟包括:
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述獲取遙感衛(wèi)星影像數(shù)據(jù),驗(yàn)證所述遙感衛(wèi)星影像數(shù)據(jù)是否為cog格式,并在所述遙感衛(wèi)星影像數(shù)據(jù)不是cog格式的情況,將所述遙感衛(wèi)星影像數(shù)據(jù)轉(zhuǎn)換為cog格式的步驟包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述獲取上傳的遙感衛(wèi)星影像數(shù)據(jù)的元數(shù)據(jù)并存儲至對象-關(guān)系型數(shù)據(jù)庫中的步驟包括:
7.一種基于cog柵格數(shù)據(jù)的數(shù)據(jù)存儲與服務(wù)裝置,其特征在于,包括:
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括:
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括:
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述數(shù)據(jù)發(fā)送模塊包括: