遙感影像深度學習樣本製做工具

     以前一直想作一個深度學習樣本製做工具,可是一直時間很少,今天終於開發完畢,不再用其餘人的工具了。很少說了,這裏只須要輸入遙感影像路徑與arcgis中繪製的shp文件路徑,函數

就能夠製做樣本了,生成固定塊大小的樣本,我暫時尚未製做成gui工具,都是一些腳本,廢話很少說,咱們看一下關鍵代碼:工具

% use shape file to clip raster, deep learning semantic segmentation
% samples!
% Author: Mr zhipan wang, Email:1044625113@qq.com, Date:2020-3-12,
% ChangSha,Hunan province,China,have a nice day!


clear
tic

sampelSize = 525;                                                          % 須要裁剪的樣本塊大小

%% read raster data and shaplefile and padarray of our raster image
imgfilename =      'C:\Users\Administrator\Downloads\深度學習變化檢測\compositeband\2015_2018_composite.tif';
shp =              'C:\Users\Administrator\Downloads\深度學習變化檢測\change.shp';
saveSamplePath =   'C:\Users\Administrator\Downloads\深度學習樣本製做軟件\sample\';

create_DL_image_Sample(imgfilename, saveSamplePath, shp, sampelSize);

toc

  關鍵是索引到圖像座標與地理座標的關係:學習

function [row,col] = LonLat2DN(Info,latitude,longtitude)

% 輸入值:
   % Info: 遙感圖像投影信息
   % latitude: 緯度
   % longtitude: 經度
% 返回值
   % row: 行
   % col: 列

% [x,y] = projfwd(Info,latitude,longtitude);  %特別注意,須要將經緯轉成map投影,函數接口中,緯度在前,切記
x = latitude;
y = longtitude;


[row,col] = map2pix(Info.RefMatrix,x,y);
row = floor(row);
col = floor(col);

end

  看一下自動製做的樣本塊效果如何:ui

       

                                              圖1 樣本塊生成效果  spa

           

                                           圖2 樣本塊生成效果blog

    總的來看,基本上能夠知足需求了,深度學習預處理工做算是塵埃落定了,固然了,內部實現我用了並行加速的方式,這對大量樣本輸出來講,頗有用,快不少,索引

固然,這個工具不單單是用來作樣本的,還能夠用來製做截圖工具,好比說有不少矢量圖斑,咱們須要獲得該矢量圖斑的影像塊,這個也是能夠達到這個目的的。接口

後面有空再來打包成GUI工具,但願可以真正的推廣起來,減小你們的工做量,如須要代碼進行二次開發,Email:1044625113@qq.com,加好友時請備註:樣本工具製做。ip

相關文章
相關標籤/搜索