2022年3月26日土曜日

Cesium で点群表示

点群の共有(Viewer)に Cesium が使えるかも?と思い立ち、テストしてみました。

点群は静岡県のMMSを利用。G空間情報センターに掲載されているデータです。
08OF6123.las 4GB

Cesium で共有するなら 3D tile が軽くて良さそう、ということで QGIS の出番。
レイヤーから点群レイヤーを追加→ Qgis2threejs プラグインでシーンを gltf に保存。
https://plugins.qgis.org/plugins/Qgis2threejs/

ダメでした。
表示拡大率そのままで書き出されるので、拡大した際に点群が詳細になりません。
拡大してから書き出すと、途中で落ちます。QGIS なので重い作業はダメなのでしょう。

あきらめて、Cesium ion で変換。
サーバー側での変換は体感で20分くらいでしょうか(測定していませんでした)。
位置は手合わせですね。緯度・経度ならうまくいくのでしょうか?
https://community.cesium.com/t/point-cloud-georeferencing-cesium-ion/10766
ま、アップロードが必要な時点で仕事では使えそうにないですが。

変換されたタイルを Cesium for Unreal で取り込みましたが、エラー。

[TileContentFactory.cpp:112] No loader registered for tile with content type 'application/octet-stream' and magic value 'pnts'.

まだプラグインでサポートされていないようです。
https://community.cesium.com/t/are-point-clouds-supported/12845/5

では、Cesium で。
npm start してから js に変数部分のコードを張り付けて viewer に add するだけ。と思いきや、表示されません。トークンですね。
Cesium ion にアクセスしてフルコードをGET。 Sandcastle で表示されたアクセストークンを貼り付けたら、表示されました。

 
Cesium ion での LAS の位置合わせ、Cesium での 3D タイルの標高合わせ、点の大きさ変更。この3点は今後修正したいですね。


0 件のコメント:

コメントを投稿