Optical satellite flutter processing method and device
By determining the master and slave images of the optical satellite, calculating the three-dimensional coordinate values of the successfully matched pixel points, and using the vibration compensation model and adjustment system, the problems of on-orbit calibration and heterovelocity matching in satellite vibration processing are solved, and accurate compensation of optical satellite images is achieved, thereby improving image quality and data processing accuracy.
Patent Information
- Application Number
- CN202411213401.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2044-08-30
AI Technical Summary
When processing satellite flutter, existing technologies cannot effectively consider the on-orbit calibration results and have difficulty dealing with the problem of different speed matching, resulting in poor optical satellite data preprocessing effects.
By determining the master and slave images of the optical satellite, determining the successful matching area in the master image based on the slave image, and calculating the three-dimensional coordinate values of the successfully matched pixel points, the flutter compensation results, including the compensation values of the pitch angle and roll angle, are obtained using the angle-based flutter compensation model and adjustment system.
It achieves accurate compensation for optical satellite image jitter, improving image quality and data processing accuracy.
Smart Images

Figure CN119273587B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of optical remote sensing satellites, and in particular to a method and device for processing optical satellite vibration. Background Art
[0002] Because the accuracy and output frequency of traditional onboard attitude measurement units, such as star sensors and gyroscopes, are relatively limited relative to the amplitude and frequency of satellite jitter, traditional linear array push-broom optical satellite data preprocessing, based on direct attitude measurement or fused results, cannot avoid the impact of satellite jitter. Currently, there are two main approaches to addressing satellite platform jitter.
[0003] The first method involves installing high-precision attitude measurement sensors (such as high-precision gyroscopes and star sensors) on satellites to directly obtain satellite flutter information. However, this method requires increased hardware costs, occupies valuable space resources onboard, and cannot be applied to already launched satellites.
[0004] The second method uses the overlapping areas of images acquired from different CCDs (charge-coupled devices) or different wavelength bands to detect flutter. Since images captured by different CCDs or wavelength bands exhibit relative displacement or deformation when a satellite vibrates, analyzing these differences can indirectly infer the satellite's vibration state. However, this method does not consider on-orbit calibration results and is difficult to handle, such as inter-velocity matching. Summary of the Invention
[0005] The present invention provides an optical satellite vibration processing method and device, which are used to solve the problems that the existing method of indirectly calculating the vibration state of the satellite does not consider the on-orbit calibration results and is difficult to handle the different speed matching.
[0006] The present invention provides a method for processing optical satellite flutter, comprising:
[0007] Determining a master imager and at least two slave images of an optical satellite, wherein the master imager is a charge-coupled device (CCD) having the shortest distance from a principal point of a focal plane in a main band of the optical satellite, and the slave images are CCDs in adjacent bands of the main band having imaging ranges substantially close to those of the master imager at different times;
[0008] Determine a successfully matched area in the master image based on the at least two slave images, wherein any successfully matched pixel in the successfully matched area in the master image can successfully match corresponding pixels in all slave images;
[0009] Determine the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area;
[0010] The angle-based target flutter compensation model, the successfully matched pixel points in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixel points are applied to the adjustment system to obtain a flutter compensation result, wherein the angle includes a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value.
[0011] According to an optical satellite jitter processing method provided by the present invention, determining a matching successful area in the master image based on the at least two slave images includes:
[0012] Perform pixel-by-pixel matching on each slave slice using the master slice as a reference to obtain pixel matching results corresponding to each slave slice and the master slice;
[0013] Taking each row of pixels in the image as a unit, determining the mean square error (MSE) of the pixel matching results in the vertical and along-track directions, and performing gross error elimination based on the MSE;
[0014] Determining the minimum row coordinate value and the maximum row coordinate value of the successfully matched pixel points in the master image after gross error removal, wherein the successfully matched pixel points are pixel points that can be successfully matched with all the slave images;
[0015] Based on the minimum row coordinate value and the maximum row coordinate value, a matching successful area in the main image is determined.
[0016] According to an optical satellite flutter processing method provided by the present invention, the angle-based target flutter compensation model is obtained by:
[0017] discretizing an angle-based flutter compensation model according to the main band and the travel time of the target CCD of the main band;
[0018] Solving the angle-based flutter compensation model according to the first calibration result to obtain a discrete angle-based target flutter compensation model, wherein the first calibration result is obtained by calibrating the main band and the CCD corresponding to the main band based on ground control points of the optical satellite in different bands to obtain external calibration coefficients and first internal calibration coefficients, and calculating the pointing angle error of the ground control point based on the external calibration coefficients and the first internal calibration coefficients, and eliminating the gross error of the ground control point;
[0019] The discrete angle-based target flutter compensation model is fitted using a piecewise polynomial function to obtain an angle-based target flutter compensation model.
[0020] According to the present invention, an optical satellite flutter processing method is provided, wherein an angle-based target flutter compensation model, matching pixels in the matching successful area, and the three-dimensional coordinate values of the matching pixels are applied to an adjustment system to obtain a flutter compensation result, including:
[0021] Establishing a plane intersection error equation based on the successfully matched pixel points and the angle-based target chatter compensation model;
[0022] Establishing a virtual observation equation based on the three-dimensional coordinate values of the successfully matched pixel points;
[0023] The error equation based on the plane intersection and the virtual observation equation are applied to the adjustment system to obtain a vibration compensation result.
[0024] According to the present invention, a method for processing optical satellite vibration is provided, the method further comprising:
[0025] Fitting the chatter compensation result to obtain a fitted chatter compensation result;
[0026] performing a one-dimensional linear transformation on an angle corresponding to the angle-based target chatter compensation model based on the start row coordinates of the control points in the successfully matched area, the end row coordinates of the control points in the successfully matched area, the chatter compensation start control value, the chatter compensation end control value, and the fitted chatter compensation result, to obtain a transformed chatter compensation result;
[0027] Based on the transformed chatter compensation result, re-performing the step of determining the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area;
[0028] The step of applying the angle-based target chatter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixels to the adjustment system to obtain a chatter compensation result is continued, and the compensation angle change calculated by two consecutive iterations is less than a preset threshold.
[0029] According to an optical satellite jitter processing method provided by the present invention, the jitter compensation start control value and the jitter compensation end control value are obtained by the following method:
[0030] determining a chatter compensation start control value based on the first control point and the second control point;
[0031] determining a chatter compensation end control value based on the third control point and the fourth control point;
[0032] Among them, the first control point is a control point located in the upper left position of the target of the successful matching area, the second control point is a control point located in the upper right position of the target of the successful matching area, the third control point is a control point located in the lower left position of the target of the successful matching area, and the fourth control point is a control point located in the lower right position of the target of the successful matching area.
[0033] The present invention also provides an optical satellite flutter processing device, comprising:
[0034] a first optical satellite dither processing module, configured to determine a master imager and at least two slave images of an optical satellite, wherein the master imager is a charge-coupled device (CCD) having the shortest distance from a principal point of a focal plane in a primary band of the optical satellite, and the slave images are CCDs in adjacent bands of the primary band having imaging ranges substantially close to those of the master imager at different times;
[0035] a second optical satellite dither processing module, configured to determine, based on the at least two slave images, a successfully matched area in the master image, wherein any successfully matched pixel point in the successfully matched area in the master image can be successfully matched to a corresponding pixel point in all slave images;
[0036] a third optical satellite dither processing module, configured to determine three-dimensional coordinate values of matching successful pixel points in the matching successful area;
[0037] The fourth optical satellite flutter processing module is configured to apply an angle-based target flutter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinates of the successfully matched pixels to an adjustment system to obtain a flutter compensation result, wherein the angles include a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value.
[0038] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, any one of the above-described optical satellite jitter processing methods is implemented.
[0039] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the optical satellite flutter processing method described above is implemented.
[0040] The present invention also provides a computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements any one of the above-mentioned optical satellite flutter processing methods.
[0041] The present invention provides an optical satellite flutter processing method and device. The method and device determine a master image of an optical satellite and at least two slave images. The master image is a CCD with the shortest distance to a principal point of a focal plane in a main band of the optical satellite, and the slave images are CCDs in adjacent bands of the main band that have imaging ranges substantially close to those of the master image at different times. Based on the at least two slave images, a successful matching area is determined in the master image, wherein any successful matching pixel in the successful matching area of the master image can be successfully matched to a corresponding pixel in all slave images. The three-dimensional coordinate values of the successful matching pixels in the successful matching area are determined. An angle-based target flutter compensation model, the successful matching pixels in the successful matching area, and the three-dimensional coordinate values of the successful matching pixels are applied to an adjustment system to obtain a flutter compensation result. The angles include a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value. The present invention determines the master and slave images of an optical satellite, determines the successfully matched area in the master image based on the slave image, calculates the three-dimensional coordinate values of the successfully matched pixel points, and then obtains the jitter compensation results through an angle-based jitter compensation model and adjustment system. This achieves accurate compensation for the jitter of the optical satellite image, and improves the image quality and the accuracy of data processing. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] In order to more clearly illustrate the technical solutions in the present invention or the prior art, a brief introduction is given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0043] Figure 1 1 is a flow chart of a method for processing optical satellite flutter provided by the present invention;
[0044] Figure 2 1 is a schematic structural diagram of an optical satellite flutter processing device provided by the present invention;
[0045] Figure 3 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION
[0046] To make the objectives, technical solutions, and advantages of the present invention more clear, the technical solutions of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the embodiments described are only some of the embodiments of the present invention, not all of them. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the present invention.
[0047] The following combination Figure 1The optical satellite flutter processing method and apparatus of the present invention are described.
[0048] Figure 1 FIG. 1 is a flow chart of the optical satellite vibration processing method provided by the present invention, as shown in FIG. Figure 1 As shown, the optical satellite vibration processing method includes the following steps:
[0049] Step 110: Determine a master image and at least two slave images of the optical satellite, where the master image is a charge-coupled device (CCD) having the shortest distance from a principal point of a focal plane in a main band of the optical satellite, and the slave images are CCDs in other bands of the optical satellite that have imaging ranges substantially close to that of the master image at different times.
[0050] In this step, the main band is the band closest to the main point of the focal plane among the multiple bands of the optical satellite. The main band is a band. The adjacent bands of the main band refer to the bands that have a large overlap with the main band in the imaging range.
[0051] In an optical system, the focal plane is the plane passing through the focal point and perpendicular to the system's principal optical axis. The focal plane is where the camera's sensor is mounted. The principal point of the focal plane is usually the point on the focal plane that intersects the optical system's principal optical axis.
[0052] In this embodiment, a single band is typically composed of multiple CCDs (Charge-Coupled Devices). The CCD with the shortest distance to the principal point of the focal plane in the main band is the primary CCD. In this embodiment, the CCD with the shortest distance to the principal point of the focal plane in the main band is selected as the primary CCD. If multiple CCDs in the main band are all close to the principal point of the focal plane, the CCD that best matches the reference DOM (Digital Orthophoto Map) is selected as the primary CCD based on their compatibility. For example, the CCD with the closest spectral range and resolution to the reference DOM is selected as the primary CCD.
[0053] Step 120: Determine a successfully matched area in the master image based on the at least two slave images, wherein any successfully matched pixel in the successfully matched area in the master image can be successfully matched to a corresponding pixel in all slave images.
[0054] During the image matching process, the slave image is searched for pixels corresponding to feature pixels or regions on the master image, thereby determining a successfully matched region. Each successfully matched pixel in this successfully matched region has a corresponding matching point in all the slave images. In other words, for each successfully matched pixel in this successfully matched region on the master image, one or more corresponding pixels can be found in the slave images, and these corresponding pixels have similar features or attributes.
[0055] Step 130: Determine the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area;
[0056] For each successfully matched pixel in the successfully matched area, the 3D coordinates of the successfully matched pixel are calculated using the original parameters of the successfully matched pixel on each slice (such as attitude, position, precession, nutation, polar motion, calibration, etc.) and a known DEM (digital elevation model) through the intersection method. It should be noted that due to the presence of image data from multiple perspectives, multiple 3D coordinate values for the successfully matched pixel can be obtained.
[0057] For the same successfully matched point, the 3D coordinate values of the matched pixel are statistically analyzed to calculate their mean and mean error. A threshold (e.g., 3 times the mean error) is set. If the error exceeds 3 times the mean error, the result is considered unreliable and discarded. Otherwise, the mean is used as the 3D coordinate value of the matched point.
[0058] Step 140: Apply the angle-based target flutter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixels to an adjustment system to obtain a flutter compensation result, where the angles include a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value.
[0059] In remote sensing, photogrammetry, and related fields, an angle-based jitter compensation model is proposed to correct image quality degradation caused by device vibration (e.g., cameras on satellites, aircraft, or drones). This model primarily uses two angular parameters, roll and pitch, to estimate and compensate for the effects of jitter on images. This model aims to eliminate the effects of jitter on image quality by monitoring or predicting changes in these two angular parameters in real time and applying corresponding corrections to the image.
[0060] Based on this, in this embodiment, the angle-based flutter compensation model is further optimized to obtain the desired angle-based target flutter compensation model. Specifically, the angle-based target flutter compensation model is obtained by:
[0061] discretizing an angle-based flutter compensation model according to the main band and the travel time of the target CCD of the main band;
[0062] Solving the angle-based flutter compensation model according to the first calibration result to obtain a discrete angle-based target flutter compensation model, wherein the first calibration result is obtained by calibrating the main band and the CCD corresponding to the main band based on ground control points of the optical satellite in different bands to obtain external calibration coefficients and first internal calibration coefficients, and calculating the pointing angle error of the ground control point based on the external calibration coefficients and the first internal calibration coefficients, and eliminating the gross error of the ground control point;
[0063] The discrete angle-based target flutter compensation model is fitted using a piecewise polynomial function to obtain an angle-based target flutter compensation model.
[0064] Because jitter varies over time, the angle-based jitter compensation model is discretized according to the line time (i.e., the image line scan time) of the main band and the target CCD of the main band. This allows for a corresponding jitter compensation value for each line or portion of the image.
[0065] Here, during the data preparation stage, the band closest to the principal point of the focal plane can be selected as the main band, and the CCD closest to the principal point of the focal plane can be selected as the main CCD. If there are multiple CCDs close to the principal point of the focal plane, the CCD that is easier to match with the reference DOM can be selected as the target CCD.
[0066] It should also be noted that the external calibration coefficient is the installation matrix of the main band, and the first internal calibration coefficient is the pointing angle polynomial model coefficient of the main band.
[0067] Specifically, the two can be obtained by constructing an imaging model. For example, keeping the pointing angle polynomial model coefficients unchanged, using all valid control points to calculate the external calibration coefficients, that is, the installation matrix; keeping the installation matrix unchanged, using all valid control points to calculate the internal calibration coefficients, that is, the pointing angle polynomial model coefficients.
[0068] Parameter refinement of the external calibration coefficients can be performed by calculating the pointing angle error of each ground control point based on the above-mentioned installation matrix and the pointing angle polynomial model coefficients, and eliminating the gross errors in the ground control points until the angle change of the external calibration installation matrix is less than a preset angle change threshold, and the refined first calibration result can be obtained.
[0069] It should also be noted that an adjustment system is a method used to address errors in measurement data and optimize measurement results. In this embodiment, the adjustment system is used to combine an angle-based chatter compensation model, successfully matched pixels, and their 3D coordinates to calculate the optimal chatter compensation result. The adjustment system can use methods such as least squares to minimize the sum of squared residuals between the observed values (i.e., the positions of the pixels under multiple viewing angles) and the predicted values (i.e., the positions calculated based on the model and parameters), thereby obtaining the optimal pitch and roll compensation values.
[0070] The optical satellite jitter processing method provided by an embodiment of the present invention determines the master and slave images of an optical satellite, determines the successfully matched area in the master image based on the slave image, calculates the three-dimensional coordinates of the successfully matched pixels, and then obtains the jitter compensation results using an angle-based jitter compensation model and adjustment system. This achieves precise compensation for optical satellite image jitter, improving image quality and data processing accuracy.
[0071] In some embodiments, determining a successful matching area in the master slice based on the at least two slave slices includes:
[0072] Perform pixel-by-pixel matching on each slave slice using the master slice as a reference to obtain pixel matching results corresponding to each slave slice and the master slice;
[0073] Taking each row of pixels in the image as a unit, determining the mean square error (MSE) of the pixel matching results in the vertical and along-track directions, and performing gross error elimination based on the MSE;
[0074] Determining the minimum row coordinate value and the maximum row coordinate value of the successfully matched pixel points in the master image after gross error removal, wherein the successfully matched pixel points are pixel points that can be successfully matched with all the slave images;
[0075] Based on the minimum row coordinate value and the maximum row coordinate value, a matching successful area in the main image is determined.
[0076] In this step, a high-precision dense matching method can be used to traverse every pixel on the slave slice with the master slice as the reference to obtain a pixel matching result from the slave slice to the master slice. After the matching is completed, the obtained pixel matching result may contain some inaccuracies, i.e., gross errors. To identify and eliminate these gross errors, this embodiment will then perform a statistical analysis on the pixel matching results.
[0077] Specifically, each row of the image is treated as a unit, and the mean square error (RMS) of the pixel matching results for that row in the vertical (perpendicular to the satellite's orbit) and along (along the satellite's orbit) directions is calculated. Specifically, the mean square error reflects the degree of dispersion or uncertainty in the pixel matching results. A small mean square error indicates that the pixel matching results are relatively concentrated, with a small deviation from the true value, and high pixel matching accuracy. Conversely, a large mean square error indicates that the pixel matching results are relatively dispersed, with a large deviation from the true value, and low pixel matching accuracy.
[0078] In this embodiment, a threshold value (eg, 3 times the mean square error) is set, and any pixel matching result with a mean square error exceeding the threshold value is considered as a gross error and is removed from the result.
[0079] After completing the above steps, a filtered pixel matching result is obtained. Pixels in the master image that successfully match all slave images are then called successfully matched pixels. To speed up the subsequent calculation process, you can select successfully matched pixels at a certain interval.
[0080] Finally, the row coordinates of all successfully matched pixels are counted to find the minimum and maximum row coordinates. The range between these two values is called the successful matching area.
[0081] In this embodiment, a high-precision, dense matching method is used to perform pixel-by-pixel matching between the master and slave images, ensuring high pixel matching accuracy between the slave and master images. By calculating the mean square error of each row of pixel matching results and eliminating gross errors, mismatched or incorrectly matched pixels can be effectively removed. Finally, the pixel matching results, after gross error elimination, are filtered to identify the successfully matched pixels and used for subsequent processing, ensuring the accuracy and reliability of chatter detection results.
[0082] In some embodiments, applying the angle-based target chatter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixels to an adjustment system to obtain a chatter compensation result includes:
[0083] Establishing a plane intersection error equation based on the successfully matched pixel points and the angle-based target chatter compensation model;
[0084] Establishing a virtual observation equation based on the three-dimensional coordinate values of the successfully matched pixel points;
[0085] The error equation based on the plane intersection and the virtual observation equation are applied to the adjustment system to obtain a vibration compensation result.
[0086] In this step, when using the successfully matched pixels and the flutter compensation model to establish the plane intersection error equation, the parameters of the angle-based target flutter compensation model, such as the compensation values for pitch and roll angles, are solved as unknowns. Here, the plane intersection error equation can be expressed as follows:
[0087] ;
[0088] in, 、 as well as in is the unknown number in the adjustment, is the elevation value corresponding to the point, The coordinates of the camera station provided by GPS, 、 The row and column direction angles are queried or calculated based on the matching successful pixel points. 、 is the corresponding residual, Convert the latitude and longitude coordinates into spatial rectangular coordinates. The rotation matrix for converting the space rectangular coordinates under WGS84 to the coordinates under the camera coordinate system is: is the rotation matrix formed by the angle compensation value obtained at the corresponding time point of the coordinate, Outputs a 2-row, 1-column vector, where the first row is the result of dividing the first row by the third row of the original input vector, and the second row is the result of dividing the second row by the third row of the original input vector.
[0089] In this step, the three-dimensional coordinate values of the successfully matched pixel points are used to establish a virtual observation equation. Here, the virtual observation equation can be expressed as follows:
[0090] ;
[0091] in, 、 is the unknown number in the adjustment, 、 is the corresponding residual, 、 It is the result obtained by initialization or iterative calculation using this parameter.
[0092] In this embodiment, the error equation weight p1 and the virtual observation equation weight p2 are given and added to the adjustment system. By solving the adjustment system composed of the error equation and the virtual observation equation, the parameters of the flutter compensation model, namely the compensation values for the pitch and roll angles, can be obtained. These compensation values describe how to adjust the satellite's attitude parameters based on the flutter condition to eliminate or reduce the impact of flutter on the image geometric accuracy.
[0093] In some embodiments, the method further comprises:
[0094] Fitting the chatter compensation result to obtain a fitted chatter compensation result;
[0095] performing a one-dimensional linear transformation on an angle corresponding to the angle-based target chatter compensation model based on the start row coordinates of the control points in the successfully matched area, the end row coordinates of the control points in the successfully matched area, the chatter compensation start control value, the chatter compensation end control value, and the fitted chatter compensation result, to obtain a transformed chatter compensation result;
[0096] Based on the transformed chatter compensation result, re-performing the step of determining the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area;
[0097] The step of applying the angle-based target chatter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixels to the adjustment system to obtain a chatter compensation result is continued, and the compensation angle change calculated by two consecutive iterations is less than a preset threshold.
[0098] After obtaining the flutter compensation results, a piecewise polynomial function can be used to fit them for smoother results. Next, a one-dimensional linear transformation is performed on the fitted flutter compensation results for pitch and roll angles using the control point start and end row coordinates, as well as the flutter compensation start and end control values. This ensures that the pitch and roll angles in the flutter compensation results, along with their corresponding control values, are essentially consistent.
[0099] The transformed chatter compensation results are then used to recalculate the 3D coordinates of successfully matched pixels, eliminating any gross errors. The chatter compensation solution process continues until the sum of the absolute differences between the compensation angles in the current chatter compensation result and the previous one falls below a given threshold. This indicates that the chatter compensation model has converged and achieved relatively accurate results.
[0100] After obtaining the final bundle adjustment and orientation results, the internal and external accuracy of the flutter compensation results can be assessed using residuals calculated from these results, the inverse of the normal equation coefficient matrix, and other methods, as well as field-measured control points not included in the adjustment. This provides an understanding of the reliability of the flutter compensation results and the potential error range. Finally, the obtained results are used to update the satellite's attitude file for use in future image processing and analysis.
[0101] It should be noted that the "Starting row coordinates" of the control points in the successfully matched area refer to the row coordinates of the top control point in the successfully matched area, and the "Ending row coordinates" of the control points in the successfully matched area refer to the row coordinates of the bottom control point in the successfully matched area. The "Starting control value" of the chatter compensation refers to the starting control value required for chatter compensation. The "Ending control value" of the chatter compensation refers to the ending control value required for chatter compensation.
[0102] In this embodiment, the positions of the control points can be directly selected and marked on the image of the successfully matched area of the main film by manual measurement, or the positions of the control points can be selected and marked in the successfully matched area of the main film by matching DOM (Digital Orthophoto Map) and DEM (Digital Elevation Model).
[0103] In this embodiment, the row coordinates of the control point with the smallest row coordinate value among all control points located above the successfully matched area (e.g., the upper left and upper right corners) are used as the starting row coordinates of the control points, and the row coordinates of the control point with the largest row coordinate value among all control points located below the successfully matched area (e.g., the lower left and lower right corners) are used as the ending row coordinates of the control points. Preferably, all upper control points can be selected on the same row, and all lower control points can also be selected on the same row. This ensures that these control points form a "straight line" in the vertical track direction, thereby reducing errors caused by image distortion or tilt.
[0104] In some embodiments, the vibration compensation start control value and the vibration compensation end control value are obtained by:
[0105] determining a chatter compensation start control value based on the first control point and the second control point;
[0106] determining a chatter compensation end control value based on the third control point and the fourth control point;
[0107] Among them, the first control point is a control point located in the upper left position of the target of the successful matching area, the second control point is a control point located in the upper right position of the target of the successful matching area, the third control point is a control point located in the lower left position of the target of the successful matching area, and the fourth control point is a control point located in the lower right position of the target of the successful matching area.
[0108] In this embodiment, at least four control points are selected at the upper left, lower left, upper right, and lower right positions. The vibration compensation start control value is calculated using at least two control points at the upper left and upper right positions, and the vibration compensation end control value is calculated using at least two control points at the lower left and lower right positions.
[0109] The present invention achieves accurate compensation for optical satellite image chatter by determining the above process, thereby improving image quality and data processing accuracy.
[0110] The optical satellite flutter processing device provided by the present invention is described below. The optical satellite flutter processing device described below and the optical satellite flutter processing method described above can be referenced to each other.
[0111] Figure 2 FIG. 1 is a schematic diagram of the structure of the optical satellite vibration processing device provided by the present invention. Figure 2 As shown, the optical satellite vibration processing device includes:
[0112] A first optical satellite dither processing module 210 is configured to determine a master imager and at least two slave images of an optical satellite, wherein the master imager is a charge-coupled device (CCD) having the shortest distance from a principal point of a focal plane in a primary band of the optical satellite, and the slave images are CCDs in adjacent bands of the primary band having imaging ranges substantially close to that of the master imager at different times.
[0113] A second optical satellite dither processing module 220 is configured to determine a successfully matched area in the master image based on the at least two slave images, wherein any successfully matched pixel in the successfully matched area in the master image can be successfully matched to a corresponding pixel in all slave images;
[0114] A third optical satellite dither processing module 230 is configured to determine the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area;
[0115] The fourth optical satellite flutter processing module 240 is configured to apply an angle-based target flutter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinates of the successfully matched pixels to an adjustment system to obtain a flutter compensation result, wherein the angles include a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value.
[0116] An optical satellite flutter processing device provided by an embodiment of the present invention determines a master image of an optical satellite and at least two slave images, where the master image is defined as a CCD with the shortest distance to a principal point of a focal plane in a main band of the optical satellite, and the slave images are CCDs in adjacent bands of the main band that have imaging ranges substantially close to those of the master image at different times. Based on the at least two slave images, a successfully matched area is determined in the master image, where any successfully matched pixel in the successfully matched area of the master image can be successfully matched to a corresponding pixel in all slave images. The three-dimensional coordinates of the successfully matched pixels in the successfully matched area are determined. An angle-based target flutter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinates of the successfully matched pixels are applied to an adjustment system to obtain a flutter compensation result, where the angles include a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value. The present invention determines the master and slave images of an optical satellite, determines the successfully matched area in the master image based on the slave image, calculates the three-dimensional coordinate values of the successfully matched pixel points, and then obtains the jitter compensation results through an angle-based jitter compensation model and adjustment system. This achieves accurate compensation for the jitter of the optical satellite image, and improves the image quality and the accuracy of data processing.
[0117] Figure 3 Schematic diagram of the structure of the electronic device provided by the present invention, such as Figure 3 As shown, the electronic device may include: a processor 310, a communication interface 320, a memory 330, and a communication bus 340. The processor 310, the communication interface 320, and the memory 330 communicate with each other via the communication bus 340. The processor 310 may call logic instructions in the memory 330 to execute the optical satellite flutter processing method, which includes:
[0118] Determining a master imager and at least two slave images of an optical satellite, wherein the master imager is a charge-coupled device (CCD) having the shortest distance from a principal point of a focal plane in a main band of the optical satellite, and the slave images are CCDs in adjacent bands of the main band having imaging ranges substantially close to those of the master imager at different times;
[0119] Determine a successfully matched area in the master image based on the at least two slave images, wherein any successfully matched pixel in the successfully matched area in the master image can successfully match corresponding pixels in all slave images;
[0120] Determine the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area;
[0121] The angle-based target flutter compensation model, the successfully matched pixel points in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixel points are applied to the adjustment system to obtain a flutter compensation result, wherein the angle includes a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value.
[0122] Furthermore, the logic instructions in the aforementioned memory 330 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product, stored in a storage medium, includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, a mobile hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0123] In another aspect, the present invention further provides a computer program product, comprising a computer program. The computer program may be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can perform the optical satellite flutter processing method provided by the above methods, the method comprising:
[0124] Determining a master imager and at least two slave images of an optical satellite, wherein the master imager is a charge-coupled device (CCD) having the shortest distance from a principal point of a focal plane in a main band of the optical satellite, and the slave images are CCDs in adjacent bands of the main band having imaging ranges substantially close to those of the master imager at different times;
[0125] Determine a successfully matched area in the master image based on the at least two slave images, wherein any successfully matched pixel in the successfully matched area in the master image can successfully match corresponding pixels in all slave images;
[0126] Determine the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area;
[0127] The angle-based target flutter compensation model, the successfully matched pixel points in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixel points are applied to the adjustment system to obtain a flutter compensation result, wherein the angle includes a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value.
[0128] In yet another aspect, the present invention further provides a non-transitory computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the method for processing optical satellite flutter provided by the above methods is implemented. The method includes:
[0129] Determining a master imager and at least two slave images of an optical satellite, wherein the master imager is a charge-coupled device (CCD) having the shortest distance from a principal point of a focal plane in a main band of the optical satellite, and the slave images are CCDs in adjacent bands of the main band having imaging ranges substantially close to those of the master imager at different times;
[0130] Determine a successfully matched area in the master image based on the at least two slave images, wherein any successfully matched pixel in the successfully matched area in the master image can successfully match corresponding pixels in all slave images;
[0131] Determine the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area;
[0132] The angle-based target flutter compensation model, the successfully matched pixel points in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixel points are applied to the adjustment system to obtain a flutter compensation result, wherein the angle includes a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value.
[0133] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, i.e., they may be located in one location or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of the present embodiment. Persons of ordinary skill in the art will be able to understand and implement the present invention without inventive effort.
[0134] Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented using software plus a necessary general-purpose hardware platform, or of course, hardware. Based on this understanding, the essence of the above technical solution, or the portion that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, or an optical disk, and includes a number of instructions for causing a computer device (such as a personal computer, server, or network device) to execute the methods described in each embodiment or certain portions of the embodiments.
[0135] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention.
Claims
1. A method for processing optical satellite flutter, characterized in that: include: Determining a master imager and at least two slave images of an optical satellite, wherein the master imager is a charge-coupled device (CCD) having the shortest distance from a principal point of a focal plane in a main band of the optical satellite, and the slave images are CCDs in adjacent bands of the main band having imaging ranges substantially close to those of the master imager at different times; Determine a successfully matched area in the master image based on the at least two slave images, wherein any successfully matched pixel in the successfully matched area in the master image can successfully match corresponding pixels in all slave images; Determine the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area; The angle-based target flutter compensation model, the successfully matched pixel points in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixel points are applied to the adjustment system to obtain a flutter compensation result, wherein the angle includes a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value.
2. The optical satellite flutter processing method according to claim 1, characterized in that: The determining, based on the at least two slave slices, a matching success area in the master slice includes: Perform pixel-by-pixel matching on each slave slice using the master slice as a reference to obtain pixel matching results corresponding to each slave slice and the master slice; Taking each row of pixels in the image as a unit, determining the mean square error (MSE) of the pixel matching results in the vertical and along-track directions, and performing gross error elimination based on the MSE; Determining the minimum row coordinate value and the maximum row coordinate value of the successfully matched pixel points in the master image after gross error removal, wherein the successfully matched pixel points are pixel points that can be successfully matched with all the slave images; Based on the minimum row coordinate value and the maximum row coordinate value, a matching successful area in the main image is determined.
3. The optical satellite flutter processing method according to claim 1, wherein: The angle-based target flutter compensation model is obtained by: discretizing an angle-based flutter compensation model according to the main band and the travel time of the target CCD of the main band; Solving the angle-based flutter compensation model according to the first calibration result to obtain a discrete angle-based target flutter compensation model, wherein the first calibration result is obtained by calibrating the main band and the CCD corresponding to the main band based on ground control points of the optical satellite in different bands to obtain external calibration coefficients and first internal calibration coefficients, and calculating the pointing angle error of the ground control point based on the external calibration coefficients and the first internal calibration coefficients, and eliminating the gross error of the ground control point; The discrete angle-based target flutter compensation model is fitted using a piecewise polynomial function to obtain an angle-based target flutter compensation model.
4. The optical satellite flutter processing method according to claim 1, wherein: The angle-based target chatter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixels are applied to an adjustment system to obtain a chatter compensation result, including: Establishing a plane intersection error equation based on the successfully matched pixel points and the angle-based target chatter compensation model; Establishing a virtual observation equation based on the three-dimensional coordinate values of the successfully matched pixel points; The error equation based on the plane intersection and the virtual observation equation are applied to the adjustment system to obtain a vibration compensation result.
5. The optical satellite flutter processing method according to claim 1, wherein: The method further comprises: Fitting the chatter compensation result to obtain a fitted chatter compensation result; performing a one-dimensional linear transformation on an angle corresponding to the angle-based target chatter compensation model based on the start row coordinates of the control points in the successfully matched area, the end row coordinates of the control points in the successfully matched area, the chatter compensation start control value, the chatter compensation end control value, and the fitted chatter compensation result, to obtain a transformed chatter compensation result; Based on the transformed chatter compensation result, re-performing the step of determining the three-dimensional coordinate values of the successfully matched pixel points in the successfully matched area; The step of applying the angle-based target chatter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinate values of the successfully matched pixels to the adjustment system to obtain a chatter compensation result is continued, and the compensation angle change calculated by two consecutive iterations is less than a preset threshold.
6. The optical satellite flutter processing method according to claim 5, characterized in that: The chatter compensation start control value and the chatter compensation end control value are obtained in the following manner: determining a chatter compensation start control value based on the first control point and the second control point; determining a chatter compensation end control value based on the third control point and the fourth control point; Among them, the first control point is a control point located in the upper left position of the target of the successful matching area, the second control point is a control point located in the upper right position of the target of the successful matching area, the third control point is a control point located in the lower left position of the target of the successful matching area, and the fourth control point is a control point located in the lower right position of the target of the successful matching area.
7. An optical satellite flutter processing device, characterized in that: include: a first optical satellite dither processing module, configured to determine a master imager and at least two slave images of an optical satellite, wherein the master imager is a charge-coupled device (CCD) having the shortest distance from a principal point of a focal plane in a primary band of the optical satellite, and the slave images are CCDs in adjacent bands of the primary band having imaging ranges substantially close to those of the master imager at different times; a second optical satellite dither processing module, configured to determine, based on the at least two slave images, a successfully matched area in the master image, wherein any successfully matched pixel point in the successfully matched area in the master image can be successfully matched to a corresponding pixel point in all slave images; a third optical satellite dither processing module, configured to determine three-dimensional coordinate values of matching successful pixel points in the matching successful area; The fourth optical satellite flutter processing module is configured to apply an angle-based target flutter compensation model, the successfully matched pixels in the successfully matched area, and the three-dimensional coordinates of the successfully matched pixels to an adjustment system to obtain a flutter compensation result, wherein the angles include a pitch angle and a roll angle, and the flutter compensation result includes a pitch angle compensation value and a roll angle compensation value.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the optical satellite jitter processing method according to any one of claims 1 to 6 is implemented.
9. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the optical satellite flutter processing method according to any one of claims 1 to 6 is implemented.
10. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the optical satellite flutter processing method according to any one of claims 1 to 6 is implemented.
Citation Information
Patent Citations
Method for detecting posture flutter of high resolution three linear array satellites along rail direction
CN104864853A
Satellite-borne push-scan optical load high-frequency error compensation method based on angular displacement sensor
CN109668579A