A method, apparatus and storage medium for determining a target position

By combining convolutional neural networks and segmentation neural networks, control points are identified and effective sampling points are selected. Key points are determined using orientation angles, which solves the problem of inaccurate positioning in target detection and achieves more accurate target localization.

CN116912472BActive Publication Date: 2025-11-18CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310822865.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-07-05
Publication Date
2025-11-18
Estimated Expiration
2043-07-05

AI Technical Summary

Technical Problem

In existing target detection processes, the changes of the target object during movement are large, resulting in an oversized target bounding box and an inability to accurately locate the position of the target object.

Method used

By identifying control points through a convolutional neural network, fitting sampling points, filtering effective sampling points, and using orientation angles to determine key points, the location of the target to be detected can be achieved.

Benefits of technology

It improves the accuracy of target location positioning and ensures the precise positioning of the object under test.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116912472B_ABST
    Figure CN116912472B_ABST
Patent Text Reader

Abstract

The present disclosure relates to the field of target detection, and discloses a method and device for determining a target position and a storage medium. The method comprises fitting each control point to obtain a curve comprising a plurality of sampling points, wherein the control points are determined by a convolutional neural network based on an image containing a target to be detected, the coordinates of the sampling points are different from the coordinates of the control points, a plurality of effective sampling points are selected from the plurality of sampling points based on the distances between the sampling points and a center point of a target figure, wherein the target figure is a set of pixel points determined by a segmentation neural network based on the image containing the target to be detected, a key point of the target to be detected is determined based on the direction angles corresponding to the effective sampling points, and the coordinates of the key point are determined as the target position of the target to be detected. The key point detection is used to determine the target position of the target to be detected, so that the positioning is more accurate.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of target detection technology, and provides a method, apparatus and storage medium for determining the location of a target. Background Technology

[0002] Currently, in the fields of intelligent industrial manufacturing and artificial intelligence information technology, target detection algorithms are typically used to replace manual inspection to locate parts or defects awaiting inspection, thereby determining the location of the object to be inspected.

[0003] However, existing object detection processes use bounding box detection, which can cause significant variations in the object's shape during motion. This results in oversized bounding boxes for the object, making it impossible to accurately locate its position. Summary of the Invention

[0004] This disclosure provides a method, apparatus, and storage medium for determining the location of a target, thereby improving the accuracy of target location positioning.

[0005] The specific technical solution provided in this disclosure is as follows:

[0006] In a first aspect, embodiments of this disclosure provide a method for determining a target location, including:

[0007] By fitting each control point, a curve including multiple sampling points is obtained. The control points are determined by identifying the image containing the target to be detected through a convolutional neural network. The coordinates of the sampling points are different from the coordinates of the control points.

[0008] Based on the distance between each sampling point and the center point of the target image, multiple valid sampling points are selected from each sampling point. The target image is a set of pixels identified by a segmentation neural network that contains the target to be detected.

[0009] The key points of the target to be detected are determined based on the orientation angles corresponding to each effective sampling point, and the coordinates of the key points are determined as the target position of the target to be detected. Here, the orientation angle is the angle between the effective sampling point and the center point.

[0010] Optionally, control points are obtained in the following way:

[0011] Based on the pre-selected detection box corresponding to the target to be detected, the image containing the target to be detected is labeled to obtain multiple label points. Among them, the pre-selected detection box is used to represent the position of the target to be detected, and the number of label points is greater than a preset threshold.

[0012] The image carrying each labeled point is input into a convolutional neural network, which then identifies the image containing the target to be detected, thus obtaining multiple control points.

[0013] Optionally, fitting is performed on each control point to obtain a curve including multiple sampling points, including:

[0014] By fitting each control point with a third-order Bézier curve, the line graph corresponding to the target to be detected is obtained;

[0015] The line graph is sampled to obtain multiple sampling points;

[0016] Connecting multiple sampling points yields a curve that includes multiple sampling points.

[0017] Optionally, based on the distance between each sampling point and the center point of the target image, multiple valid sampling points are selected from each sampling point, including:

