Meshroom Download Mac

Posted on

Most of macOS workstations do not have any NVIDIA graphic boards, hence they cannot run CUDA, for MVS part.So compiling and using Meshroom isnot exactly straightforward.However, Ryan Baumann has compiled his ownHomebrew tap which includesthe necessary formulae, and you can use this post to get an idea of how to usethem to get up and running. Note that this is intended as a first stepfor Mac users wishing to experiment with and improve theAliceVision/Meshroom software, and as a result these instructions maybecome outdated with time.

System Requirements¶

Meshroom is a free, open-source 3D Reconstruction Software based on the AliceVision Photogrammetric Computer Vision framework. Learn more details about the pipeline on AliceVision website. See results of the pipeline on sketchfab. Continuous integration: Windows. Download meshroom windows, meshroom windows, meshroom windows download gratis. Alternatives to Meshroom for Windows, Linux, Mac, Web, Software as a Service (SaaS) and more. Filter by license to discover only free or Open Source alternatives. This list contains a total of 17 apps similar to Meshroom. List updated: 6/25/2020 1:06:00 PM. System Requirements¶. First off, your Mac will currently need some NVIDIA GPU with a CUDA compute capability of 2.0 or greater. This is probably a pretty small portion of all Macs available, but you can check your GPU by looking in “About This Mac” from the Apple. Download the latest version of Meshroom for Windows. Opinions about Meshroom. There are opinions about Meshroom yet.

First off, your Mac will currently need some NVIDIA GPU with a CUDAcompute capability of 2.0 or greater. This is probably a pretty smallportion of all Macs available, but you can check your GPU by looking in“About This Mac” from the Apple icon in the top left corner of thescreen, under “Graphics”. If you have an NVIDIA GPU listed there, youcan check its compute capability on the NVIDIA CUDA GPUspage.

Second, you’re going to need to install the latest CUDAtoolkit. As of thiswriting, that’s CUDA 10.1, which is only officially compatible with OS X10.13 (High Sierra), so you may also need to upgrade to the latestversion of High Sierra (but not Mojave!) if you haven’t already.Alongside this it is aloso suggested to instal the latest NVIDIA CUDA GPUwebdriver, which as of this writing is387.10.10.10.40.118.

Third, CUDA 10.1 is only compatible with the version of ``clang`distributed with Xcode10.1 <https://docs.nvidia.com/cuda/cuda-installation-guide-mac-os-x/index.html>`__,and will refuse to compile against anything else. You may have an olderor newer version of Xcode installed. As of this writing, if you fullyupdate Xcode within a fully updated OS X install, you’ll have Xcode10.1. To get back to Xcode 10.1, what you can do is go to Apple’sDeveloper 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 packagefor your OS version. After installing, runsudoxcode-select--switch/Library/Developer/CommandLineTools andthen verify that clang--version showsAppleLLVMversion10.0.0.

Once you’ve done all this, you can verify a working CUDA install bygoing to /Developer/NVIDIA/CUDA-10.1/samples/1_Utilities/deviceQueryand running sudomake&&./deviceQuery, which should output your GPUinformation. If it doesn’t build correctly (i.e. you seenvccfatal:Theversion('??.?')ofthehostcompiler('Appleclang')isnotsupported),or deviceQuery errors or doesn’t list your GPU, you may need to lookover the steps above and check that everything is up to date (you canalso check the CUDA panel in System Preferences).

The following instructions also assume a workingHomebrew install.

macOS Installation¶

If you’ve followed all the above setup instructions and requirements,installing the AliceVision libraries/framework should be as easy as:

Meshroom Alternatives

Meshroom Installation & Usage¶

This tutorial does not provide a Homebrew formulae for the Meshroom packageitself, as it’s all Pythonand doesn’t seem particularly difficult to install/use once AliceVisionis installed and working correctly. Just follow the install instructionsthere (for my specific Python configuration/installation I used pip3instead of pip and python3 instead of python):

Note

Meshroom Download MacMeshroom 2019 download free, software

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 forpermanently modifying the DYLD_LIBRARY_PATH seemed more confusing orfragile than this simplerapproach):1

You can undo/uninstall this with:

You may also want to download the voctree dataset:

Then launch with:

Import some photos, click “Start”, wait a while, and hopefully youshould end up with a reconstructed and textured mesh (here’s an exampleof my own which I uploaded to SketchFab). Bydefault, the output will be in MeshroomCache/Texturing/ (relative towhere you saved the project file).

By default, the output will be in MeshroomCache/Texturing/(relative to where you saved the project file).

When you launch Meshroomwithoutsudo, the temp path will be something like this:

When starting with sudo, it will be /tmp/MeshroomCache by default

Footnotes:¶

  1. Previously, I suggested modifying meshroom/core/desc.py so thatthe return value at the end of the ``buildCommandLine`method <https://github.com/alicevision/meshroom/blob/develop/meshroom/core/desc.py#L368>`__instead reads:

    ` <https://ryanfb.github.io/etc/2018/08/17/alicevision_and_meshroom_on_mac_os_x.html#fnref:dyldpath>`__

Originally published on 2018-08-17 by RyanBaumann

This guide was updated on 2019-03-20 to reflect the latest CUDA 10.1 andXcode 10.1 versions. The Homebrew formula was also updated toAliceVision 2.1.0 to support Meshroom 2019.1.0.

Modified for the Meshroom documentation 2019-07-25

Mac

Baumann, Ryan. “AliceVision and Meshroom on Mac OS X.” Ryan Baumann -/etc (blog), 17 Aug 2018,https://ryanfb.github.io/etc/2018/08/17/alicevisionandmeshroomonmacosx.html(accessed 25 Jul 2019).

How to turn your smartphone photos into 3d digital models

One of our current projects with artist, Nisha Duggal, involves stitching together point clouds of interior spaces to create an ‘impossible architecture’. These interiors represent individual spaces and experiences of lockdown. While LiDAR scanners are able to produce high resolution point clouds, their cost is prohibitive for non-specialist users. We wanted to find a way to create point clouds from smartphone camera images to lower barriers to participating in the project. There are a few free photogrammetry options available (e.g. MeshRoom), but most of them are based on CUDA, and therefore require a NVIDIA GeForce graphics card. To make things more complicated, we’re using a 2019 MacBook Pro with an AMD Radeon 5500M GPU, running Mac OS Catalina.

Here, we share our workflow for transforming batches of photos into 3d models using a Mac.

You will need: a subject (e.g. a desk space, or bookcase), a digital camera or smartphone, a Mac with minimum 4GB RAM (larger point clouds require 8GB RAM) and an OpenGL capable graphics card.

Meshroom Download Mac

This workflow uses the following freely accessible applications: Regard3d, MeshLab, and Unity.

Taking the photos

This is probably the most important step in the whole process. Photogrammetry software works by detecting matching points across multiple images. The camera metadata is then used to calculate and plot the location of those points in three dimensional (x,y,z) space. You need a good set of images with enough matches to create a point cloud.

When choosing your subject, be aware large expanses of blank space (e.g. white walls) won’t generate matches. Likewise, transparent objects and moving subjects are unlikely to be picked up. You need a static, well-lit, visually busy or cluttered space, e.g. a work space or bookshelves.

Aim for around 50-80 photos of your subject from different positions, heights and angles. More images are generally better, but too many makes the matching process exponentially slower.

Make sure that each of your photos has at least 50% overlap with other images in the set.

Making the point cloud

Install and open Regard3d: https://www.regard3d.org/index.php/download

Create a new project and click to ‘Add Picture Set…’

When you upload your photos, the metadata will fill in to the columns on the right. Check this is complete before hitting OK. If your camera is not already in the database, then you may see ‘N/A’ in the sensor width column. In that case, you will need to find out and add the relevant information manually (see how to do this in the notes below).

