get_surface_matching_resultT_get_surface_matching_resultGetSurfaceMatchingResultGetSurfaceMatchingResultget_surface_matching_result (算子)
名称
get_surface_matching_resultT_get_surface_matching_resultGetSurfaceMatchingResultGetSurfaceMatchingResultget_surface_matching_result — 从基于表面的匹配中获取结果的详细信息。
签名
描述
算子 get_surface_matching_resultget_surface_matching_resultGetSurfaceMatchingResultGetSurfaceMatchingResultGetSurfaceMatchingResultget_surface_matching_result returns details about
the results of surface based matching or the surface pose refinement.
The results are
stored in SurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDsurfaceMatchingResultIDsurface_matching_result_id, which must have been created
by find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model or refine_surface_model_poserefine_surface_model_poseRefineSurfaceModelPoseRefineSurfaceModelPoseRefineSurfaceModelPoserefine_surface_model_pose。
The parameter ResultNameResultNameResultNameResultNameresultNameresult_name is used to select which result detail
shall be returned. If details about one of the results shall be retrieved,
ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index selects the result index, where 0 selects
the first result.
ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index is ignored for certain values of ResultNameResultNameResultNameResultNameresultNameresult_name。
The following values are possible for ResultNameResultNameResultNameResultNameresultNameresult_name if
SurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDsurfaceMatchingResultIDsurface_matching_result_id was created by find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model
or find_surface_model_imagefind_surface_model_imageFindSurfaceModelImageFindSurfaceModelImageFindSurfaceModelImagefind_surface_model_image:
- 'sampled_scene'"sampled_scene""sampled_scene""sampled_scene""sampled_scene""sampled_scene":
A 3D object model handle is returned that
contains the sampled scene points that were used in the
approximate matching step.
This is helpful for tuning the sampling distance for the
matching (see parameter RelSamplingDistance of operator
find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model).
The parameter ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index is ignored.
- 'key_points'"key_points""key_points""key_points""key_points""key_points":
A 3D object model handle is returned that
contains all points from the 3D scene that were used as key
points in the matching process.
This is helpful for tuning the sampling
distance and key point rate for the matching (see parameter
KeyPointFraction of operator find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model).
The parameter ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index is ignored.
At least 10 key points should be on the object of interest for
stable results.
- 'score_unrefined'"score_unrefined""score_unrefined""score_unrefined""score_unrefined""score_unrefined":
The score of the result before the
dense pose refinement is returned. If the sparse pose refinement was
disabled, this is the score of the approximate matching. Otherwise the
score of the sparse pose refinement is returned.
See find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model for details about the score.
In ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index the index of the result must be specified.
If SurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDsurfaceMatchingResultIDsurface_matching_result_id was created by
refine_surface_model_poserefine_surface_model_poseRefineSurfaceModelPoseRefineSurfaceModelPoseRefineSurfaceModelPoserefine_surface_model_pose, 0 is returned.
- 'sampled_3d_edges'"sampled_3d_edges""sampled_3d_edges""sampled_3d_edges""sampled_3d_edges""sampled_3d_edges":
If the surface model was trained with 'train_3d_edges'"train_3d_edges""train_3d_edges""train_3d_edges""train_3d_edges""train_3d_edges"
enabled, a 3D object model handle is returned that
contains the sampled 3D edge points that were used in the
approximate matching step and in the sparse refinement step.
The parameter ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index is ignored.
The following values are always possible for ResultNameResultNameResultNameResultNameresultNameresult_name,
regardless the operator SurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDsurfaceMatchingResultIDsurface_matching_result_id was created with:
- 'pose'"pose""pose""pose""pose""pose":
-
Returns the pose of the matching or refinement result.
In ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index the index of the result must be specified.
- 'score_refined'"score_refined""score_refined""score_refined""score_refined""score_refined":
-
Returns the score of the result after the dense pose refinement.
See find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model for details about this score.
In ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index the index of the result must be specified.
If SurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDsurfaceMatchingResultIDsurface_matching_result_id was created by
find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model and dense pose refinement was disabled,
0 is returned.
- 'score'"score""score""score""score""score":
-
Returns the combined score of the result indexed in ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index,
thus this parameter is equal to ScoreScoreScoreScorescorescore returned in
find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model。
- 'score_surface'"score_surface""score_surface""score_surface""score_surface""score_surface":
-
Returns the surface-based score of the result indexed in
ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index.
If not specifically set otherwise, this score is equal to
'score_refined'"score_refined""score_refined""score_refined""score_refined""score_refined".
- 'score_3d_edges'"score_3d_edges""score_3d_edges""score_3d_edges""score_3d_edges""score_3d_edges":
-
Returns the 3D edge score of the result indexed in
ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index.
This score is only applicable for edged-supported surface-based matching.
- 'score_2d_edges'"score_2d_edges""score_2d_edges""score_2d_edges""score_2d_edges""score_2d_edges":
-
Returns the 2D edge score of the result indexed in
ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index.
This score is only applicable for edged-supported surface-based matching.
- 'score_view_based'"score_view_based""score_view_based""score_view_based""score_view_based""score_view_based":
-
Returns the view-based score of the result indexed in
ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index.
This score is only applicable if the surface model supports view-based
score computation.
- 'all_scores'"all_scores""all_scores""all_scores""all_scores""all_scores":
-
Returns for the result indexed in ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index
the values of the five scores
'score'"score""score""score""score""score", 'score_surface'"score_surface""score_surface""score_surface""score_surface""score_surface", 'score_3d_edges'"score_3d_edges""score_3d_edges""score_3d_edges""score_3d_edges""score_3d_edges",
'score_2d_edges'"score_2d_edges""score_2d_edges""score_2d_edges""score_2d_edges""score_2d_edges", and 'score_view_based'"score_view_based""score_view_based""score_view_based""score_view_based""score_view_based".
Thereby the scores have the same order as the thresholds given through the
parameter MinScoreMinScoreMinScoreMinScoreminScoremin_score in the matching and refinement operators.
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 未采用并行化处理。
参数
SurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDSurfaceMatchingResultIDsurfaceMatchingResultIDsurface_matching_result_id (输入控制) surface_matching_result → HSurfaceMatchingResult, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle of the surface matching result.
ResultNameResultNameResultNameResultNameresultNameresult_name (输入控制) string(-array) → HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)
Name of the result property.
默认值:
'pose'
"pose"
"pose"
"pose"
"pose"
"pose"
值列表:
'all_scores'"all_scores""all_scores""all_scores""all_scores""all_scores", 'key_points'"key_points""key_points""key_points""key_points""key_points", 'pose'"pose""pose""pose""pose""pose", 'sampled_3d_edges'"sampled_3d_edges""sampled_3d_edges""sampled_3d_edges""sampled_3d_edges""sampled_3d_edges", 'sampled_scene'"sampled_scene""sampled_scene""sampled_scene""sampled_scene""sampled_scene", 'score'"score""score""score""score""score", 'score_2d_edges'"score_2d_edges""score_2d_edges""score_2d_edges""score_2d_edges""score_2d_edges", 'score_3d_edges'"score_3d_edges""score_3d_edges""score_3d_edges""score_3d_edges""score_3d_edges", 'score_refined'"score_refined""score_refined""score_refined""score_refined""score_refined", 'score_surface'"score_surface""score_surface""score_surface""score_surface""score_surface", 'score_unrefined'"score_unrefined""score_unrefined""score_unrefined""score_unrefined""score_unrefined", 'score_view_based'"score_view_based""score_view_based""score_view_based""score_view_based""score_view_based"
ResultIndexResultIndexResultIndexResultIndexresultIndexresult_index (输入控制) integer → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Index of the matching result, starting with 0.
默认值:
0
建议值:
0, 1, 2, 3
限制:
ResultIndex >= 0
ResultValueResultValueResultValueResultValueresultValueresult_value (输出控制) integer(-array) → HTupleSequence[HTupleElementType]HTupleHtuple (integer / string / real / handle) (int / long / string / double / HHandle) (Hlong / HString / double / HHandle) (Hlong / char* / double / handle)
Value of the result property.
结果
If the handle of the result is valid, the operator
get_surface_matching_resultget_surface_matching_resultGetSurfaceMatchingResultGetSurfaceMatchingResultGetSurfaceMatchingResultget_surface_matching_result 返回值 2 ( H_MSG_TRUE )。如有必要,则抛出异常。
可能的前趋
find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model,
refine_surface_model_poserefine_surface_model_poseRefineSurfaceModelPoseRefineSurfaceModelPoseRefineSurfaceModelPoserefine_surface_model_pose
可能的后继
clear_surface_modelclear_surface_modelClearSurfaceModelClearSurfaceModelClearSurfaceModelclear_surface_model
另见
find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model,
refine_surface_model_poserefine_surface_model_poseRefineSurfaceModelPoseRefineSurfaceModelPoseRefineSurfaceModelPoserefine_surface_model_pose,
read_surface_modelread_surface_modelReadSurfaceModelReadSurfaceModelReadSurfaceModelread_surface_model,
write_surface_modelwrite_surface_modelWriteSurfaceModelWriteSurfaceModelWriteSurfaceModelwrite_surface_model,
clear_surface_modelclear_surface_modelClearSurfaceModelClearSurfaceModelClearSurfaceModelclear_surface_model
模块
三维计量