在matlab中進行遙感影像地理坐標的相互轉換


在matlab中進行圖像處理,一般使用的都是圖像本地坐標,以左上角(1,1)開始。處理完成后,如果要將結果在帶地理坐標的遙感影像中顯示,或者需要輸出成shp文件,就需要涉及到本地坐標和地理坐標的轉換,我們可以使用pix2map函數來實現這個功能。

clc;clear;close all;
[pic, R] = geotiffread('boston.tif'); %讀取tif圖像
figure(1),imshow(pic);
% pic即為本地圖像,下面對本地圖像進行操作 gray
=rgb2gray(pic); bw=im2bw(gray,0.1); %閾值分割 bw=1-bw; bw1 = bwareaopen(bw,500000); %刪除面積小於500000的區域 bw2=imfill(bw1,'holes'); %填充孔洞 figure(2),imshow(bw2); bw3=bwboundaries(bw2); %得到邊緣輪廓 data=bw3{1,1}; %得到輪廓線的坐標,一個N*2的矩陣,此坐標為本地圖像坐標 [lonX,latY]=pix2map(R,data(:,1),data(:,2)); %將本地圖像坐標轉換為地理坐標 figure(3),axis off; mapshow('boston.tif'); %顯示帶地理坐標的遙感影像 mapshow(lonX,latY,'Color','r'); %在遙感影像上顯示輪廓

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM