A method of projection based on precise vector-number map conversion

Through the projection method based on accurate vector digital graph conversion, the problem of poor projection accuracy and experience in the prior art is solved, the accurate superposition and projection of images are realized, and the data fusion and integration capabilities on the GIS platform are improved.

CN112200714BActive Publication Date: 2025-06-17龙睿 +2
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202011031692.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-09-27
Publication Date
2025-06-17
Estimated Expiration
2040-09-27

AI Technical Summary

Technical Problem

The accuracy and experience of existing projection technology in specific situations are not ideal, especially in the process of image recognition and superposition, the distortion is high, unfamiliar geographical areas cannot be accurately identified, and the boundary changes of the spherical earth cannot be matched when zooming the map.

Method used

The projection method based on accurate vector numerical graph conversion is adopted, and the latitude and longitude information and coordinate information of easily identified points in the source image are collected, and matrix scatter interpolation is performed to obtain the coordinate mapping relationship between the source image and the target image in the value range. The image space transformation algorithm is used for geometric correction to achieve accurate superposition and projection of the image.

Benefits of technology

It realizes accurate overlay and projection of images, improves projection accuracy and user experience, can uniformly process different types of images on the GIS platform, and enhances data fusion and integration capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112200714B_ABST
    Figure CN112200714B_ABST
Patent Text Reader

Abstract

The present invention discloses a method for projection based on precise vector map conversion, comprising the following steps: S1 Collect the longitude and latitude of easily recognizable points in the original image, and collect the original image coordinates to obtain two corresponding two-dimensional data arrays; S2 For the known corresponding relationship, perform scatter point interpolation in the matrix to establish the source and target coordinate matrices; S3 Use the image space transformation algorithm to perform geometric correction on the image to obtain the image of the target scene / coordinate system; S4 By reversely using interpolation, obtain the coordinates of the specified longitude and latitude points in the original image. The present invention, by taking the earth as a reference object, establishes a coordinate system, projects the target layer after first breaking it up and then referring to the coordinate system, solves the problem of freely converting graphics based on different types of map projections and coordinates, depicting the information in a certain type of projection graphics on another type of projection graphics, or superimposing graphics of different projection types onto a unified platform of a geographic information system (GIS).
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a method for projection based on precise vector digital map conversion. Background Art

[0002] The Earth is a spherical-like body, and its surface is a non-flattenable curved surface. When drawing a map, it is impossible to be equal-proportionally faithful. To solve this problem, map projection came into being. Map projection uses certain mathematical rules to convert the longitude and latitude lines on the Earth's surface onto a plane, and a variety of projection methods have emerged in different latitude regions or different business scenarios.

[0003] When people use computer assistance for image recognition and overlay, the accuracy and experience of the existing projection technology in specific situations are very unsatisfactory, and distortion is its biggest drawback. The projection accuracy and usage experience are not satisfactory. The reason is that the image itself does not contain geographical information, so the computer cannot recognize and process such images either.

[0004] Currently, there are more than 10 commonly used projections, such as EPSG:4326, EPSG:3857, polar azimuthal projection, etc. However, when using these methods, a lot of data does not contain geographical information when acquired. When people use such maps, they can identify their geographical locations through topographic features such as the coastline, national and provincial administrative boundaries, or ocean currents and lakes on the map. However, in this case, approximate discrimination may be possible for familiar regions, but it will be very difficult and inaccurate for unfamiliar regions. In addition, when zooming in or out of the map, the projection target only scales proportionally and cannot adapt to the boundary changes of the spherical Earth, resulting in too high a distortion ratio, which directly affects the display effect and the final strategic decision.

[0005] To completely solve the problems of precision, user terminal experience, and efficient projection, we propose a brand-new method, which is to establish a map coordinate system with the Earth as a reference object, break up the target layer first, and then perform projection with reference to the coordinate system. This method shows a precise overlay effect in practical applications. Through the overlay of images with different projection methods on a Geographic Information System (GIS), different types of images are also presented on a unified platform and combined with other data for use. Summary of the Invention

[0006] The object of the present invention is to solve the problem of freely converting graphics based on different types of map projections and coordinates, and depicting the information in a graphic of one projection type on a graphic of another projection type, or overlaying graphics of different projection types on a unified platform of a Geographic Information System (GIS); thereby, the information contained in the graphics generated by different environments can be mutually integrated and combined.

[0007] To achieve the above object, the present invention adopts the following technical solutions: A projection method based on accurate vector digital map conversion, the method comprising the following steps:

