Mac OS -də Pulsuz Fotoqrammetriya: Fotoşəkillərdən 3D Modellərə: 5 Addım
Mac OS -də Pulsuz Fotoqrammetriya: Fotoşəkillərdən 3D Modellərə: 5 Addım
Anonim
Mac OS -də Pulsuz Fotoqrammetriya: Fotolardan 3D Modellərə qədər
Mac OS -də Pulsuz Fotoqrammetriya: Fotolardan 3D Modellərə qədər

Fotoqrammetriya, obyektlər arasındakı məsafəni ölçmək üçün şəkillərin/fotoqrafiyanın istifadəsidir (Webster sayəsində). Ancaq müasir məqsədlər üçün tez -tez 3D Skanerə ehtiyac olmadan real dünyadan bir şeylərin 3D modelini hazırlamaq üçün istifadə olunur.

Bəzi böyük pulsuz seçimlər də daxil olmaqla fotogrametriya üçün istifadə edə biləcəyiniz bir çox proqram var, amma bir çoxlarının (məsələn, Meshroom kimi) Mac quruluşlarının olmadığını gördüm. Və ya CUDA dəstəyi olan bir qrafik kartı tələb edərdilər (Macbook kimi şeylərlə tipik deyil). Deməli, bu, bir az ətrafı qazmaq demək idi.

Nəhayət bu əla məqaləyə rast gəldim:

Bu, sonradan qurma skriptinə səbəb olur:

İşləməyim bir müddət çəkdi, amma işə başladıqdan sonra əldə etməyə başladığım nəticələrdən çox məmnun oldum. Beləliklə, xüsusən oradakı Mac istifadəçiləri üçün addımları bir az daha pozacağam.

Addım 1: COLMAP əldə edin

COLMAP (https://colmap.github.io/install.html) fotogrametriyə başlamaq üçün gözəl, kiçik bir pulsuz vasitədir. Əvvəlcə özüm sınadım, amma sonrakı addımların bəziləri CUDA tələb etdi. Buna görə yenidən axtarmağa başlamalı oldum. Bu səbəbdən sonrakı addımlar üçün başqa proqramlardan istifadə edəcəyik.

COLMAP yükləmək asandır. Təlimatları buradan izləyə bilərsiniz:

Və ya github səhifələrində ən son versiyaya baxa bilərsiniz: https://github.com/colmap/colmap/releases və ən son COLMAP-dev-mac-no-cuda.zip yükləyin

Zipi yüklədikdən sonra açın və COLMAP tətbiqini tətbiqlər qovluğuna yapışdırın.

Addım 2: OpenMVS əldə edin və yaradın

3d modellərin qurulmasını başa çatdırmaq üçün istifadə etdiyim növbəti proqram OpenMVS -dir (https://cdcseacave.github.io/openMVS/). Bunu maşınınızda qurmalı olacaqsınız, buna görə də bunu mümkün qədər ağrısız etməyə çalışacağam.

Mac -da OpenMVS əldə etmək və qurmaq üçün təlimatların linki burada:

amma biraz dəyişməli oldum. İşdə etdiyim budur:

  • App Store -dan Xcode yükləyin

    Xcode açın və lisenziyanı qəbul edin

  • Hələ yoxdursa Homebrew qurun:
  • GIT quraşdırın:
  • CMake quraşdırın:
  • Bir terminal açın və aşağıdakı ssenarini yerinə yetirin. OpenMVS -in yaşamasını istədiyiniz bir yerdən etdiyinizə əmin olun (əsas istifadəçimin altında 'Layihələr' qovluğum var):

#Install dependenciesbrew yeniləmə dəmini yükləyin eigen opencv cgal ceres-solver main_path = `pwd` #VCGLib (Tələb olunur) git klonu https://github.com/cdcseacave/VCG.git vcglib #OpenMVS mənbələrini əldə etmək: git klonu https:/ /github.com/cdcseacave/openMVS.git #OpenMVS qurun openMVS_build & cd openMVS_build cmake yaradın…/openMVS -DCMAKE_BUILD_TYPE = Release -DVCG_ROOT = "$ main_path/vcglib" -G "Xcode"

xcodebuild -konfiqurasiya buraxılışı

Addım 3: Photogrammetry Script yaradın

Daha sonra buradan olan bir ssenari yaratdım:

Sona çatdığım şey budur (bəzi yerləri təyin etməyinizi tələb etdiyi üçün ssenaridəki qeydlərə diqqət yetirin):

Fotoqrammetriya.sh

# Bu parametrlər kompüterə xasdır # Cari Directory saxla: CurrDir = $ PWD

# qovluq adını dəyişən kimi əldə edin

myfolder = $ {PWD ##*/}

# Colmap kataloqunu təyin edin (bunu colmap yüklədiyiniz yerə dəyişdirin, lazım olduqda 'dev' versiyasını versiya nömrəsi ilə əvəz edin):

colDir =/Applications/COLMAP.app/Contents/MacOS/colmap

# OpenMVS qovluğunu qurun (bunu OpenMVS yüklədiyiniz və qurduğunuz 'bin/Release' qovluğuna dəyişdirin)

oMVS =/İstifadəçilər/joecooning/Layihələr/openMVS_build/bin/Release

# İş Kataloqu qurun (məlumatları emal etmək üçün 'Layihələr' qovluğumda müvəqqəti bir iş sahəsi qovluğu yaradıram)

workDir =/Users/joecooning/Projects/3dscans/workspace/$ myfolder/

mkdir $ workDir

cp *-j.webp

$ colDir xüsusiyyət_extractor --database_path database.db --image_path.

$ colDir completive_matcher --database_path database.db mkdir seyr $ colDir mapper --database_path database.db --image_path. --output_path seyrək $ colDir model_converter --input_path seyrək/0 --output_path model.nvm --output_type NVM $ oMVS/InterfaceVisualSFM model.nvm $ oMVS/DensifyPointCloud model.mvs $ oMVS/RecMenSur_MesModelleri/ReconstructMesh qətnamə səviyyəsi 1 model_dense_mesh.mvs $ oMVS/TextureMesh-ixrac tipli obj -o $ myfolder.obj model_dense_mesh_refine.mvs

mkdir $ CurrDir/model/

cp *.obj $ CurrDir/model/cp *.mtl $ CurrDir/model/cp *Kd-j.webp

cd $ CurrDir

Addım 4: Ssenarini işə salın

Ssenariyə sahib olduğunuz üçün, 3d model etmək istədiyiniz bir obyektin fotoşəkillərini çəkə bilərsiniz. Fotoqrammetriya üçün fotoşəkil çəkməyin ən yaxşı yolları haqqında sizə böyük məsləhətlər verə biləcək başqa məqalələr və videolar var (məsələn: https://www.tested.com/art/makers/460142-art- Şəkil…).

Amma o fotoşəkilləri bir qovluğa, skriptinizi qovluğa kopyalayın.

Terminaldan fotoşəkillərin və skriptin olduğu qovluğa gedin və işləyin:

sh Photogrammetry.sh

Ssenari sonra qalan işləri sizin üçün edəcək. Unutmayın ki, bunun işlənməsi çox vaxt çəkə bilər (xüsusən də çoxlu yüksək keyfiyyətli fotoşəkillərdən istifadə edirsinizsə). Əvvəlcə bir neçə kiçik foto dəsti sınamağı təklif edərdim. Bəzi sadə, nümunə foto dəstləri burada tapa bilərsiniz: (https://www.regard3d.org/index.php/demo-models)

Tövsiyə: