3D Insider is ad supported and earns money from clicks and other ways.
Free Photogrammetry on Mac OS: From Photos to 3D Models Step 1: Get COLMAP. COLMAP ( is a nice, little free tool for getting started with. Step 2: Get and Build OpenMVS. The next program that I use to help finish building the. Check out the best 3D scanner app options for Android and iPhone. They're fun, accessible, and require no extra hardware!
DJI has just released the Mavic Air 2. See all of the specs here.
Aerial mapping is one of the fastest rising commercial applications of drone technology. Drones allow mapping professionals to survey large areas at a fraction of the time, cost, and effort that it would take for more old-fashioned methods, such as ground-based surveying.
There are a few technologies that drone mapping professionals use to transform data collected by drones into fully realized maps and models. The most basic of these methods is photogrammetry. What is photogrammetry is why is it so widely used? In this article, we take a look at the best paid and free software platforms that you could use to help you get started with drone-based mapping using photogrammetry.
What is photogrammetry and what are its benefits?
Photogrammetry is a method by which a series of overlapping images are stitched together to generate a 3D model. This works in the same way that our eyes perceive depth – by combining separate images, we can deduce the physical dimensions of features and objects within our view.
In drone-based mapping using photogrammetry, drones capture several overlapping images of a survey as areas it flies above. Depending on the size of the survey area, a drone could capture up to several hundred aerial images. This process is typically automated and aided by special survey planning software. All a drone pilot needs to do is to define the survey area or the flight path for the drone, and the drone will carry out the survey on its own.
Each aerial image that a drone captures is “geotagged” or associated to a specific point along a geodetic coordinate system. This is made possible by a drone’s onboard GPS module. The geotags of each image are instrumental in the stitching phase, where shots of each feature taken from different perspectives need to be matched with each other. This can be a very resource-demanding process depending on how many images were captured in the survey and the resolution of the images.
The main advantage of photogrammetry is that it doesn’t require any sophisticated technology. In fact, most camera drones available today are already equipped with the necessary components to carry out a photogrammetry survey. At a minimum, a drone only needs to have a high-resolution camera and GPS capabilities. While it’s possible to enhance the quality of a photogrammetry survey with add-ons such as an RTK module and a ground station, these aren’t strictly required.
Naturally, drones designed for photogrammetry surveys are also cheaper. Some drones cost less than $2000, such as the DJI Mavic 2 Pro and the DJI Phantom 4 Pro, that are already well-equipped to do photogrammetry surveys. On the other hands, sensors for LiDAR mapping can easily cost more than five times this amount.
PART 107 Made Easy
- 161 Question and Answer Study Guide
- 105 pages of illustrated content
- Covers all parts of the Part 107 test
- $97 of value for free
Things to look for in choosing photogrammetry software
1. End-to-end solutions
Some photogrammetry software packages offer capabilities that will help you not just in processing the data you’ve collected from the field, but also in planning and executing the survey. This is typically done by packaging the software with a mobile app counterpart.
Using the mobile app, you can direct your drone to survey a prescribed area or fly along a pre-determined flight path. The mobile app also takes care of real-time data collection.
Working within a single software platform ensures that you don’t encounter issues with data incompatibility. After all, the last thing you’d want to happen is to find out that your data isn’t compatible with your data processing software.
2. Cloud-based processing
Photogrammetry processing software needs to work with a large number of high-resolution images. This could take several hours to finish if you do it on a standard desktop PC or laptop. To bypass the usual hardware limitations, some photogrammetry software take advantage of the concept of cloud-based processing.
In this method, aerial photos taken from the field are uploaded to a cloud-based server and are processed remotely. The computers used for processing these images are much more powerful compared to the usual ones found in homes and offices. Processed data, whether it be in the form of orthomosaic maps, 3D models, or point clouds, are then relayed back to the user.
Camera uploadsWhen you plug your mobile device into your computer after updating to macOS 10.15, you’ll see a notification that says “’Dropbox’ would like to access files on a removable volume.”Clicking OK ensures Dropbox uploads photos from your mobile device automatically. NotificationsAfter updating your device to macOS Catalina, you’ll see a notification that says “Dropbox Would Like to Send You Notifications”.Clicking Allow ensures you’ll stay up-to-date on all of your file activity.You can change your notification preferences at any time by opening System Preferences and clicking Notifications. Screenshots and screen recordingsAfter taking your first screenshot or screen recording on macOS Catalina, you may see a notification that says “’Dropbox’ would like to access files in your Desktop folder.”Clicking OK allows all of your screenshots and screen recordings to automatically save to a Dropbox folder called Screenshots. Dropbox app not opening on mac. If you recently upgraded to the latest version of macOS, and you have the Dropbox desktop app installed on your computer, we recommend you for the best experience.
This innovation has made photogrammetry accessible to more people, even those who don’t have high-end and sophisticated computers. If you want your photogrammetry projects to be finished as quickly as possible, we recommend looking for software that offer cloud-based data processing.
3. Ease of use
What’s the point of a sophisticated, feature-rich software platform if you can’t figure out how to use it? Not all drone mapping professionals are software experts, and they won’t always have time to learn about some complicated software. Some software developers have proven that it’s possible to design a software that is beginner-friendly but does not compromise on technical capabilities
The top 3 best PAID photogrammetry software
![Photogrammetry App For Mac Photogrammetry App For Mac](/uploads/1/3/4/1/134125637/837629705.gif)
1. Pix4D
Pix4D is so widely used and has been so deeply ingrained into the practices of many professional drone mapping communities that modern mapping drones and sensors are being designed specifically to be compatible with it. The development team behind Pix4D has more than a decade of experience in the industry. During that time, they have augmented their original software with specialized modules and a wider scope of compatibility with popular drone brand names such as eBee and DJI.
For photogrammetry, the module you would be interested in Pix4DMapper. It offers cloud-based processing and exports the output in a variety of formats including point clouds, 3D textured mesh, or orthomosaic maps. Pix4DMapper doesn’t just work with RGB images. It is a comprehensive photogrammetry software which can also be used to process thermal images, multispectral images, and 360-degree camera images.
Pix4D also has its own drone flight planning app, called Pix4DCapture. This mobile app is compatible with a wide range of drones. Through the app, you can easily define the flight plan and parameters of your survey, including the flight altitude of your drone and the degree of image overlap you are targeting. The app even allows you to check the quality of the aerial images that your drone has your capture while you’re still on-site, which avoids tedious and bothersome rework. Pix4DCapture automatically uploads aerial images to a cloud server where they’re immediately available for processing.
Ease-of-use isn’t exactly the strong suit of the Pix4D platform, as indicated by feedback from many of its users. However, in terms of quality and reliability, it’s pretty hard to find a comparable alternative.
2. DroneDeploy
If you’re looking for photogrammetry software that is more designed for entry-level drone mapping, then DroneDeploy is probably your best bet. With an intuitive interface and a basic set of features, DroneDeploy is probably one of the easiest to learn out of all photogrammetry software available today. It has been developed with a focus on compatibility with DJI drones but has also started to work with other popular drone brands.
DroneDeploy has both a flight planning mobile app and a data processing platform. The flight planning app can be used to capture aerial photos, videos, panoramas, and images to be used specifically for mapping. You can use the app to quickly establish survey areas, collaborate with your team through shared maps, make area and volume measurements, and save flight parameters for repeat missions.
The data processing app runs on the cloud, creating maps and models from the aerial images captured by your drone. You can also add features to the app by downloading 3rd party apps from DroneDeploy’s marketplace. These apps, such as Birds.ai and EZ3D, have specialized functions that complement the capability of DroneDeploy’s data processing platform. You can even get insurance for your flight mission directly from the DroneDeploy app.
With more focus on accessibility, DroneDeploy is something we can highly recommend for beginners to photogrammetry. If you’re still unsure about making this investment, the good news is that you can take a 30-day free trial.
Free Photogrammetry App
3. Agisoft Metashape
AgiSoft Metashape is an all-around photogrammetry software that can process not just aerial images for mapping but also close-range images. It has been used for GIS applications, game development, and visual effects. As it’s a software made for photogrammetry processing, it does not come with any flight planning app.
If you can look beyond the lack of flight planning capabilities, you will see that AgiSoft offers some of the best photogrammetry processing features. It can work with images captured by fisheye cameras, multispectral cameras, and thermal cameras. It also offers a wide range of output files including point clouds, 3D models, orthomosaic maps, and digital elevation models.
Another nice feature of AgiSoft is that you can write custom Python scripts for batch processing of large projects. This is a great time-saving feature when you need to process the same parameters for several data sets. Of course, all this data processing is done on the cloud, leveraging the combined power of multiple network nodes to processing of a large amount of data.
One thing you need to know about AgiSoft is that it clearly looks like it wasn’t designed for beginners. This software takes some getting used to, even for users who have had experience in drone mapping. If you feel that you can get over this learning curve, and if the absence of a flight planning app is not a big deal for you, then the AgiSoft software platform should be worth your consideration.
The top 3 best FREE photogrammetry software
1. COLMAP
COLMAP is an open source software that you can download for free from GitHub. You can choose to either download the source code or executable files for Windows, Mac, or Linux OS. Much like any other photogrammetry software, COLMAP is capable of reconstructing 3D models from a series of images captured by single or multiple camera setups.
COLMAP does have one major limitation, though. Although it can do image alignment and construct a 3D mesh out the images, you cannot play around with the 3D mesh using COLMAP. To do that, you’ll have to turn to other software such as openMVS, another open source program that can be downloaded from GitHub.
Since COLMAP is a free open source software, it does not have a fancy GUI like most other pad software do. Instead, you’ll be doing most of your work by entering directions on a command line. This could be a huge turn-off for beginners, especially for those with no coding experience. You can check out COLMAP’s detailed tutorial on their website and give it a spin to see if it will appeal to you. The software is free, anyway, so there’s no reason why you shouldn’t at least give it a try.
2. WebODM
WebODM, another free open source software, was developed by OpenDroneMap and has been around since 2017. Thanks to a community of developers, WebODM has been updated so many times since then and is now one of the most feature-rich open source mapping software out there. The source code can be downloaded for free from GitHub, although this means you’ll have to install it manually. If this sounds like something you don’t want to bother with, then you can also download an auto-installer. There’s a catch, though – the installer isn’t free.
Looking beyond this little hiccup, WebODM is actually one of the most powerful open source mapping software. It’s capable of all the usual features such georeferencing of ground control points, volume and area calculations, and the generation of point clouds, 3D models, orthomosaics, and digital elevation models. The modeling parameters of WebODM are highly configurable, which means you might have to play around with them before you can get a good model out of your data.
As with COLMAP, WebODM isn’t’ exactly beginner-friendly. While it’s possible to get the same quality of the model in WebODM as you’ll get in Pix4D or DroneDeploy, it typically takes a lot of time adjusting the modeling parameters to get a satisfactory result. The principle of ‘you get what you pay for’ applies here – you may save cash in terms of the acquisition of software, but you’re likely to spend an equivalent amount of time learning the software and getting good results out of it.
3. MeshRoom
MeshRoom, which was developed on the AliceVision framework, is another – SURPRISE – open source software. However, this one was designed to be a bit more user-friendly, a feature which not come unnoticed. First off, you don’t need to download the source code and compile it yourself. Mac app multi desktop. You can download binaries of MeshRoom for free. With installation taken care of, you can easily move on to using the software for processing your data.
In contrast to other open source photogrammetry software, MeshRoom has a nice, easy to understand graphical interface. You can drag source images to your workspace, adjust modeling parameters, and see a progress bar representing the modeling process. The generated 3D model shows up in the same workspace. This streamlined workflow makes it much easier to tweak your settings and see how they affect the quality of your model.
Another feature that makes MeshRoom easy to use is the ability to customize your workflow by simply adding pre-defined nodes to it. Each of these nodes have pre-programmed functions which you can also customize to your needs.
Photogrammetry 3d Scanner
The downside of using a software with a nice GUI like MeshRoom when processing aerial images from a drone survey is that the whole modeling process is going to be really slow. If you have hundreds of aerial images, you can expect to wait several hours for your model to finish. This depends on your hardware, of course. However, just be ready to stand back and do more productive stuff while your model is being constructed.
Final thoughts
In drone mapping, having the right drone is only the first half of the equation that leads to success. Once you’ve gathered all the geotagged aerial images from the field, you’ll need to have a good photogrammetry processing software to create your model. The good news is that there are a lot of them available out there. The bad news is that the best ones are usually pretty expensive.
While there are both paid and free solutions, just keep in mind that settling for a free software will always come with its disadvantages. You very rarely get the same quality of models in free software as you would get from paid software. If you manage to do it, it would probably be through many hours of figuring out the best modeling parameters for your data.
Open source software certainly has its appeal, though. If you’re into coding and you like tinkering with 3D modeling parameters, then you might get a kick out of using open source software. If that doesn’t sound like your thing, there’s no shame in choosing the paid software alternative.
Have you ever wished that you could easily transfer a real object into a digital file? The technology is here, but most of us simply do not have access to high-end 3D scanners that can reconstruct the digital geometry of a physical model. Not to mention that some objects can be way too big for any traditional 3D scanner. However, there is another, much cheaper way to create 3D models corresponding to real-world objects.
What is photogrammetry?
Photogrammetry(or SFM – Structure From Motion) is a process that estimates the three-dimensional coordinates of surface points using pictures of a single physical object taken from different angles. At least that’s the oversimplified one-line explanation. You take a bunch of pictures of the object from all possible directions, then you use these photos as an input for a specialized software. This software will look for features that are visible in multiple pictures and try to guess from which point was the picture taken. Knowing the camera positions and orientations, it creates a 3D point that corresponds to the 2D feature on the photo (basically a pixel). Ideally, you’d get a finished 3D mesh as an output. But often it might be better to process the reconstructed points into a mesh manually for much better results.
Software
The list of available photogrammetry software is pretty long. The problem is that most of the programs are either very expensive or limited in features in the free version. Some programs even offer cloud-based computation, which is handy, but further increases the cost.
We tried to pick the best free software:
- Colmap (Win/Mac/Linux) – will be used in this article
- 3DF Zephyr (Win) – Free with the limitation of max 50 photos
- Visual SFM (Win/Mac/Linux)
We will also need some kind of software for post-processing of the output data. The choice is pretty easy here – Meshlab.
The computation is fairly demanding on the hardware. Running it on an old laptop might not be feasible as the computation times would get extremely long. Many applications also depend on the NVIDIA CUDA interface (Colmap), which does not run on AMD graphics cards.
The computation is fairly demanding on the hardware. Running it on an old laptop might not be feasible as the computation times would get extremely long. Many applications also depend on the NVIDIA CUDA interface (Colmap), which does not run on AMD graphics cards.
Taking pictures for photogrammetry
Obviously, you’ll need a camera. A smartphone camera will work just fine, but if you have a DSLR, it’s even better. If you’ll be using DSLR, crank the aperture to at least 7-8 to increase sharpness and to avoid shallow depth of field.
You’ll want to capture at least 20 pictures. During our testing, we often shot 50-80 pictures to capture every detail. Keep in mind, that some pictures might get discarded if the program doesn’t find enough similarities with other pictures.
- Move around the target object in circles. Do not move the object or its surroundings between pictures.
- Overlap! You want to have each part of the model captured by at least 2 pictures. Ideally, you’d have about 60-80% overlap in succeeding pictures.
- Avoid hard shadows, use diffuse lighting or take the pictures outside on a semi-cloudy day.
- The object should make a significant portion of each image.
- Avoid moving targets (e.g. pets, unless they are sleeping).
- Avoid very glossy or transparent targets. (More on this later)
Ideal targets for photogrammetry are textured or rough items (statues). If it’s an option, you can cover glossy or transparent objects with powder (flour) to avoid reflections. Or cover the glossy surface with a painters tape.
Advanced users can also capture a video of the target and then convert it into individual frames. In this case, keep the shutter speed high (e.g. 1/80) to avoid blurry frames.
Reconstructing geometry from photos
We suggest creating a folder that will hold all the files for a single reconstruction. Inside that folder create another folder called “Photos” and place all your pictures here. Quickly go through the photos and delete any blurry ones. We’ll be using Colmap on Windows 10 for the reconstruction.
- Launch Colmap using Colmap.bat
- From the top menu choose Reconstruction – Automatic reconstruction
- Set the Workspace folder, this folder will be used for storing reconstruction calculations and the output mesh
- Create another directory next to the Photos folder for this purpose
- Set the Image folder the Photos folder containing all your pictures
- You can leave the Vocabulary tree empty, alternatively, you can download and use one from this download page
- Keep the Data type as Individual images or change it to Video frames if you created the pictures from video
- Change the quality to Medium
- You can try High quality, but in our experience, Colmap crashes very often with this setting
- Leave other settings with default values and hit Run
- This process may take anywhere from 5 minutes to seemingly eternity depending on the number of photos and specs of your PC
When Colmap finishes the reconstruction, you’ll be presented with a reconstructed view of the scene and estimated positions of the camera.
Colmap set-up and finished view of the reconstructed scene
Colmap output
As an output Colmap creates 2 files that we’re interested in, fused.ply and meshed.ply. You’ll find them in a subfolder in the workspace folder you created before (Workspace folder/dense/0/). Meshed.ply is, as the name suggests, an already triangulated mesh. Colmap isn’t the greatest at creating meshes from the tracked data, but if you want to save yourself some work, the mesh is definitely usable. PLY can be easily converted to STL in Meshmixer or Meshlab, for example. However, it’s not a good idea to try printing this mesh directly. All meshes created by 3D scanning or photogrammetry usually contain a lot of errors and lack the flat base that could be easily placed on the print bed. Follow our guide on repairing corrupted 3D models andcutting models to learn how to fix these problems. Also, keep in mind that the scale of the scanned object will be pretty much random, so adjust it accordingly.
The second file is the more interesting one. The fused.ply file contains a so-called point cloud. It’s just a set of points in space, no triangles and therefore no mesh. We’ll have to create the mesh ourselves, it’s an extra work, but the result is usually much better.
Creating mesh from point cloud data
- Open Meshlab, Select File – Import Mesh and choose the fused.ply file
- You’ll be presented with the captured scene made from 3D points
- Pick the Select vertexes tool from the main toolbar (top) and use it to select all points you wish to delete
- The tool works as a box selection, hold down the left mouse button to create a selection
- You can hold Ctrl to add more vertexes to already selected ones
- Click on the Delete vertices button in the main toolbar. Selected vertices will disappear
- Repeat steps 3-4 until you’re left with just the points you want to use for creating the mesh of the scanned object
- Select Filters – Remeshing, Simplification and Reconstruction – Screened Poisson Surface Reconstruction
- The Reconstruction Depth has a major effect on the final result. Values between 13-15 usually look the best and take a reasonable time to compute
- Other settings usually work best at default values, but feel free to experiment with them
- Hit Apply to create a Mesh
- The edges of your model will usually end as a weird shape or even curl up and create a huge blob.
- Similarly to selecting and deleting vertices, you can do the same with triangles using the Select in triangular region and Delete faces tools from the main toolbar
- Select File – Export Mesh
- If you want to be able to share the scan in digital form with the texture, use formats such as PLY, 3DS or OBJ
- For 3D printing pick STL
Tips for improving your reconstructed model
Here are some more tips to get rid of some imperfections and to improve your reconstructed model in Meshlab:
![Open Open](/uploads/1/3/4/1/134125637/773783562.jpg)
- Smooth your model from the menu Filters – Smoothing, Fairing and Deformation – Laplacian Smooth
- Try increasing the Smoothing steps value to 8-15
- You can repeat this process as many times as you like, however smoothing your model too much will get rid of valuable detail
- To get rid of extra faces often generated by reconstruction, you can choose Filters – Selection – Select Faces with edges longer than…
- Tick preview
- Change the Edge threshold value so the vast majority of the faces you want to delete are selected, but all faces you want to keep are still unselected
- If your model has a huge number of vertices and faces, it can be hard to work with, not to mention slicing, which would take forever. Decrease their amount using Filters – Smoothing, Fairing and Deformation – Quadric Edge Collapse Decimation
- Set the desired number of faces
- Anything above 1 million faces is definitely overkill. Even 100k faces are usually more than enough
Examples
Statues
Statues are perfect for photogrammetry. Their surface is rough, unable to cast any reflections. There are lots of details and features to be tracked by the software. Statues are usually too big for traditional 3D scanners not to mention the inconvenience of carrying a 3D scanner outside and trying to set it up there. But with photogrammetry it’s easy, just grab your camera and start taking pictures. However, as they are usually placed outside, there are a few things to keep in mind. Try to avoid having moving targets in your picture. If there are people walking by, let them pass and in the meantime take pictures from the directions where people are not visible. If possible, wait for a cloud to block the sun, so that there are no hard shadows.
The Sitting Woman statue by Václav Bejček from 1967, the reconstructed 3D model (check the 3D view on Sketchfab), and the printed version
Baby Groot
Scanning a 3D print might seem stupid, using the original STL file is obviously much better. But it’s a good benchmark of this technique, we can easily compare the reconstructed model to the original STL used for print. Another legit reason to use photogrammetry to digitize 3D print is if you hand painted it and want to share the model with the hand painted texture.
As you can see in the 3D view below, in terms of geometry, there is an obvious loss of quality. That said, most of the features were successfully reconstructed and with a couple of small touch-ups, the model would look pretty good. And the texture is a nice touch as well.
Press I and select Matcap to hide the texture and compare just the geometry of the models
Ping Pong Paddle – dealing with glossy surfaces
Reconstructing a ping pong paddle was pretty easy with one exception. The two big surfaces (the ones that hit the ball) have no details to be recognized by the software and to make matters worse, they are glossy. As the camera circles around the paddle, the glossy surface changes in appearance and reflects surrounding light sources. This results in barely any points being reconstructed on this surface. This will ultimately lead to incorrect mesh shape. To prevent this from happening, some detail has to be added to these surfaces. That can be easily done with for example painters tape.Stick a few stripes of it over glossy surfaces to avoid reflections and create a matte textured look. In the 3D view, you can see the difference this quick hack made.
Glass – transparent surfaces
Similarly to glossy surfaces, transparent objects are a problem. Sharp edges may be captured by the photogrammetry software, but smooth transparent areas will be completely ignored, which will lead to incomplete data for mesh reconstruction. Again, you can use painters tape to cover these surfaces. Alternatively, you can use water dissolvable colors with a sprayer and dirty up the glass.
Conclusion
Meshes created by photogrammetry can easily outperform cheap 3D scanners. You can recreate huge objects that would be nearly impossible to capture with traditional 3D scanning tools. It’s extremely affordable and chances are that you already have everything you need for photogrammetry – a camera (smartphone) and somewhat powerful PC. And it doesn’t have to end with reconstructing a statue. Do you own a drone? Take a few pictures, reconstruct, and print your house. So…
Is photogrammetry a viable 3D scanning tool? Definitely YES. Should you print reconstructed models without any touch-ups? Probably not.
Photogrammetry Software Open Source
Just like any other 3D scanning technique, the final mesh won’t be perfect. Some areas might be missing details, flat surfaces may not turn out completely flat, the mesh may contain holes, non-manifold edges or other errors. However, if you’re able to fix these problems, the final result will be well worth the time.
Sources
Schonberger, Johannes Lutz and Frahm, Jan-Michael, Structure-from-Motion Revisited. University of North Carolina at Chapel Hill, Eidgenossische Technische Hochschule Zurich.
All3DP – Autodesk 123D Catch Review