[0008] S1. Collect the longitude and latitude information of easily recognizable points in the source image, and the coordinate information of the corresponding points in the source image, to obtain a two-dimensional array of source image position information and a two-dimensional array of target image position information;

[0009] S2. Perform scatter interpolation of the matrix on the two known corresponding two-dimensional arrays to obtain the coordinate mapping relationship between the source image and the target image in the value range;

[0010] S3. Adopt an image space transformation algorithm to perform geometric correction on the image to obtain an image for the pseudo-longitude and latitude coordinate system and an image for the target coordinate system;

[0011] S4. By reversely using interpolation, obtain the coordinate information of the specified longitude and latitude points in the source image.

[0012] Further, the steps of collecting coordinates to obtain a two-dimensional data array are as follows:

[0013] S101. Mark the collection points (points ABCDEFG in the attached figure) in the source image, and collect the position information of the corresponding points in the Cartesian coordinate system and the source image coordinate system;

[0014] S102. Store the collected position information in a two-dimensional array, grid_src = [[x1, y1], [x2, y2],.., [x_n, y_n]], representing the two-dimensional array of source image position information, where x_n is the x-axis position of the nth point in the Cartesian coordinate system, and y_n is the y-axis position of the nth point in the Cartesian coordinate system; grid_dst = [[lon1, lat1], [lon2, lat2],.., [lon_n, lat_n]], representing the two-dimensional array of target image position information, where lon_n is the longitude information of the nth point in the map coordinate, and lat_n is the latitude information of the nth point in the map coordinate.

[0015] Further, the method for establishing the source and target coordinate matrices is as follows:

[0016] S201. Obtain the size of the source image h, w = image.size, where h is the height of the source image and w is the width of the source image; establish a coordinate matrix based on the size of the source image: grid_y, grid_x = grid[0:h:hj, 0:w:wj]; hj and wj are the height step and width step respectively. The function of the grid function is to grid the data at the specified step and generate uniform grid coordinate data. grid_y and grid_x are the coordinate data matrices of the source image after gridding on the y-axis and x-axis respectively;

[0017] S202. Scattered point interpolation of the matrix: grid_z=griddata(grid_dst, grid_src, (grid_y,grid_x),method="cubic"); cubic is an interpolation method. grid_dst is a two-dimensional array of the position information of the target image, grid_src is a two-dimensional array of the position information of the source image. The function of the griddata function is to interpolate the scattered point coordinate information into the specified matrix to obtain the coordinate mapping parameters;

[0018] S203. Obtain the coordinate mapping relationship between the source image and the target image: map_x = [array[:,1] for array in grid_z].reshape(h, w), map_y = [array[:,0] for array in grid_z].reshape(h,w); grid_z is the mapping relationship information of the data gridded after matrix scattered point interpolation; map_x represents the mapping parameter of the x-axis, and map_y represents the mapping parameter of the y-axis.

[0019] Further, the steps to obtain the image of the target scene / coordinate system are as follows:

[0020] Stretch and squeeze the image within the local area. This operation is different at different positions, and the obtained result can be geometrized. Its calculation method can be regarded as the process of placing the pixels at specific positions in one image to the specified positions in another image. To complete the mapping process, it is necessary to obtain some interpolation for non-integer pixel coordinates because the pixel coordinates of the source image and the target image are not in one-to-one correspondence.

[0021] S301. Establish a numerical matrix for the source image; convert the image data into a numerical structure, adopting the RGBA mode. The converted data is a three-dimensional numerical matrix imgGrid containing four color channels, with the data type of the values being uint8 and the range being [0, 255]. Specifically: image = image.convert('RGBA'), imgGrid = to_matrix(image); the function of the image.convert function is to convert the image data into a numerical structure; the function of the to_matrix function is to convert the numerical structure of the image into a three-dimensional matrix.

[0022] S302. Convert the image shape to represent the pixel positions. The conversion method is: dst = remap(imgGrid, map_x, map_y), where the remap function maps the processed source image matrix imgGrid using two mapping parameters, map_x and map_y, to generate the target image numerical matrix dst.

[0023] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0024] Fundamentally, the present invention breaks through the technical barriers. Due to the convenience and flexibility of the design, the way of putting it into production is easily achievable, and it can quickly and flexibly solve the problems encountered by relevant enterprises and institutions in many specific fields in data acquisition and decision-making. At the same time, many countries artificially set technical barriers in the fields where they have leading technologies, making it impossible for others to obtain their source data or core technical solutions; while this invention can flexibly obtain its information and data directly through public channels such as the Internet and integrate them into the GIS platform for our own use, bringing great improvement to the work of Chinese enterprises and institutions in the above fields. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Figure 1 Collection elements of map coordinate points for the present invention DETAILED DESCRIPTION OF THE EMBODIMENTS

