Mac OS'de Ücretsiz Fotogrametri: Fotoğraflardan 3D Modellere: 5 Adım
Mac OS'de Ücretsiz Fotogrametri: Fotoğraflardan 3D Modellere: 5 Adım
Anonim
Mac OS'de Ücretsiz Fotogrametri: Fotoğraflardan 3D Modellere
Mac OS'de Ücretsiz Fotogrametri: Fotoğraflardan 3D Modellere

Fotogrametri, nesneler arasındaki mesafeleri ölçmek için görüntülerin/fotoğrafçılığın kullanılmasıdır (teşekkürler Webster). Ancak modern amaçlar için, genellikle bir 3D Tarayıcıya ihtiyaç duymadan gerçek dünyadan bir şeyin 3D modelini yapmak için kullanılır.

Bazı harika ücretsiz seçenekler de dahil olmak üzere, fotogrametri için kullanabileceğiniz çok sayıda yazılım var, ancak birçoğunun (Meshroom gibi) Mac sürümlerine sahip olmadığını fark ettim. Veya CUDA destekli bir grafik kartına ihtiyaç duyarlar (Macbook gibi şeyler için tipik değildir). Yani bu biraz kazmak anlamına geliyordu.

Sonunda bu mükemmel makaleye rastladım:

Bu, bir takip oluşturma komut dosyasına yol açar:

Çalışması biraz zaman aldı, ancak bir kez kullanmaya başladığımda, almaya başladığım sonuçlardan oldukça memnun kaldım. Bu yüzden, özellikle siz Mac kullanıcıları için, adımları biraz daha parçalayacağım.

1. Adım: COLMAP'i edinin

COLMAP (https://colmap.github.io/install.html), fotogrametriye başlamak için güzel, küçük ücretsiz bir araçtır. İlk başta tek başına denedim, ancak sonraki adımlardan bazıları CUDA gerektiriyordu. Bu yüzden tekrar aramaya başlamak zorunda kaldım. Bu nedenle sonraki adımlar için başka yazılımlar kullanacağız.

COLMAP'i indirmek kolaydır. Talimatları buradan takip edebilirsiniz:

Veya github sayfasındaki en son sürüme bakabilirsiniz: https://github.com/colmap/colmap/releases ve en son COLMAP-dev-mac-no-cuda.zip dosyasını indirebilirsiniz.

Zip'i indirdikten sonra, sıkıştırmasını açın ve COLMAP uygulamasını Uygulamalar klasörünüze yapıştırın.

2. Adım: OpenMVS'yi Alın ve Oluşturun

3d modelleri oluşturmayı bitirmeye yardımcı olmak için kullandığım bir sonraki program OpenMVS'dir (https://cdcseacave.github.io/openMVS/). Bunu makinenize kurmanız gerekecek, bu yüzden bunu mümkün olduğunca acısız hale getirmeye çalışacağım.

Mac'te OpenMVS alma ve oluşturma talimatlarının bağlantısı burada:

ama biraz değişiklik yapmak zorunda kaldım. İşte yaptığım şey:

  • App Store'dan Xcode'u indirin

    Xcode'u açın ve lisansı kabul edin

  • Henüz sahip değilseniz Homebrew'u kurun:
  • GIT'i yükleyin:
  • CMake'i yükleyin:
  • Bir terminal açın ve aşağıdaki betiği çalıştırın. OpenMVS'nin yaşamasını istediğiniz bir yerden yaptığınızdan emin olun (ana kullanıcımın altında bir 'Projeler' klasörüm var):

#Install bağımlılıklarbrew güncellemesi brew install boost eigen opencv cgal ceres-solver main_path=`pwd` #VCGLib (Gerekli) git klon https://github.com/cdcseacave/VCG.git vcglib #OpenMVS kaynaklarını alma: git klon https:// /github.com/cdcseacave/openMVS.git #Build OpenMVS mkdir openMVS_build && cd openMVS_build cmake…/openMVS -DCMAKE_BUILD_TYPE=Yayın -DVCG_ROOT="$main_path/vcglib" -G "Xcode"

xcodebuild -yapılandırma Sürümü

3. Adım: Bir Fotogrametri Komut Dosyası Oluşturun

Daha sonra buradan birine dayalı bir komut dosyası oluşturdum:

İşte sonunda elde ettiğim şey (bazı konumları ayarlamanızı gerektirdiği için komut dosyasındaki notlara dikkat edin):

fotogrametri.sh

# Bu parametreler bilgisayara özeldir # Geçerli Dizini depola: currDir=$PWD

# klasör adını değişken olarak al

klasörüm=${PWD##*/}

# colmap dizinini ayarlayın (bunu colmap'i indirdiğiniz yere değiştirin, gerekirse 'dev' yerine sürüm numarası yazın):

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

# openMVS dizinini ayarlayın (bunu openMVS'yi indirip oluşturduğunuz 'bin/Release' klasörüne değiştirin)

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

# Çalışma Dizini Ayarla ('Projeler' dizinimde verileri işlemek için geçici bir çalışma alanı klasörü oluşturuyorum)

workDir=/Kullanıcılar/joecooning/Projeler/3dscans/çalışma alanı/$klasörüm/

mkdir $workDir

cp *-j.webp

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

$colDir kapsamlı_eşleştirici --database_path database.db mkdir seyrek $colDir eşleyici --database_path database.db --image_path. --output_path seyrek $colDir model_converter --input_path seyrek/0 --output_path model.nvm --output_type NVM $oMVS/InterfaceVisualSFM model.nvm $oMVS/DensifyPointCloud model.mvs $oMVS/ReconstructMesh model_denseMV/ReconstructMesh model_dense.mvs $o çözünürlük düzeyi 1 model_dense_mesh.mvs $oMVS/TextureMesh --dışa aktarma türü nesne -o $klasörüm.obj model_dense_mesh_refine.mvs

mkdir $currDir/model/

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

cd $currDir

4. Adım: Komut Dosyasını Çalıştırın

Artık komut dosyasına sahip olduğunuza göre, 3 boyutlu modelini yapmak istediğiniz bir nesnenin fotoğraflarını çekebilirsiniz. Fotogrametri amacıyla en iyi nasıl fotoğraf çekeceğiniz konusunda size harika tavsiyeler verebilecek başka makaleler ve videolar da var (bunun gibi: https://www.tested.com/art/makers/460142-art- Fotoğraf…).

Ama o fotoğrafları bir klasöre, o klasöre yaptığınız scripti kopyalayın.

Terminalinizden, fotoğrafların ve komut dosyasının bulunduğu klasöre gidin ve çalıştırın:

sh Fotogrametri.sh

Komut dosyası daha sonra işin geri kalanını sizin için yapacak. Lütfen bunun işlenmesinin biraz zaman alabileceğini unutmayın (özellikle çok sayıda yüksek çözünürlüklü fotoğraf kullanıyorsanız). Önce daha küçük fotoğraf setlerini denemenizi öneririm. Bazı basit örnek fotoğraf setlerini burada bulabilirsiniz: (https://www.regard3d.org/index.php/demo-models)

Adım 5: Modelinizi Kontrol Edin

Önerilen: