Satellite remote sensing orthographic image pull flower area automatic accurate positioning method
Patent Information
- Application Number
- CN202610954463.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-30
- Publication Date
- 2026-10-23
AI Technical Summary
当原始卫星影像、RPC文件、DEM数据和正射影像地面分辨率之间的几何映射关系发生局部集中时,像方空间中的异常映射位置与正射坐标空间中的地面点位置之间缺少稳定衔接,容易造成拉花候选区域难以从原始映射关系中直接定位,以及后续空间聚类和边界矢量化缺少明确地面坐标基础
[0054](1)针对现有方案中拉花区域多依赖生成后正射影像纹理判读的问题,本发明利用DEM高程关联和RPC正向投影形成虚拟像点,并在原始影像真实像点维度统计邻域涉及次数,使拉花候选判断具有来自正射映射过程的像方频次依据。
Smart Images

Figure CN122966928A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of satellite remote sensing image processing and photogrammetry, and in particular to a method for automatic and precise positioning of patterned areas in satellite remote sensing orthophotos. Background Technology
[0002] In the field of satellite remote sensing image processing and photogrammetry, existing methods for producing digital orthorectified images typically utilize raw satellite imagery, rational polynomial coefficient files, and digital elevation models for geometric positioning, orthorectification, resampling, mosaicking, and cropping. While these methods can produce orthorectified images in typical scenarios, they are prone to limitations in areas with significant topographic relief, complex local projection relationships, or concentrated orthorectification resampling relationships. These limitations include difficulty in tracing the correspondence between original image points and orthorectified ground points, reliance on the final image for interpreting the boundaries of stippled areas, and discontinuities in the connection between anomalous areas and subsequent vector processing.
[0003] Existing methods mostly rely on generated orthophoto textures, manual visual interpretation, sample recognition, or routine image quality checks to locate the patterned areas. When the geometric mapping relationship between the original satellite image, RPC file, DEM data, and ground resolution of the orthophoto occurs locally, there is a lack of stable connection between the abnormal mapping positions in the image space and the ground point positions in the orthophoto coordinate space. This can easily make it difficult to directly locate the patterned candidate areas from the original mapping relationship, and subsequent spatial clustering and boundary vectorization lack a clear ground coordinate basis.
[0004] For the joint processing of single-scene raw satellite imagery, corresponding RPC files, and DEM data, existing technologies still suffer from insufficient connection between the frequency relationship of actual image points in the original imagery, the source of orthorectified ground point coordinates, and the vector boundary of the patterned area. Therefore, it is necessary to address the problem of how to form the vector boundary of the patterned area based on single-scene raw satellite imagery, corresponding RPC files, and DEM data, through statistical analysis of the frequency of actual image points in the original imagery, recording of orthorectified ground point coordinates, and reverse analysis of anomalous mapped image points. Summary of the Invention
[0005] To address the aforementioned technical problems, this invention provides a method for automatic and precise positioning of patterns in satellite remote sensing orthophoto images, comprising:
[0006] S100: Acquire a single-scene original satellite image, the corresponding RPC file, DEM data covering the range of the single-scene original satellite image, and the ground resolution of the orthophoto. Determine the effective surface range of the orthophoto based on the RPC file and the DEM data, and construct an orthophoto ground point grid according to the ground resolution of the orthophoto to generate orthophoto ground point grid data.
[0007] S200. Based on the orthorectified ground point grid data, perform DEM elevation association and RPC forward projection on each orthorectified ground point to determine the virtual image point coordinates of each orthorectified ground point in the single scene original satellite image, and generate a ground point-virtual image point mapping record.
[0008] S300. Based on the ground point-virtual image point mapping record, determine the original image real image points in the neighborhood of each virtual image point; establish a first marker array and a second marker array for the original image real image points, accumulate the number of times the original image real image point is involved by the neighborhood of the virtual image point in the first marker array, and record the orthophoto ground point coordinate index corresponding to the original image real image point in the second marker array.
[0009] S400. Based on the first marker array and the second marker array, the original image real image points whose frequency meets the preset frequency threshold are taken as abnormal mapping image points. The coordinate index of the orthophoto point corresponding to the abnormal mapping image point is parsed to generate a set of candidate orthophoto points for latte art.
[0010] S500: Based on the candidate orthophoto ground point set for latte art, perform point set purification, spatial clustering, and boundary extraction to generate the vector boundary of the latte art region. After geometric verification of the vector boundary of the latte art region, output the valid vector data of the latte art region.
[0011] Further, determining the effective surface extent of the orthophoto based on the RPC file and the DEM data includes:
[0012] Read the total number of rows and columns of the single-scene raw satellite image, and define the image-side coordinates of the four corner points of the single-scene raw satellite image;
[0013] Based on the DEM data, the elevation values of the four corner points are determined, and based on the RPC file and the elevation values of the corner points, the object-space coordinates of the four corner points are inversely calculated to obtain the object-space latitude and longitude coordinates of the four corner points.
[0014] The object's latitude and longitude coordinates are projected into Cartesian coordinates, and the effective surface range of the orthophoto is determined based on the Cartesian coordinates.
[0015] Further, the step of constructing an orthophoto ground point grid according to the ground resolution of the orthophoto image includes:
[0016] The minimum bounding rectangle of the plane rectangular coordinates is calculated based on the effective surface range of the orthophoto image.
[0017] The minimum bounding rectangle is aligned with the ground resolution of the orthophoto to obtain the total number of rows and columns of the orthophoto.
[0018] The orthophoto ground point grid is constructed based on the total number of rows and columns of the orthophoto image.
[0019] Furthermore, the step of performing DEM elevation association and RPC forward projection on each orthophoto ground point includes:
[0020] Based on the Cartesian coordinates of each orthophoto point, bilinear interpolation is performed on the DEM data to obtain the elevation value of each orthophoto point.
[0021] Substitute the object-space latitude and longitude coordinates and the elevation value of each orthophoto point into the RPC model to calculate the virtual image point row number and virtual image point column number corresponding to each orthophoto point.
[0022] The virtual image point row number and the virtual image point column number are combined to form the virtual image point coordinates.
[0023] Further, determining the original image real image points in the neighborhood of each virtual image point includes:
[0024] The row number and column number of each virtual image point coordinate are respectively taken as integer values to obtain the reference real image point row number and reference real image point column number corresponding to the virtual image point coordinate;
[0025] Based on the reference real image point row number and the reference real image point column number, determine multiple original image real image points in the pixel neighborhood where the virtual image point coordinates are located.
[0026] Remove the original image real points that are outside the effective image area of the original satellite image of the single scene, and obtain the set of original image real points in the neighborhood of the virtual image points.
[0027] Further, recording the orthorectified ground point coordinate index corresponding to the true image point of the original image in the second marker array includes:
[0028] Based on the total number of rows and columns of the orthophoto point grid, determine the number of rows (WM) for the row coordinates of the orthophoto points and the number of columns (WN) for the column coordinates of the orthophoto points.
[0029] The row coordinates of the orthophoto points are encoded with a fixed length according to the number of row positions WM, and the column coordinates of the orthophoto points are encoded with a fixed length according to the number of column positions WN.
[0030] The fixed-length encoded row coordinates and column coordinates of the orthorectified ground points are appended to the second marker array at positions that match the corresponding real image points in the original image, according to the processing order of the ground point-virtual image point mapping record, to form the orthorectified ground point coordinate index set corresponding to the real image points in the original image.
[0031] Further, the step of parsing the orthophoto coordinate index of the abnormal mapping image point to generate a candidate orthophoto ground point set for latte art includes:
[0032] Read the set of coordinate indices of the orthophoto points corresponding to the abnormal mapped image points from the second marker array;
[0033] According to the number of rows WM and the number of columns WN, each orthophoto point coordinate index in the orthophoto point coordinate index set is split to restore the corresponding orthophoto point row coordinates and orthophoto point column coordinates.
[0034] Based on the recovered row and column coordinates of the orthophoto points, the corresponding orthophoto points are determined in the orthophoto point grid data.
[0035] The determined orthophoto points are deduplicated, and the deduplicated orthophoto points are written into the candidate orthophoto point set for latte art.
[0036] Furthermore, the point set purification includes:
[0037] Remove orthophoto ground points that are outside the effective surface range of the orthophoto image;
[0038] Remove points that are orthographically referenced to the ground and have duplicate Cartesian coordinates;
[0039] Remove the orthophoto points whose corresponding DEM data are null to obtain the set of candidate points for purification.
[0040] Furthermore, the spatial clustering includes:
[0041] Density clustering is performed on the set of purification candidate points to obtain multiple clusters;
[0042] The cluster radius is determined according to the ground resolution of the orthophoto image, and the minimum number of cluster points is determined according to the preset frequency threshold.
[0043] Clusters with fewer than the minimum number of cluster points are removed, and clusters with an area smaller than the preset minimum latte art area threshold are also removed, resulting in effective clusters.
[0044] Furthermore, the boundary extraction and the geometric verification include:
[0045] Boundary extraction is performed on the effective clusters to obtain a set of boundary points;
[0046] Sort the boundary points in the set of boundary points to obtain a closed boundary point sequence;
[0047] The closed boundary point sequence is converted into a vector polygon, and the vector polygon is then subjected to boundary closure verification, boundary intersection verification, and area verification.
[0048] The verified vector polygons are used as the valid latte art area vector data and written into the attribute file, which includes the latte art area number, the latte art area area, and the number of boundary points.
[0049] The key innovations of this invention include:
[0050] (1) Based on the mapping relationship between the orthophoto ground point and the real image point of the original image, the virtual image point obtained by DEM elevation association and RPC forward projection of each orthophoto ground point is converted into the neighborhood relationship of the real image point of the original image, and the first tag array carries the number of times the real image point of the original image is involved by the neighborhood of the virtual image point.
[0051] (2) While the frequency is accumulated in the first marker array, the coordinate index of the orthophoto point corresponding to the real image point of the same original image is recorded by the second marker array, so that the abnormal mapped image point in the image space and the orthophoto point in the orthophoto coordinate space form a resolvable reverse correspondence.
[0052] (3) Based on the frequency condition in the first marker array, abnormal mapping image points are filtered, and the coordinate index of the orthophoto ground point in the second marker array is parsed to form a set of candidate orthophoto ground points for latte art; then, the candidate orthophoto ground point set for latte art is purified, spatially clustered, extracted from the boundary and geometrically verified to obtain effective latte art area vector data.
[0053] The following are its main beneficial effects:
[0054] (1) In view of the problem that the latte art area in the existing schemes relies on the texture interpretation of the generated orthophoto image, the present invention uses DEM elevation association and RPC forward projection to form virtual image points, and counts the number of neighboring instances in the dimension of the real image points in the original image, so that the latte art candidate judgment has the image frequency basis from the orthophoto mapping process.
[0055] (2) In view of the problem that the connection between the image anomalous position and the orthophoto ground position is unclear, the present invention records the coordinate index of the orthophoto ground point while recording the number of times it is involved, so that the anomalous mapped image point can be reversed to the orthophoto ground point, forming a set of candidate orthophoto ground points that can be called for subsequent spatial processing.
[0056] (3) To address the problem that discrete candidate points are difficult to directly form continuous graffiti boundaries, this invention performs point set purification, spatial clustering, boundary extraction and geometric verification on the graffiti candidate orthophoto ground point set, so that the output result is transformed from scattered candidate points into effective graffiti region vector data with boundary constraints. Attached Figure Description
[0057] Figure 1 This is a flowchart illustrating a method for automatic and precise positioning of a patterned area in a satellite remote sensing orthophoto image, as provided in an embodiment of this application. Detailed Implementation
[0058] Example 1: Refer to Figure 1 This is a flowchart illustrating an automatic and precise positioning method for patterned areas in satellite remote sensing orthophotos provided in an embodiment of the present invention. The process may include at least steps S100-S500:
[0059] S100: Acquire a single-scene original satellite image, the corresponding RPC file, DEM data covering the range of the single-scene original satellite image, and the ground resolution of the orthophoto. Determine the effective surface range of the orthophoto based on the RPC file and the DEM data, and construct an orthophoto ground point grid according to the ground resolution of the orthophoto to generate orthophoto ground point grid data.
[0060] S200. Based on the orthorectified ground point grid data, perform DEM elevation association and RPC forward projection on each orthorectified ground point to determine the virtual image point coordinates of each orthorectified ground point in the single scene original satellite image, and generate a ground point-virtual image point mapping record.
[0061] S300. Based on the ground point-virtual image point mapping record, determine the original image real image points in the neighborhood of each virtual image point; establish a first marker array and a second marker array for the original image real image points, accumulate the number of times the original image real image point is involved by the neighborhood of the virtual image point in the first marker array, and record the orthophoto ground point coordinate index corresponding to the original image real image point in the second marker array.
[0062] S400. Based on the first marker array and the second marker array, the original image real image points whose frequency meets the preset frequency threshold are taken as abnormal mapping image points. The coordinate index of the orthophoto point corresponding to the abnormal mapping image point is parsed to generate a set of candidate orthophoto points for latte art.
[0063] S500: Based on the candidate orthophoto ground point set for latte art, perform point set purification, spatial clustering, and boundary extraction to generate the vector boundary of the latte art region. After geometric verification of the vector boundary of the latte art region, output the valid vector data of the latte art region.
[0064] S100: Acquire the single-scene raw satellite image, the corresponding RPC file, the DEM data covering the range of the single-scene raw satellite image, and the ground resolution of the orthorectified image; determine the effective surface range of the orthorectified image based on the RPC file and the DEM data; and construct an orthorectified ground point grid according to the ground resolution of the orthorectified image to generate orthorectified ground point grid data.
[0065] In this embodiment, the automatic and precise positioning method for the patterned area of satellite remote sensing orthophotos is executed by a remote sensing image processing server. This server is equipped with an image data reading program, an RPC geometric positioning program, a DEM elevation reading program, a projection conversion program, and a vector output program. RPC stands for Rational Polynomial Coefficients; DEM stands for Digital Elevation Model. After the orthophoto production task is initiated, the remote sensing image processing server first reads the single-scene original satellite image, the RPC file corresponding to that single-scene original satellite image, the DEM data covering the area of the single-scene original satellite image, and the ground resolution of the orthophoto. If the RPC file does not match the image identifier of the single-scene original satellite image, or if the DEM data does not cover the ground area corresponding to the single-scene original satellite image, the remote sensing image processing server does not proceed to the orthophoto ground point grid construction process. Instead, it marks the production task as an input inconsistency task and retains the original input file path for subsequent re-matching of the data source.
[0066] When reading a single-scene raw satellite image, the remote sensing image processing server obtains the total number of rows and columns from the image file header or image metadata, and defines the image-space coordinates of four corner points, with the top-left corner of the single-scene raw satellite image as the image-space coordinate origin. These four corner points include the top-left, top-right, bottom-left, and bottom-right corners; the row numbers increase vertically downwards along the image, and the column numbers increase horizontally to the right along the image. This coordinate definition maintains consistency with the calculation basis for subsequent virtual image point row and column numbers, avoiding row and column direction reversal during subsequent RPC forward projection and array labeling.
[0067] When determining the effective area of an orthorectified image, the remote sensing image processing server invokes the RPC geometric positioning program to perform object-space inverse calculation of the image-space coordinates of the four corner points of a single-scene original satellite image based on the RPC coefficients and regularization parameters in the RPC file. During the inverse calculation, the elevation corresponding to the corner point is provided by the DEM data; if the corner point falls between DEM grids, the elevation of the surrounding grids is used for interpolation to obtain the elevation value participating in the RPC inverse calculation. If the DEM grid corresponding to a corner point is empty, the remote sensing image processing server selects a valid elevation grid from the neighborhood of that corner point for interpolation; if no valid elevation grid exists in the neighborhood, the corner point is marked as a corner point with missing elevation, and the orthorectified area calculation is suspended for this task.
[0068] After obtaining the object's latitude and longitude coordinates through corner point inversion, the remote sensing image processing server converts these coordinates into Cartesian coordinates according to the projection method configured for the production task. After the projection conversion, the minimum bounding rectangle is calculated based on the Cartesian coordinates of the four corner points, and then aligned to the ground resolution of the orthophoto image. During resolution alignment, the rectangle's boundary is expanded or contracted according to integer multiples of the ground resolution, ensuring that subsequent orthophoto ground points align with the orthophoto image pixel positions in the row and column directions. If the aligned area exceeds the effective coverage of the DEM, the remote sensing image processing server truncates this area at the DEM boundary and writes the truncated boundary into the orthophoto range calculation result. Subsequent steps only traverse the orthophoto ground points within the truncated effective ground area.
[0069] After the effective surface area of the orthophoto is determined, the remote sensing image processing server calculates the total number of rows and columns of the orthophoto according to the ground resolution of the orthophoto, and establishes an orthophoto ground point grid. Each orthophoto ground point is defined by row coordinates, column coordinates, Cartesian coordinates, and corresponding object latitude and longitude coordinates; the row and column coordinates reflect its position in the orthophoto grid, while the Cartesian coordinates and object latitude and longitude coordinates participate in subsequent DEM elevation association and RPC forward projection. The resulting orthophoto ground point grid data is stored in a memory grid structure or a temporary grid file, and S200 calculates the coordinates of virtual image points point by point based on this orthophoto ground point grid data.
[0070] S200. Based on the orthorectified ground point grid data, perform DEM elevation association and RPC forward projection on each orthorectified ground point to determine the virtual image point coordinates of each orthorectified ground point in the single scene original satellite image, and generate a ground point-virtual image point mapping record.
[0071] S200 is executed by the ground point mapping program in the remote sensing image processing server. After receiving the orthorectified ground point grid data formed in S100, this program traverses the grid according to the row and column coordinates of the orthorectified ground points. The traversal order is consistent with the row and column directions of the orthorectified image, facilitating the subsequent recording of the orthorectified ground point coordinate indices in the second marker array. For each orthorectified ground point, the ground point mapping program first reads its Cartesian coordinates and searches for the surrounding DEM grid points in the DEM data; when the Cartesian coordinates fall within a grid cell enclosed by four DEM grid points, bilinear interpolation is used to calculate the elevation value of the orthorectified ground point.
[0072] During the DEM elevation association process, if all four DEM grid points participating in bilinear interpolation have valid elevation values, the elevation of the orthorectified ground point is directly calculated. If there are null grid points, the remote sensing image processing server first determines the number of valid grid points. If the number of valid grid points meets the interpolation requirements, neighbor interpolation is performed using the valid grid points. If the number of valid grid points is insufficient, the orthorectified ground point is marked as an invalid elevation point and skipped from the current round of RPC forward projection. Skipped orthorectified ground points do not enter the ground point-virtual image point mapping record, nor do they participate in the frequency statistics in S300, preventing DEM null areas from interfering with the candidate points for the pattern.
[0073] After obtaining the elevation value of the orthorectified ground point, the ground point mapping program substitutes the object-side latitude and longitude coordinates and elevation value of the orthorectified ground point into the RPC model to perform a forward projection from the object side to the image side. The result of this projection is a virtual image point row number and a virtual image point column number. The virtual image point row number and the virtual image point column number are usually small values, representing the continuous position of the orthorectified ground point in the image-side coordinate system of the single scene's original satellite image, rather than the integer position of the actual pixel row and column. Subsequently, S300 uses this continuous position to find the actual image points in the neighborhood of the original image and performs a count of the number of times the actual image points are involved.
[0074] During RPC forward projection, if the coordinates of the virtual image point corresponding to the projection result fall outside the effective image area of the original satellite image, the ground point mapping program marks the orthorectified ground point as an image area out-of-bounds point and does not write it into the ground point-virtual image point mapping record. If the RPC model calculation results in numerical divergence or returns invalid row and column values, the orthorectified ground point is marked as an invalid projection point. Image area out-of-bounds points and invalid projection points do not participate in subsequent label array updates to avoid mistakenly including mapping relationships outside the image boundary in the pattern area judgment.
[0075] For orthorectified ground points that have undergone elevation association and RPC forward projection, the ground point mapping program organizes the orthorectified ground point row coordinates, orthorectified ground point column coordinates, plane rectangular coordinates, object latitude and longitude coordinates, elevation values, virtual image point row numbers, and virtual image point column numbers into a ground point-virtual image point mapping record. This mapping record is saved according to the traversal order of the orthorectified ground point grid. When the S300 reads this record, it does not need to access the DEM data and RPC model again, but directly determines the neighborhood of the real image points in the original image based on the virtual image point coordinates, and establishes the first and second label arrays.
[0076] S300. Based on the ground point-virtual image point mapping record, determine the original image real points in the neighborhood of each virtual image point; establish a first marker array and a second marker array for the original image real points, accumulate the number of times the original image real point is involved by the neighborhood of the virtual image point in the first marker array, and record the orthorectified ground point coordinate index corresponding to the original image real point in the second marker array:
[0077] S300 is executed by the frequency marking program in the remote sensing image processing server. After receiving the ground point-virtual image point mapping record formed in S200, the frequency marking program first establishes a first marking array and a second marking array based on the total number of rows and columns of the single-scene original satellite image. The first marking array has the same size as the single-scene original satellite image, and its array position corresponds to the row and column position of the real image point in the original image, with an initial value of 0. The second marking array also has the same size as the single-scene original satellite image, and its array position corresponds one-to-one with the position of the first marking array, initially empty. The first marking array is responsible for frequency statistics, and the second marking array is responsible for recording the coordinate index of orthorectified ground points. Together, they describe which orthorectified ground points map the same real image point in the original image into its neighborhood.
[0078] After reading a ground point-virtual image point mapping record, the frequency marking program extracts the virtual image point row number and column number. Since the virtual image point coordinates are continuous image-space coordinates, they cannot be directly used as the integer row and column positions of the original image's true image points. Therefore, the frequency marking program assigns integer values to both the virtual image point row number and column number, and determines the nearest original image's true image points based on these integer values. In practice, the four original image's true image points surrounding the pixel where the virtual image point's coordinates are located can be considered as the original image's true image points within its neighborhood. When a virtual image point is located at the boundary of the original image, causing some true image points within its neighborhood to exceed the image's range, only the true image points within the effective range of the image are retained.
[0079] After determining the original image's true image points within the virtual image point's neighborhood, the frequency labeling program performs two types of synchronization operations on each neighboring true image point. The first operation increments the count value at the corresponding position of the true image point in the first label array by 1, indicating that the true image point is involved by the virtual image point's neighborhood corresponding to an orthorectified ground point. The second operation converts the row and column coordinates of the orthorectified ground point in the current mapping record into orthorectified ground point coordinate indices in the second label array and appends them to the corresponding position of the true image point. Thus, the first label array value for the same original image's true image point reflects the number of times it has been involved, while the content of the second label array at the same position reflects which orthorectified ground points these involvements originated from.
[0080] The recording method of the orthorectified ground point coordinate index needs to be accurately parsed in subsequent S400. Therefore, in one implementation, the frequency marking program determines the row number WM and column number WN of the orthorectified ground point row coordinates based on the total number of rows and columns of the orthorectified ground point grid. For each orthorectified ground point row coordinate, a fixed-length encoding is performed according to the row number WM; for each orthorectified ground point column coordinate, a fixed-length encoding is performed according to the column number WN. The fixed-length encoded row and column coordinates are written into the second marker array in a fixed order, so that the original orthorectified ground point row and column coordinates can be obtained by segmenting them with the same length during subsequent parsing. If the second marker array uses a list structure to store the coordinate index, the correspondence between the row and column coordinates also needs to be preserved to prevent mismatching of row and column coordinates of different orthorectified ground points during subsequent parsing.
[0081] During frequency labeling, the same orthorectified ground point may be written to the same real image point in the original image multiple times due to duplicate calculations of the virtual image point's neighborhood. To avoid duplicate accumulation of the same mapping record on the same real image point, the frequency labeling program removes duplicates from the set of real image points corresponding to a single ground point-virtual image point mapping record when processing it. If the set of real image points is empty, it means that the neighborhood of the virtual image point is not within the valid range of the original image, and this mapping record will not participate in the update of the first and second labeling arrays.
[0082] After S300 processes all ground point-virtual image point mapping records, the first marker array forms a distribution of the frequency of virtual image point neighborhoods involving real image points in the original image, and the second marker array forms a set of orthorectified ground point coordinate indices corresponding to each real image point in the original image. S400 reads the first marker array to filter out abnormal mapped image points and reads the second marker array to parse the coordinate indices corresponding to abnormal mapped image points. Therefore, the location of the latte art candidate region does not start from the generated orthorectified image texture, but from the case where real image points in the original image are mapped by the orthorectified ground points.
[0083] S400. Based on the first marker array and the second marker array, the original image real image points whose frequency meets the preset frequency threshold are taken as abnormal mapped image points. The coordinate index of the orthorectified ground point corresponding to the abnormal mapped image point is parsed to generate a set of candidate orthorectified ground points for latte art.
[0084] S400 is executed by the coordinate index reverse lookup program in the remote sensing image processing server. After receiving the first and second marker arrays formed in S300, the coordinate index reverse lookup program scans the first marker array according to the row and column order of the real image points in the original image. The preset frequency threshold is configured by the orthophoto production task, or determined by the image ground resolution, terrain undulation, and orthophoto ground point grid density. This threshold represents the boundary of the number of times a real image point in the original image is involved by the neighborhood of virtual image points; when the count value of a real image point reaches this boundary, it indicates that multiple orthophoto ground points fall into the neighborhood of that real image point during the mapping process, and the real image point is marked as an abnormal mapped image point by the coordinate index reverse lookup program.
[0085] When scanning the first marker array, the coordinate index reverse lookup program does not directly output the anomalous mapped image points as the patterned area. The anomalous mapped image points are located in the image-side coordinate space of the original satellite image, and their positions cannot directly represent the ground extent in the orthorectified image. To convert the image-side anomaly to the orthorectified coordinate space, the coordinate index reverse lookup program reads the coordinate index of the orthorectified ground point corresponding to the anomalous mapped image point from the second marker array and parses it according to the index encoding method used in S300. If the index length in the second marker array is not an integer multiple of the sum of the number of rows (WM) and the number of columns (WN), it indicates that the index record at that position is incomplete. The coordinate index reverse lookup program marks the anomalous mapped image point as an index anomaly and skips the candidate point recovery process corresponding to that point.
[0086] For abnormally mapped image points with complete index records, the coordinate index reverse lookup program splits the orthorectified ground point coordinate index according to the number of rows (WM) and columns (WN). The first segment of data obtained from the split is restored to the row coordinates of the orthorectified ground points, and the second segment is restored to the column coordinates of the orthorectified ground points. The restored row and column coordinates are used to access the orthorectified ground point grid data formed by S100 to extract the Cartesian coordinates and object-side latitude and longitude coordinates of the corresponding orthorectified ground points. If the restored row or column coordinates exceed the range of the orthorectified ground point grid, it indicates that the index has exceeded the limit during recording or parsing, and the coordinate index reverse lookup program will not write the coordinates into the candidate point set.
[0087] A single candidate orthophoto point for a latte art pattern may be obtained from the parsing of multiple outlier mapping points. To avoid duplicate points affecting subsequent spatial clustering, the coordinate index reverse lookup program uses the row and column coordinates of the orthophoto point as unique location identifiers when generating the set of candidate orthophoto points for latte art patterning, and performs deduplication on the recovered orthophoto points. Each candidate orthophoto point for latte art patterning retains its row coordinates, column coordinates, Cartesian coordinates, and object-side latitude and longitude coordinates; among them, the row and column coordinates are used for grid adjacency determination in subsequent boundary tracing, the Cartesian coordinates are used for spatial clustering and area calculation, and the object-side latitude and longitude coordinates are used for the geographical location description of the output vector data.
[0088] In another implementation, the coordinate index reverse lookup procedure also adds anomaly frequency values to the corresponding candidate orthophoto ground points based on the count values of the anomaly mapped image points in the first marker array. When the same candidate orthophoto ground point is recovered from multiple anomaly mapped image points, the larger anomaly frequency value is retained or multiple anomaly frequency values are accumulated. This anomaly frequency value does not change the geometric position of the candidate point, but it can be recorded as a region attribute in the attribute file of subsequent S500. The set of candidate orthophoto ground points for latte art formed after S400 is entered into S500, where S500 performs purification, spatial clustering, and boundary extraction on the point set.
[0089] S500. Based on the candidate orthophoto ground point set for latte art, perform point set purification, spatial clustering, and boundary extraction to generate the vector boundary of the latte art region. After geometric verification of the vector boundary of the latte art region, output the valid vector data of the latte art region.
[0090] S500 is jointly executed by the candidate point clustering program and the boundary vectorization program in the remote sensing image processing server. After receiving the set of candidate orthorectified ground points formed in S400, the candidate point clustering program first performs point set purification. During purification, the candidate point clustering program removes orthorectified ground points that exceed the effective surface range of the orthorectified image determined in S100; it removes points with duplicate coordinates based on the Cartesian coordinates of the candidate points; and it removes candidate points whose corresponding DEM data is null based on the DEM data status. If the candidate point set is empty after purification, the task outputs empty effective patterned area vector data and marks the area that has not formed an effective patterned area in the processing result, and it will not enter the spatial clustering and boundary vectorization process subsequently.
[0091] When performing spatial clustering on the candidate points for purification, the candidate point clustering program uses density clustering to process the Cartesian coordinates of the candidate points. The cluster radius is determined by the ground resolution of the orthophoto image, ensuring the continuity of adjacent candidate points in ground space; the minimum number of cluster points is determined by a preset frequency threshold, preventing occasional isolated candidate points from forming independent latte art regions. After density clustering, the candidate point clustering program obtains multiple clusters. Each cluster corresponds to a set of spatially continuous or nearest-neighbor orthophoto candidate latte art regions, but this cluster is not directly output as a latte art region and still needs to be filtered by point count and area.
[0092] During cluster selection, the candidate point clustering program first eliminates clusters with fewer points than the minimum cluster size. Then, it calculates the cluster area based on the Cartesian coordinates of the candidate points within each cluster, eliminating clusters with areas smaller than a preset minimum latte art area threshold. For clusters with abnormally large areas, the boundary vectorization program marks them as clusters awaiting review and temporarily excludes them from the valid latte art region vector data. The remaining clusters after selection are considered valid clusters and proceed to boundary extraction processing.
[0093] The boundary vectorization program extracts a set of boundary points for each valid cluster. In practice, a preliminary boundary is first calculated based on the Cartesian coordinates of candidate points within the valid clusters. Then, candidate points located on the outer edges of the clusters are selected as boundary points. After the boundary point set is formed, the boundary vectorization program sorts the boundary points using the geometric center of the cluster as a reference, resulting in a closed sequence of boundary points. If boundary points intersect after sorting, the boundary vectorization program locally adjusts the intersection positions. If intersections still exist after local adjustments, the cluster is marked as an anomalous cluster and is not output as a valid region.
[0094] After the closed boundary point sequence is converted into a vector polygon, the boundary vectorization program performs geometric verification on the vector polygon. Geometric verification includes boundary closure verification, boundary intersection verification, and area verification. Boundary closure verification checks whether the first and last boundary points are in the same coordinate position. If the first and last coordinates are inconsistent, the starting boundary point is added as the last boundary point. Boundary intersection verification checks whether adjacent and non-adjacent edges of the vector polygon intersect. If there is an intersection and it cannot be corrected by boundary point sorting, the vector polygon is discarded. Area verification determines whether the area of the vector polygon is within the valid range based on the effective surface range of the orthophoto and a preset minimum area threshold.
[0095] For vector polygons that pass geometric verification, the boundary vectorization procedure outputs them as valid streak region vector data. During output, the vector file stores the boundary coordinates of each valid streak region, and the attribute file records the streak region number, area, and number of boundary points. In one implementation, the attribute file also records the corresponding number of candidate points, the maximum anomaly frequency value, and clustering parameters. These records do not alter the geometry of the streak region vector boundaries but provide a traceable source of the region for subsequent orthophoto local restoration, region cropping, or quality checks.
[0096] When multiple valid streak region vector boundaries overlap, the boundary vectorization program merges them based on the boundary overlap relationship. If two vector polygons have overlapping areas and both come from adjacent clusters, the union of their boundaries is taken as a single valid streak region vector data. If the overlapping area is caused solely by boundary point sorting, the boundary point sorting and geometric verification are re-executed. The valid streak region vector data output by the S500 serves as the final result of this automatic positioning process. It can be read by the orthophoto production system and overlaid onto the corresponding orthophoto coordinate system. Subsequent processing only uses the geometrically verified vector boundaries.
Claims
1. A method for automatic and precise positioning of patterned areas in satellite remote sensing orthophotos, characterized in that, include: S100: Acquire a single-scene original satellite image, the corresponding RPC file, DEM data covering the range of the single-scene original satellite image, and the ground resolution of the orthophoto. Determine the effective surface range of the orthophoto based on the RPC file and the DEM data, and construct an orthophoto ground point grid according to the ground resolution of the orthophoto to generate orthophoto ground point grid data. S200. Based on the orthorectified ground point grid data, perform DEM elevation association and RPC forward projection on each orthorectified ground point to determine the virtual image point coordinates of each orthorectified ground point in the single scene original satellite image, and generate a ground point-virtual image point mapping record. S300. Based on the ground point-virtual image point mapping record, determine the original image real image points in the neighborhood of each virtual image point; establish a first marker array and a second marker array for the original image real image points, accumulate the number of times the original image real image point is involved by the neighborhood of the virtual image point in the first marker array, and record the orthophoto ground point coordinate index corresponding to the original image real image point in the second marker array. S400. Based on the first marker array and the second marker array, the original image real image points whose frequency meets the preset frequency threshold are taken as abnormal mapping image points. The coordinate index of the orthophoto point corresponding to the abnormal mapping image point is parsed to generate a set of candidate orthophoto points for latte art. S500: Based on the candidate orthophoto ground point set for latte art, perform point set purification, spatial clustering, and boundary extraction to generate the vector boundary of the latte art region. After geometric verification of the vector boundary of the latte art region, output the valid vector data of the latte art region.
2. The method according to claim 1, characterized in that, Determining the effective surface extent of the orthophoto based on the RPC file and the DEM data includes: Read the total number of rows and columns of the single-scene original satellite image, and define the image-side coordinates of the four corner points of the single-scene original satellite image; Based on the DEM data, the elevation values of the four corner points are determined, and based on the RPC file and the elevation values of the corner points, the object-space coordinates of the four corner points are inversely calculated to obtain the object-space latitude and longitude coordinates of the four corner points. The object's latitude and longitude coordinates are projected into Cartesian coordinates, and the effective surface range of the orthophoto is determined based on the Cartesian coordinates.
3. The method according to claim 2, characterized in that, The step of constructing an orthophoto ground point grid according to the ground resolution of the orthophoto image includes: The minimum bounding rectangle of the plane rectangular coordinates is calculated based on the effective surface range of the orthophoto image. The minimum bounding rectangle is aligned with the ground resolution of the orthophoto to obtain the total number of rows and columns of the orthophoto. The orthophoto ground point grid is constructed based on the total number of rows and columns of the orthophoto image.
4. The method according to claim 1, characterized in that, The process of performing DEM elevation association and RPC forward projection on each orthophoto point includes: Based on the Cartesian coordinates of each orthophoto point, bilinear interpolation is performed on the DEM data to obtain the elevation value of each orthophoto point. Substitute the object-space latitude and longitude coordinates and the elevation value of each orthophoto point into the RPC model to calculate the virtual image point row number and virtual image point column number corresponding to each orthophoto point. The virtual image point row number and the virtual image point column number are combined to form the virtual image point coordinates.
5. The method according to claim 1, characterized in that, Determining the original image real image points in the neighborhood of each virtual image point includes: The row number and column number of each virtual image point coordinate are respectively taken as integer values to obtain the reference real image point row number and reference real image point column number corresponding to the virtual image point coordinate; Based on the reference real image point row number and the reference real image point column number, determine multiple original image real image points in the pixel neighborhood where the virtual image point coordinates are located. Remove the original image real points that are outside the effective image area of the original satellite image of the single scene, and obtain the set of original image real points in the neighborhood of the virtual image points.
6. The method according to claim 1, characterized in that, The step of recording the orthophoto coordinate index of the ground point corresponding to the real image point of the original image in the second marker array includes: Based on the total number of rows and columns of the orthophoto point grid, determine the number of rows (WM) for the row coordinates of the orthophoto points and the number of columns (WN) for the column coordinates of the orthophoto points. The row coordinates of the orthophoto points are encoded with a fixed length according to the number of row positions WM, and the column coordinates of the orthophoto points are encoded with a fixed length according to the number of column positions WN. The fixed-length encoded row coordinates and column coordinates of the orthorectified ground points are appended to the second marker array at positions that match the corresponding real image points in the original image, according to the processing order of the ground point-virtual image point mapping record, to form the orthorectified ground point coordinate index set corresponding to the real image points in the original image.
7. The method according to claim 6, characterized in that, The step of parsing the orthorectified ground point coordinate index corresponding to the abnormal mapping image point to generate a candidate orthorectified ground point set for latte art includes: Read the set of coordinate indices of the orthophoto points corresponding to the abnormal mapped image points from the second marker array; According to the number of rows WM and the number of columns WN, each orthophoto point coordinate index in the orthophoto point coordinate index set is split to restore the corresponding orthophoto point row coordinates and orthophoto point column coordinates. Based on the recovered row and column coordinates of the orthophoto points, the corresponding orthophoto points are determined in the orthophoto point grid data. The determined orthophoto points are deduplicated, and the deduplicated orthophoto points are written into the candidate orthophoto point set for latte art.
8. The method according to claim 1, characterized in that, The point set purification includes: Remove orthophoto ground points that are outside the effective surface range of the orthophoto image; Remove points that are orthographically referenced to the ground and have duplicate Cartesian coordinates; Remove the orthophoto points whose corresponding DEM data are null to obtain the set of candidate points for purification.
9. The method according to claim 8, characterized in that, The spatial clustering includes: Density clustering is performed on the set of purification candidate points to obtain multiple clusters; The cluster radius is determined according to the ground resolution of the orthophoto image, and the minimum number of cluster points is determined according to the preset frequency threshold. Clusters with fewer than the minimum number of cluster points are removed, and clusters with an area smaller than the preset minimum latte art area threshold are also removed, resulting in effective clusters.
10. The method according to claim 9, characterized in that, The boundary extraction and the geometric verification include: Boundary extraction is performed on the effective clusters to obtain a set of boundary points; The boundary point set is sorted to obtain a closed boundary point sequence; The closed boundary point sequence is converted into a vector polygon, and the vector polygon is then subjected to boundary closure verification, boundary intersection verification, and area verification. The verified vector polygons are used as the valid latte art area vector data and written into the attribute file, which includes the latte art area number, the latte art area area, and the number of boundary points.