Aircraft positioning method using ToF camera in small celestial body landing process

By using ToF cameras and rasterized rendering frameworks in small celestial detection, combined with mask NCC matching method, the autonomous terrain relative navigation of the aircraft is achieved, solving the problems of communication delay and uplink bandwidth limitation in the prior art, and improving the accuracy and real-time positioning.

CN119714306AActive Publication Date: 2025-03-28BEIJING INST OF CONTROL ENG
View PDF 13 Cites 0 Cited by

Patent Information

Application Number
CN202411521836.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-29
Publication Date
2025-03-28
Estimated Expiration
2044-10-29

AI Technical Summary

Technical Problem

In small celestial body detection, due to the limitations of communication delay and uplink bandwidth, it is difficult for the prior art to achieve accurate terrain relative navigation of the aircraft.

Method used

The ToF camera is used to locate the aircraft, and the three-dimensional coordinates and albedo information is obtained by triangulating the rasterized natural terrain features. The rasterized rendering frame and mask NCC matching method are used to realize the autonomous terrain relative navigation of the aircraft.

Benefits of technology

This method can realize accurate positioning of the aircraft without being restricted by lighting conditions, reduce the demand for uplink bandwidth and improve the real-time performance of the algorithm.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119714306A_ABST
    Figure CN119714306A_ABST
Patent Text Reader

Abstract

The invention relates to a method for realizing aircraft positioning by using a ToF camera in a small celestial body landing process, and belongs to the field of terrain relative navigation. According to the method, the three-dimensional topography of the terrain can be rendered in real time by utilizing the self-illumination characteristic of the ToF camera. After a rendered image is generated, a mask NCC method can be used for matching a real shot image with the rendered image, and then the corresponding relation between the view field center pointing direction and the map coordinates is obtained. In addition, depth information of the ToF camera is used for obtaining the directional dimension, and then the current position of the aircraft is calculated. The type of the sensor and the type of the light source adopted by the method are different from those of an NFT algorithm, and the positioning function of the aircraft can be completed only through one-time matching.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to an aircraft positioning method using a ToF camera during the landing of a small celestial body, and belongs to the field of terrain relative navigation. Background Art

[0002] At present, in the exploration of small celestial bodies in deep space, due to the limitations of communication delay and upstream bandwidth, ground-based navigation methods are almost impossible to implement. Relying solely on inertial navigation, it is impossible to achieve precise landing in the sampling area. Therefore, autonomous terrain-relative navigation methods play a very important role in the mission.

[0003] In October 2020, the US OSIRIS-REx probe successfully completed the sampling of the asteroid Bennu. The autonomous onboard Natural Feature Tracking (NFT) algorithm played a huge role in the sampling process. The principle is to render the Digital Elevation Model (DEM) of natural terrain features in real time, and then correlate and match the rendered image with the navigation image to estimate the position and speed of the spacecraft relative to the asteroid.

[0004] The survey results show that the NFT algorithm is implemented using a single-reflection ray tracing framework. The algorithm relies on the prior position of the current spacecraft relative to the asteroid and the direction of the sun, and uses the principle of ray tracing to render the grayscale value of each pixel in the target window. The rendered image is then registered with the grayscale image taken by the monocular camera to achieve the ground Figure 3 Direction measurement of dimensional coordinates.

[0005] There are no actual on-orbit applications of using ToF cameras for relative navigation of small celestial bodies. ToF cameras can provide target grayscale and depth information, and the self-illumination characteristics of ToF cameras can be used to render the three-dimensional topography of the terrain in real time. After the rendered image is generated, the ToF real-time grayscale image can be matched with the rendered image, and combined with the depth information, the corresponding relationship between the center of the field of view and the map coordinates can be obtained to complete the real-time positioning of the aircraft. Summary of the invention

[0006] The technical problem solved by the present invention is as follows: the deficiencies of the prior art are overcome, and an aircraft positioning method using a ToF camera during the landing of a small celestial body is proposed, thereby realizing autonomous terrain relative navigation of the aircraft.

[0007] The technical solution of the present invention comprises the following steps:

[0008] The present invention discloses a method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body, comprising:

[0009] Triangulate the rasterized natural terrain features to obtain a number of triangles;

[0010] Get the pixels within the triangle;

