Modèle de données (cdl.obj
)#
Le module cdl.obj
fournit les classes et fonctions nécessaires pour créer et manipuler des objets signal et image.
- Ces classes et fonctions sont définies dans d’autres modules :
cdl.core.model.base
cdl.core.model.image
cdl.core.model.signal
cdl.core.io
Le module cdl.obj
est donc un moyen pratique d’importer tous les objets en une seule fois. En fait, l’instruction d’importation suivante est équivalente à la précédente :
# Original import statement
from cdl.core.model.signal import SignalObj
from cdl.core.model.image import ImageObj
# Equivalent import statement
from cdl.obj import SignalObj, ImageObj
Objets communs#
- class cdl.obj.ResultProperties(title: str, array: ndarray, labels: list[str] | None, item_json: str = '')[source]#
Object representing properties serializable in signal/image metadata.
Result array is a NumPy 2-D array: each row is a list of properties, optionnally associated to a ROI (first column value).
L’index de la ROI commence à 0 (ou est simplement 0 s’il n’y a pas de ROI).
- Paramètres:
title – properties title
array – properties array
labels – properties labels (one label per column of result array)
item_json – JSON string of label item associated to this obj
Note
The array argument can be a list of lists or a NumPy array. For instance, the following are equivalent:
array = [[1, 2], [3, 4]]
array = np.array([[1, 2], [3, 4]])
Or for only one line (one single result), the following are equivalent:
array = [1, 2]
array = [[1, 2]]
array = np.array([[1, 2]])
- property shown_array: ndarray#
Return array of shown results, i.e. including complementary array (if any)
- Renvoie:
Tableau des résultats affichés
- update_obj_metadata_from_item(obj: BaseObj, item: LabelItem | None) None [source]#
Update object metadata with label item
- Paramètres:
obj – object (signal/image)
item – label item
- property label_contents: tuple[tuple[int, str], ...]#
Return label contents, i.e. a tuple of couples of (index, text) where index is the column of raw_data and text is the associated label format string
- create_label_item(obj: BaseObj) LabelItem | None [source]#
Create label item
- Paramètres:
obj – object (signal/image)
- Renvoie:
Label item
Note
The signal or image object is required as argument to create the label item because the label text may contain format strings that need to be filled with the object properties. For instance, the label text may contain the signal or image units.
- get_label_item(obj: BaseObj) LabelItem | None [source]#
Return label item associated to this result
- Paramètres:
obj – object (signal/image)
- Renvoie:
Label item
Note
The signal or image object is required as argument to eventually create the label item if it has not been created yet. See
create_label_item()
.
- class cdl.obj.ResultShape(title: str, array: ndarray, shape: Literal['rectangle', 'circle', 'ellipse', 'segment', 'marker', 'point', 'polygon'], item_json: str = '', add_label: bool = False)[source]#
Objet représentant une forme géométrique sérialisable dans les métadonnées du signal/image.
Le tableau de résultats array est un tableau NumPy 2-D : chaque ligne est un résultat, éventuellement associé à une ROI (valeur de la première colonne).
L’index de la ROI commence à 0 (ou est simplement 0 s’il n’y a pas de ROI).
- Paramètres:
title – result shape title
array – coordonnées de la forme (plusieurs formes : une forme par ligne), la première colonne est l’index de la ROI (0 s’il n’y a pas de ROI)
shape – shape kind
item_json – JSON string of label item associated to this obj
add_label – if True, add a label item (and the geometrical shape) to plot (default to False)
- Lève:
AssertionError – argument invalide
Note
The array argument can be a list of lists or a NumPy array. For instance, the following are equivalent:
array = [[1, 2], [3, 4]]
array = np.array([[1, 2], [3, 4]])
Or for only one line (one single result), the following are equivalent:
array = [1, 2]
array = [[1, 2]]
array = np.array([[1, 2]])
- check_array() None [source]#
Check if array attribute is valid
- Lève:
AssertionError – invalid array
- property shown_array: ndarray#
Return array of shown results, i.e. including complementary array (if any)
- Renvoie:
Tableau des résultats affichés
- property label_contents: tuple[tuple[int, str], ...]#
Return label contents, i.e. a tuple of couples of (index, text) where index is the column of raw_data and text is the associated label format string
- merge_with(obj: BaseObj, other_metadata: dict[str, Any]) None [source]#
Merge object resultshape with another’s metadata (obj <– other obj’s metadata)
- Paramètres:
obj – object (signal/image)
other_metadata – other object metadata
- transform_coordinates(func: Callable[[ndarray], None]) None [source]#
Transforme les coordonnées de la forme.
- Paramètres:
func – fonction pour transformer les coordonnées
- iterate_plot_items(fmt: str, lbl: bool, option: Literal['s', 'i']) Iterable [source]#
Itère sur les éléments de tracé de la forme de métadonnées.
- Paramètres:
fmt – format numérique (par exemple « %.3f »)
lbl – si True, affiche les étiquettes de forme
option – shape style option (« s » for signal, « i » for image)
- Produit (yield):
Item graphique
- create_shape_item(coords: np.ndarray, fmt: str, lbl: bool, option: Literal['s', 'i']) AnnotatedPoint | Marker | AnnotatedRectangle | AnnotatedCircle | AnnotatedSegment | AnnotatedEllipse | PolygonShape | None [source]#
Make geometrical shape plot item adapted to the shape type.
- Paramètres:
coords – données de forme
fmt – format numérique (par exemple « %.3f »)
lbl – si True, affiche les étiquettes de forme
option – shape style option (« s » for signal, « i » for image)
- Renvoie:
Item graphique
- class cdl.obj.ShapeTypes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]#
Types de formes pour les métadonnées d’image
- RECTANGLE = '_rec_'#
Forme rectangulaire
- CIRCLE = '_cir_'#
Forme circulaire
- ELLIPSE = '_ell_'#
Forme elliptique
- SEGMENT = '_seg_'#
Forme segment
- MARKER = '_mar_'#
Forme marqueur
- POINT = '_poi_'#
Forme point
- POLYGON = '_pol_'#
Forme polygonale
- class cdl.obj.UniformRandomParam(title=None, comment=None, icon='')[source]#
Paramètres de signal/image aléatoire de loi uniforme
- class cdl.obj.NormalRandomParam(title=None, comment=None, icon='')[source]#
Paramètres de signal/image aléatoire de loi normale
Modèle de signal#
- class cdl.obj.SignalObj[source]#
Objet signal
- uuid#
Par défaut : None.
- xydata#
Données. Par défaut : None.
- metadata#
Métadonnées. Par défaut : {}.
- title#
Titre du signal. Par défaut : “Sans titre”.
- xlabel#
Titre. Par défaut : “”.
- xunit#
Unité. Par défaut : “”.
- ylabel#
Titre. Par défaut : “”.
- yunit#
Unité. Par défaut : “”.
- autoscale#
Par défaut : True.
- xscalelog#
Par défaut : False.
- xscalemin#
Borne inférieure. Par défaut : None.
- xscalemax#
Borne supérieure. Par défaut : None.
- yscalelog#
Par défaut : False.
- yscalemin#
Borne inférieure. Par défaut : None.
- yscalemax#
Borne supérieure. Par défaut : None.
- classmethod create(uuid: str, xydata: numpy.ndarray, metadata: dict, title: str, xlabel: str, xunit: str, ylabel: str, yunit: str, autoscale: bool, xscalelog: bool, xscalemin: float, xscalemax: float, yscalelog: bool, yscalemin: float, yscalemax: float) cdl.core.model.signal.SignalObj #
Renvoie une nouvelle instance de
SignalObj
avec les champs initialisés aux valeurs données.- Paramètres:
uuid (str) – Par défaut : None.
xydata (numpy.ndarray) – Données. Par défaut : None.
metadata (dict) – Métadonnées. Par défaut : {}.
title (str) – Titre du signal. Par défaut : “Sans titre”.
xlabel (str) – Titre. Par défaut : “”.
xunit (str) – Unité. Par défaut : “”.
ylabel (str) – Titre. Par défaut : “”.
yunit (str) – Unité. Par défaut : “”.
autoscale (bool) – Par défaut : True.
xscalelog (bool) – Par défaut : False.
xscalemin (float) – Borne inférieure. Par défaut : None.
xscalemax (float) – Borne supérieure. Par défaut : None.
yscalelog (bool) – Par défaut : False.
yscalemin (float) – Borne inférieure. Par défaut : None.
yscalemax (float) – Borne supérieure. Par défaut : None.
- Renvoie:
Nouvelle instance de
SignalObj
.
- regenerate_uuid()[source]#
Regénère l’UUID
Cette méthode est utilisée pour régénérer l’UUID après avoir chargé l’objet à partir d’un fichier. Cela est nécessaire pour éviter les conflits d’UUID lors du chargement d’objets à partir d’un fichier sans effacer l’espace de travail au préalable.
- copy(title: str | None = None, dtype: dtype | None = None) SignalObj [source]#
Copie l’objet.
- Paramètres:
title – titre
dtype – type de données
- Renvoie:
Objet copié
- set_xydata(x: ndarray | list, y: ndarray | list, dx: ndarray | list | None = None, dy: ndarray | list | None = None) None [source]#
Définit les données xy
- Paramètres:
x – données x
y – données y
dx – données dx (optionnel : barres d’erreur)
dy – données dy (optionnel : barres d’erreur)
- get_data(roi_index: int | None = None) tuple[ndarray, ndarray] [source]#
Renvoie les données originales (si la ROI n’est pas définie ou si l”roi_index est None), ou les données de la ROI (si la ROI et l”roi_index sont définis).
- Paramètres:
roi_index – index de la ROI
- Renvoie:
Données
- update_plot_item_parameters(item: CurveItem) None [source]#
Met à jour les paramètres de l’élément de tracé à partir des données/métadonnées de l’objet
Prend en compte un sous-ensemble de paramètres d’élément de tracé. Ces paramètres peuvent avoir été remplacés par des entrées de métadonnées d’objet ou d’autres données d’objet. Le but est de mettre à jour l’élément de tracé en conséquence.
C’est presque l’opération inverse de update_metadata_from_plot_item.
- Paramètres:
item – élément de tracé
- update_metadata_from_plot_item(item: CurveItem) None [source]#
Met à jour les métadonnées à partir de l’élément de tracé.
Prend en compte un sous-ensemble de paramètres d’élément de tracé. Ces paramètres peuvent avoir été modifiés par l’utilisateur via l’interface graphique de l’élément de tracé. Le but est de mettre à jour les métadonnées en conséquence.
C’est presque l’opération inverse de update_plot_item_parameters.
- Paramètres:
item – élément de tracé
- make_item(update_from: CurveItem | None = None) CurveItem [source]#
Crée un élément de tracé à partir des données.
- Paramètres:
update_from – élément de tracé à mettre à jour à partir de
- Renvoie:
Item graphique
- update_item(item: CurveItem, data_changed: bool = True) None [source]#
Met à jour l’élément de tracé à partir des données.
- Paramètres:
item – élément de tracé
data_changed – si True, les données ont changé
- physical_to_indices(coords: list[float] | ndarray) ndarray [source]#
Convert coordinates from physical (real world) to (array) indices (pixel)
- Paramètres:
coords – coordonnées
- Renvoie:
Indices
- indices_to_physical(indices: list[int] | ndarray) ndarray [source]#
Convert coordinates from (array) indices to physical (real world)
- Paramètres:
indices – indices
- Renvoie:
Coordinates
- add_label_with_title(title: str | None = None) None [source]#
Ajouter une étiquette avec une annotation de titre
- Paramètres:
title – titre (si None, utiliser le titre du signal)
- accept(vis: object) None #
Fonction d’aide qui transmet le visiteur aux méthodes accept des éléments dans cet ensemble de données
- Paramètres:
vis (object) – objet visiteur
- add_annotations_from_file(filename: str) None #
Ajouter des annotations d’objet à partir d’un fichier (JSON).
- Paramètres:
filename – nom du fichier
- add_annotations_from_items(items: list) None #
Ajouter des annotations d’objet (éléments de tracé d’annotation).
- Paramètres:
items – éléments de tracé d’annotation
- property annotations: str#
Obtenir les annotations d’objet (chaîne JSON décrivant les éléments de tracé d’annotation)
- check_data()#
Vérifier si les données sont valides, lever une exception si ce n’est pas le cas
- Lève:
TypeError – si le type de données n’est pas pris en charge
- deserialize(reader: HDF5Reader | JSONReader | INIReader) None #
Désérialiser l’ensemble de données
- Paramètres:
reader (HDF5Reader | JSONReader | INIReader) – objet lecteur
- edit(parent: QWidget | None = None, apply: Callable | None = None, wordwrap: bool = True, size: QSize | tuple[int, int] | None = None) DataSetEditDialog #
Ouvrir une boîte de dialogue pour modifier l’ensemble de données
- Paramètres:
parent – widget parent (par défaut, None signifie pas de parent)
apply – callback d’application (par défaut, None)
wordwrap – si True, le texte du commentaire est enveloppé
size – taille de la boîte de dialogue (objet QSize ou tuple d’entiers (largeur, hauteur))
- get_comment() str | None #
Renvoyer le commentaire de l’ensemble de données
- Renvoie:
commentaire
- Type renvoyé:
str | None
- get_icon() str | None #
Renvoyer l’icône de l’ensemble de données
- Renvoie:
icône
- Type renvoyé:
str | None
- get_items(copy=False) list[DataItem] #
Renvoie tous les objets DataItem de l’instance DataSet. Ignore les objets privés qui ont un nom commençant par un tiret bas (par exemple “_private_item = …”)
- Paramètres:
copy – Si True, effectue une copie profonde de la liste DataItem, sinon renvoie l’original.
False. (Defaults to)
- Renvoie:
_description_
- get_masked_view() MaskedArray #
Retourne une vue masquée des données
- Renvoie:
Vue masquée
- get_metadata_option(name: str) Any #
Renvoyer la valeur de l’option de métadonnées
Une option de métadonnées est une entrée de métadonnées commençant par un underscore. C’est un moyen de stocker des options spécifiques à l’application dans les métadonnées de l’objet.
- Paramètres:
name – nom de l’option
- Renvoie:
Valeur de l’option
- Noms d’options valides :
“format”: chaîne de format “showlabel”: afficher l’étiquette
- classmethod get_valid_dtypenames() list[str] #
Obtenir les noms de types de données valides
- Renvoie:
Noms de types de données valides pris en charge par cette classe
- invalidate_maskdata_cache() None #
Invalider le cache des données masquées : force la reconstruction
- iterate_resultproperties() Iterable[ResultProperties] #
Iterate over object result properties.
- Produit (yield):
Result properties
- iterate_resultshapes() Iterable[ResultShape] #
Itérer sur les formes de résultat de l’objet.
- Produit (yield):
Forme résultat
- iterate_roi_indices() Generator[int | None, None, None] #
Iterate over object ROI indices (if there is no ROI, yield None)
- iterate_shape_items(editable: bool = False)#
Iterate over shape items encoded in metadata (if any).
- Paramètres:
editable – if True, annotations are editable
- Produit (yield):
Item graphique
- property maskdata: ndarray#
Renvoie les données masquées (zones en dehors des régions d’intérêt définies)
- Renvoie:
Données masquées
- read_config(conf: UserConfig, section: str, option: str) None #
Lire la configuration à partir d’une instance UserConfig
- restore_attr_from_metadata(attrname: str, default: Any) None #
Restore attribute from metadata
- Paramètres:
attrname – attribute name
default – default value
- property roi: TypeROI | None#
Return object regions of interest object.
- Renvoie:
Regions of interest object
- roi_has_changed() bool #
Renvoie True si la ROI a changé depuis le dernier appel à cette méthode.
Le premier appel à cette méthode renverra True si la ROI n’a pas encore été définie, ou si la ROI a été définie et a changé depuis le dernier appel à cette méthode. Le prochain appel à cette méthode renverra toujours False si la ROI n’a pas changé entre-temps.
- Renvoie:
True si la ROI a changé
- save_attr_to_metadata(attrname: str, new_value: Any) None #
Save attribute to metadata
- Paramètres:
attrname – attribute name
new_value – new value
- serialize(writer: HDF5Writer | JSONWriter | INIWriter) None #
Sérialiser le jeu de données
- Paramètres:
writer (HDF5Writer | JSONWriter | INIWriter) – objet écrivain
- classmethod set_global_prop(realm: str, **kwargs) None #
Définir les propriétés globales pour tous les éléments de données du jeu de données
- set_metadata_option(name: str, value: Any) None #
Définir la valeur de l’option de métadonnées
Une option de métadonnées est une entrée de métadonnées commençant par un underscore. C’est un moyen de stocker des options spécifiques à l’application dans les métadonnées de l’objet.
- Paramètres:
name – nom de l’option
value – valeur de l’option
- Noms d’options valides :
“format”: chaîne de format “showlabel”: afficher l’étiquette
- to_string(debug: bool | None = False, indent: str | None = None, align: bool | None = False, show_hidden: bool | None = True) str #
Renvoie une représentation lisible du jeu de données. Si debug est True, ajoute plus de détails sur les éléments de données
- Paramètres:
debug (bool) – si True, ajoute plus de détails sur les éléments de données
indent (str) – chaîne d’indentation (par défaut, None signifie aucune indentation)
align (bool) – si True, aligne les éléments de données (par défaut, False)
show_hidden (bool) – si True, affiche les éléments de données masqués (par défaut, True)
- Renvoie:
représentation sous forme de chaîne du jeu de données
- Type renvoyé:
- transform_shapes(orig, func, param=None)#
Appliquer la fonction de transformation aux coordonnées de la forme / des annotations du résultat.
- Paramètres:
orig – objet d’origine
func – fonction de transformation
param – paramètre de la fonction de transformation
- update_metadata_from(other_metadata: dict[str, Any]) None #
Update metadata from another object’s metadata (merge result shapes and annotations, and update the rest of the metadata).
- Paramètres:
other_metadata – other object metadata
- update_metadata_view_settings() None #
Mettre à jour les paramètres d’affichage des métadonnées à partir de Conf.view
- update_resultshapes_from(other: TypeObj) None #
Mettre à jour la forme géométrique à partir d’un autre objet (fusionner les métadonnées).
- Paramètres:
other – autre objet, à partir duquel mettre à jour cet objet
- view(parent: QWidget | None = None, wordwrap: bool = True, size: QSize | tuple[int, int] | None = None) None #
Ouvrir une boîte de dialogue pour afficher le jeu de données
- Paramètres:
parent – widget parent (par défaut, None signifie pas de parent)
wordwrap – si True, le texte du commentaire est enveloppé
size – taille de la boîte de dialogue (objet QSize ou tuple d’entiers (largeur, hauteur))
- cdl.obj.read_signal(filename: str) SignalObj [source]#
Lire un signal à partir d’un fichier.
- Paramètres:
filename – Nom de fichier.
- Renvoie:
Signal.
- cdl.obj.read_signals(filename: str) list[SignalObj] [source]#
Lire une liste de signaux à partir d’un fichier.
- Paramètres:
filename – Nom de fichier.
- Renvoie:
Liste de signaux.
- cdl.obj.create_signal_roi(coords: ndarray | list[float, float] | list[list[float, float]], indices: bool = False, singleobj: bool | None = None, inverse: bool = False, title: str = '') SignalROI [source]#
Create Signal Regions of Interest (ROI) object. More ROIs can be added to the object after creation, using the add_roi method.
- Paramètres:
coords – single ROI coordinates [xmin, xmax], or multiple ROIs coordinates [[xmin1, xmax1], [xmin2, xmax2], …] (lists or NumPy arrays)
indices – if True, coordinates are indices, if False, they are physical values (default to False for signals)
singleobj – if True, when extracting data defined by ROIs, only one object is created (default to True). If False, one object is created per single ROI. If None, the value is get from the user configuration
inverse – if True, ROI is outside the region
title – titre
- Renvoie:
Regions of Interest (ROI) object
- Lève:
ValueError – if the number of coordinates is not even
- cdl.obj.create_signal(title: str, x: ndarray | None = None, y: ndarray | None = None, dx: ndarray | None = None, dy: ndarray | None = None, metadata: dict | None = None, units: tuple[str, str] | None = None, labels: tuple[str, str] | None = None) SignalObj [source]#
Créer un nouvel objet Signal.
- Paramètres:
title – titre du signal
x – données X
y – données Y
dx – données dX (facultatif : barres d’erreur)
dy – données dY (facultatif : barres d’erreur)
metadata – métadonnées du signal
units – unités X, Y (tuple de chaînes)
labels – étiquettes X, Y (tuple de chaînes)
- Renvoie:
Objet signal
- cdl.obj.create_signal_from_param(newparam: NewSignalParam, addparam: DataSet | None = None, edit: bool = False, parent: QWidget | None = None) SignalObj | None [source]#
Créer un nouvel objet Signal à partir d’une boîte de dialogue.
- Paramètres:
newparam – nouveaux paramètres du signal
addparam – paramètres supplémentaires
edit – Ouvrir une boîte de dialogue pour modifier les paramètres (par défaut : False)
parent – widget parent
- Renvoie:
Objet Signal ou None si annulé
- cdl.obj.new_signal_param(title: str | None = None, stype: str | None = None, xmin: float | None = None, xmax: float | None = None, size: int | None = None) NewSignalParam [source]#
Créer une nouvelle instance de jeu de données Signal.
- Paramètres:
title – titre du jeu de données (par défaut : None, utilise le titre par défaut)
stype – type de signal (par défaut : None, utilise le type par défaut)
xmin – X min (par défaut : None, utilise la valeur par défaut)
xmax – X max (par défaut : None, utilise la valeur par défaut)
size – taille du signal (par défaut : None, utilise la valeur par défaut)
- Renvoie:
nouvelle instance de jeu de données signal
- Type renvoyé:
- class cdl.obj.SignalTypes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]#
Types de signal
- ZEROS = 'zéros'#
Signal rempli de zéros
- GAUSS = 'gaussienne'#
Fonction gaussienne
- LORENTZ = 'lorentzienne'#
Fonction lorentzienne
- VOIGT = 'Voigt'#
Fonction de Voigt
- UNIFORMRANDOM = 'aléatoire (loi uniforme)'#
Signal aléatoire (loi uniforme)
- NORMALRANDOM = 'aléatoire (loi normale)'#
Signal aléatoire (loi normale)
- SINUS = 'sinus'#
Fonction sinus
- COSINUS = 'cosinus'#
Fonction cosinus
- SAWTOOTH = 'dent de scie'#
Fonction en dents de scie
- TRIANGLE = 'triangle'#
Fonction triangle
- SQUARE = 'carré'#
Fonction carrée
- SINC = 'sinus cardinal'#
Sinus cardinal
- STEP = 'échelon'#
Fonction échelon
- EXPONENTIAL = 'exponentielle'#
Exponential function
- PULSE = 'impulsion'#
Pulse function
- POLYNOMIAL = 'polynomial'#
Polynomial function
- EXPERIMENTAL = 'expérimental'#
Experimental function
- class cdl.obj.NewSignalParam[source]#
Nouveau jeu de données signal
- title#
Titre. Par défaut : None.
- xmin#
Par défaut : -10.0.
- xmax#
Par défaut : 10.0.
- size#
Taille. Nombre de points. Entier supérieur à 1. Par défaut : 500.
- stype#
Sélection unique parmi : SignalTypes.ZEROS, SignalTypes.GAUSS, SignalTypes.LORENTZ, SignalTypes.VOIGT, SignalTypes.UNIFORMRANDOM, SignalTypes.NORMALRANDOM, SignalTypes.SINUS, SignalTypes.COSINUS, SignalTypes.SAWTOOTH, SignalTypes.TRIANGLE, SignalTypes.SQUARE, SignalTypes.SINC, SignalTypes.STEP, SignalTypes.EXPONENTIAL, SignalTypes.PULSE, SignalTypes.POLYNOMIAL, SignalTypes.EXPERIMENTAL. Par défaut : SignalTypes.ZEROS.
- classmethod create(title: str, xmin: float, xmax: float, size: int, stype: cdl.core.model.signal.SignalTypes) cdl.core.model.signal.NewSignalParam #
Renvoie une nouvelle instance de
NewSignalParam
avec les champs initialisés aux valeurs données.- Paramètres:
title (str) – Titre. Par défaut : None.
xmin (float) – Par défaut : -10.0.
xmax (float) – Par défaut : 10.0.
size (int) – Taille. Nombre de points. Entier supérieur à 1. Par défaut : 500.
stype (cdl.core.model.signal.SignalTypes) – Sélection unique parmi : SignalTypes.ZEROS, SignalTypes.GAUSS, SignalTypes.LORENTZ, SignalTypes.VOIGT, SignalTypes.UNIFORMRANDOM, SignalTypes.NORMALRANDOM, SignalTypes.SINUS, SignalTypes.COSINUS, SignalTypes.SAWTOOTH, SignalTypes.TRIANGLE, SignalTypes.SQUARE, SignalTypes.SINC, SignalTypes.STEP, SignalTypes.EXPONENTIAL, SignalTypes.PULSE, SignalTypes.POLYNOMIAL, SignalTypes.EXPERIMENTAL. Par défaut : SignalTypes.ZEROS.
- Renvoie:
Nouvelle instance de
NewSignalParam
.
- class cdl.obj.GaussLorentzVoigtParam[source]#
Paramètres pour les fonctions gaussiennes et lorentziennes
- a#
Par défaut : 1.0.
- ymin#
Par défaut : 0.0.
- sigma#
σ. Par défaut : 1.0.
- mu#
μ. Par défaut : 0.0.
- classmethod create(a: float, ymin: float, sigma: float, mu: float) cdl.core.model.signal.GaussLorentzVoigtParam #
Renvoie une nouvelle instance de
GaussLorentzVoigtParam
avec les champs initialisés aux valeurs données.- Paramètres:
- Renvoie:
Nouvelle instance de
GaussLorentzVoigtParam
.
- class cdl.obj.StepParam[source]#
Paramètres pour la fonction d’étape
- a1#
Par défaut : 0.0.
- a2#
Par défaut : 1.0.
- x0#
Par défaut : 0.0.
- class cdl.obj.PeriodicParam[source]#
Paramètres pour les fonctions périodiques
- a#
Par défaut : 1.0.
- ymin#
Par défaut : 0.0.
- freq#
Fréquence. Par défaut : 1.0.
- freq_unit#
Unité. Sélection unique parmi : FreqUnits.HZ, FreqUnits.KHZ, FreqUnits.MHZ, FreqUnits.GHZ. Par défaut : FreqUnits.HZ.
- phase#
Flottant, unité : °. Par défaut : 0.0.
- classmethod create(a: float, ymin: float, freq: float, freq_unit: cdl.core.model.signal.FreqUnits, phase: float) cdl.core.model.signal.PeriodicParam #
Renvoie une nouvelle instance de
PeriodicParam
avec les champs initialisés aux valeurs données.- Paramètres:
a (float) – Par défaut : 1.0.
ymin (float) – Par défaut : 0.0.
freq (float) – Fréquence. Par défaut : 1.0.
freq_unit (cdl.core.model.signal.FreqUnits) – Unité. Sélection unique parmi : FreqUnits.HZ, FreqUnits.KHZ, FreqUnits.MHZ, FreqUnits.GHZ. Par défaut : FreqUnits.HZ.
phase (float) – Flottant, unité : °. Par défaut : 0.0.
- Renvoie:
Nouvelle instance de
PeriodicParam
.
- class cdl.obj.ROI1DParam[source]#
Signal ROI parameters
- xmin#
Coordonnée du premier point. Par défaut : None.
- xmax#
Coordonnée du dernier point. Par défaut : None.
- classmethod create(xmin: float, xmax: float) cdl.core.model.signal.ROI1DParam #
Renvoie une nouvelle instance de
ROI1DParam
avec les champs initialisés aux valeurs données.- Paramètres:
- Renvoie:
Nouvelle instance de
ROI1DParam
.
- class cdl.obj.SignalROI(singleobj: bool | None = None, inverse: bool = False)[source]#
Signal Regions of Interest
- Paramètres:
singleobj – if True, when extracting data defined by ROIs, only one object is created (default to True). If False, one object is created per single ROI. If None, the value is get from the user configuration
inverse – if True, ROI is outside the region
Modèle d’image#
- class cdl.obj.ImageObj[source]#
Objet image
- uuid#
Par défaut : None.
- data#
Données. Par défaut : None.
- metadata#
Métadonnées. Par défaut : {}.
- x0#
X0. Par défaut : 0.0.
- y0#
Y0. Par défaut : 0.0.
- dx#
Δx. Flottant, non nul. Par défaut : 1.0.
- dy#
Δy. Flottant, non nul. Par défaut : 1.0.
- title#
Titre de l’image. Par défaut : “Sans titre”.
- xlabel#
Titre. Par défaut : “”.
- xunit#
Unité. Par défaut : “”.
- ylabel#
Titre. Par défaut : “”.
- yunit#
Unité. Par défaut : “”.
- zlabel#
Titre. Par défaut : “”.
- zunit#
Unité. Par défaut : “”.
- autoscale#
Par défaut : True.
- xscalelog#
Par défaut : False.
- xscalemin#
Borne inférieure. Par défaut : None.
- xscalemax#
Borne supérieure. Par défaut : None.
- yscalelog#
Par défaut : False.
- yscalemin#
Borne inférieure. Par défaut : None.
- yscalemax#
Borne supérieure. Par défaut : None.
- zscalemin#
Borne inférieure. Par défaut : None.
- zscalemax#
Borne supérieure. Par défaut : None.
- classmethod create(uuid: str, data: numpy.ndarray, metadata: dict, x0: float, y0: float, dx: float, dy: float, title: str, xlabel: str, xunit: str, ylabel: str, yunit: str, zlabel: str, zunit: str, autoscale: bool, xscalelog: bool, xscalemin: float, xscalemax: float, yscalelog: bool, yscalemin: float, yscalemax: float, zscalemin: float, zscalemax: float) cdl.core.model.image.ImageObj #
Renvoie une nouvelle instance de
ImageObj
avec les champs initialisés aux valeurs données.- Paramètres:
uuid (str) – Par défaut : None.
data (numpy.ndarray) – Données. Par défaut : None.
metadata (dict) – Métadonnées. Par défaut : {}.
x0 (float) – X0. Par défaut : 0.0.
y0 (float) – Y0. Par défaut : 0.0.
dx (float) – Δx. Flottant, non nul. Par défaut : 1.0.
dy (float) – Δy. Flottant, non nul. Par défaut : 1.0.
title (str) – Titre de l’image. Par défaut : “Sans titre”.
xlabel (str) – Titre. Par défaut : “”.
xunit (str) – Unité. Par défaut : “”.
ylabel (str) – Titre. Par défaut : “”.
yunit (str) – Unité. Par défaut : “”.
zlabel (str) – Titre. Par défaut : “”.
zunit (str) – Unité. Par défaut : “”.
autoscale (bool) – Par défaut : True.
xscalelog (bool) – Par défaut : False.
xscalemin (float) – Borne inférieure. Par défaut : None.
xscalemax (float) – Borne supérieure. Par défaut : None.
yscalelog (bool) – Par défaut : False.
yscalemin (float) – Borne inférieure. Par défaut : None.
yscalemax (float) – Borne supérieure. Par défaut : None.
zscalemin (float) – Borne inférieure. Par défaut : None.
zscalemax (float) – Borne supérieure. Par défaut : None.
- Renvoie:
Nouvelle instance de
ImageObj
.
- regenerate_uuid()[source]#
Regénère l’UUID
Cette méthode est utilisée pour régénérer l’UUID après avoir chargé l’objet à partir d’un fichier. Cela est nécessaire pour éviter les conflits d’UUID lors du chargement d’objets à partir d’un fichier sans effacer l’espace de travail au préalable.
- set_metadata_from(obj: Mapping | dict) None [source]#
Définir les métadonnées à partir de l’objet : semblable à un dictionnaire
- Paramètres:
obj – objet
- property dicom_template#
Obtenir le modèle DICOM
- get_data(roi_index: int | None = None) ndarray [source]#
Renvoie les données originales (si la ROI n’est pas définie ou si l”roi_index est None), ou les données de la ROI (si la ROI et l”roi_index sont définis).
- Paramètres:
roi_index – index de la ROI
- Renvoie:
Données masquées
- copy(title: str | None = None, dtype: dtype | None = None) ImageObj [source]#
Copie l’objet.
- Paramètres:
title – titre
dtype – type de données
- Renvoie:
Objet copié
- set_data_type(dtype: dtype) None [source]#
Change data type. If data type is integer, clip values to the new data type’s range, thus avoiding overflow or underflow.
- Paramètres:
type (Data)
- update_plot_item_parameters(item: MaskedImageItem) None [source]#
Met à jour les paramètres de l’élément de tracé à partir des données/métadonnées de l’objet
Prend en compte un sous-ensemble de paramètres d’élément de tracé. Ces paramètres peuvent avoir été remplacés par des entrées de métadonnées d’objet ou d’autres données d’objet. Le but est de mettre à jour l’élément de tracé en conséquence.
C’est presque l’opération inverse de update_metadata_from_plot_item.
- Paramètres:
item – élément de tracé
- update_metadata_from_plot_item(item: MaskedImageItem) None [source]#
Met à jour les métadonnées à partir de l’élément de tracé.
Prend en compte un sous-ensemble de paramètres d’élément de tracé. Ces paramètres peuvent avoir été modifiés par l’utilisateur via l’interface graphique de l’élément de tracé. Le but est de mettre à jour les métadonnées en conséquence.
C’est presque l’opération inverse de update_plot_item_parameters.
- Paramètres:
item – élément de tracé
- make_item(update_from: MaskedImageItem | None = None) MaskedImageItem [source]#
Crée un élément de tracé à partir des données.
- Paramètres:
update_from – mettre à jour à partir de l’élément de tracé
- Renvoie:
Item graphique
- update_item(item: MaskedImageItem, data_changed: bool = True) None [source]#
Met à jour l’élément de tracé à partir des données.
- Paramètres:
item – élément de tracé
data_changed – si True, les données ont changé
- physical_to_indices(coords: list[float], clip: bool = False) ndarray [source]#
Convert coordinates from physical (real world) to (array) indices (pixel)
- Paramètres:
coords – coordonnées
clip – if True, clip values to image boundaries
- Renvoie:
Indices
- indices_to_physical(indices: list[float | int] | ndarray) ndarray [source]#
Convert coordinates from (array) indices to physical (real world)
- Paramètres:
indices – indices
- Renvoie:
Coordinates
- add_label_with_title(title: str | None = None) None [source]#
Ajouter une étiquette avec une annotation de titre
- Paramètres:
title – titre (si None, utilise le titre de l’image)
- accept(vis: object) None #
Fonction d’aide qui transmet le visiteur aux méthodes accept des éléments dans cet ensemble de données
- Paramètres:
vis (object) – objet visiteur
- add_annotations_from_file(filename: str) None #
Ajouter des annotations d’objet à partir d’un fichier (JSON).
- Paramètres:
filename – nom du fichier
- add_annotations_from_items(items: list) None #
Ajouter des annotations d’objet (éléments de tracé d’annotation).
- Paramètres:
items – éléments de tracé d’annotation
- property annotations: str#
Obtenir les annotations d’objet (chaîne JSON décrivant les éléments de tracé d’annotation)
- check_data()#
Vérifier si les données sont valides, lever une exception si ce n’est pas le cas
- Lève:
TypeError – si le type de données n’est pas pris en charge
- deserialize(reader: HDF5Reader | JSONReader | INIReader) None #
Désérialiser l’ensemble de données
- Paramètres:
reader (HDF5Reader | JSONReader | INIReader) – objet lecteur
- edit(parent: QWidget | None = None, apply: Callable | None = None, wordwrap: bool = True, size: QSize | tuple[int, int] | None = None) DataSetEditDialog #
Ouvrir une boîte de dialogue pour modifier l’ensemble de données
- Paramètres:
parent – widget parent (par défaut, None signifie pas de parent)
apply – callback d’application (par défaut, None)
wordwrap – si True, le texte du commentaire est enveloppé
size – taille de la boîte de dialogue (objet QSize ou tuple d’entiers (largeur, hauteur))
- get_comment() str | None #
Renvoyer le commentaire de l’ensemble de données
- Renvoie:
commentaire
- Type renvoyé:
str | None
- get_icon() str | None #
Renvoyer l’icône de l’ensemble de données
- Renvoie:
icône
- Type renvoyé:
str | None
- get_items(copy=False) list[DataItem] #
Renvoie tous les objets DataItem de l’instance DataSet. Ignore les objets privés qui ont un nom commençant par un tiret bas (par exemple “_private_item = …”)
- Paramètres:
copy – Si True, effectue une copie profonde de la liste DataItem, sinon renvoie l’original.
False. (Defaults to)
- Renvoie:
_description_
- get_masked_view() MaskedArray #
Retourne une vue masquée des données
- Renvoie:
Vue masquée
- get_metadata_option(name: str) Any #
Renvoyer la valeur de l’option de métadonnées
Une option de métadonnées est une entrée de métadonnées commençant par un underscore. C’est un moyen de stocker des options spécifiques à l’application dans les métadonnées de l’objet.
- Paramètres:
name – nom de l’option
- Renvoie:
Valeur de l’option
- Noms d’options valides :
“format”: chaîne de format “showlabel”: afficher l’étiquette
- classmethod get_valid_dtypenames() list[str] #
Obtenir les noms de types de données valides
- Renvoie:
Noms de types de données valides pris en charge par cette classe
- invalidate_maskdata_cache() None #
Invalider le cache des données masquées : force la reconstruction
- iterate_resultproperties() Iterable[ResultProperties] #
Iterate over object result properties.
- Produit (yield):
Result properties
- iterate_resultshapes() Iterable[ResultShape] #
Itérer sur les formes de résultat de l’objet.
- Produit (yield):
Forme résultat
- iterate_roi_indices() Generator[int | None, None, None] #
Iterate over object ROI indices (if there is no ROI, yield None)
- iterate_shape_items(editable: bool = False)#
Iterate over shape items encoded in metadata (if any).
- Paramètres:
editable – if True, annotations are editable
- Produit (yield):
Item graphique
- property maskdata: ndarray#
Renvoie les données masquées (zones en dehors des régions d’intérêt définies)
- Renvoie:
Données masquées
- read_config(conf: UserConfig, section: str, option: str) None #
Lire la configuration à partir d’une instance UserConfig
- restore_attr_from_metadata(attrname: str, default: Any) None #
Restore attribute from metadata
- Paramètres:
attrname – attribute name
default – default value
- property roi: TypeROI | None#
Return object regions of interest object.
- Renvoie:
Regions of interest object
- roi_has_changed() bool #
Renvoie True si la ROI a changé depuis le dernier appel à cette méthode.
Le premier appel à cette méthode renverra True si la ROI n’a pas encore été définie, ou si la ROI a été définie et a changé depuis le dernier appel à cette méthode. Le prochain appel à cette méthode renverra toujours False si la ROI n’a pas changé entre-temps.
- Renvoie:
True si la ROI a changé
- save_attr_to_metadata(attrname: str, new_value: Any) None #
Save attribute to metadata
- Paramètres:
attrname – attribute name
new_value – new value
- serialize(writer: HDF5Writer | JSONWriter | INIWriter) None #
Sérialiser le jeu de données
- Paramètres:
writer (HDF5Writer | JSONWriter | INIWriter) – objet écrivain
- classmethod set_global_prop(realm: str, **kwargs) None #
Définir les propriétés globales pour tous les éléments de données du jeu de données
- set_metadata_option(name: str, value: Any) None #
Définir la valeur de l’option de métadonnées
Une option de métadonnées est une entrée de métadonnées commençant par un underscore. C’est un moyen de stocker des options spécifiques à l’application dans les métadonnées de l’objet.
- Paramètres:
name – nom de l’option
value – valeur de l’option
- Noms d’options valides :
“format”: chaîne de format “showlabel”: afficher l’étiquette
- to_string(debug: bool | None = False, indent: str | None = None, align: bool | None = False, show_hidden: bool | None = True) str #
Renvoie une représentation lisible du jeu de données. Si debug est True, ajoute plus de détails sur les éléments de données
- Paramètres:
debug (bool) – si True, ajoute plus de détails sur les éléments de données
indent (str) – chaîne d’indentation (par défaut, None signifie aucune indentation)
align (bool) – si True, aligne les éléments de données (par défaut, False)
show_hidden (bool) – si True, affiche les éléments de données masqués (par défaut, True)
- Renvoie:
représentation sous forme de chaîne du jeu de données
- Type renvoyé:
- transform_shapes(orig, func, param=None)#
Appliquer la fonction de transformation aux coordonnées de la forme / des annotations du résultat.
- Paramètres:
orig – objet d’origine
func – fonction de transformation
param – paramètre de la fonction de transformation
- update_metadata_from(other_metadata: dict[str, Any]) None #
Update metadata from another object’s metadata (merge result shapes and annotations, and update the rest of the metadata).
- Paramètres:
other_metadata – other object metadata
- update_metadata_view_settings() None #
Mettre à jour les paramètres d’affichage des métadonnées à partir de Conf.view
- update_resultshapes_from(other: TypeObj) None #
Mettre à jour la forme géométrique à partir d’un autre objet (fusionner les métadonnées).
- Paramètres:
other – autre objet, à partir duquel mettre à jour cet objet
- view(parent: QWidget | None = None, wordwrap: bool = True, size: QSize | tuple[int, int] | None = None) None #
Ouvrir une boîte de dialogue pour afficher le jeu de données
- Paramètres:
parent – widget parent (par défaut, None signifie pas de parent)
wordwrap – si True, le texte du commentaire est enveloppé
size – taille de la boîte de dialogue (objet QSize ou tuple d’entiers (largeur, hauteur))
- cdl.obj.read_image(filename: str) ImageObj [source]#
Lire une image à partir d’un fichier.
- Paramètres:
filename – Nom de fichier.
- Renvoie:
Image.
- cdl.obj.read_images(filename: str) list[ImageObj] [source]#
Lire une liste d’images à partir d’un fichier.
- Paramètres:
filename – Nom de fichier.
- Renvoie:
Liste d’images.
- cdl.obj.create_image_roi(geometry: Literal['rectangle', 'circle', 'polygon'], coords: ndarray | list[float] | list[list[float]], indices: bool = True, singleobj: bool | None = None, inverse: bool = False, title: str = '') ImageROI [source]#
Create Image Regions of Interest (ROI) object. More ROIs can be added to the object after creation, using the add_roi method.
- Paramètres:
geometry – ROI type (“rectangle”, “circle”, “polygon”)
coords – ROI coords (physical coordinates), [x0, y0, dx, dy] for a rectangle, [xc, yc, r] for a circle, or [x0, y0, x1, y1, …] for a polygon (lists or NumPy arrays are accepted). For multiple ROIs, nested lists or NumPy arrays are accepted but with a common geometry type (e.g. [[xc1, yc1, r1], [xc2, yc2, r2], …] for circles).
indices – if True, coordinates are indices, if False, they are physical values (default to True for images)
singleobj – if True, when extracting data defined by ROIs, only one object is created (default to True). If False, one object is created per single ROI. If None, the value is get from the user configuration
inverse – if True, ROI is outside the region
title – titre
- Renvoie:
Regions of Interest (ROI) object
- Lève:
ValueError – if ROI type is unknown or if the number of coordinates is invalid
- cdl.obj.create_image(title: str, data: ndarray | None = None, metadata: dict | None = None, units: tuple | None = None, labels: tuple | None = None) ImageObj [source]#
Créer un nouvel objet Image
- Paramètres:
title – titre de l’image
data – données de l’image
metadata – métadonnées de l’image
units – unités X, Y, Z (tuple de chaînes)
labels – étiquettes X, Y, Z (tuple de chaînes)
- Renvoie:
Objet image
- cdl.obj.create_image_from_param(newparam: NewImageParam, addparam: gds.DataSet | None = None, edit: bool = False, parent: QW.QWidget | None = None) ImageObj | None [source]#
Créer un nouvel objet Image à partir d’une boîte de dialogue.
- Paramètres:
newparam – nouveaux paramètres de l’image
addparam – paramètres supplémentaires
edit – Ouvrir une boîte de dialogue pour modifier les paramètres (par défaut : False)
parent – widget parent
- Renvoie:
Nouvel objet image ou None si l’utilisateur a annulé
- cdl.obj.new_image_param(title: str | None = None, itype: ImageTypes | None = None, height: int | None = None, width: int | None = None, dtype: ImageDatatypes | None = None) NewImageParam [source]#
Créer une nouvelle instance de jeu de données Image.
- Paramètres:
title – titre du jeu de données (par défaut : None, utilise le titre par défaut)
itype – type d’image (par défaut : None, utilise le type par défaut)
height – hauteur de l’image (par défaut : None, utilise la hauteur par défaut)
width – largeur de l’image (par défaut : None, utilise la largeur par défaut)
dtype – type de données de l’image (par défaut : None, utilise le type de données par défaut)
- Renvoie:
Nouvelle instance de jeu de données image
- class cdl.obj.ImageTypes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]#
Types d’image
- ZEROS = 'zéros'#
Image remplie de zéros
- EMPTY = 'vide'#
Image vide (remplie de données de l’état de la mémoire)
- GAUSS = 'gaussienne'#
Image gaussienne 2D
- UNIFORMRANDOM = 'aléatoire (loi uniforme)'#
Image remplie de données aléatoires (loi uniforme)
- NORMALRANDOM = 'aléatoire (loi normale)'#
Image remplie de données aléatoires (loi normale)
- class cdl.obj.NewImageParam[source]#
Nouveau jeu de données image
- title#
Titre. Par défaut : None.
- height#
Hauteur. Hauteur de l’image : nombre de lignes. Entier supérieur à 1. Par défaut : None.
- width#
Largeur. Largeur de l’image : nombre de colonnes. Entier supérieur à 1. Par défaut : None.
- dtype#
Type de données. Sélection unique parmi : ImageDatatypes.UINT8, ImageDatatypes.UINT16, ImageDatatypes.INT16, ImageDatatypes.FLOAT32, ImageDatatypes.FLOAT64. Par défaut : ImageDatatypes.UINT8.
- itype#
Sélection unique parmi : ImageTypes.ZEROS, ImageTypes.EMPTY, ImageTypes.GAUSS, ImageTypes.UNIFORMRANDOM, ImageTypes.NORMALRANDOM. Par défaut : ImageTypes.ZEROS.
- classmethod create(title: str, height: int, width: int, dtype: cdl.core.model.image.ImageDatatypes, itype: cdl.core.model.image.ImageTypes) cdl.core.model.image.NewImageParam #
Renvoie une nouvelle instance de
NewImageParam
avec les champs initialisés aux valeurs données.- Paramètres:
title (str) – Titre. Par défaut : None.
height (int) – Hauteur. Hauteur de l’image : nombre de lignes. Entier supérieur à 1. Par défaut : None.
width (int) – Largeur. Largeur de l’image : nombre de colonnes. Entier supérieur à 1. Par défaut : None.
dtype (cdl.core.model.image.ImageDatatypes) – Type de données. Sélection unique parmi : ImageDatatypes.UINT8, ImageDatatypes.UINT16, ImageDatatypes.INT16, ImageDatatypes.FLOAT32, ImageDatatypes.FLOAT64. Par défaut : ImageDatatypes.UINT8.
itype (cdl.core.model.image.ImageTypes) – Sélection unique parmi : ImageTypes.ZEROS, ImageTypes.EMPTY, ImageTypes.GAUSS, ImageTypes.UNIFORMRANDOM, ImageTypes.NORMALRANDOM. Par défaut : ImageTypes.ZEROS.
- Renvoie:
Nouvelle instance de
NewImageParam
.
- class cdl.obj.Gauss2DParam[source]#
Paramètres gaussiens 2D
- a#
Norm. Par défaut : None.
- xmin#
Par défaut : -10.
- sigma#
σ. Par défaut : 1.0.
- xmax#
Par défaut : 10.
- mu#
μ. Par défaut : 0.0.
- ymin#
Par défaut : -10.
- x0#
Par défaut : 0.
- ymax#
Par défaut : 10.
- y0#
Par défaut : 0.
- classmethod create(a: float, xmin: float, sigma: float, xmax: float, mu: float, ymin: float, x0: float, ymax: float, y0: float) cdl.core.model.image.Gauss2DParam #
Renvoie une nouvelle instance de
Gauss2DParam
avec les champs initialisés aux valeurs données.- Paramètres:
- Renvoie:
Nouvelle instance de
Gauss2DParam
.
- class cdl.obj.ROI2DParam[source]#
Image ROI parameters
- geometry#
Géométrie. Sélection unique parmi : “rectangle”, “circle”, “polygon”. Par défaut : “rectangle”.
- x0#
X0. Entier, unité : pixels. Par défaut : None.
- y0#
Y0. Entier, unité : pixels. Par défaut : None.
- dx#
ΔX. Entier, unité : pixels. Par défaut : None.
- dy#
ΔY. Entier, unité : pixels. Par défaut : None.
- xc#
XC. Entier, unité : pixels. Par défaut : None.
- yc#
YC. Entier, unité : pixels. Par défaut : None.
- r#
Rayon. Entier, unité : pixels. Par défaut : None.
- points#
Coordonnées (pixels). Par défaut : None.
- classmethod create(geometry: str, x0: int, y0: int, dx: int, dy: int, xc: int, yc: int, r: int, points: numpy.ndarray) cdl.core.model.image.ROI2DParam #
Renvoie une nouvelle instance de
ROI2DParam
avec les champs initialisés aux valeurs données.- Paramètres:
geometry (str) – Géométrie. Sélection unique parmi : “rectangle”, “circle”, “polygon”. Par défaut : “rectangle”.
x0 (int) – X0. Entier, unité : pixels. Par défaut : None.
y0 (int) – Y0. Entier, unité : pixels. Par défaut : None.
dx (int) – ΔX. Entier, unité : pixels. Par défaut : None.
dy (int) – ΔY. Entier, unité : pixels. Par défaut : None.
xc (int) – XC. Entier, unité : pixels. Par défaut : None.
yc (int) – YC. Entier, unité : pixels. Par défaut : None.
r (int) – Rayon. Entier, unité : pixels. Par défaut : None.
points (numpy.ndarray) – Coordonnées (pixels). Par défaut : None.
- Renvoie:
Nouvelle instance de
ROI2DParam
.
- to_single_roi(obj: ImageObj, title: str = '') PolygonalROI | RectangularROI | CircularROI [source]#
Convert parameters to single ROI
- Paramètres:
obj – image object (used for conversion of pixel to physical coordinates)
title – ROI title
- Renvoie:
Single ROI
- get_extracted_roi(obj: ImageObj) ImageROI | None [source]#
Get extracted ROI, i.e. the remaining ROI after extracting ROI from image.
- Paramètres:
obj – image object (used for conversion of pixel to physical coordinates)
When extracting ROIs from an image to multiple images (i.e. one image per ROI), this method returns the ROI that has to be kept in the destination image. This is not necessary for a rectangular ROI: the destination image is simply a crop of the source image according to the ROI coordinates. But for a circular ROI or a polygonal ROI, the destination image is a crop of the source image according to the bounding box of the ROI. Thus, to avoid any loss of information, a ROI has to be defined for the destination image: this is the ROI returned by this method. It’s simply the same as the source ROI, but with coordinates adjusted to the destination image. One may called this ROI the « extracted ROI ».
- class cdl.obj.ImageROI(singleobj: bool | None = None, inverse: bool = False)[source]#
Image Regions of Interest
- Paramètres:
singleobj – if True, when extracting data defined by ROIs, only one object is created (default to True). If False, one object is created per single ROI. If None, the value is get from the user configuration
inverse – if True, ROI is outside the region
- class cdl.obj.ImageDatatypes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]#
Types de données d’image
- UINT8 = 'uint8'#
Entier non signé stocké avec 8 bits
- UINT16 = 'uint16'#
Entier non signé stocké avec 16 bits
- INT16 = 'int16'#
Entier signé stocké avec 16 bits
- FLOAT32 = 'float32'#
Nombre flottant stocké avec 32 bits
- FLOAT64 = 'float64'#
Nombre flottant stocké avec 64 bits