Point clouds are a virtual point-based representation of our our world. Thus, they include both important and unimportant details. To process and analyse the point cloud easily, we would like the computer to help us focus on the important regions. How do we do that?

We’ve seen that point clouds are rich and detailed, no matter how they were acquired. But the problem is that we cannot see the wood from the trees. That’s why, processing becomes cumbersome and complicated and automated procedures require large computing powers and a lot of time. To help us focus on the important things and process accordingly, we first need to decide – what makes a point important?

Visual saliency

To answer that question, what is an important point, let’s define first that an important point is one that stand out from the others. Unlike other points, that describe the same surface, important points are conspicuous as they represent something different: a mountain-top, a bend in the terrain, or an object that lies on the ground. Such points stand out from their surrounding and catch our visual attention. That is, they are visually salient.

When you walk into a room, what would be the first thing you will notice? In this case – it will be the green objects.

Finding salient points

What makes a point salient? This is like asking – when you enter a room, which things will be the first to catch your eyes? Would you notice the walls, or the objects in the room?

Studies show that you will first notice the objects. This is because they are different from their surrounding, and we – as animals, first focus our attention on the irregular things, those that are not “boring”.

Using this idea, we decided to look for points that differ from their surrounding. That is to say, if we compare them to their neighbors – they will be geometrically different. The surface they lie upon will be in a different direction (normal) or it will have a different type of bending (curvature). The more different they are, the higher their saliency value will be.

Abrupt changes within the topography, such as hills (a) and (b) may be marked salient, but (d) within (c) will be overlooked.

Different, but compared to what?

Of course, when talking about point clouds of natural environments, salient points can be part of a surface that changes continuously, even though they are on a bend. That means that we cannot look at the immediate neighbors of the point, as they will look more or less the same. On the other hand, we can’t look too far either: we don’t care if the point is really different from a point that is miles away.

To describe this mathematically, we define a weight function based on what we consider as the smallest “object” that salient points can be part of. It can be a 3 cm rock or a 2 m bend – we define it as our minimal object. Points that are really close to the analyzed point will get low weights, and will not be considered at the comparison. The same goes for points that are too far.

Let’s see how this works!

The Leopards Temple has been destroyed once because it was so difficult to notice it. It is super small, its rocks are embedded within the desert floor – which makes it super beautiful, but also very fragile. Here, we use saliency to find it withing the point cloud.

This dataset has been acquired by terrestrial laser scanner.

The role of saliency in point cloud processing

Saliency computation is a simple procedure which can be used as an initial step for multiple applications. Check out what we did with them in: Downsampling and Entity extraction.

Technical Details

Acquisition by terrestrial laser scanner (Leica c10):

  • Resolution of 0.1 cm @ 100 m
  • One position

Participants in Research

  • Laser Scanning and Photogrammetry Lab, Technion – Israel Institute of Technology
    • Reuma Arav
    • Sagi Filin

This application has an open source code under MorE3D GitHub