It seems 3D printers have been around for ages and still we don’t have a good solution for turning physical 3D objects into digital ones. Yes, 3D scanners exist, but the OpenScan is the best 3D scanner we’ve seen. It’s a 3D printed device meant to take pictures of an object that can then be used by photogrammetry software to construct a point cloud. From there, it’s just a matter of messing with meshes to create a 3D printed copy of anything you want.
The latest version of the scanner is an improvement over the previous version that kind of, sort of looked like the Machine from Contact. This was a gigantic hubless ring, with a smartphone attached to the rim. Put an object in the center, and the phone would rotate around the object in every axis, snapping pictures the entire time. Needless to say, a simpler design prevailed. That doesn’t mean the old version didn’t look awesome. The electronics are simply an Arduino clone, two stepper drivers, a character display for control and some headers for connections and power supplies. This is pretty normal stuff for the RepRap crew.
Running this machine is as simple as putting an object in the device and taking a few pictures. There is some support for remotely controlling some cameras, but everything is universal if you have a remote shutter release. This can be plugged into the electronics, and once everything is done you have a few dozen pictures of an object with optimal lighting conditions that can be thrown into your photogrammetry software of choice. (Ed note: at least one that doesn’t rely on the object remaining stationary with respect to the background to estimate camera position.)
Not long ago, photogrammetry — the process of stitching multiple photographs taken from different angles into a 3D whole — was hard stuff. Nowadays, it’s easy. [Mikolas Zuza] over at Prusa Printers, has a guide showing off cutting edge open-source software that’s not only more powerful, but also easier to use. They’ve also produced a video, which we’ve embedded below.
Basically, this is a guide to using Meshroom, which is based on the AliceVision photogrammetry framework. AliceVision is a research platform, so it’s got tremendous capability but doesn’t necessarily focus on the user experience. Enter Meshroom, which makes that power accessible.
Meshroom does all sorts of cool tricks, like showing you how the 3D reconstruction looks as you add more images to the dataset, so that you’ll know where to take the next photo to fill in incomplete patches. It can also reconstruct from video, say if you just walked around the object with a camera running.
The final render is computationally intensive, but AliceVision makes good use of a CUDA on Nvidia graphics cards, so you can cut your overnight renders down to a few hours if you’ve got the right hardware. But even if you have to wait for the results, they’re truly impressive. And best of all, you can get started building up your 3D model library using nothing more than that phone in your pocket.
If you want to know how to use the models that come out of photogrammetry, check out [Eric Strebel]’s video. And if all of this high-tech software foolery is too much for you, try a milk-based 3D scanner.
In its most basic sense, photogrammetry refers to taking measurements from photographs. In the sense being discussed here, it more precisely refers to the method of creating a 3D model from a series of photographs of a physical object. By taking appropriate images of an object, and feeding them through the right software, it’s possible to create a digital representation of the object without requiring any special hardware other than a camera.
[Eric] shares several tips and tricks for getting good results. Surface preparation is key, with the aim being to create a flat finish to avoid reflections causing problems. A grey primer is first sprayed on the object, followed by a dusting of black spots, which helps the software identify the object’s contours. Camera settings are also important, with wide apertures used to create a shallow depth-of-field that helps the object stand out from the background.
With the proper object preparation and camera technique taken care of, the hard work is done. All that’s then required is to feed the photos through the relevant software. [Eric] favors Agisoft Metashape, though there are a variety of packages that offer this functionality.
Despite being over 25 years old, the original DOOM is still a favorite among gamers and hackers alike. For years now, running the 1993 demonic shooter has been a critical milestone when hacking or reverse engineering a piece of gear, and at this point we’ve seen it run on everything from voting machines to cameras.
But this time around, DOOM isn’t actually running on the device being hacked. Instead, the Roomba 980 that [Rich Whitehouse] has doing his bidding is being used to generate new DOOM levels based on the maps it makes of rooms while going about its business. To be fair they’re pretty simplistic maps, and most of us don’t live in a home quite palatial enough to even fill out shareware trial of id Software’s classic, but it’s still a neat trick.
For those who might not be up to date with the latest and greatest in the world of robotic helpers, newer model Roomba vacuums are equipped with a camera and the ability to generate 3D maps of its environment using a technique called Vision Simultaneous Localization and Mapping (VSLAM). Ostensibly this capability is used to create accurate maps of hazards in the cleaning area, but of course it did set off some privacy alarm bells when introduced due to the possibility that scans of users homes could end up being used for nefarious purposes. Roomba manufacturer iRobot swears they aren’t doing anything suspect with the data their robots collect while traveling through the user’s home, but that hasn’t stopped [Rich] from using the technology as a portal to Hell.
Using “DOOMBA”, the user is able to download the mapping data off of their Roomba 980 (it might work on other models, but hasn’t been tested yet) over the local network and import it into Noesis, a 3D model viewing program developed by [Rich]. The imported map is essentially just a 2D diagram of the home’s floor plan, which on its own wouldn’t make for a terribly interesting DOOM level, so the software will take the liberty of seeding it with weapons, baddies, and all the other varied delights of the netherworld. The user can fiddle around with these settings to try and fine-tune their homespun hellscape, or just let “DOOMBA” randomize it all so they can get on with the ripping and tearing.
Digitizing an object usually means firing up a CAD program and keeping the calipers handy, or using a 3D scanner to create a point cloud representing an object’s surfaces. [Dzl] took an entirely different approach with his DIY manual 3D digitizer, a laser-cut and 3D printed assembly that uses rotary encoders to create a turntable with an articulated “probe arm” attached.
Each joint of the arm is also an encoder, and by reading the encoder values and applying a bit of trigonometry, the relative position of the arm’s tip can be known at all times. Manually moving the tip of the arm from point to point on an object therefore creates measurements of that object. [Dzl] successfully created a prototype to test the idea, and the project files are available on GitHub.
You think you like RGB LEDs? Columbus, OH art professor [Matthew Mohr] has more blinkenlove than you! His airport– convention-center-scale installation piece is an incredible 850,000 RGB LEDs wrapped around a 14-foot tall face-shaped sculpture that projection-maps participants’ faces onto the display. To capture images, there is also a purpose-built room with even illumination and a slew of Raspberry Pi cameras to take pictures of the person’s face from many angles simultaneously.
Besides looking pretty snazzy, the scale of this is just crazy. For instance, if you figure that the usual strip of 60 WS2812s can draw just about 9.6 watts full on, that scales up to 136 kW(!) for the big head. And getting the control signals right? Forgeddaboutit. Prof. [Mohr], if you’re out there, leave us some details in the comments.
(Edit: He did! And his website is back up after being DOSed. And they’re custom LEDs that are even brighter to compete with daylight in the space.)
[adam] is a caver, meaning that he likes to explore caves and map their inner structure. This is still commonly done using traditional tools, such as notebooks (the paper ones), tape measure, compasses, and inclinometers. [adam] wanted to upgrade his equipment, but found that industrial LiDAR 3D scanners are quite expensive. His Hackaday Prize entry, the Open LIDAR, is an affordable alternative to the expensive industrial 3D scanning solutions out there.
LiDAR — Light Detection And Ranging — is the technology that senses the distance between a sensor and an object by reflectively measuring the time of flight of a light beam between the two. By acquiring a two-dimensional array of multiple distance readings, this can be used for 3D scanning. Looking at how the industrial LiDAR scanners capture the environment using fast spinning mirrors, [adam] realized that he could basically achieve the same by using a cheap laser range finder strapped to a pan and tilt gimbal.
The gimbal he designed for this task uses stepper motors to aim an SF30-B laser rangefinder. An Arduino controls the movement and lets the eye of the sensor scan an object or an entire environment. By sampling the distance readings returned by the sensor, a point cloud is created which then can be converted into a 3D model. [adam] plans to drive the stepper motors in microstepping mode to increase the resolution of his scanner. We’re looking forwards to see the first renderings of 3D cave maps captured with the Open LIDAR.