Once the picture set has been added, click on ‘Compute matches’. For decent results with the quickest processing times, use the settings pictured below. For faster processing, slide both sliders to the left. For better matching after running an initial test, select Classic A-KAZE and set the sliders to the right.

Meshroom 2019 download free, software

The next step is to triangulate the matches. With Matches 0 selected in the top left window, hit the ‘Triangulation’ button. Finding the right settings for your project may involve a bit of trial and error. If Incremental Structure from Motion doesn’t yield good results, then manually selecting the initial pair of photos using Old Incrememental Structure from Motion can sometimes work better. For a good starting pair, look for images with a high number of matches taken from different angles. Global Structure from Motion processes matches across the entire batch of photos, but this option will only be available if all images in the set have been taken using the same camera with the same focal length.

You should now be able to see points on the screen, but they may be sparse and unrecognisable, so the final task in Regard3d is to densify the point cloud. Make sure Triangulation 0 is selected and click on ‘Create dense pointcloud’. Again, there are three different tools available, of which we’ve found either MVE (Goesele et al.) or SMVS (Langguth et al.) to produce the best results with smaller photo sets. CMVS (Furukawa) tends to disregard large numbers of pictures, so is better suited to larger scale projects.

Regard3d gives you the option to create a surface mesh by connecting the points, but for this project, we want to work directly with the cloud. The final step is to ‘Export point cloud’, which saves the selected ‘Densification’ model as a .ply.

Cleaning up the Cloud

Install and open MeshLab: https://www.meshlab.net/#download

MeshLab is a tool for combining, aligning, simplifying and converting point clouds and 3d models for use in a variety of applications, such as 3d printing. There are excellent tutorials for these various features available on the MeshLab site.

For this project, we are looking to delete any unnecessary points and export the point cloud as a binary .ply so that it can be imported into the Unity game engine.

Go to File > Import Mesh, and find the .ply file that you created in Regard3d.

To select points, use the selection tool. If you make a mistake with the selection, there’s no need to deselect. Just click and drag again to make a new selection.

When you are ready, click on the delete button to erase the selected points.

Mushroom Download Mac Installer

You can click back through your steps in the top right window. When saving, ensure that you have selected the correct version, then go to File > Export Mesh, and check the option for ‘Binary encoding’.

Importing your point cloud into Unity

Unity is a powerful engine for creating 2d and 3d games and immersive environments. It enables you to build an environment using readymade objects, imported as ‘assets’, and to control their physical properties, environment (e.g. lighting conditions) and the user’s experience (e.g. navigation control). There are a range of licenses available, including a free license for personal use.

To download the Unity hub and find out more about subscription options, go here: https://unity3d.com/get-unity/download

We are using Unity version 2019.4.

Meshroom Photogrammetry Download

Meshroom alternatives

Once set up, you will need to create a new 3d project. Unity does not automatically recognise .ply files, but keijiro wrote the following unity package to import and visualise point clouds using a binary .ply file format:

Download Meshroom For Mac

Follow the instructions to install the package, then click to unpack within Unity. You should now be able to drag your model into the project assets window to start creating your own impossiblearchitecture!

NOTES:

Mushroom Download Mac Download

Updating the User Camera database in Regard3d

Meshroom 3d

If your sensor width doesn’t appear automatically when you import your photo set, you will need to add the information manually. If you go to Options > Edit User Camera DB, the database opens in Regard3d. However, we weren’t able to add the data as expected. If you encounter the same issue, then you may need to locate the .db file in the Regard folder (hit Command+Shift+Dot to reveal hidden folders in Mac OS), and edit it using a database tool such as DataGrip.

It should be relatively easy to find the sensor width for most dslr cameras online. If you are using a smartphone and have trouble locating that information, another option is to install the DevCheck app (iOS/android). The sensor information should be listed under the ‘Camera’ tab.