空撮画像技術と3次元リアルタイムデータの可視化について
- 11. 1.v-SLAM (visual SLAM) : リアルタイムで単眼カメラの動画
データから自己位置推定と環境地図を作成する技術。今回使ったのは
LSD-SLAM。他にはORB-SLAMやSVO、PTAM等がある。これ系の技
術は大体はPTAMを親として派生した技術。
また、 LiDAR等の高価なセンサを使用せずとも安価なカメラで点群
データを得られる。最近は精度も良い。
取得したデータはどう加工するの?-1
https://www.youtube.com/watch?v=Gnu
QzP3gty4
LSD-SLAM ORB-SLAM SVO PTAM
https://www.youtube.com/watch?t=142&
v=Y9HMn6bd-v8
https://www.youtube.com/watch?v=2YnIMfw6
bJY
https://www.youtube.com/watch?v=
8DISRmsO2YQ
- 24. 1.Google EarthのWEB版も最初考えたが、そもそも現時点で最新の
Chromeで動作しないので候補から外れた。
2. Google Earth等の商用アプリは基底部分をいじれないので、欲しい機能
を自前で実装できないため、オープンソースであるのは必須要件だった。
Cesiumは基底部分はもとより、UIも大幅に変更可能なのもかなりポイント高
い。
3.WebGLに対応したブラウザであれば端末を選ばない。
4.ドローンからのデータを扱う上で、サーバからリアルタイムで大量のデー
タを扱うにはブラウザ上でWebSocketやWebRTC等のHTML5技術と親和性が
高いものが良かった。
5.KMLやGeoJSON等馴染み深いデータソースをそのまま使えるため、過去
の資産を活かしやすい。
なぜCesium?-1
- 41. ①任意のフォルダに画像、スクリプトファイル(下記参照)、画像同士の組み合わせを記載したXMLファイル、プロジェクションを記載したXMLファイルなどを入れる。
②Micmacには様々なツールが入っている。
各ツールを実行するスクリプトを書く。
【例】UAS_test.sh
-----------------------------------------------
#!/bin/sh
BIN_DIR=$1
CHANT_DIR=$2
${BIN_DIR}mm3d OriConvert OriTxtInFile GPS_WPK_Grand-Leez.csv Nav-Brut-RTL ChSys=DegreeWGS84@SysCoRTL.xml MTD1=1
NameCple=FileImagesNeighbour.xml CalcV=1 ImC=R0040536.JPG NbImC=25
${BIN_DIR}mm3d Tapioca File FileImagesNeighbour.xml -1
${BIN_DIR}mm3d Tapas RadialBasic
"R0040536.JPG|R0040537.JPG|R0040535.JPG|R0040578.JPG|R0040498.JPG|R0040499.JPG|R0040579.JPG|R0040538.JPG|R0040577.JPG|R0040534.JPG|R0040497.JP
G|R0040500.JPG|R0040580.JPG|R0040456.JPG|R0040616.JPG|R0040576.JPG|R0040496.JPG|R0040617.JPG|R0040455.JPG|R0040457.JPG|R0040615.JPG|R0040539.J
PG|R0040501.JPG|R0040581.JPG|R0040533.JPG" Out=Sample4Calib-Rel
${BIN_DIR}mm3d AperiCloud
"R0040536.JPG|R0040537.JPG|R0040535.JPG|R0040578.JPG|R0040498.JPG|R0040499.JPG|R0040579.JPG|R0040538.JPG|R0040577.JPG|R0040534.JPG|R0040497.JP
G|R0040500.JPG|R0040580.JPG|R0040456.JPG|R0040616.JPG|R0040576.JPG|R0040496.JPG|R0040617.JPG|R0040455.JPG|R0040457.JPG|R0040615.JPG|R0040539.J
PG|R0040501.JPG|R0040581.JPG|R0040533.JPG" Sample4Calib-Rel Out=Sample4Calib-Rel.ply
${BIN_DIR}mm3d Tapas RadialBasic "R.*.JPG" Out=All-Rel InCal=Sample4Calib-Rel
${BIN_DIR}mm3d CenterBascule "R.*.JPG" All-Rel Nav-Brut-RTL tmp CalcV=1
${BIN_DIR}mm3d OriConvert OriTxtInFile GPS_WPK_Grand-Leez.csv Nav-adjusted-RTL ChSys=DegreeWGS84@SysCoRTL.xml MTD1=1 Delay=-0.0854304
${BIN_DIR}mm3d CenterBascule "R.*.JPG" All-Rel Nav-adjusted-RTL All-RTL
${BIN_DIR}mm3d ChgSysCo "R.*JPG" All-RTL SysCoRTL.xml@SysCoBL72_EPSG31370.xml All-BL72
${BIN_DIR}mm3d AperiCloud "R.*.JPG" All-BL72 Out=All-BL72-cam.ply WithPoints=0
${BIN_DIR}mm3d Malt Ortho "R.*JPG" All-BL72 DirMEC=MEC DefCor=0 AffineLast=1 Regul=0.005 HrOr=0 LrOr=0 ZoomF=1
${BIN_DIR}mm3d to8Bits MEC/Z_Num8_DeZoom1_STD-MALT.tif
${BIN_DIR}mm3d Nuage2Ply "MEC/NuageImProf_STD-MALT_Etape_8.xml" Scale=8 Attr="MEC/Z_Num8_DeZoom1_STD-MALT_8Bits.tif" Out=CanopySurfaceModel.ply
-----------------------------------------------
③スクリプトを実行
./UAS_test.sh micmac/bin
※感想:PDFのマニュアルが約350ページもあり心が折れた。
参考:SfMで作ったものをCesiumで
表示するには?- Micmac編