Newer
Older
HCAL_project / create_reco_images.ipynb
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import os\n",
    "\n",
    "import pickle"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "def ones_to_zeros(ET_inner_dict, ET_outer_dict):\n",
    "    \n",
    "    for k in range(0,len(ET_inner_dict)):\n",
    "        for i in range(ET_inner_dict[k].shape[0]):\n",
    "            equal_inner = np.array_equal(ET_inner_dict[k][i],np.ones_like(ET_inner_dict[k][i]))\n",
    "            equal_outer = np.array_equal(ET_outer_dict[k][i],np.ones_like(ET_outer_dict[k][i]))\n",
    "            if equal_inner or equal_outer:\n",
    "                ET_inner_dict[k][i]=np.zeros_like(ET_inner_dict[k][i])\n",
    "                ET_outer_dict[k][i]=np.zeros_like(ET_outer_dict[k][i])\n",
    "                \n",
    "    return ET_inner_dict, ET_outer_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "def double_size(X_in):\n",
    "\n",
    "    X_out = np.zeros(\n",
    "        shape=(2*X_in.shape[0],2*X_in.shape[1],1),\n",
    "        dtype=np.float32\n",
    "    )\n",
    "    \n",
    "    for i in range(X_in.shape[0]):\n",
    "        for j in range(X_in.shape[1]):\n",
    "            \n",
    "            if X_in[i,j]!=0:\n",
    "                value = X_in[i,j]/4\n",
    "                X_out[2*i,2*j]=value\n",
    "                X_out[2*i+1,2*j]=value\n",
    "                X_out[2*i,2*j+1]=value\n",
    "                X_out[2*i+1,2*j+1]=value\n",
    "    return X_out"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "def insert(X_inner, X_outer):\n",
    "    X=X_outer\n",
    "    \n",
    "    for i in range(12,40):\n",
    "        for j in range(16,48):\n",
    "            X[i,j]=X_inner[i-12,j-16]\n",
    "    \n",
    "    return X"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "def generate_HCAL_images(ET_inner_dict, ET_outer_dict):\n",
    "    \n",
    "    output_pics = {}\n",
    "    \n",
    "    pic = np.array(np.zeros(shape=(52,64,1), dtype=np.float32))\n",
    "    \n",
    "    for j in range(len(ET_inner_dict)):\n",
    "        \n",
    "        \n",
    "        output_pics[j]=np.array([pic for i in range(len(ET_inner_dict[j]))])    \n",
    "        \n",
    "    \n",
    "    for j in range(len(ET_inner_dict)):\n",
    "        \n",
    "        for k in range(len(ET_inner_dict[j])):\n",
    "            \n",
    "            ET_image = insert(ET_inner_dict[j][k], double_size(ET_outer_dict[j][k]))\n",
    "            ET_image = np.flip(ET_image, axis = 0)\n",
    "            \n",
    "            output_pics[j][k]= ET_image\n",
    "            \n",
    "        print('Done batch {0}'.format(j+1))\n",
    "                \n",
    "    return output_pics"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "ET_inner_dict={}\n",
    "ET_outer_dict={}\n",
    "\n",
    "i=0\n",
    "while os.path.exists('/disk/lhcb_data/davide/HCAL_project_full_event/npy/B2Dmunu/ET_inner/batch_'+str(i)+'.npy'):\n",
    "#while i < 5:\n",
    "    ET_inner_dict[i]=np.load('/disk/lhcb_data/davide/HCAL_project_full_event/npy/B2Dmunu/ET_inner/batch_'+str(i)+'.npy')\n",
    "    ET_outer_dict[i]=np.load('/disk/lhcb_data/davide/HCAL_project_full_event/npy/B2Dmunu/ET_outer/batch_'+str(i)+'.npy')\n",
    "\n",
    "    i+=1\n",
    "    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1008x432 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "mean_inner_ET=np.mean(ET_inner_dict[0], axis=0, keepdims=True).reshape(32,32)\n",
    "plt.subplot(1,2,1)\n",
    "plt.imshow(mean_inner_ET[2:mean_inner_ET.shape[0]-2,0:mean_inner_ET.shape[0]])\n",
    "plt.subplot(1,2,2)\n",
    "mean_outer_ET=np.mean(ET_outer_dict[0], axis=0, keepdims=True).reshape(32,32)\n",
    "plt.imshow(mean_outer_ET[3:mean_outer_ET.shape[0]-3,0:mean_outer_ET.shape[0]])\n",
    "fig = plt.gcf()\n",
    "fig.set_size_inches(14,6)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7fa29749f898>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.imshow(mean_inner_ET[15:17,13:19])\n",
    "plt.imshow(mean_inner_ET[14:18,14:18])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "ET_inner_dict, ET_outer_dict = ones_to_zeros(ET_inner_dict, ET_outer_dict)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "#cutting out useless pixels\n",
    "for i in range(len(ET_inner_dict)):\n",
    "    ET_inner_dict[i]=ET_inner_dict[i][:,2:ET_inner_dict[i].shape[1]-2,:]\n",
    "    ET_outer_dict[i]=ET_outer_dict[i][:,3:ET_outer_dict[i].shape[1]-3,:]\n",
    "    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(20000, 28, 32) (20000, 26, 32)\n"
     ]
    }
   ],
   "source": [
    "#Check cut dict dimensions\n",
    "print(ET_inner_dict[0].shape, ET_outer_dict[0].shape)\n",
    "#is\n",
    "#(?, 28, 32), (?,26, 32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "#not actually needed\n",
    "def delete_undetected_events(X_inner, X_outer):\n",
    "    count =0\n",
    "    total =0 \n",
    "    pos_rejected={}\n",
    "    \n",
    "    for i in range(len(X_inner)):\n",
    "        pos_rejected[i]=[]\n",
    "        \n",
    "        for j in range(X_inner[i].shape[0]):\n",
    "            total+=1\n",
    "            equal_inner = np.array_equal(X_inner[i][j],np.zeros_like(X_inner[i][j]))\n",
    "            equal_outer = np.array_equal(X_outer[i][j],np.zeros_like(X_outer[i][j]))\n",
    "            if equal_inner and equal_outer:\n",
    "                count+=1\n",
    "                pos_rejected[i].append(j)\n",
    "           \n",
    "    X_inner_filtered={}\n",
    "    X_outer_filtered={}\n",
    "    for i in range(len(X_inner)):\n",
    "    \n",
    "        X_inner_filtered[i]=np.delete(X_inner[i],pos_rejected[i],axis=0)\n",
    "        X_outer_filtered[i]=np.delete(X_outer[i],pos_rejected[i],axis=0)\n",
    "    print('Removed {0} empty events over a total of {1} events'.format(count, total))\n",
    "    return X_inner_filtered, X_outer_filtered, pos_rejected\n",
    "ET_inner_filtered, ET_outer_filtered, pos_rejected = delete_undetected_events(ET_inner_dict,ET_outer_dict)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7fa26e17ecc0>"
      ]
     },
     "execution_count": 15,
     "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": [
    "i=1\n",
    "plt.subplot(1,2,1)\n",
    "plt.imshow(ET_inner_filtered[0][i].reshape(28,32),cmap='gray')\n",
    "plt.subplot(1,2,2)\n",
    "plt.imshow(ET_outer_filtered[0][i].reshape(26,32),cmap='gray')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7fa20cf16f60>"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "i=2\n",
    "plt.imshow(np.flip(insert(ET_inner_filtered[0][i],double_size(ET_outer_filtered[0][i])).reshape(52,64),axis=0))\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Done batch 1\n",
      "Done batch 2\n",
      "Done batch 3\n",
      "Done batch 4\n"
     ]
    }
   ],
   "source": [
    "output_pics = generate_HCAL_images(ET_inner_filtered,ET_outer_filtered)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "mean_output=output_pics[0].mean(axis=0, keepdims=True).reshape(52,64)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7fa20d8d1cf8>"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.imshow(mean_output)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7fa20d8bc588>"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.imshow(mean_output[25:27,28:34])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7fa20d8119b0>"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.imshow(mean_output[24:28,30:34])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "for i in range(len(output_pics)):\n",
    "    with open('/disk/lhcb_data/davide/HCAL_project_full_event/reco/sample'+str(i)+'.pickle', 'wb') as handle:\n",
    "        pickle.dump(output_pics[i], handle)\n",
    "    #with open('/disk/lhcb_data/davide/HCAL_project_full_event/reco/rejected'+str(i)+'.pickle', 'wb') as handle:\n",
    "    #    pickle.dump(pos_rejected[i], handle)\n",
    "        "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "a=np.array([output_pics[0][i].sum() for i in range(len(output_pics[0]))])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.hist(a/1000,range=(0.0,120),bins=70);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "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.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}