SPOJE.NET

Technická dokumentace

Uživatelské nástroje

Nástroje pro tento web


howto:multimedia:photogrammetry

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
howto:multimedia:photogrammetry [2018/04/01 01:04] harviehowto:multimedia:photogrammetry [2023/10/09 12:29] (aktuální) harvie
Řádek 1: Řádek 1:
 ====== Photogrammetry 3D scanning on Linux ====== ====== Photogrammetry 3D scanning on Linux ======
 +
 +===== Workflow =====
 +
 +Postup vypadá zhruba takhle:
 +
 +  * Nafocení dostatečnýho množství kvalitních fotek
 +  * Vytvoření sparse point cloudu (= množina záchytnejch bodů, který jsou vyfocený na 3 a víc fotkách)
 +  * Vytvoření dense point cloudu (= množina nezáchytnejch bodů, který jsou odvozený ze záchytnejch)
 +  * Vytvoření meshe (3d modelu) z dense point cloudu (tohle už umí i Meshlab)
 +
 +Jak fotit:
 +
 +  * Každej detail by měl bejt alespoň na 3 fotkách z různejch úhlů
 +  * Fotit ze stejné vzdálenosti s 30-60% překryvem
 +  * Vypnout automatický otáčení fotek (je lepší mít všechny fotky ve stejnym rozlišení)
 +  * Vypnout automatickou expozici, korekci bílý, atd...
 +  * Používat co nejmenší clonu (aby byla co největší hloubka ostrosti)
 +  * Fotit s co největším rozlišením a co nejostřeji
 +  * Ideálně fotit pod mrakem, když je světlo, ale nejsou žádný ostrý stíny
 +  * Lesklý a jednobarevný plochy je potřeba zmatnit a pokrejt vzorama (křídový sprej, gafa, barevný tečky, laserový tečky,...)
 +  * Vyhnout se odleskům
 +  * Pokud jsou na pozadí viditelný featury, tak se scanovanej objekt nesmí vůči pozadí hejbat
 +  * Zapnout ukládání GPS souřadnic do EXIFu (pokud to jde)
 +===== Software =====
 +
 +  * MVE + Meshlab
 +  * Colmap + Meshlab (funguje i na Windows)
 +  * VisualSFM + Meshlab
 +  * OpenMVG?
 +  * bundler+pmvs2?
 +  * e-foto??
 +  * Agisoft PhotoScan (placeny SW, funguje na Linuxu)
 +  * 3df zephyr FREE (jen Windows)
  
  
 ===== Postupy ===== ===== Postupy =====
 +
 +==== ImageMagick ====
 +
 +  * ''mogrify -resize 500000@\> *.jpg'' omezit rozliseni fotek na 0.5 Mpx
  
 ==== Meshlab ==== ==== Meshlab ====
  
-  * Filters -> Remeshing -> Screen Poisson Surface Reconstruction  (prej nema moc smysl depth >15)+Meshlab má spoustu zajímavejch funkcí. Tady jsou vypsaný jen ty úplně nejzákladnější potřebný k sestavení meshe z pointcloudu, rychlý očištění a export: 
 + 
 +  * Filters -> Remeshing -> Screen Poisson Surface Reconstruction  (prej nema moc smysl depth >15, osobne sem pouzival cca 11-12)
   * Filters -> Smoothing, Fairing, Deformation -> Laplacian Smooth   * Filters -> Smoothing, Fairing, Deformation -> Laplacian Smooth
   * Filters -> Remeshing -> Simplification: Quadratic Edge Collapse Decimation (100k faces = 5MB soubor, 200k = 10MB, atd...)   * Filters -> Remeshing -> Simplification: Quadratic Edge Collapse Decimation (100k faces = 5MB soubor, 200k = 10MB, atd...)
 +  * Filters -> Normals, Curvatures & Orientation -> Transform: Translate, Center, Set origin -> Set new origin: Trackball center
 +  * Filters->point set->estimate radius from density
 +    * Filters->selection->conditional vertex selection->(rad > 0.007)
 +    * Delete selected vertices
 +
 +==== Online nastroje ====
 +  * https://www.formware.co/onlinestlrepair  Mesh repair
  
 ==== MVE ==== ==== MVE ====
 <code bash> <code bash>
-makescene -i ./img ./scn +set -x 
-sfmrecon ./scn+renice -n 10 $$ 
 +time ( 
 +makescene -i ./img ./scn #-m 500000 
 +sfmrecon ./scn  #--video-matching=10
 dmrecon -s2 ./scn dmrecon -s2 ./scn
 scene2pset -F2 ./scn ./scn/pset-L2.ply scene2pset -F2 ./scn ./scn/pset-L2.ply
 +#optional:
 fssrecon ./scn/pset-L2.ply ./scn/surface-L2.ply fssrecon ./scn/pset-L2.ply ./scn/surface-L2.ply
 meshclean -t10 ./scn/surface-L2.ply ./scn/surface-L2-clean.ply meshclean -t10 ./scn/surface-L2.ply ./scn/surface-L2-clean.ply
 +)
 </code> </code>
  
Řádek 31: Řádek 82:
 </code> </code>
  
 +==== OpenMVG ====
 +
 +<code bash>
 +#Sequential pro po sobe jdouci fotky z videa, Global pro nenavazujici fotky
 +#SfM_SequentialPipeline.py ./img ./out
 +SfM_GlobalPipeline.py ./img ./out
 +</code>
 +
 +==== OSM-Bundler ====
 +
 +<code bash>
 +python2 ./RunBundler.py --photos=./img
 +python2 ./RunPMVS.py --bundlerOutputPath=./output
 +#python2 ./RunCMVS.py --bundlerOutputPath=./output --ClusterToCompute=10 #pro velky datasety
 +</code>
  
 ==== OpenDroneMap ==== ==== OpenDroneMap ====
howto/multimedia/photogrammetry.1522537482.txt.gz · Poslední úprava: 2018/04/01 01:04 autor: harvie