This One Room Mac OS
This One Room Mac OS
Empty the Trash. One simple way on how to make room on Mac is to simply empty the Trash on your device. When you delete files, they are sent to the Trash so you have the option to restore them later in case you changed your mind. You can completely remove these files to free up space by emptying the Trash. 8 Devices — Control up to 8 devices, 1 room, 1 home: $6.99/3 months 24 Devices – Control up to 24 devices, 5 rooms, 1 home: $49.99/year Unlimited Devices – Control unlimited devices, rooms, and homes: $69.99/year Unlimited Perpetual: A non-subscription option for perpetual control of unlimited devices for the life of this app: $149.99.
Originally Published: 2018-08-17
NOTE: This guide was updated on 2020-07-30 to recommend using CUDA 10.1 and Xcode 10.1 versions. The Homebrew formula was also updated on 2019-11-06 to AliceVision 2.2.0 to support Meshroom 2019.2.0.
AliceVision and its Meshroom program are an exciting new free and open-source pipeline for photogrammetry processing. Unfortunately, compiling and using either of these programs on Mac OS X is not exactly straightforward. As a result, I’ve compiled a Homebrew tap which includes the necessary formulae, and will use this post to outline how to use them to get up and running. Note that this is intended as a first step for Mac users wishing to experiment with and improve the AliceVision/Meshroom software, and as a result these instructions may become outdated with time.
System Requirements
First off, your Mac will currently need an nVidia GPU with a CUDA compute capability of 2.0 or greater. This is probably a pretty small portion of all Macs sold, but you can check your GPU by looking in “About This Mac” from the Apple icon in the top left corner of the screen, under “Graphics”. If you have an nVidia GPU listed there, you can check its compute capability on the nVidia CUDA GPUs page.
Second, you’re going to need to install CUDA Toolkit 10.1, which is only officially compatible with OS X 10.13 (High Sierra), so you may also need to upgrade to the latest version of High Sierra (but not Mojave!) if you haven’t already. If you’ve already upgraded to Mojave or later, your only option is to install and boot from High Sierra on a separate disk. Alongside this I would also suggest installing the latest nVida CUDA GPU webdriver, which as of this writing is 387.10.10.10.40.135. Note that there is a CUDA Toolkit 10.2 release for Mac OS, but according to the documentation it’s only compatible with OS X 10.13.6 (High Sierra), while it’s also only compatible with Xcode 10.2, which is only compatible with OS X 10.14.3 (Mojave) or later. I’m not sure what the status of this is or if/how CUDA 10.2 works on High Sierra with Xcode 10.2 somehow force-installed on High Sierra.
Third, CUDA 10.1 is only compatible with the version of clang
distributed with Xcode 10.1, and will refuse to compile against anything else. You may have an older or newer version of Xcode installed. As of this writing, if you fully update Xcode within a fully updated OS X install, you’ll have Xcode 10.1. To get back to Xcode 10.1, what you can do is go to Apple’s Developer Downloads page (for which you’ll need a free Apple developer account), then search for “Xcode 10.1”, then install the Command Line Tools for Xcode 10.1 package for your OS version. After installing, run sudo xcode-select --switch /Library/Developer/CommandLineTools
and then verify that clang --version
shows Apple LLVM version 10.0.0
. You can also see this page for instructions on how to switch between multiple versions of Xcode.
Once you’ve done all this, you can verify a working CUDA install by going to /Developer/NVIDIA/CUDA-10.1/samples/1_Utilities/deviceQuery
and running sudo make && ./deviceQuery
, which should output your GPU information. If it doesn’t build correctly (i.e. you see nvcc fatal : The version ('??.?') of the host compiler ('Apple clang') is not supported
), or deviceQuery
errors or doesn’t list your GPU, you may need to look over the steps above and check that everything is up to date (you can also check the CUDA panel in System Preferences).
There will be no more CUDA support for Mac OS after 10.13 High Sierra. There are no new CUDA Toolkit releases which support building CUDA code on Mac OS. Please see this issue on the AliceVision issue tracker if you would like to track the progress of AliceVision enabling builds which do not depend on CUDA.
The following instructions also assume a working Homebrew install.
Installation
If you’ve followed all the above setup instructions and requirements, installing the AliceVision libraries/framework should be as easy as:
Meshroom Installation & Usage
I haven’t yet created a Homebrew formula for the Meshroom package itself, as it’s all Python and doesn’t seem particularly difficult to install/use once AliceVision is installed and working correctly. Just follow the install instructions there (for my specific Python configuration/installation I used pip3
instead of pip
and python3
instead of python
):
One gotcha I ran into is that the CUDA-linked AliceVision binaries invoked by Meshroom don’t automatically find the CUDA libraries on the DYLD_LIBRARY_PATH
, and setting the DYLD_LIBRARY_PATH
from the shell launching Meshroom doesn’t seem to get the variable passed into the shell environment Meshroom uses to spawn commands. Without this, you’ll get an error like:
In order to get around this, you can symlink the CUDA libraries into /usr/local/lib
(most of the other workarounds I found for permanently modifying the DYLD_LIBRARY_PATH
seemed more confusing or fragile than this simpler approach):1
You can undo/uninstall this with:
You may also want to download the voctree dataset:
Then launch with:
This One Room Mac Os Catalina
Import some photos, click “Start”, wait a while, and hopefully you should end up with a reconstructed and textured mesh (here’s an example of my own which I uploaded to SketchFab). By default, the output will be in MeshroomCache/Texturing/
(relative to where you saved the project file).
This One Room Mac Os X
Footnotes:
This One Room Mac Os Download
Previously, I suggested modifying
meshroom/core/desc.py
so that the return value at the end of thebuildCommandLine
method instead reads:
This One Room Mac OS