Dual Link Image Coding for Earth Observation Satellites

The conventional strategy to download images captured by satellites is to compress the data on board and then transmit them via the downlink. It often happens that the capacity of the downlink is too small to accommodate all the acquired data, so the images are trimmed and/or transmitted through lossy regimes. This paper introduces a coding system that increases the amount and quality of the downloaded imaging data. The main insight of this paper is to use both the uplink and the downlink to code the images. The uplink is employed to send reference information to the satellite so that the onboard coding system can achieve higher efficiency. This reference information is computed on the ground, possibly employing extensive data and computational resources. The proposed system is called dual link image coding. As it is devised in this paper, it is suitable for Earth observation satellites with polar orbits. Experimental results obtained for data sets acquired by the Landsat 8 satellite indicate significant coding gains with respect to conventional methods.

Satellites in polar orbits revolve around the Earth from the North to the South Pole.They are at altitudes ranging from 100 to 10,000 miles, approximately.Due to their proximity to the surface, they are ideal to observe and monitor the surface of the Earth and/or its atmosphere.The data acquired by EO satellites are employed in applications to manage natural resources, forecast the weather, or monitor climate change, among others.Except for the poles, these satellites cover different areas of the globe in each revolution due to the Earth's rotational movement.For this reason, the most effective stations to download their data are located near the poles.These stations make contact with the satellite in each revolution, though the transmission time is limited to a few minutes per orbit.
The imaging sensor of an EO satellite acquires huge amounts of data.The Landsat 8 satellite, for instance, carries two sensors that capture 11 spectral bands with a spatial resolution of up to 15 meters and a bit-depth resolution of up to 16 bits per sample (bps).The acquired data are downloaded to the ground station for further processing and distribution.Yet, it is common that satellite sensors can capture more data than the available download capacity.Often, this forces the acquired data to be trimmed in some fashion, which may negatively affect applications and users.
Satellites have two channels of communication: the downlink and the uplink.The downlink is employed to transmit the data acquired by the satellite to the ground station, whereas the uplink is employed to transmit commands and ancillary information from the ground station to the satellite.In EO satellites, the downlink has a much higher capacity than the uplink, and the particular configuration changes depending on the necessities of the sensors.The communication sys-tem has full duplex capacity, i.e., transmission can occur in both directions simultaneously.Advances in electronics and telecommunications have increased the capacity of the satellite channels to a few hundreds of megabits per second (Mbps) in the most modern satellites.Yet, each new EO satellite is equipped with sensors that can capture the surface or the atmosphere of our planet with more detail.This trend, which has been observed for the last two decades, together with the inability to provide significant additional improvements in the download capacities, pulls down the acquisition capabilities of EO satellites.
The current approach to download the datasets captured by the satellites is as follows.Once (or while) the image is acquired at the satellite, it is compressed using a coding system.Compression helps to reduce the size of the data.Both lossless and lossy compression regimes have been considered: the former allows perfect reconstruction while achieving low compression ratios; the latter improves the compression ratio at the expense of introducing distortion.Once the data are compressed -either with or without loss-to a size that fits the bit budget of the downlink, they are (stored and then) transmitted during the time in which the ground station(s) is in contact with the satellite.Among others, standards and coding systems devised for the coding of satellite images using lossless and lossy regimes are respectively described in [1]- [6] and [2], [5], [7], [8].
Most techniques for the coding of satellite imagery either exploit the spatial or the spectral redundancy of the images, or both.Nonetheless, there exists another type of redundancy that is usually not taken advantage of.As previously described, EO satellites with polar orbits revolve around the Earth from pole to pole.The Earth's rotation causes the satellite to capture a different area of the planet in each orbit but, after some number of orbits, the satellite is situated at the starting point again, scanning areas that were already captured.This is called the repeat cycle.The Landsat 8 satellite, for instance, has a repeat cycle of 16 days.As can be observed in Figs.11 and 13 (see pages 13 and 14), the images captured of the same area on different dates are very similar, or otherwise stated, they have high periodic temporal redundancy.
Current coding systems employed in satellites do not consider the temporal redundancy.In order to do so, different temporal samples of the same location would need to be available, which may not be possible using onboard storage.The Landsat 8 satellite may capture 725 images every day with a raw size of approximately 480 MB each.As the acquired data between repeat cycles is about 6 TB, a mass memory of at least this size would be needed so that just two temporal samples of the same location would be available on board the satellite.In addition, properly exploiting such redundancy requires that temporal samples are co-registered, so that variations in satellite position and direction between consecutive repeat cycles must be carefully compensated.This is a task that is commonly performed on the ground before science data are disseminated.Hence, high requirements of mass memory and computational resources prevent a straightforward exploitation of the temporal redundancy on the satellite.
The purpose of this research is to enhance the ability of EO satellites to download the data acquired by their imaging sensors while increasing only slightly the computational complexity of the codec.To this end, our solution consists of exploiting the large computational power of the ground station as well as the capacity of the satellite uplink, which is idle during most of the transmission time.The idea is that the ground station can use already-stored data to generate a reference image.This image is then (coded and) transmitted via the uplink channel, allowing the satellite to benefit from the temporal redundancy during the compression process of a recently acquired image.The satellite only needs to store the compressed reference image, and decode it before its use.Both processes require few computational resources.The proposed coding scheme employs both the downlink and the uplink, so we refer to it as dual link image coding.This research is built upon our previous work [9].That work provides a proof of concept and demonstrates that the proposed method is feasible, but it employs only simple test images, does not propose a practical implementation, and does not consider synchronization aspects that may significantly affect performance.Herein, these drawbacks are overcome.This paper presents a coding system that considers the relevant aspects -from an image coding perspective-to transmit imaging data employing both channels of communication.We explore the performance that the dual link image coding can achieve with Landsat 8 images.Data from Landsat 8 are employed due to their free and ready availability in Earth Explorer [10], an online application provided by the U.S. Geological Survey.
The obtained conclusions may hold for other EO satellites with similar features.The rest of the paper is organized as follows.Section II formulates the problem and reviews our previous work [9].Section III introduces a practical image codec that utilizes the dual link image coding scheme.Any engine can be employed together with this scheme.The codec proposed herein employs the engine of JPEG2000 due to its excellent coding performance and advanced features.Also, because JPEG2000 is a widespread reference in the field and results can be compared to those from numerous works of remote sensing data coding (e.g., [8], [11]- [16]).Future work will propose a dual link image coding scheme for CCSDS standards [1]- [3].Section IV presents experimental results for both lossless and lossy compression.The results obtained demonstrate coding gains of up to 8 dB for lossy compression and up to 0.8 bps for lossless compression when the captured imagery has no meteorological events (e.g., clouds or snow), and the same efficiency as a traditional approach when there are such events.The last section concludes the paper with a brief summary.

A. Traditional approach
Let X = {X i }, 0 ≤ i < N , denote the image acquired by the satellite sensor, with N being the total number of samples in the image.Let B ↓ = T • C ↓ denote the total bit budget of the downlink, with T and C ↓ being the time that the satellite is in contact with the ground station and the channel transmission rate of the downlink, respectively.The bit-depth resolution of the sensor is denoted by D X .The size of the raw data is S X = N • D X , whereas their entropy is referred to as H(X).When S X > B ↓ , traditional approaches code the data to reduce their size before transmitting them down.For simplicity, in the following discussion we assume that the compression system in the satellite produces a codestream whose length is that of the data entropy [17].When H(X) > B ↓ , lossless compression is not possible.The coding process must then (transform and) quantize the data.The goal of this quantization is to reduce the entropy while minimizing the loss introduced into the data.The quantization procedure uses a step size, denoted by ∆ X , that is commonly selected as the smallest that respects the bit budget (i.e., the smallest ∆ X that yields H( X) ≤ B ↓ ).The (transformed) samples recovered in the ground station are referred to as X = { X i }.They are computed as with ⌊•⌋ denoting the floor operation.When ∆ X = 2 DX −D X , the quantization procedure is equivalent to discard the D X − D X least significant bits of the (transformed) samples.Other values of ∆ X may help to adjust H( X) more finely to fit B ↓ .The division and floor operation in (1) are carried out in the satellite, whereas the remaining operations are carried out in the ground station.δ ∈ [0, 1) is the reconstruction factor employed to recover the samples [18].Typically, δ = 0.5.When mean squared error (MSE) is the quality metric employed, the image distortion is computed as The objective of traditional lossy coding schemes is to minimize the distortion while respecting the total bit budget of the downlink, i.e., B. Proposed approach Contrary to traditional approaches, the dual link image coding scheme utilizes both the downlink and the uplink.The main idea is that some reference information, say s, is computed in the ground station and transmitted to the satellite via the uplink.The computation of s may employ huge amounts of data and/or complex algorithms since storage and computational power are not constrained on the ground.Once transmitted, the satellite uses s to code X.If s and X exhibit statistical dependency, then H(X | s) < H(X), so the amount of information that is transmitted downwards can be reduced by the mutual information I(X; s) between X and s.This approach differs from methods based on distributed source coding proposed in the literature [19] since they do not consider the uplink channel to transmit information.It also differs from cloud-based image coding [20], [21] since our approach generates the reference image on the ground and then (partially) transmits it to the satellite.Nonetheless, ideas from these two coding approaches may also be employed in future work to enhance the features of the proposed method.
Overview of the dual link image coding scheme.Key to achieving high coding efficiency is to obtain an s sufficiently similar to X.As described in the next section, this paper explores three methods to generate s.Regardless of the method employed, this information takes the form of a reference image denoted by Y = {Y i }.The total bit budget of the uplink is denoted by B ↑ = T • C ↑ , with C ↑ being its channel transmission rate.The bit-depth of Y is that of X (i.e., D Y = D X ).Y needs to be coded when S Y = N • D Y > B ↑ .Again, the coding process employs (transformation and) quantization.The (transformed) samples recovered in the satellite are computed as in (1), i.e., with Y i and ∆ Y denoting the recovered samples of the reference image and the step size, respectively.Note that in (3) the division and floor operation are carried out in the ground station, whereas the other operations are performed on board.Any ∆ Y that satisfies H( Y ) ≤ B ↑ may be chosen.Once Y is received, the satellite computes the residual image, referred to as R, via then quantization is needed to transmit R to the ground station.The coding process (transforms and) quantizes R employing a step size ∆ R so that H( R) ≤ B ↓ .Once R is at the ground station, the image is recovered employing R and Y .With some abuse of notation, the samples recovered in the ground station through the dual link image coding scheme are also referred to as X.They are computed as X i = Y i + R i .Fig. 2 summarizes the steps of the dual link image coding scheme.
Using MSE as the quality metric, the objective of the proposed scheme is to minimize the distortion between X and X while respecting the bit budget of both the uplink and the downlink, i.e., If the capacity of the downlink is high enough (i.e., B ↓ ≥ H(R)), then the residual image can be transmitted to the ground station without information loss, so X is recovered losslessly.Note that this also holds for traditional approaches when B ↓ ≥ H(X).When lossless coding is employed, the coding system must employ reversible transformations to allow the perfect recovery of the data.The preliminary study carried out in [9] indicates that the use of a dual link image coding scheme may increase the compression efficiency of the coding system.Fig. 3 reports some of the results achieved in [9].Lossless coding performance is appraised in Fig. 3(a).This figure reports the minimum bit budget necessary to downlink the images with no losses, as a function of the uplink bit budget.Specifically, the horizontal axis is the entropy of the quantized reference image that is transmitted upwards (i.e., H( Y )), whereas the vertical axis is the entropy of the residuals transmitted downwards (i.e., H( R)).It is worth emphasizing that even though the estimates are quantized, lossless compression can be achieved if the residuals are not quantized (i.e., R = R).The figure depicts the results achieved when the image samples are directly transmitted and when they are first transformed via the 5/3 reversible wavelet transform [22].The results indicate that the use of the wavelet transform reduces the entropy of the signal by approximately 2.5 bps.Regardless of whether the wavelet transform is used or not, transmission of the reference image increases the compression efficiency.This is seen in the figure as the decreasing amount of data that is transmitted via the downlink as more data are transmitted upwards.The figure also provides the lossless compression performance achieved by JPEG2000 when no reference image is transmitted, which corresponds to a traditional downlink compression system.
The test reported in Fig. 3(b) evaluates lossy coding performance (employing the 9/7 irreversible wavelet transform).To do so, the bit budget of the uplink is fixed to a specific rate of B ↑ corresponding to 2 bps.The horizontal axis is the entropy of the downlinked quantized residuals, whereas the vertical axis is the quality of the image reconstructed on the ground, reported as the Signal to Noise Ratio (SNR) [23].Results for the lossy mode of JPEG2000 are also reported in the figure.As before, the results of JPEG2000 correspond to the case where no reference image is employed, i.e., when B ↑ = 0 bps.These results suggest that the dual link image coding scheme significantly increases the quality of the images, especially at low rates.When the wavelet transform is employed, the gains can be more than 8 dB compared to JPEG2000 used in the conventional manner.Further details regarding test conditions and images employed for these experiments can be found in [9].

C. Synchronization aspects
The application of the dual link image coding scheme needs to consider the synchronization between the ground station and the satellite.In order to compute R i , the satellite needs Y i , so some kind of synchronization is required.Let us assume that Y is transmitted in J packets of data.The packets are denoted by Φ ↑ j , 0 ≤ j < J, and each contains a set of (transformed and) quantized samples of size M = N/J.More precisely, Once Φ ↑ j is uploaded, the satellite decodes it, computes the corresponding residuals, and codes them in a packet referred to as The entropies of these packets are denoted by H(Φ ↑ j ) and H(Φ ↓ j ), respectively.The time spent to transmit them is As seen in Fig. 4, packets Φ ↑ j are uploaded consecutively, with being the instant at which packet Φ ↑ j begins to be transmitted.On the other hand, there may be gaps (idle periods) between the transmission of packets Φ ↓ j as discussed below.The transmission of Φ ↓ j must consider that the satellite needs some time to decode Φ ↑ j and to compute the residuals.This computation time is referred to as c j for packet j.The time t Φ ↓ j at which Φ ↓ j begins to be transmitted can then be computed as which corresponds to the earliest instant at which the packet is ready and the downlink is not occupied.For packets Φ ↓ 0 and Φ ↓ 5 depicted in Fig. 4, t Φ ↓ j is the instant in which packets Φ ↑ k , 0 ≤ k ≤ j have been transmitted plus the time needed to compute Φ ↓ j .This quantity is expressed by the left argument of the max{•} operator in (5).For the other packets of the figure, the earliest instant is when the previous packet (i.e., Φ ↓ j−1 ) has .The synchronization needed between the ground station and the satellite may reduce the effective bit budget of both channels from their ideal values of T • C ↑ and T • C ↓ .As seen in Fig. 4, there can be periods in which one or both channels are idle.Because the transmission of packets is performed consecutively in the uplink, this channel is idle only at the end of transmission.The downlink is idle from the beginning of transmission until t Φ ↓ 0 .Additionally, for the example shown in the figure, the downlink is idle from the completion of transmission of Φ ↓ 4 until t Φ ↓

