System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及影像切片,特別是涉及一種單幅影像切片方法和相關裝置。
技術介紹
1、單幅影像包含畫面或圖像的所有信息,是一個獨立完整的圖像文件。單幅超大影像是寬度尺寸大于10萬像素或高度尺寸大于10萬像素的影像文件。
2、當前,可以采用單機多線程、多機多線程或分布式切片方法對單幅超大影像進行切片處理。但是,無論采用上述哪種處理方法均受到磁盤i/o特性和每個線程的切片隨機分布的限制,存在數據讀取效率低和數據讀取冗余的問題,進而導致cpu利用率不高,導致單幅超大影像切片性能不理想。
3、因此,如何解決數據讀取效率低和數據讀取冗余的問題,提高cpu利用效率,提高單幅超大影像文件的切片性能,成為圖像處理
中亟待解決的技術問題之一。
技術實現思路
1、基于上述問題,本申請提供了一種單幅影像切片方法,用以解決數據讀取效率低和數據讀取冗余的問題,提高cpu利用效率,提高單幅超大影像文件的切片性能。
2、本申請實施例公開了如下技術方案:
3、本申請公開了一種單幅影像切片方法,包括:
4、通過i/o線程對目標單幅影像進行多次數據讀取操作,獲得多個數據組;每次數據讀取操作獲得一個所述數據組;
5、在通過所述i/o線程對所述目標單幅影像進行數據讀取操作的同時,通過數據處理線程組,根據目標瓦片剖分格網對已經獲得的所述數據組進行數據處理操作,生成多張瓦片;每張所述瓦片的尺寸與所述目標瓦片剖分格網中網格的尺寸一致;
6、在通過
7、在一種可選的實現方式中,所述目標單幅影像的尺寸是p像素×q像素;所述瓦片的尺寸是m像素×m像素;所述p、q和m均是大于1的整數;所述p大于所述m;每個所述數據組由影像塊對應的數據組成;所述影像塊的尺寸是m像素×q像素。
8、在一種可選的實現方式中,所述目標瓦片剖分格網是全球剖分第16層級的剖分格網。
9、在一種可選的實現方式中,若確定所述目標單幅影像的影像坐標系與所述目標瓦片剖分格網的坐標系不一致,所述數據處理操作包括影像渲染操作、投影轉換操作和插值縮放操作。
10、在一種可選的實現方式中,若確定所述目標單幅影像的影像坐標系與所述目標瓦片剖分格網的坐標系一致,所述數據處理操作包括影像渲染操作。
11、在一種可選的實現方式中,所述通過編碼線程組對已經生成的多張所述瓦片進行融合轉換操作,生成多張瓦片文件,包括:
12、通過所述編碼線程組對已經生成的、具有相同行列號的多張所述瓦片進行位圖融合,生成多張目標瓦片;任意兩張所述目標瓦片均不存在重合區域;
13、在通過所述編碼線程組對已經生成的多張所述瓦片進行位圖融合的同時,通過輸出線程組將已經生成的多張所述目標瓦片,轉換為多張瓦片文件;所述瓦片文件的格式為wep、png或jpg格式。
14、在一種可選的實現方式中,所述方法還包括:
15、將基于目標瓦片剖分格網生成的多個瓦片文件,作為第一參考目標瓦片;
16、通過所述第一參考目標瓦片,生成全球剖分第15層級對應的第二參考目標瓦片;
17、通過所述第二參考目標瓦片,生成全球剖分第14層級對應的第三參考目標瓦片;以此類推,直至生成全球剖分第1層級對應的參考瓦片。
18、本申請第二方面提供了一種單幅影像切片裝置,所述裝置包括:
19、數據讀取模塊,用于通過i/o線程對目標單幅影像進行多次數據讀取操作,獲得多個數據組;每次讀取操作獲得一個所述數據組;
20、數據處理模塊,用于在通過所述i/o線程對所述目標單幅影像進行數據讀取操作的同時,通過數據處理線程組,根據目標瓦片剖分格網對已經獲得的所述數據組進行數據處理操作,生成多張瓦片;每張所述瓦片的尺寸與所述目標瓦片剖分格網中網格的尺寸一致;
21、數據編碼模塊,用于在通過所述數據處理線程組,根據目標瓦片剖分格網對已經獲得的所述數據組進行數據處理操作的同時,通過編碼線程組對已經生成的多張所述瓦片進行融合轉換操作,生成多張瓦片文件。
22、本申請第三方面提供了一種計算機可讀存儲介質,其上存儲有計算機程序,該程序被處理器執行時實現第一方面任一實現方式介紹的方法的步驟。
23、本申請第四方面提供了一種電子設備,包括:
24、存儲器,其上存儲有計算機程序;
25、處理器,用于執行所述存儲器中的所述計算機程序,以實現第一方面任一實現方式介紹的方法的步驟。
26、相較于現有技術,本申請具有以下有益效果:
27、本申請公開了一種單幅影像切片方法,包括:通過i/o線程對目標單幅影像進行多次數據讀取操作,獲得多個數據組;在通過i/o線程對目標單幅影像進行數據讀取操作的同時,通過數據處理線程組,根據目標瓦片剖分格網對已經獲得的數據組進行數據處理操作,生成多張瓦片;在通過數據處理線程組,根據目標瓦片剖分格網對已經獲得的數據組進行數據處理操作的同時,通過編碼線程組對已經生成的多張瓦片進行融合轉換操作,生成多張瓦片文件。
28、這樣,通過將i/o線程、數據處理線程組和編碼線程組相互解耦的方式,保證了通過i/o線程對目標單幅影像進行數據讀取操作生成數據組的同時,可以通過數據處理線程組對已經獲得數據組進行數據處理操作生成多張瓦片;可以編碼線程組對已經生成的多張瓦片線程融合轉換操作生成多張瓦片文件;從而解決了傳統方案中存在的數據讀取效率低和數據讀取冗余的問題,提高cpu利用效率,提高單幅超大影像文件的切片性能。
本文檔來自技高網...【技術保護點】
1.一種單幅影像切片方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述目標單幅影像的尺寸是P像素×Q像素;所述瓦片的尺寸是M像素×M像素;所述P、Q和M均是大于1的整數;所述P大于所述M;每個所述數據組由影像塊對應的數據組成;所述影像塊的尺寸是M像素×Q像素。
3.根據權利要求1所述的方法,其特征在于,所述目標瓦片剖分格網是全球剖分第16層級的剖分格網。
4.根據權利要求1-3中任一項所述的方法,其特征在于,若確定所述目標單幅影像的影像坐標系與所述目標瓦片剖分格網的坐標系不一致,所述數據處理操作包括影像渲染操作、投影轉換操作和插值縮放操作。
5.根據權利要求1-3中任一項所述的方法,其特征在于,若確定所述目標單幅影像的影像坐標系與所述目標瓦片剖分格網的坐標系一致,所述數據處理操作包括影像渲染操作和插值縮放操作。
6.根據權利要求1所述的方法,其特征在于,所述通過編碼線程組對已經生成的多張所述瓦片進行融合轉換操作,生成多張瓦片文件,包括:
7.根據權利要求3所述的方法,其特征在于,
8.一種單幅影像切片裝置,其特征在于,所述裝置包括:
9.一種計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,該程序被處理器執行時實現權利要求1-7中任一項所述方法的步驟。
10.一種電子設備,其特征在于,包括:
...【技術特征摘要】
1.一種單幅影像切片方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述目標單幅影像的尺寸是p像素×q像素;所述瓦片的尺寸是m像素×m像素;所述p、q和m均是大于1的整數;所述p大于所述m;每個所述數據組由影像塊對應的數據組成;所述影像塊的尺寸是m像素×q像素。
3.根據權利要求1所述的方法,其特征在于,所述目標瓦片剖分格網是全球剖分第16層級的剖分格網。
4.根據權利要求1-3中任一項所述的方法,其特征在于,若確定所述目標單幅影像的影像坐標系與所述目標瓦片剖分格網的坐標系不一致,所述數據處理操作包括影像渲染操作、投影轉換操作和插值縮放操作。
5.根據...
【專利技術屬性】
技術研發人員:龔亞茜,董勝光,唐先龍,王嬌,王麗莉,云惟英,茍宇,
申請(專利權)人:北京超圖軟件股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。