以前一直想作一個深度學習樣本製做工具,可是一直時間很少,今天終於開發完畢,不再用其餘人的工具了。很少說了,這裏只須要輸入遙感影像路徑與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