5
. The effective bit budget of the uplink is then determined as that of the downlink is determined as In practice, the reduction in the bit budget of the uplink is not significant.Depending on the packets sizes, the reduction in the downlink may be significant since idle periods such as that occurring after Φ ↓ 4 in Fig. 4 may be more or less frequent.Depending on the requirements of the scenario, the dual link image coding scheme can use more or less packets of data.In general, we envisage three levels of synchronization.The first is for (transformed) samples (i.e., when J = N ).Each sample is coded and transmitted independently from the others.This maximizes B ′ ↑ and B ′ ↓ .Nonetheless, it may penalize compression efficiency since each reference sample and residual is coded independently.At the other extreme, the synchronization can be carried out at the level of the image (i.e., when J = 1).This may help to reduce H(Φ ↑ 0 ) and H(Φ ↓ 0 ) though it may halve the bit budget of both channels since t Φ ↓ 0 is significantly increased.When 0 < J < N , each packet may contain a reasonable number of reference samples/residuals, achieving a tradeoff between the size of the packets and the bit budget of the channels.As seen in the next section, the division of image samples into blocks (as carried out by many coding systems) may naturally correspond to these packets of data, simplifying the synchronization between satellite and ground station.
We remark that the synchronization discussed above is applicable when the satellite transmits the image captured in the current orbit.If the satellite had enough computational power and storage, such synchronization might be avoided by delaying the transmission of each image by one orbit, i.e., by sending up the reference image in the current orbit, computing and coding the residual during the next orbit, and transmitting it down in the next transmission slot.

