超分辨率谷歌卫星图下载经验贴

由于项目需要真实的卫星图像作为地图,因而搞了搞利用水经微注这款软件下载超高分辨率大图,讲道理可以下载任意大小的超高分辨率大图。博主下载过27000*19320像素大小的图,大小约为500MB。

1.Prerequisite

win10+ 水经微注 + Matlab 2019b

2.生成下载任务文本 

 

选取一个矩形区域,读取最大经纬度坐标。

 以下matlab脚本将经纬度区域划分为N*N网格区域,输出每一个网格区域的经纬度坐标文本。案例将生成36个网格区域的经纬度范围,写入任务文本。

lon_min=116.32663250;
lon_max=116.36375427;
lat_min=39.96705622;
lat_max=39.99296935;

vect_lon=linspace(lon_min,lon_max,7)
vect_lat=linspace(lat_min,lat_max,7)

pose_mat=zeros(36,4,"double");

% 输出任务文本
fid=fopen("newbuilding_task36.txt","w+");
% 给定正方形坐标;生成4*4等分方形坐标
for i=1:6
    for j=1:6
        pose_mat((i-1)*6+j,:)=[vect_lon(1,i) vect_lat(1,j) vect_lon(1,i+1) vect_lat(1,j+1)];
        fprintf(fid,"bh-%d|%3.10f,%3.10f|%3.10f,%3.10f|21\n",(i-1)*6+j,pose_mat((i-1)*6+j,:));
    end
end
fclose(fid);

% save('bh-36.txt','pose_mat','-ascii')

 结果如下,21指的下载卫星图层的等级为21级,最高为22。

bh-1|116.3266325000,39.9670562200|116.3328194617,39.9713750750|21
bh-2|116.3266325000,39.9713750750|116.3328194617,39.9756939300|21
bh-3|116.3266325000,39.9756939300|116.3328194617,39.9800127850|21
bh-4|116.3266325000,39.9800127850|116.3328194617,39.9843316400|21
bh-5|116.3266325000,39.9843316400|116.3328194617,39.9886504950|21
......

3.任务批量下载网格图像

下载并导出PNG图像。

4.网格图像拼接

直接上matlab代码,读图png图片,并利用矩阵直接进行接合就可以了。

clear all
clc

% 读取图像 
map_grids={};
for i=1:36
    map_grids{i}=imread(sprintf('D:\\SGDownload\\newbuilding_batch\\bh-%d_大图\\L21\\bh-%d.png',i,i));
end

% 图像拼合
part1=[map_grids{6};map_grids{5};map_grids{4};map_grids{3};map_grids{2};map_grids{1}];
part2=[map_grids{12};map_grids{11};map_grids{10};map_grids{9};map_grids{8};map_grids{7};];
part3=[map_grids{18};map_grids{17};map_grids{16};map_grids{15};map_grids{14};map_grids{13}];
part4=[map_grids{24};map_grids{23};map_grids{22};map_grids{21};map_grids{20};map_grids{19};];
part5=[map_grids{30};map_grids{29};map_grids{28};map_grids{27};map_grids{26};map_grids{25};];
part6=[map_grids{36};map_grids{35};map_grids{34};map_grids{33};map_grids{32};map_grids{31};];

map=[part1,part2,part3,part4,part5,part6];
imwrite(map,"beihang2300.png");
imshow(map);

over...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值