2013-11-24 50 views
0

我得到這個代碼here如何保存測量像素的距離數據在MATLAB

figure, imshow('pout.tif'); 
h = imdistline(gca); 
api = iptgetapi(h); 
fcn = makeConstrainToRectFcn('imline',... 
           get(gca,'XLim'),get(gca,'YLim')); 
api.setDragConstraintFcn(fcn); 

你能告訴我怎樣可以節省兩個點之間測量像素的距離數據「動態」到一個單獨的文件或一個變量在matlab中

回答

1
figure, imshow('pout.tif'); 
h = imdistline(gca); 
api = iptgetapi(h); 
fcn = makeConstrainToRectFcn('imline',... 
           get(gca,'XLim'),get(gca,'YLim')); 
api.setDragConstraintFcn(fcn); 

dist = api.getDistance() 

我相信你正在尋找如何使用API​​。在上面的示例中,您可以調用api,然後在列出的頁面上調用函數。即

api.getDistance 
api.getAngleFromHorizontal 

+0

這樣可以節省像素數據,但我怎樣才能使它的動態。上面的代碼隨機分配圖像中的兩個點並檢索該距離數據。我想要圖像中特定位置之間的像素距離數據 – Eka

+0

您應該能夠手動計算它。 也就是說pythag。定理。 加載圖像作爲一個向量A = imread('pout.tif') 如果您知道x1,y1和x2,y2 dist = sqrt((x2-x2)^ 2 +(y2-y1)^ 2) – athypes