master e250c2f5bb1a cached
8 files
18.5 MB
153.4k tokens
1 requests
Download .txt
Showing preview only (257K chars total). Download the full file or copy to clipboard to get everything.
Repository: nikhilroxtomar/Deep-Residual-Unet
Branch: master
Commit: e250c2f5bb1a
Files: 8
Total size: 18.5 MB

Directory structure:
gitextract_ullzu_3j/

├── Deep Residual UNet.ipynb
├── README.md
├── ResUNet.h5
├── dataset/
│   ├── README.md
│   └── train/
│       ├── README.md
│       ├── images/
│       │   └── README.md
│       └── masks/
│           └── README.md
└── images/
    └── README.md

================================================
FILE CONTENTS
================================================

================================================
FILE: Deep Residual UNet.ipynb
================================================
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Deep Residual U-Net (ResUNet)\n",
    "Paper: https://arxiv.org/pdf/1711.10684.pdf"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "ResUNet, a semantic segmentation model inspired by the deep residual learning and UNet. An architecture that take advantages from both(Residual and UNet) models."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.1 Advantages\n",
    "<ol>\n",
    "    <li>The residual unit will ease the training of the network.</li>\n",
    "    <li>The skip connections within a residual unit and between low levels and high levels of the network will facilitate information propagation without degradation,making it possible to design a neural network with much fewer\n",
    "parameters.</li>\n",
    "</ol>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.2 Architecture"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 1.2.1 Basic Buildig Block\n",
    "The ResUNet uses Residual Units as basic building block instead of plain convolutional block.\n",
    "<br/>\n",
    "<ol>\n",
    "    <li>Residual units consists of:</li>\n",
    "<ol>\n",
    "    <li>Two 3x3 convolutional block.</li>\n",
    "    <li>An identity mapping.</li>                                 \n",
    "</ol>\n",
    "\n",
    "The Identity Mapping connects the input and output of the Residual unit.\n",
    "<br/><br/>\n",
    "\n",
    "<li>Convolutional block consists of:</li>\n",
    "<ol>\n",
    "    <li>One Batch Normalization layer.</li>\n",
    "    <li>One ReLU Activation layer.</li>\n",
    "    <li>One Convolutional layer.</li>\n",
    "</ol>\n",
    "\n",
    "</ol>\n",
    "    \n",
    "<img src=\"images/basic block.png\">"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 1.2.3 Complete Architecture\n",
    "\n",
    "The ResUNet consists of three parts:\n",
    "<ol>\n",
    "    <li>Encoding</li>\n",
    "    <li>Bridge</li>\n",
    "    <li>Decoding</li>\n",
    "</ol>\n",
    "\n",
    "<ul>\n",
    "<li>\n",
    "In encoding units, instead of using pooling operation to downsample feature map size, a stride of 2 is applied to the first convolution block to reduce the feature map by half.\n",
    "</li>\n",
    "\n",
    "<li>\n",
    "Before each decoding unit, there is an up-sampling of feature maps from lower level and a concatenation with the feature maps from the corresponding encoding path.\n",
    "</li>\n",
    "\n",
    "<li>\n",
    "At last a 1x1 Convolution is applied with Sigmoid activation to obtain a desired segmentation map.\n",
    "</li>\n",
    "</ul>\n",
    "\n",
    "<img src=\"images/arch.png\">"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.3 Loss\n",
    "Mean Squared Error(MSE) is used as the loss function\n",
    "\n",
    "<img src=\"images/loss.png\">\n",
    "\n",
    "<ul>\n",
    "<li>N = Number of training samples</li>\n",
    "<li>Net(I<sub>w</sub>;W) = Predicted Segmentation Map</li>\n",
    "<li>s<sub>i</sub> = Ground Tructh Segmentaton Map</li>\n",
    "</ul>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.4 Result"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"images/result.png\">"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1.4 Dataset\n",
    "Kaggle TGS Salt Identification Challenge: https://www.kaggle.com/c/tgs-salt-identification-challenge"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "## Imports\n",
    "import os\n",
    "import sys\n",
    "import random\n",
    "\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import cv2\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "import tensorflow as tf\n",
    "from tensorflow import keras\n",
    "\n",
    "## Seeding \n",
    "seed = 2019\n",
    "random.seed = seed\n",
    "np.random.seed = seed\n",
    "tf.seed = seed"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Path"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "dataset_path = \"dataset/\"\n",
    "train_path = os.path.join(dataset_path, \"train/\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Data Generator"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "class DataGen(keras.utils.Sequence):\n",
    "    def __init__(self, ids, path, batch_size=8, image_size=128):\n",
    "        self.ids = ids\n",
    "        self.path = path\n",
    "        self.batch_size = batch_size\n",
    "        self.image_size = image_size\n",
    "        self.on_epoch_end()\n",
    "        \n",
    "    def __load__(self, id_name):\n",
    "        ## Path\n",
    "        image_path = os.path.join(self.path, \"images\", id_name) + \".png\"\n",
    "        mask_path = os.path.join(self.path, \"masks\", id_name) + \".png\"\n",
    "        \n",
    "        ## Reading Image\n",
    "        image = cv2.imread(image_path)\n",
    "        image = cv2.resize(image, (self.image_size, self.image_size))\n",
    "        \n",
    "        ##Reading Mask\n",
    "        mask = cv2.imread(mask_path, 0)\n",
    "        mask = cv2.resize(mask, (self.image_size, self.image_size))\n",
    "        mask = np.expand_dims(mask, axis=-1)\n",
    "        \n",
    "        ## Normalizaing \n",
    "        image = image/255.0\n",
    "        mask = mask/255.0\n",
    "        \n",
    "        return image, mask\n",
    "    \n",
    "    def __getitem__(self, index):\n",
    "        if(index+1)*self.batch_size > len(self.ids):\n",
    "            self.batch_size = len(self.ids) - index*self.batch_size\n",
    "        \n",
    "        files_batch = self.ids[index*self.batch_size : (index+1)*self.batch_size]\n",
    "        \n",
    "        image = []\n",
    "        mask  = []\n",
    "        \n",
    "        for id_name in files_batch:\n",
    "            _img, _mask = self.__load__(id_name)\n",
    "            image.append(_img)\n",
    "            mask.append(_mask)\n",
    "            \n",
    "        image = np.array(image)\n",
    "        mask  = np.array(mask)\n",
    "        \n",
    "        return image, mask\n",
    "    \n",
    "    def on_epoch_end(self):\n",
    "        pass\n",
    "    \n",
    "    def __len__(self):\n",
    "        return int(np.ceil(len(self.ids)/float(self.batch_size)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Hyperparameters"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "train_csv = pd.read_csv(dataset_path + \"train.csv\")\n",
    "train_ids = train_csv[\"id\"].values\n",
    "\n",
    "image_size = 128\n",
    "batch_size = 16\n",
    "\n",
    "val_data_size = 200\n",
    "\n",
    "valid_ids = train_ids[:val_data_size]\n",
    "train_ids = train_ids[val_data_size:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(16, 128, 128, 3) (16, 128, 128, 1)\n"
     ]
    }
   ],
   "source": [
    "gen = DataGen(train_ids, train_path, batch_size=batch_size, image_size=image_size)\n",
    "x, y = gen.__getitem__(0)\n",
    "print(x.shape, y.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7f2a97a4d9b0>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "r = random.randint(0, len(x)-1)\n",
    "\n",
    "fig = plt.figure()\n",
    "fig.subplots_adjust(hspace=0.4, wspace=0.4)\n",
    "ax = fig.add_subplot(1, 2, 1)\n",
    "ax.imshow(x[r])\n",
    "ax = fig.add_subplot(1, 2, 2)\n",
    "ax.imshow(np.reshape(y[r]*255, (image_size, image_size)), cmap=\"gray\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Different Blocks"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "def bn_act(x, act=True):\n",
    "    x = keras.layers.BatchNormalization()(x)\n",
    "    if act == True:\n",
    "        x = keras.layers.Activation(\"relu\")(x)\n",
    "    return x\n",
    "\n",
    "def conv_block(x, filters, kernel_size=(3, 3), padding=\"same\", strides=1):\n",
    "    conv = bn_act(x)\n",
    "    conv = keras.layers.Conv2D(filters, kernel_size, padding=padding, strides=strides)(conv)\n",
    "    return conv\n",
    "\n",
    "def stem(x, filters, kernel_size=(3, 3), padding=\"same\", strides=1):\n",
    "    conv = keras.layers.Conv2D(filters, kernel_size, padding=padding, strides=strides)(x)\n",
    "    conv = conv_block(conv, filters, kernel_size=kernel_size, padding=padding, strides=strides)\n",
    "    \n",
    "    shortcut = keras.layers.Conv2D(filters, kernel_size=(1, 1), padding=padding, strides=strides)(x)\n",
    "    shortcut = bn_act(shortcut, act=False)\n",
    "    \n",
    "    output = keras.layers.Add()([conv, shortcut])\n",
    "    return output\n",
    "\n",
    "def residual_block(x, filters, kernel_size=(3, 3), padding=\"same\", strides=1):\n",
    "    res = conv_block(x, filters, kernel_size=kernel_size, padding=padding, strides=strides)\n",
    "    res = conv_block(res, filters, kernel_size=kernel_size, padding=padding, strides=1)\n",
    "    \n",
    "    shortcut = keras.layers.Conv2D(filters, kernel_size=(1, 1), padding=padding, strides=strides)(x)\n",
    "    shortcut = bn_act(shortcut, act=False)\n",
    "    \n",
    "    output = keras.layers.Add()([shortcut, res])\n",
    "    return output\n",
    "\n",
    "def upsample_concat_block(x, xskip):\n",
    "    u = keras.layers.UpSampling2D((2, 2))(x)\n",
    "    c = keras.layers.Concatenate()([u, xskip])\n",
    "    return c"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## ResUNet"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "def ResUNet():\n",
    "    f = [16, 32, 64, 128, 256]\n",
    "    inputs = keras.layers.Input((image_size, image_size, 3))\n",
    "    \n",
    "    ## Encoder\n",
    "    e0 = inputs\n",
    "    e1 = stem(e0, f[0])\n",
    "    e2 = residual_block(e1, f[1], strides=2)\n",
    "    e3 = residual_block(e2, f[2], strides=2)\n",
    "    e4 = residual_block(e3, f[3], strides=2)\n",
    "    e5 = residual_block(e4, f[4], strides=2)\n",
    "    \n",
    "    ## Bridge\n",
    "    b0 = conv_block(e5, f[4], strides=1)\n",
    "    b1 = conv_block(b0, f[4], strides=1)\n",
    "    \n",
    "    ## Decoder\n",
    "    u1 = upsample_concat_block(b1, e4)\n",
    "    d1 = residual_block(u1, f[4])\n",
    "    \n",
    "    u2 = upsample_concat_block(d1, e3)\n",
    "    d2 = residual_block(u2, f[3])\n",
    "    \n",
    "    u3 = upsample_concat_block(d2, e2)\n",
    "    d3 = residual_block(u3, f[2])\n",
    "    \n",
    "    u4 = upsample_concat_block(d3, e1)\n",
    "    d4 = residual_block(u4, f[1])\n",
    "    \n",
    "    outputs = keras.layers.Conv2D(1, (1, 1), padding=\"same\", activation=\"sigmoid\")(d4)\n",
    "    model = keras.models.Model(inputs, outputs)\n",
    "    return model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "smooth = 1.\n",
    "\n",
    "def dice_coef(y_true, y_pred):\n",
    "    y_true_f = tf.layers.flatten(y_true)\n",
    "    y_pred_f = tf.layers.flatten(y_pred)\n",
    "    intersection = tf.reduce_sum(y_true_f * y_pred_f)\n",
    "    return (2. * intersection + smooth) / (tf.reduce_sum(y_true_f) + tf.reduce_sum(y_pred_f) + smooth)\n",
    "\n",
    "\n",
    "def dice_coef_loss(y_true, y_pred):\n",
    "    return 1.0 - dice_coef(y_true, y_pred)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "__________________________________________________________________________________________________\n",
      "Layer (type)                    Output Shape         Param #     Connected to                     \n",
      "==================================================================================================\n",
      "input_1 (InputLayer)            (None, 128, 128, 3)  0                                            \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization (BatchNorma (None, 128, 128, 3)  12          input_1[0][0]                    \n",
      "__________________________________________________________________________________________________\n",
      "activation (Activation)         (None, 128, 128, 3)  0           batch_normalization[0][0]        \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_2 (Conv2D)               (None, 128, 128, 16) 64          input_1[0][0]                    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_1 (Conv2D)               (None, 128, 128, 16) 448         activation[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_1 (BatchNor (None, 128, 128, 16) 64          conv2d_2[0][0]                   \n",
      "__________________________________________________________________________________________________\n",
      "add (Add)                       (None, 128, 128, 16) 0           conv2d_1[0][0]                   \n",
      "                                                                 batch_normalization_1[0][0]      \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_2 (BatchNor (None, 128, 128, 16) 64          add[0][0]                        \n",
      "__________________________________________________________________________________________________\n",
      "activation_1 (Activation)       (None, 128, 128, 16) 0           batch_normalization_2[0][0]      \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_3 (Conv2D)               (None, 64, 64, 32)   4640        activation_1[0][0]               \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_3 (BatchNor (None, 64, 64, 32)   128         conv2d_3[0][0]                   \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_5 (Conv2D)               (None, 64, 64, 32)   544         add[0][0]                        \n",
      "__________________________________________________________________________________________________\n",
      "activation_2 (Activation)       (None, 64, 64, 32)   0           batch_normalization_3[0][0]      \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_4 (BatchNor (None, 64, 64, 32)   128         conv2d_5[0][0]                   \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_4 (Conv2D)               (None, 64, 64, 32)   9248        activation_2[0][0]               \n",
      "__________________________________________________________________________________________________\n",
      "add_1 (Add)                     (None, 64, 64, 32)   0           batch_normalization_4[0][0]      \n",
      "                                                                 conv2d_4[0][0]                   \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_5 (BatchNor (None, 64, 64, 32)   128         add_1[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "activation_3 (Activation)       (None, 64, 64, 32)   0           batch_normalization_5[0][0]      \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_6 (Conv2D)               (None, 32, 32, 64)   18496       activation_3[0][0]               \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_6 (BatchNor (None, 32, 32, 64)   256         conv2d_6[0][0]                   \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_8 (Conv2D)               (None, 32, 32, 64)   2112        add_1[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "activation_4 (Activation)       (None, 32, 32, 64)   0           batch_normalization_6[0][0]      \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_7 (BatchNor (None, 32, 32, 64)   256         conv2d_8[0][0]                   \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_7 (Conv2D)               (None, 32, 32, 64)   36928       activation_4[0][0]               \n",
      "__________________________________________________________________________________________________\n",
      "add_2 (Add)                     (None, 32, 32, 64)   0           batch_normalization_7[0][0]      \n",
      "                                                                 conv2d_7[0][0]                   \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_8 (BatchNor (None, 32, 32, 64)   256         add_2[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "activation_5 (Activation)       (None, 32, 32, 64)   0           batch_normalization_8[0][0]      \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_9 (Conv2D)               (None, 16, 16, 128)  73856       activation_5[0][0]               \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_9 (BatchNor (None, 16, 16, 128)  512         conv2d_9[0][0]                   \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_11 (Conv2D)              (None, 16, 16, 128)  8320        add_2[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "activation_6 (Activation)       (None, 16, 16, 128)  0           batch_normalization_9[0][0]      \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_10 (BatchNo (None, 16, 16, 128)  512         conv2d_11[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_10 (Conv2D)              (None, 16, 16, 128)  147584      activation_6[0][0]               \n",
      "__________________________________________________________________________________________________\n",
      "add_3 (Add)                     (None, 16, 16, 128)  0           batch_normalization_10[0][0]     \n",
      "                                                                 conv2d_10[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_11 (BatchNo (None, 16, 16, 128)  512         add_3[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "activation_7 (Activation)       (None, 16, 16, 128)  0           batch_normalization_11[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_12 (Conv2D)              (None, 8, 8, 256)    295168      activation_7[0][0]               \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_12 (BatchNo (None, 8, 8, 256)    1024        conv2d_12[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_14 (Conv2D)              (None, 8, 8, 256)    33024       add_3[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "activation_8 (Activation)       (None, 8, 8, 256)    0           batch_normalization_12[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_13 (BatchNo (None, 8, 8, 256)    1024        conv2d_14[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_13 (Conv2D)              (None, 8, 8, 256)    590080      activation_8[0][0]               \n",
      "__________________________________________________________________________________________________\n",
      "add_4 (Add)                     (None, 8, 8, 256)    0           batch_normalization_13[0][0]     \n",
      "                                                                 conv2d_13[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_14 (BatchNo (None, 8, 8, 256)    1024        add_4[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "activation_9 (Activation)       (None, 8, 8, 256)    0           batch_normalization_14[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_15 (Conv2D)              (None, 8, 8, 256)    590080      activation_9[0][0]               \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_15 (BatchNo (None, 8, 8, 256)    1024        conv2d_15[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "activation_10 (Activation)      (None, 8, 8, 256)    0           batch_normalization_15[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_16 (Conv2D)              (None, 8, 8, 256)    590080      activation_10[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "up_sampling2d (UpSampling2D)    (None, 16, 16, 256)  0           conv2d_16[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "concatenate (Concatenate)       (None, 16, 16, 384)  0           up_sampling2d[0][0]              \n",
      "                                                                 add_3[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_16 (BatchNo (None, 16, 16, 384)  1536        concatenate[0][0]                \n",
      "__________________________________________________________________________________________________\n",
      "activation_11 (Activation)      (None, 16, 16, 384)  0           batch_normalization_16[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_17 (Conv2D)              (None, 16, 16, 256)  884992      activation_11[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_17 (BatchNo (None, 16, 16, 256)  1024        conv2d_17[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_19 (Conv2D)              (None, 16, 16, 256)  98560       concatenate[0][0]                \n",
      "__________________________________________________________________________________________________\n",
      "activation_12 (Activation)      (None, 16, 16, 256)  0           batch_normalization_17[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_18 (BatchNo (None, 16, 16, 256)  1024        conv2d_19[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_18 (Conv2D)              (None, 16, 16, 256)  590080      activation_12[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "add_5 (Add)                     (None, 16, 16, 256)  0           batch_normalization_18[0][0]     \n",
      "                                                                 conv2d_18[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "up_sampling2d_1 (UpSampling2D)  (None, 32, 32, 256)  0           add_5[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_1 (Concatenate)     (None, 32, 32, 320)  0           up_sampling2d_1[0][0]            \n",
      "                                                                 add_2[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_19 (BatchNo (None, 32, 32, 320)  1280        concatenate_1[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "activation_13 (Activation)      (None, 32, 32, 320)  0           batch_normalization_19[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_20 (Conv2D)              (None, 32, 32, 128)  368768      activation_13[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_20 (BatchNo (None, 32, 32, 128)  512         conv2d_20[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_22 (Conv2D)              (None, 32, 32, 128)  41088       concatenate_1[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "activation_14 (Activation)      (None, 32, 32, 128)  0           batch_normalization_20[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_21 (BatchNo (None, 32, 32, 128)  512         conv2d_22[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_21 (Conv2D)              (None, 32, 32, 128)  147584      activation_14[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "add_6 (Add)                     (None, 32, 32, 128)  0           batch_normalization_21[0][0]     \n",
      "                                                                 conv2d_21[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "up_sampling2d_2 (UpSampling2D)  (None, 64, 64, 128)  0           add_6[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_2 (Concatenate)     (None, 64, 64, 160)  0           up_sampling2d_2[0][0]            \n",
      "                                                                 add_1[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_22 (BatchNo (None, 64, 64, 160)  640         concatenate_2[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "activation_15 (Activation)      (None, 64, 64, 160)  0           batch_normalization_22[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_23 (Conv2D)              (None, 64, 64, 64)   92224       activation_15[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_23 (BatchNo (None, 64, 64, 64)   256         conv2d_23[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_25 (Conv2D)              (None, 64, 64, 64)   10304       concatenate_2[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "activation_16 (Activation)      (None, 64, 64, 64)   0           batch_normalization_23[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_24 (BatchNo (None, 64, 64, 64)   256         conv2d_25[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_24 (Conv2D)              (None, 64, 64, 64)   36928       activation_16[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "add_7 (Add)                     (None, 64, 64, 64)   0           batch_normalization_24[0][0]     \n",
      "                                                                 conv2d_24[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "up_sampling2d_3 (UpSampling2D)  (None, 128, 128, 64) 0           add_7[0][0]                      \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_3 (Concatenate)     (None, 128, 128, 80) 0           up_sampling2d_3[0][0]            \n",
      "                                                                 add[0][0]                        \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_25 (BatchNo (None, 128, 128, 80) 320         concatenate_3[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "activation_17 (Activation)      (None, 128, 128, 80) 0           batch_normalization_25[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_26 (Conv2D)              (None, 128, 128, 32) 23072       activation_17[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_26 (BatchNo (None, 128, 128, 32) 128         conv2d_26[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_28 (Conv2D)              (None, 128, 128, 32) 2592        concatenate_3[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "activation_18 (Activation)      (None, 128, 128, 32) 0           batch_normalization_26[0][0]     \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_27 (BatchNo (None, 128, 128, 32) 128         conv2d_28[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_27 (Conv2D)              (None, 128, 128, 32) 9248        activation_18[0][0]              \n",
      "__________________________________________________________________________________________________\n",
      "add_8 (Add)                     (None, 128, 128, 32) 0           batch_normalization_27[0][0]     \n",
      "                                                                 conv2d_27[0][0]                  \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_29 (Conv2D)              (None, 128, 128, 1)  33          add_8[0][0]                      \n",
      "==================================================================================================\n",
      "Total params: 4,720,685\n",
      "Trainable params: 4,713,415\n",
      "Non-trainable params: 7,270\n",
      "__________________________________________________________________________________________________\n"
     ]
    }
   ],
   "source": [
    "model = ResUNet()\n",
    "adam = keras.optimizers.Adam()\n",
    "model.compile(optimizer=adam, loss=dice_coef_loss, metrics=[dice_coef])\n",
    "model.summary()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Training"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "237/237 [==============================] - 40s 168ms/step - loss: 0.4408 - dice_coef: 0.5592 - val_loss: 0.5942 - val_dice_coef: 0.4058\n",
      "Epoch 2/10\n",
      "237/237 [==============================] - 22s 93ms/step - loss: 0.3808 - dice_coef: 0.6192 - val_loss: 0.5182 - val_dice_coef: 0.4818\n",
      "Epoch 3/10\n",
      "237/237 [==============================] - 22s 94ms/step - loss: 0.3945 - dice_coef: 0.6055 - val_loss: 0.4681 - val_dice_coef: 0.5319\n",
      "Epoch 4/10\n",
      "237/237 [==============================] - 23s 96ms/step - loss: 0.3370 - dice_coef: 0.6630 - val_loss: 0.3781 - val_dice_coef: 0.6219\n",
      "Epoch 5/10\n",
      "237/237 [==============================] - 23s 96ms/step - loss: 0.3830 - dice_coef: 0.6170 - val_loss: 0.4132 - val_dice_coef: 0.5868\n",
      "Epoch 6/10\n",
      "237/237 [==============================] - 23s 98ms/step - loss: 0.3179 - dice_coef: 0.6821 - val_loss: 0.2835 - val_dice_coef: 0.7165\n",
      "Epoch 7/10\n",
      "237/237 [==============================] - 23s 97ms/step - loss: 0.3140 - dice_coef: 0.6860 - val_loss: 0.2471 - val_dice_coef: 0.7529\n",
      "Epoch 8/10\n",
      "237/237 [==============================] - 23s 98ms/step - loss: 0.3042 - dice_coef: 0.6958 - val_loss: 0.5953 - val_dice_coef: 0.4047\n",
      "Epoch 9/10\n",
      "237/237 [==============================] - 24s 100ms/step - loss: 0.2813 - dice_coef: 0.7187 - val_loss: 0.3272 - val_dice_coef: 0.6728\n",
      "Epoch 10/10\n",
      "237/237 [==============================] - 24s 100ms/step - loss: 0.2656 - dice_coef: 0.7344 - val_loss: 0.2607 - val_dice_coef: 0.7393\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<tensorflow.python.keras.callbacks.History at 0x7f2a8422a828>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_gen = DataGen(train_ids, train_path, image_size=image_size, batch_size=batch_size)\n",
    "valid_gen = DataGen(valid_ids, train_path, image_size=image_size, batch_size=batch_size)\n",
    "\n",
    "train_steps = len(train_ids)//batch_size\n",
    "valid_steps = len(valid_ids)//batch_size\n",
    "\n",
    "epochs = 10\n",
    "\n",
    "model.fit_generator(train_gen, validation_data=valid_gen, steps_per_epoch=train_steps, validation_steps=valid_steps, \n",
    "                    epochs=epochs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.save_weights(\"ResUNet.h5\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "      Ground Truth            Predicted Value\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/nikhil/.local/lib/python3.6/site-packages/matplotlib/pyplot.py:514: RuntimeWarning: More than 20 figures have been opened. Figures created through the pyplot interface (`matplotlib.pyplot.figure`) are retained until explicitly closed and may consume too much memory. (To control this warning, see the rcParam `figure.max_open_warning`).\n",
      "  max_open_warning, RuntimeWarning)\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAACuCAYAAAA4eMYdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAC2pJREFUeJzt3W+oZPddx/H3x8T4IAaS7Z9lSaKblFWoQda6pAWrWMSwKdJNn4QEsasGbwsG9JGsLaj41NYHhRJZcNmtaFpFYpagNttF7KOU3NW42bRJsxsSs5dN1jaSNio20a8P5myZrvdy79yZc8+ZX94vOMyZ38yc8zt35vvhnN89MydVhSSpXT8wdAckSf0y6CWpcQa9JDXOoJekxhn0ktQ4g16SGtdb0Cc5mOS5JOeTHOlrPdLYWQsaWvo4jz7JNcA3gF8ELgJPAvdX1dcWvjJpxKwFjUFfe/R3Auer6oWq+i7wBeBQT+uSxsxa0OCu7Wm5NwMvT92/CLx/oycn8eu5msU3q+pdQ3dii2aqBbAeNJuqymbP6SvoN5VkBVgZav1aai8N3YFFsx7Up76Cfg24der+LV3b91TVUeAouAejpm1aC2A9qF99jdE/CexLcluS64D7gJM9rUsaM2tBg+tlj76q3kryIPAl4BrgWFU908e6pDGzFjQGvZxeOXMnPFTVbM5U1YGhO9EX60Gz2Mo/Y/1mrCQ1zqCXpMYZ9JLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxm076JPcmuQfknwtyTNJfqtr/4Mka0me6qYPL6670jhZDxqzbV8zNskeYE9V/VOSG4AzwD3AvcAbVfXpGZblNTI1i9FdM9Z60FC2cs3Ya+dY+CXgUjf/nSRfB27e7vKkZWY9aMwWMkafZC/wU8BXu6YHk5xNcizJTYtYh7QsrAeNzdxBn+SHgb8Gfruqvg08BLwH2M9kD+czG7xuJclqktV5+yCNhfWgMdr2GD1Akh8EHgO+VFV/vM7je4HHquqOTZbjmKRmMboxerAeNIytjNHPc9ZNgD8Fvj79oe7+KXXFR4Fz212HtCysB43Ztv8ZC/wM8CvA00me6to+CdyfZD9QwIvAx+fqobQcrAeN1lxDNwvrhIeqms0oh24WxXrQLHodupEkLQeDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxhn0ktQ4g16SGmfQS1LjDHpJapxBL0mNM+glqXEGvSQ1zqCXpMYZ9JLUOINekhpn0EtS4+a5ODgASV4EvgP8D/BWVR1Isgv4IrCXyQWR762qf593XdKYWQsaq0Xt0X+oqvZPXbD5CHC6qvYBp7v70tuBtaDR6Wvo5hBwops/AdzT03qksbMWNLhFBH0Bjyc5k2Sla9tdVZe6+VeA3Ve/KMlKktUkqwvogzQG26oFsB7Ur7nH6IEPVtVakncDp5I8O/1gVVWSuvpFVXUUOAqw3uPSEtpWLXSPWQ/qzdx79FW11t1eBh4B7gReTbIHoLu9PO96pLGzFjRWcwV9kuuT3HBlHrgLOAecBA53TzsMPDrPeqSxsxY0ZvMO3ewGHklyZVl/UVV/n+RJ4C+TPAC8BNw753qksbMWNFqpGn440DFJzejM1OmLzbEeNIuqymbP8ZuxktQ4g16SGmfQS1LjDHpJapxBL0mNM+glqXEGvSQ1zqCXpMYZ9JLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIat+1rxib5ceCLU023A78H3Aj8BvBvXfsnq+pvt91DaQlYDxqzhVwzNsk1wBrwfuDXgDeq6tMzvN5rZGoWo75mrPWgnbST14z9BeBCVb20oOVJy8x60KgsKujvAx6euv9gkrNJjiW5aUHrkJaF9aBRmTvok1wHfAT4q67pIeA9wH7gEvCZDV63kmQ1yeq8fZDGwnrQGM09Rp/kEPCbVXXXOo/tBR6rqjs2WYZjkprFaMforQfttJ0ao7+fqcPUJHumHvsocG4B65CWhfWg0Zlrjz7J9cC/ArdX1etd258xOUwt4EXg41V1aZPluAejWYxyj9560BC2ske/kNMr5+UHWzMaZdAvivWgWezk6ZWSpJEy6CWpcQa9JDXOoJekxhn0ktQ4g16SGmfQS1LjDHpJapxBL0mNM+glqXEGvSQ1zqCXpMYZ9JLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxWwr6JMeSXE5ybqptV5JTSZ7vbm/q2pPks0nOJzmb5H19dV7aadaCltFW9+iPAwevajsCnK6qfcDp7j7A3cC+bloBHpq/m9JoHMda0JLZUtBX1VeA165qPgSc6OZPAPdMtX++Jp4AbkyyZxGdlYZmLWgZzTNGv7uqLnXzrwC7u/mbgZennnexa5NaZS1o1K5dxEKqqpLULK9JssLkcFZqxnZqAawH9WuePfpXrxyGdreXu/Y14Nap593StX2fqjpaVQeq6sAcfZDGYK5aAOtB/Zon6E8Ch7v5w8CjU+0f6844+ADw+tRhrdQia0HjVlWbTsDDwCXgTSbjjA8A72ByhsHzwJeBXd1zA3wOuAA8DRzYwvLLyWmGaXUrn9s+JnquBevBadZpK5+pdB+sQW1nTFNva2daHuKwHjSLqspmz/GbsZLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxhn0ktQ4g16SGrdp0Cc5luRyknNTbX+U5NkkZ5M8kuTGrn1vkv9K8lQ3/UmfnZd2mvWgZbSVPfrjwMGr2k4Bd1TVTwLfAH536rELVbW/mz6xmG5Ko3Ec60FLZtOgr6qvAK9d1fZ4Vb3V3X0CuKWHvkmjYz1oGS1ijP7Xgb+bun9bkn9O8o9JfnYBy5eWifWg0bl2nhcn+RTwFvDnXdMl4Eeq6ltJfhr4myQ/UVXfXue1K8DKPOuXxsR60Fhte48+ya8CvwT8clUVQFX9d1V9q5s/A1wAfmy911fV0ao6UFUHttsHaSysB43ZtoI+yUHgd4CPVNV/TrW/K8k13fztwD7ghUV0VBor60Fjt+nQTZKHgZ8H3pnkIvD7TM4q+CHgVBKAJ7ozCn4O+MMkbwL/C3yiql5bd8Hf75vAf3S3rXknbW4XDLdtPzrAOoEdq4c3gOd66P4YtFoPo66FdEeZg0uy2uJha6vbBW1v25Ba/ru2um1j3y6/GStJjTPoJalxYwr6o0N3oCetbhe0vW1Davnv2uq2jXq7RjNGL0nqx5j26CVJPRg86JMcTPJckvNJjgzdn3kleTHJ092vFa52bbuSnEryfHd709D93IoNfqlx3W3JxGe79/FskvcN1/Pl1VI9WAvjqYVBg777MsnngLuB9wL3J3nvkH1akA91v1Z45XSrI8DpqtoHnO7uL4Pj/P9fatxoW+5m8oWgfUy+yv/QDvWxGY3Wg7UwgloYeo/+TuB8Vb1QVd8FvgAcGrhPfTgEnOjmTwD3DNiXLVvvlxrZeFsOAZ+viSeAG5Ps2ZmeNuPtUA/WwgCGDvqbgZen7l/s2pZZAY8nOdP9UBXA7qq61M2/AuwepmsLsdG2tPhe7rTW/obWwsTg7+Ncv16pdX2wqtaSvJvJV+KfnX6wqipJE6c6tbQt6oW1MBJD79GvAbdO3b+la1taVbXW3V4GHmFyOP7qlUO37vbycD2c20bb0tx7OYCm/obWwvcM/j4OHfRPAvuS3JbkOuA+4OTAfdq2JNcnueHKPHAXcI7JNh3unnYYeHSYHi7ERttyEvhYd8bBB4DXpw5rtTXN1IO1MLJaqKpBJ+DDTK6zeQH41ND9mXNbbgf+pZueubI9wDuY/Ff+eeDLwK6h+7rF7XmYycUz3mQyzvjARtsChMkZIxeAp4EDQ/d/GadW6sFaGFct+M1YSWrc0EM3kqSeGfSS1DiDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXu/wCi3ZrVGJwR9QAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAACuCAYAAAA4eMYdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAC2FJREFUeJzt3X/oXfddx/Hny9b6Ry2kXbsQ2mrbEIUpGueXOHDCRtlIiywdQmmQLc7idwMLCoLEDaz4l+jiYCCVDEMymN0mGhsharMgjv3R0WTWNN3aNSktTUiTrZOtbOKW9u0f92Rc4/dLvv2ee3PO/ez5gMs993N/nPfne/N+ce7JOfemqpAktevHhi5AkjRfBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuPmFvRJtid5LsmpJLvntR5p7OwFDS3zOI4+yTXA14H3AGeAJ4GdVfXVma9MGjF7QWMwry36bcCpqnqhqr4PfBbYMad1SWNmL2hw187pdW8FXp66fQb4ldUenMTTcxu2efNmNmzYMLPXO378+Der6paZveB8valeAPtBb05V5UqPmVfQX1GSZWB5qPXr6tmzZw87dsxuIzbJSzN7sZGwHzRP8wr6s8DtU7dv68Z+qKr2AnvBLRg17Yq9APaD5mte++ifBLYkuTPJdcADwKE5rUsaM3tBg5vLFn1VXUzyEPCvwDXAvqp6Zh7rksbMXtAYzG0ffVUdBg7P6/WlRWEvaGieGStJjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxhn0ktQ4g16SGmfQS1LjDHpJapxBL0mNM+glqXHrDvoktyf5tyRfTfJMkt/rxv8kydkkT3WXe2dXrjRO9oPGrM9vxl4E/qCqvpLkBuB4kiPdfZ+oqo/3L09aGPaDRmvdQV9V54Bz3fJrSb4G3DqrwqRFYj9ozGayjz7JHcAvAV/uhh5KciLJviQ3zmId0qKwHzQ2vYM+yU8Cfw/8flV9B3gE2AxsZbKFs2eV5y0nOZbkWN8apLGwHzRGvYI+yY8z+Uf9mar6B4CqOl9Vr1fVG8CngG0rPbeq9lbVUlUt9alBGgv7QWPV56ibAH8DfK2q/nJqfNPUw94PnFx/edJisB80Zn2OuvlV4APA00me6sY+CuxMshUo4EXgw70qlBaD/aDR6nPUzZeArHDX4fWXIy0m+0Fj5pmxktQ4g16SGmfQS1LjDHpJapxBL0mNM+glqXEGvSQ1zqCXpMYZ9JLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuP6/Dg4AEleBF4DXgcuVtVSkpuAzwF3MPlB5Pur6r/6rksaM3tBYzWrLfp3V9XWqlrqbu8GjlbVFuBod1v6UWAvaHTmtetmB3CgWz4A3Den9UhjZy9ocLMI+gIeT3I8yXI3trGqznXLrwAbL39SkuUkx5Icm0EN0hisqxfAftB89d5HD7yzqs4meStwJMmz03dWVSWpy59UVXuBvQAr3S8toHX1Qnef/aC56b1FX1Vnu+sLwEFgG3A+ySaA7vpC3/VIY2cvaKx6BX2S65PccGkZeC9wEjgE7Ooetgt4rM96pLGzFzRmfXfdbAQOJrn0Wn9bVf+S5Eng80keBF4C7u+5Hmns7AWNVq+gr6oXgF9cYfxV4O4+ry0tEntBY+aZsZLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxhn0ktQ4g16SGrfunxJM8rPA56aG7gL+GNgA/A7wjW78o1V1eN0VSgvAftCYrTvoq+o5YCtAkmuAs8BB4EPAJ6rq4zOpUFoA9oPGbFa7bu4GTlfVSzN6PWmR2Q8alVkF/QPAo1O3H0pyIsm+JDfOaB3SorAfNCq9gz7JdcD7gL/rhh4BNjP5GHsO2LPK85aTHEtyrG8N0ljYDxqjWWzR3wN8parOA1TV+ap6vareAD4FbFvpSVW1t6qWqmppBjVIY2E/aHRmEfQ7mfqYmmTT1H3vB07OYB3SorAfNDrrPuoGIMn1wHuAD08N/3mSrUABL152n9Qs+0Fj1Svoq+q7wFsuG/tAr4qkBWU/aKw8M1aSGmfQS1LjDHpJapxBL0mNM+glqXEGvSQ1zqCXpMYZ9JLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuPWFPRJ9iW5kOTk1NhNSY4keb67vrEbT5JPJjmV5ESSt8+reOlqsxe0iNa6Rb8f2H7Z2G7gaFVtAY52twHuAbZ0l2Xgkf5lSqOxH3tBC2ZNQV9VXwS+ddnwDuBAt3wAuG9q/NM18QSwIcmmWRQrDc1e0CLqs49+Y1Wd65ZfATZ2y7cCL0897kw3JrXKXtCoXTuLF6mqSlJv5jlJlpl8nJWasZ5eAPtB89Vni/78pY+h3fWFbvwscPvU427rxv6PqtpbVUtVtdSjBmkMevUC2A+arz5BfwjY1S3vAh6bGv9gd8TBO4BvT32slVpkL2jU1rTrJsmjwLuAm5OcAR4G/gz4fJIHgZeA+7uHHwbuBU4B3wM+NOOapcHYC1pEawr6qtq5yl13r/DYAn63T1HSWNkLWkSeGStJjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxhn0ktQ4g16SGmfQS1LjDHpJapxBL0mNM+glqXFXDPok+5JcSHJyauwvkjyb5ESSg0k2dON3JPnvJE91l7+eZ/HS1WY/aBGtZYt+P7D9srEjwM9X1S8AXwf+aOq+01W1tbt8ZDZlSqOxH/tBC+aKQV9VXwS+ddnY41V1sbv5BHDbHGqTRsd+0CKaxT763wb+eer2nUn+I8m/J/m1Gby+tEjsB43OtX2enORjwEXgM93QOeCnqurVJL8M/GOSn6uq76zw3GVguc/6pTGxHzRW696iT/JbwK8Dv1lVBVBV/1NVr3bLx4HTwM+s9Pyq2ltVS1W1tN4apLGwHzRm6wr6JNuBPwTeV1Xfmxq/Jck13fJdwBbghVkUKo2V/aCxS7fxsfoDkkeBdwE3A+eBh5kcVfATwKvdw56oqo8k+Q3gT4EfAG8AD1fVP12xiOQbwHeBb65vGqN2M23OC4ab209X1S0DrPdq9cNrwHOzr34UWu2HUffCFYP+aklyrMWPra3OC9qe25Ba/ru2Orexz8szYyWpcQa9JDVuTEG/d+gC5qTVeUHbcxtSy3/XVuc26nmNZh+9JGk+xrRFL0mag8GDPsn2JM8lOZVk99D19JXkxSRPd99WeKwbuynJkSTPd9c3Dl3nWqzyTY0rziUTn+zexxNJ3j5c5YurpX6wF8bTC4MGfXcyyV8B9wBvA3YmeduQNc3Iu7tvK7x0uNVu4GhVbQGOdrcXwX7+/zc1rjaXe5icELSFyan8j1ylGpvRaD/YCyPohaG36LcBp6rqhar6PvBZYMfANc3DDuBAt3wAuG/AWtZspW9qZPW57AA+XRNPABuSbLo6lTbjR6Ef7IUBDB30twIvT90+040tsgIeT3K8+6IqgI1Vda5bfgXYOExpM7HaXFp8L6+21v6G9sLE4O9jr2+v1IreWVVnk7wVOJLk2ek7q6qSNHGoU0tz0VzYCyMx9Bb9WeD2qdu3dWMLq6rOdtcXgINMPo6fv/TRrbu+MFyFva02l+beywE09Te0F35o8Pdx6KB/EtiS5M4k1wEPAIcGrmndklyf5IZLy8B7gZNM5rSre9gu4LFhKpyJ1eZyCPhgd8TBO4BvT32s1do00w/2wsh6oaoGvQD3MvmdzdPAx4aup+dc7gL+s7s8c2k+wFuY/K/888AXgJuGrnWN83mUyY9n/IDJfsYHV5sLECZHjJwGngaWhq5/ES+t9IO9MK5e8MxYSWrc0LtuJElzZtBLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxhn0ktS4/wW9I9hX/rqhNgAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAACuCAYAAAA4eMYdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAC2pJREFUeJzt3W+oZPddx/H3x8T4IAaS7Z9lSaKblFWoQda6pAWrWMSwKdJNn4QEsasGbwsG9JGsLaj41NYHhRJZcNmtaFpFYpagNttF7KOU3NW42bRJsxsSs5dN1jaSNio20a8P5myZrvdy79yZc8+ZX94vOMyZ38yc8zt35vvhnN89MydVhSSpXT8wdAckSf0y6CWpcQa9JDXOoJekxhn0ktQ4g16SGtdb0Cc5mOS5JOeTHOlrPdLYWQsaWvo4jz7JNcA3gF8ELgJPAvdX1dcWvjJpxKwFjUFfe/R3Auer6oWq+i7wBeBQT+uSxsxa0OCu7Wm5NwMvT92/CLx/oycn8eu5msU3q+pdQ3dii2aqBbAeNJuqymbP6SvoN5VkBVgZav1aai8N3YFFsx7Up76Cfg24der+LV3b91TVUeAouAejpm1aC2A9qF99jdE/CexLcluS64D7gJM9rUsaM2tBg+tlj76q3kryIPAl4BrgWFU908e6pDGzFjQGvZxeOXMnPFTVbM5U1YGhO9EX60Gz2Mo/Y/1mrCQ1zqCXpMYZ9JLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxm076JPcmuQfknwtyTNJfqtr/4Mka0me6qYPL6670jhZDxqzbV8zNskeYE9V/VOSG4AzwD3AvcAbVfXpGZblNTI1i9FdM9Z60FC2cs3Ya+dY+CXgUjf/nSRfB27e7vKkZWY9aMwWMkafZC/wU8BXu6YHk5xNcizJTYtYh7QsrAeNzdxBn+SHgb8Gfruqvg08BLwH2M9kD+czG7xuJclqktV5+yCNhfWgMdr2GD1Akh8EHgO+VFV/vM7je4HHquqOTZbjmKRmMboxerAeNIytjNHPc9ZNgD8Fvj79oe7+KXXFR4Fz212HtCysB43Ztv8ZC/wM8CvA00me6to+CdyfZD9QwIvAx+fqobQcrAeN1lxDNwvrhIeqms0oh24WxXrQLHodupEkLQeDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxhn0ktQ4g16SGmfQS1LjDHpJapxBL0mNM+glqXEGvSQ1zqCXpMYZ9JLUOINekhpn0EtS4+a5ODgASV4EvgP8D/BWVR1Isgv4IrCXyQWR762qf593XdKYWQsaq0Xt0X+oqvZPXbD5CHC6qvYBp7v70tuBtaDR6Wvo5hBwops/AdzT03qksbMWNLhFBH0Bjyc5k2Sla9tdVZe6+VeA3Ve/KMlKktUkqwvogzQG26oFsB7Ur7nH6IEPVtVakncDp5I8O/1gVVWSuvpFVXUUOAqw3uPSEtpWLXSPWQ/qzdx79FW11t1eBh4B7gReTbIHoLu9PO96pLGzFjRWcwV9kuuT3HBlHrgLOAecBA53TzsMPDrPeqSxsxY0ZvMO3ewGHklyZVl/UVV/n+RJ4C+TPAC8BNw753qksbMWNFqpGn440DFJzejM1OmLzbEeNIuqymbP8ZuxktQ4g16SGmfQS1LjDHpJapxBL0mNM+glqXEGvSQ1zqCXpMYZ9JLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIat+1rxib5ceCLU023A78H3Aj8BvBvXfsnq+pvt91DaQlYDxqzhVwzNsk1wBrwfuDXgDeq6tMzvN5rZGoWo75mrPWgnbST14z9BeBCVb20oOVJy8x60KgsKujvAx6euv9gkrNJjiW5aUHrkJaF9aBRmTvok1wHfAT4q67pIeA9wH7gEvCZDV63kmQ1yeq8fZDGwnrQGM09Rp/kEPCbVXXXOo/tBR6rqjs2WYZjkprFaMforQfttJ0ao7+fqcPUJHumHvsocG4B65CWhfWg0Zlrjz7J9cC/ArdX1etd258xOUwt4EXg41V1aZPluAejWYxyj9560BC2ske/kNMr5+UHWzMaZdAvivWgWezk6ZWSpJEy6CWpcQa9JDXOoJekxhn0ktQ4g16SGmfQS1LjDHpJapxBL0mNM+glqXEGvSQ1zqCXpMYZ9JLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxWwr6JMeSXE5ybqptV5JTSZ7vbm/q2pPks0nOJzmb5H19dV7aadaCltFW9+iPAwevajsCnK6qfcDp7j7A3cC+bloBHpq/m9JoHMda0JLZUtBX1VeA165qPgSc6OZPAPdMtX++Jp4AbkyyZxGdlYZmLWgZzTNGv7uqLnXzrwC7u/mbgZennnexa5NaZS1o1K5dxEKqqpLULK9JssLkcFZqxnZqAawH9WuePfpXrxyGdreXu/Y14Nap593StX2fqjpaVQeq6sAcfZDGYK5aAOtB/Zon6E8Ch7v5w8CjU+0f6844+ADw+tRhrdQia0HjVlWbTsDDwCXgTSbjjA8A72ByhsHzwJeBXd1zA3wOuAA8DRzYwvLLyWmGaXUrn9s+JnquBevBadZpK5+pdB+sQW1nTFNva2daHuKwHjSLqspmz/GbsZLUOINekhpn0EtS4wx6SWqcQS9JjTPoJalxBr0kNc6gl6TGGfSS1DiDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXOoJekxhn0ktQ4g16SGrdp0Cc5luRyknNTbX+U5NkkZ5M8kuTGrn1vkv9K8lQ3/UmfnZd2mvWgZbSVPfrjwMGr2k4Bd1TVTwLfAH536rELVbW/mz6xmG5Ko3Ec60FLZtOgr6qvAK9d1fZ4Vb3V3X0CuKWHvkmjYz1oGS1ijP7Xgb+bun9bkn9O8o9JfnYBy5eWifWg0bl2nhcn+RTwFvDnXdMl4Eeq6ltJfhr4myQ/UVXfXue1K8DKPOuXxsR60Fhte48+ya8CvwT8clUVQFX9d1V9q5s/A1wAfmy911fV0ao6UFUHttsHaSysB43ZtoI+yUHgd4CPVNV/TrW/K8k13fztwD7ghUV0VBor60Fjt+nQTZKHgZ8H3pnkIvD7TM4q+CHgVBKAJ7ozCn4O+MMkbwL/C3yiql5bd8Hf75vAf3S3rXknbW4XDLdtPzrAOoEdq4c3gOd66P4YtFoPo66FdEeZg0uy2uJha6vbBW1v25Ba/ru2um1j3y6/GStJjTPoJalxYwr6o0N3oCetbhe0vW1Davnv2uq2jXq7RjNGL0nqx5j26CVJPRg86JMcTPJckvNJjgzdn3kleTHJ092vFa52bbuSnEryfHd709D93IoNfqlx3W3JxGe79/FskvcN1/Pl1VI9WAvjqYVBg777MsnngLuB9wL3J3nvkH1akA91v1Z45XSrI8DpqtoHnO7uL4Pj/P9fatxoW+5m8oWgfUy+yv/QDvWxGY3Wg7UwgloYeo/+TuB8Vb1QVd8FvgAcGrhPfTgEnOjmTwD3DNiXLVvvlxrZeFsOAZ+viSeAG5Ps2ZmeNuPtUA/WwgCGDvqbgZen7l/s2pZZAY8nOdP9UBXA7qq61M2/AuwepmsLsdG2tPhe7rTW/obWwsTg7+Ncv16pdX2wqtaSvJvJV+KfnX6wqipJE6c6tbQt6oW1MBJD79GvAbdO3b+la1taVbXW3V4GHmFyOP7qlUO37vbycD2c20bb0tx7OYCm/obWwvcM/j4OHfRPAvuS3JbkOuA+4OTAfdq2JNcnueHKPHAXcI7JNh3unnYYeHSYHi7ERttyEvhYd8bBB4DXpw5rtTXN1IO1MLJaqKpBJ+DDTK6zeQH41ND9mXNbbgf+pZueubI9wDuY/Ff+eeDLwK6h+7rF7XmYycUz3mQyzvjARtsChMkZIxeAp4EDQ/d/GadW6sFaGFct+M1YSWrc0EM3kqSeGfSS1DiDXpIaZ9BLUuMMeklqnEEvSY0z6CWpcQa9JDXu/wCi3ZrVGJwR9QAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAACuCAYAAAA4eMYdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAE5RJREFUeJzt3X9wVeWdx/H3NwFSBEJMDBk0gUibtRUrP0yQKh2NVDSOVJmltLgtP9bhh7VTtVqry7q1+9e2q1a3s2jBdaCdKna7ou6Ms61a2u7+gUNQV+kPWrU4wGBEtLVTlWL73T9yyAZMTHLvufc557mf18yd3PPcc+/5Pvfe7zfPfe4555q7IyIi8aoKHYCIiJSWCr2ISORU6EVEIqdCLyISORV6EZHIqdCLiESuZIXezC42s91m9oKZ3VSq7YhknXJBQrNS7EdvZtXAr4ELgX3ADmCpu/8i9Y2JZJhyQbKgVCP6OcAL7v6Su/8J2AJcVqJtiWSZckGCG1Wixz0F2NtveR9w9mArm5kOzx3ASSedxNSpU/uW9+7dy5EjRwCYNm3aoPf77W9/
Download .txt
gitextract_ullzu_3j/

├── Deep Residual UNet.ipynb
├── README.md
├── ResUNet.h5
├── dataset/
│   ├── README.md
│   └── train/
│       ├── README.md
│       ├── images/
│       │   └── README.md
│       └── masks/
│           └── README.md
└── images/
    └── README.md
Condensed preview — 8 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (259K chars).
[
  {
    "path": "Deep Residual UNet.ipynb",
    "chars": 254561,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"# Deep Residual U-Net (ResUNet)\\n\","
  },
  {
    "path": "README.md",
    "chars": 405,
    "preview": "# Deep-Residual-Unet\nResUNet, a semantic segmentation model inspired by the deep residual learning and UNet. An architec"
  },
  {
    "path": "dataset/README.md",
    "chars": 142,
    "preview": "# Dataset\n<a href=\"https://www.kaggle.com/c/tgs-salt-identification-challenge\">https://www.kaggle.com/c/tgs-salt-identif"
  },
  {
    "path": "dataset/train/README.md",
    "chars": 18,
    "preview": "# Training Images\n"
  },
  {
    "path": "dataset/train/images/README.md",
    "chars": 9,
    "preview": "# Images\n"
  },
  {
    "path": "dataset/train/masks/README.md",
    "chars": 8,
    "preview": "# Masks\n"
  },
  {
    "path": "images/README.md",
    "chars": 9,
    "preview": "# Images\n"
  }
]

// ... and 1 more files (download for full content)

About this extraction

This page contains the full source code of the nikhilroxtomar/Deep-Residual-Unet GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 8 files (18.5 MB), approximately 153.4k tokens. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!