Ping1D confidence meaning

Hello, after searching through the documentation and forum, I haven’t been able to find a specific explanation about what the confidence values are based on, beyond that it’s the probability that the measurement is of the largest object.

It would be interesting to know what it’s based on to understand if there could be a larger margin in distance, the existence of another possible target, or some other factor, as well as to determine how negative a measurement of 50% is, for example.

Hi @Jose, welcome to the forum :slight_smile:

The Ping Sonar firmware is closed source, but I assume the confidence is based on a combination of the return strength and consistency over time. If the object/surface being reflected off is bumpy (e.g. a sea floor with lots of coral and seaweed) or small, or the vehicle is moving / rotating quickly then the confidence will be reduced, whereas if the ping responses are strong and steady the confidence will be high.

You can consider the confidence as an estimate of how likely it is that the recent distance measurements correspond to a well-defined object or surface (i.e. is the measured distance likely ‘valid’?). The sonar only measures what’s in front of it, and it has no way of knowing whether a weak return is from a large but only mildly reflective target, or a highly reflective target with a big hole in it or angled away from the sonar, or multiple small objects at a similar distance, etc.

Note that the confidence is more an indicator of measurement precision/consistency than accuracy. Repeated consistent measurements to an object will likely report a high confidence, even if the object is shaped such that the distance estimate is not from the part of the object that is closest to the sonar (e.g. measuring the distance to a wall, rather than to a narrow spike/pole sticking out of it).

Hi,

I appreciate your response. Regarding consistency, I assume that in the case of abrupt and significant changes, a drop in confidence is expected even if the distance measure is correct. Is there any implementation to address such situations? Additionally, do you know how the system behaves when there are multiple strong responses, (i.e. a large object passing between the sonar and the floor)?

Regarding using the data to map a large surface, such as a lake, what would be the threshold where a point or area measurement is most likely not valid?

Yes, especially if the sonar is in auto mode and needs to re-scale the range to appropriately measure the changed distance.

I’m not sure what you mean by this. The distance estimate behaviour (including the confidence) is implemented the way that it is - there is only one implementation in a given firmware version.

If the sonar’s built in distance estimation is not what you’re after then you can do your own processing of the profile data.

As I understand it the first strong response is used for the distance estimate. In the case of one object in front of another most of the transmitted ping will be reflected by the first object, so the second one would likely not have a strong response anyway (because it’s acoustically shadowed by the first one).

That would need to be confirmed in the specific operating conditions. If the lake bottom has a gentle density change from the water then there may not be a clear indication of where the bottom actually is / what counts as bottom instead of muddy/silty water, and the confidence may be quite low as a result. If you’re in an area with a rocky floor then the responses should likely be quite strong, in which case the confidence should generally be quite high, although if the height varies significantly within the sonar’s beam area then it may not be obvious as to what the depth should be measured as in that location.

1 Like

Thank you, I think I have a better idea now of the expected behavior of that measure, but I will still conduct some tests and post the results here if I find anything interesting.

1 Like

Hello, I needed some additional help in understanding the confidence metrics from ping 1D. I have not put the sonar in a water tank and ive just placed it on a benchtop. The confidence values are almost always 0, im not sure why? to do accurate testing does it need to be in water?

Hi @axppxsky -
You will not get results with the unit in air, that is correct.
The confidence is determined for each ping based on the strength of the bottom return relative to the overall noise floor and the stronger it is, the higher the confidence. There are limits so above a certain limit, it’s capped at 100% and below a certain limit it is always 0%. Then, the confidence is averaged over several pings and any outliers are removed from the data.

1 Like

Just to clarify, our Ping Sonar can in fact be tested in air, because the transducer is mounted against a membrane at the device surface[1]. If you hold a large, dense object in front of it then it should be detected, but it needs to be oriented to reflect most of the transmission back towards the device.

That said, it’s not designed for operation in air, so aerial readings are not expected to have the same reliability, and the speed of sound needs to be set accordingly (to ~343 m/s) for the distance estimates to make sense[2]. Testing is water is preferred (and easier) where it’s possible to do so.


  1. in contrast, the Ping360 transducer is in an oil-filled metal enclosure, and the oil-metal-air boundary has too large of a density change for the sonar transmissions to propagate and return ↩︎

  2. If you’re testing in Ping Viewer, this requires turning on the debugging mode for the unusual value to be allowed ↩︎