[发明专利]一种在Android系统上快速加载遥感影像的方法在审
申请号: | 202011600442.1 | 申请日: | 2020-12-30 |
公开(公告)号: | CN112631782A | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 赵亚萌;赵会军;臧文乾;黄祥志;王更科 | 申请(专利权)人: | 中科星通(廊坊)信息技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F16/955 |
代理公司: | 北京中创云知识产权代理事务所(普通合伙) 11837 | 代理人: | 徐辉 |
地址: | 065000 河北省*** | 国省代码: | 河北;13 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 android 系统 快速 加载 遥感 影像 方法 | ||
本发明涉及一种在Android系统上快速加载遥感影像的方法,采用Android(安卓)系统的软件开发插件SDK创建用于获取瓦片数据的若干线程池;采用Android(安卓)系统自带的URL连接向遥感影像服务器请求瓦片数据;获取遥感影像服务器发送的数据流,对获取到的数据流转化成位图Bitmap;对位图Bitmap进行优化;将优化后的位图Bitmap加载到控件上,优化后的Bitmap进入缓存。本发明合理利用了Android SDK提供的方法,并对其方法参数进行了合理的配置,从而优化了网络请求异步任务的执行效率以及Bitmap在内存中的大小,节约了内存资源,提高了加载速度。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种在Android系统上快速加载遥感影像的方法。
背景技术
随着我国遥感卫星技术的快速发展,遥感卫星影像的数据基本在TB级别以上持续产出。与此同时,手机、平板电脑、智能屏幕等移动端设备的飞速发展,地图服务的展现形式正在由桌面端向移动端转移。遥感卫星影像已经是移动设备提供地图服务的基础数据,所以移动端加载遥感卫星影像的技术要求也越来越高。
目前国内移动端地图应用主要是百度地图、高德地图、腾讯地图等,这些应用多以四叉树瓦片金字塔模型进行遥感卫星影像的可视化展示,虽然每张瓦片像元大小为256x256,数据量小,但是由于目前遥感影像分辨率越来越高,一个遥感影像需要海量的像元数据,因此对于移动端在线获取海量遥感影像的网络请求需要进行优化。
目前移动设备内存空间越来越高,对于Android(安卓)系统来讲,由于Android5.0(Lollipop)开始ART就全面取代了Dalvik虚拟机,并且在Android 7.0向ART中添加了一个Just-In-Time(JIT)编译器。虽然可以在应用运行时持续的提高其性能,但是一个应用程序运行时占用的内存空间也越来越大,因此为了节省更多内存空间,遥感影像的瓦片像元在加载时需要进行优化。
对于遥感影像的网络请求数据而言,由于目前瓦片像元的数据量小,所以对网络请求并未做优化,只是用了Android系统自带的异步任务处理方式AsynTask来执行网络请求操作。对于遥感影像在内存中的加载,由于目前瓦片像元的数据量小,所以在通过URL获取遥感影像的瓦片数据时,直接通过BitmapFactory.decodeStream()的方法生成Bitmap。
然而对于遥感影像的网络请求数据的异步任务执行方式采用AsynTask而言,由于AsynTask内部也是配置了线程池来执行任务,构建的是一个corePoolSize为5,maximumPoolSize为128,任务队列为无界队列LinkedBlockingQueue,队列容纳个数为10。也就意味着AsynTask开始可以并行执行5个任务,当任务个数超过corePoolSize核心数时,就会添加到任务队列中,当超过10个的时候就会一直构建新线程去执行任务,一直到线程数量达到128个(线程池的最大数量)。如果用AsynTask来执行异步任务加载海量遥感影像的瓦片像元数据,128个线程是远远不够的,会导致整个遥感影像加载的时间延长。
对于通过URL获取遥感影像的瓦片数据时,直接通过BitmapFactory.decodeStream()的方法生成Bitmap而言。该方法并没有考虑到Bitmap的内存优化,包括在获取Bitmap的基本参数时,是先将Bitmap加载到内存中后再获取基本参数,从而导致内存的额外开销。
发明内容
为了对于Android移动设备加载遥感卫星影像进行优化,本发明提供一种在Android系统上快速加载遥感影像的方法,通过优化网络请求以及遥感影像在内存中的处理,从而提高遥感影像在Android设备上的加载速度。
为达到上述目的,本发明提供了一种在Android系统上快速加载遥感影像的方法,包括:
在获取瓦片数据之前,采用Android系统的软件开发插件SDK创建用于获取瓦片数据的线程池;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科星通(廊坊)信息技术有限公司,未经中科星通(廊坊)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011600442.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种小口白甲鱼苗种培育方法
- 下一篇:一种茶叶杆制备活性炭工艺