CurvSurf has been flying low on the 3D-tech radar since it was founded in 2013, but that’s about to change. At SPAR 3D 2017, the South Korean company will introduce its FindSurface SDK, an algorithm that will help us overcome one of the few remaining barriers to the use of 3D data: processing a point cloud into information we can exploit.
The FindSurface SDK performs real-time, human-like recognition of 3D objects in point clouds. It works with point clouds generated by any device—from a terrestrial scanner to a consumer tablet with a 3D camera.
Here’s how it works and what it can do.
Thinking like a Human
VP of business operations Sung-Ho Moon explains that The FindSurface SDK works a lot like the human brain. First, it reads the point cloud directly to pick out geometric “primitives” like boxes, planes, spheres, cylinders, cones, tori, and surfaces of revolution. After that, it calculates each object’s dimensional information—including position, orientation, size, radius, volume, and more.
FindSurface automatically extracts geometric primitives from noisy point clouds.
This approach is worth noting, because it accounts for the high accuracy of the FindSurface SDK. Most object recognition algorithms work in the opposite direction—detecting the edge of the object and then estimating its shape. Since the edges of an object in a point cloud are not a straight line (“in most cases, points are scattered along the line,” Moon says), these alternate methods often cut off parts of the object when they’re estimating its edges. This leads to less accurate measurements than CurvSurf’s methods.
As CurvSurf has tested the FindSurface SDK, they’ve been able to improve the accuracy of existing solutions—even consumer scanning tablets. When they tested the algorithm on data from the Intel RealSense 3D camera, they were able to improve the accuracy of that device from 10-15mm+ to 1mm.
“For consumer-level 3D devices,” Moon says, we could improve the performance up to 10 times or more. For industrial devices, we could improve it up to 2 time of current device specifications.”
Real-Time Applications for AR Devices
FindSurface is also fast. For one, it doesn’t use intermediary processing steps like meshing. It also requires much less power than compute-heavy deep learning approaches. The SDK is so efficient, in fact, that it can be run on a mobile device to extract geometry–even from objects in motion.
That means the FindSurface SDK can do a lot more than process pre-existing point clouds. It can also perform accurate, automatic object recognition fast enough for use in augmented reality applications.
One of CurvSurf’s demonstration videos, shows how this could be implemented: A worker wearing an AR device equipped with a 3D camera looks at a pillar in the distance, pinches the air to select it, and up pops a window with dimensional information about the object with six degrees of freedom (6DoF).
Moon says that the FindSurface SDK could also be used for change-detection applications in construction. That same worker wearing the AR device in the field could look at a newly installed run of pipe, select it, and get a precise AR report for how it has changed since the last time it was scanned. Again, this information would be available in a full 6DoF.
Extracting pipe geometry
But that’s just the start. The SDK might also be used to map and quickly stitch together scans of a large area, such as the inside of a facility, or to map areas where it is difficult to place reference targets.
Why Make an SDK?
The FindSurface product is not a finalized piece of consumer software, but an engine designed to be incorporated into other applications. “Our SDK is a middleware, or a core engine,” says Moon. “We would like to focus on refining core logics—such as simple methods for human-like perception and object recognition—for higher level applications.”
In other words, CurvSurf has designed their algorithm so that it can be incorporated easily into the “many good applications” already on the market.
Moon says that “any CAD system which deals with point clouds” could make excellent use of the FindSurface SDK—but there are a lot more possibilities than that. It could be useful for any application that needs real-time, efficient, human-like 3D object sensing, including robot vision, asset management, reverse-engineering, collision avoidance, and UAV mapping.
The possibilities are only going to grow as the SDK gets faster. “Our initial version will be single-thread,” says Moon, “but we are working on multi-threading. Therefore, speed and multiple object recognition will be greatly improved soon.”
See CurvSurf at booth #623 at SPAR to find out more about the FindSurface object-recognition SDK.