[0018] Determine the distance based on the coordinates of any sampling point and the coordinates of the center point of the target image;

[0019] Select sampling points from all sampling points whose distance is less than a preset distance threshold, and use the selected sampling points as valid sampling points.

[0020] Alternatively, the target graphic can be obtained in the following way:

[0021] An image containing the target to be detected is input into a segmentation neural network, which then identifies the image and obtains multiple pixels.

[0022] The target image is obtained based on each pixel.

[0023] Optionally, key points of the target to be detected are determined based on the orientation angles corresponding to each valid sampling point, including:

[0024] Based on the coordinates of each valid sampling point and the coordinates of the center point, calculate the orientation angle corresponding to each valid sampling point;

[0025] The effective sampling point corresponding to the direction angle with the largest angle is determined as the key point of the target to be detected.

[0026] Secondly, embodiments of this disclosure also provide an apparatus for determining a target location, comprising:

[0027] The fitting unit is used to fit each control point to obtain a curve including multiple sampling points. The control points are determined by the convolutional neural network to identify the image containing the target to be detected. The coordinates of the sampling points are different from the coordinates of the control points.

[0028] The filtering unit is used to filter out multiple valid sampling points from each sampling point based on the distance between each sampling point and the center point of the target image. The target image is a set of pixels identified by a segmentation neural network that contains the target to be detected.

[0029] The determining unit is used to determine the key points of the target to be detected based on the direction angle corresponding to each effective sampling point, and to determine the coordinates of the key points as the target position of the target to be detected, wherein the direction angle is the angle between the effective sampling point and the center point.

[0030] Optionally, control points are obtained in the following way:

[0031] Based on the pre-selected detection box corresponding to the target to be detected, the image containing the target to be detected is labeled to obtain multiple label points. Among them, the pre-selected detection box is used to represent the position of the target to be detected, and the number of label points is greater than a preset threshold.

[0032] The image carrying each labeled point is input into a convolutional neural network, which then identifies the image containing the target to be detected, thus obtaining multiple control points.

[0033] Optionally, each control point is fitted to obtain a curve including multiple sampling points. The fitting unit is used for:

[0034] By fitting each control point with a third-order Bézier curve, the line graph corresponding to the target to be detected is obtained;

[0035] The line graph is sampled to obtain multiple sampling points;

[0036] Connecting multiple sampling points yields a curve that includes multiple sampling points.

[0037] Optionally, based on the distance between each sampling point and the center point of the target image, multiple valid sampling points are selected from each sampling point. The selection unit is used for:

[0038] Determine the distance based on the coordinates of any sampling point and the coordinates of the center point of the target image;

[0039] Select sampling points from all sampling points whose distance is less than a preset distance threshold, and use the selected sampling points as valid sampling points.

[0040] Alternatively, the target graphic can be obtained in the following way:

[0041] An image containing the target to be detected is input into a segmentation neural network, which then identifies the image and obtains multiple pixels.

[0042] The target image is obtained based on each pixel.

[0043] Optionally, key points of the target to be detected are determined based on the orientation angles corresponding to each valid sampling point. The determining unit is used for:

[0044] Based on the coordinates of each valid sampling point and the coordinates of the center point, calculate the orientation angle corresponding to each valid sampling point;

[0045] The effective sampling point corresponding to the direction angle with the largest angle is determined as the key point of the target to be detected.

[0046] Thirdly, a smart terminal includes:

[0047] Memory, used to store executable instructions;

[0048] A processor for reading and executing executable instructions stored in memory to implement the method as described in any of the first aspects.

[0049] Fourthly, a computer-readable storage medium, when instructions in the storage medium are executed by a processor, enables the processor to perform the method described in any of the first aspects above.

[0050] The beneficial effects of this disclosure are as follows:

[0051] In summary, the embodiments of this disclosure provide a method, apparatus, and storage medium for determining the location of a target. The method includes: fitting various control points to obtain a curve including multiple sampling points, wherein the control points are determined by identifying an image containing a target to be detected through a convolutional neural network, and the coordinates of the sampling points are different from the coordinates of the control points; selecting multiple effective sampling points from the sampling points based on the distance between each sampling point and the center point of the target image, wherein the target image is a set of pixels identified by identifying an image containing a target to be detected through a segmentation neural network; determining key points of the target to be detected based on the orientation angles corresponding to each effective sampling point; and determining the coordinates of the key points as the target location of the target to be detected, wherein the orientation angle is the angle between the effective sampling point and the center point. This method of determining the target location of the target to be detected by key point detection makes the positioning more accurate.

[0052] Other features and advantages of this disclosure will be set forth in the following description and will be apparent in part from the description or may be learned by practicing the disclosure. The objects and other advantages of this disclosure may be realized and obtained by means of the structures particularly pointed out in the written description, claims, and drawings. Attached Figure Description

[0053] The accompanying drawings, which are included to provide a further understanding of this disclosure and form part of this disclosure, illustrate exemplary embodiments of the present disclosure and are used to explain the disclosure, but do not constitute an undue limitation of the disclosure. In the drawings:

[0054] Figure 1 This is a schematic diagram of the system architecture for determining the target location in an embodiment of this disclosure;

[0055] Figure 2 This is a schematic diagram of a process for determining the target location of a target to be detected in an embodiment of this disclosure;

[0056] Figure 3 This is a flowchart illustrating the process of obtaining curves based on control points in an embodiment of this disclosure.

[0057] Figure 4 This is a schematic diagram of the process for determining valid sampling points in an embodiment of this disclosure;

[0058] Figure 5 This is a flowchart illustrating the process of determining key points of the target to be detected based on valid sampling points in an embodiment of this disclosure;

[0059] Figure 6 This is a schematic diagram of the logical architecture of a device for determining a target location according to an embodiment of this disclosure;

[0060] Figure 7 This is a schematic diagram of the physical architecture of the smart terminal in an embodiment of this disclosure. Detailed Implementation

[0061] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the technical solutions of this disclosure, and not all embodiments. Based on the embodiments recorded in this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the technical solutions of this disclosure.

[0062] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention described herein can be implemented in sequences other than those illustrated or described herein.

[0063] The preferred embodiments of this disclosure will now be described in detail with reference to the accompanying drawings.

[0064] See Figure 1As shown in this embodiment of the disclosure, the system includes at least one smart terminal. Figure 1 In this process, after acquiring images containing the target to be detected based on video or other means, these images are input into a smart terminal for processing to determine the target's location. It should be noted that the number of images containing the target to be detected is usually multiple.

[0065] In this embodiment of the disclosure, a method for determining the location of a target is implemented mainly on the smart terminal side, which will be described in detail below.

[0066] See Figure 2 As shown in the embodiments of this disclosure, a specific process for determining the target location is as follows:

[0067] Step 201: Fit each control point to obtain a curve including multiple sampling points. The control points are determined by a convolutional neural network to identify the image containing the target to be detected. The coordinates of the sampling points are different from the coordinates of the control points.

[0068] First, the above convolutional neural network is trained based on the original convolutional neural network. The convolutional neural network is trained in the following way:

[0069] 1) Use the training image corresponding to the target to be detected as the input of the original convolutional neural network, and use the training image corresponding to the target to be detected with preset label points as the output of the original convolutional neural network to train the original convolutional neural network.

[0070] To better adapt the convolutional neural network to images containing the target to be detected, multiple training images corresponding to the target are first obtained from videos or other sources. These training images are generated earlier than the images containing the target, and there are typically multiple training images. During training, these multiple training images are input into the original convolutional neural network as its input.

[0071] Meanwhile, multiple label points are pre-annotated in the training image corresponding to the target to be detected to indicate the location of the target to be detected, and the training image carrying the label points is used as the output of the original convolutional neural network. Based on this, the original convolutional neural network is trained.

[0072] 2) Adjust the parameters of the original convolutional neural network based on the loss value between the label points and the expected key points until the original convolutional neural network converges.

