コード例 #1
0
 def buildObjectList(self):
     self.logger.info("Building Object List")
     frames = findFrames(self.folder)
     frameTypes = getFrameLists(frames)  #get frame types
     self.objects = splitByHeader(frameTypes['object'], 'filter')
     #save a cache of the frame info to speed up future uses of the ZeroDarkProcessor
     with open(path.join(self.folder, 'filterLists.json'), 'w') as f:
         json.dump(self.objects, f)
     return self
コード例 #2
0
ファイル: secondpass.py プロジェクト: rovor/RedROVOR
 def buildObjectList(self):
     self.logger.info("Building Object List")
     frames = findFrames(self.folder)
     frameTypes = getFrameLists(frames)  # get frame types
     self.objects = splitByHeader(frameTypes["object"], "filter")
     # save a cache of the frame info to speed up future uses of the ZeroDarkProcessor
     with open(path.join(self.folder, "filterLists.json"), "w") as f:
         json.dump(self.objects, f)
     return self
コード例 #3
0
ファイル: firstpass.py プロジェクト: rovor/RedROVOR
 def makeFlats(self):
     self.logger.info('Making Flats')
     self.ensure_frameTypes()
     self.ensure_zero()
     self.ensure_dark()
     flatBase = path.join(self.processedFolder,'Flat')
     flats = splitByHeader(self.frameTypes['flat'],'filter')
     for filter in flats:
         outName = "{0}_{1}.fits".format(flatBase,filter)  #name is the base flat name plus the filter type
         process.makeFlat(*flats[filter],zero=self.zeroFrame,dark=self.darkFrame,output=outName)
         self.flatFrames[filter] = outName
     #TODO should we copy the flats to calibration folder?
     return self
コード例 #4
0
ファイル: firstpass.py プロジェクト: rovor/RedROVOR
 def zero_and_dark_subtract(self):
     '''subtract zeros and darks from image files
     and save in the processed folder'''
     self.logger.info("Subtracting zeros and darks")
     #ensure we have everything we need
     self.ensure_frameTypes()
     self.ensure_zero()
     self.ensure_dark()
     for (obj,flist) in self.objects.items():
         #iterate over each object
         for (filt, frames) in splitByHeader(flist,'filter').items():
             baseName = "{0}/{1}{2}-".format(self.processedFolder, obj.replace(' ','_'),filt)
             with process.ImageList(*frames) as imlist:
                 imlist.subZero(self.zeroFrame)
                 imlist.subDark(self.darkFrame)
                 imlist.updateHeaders(ccdproc='{0} CCD Processing done'.format(getTimeString("%x %X")))
                 imlist.saveIndexed(baseName) #save the processed images