[0011] According to the albedo information of the terrain feature, performing image rendering on the pixels within the triangle to obtain a rendered image and an image grayscale value of each pixel in the rendered image;

[0012] According to the image grayscale value, the rendered image is matched with the actual grayscale image taken by the ToF camera to obtain the mask NCC;

[0013] Extract the first peak of the mask NCC correlation matrix and calculate the image offset;

[0014] According to the image offset, the three-dimensional coordinates of the terrain features corresponding to the image offset points are obtained;

[0015] Get the depth image information of the ToF camera corresponding to the center point of the image and calculate the current position of the aircraft.

[0016] Furthermore, in the above method, the rasterized natural terrain features are triangulated to obtain a number of triangles, specifically:

[0017] The triangle is generated by connecting the coordinate points counterclockwise; the coordinates of the three vertices of the triangle are (s map ·j+i,s map ·(j+1)+i,s map (j+1)+i+1) or (s map ·j+i,s map ·(j+1)+i+1,s map ·j+i+1); where j,i represent the row and column coordinates of the vertex in the grid map, and s map is the size of the raster map.

[0018] Furthermore, in the above method, the pixels located within the triangle are obtained by:

[0019] Using the camera's internal and external parameters, project the three vertices of the triangle onto the image plane, and record the row and column positions l0, l1, and l2 of the three vertices of the triangle on the image;

[0020] Using the row and column positions, establishing a search window;

[0021] According to the search window, determining whether there is a pixel within the triangle;

[0022] The method to determine whether there is a pixel within the triangle is:

[0023] Assume that the position of the pixel to be judged is P, and calculate the values ​​of α=l0l1×l0P, β=l1l2×l1P and γ=l2l0×l2P respectively. If α, β and γ are all greater than 0 or less than 0, the pixel P is located in the triangle; otherwise, the pixel P is not in the triangle.

[0024] Furthermore, in the above method, the use of row and column positions to establish a search window is specifically as follows:

[0025] y min =floor(min(l 0,u ,l 1,u ,l 2,u ))

[0026] y max = ceil(max(l 0,u ,l 1,u ,l 2,u ))

[0027] x min =floor(min(l 0,v ,l 1,v ,l 2,v ))

[0028] x max = ceil(max(l 0,v ,l 1,v ,l 2,v ))

[0029] Among them, y min is the starting position of the search window, y max The end position of the search window, x min is the column starting position of the search window, x max is the column end position of the search window; l0, l1, l2 are the projection positions of the three vertices p0, p1, p2 of the triangle on the camera image plane, l 0,u ,l 0,v is the row and column position of l0, l 1,u ,l 1,v is the row and column position of l1, l 2,u ,l 2,v It is the row and column position of l2; floor means rounding down, and ceil means rounding up.

[0030] Furthermore, in the above method, image rendering is performed on the pixels within the triangle, and the specific method is:

[0031] S21, determine whether the pixel is blocked, if so, exit; if not, update the depth buffer corresponding to the pixel and save the location corresponding to the pixel. Figure 3 Dimensional coordinates, enter step S22;

[0032] S22, performing photometric rendering on the pixel, calculating the relative albedo corresponding to the pixel; and obtaining the image grayscale value of the pixel according to the relative albedo.

[0033] Furthermore, in the above method, whether a pixel is blocked is determined by:

[0034] Assume that the vectors pointing to the three vertices p0, p1, and p2 of the triangle in the camera coordinate system are d0, d1, and d2 respectively; the projection positions of d0, d1, and d2 on the image plane are l0, l1, and l2, where l 0,u ,l 0,v is the row and column position of l0, l 1,u ,l 1,v is the row and column position of l1, l 2,u ,l 2,v is the row and column position of l2;

[0035] Determine the pixel P(P row ,P col ) The depth of the triangle from the camera to the corresponding position depth (cam) (P) is greater than the depth Z-Buffer (P) from the camera to the triangle recorded in the depth buffer Z-buffer; if so, the pixel is blocked and the depth buffer Z-buffer is updated; if not, the pixel is not blocked; where P row ,P col is the row and column position of point P;

[0036]

[0037] Z-Buffer(P)=|depth (cam) (P)|,if|depth (cam) (P)|<Z-Buffer(P)

[0038] Furthermore, in the above method, the location corresponding to the pixel is saved. Figure 3 dimensional coordinates, the specific method is:

[0039] Assume that pixel P in the camera coordinate system = (P row ,P col ) corresponds to the unit vector d = [d x ,d y ,d z ] T ;

[0040] After normalizing the vector in the Z direction, we get the normalized vector

[0041] According to the normalized vector, we can get Figure 3 The position of the dimensional coordinate in the camera coordinate system t lm@cam ,

[0042] Base Figure 3 The position of the dimensional coordinate in the camera coordinate system is obtained Figure 3 The position of the dimensional coordinates in the fixed connection of the small celestial body lm,

[0043] After updating the depth buffer Z-buffer, synchronously update the map coordinate buffer p-Buffer in P(P row ,P col ) The fixed coordinates of the small celestial body recorded at the position:

[0044] p-Buffer(P)=lm,if|depth (cam) (P)|<Z-Buffer(P)

[0045] in, is the rotation matrix of the fixed connection of the small celestial body to the camera system in the prior information, t bf@cam is the position of the origin of the small celestial body's fixed connection in the camera coordinate system.

[0046] Furthermore, in the above method, the image grayscale value of the pixel is specifically calculated as follows:

[0047]

[0048] Where DN is the gray value of the image corresponding to pixel P; θ i is the incident angle, θ e is the emission angle; i, j and k represent the serial numbers corresponding to the three vertices of the triangle; a is the relative albedo dataset of the navigation feature, a p is the relative albedo at point p.

[0049] Furthermore, in the above method, the mask NCC is specifically:

[0050]

[0051] Among them, f2',m'2 represents the 180° flip of the corresponding image; They are FFT operation and IFFT operation respectively; is the conjugate of the corresponding image spectrum; f1 is the original grayscale image taken by the ToF camera, f2 is the rendered image, m1 and m2 are the masks corresponding to the original grayscale image and the rendered image, respectively.

[0052] Furthermore, in the above method, the first peak of the mask NCC cross-correlation matrix is ​​extracted and the image offset is calculated. The specific method is:

[0053] Assume that the maximum value of the cross-correlation matrix is ​​the first peak score=max(NCC);

[0054] Let the mask NCC matching threshold be THRES;

[0055] If score < THRES, discard this round of registration;

[0056] If score ≥ THRES, calculate the image offset;

[0057] The formula for calculating the image offset is:

[0058] u shift =u shift +u mis / 2

[0059] v shift =v shift +v mis / 2

[0060] u shift =u max -u rnd +1

[0061] v shift =v max -v ref +1

[0062] u mis =u rnd -u img

[0063] v mis =v rnd -v img

[0064] (u max ,v max )=argmax(NCC)

[0065] Among them, (u max ,v max ) is the position of the first peak of the cross-correlation matrix, (u rnd ,v rnd ) is the size of the rendered image, (u img ,v img ) is the size of the actual image.

[0066] Furthermore, in the above method, the three-dimensional coordinates of the terrain features corresponding to the image offset points are obtained by:

[0067] Assume that the center point of the ToF real-time image is (u center ,v center ), using the image offset, calculate the corresponding rendering position (u match ,v match ):

[0068] u match =u center +u shift

[0069] v match =v center +v shift

[0070] The corresponding position in the map coordinate cache p-Buffer is the three-dimensional coordinate lm′ of the terrain feature corresponding to the image offset point:

[0071] lm′=p-Buffer(u match ,v match )

[0072] Furthermore, in the above method, the depth image information of the ToF camera corresponding to the center point of the image is obtained, and the current position of the aircraft is solved. The specific method is:

[0073] Get the center point of the real image in the ToF camera depth image (u center ,v center ) at the depth information l center ;

[0074] According to the depth information center and the center point of the real image in the ToF camera coordinate system (u center ,v center ) The corresponding unit points to Calculate the vector of the three-dimensional coordinates lm′ of the terrain feature pointed by the camera in the camera coordinate system

[0075] According to the vector of the three-dimensional coordinate lm′ of the terrain feature pointed by the camera in the camera coordinate system, the corrected position w of the ToF camera under the fixed connection of the small celestial body is obtained. ToF , specifically:

[0076]

[0077] in, It is the rotation matrix of the small celestial body fixed connection to the camera system in the prior information.

[0078] Beneficial effects compared with the prior art:

