WO2023155393A1 - Feature point matching method and apparatus, electronic device, storage medium and computer program product - Google Patents

Feature point matching method and apparatus, electronic device, storage medium and computer program product Download PDF

Info

Publication number
WO2023155393A1
WO2023155393A1 PCT/CN2022/111862 CN2022111862W WO2023155393A1 WO 2023155393 A1 WO2023155393 A1 WO 2023155393A1 CN 2022111862 W CN2022111862 W CN 2022111862W WO 2023155393 A1 WO2023155393 A1 WO 2023155393A1
Authority
WO
WIPO (PCT)
Prior art keywords
feature point
descriptor
candidate
feature points
coordinates
Prior art date
Application number
PCT/CN2022/111862
Other languages
French (fr)
Chinese (zh)
Inventor
甄佳楠
周晓巍
孙佳明
张思宇
Original Assignee
上海商汤智能科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 上海商汤智能科技有限公司 filed Critical 上海商汤智能科技有限公司
Publication of WO2023155393A1 publication Critical patent/WO2023155393A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components

Definitions

  • the present disclosure relates to the field of computer technology, and in particular to a feature point matching method, device, electronic equipment, storage medium and computer program product.
  • Two-dimensional feature point matching between images is an important algorithm in computer vision.
  • the existing two-dimensional feature point matching methods are usually based on local image feature extraction. Similar positions are incorrectly matched, and the matching result is not accurate enough.
  • Embodiments of the present disclosure provide a feature point matching method, device, electronic device, storage medium and computer program product, aiming at improving the accuracy of feature point matching between two images.
  • An embodiment of the present disclosure provides a feature point matching method, including: determining a first feature point on a target image, and a first coordinate and a first descriptor of the first feature point, the first coordinate characterizing the The position of the first feature point on the target image, the first descriptor characterizes the feature of the first feature point; determine at least one second feature point on the reference image, and each of the second feature points The second coordinates and the second descriptor, the second coordinates characterize the position of the second feature point on the reference image, the second descriptor characterizes the feature of the second feature point; according to the The first descriptor and each of the second descriptors perform a first screening on at least one of the second feature points to obtain at least one candidate feature point; according to the first coordinates and each of the candidate feature points The second coordinates perform a second screening on at least one of the candidate feature points to obtain a target feature point that matches the first feature point.
  • the first screening is performed on at least one of the second feature points according to the first descriptor and each of the second descriptors to obtain at least one candidate feature point, including : Determine the similarity parameters of each of the second descriptors and the first descriptors respectively; perform a first screening on at least one second feature point according to the similarity parameters to obtain at least one candidate feature point.
  • the respectively determining the similarity parameters of each of the second descriptors and the first descriptors includes: respectively determining the similarity parameters of each of the second descriptors and the first descriptors Sub-distance vectors to obtain the similarity parameters of each of the second descriptor and the first descriptor.
  • the first screening of at least one second feature point according to the similarity parameter to obtain at least one candidate feature point includes: determining the similarity with the first descriptor A second descriptor whose parameter is smaller than the first threshold; and a second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold is used as a candidate feature point.
  • the first screening of at least one of the second feature points according to the similarity parameters to obtain at least one candidate feature point includes: corresponding to each of the second descriptors
  • the similarity parameters are sorted from small to large, and the second feature points corresponding to the first preset number of second descriptors are obtained as candidate feature points.
  • the second screening is performed on at least one of the candidate feature points according to the first coordinates and the second coordinates of each of the candidate feature points to obtain
  • the target feature point for point matching includes: performing a second screening on at least one of the candidate feature points according to the first coordinates, the second coordinates, and the relative positional relationship to obtain a target feature point that matches the first feature point.
  • a target feature point; the relative positional relationship is the relative positional relationship between the target image and the reference image.
  • performing a second operation on at least one of the candidate feature points Screening to obtain a target feature point matching the first feature point includes: determining the first position of the target image, and determining the second position of the reference image; according to the first position, the second determining the estimated epipolar line of the first feature point on the reference image based on the epipolar geometry based on the position and the first coordinate; The shortest distance performs a second screening on at least one of the candidate feature points to obtain a target feature point matching the first feature point.
  • At least one of the candidate feature points is screened a second time according to the shortest distance between the second coordinates of each of the candidate feature points and the estimated epipolar line to obtain the
  • the target feature point matched by the first feature point includes: determining the number of candidate feature points whose shortest distance is smaller than a second threshold among the at least one candidate feature point; the shortest distance is the second coordinate and the estimated The shortest distance of the epipolar line; when the number of candidate feature points whose shortest distance is less than the second threshold is one, use the candidate feature points whose shortest distance is less than the second threshold as target feature points; in the shortest distance When the number of candidate feature points smaller than the second threshold is greater than one, the target feature point is determined among the candidate feature points whose shortest distance is smaller than the second threshold.
  • the determining the target feature point among the candidate feature points whose shortest distance is less than a second threshold includes: determining the target feature point among the candidate feature points whose shortest distance is less than a second threshold The candidate feature point with the largest similarity parameter is the target feature point.
  • An embodiment of the present disclosure provides a feature point matching device, including: a first information determining part configured to determine a first feature point on a target image, and first coordinates and a first descriptor of the first feature point , the first coordinate characterizes the position of the first feature point on the target image, the first descriptor characterizes the feature of the first feature point; the second information determination part is configured to determine a reference image At least one second feature point on , and the second coordinates and the second descriptor of each of the second feature points, the second coordinates represent the position of the second feature point on the reference image, so The second descriptor characterizes the feature of the second feature point; the first screening part is configured to perform the first screening on at least one second feature point according to the first descriptor and each of the second descriptors One screening to obtain at least one candidate feature point; the second screening module part is configured to perform a second round of at least one candidate feature point according to the first coordinates and the second coordinates of each of the candidate feature points Screening to obtain target feature points
  • the first screening part includes: a parameter determination subsection configured to respectively determine similar parameters of each of the second descriptor and the first descriptor; the first screening subsection A part configured to perform a first screening on at least one second feature point according to the similarity parameter to obtain at least one candidate feature point.
  • the parameter determination subpart includes: a parameter determination part configured to respectively determine a distance vector between each of the second descriptors and the first descriptor, and obtain each of the Similar parameters of the second descriptor and the first descriptor.
  • the first screening subpart includes: a descriptor screening part configured to determine a second descriptor whose similar parameter to the first descriptor is smaller than a first threshold; the first The candidate point determining part is configured to use the second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold as a candidate feature point.
  • the first screening subpart includes: a second candidate point determination part configured to sort the similar parameters corresponding to each of the second descriptors from small to large, and obtain the previous The second feature points corresponding to the preset number of second descriptors are candidate feature points.
  • the second screening part includes: a second screening subsection configured to, according to the first coordinates, the second coordinates and the relative positional relationship, select at least one of the candidate features Points are screened for the second time to obtain target feature points matching the first feature point; the relative positional relationship is the relative positional relationship between the target image and the reference image.
  • the second screening subsection includes: a position determining part configured to determine a first position of the target image and determine a second position of the reference image; an epipolar line determining part , configured to determine an estimated epipolar line of the first feature point on the reference image based on epipolar geometry according to the first position, the second position and the first coordinate; the feature point screening part, It is configured to perform a second screening on at least one of the candidate feature points according to the shortest distance between the second coordinates of each of the candidate feature points and the estimated epipolar line, to obtain a target matching the first feature point Feature points.
  • the feature point screening part includes: a distance determination subsection configured to determine the number of candidate feature points whose shortest distance among the at least one candidate feature point is smaller than a second threshold;
  • the shortest distance is the shortest distance between the second coordinate and the estimated epipolar line;
  • the first feature point determining subsection is configured to be one when the number of candidate feature points whose shortest distance is less than a second threshold is one, The candidate feature points whose shortest distance is less than a second threshold are used as target feature points;
  • the second feature point determining subsection is configured to, when the number of candidate feature points whose shortest distance is less than a second threshold is greater than one, A target feature point is determined among candidate feature points whose shortest distance is smaller than a second threshold.
  • the second feature point determination subsection includes: a third feature point determination subsection configured to determine the similarity among the candidate feature points whose shortest distance is smaller than a second threshold.
  • the candidate feature point with the largest parameter is the target feature point.
  • An embodiment of the present disclosure provides an electronic device, including: a processor; a memory configured to store instructions executable by the processor; wherein the processor is configured to invoke the instructions stored in the memory to execute the above method.
  • An embodiment of the present disclosure provides a computer-readable storage medium on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the foregoing method is implemented.
  • An embodiment of the present disclosure provides a computer program product, the computer program product includes a non-transitory computer storage medium storing a computer program, and the above method is implemented when the computer program is read and executed by a computer.
  • the first feature point on the target image, the first coordinate representing the position of the first feature point on the target image, and the first descriptor representing the feature of the first feature point are determined.
  • at least one second feature point on the reference image, second coordinates characterizing the position of each second feature point on the reference image and a second descriptor characterizing the characteristics of the second feature point are determined.
  • at least one second feature point is screened for the first time to obtain at least one candidate feature point, and then according to the first coordinate and the second coordinate of each candidate feature point, at least A candidate feature point is screened for the second time to obtain the target feature point matching the first feature point on the reference image.
  • the embodiments of the present disclosure can perform two matchings according to the local features and the positions of the feature points, and accurately match the points that record the same information in the two images.
  • FIG. 1 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure
  • Fig. 2 shows a schematic diagram of a target image according to an embodiment of the present disclosure
  • Fig. 3 shows a schematic diagram of a reference image according to an embodiment of the present disclosure
  • FIG. 4 shows a flow chart of a feature point matching method according to an embodiment of the present disclosure
  • FIG. 5 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure
  • FIG. 6 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure
  • Fig. 7 shows a schematic diagram of determining an estimated epipolar line according to an embodiment of the present disclosure
  • Fig. 8 shows a schematic diagram of an estimated epipolar line according to an embodiment of the present disclosure
  • FIG. 9 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure.
  • FIG. 10 shows a schematic diagram of a process of determining target feature points according to an embodiment of the present disclosure
  • Fig. 11 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure
  • Fig. 12 shows a schematic diagram of a feature point matching device according to an embodiment of the present disclosure
  • Fig. 13 shows a schematic diagram of an electronic device according to an embodiment of the present disclosure
  • Fig. 14 shows a schematic diagram of another electronic device according to an embodiment of the present disclosure.
  • At least one herein means any one of a variety or any combination of at least two of a variety, for example, including at least one of A, B, and C, may mean including from A, B, and Any one or more elements selected from the set formed by C.
  • the feature point matching method in the embodiment of the present disclosure may be executed by an electronic device such as a terminal device or a server.
  • the terminal device may be user equipment (User Equipment, UE), mobile device, user terminal, terminal, cellular phone, cordless phone, personal digital assistant (Personal Digital Assistant, PDA), handheld device, computing device, vehicle-mounted device, Any fixed terminal or mobile terminal such as wearable devices.
  • the server can be a single server or a server cluster composed of multiple servers. Any electronic device can implement the feature point matching method of the embodiments of the present disclosure by calling the computer-readable instructions stored in the memory by the processor.
  • the embodiments of the present disclosure are used to match feature points that record the same information on two two-dimensional images. For example, in the process of collecting images from different angles of the target object, two two-dimensional images are obtained, and the feature points used to record the same position of the target object on the two two-dimensional images are matched.
  • Fig. 1 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure.
  • the feature point matching method of the embodiment of the present disclosure includes the following steps S101 to S104.
  • Step S101 Determine a first feature point on a target image, as well as first coordinates and a first descriptor of the first feature point.
  • the target image is an image obtained by collecting a target object, and the target object may be any living or inanimate object such as animals, people, furniture, and decorations. And there is at least one feature point on the target image, and each feature point is a local area on the target image. At least one feature point on the target image can be obtained through object recognition, that is, identifying the target object in the target image, and determining at least one feature point on the target object for characterizing local features of the target object. When it is necessary to perform feature point matching on each feature point on the target image, one feature point may be first determined as the first feature point, and the first feature point is matched. When the current first feature point matching is completed, another feature point is re-determined as the first feature point, and then the feature point matching is performed until the entire feature point matching process is completed.
  • first coordinates and a first descriptor of the first feature point are also determined.
  • the first coordinate represents the position of the first feature point on the target image
  • the first descriptor represents the feature of the first feature point, for example, may include color feature and texture feature.
  • the first coordinates can be represented by two-dimensional coordinates or three-dimensional coordinates. In the case where the first coordinates are represented by two-dimensional coordinates, the target coordinate system of the target image may be determined first, and then the coordinates of the first feature point in the target coordinate system may be determined as the first coordinates.
  • the target coordinate system can be any preset coordinate system.
  • the coordinate system with the lower left corner of the target image as the origin of the coordinate system, the bottom side as the x-axis, and the left side as the y-axis is determined as the target coordinate system.
  • the representation mode of the plane where the target image is located in the preset target three-dimensional coordinate system can be first determined according to the position of the image acquisition device of the target image and the shooting angle during the target image acquisition process , and then determine the first coordinates according to the position of the first feature point in the target image.
  • the target three-dimensional coordinate system can be preset.
  • the first descriptor may be determined by extracting a preset feature at the location of the first feature point, and determining a feature vector as the first descriptor according to the distribution of the preset feature.
  • the preset features can be set according to actual needs, and can include at least one of color features and texture features.
  • the first descriptor can be any feature descriptor, for example, it can be a histogram of oriented gradients (Histogram of Oriented Gradients, HOG) feature descriptor.
  • the process of determining the first descriptor can be to determine the gradient change of each pixel in the horizontal and vertical directions in the position of the first feature point, and determine the magnitude and direction of each pixel according to the gradient change to obtain the Generate a histogram of the gradient magnitude and direction of . Then the feature vector is obtained through histogram normalization as the first descriptor.
  • Fig. 2 shows a schematic diagram of a target image according to an embodiment of the present disclosure.
  • the target image 200 in this embodiment of the present disclosure may be an image obtained by capturing a target object 201 at a first angle.
  • the first feature point 202 representing the feature position in the target object 201 may be determined by means of object recognition or the like.
  • the first coordinates are determined according to the position of the first feature point 202 in the target image 200 , and the first descriptor used to characterize the feature of the first feature point 202 is determined according to the local characteristics of the position of the first feature point 202 .
  • Step S102 Determine at least one second feature point on the reference image, as well as the second coordinates and the second descriptor of each second feature point.
  • the reference image is also an image obtained by collecting a target object, and the pose of the target object in the reference image is different from that in the target image.
  • There is at least one second feature point on the reference image and each second feature point is a local area on the reference image.
  • the second feature points on the reference image can be obtained through object recognition, that is, identifying the target object in the target image, and determining at least one second feature point on the target object for characterizing the local features of the target object.
  • the second feature point on the reference image is used for matching with the first feature point, so as to determine a target feature point representing the same position of the target object as the first feature point among the plurality of second feature points.
  • the second coordinates and the second descriptor of each second feature point are also determined.
  • the second coordinate represents the position of the corresponding second feature point on the reference image
  • the second descriptor represents the feature of the corresponding second feature point, for example, may include color feature and texture feature.
  • the second coordinates may be represented by two-dimensional coordinates or three-dimensional coordinates.
  • the target coordinate system of the reference image may be determined first, and then the coordinates of the second feature point in the target coordinate system may be determined as the second coordinates.
  • the target coordinate system can be any preset coordinate system.
  • the coordinate system with the lower left corner of the reference image as the origin of the coordinate system, the bottom side as the x-axis, and the left side as the y-axis is determined as the target coordinate system.
  • the representation mode of the plane where the reference image is located in the preset target three-dimensional coordinate system can be first determined according to the position of the image acquisition device of the reference image and the shooting angle during the reference image acquisition process , and then determine the second coordinates according to the position of the second feature point in the reference image.
  • the target three-dimensional coordinate system may be preset, and it is the same three-dimensional coordinate system as the target three-dimensional coordinate system where the first coordinate is located.
  • the second descriptor may be determined by extracting a preset feature at the location of the second feature point, and determining a feature vector as the second descriptor according to the distribution of the preset feature.
  • the preset features can be set according to actual needs, and can include at least two of color features and texture features.
  • the determination method of the second descriptor is the same as that of the above-mentioned first descriptor, and the included feature content is also the same.
  • Fig. 3 shows a schematic diagram of a reference image according to an embodiment of the present disclosure.
  • the reference image 300 in the embodiment of the present disclosure may be an image obtained by capturing the target object 201 at a second angle.
  • the second feature point 302 representing at least one feature position in the target object 201 may be determined by means of object recognition or the like.
  • determine the corresponding second coordinates according to the position of each second feature point 302 in the reference image 300 in the reference image 300 and then determine the corresponding second feature according to the local features at the position of each second feature point 302 The second descriptor of the point 302 feature.
  • Step S103 performing a first screening on at least one second feature point according to the first descriptor and each of the second descriptors to obtain at least one candidate feature point.
  • the first feature point and each second feature point may be first matched according to the local features of the feature point, and at least one second feature that may match the first feature point may be screened out points as candidate feature points. Since the local feature of each feature point is identified according to the corresponding descriptor, that is, the second feature point can be screened for the first time directly according to the first descriptor and each second descriptor. Two feature points are used as candidate feature points. In the case that all the second feature points fail to pass the screening, the feature point matching process may be ended, and it is determined that there is no second feature point matching the first feature point on the current reference image.
  • Fig. 4 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 4 , based on FIG. 1 , step S103 may be implemented through steps S401 to S402 , which will be described in conjunction with the steps shown in FIG. 4 .
  • Step S401 respectively determining the similarity parameters of each second descriptor and the first descriptor
  • Step S402 performing a first screening on at least one second feature point according to the similarity parameter to obtain at least one candidate feature point.
  • each second feature point can be screened once based on the similar parameters between each second descriptor and the first descriptor, so that the local feature and the first feature The second feature point with a higher point similarity is used as a candidate feature point, and the first screening of the second feature point is completed.
  • step S4011 may be used to realize the determination of similar parameters of each second descriptor and the first descriptor respectively.
  • Step S4011 obtain the distance vector between each second descriptor and the first descriptor, and obtain the similarity parameters between each second descriptor and the first descriptor.
  • the size of the similarity parameter between two features is inversely proportional to the matching degree of the local features of the two feature points, that is, the larger the similarity parameter, the lower the matching degree.
  • both the first descriptor and the second descriptor are vectors, and a similar parameter of the first descriptor and the second descriptor may be a distance between vectors. The distance vector can be obtained by calculating the vector inner product of the first descriptor and the second descriptor.
  • the above-mentioned first screening of at least one second feature point according to the similarity parameters can be realized through steps S4021 to S4022 , to get at least one candidate feature point.
  • Step S4021 determining a second descriptor whose similar parameter to the first descriptor is smaller than the first threshold
  • Step S4022 taking the second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold as a candidate feature point.
  • the second descriptor is screened based on the preset first threshold, the screening of the second feature point is completed, and the local feature is similar to the first feature point
  • the second feature point with a higher degree is used as a candidate feature point to complete the first screening of the second feature point.
  • step S4023 may also be used to implement the above-mentioned first screening of at least one second feature point according to similar parameters to obtain at least one candidate feature point.
  • Step S4023 sort the similar parameters corresponding to each second descriptor from small to large, and obtain the second feature points corresponding to the previous preset number of second descriptors as candidate feature points.
  • the preset quantity is a positive integer greater than or equal to one.
  • the first screening process is based on the degree of similarity between the second feature point and the local feature of the first feature point, that is, at least one candidate feature point similar to the local feature of the first feature point is obtained through screening.
  • Step S104 performing a second screening on at least one of the candidate feature points according to the first coordinates and the second coordinates of each of the candidate feature points, to obtain a target feature point matching the first feature point.
  • the second screening of the at least one candidate feature point based on the position feature is performed to determine the reference The target feature point in the image that matches the first feature point. That is to say, the second screening can be performed according to the first coordinates and the second coordinates of each candidate feature point to obtain target feature points whose local features are similar to the first feature point and whose positions match the first feature point.
  • Fig. 5 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 5 , based on FIG. 1 , step S104 may be implemented through step S501 , which will be described in conjunction with the steps shown in FIG. 5 .
  • the second screening of each candidate feature point can be implemented based on the relative positional relationship between the target image and the reference image, that is, step S501, according to the first coordinates, the second coordinates and the relative positional relationship, A second screening is performed on at least one candidate feature point to obtain a target feature point matched by the first feature point; the relative positional relationship is the relative positional relationship between the target image and the reference image.
  • Fig. 6 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 6 , based on FIG. 5 , step S501 may be implemented through steps S601 to S603 , which will be described in conjunction with the steps shown in FIG. 6 .
  • Step S601 determine the first position of the target image, and determine the second position of the reference image
  • Step S602 determining the estimated epipolar line of the first feature point on the reference image based on the epipolar geometry according to the first position, the second position and the first coordinate;
  • Step S603 performing a second screening on at least one candidate feature point according to the shortest distance between the second coordinates of each candidate feature point and the estimated epipolar line, to obtain a target feature point matching the first feature point.
  • the first position of the target image is the position where the image acquisition device is located when the target image is acquired
  • the second position of the reference image is the position where the image acquisition device is located when the reference image is acquired.
  • the first position and the second position may be represented by coordinates of the image acquisition device in a preset target three-dimensional coordinate system.
  • the process of determining the estimated epipolar line may first determine the first position of the target image and the second position of the reference image, and determine the first coordinate and each second coordinate in the three-dimensional coordinates of the target
  • the three-dimensional coordinates in the system are expressed as the first three-dimensional coordinates and the second three-dimensional coordinates respectively.
  • Estimated epipolar lines are obtained on the reference image. And the shortest distance from each second three-dimensional coordinate to the estimated epipolar line can be calculated for the second screening.
  • the first coordinate and the second coordinate are three-dimensional coordinates in the target three-dimensional coordinate system
  • the first three-dimensional coordinate is the first coordinate
  • the second three-dimensional coordinate is the second coordinate
  • the three-dimensional coordinates of the target image and the reference image can be The position in the coordinate system transforms the first coordinate and each second coordinate into first and second three-dimensional coordinates in three dimensions.
  • the second descriptor is screened based on the preset first threshold, the screening of the second feature point is completed, and the local feature is similar to the first feature point
  • the second feature point with a higher degree is used as a candidate feature point to complete the first screening of the second feature point.
  • Fig. 7 shows a schematic diagram of determining an estimated epipolar line according to an embodiment of the present disclosure.
  • the first position of the image acquisition device in the target three-dimensional coordinate system can be determined first in the process of acquiring the target image 701 703, and during the process of acquiring the reference image 702, a second position 704 of the image acquisition device in the target three-dimensional coordinate system. Then, connect the first position 703 and the second position 704 to obtain a target intersection point 708 between the connecting line and the reference image 702 in the target three-dimensional coordinate system.
  • the target line segment 706 extending outward from the target image 701 plane is determined, and one end point of the target line segment 706 is the first feature point, and the target The positions on the line segment 706 are the possible positions in the three-dimensional coordinate system of the position represented by the first feature point on the target object.
  • the target line segment 706 is projected onto the reference image 702 to determine an estimated epipolar line 707 with the target intersection point 708 as one end point and the other end point located at the edge of the reference image 702 .
  • each point in the estimated epipolar line 707 is a point representing the position of the target object which may be the same as the position of the first feature point representing the target object in spatial position.
  • Fig. 8 shows a schematic diagram of an estimated epipolar line according to an embodiment of the present disclosure.
  • a second screening can be performed according to the shortest distance from the second coordinates of each candidate feature point 802 to the estimated epipolar line 801 .
  • the function representation of the predicted epipolar line 801 and the coordinate representation of each candidate feature point 802 need to be transformed into the same coordinate system.
  • Fig. 9 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 9 , based on FIG. 6 , step S603 may be implemented through steps S701 to S702 , which will be described in conjunction with the steps shown in FIG. 9 .
  • the process of performing the second screening according to the shortest distance from the second coordinates of each candidate feature point to the estimated epipolar line may be implemented according to a preset second threshold.
  • Step S901. Determine the number of candidate feature points whose shortest distance is less than a second threshold among the at least one candidate feature point; the shortest distance is the shortest distance between the second coordinate and the estimated epipolar line:
  • Step S902 When the number of candidate feature points whose shortest distance is less than the second threshold is one, use the candidate feature points whose shortest distance is less than the second threshold as target feature points
  • Step S903 if the number of candidate feature points whose shortest distance is less than a second threshold is greater than one, determine a target feature point among candidate feature points whose shortest distance is less than a second threshold.
  • the second threshold represents the maximum distance between the second feature point that may match the first feature point and the estimated epipolar line, so as to filter out the second feature point that matches the first feature point from the spatial position.
  • Feature points In the case that the number of candidate feature points with the shortest distance greater than the second threshold is only one, it can be directly determined that the candidate feature points that pass the screening match the first feature point in terms of spatial position and local features, and determine the candidate feature point is the target feature point. When the number of candidate feature points with the shortest distance greater than the second threshold is greater than one, it can be considered that there are multiple candidate feature points whose spatial position and local features match the first feature point. The candidate feature point with the highest matching probability is selected as the target feature point. Exemplarily, in the case that all candidate feature points fail the second screening, the feature point matching process may be ended, and it is determined that there is no second feature point matching the first feature point on the current reference image.
  • the target feature point can be determined according to the similarity parameters between multiple candidate feature points and the first feature point after the second screening . That is to say, when the number of candidate feature points whose shortest distance is greater than the second threshold is greater than one, the above-mentioned determination of the target feature point among the candidate feature points whose shortest distance is smaller than the second threshold can be implemented through step S9031.
  • Step S9031 among the candidate feature points whose shortest distance is smaller than the second threshold, determine the candidate feature point with the largest similarity parameter as the target feature point.
  • Fig. 10 shows a schematic diagram of a process of determining target feature points according to an embodiment of the present disclosure.
  • a first feature point 1001 to be matched on the target image and at least one second feature point 1002 to be matched on the reference image are determined.
  • the first screening is performed according to the local feature similarity parameters of the first feature point 1001 and each second feature point 1002 , and at least one candidate feature point 1003 is obtained from at least one second feature point 1002 .
  • a second screening is performed according to the matching degree of each candidate feature point 1003 with the first feature point 1001 in space, and the candidate feature points 1003 that pass the screening are determined as matching feature points 1004 .
  • the matching feature point 1004 can be directly determined as the target feature point 1006, that is, the candidate feature point 1003 that has passed the second screening is the target feature point.
  • the matching feature point 1004 with the largest similarity parameter can be determined as the target feature point 1007, that is, the candidate feature point 1003 with the highest local feature similarity parameter with the first feature point 1001 is the target feature point.
  • the first screening is performed according to the similarity degree of the local features of the feature points, and then the second screening is performed according to the spatial position of the feature points, which solves the problem of matching results only based on local features.
  • the problem of large deviation can accurately match the points that record the same information in the two images.
  • Fig. 11 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure.
  • the feature point matching method of the embodiment of the present disclosure includes the following steps S1101 to S104.
  • Step S1101 performing nearest neighbor search on the feature points.
  • a feature point on the target image (corresponding to the first feature point in the above-mentioned embodiment), first find at least one of the closest descriptors of the feature point on the reference image through nearest neighbor search.
  • Reference feature points (corresponding to the second feature point in the above embodiment), and sort each reference feature point according to the distance of the descriptor, as a candidate feature point.
  • Step S1102 performing geometric constraint screening on the candidate feature points.
  • the feature is found through epipolar geometry Points on the reference image correspond to the estimated epipolar lines. Then, determine the distance between the candidate feature point and the estimated epipolar line. Finally, based on the distance between each candidate feature point and the estimated epipolar line, each candidate feature point is screened according to a preset threshold, and the candidate feature points whose distance from the estimated epipolar line is smaller than the threshold are retained.
  • the process of screening each candidate feature point may be implemented by calculating the epipolar geometric error between the candidate feature point and the feature point in batches.
  • the epipolar geometric error between the candidate feature point and the feature point can be determined by matrix operation with high computational efficiency.
  • Step S1103 selection of matching points.
  • the matching point corresponding to the feature point (corresponding to the target feature point in the above embodiment) is a reference feature point whose descriptor is closest to the feature point among the candidate feature points.
  • all candidate feature points are eliminated in step S1102
  • it is considered that no reference feature point corresponding to the feature point is found in the reference image.
  • constraints are constructed for the nearest neighbor matching to guide the nearest neighbor matching of the feature points between the two images and the reference feature points.
  • a series of candidate feature points with the closest feature distance in the reference image are first determined, and then the candidate feature points conform to the epipolar line constraint range, and The closest reference feature point of the feature is used as the matching point of the feature point. Therefore, the mismatch between feature points and reference feature points caused by the similarity of local features can be effectively reduced.
  • the present disclosure also provides feature point matching devices, electronic equipment, computer-readable storage media, and programs, all of which can be used to implement any of the feature point matching methods provided in the present disclosure.
  • feature point matching devices electronic equipment, computer-readable storage media, and programs, all of which can be used to implement any of the feature point matching methods provided in the present disclosure.
  • FIG. 12 shows a schematic diagram of a feature point matching device according to an embodiment of the present disclosure. As shown in FIG. The first screening part 1203 and the second screening part 1204 .
  • the first information determining part 1201 is configured to determine the first feature point on the target image, as well as the first coordinates and the first descriptor of the first feature point, the first coordinates represent the first feature point in The position on the target image, the first descriptor characterizes the feature of the first feature point;
  • the second information determining part 1202 is configured to determine at least one second feature point on the reference image, as well as the second coordinates and the second descriptor of each of the second feature points, the second coordinates representing the first The position of the two feature points on the reference image, the second descriptor characterizes the features of the second feature point;
  • the first screening part 1203 is configured to perform a first screening on at least one of the second feature points according to the first descriptor and each of the second descriptors to obtain at least one candidate feature point;
  • the second screening part 1204 is configured to perform a second screening on at least one of the candidate feature points according to the first coordinates and the second coordinates of each of the candidate feature points to obtain target feature points.
  • the first screening part 1203 includes: a parameter determination subsection configured to respectively determine similar parameters of each of the second descriptor and the first descriptor; The subsection is configured to perform a first screening on at least one of the second feature points according to the similarity parameter to obtain at least one candidate feature point.
  • the parameter determination subpart includes: a parameter determination part configured to respectively determine a distance vector between each of the second descriptors and the first descriptor, and obtain each of the Similar parameters of the second descriptor and the first descriptor.
  • the first screening subpart includes: a descriptor screening part configured to determine a second descriptor whose similar parameter to the first descriptor is smaller than a first threshold; the first The candidate point determining part is configured to use the second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold as a candidate feature point.
  • the first screening subpart includes: a second candidate point determination part configured to sort the similar parameters corresponding to each of the second descriptors from small to large, and obtain the previous The second feature points corresponding to the preset number of second descriptors are candidate feature points.
  • the second screening part 1204 includes: a second screening subsection configured to, according to the first coordinates, the second coordinates and the relative positional relationship, screen at least one of the candidate The feature points are screened for the second time to obtain target feature points matching the first feature points; the relative positional relationship is the relative positional relationship between the target image and the reference image.
  • the second screening subsection includes: a position determining part configured to determine a first position of the target image and determine a second position of the reference image; an epipolar line determining part , configured to determine an estimated epipolar line of the first feature point on the reference image based on epipolar geometry according to the first position, the second position and the first coordinate; the feature point screening part, It is configured to perform a second screening on at least one of the candidate feature points according to the shortest distance between the second coordinates of each of the candidate feature points and the estimated epipolar line, to obtain a target matching the first feature point Feature points.
  • the feature point screening part includes: a distance determination subsection configured to determine the number of candidate feature points whose shortest distance among the at least one candidate feature point is smaller than a second threshold;
  • the shortest distance is the shortest distance between the second coordinate and the estimated epipolar line;
  • the first feature point determining subsection is configured to be one when the number of candidate feature points whose shortest distance is less than a second threshold is one, The candidate feature points whose shortest distance is less than a second threshold are used as target feature points;
  • the second feature point determining subsection is configured to, when the number of candidate feature points whose shortest distance is less than a second threshold is greater than one, A target feature point is determined among candidate feature points whose shortest distance is smaller than a second threshold.
  • the second feature point determination subsection includes: a third feature point determination subsection configured to determine the similarity among the candidate feature points whose shortest distance is smaller than a second threshold.
  • the candidate feature point with the largest parameter is the target feature point.
  • the functions or parts included in the apparatus provided by the embodiments of the present disclosure may be configured to execute the methods described in the above method embodiments, and for specific implementation, refer to the descriptions of the above method embodiments.
  • Embodiments of the present disclosure also provide a computer-readable storage medium, on which computer program instructions are stored, and the above-mentioned method is implemented when the computer program instructions are executed by a processor.
  • Computer readable storage media may be volatile or nonvolatile computer readable storage media.
  • An embodiment of the present disclosure also proposes an electronic device, including: a processor; a memory configured to store instructions executable by the processor; wherein the processor is configured to invoke the instructions stored in the memory to execute the above method.
  • An embodiment of the present disclosure also provides a computer program product, including computer-readable codes, or a non-volatile computer-readable storage medium carrying computer-readable codes, when the computer-readable codes are stored in a processor of an electronic device When running in the electronic device, the processor in the electronic device executes the above method.
  • Electronic devices may be provided as terminals, servers, or other forms of devices.
  • Fig. 13 shows a schematic diagram of an electronic device 1300 according to an embodiment of the present disclosure.
  • the electronic device 1300 may be a terminal such as a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, or a personal digital assistant.
  • electronic device 1300 may include one or more of the following components: processing component 1301, memory 1302, power supply component 1303, multimedia component 1304, audio component 1305, input/output (Input/Ouput, I/O) interface 1306, A sensor component 1307, and a communication component 1308.
  • the processing component 1301 generally controls the overall operations of the electronic device 1300, such as operations associated with display, phone calls, data communications, camera operations, and recording operations.
  • the processing component 1301 may include one or more processors 1309 to execute instructions to complete all or part of the steps of the above method. Additionally, processing component 1301 may include one or more components that facilitate interaction between processing component 1301 and other components. For example, processing component 1301 may include a multimedia portion to facilitate interaction between multimedia component 1304 and processing component 1301 .
  • the memory 1302 is configured to store various types of data to support operations at the electronic device 1300 . Examples of such data include instructions for any application or method operating on the electronic device 1300, contact data, phonebook data, messages, pictures, videos, and the like.
  • the memory 1302 can be realized by any type of volatile or non-volatile storage device or their combination, such as Static Random-Access Memory (Static Random-Access Memory, SRAM), Electrically Erasable Programmable Read-Only Memory (Electrically -Erasable Programmable Read-Only Memory, EEPROM), Erasable Programmable Read-Only Memory (Erasable Programmable Read-Only Memory, EPROM), Programmable Read-Only Memory (Programmable read-only memory, PROM), Read Only Memory (Read -Only Memory, ROM), magnetic memory, flash memory, magnetic disk or optical disk.
  • Static Random-Access Memory SRAM
  • Electrically Erasable Programmable Read-Only Memory Electrically Erasable Programmable Read-Only Memory (Electrically
  • the power supply component 1303 provides power to various components of the electronic device 1300 .
  • Power components 1303 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for electronic device 1300 .
  • the multimedia component 1304 includes a screen providing an output interface between the electronic device 1300 and the user.
  • the screen may include a liquid crystal display (Liquid Crystal Display, LCD) and a touch panel (Touch Panel, TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from a user.
  • the touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensor may not only sense a boundary of a touch or swipe action, but also detect a duration and pressure associated with the touch or swipe operation.
  • the multimedia component 1304 includes at least one of the following: a front camera and a rear camera.
  • At least one of the front camera and the rear camera can receive external multimedia data.
  • Each front camera and rear camera can be a fixed optical lens system or have focal length and optical zoom capability.
  • the audio component 1305 is configured to output and input audio signals, or to output audio signals, or to input audio signals.
  • the audio component 1305 includes a microphone (Microphone, MIC), which is configured to receive external audio signals when the electronic device 1300 is in operation modes, such as calling mode, recording mode and voice recognition mode. Received audio signals may be stored in memory 1302 or sent via communication component 1308 .
  • the audio component 1305 also includes a speaker configured to output audio signals.
  • the I/O interface 1306 provides an interface between the processing component 1301 and the peripheral interface part, and the above peripheral interface part may be a keyboard, a click wheel, a button, and the like. These buttons may include, but are not limited to: a home button, volume buttons, start button, and lock button.
  • Sensor assembly 1307 includes one or more sensors configured to provide various aspects of status assessment for electronic device 1300 .
  • the sensor component 1307 can detect the open/close state of the electronic device 1300, the relative positioning of components, such as the display and the keypad of the electronic device 1200, the sensor component 1307 can also detect the electronic device 1300 or a Changes in position of components, presence or absence of user contact with electronic device 1300 , electronic device 1300 orientation or acceleration/deceleration and temperature changes in electronic device 1300 .
  • Sensor assembly 1307 may include a proximity sensor configured to detect the presence of nearby objects in the absence of any physical contact.
  • the sensor assembly 1307 may also include a light sensor, such as a Complementary Metal-Oxide-Semiconductor (CMOS) or Charge Coupled Device (CCD) image sensor, configured for use in imaging applications.
  • CMOS Complementary Metal-Oxide-Semiconductor
  • CCD Charge Coupled Device
  • the sensor component 1307 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor or a temperature sensor.
  • the communication component 1308 is configured to facilitate wired or wireless communication between the electronic device 1300 and other devices.
  • the electronic device 1300 can access a wireless network based on a communication standard, such as a wireless network (Wireless Network), a second-generation mobile communication technology (Second Generation, 2G) or a third-generation mobile communication technology (3rd-Generation, 3G), or their The combination.
  • a communication standard such as a wireless network (Wireless Network), a second-generation mobile communication technology (Second Generation, 2G) or a third-generation mobile communication technology (3rd-Generation, 3G), or their The combination.
  • the communication component 1308 receives broadcast signals or broadcast related information from an external broadcast management system via a broadcast channel.
  • the communication component 1308 also includes a Near Field Communication (NFC) portion to facilitate short-range communication.
  • NFC Near Field Communication
  • the NFC part can be based on Radio Frequency Identification (RFID) technology, Infrared Data Association (Infrared Data Association, IrDA) technology, Ultra Wide Band (Ultra Wide Band, UWB) technology, Bluetooth (Bluetooth, BT) technology and other technology to achieve.
  • RFID Radio Frequency Identification
  • IrDA Infrared Data Association
  • UWB Ultra Wide Band
  • Bluetooth Bluetooth, BT
  • the electronic device 1300 may be implemented by one or more Application Specific Integrated Circuits (Application Specific Integrated Circuit, ASIC), Digital Signal Processor (Digital Signal Processor, DSP), Digital Signal Processing Device (Digital Signal Processing Device , DSPD), Programmable Logic Device (Programmable Logic Device, PLD), Field Programmable Gate Array (Field Programmable Gate Array, FPGA), controller, microcontroller, microprocessor, or other electronic component implementation, configured to execute the above method.
  • ASIC Application Specific Integrated Circuits
  • DSP Digital Signal Processor
  • DSPD Digital Signal Processing Device
  • PLD Programmable Logic Device
  • Field Programmable Gate Array Field Programmable Gate Array
  • FPGA Field Programmable Gate Array
  • a non-volatile computer-readable storage medium such as a memory 1302 including computer program instructions, which can be executed by the processor 1309 of the electronic device 1300 to implement the above method.
  • FIG. 14 shows a schematic diagram of another electronic device 1400 according to an embodiment of the present disclosure.
  • the electronic device 1400 may be provided as a server.
  • an electronic device 1400 includes a processing component 1401 , and also includes one or more processors, and a memory resource represented by a memory 1402 configured to store instructions executable by the processing component 1401 , such as application programs.
  • An application program stored in memory 1402 may include one or more portions each corresponding to a set of instructions.
  • the processing component 1401 is configured to execute instructions to perform the above method.
  • the electronic device 1400 may also include a power component 1403 configured to perform power management of the electronic device 1400 , a wired or wireless network interface 1404 configured to connect the electronic device 1400 to a network, and an I/O interface 1405 .
  • Electronic device 1400 can operate based on the operating system stored in memory 1402, such as Microsoft server operating system (Windows ServerTM), based on graphical user interface operating system (Mac OS XTM), multi-user multi-process computer operating system (UnixTM), free and An open source Unix-like operating system (LinuxTM), an open source Unix-like operating system (FreeBSDTM), or similar.
  • a non-volatile computer-readable storage medium such as a memory 1402 including computer program instructions, which can be executed by the processing component 1401 of the electronic device 1400 to implement the above method.
  • the present disclosure includes at least one of the following: a system, a method, and a computer program product.
  • a computer program product may include a computer readable storage medium having computer readable program instructions thereon for causing a processor to implement various aspects of the present disclosure.
  • a computer readable storage medium may be a tangible device that can retain and store instructions for use by an instruction execution device.
  • a computer readable storage medium may be, for example, but is not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing.
  • Examples (non-exhaustive list) of computer-readable storage media include: portable computer discs, hard drives, Random-Access Memory (RAM), Read-Only Memory (ROM), erasable Programmable Read-Only Memory (Erasable Programmable Read-Only Memory, EPROM) or flash memory, Static Random-Access Memory (Static Random-Access Memory, SRAM), Portable Compression Disk Read-Only Memory (Compact Disc Read-Only Memory, CD-ROM ), Digital Versatile Disc (DVD), memory sticks, floppy disks, mechanically encoded devices, such as punched cards or raised structures in grooves with instructions stored thereon, and any suitable combination of the foregoing.
  • RAM Random-Access Memory
  • ROM Read-Only Memory
  • EPROM erasable Programmable Read-Only Memory
  • flash memory Static Random-Access Memory
  • Static Random-Access Memory SRAM
  • Portable Compression Disk Read-Only Memory Compact Disc Read-Only Memory
  • CD-ROM Compact Disc Read-Only Memory
  • computer-readable storage media are not to be construed as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., pulses of light through fiber optic cables), or transmitted electrical signals.
  • the computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to a respective computing/processing device, or downloaded to an external computer or external storage device over a network, such as at least one of the Internet, a local area network, a wide area network, and a wireless network .
  • the network may include at least one of: copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and edge servers.
  • a network adapter card or a network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing/processing device .
  • Computer program instructions for performing the operations of the present disclosure may be assembly instructions, Instruction Set Architectures (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or in the form of one or more source or object code written in any combination of programming languages, including object-oriented programming languages—such as Smalltalk, C++, etc., and conventional procedural programming languages—such as the “C” language or similar programming languages.
  • Computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server implement.
  • the remote computer can be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or it can be connected to an external computer such as use an Internet service provider to connect via the Internet).
  • electronic circuits such as programmable logic circuits, field programmable gate arrays (Field Programmable Gate Array, FPGA) or programmable logic arrays (Programmable Logic Array, PLA), the electronic circuit can execute computer-readable program instructions, thereby implementing various aspects of the present disclosure.
  • These computer-readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine such that when executed by the processor of the computer or other programmable data processing apparatus , producing an apparatus for realizing the functions/actions specified in one or more blocks in the flowchart and block diagram.
  • These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause at least one of computers, programmable data processing devices and other devices to work in a specific way, so that the computer-readable The medium then includes an article of manufacture including instructions for implementing various aspects of the functions/acts specified in at least one block in the flowcharts and block diagrams.
  • each block in a flowchart or block diagram may represent a portion, a program segment, or a portion of an instruction that includes one or more Executable instructions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved.
  • each block of at least one of the block diagrams and flowcharts, and combinations of blocks of at least one of the block diagrams and flowcharts may be implemented with a dedicated hardware-based computer that performs specified functions or actions. system, or it may be implemented by a combination of special purpose hardware and computer instructions.
  • the computer program product can be specifically realized by means of hardware, software or a combination thereof.
  • the computer program product is embodied as a computer storage medium, and in another optional embodiment, the computer program product is embodied as a software product, such as a software development kit (Software Development Kit, SDK) etc. wait.
  • a software development kit Software Development Kit, SDK
  • the writing order of each step does not mean a strict execution order and constitutes any limitation on the implementation process.
  • the specific execution order of each step should be based on its function and possible
  • the inner logic is OK.
  • the products applying the disclosed technical solution have clearly notified the personal information processing rules and obtained the individual's independent consent before processing personal information.
  • the disclosed technical solution involves sensitive personal information the products applying the disclosed technical solution have obtained individual consent before processing sensitive personal information, and at the same time meet the requirement of "express consent". For example, at a personal information collection device such as a camera, a clear and prominent sign is set up to inform that it has entered the scope of personal information collection, and personal information will be collected.
  • the personal information processing rules may include Information such as the information processor, the purpose of personal information processing, the method of processing, and the type of personal information processed.
  • the embodiment of the present disclosure by determining the first feature point on the target image, as well as the first coordinate representing the position of the first feature point on the target image and the first descriptor representing the feature of the first feature point; at the same time, determining the reference At least one second feature point on the image, as well as second coordinates representing the position of each second feature point on the reference image and a second descriptor representing the characteristics of the second feature point; according to the first descriptor and each second description Performing a first screening on at least one second feature point to obtain at least one candidate feature point, and then performing a second screening on at least one candidate feature point according to the first coordinates and the second coordinates of each candidate feature point to obtain a reference
  • the target feature point on the image that matches the first feature point.
  • the embodiments of the present disclosure can perform two matchings according to the local features and the positions of the feature points, and accurately match the points that record the same information in the two images.

Abstract

A feature point matching method and apparatus, an electronic device, and a storage medium. A first feature point on a target image, a first coordinate representing the position of the first feature point on the target image, and a first descriptor representing features of the first feature point are determined (S101). Meanwhile, at least one second feature point on a reference image, a second coordinate representing the position of each second feature point on the reference image, and second descriptors representing features of the second feature points are determined (S102). According to the first descriptor and each second descriptor, first screening is performed on the at least one second feature point, so as to obtain at least one candidate feature point (S103); and according to the first coordinate and the second coordinate of each candidate feature point, second screening is performed on the at least one candidate feature point, so as to obtain a target feature point, on the reference image, matching the first feature point (S104).

Description

特征点匹配方法、装置、电子设备、存储介质和计算机程序产品Feature point matching method, device, electronic device, storage medium and computer program product
相关申请的交叉引用Cross References to Related Applications
本公开要求2022年02月17日提交的中国专利申请号为202210145598.8,申请人为浙江商汤科技开发有限公司,申请名称为“特征点匹配方法及装置、电子设备和存储介质”的优先权,该申请的全文以引用的方式并入本公开中。This disclosure claims the priority of the Chinese patent application number 202210145598.8 submitted on February 17, 2022, the applicant is Zhejiang Shangtang Technology Development Co., Ltd., and the application name is "feature point matching method and device, electronic equipment and storage medium". The entirety of the application is incorporated by reference into this disclosure.
技术领域technical field
本公开涉及计算机技术领域,尤其涉及一种特征点匹配方法、装置、电子设备、存储介质和计算机程序产品。The present disclosure relates to the field of computer technology, and in particular to a feature point matching method, device, electronic equipment, storage medium and computer program product.
背景技术Background technique
图像与图像之间的二维特征点匹配是计算机视觉中的重要算法,现有的二维特征点匹配方法通常基于局部的图像特征提取,容易将两张图像中局部区域相似但实际内容并不相似的位置误匹配,匹配结果不够准确。Two-dimensional feature point matching between images is an important algorithm in computer vision. The existing two-dimensional feature point matching methods are usually based on local image feature extraction. Similar positions are incorrectly matched, and the matching result is not accurate enough.
发明内容Contents of the invention
本公开实施例提出了一种特征点匹配方法、装置、电子设备、存储介质和计算机程序产品,旨在提高两个图像之间特征点匹配的准确程度。Embodiments of the present disclosure provide a feature point matching method, device, electronic device, storage medium and computer program product, aiming at improving the accuracy of feature point matching between two images.
本公开实施例提供了一种特征点匹配方法,包括:确定目标图像上的第一特征点,以及所述第一特征点的第一坐标和第一描述子,所述第一坐标表征所述第一特征点在所述目标图像上的位置,所述第一描述子表征所述第一特征点的特征;确定参考图像上的至少一个第二特征点,以及每个所述第二特征点的第二坐标和第二描述子,所述第二坐标表征所述第二特征点在所述参考图像上的位置,所述第二描述子表征所述第二特征点的特征;根据所述第一描述子和每个所述第二描述子对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点;根据所述第一坐标和每个所述候选特征点的第二坐标对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。An embodiment of the present disclosure provides a feature point matching method, including: determining a first feature point on a target image, and a first coordinate and a first descriptor of the first feature point, the first coordinate characterizing the The position of the first feature point on the target image, the first descriptor characterizes the feature of the first feature point; determine at least one second feature point on the reference image, and each of the second feature points The second coordinates and the second descriptor, the second coordinates characterize the position of the second feature point on the reference image, the second descriptor characterizes the feature of the second feature point; according to the The first descriptor and each of the second descriptors perform a first screening on at least one of the second feature points to obtain at least one candidate feature point; according to the first coordinates and each of the candidate feature points The second coordinates perform a second screening on at least one of the candidate feature points to obtain a target feature point that matches the first feature point.
在一种可能的实现方式中,所述根据所述第一描述子和每个所述第二描述子对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点,包括:分别确定每个所述第二描述子和所述第一描述子的相似参数;根据所述相似参数对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点。In a possible implementation manner, the first screening is performed on at least one of the second feature points according to the first descriptor and each of the second descriptors to obtain at least one candidate feature point, including : Determine the similarity parameters of each of the second descriptors and the first descriptors respectively; perform a first screening on at least one second feature point according to the similarity parameters to obtain at least one candidate feature point.
在一种可能的实现方式中,所述分别确定每个所述第二描述子和所述第一描述子的相似参数,包括:分别确定每个所述第二描述子与所述第一描述子的距离向量,得到每个所述第二描述子和所述第一描述子的相似参数。In a possible implementation manner, the respectively determining the similarity parameters of each of the second descriptors and the first descriptors includes: respectively determining the similarity parameters of each of the second descriptors and the first descriptors Sub-distance vectors to obtain the similarity parameters of each of the second descriptor and the first descriptor.
在一种可能的实现方式中,所述根据所述相似参数对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点,包括:确定和所述第一描述子的相似参数小于第一阈值的第二描述子;将所述相似参数小于第一阈值的第二描述子对应的第二特征点作为候选特征点。In a possible implementation manner, the first screening of at least one second feature point according to the similarity parameter to obtain at least one candidate feature point includes: determining the similarity with the first descriptor A second descriptor whose parameter is smaller than the first threshold; and a second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold is used as a candidate feature point.
在一种可能的实现方式中,所述根据所述相似参数对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点,包括:对每个所述第二描述子对应的相似参数从小到大排序,并获取前预设数量个所述第二描述子对应的第二特征点为候选特征点。In a possible implementation manner, the first screening of at least one of the second feature points according to the similarity parameters to obtain at least one candidate feature point includes: corresponding to each of the second descriptors The similarity parameters are sorted from small to large, and the second feature points corresponding to the first preset number of second descriptors are obtained as candidate feature points.
在一种可能的实现方式中,所述根据所述第一坐标和每个所述候选特征点的第二坐标对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点, 包括:根据所述第一坐标、所述第二坐标以及相对位置关系,对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点;所述相对位置关系为所述目标图像和所述参考图像的相对位置关系。In a possible implementation manner, the second screening is performed on at least one of the candidate feature points according to the first coordinates and the second coordinates of each of the candidate feature points to obtain The target feature point for point matching includes: performing a second screening on at least one of the candidate feature points according to the first coordinates, the second coordinates, and the relative positional relationship to obtain a target feature point that matches the first feature point. A target feature point; the relative positional relationship is the relative positional relationship between the target image and the reference image.
在一种可能的实现方式中,所述根据所述第一坐标、所述第二坐标以及所述目标图像和所述参考图像的相对位置关系,对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点,包括:确定所述目标图像的第一位置,并确定所述参考图像的第二位置;根据所述第一位置、所述第二位置和所述第一坐标基于对极几何确定所述第一特征点在所述参考图像上的预估极线;根据每个所述候选特征点的第二坐标与所述预估极线的最短距离对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。In a possible implementation manner, according to the first coordinates, the second coordinates, and the relative positional relationship between the target image and the reference image, performing a second operation on at least one of the candidate feature points Screening to obtain a target feature point matching the first feature point includes: determining the first position of the target image, and determining the second position of the reference image; according to the first position, the second determining the estimated epipolar line of the first feature point on the reference image based on the epipolar geometry based on the position and the first coordinate; The shortest distance performs a second screening on at least one of the candidate feature points to obtain a target feature point matching the first feature point.
在一种可能的实现方式中,所述根据每个所述候选特征点的第二坐标与所述预估极线的最短距离对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点,包括:确定所述至少一个所述候选特征点中最短距离小于第二阈值的候选特征点的数量;所述最短距离为第二坐标与所述预估极线的最短距离;在所述最短距离小于第二阈值的候选特征点的数量为一的情况下,将所述最短距离小于第二阈值的候选特征点作为目标特征点;在所述最短距离小于第二阈值的候选特征点的数量大于一的情况下,在所述最短距离小于第二阈值的候选特征点中确定目标特征点。In a possible implementation manner, at least one of the candidate feature points is screened a second time according to the shortest distance between the second coordinates of each of the candidate feature points and the estimated epipolar line to obtain the The target feature point matched by the first feature point includes: determining the number of candidate feature points whose shortest distance is smaller than a second threshold among the at least one candidate feature point; the shortest distance is the second coordinate and the estimated The shortest distance of the epipolar line; when the number of candidate feature points whose shortest distance is less than the second threshold is one, use the candidate feature points whose shortest distance is less than the second threshold as target feature points; in the shortest distance When the number of candidate feature points smaller than the second threshold is greater than one, the target feature point is determined among the candidate feature points whose shortest distance is smaller than the second threshold.
在一种可能的实现方式中,所述在所述最短距离小于第二阈值的候选特征点中确定目标特征点,包括:在所述最短距离小于第二阈值的候选特征点中,确定所述相似参数最大的候选特征点为目标特征点。In a possible implementation manner, the determining the target feature point among the candidate feature points whose shortest distance is less than a second threshold includes: determining the target feature point among the candidate feature points whose shortest distance is less than a second threshold The candidate feature point with the largest similarity parameter is the target feature point.
本公开实施例提供了一种特征点匹配装置,包括:第一信息确定部分,被配置为确定目标图像上的第一特征点,以及所述第一特征点的第一坐标和第一描述子,所述第一坐标表征所述第一特征点在所述目标图像上的位置,所述第一描述子表征所述第一特征点的特征;第二信息确定部分,被配置为确定参考图像上的至少一个第二特征点,以及每个所述第二特征点的第二坐标和第二描述子,所述第二坐标表征所述第二特征点在所述参考图像上的位置,所述第二描述子表征所述第二特征点的特征;第一筛选部分,被配置为根据所述第一描述子和每个所述第二描述子对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点;第二筛选模块部分,被配置为根据所述第一坐标和每个所述候选特征点的第二坐标对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。An embodiment of the present disclosure provides a feature point matching device, including: a first information determining part configured to determine a first feature point on a target image, and first coordinates and a first descriptor of the first feature point , the first coordinate characterizes the position of the first feature point on the target image, the first descriptor characterizes the feature of the first feature point; the second information determination part is configured to determine a reference image At least one second feature point on , and the second coordinates and the second descriptor of each of the second feature points, the second coordinates represent the position of the second feature point on the reference image, so The second descriptor characterizes the feature of the second feature point; the first screening part is configured to perform the first screening on at least one second feature point according to the first descriptor and each of the second descriptors One screening to obtain at least one candidate feature point; the second screening module part is configured to perform a second round of at least one candidate feature point according to the first coordinates and the second coordinates of each of the candidate feature points Screening to obtain target feature points matching the first feature point.
在一种可能的实现方式中,所述第一筛选部分包括:参数确定子部分,被配置为分别确定每个所述第二描述子和所述第一描述子的相似参数;第一筛选子部分,被配置为根据所述相似参数对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点。In a possible implementation manner, the first screening part includes: a parameter determination subsection configured to respectively determine similar parameters of each of the second descriptor and the first descriptor; the first screening subsection A part configured to perform a first screening on at least one second feature point according to the similarity parameter to obtain at least one candidate feature point.
在一种可能的实现方式中,所述参数确定子部分,包括:参数确定部分,被配置为分别确定每个所述第二描述子与所述第一描述子的距离向量,得到每个所述第二描述子和所述第一描述子的相似参数。In a possible implementation manner, the parameter determination subpart includes: a parameter determination part configured to respectively determine a distance vector between each of the second descriptors and the first descriptor, and obtain each of the Similar parameters of the second descriptor and the first descriptor.
在一种可能的实现方式中,所述第一筛选子部分,包括:描述子筛选部分,被配置为确定和所述第一描述子的相似参数小于第一阈值的第二描述子;第一候选点确定部分,被配置为将所述相似参数小于第一阈值的第二描述子对应的第二特征点作为候选特征点。In a possible implementation manner, the first screening subpart includes: a descriptor screening part configured to determine a second descriptor whose similar parameter to the first descriptor is smaller than a first threshold; the first The candidate point determining part is configured to use the second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold as a candidate feature point.
在一种可能的实现方式中,所述第一筛选子部分,包括:第二候选点确定部分,被配置为对每个所述第二描述子对应的相似参数从小到大排序,并获取前预设数量个所述第二描述子对应的第二特征点为候选特征点。In a possible implementation manner, the first screening subpart includes: a second candidate point determination part configured to sort the similar parameters corresponding to each of the second descriptors from small to large, and obtain the previous The second feature points corresponding to the preset number of second descriptors are candidate feature points.
在一种可能的实现方式中,所述第二筛选部分包括:第二筛选子部分,被配置为根据所述第一坐标、所述第二坐标以及相对位置关系,对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点;所述相对位置关系为所述目标图像和所 述参考图像的相对位置关系。In a possible implementation manner, the second screening part includes: a second screening subsection configured to, according to the first coordinates, the second coordinates and the relative positional relationship, select at least one of the candidate features Points are screened for the second time to obtain target feature points matching the first feature point; the relative positional relationship is the relative positional relationship between the target image and the reference image.
在一种可能的实现方式中,所述第二筛选子部分包括:位置确定部分,被配置为确定所述目标图像的第一位置,并确定所述参考图像的第二位置;极线确定部分,被配置为根据所述第一位置、所述第二位置和所述第一坐标基于对极几何确定所述第一特征点在所述参考图像上的预估极线;特征点筛选部分,被配置为根据每个所述候选特征点的第二坐标与所述预估极线的最短距离对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。In a possible implementation manner, the second screening subsection includes: a position determining part configured to determine a first position of the target image and determine a second position of the reference image; an epipolar line determining part , configured to determine an estimated epipolar line of the first feature point on the reference image based on epipolar geometry according to the first position, the second position and the first coordinate; the feature point screening part, It is configured to perform a second screening on at least one of the candidate feature points according to the shortest distance between the second coordinates of each of the candidate feature points and the estimated epipolar line, to obtain a target matching the first feature point Feature points.
在一种可能的实现方式中,所述特征点筛选部分包括:距离确定子部分,被配置为确定所述至少一个所述候选特征点中最短距离小于第二阈值的候选特征点的数量;所述最短距离为第二坐标与所述预估极线的最短距离;第一特征点确定子部分,被配置为在所述最短距离小于第二阈值的候选特征点的数量为一的情况下,将所述最短距离小于第二阈值的候选特征点作为目标特征点;第二特征点确定子部分,被配置为在所述最短距离小于第二阈值的候选特征点的数量大于一的情况下,在所述最短距离小于第二阈值的候选特征点中确定目标特征点。In a possible implementation manner, the feature point screening part includes: a distance determination subsection configured to determine the number of candidate feature points whose shortest distance among the at least one candidate feature point is smaller than a second threshold; The shortest distance is the shortest distance between the second coordinate and the estimated epipolar line; the first feature point determining subsection is configured to be one when the number of candidate feature points whose shortest distance is less than a second threshold is one, The candidate feature points whose shortest distance is less than a second threshold are used as target feature points; the second feature point determining subsection is configured to, when the number of candidate feature points whose shortest distance is less than a second threshold is greater than one, A target feature point is determined among candidate feature points whose shortest distance is smaller than a second threshold.
在一种可能的实现方式中,所述第二特征点确定子部分包括:第三特征点确定子部分,被配置为在所述最短距离小于第二阈值的候选特征点中,确定所述相似参数最大的候选特征点为目标特征点。In a possible implementation manner, the second feature point determination subsection includes: a third feature point determination subsection configured to determine the similarity among the candidate feature points whose shortest distance is smaller than a second threshold. The candidate feature point with the largest parameter is the target feature point.
本公开实施例提供了一种电子设备,包括:处理器;被配置为存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。An embodiment of the present disclosure provides an electronic device, including: a processor; a memory configured to store instructions executable by the processor; wherein the processor is configured to invoke the instructions stored in the memory to execute the above method.
本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。An embodiment of the present disclosure provides a computer-readable storage medium on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the foregoing method is implemented.
本公开实施例提供了一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机存储介质,所述计算机程序被计算机读取并执行时实现上述方法。An embodiment of the present disclosure provides a computer program product, the computer program product includes a non-transitory computer storage medium storing a computer program, and the above method is implemented when the computer program is read and executed by a computer.
在本公开实施例中,通过确定目标图像上的第一特征点,以及表征第一特征点在目标图像上位置的第一坐标和表征第一特征点特征的第一描述子。同时,确定参考图像上的至少一个第二特征点以及表征每个第二特征点在参考图像上位置的第二坐标和表征第二特征点特征的第二描述子。并且根据第一描述子和每个第二描述子对至少一个第二特征点进行第一次筛选,得到至少一个候选特征点,再根据第一坐标和每个候选特征点的第二坐标对至少一个候选特征点进行第二次筛选,得到参考图像上与第一特征点匹配的目标特征点。本公开实施例能够根据局部特征和特征点位置进行两次匹配,准确的匹配两张图像中记录相同信息的点。In the embodiment of the present disclosure, the first feature point on the target image, the first coordinate representing the position of the first feature point on the target image, and the first descriptor representing the feature of the first feature point are determined. At the same time, at least one second feature point on the reference image, second coordinates characterizing the position of each second feature point on the reference image and a second descriptor characterizing the characteristics of the second feature point are determined. And according to the first descriptor and each second descriptor, at least one second feature point is screened for the first time to obtain at least one candidate feature point, and then according to the first coordinate and the second coordinate of each candidate feature point, at least A candidate feature point is screened for the second time to obtain the target feature point matching the first feature point on the reference image. The embodiments of the present disclosure can perform two matchings according to the local features and the positions of the feature points, and accurately match the points that record the same information in the two images.
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure. Other features and aspects of the present disclosure will become apparent from the following detailed description of exemplary embodiments with reference to the accompanying drawings.
附图说明Description of drawings
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。The accompanying drawings here are incorporated into the description and constitute a part of the present description. These drawings show embodiments consistent with the present disclosure, and are used together with the description to explain the technical solution of the present disclosure.
图1示出根据本公开实施例的一种特征点匹配方法的流程图;FIG. 1 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure;
图2示出根据本公开实施例的一种目标图像的示意图;Fig. 2 shows a schematic diagram of a target image according to an embodiment of the present disclosure;
图3示出根据本公开实施例的一种参考图像的示意图;Fig. 3 shows a schematic diagram of a reference image according to an embodiment of the present disclosure;
图4示出根据本公开实施例的一种特征点匹配方法的流程图;FIG. 4 shows a flow chart of a feature point matching method according to an embodiment of the present disclosure;
图5示出根据本公开实施例的一种特征点匹配方法的流程图;FIG. 5 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure;
图6示出根据本公开实施例的一种特征点匹配方法的流程图;FIG. 6 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure;
图7示出根据本公开实施例的一种确定预估极线的示意图;Fig. 7 shows a schematic diagram of determining an estimated epipolar line according to an embodiment of the present disclosure;
图8示出根据本公开实施例的一种预估极线的示意图;Fig. 8 shows a schematic diagram of an estimated epipolar line according to an embodiment of the present disclosure;
图9示出根据本公开实施例的一种特征点匹配方法的流程图;FIG. 9 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure;
图10示出根据本公开实施例的一种确定目标特征点过程的示意图;FIG. 10 shows a schematic diagram of a process of determining target feature points according to an embodiment of the present disclosure;
图11示出根据本公开实施例的一种特征点匹配方法的流程图;Fig. 11 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure;
图12示出根据本公开实施例的一种特征点匹配装置的示意图;Fig. 12 shows a schematic diagram of a feature point matching device according to an embodiment of the present disclosure;
图13示出根据本公开实施例的一种电子设备的示意图;Fig. 13 shows a schematic diagram of an electronic device according to an embodiment of the present disclosure;
图14示出根据本公开实施例的另一种电子设备的示意图。Fig. 14 shows a schematic diagram of another electronic device according to an embodiment of the present disclosure.
具体实施方式Detailed ways
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。Various exemplary embodiments, features, and aspects of the present disclosure will be described in detail below with reference to the accompanying drawings. The same reference numbers in the figures indicate functionally identical or similar elements. While various aspects of the embodiments are shown in drawings, the drawings are not necessarily drawn to scale unless specifically indicated.
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。The word "exemplary" is used exclusively herein to mean "serving as an example, embodiment, or illustration." Any embodiment described herein as "exemplary" is not necessarily to be construed as superior or better than other embodiments.
本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。The term "at least one" herein means any one of a variety or any combination of at least two of a variety, for example, including at least one of A, B, and C, may mean including from A, B, and Any one or more elements selected from the set formed by C.
另外,为了更好地说明本公开,在下文的具体实施方式中给出了众多的实施细节。本领域技术人员应当理解,没有某些实施细节,本公开同样可以实施。在一些实施例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。In addition, in order to better illustrate the present disclosure, numerous implementation details are given in the following specific implementation manners. It will be understood by those skilled in the art that the present disclosure may be practiced without certain of the implementation details. In some embodiments, methods, means, components and circuits well known to those skilled in the art are not described in detail in order to highlight the gist of the present disclosure.
在一种可能的实现方式中,本公开实施例的特征点匹配方法可以由终端设备或服务器等电子设备执行。其中,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等任意固定终端或移动终端。服务器可以为单独的服务器或多个服务器组成的服务器集群。任意电子设备均可以通过处理器调用存储器中存储的计算机可读指令的方式来实现本公开实施例的特征点匹配方法。In a possible implementation manner, the feature point matching method in the embodiment of the present disclosure may be executed by an electronic device such as a terminal device or a server. Wherein, the terminal device may be user equipment (User Equipment, UE), mobile device, user terminal, terminal, cellular phone, cordless phone, personal digital assistant (Personal Digital Assistant, PDA), handheld device, computing device, vehicle-mounted device, Any fixed terminal or mobile terminal such as wearable devices. The server can be a single server or a server cluster composed of multiple servers. Any electronic device can implement the feature point matching method of the embodiments of the present disclosure by calling the computer-readable instructions stored in the memory by the processor.
本公开实施例用于对两张二维图像上记录相同信息的特征点进行匹配。例如,在分别采集目标对象不同角度的图像的过程中,得到两张二维图像上,对两张二维图像上用于记载目标对象相同位置的特征点进行匹配。The embodiments of the present disclosure are used to match feature points that record the same information on two two-dimensional images. For example, in the process of collecting images from different angles of the target object, two two-dimensional images are obtained, and the feature points used to record the same position of the target object on the two two-dimensional images are matched.
图1示出根据本公开实施例的一种特征点匹配方法的流程图。如图1所示,本公开实施例的特征点匹配方法包括以下步骤S101至S104。Fig. 1 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 1 , the feature point matching method of the embodiment of the present disclosure includes the following steps S101 to S104.
步骤S101、确定目标图像上的第一特征点,以及所述第一特征点的第一坐标和第一描述子。Step S101. Determine a first feature point on a target image, as well as first coordinates and a first descriptor of the first feature point.
在一种可能的实现方式中,目标图像为采集目标对象得到的图像,该目标对象可以为动物、人物、家具以及摆件等任意有生命或没有生命的物。并且目标图像上具有至少一个特征点,每个特征点为目标图像上的一个局部区域。目标图像上的至少一个特征点可以通过对象识别得到,即识别目标图像中的目标对象,并在目标对象上确定至少一个用于表征目标对象局部特征的特征点。在需要对目标图像上的每一个特征点进行特征点匹配时,可以先确定一个特征点为第一特征点,对该第一特征点进行匹配。在完成当前第一特征点匹配的情况下,再重新确定一个特征点为第一特征点,再进行特征点匹配直到完成全部的特征点匹配过程。In a possible implementation manner, the target image is an image obtained by collecting a target object, and the target object may be any living or inanimate object such as animals, people, furniture, and decorations. And there is at least one feature point on the target image, and each feature point is a local area on the target image. At least one feature point on the target image can be obtained through object recognition, that is, identifying the target object in the target image, and determining at least one feature point on the target object for characterizing local features of the target object. When it is necessary to perform feature point matching on each feature point on the target image, one feature point may be first determined as the first feature point, and the first feature point is matched. When the current first feature point matching is completed, another feature point is re-determined as the first feature point, and then the feature point matching is performed until the entire feature point matching process is completed.
在一种可能的实现方式中,在确定目标图像上的第一特征点的同时,还确定第一特征点的第一坐标和第一描述子。其中,第一坐标表征第一特征点在目标图像上的位置,第一描述子表征第一特征点的特征,例如可以包括颜色特征和纹理特征等。第一坐标可以通过 二维坐标或三维坐标表示。在第一坐标通过二维坐标表示的情况下,可以先确定目标图像的目标坐标系,再确定第一特征点在目标坐标系中的坐标为第一坐标。目标坐标系可以为任意预先设定的坐标系,例如确定以目标图像左下角为坐标系原点,底边为x轴、左侧边为y轴的坐标系为目标坐标系。在第一坐标通过三维坐标表示的情况下,可以根据目标图像采集过程中,目标图像的图像采集装置所在的位置以及拍摄角度先确定目标图像所在平面在预设的目标三维坐标系中的表示方式,再根据该第一特征点在目标图像中的位置确定第一坐标。该目标三维坐标系可以预先设定。In a possible implementation manner, while determining the first feature point on the target image, first coordinates and a first descriptor of the first feature point are also determined. Wherein, the first coordinate represents the position of the first feature point on the target image, and the first descriptor represents the feature of the first feature point, for example, may include color feature and texture feature. The first coordinates can be represented by two-dimensional coordinates or three-dimensional coordinates. In the case where the first coordinates are represented by two-dimensional coordinates, the target coordinate system of the target image may be determined first, and then the coordinates of the first feature point in the target coordinate system may be determined as the first coordinates. The target coordinate system can be any preset coordinate system. For example, the coordinate system with the lower left corner of the target image as the origin of the coordinate system, the bottom side as the x-axis, and the left side as the y-axis is determined as the target coordinate system. In the case where the first coordinate is represented by three-dimensional coordinates, the representation mode of the plane where the target image is located in the preset target three-dimensional coordinate system can be first determined according to the position of the image acquisition device of the target image and the shooting angle during the target image acquisition process , and then determine the first coordinates according to the position of the first feature point in the target image. The target three-dimensional coordinate system can be preset.
在一种可能的实现方式中,第一描述子的确定方式可以为提取第一特征点所在位置中的预设特征,并根据预设特征的分布情况确定特征向量作为第一描述子。预设特征可以根据实际需要设定,可以包括颜色特征和纹理特征中的至少一种。第一描述子可以为任意特征描述子,例如可以是方向梯度直方图(Histogram of Oriented Gradients,HOG)特征描述子。第一描述子的确定过程可以为确定第一特征点所在位置内每个像素在水平和垂直两个方向上的梯度变化,并根据梯度变化确定每个像素的幅值和方向以根据每个像素的梯度幅值和方向生成直方图。再通过直方图标准化得到特征向量作为第一描述子。In a possible implementation manner, the first descriptor may be determined by extracting a preset feature at the location of the first feature point, and determining a feature vector as the first descriptor according to the distribution of the preset feature. The preset features can be set according to actual needs, and can include at least one of color features and texture features. The first descriptor can be any feature descriptor, for example, it can be a histogram of oriented gradients (Histogram of Oriented Gradients, HOG) feature descriptor. The process of determining the first descriptor can be to determine the gradient change of each pixel in the horizontal and vertical directions in the position of the first feature point, and determine the magnitude and direction of each pixel according to the gradient change to obtain the Generate a histogram of the gradient magnitude and direction of . Then the feature vector is obtained through histogram normalization as the first descriptor.
图2示出根据本公开实施例的一种目标图像的示意图。如图2所示,本公开实施例的目标图像200可以为在第一角度采集目标对象201得到的图像。在一种可能的实现方式中,可以通过对象识别等方式确定表征目标对象201中特征位置的第一特征点202。同时,根据该第一特征点202在目标图像200中的位置确定第一坐标,再根据该第一特征点202所在位置的局部特征确定用于表征第一特征点202特征的第一描述子。Fig. 2 shows a schematic diagram of a target image according to an embodiment of the present disclosure. As shown in FIG. 2 , the target image 200 in this embodiment of the present disclosure may be an image obtained by capturing a target object 201 at a first angle. In a possible implementation manner, the first feature point 202 representing the feature position in the target object 201 may be determined by means of object recognition or the like. At the same time, the first coordinates are determined according to the position of the first feature point 202 in the target image 200 , and the first descriptor used to characterize the feature of the first feature point 202 is determined according to the local characteristics of the position of the first feature point 202 .
步骤S102、确定参考图像上的至少一个第二特征点,以及每个所述第二特征点的第二坐标和第二描述子。Step S102. Determine at least one second feature point on the reference image, as well as the second coordinates and the second descriptor of each second feature point.
在一种可能的实现方式中,参考图像也为采集目标对象得到的图像,该目标对象在参考图像中的姿态和在目标图像中的姿态不同。参考图像上具有至少一个第二特征点,每个第二特征点为参考图像上的一个局部区域。参考图像上的第二特征点可以通过对象识别得到,即识别目标图像中的目标对象,并在目标对象上确定至少一个用于表征目标对象局部特征的第二特征点。参考图像上的第二特征点用于与第一特征点进行匹配,以在多个第二特征点中确定与第一特征点表征目标对象相同位置的目标特征点。In a possible implementation manner, the reference image is also an image obtained by collecting a target object, and the pose of the target object in the reference image is different from that in the target image. There is at least one second feature point on the reference image, and each second feature point is a local area on the reference image. The second feature points on the reference image can be obtained through object recognition, that is, identifying the target object in the target image, and determining at least one second feature point on the target object for characterizing the local features of the target object. The second feature point on the reference image is used for matching with the first feature point, so as to determine a target feature point representing the same position of the target object as the first feature point among the plurality of second feature points.
在一种可能的实现方式中,在确定参考图像上的第二特征点的同时,还确定每个第二特征点的第二坐标和第二描述子。其中,第二坐标表征对应的第二特征点在参考图像上的位置,第二描述子表征对应的第二特征点的特征,例如可以包括颜色特征和纹理特征等。第二坐标可以通过二维坐标或三维坐标表示。在第二坐标通过二维坐标表示的情况下,可以先确定参考图像的目标坐标系,再确定第二特征点在目标坐标系中的坐标为第二坐标。目标坐标系可以为任意预先设定的坐标系,例如确定以参考图像左下角为坐标系原点,底边为x轴、左侧边为y轴的坐标系为目标坐标系。在第二坐标通过三维坐标表示的情况下,可以根据参考图像采集过程中,参考图像的图像采集装置所在的位置以及拍摄角度先确定参考图像所在平面在预设的目标三维坐标系中的表示方式,再根据该第二特征点在参考图像中的位置确定第二坐标。该目标三维坐标系可以预先设定,与第一坐标的所在的目标三维坐标系为同一三维坐标系。In a possible implementation manner, while determining the second feature points on the reference image, the second coordinates and the second descriptor of each second feature point are also determined. Wherein, the second coordinate represents the position of the corresponding second feature point on the reference image, and the second descriptor represents the feature of the corresponding second feature point, for example, may include color feature and texture feature. The second coordinates may be represented by two-dimensional coordinates or three-dimensional coordinates. In the case that the second coordinates are represented by two-dimensional coordinates, the target coordinate system of the reference image may be determined first, and then the coordinates of the second feature point in the target coordinate system may be determined as the second coordinates. The target coordinate system can be any preset coordinate system. For example, the coordinate system with the lower left corner of the reference image as the origin of the coordinate system, the bottom side as the x-axis, and the left side as the y-axis is determined as the target coordinate system. In the case where the second coordinates are represented by three-dimensional coordinates, the representation mode of the plane where the reference image is located in the preset target three-dimensional coordinate system can be first determined according to the position of the image acquisition device of the reference image and the shooting angle during the reference image acquisition process , and then determine the second coordinates according to the position of the second feature point in the reference image. The target three-dimensional coordinate system may be preset, and it is the same three-dimensional coordinate system as the target three-dimensional coordinate system where the first coordinate is located.
在一种可能的实现方式中,第二描述子的确定方式可以为提取第二特征点所在位置中的预设特征,并根据预设特征的分布情况确定特征向量作为第二描述子。预设特征可以根据实际需要设定,可以包括颜色特征和纹理特征中的至少二种。第二描述子的确定方式和上述第一描述子的确定方式相同,包括的特征内容也相同。In a possible implementation manner, the second descriptor may be determined by extracting a preset feature at the location of the second feature point, and determining a feature vector as the second descriptor according to the distribution of the preset feature. The preset features can be set according to actual needs, and can include at least two of color features and texture features. The determination method of the second descriptor is the same as that of the above-mentioned first descriptor, and the included feature content is also the same.
图3示出根据本公开实施例的一种参考图像的示意图。如图3所示,本公开实施例的参考图像300可以为在第二角度采集目标对象201得到的图像。可以通过对象识别等方式确定表征目标对象201中至少一个特征位置的第二特征点302。同时,根据参考图像300 中每个第二特征点302在参考图像300中的位置确定对应的第二坐标,再根据每个第二特征点302所在位置的局部特征确定用于表征对应第二特征点302特征的第二描述子。Fig. 3 shows a schematic diagram of a reference image according to an embodiment of the present disclosure. As shown in FIG. 3 , the reference image 300 in the embodiment of the present disclosure may be an image obtained by capturing the target object 201 at a second angle. The second feature point 302 representing at least one feature position in the target object 201 may be determined by means of object recognition or the like. At the same time, determine the corresponding second coordinates according to the position of each second feature point 302 in the reference image 300 in the reference image 300, and then determine the corresponding second feature according to the local features at the position of each second feature point 302 The second descriptor of the point 302 feature.
步骤S103、根据所述第一描述子和每个所述第二描述子对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点。Step S103 , performing a first screening on at least one second feature point according to the first descriptor and each of the second descriptors to obtain at least one candidate feature point.
在一种可能的实现方式中,可以根据特征点的局部特征先对第一特征点和每个第二特征点进行第一次匹配,筛选出可能与第一特征点匹配的至少一个第二特征点作为候选特征点。由于每个特征点的局部特征根据对应的描述子标识,即可以直接根据第一描述子和每个第二描述子对第二特征点进行第一次筛选,在筛选后,将通过筛选的第二特征点作为候选特征点。在全部第二特征点未通过筛选的情况下,可以结束特征点匹配过程,确定当前参考图像上不存在与第一特征点匹配的第二特征点。In a possible implementation, the first feature point and each second feature point may be first matched according to the local features of the feature point, and at least one second feature that may match the first feature point may be screened out points as candidate feature points. Since the local feature of each feature point is identified according to the corresponding descriptor, that is, the second feature point can be screened for the first time directly according to the first descriptor and each second descriptor. Two feature points are used as candidate feature points. In the case that all the second feature points fail to pass the screening, the feature point matching process may be ended, and it is determined that there is no second feature point matching the first feature point on the current reference image.
图4示出根据本公开实施例的一种特征点匹配方法的流程图。如图4所示,基于图1,步骤S103可以通过步骤S401至S402实现,将结合图4示出的步骤进行说明。Fig. 4 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 4 , based on FIG. 1 , step S103 may be implemented through steps S401 to S402 , which will be described in conjunction with the steps shown in FIG. 4 .
步骤S401、分别确定每个第二描述子与第一描述子的相似参数;Step S401, respectively determining the similarity parameters of each second descriptor and the first descriptor;
步骤S402、根据相似参数对至少一个第二特征点进行第一次筛选,得到至少一个候选特征点。Step S402, performing a first screening on at least one second feature point according to the similarity parameter to obtain at least one candidate feature point.
本公开实施例在进行特征点匹配的过程中,由于基于每个第二描述子与第一描述子的相似参数,可以对每个第二特征点进行一次筛选,从而将局部特征与第一特征点相似程度较高的第二特征点作为候选特征点,完成对第二特征点的第一次筛选。In the process of feature point matching in the embodiment of the present disclosure, each second feature point can be screened once based on the similar parameters between each second descriptor and the first descriptor, so that the local feature and the first feature The second feature point with a higher point similarity is used as a candidate feature point, and the first screening of the second feature point is completed.
在一种可能的实现方式中,可以通过步骤S4011实现上述分别确定每个第二描述子与第一描述子的相似参数。In a possible implementation manner, step S4011 may be used to realize the determination of similar parameters of each second descriptor and the first descriptor respectively.
步骤S4011、分别取得每个第二描述子与第一描述子的距离向量,得到每个第二描述子和第一描述子的相似参数。Step S4011, obtain the distance vector between each second descriptor and the first descriptor, and obtain the similarity parameters between each second descriptor and the first descriptor.
在一种可能的实现方式中,两个特征之间相似参数的大小与两个特征点局部特征匹配的程度成反比例关系,即相似参数越大则匹配程度越低。其中,第一描述子和第二描述子均为向量,第一描述子和第二描述子的相似参数可以为向量之间的距离。距离向量可以为计算第一描述子和第二描述子的向量内积得到。In a possible implementation, the size of the similarity parameter between two features is inversely proportional to the matching degree of the local features of the two feature points, that is, the larger the similarity parameter, the lower the matching degree. Wherein, both the first descriptor and the second descriptor are vectors, and a similar parameter of the first descriptor and the second descriptor may be a distance between vectors. The distance vector can be obtained by calculating the vector inner product of the first descriptor and the second descriptor.
在一种可能的实现方式中,在确定第一描述子与每个第二描述子的相似参数后,可以通过步骤S4021至S4022实现上述根据相似参数对至少一个第二特征点进行第一次筛选,得到至少一个候选特征点。In a possible implementation manner, after determining the similarity parameters between the first descriptor and each second descriptor, the above-mentioned first screening of at least one second feature point according to the similarity parameters can be realized through steps S4021 to S4022 , to get at least one candidate feature point.
步骤S4021、确定和第一描述子的相似参数小于第一阈值的第二描述子;Step S4021, determining a second descriptor whose similar parameter to the first descriptor is smaller than the first threshold;
步骤S4022、将相似参数小于第一阈值的第二描述子对应的第二特征点作为候选特征点。Step S4022, taking the second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold as a candidate feature point.
本公开实施例在进行特征点匹配的过程中,由于基于预设的第一阈值,对第二描述子进行筛选,从而完成对第二特征点的筛选,进而将局部特征与第一特征点相似程度较高的第二特征点作为候选特征点,完成对第二特征点的第一次筛选。In the process of feature point matching in the embodiment of the present disclosure, because the second descriptor is screened based on the preset first threshold, the screening of the second feature point is completed, and the local feature is similar to the first feature point The second feature point with a higher degree is used as a candidate feature point to complete the first screening of the second feature point.
在一种可能的实现方式中,还可以通过步骤S4023实现上述根据相似参数对至少一个第二特征点进行第一次筛选,得到至少一个候选特征点。In a possible implementation manner, step S4023 may also be used to implement the above-mentioned first screening of at least one second feature point according to similar parameters to obtain at least one candidate feature point.
步骤S4023、对每个第二描述子对应的相似参数从小到大排序,并获取前预设数量个第二描述子对应的第二特征点作为候选特征点。预设数量为大于等于一的正整数。Step S4023, sort the similar parameters corresponding to each second descriptor from small to large, and obtain the second feature points corresponding to the previous preset number of second descriptors as candidate feature points. The preset quantity is a positive integer greater than or equal to one.
上述第一次筛选过程基于第二特征点与第一特征点局部特征的相似程度进行筛选,即筛选得到至少一个与第一特征点局部特征相似的候选特征点。The first screening process is based on the degree of similarity between the second feature point and the local feature of the first feature point, that is, at least one candidate feature point similar to the local feature of the first feature point is obtained through screening.
步骤S104、根据所述第一坐标和每个所述候选特征点的第二坐标对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。Step S104, performing a second screening on at least one of the candidate feature points according to the first coordinates and the second coordinates of each of the candidate feature points, to obtain a target feature point matching the first feature point.
在一种可能的实现方式中,在基于局部特征对第二特征点进行第一次筛选得到至少一个候选特征点后,再基于位置特征对至少一个候选特征点进行第二次筛选,以确定参考图 像中与第一特征点匹配的目标特征点。也就是说,可以根据第一坐标和每个候选特征点的第二坐标进行第二次筛选,得到局部特征与第一特征点相似且位置与第一特征点位置匹配的目标特征点。In a possible implementation, after the first screening of the second feature point based on the local feature to obtain at least one candidate feature point, the second screening of the at least one candidate feature point based on the position feature is performed to determine the reference The target feature point in the image that matches the first feature point. That is to say, the second screening can be performed according to the first coordinates and the second coordinates of each candidate feature point to obtain target feature points whose local features are similar to the first feature point and whose positions match the first feature point.
图5示出根据本公开实施例的一种特征点匹配方法的流程图。如图5所示,基于图1,步骤S104可以通过步骤S501实现,将结合图5示出的步骤进行说明。Fig. 5 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 5 , based on FIG. 1 , step S104 may be implemented through step S501 , which will be described in conjunction with the steps shown in FIG. 5 .
在一种可能的实现方式中,对每个候选特征点的第二次筛选可以基于目标图像和参考图像的相对位置关系实现,即步骤S501、根据第一坐标、第二坐标以及相对位置关系,对至少一个候选特征点进行第二次筛选,得到第一特征点匹配的目标特征点;相对位置关系为目标图像和参考图像的相对位置关系。In a possible implementation, the second screening of each candidate feature point can be implemented based on the relative positional relationship between the target image and the reference image, that is, step S501, according to the first coordinates, the second coordinates and the relative positional relationship, A second screening is performed on at least one candidate feature point to obtain a target feature point matched by the first feature point; the relative positional relationship is the relative positional relationship between the target image and the reference image.
图6示出根据本公开实施例的一种特征点匹配方法的流程图。如图6所示,基于图5,步骤S501可以通过步骤S601至S603实现,将结合图6示出的步骤进行说明。Fig. 6 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 6 , based on FIG. 5 , step S501 may be implemented through steps S601 to S603 , which will be described in conjunction with the steps shown in FIG. 6 .
步骤S601、确定目标图像的第一位置,并确定参考图像的第二位置;Step S601, determine the first position of the target image, and determine the second position of the reference image;
步骤S602、根据第一位置、第二位置和第一坐标基于对极几何确定第一特征点在参考图像上的预估极线;Step S602, determining the estimated epipolar line of the first feature point on the reference image based on the epipolar geometry according to the first position, the second position and the first coordinate;
步骤S603、再根据每个候选特征点的第二坐标与预估极线的最短距离对至少一个候选特征点进行第二次筛选,得到与第一特征点匹配的目标特征点。Step S603 , performing a second screening on at least one candidate feature point according to the shortest distance between the second coordinates of each candidate feature point and the estimated epipolar line, to obtain a target feature point matching the first feature point.
在一种可能的实现方式中,目标图像的第一位置为采集目标图像时图像采集装置所在的位置,参考图像的第二位置为采集参考图像时图像采集装置所在的位置。该第一位置和第二位置可以通过图像采集装置在预设的目标三维坐标系中的坐标表示。In a possible implementation manner, the first position of the target image is the position where the image acquisition device is located when the target image is acquired, and the second position of the reference image is the position where the image acquisition device is located when the reference image is acquired. The first position and the second position may be represented by coordinates of the image acquisition device in a preset target three-dimensional coordinate system.
在一种可能的实现方式中,预估极线的确定过程可以为先确定目标图像的第一位置,和参考图像的第二位置,并确定第一坐标和每个第二坐标在目标三维坐标系中的三维坐标,分别表示为第一三维坐标和第二三维坐标。根据第一位置和第一三维坐标的连线确定第一特征点表征的目标对象的位置在目标三维坐标系中可能存在的位置,并将每个可能存在的位置根据参考图像的第二位置投影在参考图像上得到预估极线。并且可以计算每个第二三维坐标到预估极线的最短距离进行第二次筛选。其中,在第一坐标和第二坐标为目标三维坐标系中的三维坐标的情况下,第一三维坐标即为第一坐标,第二三维坐标即为第二坐标。在第一坐标为在目标图像对应二维坐标系中的二维坐标,第二坐标为在参考图像对应二维坐标系中的二维坐标的情况下,可以根据目标图像和参考图像在目标三维坐标系中的位置将第一坐标和每个第二坐标转换为三维的第一三维坐标和第二三维坐标。In a possible implementation, the process of determining the estimated epipolar line may first determine the first position of the target image and the second position of the reference image, and determine the first coordinate and each second coordinate in the three-dimensional coordinates of the target The three-dimensional coordinates in the system are expressed as the first three-dimensional coordinates and the second three-dimensional coordinates respectively. Determine possible positions of the position of the target object represented by the first feature point in the target three-dimensional coordinate system according to the connection line between the first position and the first three-dimensional coordinates, and project each possible position according to the second position of the reference image Estimated epipolar lines are obtained on the reference image. And the shortest distance from each second three-dimensional coordinate to the estimated epipolar line can be calculated for the second screening. Wherein, when the first coordinate and the second coordinate are three-dimensional coordinates in the target three-dimensional coordinate system, the first three-dimensional coordinate is the first coordinate, and the second three-dimensional coordinate is the second coordinate. In the case where the first coordinates are two-dimensional coordinates in the two-dimensional coordinate system corresponding to the target image, and the second coordinates are two-dimensional coordinates in the two-dimensional coordinate system corresponding to the reference image, the three-dimensional coordinates of the target image and the reference image can be The position in the coordinate system transforms the first coordinate and each second coordinate into first and second three-dimensional coordinates in three dimensions.
本公开实施例在进行特征点匹配的过程中,由于基于预设的第一阈值,对第二描述子进行筛选,从而完成对第二特征点的筛选,进而将局部特征与第一特征点相似程度较高的第二特征点作为候选特征点,完成对第二特征点的第一次筛选。In the process of feature point matching in the embodiment of the present disclosure, because the second descriptor is screened based on the preset first threshold, the screening of the second feature point is completed, and the local feature is similar to the first feature point The second feature point with a higher degree is used as a candidate feature point to complete the first screening of the second feature point.
图7示出根据本公开实施例的一种确定预估极线的示意图。如图7所示,在确定第一特征点在参考图像702上的预估极线的过程中,可以先确定采集目标图像701的过程中,图像采集装置在目标三维坐标系中的第一位置703,和采集参考图像702的过程中,图像采集装置在目标三维坐标系中的第二位置704。然后,连接第一位置703和第二位置704,得到连接线与参考图像702在目标三维坐标系中的目标交点708。根据第一位置703和表征第一特征点在目标三维坐标系中位置的第一坐标705确定由目标图像701平面向外延伸的目标线段706,目标线段706的一个端点为第一特征点,目标线段706上的位置均为目标对象上与第一特征点表征的位置可能在三维坐标系中的位置。将目标线段706投影到参考图像702上,以确定由目标交点708为一侧端点,另一侧端点位于参考图像702边缘的预估极线707。其中,预估极线707中的每一个点均为表征目标对象的位置在空间位置上可能与第一特征点表征目标对象的位置相同的点。Fig. 7 shows a schematic diagram of determining an estimated epipolar line according to an embodiment of the present disclosure. As shown in Figure 7, in the process of determining the estimated epipolar line of the first feature point on the reference image 702, the first position of the image acquisition device in the target three-dimensional coordinate system can be determined first in the process of acquiring the target image 701 703, and during the process of acquiring the reference image 702, a second position 704 of the image acquisition device in the target three-dimensional coordinate system. Then, connect the first position 703 and the second position 704 to obtain a target intersection point 708 between the connecting line and the reference image 702 in the target three-dimensional coordinate system. According to the first position 703 and the first coordinate 705 representing the position of the first feature point in the target three-dimensional coordinate system, the target line segment 706 extending outward from the target image 701 plane is determined, and one end point of the target line segment 706 is the first feature point, and the target The positions on the line segment 706 are the possible positions in the three-dimensional coordinate system of the position represented by the first feature point on the target object. The target line segment 706 is projected onto the reference image 702 to determine an estimated epipolar line 707 with the target intersection point 708 as one end point and the other end point located at the edge of the reference image 702 . Wherein, each point in the estimated epipolar line 707 is a point representing the position of the target object which may be the same as the position of the first feature point representing the target object in spatial position.
图8示出根据本公开实施例的一种预估极线的示意图。如图8所示,在确定参考图像800上的预估极线801后,可以根据每个候选特征点802的第二坐标到预估极线801的最 短距离进行第二次筛选。其中,需要将预估极线801的函数表示和每个候选特征点802的坐标表示转换至同一坐标系下。Fig. 8 shows a schematic diagram of an estimated epipolar line according to an embodiment of the present disclosure. As shown in FIG. 8 , after determining the estimated epipolar line 801 on the reference image 800 , a second screening can be performed according to the shortest distance from the second coordinates of each candidate feature point 802 to the estimated epipolar line 801 . Among them, the function representation of the predicted epipolar line 801 and the coordinate representation of each candidate feature point 802 need to be transformed into the same coordinate system.
图9示出根据本公开实施例的一种特征点匹配方法的流程图。如图9所示,基于图6,步骤S603可以通过步骤S701至S702实现,将结合图9示出的步骤进行说明。Fig. 9 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 9 , based on FIG. 6 , step S603 may be implemented through steps S701 to S702 , which will be described in conjunction with the steps shown in FIG. 9 .
在一种可能的实现方式中,根据每个候选特征点的第二坐标到预估极线的最短距离进行第二次筛选的过程可以根据预先设定的第二阈值实现。In a possible implementation manner, the process of performing the second screening according to the shortest distance from the second coordinates of each candidate feature point to the estimated epipolar line may be implemented according to a preset second threshold.
步骤S901、确定所述至少一个所述候选特征点中最短距离小于第二阈值的候选特征点的数量;所述最短距离为第二坐标与所述预估极线的最短距离:Step S901. Determine the number of candidate feature points whose shortest distance is less than a second threshold among the at least one candidate feature point; the shortest distance is the shortest distance between the second coordinate and the estimated epipolar line:
步骤S902、在所述最短距离小于第二阈值的候选特征点的数量为一的情况下,将所述最短距离小于第二阈值的候选特征点作为目标特征点Step S902. When the number of candidate feature points whose shortest distance is less than the second threshold is one, use the candidate feature points whose shortest distance is less than the second threshold as target feature points
步骤S903、在所述最短距离小于第二阈值的候选特征点的数量大于一的情况下,在所述最短距离小于第二阈值的候选特征点中确定目标特征点。Step S903 , if the number of candidate feature points whose shortest distance is less than a second threshold is greater than one, determine a target feature point among candidate feature points whose shortest distance is less than a second threshold.
在一种可能的实现方式中,第二阈值表征可能与第一特征点匹配的第二特征点与预估极线的最大距离,以从空间位置上筛选得到与第一特征点匹配的第二特征点。在筛选得到最短距离大于第二阈值的候选特征点数量仅为一的情况下,可以直接确定该通过筛选的候选特征点空间位置和局部特征上均与第一特征点匹配,确定该候选特征点为目标特征点。在筛选得到最短距离大于第二阈值的候选特征点数量大于一的情况下,可以认为空间位置和局部特征均与第一特征点匹配的候选特征点为多个,需要在该多个候选特征点中筛选得到匹配概率最大的候选特征点作为目标特征点。示例性的,在全部候选特征点未通过第二次筛选的情况下,可以结束特征点匹配过程,确定当前参考图像上不存在与第一特征点匹配的第二特征点。In a possible implementation, the second threshold represents the maximum distance between the second feature point that may match the first feature point and the estimated epipolar line, so as to filter out the second feature point that matches the first feature point from the spatial position. Feature points. In the case that the number of candidate feature points with the shortest distance greater than the second threshold is only one, it can be directly determined that the candidate feature points that pass the screening match the first feature point in terms of spatial position and local features, and determine the candidate feature point is the target feature point. When the number of candidate feature points with the shortest distance greater than the second threshold is greater than one, it can be considered that there are multiple candidate feature points whose spatial position and local features match the first feature point. The candidate feature point with the highest matching probability is selected as the target feature point. Exemplarily, in the case that all candidate feature points fail the second screening, the feature point matching process may be ended, and it is determined that there is no second feature point matching the first feature point on the current reference image.
在一种可能的实现方式中,由于在特征点匹配的过程中,局部特征为主要评价参数,可以根据通过第二次筛选的多个候选特征点与第一特征点的相似参数确定目标特征点。也就是说,当筛选得到最短距离大于第二阈值的候选特征点数量大于一时,可以通过步骤S9031实现上述所述在所述最短距离小于第二阈值的候选特征点中确定目标特征点。In a possible implementation, since the local feature is the main evaluation parameter in the feature point matching process, the target feature point can be determined according to the similarity parameters between multiple candidate feature points and the first feature point after the second screening . That is to say, when the number of candidate feature points whose shortest distance is greater than the second threshold is greater than one, the above-mentioned determination of the target feature point among the candidate feature points whose shortest distance is smaller than the second threshold can be implemented through step S9031.
步骤S9031、在最短距离小于第二阈值的候选特征点中,确定相似参数最大的候选特征点为目标特征点。Step S9031, among the candidate feature points whose shortest distance is smaller than the second threshold, determine the candidate feature point with the largest similarity parameter as the target feature point.
图10示出根据本公开实施例的一种确定目标特征点过程的示意图。如图10所示,本公开实施例在确定目标图像和参考图像后,确定目标图像上需要进行特征点匹配的第一特征点1001和参考图像上待匹配的至少一个第二特征点1002。先根据第一特征点1001和每个第二特征点1002的局部特征相似参数进行第一次筛选,从至少一个第二特征点1002中筛选得到至少一个候选特征点1003。再根据每个候选特征点1003与第一特征点1001的空间位置匹配程度进行第二次筛选,并确定通过筛选的候选特征点1003为匹配特征点1004。确定匹配特征点数量1005,并根据匹配特征点数量1005确定与第一特征点1001匹配的目标特征点。其中,在匹配特征点数量1005等于1的情况下,可以直接确定该匹配特征点1004为目标特征点1006,即通过第二次筛选的候选特征点1003为目标特征点。在匹配特征点数量1005大于1的情况下,可以确定相似参数最大的匹配特征点1004为目标特征点1007,即与第一特征点1001局部特征相似参数最高的候选特征点1003为目标特征点。Fig. 10 shows a schematic diagram of a process of determining target feature points according to an embodiment of the present disclosure. As shown in FIG. 10 , in the embodiment of the present disclosure, after the target image and the reference image are determined, a first feature point 1001 to be matched on the target image and at least one second feature point 1002 to be matched on the reference image are determined. The first screening is performed according to the local feature similarity parameters of the first feature point 1001 and each second feature point 1002 , and at least one candidate feature point 1003 is obtained from at least one second feature point 1002 . A second screening is performed according to the matching degree of each candidate feature point 1003 with the first feature point 1001 in space, and the candidate feature points 1003 that pass the screening are determined as matching feature points 1004 . Determine the number of matching feature points 1005, and determine the target feature point matching the first feature point 1001 according to the number of matching feature points 1005. Wherein, when the number of matching feature points 1005 is equal to 1, the matching feature point 1004 can be directly determined as the target feature point 1006, that is, the candidate feature point 1003 that has passed the second screening is the target feature point. When the number of matching feature points 1005 is greater than 1, the matching feature point 1004 with the largest similarity parameter can be determined as the target feature point 1007, that is, the candidate feature point 1003 with the highest local feature similarity parameter with the first feature point 1001 is the target feature point.
本公开实施例在进行特征点匹配时,先根据特征点的局部特征相似程度进行第一次筛选,再根据特征点的空间位置进行第二次筛选,解决了仅基于局部特征进行匹配导致匹配结果偏差较大的问题,能够准确的匹配两张图像中记录相同信息的点。In the embodiment of the present disclosure, when performing feature point matching, the first screening is performed according to the similarity degree of the local features of the feature points, and then the second screening is performed according to the spatial position of the feature points, which solves the problem of matching results only based on local features. The problem of large deviation can accurately match the points that record the same information in the two images.
图11示出根据本公开实施例的一种特征点匹配方法的流程图。如图11所示,本公开实施例的特征点匹配方法包括以下步骤S1101至S104。Fig. 11 shows a flowchart of a feature point matching method according to an embodiment of the present disclosure. As shown in FIG. 11 , the feature point matching method of the embodiment of the present disclosure includes the following steps S1101 to S104.
步骤S1101、对特征点进行最近邻检索。Step S1101, performing nearest neighbor search on the feature points.
在一种可能的实现方式中,对于目标图像上的一个特征点(对应上述实施例中的第一 特征点),先通过最近邻检索找到该特征点在参考图像上描述子最接近的至少一个参考特征点(对应上述实施例中的第二特征点),并按照描述子的距离大小对每一个参考特征点进行排序,作为候选特征点。In a possible implementation, for a feature point on the target image (corresponding to the first feature point in the above-mentioned embodiment), first find at least one of the closest descriptors of the feature point on the reference image through nearest neighbor search. Reference feature points (corresponding to the second feature point in the above embodiment), and sort each reference feature point according to the distance of the descriptor, as a candidate feature point.
步骤S1102、对候选特征点进行几何约束筛选。Step S1102, performing geometric constraint screening on the candidate feature points.
在一种可能的实现方式中,在获得至少一个候选特征点后,首先,结合目标图像上的该特征点的坐标以及目标图像与参考图像之间的相对位置关系,通过对极几何找到该特征点在参考图像上对应的预估极线。然后,确定候选特征点与预估极线的距离。最后,基于每一个候选特征点与预估极线之间的距离,根据预先设定的阈值,对每一个候选特征点进行筛选,保留与预估极线距离小于阈值的候选特征点。In a possible implementation, after obtaining at least one candidate feature point, firstly, combining the coordinates of the feature point on the target image and the relative positional relationship between the target image and the reference image, the feature is found through epipolar geometry Points on the reference image correspond to the estimated epipolar lines. Then, determine the distance between the candidate feature point and the estimated epipolar line. Finally, based on the distance between each candidate feature point and the estimated epipolar line, each candidate feature point is screened according to a preset threshold, and the candidate feature points whose distance from the estimated epipolar line is smaller than the threshold are retained.
在一种可能的实现方式中,对每一个候选特征点进行筛选的过程,可以通过批量计算候选特征点与该特征点之间的对极几何误差的方式实现。在候选特征点数量固定的情况下,可以通过计算效率较高的矩阵运算确定候选特征点与该特征点之间的对极几何误差。In a possible implementation manner, the process of screening each candidate feature point may be implemented by calculating the epipolar geometric error between the candidate feature point and the feature point in batches. When the number of candidate feature points is fixed, the epipolar geometric error between the candidate feature point and the feature point can be determined by matrix operation with high computational efficiency.
步骤S1103、匹配点的选择。Step S1103, selection of matching points.
在一种可能的实现方式中,该特征点对应的匹配点(对应上述实施例中的目标特征点)为候选特征点中描述子与该特征点最接近的一个参考特征点。在所有候选特征点都在步骤S1102中被剔除的情况下,则认为在参考图像中没有找到与该特征点对应的参考特征点。本公开实施例中,基于目标图像和参考图像之间相对位姿的先验,为最近邻匹配构建约束,引导两张图像之间特征点和参考特征点的最近临匹配。在最近临匹配的过程中,对于目标图像中的一个特征点,先确定该特征点在参考图像中特征距离最接近的一系列候选特征点,再将候选特征点中符合极线约束范围,且特征最接近的一个参考特征点作为该特征点的匹配点。从而可以有效减少由于局部特征相似而导致的特征点与参考特征点之间的误匹配。In a possible implementation manner, the matching point corresponding to the feature point (corresponding to the target feature point in the above embodiment) is a reference feature point whose descriptor is closest to the feature point among the candidate feature points. In the case that all candidate feature points are eliminated in step S1102, it is considered that no reference feature point corresponding to the feature point is found in the reference image. In the embodiment of the present disclosure, based on the prior of the relative pose between the target image and the reference image, constraints are constructed for the nearest neighbor matching to guide the nearest neighbor matching of the feature points between the two images and the reference feature points. In the process of nearest neighbor matching, for a feature point in the target image, a series of candidate feature points with the closest feature distance in the reference image are first determined, and then the candidate feature points conform to the epipolar line constraint range, and The closest reference feature point of the feature is used as the matching point of the feature point. Therefore, the mismatch between feature points and reference feature points caused by the similarity of local features can be effectively reduced.
可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例。本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。It can be understood that the above-mentioned method embodiments mentioned in this disclosure can all be combined with each other to form a combined embodiment without violating the principle and logic. Those skilled in the art can understand that, in the above method in the specific implementation manner, the specific execution order of each step should be determined according to its function and possible internal logic.
此外,本公开还提供了特征点匹配装置、电子设备、计算机可读存储介质、程序,上述均可用来实现本公开提供的任意一种特征点匹配方法,相应技术方案和描述,请参见方法部分的相应记载。In addition, the present disclosure also provides feature point matching devices, electronic equipment, computer-readable storage media, and programs, all of which can be used to implement any of the feature point matching methods provided in the present disclosure. For corresponding technical solutions and descriptions, please refer to the method section corresponding record.
图12示出根据本公开实施例的一种特征点匹配装置的示意图,如图12所示,本公开实施例的特征点匹配装置包括:第一信息确定部分1201、第二信息确定部分1202、第一筛选部分1203和第二筛选部分1204。FIG. 12 shows a schematic diagram of a feature point matching device according to an embodiment of the present disclosure. As shown in FIG. The first screening part 1203 and the second screening part 1204 .
第一信息确定部分1201,被配置为确定目标图像上的第一特征点,以及所述第一特征点的第一坐标和第一描述子,所述第一坐标表征所述第一特征点在所述目标图像上的位置,所述第一描述子表征所述第一特征点的特征;The first information determining part 1201 is configured to determine the first feature point on the target image, as well as the first coordinates and the first descriptor of the first feature point, the first coordinates represent the first feature point in The position on the target image, the first descriptor characterizes the feature of the first feature point;
第二信息确定部分1202,被配置为确定参考图像上的至少一个第二特征点,以及每个所述第二特征点的第二坐标和第二描述子,所述第二坐标表征所述第二特征点在所述参考图像上的位置,所述第二描述子表征所述第二特征点的特征;The second information determining part 1202 is configured to determine at least one second feature point on the reference image, as well as the second coordinates and the second descriptor of each of the second feature points, the second coordinates representing the first The position of the two feature points on the reference image, the second descriptor characterizes the features of the second feature point;
第一筛选部分1203,被配置为根据所述第一描述子和每个所述第二描述子对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点;The first screening part 1203 is configured to perform a first screening on at least one of the second feature points according to the first descriptor and each of the second descriptors to obtain at least one candidate feature point;
第二筛选部分1204,被配置为根据所述第一坐标和每个所述候选特征点的第二坐标对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。The second screening part 1204 is configured to perform a second screening on at least one of the candidate feature points according to the first coordinates and the second coordinates of each of the candidate feature points to obtain target feature points.
在一种可能的实现方式中,所述第一筛选部分1203包括:参数确定子部分,被配置为分别确定每个所述第二描述子和所述第一描述子的相似参数;第一筛选子部分,被配置为根据所述相似参数对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点。In a possible implementation manner, the first screening part 1203 includes: a parameter determination subsection configured to respectively determine similar parameters of each of the second descriptor and the first descriptor; The subsection is configured to perform a first screening on at least one of the second feature points according to the similarity parameter to obtain at least one candidate feature point.
在一种可能的实现方式中,所述参数确定子部分,包括:参数确定部分,被配置为分 别确定每个所述第二描述子与所述第一描述子的距离向量,得到每个所述第二描述子和所述第一描述子的相似参数。In a possible implementation manner, the parameter determination subpart includes: a parameter determination part configured to respectively determine a distance vector between each of the second descriptors and the first descriptor, and obtain each of the Similar parameters of the second descriptor and the first descriptor.
在一种可能的实现方式中,所述第一筛选子部分,包括:描述子筛选部分,被配置为确定和所述第一描述子的相似参数小于第一阈值的第二描述子;第一候选点确定部分,被配置为将所述相似参数小于第一阈值的第二描述子对应的第二特征点作为候选特征点。In a possible implementation manner, the first screening subpart includes: a descriptor screening part configured to determine a second descriptor whose similar parameter to the first descriptor is smaller than a first threshold; the first The candidate point determining part is configured to use the second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold as a candidate feature point.
在一种可能的实现方式中,所述第一筛选子部分,包括:第二候选点确定部分,被配置为对每个所述第二描述子对应的相似参数从小到大排序,并获取前预设数量个所述第二描述子对应的第二特征点为候选特征点。In a possible implementation manner, the first screening subpart includes: a second candidate point determination part configured to sort the similar parameters corresponding to each of the second descriptors from small to large, and obtain the previous The second feature points corresponding to the preset number of second descriptors are candidate feature points.
在一种可能的实现方式中,所述第二筛选部分1204包括:第二筛选子部分,被配置为根据所述第一坐标、所述第二坐标以及相对位置关系,对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点;所述相对位置关系为所述目标图像和所述参考图像的相对位置关系。In a possible implementation manner, the second screening part 1204 includes: a second screening subsection configured to, according to the first coordinates, the second coordinates and the relative positional relationship, screen at least one of the candidate The feature points are screened for the second time to obtain target feature points matching the first feature points; the relative positional relationship is the relative positional relationship between the target image and the reference image.
在一种可能的实现方式中,所述第二筛选子部分包括:位置确定部分,被配置为确定所述目标图像的第一位置,并确定所述参考图像的第二位置;极线确定部分,被配置为根据所述第一位置、所述第二位置和所述第一坐标基于对极几何确定所述第一特征点在所述参考图像上的预估极线;特征点筛选部分,被配置为根据每个所述候选特征点的第二坐标与所述预估极线的最短距离对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。In a possible implementation manner, the second screening subsection includes: a position determining part configured to determine a first position of the target image and determine a second position of the reference image; an epipolar line determining part , configured to determine an estimated epipolar line of the first feature point on the reference image based on epipolar geometry according to the first position, the second position and the first coordinate; the feature point screening part, It is configured to perform a second screening on at least one of the candidate feature points according to the shortest distance between the second coordinates of each of the candidate feature points and the estimated epipolar line, to obtain a target matching the first feature point Feature points.
在一种可能的实现方式中,所述特征点筛选部分包括:距离确定子部分,被配置为确定所述至少一个所述候选特征点中最短距离小于第二阈值的候选特征点的数量;所述最短距离为第二坐标与所述预估极线的最短距离;第一特征点确定子部分,被配置为在所述最短距离小于第二阈值的候选特征点的数量为一的情况下,将所述最短距离小于第二阈值的候选特征点作为目标特征点;第二特征点确定子部分,被配置为在所述最短距离小于第二阈值的候选特征点的数量大于一的情况下,在所述最短距离小于第二阈值的候选特征点中确定目标特征点。In a possible implementation manner, the feature point screening part includes: a distance determination subsection configured to determine the number of candidate feature points whose shortest distance among the at least one candidate feature point is smaller than a second threshold; The shortest distance is the shortest distance between the second coordinate and the estimated epipolar line; the first feature point determining subsection is configured to be one when the number of candidate feature points whose shortest distance is less than a second threshold is one, The candidate feature points whose shortest distance is less than a second threshold are used as target feature points; the second feature point determining subsection is configured to, when the number of candidate feature points whose shortest distance is less than a second threshold is greater than one, A target feature point is determined among candidate feature points whose shortest distance is smaller than a second threshold.
在一种可能的实现方式中,所述第二特征点确定子部分包括:第三特征点确定子部分,被配置为在所述最短距离小于第二阈值的候选特征点中,确定所述相似参数最大的候选特征点为目标特征点。In a possible implementation manner, the second feature point determination subsection includes: a third feature point determination subsection configured to determine the similarity among the candidate feature points whose shortest distance is smaller than a second threshold. The candidate feature point with the largest parameter is the target feature point.
在一些实施例中,本公开实施例提供的装置具有的功能或包含的部分可以被配置为执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述。In some embodiments, the functions or parts included in the apparatus provided by the embodiments of the present disclosure may be configured to execute the methods described in the above method embodiments, and for specific implementation, refer to the descriptions of the above method embodiments.
本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。Embodiments of the present disclosure also provide a computer-readable storage medium, on which computer program instructions are stored, and the above-mentioned method is implemented when the computer program instructions are executed by a processor. Computer readable storage media may be volatile or nonvolatile computer readable storage media.
本公开实施例还提出一种电子设备,包括:处理器;被配置为存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。An embodiment of the present disclosure also proposes an electronic device, including: a processor; a memory configured to store instructions executable by the processor; wherein the processor is configured to invoke the instructions stored in the memory to execute the above method.
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。An embodiment of the present disclosure also provides a computer program product, including computer-readable codes, or a non-volatile computer-readable storage medium carrying computer-readable codes, when the computer-readable codes are stored in a processor of an electronic device When running in the electronic device, the processor in the electronic device executes the above method.
电子设备可以被提供为终端、服务器或其它形态的设备。Electronic devices may be provided as terminals, servers, or other forms of devices.
图13示出根据本公开实施例的一种电子设备1300的示意图。例如,电子设备1300可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等终端。Fig. 13 shows a schematic diagram of an electronic device 1300 according to an embodiment of the present disclosure. For example, the electronic device 1300 may be a terminal such as a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, or a personal digital assistant.
参照图13,电子设备1300可以包括以下一个或多个组件:处理组件1301,存储器1302,电源组件1303,多媒体组件1304,音频组件1305,输入/输出(Input/Ouput,I/O)接口1306,传感器组件1307,以及通信组件1308。Referring to FIG. 13 , electronic device 1300 may include one or more of the following components: processing component 1301, memory 1302, power supply component 1303, multimedia component 1304, audio component 1305, input/output (Input/Ouput, I/O) interface 1306, A sensor component 1307, and a communication component 1308.
处理组件1301通常控制电子设备1300的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1301可以包括一个或多个处理器1309来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1301可以包括一个或多个部分,便于处理组件1301和其他组件之间的交互。例如,处理组件1301可以包括多媒体部分,以方便多媒体组件1304和处理组件1301之间的交互。The processing component 1301 generally controls the overall operations of the electronic device 1300, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 1301 may include one or more processors 1309 to execute instructions to complete all or part of the steps of the above method. Additionally, processing component 1301 may include one or more components that facilitate interaction between processing component 1301 and other components. For example, processing component 1301 may include a multimedia portion to facilitate interaction between multimedia component 1304 and processing component 1301 .
存储器1302被配置为存储各种类型的数据以支持在电子设备1300的操作。这些数据的示例包括用于在电子设备1300上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random-Access Memory,SRAM),电可擦除可编程只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM),可编程只读存储器(Programmable read-only memory,PROM),只读存储器(Read-Only Memory,ROM),磁存储器,快闪存储器,磁盘或光盘。The memory 1302 is configured to store various types of data to support operations at the electronic device 1300 . Examples of such data include instructions for any application or method operating on the electronic device 1300, contact data, phonebook data, messages, pictures, videos, and the like. The memory 1302 can be realized by any type of volatile or non-volatile storage device or their combination, such as Static Random-Access Memory (Static Random-Access Memory, SRAM), Electrically Erasable Programmable Read-Only Memory (Electrically -Erasable Programmable Read-Only Memory, EEPROM), Erasable Programmable Read-Only Memory (Erasable Programmable Read-Only Memory, EPROM), Programmable Read-Only Memory (Programmable read-only memory, PROM), Read Only Memory (Read -Only Memory, ROM), magnetic memory, flash memory, magnetic disk or optical disk.
电源组件1303为电子设备1300的各种组件提供电力。电源组件1303可以包括电源管理系统,一个或多个电源,及其他与为电子设备1300生成、管理和分配电力相关联的组件。The power supply component 1303 provides power to various components of the electronic device 1300 . Power components 1303 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for electronic device 1300 .
多媒体组件1304包括在所述电子设备1300和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(Liquid Crystal Display,LCD)和触摸面板(Touch Panel,TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1304包括以下至少之一:前置摄像头和后置摄像头。在电子设备1300处于操作模式,如拍摄模式或视频模式的情况下,前置摄像头和后置摄像头中的至少之一可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。The multimedia component 1304 includes a screen providing an output interface between the electronic device 1300 and the user. In some embodiments, the screen may include a liquid crystal display (Liquid Crystal Display, LCD) and a touch panel (Touch Panel, TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from a user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensor may not only sense a boundary of a touch or swipe action, but also detect a duration and pressure associated with the touch or swipe operation. In some embodiments, the multimedia component 1304 includes at least one of the following: a front camera and a rear camera. When the electronic device 1300 is in an operation mode, such as a shooting mode or a video mode, at least one of the front camera and the rear camera can receive external multimedia data. Each front camera and rear camera can be a fixed optical lens system or have focal length and optical zoom capability.
音频组件1305被配置为输出和输入音频信号,或者输出音频信号,或者输入音频信号。例如,音频组件1305包括一个麦克风(Microphone,MIC),当电子设备1300处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被存储在存储器1302或经由通信组件1308发送。在一些实施例中,音频组件1305还包括一个扬声器,被配置为输出音频信号。The audio component 1305 is configured to output and input audio signals, or to output audio signals, or to input audio signals. For example, the audio component 1305 includes a microphone (Microphone, MIC), which is configured to receive external audio signals when the electronic device 1300 is in operation modes, such as calling mode, recording mode and voice recognition mode. Received audio signals may be stored in memory 1302 or sent via communication component 1308 . In some embodiments, the audio component 1305 also includes a speaker configured to output audio signals.
I/O接口1306为处理组件1301和外围接口部分之间提供接口,上述外围接口部分可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。The I/O interface 1306 provides an interface between the processing component 1301 and the peripheral interface part, and the above peripheral interface part may be a keyboard, a click wheel, a button, and the like. These buttons may include, but are not limited to: a home button, volume buttons, start button, and lock button.
传感器组件1307包括一个或多个传感器,被配置为为电子设备1300提供各个方面的状态评估。例如,传感器组件1307可以检测到电子设备1300的打开/关闭状态,组件的相对定位,例如所述组件为电子设备1200的显示器和小键盘,传感器组件1307还可以检测电子设备1300或电子设备1300一个组件的位置改变,用户与电子设备1300接触的存在或不存在,电子设备1300方位或加速/减速和电子设备1300的温度变化。传感器组件1307可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1307还可以包括光传感器,如互补金属氧化物半导体(Complementary Metal-Oxide-Semiconductor,CMOS)或电荷耦合装置(Charge Coupled Device,CCD)图像传感器,被配置为在成像应用中使用。在一些实施例中,该传感器组件1307还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。 Sensor assembly 1307 includes one or more sensors configured to provide various aspects of status assessment for electronic device 1300 . For example, the sensor component 1307 can detect the open/close state of the electronic device 1300, the relative positioning of components, such as the display and the keypad of the electronic device 1200, the sensor component 1307 can also detect the electronic device 1300 or a Changes in position of components, presence or absence of user contact with electronic device 1300 , electronic device 1300 orientation or acceleration/deceleration and temperature changes in electronic device 1300 . Sensor assembly 1307 may include a proximity sensor configured to detect the presence of nearby objects in the absence of any physical contact. The sensor assembly 1307 may also include a light sensor, such as a Complementary Metal-Oxide-Semiconductor (CMOS) or Charge Coupled Device (CCD) image sensor, configured for use in imaging applications. In some embodiments, the sensor component 1307 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor or a temperature sensor.
通信组件1308被配置为便于电子设备1300和其他设备之间有线或无线方式的通信。电子设备1300可以接入基于通信标准的无线网络,如无线网络(Wireless Network),第二 代移动通信技术(Second Generation,2G)或第三代移动通信技术(3rd-Generation,3G),或它们的组合。在一个示例性实施例中,通信组件1308经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件1308还包括近场通信(Near Field Communication,NFC)部分,以促进短程通信。例如,在NFC部分可基于射频识别(Radio Frequency Identification,RFID)技术,红外数据协会(Infrared Data Association,IrDA)技术,超宽带(Ultra Wide Band,UWB)技术,蓝牙(Bluetooth,BT)技术和其他技术来实现。The communication component 1308 is configured to facilitate wired or wireless communication between the electronic device 1300 and other devices. The electronic device 1300 can access a wireless network based on a communication standard, such as a wireless network (Wireless Network), a second-generation mobile communication technology (Second Generation, 2G) or a third-generation mobile communication technology (3rd-Generation, 3G), or their The combination. In an exemplary embodiment, the communication component 1308 receives broadcast signals or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 1308 also includes a Near Field Communication (NFC) portion to facilitate short-range communication. For example, the NFC part can be based on Radio Frequency Identification (RFID) technology, Infrared Data Association (Infrared Data Association, IrDA) technology, Ultra Wide Band (Ultra Wide Band, UWB) technology, Bluetooth (Bluetooth, BT) technology and other technology to achieve.
在示例性实施例中,电子设备1300可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理设备(Digital Signal Processing Device,DSPD)、可编程逻辑器件(Programmable Logic Device,PLD)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、控制器、微控制器、微处理器或其他电子元件实现,被配置为执行上述方法。In an exemplary embodiment, the electronic device 1300 may be implemented by one or more Application Specific Integrated Circuits (Application Specific Integrated Circuit, ASIC), Digital Signal Processor (Digital Signal Processor, DSP), Digital Signal Processing Device (Digital Signal Processing Device , DSPD), Programmable Logic Device (Programmable Logic Device, PLD), Field Programmable Gate Array (Field Programmable Gate Array, FPGA), controller, microcontroller, microprocessor, or other electronic component implementation, configured to execute the above method.
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1302,上述计算机程序指令可由电子设备1300的处理器1309执行以完成上述方法。In an exemplary embodiment, there is also provided a non-volatile computer-readable storage medium, such as a memory 1302 including computer program instructions, which can be executed by the processor 1309 of the electronic device 1300 to implement the above method.
图14示出根据本公开实施例的另一种电子设备1400的示意图。例如,电子设备1400可以被提供为一服务器。参照图14,电子设备1400包括处理组件1401,还包括一个或多个处理器,以及由存储器1402所代表的存储器资源,被配置为存储可由处理组件1401的执行的指令,例如应用程序。存储器1402中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的部分。此外,处理组件1401被配置为执行指令,以执行上述方法。FIG. 14 shows a schematic diagram of another electronic device 1400 according to an embodiment of the present disclosure. For example, the electronic device 1400 may be provided as a server. Referring to FIG. 14 , an electronic device 1400 includes a processing component 1401 , and also includes one or more processors, and a memory resource represented by a memory 1402 configured to store instructions executable by the processing component 1401 , such as application programs. An application program stored in memory 1402 may include one or more portions each corresponding to a set of instructions. In addition, the processing component 1401 is configured to execute instructions to perform the above method.
电子设备1400还可以包括一个电源组件1403被配置为执行电子设备1400的电源管理,一个有线或无线网络接口1404被配置为将电子设备1400连接到网络,和一个I/O接口1405。电子设备1400可以操作基于存储在存储器1402的操作系统,例如微软服务器操作系统(Windows ServerTM),基于图形用户界面操作系统(Mac OS XTM),多用户多进程的计算机操作系统(UnixTM),自由和开放原代码的类Unix操作系统(LinuxTM),开放原代码的类Unix操作系统(FreeBSDTM)或类似。The electronic device 1400 may also include a power component 1403 configured to perform power management of the electronic device 1400 , a wired or wireless network interface 1404 configured to connect the electronic device 1400 to a network, and an I/O interface 1405 . Electronic device 1400 can operate based on the operating system stored in memory 1402, such as Microsoft server operating system (Windows Server™), based on graphical user interface operating system (Mac OS X™), multi-user multi-process computer operating system (Unix™), free and An open source Unix-like operating system (LinuxTM), an open source Unix-like operating system (FreeBSDTM), or similar.
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1402,上述计算机程序指令可由电子设备1400的处理组件1401执行以完成上述方法。In an exemplary embodiment, there is also provided a non-volatile computer-readable storage medium, such as a memory 1402 including computer program instructions, which can be executed by the processing component 1401 of the electronic device 1400 to implement the above method.
本公开包括以下至少之一:系统、方法和计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。The present disclosure includes at least one of the following: a system, a method, and a computer program product. A computer program product may include a computer readable storage medium having computer readable program instructions thereon for causing a processor to implement various aspects of the present disclosure.
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(Random-Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)或闪存、静态随机存取存储器(Static Random-Access Memory,SRAM)、便携式压缩盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、数字多功能盘(Digital Versatile Disc,DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。A computer readable storage medium may be a tangible device that can retain and store instructions for use by an instruction execution device. A computer readable storage medium may be, for example, but is not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. Examples (non-exhaustive list) of computer-readable storage media include: portable computer discs, hard drives, Random-Access Memory (RAM), Read-Only Memory (ROM), erasable Programmable Read-Only Memory (Erasable Programmable Read-Only Memory, EPROM) or flash memory, Static Random-Access Memory (Static Random-Access Memory, SRAM), Portable Compression Disk Read-Only Memory (Compact Disc Read-Only Memory, CD-ROM ), Digital Versatile Disc (DVD), memory sticks, floppy disks, mechanically encoded devices, such as punched cards or raised structures in grooves with instructions stored thereon, and any suitable combination of the foregoing. As used herein, computer-readable storage media are not to be construed as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., pulses of light through fiber optic cables), or transmitted electrical signals.
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络,例如因特网、局域网、广域网和无线网中的至少之一下载到外部计算机或外部存储设备。网络可以包括以下至少之一:铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to a respective computing/processing device, or downloaded to an external computer or external storage device over a network, such as at least one of the Internet, a local area network, a wide area network, and a wireless network . The network may include at least one of: copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and edge servers. A network adapter card or a network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing/processing device .
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(Instruction Set Architectures,ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(Local Area Network,LAN)或广域网(Wide Area Network,WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(Field Programmable Gate Array,FPGA)或可编程逻辑阵列(Programmable Logic Array,PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。Computer program instructions for performing the operations of the present disclosure may be assembly instructions, Instruction Set Architectures (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or in the form of one or more source or object code written in any combination of programming languages, including object-oriented programming languages—such as Smalltalk, C++, etc., and conventional procedural programming languages—such as the “C” language or similar programming languages. Computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server implement. In cases involving a remote computer, the remote computer can be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or it can be connected to an external computer such as use an Internet service provider to connect via the Internet). In some embodiments, electronic circuits, such as programmable logic circuits, field programmable gate arrays (Field Programmable Gate Array, FPGA) or programmable logic arrays (Programmable Logic Array, PLA), the electronic circuit can execute computer-readable program instructions, thereby implementing various aspects of the present disclosure.
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和框图中的至少之一描述了本公开的各个方面。应当理解,流程图和框图中的至少之一的每个方框,以及流程图和框图中各方框的组合,都可以由计算机可读程序指令实现。Aspects of the present disclosure are described herein with reference to at least one of flowchart illustrations and block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of at least one of the flowchart illustrations and block diagrams, and combinations of blocks in the flowchart illustrations and block diagrams, can be implemented by computer-readable program instructions.
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和其他设备中的至少之一以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和框图中的至少一个方框中规定的功能/动作的各个方面的指令。These computer-readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine such that when executed by the processor of the computer or other programmable data processing apparatus , producing an apparatus for realizing the functions/actions specified in one or more blocks in the flowchart and block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause at least one of computers, programmable data processing devices and other devices to work in a specific way, so that the computer-readable The medium then includes an article of manufacture including instructions for implementing various aspects of the functions/acts specified in at least one block in the flowcharts and block diagrams.
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和框图中的至少一个方框中规定的功能/动作。It is also possible to load computer-readable program instructions into a computer, other programmable data processing device, or other equipment, so that a series of operational steps are performed on the computer, other programmable data processing device, or other equipment to produce a computer-implemented process , so that instructions executed on computers, other programmable data processing devices, or other devices implement the functions/actions specified in at least one block in the flowcharts and block diagrams.
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个部分、程序段或指令的一部分,所述部分、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和流程图中的至少之一的每个方框、以及框图和流程图中至少之一的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a portion, a program segment, or a portion of an instruction that includes one or more Executable instructions. In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved. It is also to be noted that each block of at least one of the block diagrams and flowcharts, and combinations of blocks of at least one of the block diagrams and flowcharts, may be implemented with a dedicated hardware-based computer that performs specified functions or actions. system, or it may be implemented by a combination of special purpose hardware and computer instructions.
该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。The computer program product can be specifically realized by means of hardware, software or a combination thereof. In an optional embodiment, the computer program product is embodied as a computer storage medium, and in another optional embodiment, the computer program product is embodied as a software product, such as a software development kit (Software Development Kit, SDK) etc. wait.
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考。The above descriptions of the various embodiments tend to emphasize the differences between the various embodiments, and the same or similar points can be referred to each other.
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。Those skilled in the art can understand that in the above method of specific implementation, the writing order of each step does not mean a strict execution order and constitutes any limitation on the implementation process. The specific execution order of each step should be based on its function and possible The inner logic is OK.
若本公开技术方案涉及个人信息,应用本公开技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本公开技术方案涉及敏感个人信息,应用本公开技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。If the disclosed technical solution involves personal information, the products applying the disclosed technical solution have clearly notified the personal information processing rules and obtained the individual's independent consent before processing personal information. If the disclosed technical solution involves sensitive personal information, the products applying the disclosed technical solution have obtained individual consent before processing sensitive personal information, and at the same time meet the requirement of "express consent". For example, at a personal information collection device such as a camera, a clear and prominent sign is set up to inform that it has entered the scope of personal information collection, and personal information will be collected. If an individual voluntarily enters the collection scope, it is deemed to agree to the collection of his personal information; or On the personal information processing device, when the personal information processing rules are informed with obvious signs/information, personal authorization is obtained through pop-up information or by asking individuals to upload their personal information; among them, the personal information processing rules may include Information such as the information processor, the purpose of personal information processing, the method of processing, and the type of personal information processed.
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本公开中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本公开披露的各实施例。Having described various embodiments of the present disclosure above, the foregoing description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and alterations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The choice of terminology used in this disclosure is intended to best explain the principle of each embodiment, practical application or improvement of technology in the market, or to enable other ordinary skilled in the art to understand each embodiment disclosed in this disclosure .
工业实用性Industrial Applicability
在本公开实施例中,通过确定目标图像上的第一特征点,以及表征第一特征点在目标图像上位置的第一坐标和表征第一特征点特征的第一描述子;同时,确定参考图像上的至少一个第二特征点以及表征每个第二特征点在参考图像上位置的第二坐标和表征第二特征点特征的第二描述子;根据第一描述子和每个第二描述子对至少一个第二特征点进行第一次筛选,得到至少一个候选特征点,再根据第一坐标和每个候选特征点的第二坐标对至少一个候选特征点进行第二次筛选,得到参考图像上与第一特征点匹配的目标特征点。本公开实施例能够根据局部特征和特征点位置进行两次匹配,准确的匹配两张图像中记录相同信息的点。In the embodiment of the present disclosure, by determining the first feature point on the target image, as well as the first coordinate representing the position of the first feature point on the target image and the first descriptor representing the feature of the first feature point; at the same time, determining the reference At least one second feature point on the image, as well as second coordinates representing the position of each second feature point on the reference image and a second descriptor representing the characteristics of the second feature point; according to the first descriptor and each second description Performing a first screening on at least one second feature point to obtain at least one candidate feature point, and then performing a second screening on at least one candidate feature point according to the first coordinates and the second coordinates of each candidate feature point to obtain a reference The target feature point on the image that matches the first feature point. The embodiments of the present disclosure can perform two matchings according to the local features and the positions of the feature points, and accurately match the points that record the same information in the two images.

Claims (21)

  1. 一种特征点匹配方法,所述方法由电子设备执行,所述方法包括:A feature point matching method, the method is performed by an electronic device, and the method includes:
    确定目标图像上的第一特征点,以及所述第一特征点的第一坐标和第一描述子,所述第一坐标表征所述第一特征点在所述目标图像上的位置,所述第一描述子表征所述第一特征点的特征;determining a first feature point on the target image, as well as first coordinates and a first descriptor of the first feature point, the first coordinates representing the position of the first feature point on the target image, the The first descriptor characterizes the feature of the first feature point;
    确定参考图像上的至少一个第二特征点,以及每个所述第二特征点的第二坐标和第二描述子,所述第二坐标表征所述第二特征点在所述参考图像上的位置,所述第二描述子表征所述第二特征点的特征;determining at least one second feature point on the reference image, and second coordinates and second descriptors of each of the second feature points, the second coordinates representing the position of the second feature point on the reference image position, the second descriptor characterizes the feature of the second feature point;
    根据所述第一描述子和每个所述第二描述子对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点;performing a first screening on at least one of the second feature points according to the first descriptor and each of the second descriptors to obtain at least one candidate feature point;
    根据所述第一坐标和每个所述候选特征点的第二坐标对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。Performing a second screening on at least one of the candidate feature points according to the first coordinates and the second coordinates of each of the candidate feature points to obtain a target feature point matching the first feature point.
  2. 根据权利要求1所述的方法,其中,所述根据所述第一描述子和每个所述第二描述子对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点,包括:The method according to claim 1, wherein the first screening is performed on at least one of the second feature points according to the first descriptor and each of the second descriptors to obtain at least one candidate feature point ,include:
    分别确定每个所述第二描述子和所述第一描述子的相似参数;determining the similarity parameters of each of the second descriptor and the first descriptor respectively;
    根据所述相似参数对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点。At least one second feature point is screened for the first time according to the similarity parameter to obtain at least one candidate feature point.
  3. 根据权利要求2所述的方法,其中,所述分别确定每个所述第二描述子和所述第一描述子的相似参数,包括:The method according to claim 2, wherein said determining similar parameters of each of said second descriptor and said first descriptor respectively comprises:
    分别确定每个所述第二描述子与所述第一描述子的距离向量,得到每个所述第二描述子和所述第一描述子的相似参数。Determining the distance vectors between each of the second descriptors and the first descriptor respectively to obtain similar parameters between each of the second descriptors and the first descriptor.
  4. 根据权利要求2或3所述的方法,其中,所述根据所述相似参数对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点,包括:The method according to claim 2 or 3, wherein the first screening of at least one second feature point according to the similarity parameters to obtain at least one candidate feature point includes:
    确定和所述第一描述子的相似参数小于第一阈值的第二描述子;determining a second descriptor whose similar parameter to the first descriptor is smaller than a first threshold;
    将所述相似参数小于第一阈值的第二描述子对应的第二特征点作为候选特征点。The second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold is used as a candidate feature point.
  5. 根据权利要求2或3所述的方法,其中,所述根据所述相似参数对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点,包括:The method according to claim 2 or 3, wherein the first screening of at least one second feature point according to the similarity parameters to obtain at least one candidate feature point includes:
    对每个所述第二描述子对应的相似参数从小到大排序,并获取前预设数量个所述第二描述子对应的第二特征点为候选特征点。The similar parameters corresponding to each of the second descriptors are sorted from small to large, and the second feature points corresponding to the previous preset number of second descriptors are obtained as candidate feature points.
  6. 根据权利要求2至5中任意一项所述的方法,其中,所述根据所述第一坐标和每个所述候选特征点的第二坐标对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点,包括:The method according to any one of claims 2 to 5, wherein the second screening is performed on at least one of the candidate feature points according to the first coordinates and the second coordinates of each of the candidate feature points , to obtain the target feature point matched with the first feature point, including:
    根据所述第一坐标、所述第二坐标以及相对位置关系,对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点;所述相对位置关系为所述目标图像和所述参考图像的相对位置关系。According to the first coordinates, the second coordinates and the relative positional relationship, at least one of the candidate feature points is screened a second time to obtain a target feature point matching the first feature point; the relative positional relationship is the relative positional relationship between the target image and the reference image.
  7. 根据权利要求6所述的方法,其中,所述根据所述第一坐标、所述第二坐标以及所述目标图像和所述参考图像的相对位置关系,对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点,包括:The method according to claim 6, wherein, according to the first coordinates, the second coordinates, and the relative positional relationship between the target image and the reference image, the second step is performed on at least one of the candidate feature points. Secondary screening to obtain target feature points matching the first feature point, including:
    确定所述目标图像的第一位置,并确定所述参考图像的第二位置;determining a first location of the target image, and determining a second location of the reference image;
    根据所述第一位置、所述第二位置和所述第一坐标基于对极几何确定所述第一特征点在所述参考图像上的预估极线;determining an estimated epipolar line of the first feature point on the reference image based on epipolar geometry according to the first position, the second position, and the first coordinate;
    根据每个所述候选特征点的第二坐标与所述预估极线的最短距离,对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。According to the shortest distance between the second coordinates of each of the candidate feature points and the estimated epipolar line, at least one of the candidate feature points is screened a second time to obtain a target feature point that matches the first feature point. .
  8. 根据权利要求7所述的方法,其中,所述根据每个所述候选特征点的第二坐标与 所述预估极线的最短距离,对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点,包括:The method according to claim 7, wherein the second screening is performed on at least one of the candidate feature points according to the shortest distance between the second coordinates of each of the candidate feature points and the estimated epipolar line, Obtaining the target feature point matched with the first feature point, including:
    确定所述至少一个所述候选特征点中最短距离小于第二阈值的候选特征点的数量;所述最短距离为第二坐标与所述预估极线的最短距离;determining the number of candidate feature points whose shortest distance is less than a second threshold among the at least one candidate feature point; the shortest distance is the shortest distance between the second coordinate and the estimated epipolar line;
    在所述最短距离小于第二阈值的候选特征点的数量为一的情况下,将所述最短距离小于第二阈值的候选特征点作为目标特征点;When the number of candidate feature points whose shortest distance is less than a second threshold is one, using the candidate feature points whose shortest distance is less than a second threshold as target feature points;
    在所述最短距离小于第二阈值的候选特征点的数量大于一的情况下,在所述最短距离小于第二阈值的候选特征点中确定目标特征点。If the number of candidate feature points whose shortest distance is smaller than a second threshold is greater than one, determine a target feature point among candidate feature points whose shortest distance is smaller than a second threshold.
  9. 根据权利要求8所述的方法,其中,所述在所述最短距离小于第二阈值的候选特征点中确定目标特征点,包括:The method according to claim 8, wherein said determining a target feature point among candidate feature points whose shortest distance is less than a second threshold comprises:
    在所述最短距离小于第二阈值的候选特征点中,确定所述相似参数最大的候选特征点为目标特征点。Among the candidate feature points whose shortest distance is smaller than a second threshold, determine the candidate feature point with the largest similarity parameter as the target feature point.
  10. 一种特征点匹配装置,所述装置包括:A feature point matching device, said device comprising:
    第一信息确定部分,被配置为确定目标图像上的第一特征点,以及所述第一特征点的第一坐标和第一描述子,所述第一坐标表征所述第一特征点在所述目标图像上的位置,所述第一描述子表征所述第一特征点的特征;The first information determining part is configured to determine a first feature point on the target image, as well as first coordinates and a first descriptor of the first feature point, the first coordinates characterize the first feature point at the The position on the target image, the first descriptor characterizes the feature of the first feature point;
    第二信息确定部分,被配置为确定参考图像上的至少一个第二特征点,以及每个所述第二特征点的第二坐标和第二描述子,所述第二坐标表征所述第二特征点在所述参考图像上的位置,所述第二描述子表征所述第二特征点的特征;The second information determining part is configured to determine at least one second feature point on the reference image, as well as the second coordinates and the second descriptor of each of the second feature points, the second coordinates representing the second The position of the feature point on the reference image, the second descriptor characterizes the feature of the second feature point;
    第一筛选部分,被配置为根据所述第一描述子和每个所述第二描述子对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点;The first screening part is configured to perform a first screening on at least one of the second feature points according to the first descriptor and each of the second descriptors to obtain at least one candidate feature point;
    第二筛选部分,被配置为根据所述第一坐标和每个所述候选特征点的第二坐标对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。The second screening part is configured to perform a second screening on at least one of the candidate feature points according to the first coordinates and the second coordinates of each of the candidate feature points, to obtain the matching of the first feature point Target feature points.
  11. 根据权利要求10所述的装置,其中,所述第一筛选部分还被配置为分别确定每个所述第二描述子和所述第一描述子的相似参数;The apparatus according to claim 10, wherein the first screening part is further configured to determine similar parameters of each of the second descriptor and the first descriptor respectively;
    根据所述相似参数对至少一个所述第二特征点进行第一次筛选,得到至少一个候选特征点。At least one second feature point is screened for the first time according to the similarity parameter to obtain at least one candidate feature point.
  12. 根据权利要求11所述的装置,其中,所述第一筛选部分还被配置为分别计算每个所述第二描述子与所述第一描述子的距离向量,得到每个所述第二描述子和所述第一描述子的相似参数。The device according to claim 11, wherein the first screening part is further configured to separately calculate a distance vector between each of the second descriptors and the first descriptor to obtain each of the second descriptors sub and similar parameters of the first descriptor.
  13. 根据权利要求11或12所述的装置,其中,所述第一筛选部分还被配置为确定和所述第一描述子的相似参数小于第一阈值的第二描述子;The device according to claim 11 or 12, wherein the first screening part is further configured to determine a second descriptor whose similar parameter to the first descriptor is smaller than a first threshold;
    将所述相似参数小于第一阈值的第二描述子对应的第二特征点作为候选特征点。The second feature point corresponding to the second descriptor whose similarity parameter is smaller than the first threshold is used as a candidate feature point.
  14. 根据权利要求11或12所述的装置,其中,所述第一筛选部分还被配置为对每个所述第二描述子对应的相似参数从小到大排序,并获取前预设数量个所述第二描述子对应的第二特征点为候选特征点。The device according to claim 11 or 12, wherein the first screening part is further configured to sort the similar parameters corresponding to each of the second descriptors from small to large, and obtain the first preset number of the The second feature point corresponding to the second descriptor is a candidate feature point.
  15. 根据权利要求11至14中任意一项所述的装置,其中,所述第二筛选部分还被配置为根据所述第一坐标、所述第二坐标以及相对位置关系,对至少一个所述候选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点;所述相对位置关系为所述目标图像和所述参考图像的相对位置关系。The device according to any one of claims 11 to 14, wherein the second screening part is further configured to, according to the first coordinates, the second coordinates and the relative positional relationship, at least one of the candidate The feature points are screened for the second time to obtain target feature points matching the first feature points; the relative positional relationship is the relative positional relationship between the target image and the reference image.
  16. 根据权利要求15所述的装置,其中,所述第二筛选部分还被配置为确定所述目标图像的第一位置,并确定所述参考图像的第二位置;The apparatus of claim 15, wherein the second screening portion is further configured to determine a first position of the target image, and determine a second position of the reference image;
    根据所述第一位置、所述第二位置和所述第一坐标基于对极几何确定所述第一特征点在所述参考图像上的预估极线;determining an estimated epipolar line of the first feature point on the reference image based on epipolar geometry according to the first position, the second position, and the first coordinate;
    根据每个所述候选特征点的第二坐标与所述预估极线的最短距离,对至少一个所述候 选特征点进行第二次筛选,得到与所述第一特征点匹配的目标特征点。According to the shortest distance between the second coordinates of each of the candidate feature points and the estimated epipolar line, at least one of the candidate feature points is screened a second time to obtain a target feature point that matches the first feature point. .
  17. 根据权利要求16所述的装置,其中,所述第二筛选部分还被配置为确定所述至少一个所述候选特征点中最短距离小于第二阈值的候选特征点的数量;所述最短距离为第二坐标与所述预估极线的最短距离;The apparatus according to claim 16, wherein the second screening part is further configured to determine the number of candidate feature points whose shortest distance is smaller than a second threshold among the at least one of the candidate feature points; the shortest distance is The shortest distance between the second coordinate and the estimated epipolar line;
    在所述最短距离小于第二阈值的候选特征点的数量为一的情况下,将所述最短距离小于第二阈值的候选特征点作为目标特征点;When the number of candidate feature points whose shortest distance is less than a second threshold is one, using the candidate feature points whose shortest distance is less than a second threshold as target feature points;
    在所述最短距离小于第二阈值的候选特征点的数量大于一的情况下,在所述最短距离小于第二阈值的候选特征点中确定目标特征点。If the number of candidate feature points whose shortest distance is smaller than a second threshold is greater than one, determine a target feature point among candidate feature points whose shortest distance is smaller than a second threshold.
  18. 根据权利要求17所述的装置,其中,所述第二筛选部分还被配置为在所述最短距离小于第二阈值的候选特征点中,确定所述相似参数最大的候选特征点为目标特征点。The device according to claim 17, wherein the second screening part is further configured to, among the candidate feature points whose shortest distance is smaller than a second threshold, determine the candidate feature point with the largest similarity parameter as the target feature point .
  19. 一种电子设备,包括:An electronic device comprising:
    处理器;processor;
    被配置为存储处理器可执行指令的存储器;memory configured to store processor-executable instructions;
    其中,所述处理器被配置为调用所述存储器存储的指令,以执行权利要求1至9中任意一项所述的方法。Wherein, the processor is configured to invoke instructions stored in the memory to execute the method according to any one of claims 1-9.
  20. 一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现权利要求1至9中任意一项所述的方法。A computer-readable storage medium, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the method according to any one of claims 1 to 9 is realized.
  21. 一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机存储介质,所述计算机程序被计算机读取并执行时实现权利要求1至9中任意一项所述的方法。A computer program product, the computer program product comprising a non-transitory computer storage medium storing a computer program, when the computer program is read and executed by a computer, the method according to any one of claims 1 to 9 is realized.
PCT/CN2022/111862 2022-02-17 2022-08-11 Feature point matching method and apparatus, electronic device, storage medium and computer program product WO2023155393A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210145598.8 2022-02-17
CN202210145598.8A CN114519794A (en) 2022-02-17 2022-02-17 Feature point matching method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
WO2023155393A1 true WO2023155393A1 (en) 2023-08-24

Family

ID=81599184

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/111862 WO2023155393A1 (en) 2022-02-17 2022-08-11 Feature point matching method and apparatus, electronic device, storage medium and computer program product

Country Status (2)

Country Link
CN (1) CN114519794A (en)
WO (1) WO2023155393A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114519794A (en) * 2022-02-17 2022-05-20 浙江商汤科技开发有限公司 Feature point matching method and device, electronic equipment and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799859A (en) * 2012-06-20 2012-11-28 北京交通大学 Method for identifying traffic sign
US20150286894A1 (en) * 2012-11-16 2015-10-08 Enswers Co., Ltd. System and method for providing additional information using image matching
CN109887002A (en) * 2019-02-01 2019-06-14 广州视源电子科技股份有限公司 Matching process, device, computer equipment and the storage medium of image characteristic point
CN112686302A (en) * 2020-12-29 2021-04-20 科大讯飞股份有限公司 Image feature point matching method, computer equipment and storage device
CN113658080A (en) * 2021-08-23 2021-11-16 宁波棱镜空间智能科技有限公司 Method and device for geometric correction of line-scanning cylinder based on feature point matching
CN114519794A (en) * 2022-02-17 2022-05-20 浙江商汤科技开发有限公司 Feature point matching method and device, electronic equipment and storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799859A (en) * 2012-06-20 2012-11-28 北京交通大学 Method for identifying traffic sign
US20150286894A1 (en) * 2012-11-16 2015-10-08 Enswers Co., Ltd. System and method for providing additional information using image matching
CN109887002A (en) * 2019-02-01 2019-06-14 广州视源电子科技股份有限公司 Matching process, device, computer equipment and the storage medium of image characteristic point
CN112686302A (en) * 2020-12-29 2021-04-20 科大讯飞股份有限公司 Image feature point matching method, computer equipment and storage device
CN113658080A (en) * 2021-08-23 2021-11-16 宁波棱镜空间智能科技有限公司 Method and device for geometric correction of line-scanning cylinder based on feature point matching
CN114519794A (en) * 2022-02-17 2022-05-20 浙江商汤科技开发有限公司 Feature point matching method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN114519794A (en) 2022-05-20

Similar Documents

Publication Publication Date Title
TWI724736B (en) Image processing method and device, electronic equipment, storage medium and computer program
TWI781359B (en) Face and hand association detection method and device, electronic device and computer-readable storage medium
JP7262659B2 (en) Target object matching method and device, electronic device and storage medium
CN109697734B (en) Pose estimation method and device, electronic equipment and storage medium
CN111310616B (en) Image processing method and device, electronic equipment and storage medium
US11288531B2 (en) Image processing method and apparatus, electronic device, and storage medium
WO2021035833A1 (en) Posture prediction method, model training method and device
WO2020220809A1 (en) Action recognition method and device for target object, and electronic apparatus
TWI757668B (en) Network optimization method and device, image processing method and device, storage medium
CN109522937B (en) Image processing method and device, electronic equipment and storage medium
WO2019205605A1 (en) Facial feature point location method and device
CN106648063B (en) Gesture recognition method and device
CN111538855A (en) Visual positioning method and device, electronic equipment and storage medium
US20140232748A1 (en) Device, method and computer readable recording medium for operating the same
CN111523485A (en) Pose recognition method and device, electronic equipment and storage medium
WO2023093120A1 (en) Image processing method and apparatus, and electronic device, storage medium and computer program product
CN112529846A (en) Image processing method and device, electronic equipment and storage medium
WO2023273498A1 (en) Depth detection method and apparatus, electronic device, and storage medium
WO2023155393A1 (en) Feature point matching method and apparatus, electronic device, storage medium and computer program product
CN111339880A (en) Target detection method and device, electronic equipment and storage medium
CN114581525A (en) Attitude determination method and apparatus, electronic device, and storage medium
WO2022110801A1 (en) Data processing method and apparatus, electronic device, and storage medium
CN115035947A (en) Protein structure modeling method and device, electronic device and storage medium
CN113538310A (en) Image processing method and device, electronic equipment and storage medium
CN112949568A (en) Method and device for matching human face and human body, electronic equipment and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22926699

Country of ref document: EP

Kind code of ref document: A1