[0073] The aforementioned expected key points are used to represent the actual location of the target to be detected. During the training process, the loss value between the aforementioned label points and the expected key points is calculated, and the parameters of the original convolutional neural network are adjusted according to the loss value. That is, the parameters of the original convolutional neural network are continuously optimized until the original convolutional neural network converges.

[0074] 3) The converged original convolutional neural network is used as a convolutional neural network.

[0075] Once it is determined that the original convolutional neural network has converged, that is, after the parameters of the original convolutional neural network have been adjusted to the optimal level, the converged original convolutional neural network is used as the convolutional neural network.

[0076] During implementation, after determining the convolutional neural network, multiple control points are obtained using the convolutional neural network.

[0077] The control points are obtained as follows:

[0078] (1) Based on the pre-selected detection box corresponding to the target to be detected, the image containing the target to be detected is labeled to obtain multiple label points. Among them, the pre-selected detection box is used to represent the position of the target to be detected, and the number of label points is greater than the preset threshold.

[0079] In this embodiment of the application, the pre-selected detection box is used to characterize the position of the target to be detected. In order to make the position of the target to be detected more accurate, multiple points are selected in the pre-selected detection box, that is, the image containing the target to be detected is annotated by annotation to obtain multiple annotation points. Usually, the number of annotation points is greater than a preset threshold. Here, the minimum value of the preset threshold is 4. The annotation method is not specifically limited here. The annotation content includes coordinates, etc.

[0080] (2) Input the image carrying each annotation point into the convolutional neural network, and use the convolutional neural network to identify the image containing the target to be detected, and obtain multiple control points.

[0081] After the image of the target to be detected is labeled, the image carrying each labeled point is input into the convolutional neural network. The trained convolutional neural network identifies the image containing the target to be detected, thereby obtaining multiple control points.

[0082] It should be noted that the obtained control points are coordinates used to represent the position of the target to be detected. However, to determine the position of the target more accurately, a final point needs to be determined based on the coordinates of each control point, and the position of the target will be represented by the coordinates of this point. For example, in determining the position of the tail of a steel coil, since the tail is curved and its sway is significant, the position of the tail can be represented by the coordinates of the point at the end of the tail.

[0083] Specifically, the above process fits each control point to obtain a curve that includes multiple sampling points. (See attached document.) Figure 3 As shown, it includes:

[0084] Step 2011: Fit each control point with a third-order Bézier curve to obtain the line graph corresponding to the target to be detected.

[0085] During the implementation process, after obtaining the coordinates of each control point, the control points are fitted with a third-order Bézier curve to obtain the line graph corresponding to the target to be detected. The outline of the line graph is the same as the outer outline of the target to be detected.

[0086] Step 2012: Sample the line graph to obtain multiple sampling points.

[0087] During the implementation process, after obtaining the line drawing corresponding to the target to be detected, the line drawing is further sampled to obtain multiple sampling points. The number of sampling points can be determined by setting the parameters.

[0088] Assume there are four control points, and the coordinates of the four control points are (C... x0 C y0 ), (C x1 C y1 ), (C x2 C y2 ) and (C x3 C y3 The Bézier matrix corresponding to a third-order Bézier curve is: Where m is a natural number.

[0089] If the sampling points are represented by a matrix P, then the matrix of sampling points P is...

[0090] Step 2013: Connect multiple sampling points to obtain a curve that includes multiple sampling points.

[0091] During implementation, after obtaining multiple sampling points, these points are connected by a curve to obtain a curve that includes multiple sampling points. Compared to the coordinates of control points, the coordinates of sampling points can more accurately locate the position of the target to be detected.

[0092] Step 202: Based on the distance between each sampling point and the center point of the target image, select multiple valid sampling points from each sampling point. The target image is a set of pixels identified by a segmentation neural network that contains the target to be detected.

[0093] During implementation, considering that there are usually multiple sampling points, it is necessary to further filter out multiple valid sampling points from the multiple sampling points, and the acquisition of valid sampling points depends on the target image.

[0094] The following describes how the target graphic was obtained. The target graphic was obtained through the following method:

[0095] [1] The image containing the target to be detected is input into the segmentation neural network, and the image is identified by the segmentation neural network to obtain multiple pixels.

[0096] Typically, the image containing the target to be detected has a relatively large corresponding shape. Therefore, during the implementation process, the image containing the target to be detected is further modified by a segmentation neural network. That is, the image containing the target to be detected is input into the segmentation neural network, and the segmentation neural network identifies the image pixel by pixel, thereby obtaining multiple pixel points.

[0097] [2] Based on each pixel, the target image is obtained.

[0098] During implementation, after obtaining multiple pixels, the graphic formed by the set of the aforementioned pixels is determined as the target graphic.

[0099] After obtaining the target image, the above method, based on the distance between each sampling point and the center point of the target image, filters out multiple valid sampling points from each sampling point. (See [link to relevant documentation]). Figure 4 As shown, it includes:

[0100] Step 2021: Determine the distance based on the coordinates of any sampling point and the coordinates of the center point of the target graphic.

[0101] During the implementation process, after obtaining the sampling points and the target graphic, the distance between each sampling point and the center point of the target graphic is calculated based on the coordinates of each sampling point and the coordinates of the center point of the target graphic.

[0102] Step 2022: Select sampling points from each sampling point whose distance is less than the preset distance threshold, and take the selected sampling points as valid sampling points.

[0103] After obtaining the various distances, distances that are less than a preset distance threshold are selected from the above distances, and the sampling points corresponding to the selected distances are then used as valid sampling points.

[0104] Step 203: Determine the key points of the target to be detected based on the direction angles corresponding to each valid sampling point, and determine the coordinates of the key points as the target position of the target to be detected, where the direction angle is the angle between the valid sampling point and the center point.

[0105] In this embodiment, the key points of the target to be detected are determined based on the orientation angles corresponding to each valid sampling point. (See reference...) Figure 5 As shown, it includes:

[0106] Step 2031: Based on the coordinates of each valid sampling point and the coordinates of the center point, calculate the orientation angle corresponding to each valid sampling point.

[0107] During implementation, the direction angle corresponding to any valid sampling point is calculated based on the coordinates of the point and the center point. The number of direction angles corresponds one-to-one with the number of valid sampling points.

[0108] Assume that the coordinates of any valid sampling point are (x1, y1) and the coordinates of the center point are (x2, y2). Calculate the difference in the horizontal coordinates as dx = x2 - x1 and the difference in the vertical coordinates as dy = y2 - y1.

[0109] The first case: x2 is greater than x1, and y2 is greater than y1. The direction angle corresponding to any valid sampling point is angle = math.atan(dx / dy).

[0110] The second case: x2 is greater than x1, and y2 is less than y1. The direction angle corresponding to any valid sampling point is angle = π / 2 + math.atan(-dy / dx).

[0111] The third case: x2 is less than x1, and y2 is less than y1. The direction angle corresponding to any valid sampling point is angle = π + math.atan(dx / dy).

[0112] The fourth case: x2 is less than x1, and y2 is greater than y1. The direction angle corresponding to any valid sampling point is angle = 3*π / 2 + math.atan(dy / -dx).

[0113] During implementation, the orientation angles corresponding to each effective sampling point are obtained through one of the first, second, third, and fourth scenarios mentioned above.

[0114] Step 2032: Determine the effective sampling point corresponding to the direction angle with the largest angle as the key point of the target to be detected.

[0115] During implementation, the directional angles corresponding to each effective sampling point are sorted, and the directional angle with the largest angle is determined. The effective sampling point corresponding to the directional angle with the largest angle is determined as the key point of the target to be detected. Then, the coordinates of the key point are determined as the target position of the target to be detected. That is, the target position of the target to be detected is represented by the coordinates of the key point.

[0116] Based on the same inventive concept, see [reference] Figure 6 As shown, this embodiment of the present disclosure provides an apparatus for determining the location of a target, comprising:

[0117] Fitting unit 601 is used to fit each control point to obtain a curve including multiple sampling points. The control points are determined by a convolutional neural network to identify the image containing the target to be detected. The coordinates of the sampling points are different from the coordinates of the control points.

[0118] The filtering unit 602 is used to filter out multiple valid sampling points from each sampling point based on the distance between each sampling point and the center point of the target image, wherein the target image is a set of pixels identified by a segmentation neural network that contains the target to be detected.

[0119] The determining unit 603 is used to determine the key points of the target to be detected based on the direction angles corresponding to each effective sampling point, and to determine the coordinates of the key points as the target position of the target to be detected, wherein the direction angle is the angle between the effective sampling point and the center point.

[0120] Optionally, control points are obtained in the following way:

[0121] Based on the pre-selected detection box corresponding to the target to be detected, the image containing the target to be detected is labeled to obtain multiple label points. Among them, the pre-selected detection box is used to represent the position of the target to be detected, and the number of label points is greater than a preset threshold.

[0122] The image carrying each labeled point is input into a convolutional neural network, which then identifies the image containing the target to be detected, thus obtaining multiple control points.

[0123] Optionally, each control point is fitted to obtain a curve including multiple sampling points. The fitting unit 601 is used for:

[0124] By fitting each control point with a third-order Bézier curve, the line graph corresponding to the target to be detected is obtained;

[0125] The line graph is sampled to obtain multiple sampling points;

[0126] Connecting multiple sampling points yields a curve that includes multiple sampling points.

[0127] Optionally, based on the distance between each sampling point and the center point of the target graphic, multiple valid sampling points are selected from each sampling point. The filtering unit 602 is used for:

[0128] Determine the distance based on the coordinates of any sampling point and the coordinates of the center point of the target image;

[0129] Select sampling points from all sampling points whose distance is less than a preset distance threshold, and use the selected sampling points as valid sampling points.

[0130] Alternatively, the target graphic can be obtained in the following way:

[0131] An image containing the target to be detected is input into a segmentation neural network, which then identifies the image and obtains multiple pixels.

[0132] The target image is obtained based on each pixel.

[0133] Optionally, the key points of the target to be detected are determined based on the orientation angles corresponding to each valid sampling point. The determining unit 603 is used for:

[0134] Based on the coordinates of each valid sampling point and the coordinates of the center point, calculate the orientation angle corresponding to each valid sampling point;

[0135] The effective sampling point corresponding to the direction angle with the largest angle is determined as the key point of the target to be detected.

[0136] Based on the same inventive concept, see [reference] Figure 7 As shown, this embodiment of the present disclosure provides a smart terminal, including: a memory 701 for storing executable instructions; and a processor 702 for reading and executing the executable instructions stored in the memory, and executing any of the methods described in the first aspect above.

[0137] Based on the same inventive concept, embodiments of this disclosure provide a computer-readable storage medium that, when instructions in the storage medium are executed by a processor, enables the processor to perform the method described in any of the first aspects above.

[0138] In summary, the embodiments of this disclosure provide a method, apparatus, and storage medium for determining the location of a target. The method includes: fitting various control points to obtain a curve including multiple sampling points, wherein the control points are determined by identifying an image containing a target to be detected through a convolutional neural network, and the coordinates of the sampling points are different from the coordinates of the control points; selecting multiple effective sampling points from the sampling points based on the distance between each sampling point and the center point of the target image, wherein the target image is a set of pixels identified by identifying an image containing a target to be detected through a segmentation neural network; determining key points of the target to be detected based on the orientation angles corresponding to each effective sampling point; and determining the coordinates of the key points as the target location of the target to be detected, wherein the orientation angle is the angle between the effective sampling point and the center point. This method of determining the target location of the target to be detected by key point detection makes the positioning more accurate.

[0139] Those skilled in the art will understand that embodiments of this disclosure can be provided as methods, systems, or computer program product systems. Therefore, this disclosure can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this disclosure can take the form of a computer program product system implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0140] This disclosure is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program product systems according to this disclosure. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0141] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0142] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0143] Obviously, those skilled in the art can make various modifications and variations to this disclosure without departing from its spirit and scope. Therefore, if such modifications and variations fall within the scope of the claims of this disclosure and their equivalents, this disclosure is also intended to include such modifications and variations.