[0079] (1) The present invention performs implicit triangle connection for regular rasterized terrain features. The three-dimensional coordinates and relative albedo of the terrain features have the same size and topological structure. This data structure only needs to save the data information necessary for rendering, without saving additional surface tables and normal information similar to OBJ files. In view of the limited uplink bandwidth in deep space exploration missions, this data type can significantly reduce the total amount of uplink data.

[0080] (2) The present invention is implemented using a rasterization rendering framework, which has more advantages in terms of algorithm real-time performance than the ray tracing framework used in existing NFT algorithms.

[0081] (3) The present invention uses a mask NCC matching method based on fast Fourier transform (FFT) to calibrate the image. Compared with the standard NCC matching method, the algorithm has more advantages in real-time performance.

[0082] (4) The present invention proposes a method for positioning an aircraft using a ToF camera. Different from the monocular image used by the NFT algorithm, the proposed positioning method utilizes the self-illumination characteristics of the ToF camera, so that the method is not restricted by lighting conditions and can accurately position the aircraft even in shadow areas. At the same time, the depth information of ToF can provide a dimension for the pointing information, and the positioning function of the aircraft can be completed with only a single alignment. BRIEF DESCRIPTION OF THE DRAWINGS

[0083] Figure 1 It is a schematic diagram of the method flow of the present invention;

[0084] Figure 2 This is a schematic diagram of feature triangulation preprocessing of the present invention;

[0085] Figure 3 A schematic diagram of triangle rasterization according to the present invention;

[0086] Figure 4 This is a schematic diagram of the zero-filling operation of the present invention;

[0087] Figure 5 This is a schematic diagram of the rendering effect of Embodiment 1 of the present invention;

[0088] Figure 6 This is a schematic diagram of the calculation results of Example 1 of the present invention. DETAILED DESCRIPTION

[0089] The present invention is further described below in conjunction with the accompanying drawings. Figure 1 The flowchart of the method of the present invention is shown. The present invention provides a method for realizing the positioning of an aircraft using a ToF camera during the landing of a small celestial body. The main steps are as follows:

[0090] 1. Feature triangulation preprocessing. Triangulate the rasterized natural terrain features, including the three-dimensional coordinates, relative albedo and pre-installed shadows of the terrain; triangulation refers to the implicit triangle connection of regular rasterized terrain features; the three-dimensional coordinates, relative albedo and pre-installed shadows of the terrain features have the same size and topological structure. This method only needs to save the data information necessary for rendering, without saving additional surface and normal information similar to OBJ files. For the situation where the uplink bandwidth is limited in deep space exploration missions, this data type can significantly reduce the total amount of uplink data.

[0091] The size of the raster map map It needs to be set to an odd number, usually 199. For a single map feature, there are s map *s map vertices and 2*(s map -1) 2 triangles. The triangles need to be connected in a counterclockwise manner to ensure that the normal direction of the triangle always points to the outside of the celestial body. For a quadrilateral mesh, it can be divided into two types of triangles. The connection method of the first type of triangles can be expressed as (s map ·j+i,s map (j+1)+i,s map ·(j+1)+i+1), the connection mode of the second type of triangle can be expressed as (s map ·j+i,s map (j+1)+i+1,s map ·j+i+1). Where j,i represent the row and column coordinates of the vertices in the grid map.

[0092] like Figure 2 As shown, the terrain size s map =5, for example, there are s terrain features in total. map *s map = 25 vertices and 2*(s map -1) 2 = 32 triangles. The connection order of the triangles is (0,5,6), (0,6,1), ..., (18,23,24), (18,24,19);

[0093] 2. Triangle rasterization. Project the pre-processed triangle to the phase plane, and use the bounding box strategy to determine which pixels are inside the triangle;

[0094] The three vertices of the triangle are projected onto the image plane using the camera's internal and external parameters, and the row and column positions of the three vertices of the triangle on the image are recorded: l0, l1, and l2. 0,u ,l 0,v is the row and column position of l0, l1,u ,l 1,v is the row and column position of l1, l 2,u ,l 2,v is the row and column position of l2. Then, a search window (y min :y max ,x min :x max ). The search window starts at line l 0,u ,l 1,u ,l 2,u Round down the minimum value in y min =floor(min(l 0,u ,l 1,u ,l 2,u )); The line end position of the search window is l 0,u ,l 1,u ,l 2,u Round up the maximum value in y max = ceil(max(l 0,u ,l 1,u ,l 2,u )); The column starting position of the search window is l 0,v ,l 1,v ,l 2,v Round down the minimum value in x min =floor(min(l 0,v ,l 1,v ,l 2,v )); The column end position of the search window is x max = ceil(max(l 0,v ,l 1,v ,l 2,v )).like Figure 3 shown.