A. Implementation modules
The results in [9] are based on the order-zero entropy of the data.Though being indicative, the performance of a real system is influenced by other aspects such as the coding strategy, the context formation approach, the probability model, or the entropy coder [24].Practical implementations of the dual link image coding scheme may employ the engine of any image codec.As previously stated, the implementation proposed herein employs that of JPEG2000 [22] due to its advanced features.
The main stages of a JPEG2000 coding engine are [22]: 1) wavelet transform, 2) bitplane and entropy coding, and 3) codestream organization.As shown in the previous section, R can be computed in the image domain or in the transformed domain.The entropy-based results of Fig. 3 indicate that higher efficiency is obtained in the transformed domain, so our implementation uses the wavelet transform.The proposed implementation is depicted in Fig. 5.The ground station uses a JPEG2000 encoder to code the reference image Y .To distinguish the wavelet transform from the subsequent stages of JPEG2000, Fig. 5 depicts this stage separately from the other coding modules.The codestream generated for Y is transmitted to the satellite.After (partially) decoding Y , the satellite computes the corresponding residuals employing Y and X.Note that the decoder for Y in the satellite does not detransform the data, since R is computed in the wavelet domain.The satellite encoding module generates the packets that are put in the codestream for R.Both the codestream for Y and R are the inputs to the decoding modules in the ground station, which produces the recovered image X.
It is worth noting that JPEG2000 divides the transformed image in small sets of wavelet coefficients called codeblocks.The codeblocks are independently coded using bitplane and entropy coding, producing a bitstream for each.These bitstreams are truncated at a convenient length and organized in the codestream including headers that provide ancillary information to decode them.JPEG2000 also allows for the formation of quality layers, though they are not employed in our implementation.As mentioned previously, the codeblocks provide a convenient mechanism for synchronization in the dual link image coding scheme.Specifically, the codeblocks serve to segment the transmission of the image into small packets that can be processed independently by the satellite.Section IV provides experimental evidence that this segmentation helps to maximize the use of the channel capacity.

B. Specific modifications
Two modifications have been applied to the original JPEG2000 coding engine.The first is associated with the bitplane coding process.For a given codeblock, the sum of absolute residuals is computed, i.e., S = l |X l − Y l |, with | • | denoting the absolute value and the subindex l denoting the coefficients within the codeblock.S is compared with the absolute sum of the coefficients, i.e., S ′ = l |X l |.If S < S ′ , then the residuals for that codeblock (i.e., R l ) are coded as planned.On the other hand, if S ′ < S, the original coefficients X l are coded for that codeblock.This conditional is performed to mitigate the effects of meteorological events such as clouds.When such events occur, the reference and the captured images may be significantly different within certain spatial regions.In such cases, coding R l typically produces a larger bitstream than that for X l .Performing this conditional on a codeblockby-codeblock basis is ideal to take into account that there often exist spatial regions with meteorological events and others without.Evidently, the use of this conditional requires signaling which type of data are coded in each codeblock, though this does not penalize coding performance since it only requires one bit per codeblock.We note that computing the sum of absolute differences is a low-complexity technique that is employed only once per codeblock (unlike in motion estimation and disparity maps for video coding [25], [26], where it is employed repetitively in a search).
The second modification applied in our implementation is to skip arithmetic coding of the refinement bits coded with context 17.This context is employed in JPEG2000 for all refinement bits of each coefficient except the first [22].It has been shown [16], [17], [27] that such bits are nearly random, so entropy coding does not provide coding gains, especially when applied in remote sensing images with high bit-depths.The next section provides experimental evidence of this fact.JPEG2000 defines five codestream progression orders [22].A progression order for a JPEG2000 file defines the order in which JPEG2000 packets are stored in the file.In this work, packets are transmitted in an order chosen to maximize channel utilization.Once the packets are received, they can be stored in any of the standard JPEG2000 progression orders.
As described in conjunction with Fig. 4, the uplink is fully occupied (except at the end of the transmission time) because Φ ↑ j are transmitted consecutively.The downlink, on the other hand, may experience periods in which no data are transmitted (e.g., the gap between Φ ↓ 4 and Φ ↓ 5 in the figure).Our implementation transmits the data in an order so that these idle moments are minimized.More precisely stated, the data are transmitted so that t Φ ↓ j is (almost) always computed via the left argument of the max{•} operator in (5).The idea is to transmit the shortest codeblock bitstreams at the beginning of the transmission period T .This also serves to shorten the time that the downlink is idle prior to the transmission of the first packet.Generally, the shortest bitstreams correspond to codeblocks that are in the largest resolution levels of the wavelet decomposition, i.e., in those levels that contain the finest details of the image.Typically, the downlink packets for these subbands are significantly larger than the corresponding uplink packets due to the higher rates (i.e., fidelity) typically employed in the downlink.Accordingly, our implementation transmits the bitstreams of the codeblocks in the largest resolution levels of all components first, then those within the next resolution level, and so on.Fig. 6 illustrates the synchronization that is intended to be achieved with this strategy.As seen in the experimental results section, this transmission order almost eliminates idle periods in the downlink.

C. Generation of the reference image
The performance achieved by the proposed method depends both on the amount of data uploaded to the satellite and the mutual information between the reference and the captured image.This work explores three strategies to generate the reference image Y .The first uses the most recent previous image captured of the same area.As seen in Fig. 11 and 13, consecutive images tend to be similar except when meteorological events occur.This similarity is due to the images being captured during similar times of the year, in which lakes/rivers and vegetation present similar features.We remark that most EO satellites are positioned in sun-synchronous orbits, which is a special type of polar orbit in which the repeat cycle covers the same area of the Earth at the same time of the day.This results in nearly identical illumination, which further increases the temporal correlation of the images.When meteorological events occur, the previous image may not be similar to that captured.Even so, this strategy still employs the most previous image so that the results provided below cover a wide range of favorable and non-favorable conditions for the proposed system.
The second strategy employs all available images to compute an average in a sample-by-sample fashion.The experiments described below employ a temporal series covering one year.In practice, a full year of images prior to X would be employed in the computation of Y .However, due to the data available for our experiments, Y is computed here with all images of the series except the one that is being compressed, which is sufficiently valid for evaluation purposes.When data from multiple years are available, the reference image could be computed as the average of images only from the same period of the year since images captured during different seasons are commonly different due to the meteorology.
The last strategy employs the correlation between images.In Fig. 12(a) and 14(a) the (Pearson product-moment) correlation coefficient is depicted for all image pairs within each temporal series.Both the vertical and horizontal axes of the figures correspond to an index of an image of the series in chronological order.Each colored cell in the figure represents the correlation coefficient between the two corresponding images, depicted with a blue-to-red color map.As expected, the figure is symmetric about the diagonal, and all cells on the diagonal have a correlation coefficient of 1.The results in these figures indicate that some image pairs in a series are more highly correlated than others.In general, they tend to be images with few or no meteorological events (see, for instance, the images captured on 3/12/15, 3/28/15, and 4/13/15 from the series "Barcelona" and the images captured on 3/27/15, 4/12/15, and 4/28/15 from the series "Salt Lake City").
The correlation coefficients discussed above were computed using all samples (of all components) of the corresponding image pairs.However, the correlation can vary significantly from component to component.This is illustrated in Fig. 12(b,c) and 14(b,c), which report the correlation coefficient for components 6 and 9 from all image pairs.Accordingly, the third strategy proposed to generate Y may utilize components from different images within the temporal series.Specifically, for each component of the target image X, the reference component is chosen as the component among all images (excluding X) having the highest correlation with the target component.Evidently, this strategy can not be applied in practice since the correlation can only be computed when both images are available.It is employed herein due to its interest from a theoretical perspective, showing that the correlation is a good metric in this scheme.It could be employed in future work to aid other strategies to generate the reference image, or to analyze the performance of the system depending on the correlation of the images.Experiments indicate that the use of other metrics, such as mutual information, do not yield increased performance.

IV. EXPERIMENTAL RESULTS
The dual link image coding scheme is evaluated with the two temporal series depicted in Figs.11 and 13, which have a total of 45 images and more that 15 GB of data.The temporal series are respectively referred to as "Barcelona" and "Salt Lake City" since they cover wide areas around these cities in Spain and the USA.The series have all images captured by the Landsat 8 satellite during a period of a year."Barcelona" corresponds to the orbit WRS-2 path 198, row 31 and the images are all those available in [10] from October 10, 2014 to October 6, 2015. 1 "Salt Lake City" corresponds to the orbit WRS-2 path 38, row 32 and the images are all those available in [10] from November 3, 2014 to October 21, 2015.All images in both series are 4096×4096, have 11 components and a bit-depth of 16 bps.The raw size of each image is 352 MB.As seen in the figures, the images are from regions with different types of vegetation, mountains, urban areas, lakes, and seas, and have abundant meteorological events, including snow and clouds.
Our implementation is based on the free JPEG2000 codec BOI [28]. 2 The coding parameters are: codeblocks of size 64×64, 5 levels of wavelet decomposition, and a single quality layer.Results for lossless compression utilize the reversible CDF 5/3 wavelet transform, whereas results for lossy compression utilize the irreversible CDF 9/7 wavelet transform.No transform along the spectral axis is applied to simplify the evaluation and because these images have few spectral components, so the coding gains when such a strategy is employed are limited [11], [13].Inter-component redundancy might be exploited to enhance coding performance if the proposed method were employed to code hyperspectral images with hundreds of components.
The first test evaluates lossless performance.The reported results are the minimum channel capacity needed in the downlink to transmit the images losslessly.If the downlink capacity were lower than that, then only lossy regimes could be employed (see results below).Fig. 7 depicts the results obtained for three representative images of each series.In this test, Y is the previous image.The leftmost charts in Fig. 7 are from days in which the current and the previous image have no meteorological events; the charts in the middle are from days in which both the reference and the captured image have some clouds; and the rightmost charts are from days in which X or Y is completely clouded.The results are reported under the same conditions as described with respect to Fig. 3(a).The results indicate that, when no meteorological events occur, the proposed method, labeled as "DLIC," increases the coding efficiency by up to 0.8 bps compared to a conventional strategy, which is almost a 10% increase in coding efficiency.When meteorological events occur, these coding gains decrease according to the dissimilarity between the reference and the captured images.Note that the efficiency of our implementation increases as more data are uploaded, (f) "Salt Lake City" 3/27/15 Fig. 7: Evaluation of the lossless coding performance for three images of each temporal series.The DLIC scheme employs the previous image as the predictor.though it saturates around 3 bps for most images.When the reference image is completely different from the acquired (as it may happen when clouds cover the whole image), or when no data are uploaded, the efficiency of "DLIC" is virtually the same as that achieved by the conventional JPEG2000 system (that does not use the uplink).The slight increase in the efficiency of "DLIC" with respect to JPEG2000 seen in Fig. 7(c) and (f) is due to the skipping of the entropy coding for context 17 as described before.
The second test evaluates lossy performance.Fig. 8 depicts the results obtained for the same images as in Fig. 7 also using the previous image for Y .The results are depicted as described in conjunction with Fig. 3(b), setting the bit budget of the uplink to 0.1, 0.5, 1, 2, and 4 bps.When Y and X are similar (leftmost charts), the proposed method significantly increases the efficiency of the coding system for all downloading rates.The increase in efficiency depends on the upload bit budget, achieving gains of up to 8 dB.When the images are completely covered with clouds (rightmost charts), the efficiency of the system is virtually the same as that of a conventional method.The gains achieved with partially clouded images vary depending on the clouded areas, with coding gains of up to 3 dB.
The next test evaluates the performance achieved when using the three aforementioned strategies to generate Y .Fig. 9 reports the results for lossless compression when coding one image of each series.The selected image for "Barcelona" is one for which the immediately previous image is completely covered by clouds, whereas that for "Salt Lake City" is only partially covered with clouds.The results of Fig. 9 indicate that the use of the previous image as Y does not achieve competitive results for such images.The strategy that averages all available images achieves higher efficiency, whereas the strategy based on the correlation coefficient achieves the best results reported, though is not practical as explained before.Evidently, the gains depend on the intensity of the meteorological events as seen in the larger differences among strategies depicted in Fig. 9(a).We also note that none strategy works well when coding images that are covered by clouds (not seen in Fig. 9) since, to the best of our knowledge, they can not be predicted with accuracy.In such case "DLIC" achieves the same performance as a traditional approach.Fig. 10 reports the lossy coding results for the same images as used in Fig. 9. Three charts per image are depicted, each corresponding to a different bit budget of the uplink.Again, for each uplink rate, the Y that achieves the highest efficiency is that generated via the correlation coefficient, especially for "Barcelona."These results suggest that the use of the average image is most effective when the previous image has prominent meteorological events.Otherwise the previous image is adequate.The results achieved by the strategy that employs the correlation coefficient are slightly better, indicating that such a metric suits this coding scheme.This may serve in future work to devise more efficient strategies and/or for theoretical studies.
Table I and Table II report the results achieved for the two series and for the three strategies that generate Y , for lossless and lossy compression respectively.The results are reported on average for all images of the series.For lossless compression, the most competitive results for "Barcelona" are  achieved when Y is the previous image, whereas for "Salt Lake City" the most competitive results depend on the upload rate, though the strategy that averages all images is slightly superior to the others.This indicates that, on average, the previous image is already a good reference for X.The strategy that employs the correlation coefficient achieves virtually the same performance as the respective best strategy in each case.On average, the coding gains for lossless compression are about 5% with respect to a conventional method.For comparison, Table I also reports the results achieved by the CCSDS standard 123.0-B-1[3].Like with the other methods evaluated, this standard is employed so that inter-component redundancy is not exploited.The coding parameters are set as: sample adaptive mode, neighbor oriented predictor, and full local sum.The results indicate that the performance of this CCSDS standard is higher than that of JPEG2000, though lower than that achieved by the proposed scheme.
The results of Table II for lossy compression suggest similar conclusions to those for the lossless mode.The previous image is the best predictor for "Barcelona," whereas the average strategy is slightly better than the others for "Salt Lake City" though in this case there is some dependency on the upload and download rate.Again, the correlation coefficient strategy achieves (practically) the same SNR as the best strategy in most tests.The average gains obtained for lossy compression vary significantly depending on the upload rate.For 0.1, 1, and  4 bps of upload rate, the gains are around 0.3, 1, and 2 dB, respectively, with variations depending on the image and the download rate.If the captured image has heavy meteorological events, the dual link image coding scheme does not provide enhancements, though it does no worse than a conventional system.When the captured image has no meteorological events, the proposed method significantly increases the coding performance.
The last test evaluates the efficiency with which the down-link is used.Table III reports the results, which are expressed as the percentage of effective transmission time, given by B ′ ↓ /B ↓ • 100%.The results are averaged over all images of each series.As described previously, the upload transmission is constructed to minimize idle moments in the downlinkassuming that the channel transmission rate of the downlink is higher than that of the uplink.The results of Table III indicate that the effective utilization of the downlink is nearly 100% when this assumption is valid.Only when the transmission rate of the downlink is smaller than that of the uplink (third rightmost column in Table III), the effective bit budget of the downlink is reduced around 10%.In practice, such a configuration should not occur and, if it does, a conventional transmission order for JPEG2000 might then be more appropriate.The effective utilization of the uplink (i.e., B ′ ↑ /B ↑ ) is virtually 100% for all tests, and is not reported herein.
V. CONCLUSIONS Typically, image coding communication systems are devised to compress an image when all information is available at the sender side.The compressed image is transmitted to the receiver employing a single channel of communication.In many systems, however, there are two channels of communication with full duplex capacity.Conventional methods employ only one of these channels while the other is idle.This work introduces a coding system that utilizes both channels of communication.It is called dual link image coding.Its main insight is to transmit some reference information from the receiver to the sender at the same time that the sender is coding and transmitting the image.This reference information is  correlated with the image and would not normally be available at the sender due to storage restrictions or other factors.Once at the sender, the reference information helps to compress the image resulting in higher coding efficiency.The dual link image coding scheme is evaluated in this work for the transmission of Earth observation images captured by satellites with polar orbits.Our practical approach employs the coding engine of the well-known compression standard JPEG2000.Data from the Landsat 8 satellite are employed to evaluate the performance of the method.Experimental results indicate that practical implementations of the dual link coding scheme can significantly increase the efficiency of compression systems for both lossy and lossless regimes.The more correlated the reference information is with the acquired image, the higher the efficiency achieved.The proposed system is never inferior to conventional schemes.Future work may propose the use of the dual link image coding scheme with CCSDS standards and/or employing techniques of distributed and cloud-based image coding.Fig. 14: Correlation between the images of the temporal series "Salt Lake City."

