Surveying a Floating Iceberg With the USV SEADRAGON

The calving, drifting, and melting of icebergs has local, regional, and global implications. Besides the impacts to local ecosystems due to changes in seawater salinity and temperature, the freshwater influx and transport can have significant regional effects related to the ocean circulation. The increased influx of freshwater ice due to increase calving from ice shelves and the destabilization of the continental ice sheet will affect sea levels globally. In addition, drifting icebergs pose threats to offshore operations because they could damage offshore installations, e.g., pipelines and subsea manifolds, and interrupt marine transportation. Iceberg drift and deterioration models have been developed to better predict climate change and protect offshore operations. Iceberg shape is one of the most critical parameters in these models, but it is challenging to obtain because of iceberg movement caused by winds, waves, and currents. In this paper, we present an algorithm for iceberg motion estimation and shape reconstruction based on in-situ point cloud measurements. The algorithm is developed based on point cloud matching strategies, policy-based optimization, and Kalman filtering. A down-sampling method is also integrated to reduce the processing time for possible real-time applications. The motion estimation algorithm is applied to a simulated data set and field measurements collected by an Unmanned Surface Vehicle (USV) on a free-floating, translating, and rotating, iceberg. In the field data, the above-water iceberg surface was measured with a scanning LIDAR, while the below-water portion (0–50 m) was profiled using a side-looking multi-beam sonar. When applying the motion estimation algorithm to these two independent point cloud measurements collected by the two sensing modalities, consistent iceberg motion estimates are obtained. The resulting motion estimates are then used to reconstruct the iceberg shape. During the field experiment, additional oceanographic measurements, such as temperature, ocean current, and wind, were collected simultaneously by the USV. We have observed water upwelling and a colder and fresher water plume at the sea surface downstream the iceberg. Combining the iceberg shape rendering and the surrounding environmental measurements, we estimated the iceberg melting parameters due to the sensible heat flux and surface wave erosion at different iceberg sections.


INTRODUCTION
Icebergs calve off glaciers in cold polar regions.During their life span, they drift and rotate due to forces from winds, waves and ocean currents.While drifting, icebergs melt, bringing freshwater that affects the local freshwater budget and the environment (Gladstone et al., 2001;Silva et al., 2006;Stern et al., 2015;Moon et al., 2018).Recent studies have revealed that the acceleration of ice calving events from polar ice shelves plays a vital role in sealevel rise (Rignot and Kanagaratnam, 2006;Rignot et al., 2011).Therefore, knowing iceberg shapes, drifting patterns and melting parameters is essential to quantify the influence of icebergs not only to the local oceanography but also globally.
Beside environmental and climate influences, icebergs also affect marine operations.Off the coast of Newfoundland and Labrador, Canada, offshore operations, such as subsea drilling and marine transportation, are threatened by icebergs (Bruneau and Dempster, 1972).Icebergs could collide with offshore structures and damage vulnerable seafloor infrastructures, such as pipelines, wellheads, and manifolds (Crocker et al., 1998).For safe offshore operations, iceberg surveys are an essential part of an effective ice-management on the Grand Banks (Eik, 2008).Multiple and long-term iceberg surveys, acquiring information about shape, environment and drift, could lead to significant improvements in iceberg drift models (Wagner et al., 2017); and therefore, a potential for improved iceberg risk assessment in terms of probability of collisions, damages to seafloor infrastructure and potential impact forces.For a high-risk iceberg near an offshore platform, knowing the overall iceberg shape is required to determine the most appropriate and the safest towing parameters, i.e., anchoring points and towing direction and speed.
Since the 1970s, the majority of iceberg surveys have been conducted from ships.The above-water shape is normally measured using photogrammetry (Farmer and Robe, 1975).Statistical equations (EL-Tahan and EL-Tahan, 1982;Barker et al., 2004) have been developed to estimate iceberg draft and crosssectional areas based on the above-water characteristics, such as the height, length, and width.However, the lack of available data results in low-confidence in these models compared to direct measurements.In the 1980s, a vertical sonar profiler was designed to measure below-water iceberg shapes (Hodgson et al., 1998).The overall iceberg shape could be created by merging the measurements from 4 to 8 deployments around the iceberg.In addition, satellite-based altimetry has been used for measuring the above-water shapes of larger icebergs and monitoring their melting (Jansen et al., 2007).
In recent years, unmanned marine vehicles, e.g., Unmanned Surface Vehicles (USVs) and Autonomous Underwater Vehicles (AUVs), have been proposed as potential candidates for iceberg mapping; especially for the underwater portion (Norgren andSkjetne, 2014, 2018;Zhou et al., 2014).Using unmanned systems could reduce the risk to personnel for operations in the harsh environments around icebergs.These unmanned platforms could also accommodate a suite of sensors, providing high quality multi-modal spatial-temporal measurements (Zhou et al., 2014;Kimball and Rock, 2015), with the potential to improve our knowledge about the iceberg mechanisms, i.e., drift and deterioration.There has been some real progress in using unmanned platforms for iceberg profiling.In Forrest et al. (2012), an AUV was deployed to transit underneath a tabular ice island.A section, about 700 by 500 m, was found to have a draft between 30 and 50 m.In Norgren and Skjetne (2015), an edge-following guidance system was developed based on the iceberg shape measured by a side-looking multi-beam sonar.The algorithm was evaluated in a simulated environment with simple blocky and rounded iceberg shapes.In Zhou et al. (2016a), an adaptive heading controller was developed for a hybrid Slocum underwater glider to perform autonomous iceberg wall-following and collision avoidance.Advancements have been made to improve the iceberg wall-following capability (Zhou et al., 2016b) with field evaluation on a grounded iceberg presented in Zhou et al. (2019).Similar work was done by McEwen et al. (2018), where a larger AUV equipped with a side-looking multi-beam sonar and a wall-following algorithm was deployed to survey a floating iceberg.
Besides vehicle control and navigation, another challenge for iceberg mapping is to estimate the iceberg motion in order to reconstruct the overall shape.Remote sensing methods, such as satellite images (Marko et al., 1986), radars (Larssen, 2015), or aircraft surveys (International Ice Patrol, 2014), only provide a occasional observations at a coarse temporal resolution, which is insufficient for iceberg shape reconstruction.Recently, several types of iceberg beacons (Forrest et al., 2012;Canatec, 2015) have been developed to determine the iceberg motion in-situ.However, beacon anchoring only works reliably on relatively flat surfaces on floating icebergs.In Crawford et al. (2018), the topside of an ice island was measured by a laser scanner.The authors presented a new way to correct iceberg motion to enable accurate iceberg shape estimation and deterioration.As part of a NASA funded project on automated exploration on asteroids and comets, analogous experiments were conducted on icebergs (Kimball andRock, 2008, 2011).The authors presented a method to extract the mean iceberg motion via topography matching.The method was applied to the actual iceberg mapping data collected from a ship-mounted side-looking multi-beam sonar in the Scotia Sea.The algorithm has been extended to incorporate additional measurements from a Doppler Velocity Log (DVL) that measures the relative speed between the AUV and the moving iceberg (Kimball and Rock, 2015).The algorithm was validated in a surrogate seabed mapping mission without the heading estimates from the compass.Further research to improve the terrain-matching robustness for better loop-closure detection is also presented by the same research group (Hammond and Rock, 2014a,b;Hammond et al., 2015).
In this paper, we present a new approach, using an Unmanned Surface Vehicle for iceberg mapping, in which multimodal measurements on iceberg shape and surrounding water parameters are collected to provide detailed iceberg shape and melting information.We also introduce an algorithm to estimate the iceberg motion from in-situ LIDAR and sonar data.The proposed method has a low computational cost that could potentially be implemented on an onboard computer inside unmanned robotic platforms, e.g., AUVs and USVs, for real-time iceberg-relative navigation and mapping.We highlight our work with field experimental results for iceberg reconstruction and the observations of several detailed iceberg-related oceanographic features, e.g., freshwater mass, upwelling water, and detailed iceberg melting parameters.
The remaining paper is organized as follows.In section 2, we present a brief system description with the mathematical framework as well as the used nomenclature.A detailed discussion of the iceberg motion estimation algorithm is presented in section 3, while the validation results on the simulated data and real-world measurements are presented in section 4. In section 5, we present our detailed investigation into the relevant scientific measurements collected by the USV during the iceberg survey.We conclude the paper with a discussion on future research directions in section 6.