[0095] Assume that the position of the pixel to be judged is P, and calculate the values ​​of α=l0l1×l0P, β=l1l2×l1P and γ=l2l0×l2P respectively. If α, β and γ are all greater than 0 or less than 0, the pixel P is located in the triangle; otherwise, the pixel P is not in the triangle.

[0096] 3. Image rendering. Image rendering includes three parts: occlusion judgment and photometric rendering. For occlusion judgment, a depth buffer Z-buffer needs to be maintained to update the minimum depth corresponding to each pixel and decide whether the current pixel is occluded; for unoccluded pixels, the relative albedo corresponding to the pixel is calculated, and then the image grayscale value of the pixel and the three-dimensional coordinates of the terrain feature corresponding to the pixel are calculated.

[0097] For pixel occlusion judgment on the image plane, a depth buffer Z-buffer needs to be maintained to record the minimum depth corresponding to the current pixel. Suppose the vectors of the camera pointing to the three vertices p0, p1, and p2 of the triangle in the camera coordinate system are d0, d1, and d2 respectively. The projection positions of d0, d1, and d2 on the image plane are l0, l1, and l2, where l 0,u ,l 0,v is the row and column position of l0, l 1,u ,l 1,v is the row and column position of l1, l 2,u ,l 2,v is the row and column position of l2. Determine the pixel P on the image plane in this calculation = (P row ,P col ) The depth of the triangle from the camera to the corresponding position depth (cam) Is (P) greater than the depth Z-Buffer(P) from the camera to the triangle recorded in the depth buffer Z-buffer? If so, it means that the map coordinate p is blocked by other terrains, and subsequent processing is skipped; if not, it means that p corresponds to a smaller depth, and the current depth is calculated using the barycentric coordinate method and overwrites the depth of the corresponding position in the depth buffer Z-buffer:

[0098]

[0099] Z-Buffer(P)=|depth (cam) (P)|,if|depth (cam) (P)|<Z-Buffer(P)

[0100] For unobstructed pixels, calculate the terrain 3D coordinates corresponding to the pixel. Suppose pixel P in the camera coordinate system = (P row ,P col ) corresponds to the unit vector d = [d x ,d y ,d z ] T , after normalizing the vector in the Z direction, we get Zedi Figure 3 The position of the dimensional coordinate in the camera coordinate system t lm@cam It can be expressed as:

[0101]

[0102] After updating the depth buffer Z-buffer, the map coordinate buffer p-Buffer is updated synchronously at P = (P row ,P col ) The fixed coordinates of the small celestial body recorded at the position:

[0103] p-Buffer(P)=lm,if|depth (cam) (P)|<Z-Buffer(P)

[0104] For photometric rendering, pixel P = (P row ,P col ) has the following relationship:

[0105]

[0106] Where DN is the gray value of the image corresponding to pixel P; θ i is the incident angle, θ e is the emission angle; i, j and k represent the serial numbers corresponding to the three vertices of the triangle; a is the relative albedo dataset of the navigation feature, a p is the relative albedo at point p. Due to the self-illumination characteristics of the ToF camera, the light source can be considered as the observation side, and then θ i =θ e , so the image gray value is only proportional to the relative albedo at point p.

[0107] 4. Image matching. Use the mask NCC algorithm to match the rendered image with the grayscale image taken by the ToF camera. Let the original grayscale image taken by the ToF camera be f1, and the rendered image be f2. Extract the masks m1 and m2 of the corresponding images. The mask is a binary image of the same size as the corresponding original image. The part of the image with a grayscale value that is not 0 needs to participate in the registration and is set to 1 in the mask. The part of the original image with a DN value of 0 does not participate in the registration and is set to 0 in the mask. The formula of the mask NCC algorithm is as follows:

[0108]

[0109] Among them, f2',m'2 represents the 180° flip of the corresponding image; They are FFT operation and IFFT operation respectively; F1, M1 represent the frequency spectrum of the image, that is, is the conjugate of the corresponding image spectrum, which is equivalent to During the implementation process, the data of f1, f2′, m1, and m2′ need to be padded with zeros. The length after zero padding is twice the original size of f1, f2′, m1, and m2′. For example, Figure 4 shown.

[0110] After calculating the NCC cross-correlation matrix according to the above formula, extract the first peak of the NCC cross-correlation matrix and calculate the image offset. Set the maximum value of the cross-correlation matrix, that is, the first peak, as score, score = max(NCC). Set the NCC matching threshold as THRES, which defaults to 0.45. If score < THRES, discard this round of registration; if score ≥ THRES, it means that there is a strong correlation between the rendered image and the real image, and perform subsequent operations:

[0111] The position of the first peak of the cross-correlation matrix is ​​(u max ,v max )=argmax(NCC), the size of the rendered image is (u rnd ,v rnd ), the size of the real image is (u img ,v img ), then the image offset (u shift ,v shift )for:

[0112] u shift =u max -u rnd +1

[0113] v shift =v max -v ref +1

[0114] The size deviation between the offset image and the reference image is (u mis ,v mis ):

[0115] u mis =u rnd -u img

[0116] v mis =v rnd -v img

[0117] The final image offset is:

[0118] u shift =u shift +u mis / 2

[0119] v shift =v shift +v mis / 2

[0120] 5. Obtain the correspondence between the ToF field of view center and the map. Use the image offset (u shift ,v shift) Get the three-dimensional coordinates of the terrain feature corresponding to the center point of the ToF camera field of view:

[0121] Assume that the center point of the ToF real-time image is (u center ,v center ), use the image offset to calculate the corresponding rendering position (u match ,v match ):

[0122] u match =u center +u shift

[0123] v match =v center +v shift

[0124] The corresponding position in the map coordinate cache p-Buffer is the three-dimensional coordinate lm′ of the terrain feature corresponding to the image offset point:

[0125] lm′=p-Buffer(u match ,v match )

[0126] 6. Get the depth information of the center of the ToF field of view and calculate the position of the aircraft. Get the center point of the image in the ToF depth image (u center ,v center ) at the depth information l center , let the center point of the real image in the ToF camera coordinate system (u center ,v center ) corresponds to the unit direction Then the vector d pointing to the three-dimensional coordinate lm′ of the terrain feature in the camera coordinate system is center for:

[0127]

[0128] Then the corrected position of the ToF camera under the fixed connection of the small celestial body is w ToF It can be expressed as:

[0129]

[0130]

[0131] Example 1

[0132] This embodiment provides a method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body. The method comprises the following steps:

[0133] (1) Triangulate the rasterized terrain features.

[0134] (2) Use rasterization method to rasterize each triangle within the terrain feature.

[0135] (3) Perform occlusion judgment and photometric rendering of terrain features. During the rendering process, the albedo of each point needs to be calculated in real time. p And substitute it into the photometric rendering, and save the corresponding location of each pixel Figure 3 Dimensional coordinate information. Rendering effect is as follows Figure 5 As shown, the left picture is a rendered image, and the right picture is a ToF real-shot grayscale image.

[0136] (4) The cross-correlation matrix between the rendered image and the real image is calculated using the mask NCC method. The calculation results are as follows: Figure 6 As shown, the peak value is the position with the highest correlation.

[0137] (5) Extract the depth information of the center of the ToF field of view and update the position of the aircraft.

[0138] This method comprehensively considers the impact of terrain self-occlusion and terrain albedo changes on the grayscale of the rendered image. The photometric model used for rendering the image is designed according to the self-illumination characteristics of ToF, so that this method is not limited by lighting conditions. Compared with the standard NCC algorithm, the mask NCC algorithm can improve real-time performance by about one order of magnitude due to its implementation using fast Fourier transform (FFT).

[0139] Although the content of the present invention has been described in detail through the above preferred embodiments, it should be appreciated that the above description should not be considered as a limitation of the present invention. After reading the above content, it will be apparent to those skilled in the art that various modifications and substitutions of the present invention will occur. Therefore, the protection scope of the present invention should be limited by the appended claims.

[0140] The contents not described in detail in the specification of the present invention belong to the common knowledge of the professionals in this field.

