Reading time:
min

Efficiently Processing Echo Sounder Data in Hydromagic in Just 10 Minutes

Integrated Systems
August 2, 2024

Processing bathymetric survey data can seem complex, but with Hydromagic - Eye4Software B.V, it becomes manageable even for beginners. This article by SPH Engineering CEO Alexey Dobrovolskiy will guide you through the straightforward process of handling echo sounder data, from data import to generating detailed elevation maps.

Data processing is the most exciting part of any survey, and bathymetric surveys are no exception. Often, data processing looks overcomplicated, especially if you are trying to use professional software—just because these software packages have dozens of options for almost all possible cases. But if you are working using the same set of equipment and in more or less the same conditions, the processing workflow can be pretty simple and repeatable. 

The procedure demonstrated below is for the most straightforward case—the data was collected when the GNSS receiver used for data geotagging was in RTK mode, meaning that we already have precise coordinates and antenna elevation in the data. If we use a PPK receiver or water surface (tide level) data, the workflow will be slightly different, but in general, it will be the same.

Data & software

Here I use data gathered in a lake near Tartu, Estonia, in 2022. Data was gathered using Echologger ECT D052 dual-frequency echo sounder mounted on the drone.

By the link, you will see processed bathymetric data combined with point cloud gathered using airborne LIDAR.

Click Clip icon to navigate to the Attachments and download the archive with NMEA raw data:

Optionally, you can also download an orthophoto map to use as background in Hydromagic (please note that you need a "small" version - Hydromagic can't handle big images):

Copy and unpack files to some directory; in my case, it will be C:\Prj\Tartu - we will need 5x files with names like XXX-nmea.txt (data from echo sounder) and orthophoto.

Software

Time to open Hydromagic, and let's begin!

Data Import

1. Start Hydromagic, and click New Project. Enter the name of the project, select the folder where the project files will reside, and select projection. In most cases, your customer will require output deliverables in some projected coordinate system, here, I selected "WGS 84 / UTM zone 35N". Click Create.

Note: here, I had to select UTM as the projected coordinate system as the orthophoto I want to use uses "WGS 84 / UTM zone 35N." Unfortunately, Hydromagic can't do raster data reprojection. If you need to use maps in a projection different from your required project projection, you can use any GIS for reprojection. I personally use QGIS.

2. Right-click Raw Data in Project Explorer and select Import Data Wizard.

3. Select NMEA0183 ASCII Log Files and click Next.

4. Click Browse, select the folder with our NMEA0183 data files, select (set marks) all our data files, and click Next.

5. Select $SDXDR in the NMEA Sentence drop-down list and click Next and Finish at the next step.

SDXDR sentence stores both high and low frequency readings from the echo sounder.

6. Click OK.

7. We should see the track of raw data below:

8. Righ-click Maps in Project Explorer and select Download Map

9. Select your favorite map source and click Calculate.

10. Select "Calculate map boundaries from raw data file" and click OK

11. Click Browse and select folder and file name for the map. Click OK.

12. Enjoy the map in background. Brrrr, winter...

Real value of this operation - you can see that your data is in right place.

13. If you downloaded our hi-resolution orthophoto, right-click Maps one more time and select Import Map

  1. Select "orthophoto - small.tif" file and click Open

15. Right answer is Yes!

16. Select "Map is projected..." and "WGS 84 / UTM zone 53N". Click OK

17. We can now see two overlapping satellite maps and the same raw data track.

18. Zoom-in and check the numbers in raw data. This is "depth below transducer". Normally for bathymetric survey we need not the depth but bottom elevations - as depth is something volatile and we want to deliver more or less persistent results. We will generate elevations on the processing stage.

Initial processing

19. We have finished importing raw data and maps and can now begin processing the data. Here we need to do one preparatory step in the Hydromagic settings. Click Options in toolbar:

20. Select RTK tab, set "Use Real Time Kinematics..." checkbox, enter 2.37 as antenna height. This is the distance between base of RTK antenna of our system and the bottom of the echo sounder's transducer - the parameter, which should be measured on the system using measurement tape. Click Select to select geoid for our bottom elevation calculations.

21. Here we need to select geoid. Unfortunately, Estonian latest official geoid file is license-protected, it is why you will not find it here in the list. You may find and request it for your own use, but in our "crash course" we will use global geoid. Find and select EGM96 and click OK two times to finish with settings.

22. Right-click Soundings in Project Explorer and select "From Raw Data File(s)"

23. Click Next

24. Select "Start editing from original raw data" and click "Select All". Click Next

25. Select "Use geoid model" and click Next

26. Click Next

27. Click Filter

28. Select/fill fields as below and click Apply. These settings will filter-out all data values when position was recorded with low precision, or the depth was outside of expected/normal values, or echo sounder orientation was too far from vertical (Echologger ECT D052 echo sounder has internal pitch/roll sensors).

29. Click Edit

30. We will see something as on the screenshot below. If not - click few times button "Toggle Frequency (Hi/Lo)". Echo sounder ECT D052 is a dual-frequency device, so we may see two plots - for high and low frequencies. Low frequency (blue) plot here is a reflection from the lake's bottom, jumping red plot is reflection from seaweeds (vegetation) covering the bottom.

31. Now we need to clean the data a bit. Click "Toggle Frequency (Hi/Lo)" to see low-frequency measurements only.

32. Select obvious spikes by holding down the right mouse button

33. Click this icon or press Delete button on keyboard

34. When you finish with manual cleaning, apply mean filter

The bottom profile will become much smoother:

35. Repeat cleaning for hi-frequency. Final result may look as below, but please don't spend too much time for the hi-frequency data in that and in similar cases - it's normal that hi-frequency readings are jumping up and down for the bottom covered with vegetation.

36. Repeat the same for all data files, use drop-down list or arrows to navigate between files. Click OK when you are satisfied.

37. You can also edit position data, but in many cases this step is optional. Click Next

38. Click Finish

39. Zoom-in and check the numbers again. These numbers are bottom elevation in selected geoid, EGM96 in our case.

By default Hydromagic will display elevation based on high-frequency measurements. Remember that they are not robust in our case because of vegetation covering the bottom. So it's better to display values based on low-frequency.

40. Click Options

Select Map tab, set Show low frequency depths flag and click OK

You may notice that the numbers have changed a bit.

Congratulations! We have processed the data.

Let's make our world colourful

Here we need to create color palette and use it to display our echo sounder data.

41. We need to know elevation range for our data set. Expand Soundings node in Project Explorer, right-click first sounding and select Show Echogram

42. Scroll through sounding files and notice min/max elevation for low-frequency data (blue plot). All elevations are between 57 and 60m. Click Done to close the window.

43. Right-click Soundings in Project Explorer and select Display Options

44. Click Colors

45. Click "..."

46. Click Add

47. Enter the name for the color set (palette) and click OK and Close in previous window.

48. Click Auto

49. Enter the values as in the screenshot. 57 and 60 are the values we found earlier. Click OK.

50. The color list will be filled with automatically generated values. Click OK in this window and again.

51. Now we can see that the measurement (sounding) points are displayed in color.

Matrix (elevation map) generation

Some bathymetric survey customers only require processed soundings as output. But quite often they order a elevation or depth matrix or a map.

Here we will generate the height matrix 2 times - without boundaries and using the lake boundary.

52. Right-click Matrices in Project Explorer and select Generate Matrix

53. Click Select for Sounding Data

54. Click Select All and OK

55. Select Elevation (Lo Frequency) for Sounding Channel, 1m as Matrix Spacing and specify folder and filename for the matrix. Click OK.

56. Un-check Soundings node in Project Explorer

... and we will see an elevation map on top of the orthophoto:

That matrix doesn't cover entire lake surface - because we don't have measurements close to the brink. We can extrapolate readings to cover entire water body with elevation map.

57. Right-click Boundaries in Project Explorer and select Draw Boundary

58. Using left mouse button draw boundary of lake using hi-resolution orthophoto map as background for digitizing. You can use mouse wheel for zoom-in/out. Right-click when you finish.

59. Boundary editor will appear on the screen. Check Include the elevation of this boundary in matrix generation and click Level.

60. Enter 60 and click OK. This number is elevation of shoreline relative to the EGM96 geoid. I calculated this number using flight log data (using elevation of drone's RTK receiver and data from radar altimeter when drone was on survey lines over the water), but direct method is to use GNSS RTK/PPK receiver during data acquisition.

61. Notice that Elevation column is filled with 60s, and click OK.

62. Repeat the matrix generation, but select boundary this time

63. Now elevation map covers entire lake:

What next?

We have completed all the standard steps for processing bathymetric data, and you can see that it is not rocket science at all.

The next standard steps are:

  • Quality control using control lines or survey line intersections;
  • Create and export output files and reports.

Both topics are also not complex, but they will be covered in separate articles or in one of my webinars. Stay tuned!

About
Solution Used
UAV-based Echo Sounder System by SPH Engineering

Designed for precision bathymetric surveys, this advanced UAV system combines the latest in echo-sounding technology with reliable drone capabilities. Gather accurate underwater data quickly and efficiently, even in hard-to-reach locations.