Fig. 3 :
Fig. 3: (a) Entropy of image samples and wavelet coefficients in the lossless regime, and (b) SNR vs. download rate for lossy transmission with a fixed uplink rate of 2 bps.These figures are reproduced from [9].

Fig. 4 :
Fig. 4: Illustration of the synchronization needed to transmit and process packets of data.

Fig. 5 :
Fig. 5: Coding modules deployed in the dual link image coding scheme.

Fig. 6 :
Fig. 6: Illustration of the intended synchronization between the ground station and the satellite.

15 Fig. 8 :
Fig.8: Evaluation of the lossy coding performance for three images of each temporal series.The DLIC scheme employs the previous image as the predictor.The upload rate is reported between parentheses.

15 Fig. 9 :
Fig.9: Evaluation of the lossless coding performance for one image of each temporal series.The DLIC scheme employs three different predictors (reported between parentheses).

Fig. 10 :
Fig.10: Evaluation of the lossy coding performance for one image of each temporal series.The DLIC scheme employs three different predictors (reported between parentheses).The upload rate is reported in the caption of each figure.

TABLE I :
Evaluation of the lossless coding performance for all images of each temporal series.The required average download rate is reported for each coding scheme, expressed in bps.

TABLE II :
Evaluation of the lossy coding performance for all images of each temporal series.The results are reported as average SNR (in dB) for each coding scheme.

TABLE III :
Evaluation of the efficiency with which the downlink is utilized, expressed as B ′ ↓ /B ↓ • 100%.