0

matlab を使用してシェープ ファイルをラスター グリッドに変換したいと考えています。最初は Python でやろうとしましたが、いくつかの困難に直面したため、上司は MATLAB を使用するよう勧めました。私はランダムにmatlabを使用しており、そのプロです。

私が持っているデータは、座標を持つ一連のポイントを含む ASCII ファイルであり、それらからラスター グリッドを作成したいと考えています。

データを読み取って、データから (xmin、ymin、xmax、ymax) のサイズの空の行列を作成できると考えていました。次に、対応する点の座標に基づいて、各グリッド セルに z 値を割り当てる必要があります。

グリッド サイズは 0.5m にする必要があります。ご参考までにデータの一部をコピーしました。誰かがこのアプリケーションの正しい考え方を見つけるのを手伝ってくれたらありがたいです.

32511632.00 5402000.00 354.29 17.50
32511632.50 5402000.00 354.29 17.50
32511633.00 5402000.00 354.35 18.00
32511633.50 5402000.00 354.52 15.75
32511634.00 5402000.00 354.70 12.37
32511634.50 5402000.00 354.61 10.62
32511635.00 5402000.00 354.11 8.50
32511635.50 5402000.00 353.43 9.50
32511636.00 5402000.00 352.72 14.25
32511636.50 5402000.00 352.22 17.62

(最初の列は X、2 番目は Y、3 番目は Z、属性の最後)

4

1 に答える 1

0
isize = floor((ymax - ymin) / 0.5) + 1;
jsize = floor((xmax - xmin) / 0.5) + 1
M=zeros(isize, jsize);

次に、各入力行について:

i = floor((y - ymin) / 0.5) + 1;
j = floor((x - xmin) / 0.5) + 1;
M(i, j) = z;
于 2013-05-14T14:33:00.060 に答える