# A high compression algorithm for synthetic aperture sonar and radar images

Andreas Arnold

<figure><img src="image_1.png" /></figure>

To cite this version:

Andreas Arnold. A high compression algorithm for synthetic aperture sonar and radar images. MTS/IEEE Oceans 2025, Jun 2025, Brest (France), France. hal-05122310

HAL Id: hal-05122310

https://hal.science/hal-05122310v1

Submitted on 20 Jun 2025

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# A high compression algorithm for synthetic aperture sonar and radar images

Andreas Arnold

Thales DMS France, S.A.S.

10 avenue de la lère DFL

29200 Brest, France

Email: andreas.arnold@fr.thalesgroup.com

*Abstract*—We present a novel compression algorithm that is suitable for coherent imaging systems such as sonar or radar images. The algorithm is tested on real data and shown to greatly outperform JPEG, JPEG2000, WebP, SPIHT for several metrics, easily reaching a hundredfold compression factor and breaking the consensus that coherent images are hard to compress. Our approach is based on a statistical representation of speckle in a wavelet pyramid, allowing aggressive compression while retaining realistic speckle.

*Index Terms*—Sonar, radar, compression, wavelets

## I. INTRODUCTION

Sonar data acquisition generates a very large volume of data in a short amount of time. It is not uncommon to produce data rates of several megabytes per second. However, it is not always possible to transmit this data in real-time. Underwater, the preferred means of communication for its range is acoustics; yet the acoustic communication rate is typically at most 100 km.kb/s according to the current state of the art [6]. Real-time data transmission from an underwater vehicle is impossible unless it is connected to a surface relay via a cable. Therefore, today, data is recorded in the vehicle and analysed after the mission upon data unloading, which presents obvious disadvantages in terms of response time, as a mission can last half a day or more. To enable real-time target detection, it is important to be able to transmit all or part of the sonar image from an underwater unmanned vehicle (UUV) carrying the sonar to a data processing centre that can be located on a ship or on a land-based centre. This transmission is done either directly from the UUV to the processing centre or by using one or more relays, such as an unmanned surface vehicle (USV) near the UUV, satellites, or relay aircraft, etc. To make the most of the channel's limitations, the data must be compressed. However, current compression methods are not sufficient in terms of compression factor to allow the data to pass through the channel. This is because the nature of sonar or radar data does not lend itself well to compression: the data is characterized by specific noise, called speckle noise, generated by the constructive

or destructive interference of signals reflected by a large number of elementary reflectors located in the same resolution cell. The complexity of this speckle noise is too great to be easily compressible. Another problem is long-term storage of the data. Extremely large surveys can represent several terabytes of data. Images of zones that do not contribute significantly to the mission at hand, can be usefully compressed to cut down on the data storage requirements.

A compression limit of 1/10 to 1/16 is often taken as the practical limit for lossy algorithms to yield perceptually acceptable sonar images [9], even if recent algorithms such as WebP [11] can do better. This is due to the presence of speckle in the image, which is a natural by-product of coherent imaging systems. Our algorithm is a lossy algorithm designed specifically for sonar and radar images which works by 1) separating the original image into a high-intensity and a low-intensity image by thresholding; 2) compressing the high-intensity image separately to retain high intensity echoes; 3) decomposing the low-intensity echo into a wavelet pyramid; 4) compressing salient features (approximation images) of the wavelet pyramid with an image compression algorithm and representing the detail images, which only comprises noise, by only its four first statistical moments. This latter point is the key innovation of our approach: it allows high compression while also enabling our compression algorithm to double as an image denoising algorithm.

We show that our algorithm, while extremely simple, retains salient features such as high intensity echoes that might otherwise be lost by existing off-the-shelf algorithms. Also, we show that we achieve an extremely high compression rate, that are consistently above the 1/16 rate and that can be up to 1/300 the original size when the image complexity is low, such as in images of homogeneous sandy bottoms, while still maintaining the same perceptual quality as existing destructive codecs used at lower compression rates, such as JPEG, JPEG2000, WebP and SPIHT, or non-destructive methods, such as the Portable Network Graphics (PNG) codec.
## II. THE NEED FOR SONAR IMAGE COMPRESSION

For synthetic aperture sonars, the raw data rate for an uncompressed image and a single channel is:

$$BR(\alpha) = \frac{R}{\rho_{\text{range}}} \cdot \frac{V}{\rho_{\text{cross-range}} \cdot \sin \alpha} \cdot B \text{ [bit/s]} \quad (1)$$

where $V$ [m/s] is the along-track velocity, $\alpha$ is the range axis direction (“aspect”), $\rho_{\text{range}}$ [m] is the range resolution, $\rho_{\text{cross-range}}$ [m] is the cross-range resolution, $B$ [bit] is the bit depth and $R$ [m] is the sonar range. A channel is here construed as the imagery data corresponding to one side (port or starboard), one defined aspect angle, and one defined modality (acoustic data or elevation data derived from interferometry). Table I summarizes some values for typical synthetic aperture sonars, and shows that the bit-rate can quickly become important, especially when used with so-called “multi-aspect” sonars.

