robokudo.annotators.pointcloud_check ==================================== .. py:module:: robokudo.annotators.pointcloud_check .. autoapi-nested-parse:: Point cloud validation and threshold checking. This module provides an annotator for: * Validating point cloud size * Configurable threshold checking * Customizable status responses * Optional error raising The annotator supports: * Configurable point count threshold * Different status returns for above/below threshold * Optional exception raising on failure * Detailed logging of check results .. note:: Point cloud must be available in CAS under CASViews.CLOUD. Classes ------- .. autoapisummary:: robokudo.annotators.pointcloud_check.PointcloudCheckAnnotator Module Contents --------------- .. py:class:: PointcloudCheckAnnotator(name='PointcloudcloudCheckAnnotator', descriptor=Descriptor()) Bases: :py:obj:`robokudo.annotators.core.BaseAnnotator` Check if the CASViews.Cloud contains more than X points. .. warning:: Will raise exception if point cloud not found in CAS. .. py:class:: Descriptor Bases: :py:obj:`robokudo.annotators.core.BaseAnnotator.Descriptor` Configuration descriptor for point cloud checking. .. py:class:: Parameters Parameters for configuring point cloud validation. Threshold parameters: :ivar point_threshold: Minimum required points, defaults to 100 :type point_threshold: int Status parameters: :ivar status_below_threshold: Status when below threshold, defaults to FAILURE :type status_below_threshold: py_trees.Status :ivar status_above_threshold: Status when above threshold, defaults to SUCCESS :type status_above_threshold: py_trees.Status Error handling: :ivar raise_on_failure: Whether to raise exception on failure, defaults to True :type raise_on_failure: bool .. py:attribute:: point_threshold :value: 100 .. py:attribute:: status_below_threshold .. py:attribute:: status_above_threshold .. py:attribute:: raise_on_failure :value: True .. py:attribute:: parameters .. py:method:: update() Check point cloud size against threshold. The method: * Loads point cloud from CAS * Counts number of points * Compares against threshold: * Below: Returns status_below_threshold * Above: Returns status_above_threshold * Optionally raises exceptions on failure * Logs detailed check results :return: Configured status based on point count :rtype: py_trees.Status :raises Exception: If point count fails threshold and raise_on_failure is True