[0026] In order to make the objectives, features, and advantages of the present invention more obvious and understandable, the embodiments of the present invention will be described clearly and completely below. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative efforts, such as embodiments that only change the use without changing the basic principles involved in the claims, fall within the scope of protection of the present invention.

[0027] DETAILED DESCRIPTION OF THE EMBODIMENT 1: The present invention discloses a method for projection based on precise vector digital map conversion, and the method includes the following steps:

[0028] S1. Collect the longitude and latitude information of the easily recognizable points in the source image, and the coordinate information of the corresponding points in the source image, to obtain a two-dimensional array of the source image position information and a two-dimensional array of the target image position information;

[0029] S2. Perform scatter interpolation of the matrix on the two known corresponding two-dimensional arrays to obtain the coordinate mapping relationship between the source image and the target image in the value range;

[0030] S3. Use the image space transformation algorithm to perform geometric correction on the image to obtain an image for the pseudo-longitude and latitude coordinate system and an image for the target coordinate system;

[0031] S4. By inversely using interpolation, obtain the coordinate information of the specified longitude and latitude points in the source image.

[0032] Specific Embodiment 2: This embodiment is a further description of Specific Embodiment 1. The S1 includes the following steps:

[0033] S101. Mark the collection points (points ABCDEFG in the attached figure) in the source image, and collect the position information of the corresponding points in the Cartesian coordinate system and the source image coordinate system;

[0034] S102. Store the collected position information in a two-dimensional array, grid_src = [[x1, y1], [x2, y2],.., [x_n, y_n]], representing the two-dimensional array of the source image position information, where x_n is the x-axis position of the nth point in the Cartesian coordinate system, and y_n is the y-axis position of the nth point in the Cartesian coordinate system; grid_dst = [[lon1, lat1], [lon2, lat2],.., [lon_n, lat_n]], representing the two-dimensional array of the target image position information, where lon_n is the longitude information of the nth point in the map coordinate system, and lat_n is the latitude information of the nth point in the map coordinate system.

[0035] Specific Embodiment 3: This embodiment is a further description of Specific Embodiment 1. The S2 includes the following steps:

[0036] S201. Obtain the size of the source image h, w = image.size, where h is the height of the source image and w is the width of the source image; establish a coordinate matrix based on the source image size: grid_y, grid_x = grid[0:h:hj, 0:w:wj]; hj and wj are the height step and width step respectively. The function of the grid function is to grid the data according to the specified step to generate uniform grid coordinate data. grid_y and grid_x are the coordinate data matrices of the source image after gridding on the y-axis and x-axis;

[0037] S202. Scattered point interpolation of the matrix: grid_z = griddata(grid_dst, grid_src, (grid_y, grid_x), method = "cubic"); cubic is an interpolation method. grid_dst is a two-dimensional array of the position information of the target image, grid_src is a two-dimensional array of the position information of the source image. The function of the griddata function is to interpolate the scattered point coordinate information into a specified matrix to obtain the coordinate mapping parameters.

[0038] S203. Obtain the coordinate mapping relationship between the source image and the target image: map_x = [array[:, 1] for array in grid_z].reshape(h, w), map_y = [array[:, 0] for array in grid_z].reshape(h, w); grid_z is the mapping relationship information of the data lattice after matrix scattered point interpolation; map_x represents the mapping parameter of the x-axis, and map_y represents the mapping parameter of the y-axis.

[0039] Specific Embodiment 4: This embodiment is a further description of Specific Embodiment 1. The S3 includes the following steps:

[0040] Stretch and squeeze the image within a local area. This operation is different at different positions, and the obtained result can be geometricized. Its calculation method can be regarded as a process of placing the pixels at specific positions in one image to the specified positions in another image. In order to complete the mapping process, it is necessary to obtain some interpolation for non-integer pixel coordinates because the pixel coordinates of the source image and the target image are not in one-to-one correspondence.

[0041] S301. Establish a numerical matrix of the source image; convert the image data into a numerical structure, using the RGBA mode. The converted data is a three-dimensional numerical matrix imgGrid containing four color channels, with the data type of the value being uint8 and the range [0, 255]. Specifically: image = image.convert('RGBA'), imgGrid = to_matrix(image); the function of the image.convert function is to convert the image data into a numerical structure; the function of the to_matrix function is to convert the numerical structure of the image into a three-dimensional matrix.

