Innholdsfortegnelse:

Gratis fotogrammetri på Mac OS: Fra bilder til 3D -modeller: 5 trinn
Gratis fotogrammetri på Mac OS: Fra bilder til 3D -modeller: 5 trinn

Video: Gratis fotogrammetri på Mac OS: Fra bilder til 3D -modeller: 5 trinn

Video: Gratis fotogrammetri på Mac OS: Fra bilder til 3D -modeller: 5 trinn
Video: Как сделать 3D эффект на фото 2024, November
Anonim
Gratis fotogrammetri på Mac OS: Fra bilder til 3D -modeller
Gratis fotogrammetri på Mac OS: Fra bilder til 3D -modeller

Fotogrammetri er bruk av bilder/fotografering for å måle avstander mellom objekter (takk Webster). Men for moderne formål brukes den ofte til å lage en 3D -modell av noe fra den virkelige verden uten å trenge en 3D -skanner.

Det er rikelig med programvare der ute som du kan bruke til fotogrammetri, inkludert noen gode gratisalternativer, men jeg la merke til at mange (for eksempel Meshroom) ikke hadde Mac -versjoner tilgjengelig. Eller de vil kreve et grafikkort med CUDA -støtte (ikke typisk for ting som en Macbook). Så det betydde litt å grave rundt.

Jeg snublet endelig over denne utmerkede artikkelen:

Dette førte til et oppfølgingsbyggeskript:

Det tok meg en stund å få det til å fungere, men når jeg først fikk det til, var jeg ganske fornøyd med resultatene jeg begynte å få. Så jeg skal bryte ned trinnene litt mer, spesielt for dere Mac -brukere der ute.

Trinn 1: Få COLMAP

COLMAP (https://colmap.github.io/install.html) er et fint, lite gratis verktøy for å komme i gang med fotogrammetri. Jeg prøvde det på egen hånd først, men noen av de senere trinnene krevde CUDA. Så jeg måtte begynne å lete igjen. Derfor vil vi bruke annen programvare for de senere trinnene.

Det er enkelt å laste ned COLMAP. Du kan følge instruksjonene her:

Eller du kan se på den siste versjonen på github-siden deres: https://github.com/colmap/colmap/releases og laste ned den nyeste COLMAP-dev-mac-no-cuda.zip

Når du har lastet ned zip -filen, pakker du den ut og holder COLMAP -appen i mappen Programmer.

Trinn 2: Få og bygg OpenMVS

Det neste programmet jeg bruker for å fullføre byggingen av 3d -modellene er OpenMVS (https://cdcseacave.github.io/openMVS/). Du må bygge dette på maskinen din, så jeg skal prøve å gjøre dette så smertefritt som mulig.

Lenken til instruksjonene for å få og bygge OpenMVS på en Mac er her:

men jeg måtte endre litt. Her er hva jeg gjorde:

  • Last ned Xcode fra App Store

    Åpne Xcode og godta lisensen

  • Installer Homebrew hvis du ikke allerede har det:
  • Installer GIT:
  • Installer CMake:
  • Åpne en terminal og kjør følgende skript. Sørg for at du gjør det fra et sted hvor du vil at openMVS skal bo (jeg har en 'Prosjekter' -mappe under hovedbrukeren):

#Install avhengigheter bryg oppdatering bryg installer boost eigen opencv cgal ceres-solver main_path = `pwd` #VCGLib (påkrevd) git klon https://github.com/cdcseacave/VCG.git vcglib #Få OpenMVS kilder: git klon https:/ /github.com/cdcseacave/openMVS.git #Build OpenMVS mkdir openMVS_build && cd openMVS_build cmake…/openMVS -DCMAKE_BUILD_TYPE = Utgivelse -DVCG_ROOT = "$ main_path/vcglib" -G "Xcode"

xcodebuild -konfigurasjonsutgivelse

Trinn 3: Lag et fotogrammetri -skript

Jeg opprettet deretter et skript basert på det herfra:

Her er det jeg endte opp med (vær oppmerksom på notatene i manuset, siden det krever at du angir noen steder):

Fotogrammetri.sh

# Disse parametrene er spesifikke for datamaskinen # Lagre nåværende katalog: currDir = $ PWD

# få mappenavn som variabel

min mappe = $ {PWD ##*/}

# Angi colmap -katalog (endre dette til der du har lastet ned colmap, erstatt 'dev' med versjonsnummer om nødvendig):

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

# Angi openMVS -katalogen (endre dette til mappen 'bin/Release' der du har lastet ned og bygget openMVS)

oMVS =/Users/joecooning/Projects/openMVS_build/bin/Release

# Angi Working Directory (jeg oppretter en midlertidig arbeidsområdet -mappe i min 'Projects' katalog for å behandle data i)

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

mkdir $ workDir

cp *-j.webp

$ colDir feature_extractor --database_path database.db --image_path.

$ colDir exhaustive_matcher --database_path database.db mkdir sparsom $ colDir mapper --database_path database.db -image_path. --output_path sparse $ colDir model_converter --input_path sparse/0 --output_path model.nvm --output_type NVM $ oMVS/InterfaceVisualSFM model.nvm $ oMVS/DensifyPointCloud model.mvs $ oMVS/ReconstructMesh model_dense.mvs $ oMSine oppløsningsnivå 1 model_dense_mesh.mvs $ oMVS/TextureMesh-eksport-type 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

Trinn 4: Kjør skriptet

Nå som du har skriptet, kan du ta bilder av et objekt du vil lage en 3D -modell av. Det er andre artikler og videoer der ute som kan gi deg gode råd om hvordan du best tar bilder med fotogrammetri (for eksempel denne: https://www.tested.com/art/makers/460142-art- bilde …).

Men disse bildene til en mappe, kopier skriptet du lagde til mappen.

Fra terminalen din, gå til mappen der bildene og skriptet er og kjør:

sh Fotogrammetri.sh

Manuset vil deretter gjøre resten av arbeidet for deg. Vær oppmerksom på at dette kan ta ganske lang tid å behandle (spesielt hvis du bruker mange høyoppløselige bilder). Jeg vil foreslå å prøve noen mindre bildesett først. Noen enkle eksempler på bildesett finner du her: (https://www.regard3d.org/index.php/demo-models)

Anbefalt: