Skip to content

Instantly share code, notes, and snippets.

@josePhoenix
Created August 8, 2016 18:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save josePhoenix/3e602cc58c2edf86d946465cf5254cf2 to your computer and use it in GitHub Desktop.
Save josePhoenix/3e602cc58c2edf86d946465cf5254cf2 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Deblending one synthetic image"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import lsst.afw.table\n",
"import lsst.afw.image\n",
"import lsst.afw.math\n",
"import lsst.meas.algorithms\n",
"import lsst.meas.base\n",
"import lsst.meas.deblender\n",
"import numpy\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"%matplotlib inline\n",
"import matplotlib\n",
"from matplotlib.colors import LogNorm\n",
"import matplotlib.pyplot as plt\n",
"plt.style.use('ggplot')\n",
"from astropy.io import fits\n",
"from astropy.table import Table"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def deblend_run(image_array, variance_array, psf_array):\n",
" schema = lsst.afw.table.SourceTable.makeMinimalSchema()\n",
" detect = lsst.meas.algorithms.SourceDetectionTask(schema=schema)\n",
" deblend = lsst.meas.deblender.SourceDeblendTask(schema=schema)\n",
" measure = lsst.meas.base.SingleFrameMeasurementTask(schema=schema)\n",
"\n",
" image = lsst.afw.image.ImageF(image_array.astype(np.float32))\n",
" variance = lsst.afw.image.ImageF(variance_array.astype(np.float32))\n",
" masked_image = lsst.afw.image.MaskedImageF(image, None, variance)\n",
"\n",
" psf_image = lsst.afw.image.ImageD(psf_array.astype(np.float64))\n",
" psf_kernel = lsst.afw.math.FixedKernel(psf_image)\n",
" psf = lsst.meas.algorithms.KernelPsf(psf_kernel)\n",
"\n",
" exposure = lsst.afw.image.ExposureF(masked_image)\n",
" exposure.setPsf(psf)\n",
"\n",
" table = lsst.afw.table.SourceTable.make(schema) # this is really just a factory for records, not a table\n",
" detect_result = detect.run(table, exposure)\n",
"\n",
" catalog = detect_result.sources # this is the actual catalog, but most of it's still empty\n",
"\n",
" deblend.run(exposure, catalog, exposure.getPsf())\n",
"\n",
" measure.run(catalog, exposure)\n",
" catalog.writeFits('./temp.fits')\n",
" t = Table.read('./temp.fits')\n",
" return t"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Filename: ./scene.fits\n",
"No. Name Type Cards Dimensions Format\n",
"0 PRIMARY PrimaryHDU 10 () \n",
"1 U ImageHDU 23 (256, 256) float64 \n",
"2 G ImageHDU 23 (256, 256) float64 \n",
"3 R ImageHDU 23 (256, 256) float64 \n",
"4 I ImageHDU 23 (256, 256) float64 \n",
"5 Z ImageHDU 23 (256, 256) float64 \n",
"6 CATALOG BinTableHDU 39 2R x 15C [J, E, E, E, E, 6A, E, E, E, E, E, J, E, E, E] \n"
]
}
],
"source": [
"scene_hdul = fits.open('./scene.fits')\n",
"scene_hdul.info()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"<Table length=2>\n",
"<table id=\"table140514831080464\" class=\"table-striped table-bordered table-condensed\">\n",
"<thead><tr><th>ID</th><th>RA</th><th>DEC</th><th>X_IMAGE</th><th>Y_IMAGE</th><th>MODEL</th><th>COUNTS_U</th><th>COUNTS_G</th><th>COUNTS_R</th><th>COUNTS_I</th><th>COUNTS_Z</th><th>SERSIC_N</th><th>R_EFF_PX</th><th>ELLIPTICITY</th><th>THETA</th></tr></thead>\n",
"<thead><tr><th>int32</th><th>float32</th><th>float32</th><th>float32</th><th>float32</th><th>str6</th><th>float32</th><th>float32</th><th>float32</th><th>float32</th><th>float32</th><th>int32</th><th>float32</th><th>float32</th><th>float32</th></tr></thead>\n",
"<tr><td>0</td><td>0.0</td><td>0.0</td><td>0.0</td><td>0.0</td><td>sky</td><td>833492.0</td><td>2.6734e+06</td><td>4.15382e+06</td><td>4.58074e+06</td><td>4.66562e+06</td><td>0</td><td>0.0</td><td>0.0</td><td>0.0</td></tr>\n",
"<tr><td>1</td><td>0.0</td><td>0.0</td><td>128.0</td><td>128.0</td><td>sersic</td><td>817.482</td><td>4541.65</td><td>9997.88</td><td>14726.2</td><td>21098.9</td><td>4</td><td>25.0</td><td>0.8</td><td>1.5708</td></tr>\n",
"</table>"
],
"text/plain": [
"<Table length=2>\n",
" ID RA DEC X_IMAGE Y_IMAGE ... SERSIC_N R_EFF_PX ELLIPTICITY THETA \n",
"int32 float32 float32 float32 float32 ... int32 float32 float32 float32\n",
"----- ------- ------- ------- ------- ... -------- -------- ----------- -------\n",
" 0 0.0 0.0 0.0 0.0 ... 0 0.0 0.0 0.0\n",
" 1 0.0 0.0 128.0 128.0 ... 4 25.0 0.8 1.5708"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Table.read('./scene.fits', hdu='CATALOG')"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Filename: ./psf_ugriz_0.7arcsec_in_i.fits\n",
"No. Name Type Cards Dimensions Format\n",
"0 PRIMARY PrimaryHDU 7 () \n",
"1 U ImageHDU 10 (25, 25) float64 \n",
"2 G ImageHDU 10 (25, 25) float64 \n",
"3 R ImageHDU 10 (25, 25) float64 \n",
"4 I ImageHDU 10 (25, 25) float64 \n",
"5 Z ImageHDU 10 (25, 25) float64 \n"
]
}
],
"source": [
"psf_hdul = fits.open('./psf_ugriz_0.7arcsec_in_i.fits')\n",
"psf_hdul.info()"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nYUXEsZILfvnll820YzgcGg9+OByacUS325Xf71er1TI8HPkAIJB+v6+XX37ZnJagO1KRx2Ixra2t\naXd3V+VyWdFo1DxgSd5UuTgi4eCEzAFVptPkWtpf3DCJhu8OLx56JqP10j6mTSJEw4UdASP89Xpd\nqVRKlUrFtORpfoL9TyYTvfTSS7ZrkmRmI/V63TBrSSYnXK1WVS6Xjf/fbrcNr4fyiNYMpigkeRY8\nsHyncmcgENDq6qpNDgNXAem0221tbW3J7/fbOQGtbG5uyuPx2K4kHA4bUwmGUi6XU6lUsgVtPB7b\nddLvCAaDppYZiUS0ubl5w8/n1NSUvvjFL+rxxx/XZDLRH/zBH2hxcfGG39cNN44qjiTBX8tW9mrb\nWKY23XDjqOKwrey1xgc+8AE9+eST133cYzRu4sadFJMjiPF4PHnooYcmlUplMhwOJ1/5ylcm6+vr\nb/m6f/u3fzuK0zl2x3SP++495lvFnXT/3+lj34nX/Po4kgre3cq64YYbbrzzcWQY/Nvdyrrhhhtu\nuHFzwvvoo48++k6fhDNyudwdcUz3uO/eY75V3En3/50+9p14zc44VmJjbrjhhhtu3Lxwx/vccMMN\nN96l4SZ4N9xww413aRyLQae3q7H9duLLX/6yqT56vV5985vfVK/X03e/+11Vq1Xlcjk98sgjpiT5\nduMHP/iBfvGLXygej+vb3/62JL3pcZ566ik988wz8nq9+sIXvqC77777phzz3//93/XjH//YBNo+\n97nP6QMf+MBNO6Yk1et1ff/731e73ZbH49F9992nT3/600d6va8/5v33369PfepTt+R6307cymf8\n9XG1Z/6o4nqf+6M87ps9Czcr3s6zf0vjHSVpTq7Omd/Y2Diy4335y1+edLvdAz/7l3/5l8nTTz89\nmUwmk6eeemrywx/+8IaP89vf/naysrIy+au/+qu3PM76+vrkr//6ryej0WhSLpcnDz300GRvb++m\nHPNHP/rR5D/+4z/e8Ls365iTyWTSbDYnKysrk8lkMun3+5O/+Iu/mGxsbBzp9R52zFtxvdcbt/oZ\nf31c7Zk/qrie5/6oj3vYs3Az43qf/Vsd7zhEc6s1tieTyRumCp977jl9/OMflyR94hOfuCnHP3/+\nvCKRyDUd57nnntNHPvIRM7Oen5+/Ju2eazmmdPUpypt1TElKJBI6efKkpH3j64WFBdXr9SO93qsd\nE+neo77e6413Wkf+as/8UcX1PPdHfVzp6CeIr/fZv9XxjkM0b1eY7O2Gx+PR448/rqmpKd1///26\n77771G63lUgkJMlcjY4iDjtOo9HQe97zHvu9m60z/p//+Z/6r//6L505c0Z/8id/YvouR3HMSqWi\n1dVVvec977ll18sxz507pxdffPGWXu+1xK1+xl8fzmf+vvvu0/3333/Lji0d/tzfirjas3BUcS3P\n/q2OdzzB3+p47LHHlEwm1el09Pjjjyufz7/hd26Vf+atOM4f/dEf6bOf/aw8Ho/+9V//Vf/8z/+s\nP//zPz+SY+3s7Ojv/u7v9IUvfMG03J1xFNf7+mPeyuu9XcL5zD/22GNaXFzU+fPn37HzuVXfr9c/\nC//0T/+kL33pS0dyrHfi2b+WeMchmmvV2L5ZkUwmJUmxWEz33nuvLl26pEQioVarJUlqtVrWlLnZ\ncdhxXn8PUI+8GRGLxezhuu+++6xyvNnHHI/H+s53vqPf//3f17333ivp6K/3ase8Vdd7PXGrn/HX\nh/OZ//CHP3xLdw/S4c/BUcfrnwV8B252XM+zf6vjHU/wTo3t0Wikn/70p7rnnnuO5FiDwcC05Xd2\ndvTLX/5Sy8vL+tCHPqRnn31WkvTss8/etOO/Hvs87Dj33HOP/ud//kej0UiVSkWlUklnz569Kcfk\nIZOk//3f/zUTlJt5TGmfxbC4uKhPf/rT9rOjvt6rHfNWXe/1xK18xl8fV3vmuSdHFdf63B/1cQ97\nFm52XM+zf6vjWEyyPv/88/qHf/gHEyY7KgpZpVLRt771LXk8Ho3HY33sYx/TAw88oF6vpyeeeEK1\nWk3ZbFaPPPLIVRs21xNPPvmkfvOb36jb7Soej+vBBx/Uvffee+hxnnrqKf3kJz+Rz+d72xS+qx3z\n4sWLunLlirlS/dmf/ZlhgzfjmJL04osv6utf/7qWl5fl8Xjk8Xj0uc99TmfPnj2y6z3smP/93/99\n5Nf7duJWPeOvj8Oe+aOK633uj/K4b/bs36x4O8/+rYxjkeDdcMMNN9y4+fGOQzRuuOGGG24cTbgJ\n3g033HDjXRpugnfDDTfceJeGm+DdcMMNN96l4SZ4N9xww413abgJ3g033HDjXRpugnfDDTfceJeG\nm+DdcMMNN96l8f8AfgPtfbXO+nUAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fcc1c5f1ed0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.subplot(121)\n",
"plt.imshow(scene_hdul['Z'].data, cmap='gray', origin='lower', interpolation='nearest')\n",
"plt.grid(False)\n",
"plt.subplot(122)\n",
"plt.imshow(psf_hdul['Z'].data, cmap='gray', origin='lower', interpolation='nearest')\n",
"plt.grid(False)"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"65.156021743399862"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"variance = numpy.average(scene_hdul['Z'].data[0:10,0:10])\n",
"variance"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING: hdu= was not specified but multiple tables are present, reading in first available table (hdu=1) [astropy.io.fits.connect]\n"
]
},
{
"data": {
"text/html": [
"&lt;Table length=796&gt;\n",
"<table id=\"table140514563393616\" class=\"table-striped table-bordered table-condensed\">\n",
"<thead><tr><th>flags [69]</th><th>id</th><th>coord_ra</th><th>coord_dec</th><th>parent</th><th>deblend_nChild</th><th>deblend_psfCenter_x</th><th>deblend_psfCenter_y</th><th>deblend_psfFlux</th><th>base_GaussianCentroid_x</th><th>base_GaussianCentroid_y</th><th>base_NaiveCentroid_x</th><th>base_NaiveCentroid_y</th><th>base_SdssCentroid_x</th><th>base_SdssCentroid_y</th><th>base_SdssCentroid_xSigma</th><th>base_SdssCentroid_ySigma</th><th>base_SdssShape_xx</th><th>base_SdssShape_yy</th><th>base_SdssShape_xy</th><th>base_SdssShape_xxSigma</th><th>base_SdssShape_yySigma</th><th>base_SdssShape_xySigma</th><th>base_SdssShape_x</th><th>base_SdssShape_y</th><th>base_SdssShape_flux</th><th>base_SdssShape_fluxSigma</th><th>base_SdssShape_flux_xx_Cov</th><th>base_SdssShape_flux_yy_Cov</th><th>base_SdssShape_flux_xy_Cov</th><th>base_CircularApertureFlux_3_0_flux</th><th>base_CircularApertureFlux_3_0_fluxSigma</th><th>base_CircularApertureFlux_4_5_flux</th><th>base_CircularApertureFlux_4_5_fluxSigma</th><th>base_CircularApertureFlux_6_0_flux</th><th>base_CircularApertureFlux_6_0_fluxSigma</th><th>base_CircularApertureFlux_9_0_flux</th><th>base_CircularApertureFlux_9_0_fluxSigma</th><th>base_CircularApertureFlux_12_0_flux</th><th>base_CircularApertureFlux_12_0_fluxSigma</th><th>base_CircularApertureFlux_17_0_flux</th><th>base_CircularApertureFlux_17_0_fluxSigma</th><th>base_CircularApertureFlux_25_0_flux</th><th>base_CircularApertureFlux_25_0_fluxSigma</th><th>base_CircularApertureFlux_35_0_flux</th><th>base_CircularApertureFlux_35_0_fluxSigma</th><th>base_CircularApertureFlux_50_0_flux</th><th>base_CircularApertureFlux_50_0_fluxSigma</th><th>base_CircularApertureFlux_70_0_flux</th><th>base_CircularApertureFlux_70_0_fluxSigma</th><th>base_GaussianFlux_flux</th><th>base_GaussianFlux_fluxSigma</th><th>base_PsfFlux_flux</th><th>base_PsfFlux_fluxSigma</th><th>base_Variance_value</th><th>base_ClassificationExtendedness_value</th><th>base_PsfFlux_apCorr</th><th>base_PsfFlux_apCorrSigma</th><th>base_GaussianFlux_apCorr</th><th>base_GaussianFlux_apCorrSigma</th><th>footprint</th></tr></thead>\n",
"<thead><tr><th></th><th></th><th></th><th></th><th></th><th></th><th>pix</th><th>pix</th><th></th><th>pix</th><th>pix</th><th>pix</th><th>pix</th><th>pix</th><th>pix</th><th>pix</th><th>pix</th><th>pix2</th><th>pix2</th><th>pix2</th><th>pix2</th><th>pix2</th><th>pix2</th><th>pix</th><th>pix</th><th>ct</th><th>ct</th><th>ct pix2</th><th>ct pix2</th><th>ct pix2</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th>ct</th><th></th><th></th><th></th><th></th><th></th><th></th><th></th></tr></thead>\n",
"<thead><tr><th>bool</th><th>int64</th><th>float64</th><th>float64</th><th>int64</th><th>int32</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float32</th><th>float32</th><th>float64</th><th>float64</th><th>float64</th><th>float32</th><th>float32</th><th>float32</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float32</th><th>float32</th><th>float32</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>float64</th><th>int32</th></tr></thead>\n",
"<tr><td>False .. False</td><td>1</td><td>nan</td><td>nan</td><td>0</td><td>795</td><td>nan</td><td>nan</td><td>nan</td><td>128.0</td><td>127.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>1</td></tr>\n",
"<tr><td>False .. False</td><td>2</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>128.0</td><td>127.0</td><td>128.0</td><td>127.0</td><td>128.0</td><td>127.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>0.0</td><td>501.045057224</td><td>0.0</td><td>714.946841151</td><td>0.0</td><td>1000.82141896</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>2</td></tr>\n",
"<tr><td>False .. False</td><td>3</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>129.0</td><td>149.0</td><td>129.0</td><td>149.0</td><td>129.0</td><td>149.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>0.0</td><td>501.045057224</td><td>0.0</td><td>714.946841151</td><td>0.0</td><td>1000.82141896</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>3</td></tr>\n",
"<tr><td>False .. False</td><td>4</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>130.0</td><td>106.0</td><td>130.0</td><td>106.0</td><td>130.0</td><td>106.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>0.0</td><td>501.045057224</td><td>0.0</td><td>714.946841151</td><td>0.0</td><td>1000.82141896</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>4</td></tr>\n",
"<tr><td>False .. False</td><td>5</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>125.0</td><td>104.0</td><td>125.0</td><td>104.0</td><td>125.0</td><td>104.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>0.0</td><td>501.045057224</td><td>0.0</td><td>714.946841151</td><td>0.0</td><td>1000.82141896</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>5</td></tr>\n",
"<tr><td>False .. False</td><td>6</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>128.0</td><td>159.0</td><td>128.0</td><td>159.0</td><td>128.0</td><td>159.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>0.0</td><td>501.045057224</td><td>0.0</td><td>714.946841151</td><td>0.0</td><td>1000.82141896</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>6</td></tr>\n",
"<tr><td>False .. False</td><td>7</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>130.0</td><td>156.0</td><td>130.0</td><td>156.0</td><td>130.0</td><td>156.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>0.0</td><td>501.045057224</td><td>0.0</td><td>714.946841151</td><td>0.0</td><td>1000.82141896</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>7</td></tr>\n",
"<tr><td>False .. False</td><td>8</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>219.0</td><td>214.0</td><td>219.0</td><td>214.0</td><td>219.0</td><td>214.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>nan</td><td>501.045057224</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>8</td></tr>\n",
"<tr><td>False .. False</td><td>9</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>127.0</td><td>171.0</td><td>127.0</td><td>171.0</td><td>127.0</td><td>171.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>0.0</td><td>501.045057224</td><td>0.0</td><td>714.946841151</td><td>0.0</td><td>1000.82141896</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>9</td></tr>\n",
"<tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr>\n",
"<tr><td>False .. False</td><td>787</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>138.0</td><td>248.0</td><td>138.0</td><td>248.0</td><td>138.0</td><td>248.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>41.6266136169</td><td>nan</td><td>63.0502471924</td><td>nan</td><td>84.5334014893</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>787</td></tr>\n",
"<tr><td>False .. False</td><td>788</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>240.0</td><td>33.0</td><td>240.0</td><td>33.0</td><td>240.0</td><td>33.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>nan</td><td>63.0507354736</td><td>nan</td><td>84.5372238159</td><td>nan</td><td>127.455986023</td><td>0.0</td><td>169.510487325</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>788</td></tr>\n",
"<tr><td>False .. False</td><td>789</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>54.0</td><td>42.0</td><td>54.0</td><td>42.0</td><td>54.0</td><td>42.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>0.0</td><td>501.045057224</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>789</td></tr>\n",
"<tr><td>False .. False</td><td>790</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>181.0</td><td>224.0</td><td>181.0</td><td>224.0</td><td>181.0</td><td>224.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>nan</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>790</td></tr>\n",
"<tr><td>False .. False</td><td>791</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>14.0</td><td>125.0</td><td>14.0</td><td>125.0</td><td>14.0</td><td>125.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>nan</td><td>63.0507354736</td><td>nan</td><td>84.5372238159</td><td>nan</td><td>127.455780029</td><td>0.0</td><td>169.510487325</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>791</td></tr>\n",
"<tr><td>False .. False</td><td>792</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>222.0</td><td>196.0</td><td>222.0</td><td>196.0</td><td>222.0</td><td>196.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>792</td></tr>\n",
"<tr><td>False .. False</td><td>793</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>165.0</td><td>18.0</td><td>165.0</td><td>18.0</td><td>165.0</td><td>18.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>nan</td><td>127.456245422</td><td>0.0</td><td>169.510487325</td><td>nan</td><td>242.292333819</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>793</td></tr>\n",
"<tr><td>False .. False</td><td>794</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>107.0</td><td>170.0</td><td>107.0</td><td>170.0</td><td>107.0</td><td>170.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>0.0</td><td>501.045057224</td><td>0.0</td><td>714.946841151</td><td>0.0</td><td>1000.82141896</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>794</td></tr>\n",
"<tr><td>False .. False</td><td>795</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>57.0</td><td>220.0</td><td>57.0</td><td>220.0</td><td>57.0</td><td>220.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>0.0</td><td>63.0507354736</td><td>0.0</td><td>84.5372238159</td><td>0.0</td><td>127.45639801</td><td>0.0</td><td>169.510487325</td><td>0.0</td><td>242.292333819</td><td>0.0</td><td>357.45063633</td><td>nan</td><td>501.045057224</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>50.8192838812</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>795</td></tr>\n",
"<tr><td>False .. False</td><td>796</td><td>nan</td><td>nan</td><td>1</td><td>0</td><td>nan</td><td>nan</td><td>nan</td><td>76.0</td><td>242.0</td><td>76.0</td><td>242.0</td><td>76.0</td><td>242.0</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>0.0</td><td>41.6266136169</td><td>nan</td><td>63.0507316589</td><td>nan</td><td>84.5372161865</td><td>nan</td><td>127.455482483</td><td>nan</td><td>169.510487325</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>nan</td><td>796</td></tr>\n",
"</table>"
],
"text/plain": [
"<Table length=796>\n",
" flags [69] id coord_ra ... base_GaussianFlux_apCorrSigma footprint\n",
" ... \n",
" bool int64 float64 ... float64 int32 \n",
"-------------- ----- -------- ... ----------------------------- ---------\n",
"False .. False 1 nan ... nan 1\n",
"False .. False 2 nan ... nan 2\n",
"False .. False 3 nan ... nan 3\n",
"False .. False 4 nan ... nan 4\n",
"False .. False 5 nan ... nan 5\n",
"False .. False 6 nan ... nan 6\n",
"False .. False 7 nan ... nan 7\n",
"False .. False 8 nan ... nan 8\n",
"False .. False 9 nan ... nan 9\n",
" ... ... ... ... ... ...\n",
"False .. False 787 nan ... nan 787\n",
"False .. False 788 nan ... nan 788\n",
"False .. False 789 nan ... nan 789\n",
"False .. False 790 nan ... nan 790\n",
"False .. False 791 nan ... nan 791\n",
"False .. False 792 nan ... nan 792\n",
"False .. False 793 nan ... nan 793\n",
"False .. False 794 nan ... nan 794\n",
"False .. False 795 nan ... nan 795\n",
"False .. False 796 nan ... nan 796"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"deblend_run(\n",
" image_array=scene_hdul['Z'].data,\n",
" variance_array=variance * numpy.ones_like(scene_hdul['Z'].data),\n",
" psf_array=psf_hdul['Z'].data,\n",
")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.12"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment