From e055e2fd23feff6d34f9fb20df1bd23a31f48de4 Mon Sep 17 00:00:00 2001 From: thuiop Date: Fri, 4 Jun 2021 18:12:08 +0200 Subject: [PATCH] Added SCARLET notebook (#151) * Added SCARLET notebook * Added small descriptive text and passed surveys as a measure_kwargs * last few details in scarlet notebook * last few notes in the notebook about installation Co-authored-by: Ismael Mendoza --- btk/measure.py | 1 + notebooks/scarlet-measure.ipynb | 261 ++++++++++++++++++++++++++++++++ 2 files changed, 262 insertions(+) create mode 100644 notebooks/scarlet-measure.ipynb diff --git a/btk/measure.py b/btk/measure.py index 067ddaa40..986744870 100644 --- a/btk/measure.py +++ b/btk/measure.py @@ -200,6 +200,7 @@ def __init__( self.measure_kwargs = [{}] if measure_kwargs is None else measure_kwargs for m in self.measure_kwargs: m["channels_last"] = self.channels_last + m["surveys"] = self.draw_blend_generator.surveys def __iter__(self): """Return iterator which is the object itself.""" diff --git a/notebooks/scarlet-measure.ipynb b/notebooks/scarlet-measure.ipynb new file mode 100644 index 000000000..4c039774e --- /dev/null +++ b/notebooks/scarlet-measure.ipynb @@ -0,0 +1,261 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "ef7d108e", + "metadata": { + "ExecuteTime": { + "end_time": "2021-06-04T15:59:33.970734Z", + "start_time": "2021-06-04T15:59:33.423748Z" + }, + "scrolled": true + }, + "outputs": [], + "source": [ + "import astropy\n", + "import galsim\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "import scarlet\n", + "import sep\n", + "\n", + "import btk" + ] + }, + { + "cell_type": "markdown", + "id": "be4ac958", + "metadata": {}, + "source": [ + "# SCARLET implementation\n", + "\n", + "This notebook provides a measure function using [SCARLET](https://www.sciencedirect.com/science/article/abs/pii/S2213133718300301), a deblending algorithm based on matrix factorization. **NOTE:** It requires that you install the scarlet python package from the [source](https://github.com/pmelchior/scarlet), the pip installation being outdated. Please follow the instructions for installing scarlet [here](https://pmelchior.github.io/scarlet/install.html). \n", + "\n", + "If you have not done so already, we encourage you to follow the BTK [intro tutorial](https://lsstdesc.org/BlendingToolKit/tutorials.html), which will help you understand what is done in this notebook." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "421e5c50", + "metadata": {}, + "outputs": [], + "source": [ + "catalog_name = \"../data/sample_input_catalog.fits\"\n", + "stamp_size = 24\n", + "survey = btk.survey.Rubin\n" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "bfd6eeb3", + "metadata": {}, + "outputs": [], + "source": [ + "catalog = btk.catalog.CatsimCatalog.from_file(catalog_name)\n", + "draw_blend_generator = btk.draw_blends.CatsimGenerator(\n", + " catalog,\n", + " btk.sampling_functions.DefaultSampling(max_number=10,maxshift=6),\n", + " [survey],\n", + " stamp_size=stamp_size,\n", + " batch_size=100\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "41a99bf5", + "metadata": {}, + "outputs": [], + "source": [ + "def scarlet_measure(batch,idx,channels_last=False,surveys=None,**kwargs):\n", + " if isinstance(batch[\"blend_images\"], dict):\n", + " raise NotImplementedError(\"This function does not support the multi-resolution feature.\")\n", + " \n", + " sigma_noise = kwargs.get(\"sigma_noise\", 1.5)\n", + " mean_sky_level = [btk.survey.get_mean_sky_level(surveys[0],filt) for filt in surveys[0].filters]\n", + "\n", + " image = batch[\"blend_images\"][idx]\n", + " stamp_size = image.shape[-2] # true for both 'NCHW' or 'NHWC' formats.\n", + " channel_indx = 0 if not channels_last else -1\n", + " coadd = np.mean(image, axis=channel_indx) # Smallest dimension is the channels\n", + " bkg = sep.Background(coadd)\n", + " # Here the 1.5 value corresponds to a 1.5 sigma threshold for detection against noise.\n", + " catalog, segmentation = sep.extract(\n", + " coadd, sigma_noise, err=bkg.globalrms, segmentation_map=True\n", + " )\n", + " \n", + " image = np.moveaxis(image,-1,0) if channels_last else image\n", + " \n", + " psf = np.array([p.drawImage(galsim.Image(image.shape[1],image.shape[2]),scale=survey.pixel_scale).array for p in batch[\"psf\"]])\n", + " #Initializing scarlet\n", + " bands=[0,1,2,3,4,5]\n", + " model_psf = scarlet.GaussianPSF(sigma=(0.8,) * len(bands))\n", + " model_frame = scarlet.Frame(image.shape, psf=model_psf, channels=bands)\n", + " observation = scarlet.Observation(\n", + " image, psf=scarlet.ImagePSF(psf), weights=1.0 / (image+np.resize(mean_sky_level,image.shape)), channels=bands\n", + " ).match(model_frame)\n", + " sources = []\n", + " for n, detection in enumerate(catalog):\n", + " result = scarlet.ExtendedSource(\n", + " model_frame,\n", + " (detection[\"y\"], detection[\"x\"]),\n", + " observation,\n", + " thresh=1,\n", + " shifting=True,\n", + " )\n", + " sources.append(result)\n", + " blend = scarlet.Blend(sources, observation)\n", + " blend.fit(200, e_rel=1e-5)\n", + " \n", + " im, selected_peaks = [], []\n", + " model=blend.get_model()\n", + " model_ = observation.render(model)\n", + " for k, component in enumerate(blend):\n", + " y, x = component.center\n", + " selected_peaks.append([x, y])\n", + " model = component.get_model(frame=model_frame)\n", + " model_ = observation.render(model)\n", + " model_ = np.transpose(model_, axes=(1, 2, 0)) if channels_last else model_\n", + " im.append(model_)\n", + " selected_peaks = np.array(selected_peaks)\n", + " t = astropy.table.Table()\n", + " t[\"x_peak\"] = selected_peaks[:,0]\n", + " t[\"y_peak\"] = selected_peaks[:,1]\n", + " \n", + " return {\"catalog\":t,\"segmentation\":None,\"deblended_images\":np.array(im)}\n", + " \n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "5c4b30fd", + "metadata": {}, + "outputs": [], + "source": [ + "measure_kwargs=[{\"sigma_noise\": 2.0},\n", + " {\"sigma_noise\": 3.0}]\n", + "meas_generator = btk.measure.MeasureGenerator(\n", + " scarlet_measure, draw_blend_generator, measure_kwargs=measure_kwargs\n", + ")\n", + "metrics_generator = btk.metrics.MetricsGenerator(\n", + " meas_generator,\n", + " use_metrics=(\"detection\", \"reconstruction\"),\n", + " target_meas={\"ellipticity\": btk.metrics.meas_ksb_ellipticity},\n", + ")\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7ea4cdf7", + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "blend_results,measure_results,metrics_results = next(metrics_generator)" + ] + }, + { + "cell_type": "markdown", + "id": "ff23173c", + "metadata": {}, + "source": [ + "# Plot Metrics from Scarlet Results" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "3353b7f7", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "results = metrics_results[\"scarlet_measure0\"]\n", + "gal_summary = results[\"galaxy_summary\"][results[\"galaxy_summary\"][\"detected\"]==True]\n", + "msr = gal_summary[\"msr\"]\n", + "dist = gal_summary[\"distance_closest_galaxy\"]\n", + "dist_detect = gal_summary[\"distance_detection\"]\n", + "\n", + "fig, ((ax1,ax2),(ax3,ax4)) = plt.subplots(2,2)\n", + "btk.plot_utils.plot_metrics_distribution(msr,\"msr\",ax1,upper_quantile=0.9)\n", + "btk.plot_utils.plot_metrics_distribution(dist,\"Distance to the closest galaxy\",ax2)\n", + "btk.plot_utils.plot_metrics_correlation(dist,msr,\"Distance to the closest galaxy\",\"msr\",ax3,upper_quantile=0.9,style='heatmap')\n", + "btk.plot_utils.plot_metrics_correlation(dist,dist_detect,\"Distance to the closest galaxy\",\"Distance detection\",ax4,upper_quantile=0.9,style='scatter')\n", + "plt.show()\n", + "\n", + "btk.plot_utils.plot_efficiency_matrix(results[\"detection\"][\"eff_matrix\"])" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.10" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": { + "height": "calc(100% - 180px)", + "left": "10px", + "top": "150px", + "width": "197.4px" + }, + "toc_section_display": true, + "toc_window_display": true + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}