Estimation device, estimation method, and storage medium
An estimation device 3 X mainly includes a feature point estimation means 35 X, a representative point candidate determination means 37 X, and a representative point estimation means 38 X. The feature point estimation means 35 X estimates plural feature points relating to an object. The representative point candidate determination means 37 X determines plural representative point candidates that are candidates of a representative point of the object based on the plural feature points. The representative point estimation means 38 X estimates the representative point based on the plural representative point candidates.
1 . An estimation device comprising:
at least one memory configured to store instructions; and
at least one processor configured to execute the instructions to:
generate a feature map from an input image by using a trained feature map output model;
estimate plural feature points which are respective positions of distinctive parts in a detection target for an object included in the input image, based on the feature map by using a trained feature point estimation model;
estimate, for each of the plural feature points, a vector from the feature point to a representative point of the object based on the feature map by using a trained vector estimation model;
determine plural representative point candidates that are candidates of a representative point based on sets of the each of the plural feature points and the vector;
generate, for each of the plural representative point candidates, a reliability map indicating a distribution of confidence having a peak at a position of the representative point candidate; and
estimate the representative point based on a cumulative map obtained by summing up reliability maps relative to respective positions of the plural representative point candidates, wherein the representative point is estimated based on a position of a peak detected in the cumulative map.
2 . The estimation device according to claim 1 ,
wherein the at least one processor is configured to execute the instructions to estimate the number of the object(s) and estimates the representative point for each of the objects when there are plural objects in the image.
3 . The estimation device according to claim 1 ,
wherein the at least one processor is configured to execute the instructions to estimate the representative point based on a center of gravity of the representative point candidates per cluster identified by performing clustering on the plural representative point candidates.
4 . The estimation device according to claim 3 ,
wherein the at least one processor is configured to execute the instructions to select the representative point from the center of gravity, based on the number of types of feature points corresponding to the representative point candidates per cluster or scores indicating certainty of the feature points.
5 . The estimation device according to claim 1 ,
wherein, for each estimated representative point which is an estimate of the representative point, the at least one processor is configured to execute the instructions to calculate estimated positions obtained through mutual position estimation among the feature points used for estimating the estimated representative points, and corrects estimation results of the feature points based on the estimated positions.
6 . The estimation device according to claim 1 ,
wherein the at least one processor is configured to further execute the instructions to perform estimation on a posture of the object or an area on the image to which the object belongs, based on the estimated representative point which is an estimate of the representative point.
7 . An estimation method executed by a computer, the estimation method comprising:
generating a feature map from an input image by using a trained feature map output model;
estimating plural feature points which are respective positions of distinctive parts in a detection target for an object included in the input image, based on the feature map by using a trained feature point estimation model;
estimating, for each of the plural feature points, a vector from the feature point to a representative point of the object based on the feature map by using a trained vector estimation model;
determining plural representative point candidates that are candidates of a representative point based on sets of the each of the plural feature points and the vector;
generating, for each of the plural representative point candidates, a reliability map indicating a distribution of confidence having a peak at a position of the representative point candidate; and
estimating the representative point based on a cumulative map obtained by summing up reliability maps relative to respective positions of the plural representative point candidates, wherein the representative point is estimated based on a position of a peak detected in the cumulative map.
8 . A non-transitory computer readable storage medium storing a program executed by a computer, the program causing the computer to:
generate a feature map from an input image by using a trained feature map output model;
estimate plural feature points which are respective positions of distinctive parts in a detection target for an object included in the input image, based on the feature map by using a trained feature point estimation model;
estimate, for each of the plural feature points, a vector from the feature point to a representative point of the object based on the feature map by using a trained vector estimation model;
determine plural representative point candidates that are candidates of a representative point based on sets of the each of the plural feature points and the vector;
generate, for each of the plural representative point candidates, a reliability map indicating a distribution of confidence having a peak at a position of the representative point candidate; and
estimate the representative point based on a cumulative map obtained by summing up reliability maps relative to respective positions of the plural representative point candidates, wherein the representative point is estimated based on a position of a peak detected in the cumulative map.
9 . The estimation device according to claim 1 ,
wherein the at least one processor is configured to execute the instructions to perform decision making to determine, for each of the plural feature points, an object to which the feature point belongs based on the estimated representative point, and generate object information representing a position and a posture of the object based on a result of the decision making.
10 . The estimation device according to claim 1 ,
wherein at least one of the trained feature map output model, the trained feature point estimation model, and the trained vector estimation model is a machine learning model trained using training data including an input image and correct answer data regarding feature points of an object in the input image.
11 . The estimation device according to claim 1 ,
wherein the distribution of confidence in each reliability map includes a Gaussian distribution having a peak at the position of the representative point candidate.
12 . The estimation device according to claim 1 ,
wherein the at least one processor is configured to execute the instructions to:
set a maximum value of the distribution of confidence in the reliability map based on a score indicating certainty of estimation of a corresponding feature point; and
determine the representative point as a position of a peak satisfying a predetermined condition including at least one of:
(i) a reliability value in the cumulative map at the peak being equal to or greater than a predetermined value, or
(ii) a number of types of feature points corresponding to representative point candidates whose reliability at the peak is equal to or greater than a threshold value being equal to or greater than a predetermined number.