Claims

1. A method for determining the location of a target, characterized in that, The method includes: Each control point is fitted to obtain a curve including multiple sampling points. The control points are determined by a convolutional neural network to identify the image containing the target to be detected. The coordinates of the sampling points are different from the coordinates of the control points. The control points are obtained by: labeling the image containing the target to be detected based on the pre-selected detection box corresponding to the target to be detected, obtaining multiple labeled points. The pre-selected detection box is used to characterize the position of the target to be detected. The number of labeled points is greater than a preset threshold. The image carrying each labeled point is input into the convolutional neural network, and the convolutional neural network identifies the image containing the target to be detected to obtain the multiple control points. Based on the distance between each sampling point and the center point of the target image, multiple valid sampling points are selected from each sampling point, wherein the target image is a set of pixels identified by a segmentation neural network in an image containing the target to be detected; The key points of the target to be detected are determined based on the direction angles corresponding to each of the effective sampling points, and the coordinates of the key points are determined as the target position of the target to be detected, wherein the direction angle is the angle between the effective sampling point and the center point.

2. The method as described in claim 1, characterized in that, The fitting of each control point to obtain a curve including multiple sampling points includes: By fitting each control point with a third-order Bézier curve, a line graph corresponding to the target to be detected is obtained; The line graph is sampled to obtain multiple sampling points; By connecting multiple sampling points, a curve comprising multiple sampling points is obtained.

3. The method as described in claim 1, characterized in that, The step of selecting multiple valid sampling points from each sampling point based on the distance between each sampling point and the center point of the target image includes: The distance is determined based on the coordinates of any one of the sampling points and the coordinates of the center point of the target graphic; From the various sampling points, sampling points whose distance is less than a preset distance threshold are selected, and the selected sampling points are taken as the valid sampling points.

4. The method as described in claim 3, characterized in that, The target graphic is obtained in the following way: An image containing the target to be detected is input into the segmentation neural network, and the segmentation neural network identifies the image to obtain multiple pixels. The target image is obtained based on each of the aforementioned pixels.

5. The method according to any one of claims 1 to 4, characterized in that, The step of determining the key points of the target to be detected based on the orientation angles corresponding to each of the effective sampling points includes: Based on the coordinates of each valid sampling point and the coordinates of the center point, calculate the orientation angle corresponding to each valid sampling point; The effective sampling point corresponding to the direction angle with the largest angle is determined as the key point of the target to be detected.

6. A device for determining the location of a target, characterized in that, include: A fitting unit is used to fit each control point to obtain a curve including multiple sampling points. The control points are determined by a convolutional neural network to identify the image containing the target to be detected. The coordinates of the sampling points are different from the coordinates of the control points. The control points are obtained by: labeling the image containing the target to be detected based on the pre-selected detection box corresponding to the target to be detected to obtain multiple labeling points. The pre-selected detection box is used to characterize the position of the target to be detected. The number of labeling points is greater than a preset threshold. The image carrying each labeling point is input into the convolutional neural network, and the convolutional neural network identifies the image containing the target to be detected to obtain multiple control points. A filtering unit is used to filter out multiple valid sampling points from each of the sampling points based on the distance between each sampling point and the center point of the target image, wherein the target image is a set of pixels identified by a segmentation neural network in an image containing the target to be detected. The determining unit is used to determine the key points of the target to be detected based on the direction angles corresponding to each of the effective sampling points, and to determine the coordinates of the key points as the target position of the target to be detected, wherein the direction angle is the angle between the effective sampling point and the center point.

7. A smart terminal, characterized in that, include: Memory, used to store executable instructions; A processor for reading and executing executable instructions stored in the memory to implement the method as described in any one of claims 1-5.

8. A computer-readable storage medium, characterized in that, When the instructions in the storage medium are executed by the processor, the processor is able to perform the method as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Region labeling method, device and equipment and storage medium

    CN111860484A

  • Neural network training method for face image processing, and face image processing method and device

    CN113128449A