Home        Store        Docs        Blog

Sonar out conversion to 3d point cloud

Hi team, is their a way to convert the blue robotics sonar data to a point cloud. Can anyone also tell me the data output string from the sonar?

Hi Michael,

Yes it’s possible, but you need a way to identify the position of the sonar to create such thing.
Ping360 will provide an relative X and Y information of the data, but to create a 3D point cloud, you’ll need to convert such X and Y points to a global 3D space, with a GPS or any other sensor that could provide absolute information for the X, Y and Z data.

And about the output string, you should take a look in our ping-protocol documentation, the sensor output vector plus angle information can be extract from this message.

So to go the next step further, can the ping ASCII output be converted to a file word that could be accepted into software like cloudcompare -

https://www.cloudcompare.org/doc/wiki/index.php?title=ASCII_file_open_dialog

The only outstanding item would be the required z axis data that could come from an IMU and formatted to fit into the data word. Does ping viewer have an output function?

Many thanks

Mick

image

Not only Z, but global X and Y. It’s not possible to identify the origin of the points that the sensor outputs. This is only possible if you have a fixed X and Y position and a variable Z that you could estimate without a big draft/noise.
If your sonar is a moving object in the space, only Z will not work, you’ll need a full position estimation for your data and as result for you point cloud. There is methods and
techniques to accomplish what you want, you can use a camera with SVO, you can use the sonar with a known position and a SLAM algorithm, you could use a QR code in the sonar with multiple cameras to calculate the position, you could use an underwater GPS, you could try to fusion both sonar and IMU data to estimate the position. As said before, there is numerous ways to accomplish what you want.

Ping-viewer provides a log of everything that the sensor outputs after a connection is established.
You can read more about it here.

Typically, underwater position during surveys is tracked using a USBL positioning system in conjunction with a GPS on the surface.

There are turnkey systems that can provide the position data you need, but they are complex and expensive. I have seen Sonardyne USBL systems on the used market in the $20K to $50K range.

Shameless plug: Water Linked Underwater GPS is available from $4800 in the Blue Robotics store

2 Likes