Claims

1. A method for realizing aircraft positioning using a ToF camera during the landing of a small celestial body, characterized in that: include: Triangulate the rasterized natural terrain features to obtain a number of triangles; Get the pixels within the triangle; According to the albedo information of the terrain feature, performing image rendering on the pixels within the triangle to obtain a rendered image and an image grayscale value of each pixel in the rendered image; According to the image grayscale value, the rendered image is matched with the actual grayscale image taken by the ToF camera to obtain the mask NCC; Extract the first peak of the mask NCC correlation matrix and calculate the image offset; According to the image offset, the three-dimensional coordinates of the terrain features corresponding to the image offset points are obtained; Get the depth image information of the ToF camera corresponding to the center point of the image and calculate the current position of the aircraft.

2. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 1, characterized in that: The rasterized natural terrain features are triangulated to obtain a number of triangles, specifically: The triangle is generated by connecting the coordinate points counterclockwise; the coordinates of the three vertices of the triangle are (s map ·j+i,s map ·(j+1)+i,s map (j+1)+i+1) or (s map ·j+i,s map (j+1)+i+1,s map ·j+i+1); where j and i represent the row and column coordinates of the vertex in the grid map, and s map is the size of the raster map.

3. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 1, characterized in that: Get the pixels within the triangle. The specific method is: Using the camera's internal and external parameters, project the three vertices of the triangle onto the image plane, and record the row and column positions l0, l1, and l2 of the three vertices of the triangle on the image; Using the row and column positions, establishing a search window; According to the search window, determining whether there is a pixel within the triangle; The method to determine whether there is a pixel within the triangle is: Assume that the position of the pixel to be judged is P, and calculate the values ​​of α=l0l1×l0P, β=l1l2×l1P and γ=l2l0×l2P respectively. If α, β and γ are all greater than 0 or less than 0, the pixel P is located in the triangle; otherwise, the pixel P is not in the triangle.

4. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 3, characterized in that: The use of row and column positions to establish a search window is specifically as follows: y min =floor(min(l 0,u ,L 1,u ,L 2,u )) y max ceil(max(l 0,u ,L 1,u ,L 2,u )) x min =floor(min(l 0,v ,l 1,v ,l 2,v )) x max =ceil(max(l 0,v ,l 1,v ,l 2,v )) Among them, y min is the starting position of the search window, y max The end position of the search window, x min is the column starting position of the search window, x max is the column end position of the search window; l0, l1, l2 are the projection positions of the three vertices p0, p1, p2 of the triangle on the camera image plane, l 0,u ,l 0,v is the row and column position of l0, l 1,u ,l 1,v is the row and column position of l1, l 2,u ,l 2,v It is the row and column position of l2; floor means rounding down, and ceil means rounding up.

5. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 1, characterized in that: The pixels in the triangle are rendered as follows: S21, determine whether the pixel is blocked, if so, exit; if not, update the depth buffer corresponding to the pixel, save the three-dimensional coordinates of the map corresponding to the pixel, and enter step S22; S22, performing photometric rendering on the pixel, calculating the relative albedo corresponding to the pixel; and obtaining the image grayscale value of the pixel according to the relative albedo.

6. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 5, characterized in that: Determine whether a pixel is blocked. The specific method is: Assume that the vectors pointing to the three vertices p0, p1, and p2 of the triangle in the camera coordinate system are d0, d1, and d2 respectively; the projection positions of d0, d1, and d2 on the image plane are l0, l1, and l2, where l 0,u ,l 0,v is the row and column position of l0, l 1,u ,l 1,v is the row and column position of l1, l 2,u ,l 2,v is the row and column position of l2; Determine the pixel P(P row ,P col ) The depth of the triangle from the camera to the corresponding position depth (cam) (P) is greater than the depth Z-Buffer (P) from the camera to the triangle recorded in the depth buffer Z-buffer; if so, the pixel is blocked and the depth buffer Z-buffer is updated; if not, the pixel is not blocked; where P row ,P col is the row and column position of point P; Z-Buffer(P)=|depth (cam) (P)|,if|depth (cam) (P)|<Z-Buffer(P)。 7. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 5, characterized in that: Save the 3D coordinates of the map corresponding to the pixel. The specific method is: Assume that pixel P in the camera coordinate system is (P row ,P col ) corresponds to the unit vector d = [d x ,d y ,d z ] T ; After normalizing the vector in the Z direction, we get the normalized vector According to the normalized vector, the position t of the map's three-dimensional coordinates in the camera coordinate system is obtained lm@cam , According to the position of the map's three-dimensional coordinates in the camera's coordinate system, we can get the position of the map's three-dimensional coordinates in the small celestial body's fixed connection lm. After updating the depth buffer Z-buffer, synchronously update the map coordinate buffer p-Buffer in P(P row ,P col ) The fixed coordinates of the small celestial body recorded at the position: p-Buffer(P)=lm,if|depth (cam) (P)|<Z-Buffer(P) in, is the rotation matrix of the fixed connection of the small celestial body to the camera system in the prior information, t bf@cam is the position of the origin of the small celestial body's fixed connection in the camera coordinate system.

8. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 5, characterized in that: The image grayscale value of the pixel is specifically: Where DN is the gray value of the image corresponding to pixel P; θ i is the incident angle, θ e is the emission angle; i, j and k represent the serial numbers corresponding to the three vertices of the triangle; a is the relative albedo dataset of the navigation feature, a p is the relative albedo at point p.

9. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 1, characterized in that: The mask NCC is specifically: Among them, f2',m'2 represents the 180° flip of the corresponding image; They are FFT operation and IFFT operation respectively; is the conjugate of the corresponding image spectrum; f1 is the original grayscale image taken by the ToF camera, f2 is the rendered image, m1 and m2 are the masks corresponding to the original grayscale image and the rendered image, respectively.

10. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 1, characterized in that: Extract the first peak of the mask NCC cross-correlation matrix and calculate the image offset. The specific method is: Assume that the maximum value of the cross-correlation matrix is ​​the first peak score=max(NCC); Let the mask NCC matching threshold be THRES; If score < THRES, discard this round of registration; If score ≥ THRES, calculate the image offset; The formula for calculating the image offset is: in shift =in shift +in mis / 2 v shift =v shift +v mis / 2 in shift =in max -in rnd +1 v shift =v max -v ref +1 in mis =in rnd -in img v mis =v rnd -v img (u max ,v max )=argmax(NCC) Among them, (u max ,v max ) is the position of the first peak of the cross-correlation matrix, (u rnd ,v rnd ) is the size of the rendered image, (u img ,v img ) is the size of the actual image.

11. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 1, characterized in that: Get the three-dimensional coordinates of the terrain features corresponding to the image offset points. The specific method is: Assume that the center point of the ToF real-time image is (u center ,v center ), using the image offset, calculate the corresponding rendering position (u match ,v match ): in match =in center +in shift v match =v center +v shift The corresponding position in the map coordinate cache p-Buffer is the three-dimensional coordinate lm′ of the terrain feature corresponding to the image offset point: lm′=p-Buffer(u match ,v match )。 12. The method for realizing aircraft positioning by using a ToF camera during the landing of a small celestial body according to claim 1, characterized in that: Get the depth image information of the ToF camera corresponding to the center point of the image and calculate the current position of the aircraft. The specific method is as follows: Get the center point of the real image in the ToF camera depth image (u center ,v center ) at the depth information l center ; According to the depth information center and the center point of the real image in the ToF camera coordinate system (u center ,v center ) The corresponding unit points to Calculate the vector of the three-dimensional coordinates lm′ of the terrain feature pointed by the camera in the camera coordinate system According to the vector of the three-dimensional coordinate lm′ of the terrain feature pointed by the camera in the camera coordinate system, the corrected position w of the ToF camera under the fixed connection of the small celestial body is obtained. ToF , specifically: in, It is the rotation matrix of the small celestial body fixed connection to the camera system in the prior information.

Citation Information

Patent Citations

  • Dual-wavelength three-dimensional temperature field imaging equipment, system and method based on compressed sensing

    CN105675146A

  • Real-time dynamic registration method suitable for RGBD-SLAM and storage medium

    CN110021029A

  • Small celestial body detector pose estimation method based on solar panel projection and template matching

    CN111366162A

  • Asteroid fixed-point landing optical navigation method based on three-dimensional navigation characteristics

    CN116843873A

  • Water body rendering method and system matched with real geographical water area environment, medium and equipment

    CN117274465A