PROBLEM STATEMENT
Figure 1 shows the sensor configuration on the USV SEADRAGON (Smith et al., 2014).A scanning LIDAR and a multi-beam sonar are mounted above and below the water, respectively.Meanwhile, meteorologic and oceanographic sensors, i.e., a weather station, a Conductivity-Temperature-Depth (CTD), and an Acoustic Doppler Current Profiler (ADCP), are integrated as shown in Figure 1.
Here, three coordinate frames are defined.The earth-fixed coordinate frame (X e −Y e −Z e ) is selected in a North-East-Down (NED) convention with its x-axis pointing toward geographic North, y-axis pointing East, and z-axis pointing downward.The origin of this coordinate frame can be freely chosen but is fixed at the earth's surface with known latitude and longitude.The vehicle coordinate frame (X v − Y v − Z v ) is located at the center of gravity of the USV SEADRAGON with the x-axis pointing forward, yaxis pointing starboard, and z-axis pointing downward.For each sensor, we define a sensor coordinate frame (X s − Y s − Z s ) having the same orientation as the vehicle coordinate frame, but is offset by a translation vector v s T from the origin of the vehicle coordinate frame.
More detailed information about the transformation between coordinate frames is presented in Supplementary Section 1.For a range vector, r t , as reported by the sonar or the LIDAR at time t, we convert it into a point vector, v P t , in the vehicle coordinate frame using Equation (1) with σ t being the angle between the range vector and X s − Y s plane and β t being the angle between the range vector and Y s − Z s plane.The point vector, v P t , could be converted into the earth coordinate frame using Equation (2) where φ t , θ t , and ψ t are the vehicle roll, pitch, and yaw, and e v T is the displacement of the origin of the vehicle coordinate frame relative to the chosen origin of the earth-fixed coordinate frame.
During operations, the USV SEADRAGON navigates using a Global Positioning System (GPS), located on the top deck.Its orientation is estimated using an Attitude Heading Reference System (AHRS) calibrated to the origin of the vehicle coordinate frame, at the center of gravity of the vehicle.The sonar and LIDAR both produce range measurements from the vehicle to the iceberg surface.The sonar is mounted on the lower hull with a vertical field-of-view on the starboard side of the vehicle.Its view angle covers from horizontal (0 deg) to 130 degrees downwards with a resolution of 1.8 degrees.The sonar data is processed in real-time with a sonar ping rate of 0.5 Hz at a profiling range of 150 m.The LIDAR is located on the top deck with the maximum profiling range of 100 m.It has a vertical field-of-view of 30 degrees with a 2-degree angular resolution, and it scans 360 degrees at 600 Revolution Per Minute (RPM) with a stepping angle of 0.4 degrees.In Supplementary Table 1, we present detailed information on the measurements and specifications of the sensors.
The range measurements obtained from the sonar and the LIDAR can be converted into the earth-fixed coordinate frame, creating a point cloud of the iceberg surface.However, because of the self-motion of the iceberg, the point cloud will be distorted in the earth-fixed coordinate frame representation.For shape representation, we introduce another coordinate frame the iceberg coordinate frame (X b − Y b − Z b ), as shown in Figure 2. Its origin is located at the centroid of the water-plane of the iceberg.The iceberg motion is constrained to three degrees of freedom, a northward speed, ẋb (t), an eastward speed, ẏb (t), and an angular velocity, ψb (t) around the Z b axis.The heaving, rolling and pitching motion can be neglected because our iceberg survey is conducted in less than 2 h, during a period of calm sea state.In addition, sea-state conditions under which the vehicle can conduct mapping mission will cause negligible iceberg rolling and pitching.To account for minor rolling, pitching or heaving, we implemented a gridding filter in section 3 to remove possible outliers.
A top-view sketch of a moving iceberg is offered in Figure 2. At the beginning of the mission, t = 0, the iceberg coordinate frame is located at e b T 0 relative to the origin of the earthfixed coordinate frame with the x-axis pointing north and yaxis pointing east.Equation (3) shows the conversion between a point in the iceberg coordinate frame and in the earth fixed coordinate frame.After the conversion, the resulting point cloud, b P 0 : t = { b P 0 , b P 1 , . . .b P t } presents the actual iceberg shape.Since instantaneous motion of the iceberg is not available, the integration of the iceberg motion in Equation (3) can be approximated with time averaged angular and linear velocities, ω b (t), u b (t), and v b (t).The transformation between the coordinate frames is then rearranged through Equation ( 4), where the integration is replaced with the multiplication of time (t) and the averaged velocities, and the rotation matrix, R T z , is inverted.In the next section, we present an algorithm to estimate the averaged iceberg motion at different times such that all the points can be accurately converted into the iceberg-centered coordinate frame.

ICEBERG MOTION ESTIMATION
In order to fully cover an iceberg, multiple circumnavigations are normally conducted during a survey.By detecting identical regions surveyed during different passes, iceberg motion information could be extracted for shape reconstruction.In our algorithm, we have a reference point cloud collected at the beginning of the mission, e.g., in the first 10 min.We refer the reference point cloud to as e P 0 : t 0 where t 0 is the time-span that controls the point cloud size.Another point cloud is called the current point cloud referred to as e P t− t : t that is collected from time, t − t, to the current time, t.We denote that they are affiliated to the earth-fixed coordinate frame using the left superscript.The algorithm presumes that the two point clouds cover the same region on the iceberg; then, its objective is to search an iceberg motion solution that best aligns the two point clouds in the iceberg coordinate frame.We treat this process as an optimization problem inspired from the gradient descent method (Bryson and Ho, 1975).In addition, we designed a Kalman filter (KF) to fuse the iceberg motion estimates from the optimization into a linear iceberg motion model.Therefore, uncertainty in our motion estimation algorithm is also incorporated.
Figure 3 shows the flowchart for the overall motion estimation procedure.During initialization, we define several global parameters.The time coefficient, t 0 , controls the size of the reference point cloud, t 0 controls the initial size of the current point cloud, α 1 , α 2 , and α 3 are the step sizes during the iterations.Also, we initialize the Kalman filter with the iceberg state, x 0 , initial covariance, P 0 , and innovation covariance, Q k , as shown in Equation ( 5) and ( 6). (5) The next step is data preparation.Based on the time parameters, the program obtains two point clouds, e P 0 : t 0 and e P t− t : t .The algorithm will then perform down-sampling as follows: 1) The program will bin the two point clouds into 3-m depth bands starting from zero depth.
2) It will compare the total numbers of points within each depth bin, then, select the points inside the depth bin containing the highest numbers of data points.3) The selected points will be further separated into 1-m 2D binned cells.For a cell that contains multiple data points, the associated timestamp of the latest observation will be kept.For LIDAR measurements, the program further filters the data set because outliers reflected from ships have been observed in the field experiment (see Figure 7 in section 4.2).Therefore, the cells that contain less than 25 observations are excluded.
After the down-sampling, two new smaller point clouds, e P ′ 0 : t 0 and e P ′ t− t : t , are obtained.Before the iteration starts, the program will check if the size difference between them is less than 100.Otherwise, the program will update the time interval, t to increase the size of e P ′ t− t : t , and repeat the down-sampling procedures described above.After proper point clouds have been identified, the algorithm will update the iceberg state and covariance in the KF as indicated in Equation ( 7) to (8) where the state matrix, F k , is defined in Equation ( 9).The algorithm will then enter the iteration to search for the possible iceberg motion solution that matches the two input point clouds.
In each iteration, the program first converts the two point clouds into the iceberg coordinate frame based on the most-recent iceberg motion estimates.Then, it applies the Iterative Closest Point (ICP) algorithm (Bergstrom and Edlund, 2014) to compute the 2D rotation matrix, R, and the translation matrix, T, between two iceberg-related point cloud, b P ′ 0 : t 0 and b P ′ t− t : t .Based on the transformation information from the ICP, the program updates the iceberg motion, as shown in Equation ( 10), where α 1 , α 2 , and α 3 are the step size, and the subscript in R 2,1 indicates the row and column of the element.In the validation presented in section 4, α 1 and α 2 are defined to be 1/15,000.In contrast, α 3 is defined to be 1/150 because the rotation discrepancy has a smaller range from −1 to 1 compared to the range of T which is in the hundreds.
At the end of each iteration, the program checks if the estimate is converged or diverged.A convergence is found if the most recent 50 estimates have a standard deviation of less than 10 −5 m/s or 10 −5 deg/s.In contrast, if the estimation grows beyond a threshold, a divergence is found and the program will end the iteration with a conclusion of an invalid estimate.The program will then move to the next time step.When testing the algorithm, we observed that the estimate overshoots before converging, especially when using a large step size.A large step size will result in a faster convergence but larger fluctuations and significant overshoot during iteration.Therefore, the iceberg motion threshold is set to ±3 m/s and ±3 deg/s to tolerate the large step size as needed for computational speed.A wider limitation would also allow our future investigation in the algorithm's performance on fastmoving and rotating objects besides icebergs.From the literature, iceberg drift was typically observed at 0.1 m/s in Robe (1980) and 0.3 m/s in Crawford et al. (2018), and rotational motion was observated at 0.003 deg/s (Crawford et al., 2018) and 0.005 deg/s (Kimball and Rock, 2011).It is clearly highly variable.
As illustrated in Figure 3, the program will perform a KF observation update only if the estimate has converged or the program has reached the defined maximum iteration (500 in our case).The observed iceberg velocity, u b , v b , ω b , will be the mean values from the last 50 iterations, and the iceberg acceleration ub , vb , ωb will be the iceberg velocity changes divided by the elapsed time since the last valid motion estimate.After that, the algorithm will update the iceberg states, xk|k−1 , and the covariance using Equations ( 11) and ( 13) with z k being the iceberg motion observations from the iteration, K k being the Kalman gain calculated in Equation ( 12), and H k being the observation matrix.After the calculation, the iceberg motion states are updated from xk|k−1 to x k|k where the hat symbol denotes the difference between a model-predicted value and an observation-updated value.In Equation ( 12), the current covariance of the state estimation is P k|k−1 that is later updated in Equation ( 13), and the measurement uncertainty is R k , which is explained next.
Instead of defining a constant measurement uncertainty, the program determines R k dynamically based on the output using ICP results.Previously during the iteration, we obtained a 2D rotation matrix, R and translation matrix, T. Now, we apply the ICP again but switch the reference and current point cloud around with current point cloud being the model and the reference point cloud being the data.By changing the initial condition, the program could detect local minima, which may provide a false matching solution in the ICP (Fitzgibbon, 2003).The second ICP application gives another transformation matrix, R and T.
The algorithm computes the observation uncertainty, R k , using the two transformation matrices and a Sigmoid function, as shown in Equations ( 14) and ( 15) where the subscript in the transformation matrices indicates the row and column number of the element.The Sigmoid function could scale any real number into a specific bounded range to limit our measurement uncertainty in the KF.Here, we define the Sigmoid coefficients, a and b, which are equal to 0.1 and 100, respectively.The coefficients control the shape of the Sigmoid function curve.
In our scenario, S(x) is converged to 1 when the input, x, is larger than 200.In the case that the ICP yields a large translation or rotation discrepancy between two point clouds, the corresponding measurement uncertainty will approach 1 which is 100 times larger than the innovation covariance shown in Equation ( 6).As a result, the iceberg motion found during the iteration will have less impact on the state update since the Kalman gain will approach 0 in Equation ( 12).After the observation update shown in Equations ( 11) and ( 13), the program will check the updated covariance.The program records the iceberg state estimate if all the diagonal elements in the state covariance, P k|k , are less than 0.0049.This threshold value is determined based on the outcomes from running the algorithm offline.A larger value will result in more but nosier records of valid motion estimates, whereas a smaller value will result in less recorded motion estimates.For the simulation and the field data validation, we used the same value defined above.As indicated by the outermost feedback loop in Figure 3, the motion estimation algorithm runs at a constant interval, δt, which is set at 10 s in section 4.
Of course, limitations exist in the proposed algorithm.First, the algorithm relies on the assumption that the iceberg surface is heterogeneous and irregular.Therefore, uniform objects, such as sphere and cubes, will cause ambiguous point cloud matching results, producing a false motion estimation.Moreover, different survey strategies will be required for larger systems, such as ice islands, because shape changes due to a "foot loose" mechanism (Wagner et al., 2014) and melting may happen between revolutions.As a result, the point matching algorithm proposed here may fail in finding the identical region from different revolutions.To overcome this limitation, repeated sectional iceberg scans may be conducted over a short time before there are significant shape changes.The proposed algorithm could then be used to estimate the ice-island drift by finding repeated features in different sectional scans.Finally, the sea state also affects the algorithm performance.The algorithm will work better at sea state equal or less than 4 (up to 2.5-m wave height).Such a limitation is determined based on the depth band (3 m) defined in the down-sampling and the assumption of negligible iceberg heave motion.With significant iceberg heave motion at higher sea state, the down-sampling may misrepresent a correct 2D crosssectional profile at the selected depth.As a result, the iceberg motion estimated from matching two point clouds may contain increased errors.Moreover, excessive vehicle heaving motion caused by waves will influence the quality of the profiling sensors as well as the vehicle altitude estimate, which may downgrade the overall quality of the data product.To apply the algorithm to iceberg mapping data collected at higher sea states, one could extend the point cloud matching into 3D and include iceberg heave motion into the estimation.However, more computational resources are needed for 3D point cloud matching.

Simulation
We have performed simulations in an iceberg mapping simulator (Zhou et al., 2014) with the ground truth iceberg shape from Barker et al. (1999) and a user-defined iceberg motion.Hence, we could compare the motion estimated from the proposed algorithm to the ground truth without considering any sensorposed noise.In the simulation, an USV equipped with a sidelooking multi-beam sonar is modeled.The vehicle is assumed moving at a constant speed of 1 m/s and follows the contour of the water-plane of the iceberg at a standoff distance of 50 m.The sonar is simulated with 45 rays equally separated from the horizontal direction to a downward-looking angle of 45 degrees.In the simulation, the iceberg is assumed to have a northward speed of 0.05 m/s, an eastward speed of 0.02 m/s and a clockwise rotational speed of 0.025 deg/s.
Figure 4A shows the top view of the resulting vehicle trajectory with the gray-scale color indicating the elapsed time.In the same figure, we also show the point cloud obtained from sonar range measurements, and the initial and final iceberg orientation and position.It can easily be seen that the point cloud representation in the North-East-Down coordinate frame is distorted due to the iceberg motion.Therefore, we applied the motion estimation algorithm in section 3 to derive the iceberg motion and restore the iceberg shape.The time related parameters in the algorithm are set as follows, t 0 = 600 t 0 = 120, and δt = 10, which are in seconds.Meanwhile, the dimensionless step sizes, α 1 , α 2 , and α 3 are set to 1/15,000, 1/15,000, and 1/150.
Figure 4C shows the valid motion estimates during the mission.The dashed lines show the estimated time-varying iceberg drift equations which are derived by applying the leastsquare fitting with outlier detection enabled to the valid motion estimates (markers).The root-mean-square error normalized by the ground-truth value is 0.49, 1.7, and 0.25% for the northward, eastward and rotational velocities, respectively.As shown in Figure 4C, the algorithm has identified three loopclosure occurrences, around 1,500, 2,500, and 3,300 s.This agrees with the simulation where the vehicle circumnavigated the moving iceberg four times.
With the estimated iceberg velocity shown in Figure 4C, we have converted all iceberg surface points into the iceberg coordinate frame using Equation ( 4).The motion-corrected iceberg point cloud is presented in Figure 4B with a color scheme showing the points at different depth and the black track presents the vehicle track relative to the iceberg.We compared this point cloud with our ground truth iceberg profile in the CloudCompare software (CloudCompare, 2019) using the default method, the nearest neighbor distance.Figure 5A shows the histogram of the distance errors, where the 99.7% line is located at 8.3 m and the mean value is around 3 m.Meanwhile, Figure 5B depicts the spatial distribution of distance errors.

Field Experiment
In June 2017, the USV SEADRAGON was deployed to map a floating iceberg near Portugal Cove (47.637N 52.883W), Newfoundland, Canada.Figure 6 shows the four images taken from different directions around the target iceberg.The height of the iceberg gradually decreases from the South to the North end with a concave feature on the Northern side.The abovewater portion is about 120 m long, 100 m wide, and 20 m high.The water depth in the area exceeds 60 m allowing for iceberg drift.In the Supplementary Figure 3, we presented the raw sonar point cloud in the earth coordinate frame where the seafloor topography could be observed.
As shown previously in Figure 1, the USV carries a LIDAR and a side-looking multi-beam sonar for profiling the above and below water portion of the iceberg.For environmental assessment, a weather station, a downward-looking Acoustic Doppler Current Profiler (ADCP), a conductivity-temperaturedepth (CTD) sensor was operational during the trial.In Supplementary Section 2, we summarize the sensor configuration for the iceberg mapping mission.
Figure 7 shows the vehicle track (black lines) and the iceberg surface measurements obtained from the sonar and the LIDAR.All these measurements are presented in the North-Earth-Down coordinate frame with the origin located at 47.626 o N 52.875 o W. The iceberg drifted toward the Northeast during the survey.Overall, the vehicle circled around the iceberg 4 times for about 1.5 h.A wall-following algorithm was implemented to maintain the desired standoff distance of 50 m with minimum human control.Such a standoff distance was determined such that LIDAR (maximum 100 m range) and sonar (maximum 300 m range) could both collect sufficient measurements for crossvalidation.The wall-following algorithm uses the local iceberg profile from the LIDAR scans.The LIDAR acquired data is collapsed onto the horizontal plane to present the local 2D iceberg contour.From the collapsed data, the desired vehicle track is generated by shifting the contour toward the vehicle.The line-of-sight guidance law (Norgren and Skjetne, 2015) was used to compute the low-level heading commands based on the desired track.Manual control was required several times during the mission because the algorithm misinterpreted other targets, e.g., ships, detected by the LIDAR.This problem can be solved by integrating a high-level system to manage vehicle operations in the presence of marine craft or other obstacles, e.g., by limiting the LIDAR scanning angle.
We applied the motion estimation algorithm to the two separated data sets collected by the LIDAR and the sonar.The initial time is set to be the sonar on time, UTC 15:23:19.The time parameter, t 0 , for the reference point cloud is 1,100 s while other parameters remain unchanged from the simulation.
The left panel of Figure 8 shows the motion estimated from the two data sets, while the linear equation parameters are summarized in the right panel of Figure 8. Comparing the results obtained from the LIDAR and sonar dataset, we found that (1) both estimations show a decrease in the iceberg drift, and (2) more valid estimates and smaller uncertainty are obtained from the LIDAR point cloud because LIDAR data has less noise and higher data density than the sonar measurements.
Next, we convert the two point clouds shown in Figure 7 into the iceberg coordinate frame using the velocity functions presented in Figure 8.The overall motion-corrected point cloud and vehicle track are shown in Figure 9.We separated the data into 1-m cubic bins to reduce computer memory.We removed outliers manually in MeshLab (MeshLab, 2018).The left panel in Figure 9 shows the isometric view of the processed point cloud, while the right panel shows the top view of the point cloud with the iceberg-referenced vehicle trajectories.The observed freeboard portion (topside) has an averaged height of 6.9 m with a maximum value of 21 m.As mentioned in Rackow et al. (2017), the draft (D) of an iceberg can be estimated with the equation D = Hρ i /ρ w , where H is overall height of the iceberg, ρ i is the density of the iceberg, and ρ w is the density of the water.Using the mentioned equation and the freeboard measurements, the draft is estimated to be 57 m with ρ i being 850kg/m 3 (Silva et al., 2006) and ρ w being 1, 024.7kg/m 3 from the CTD measurements on the USV.In the USV observation, the below water portion has an averaged depth of 19.8 m and a maximum observed draft of 48 m.There are two main reasons that can explain the difference between the observed draft (48 m) and the estimated draft (57 m).On the observation side, the actual keel of the iceberg may be deeper than 48 m given the seafloor depth lies between 60 and 85 m shown in Supplementary Figure 3.This occurs mainly because the USV is limited to move at the water surface.As a result, the distance between the USV and the deeper portion of the iceberg may exceed the sonar range, and the increased angle of incident at the sonar footprint on the iceberg at the deeper depth will cause low acoustic returns (sonar dropouts).On the other hand, Rackow et al. (2017) assumed that the iceberg is in cubic shape rather than the ram shape observed by the USV.Therefore, the relation between the drag (D), above-water height (F), water density, and the iceberg density will be slightly different for our data set.
Next, we assumed that our reconstructed iceberg represents the actual shape.
We computed the overall volume of the below-water (5.12 × 10 5 m 3 ) and the above-water portion (8.31 × 10 4 m 3 ) with the assumption that the iceberg is in 1-m stacked layers.Based on the volume and the Archimedes' principle, the iceberg density is estimated to be 881kg/m 3 .If the deeper portion of this iceberg is not mapped by the USV, the potentially unmapped portion will create a positive buoyant to the overall iceberg.In order maintain the same freeboard volume that is fully observed, the iceberg has to be denser.Therefore, 881kg/m 3 will be the lower bound of the density of the mapped iceberg which is denser than Antarctic icebergs (850kg/m 3 mentioned in Silva et al., 2006) and somewhat closer to other icebergs observed in the Labrador Sea (910kg/m 3 mentioned in Barker et al., 2004).
Figure 10 presents a local comparison between two subsets of iceberg points.The blue and the red point cloud are collected from 2,000 to 3,000 s and 3,000 to 4,000 s, respectively.The measurements from 10 m depth to the height of 5 m were excluded since they are noisy due to the signal reflections from the ship and the water surface.The point clouds were also gridded into 1-cubic meter bins.We computed the distance between two above-water subsets and two below-water ones in the CloudCompare (CloudCompare, 2019) with the nearest neighbor distance.In Figure 10, we show histograms of the distance errors for the above-water and below-water portion.Overall, the maximum mismatching between the two subsets is about 9 m.We observed that the misalignment in the LIDAR point clouds is slightly smaller than that from the sonar point clouds where the error is up to 10 m.
Finally, we applied the surface reconstruction method (Zhou et al., 2019) to the processed point cloud.shape is comparable to the photos shown in Figure 6.In Supplementary Figure 4, the common features in the iceberg render and the pictures in Figure 6 are highlighted.

FIELD ENVIRONMENTAL OBSERVATIONS
During the iceberg mapping experiment, the USV SEADRAGON was also equipped with other scientific instruments, including a RDI ADCP (600k Hz), a Seabird pumped CTD and an Airmar Weather Station.The locations of these sensors are depicted in Figure 1.In this section, we present the collected scientific measurements and derive iceberg melting estimates.
The ADCP data was first corrected for the vehicle motion (velocity and orientation) using the USV's GPS and the AHRS measurements.The ocean current velocity is then corrected for the iceberg's translational speed (estimated in section 4.2).After these corrections, we obtained the ocean current velocity relative to the iceberg.Next, we performed a moving average at 3 min interval in each depth bin (2 m) to eliminate the wave disturbances.After that, we binned the ocean current measurements based on the depth (2 m) and its azimuth angle (1 deg) relative to the origin of the iceberg.Finally, we applied 2D Gaussian filtering (Shapiro and Stockman, 2001) to smooth the binned data with the final result shown in Figure 12 where the overall ocean current around the iceberg is presented.The left, middle, and right plots present the Northward, Eastward and Downward components of the processed ocean current.From these color plots, we could observe that the water is mainly following toward Northwest with small sections of Southward and Eastward flow, which may be caused by the turbulence induced by the iceberg.Interestingly, the water in the upstream is found moving downward in contrast to the upwelled water found in the downstream on the Northeast side.This finding agrees with the iceberg mechanism discussed in Stern et al. (2015) and Moon et al. (2018).The other discovery is the upwelled water in the deeper portion (around 50 m) in the upstream.This may occur due to the basal iceberg melting that produces a buoyant water mass.
In Figure 13, we show the processed CTD, current and wind measurements in 1-cubic meter bins.In each bin, the value is the mean of all the data points in the bin.In Figures 13A,B, the surface water temperature and salinity are measured by the CTD (submerged at 1 m) on the USV.A water plume that is 1 degree colder and slightly fresher was identified in the downstream of the iceberg.We attribute this anomaly to the iceberg melting and heat flux.Figure 13C shows the depthaveraged current derived from Figure 12.The length of the arrows presents the magnitude of the planar component, and the color indicates the depth-averaged vertical components.In Figure 13D, we show the airflow around the iceberg.The weather station was sampling at 2 Hz, and we applied the moving average to the value at 3 min intervals (same as the ADCP processing) before gridding.Overall, the wind is blowing toward Northeast with a difference of about 2 m/s in speed between the windward and the leeward side.We found the iceberg drifting direction (about 28 degrees from North to the East), estimated in section 4.2, is more coincident with the wind blowing direction rather than the current flowing direction (toward Northwest), which is also discussed by Wagner et al. (2017) using an analytical iceberg drift model.
Combining all these environmental measurements, we further quantified relevant melting characteristics.Instead of taking the mean value of water properties, we estimated the melting parameters in different iceberg sections as different water properties, current, wind, temperature, and salinity, resulting in uneven iceberg melting affecting the iceberg stability and resulting in iceberg rolling.Stern et al. (2015) presented an approach to compute the melting metrics for an iceberg.Here, we estimate the melting caused by the surface wave erosion and the sensible heat flux in both above and below water.For the underwater portion, we only included the results from the mapped portion up to the maximum observed draft (48 m).
The ocean current estimates in Figure 12, water temperature and salinity in Figures 13A,B, and the wind speed in Figure 13 (D) are used in our melting estimation.These measurements are separated into different sections (10 degrees each) based on the azimuthal angle relative to the origin of the iceberg coordinate frame that is located at the geometry center of the iceberg cross-section at zero depth.In each section, we computed the mean water temperature, T(θ ); salinity, S(θ ); water pressure, P(θ ); water density, ρ w (θ ); the depth-averaged current, V b (θ ); and wind speed, V a (θ ).Using the binned point cloud shown in Figure 9, we computed the sectional iceberg surface area above and below the water, A a (θ ) and A b (θ ), and the effective area for the surface wave erosion, A s (θ ).For simplicity, we approximated the iceberg into 1-m stacked layers.In each layer, the cross-section remains the same.Therefore, the total surface area is the sum of the sectional contour lengths multiplied by the layer height.
For each section, we computed the deterioration rate due to the surface wave erosion and the melt rates due to sensible heat flux.The deterioration rate (Equation 16) caused by the surface wave erosion, ṁs was about 1 m/day per degree above the freezing temperature (Savage, 2001;Scambos et al., 2008).The freezing temperature, T f , is related to the salinity and water pressure.From our CTD measurements, T f is estimated to be about −1.7 degrees.Here, we only consider the effective area of the wave erosion is from 5 m above the water (average height) to 15 m (assumed thermocline boundary).The effective area will be later used when computing the total melt volume in Equation ( 19).
Above the water, the melt rate due to the sensible heat transfer is given by Equation ( 17), where the numerator is the sensible heat flux with ρ a being the air density, c pa being the specific heat of air, A being the dimensionless transfer coefficient for air, T fa being the freezing temperature in air.In the denominator, L is the latent heat of fusion of ice, ρ i is the iceberg density.For the below-water portion, the melt rate due to the sensible heat is given by Equation ( 18) where the numerator is the sensible heat flux with c pw being the specific heat of the water, St * being the Stanton number (McPhee, 1992), C d being the drag coefficient (Stern et al., 2015), T f being the freezing point of the water.The total melt volume is then computed using Equation ( 19) from the melt rates and the related iceberg surface area.Using the coefficients presented in Stern et al. (2015), we computed the mentioned iceberg melting parameters given by Equation ( 16) to (19).All the constants and related parameters used in the computation are summarized in Supplementary Table 4.
In Figure 14, we present the melt rates and total melt volume in 10-degree sections around the iceberg.We observed that the melt rate due to the sensible heat flux above the water, ṁa (θ ), is much higher on the southern side due to the high wind speed observed in Figure 13D.In contrast, the below water melt rate due to the sensible heat flux is higher in the downstream on the Northwest side due to the higher flow speed shown in Figure 13C.The deterioration caused by the surface wave is more evenly distributed due to the small temperature difference of about 1.2 degrees.Overall, the below-water melt rate due to the sensible heat flux is about ten times higher than that for the above-water part.The total melt volume around the iceberg is also presented in the top-right plot in Figure 14.The melt volume is observed higher on the Northwest, Southwest and Southeast side where larger iceberg surface area are found either underwater (top-middle plot in Figure 14) or above the water (top-left plot in Figure 14).The inconsistent melting, both around the iceberg and between above and below water, reveals an uneven iceberg shape changes that can cause iceberg instability and lead to possible iceberg rolling events.By summing the sectional melt volume, the total melt volume is estimated to be 1.088 × 10 5 m 3 /day.For comparison, the total iceberg volume of the mapped portion is about 5.87 × 10 5 m 3 .