[0042] S302. Convert the shape of the image to represent the pixel positions. The conversion method is: dst = remap(imgGrid, map_x, map_y). The remap function maps the processed source image matrix imgGrid using two mapping parameters map_x and map_y to generate the target image numerical matrix dst.

[0043] The combination features of components not described in detail in the specification belong to the content that can be easily thought of by the prior art or can be easily determined and have no objections when implementing the present invention. The above solutions are only descriptions of several preferred embodiments of the present application. However, the protection scope of the present application is not limited thereto. Anyone familiar with the technology can easily implement it within the scope described in the present application. Any changes or substitutions that do not change the basic principles involved in the claims should be covered within the protection scope of the present application. That is, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A method of projection based on precise vector-to-digital map conversion, characterized in that: By gridifying the lattice coordinates of the source image, establishing a digital coordinate association with the target image, and projecting and superimposing the layers in the most efficient way with the lowest distortion rate, the method includes the following steps: S1. Collect the longitude and latitude information of the easily recognizable points in the source image and the coordinate information of the corresponding points in the source image to obtain a two-dimensional array of the source image position information and a two-dimensional array of the target image position information; S2. Perform scattered point interpolation of the matrix on the two known corresponding two-dimensional arrays to obtain the coordinate mapping relationship between the source image and the target image in the value range. Specifically: S201. Obtain the size h, w of the source image = image.size, where h is the height of the source image and w is the width of the source image; establish a coordinate matrix based on the source image size: grid_y, grid_x = grid[0:h:hj, 0:w:wj]; hj and wj are the height step and width step respectively, and the function of the grid function is to gridify the data points according to the specified step to generate uniform grid coordinate data. grid_y and grid_x are the coordinate data matrices after gridifying the source image on the y-axis and x-axis; S202. Scattered point interpolation of the matrix: grid_z = griddata(grid_dst, grid_src, (grid_y, grid_x), method = "cubic"); cubic is an interpolation method, grid_dst is the two-dimensional array of the target image position information, grid_src is the two-dimensional array of the source image position information, and the function of the griddata function is to interpolate the scattered point coordinate information into the specified matrix to obtain the coordinate mapping parameters; S203. Obtain the coordinate mapping relationship between the source image and the target image: map_x = [array[:, 1] for array in grid_z].reshape(h, w), map_y = [array[:, 0] for array in grid_z].reshape(h, w); grid_z is the mapping relationship information of the data gridified after matrix scattered point interpolation; map_x represents the mapping parameter of the x-axis, and map_y represents the mapping parameter of the y-axis; S3. Use the image space transformation algorithm to perform geometric correction on the image to obtain the image for the pseudo-longitude and latitude coordinate system and the image for the target coordinate system; S4. By inversely using interpolation, obtain the coordinate information of the specified longitude and latitude points in the source image.

2. The method of projection based on precise vector-to-digital map conversion according to claim 1, characterized in that: The S1 includes the following steps: S101. Mark the collection points in the source image and collect the position information of the corresponding points in the Cartesian coordinate system and the source image coordinate system; S102. The collected location information is stored in a two-dimensional array, grid_src = [[x1, y1], [x2, y2],.., [x_n, y_n]], which represents the two-dimensional array of the source image location information. x_n is the x-axis position of the nth point in the Cartesian coordinate system, and y_n is the y-axis position of the nth point in the Cartesian coordinate system; grid_dst = [[lon1, lat1], [lon2, lat2],.., [lon_n, lat_n]], which represents the two-dimensional array of the target image location information. lon_n is the longitude information of the nth point in the map coordinates, and lat_n is the latitude information of the nth point in the map coordinates.

3. The method of projection based on precise vector-to-digital map conversion according to claim 1, characterized in that: The said S3 includes the following steps: S301. Establish a numerical matrix of the source image; convert the image data into a numerical structure. Using the RGBA mode, the converted data is a three-dimensional numerical matrix imgGrid containing four color channels, with the data type of the values being uint8 and the range [0, 255]. Specifically: image = image.convert('RGBA'), imgGrid = to_matrix(image); the function of the image.convert function is to convert the image data into a numerical structure; the function of the to_matrix function is to convert the numerical structure of the image into a three-dimensional matrix. S302. Convert the image shape to represent the pixel point positions. The conversion method is: dst = remap(imgGrid, map_x, map_y). The remap function maps the processed source image matrix imgGrid using two mapping parameters map_x and map_y to generate the target image numerical matrix dst.

Citation Information

Patent Citations

  • Geographic position and corresponding image position coordinate transformation method and system

    CN107845060A

  • GIS data correction method and device for online map superposition

    CN109801219A