LSST Applications g0603fd7c41+022847dfd1,g0aad566f14+f45185db35,g180d380827+40e913b07a,g2079a07aa2+86d27d4dc4,g2305ad1205+696e5f3872,g2bbee38e9b+047b288a59,g337abbeb29+047b288a59,g33d1c0ed96+047b288a59,g3a166c0a6a+047b288a59,g3d1719c13e+f45185db35,g3de15ee5c7+5201731f0d,g487adcacf7+19f9b77d7d,g50ff169b8f+96c6868917,g52b1c1532d+585e252eca,g591dd9f2cf+248b16177b,g63cd9335cc+585e252eca,g858d7b2824+f45185db35,g88963caddf+0cb8e002cc,g991b906543+f45185db35,g99cad8db69+1747e75aa3,g9b9dfce982+78139cbddb,g9ddcbc5298+9a081db1e4,ga1e77700b3+a912195c07,gae0086650b+585e252eca,gb0e22166c9+60f28cb32d,gb3a676b8dc+b4feba26a1,gb4b16eec92+f82f04eb54,gba4ed39666+c2a2e4ac27,gbb8dafda3b+215b19b0ab,gc120e1dc64+b0284b5341,gc28159a63d+047b288a59,gc3e9b769f7+dcad4ace9a,gcf0d15dbbd+78139cbddb,gdaeeff99f8+f9a426f77a,ge79ae78c31+047b288a59,w.2024.19
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
lsst.scarlet.lite.io.ScarletComponentData Class Reference

Public Member Functions

 shape (self)
 
dict as_dict (self)
 
ScarletComponentData from_dict (cls, dict data, DTypeLike dtype=np.float32)
 

Public Attributes

 origin
 
 peak
 

Static Public Attributes

tuple origin [int, int]
 
tuple peak [float, float]
 
np model .ndarray
 

Detailed Description

Data for a component expressed as a 3D data cube

This is used for scarlet component models that are not factorized,
storing their entire model as a 3D data cube (bands, y, x).

Attributes
----------
origin:
    The lower bound of the components bounding box.
peak:
    The peak of the component.
model:
    The model for the component.

Definition at line 32 of file io.py.

Member Function Documentation

◆ as_dict()

dict lsst.scarlet.lite.io.ScarletComponentData.as_dict ( self)
Return the object encoded into a dict for JSON serialization

Returns
-------
result:
    The object encoded as a JSON compatible dict

Definition at line 56 of file io.py.

56 def as_dict(self) -> dict:
57 """Return the object encoded into a dict for JSON serialization
58
59 Returns
60 -------
61 result:
62 The object encoded as a JSON compatible dict
63 """
64 return {
65 "origin": self.origin,
66 "shape": self.model.shape,
67 "peak": self.peak,
68 "model": tuple(self.model.flatten().astype(float)),
69 }
70

◆ from_dict()

ScarletComponentData lsst.scarlet.lite.io.ScarletComponentData.from_dict ( cls,
dict data,
DTypeLike dtype = np.float32 )
Reconstruct `ScarletComponentData` from JSON compatible dict

Parameters
----------
data:
    Dictionary representation of the object
dtype:
    Datatype of the resulting model.

Returns
-------
result:
    The reconstructed object

Definition at line 72 of file io.py.

72 def from_dict(cls, data: dict, dtype: DTypeLike = np.float32) -> ScarletComponentData:
73 """Reconstruct `ScarletComponentData` from JSON compatible dict
74
75 Parameters
76 ----------
77 data:
78 Dictionary representation of the object
79 dtype:
80 Datatype of the resulting model.
81
82 Returns
83 -------
84 result:
85 The reconstructed object
86 """
87 shape = tuple(data["shape"])
88
89 return cls(
90 origin=tuple(data["origin"]), # type: ignore
91 peak=data["peak"],
92 model=np.array(data["model"]).reshape(shape).astype(dtype),
93 )
94
95
96@dataclass(kw_only=True)

◆ shape()

lsst.scarlet.lite.io.ScarletComponentData.shape ( self)

Definition at line 53 of file io.py.

53 def shape(self):
54 return self.model.shape[-2:]
55

Member Data Documentation

◆ model

np lsst.scarlet.lite.io.ScarletComponentData.model .ndarray
static

Definition at line 50 of file io.py.

◆ origin [1/2]

tuple lsst.scarlet.lite.io.ScarletComponentData.origin [int, int]
static

Definition at line 48 of file io.py.

◆ origin [2/2]

lsst.scarlet.lite.io.ScarletComponentData.origin

Definition at line 65 of file io.py.

◆ peak [1/2]

tuple lsst.scarlet.lite.io.ScarletComponentData.peak [float, float]
static

Definition at line 49 of file io.py.

◆ peak [2/2]

lsst.scarlet.lite.io.ScarletComponentData.peak

Definition at line 67 of file io.py.


The documentation for this class was generated from the following file: