Norm01¶
-
class
imagepypelines_image.
Norm01
(cast_type=<class 'numpy.float64'>)¶ Bases:
imagepypelines_image.blocks.NormAB
normalizes to [0,1] and then casts to given cast_type
Can be used to prepare images for file output. Equivalent to a 0% histogram stretch. Works by converting to float64, then stretching/shifting, then quantizing.
- Default Enforcement:
- image
type: np.ndarray shapes: None
- Batch Size:
“each”
Attributes Summary
arguments in the order they are expected
A unique id for this block
Number of arguments for the process function
Methods Summary
__call__
(*args)Allows any block to act as a callable, aliasing the process method
check_setup
(task_args)briefly checks setup with the provided task inputs.
copy
()fetches a shallow copy of this block with the UUID updated
deepcopy
()fetches a deep copy of this block with the UUID updated
enforce
(arg[, types, shapes, containers])sets the block up to make sure the given arg is the assigned type and shapes
all values must be json serializable
runs after
runs before all batches are processed
process
(arr)normalizes to given range and cast
rename
(name)renames the block to the given name.
Attributes Documentation
-
id
¶ A unique id for this block
This id is a combination of the block’s non-unique name and part of it’s uuid (last 6 characters by default). The entropy of this id can be increased by increasing ImagePypelines UUID_ORDER variable
- Type
Methods Documentation
-
__call__
(*args)¶ Allows any block to act as a callable, aliasing the process method
-
check_setup
(task_args)¶ briefly checks setup with the provided task inputs.
This function can be overloaded to add additional functionality if desired. By default it simply checks if too many or too few arguments were provided.
Note
Be very careful making task-specific modifications to the block setup in this function. It’s called once for every task this block is in. Changes made for one task may not apply to another task.
-
copy
()¶ fetches a shallow copy of this block with the UUID updated
-
deepcopy
()¶ fetches a deep copy of this block with the UUID updated
-
enforce
(arg, types=None, shapes=None, containers=None)¶ sets the block up to make sure the given arg is the assigned type and shapes
- Parameters
arg (str) – name the process function argument you want to enforce checking on
types (
tuple
oftype
) – the types to restrict this argument to. If left as None, then no type checking will be doneshapes (
tuple
oftype
) – the shapes to restrict this argument to. If left as None, then no shape checking will be donecontainers (
tuple
oftype
) – the containers to restrict this argument to. If left as None, then no container checking will be done. if batch_type is “each”, then the container is irrelevant and can be safely ignored!
- Returns
self
- Return type
Block
Note
This function must be called after the parent block is instantiated!
That is, in your __init__ function, you must call super().__init__ before calling self.enforce
-
get_default_node_attrs
()¶ all values must be json serializable
-
postprocess
()¶ runs after
all batches are processed
-
preprocess
()¶ runs before all batches are processed
-
process
(arr)¶ normalizes to given range and cast
- Parameters
arr (
numpy.ndarray
) – array of any shape and type- Returns
- normalized array of same shape and casted
to the given type
- Return type
-
rename
(name)¶ renames the block to the given name. The id is reset in this process