Metascanの出力からテキストファイルを得る how to get a point cloud text file from an output from Metascan
はじめに
iPhone 12 ProとMetascan Proを使って,フィールドで3Dスキャンする予定であるが,Extract sections,つまり連続的な断面図を得る必要がある。つまり,点群 point cloudでなければならない。Metascan ProのExportファイルの形式は,Metascan support によれば次のものである。
USDZ is an open standard, supported natively on iOS and macOS.
FBX is a closed format, created by Autodesk and widely supported by 3D software applications and game engines.OBJ is a simple text-based format
which is supported by almost all 3D software. Metascan stores the OBJ file and its JPEG textures in a ZIP file when exported.
glTF is an open standard format for sharing 3D data on the web. Metascan uses the .glb format to embed all data in a single file.PLY is a simple format used for sharing point cloud data.
Metascan stores the 3D position and color data in binary.LAZ is a widely used format for sharing point cloud data
that is georeferenced so can be imported into a GIS system such as QGIS for analysis.
When exporting multiple scans, files are stored in a single ZIP file. Contact us if you’d like to see additional formats supported.
上の説明によれば,point cloudとして使用可能と思われるのは,obj, ply, lazであるが,lazは構造が複雑でpoint情報だけを抽出するのはぼくには難しい。それにCloudCompareで読み込んだ画像はボウボウとしている。plyは,be氏から得たフィールドワークでのplyファイルは出力の方法に拠るだろうが読めなかったが,Metascanのexportで得られたplyファイルはpoint cloudそのものであった。objファイルもpoint cloudの書き出しは簡単であった。つまり,Metascanのexportファイルのうち,plyとobjはExtract sectionsが可能なファイルであった。
千里北公園でiPhone 12 Proで撮影したもののうち,山茶花主宰の下村非文の俳句碑文を次に。丘の上に来て 風は秋 雲は秋。これはobjファイルである。
で,plyファイルは次のよう。pointサイズをdefaultの3倍に拡大しての表示である。Points数は40,404である。
この石碑はMetascan Proの写真モードで2022年3月9日に撮影したものである。Metascanの写真モードでの撮影を一応,実験したものの一つである。LIDARについてはより高い信頼感があったのでLiDAR撮影には関心が薄かった。しかしながら,図2の点群の希薄さは写真モードも原因になっているのではないか,と考えて,本日May 12に,ヴィソラの北隣に位置する千里川右岸の「花咲か公園」のちっちゃな花壇に出かけた。前回に来た時は叔父さんが自転車を寄せて,三脚を立ててその前で空手かなんかのポーズを自撮りしてて,引き上げた。今日はお婆さんが近づいてきて,お握りを広げて花見を始めたので,諦め,コーナンでの買い物,メガネ屋での修理,スタバに入れず隣のタピオカドリンクを買って千里川を眺めたりした帰りに,やっと撮影することができた。その結果をこのページで述べたいと思う。
1 写真モード撮影での点群密度
この章は次のページの続きとも言える。 Metascan写真画像測量モードの利用-2
これまでの撮影経験の中では,最も丁寧に実施した。丁寧に撮影すればするほど,いい3Dスキャン結果が得られる。低い位置や高い位置から3回ほど回って撮影した。この図の手前の階段については意識して撮影した。照明タワーの一部が見えるが,これは撮影の際に邪魔だなあ,って意識で花壇を撮っているつもりであったが,しっかりと撮れている。最上部の照明部分は入っていない。意識して撮影しようと思わなかったからであろう。写真モードは,LiDARモードと違って,撮影したかどうかの表示は全く無いので,かなり計画的に撮影する必要があるのだろう。DB Tree では,verticlesにも表示の✓は入れているが表示に違いは見られない。
この図3を把握してもらって,plyファイルを次に示す。point cloudはかなり希薄である。point数は,12,006点である。丁寧に撮影したからpoint数が増えるわけでも無いようだ。
objファイルではpoint cloudが見えている。図3のDB Treeのobjファイルのサブフォルダを見ると,verticesが独立している。これを選んで保存すると,vertice.binというファイルができる。points数は,17,786となっている。
以上から,points数は,plyファイルが12,006点,objから得たverticesでは17,786点となっており,後者は前者の1.48倍となっている。
2 LiDARモード撮影での点群密度
iPhone 12 ProのLiDARは5mに限定されている。Metascanの指針では,0.5〜3.0mが適性距離だという。ほぼ,そのような意識の上で,撮影した。DB Treeを見ると,mesh群があって,最後にverticesが見える。図6では不要なゴミが見える。スキャンした際にこの点を多少意識して減らせるよう努力したが,不十分だったようである。もう一周すれば良かったと思う。花壇の上の花部分について,花壇内に入って,設置されていた石を踏んで,スキャンしたのであるが。
次の図7には,plyファイルを示している。写真モードの図4とは絵作りで圧倒的な差が見られる。改めて,LiDARモードのパワーを感じた次第である。points数は532,061点。
で,objファイルからvetices.binファイルを作成して,表示したのが図8である。写真モードの図5と比べて欲しい。
LiDARモードでは,plyファイルの点数は532,061点,objファイルからのvertices点数は59, 617点となっている。つまり写真モードとは逆転し,plyがverticesの,8.9倍になっている。つまり,LiDARでは,plyファイルが圧倒的に点群数,つまり点密度が大きくなっている。
おわりに
iPhone 12 ProとMetascan Proの組み合わせでは,LiDARモードでの撮影が,Extract sectionsでの分析には有効であることが改めて理解できた。そして,その結果のexportはplyファイル形式が適している。LiDARが及ばない対象に対しては,写真モードを使用することになるが,Extract sectionsでの分析には,objファイルから抽出したvertices.binファイルを使うことになるということだ。
ply ファイル | objのvertices | |
写真モード | 12,006 | 17,786 |
LiDARモード | 532,061 | 59,617 |
以上,Mar. 12, 2022記。