Exemple #1
0
    def __init__(self, data_np=None, metadata=None, logger=None,
                 name=None, wcsclass=wcsClass, ioclass=ioClass,
                 inherit_primary_header=False):

        BaseImage.__init__(self, data_np=data_np, metadata=metadata,
                           logger=logger, name=name)

        # wcsclass specifies a pluggable WCS module
        if wcsclass is None:
            wcsclass = wcsmod.WCS
        self.wcs = wcsclass(self.logger)

        # wcsclass specifies a pluggable IO module
        if ioclass is None:
            ioclass = io_fits.fitsLoaderClass
        self.io = ioclass(self.logger)

        self.inherit_primary_header = inherit_primary_header
        if self.inherit_primary_header:
            # User wants to inherit from primary header--this will hold it
            self._primary_hdr = AstroHeader()
        else:
            self._primary_hdr = None

        if metadata is not None:
            header = self.get_header()
            self.wcs.load_header(header)

        # For navigating multidimensional data
        self.naxispath = []
        self.revnaxis = []
        self._md_data = None
Exemple #2
0
    def __init__(self, data_np=None, metadata=None, logger=None,
                 name=None, wcsclass=wcsClass, ioclass=ioClass,
                 inherit_primary_header=False):

        BaseImage.__init__(self, data_np=data_np, metadata=metadata,
                           logger=logger, name=name)

        # wcsclass specifies a pluggable WCS module
        if wcsclass is None:
            wcsclass = wcsmod.WCS
        self.wcs = wcsclass(self.logger)

        # ioclass specifies a pluggable IO module
        if ioclass is None:
            ioclass = io_fits.fitsLoaderClass
        self.io = ioclass(self.logger)
        self.io.register_type('image', self.__class__)

        self.inherit_primary_header = inherit_primary_header
        if self.inherit_primary_header:
            # User wants to inherit from primary header--this will hold it
            self._primary_hdr = AstroHeader()
        else:
            self._primary_hdr = None

        if metadata is not None:
            header = self.get_header()
            self.wcs.load_header(header)

        # For navigating multidimensional data
        self.naxispath = []
        self.revnaxis = []
        self._md_data = None
Exemple #3
0
 def __init__(self, data_np=None, metadata=None, 
              logger=None, ioclass=io_rgb.RGBFileHandler):
     
     BaseImage.__init__(self, data_np=data_np, metadata=metadata,
                        logger=logger)
     
     self.io = ioclass(self.logger)
Exemple #4
0
    def __init__(self,
                 data_np=None,
                 metadata=None,
                 logger=None,
                 wcsclass=wcsClass,
                 ioclass=ioClass):

        BaseImage.__init__(self,
                           data_np=data_np,
                           metadata=metadata,
                           logger=logger)

        # wcsclass specifies a pluggable WCS module
        if wcsclass == None:
            wcsclass = wcsmod.WCS
        self.wcs = wcsclass(self.logger)

        # wcsclass specifies a pluggable IO module
        if ioclass == None:
            ioclass = io_fits.fitsLoaderClass
        self.io = ioclass(self.logger)

        if metadata != None:
            header = self.get_header()
            self.wcs.load_header(header)

        self.naxispath = []
        self.revnaxis = []
Exemple #5
0
    def __init__(self, data_np=None, metadata=None,
                 logger=None, name=None, order=None,
                 ioclass=io_rgb.RGBFileHandler):

        BaseImage.__init__(self, data_np=data_np, metadata=metadata,
                           logger=logger, order=order, name=name)

        self.io = ioclass(self.logger)
        self.hasAlpha = 'A' in self.order
Exemple #6
0
    def __init__(self, data_np=None, metadata=None, wcsclass=None,
                 logger=None):
        if not wcsclass:
            wcsclass = wcs.WCS
        self.wcs = wcsclass()

        BaseImage.__init__(self, data_np=data_np, metadata=metadata,
                           logger=logger)
        
        self.iqcalc = iqcalc.IQCalc(logger=logger)
Exemple #7
0
    def __init__(
        self, data_np=None, metadata=None, logger=None, name=None, order="RGBA", ioclass=io_rgb.RGBFileHandler
    ):

        BaseImage.__init__(self, data_np=data_np, metadata=metadata, logger=logger, name=name)

        self.io = ioclass(self.logger)
        order = order.upper()
        self.order = order
        self.hasAlpha = "A" in order
Exemple #8
0
    def __init__(self, data_np=None, metadata=None,
                 logger=None, name=None, order='RGBA',
                 ioclass=io_rgb.RGBFileHandler):

        BaseImage.__init__(self, data_np=data_np, metadata=metadata,
                           logger=logger, name=name)

        self.io = ioclass(self.logger)
        order = order.upper()
        self.order = order
        self.hasAlpha = 'A' in order
Exemple #9
0
    def __init__(self,
                 data_np=None,
                 metadata=None,
                 wcsclass=None,
                 logger=None):
        if not wcsclass:
            wcsclass = wcs.WCS
        self.wcs = wcsclass()

        BaseImage.__init__(self,
                           data_np=data_np,
                           metadata=metadata,
                           logger=logger)

        self.iqcalc = iqcalc.IQCalc(logger=logger)
Exemple #10
0
    def __init__(self,
                 data_np=None,
                 metadata=None,
                 logger=None,
                 name=None,
                 order=None,
                 ioclass=io_rgb.RGBFileHandler):

        BaseImage.__init__(self,
                           data_np=data_np,
                           metadata=metadata,
                           logger=logger,
                           name=name)

        self.io = ioclass(self.logger)
        self._calc_order(order)
        self.hasAlpha = 'A' in self.order
Exemple #11
0
 def __init__(self, filename, row, column, data_np=None, metadata=None,
              logger=None):
     BaseImage.__init__(self, data_np=data_np, metadata=metadata,
                        logger=logger)
     self.file_name = filename
     self.abspath = os.path.abspath(filename)
     self.basename = os.path.basename(filename)
     self.row = row
     self.column = column
     try:
         self.pds_image = PDS3Image.open(filename)
         self.set_data(self.pds_image.data)
         self.position = (row, column)
         self.size = (PSIZE, PSIZE)
         self.selected = False
         self.pds_compatible = True
     except:
         self.pds_compatible = False
Exemple #12
0
    def __init__(self, data_np=None, metadata=None, logger=None,
                 wcsclass=wcsClass, ioclass=ioClass):

        BaseImage.__init__(self, data_np=data_np, metadata=metadata,
                           logger=logger)
        
        # wcsclass specifies a pluggable WCS module
        self.wcs = wcsclass(self.logger)

        # wcsclass specifies a pluggable IO module
        self.io = ioclass(self.logger)

        if metadata != None:
            header = self.get_header()
            self.wcs.load_header(header)

        self.naxispath = []
        self.revnaxis = []
 def __init__(self,
              filepath,
              metadata=None,
              logger=None,
              wavelength=float('nan'),
              unit='nm'):
     self.pds_image = PDS3Image.open(filepath)
     data = self.pds_image.image.astype(float)
     BaseImage.__init__(self,
                        data_np=data,
                        metadata=metadata,
                        logger=logger)
     self.set_data(data)
     self.image_name = os.path.basename(filepath)
     self.seen = False
     self.cuts = (None, None)
     self._check_acceptable_unit(unit)
     if np.isnan(wavelength):
         wavelength = get_wavelength(self.pds_image.label, unit)
     unit = astro_units.Unit(unit)
     self._wavelength = wavelength * unit
Exemple #14
0
 def __init__(self, filepath, name, pds_image, data_np, metadata=None,
              logger=None):
     BaseImage.__init__(self, data_np=data_np, metadata=metadata,
                        logger=logger)
     self.set_data(data_np)
     with open(filepath, 'rb') as f:
         label_array = []
         for lineno, line in enumerate(f):
             line = line.decode().rstrip()
             label_array.append(line)
             if line.strip() == 'END':
                 break
     self.data = data_np
     self.image_name = name
     self.file_name = os.path.basename(filepath)
     self.pds_image = pds_image
     self.label = label_array
     self.cuts = None
     self.sarr = None
     self.zoom = None
     self.rotation = None
     self.transforms = None
     self.not_been_displayed = True
Exemple #15
0
    def view(self, img):
        """Display numpy image array in current frame

        Parameters
        ----------
        img: numpy array
            The array containing data, it will be forced to numpy.array()

        Examples
        --------
        view(np.random.rand(100,100))

        """

        frame = self.frame()
        if not frame:
            print("No valid frame")
        else:
            img_np = np.array(img)
            image = BaseImage(data_np=img_np, logger=self.logger)
            self._set_frameinfo(data=img_np, image=image)
            self.ginga_view.set_image(image)