def __init__(self, name: str, value_type: str, possible_values: List[str] = None, color: List[int]=None): """ :param name: str :param value_type: str (one of TagValueType fields) :param values: list of possible values (i.e. [str]) or None :param color: [R, G, B] """ if value_type not in SUPPORTED_TAG_VALUE_TYPES: raise ValueError("value_type = {!r} is unknown, should be one of {}".format(value_type, SUPPORTED_TAG_VALUE_TYPES)) self._name = name self._value_type = value_type self._possible_values = possible_values self._color = random_rgb() if color is None else deepcopy(color) if self._value_type == TagValueType.ONEOF_STRING: if self._possible_values is None: raise ValueError("TagValueType is ONEOF_STRING. List of possible values have to be defined.") if not all(isinstance(item, str) for item in self._possible_values): raise ValueError("TagValueType is ONEOF_STRING. All possible values have to be strings") elif self._possible_values is not None: raise ValueError("TagValueType is {!r}. possible_values variable have to be None".format(self._value_type)) _validate_color(self._color)
def __init__(self, name: str, geometry_type: type, color: List[int] = None, geometry_config: dict = None, sly_id=None, hotkey: str = None): """ Class of objects (person, car, etc) with necessary properties: name, type of geometry (Polygon, Rectangle, ...) and RGB color. Only one class can be associated with Label. Args: name: string name of the class (person, car, apple, etc) geometry_type: type of the geometry. Geometry defines the shape for all Labels of this ObjClass: Polygon, Rectangle, Bitmap, Polyline, Point color: [R, G, B] geometry_config: additional settings of the geometry that is associated with ObjClass Returns: ObjClass instance """ self._name = name self._geometry_type = geometry_type self._color = random_rgb() if color is None else deepcopy(color) self._geometry_config = deepcopy(take_with_default( geometry_config, {})) self._sly_id = sly_id self._hotkey = take_with_default(hotkey, "") _validate_color(self._color)
def __init__(self, name: str, value_type: str, possible_values: List[str] = None, color: List[int] = None, sly_id=None, hotkey: str = None, applicable_to: str = None, applicable_classes: List[str] = None): """ :param name: str :param value_type: str (one of TagValueType fields) :param values: list of possible values (i.e. [str]) or None :param color: [R, G, B] """ if value_type not in SUPPORTED_TAG_VALUE_TYPES: raise ValueError( "value_type = {!r} is unknown, should be one of {}".format( value_type, SUPPORTED_TAG_VALUE_TYPES)) self._name = name self._value_type = value_type self._possible_values = possible_values self._color = random_rgb() if color is None else deepcopy(color) self._sly_id = sly_id self._hotkey = take_with_default(hotkey, "") self._applicable_to = take_with_default(applicable_to, TagApplicableTo.ALL) self._applicable_classes = take_with_default(applicable_classes, []) if self._applicable_to not in SUPPORTED_APPLICABLE_TO: raise ValueError( "applicable_to = {!r} is unknown, should be one of {}".format( self._applicable_to, SUPPORTED_APPLICABLE_TO)) if self._value_type == TagValueType.ONEOF_STRING: if self._possible_values is None: raise ValueError( "TagValueType is ONEOF_STRING. List of possible values have to be defined." ) if not all( isinstance(item, str) for item in self._possible_values): raise ValueError( "TagValueType is ONEOF_STRING. All possible values have to be strings" ) elif self._possible_values is not None: raise ValueError( "TagValueType is {!r}. possible_values variable have to be None" .format(self._value_type)) _validate_color(self._color)
def __init__(self, name: str, geometry_type: type, color: List[int]=None): """ Class of objects (person, car, etc) with necessary properties: name, type of geometry (Polygon, Rectangle, ...) and RGB color. Only one class can be associated with Label. Args: name: string name of the class (person, car, apple, etc) geometry_type: type of the geometry. Geometry defines the shape for all Labels of this ObjClass: Polygon, Rectangle, Bitmap, Polyline, Point color: [R, G, B] Returns: ObjClass instance """ self._name = name self._geometry_type = geometry_type self._color = random_rgb() if color is None else deepcopy(color) _validate_color(self._color)