22 __all__ = [
"imageReadFitsWithOptions",
23 "imageWriteFitsWithOptions",
"exposureWriteFitsWithOptions"]
28 from ._imageLib
import ImageOrigin
37 """Read an Image, Mask, MaskedImage or Exposure from a FITS file,
43 Fits file path from which to read image, mask, masked image
45 options : `lsst.daf.base.PropertySet` or `dict`
48 - llcX: bbox minimum x (int)
49 - llcY: bbox minimum y (int, must be present if llcX is present)
50 - width: bbox width (int, must be present if llcX is present)
51 - height: bbox height (int, must be present if llcX is present)
52 - imageOrigin: one of "LOCAL" or "PARENT" (has no effect unless
53 a bbox is specified by llcX, etc.)
55 Alternatively, a bounding box () can be passed on with the
56 ``"bbox"'' (`lsst.geom.Box2I`) key.
61 If options contains an unknown value for "imageOrigin"
62 lsst.pex.exceptions.NotFoundError
63 If options contains "llcX" and is missing any of
64 "llcY", "width", or "height".
66 origin = ImageOrigin.PARENT
69 bbox = options[
"bbox"]
70 elif "llcX" in options:
71 llcX = int(options[
"llcX"])
72 llcY = int(options[
"llcY"])
73 width = int(options[
"width"])
74 height = int(options[
"height"])
76 if "imageOrigin" in options:
77 originStr = str(options[
"imageOrigin"])
78 if (originStr ==
"LOCAL"):
79 origin = ImageOrigin.LOCAL
80 elif (originStr ==
"PARENT"):
81 origin = ImageOrigin.PARENT
83 raise RuntimeError(
"Unknown ImageOrigin type {}".format(originStr))
85 return cls(source, bbox=bbox, origin=origin)
89 """Write an Image or Mask to FITS, with options
94 Fits file path to which to write the image or mask.
95 options : `lsst.daf.base.PropertySet`
96 Write options. The item ``item`` is read (which defaults to "image").
97 It must contain an `lsst.daf.base.PropertySet` with data for
98 ``lsst.afw.fits.ImageWriteOptions``.
99 item : `str`, optional
100 Item to read from the ``options`` parameter.
102 if options
is not None:
105 except Exception
as e:
106 log = Log.getLogger(
"lsst.afw.image")
107 log.warning(
"Could not parse item %s from options; writing with defaults: %s", item, e)
109 self.writeFits(dest, writeOptions)
115 """Write an Exposure or MaskedImage to FITS, with options
120 Fits file path to which to write the exposure or masked image.
121 options : `lsst.daf.base.PropertySet`
122 Write options. The items "image", "mask" and "variance" are read.
123 Each must be an `lsst.daf.base.PropertySet` with data for
124 ``lsst.afw.fits.ImageWriteOptions``.
126 if options
is not None:
128 writeOptionDict = {name +
"Options":
ImageWriteOptions(options.getPropertySet(name))
129 for name
in (
"image",
"mask",
"variance")}
130 except Exception
as e:
131 log = Log.getLogger(
"lsst.afw.image")
132 log.warning(
"Could not parse options; writing with defaults: %s", e)
134 self.writeFits(dest, **writeOptionDict)
def imageWriteFitsWithOptions(self, dest, options, item="image")
def exposureWriteFitsWithOptions(self, dest, options)
def imageReadFitsWithOptions(cls, source, options)
Options for writing an image to FITS.