CONCLUSION AND FUTURE WORK
In this paper, we have presented an approach to profiling floating icebergs using an unmanned surface vehicle (USV), the USV SEADRAGON.Our work has an emphasis on estimating iceberg motion and characterization of the iceberg shape.
First, we presented an algorithm to estimate iceberg motion which is needed to correctly reconstruct the shape of surveyed icebergs.During the implementation, we added a down-sampling method to reduce the computational cost and time.The algorithm was running on a typical PC (3.1 GHz Dual-Core Intel i7 and 16GB 1867MHz DDR3) in data playback mode.We believe that the algorithm is applicable for in-situ computation on an embedded computer that could be integrated onto marine robotic platforms for real-time processing.Instantaneous results will greatly help in-situ decision making for iceberg management and adapting strategies of sampling the surrounding water near an iceberg, e.g., conducting follow-up measurements on the freshwater plume in the downstream.
The algorithm was first evaluated with a simulated data set based on a real iceberg shape without sensor noise.We simulated the iceberg translation and rotational motion during the simulation.The algorithm has successfully detected the loop-closure from consecutive revolutions with a maximum normalized RMS error under 2% between the estimated motion and the simulated values.Such an estimation error caused a misalignment up to 8 m between the estimated iceberg shape and the ground truth shape (presented in Figure 5).Subsequently, the algorithm has been applied to the field data collected by the USV SEADRAGON in June 2017.The presented algorithm successfully extracted the iceberg drift, both translation and rotation, which is further used for iceberg shape reconstruction and iceberg melt studies.
Meteorological and oceanographic data collected by the USV SEADRAGON was analyzed.This data provides a detailed picture of the environment around the iceberg.We have discovered several important features, such as freshwater pond and upwelling water in the downstream.We also reveal inconsistent melting parameters between above and below portion around the iceberg, which can lead to iceberg instability that may cause a roll-over event.Overall, the total melt volume is estimated to be 1.088 × 10 5 m 3 /day with a volume of about 5.87 × 10 5 m 3 from the mapped portion, from 20 m above-water to 50 m under the water.At the estimated melt rate and measured volume, the lifespan of the iceberg will be less than 6 days.
While these results for iceberg reconstruction and melting estimates are promising, more measurements and data are still needed to understand the iceberg melting mechanism, e.g., the vertical extent of the freshwater plume and its influence to iceberg deterioration.We propose the following future research directions to advance the iceberg mapping and relevant scientific studies.The results presented in this paper showed that a sidelooking multi-beam sonar attached to a surface vehicle is not sufficient to obtain the overall submerged shape because of the sonar dropouts at greater depth due to the increased grazing angle.We, therefore, propose to combine the surface vehicle with a sonar-equipped autonomous underwater vehicle (AUV) in order to profile the deeper regions of the iceberg.Explorations with field experiments have already been conducted by Zhou et al. (2019), McEwen et al. (2018), and Forrest et al. (2012).Complementary to direct measurements, artificial intelligence algorithms may be developed to predict the "missing" portion based on the survey data.The algorithm would reconstruct the unsurveyed portion based on established iceberg stability conditions and empirical equations, such as the stability theories discussed by EL-Tahan and EL-Tahan (1982).For iceberg deterioration studies, we suggest performing more CTD casts in the downstream in order to quantify the water mass at increased spatial and temporal resolution.In order to do that, a new type of platform may be necessary to accommodate the horizontal moving mode and the vertical profiling mode, such as the vehicle designed by Bachmayer et al. (2018).

FIGURE 2 |
FIGURE 2 | Iceberg coordinate frame moves and rotates in the Earth coordinate frame.An identical point is observed by the USV SEADRAGON at different time.

FIGURE 3 |
FIGURE 3 | The flowchart of the motion estimation algorithm.

FIGURE 4 |
FIGURE 4 | A summary of the results from the simulation data.Panel (A) shows the vehicle track (gray-scale track) and the iceberg surface measurements (blue dots) presented in the earth-fixed coordinate frame.The initial and ending iceberg pose is shown in cyan and red surface.Panel (B) shows the top view of the iceberg surface points and the vehicle track after iceberg motion correction.Panel (C) shows the recorded iceberg motion estimations (markers) extracted from the simulation data.The dashed lines and the equations show the least-squares fitting result with outlier detection enabled.Panel (D) shows the standard deviation of the iceberg velocity states over time.

FIGURE 5 |
FIGURE 5 | Distance error between the reconstructed point cloud and the ground truth point cloud.Panel (A) Shows the histogram of the separation distance between the restored iceberg point cloud and the actual iceberg shape.Panel (B) shows the color-coded distance errors in the reconstructed point cloud.

FIGURE 6 |
FIGURE 6 | Above water iceberg shape shown in four images taken from different directions (A-D).

FIGURE 7 |
FIGURE 7 | The topview of the point cloud collected from the multi-beam sonar (A) and the LIDAR (B).The vehicle trajectory is shown in black.

FIGURE 8 |
FIGURE 8 | The left panel shows the motion estimated from the sonar (red) and LIDAR (blue) datasets.The markers show the valid estimates, the dashed lines show the curve fitting results with shaded area indicating the 95% confidence zone.Right panel summarizes the parameters of the dashed lines.

FIGURE 9 |
FIGURE 9 | Processed iceberg point cloud shown in the isometric view (A) and top view (B).The red and blue tracks in (B) shows the vehicle tracks corrected using the iceberg velocity estimates obtained from the sonar and LIDAR dataset, respectively.
Figure10presents a local comparison between two subsets of iceberg points.The blue and the red point cloud are collected from 2,000 to 3,000 s and 3,000 to 4,000 s, respectively.The measurements from 10 m depth to the height of 5 m were excluded since they are noisy due to the signal reflections from the ship and the water surface.The point clouds were also gridded into 1-cubic meter bins.We computed the distance between two above-water subsets and two below-water ones in the CloudCompare (CloudCompare, 2019) with the nearest neighbor distance.In Figure10, we show histograms of the distance errors for the above-water and below-water portion.Overall, the maximum mismatching between the two subsets is about 9 m.We observed that the misalignment in the LIDAR point clouds is slightly smaller than that from the sonar point clouds where the error is up to 10 m.Finally, we applied the surface reconstruction method(Zhou et al., 2019) to the processed point cloud.Figure11shows multiple views of the final iceberg rendering.The resulting

FIGURE 10 |
FIGURE 10 | Comparing the point clouds collected between 2,000-3,000 and 3,000-4,000 s after the correction for the iceberg motion.The data points are binned into 1-m cubic cells.

FIGURE 11 |
FIGURE 11 | Multiple views of the reconstructed iceberg shape.

FIGURE 12 |
FIGURE 12 | The averaged velocity of the water flowing around the iceberg.The row indicates the different revolutions while the column indicates the velocity components in Northward, Eastward, and downward directions.

FIGURE 13 |
FIGURE 13 | The surface water temperature (A), salinity (B), current field (C), and wind pattern (D) around the USV SEADRAGON.The data are averaged value in 1-cubic meter bins.

FIGURE 14 |
FIGURE 14 | Melt related parameters at different azimuth angle (θ) around the iceberg.A a (θ) and A b (θ) are the above-water and below-water surface area, Vθ is the total melt volume, and ṁa (θ), ṁb (θ), and ṁs (θ) are the melt rates caused by above-water sensible heat, below-water sensible heat, and the wave erosion.