def removeBadPixel(self,row,col,reason='unknown'): reply = QtGui.QMessageBox.question(self, 'Confirm', 'Mark pixel (x,y)=({},{}) with tag \'{}\'?'.format(col,row,reason), QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, QtGui.QMessageBox.No) if reply == QtGui.QMessageBox.Yes: if not self.obs.hotPixFileName is None: timeMaskPath = self.obs.hotPixFileName else: raise AttributeError('obs file does not have a timeMask loaded') self.obs.hotPixFile.close() removePixel(timeMaskPath=timeMaskPath,pixelRow=row, pixelCol=col,reason=reason) self.obsMethod('loadHotPixCalFile',timeMaskPath,reasons=['hot pixel','dead pixel','unknown']) print 'pixel (x,y)=({},{}) tagged'.format(col,row)
for iSeq,obsSeq in enumerate(obsFilenames): for iObs,obsPath in enumerate(obsSeq): print 'starting',obsPath centroidPath = centroidFilenames[iSeq][iObs] yGuess,xGuess = centerPixelGuesses[iSeq] xyguess = [xGuess,yGuess] hotPath = timeMaskFilenames[iSeq][iObs] flatPath = flatFilenames[iSeq] sunsetDate = sunsetDates[iSeq] hotPixels = hotPixelLists[iSeq] coldPixels = coldPixelLists[iSeq] print coldPixels for pixel in hotPixels: col,row=pixel removePixel(timeMaskPath=hotPath,pixelRow=row,pixelCol=col,reason='manual hot pixel') # for pixel in coldPixels: # col,row=pixel # removePixel(timeMaskPath=hotPath,pixelRow=row,pixelCol=col,reason='manual cold pixel') # obs = ObsFile(obsPath) # print obsPath,obs.getFromHeader('exptime'),obs # obs.loadAllCals(timeMaskPath='') # obs.setWvlCutoffs(3000,11000) # # if bMakeNewHotPix: # hp.findHotPixels(obsFile=obs,outputFileName=hotPath,display=False,ds9display=False,fwhm=1.8,boxSize=5, nSigmaHot=4.,timeStep=30.,badTimeBuffer=20.,useRawCounts=False,weighted=True) # obs.loadHotPixCalFile(hotPath,switchOnMask=False) ##switchOnHotPixTimeMask ##switchOffHotPixTimeMask ##cc.centroidCalc(obs,centroidRa,centroidDec,guessTime=300,integrationTime=100,secondMaxCountsForDisplay=2000,HA_offset=haOffset,xyapprox=[xGuess,yGuess],outputFileName=centroidPath,usePsfFit=True)