2012年12月27日 星期四

如何用Matlab抓取座標圖的x-y數值? Ginput




面對各式產品的選購,除了價格的考量,其對應的功能性也是一個重要的考量因素,也就是大家常常提到的性價比 為了評估欲開發的新產品是否具有更高的性價比,供應商提供的規格書是第一個評估文件,根據規格書內的曲線圖表,可大略推算其特性規格。但若要詳細推算規格,則需要再進一步請供應商提供整條曲線的量測資料,對於這個要求,供應商往往不易提供。這時就需要由曲線和座標的關係自行取出x-y數值了。

MatlabGinput指令可讓使用者藉由滑鼠的自行點選,抓取出圖片上的XY 畫素位置(pixels),同時可讓使用者設定要取出的點數,如上圖的說明。因此應用Ginput指令,同時根據每張圖表的座標差異設定,按照比例和座標的關係簡易寫出x-y取值的範例程式,程式碼如下圖所示。





用法:
1. 先將欲取值的圖表檔名定義為’a.jpg’,並與程式碼(.m)放在同一個資料夾。
2. 執行該程式,會看到一個類似準心的十字,先點選圖表的x軸最大處,如下左圖所
    示。點選後在指令列輸x軸的最大座標值和y軸的最小座標值,如下右圖所示。

         

3. 接著以相同的方式,點選圖表的Y軸最大處,如下左圖所示。點選後在指令列輸
    入x軸的最小座標值和y軸的最大座標值,如下圖所示。


              
4. 最後點選需要取x-y數值的座標點,取出x-y數值可由Workspace中得知,如下圖所
    示,該範例的點數為三個點,若有更多點數的需求,可自行修改程式碼。



沒有留言:

張貼留言