The current performance figures for underwater communication [6] are 100 kbps.km for acoustic communication, 0.4 kbps.km for underwater radio communication and 1000 Mbps.m for underwater optical communications, with only acoustic communication having the ability to reach long ranges (greater than 1 km). As such, the only possibilities to transmit data in (near) real time would be to have either a tethered system or a data muling system.

A tethered system is a configuration where a sonar is underwater with a cable or optical fibre link to a ship or buoy on the surface, which in turn has a radio uplink with a relay or an operations centre. The limiting factor is then the bandwidth of this radio uplink. The rates exposed in Table I are still challenging in this case, especially when other ancillary data need being transmitted as well.

A data muling system is a configuration where a sonar is typically put onto a long endurance UUV which stays at the bottom, and one or many smaller UUVs are specialized in physically transmitting the data in an in-board memory from the bottom to the surface. These smaller UUVs or *data mules* would then only require short range, high data rate (ideally optical) communication to communicate with the larger UUV. Overall, this brings better theoretical performance in terms of latency and average bandwidth, than direct long-range acoustic communication, especially for deep seas scenarios (>1000 m) [7]. A compromise between data muling and tethered systems is the concept of underwater docking stations, wherein UUVs unload the data, and which are linked to the surface via a tether [10].

Either way, compression is a precious tool to reduce the bandwidth needed to send the data over the whole communication chain up to the operations centre where the user reads the sonar data.

Also, compression is useful for long term storage in so-called “data lakes” where the data acquired

during all missions in a system’s life are stored, and where storing data entails the use of large servers with important energy needs, which can be mitigated by compression. This use-case is also relevant for radar systems, not just sonar systems. A trade-off to limit data loss is adaptive compression depending on the scene complexity; this requires the use of an algorithm to automatically drive the compression rate. This is out of scope for this paper.

## III. EXISTING COMPRESSION ALGORITHMS

### A. Entropic encoding

This section is but a brief summary of a well-known image processing topic explained in dedicated texts (see e.g. [14]). Entropic encoding algorithms approach the lower bound stated by Shannon’s source coding theorem, which sets the statistical limit to possible data compression for data whose source is an independent identically-distributed random variable. This theorem is stated as such. Assume a dictionary $\mathcal{D}$ of $n$ words, each coming with a probability $p_1, \dots, p_n$, then a message of $N$ such words will have a length in bits $L_N$ bounded by:

$$L_N \ge N \cdot H(\mathcal{D}) \quad (2)$$

where $H(\mathcal{D})$ is the entropy of the dictionary:

$$H(\mathcal{D}) = -\sum_{i=1}^{n} p_i \cdot \log_2 p_i \quad (3)$$

These are lossless algorithms, meaning no data is lost through compression. The typical entropic scheme is to find short sequences of bits for the symbols that repeat most often, and longer sequences of bits for infrequent symbols (the length for the rarest of them all must exceed the initial length, since there is a price to be paid). A necessary condition for the sequences is that the decoding must be unambiguous, without any need for symbol separation bit sequences to avoid unnecessary data loss. Shannon-Fano, Huffman, Lempel-Ziv-Welsh are examples of such algorithms. Practical implementations of these algorithms is, for instance, PNG (using a Lempel-Ziv variant). The PNG (Portable Network Graphics) file format is probably the most modern lossless image compression format, supporting 16 bit images; it uses the DEFLATE compression algorithm, which is a combination of the Lempel-Ziv LZ77 algorithm and Huffman coding.

### B. Lossy algorithms

Lossy algorithms usually all follow the same approach. First the image is transformed into a new space where the information representation is sparse. Then, aggressive quantization is performed where the information density is small. Finally, the image is encoded using a lossless, entropic encoder. Several well-known image format use this approach, for instance JPEG, JPEG2000, and WebP.
<table><caption>Table I
TYPICAL BIT RATES FOR CURRENT HIGH-END SYNTHETIC APERTURE SONARS (ACOUSTIC IMAGERY ONLY)</caption><thead><tr><th>Speed V [m/s]</th><th>Aspect angles α</th><th>Range R [m]</th><th>ρ<sub>range</sub> [m]</th><th>ρ<sub>cross-range</sub> [m]</th><th>B [bit]</th><th>Result [Mb/s]</th></tr></thead><tbody><tr><td>2</td><td>±90°</td><td>75</td><td>0.03</td><td>0.05</td><td>16</td><td>3.2</td></tr><tr><td>2</td><td>±90°</td><td>200</td><td>0.025</td><td>0.025</td><td>16</td><td>20.48</td></tr><tr><td>2</td><td>±60°, ±90°, ±120°</td><td>200</td><td>0.03</td><td>0.05</td><td>16</td><td>28.24</td></tr></tbody></table>

JPEG (ISO/IEC 10918-1) is based on a colour space conversion into YCbCr (luminance, chrominance blue and chrominance red) space, followed by 4:1 downsampling (in the CbCr plane), 8×8 discrete cosine transform (DCT), quantization of the DCT then entropy encoding (run-length encoding followed by Huffman coding). It can be used in a lossless mode if the downsampling and quantization steps are excluded, but typically it is used in a lossy configuration. The 8×8 DCT results in typical block-like artefacts when the compression rate is high. Also, sonar data are single channel (“gray scale”), so the downsampling in the CbCr space has no reason to be. To perform our tests, we use the implementation made available within Mathworks MATLAB.

JPEG2000 [15] is a standard which defines, in particular, a lossy compression format for still images. It consists in a pre-processing stage where data is tiled and color-space transformed, then the data undergoes a discrete wavelet transform (DWT) [16], which is then quantized, then encoded using a state-of-the-art entropy encoder. At the same compression factors, the performance of JPEG 2000 outperforms classical JPEG in terms of image quality metrics. Again, to perform our tests, we use the implementation made available within Mathworks MATLAB.

SPIHT (Set Partitioning In Hierarchical Trees) is an image compression method based on wavelet transforms, developed by Amir Said and William A. Pearlman in 1996 [13]. It is also based on a DWT, but organizes wavelet coefficients into hierarchical trees and uses a partitioning algorithm to encode significant coefficients near the tree root and less significant coefficients at the leaves, enabling progressive image reconstruction. SPIHT outputs a number of bits exactly specified by the user. It is known for its efficiency in balancing image quality and compression factor, making it suitable for applications with limited bandwidth or storage; and it has already been tested for sonar images [3]. Yet SPIHT is not an image format, but rather a method, so it is necessary to add all the usual quantization and entropic encoder stages manually. Our SPIHT implementation, after [13], has an input of $16N_0$ bits ($N_0$ being the number of pixels in the image). It outputs a user-determined number of bits $N$ at the end of the SPIHT encoding stage equal to a fixed header part and a variable part. The header part is 8 bits long, coding 256 possible values; these values correspond to the number of

bits needed to represent the maximum absolute value found in the DWT, in double format. The variable parts corresponds to $n$ coefficients, each coded on 2 bits as a walk in the SPIHT tree (one bit for a left/right node choice; one bit for the sign). Thus the output number of bits is $N = 8 + 2n$. The variable part can be entropy encoded; the typical entropy we found was around 1.62 bits/tree coefficient, meaning the effective entropic-compressed size of the SPIHT cannot be less than $N' = 8 + 1.6n$ whatever the entropic compression algorithm (a gain of about 25%). Thus the SPIHT compression factor set by the user is $16N_0/(8+2n)$ before entropic encoding and at most (in our case) about $16N_0/(8+1.6n)$ after entropic encoding.

WebP [11] is a single frame of a WebM (also known as VP8) video codec originating from Google. It begins by dividing the image into one 16×16 macro-block of luma pixels and two 8×8 macro-blocks of chroma pixels. Each 4×4 sub-block has a prediction model (filtering) applied onto it which allows outputting a block prediction (which can be compressed very well) and differences (which are small). The result is then encoded using a DCT, quantized, then stored onto file using entropy coding using an arithmetic compressor, similar to the Huffman encoder used by JPEG. The format is (yet) limited to 8-bit files, while our data is 16 bits. For our tests, we use the reference implementations by Google and called as external programs from MATLAB.

## IV. OUR ALGORITHM

Our algorithm can be seen as a boosting phase for existing image compression schemes. First, the image is separated into a weak echoes image and a strong echoes images, which helps preserving a good representation of the strong echoes; both images are compressed separately. It filters the weak echoes image by using a discrete wavelet transform, and keeps only the approximation images which is compresses using a classical algorithm. The detail images, which encode mainly speckle noise, are encoded by their statistics, which drastically reduces the overall size of the compressed data.

### A. Compression

The compression algorithm comprises seven steps, labelled C1 to C7 (see figure 1). The input data are the acoustic amplitudes, coded in logarithmic scale. The
first step C1 is a thresholding, where the input image $I$ is separated into a weak echoes image $W$ and a strong echoes images $S$, such that $W = I \cdot [I < t]$ and $S = I \cdot [I \ge t]$. Typically this is done by determining the threshold $t$ by using a quantile $q$, such that $q \%$ of the pixels have an amplitude less than $t$, the strong echoes being the $100-q \%$ strongest pixels. A typical value for $q$ would be 99.9 %.

