# get the time and set up labels and filenames obsdir = get_obsdir() now = time.localtime() imag -= dark min = stats.scoreatpercentile(imag.flat, 1) max = stats.scoreatpercentile(imag.flat, 99.5) filename = obsdir + time.strftime("AllSky_%Y%m%d_%H%M%S.fits") jpg = obsdir + time.strftime("AllSky_%Y%m%d_%H%M%S.jpg") date = time.strftime("%Y/%m/%d") sast = time.strftime("%H:%M:%S") elabel = "Exposure: %f sec" % exp # set up and create the FITS file cards = [] cards.append(pyfits.createCard("DATEOBS", date, "Date of observation")) cards.append( pyfits.createCard("TIMEOBS", sast, "Time of observation (SAST)")) cards.append(pyfits.createCard("EXPTIME", exp, "Exposure time (s)")) header = pyfits.Header(cards=cards) pyfits.writeto(filename, imag, header=header, clobber=True) # set up and create the JPG file fig = pl.figure() ax = fig.add_subplot(111) ax.set_axis_off() ax.set_xticklabels([]) ax.set_yticklabels([]) ax.set_xticks([]) ax.set_yticks([]) pl.imshow(np.flipud(imag),
# get the time and set up labels and filenames obsdir = get_obsdir() now = time.localtime() imag -= dark min = stats.scoreatpercentile(imag.flat, 1) max = stats.scoreatpercentile(imag.flat, 99.5) filename = obsdir+time.strftime("AllSky_%Y%m%d_%H%M%S.fits") jpg = obsdir+time.strftime("AllSky_%Y%m%d_%H%M%S.jpg") date = time.strftime("%Y/%m/%d") sast = time.strftime("%H:%M:%S") elabel = "Exposure: %f sec" % exp # set up and create the FITS file cards = [] cards.append(pyfits.createCard("DATEOBS", date, "Date of observation")) cards.append(pyfits.createCard("TIMEOBS", sast, "Time of observation (SAST)")) cards.append(pyfits.createCard("EXPTIME", exp, "Exposure time (s)")) header = pyfits.Header(cards=cards) pyfits.writeto(filename, imag, header=header, clobber=True) # set up and create the JPG file fig = pl.figure() ax = fig.add_subplot(111) ax.set_axis_off() ax.set_xticklabels([]) ax.set_yticklabels([]) ax.set_xticks([]) ax.set_yticks([])
def makeHeader(self, ccdtype, exptime): cam = BCAM.camera cards = [] cards.append(pyfits.createCard("CCDTYPE", ccdtype, "CCD type")) cards.append(pyfits.createCard("EXPTIME", exptime, "Exposure time (s)")) cards.append( pyfits.createCard("PXHEIGHT", cam.GetPixelHeight(), "Pixel height in um")) cards.append( pyfits.createCard("PXWIDTH", cam.GetPixelWidth(), "Pixel width in um")) cards.append( pyfits.createCard("CCDMAX_X", cam.GetMaxImgCols(), "CCD width in pixels")) cards.append( pyfits.createCard("CCDMAX_Y", cam.GetMaxImgRows(), "CCD height in pixels")) binx = cam.GetRoiBinCol() biny = cam.GetRoiBinRow() cards.append(pyfits.createCard("ROIBIN_X", binx, "X binning")) cards.append(pyfits.createCard("ROIBIN_Y", biny, "Y binning")) startx = cam.GetRoiStartCol() starty = cam.GetRoiStartRow() nx = cam.GetRoiNumCols() ny = cam.GetRoiNumRows() endx = startx + binx * nx endy = starty + biny * ny cards.append(pyfits.createCard("ROIMIN_X", startx, "ROI start X")) cards.append(pyfits.createCard("ROIMAX_X", endx, "ROI end X")) cards.append(pyfits.createCard("ROIMIN_Y", starty, "ROI start Y")) cards.append(pyfits.createCard("ROIMAX_Y", endy, "ROI end Y")) cards.append(pyfits.createCard("ROI_NX", nx, "ROI width")) cards.append(pyfits.createCard("ROI_NY", ny, "ROI height")) cards.append( pyfits.createCard("SETPOINT", float("%.2f" % cam.GetCoolerSetPoint()), "Cooler setpoint in C")) cards.append( pyfits.createCard("COOLING", cam.GetCoolerStatus(), "Cooler status")) cards.append( pyfits.createCard("COOLDRIV", float("%.2f" % cam.GetCoolerDrive()), "Cooler drive (%)")) cards.append( pyfits.createCard("FANMODE", cam.GetFanMode(), "Cooler fan mode")) cards.append( pyfits.createCard("BACKOFF", float("%.2f" % cam.GetCoolerBackoffPoint()), "Cooler backoff point")) cards.append( pyfits.createCard("T_CCD", float("%.2f" % cam.GetTempCcd()), "CCD temperature in C")) cards.append( pyfits.createCard("T_HSINK", float("%.2f" % cam.GetTempHeatsink()), "Camera heatsink temperature in C")) cards.append(pyfits.createCard("MODEL", cam.GetModel(), "Camera model")) cards.append( pyfits.createCard("SENSOR", cam.GetSensor(), "Camera sensor")) if BCAM.foc.attached: cards.append( pyfits.createCard("BCAMFOC", BCAM.foc.position(), "BCAM focus position")) cards.append( pyfits.createCard("FLITEMP", BCAM.foc.temperature(), "BCAM focuser temperature (C)")) return pyfits.Header(cards=cards)
def makeHeader(self, ccdtype, exptime): cam = BCAM.camera cards = [] cards.append(pyfits.createCard("CCDTYPE", ccdtype, "CCD type")) cards.append(pyfits.createCard("EXPTIME", exptime, "Exposure time (s)")) cards.append(pyfits.createCard("PXHEIGHT", cam.GetPixelHeight(), "Pixel height in um")) cards.append(pyfits.createCard("PXWIDTH", cam.GetPixelWidth(), "Pixel width in um")) cards.append(pyfits.createCard("CCDMAX_X", cam.GetMaxImgCols(), "CCD width in pixels")) cards.append(pyfits.createCard("CCDMAX_Y", cam.GetMaxImgRows(), "CCD height in pixels")) binx = cam.GetRoiBinCol() biny = cam.GetRoiBinRow() cards.append(pyfits.createCard("ROIBIN_X", binx, "X binning")) cards.append(pyfits.createCard("ROIBIN_Y", biny, "Y binning")) startx = cam.GetRoiStartCol() starty = cam.GetRoiStartRow() nx = cam.GetRoiNumCols() ny = cam.GetRoiNumRows() endx = startx + binx*nx endy = starty + biny*ny cards.append(pyfits.createCard("ROIMIN_X", startx, "ROI start X")) cards.append(pyfits.createCard("ROIMAX_X", endx, "ROI end X")) cards.append(pyfits.createCard("ROIMIN_Y", starty, "ROI start Y")) cards.append(pyfits.createCard("ROIMAX_Y", endy, "ROI end Y")) cards.append(pyfits.createCard("ROI_NX", nx, "ROI width")) cards.append(pyfits.createCard("ROI_NY", ny, "ROI height")) cards.append(pyfits.createCard("SETPOINT", float("%.2f" % cam.GetCoolerSetPoint()), "Cooler setpoint in C")) cards.append(pyfits.createCard("COOLING", cam.GetCoolerStatus(), "Cooler status")) cards.append(pyfits.createCard("COOLDRIV", float("%.2f" % cam.GetCoolerDrive()), "Cooler drive (%)")) cards.append(pyfits.createCard("FANMODE", cam.GetFanMode(), "Cooler fan mode")) cards.append(pyfits.createCard("BACKOFF", float("%.2f" % cam.GetCoolerBackoffPoint()), "Cooler backoff point")) cards.append(pyfits.createCard("T_CCD", float("%.2f" % cam.GetTempCcd()), "CCD temperature in C")) cards.append(pyfits.createCard("T_HSINK", float("%.2f" % cam.GetTempHeatsink()), "Camera heatsink temperature in C")) cards.append(pyfits.createCard("MODEL", cam.GetModel(), "Camera model")) cards.append(pyfits.createCard("SENSOR", cam.GetSensor(), "Camera sensor")) if BCAM.foc.attached: cards.append(pyfits.createCard("BCAMFOC", BCAM.foc.position(), "BCAM focus position")) cards.append(pyfits.createCard("FLITEMP", BCAM.foc.temperature(), "BCAM focuser temperature (C)")) return pyfits.Header(cards=cards)