The strong echoes image $S$ then undergoes quantization (step C2) –here 6 bits– and the quantized image is then compressed using an entropic encoding scheme (step C3), for instance DEFLATE as in the PNG format. Also, the minimum and the maximum $\max_S$, $\max_S$ of the strong echoes images before quantization is saved in the compressed files so that it may be restored later. Entropic encoding is very efficient at this stage because the strong echoes image is nearly uniform with $q \%$ zeroes.

In parallel, the weak echoes images $W$ undergoes a digital wavelet transform (DWT) using Mallat’s algorithm [12] (step C4). If the image does not have suitable dimensions for a decomposition, it is padded; it needs not being padded much, since usually the decomposition is only done up to $N = 3$ levels or so (we used $N = 2$ here). In our implementation, we tried several different wavelets and empirically found good results with a Daubechies 5 wavelet [4] (other wavelets can be used). Thanks to this DWT, $W$ is thus transformed into a pyramid with $N$ stages, such that the so-called approximation image at stage 0 is $A^0 = W$, and the approximation image $A^{n-1}$ at stage $n-1$ is re-built recursively by using the approximation image $A^n$ and the three so-called detail images $D_{hv}^n, D_{vh}^n, D_{vv}^n$, indices $h$ and $v$ denoting the direction of the filtering (horizontal or vertical) of the wavelets, which are assumed to be separable in Mallat’s algorithm. The approximation image at the smallest level $N-1$ is normalized between 0 and 1, goes through a power law (with the exponent empirically chosen at $\gamma = 0.6$), then is quantized (step C5) –here to 8 bits– and is compressed using an existing codec, namely WebP (step C6); similarly the minimum and maximum of the approximation image $\max_a^N, \max_a^N$ is stored for later restoration. The level $N$ is also stored.

For $n = 1$ to $N$, detail images are then analysed statistically (step C7). It so happens that the detail images $D_{hv}^n, D_{vh}^n, D_{vv}^n$, at least for the two to three first stages of the wavelet transform, contain almost nothing but noise, since they correspond to information pertaining to the speckle present in the data. The statistics of $D_{hv}^n, D_{vh}^n, D_{vv}^n$ is, at the first order, white and Gaussian, so it can be modelled using only two parameters: the mean and the standard deviation. We denote by $\mu_{hv}^n, \mu_{vh}^n, \mu_{vv}^n$ (resp. $\sigma_{hv}^n, \sigma_{vh}^n, \sigma_{vv}^n$) the mean (resp. standard deviation) of $D_{hv}^n,$

$D_{vh}^n, D_{vv}^n$. Upon closest inspection, it turns out that this approximation is a little too crude, since the distribution exhibits a small asymmetry. Thus, the skewness and the kurtosis of the distribution is also recorded; we denote them as $s_{hv}^n, s_{vh}^n, s_{vv}^n$ (resp. $\kappa_{hv}^n, \kappa_{vh}^n, \kappa_{vv}^n$). The means, standard deviation, skewness and kurtosis values are stored as floats.

Thus the compressed image consists in several chunks:

* The level of the wavelet decomposition: $N$, as an integer;

* The minimum and maximum of the weak echoes approximation image $A^N$: $\min_a^N, \max_a^N$, as floats;

* The quantized and compressed weak echoes approximation image $A^N$ and its dimensions;

* For $n$ from 1 to $N$:

- The mean, standard deviation, skewness and kurtosis of the weak echoes detail images: $\mu_{hv}^n, \mu_{vh}^n, \mu_{vv}^n$ (resp. $\sigma_{hv}^n, \sigma_{vh}^n, \sigma_{vv}^n, s_{hv}^n, s_{vh}^n, s_{vv}^n$ (resp. $\kappa_{hv}^n, \kappa_{vh}^n, \kappa_{vv}^n$), as floats

* The quantized and compressed strong echoes image $S$ and its dimensions

* The minimum and maximum of the strong echoes image $S$ before quantization: $\min_S, \max_S$

## B. Decompression

The decompression algorithm is mostly symmetrical to the compression algorithm, also with seven steps, labelled from D1 to D7 (see figure 2). The first step D1 consists in decoding and decompressing the strong echoes image and re-scaling it to its proper minimum and maximum (step D2) using the stored values of $\max_S, \max_S$, to obtain the de-compressed version of the strong echoes image: $\hat{S}$. Then, at step D3, the approximation image of the weak echoes images is decompressed: $A^N$. For each level $n$ of the wavelets pyramid, from 1 to $N$, pseudo detail images $\hat{D}_{hv}^n, \hat{D}_{vh}^n, \hat{D}_{vv}^n$ are re-synthetized by generating a random noise having the same mean, standard deviation, skewness and kurtosis as the original detail images. This can be done by means of e.g. the Pearson system or the Johnson system ([5], section IX.7) and the knowledge of $\mu_{hv}^n, \mu_{vh}^n, \mu_{vv}^n, \sigma_{hv}^n, \sigma_{vh}^n, \sigma_{vv}^n, s_{hv}^n, s_{vh}^n, s_{vv}^n$ and $\kappa_{hv}^n, \kappa_{vh}^n, \kappa_{vv}^n$ stored in the compressed file.

Then recursively for $n$ from $N-1$ to 0, each approximation level $A^{n-1}$ is reconstructed using $A^n$ and $\alpha \hat{D}_{hv}^n, \alpha \hat{D}_{vh}^n, \alpha \hat{D}_{vv}^n$ and by performing an inverse DWT (step D6), with reconstructed approximation image $A_0$ being the reconstructed weak echoes image $\hat{W}$. Parameter $\alpha$ is a weighting parameter between 0 and 1 that can be set by the user (step D5). If $\alpha = 1$ the reconstruction includes the detail
<figure><img src="image_3.png" /><figcaption>Figure 1. Compression algorithm</figcaption></figure>

levels fully, meaning the speckle noise is totally re-synthetized. If $\alpha = 0$ the reconstruction is done without the speckle noise, meaning the image is effectively de-noised. If $\alpha$ is between 0 and 1, then only some degree of noise is re-synthetized, which is an interesting by-product of the de-compression scheme. Finally, the reconstructed output image is obtained by summing $\hat{S}$ and $\hat{M}$ together.

## V. TESTS

The image we use as a test is shown in Figure 3; it corresponds to a representative mix of complex sandy, muddy and rocky bottom found near Douarnenez, France. The raw data is in logarithmic scale and encoded as unsigned 16 bits integers with 32768 representing the average local amplitude after automatic gain control. Figures 3 to 8 are rendered at native resolution using our high dynamic range (HDR) rendering algorithm [1], to check if strong echoes are compressed out.

### A. Comparison metrics

The first metric is the compression factor, which is defined as the size, in bits, of the original data, divided by the size in bits of the compressed data; the higher the better.

The second metric is the signal-to-noise ratio (SNR); the higher the better. It is defined as:

$$ \text{SNR} = \frac{\mathcal{F}(I)}{|\mathcal{F}(I') - \mathcal{F}(I)|} \quad (4) $$

where I denotes the original amplitude image (in natural scale), $I'$ is the decompressed amplitude image (also in natural scale), and $\mathcal{F}(\bullet)$ denotes the Frost speckle removal filter [8] with a half window width of 5 pixels. This is a simple way to do a fair comparison

of all algorithms. Most compression algorithms have a speckle removal effect at high compression rates; ours re-synthetizes a speckle that is plausible but not the exact same as the original one: in all cases comparison of the images with speckle is not fair when computing the SNR. The values reported in Tables III and IV are computed in the natural scale, then expressed in dB: we present the average value, as well as various quantiles of the SNR distribution. The 0 % and 100 % quantiles are the minimum and maximum (or peak SNR, “PSNR”) respectively; the 50 % is the median value, and the 95 % quantile helps comparing the algorithms, when there is a huge SNR discrepancy between the 95 % quantile and the 100 % quantile.

The third and last metric is the histogram root mean square error (HRMSE). It is here to help assess the proximity of the histograms of the original image and the decompressed image. We define $B = 256$ histogram bins $B_i, i \in 1..B$ that are evenly distributed between 0 and $M = \max(\max I, \max I')$: $x_i = [M/B \cdot (i - 1), M/B \cdot i]$. Denoting by $\mathbf{n} = [n_1, \dots, n_B]^t$ (resp. $\mathbf{n}' = [n'_1, \dots, n'_B]^t$) the vector of the populations of I (such that $n_i, n'_i$ are the number of pixels of I, $I'$ having values in $B_i$), we define the histogram root mean square error as:

$$ \text{HRMSE} = \sqrt{\left(\frac{1}{B} \sum_{i=1}^{B} (n_i - n'_i)^2\right)} \quad (5) $$

The lower the HRMSE, the closest the histograms before and after compression, and the more realistic the speckle appearance.
<figure><img src="image_4.png" /><figcaption>Figure 2. Decompression algorithm</figcaption></figure>

## B. Lossless algorithms

The first test, for the sake of completeness, is performed with lossless compression algorithms. The compression can be done in the original logarithmic scale, or in the natural scale after transcoding (there will be some negligible numerical transcoding losses which in our case never exceed ±0.02 dB). Compressing in the natural scale yields better results. In this test, JPEG2000 was configured with the default setting of 1 quality layer and 4 reduction (wavelets) layers. The results are presented in Table II. For these tests we do not need to present the HRMSE and the SNR distribution, since the compression is lossless.

<table><caption>Table II
COMPRESSION FACTORS FOR LOSSLESS ALGORITHMS</caption><thead><tr><th rowspan="2">Algorithm</th><th colspan="2">Input image encoding</th></tr><tr><th>Log</th><th>Natural</th></tr></thead><tbody><tr><td>PNG</td><td>×1.07</td><td>×1.27</td></tr><tr><td>JPEG2000</td><td>×1.13</td><td>×1.46</td></tr><tr><td>JPEG</td><td>×1.12</td><td>×1.47</td></tr></tbody></table>

## C. Lossy algorithms

We perform a first test summarized in Table III where the compression factor is kept constant at about 128. Note that, depending on the algorithms, it is not possible to tweak the quality factor “q” of the algorithm to get *exactly* the desired value of 128. The quality factor is the one defined by the standard compression libraries, except for SPIHT, where it is 100 over the target compression factor –which is not necessarily the actual one; in all cases a quality factor of 100 means “as lossless as possible”, while a quality of 0 means “high compression”. The algorithms, except ours, are tested by compressing the input image

both in logarithmic scale (“log”) and natural (“nat”) scale. The results in the table show that our algorithm outperforms the other in terms of mean SNR, 95 % SNR quantile, as well as HRMSE, meaning that it has the most realistic speckle of all, by far (Figure 8). SPIHT comes second in terms of SNR distribution except for high quantiles, and the speckle description is not good. WebP and JPEG2000 have good PSNR when compressing the image in logarithmic scale but have poor speckle compression. JPEG is by far the worst algorithm (Figure 4). Generally, compressing the image in logarithmic scale gives better results in terms of SNR.

A second test is summarized in Table IV where the 95 % SNR quantile is kept close to 15 dB. The results show our algorithm outperforms the others for compression factor with a whopping value of ×88.67 with the second, SPIHT, being at ×37.80. Our algorithm also has the best HRMSE, and the quantile distribution of the SNR is not much different from SPIHT, which behaves best for the 0 % to 75 % quantiles, and also for the maximum deviation, which is 6.07 dB, to compare with the best result of 9.33 dB for JPEG2000 in logarithmic scale. Again, SPIHT has good behaviour between the 0 % and 75 % quantiles but has strong deviations for the PSNR (worst contender) and poorly compresses speckle as shown by the HRMSE. For all algorithms except ours, there is significant mis-representation of strong echoes (see figure 6); WebP is the worst, creating additional strong echoes. Overall, our algorithm is visually the closest to the original (see figure 13).

In both tests, the HRMSE plays a crucial role in the evaluation of the compression: SNR alone is not a sufficient metric to assess the quality.
<table><caption>Table III
COMPARISON, AT A CONSTANT COMPRESSION FACTOR OF ABOUT ×128 (BOLD IS BEST OF COLUMN, ITALIC IS DESIGN VALUE)</caption><thead><tr><th rowspan="2">Algorithm</th><th rowspan="2">Compression</th><th rowspan="2">HRMSE</th><th rowspan="2">Mean SNR [dB]</th><th colspan="6">SNR quantiles [dB]</th></tr><tr><th>0%</th><th>25%</th><th>50%</th><th>75%</th><th>95%</th><th>100%</th></tr></thead><tbody><tr><td>1: JPEG, log, q 6.00</td><td>124.98</td><td>8475.84</td><td>14.62</td><td>133.86</td><td>22.02</td><td>15.58</td><td>11.22</td><td>7.54</td><td>-12.47</td></tr><tr><td>2: JPEG, nat, q 35.00</td><td>130.19</td><td>13154.79</td><td>10.39</td><td>128.77</td><td>22.18</td><td>15.50</td><td>9.96</td><td>-1.60</td><td>-10.55</td></tr><tr><td>3: JPEG2000, log, q 1.70</td><td>123.65</td><td>1623.81</td><td>15.03</td><td>100.36</td><td>17.66</td><td>14.96</td><td>12.99</td><td>10.74</td><td><strong>5.71</strong></td></tr><tr><td>4: JPEG2000, nat, q 1.62</td><td>128.79</td><td>8047.15</td><td>17.24</td><td>115.46</td><td>28.25</td><td>21.39</td><td>15.94</td><td>8.41</td><td>-11.86</td></tr><tr><td>5: WebP, log, q 2.50</td><td>124.89</td><td>2842.98</td><td>15.39</td><td>117.01</td><td>21.02</td><td>15.82</td><td>12.42</td><td>9.08</td><td>-12.28</td></tr><tr><td>6: WebP, nat, q 86.00</td><td>128.19</td><td>9386.90</td><td>17.19</td><td>116.31</td><td>25.80</td><td>19.35</td><td>14.65</td><td>8.51</td><td>-1.30</td></tr><tr><td>7: SPIHT, log, q 0.79</td><td>126.98</td><td>2252.01</td><td>14.40</td><td><strong>152.46</strong></td><td>17.92</td><td>14.43</td><td>12.04</td><td>9.26</td><td>2.79</td></tr><tr><td>8: SPIHT, nat, q 0.81</td><td>127.29</td><td>2386.71</td><td>19.59</td><td>132.80</td><td><strong>28.72</strong></td><td><strong>22.21</strong></td><td><strong>17.21</strong></td><td>10.55</td><td>-5.48</td></tr><tr><td>9: Ours, log, q 15.00</td><td>126.79</td><td><strong>380.77</strong></td><td><strong>19.88</strong></td><td>120.65</td><td>28.00</td><td>21.49</td><td>16.79</td><td><strong>11.94</strong></td><td>1.99</td></tr></tbody></table>

<table><caption>Table IV
COMPARISON, AT A CONSTANT 95% PERCENTILE SNR OF ABOUT 15 DB (BOLD IS BEST OF COLUMN, ITALIC IS DESIGN VALUE)</caption><thead><tr><th rowspan="2">Algorithm</th><th rowspan="2">Compression</th><th rowspan="2">HRMSE</th><th rowspan="2">Mean SNR [dB]</th><th colspan="6">SNR quantiles [dB]</th></tr><tr><th>0%</th><th>25%</th><th>50%</th><th>75%</th><th>95%</th><th>100%</th></tr></thead><tbody><tr><td>1: JPEG, log, q 25.00</td><td>30.85</td><td>1026.79</td><td>21.23</td><td>130.48</td><td>27.32</td><td>21.61</td><td>18.06</td><td><strong>14.90</strong></td><td><strong>9.40</strong></td></tr><tr><td>2: JPEG, nat, q 88.00</td><td>29.10</td><td>7154.20</td><td>24.04</td><td>142.56</td><td><strong>33.96</strong></td><td><strong>27.25</strong></td><td>22.12</td><td><strong>15.12</strong></td><td>-1.30</td></tr><tr><td>3: JPEG2000, log, q 10.00</td><td>20.50</td><td>1111.55</td><td>23.39</td><td>117.85</td><td>26.94</td><td>21.72</td><td>18.39</td><td><strong>15.20</strong></td><td>5.29</td></tr><tr><td>4: JPEG2000, nat, q 23.00</td><td>8.76</td><td>7038.94</td><td>23.93</td><td>145.66</td><td>33.95</td><td>27.07</td><td>21.70</td><td><strong>15.04</strong></td><td>-12.69</td></tr><tr><td>5: WebP, log, q 31.00</td><td>19.22</td><td>876.33</td><td>23.37</td><td>140.85</td><td>32.01</td><td>25.32</td><td>20.31</td><td><strong>14.96</strong></td><td>6.83</td></tr><tr><td>6: WebP, nat, q 96.30</td><td>20.55</td><td>7626.63</td><td>23.34</td><td>119.42</td><td>32.65</td><td>26.02</td><td>21.06</td><td><strong>14.76</strong></td><td>-12.96</td></tr><tr><td>7: SPIHT, log, q 10.75</td><td>10.54</td><td>1003.27</td><td>17.90</td><td>64.65</td><td>19.54</td><td>17.94</td><td>16.56</td><td><strong>14.76</strong></td><td>9.29</td></tr><tr><td>8: SPIHT, nat, q 2.86</td><td>37.80</td><td>1822.56</td><td><strong>24.10</strong></td><td><strong>149.61</strong></td><td>33.86</td><td>27.24</td><td><strong>22.20</strong></td><td><strong>14.90</strong></td><td>-2.58</td></tr><tr><td>9: Ours, log, q 45.00</td><td><strong>88.67</strong></td><td><strong>392.97</strong></td><td>22.87</td><td>140.58</td><td>30.95</td><td>24.41</td><td>19.74</td><td><strong>14.96</strong></td><td>4.97</td></tr></tbody></table>

<figure><img src="image_5.png" /><figcaption>Figure 3. Original image, courtesy of Direction Générale de l'Armement</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>Figure 4. Fixed compression factor. JPEG, corresponding to the results in Table III:2.</figcaption></figure>
<figure><img src="image_7.png" /><figcaption>Figure 5. Fixed compression factor. JPEG2000, corresponding to the results in Table III:4.</figcaption></figure>

<figure><img src="image_8.png" /><figcaption>Figure 6. Fixed compression factor. WebP, corresponding to the results in Table III:6.</figcaption></figure>

<figure><img src="image_9.png" /><figcaption>Figure 7. Fixed compression factor. SPIHT, corresponding to the results in Table III:8.</figcaption></figure>

<figure><img src="image_10.png" /><figcaption>Figure 8. Fixed compression factor. Our algorithm, corresponding to the results in Table III:9.</figcaption></figure>
<figure><img src="image_11.png" /><figcaption>Figure 9. Fixed SNR at 95 % quantile. JPEG, corresponding to the results in Table IV:1.</figcaption></figure>

<figure><img src="image_12.png" /><figcaption>Figure 10. Fixed SNR at 95 % quantile. JPEG2000, corresponding to the results in Table IV:3.</figcaption></figure>

<figure><img src="image_13.png" /><figcaption>Figure 11. Fixed SNR at 95 % quantile. WebP, corresponding to the results in Table IV:5.</figcaption></figure>

<figure><img src="image_14.png" /><figcaption>Figure 12. Fixed SNR at 95 % quantile. SPIHT, corresponding to the results in Table IV:8.</figcaption></figure>
<figure><img src="image_15.png" /><figcaption>Figure 13. Fixed SNR at 95 % quantile. Our algorithm, corresponding to the results in Table IV:9.</figcaption></figure>

VI. CONCLUSION

We presented an algorithm that is able to compress coherent imagery such as sonar data very efficiently. It is also applicable to radar due to the inherent similarity of the data. We benchmarked our algorithm thanks to three metrics: the compression factor, the statistics of the signal-to-noise ratio, and the root mean square error of the histogram distribution. We showed our algorithm outperforms JPEG, JPEG2000, WebP and SPIHT, and is able to reach strong compression factors while retaining the most important features, notably speckle, which is encoded statistically and re-synthetized at de-compression stage. This allow aggressive compression, especially when the scene is not complex, where the compression easily exceeds a hundredfold ratio. The algorithm also doubles as a speckle removal algorithm since the speckle re-synthesis can be damped by a simple scalar efficient that the user may tune as desired. Our algorithm shows that coherent image compression is actually not as complicated as previously thought in the state of the art, and that there is significant improvement when the speckle is re-synthetized statistically or as a texture, which yields a huge compression factor. We speculate that future algorithms based on auto-encoders [2] may result in even better compression factor as well, for their philosophical similarity with our algorithm: compression then texture re-synthesis based on texture learning. Indeed the present algorithm can be thought as an auto-encoder with hard-coded encoding kernels, which are those of the wavelet decomposition. Investigating auto-encoders is the basis for our future work.

REFERENCES

[1] Andreas Arnold. A high dynamic range sonar and radar image rendering with glow effect to help image interpretation. In Proc. *IEEE Oceans, Brest, France*, 2025.

[2] Dor Bank, Noam Koenigstein, and Raja Giryes. *Machine learning for data science handbook*, chapter Autoencoders, pages 353–374. Springer, 2023.

[3] Alice Danckaers and Mae L. Seto. Transmission of images through the underwater acoustic channel to submerged networks. In Proc. *RSS2017 RCW Workshop*, 2017.

[4] Ingrid Daubechies. *Ten Lectures on Wavelets*. Society for Industrial and Applied Mathematics, 1992.

[5] Luc Devroye. *Non-uniform random variate generation*. Springer Science+Business Media New York, 1986.

[6] Matthew Fewell. Empirical Range-Data-Rate Relationships for Undersea Wireless Communications Systems. *Defense Science and Technology Group Australian Government General Document DSTG-GD-1101*, page 52, October 2020.

[7] Nathan Fourniol, Luc Jaulin, Andreas Arnold-Bos, and Pierre-Jean Bouvet. Underwater data muling: Scenarios, implementation, and performances. In *OCEANS 2023 - MTS/IEEE U.S. Gulf Coast*, pages 1-7, 2023.

[8] Victor S. Frost, Josephine Abbott Stiles, K. S. Shanmugan, and Julian C. Holtzman. A model for radar images and its application to adaptive digital filtering of multiplicative noise. *IEEE Transactions on Pattern Analysis and Machine Intelligence*, PAMI-4(2):157-166, 1982.

[9] Chiman Kwan, Jude Larkin, Bence Budavari, Bryan Chou, Eric Shang, and Trac D. Tran. A comparison of compression codecs for maritime and sonar images in bandwidth constrained applications. *Computers*, 8(2), 2019.

[10] Jixin Liu, Fei Yu, Bo He, and C. Guedes Soares. A review of underwater docking and charging technology for autonomous vehicles. *Ocean Engineering*, 297:117154, 2024.

[11] Google LLC. An image format for the Web. https://developers.google.com/speed/webp, 2025. [Online; accessed 4-February-2025].

[12] Stéphane G. Mallat. A theory for multiresolution signal decomposition: The wavelet representation. *IEEE Transactions on Pattern Analysis and Machine Intelligence*, 11(7):674-693, July 1989.

[13] A. Said and W. A. Pearlman. A new, fast, and efficient image codec based on set partitioning in hierarchical trees. *IEEE Transactions on Circuits and Systems for Video Technology*, 6(3):243–250, 1996.

[14] Khalid Sayood. *Introduction to Data Compression (The Morgan Kaufmann Series in Multimedia Information and Systems)*. Elsevier, 4 edition, 2012.

[15] David Taubman and Michael Marcellin. *JPEG2000 Image Compression Fundamentals, Standards and Practice: Image Compression Fundamentals, Standards and Practice*. Springer Science & Business Media., 2012.

[16] M. Unser and T. Blu. Mathematical properties of the JPEG2000 wavelet filters. *IEEE Transactions on Image Processing*, 12(9):1080–1090, 2003.