Switch to side-by-side view

--- a
+++ b/3ClassifyNodulesLIDC.ipynb
@@ -0,0 +1,2808 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# 3. Classify Detected Nodules in LIDC Dataset as FP or TP\n",
+    "\n",
+    "## Summary\n",
+    "\n",
+    "* Load processed data into trained u-net to generate predicted nodule masks\n",
+    "* Use nodule coordinates file (list3_2.csv) to label detected nodules as TP or FP\n",
+    "* Load images for each respective detected nodule and train a CNN with the TP or FP labels"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:73: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(32, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:75: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(32, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:78: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(64, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:80: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(64, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:83: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(128, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:85: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(128, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:88: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(256, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:90: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(256, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:93: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(512, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:95: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(512, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:97: UserWarning: The `merge` function is deprecated and will be removed after 08/2017. Use instead layers from `keras.layers.merge`, e.g. `add`, `concatenate`, etc.\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\keras\\legacy\\layers.py:458: UserWarning: The `Merge` layer is deprecated and will be removed after 08/2017. Use instead layers from `keras.layers.merge`, e.g. `add`, `concatenate`, etc.\n",
+      "  name=name)\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:99: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(256, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:100: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(256, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:102: UserWarning: The `merge` function is deprecated and will be removed after 08/2017. Use instead layers from `keras.layers.merge`, e.g. `add`, `concatenate`, etc.\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:104: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(128, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:105: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(128, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:107: UserWarning: The `merge` function is deprecated and will be removed after 08/2017. Use instead layers from `keras.layers.merge`, e.g. `add`, `concatenate`, etc.\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:109: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(64, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:110: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(64, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:112: UserWarning: The `merge` function is deprecated and will be removed after 08/2017. Use instead layers from `keras.layers.merge`, e.g. `add`, `concatenate`, etc.\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:114: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(32, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:115: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(32, (3, 3), padding=\"same\", activation=\"relu\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:116: UserWarning: Update your `Conv2D` call to the Keras 2 API: `Conv2D(1, (1, 1), activation=\"sigmoid\")`\n",
+      "c:\\programdata\\anaconda3\\envs\\tensorflow\\lib\\site-packages\\ipykernel_launcher.py:118: UserWarning: Update your `Model` call to the Keras 2 API: `Model(inputs=Tensor(\"in..., outputs=Tensor(\"co...)`\n"
+     ]
+    }
+   ],
+   "source": [
+    "#EDIT HERE##############################\n",
+    "\n",
+    "list32file=\"LIDC/list3.2.csv\"\n",
+    "metafile=\"LIDC/LIDC-IDRI_MetaData.csv\"\n",
+    "unetweightspath=\"modelweights/unet-weights-improvement.hdf5\"\n",
+    "truenoduleweightspath=\"modelweights/truenodule-cnn-weights-improvement.hdf5\"\n",
+    "datafolder=\"processeddata\"\n",
+    "DOIpath='LIDC/DOI/'\n",
+    "########################################\n",
+    "\n",
+    "\n",
+    "import numpy as np # linear algebra\n",
+    "import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\n",
+    "import matplotlib.pyplot as plt\n",
+    "import dicom\n",
+    "import os\n",
+    "import scipy.ndimage\n",
+    "import time\n",
+    "from keras.callbacks import ModelCheckpoint\n",
+    "import h5py\n",
+    "from sklearn.cluster import KMeans\n",
+    "from skimage import measure, morphology\n",
+    "from mpl_toolkits.mplot3d.art3d import Poly3DCollection\n",
+    "import cell_magic_wand as cmw\n",
+    "from glob import glob\n",
+    "import random\n",
+    "from sklearn.model_selection import train_test_split\n",
+    "import keras\n",
+    "from keras.models import Sequential,load_model,Model\n",
+    "from keras.layers import Dense, Dropout, Activation, Flatten\n",
+    "from keras.layers import Conv2D, MaxPooling2D, SpatialDropout2D\n",
+    "from keras.layers import Input, merge, UpSampling2D, BatchNormalization\n",
+    "from keras.optimizers import Adam\n",
+    "from keras.callbacks import EarlyStopping, ModelCheckpoint\n",
+    "from keras import backend as K\n",
+    "from keras.utils import to_categorical\n",
+    "from keras.datasets import mnist\n",
+    "from keras.models import Sequential\n",
+    "from keras import backend as K\n",
+    "from keras.optimizers import Adam\n",
+    "K.set_image_dim_ordering('th') \n",
+    "nodulelocations=pd.read_csv(list32file)\n",
+    "meta=pd.read_csv(metafile)\n",
+    "\n",
+    "meta=meta.drop(meta[meta['Modality']!='CT'].index)\n",
+    "meta=meta.reset_index()\n",
+    "\n",
+    "#Get folder names of CT data for each patient\n",
+    "patients=[DOIpath+meta['Patient Id'][i] for i in range(len(meta))]\n",
+    "datfolder=[]\n",
+    "for i in range(0,len(meta)-1):\n",
+    "    for path in os.listdir(patients[i]):\n",
+    "        if os.path.exists(patients[i]+'/'+path+'/'+meta['Series UID'][i]):\n",
+    "            datfolder.append(patients[i]+'/'+path+'/'+meta['Series UID'][i])\n",
+    "patients=datfolder\n",
+    "\n",
+    "#Load nodules locations\n",
+    "\n",
+    "#Code sourced from https://www.kaggle.com/c/data-science-bowl-2017#tutorial\n",
+    "smooth = 1.0\n",
+    "width = 32\n",
+    "\n",
+    "def dice_coef(y_true, y_pred):\n",
+    "    y_true_f = K.flatten(y_true)\n",
+    "    y_pred_f = K.flatten(y_pred)\n",
+    "    intersection = K.sum(y_true_f * y_pred_f)\n",
+    "    return (2. * intersection + smooth) / (K.sum(y_true_f) + K.sum(y_pred_f) + smooth)\n",
+    "def dice_coef_loss(y_true, y_pred):\n",
+    "    return -dice_coef(y_true, y_pred)\n",
+    "\n",
+    "def unet_model():\n",
+    "    inputs = Input((1, 512, 512))\n",
+    "    conv1 = Conv2D(width, 3, 3, activation='relu', border_mode='same')(inputs)\n",
+    "    conv1 = BatchNormalization(axis = 1)(conv1)\n",
+    "    conv1 = Conv2D(width, 3, 3, activation='relu', border_mode='same')(conv1)\n",
+    "    pool1 = MaxPooling2D(pool_size=(2, 2))(conv1)\n",
+    "\n",
+    "    conv2 = Conv2D(width*2, 3, 3, activation='relu', border_mode='same')(pool1)\n",
+    "    conv2 = BatchNormalization(axis = 1)(conv2)\n",
+    "    conv2 = Conv2D(width*2, 3, 3, activation='relu', border_mode='same')(conv2)\n",
+    "    pool2 = MaxPooling2D(pool_size=(2, 2))(conv2)\n",
+    "\n",
+    "    conv3 = Conv2D(width*4, 3, 3, activation='relu', border_mode='same')(pool2)\n",
+    "    conv3 = BatchNormalization(axis = 1)(conv3)\n",
+    "    conv3 = Conv2D(width*4, 3, 3, activation='relu', border_mode='same')(conv3)\n",
+    "    pool3 = MaxPooling2D(pool_size=(2, 2))(conv3)\n",
+    "\n",
+    "    conv4 = Conv2D(width*8, 3, 3, activation='relu', border_mode='same')(pool3)\n",
+    "    conv4 = BatchNormalization(axis = 1)(conv4)\n",
+    "    conv4 = Conv2D(width*8, 3, 3, activation='relu', border_mode='same')(conv4)\n",
+    "    pool4 = MaxPooling2D(pool_size=(2, 2))(conv4)\n",
+    "\n",
+    "    conv5 = Conv2D(width*16, 3, 3, activation='relu', border_mode='same')(pool4)\n",
+    "    conv5 = BatchNormalization(axis = 1)(conv5)\n",
+    "    conv5 = Conv2D(width*16, 3, 3, activation='relu', border_mode='same')(conv5)\n",
+    "\n",
+    "    up6 = merge([UpSampling2D(size=(2, 2))(conv5), conv4], mode='concat', concat_axis=1)\n",
+    "    conv6 = SpatialDropout2D(0.35)(up6)\n",
+    "    conv6 = Conv2D(width*8, 3, 3, activation='relu', border_mode='same')(conv6)\n",
+    "    conv6 = Conv2D(width*8, 3, 3, activation='relu', border_mode='same')(conv6)\n",
+    "\n",
+    "    up7 = merge([UpSampling2D(size=(2, 2))(conv6), conv3], mode='concat', concat_axis=1)\n",
+    "    conv7 = SpatialDropout2D(0.35)(up7)\n",
+    "    conv7 = Conv2D(width*4, 3, 3, activation='relu', border_mode='same')(conv7)\n",
+    "    conv7 = Conv2D(width*4, 3, 3, activation='relu', border_mode='same')(conv7)\n",
+    "\n",
+    "    up8 = merge([UpSampling2D(size=(2, 2))(conv7), conv2], mode='concat', concat_axis=1)\n",
+    "    conv8 = SpatialDropout2D(0.35)(up8)\n",
+    "    conv8 = Conv2D(width*2, 3, 3, activation='relu', border_mode='same')(conv8)\n",
+    "    conv8 = Conv2D(width*2, 3, 3, activation='relu', border_mode='same')(conv8)\n",
+    "\n",
+    "    up9 = merge([UpSampling2D(size=(2, 2))(conv8), conv1], mode='concat', concat_axis=1)\n",
+    "    conv9 = SpatialDropout2D(0.35)(up9)\n",
+    "    conv9 = Conv2D(width, 3, 3, activation='relu', border_mode='same')(conv9)\n",
+    "    conv9 = Conv2D(width, 3, 3, activation='relu', border_mode='same')(conv9)\n",
+    "    conv10 = Conv2D(1, 1, 1, activation='sigmoid')(conv9)\n",
+    "\n",
+    "    model = Model(input=inputs, output=conv10)\n",
+    "    model.compile(optimizer=Adam(lr=1e-5), loss=dice_coef_loss, metrics=[dice_coef])\n",
+    "    return model\n",
+    "\n",
+    "model=unet_model()\n",
+    "model.load_weights(unetweightspath)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {
+    "collapsed": true
+   },
+   "outputs": [],
+   "source": [
+    "# Load the scans in given folder path\n",
+    "# code sourced from https://www.kaggle.com/gzuidhof/full-preprocessing-tutorial\n",
+    "def load_scan(path):\n",
+    "    slices = [dicom.read_file(path + '/' + s, force=True) for s in os.listdir(path) if s.endswith('.dcm')]\n",
+    "    slices.sort(key = lambda x: float(x.ImagePositionPatient[2]), reverse=True)\n",
+    "    try:\n",
+    "        slice_thickness = np.abs(slices[0].ImagePositionPatient[2] - slices[1].ImagePositionPatient[2])\n",
+    "    except:\n",
+    "        slice_thickness = np.abs(slices[0].SliceLocation - slices[1].SliceLocation)\n",
+    "        \n",
+    "    for s in slices:\n",
+    "        s.SliceThickness = slice_thickness\n",
+    "        \n",
+    "    return slices\n",
+    "\n",
+    "#convert to ndarray\n",
+    "def get_pixels_hu(slices):\n",
+    "    image = np.stack([s.pixel_array for s in slices])\n",
+    "    # Convert to int16 (from sometimes int16), \n",
+    "    # should be possible as values should always be low enough (<32k)\n",
+    "    image = image.astype(np.int16)\n",
+    "\n",
+    "    # Set outside-of-scan pixels to 0\n",
+    "    # The intercept is usually -1024, so air is approximately 0\n",
+    "    image[image == -2000] = 0\n",
+    "    \n",
+    "    # Convert to Hounsfield units (HU)\n",
+    "    for slice_number in range(len(slices)):\n",
+    "        \n",
+    "        intercept = slices[slice_number].RescaleIntercept\n",
+    "        slope = slices[slice_number].RescaleSlope\n",
+    "        \n",
+    "        if slope != 1:\n",
+    "            image[slice_number] = slope * image[slice_number].astype(np.float64)\n",
+    "            image[slice_number] = image[slice_number].astype(np.int16)\n",
+    "            \n",
+    "        image[slice_number] += np.int16(intercept)\n",
+    "    \n",
+    "    return np.array(image, dtype=np.int16)\n",
+    "\n",
+    "def processimage(img):\n",
+    "    #function sourced from https://www.kaggle.com/c/data-science-bowl-2017#tutorial\n",
+    "    #Standardize the pixel values\n",
+    "    mean = np.mean(img)\n",
+    "    std = np.std(img)\n",
+    "    img = img-mean\n",
+    "    img = img/std\n",
+    "    #plt.hist(img.flatten(),bins=200)\n",
+    "    #plt.show()\n",
+    "    #print(thresh_img[366][280:450])\n",
+    "    middle = img[100:400,100:400] \n",
+    "    mean = np.mean(middle)  \n",
+    "    max = np.max(img)\n",
+    "    min = np.min(img)\n",
+    "    #move the underflow bins\n",
+    "    img[img==max]=mean\n",
+    "    img[img==min]=mean\n",
+    "    kmeans = KMeans(n_clusters=2).fit(np.reshape(middle,[np.prod(middle.shape),1]))\n",
+    "    centers = sorted(kmeans.cluster_centers_.flatten())\n",
+    "    threshold = np.mean(centers)\n",
+    "    thresh_img = np.where(img<threshold,1.0,0.0)  # threshold the image\n",
+    "    eroded = morphology.erosion(thresh_img,np.ones([4,4]))\n",
+    "    dilation = morphology.dilation(eroded,np.ones([10,10]))\n",
+    "    labels = measure.label(dilation)\n",
+    "    label_vals = np.unique(labels)\n",
+    "    #plt.imshow(labels)\n",
+    "    #plt.show()\n",
+    "    labels = measure.label(dilation)\n",
+    "    label_vals = np.unique(labels)\n",
+    "    regions = measure.regionprops(labels)\n",
+    "    good_labels = []\n",
+    "    for prop in regions:\n",
+    "        B = prop.bbox\n",
+    "        if B[2]-B[0]<475 and B[3]-B[1]<475 and B[0]>40 and B[2]<472:\n",
+    "            good_labels.append(prop.label)\n",
+    "    mask = np.ndarray([512,512],dtype=np.int8)\n",
+    "    mask[:] = 0\n",
+    "    #\n",
+    "    #  The mask here is the mask for the lungs--not the nodes\n",
+    "    #  After just the lungs are left, we do another large dilation\n",
+    "    #  in order to fill in and out the lung mask \n",
+    "    #\n",
+    "    for N in good_labels:\n",
+    "        mask = mask + np.where(labels==N,1,0)\n",
+    "    mask = morphology.dilation(mask,np.ones([10,10])) # one last dilation\n",
+    "    return mask*img\n",
+    "\n",
+    "def processimagefromfile(ppix):\n",
+    "    processpix=np.ndarray([ppix.shape[0],512,512])\n",
+    "    for i in range(ppix.shape[0]):\n",
+    "        processpix[i]=processimage(ppix[i])\n",
+    "    return processpix\n",
+    "\n",
+    "#predict mask from images\n",
+    "def predictmask(images):\n",
+    "    images=images.reshape(images.shape[0],1,512,512)\n",
+    "    num_test=images.shape[0]\n",
+    "    imgs_mask_test = np.ndarray([num_test,1,512,512],dtype=np.float32)\n",
+    "    for i in range(num_test):\n",
+    "        imgs_mask_test[i] = model.predict([images[i:i+1]], verbose=0)[0]\n",
+    "    return imgs_mask_test\n",
+    "\n",
+    "#find number of slices where a nodule is detected\n",
+    "def getnoduleindex(imgs_mask_test):\n",
+    "    masksum=[np.sum(maskslice[0]) for maskslice in imgs_mask_test]\n",
+    "    return [i for i in range(len(masksum)) if masksum[i]>5]\n",
+    "\n",
+    "def nodule_coordinates(nodulelocations,meta):\n",
+    "    slices=nodulelocations[\"slice no.\"][nodulelocations.index[nodulelocations[\"case\"]==int(meta[\"Patient Id\"][-4:])]]\n",
+    "    xlocs=nodulelocations[\"x loc.\"][nodulelocations.index[nodulelocations[\"case\"]==int(meta[\"Patient Id\"][-4:])]]\n",
+    "    ylocs=nodulelocations[\"y loc.\"][nodulelocations.index[nodulelocations[\"case\"]==int(meta[\"Patient Id\"][-4:])]]\n",
+    "    nodulecoord=[]\n",
+    "    for i in range(len(slices)):\n",
+    "        nodulecoord.append([slices.values[i]-1,xlocs.values[i]-1,ylocs.values[i]-1])\n",
+    "    return nodulecoord\n",
+    "\n",
+    "#generate nodule or non-nodule labels for mask predictions\n",
+    "def truenodules(noduleindex,masks,nodulecoords):\n",
+    "    label=[]\n",
+    "    for ind in noduleindex:\n",
+    "        for cord in nodulecoords:\n",
+    "            if abs(ind-cord[0])<2:\n",
+    "                com=scipy.ndimage.center_of_mass(masks[ind])\n",
+    "                if abs(com[1]-cord[2])<2 and abs(com[2]-cord[1])<2:\n",
+    "                    label.append(True)\n",
+    "            else:\n",
+    "                label.append(False)\n",
+    "    return label\n",
+    "    \n",
+    "def slicecount(start,end):\n",
+    "    slicecounts=[]\n",
+    "    for i in range(start,end):\n",
+    "        if len(nodule_coordinates(nodulelocations,meta.iloc[i]))>0:\n",
+    "            patient_scan=load_scan(patients[i])\n",
+    "            slicecounts.append(len(patient_scan))\n",
+    "    return slicecounts"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {
+    "scrolled": true
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Processing patient# 197 ETA: 13.88888888888889 hrs\n",
+      "Processing patient# 198 ETA: 1.1223869024034948e-08 hrs\n",
+      "Processing patient# 199 ETA: 8.375600754116487e-09 hrs\n",
+      "[[77, 132, 243]]\n",
+      "1751    4.335\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.0\n",
+      "Specificity: 0.0\n",
+      "Processing patient# 200 ETA: 0.0 hrs\n",
+      "[[44, 187, 235]]\n",
+      "1752    7.684\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.0\n",
+      "Specificity: 0.0\n",
+      "Processing patient# 201 ETA: -0.00043430759374313906 hrs\n",
+      "[[56, 220, 307], [48, 381, 246], [49, 170, 194], [135, 118, 191], [46, 375, 203], [50, 189, 192], [91, 150, 172]]\n",
+      "1753     8.774\n",
+      "1754     4.749\n",
+      "1755     3.795\n",
+      "1756     6.345\n",
+      "1757     5.952\n",
+      "1758    14.905\n",
+      "1759     5.398\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 55 with actual coord [56, 220, 307]\n",
+      "Nodule Detected at slice# 56 with actual coord [56, 220, 307]\n",
+      "Nodule Detected at slice# 57 with actual coord [56, 220, 307]\n",
+      "Nodule Detected at slice# 134 with actual coord [135, 118, 191]\n",
+      "Nodule Detected at slice# 135 with actual coord [135, 118, 191]\n",
+      "Nodule Detected at slice# 136 with actual coord [135, 118, 191]\n",
+      "Nodule Detected at slice# 45 with actual coord [46, 375, 203]\n",
+      "Nodule Detected at slice# 46 with actual coord [46, 375, 203]\n",
+      "Nodule Detected at slice# 47 with actual coord [46, 375, 203]\n",
+      "Nodule Detected at slice# 49 with actual coord [50, 189, 192]\n",
+      "Nodule Detected at slice# 50 with actual coord [50, 189, 192]\n",
+      "Nodule Detected at slice# 51 with actual coord [50, 189, 192]\n",
+      "Nodule Detected at slice# 90 with actual coord [91, 150, 172]\n",
+      "Nodule Detected at slice# 91 with actual coord [91, 150, 172]\n",
+      "Nodule Detected at slice# 92 with actual coord [91, 150, 172]\n",
+      "Sensitivity: 0.5555555555555556\n",
+      "Specificity: 0.09375\n",
+      "Processing patient# 202 ETA: -0.0012672066931152888 hrs\n",
+      "[[281, 85, 162]]\n",
+      "1760    4.91\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.5\n",
+      "Specificity: 0.07042253521126761\n",
+      "Processing patient# 203 ETA: -0.0029408619673968574 hrs\n",
+      "[[246, 139, 150], [41, 316, 311], [88, 131, 345], [319, 201, 153], [109, 127, 352]]\n",
+      "1761    6.328\n",
+      "1762    3.915\n",
+      "1763    3.396\n",
+      "1764    6.653\n",
+      "1765    3.547\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 245 with actual coord [246, 139, 150]\n",
+      "Nodule Detected at slice# 246 with actual coord [246, 139, 150]\n",
+      "Nodule Detected at slice# 247 with actual coord [246, 139, 150]\n",
+      "Nodule Detected at slice# 318 with actual coord [319, 201, 153]\n",
+      "Nodule Detected at slice# 319 with actual coord [319, 201, 153]\n",
+      "Nodule Detected at slice# 320 with actual coord [319, 201, 153]\n",
+      "Sensitivity: 0.4666666666666667\n",
+      "Specificity: 0.07777777777777778\n",
+      "Processing patient# 204 ETA: -0.005424329860537682 hrs\n",
+      "[[253, 307, 392], [192, 181, 383], [210, 300, 385], [243, 470, 298], [96, 115, 198]]\n",
+      "1766    4.072\n",
+      "1767    5.395\n",
+      "1768    4.111\n",
+      "1769    3.864\n",
+      "1770    5.376\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 191 with actual coord [192, 181, 383]\n",
+      "Nodule Detected at slice# 192 with actual coord [192, 181, 383]\n",
+      "Nodule Detected at slice# 193 with actual coord [192, 181, 383]\n",
+      "Nodule Detected at slice# 95 with actual coord [96, 115, 198]\n",
+      "Nodule Detected at slice# 96 with actual coord [96, 115, 198]\n",
+      "Nodule Detected at slice# 97 with actual coord [96, 115, 198]\n",
+      "Sensitivity: 0.45\n",
+      "Specificity: 0.06870229007633588\n",
+      "Processing patient# 205 ETA: -0.008036096493403116 hrs\n",
+      "[[80, 164, 191]]\n",
+      "1771    4.96\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42857142857142855\n",
+      "Specificity: 0.06537530266343826\n",
+      "Processing patient# 206 ETA: -0.010317782699868935 hrs\n",
+      "[[278, 426, 316]]\n",
+      "1772    5.579\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 277 with actual coord [278, 426, 316]\n",
+      "Nodule Detected at slice# 278 with actual coord [278, 426, 316]\n",
+      "Nodule Detected at slice# 279 with actual coord [278, 426, 316]\n",
+      "Sensitivity: 0.45454545454545453\n",
+      "Specificity: 0.06593406593406594\n",
+      "Processing patient# 207 ETA: -0.014129864809913658 hrs\n",
+      "[[29, 356, 205], [14, 119, 289]]\n",
+      "1773    3.940\n",
+      "1774    4.346\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4166666666666667\n",
+      "Specificity: 0.06369426751592357\n",
+      "Processing patient# 208 ETA: -0.016790137690866104 hrs\n",
+      "[[57, 124, 272]]\n",
+      "1775    8.724\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 56 with actual coord [57, 124, 272]\n",
+      "Nodule Detected at slice# 57 with actual coord [57, 124, 272]\n",
+      "Nodule Detected at slice# 58 with actual coord [57, 124, 272]\n",
+      "Sensitivity: 0.44\n",
+      "Specificity: 0.06666666666666667\n",
+      "Processing patient# 209 ETA: -0.01980438633398579 hrs\n",
+      "Processing patient# 210 ETA: -0.021900115047813088 hrs\n",
+      "[[32, 157, 161], [46, 175, 381]]\n",
+      "1776     5.381\n",
+      "1777    11.452\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4074074074074074\n",
+      "Specificity: 0.06521739130434782\n",
+      "Processing patient# 211 ETA: -0.02493481744553555 hrs\n",
+      "[[181, 396, 260]]\n",
+      "1778    16.014\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.39285714285714285\n",
+      "Specificity: 0.06066176470588235\n",
+      "Processing patient# 212 ETA: -0.03144206567755292 hrs\n",
+      "[[119, 388, 303], [135, 356, 364], [127, 383, 316]]\n",
+      "1779    11.814\n",
+      "1780     8.744\n",
+      "1781     7.308\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 118 with actual coord [119, 388, 303]\n",
+      "Nodule Detected at slice# 119 with actual coord [119, 388, 303]\n",
+      "Nodule Detected at slice# 120 with actual coord [119, 388, 303]\n",
+      "Nodule Detected at slice# 134 with actual coord [135, 356, 364]\n",
+      "Nodule Detected at slice# 135 with actual coord [135, 356, 364]\n",
+      "Nodule Detected at slice# 136 with actual coord [135, 356, 364]\n",
+      "Sensitivity: 0.41935483870967744\n",
+      "Specificity: 0.06554621848739496\n",
+      "Processing patient# 213 ETA: -0.03726589909150814 hrs\n",
+      "Processing patient# 214 ETA: -0.03994502615334467 hrs\n",
+      "[[350, 426, 351]]\n",
+      "1782    4.721\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.40625\n",
+      "Specificity: 0.060842433697347896\n",
+      "Processing patient# 215 ETA: -0.04846682252809981 hrs\n",
+      "Processing patient# 216 ETA: -0.051458642850687464 hrs\n",
+      "[[28, 363, 267], [149, 175, 173], [42, 398, 263], [85, 97, 255], [160, 324, 326], [28, 378, 301], [84, 189, 340], [112, 385, 189], [55, 120, 325], [39, 143, 282], [139, 115, 364], [22, 168, 275], [97, 181, 189], [54, 144, 243], [43, 184, 250], [95, 378, 267], [88, 380, 242], [59, 372, 279], [104, 143, 204], [45, 173, 202], [117, 345, 203]]\n",
+      "1783     3.424\n",
+      "1784     3.490\n",
+      "1785     6.809\n",
+      "1786     9.657\n",
+      "1787     7.511\n",
+      "1788     3.424\n",
+      "1789     4.754\n",
+      "1790     6.805\n",
+      "1791     5.048\n",
+      "1792     6.979\n",
+      "1793     6.282\n",
+      "1794     8.001\n",
+      "1795     3.584\n",
+      "1796     4.227\n",
+      "1797     7.514\n",
+      "1798     6.351\n",
+      "1799     6.649\n",
+      "1800    10.118\n",
+      "1801     6.016\n",
+      "1802     6.732\n",
+      "1803     5.577\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 85 with actual coord [85, 97, 255]\n",
+      "Nodule Detected at slice# 86 with actual coord [85, 97, 255]\n",
+      "Nodule Detected at slice# 160 with actual coord [160, 324, 326]\n",
+      "Nodule Detected at slice# 161 with actual coord [160, 324, 326]\n",
+      "Nodule Detected at slice# 138 with actual coord [139, 115, 364]\n",
+      "Nodule Detected at slice# 139 with actual coord [139, 115, 364]\n",
+      "Nodule Detected at slice# 140 with actual coord [139, 115, 364]\n",
+      "Nodule Detected at slice# 103 with actual coord [104, 143, 204]\n",
+      "Nodule Detected at slice# 104 with actual coord [104, 143, 204]\n",
+      "Nodule Detected at slice# 105 with actual coord [104, 143, 204]\n",
+      "Nodule Detected at slice# 44 with actual coord [45, 173, 202]\n",
+      "Nodule Detected at slice# 45 with actual coord [45, 173, 202]\n",
+      "Nodule Detected at slice# 46 with actual coord [45, 173, 202]\n",
+      "Sensitivity: 0.33962264150943394\n",
+      "Specificity: 0.07547169811320754\n",
+      "Processing patient# 217 ETA: -0.057393515692633755 hrs\n",
+      "[[55, 165, 400], [73, 90, 290], [48, 320, 382], [52, 309, 375], [27, 316, 165], [85, 99, 357], [63, 159, 399], [77, 307, 363]]\n",
+      "1804    3.614\n",
+      "1805    3.841\n",
+      "1806    5.326\n",
+      "1807    4.183\n",
+      "1808    3.994\n",
+      "1809    4.437\n",
+      "1810    4.477\n",
+      "1811    5.725\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 77 with actual coord [77, 307, 363]\n",
+      "Sensitivity: 0.3114754098360656\n",
+      "Specificity: 0.07604017216642754\n",
+      "Processing patient# 218 ETA: -0.062303517685023985 hrs\n",
+      "[[259, 172, 189], [269, 167, 247], [281, 36, 284]]\n",
+      "1812    13.978\n",
+      "1813     8.797\n",
+      "1814     3.630\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 258 with actual coord [259, 172, 189]\n",
+      "Nodule Detected at slice# 259 with actual coord [259, 172, 189]\n",
+      "Nodule Detected at slice# 260 with actual coord [259, 172, 189]\n",
+      "Nodule Detected at slice# 268 with actual coord [269, 167, 247]\n",
+      "Nodule Detected at slice# 269 with actual coord [269, 167, 247]\n",
+      "Nodule Detected at slice# 270 with actual coord [269, 167, 247]\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Sensitivity: 0.328125\n",
+      "Specificity: 0.07554417413572344\n",
+      "Processing patient# 219 ETA: -0.07084722954811999 hrs\n",
+      "Processing patient# 220 ETA: -0.07423709965113441 hrs\n",
+      "Processing patient# 221 ETA: -0.07759629722454255 hrs\n",
+      "Processing patient# 222 ETA: -0.08092523676855068 hrs\n",
+      "[[106, 436, 345]]\n",
+      "1815    5.017\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 105 with actual coord [106, 436, 345]\n",
+      "Nodule Detected at slice# 106 with actual coord [106, 436, 345]\n",
+      "Sensitivity: 0.3384615384615385\n",
+      "Specificity: 0.07682619647355164\n",
+      "Processing patient# 223 ETA: -0.08694170671045097 hrs\n",
+      "[[80, 427, 210]]\n",
+      "1816    4.721\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.3333333333333333\n",
+      "Specificity: 0.07634543178973717\n",
+      "Processing patient# 224 ETA: -0.0926084516587711 hrs\n",
+      "[[39, 211, 267]]\n",
+      "1817    7.124\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.3283582089552239\n",
+      "Specificity: 0.07530864197530865\n",
+      "Processing patient# 225 ETA: -0.09882077568107181 hrs\n",
+      "[[106, 150, 259], [51, 196, 303]]\n",
+      "1818    6.787\n",
+      "1819    4.547\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.3188405797101449\n",
+      "Specificity: 0.07340553549939831\n",
+      "Processing patient# 226 ETA: -0.10466439107760796 hrs\n",
+      "[[112, 370, 208]]\n",
+      "1820    3.587\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.3142857142857143\n",
+      "Specificity: 0.06725468577728776\n",
+      "Processing patient# 227 ETA: -0.11528374142583768 hrs\n",
+      "[[37, 330, 191]]\n",
+      "1821    28.0\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 36 with actual coord [37, 330, 191]\n",
+      "Nodule Detected at slice# 37 with actual coord [37, 330, 191]\n",
+      "Nodule Detected at slice# 38 with actual coord [37, 330, 191]\n",
+      "Sensitivity: 0.323943661971831\n",
+      "Specificity: 0.06823027718550106\n",
+      "Processing patient# 228 ETA: -0.12483760813988208 hrs\n",
+      "[[128, 149, 305], [138, 251, 277]]\n",
+      "1822    15.151\n",
+      "1823    10.452\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 127 with actual coord [128, 149, 305]\n",
+      "Nodule Detected at slice# 128 with actual coord [128, 149, 305]\n",
+      "Nodule Detected at slice# 129 with actual coord [128, 149, 305]\n",
+      "Nodule Detected at slice# 137 with actual coord [138, 251, 277]\n",
+      "Nodule Detected at slice# 138 with actual coord [138, 251, 277]\n",
+      "Nodule Detected at slice# 139 with actual coord [138, 251, 277]\n",
+      "Sensitivity: 0.3424657534246575\n",
+      "Specificity: 0.06272401433691756\n",
+      "Processing patient# 229 ETA: -0.13718350996009815 hrs\n",
+      "[[96, 365, 149]]\n",
+      "1824    5.333\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 95 with actual coord [96, 365, 149]\n",
+      "Nodule Detected at slice# 96 with actual coord [96, 365, 149]\n",
+      "Nodule Detected at slice# 97 with actual coord [96, 365, 149]\n",
+      "Sensitivity: 0.35135135135135137\n",
+      "Specificity: 0.0634231103388358\n",
+      "Processing patient# 230 ETA: -0.14709678301776674 hrs\n",
+      "[[213, 148, 384]]\n",
+      "1825    5.994\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 212 with actual coord [213, 148, 384]\n",
+      "Nodule Detected at slice# 213 with actual coord [213, 148, 384]\n",
+      "Nodule Detected at slice# 214 with actual coord [213, 148, 384]\n",
+      "Sensitivity: 0.36\n",
+      "Specificity: 0.062193126022913256\n",
+      "Processing patient# 231 ETA: -0.161781463566854 hrs\n",
+      "[[14, 336, 324], [79, 290, 379], [29, 353, 260], [61, 209, 313], [121, 107, 374], [16, 350, 331]]\n",
+      "1826     4.367\n",
+      "1827     3.951\n",
+      "1828    14.283\n",
+      "1829     6.438\n",
+      "1830     2.490\n",
+      "1831     5.967\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 28 with actual coord [29, 353, 260]\n",
+      "Nodule Detected at slice# 29 with actual coord [29, 353, 260]\n",
+      "Nodule Detected at slice# 15 with actual coord [16, 350, 331]\n",
+      "Nodule Detected at slice# 16 with actual coord [16, 350, 331]\n",
+      "Nodule Detected at slice# 17 with actual coord [16, 350, 331]\n",
+      "Sensitivity: 0.35802469135802467\n",
+      "Specificity: 0.06398104265402843\n",
+      "Processing patient# 232 ETA: -0.17268129442843436 hrs\n",
+      "[[91, 110, 254], [179, 382, 210], [40, 286, 270], [245, 108, 331], [78, 163, 283], [86, 142, 306], [291, 350, 309], [51, 325, 235]]\n",
+      "1832     5.025\n",
+      "1833     4.149\n",
+      "1834     5.928\n",
+      "1835    14.410\n",
+      "1836     5.033\n",
+      "1837    24.621\n",
+      "1838     6.646\n",
+      "1839     3.814\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 90 with actual coord [91, 110, 254]\n",
+      "Nodule Detected at slice# 91 with actual coord [91, 110, 254]\n",
+      "Nodule Detected at slice# 92 with actual coord [91, 110, 254]\n",
+      "Nodule Detected at slice# 244 with actual coord [245, 108, 331]\n",
+      "Nodule Detected at slice# 245 with actual coord [245, 108, 331]\n",
+      "Nodule Detected at slice# 246 with actual coord [245, 108, 331]\n",
+      "Nodule Detected at slice# 85 with actual coord [86, 142, 306]\n",
+      "Nodule Detected at slice# 86 with actual coord [86, 142, 306]\n",
+      "Nodule Detected at slice# 87 with actual coord [86, 142, 306]\n",
+      "Sensitivity: 0.3595505617977528\n",
+      "Specificity: 0.06540697674418605\n",
+      "Processing patient# 233 ETA: -0.18614303947688857 hrs\n",
+      "[[132, 133, 372], [88, 369, 344], [169, 58, 317]]\n",
+      "1840    21.897\n",
+      "1841     4.149\n",
+      "1842     6.785\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 131 with actual coord [132, 133, 372]\n",
+      "Nodule Detected at slice# 132 with actual coord [132, 133, 372]\n",
+      "Nodule Detected at slice# 133 with actual coord [132, 133, 372]\n",
+      "Nodule Detected at slice# 168 with actual coord [169, 58, 317]\n",
+      "Nodule Detected at slice# 169 with actual coord [169, 58, 317]\n",
+      "Nodule Detected at slice# 170 with actual coord [169, 58, 317]\n",
+      "Sensitivity: 0.3695652173913043\n",
+      "Specificity: 0.06486486486486487\n",
+      "Processing patient# 234 ETA: -0.19722831309577563 hrs\n",
+      "[[172, 380, 269], [244, 358, 324]]\n",
+      "1843    6.131\n",
+      "1844    4.974\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.3617021276595745\n",
+      "Specificity: 0.06319947333772219\n",
+      "Processing patient# 235 ETA: -0.2140280986748126 hrs\n",
+      "[[350, 475, 257], [234, 72, 263], [384, 440, 309]]\n",
+      "1845     6.637\n",
+      "1846     4.979\n",
+      "1847    10.978\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 349 with actual coord [350, 475, 257]\n",
+      "Nodule Detected at slice# 350 with actual coord [350, 475, 257]\n",
+      "Nodule Detected at slice# 351 with actual coord [350, 475, 257]\n",
+      "Nodule Detected at slice# 383 with actual coord [384, 440, 309]\n",
+      "Nodule Detected at slice# 384 with actual coord [384, 440, 309]\n",
+      "Nodule Detected at slice# 385 with actual coord [384, 440, 309]\n",
+      "Sensitivity: 0.3711340206185567\n",
+      "Specificity: 0.06386975579211021\n",
+      "Processing patient# 236 ETA: -0.2297073334152416 hrs\n",
+      "[[42, 127, 267]]\n",
+      "1848    12.49\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 42 with actual coord [42, 127, 267]\n",
+      "Nodule Detected at slice# 43 with actual coord [42, 127, 267]\n",
+      "Sensitivity: 0.37755102040816324\n",
+      "Specificity: 0.06463642013673089\n",
+      "Processing patient# 237 ETA: -0.2382809225978061 hrs\n",
+      "[[35, 183, 313], [32, 168, 249], [31, 188, 278], [46, 365, 303], [32, 178, 254], [66, 88, 347], [67, 387, 238]]\n",
+      "1849     5.745\n",
+      "1850     6.894\n",
+      "1851    10.471\n",
+      "1852     7.121\n",
+      "1853     5.399\n",
+      "1854     4.860\n",
+      "1855     4.214\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 31 with actual coord [32, 168, 249]\n",
+      "Nodule Detected at slice# 30 with actual coord [31, 188, 278]\n",
+      "Nodule Detected at slice# 46 with actual coord [46, 365, 303]\n",
+      "Nodule Detected at slice# 31 with actual coord [32, 178, 254]\n",
+      "Sensitivity: 0.3904761904761905\n",
+      "Specificity: 0.06572481572481573\n",
+      "Processing patient# 238 ETA: -0.24610479066852778 hrs\n",
+      "[[33, 123, 298], [45, 395, 224]]\n",
+      "1856     5.051\n",
+      "1857    20.840\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 33 with actual coord [33, 123, 298]\n",
+      "Nodule Detected at slice# 34 with actual coord [33, 123, 298]\n",
+      "Nodule Detected at slice# 44 with actual coord [45, 395, 224]\n",
+      "Nodule Detected at slice# 45 with actual coord [45, 395, 224]\n",
+      "Nodule Detected at slice# 46 with actual coord [45, 395, 224]\n",
+      "Sensitivity: 0.40186915887850466\n",
+      "Specificity: 0.06694560669456066\n",
+      "Processing patient# 239 ETA: -0.25461648094188555 hrs\n",
+      "[[26, 450, 295], [29, 134, 162], [17, 154, 186], [9, 186, 233], [7, 357, 271], [40, 431, 176]]\n",
+      "1858     8.822\n",
+      "1859    20.158\n",
+      "1860     5.278\n",
+      "1861     4.879\n",
+      "1862     5.836\n",
+      "1863     4.157\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 25 with actual coord [26, 450, 295]\n",
+      "Nodule Detected at slice# 26 with actual coord [26, 450, 295]\n",
+      "Nodule Detected at slice# 27 with actual coord [26, 450, 295]\n",
+      "Nodule Detected at slice# 28 with actual coord [29, 134, 162]\n",
+      "Nodule Detected at slice# 29 with actual coord [29, 134, 162]\n",
+      "Nodule Detected at slice# 30 with actual coord [29, 134, 162]\n",
+      "Nodule Detected at slice# 16 with actual coord [17, 154, 186]\n",
+      "Nodule Detected at slice# 17 with actual coord [17, 154, 186]\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Nodule Detected at slice# 6 with actual coord [7, 357, 271]\n",
+      "Nodule Detected at slice# 7 with actual coord [7, 357, 271]\n",
+      "Sensitivity: 0.415929203539823\n",
+      "Specificity: 0.07072463768115941\n",
+      "Processing patient# 240 ETA: -0.26243001013994216 hrs\n",
+      "Processing patient# 241 ETA: -0.2678747106774603 hrs\n",
+      "Processing patient# 242 ETA: -0.27327441828145815 hrs\n",
+      "[[152, 452, 272], [126, 462, 244]]\n",
+      "1864    7.844\n",
+      "1865    5.099\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 151 with actual coord [152, 452, 272]\n",
+      "Nodule Detected at slice# 152 with actual coord [152, 452, 272]\n",
+      "Nodule Detected at slice# 153 with actual coord [152, 452, 272]\n",
+      "Nodule Detected at slice# 126 with actual coord [126, 462, 244]\n",
+      "Sensitivity: 0.4260869565217391\n",
+      "Specificity: 0.07167235494880546\n",
+      "Processing patient# 243 ETA: -0.28365627678769567 hrs\n",
+      "[[57, 155, 175], [79, 410, 341], [55, 124, 317], [74, 90, 315], [20, 157, 383], [82, 57, 381], [58, 167, 157]]\n",
+      "1866     5.817\n",
+      "1867     5.940\n",
+      "1868     6.173\n",
+      "1869     5.216\n",
+      "1870    23.636\n",
+      "1871     4.597\n",
+      "1872     8.153\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 56 with actual coord [57, 155, 175]\n",
+      "Nodule Detected at slice# 57 with actual coord [57, 155, 175]\n",
+      "Nodule Detected at slice# 79 with actual coord [79, 410, 341]\n",
+      "Nodule Detected at slice# 74 with actual coord [74, 90, 315]\n",
+      "Nodule Detected at slice# 19 with actual coord [20, 157, 383]\n",
+      "Nodule Detected at slice# 20 with actual coord [20, 157, 383]\n",
+      "Nodule Detected at slice# 21 with actual coord [20, 157, 383]\n",
+      "Nodule Detected at slice# 58 with actual coord [58, 167, 157]\n",
+      "Sensitivity: 0.4426229508196721\n",
+      "Specificity: 0.07481853713009493\n",
+      "Processing patient# 244 ETA: -0.2921640377824206 hrs\n",
+      "[[95, 147, 399]]\n",
+      "1873    11.987\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 94 with actual coord [95, 147, 399]\n",
+      "Nodule Detected at slice# 95 with actual coord [95, 147, 399]\n",
+      "Nodule Detected at slice# 96 with actual coord [95, 147, 399]\n",
+      "Sensitivity: 0.44715447154471544\n",
+      "Specificity: 0.07523338824821527\n",
+      "Processing patient# 245 ETA: -0.30634670570188643 hrs\n",
+      "[[41, 309, 334]]\n",
+      "1874    16.965\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 40 with actual coord [41, 309, 334]\n",
+      "Nodule Detected at slice# 41 with actual coord [41, 309, 334]\n",
+      "Nodule Detected at slice# 42 with actual coord [41, 309, 334]\n",
+      "Sensitivity: 0.45161290322580644\n",
+      "Specificity: 0.07246376811594203\n",
+      "Processing patient# 246 ETA: -0.3249079197058293 hrs\n",
+      "Processing patient# 247 ETA: -0.3306272812410887 hrs\n",
+      "[[206, 407, 292], [134, 248, 153], [79, 95, 255]]\n",
+      "1875    6.654\n",
+      "1876    2.453\n",
+      "1877    2.576\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4409448818897638\n",
+      "Specificity: 0.07045797684952189\n",
+      "Processing patient# 248 ETA: -0.3484334776350248 hrs\n",
+      "Processing patient# 249 ETA: -0.35426413378083554 hrs\n",
+      "[[29, 217, 370]]\n",
+      "1878    11.947\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 28 with actual coord [29, 217, 370]\n",
+      "Nodule Detected at slice# 29 with actual coord [29, 217, 370]\n",
+      "Nodule Detected at slice# 30 with actual coord [29, 217, 370]\n",
+      "Sensitivity: 0.4453125\n",
+      "Specificity: 0.0715\n",
+      "Processing patient# 250 ETA: -0.36293431421120964 hrs\n",
+      "[[142, 400, 372], [131, 168, 245], [144, 118, 327]]\n",
+      "1879    4.377\n",
+      "1880    4.689\n",
+      "1881    9.531\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 143 with actual coord [144, 118, 327]\n",
+      "Nodule Detected at slice# 144 with actual coord [144, 118, 327]\n",
+      "Nodule Detected at slice# 145 with actual coord [144, 118, 327]\n",
+      "Sensitivity: 0.44274809160305345\n",
+      "Specificity: 0.07070217917675545\n",
+      "Processing patient# 251 ETA: -0.3774032429292066 hrs\n",
+      "[[65, 85, 316], [32, 389, 266], [36, 74, 286], [43, 306, 289]]\n",
+      "1882    5.032\n",
+      "1883    4.637\n",
+      "1884    4.315\n",
+      "1885    4.920\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42962962962962964\n",
+      "Specificity: 0.07049734427812651\n",
+      "Processing patient# 252 ETA: -0.3872358038248841 hrs\n",
+      "[[373, 110, 213], [310, 424, 247], [278, 399, 266]]\n",
+      "1886    8.427\n",
+      "1887    6.451\n",
+      "1888    7.986\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 372 with actual coord [373, 110, 213]\n",
+      "Nodule Detected at slice# 373 with actual coord [373, 110, 213]\n",
+      "Nodule Detected at slice# 374 with actual coord [373, 110, 213]\n",
+      "Nodule Detected at slice# 309 with actual coord [310, 424, 247]\n",
+      "Nodule Detected at slice# 310 with actual coord [310, 424, 247]\n",
+      "Nodule Detected at slice# 311 with actual coord [310, 424, 247]\n",
+      "Nodule Detected at slice# 277 with actual coord [278, 399, 266]\n",
+      "Nodule Detected at slice# 278 with actual coord [278, 399, 266]\n",
+      "Nodule Detected at slice# 279 with actual coord [278, 399, 266]\n",
+      "Sensitivity: 0.4420289855072464\n",
+      "Specificity: 0.07119889756545705\n",
+      "Processing patient# 253 ETA: -0.4086072258510558 hrs\n",
+      "[[169, 441, 370]]\n",
+      "1889    5.802\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 168 with actual coord [169, 441, 370]\n",
+      "Nodule Detected at slice# 169 with actual coord [169, 441, 370]\n",
+      "Nodule Detected at slice# 170 with actual coord [169, 441, 370]\n",
+      "Sensitivity: 0.4460431654676259\n",
+      "Specificity: 0.07165532879818594\n",
+      "Processing patient# 254 ETA: -0.42418794325956216 hrs\n",
+      "[[61, 396, 213], [53, 357, 225], [45, 409, 278], [51, 348, 238]]\n",
+      "1890    6.900\n",
+      "1891    5.399\n",
+      "1892    7.599\n",
+      "1893    3.894\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 60 with actual coord [61, 396, 213]\n",
+      "Nodule Detected at slice# 61 with actual coord [61, 396, 213]\n",
+      "Nodule Detected at slice# 62 with actual coord [61, 396, 213]\n",
+      "Nodule Detected at slice# 44 with actual coord [45, 409, 278]\n",
+      "Nodule Detected at slice# 45 with actual coord [45, 409, 278]\n",
+      "Nodule Detected at slice# 46 with actual coord [45, 409, 278]\n",
+      "Sensitivity: 0.44755244755244755\n",
+      "Specificity: 0.07337807606263982\n",
+      "Processing patient# 255 ETA: -0.43417470265577573 hrs\n",
+      "[[29, 298, 336]]\n",
+      "1894    5.354\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 28 with actual coord [29, 298, 336]\n",
+      "Nodule Detected at slice# 29 with actual coord [29, 298, 336]\n",
+      "Nodule Detected at slice# 30 with actual coord [29, 298, 336]\n",
+      "Sensitivity: 0.4513888888888889\n",
+      "Specificity: 0.07314936487078405\n",
+      "Processing patient# 256 ETA: -0.44891197837889196 hrs\n",
+      "[[220, 165, 295], [262, 449, 337]]\n",
+      "1895    5.924\n",
+      "1896    3.627\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 219 with actual coord [220, 165, 295]\n",
+      "Nodule Detected at slice# 220 with actual coord [220, 165, 295]\n",
+      "Nodule Detected at slice# 221 with actual coord [220, 165, 295]\n",
+      "Sensitivity: 0.4520547945205479\n",
+      "Specificity: 0.07333908541846419\n",
+      "Processing patient# 257 ETA: -0.46991474398611116 hrs\n",
+      "[[228, 397, 145], [146, 171, 371]]\n",
+      "1897    3.963\n",
+      "1898    3.407\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.44594594594594594\n",
+      "Specificity: 0.07258753202391119\n",
+      "Processing patient# 258 ETA: -0.4950783620837635 hrs\n",
+      "[[308, 445, 204]]\n",
+      "1899    4.872\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4429530201342282\n",
+      "Specificity: 0.07142857142857142\n",
+      "Processing patient# 259 ETA: -0.5192839302087433 hrs\n",
+      "[[162, 384, 276]]\n",
+      "1900    3.868\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.44\n",
+      "Specificity: 0.07036423841059603\n",
+      "Processing patient# 260 ETA: -0.5385499058472806 hrs\n",
+      "[[59, 379, 358]]\n",
+      "1901    4.584\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4370860927152318\n",
+      "Specificity: 0.06967213114754098\n",
+      "Processing patient# 261 ETA: -0.5554398855555559 hrs\n",
+      "Processing patient# 262 ETA: -0.5623908352690091 hrs\n",
+      "[[37, 162, 308], [99, 438, 231]]\n",
+      "1902    11.949\n",
+      "1903     5.186\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 36 with actual coord [37, 162, 308]\n",
+      "Nodule Detected at slice# 37 with actual coord [37, 162, 308]\n",
+      "Nodule Detected at slice# 38 with actual coord [37, 162, 308]\n",
+      "Sensitivity: 0.43790849673202614\n",
+      "Specificity: 0.07006885378695828\n",
+      "Processing patient# 263 ETA: -0.5751002607690063 hrs\n",
+      "[[163, 75, 267], [335, 135, 344], [253, 100, 149], [312, 351, 404], [338, 471, 310], [226, 156, 170], [232, 210, 405]]\n",
+      "1904    3.448\n",
+      "1905    5.672\n",
+      "1906    4.273\n",
+      "1907    4.199\n",
+      "1908    5.043\n",
+      "1909    3.188\n",
+      "1910    6.405\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 334 with actual coord [335, 135, 344]\n",
+      "Nodule Detected at slice# 335 with actual coord [335, 135, 344]\n",
+      "Nodule Detected at slice# 336 with actual coord [335, 135, 344]\n",
+      "Nodule Detected at slice# 337 with actual coord [338, 471, 310]\n",
+      "Nodule Detected at slice# 338 with actual coord [338, 471, 310]\n",
+      "Nodule Detected at slice# 339 with actual coord [338, 471, 310]\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Nodule Detected at slice# 231 with actual coord [232, 210, 405]\n",
+      "Nodule Detected at slice# 232 with actual coord [232, 210, 405]\n",
+      "Nodule Detected at slice# 233 with actual coord [232, 210, 405]\n",
+      "Sensitivity: 0.4375\n",
+      "Specificity: 0.07162534435261708\n",
+      "Processing patient# 264 ETA: -0.6026041639533507 hrs\n",
+      "[[321, 429, 151]]\n",
+      "1911    8.894\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 320 with actual coord [321, 429, 151]\n",
+      "Nodule Detected at slice# 321 with actual coord [321, 429, 151]\n",
+      "Nodule Detected at slice# 322 with actual coord [321, 429, 151]\n",
+      "Sensitivity: 0.4409937888198758\n",
+      "Specificity: 0.07039573820395738\n",
+      "Processing patient# 265 ETA: -0.6264781700302721 hrs\n",
+      "[[51, 114, 331], [145, 90, 135], [49, 343, 368]]\n",
+      "1912    4.010\n",
+      "1913    3.234\n",
+      "1914    3.756\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4329268292682927\n",
+      "Specificity: 0.06902985074626866\n",
+      "Processing patient# 266 ETA: -0.6445316896641763 hrs\n",
+      "[[129, 67, 312]]\n",
+      "1915    4.118\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4303030303030303\n",
+      "Specificity: 0.06856931060044477\n",
+      "Processing patient# 267 ETA: -0.6622083838423539 hrs\n",
+      "Processing patient# 268 ETA: -0.6695844257223861 hrs\n",
+      "Processing patient# 269 ETA: -0.6769056312730618 hrs\n",
+      "[[280, 337, 359]]\n",
+      "1916    4.285\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42771084337349397\n",
+      "Specificity: 0.06739526411657559\n",
+      "Processing patient# 270 ETA: -0.7057049627706347 hrs\n",
+      "[[35, 409, 203], [90, 128, 357], [44, 122, 235]]\n",
+      "1917    3.412\n",
+      "1918    7.682\n",
+      "1919    4.133\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 89 with actual coord [90, 128, 357]\n",
+      "Nodule Detected at slice# 90 with actual coord [90, 128, 357]\n",
+      "Nodule Detected at slice# 91 with actual coord [90, 128, 357]\n",
+      "Sensitivity: 0.4260355029585799\n",
+      "Specificity: 0.06716684530189353\n",
+      "Processing patient# 271 ETA: -0.72050155677161 hrs\n",
+      "[[98, 140, 243], [111, 393, 370], [93, 336, 318], [106, 348, 382], [126, 187, 387], [102, 174, 245], [89, 418, 237]]\n",
+      "1920     5.952\n",
+      "1921    12.418\n",
+      "1922    11.200\n",
+      "1923     6.977\n",
+      "1924     5.036\n",
+      "1925     7.364\n",
+      "1926     4.567\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 110 with actual coord [111, 393, 370]\n",
+      "Nodule Detected at slice# 111 with actual coord [111, 393, 370]\n",
+      "Nodule Detected at slice# 112 with actual coord [111, 393, 370]\n",
+      "Nodule Detected at slice# 105 with actual coord [106, 348, 382]\n",
+      "Nodule Detected at slice# 106 with actual coord [106, 348, 382]\n",
+      "Nodule Detected at slice# 107 with actual coord [106, 348, 382]\n",
+      "Nodule Detected at slice# 125 with actual coord [126, 187, 387]\n",
+      "Nodule Detected at slice# 126 with actual coord [126, 187, 387]\n",
+      "Nodule Detected at slice# 127 with actual coord [126, 187, 387]\n",
+      "Nodule Detected at slice# 101 with actual coord [102, 174, 245]\n",
+      "Nodule Detected at slice# 102 with actual coord [102, 174, 245]\n",
+      "Nodule Detected at slice# 103 with actual coord [102, 174, 245]\n",
+      "Sensitivity: 0.4318181818181818\n",
+      "Specificity: 0.0703977472720873\n",
+      "Processing patient# 272 ETA: -0.7400207091079039 hrs\n",
+      "[[121, 434, 296], [135, 354, 427], [50, 162, 353], [110, 407, 253], [85, 117, 279], [154, 101, 311], [153, 78, 305], [154, 80, 341], [207, 61, 329], [111, 228, 383], [131, 107, 318], [112, 88, 322], [193, 302, 421], [103, 118, 390]]\n",
+      "1927    2.755\n",
+      "1928    4.160\n",
+      "1929    7.594\n",
+      "1930    3.217\n",
+      "1931    3.290\n",
+      "1932    3.114\n",
+      "1933    7.743\n",
+      "1934    3.923\n",
+      "1935    3.242\n",
+      "1936    6.221\n",
+      "1937    3.032\n",
+      "1938    4.318\n",
+      "1939    3.060\n",
+      "1940    4.332\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 49 with actual coord [50, 162, 353]\n",
+      "Nodule Detected at slice# 50 with actual coord [50, 162, 353]\n",
+      "Nodule Detected at slice# 51 with actual coord [50, 162, 353]\n",
+      "Nodule Detected at slice# 152 with actual coord [153, 78, 305]\n",
+      "Nodule Detected at slice# 153 with actual coord [153, 78, 305]\n",
+      "Nodule Detected at slice# 154 with actual coord [153, 78, 305]\n",
+      "Nodule Detected at slice# 110 with actual coord [111, 228, 383]\n",
+      "Nodule Detected at slice# 111 with actual coord [111, 228, 383]\n",
+      "Nodule Detected at slice# 112 with actual coord [111, 228, 383]\n",
+      "Sensitivity: 0.41578947368421054\n",
+      "Specificity: 0.07113682777399591\n",
+      "Processing patient# 273 ETA: -0.7593161481325347 hrs\n",
+      "[[41, 188, 301], [31, 412, 301], [16, 176, 273]]\n",
+      "1941    9.821\n",
+      "1942    4.962\n",
+      "1943    6.837\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 40 with actual coord [41, 188, 301]\n",
+      "Nodule Detected at slice# 41 with actual coord [41, 188, 301]\n",
+      "Nodule Detected at slice# 42 with actual coord [41, 188, 301]\n",
+      "Nodule Detected at slice# 16 with actual coord [16, 176, 273]\n",
+      "Sensitivity: 0.41968911917098445\n",
+      "Specificity: 0.07174132704614349\n",
+      "Processing patient# 274 ETA: -0.7746534864586344 hrs\n",
+      "[[332, 104, 351], [100, 188, 395]]\n",
+      "1944    6.323\n",
+      "1945    4.640\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 331 with actual coord [332, 104, 351]\n",
+      "Nodule Detected at slice# 332 with actual coord [332, 104, 351]\n",
+      "Nodule Detected at slice# 333 with actual coord [332, 104, 351]\n",
+      "Sensitivity: 0.4205128205128205\n",
+      "Specificity: 0.07248322147651007\n",
+      "Processing patient# 275 ETA: -0.8112788267207869 hrs\n",
+      "Processing patient# 276 ETA: -0.8191174224954872 hrs\n",
+      "Processing patient# 277 ETA: -0.8268994259042908 hrs\n",
+      "[[54, 418, 175]]\n",
+      "1946    5.393\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.41836734693877553\n",
+      "Specificity: 0.07228915662650602\n",
+      "Processing patient# 278 ETA: -0.8407219234544882 hrs\n",
+      "[[104, 411, 303], [87, 98, 305], [25, 219, 260], [83, 417, 171], [81, 87, 186], [72, 116, 169], [73, 105, 154], [92, 99, 271]]\n",
+      "1947    6.309\n",
+      "1948    4.931\n",
+      "1949    5.281\n",
+      "1950    4.364\n",
+      "1951    5.831\n",
+      "1952    4.043\n",
+      "1953    4.297\n",
+      "1954    3.841\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 104 with actual coord [104, 411, 303]\n",
+      "Nodule Detected at slice# 105 with actual coord [104, 411, 303]\n",
+      "Nodule Detected at slice# 81 with actual coord [81, 87, 186]\n",
+      "Sensitivity: 0.4117647058823529\n",
+      "Specificity: 0.07275747508305648\n",
+      "Processing patient# 279 ETA: -0.8547288398973403 hrs\n",
+      "[[75, 398, 373], [60, 195, 294], [34, 183, 332], [58, 165, 214], [11, 212, 298], [72, 152, 148]]\n",
+      "1955    10.394\n",
+      "1956    14.815\n",
+      "1957    15.618\n",
+      "1958     6.461\n",
+      "1959     6.971\n",
+      "1960     6.461\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 74 with actual coord [75, 398, 373]\n",
+      "Nodule Detected at slice# 75 with actual coord [75, 398, 373]\n",
+      "Nodule Detected at slice# 76 with actual coord [75, 398, 373]\n",
+      "Nodule Detected at slice# 60 with actual coord [60, 195, 294]\n",
+      "Nodule Detected at slice# 61 with actual coord [60, 195, 294]\n",
+      "Nodule Detected at slice# 33 with actual coord [34, 183, 332]\n",
+      "Nodule Detected at slice# 34 with actual coord [34, 183, 332]\n",
+      "Nodule Detected at slice# 35 with actual coord [34, 183, 332]\n",
+      "Nodule Detected at slice# 10 with actual coord [11, 212, 298]\n",
+      "Nodule Detected at slice# 11 with actual coord [11, 212, 298]\n",
+      "Nodule Detected at slice# 12 with actual coord [11, 212, 298]\n",
+      "Sensitivity: 0.41904761904761906\n",
+      "Specificity: 0.07568279039157617\n",
+      "Processing patient# 280 ETA: -0.8671448359413751 hrs\n",
+      "[[27, 342, 347], [46, 87, 251], [21, 210, 354], [48, 198, 160]]\n",
+      "1961    24.957\n",
+      "1962     5.973\n",
+      "1963     5.478\n",
+      "1964     7.579\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 26 with actual coord [27, 342, 347]\n",
+      "Nodule Detected at slice# 27 with actual coord [27, 342, 347]\n",
+      "Nodule Detected at slice# 28 with actual coord [27, 342, 347]\n",
+      "Nodule Detected at slice# 45 with actual coord [46, 87, 251]\n",
+      "Nodule Detected at slice# 46 with actual coord [46, 87, 251]\n",
+      "Nodule Detected at slice# 21 with actual coord [21, 210, 354]\n",
+      "Nodule Detected at slice# 22 with actual coord [21, 210, 354]\n",
+      "Nodule Detected at slice# 47 with actual coord [48, 198, 160]\n",
+      "Nodule Detected at slice# 48 with actual coord [48, 198, 160]\n",
+      "Nodule Detected at slice# 49 with actual coord [48, 198, 160]\n",
+      "Sensitivity: 0.42990654205607476\n",
+      "Specificity: 0.07749434937035841\n",
+      "Processing patient# 281 ETA: -0.8799125879048453 hrs\n",
+      "[[73, 418, 358], [82, 458, 297], [65, 118, 180], [87, 141, 347], [58, 108, 315], [45, 356, 374], [85, 455, 242]]\n",
+      "1965     7.535\n",
+      "1966    14.091\n",
+      "1967     5.929\n",
+      "1968    25.489\n",
+      "1969     4.594\n",
+      "1970    24.822\n",
+      "1971     4.352\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 72 with actual coord [73, 418, 358]\n",
+      "Nodule Detected at slice# 73 with actual coord [73, 418, 358]\n",
+      "Nodule Detected at slice# 74 with actual coord [73, 418, 358]\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Nodule Detected at slice# 81 with actual coord [82, 458, 297]\n",
+      "Nodule Detected at slice# 82 with actual coord [82, 458, 297]\n",
+      "Nodule Detected at slice# 83 with actual coord [82, 458, 297]\n",
+      "Nodule Detected at slice# 65 with actual coord [65, 118, 180]\n",
+      "Nodule Detected at slice# 86 with actual coord [87, 141, 347]\n",
+      "Nodule Detected at slice# 87 with actual coord [87, 141, 347]\n",
+      "Nodule Detected at slice# 88 with actual coord [87, 141, 347]\n",
+      "Sensitivity: 0.4343891402714932\n",
+      "Specificity: 0.07971938775510204\n",
+      "Processing patient# 282 ETA: -0.8924763028329522 hrs\n",
+      "[[117, 404, 310], [71, 324, 206]]\n",
+      "1972    5.743\n",
+      "1973    9.606\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 116 with actual coord [117, 404, 310]\n",
+      "Nodule Detected at slice# 117 with actual coord [117, 404, 310]\n",
+      "Nodule Detected at slice# 118 with actual coord [117, 404, 310]\n",
+      "Sensitivity: 0.4349775784753363\n",
+      "Specificity: 0.0802155992390615\n",
+      "Processing patient# 283 ETA: -0.912509531576024 hrs\n",
+      "[[55, 93, 260], [60, 92, 276]]\n",
+      "1974     3.993\n",
+      "1975    13.159\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 59 with actual coord [60, 92, 276]\n",
+      "Nodule Detected at slice# 60 with actual coord [60, 92, 276]\n",
+      "Nodule Detected at slice# 61 with actual coord [60, 92, 276]\n",
+      "Sensitivity: 0.43555555555555553\n",
+      "Specificity: 0.08040201005025126\n",
+      "Processing patient# 284 ETA: -0.9276165660082456 hrs\n",
+      "[[59, 308, 399], [112, 412, 183], [142, 222, 109]]\n",
+      "1976    3.994\n",
+      "1977    5.284\n",
+      "1978    4.292\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4298245614035088\n",
+      "Specificity: 0.07891491985203453\n",
+      "Processing patient# 285 ETA: -0.9474092618078284 hrs\n",
+      "Processing patient# 286 ETA: -0.9552038283920511 hrs\n",
+      "[[178, 411, 338]]\n",
+      "1979    11.011\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 177 with actual coord [178, 411, 338]\n",
+      "Nodule Detected at slice# 178 with actual coord [178, 411, 338]\n",
+      "Nodule Detected at slice# 179 with actual coord [178, 411, 338]\n",
+      "Sensitivity: 0.43231441048034935\n",
+      "Specificity: 0.07872340425531915\n",
+      "Processing patient# 287 ETA: -0.9885201086233716 hrs\n",
+      "[[52, 171, 346], [226, 407, 317], [101, 188, 223]]\n",
+      "1980    5.465\n",
+      "1981    3.949\n",
+      "1982    2.914\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 51 with actual coord [52, 171, 346]\n",
+      "Nodule Detected at slice# 52 with actual coord [52, 171, 346]\n",
+      "Nodule Detected at slice# 53 with actual coord [52, 171, 346]\n",
+      "Sensitivity: 0.43103448275862066\n",
+      "Specificity: 0.07811568276684555\n",
+      "Processing patient# 288 ETA: -1.0173021987062176 hrs\n",
+      "[[99, 139, 331]]\n",
+      "1983    2.916\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4291845493562232\n",
+      "Specificity: 0.07735459108355477\n",
+      "Processing patient# 289 ETA: -1.0488337143754927 hrs\n",
+      "[[93, 143, 120], [85, 439, 206], [17, 200, 247], [54, 90, 169], [68, 113, 160]]\n",
+      "1984    4.176\n",
+      "1985    8.182\n",
+      "1986    5.844\n",
+      "1987    2.152\n",
+      "1988    3.473\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 84 with actual coord [85, 439, 206]\n",
+      "Nodule Detected at slice# 85 with actual coord [85, 439, 206]\n",
+      "Nodule Detected at slice# 86 with actual coord [85, 439, 206]\n",
+      "Nodule Detected at slice# 17 with actual coord [17, 200, 247]\n",
+      "Nodule Detected at slice# 18 with actual coord [17, 200, 247]\n",
+      "Sensitivity: 0.42857142857142855\n",
+      "Specificity: 0.07850632167009702\n",
+      "Processing patient# 290 ETA: -1.0633959089682017 hrs\n",
+      "Processing patient# 291 ETA: -1.0715167082047907 hrs\n",
+      "[[139, 447, 216], [132, 449, 223], [160, 162, 378], [151, 310, 353]]\n",
+      "1989    7.468\n",
+      "1990    4.938\n",
+      "1991    4.589\n",
+      "1992    4.510\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 138 with actual coord [139, 447, 216]\n",
+      "Nodule Detected at slice# 139 with actual coord [139, 447, 216]\n",
+      "Nodule Detected at slice# 140 with actual coord [139, 447, 216]\n",
+      "Sensitivity: 0.4256198347107438\n",
+      "Specificity: 0.07855688100087285\n",
+      "Processing patient# 292 ETA: -1.0933069704085179 hrs\n",
+      "[[165, 60, 267], [86, 419, 209], [151, 324, 384], [181, 299, 307], [42, 225, 327], [67, 91, 238], [178, 60, 220], [112, 198, 133], [163, 441, 310]]\n",
+      "1993    4.879\n",
+      "1994    4.383\n",
+      "1995    5.464\n",
+      "1996    4.517\n",
+      "1997    4.352\n",
+      "1998    4.866\n",
+      "1999    5.646\n",
+      "2000    4.352\n",
+      "2001    4.712\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 150 with actual coord [151, 324, 384]\n",
+      "Nodule Detected at slice# 151 with actual coord [151, 324, 384]\n",
+      "Nodule Detected at slice# 152 with actual coord [151, 324, 384]\n",
+      "Sensitivity: 0.41434262948207173\n",
+      "Specificity: 0.07858376511226252\n",
+      "Processing patient# 293 ETA: -1.1144491154145326 hrs\n",
+      "[[150, 130, 184], [66, 202, 315], [65, 398, 308]]\n",
+      "2002    4.289\n",
+      "2003    4.377\n",
+      "2004    3.498\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4094488188976378\n",
+      "Specificity: 0.07746878547105562\n",
+      "Processing patient# 294 ETA: -1.1357826614569104 hrs\n",
+      "Processing patient# 295 ETA: -1.14397456530236 hrs\n",
+      "[[35, 102, 340], [56, 443, 297], [58, 209, 169]]\n",
+      "2005     8.201\n",
+      "2006     4.741\n",
+      "2007    16.094\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 34 with actual coord [35, 102, 340]\n",
+      "Nodule Detected at slice# 35 with actual coord [35, 102, 340]\n",
+      "Nodule Detected at slice# 36 with actual coord [35, 102, 340]\n",
+      "Nodule Detected at slice# 57 with actual coord [58, 209, 169]\n",
+      "Nodule Detected at slice# 58 with actual coord [58, 209, 169]\n",
+      "Nodule Detected at slice# 59 with actual coord [58, 209, 169]\n",
+      "Sensitivity: 0.41245136186770426\n",
+      "Specificity: 0.07845894263217097\n",
+      "Processing patient# 296 ETA: -1.158752222769969 hrs\n",
+      "[[175, 117, 258]]\n",
+      "2008    10.658\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 174 with actual coord [175, 117, 258]\n",
+      "Nodule Detected at slice# 175 with actual coord [175, 117, 258]\n",
+      "Nodule Detected at slice# 176 with actual coord [175, 117, 258]\n",
+      "Sensitivity: 0.41472868217054265\n",
+      "Specificity: 0.07762180016515277\n",
+      "Processing patient# 297 ETA: -1.1811336418929457 hrs\n",
+      "[[104, 101, 131]]\n",
+      "2009    2.505\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.41312741312741313\n",
+      "Specificity: 0.07700709994538503\n",
+      "Processing patient# 298 ETA: -1.1989392614533527 hrs\n",
+      "[[140, 339, 286], [145, 356, 321]]\n",
+      "2010    6.920\n",
+      "2011    9.353\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 139 with actual coord [140, 339, 286]\n",
+      "Nodule Detected at slice# 140 with actual coord [140, 339, 286]\n",
+      "Nodule Detected at slice# 144 with actual coord [145, 356, 321]\n",
+      "Nodule Detected at slice# 145 with actual coord [145, 356, 321]\n",
+      "Nodule Detected at slice# 146 with actual coord [145, 356, 321]\n",
+      "Sensitivity: 0.41762452107279696\n",
+      "Specificity: 0.0779467680608365\n",
+      "Processing patient# 299 ETA: -1.216612838765849 hrs\n",
+      "[[27, 379, 290]]\n",
+      "2012    3.739\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.41603053435114506\n",
+      "Specificity: 0.07704697986577182\n",
+      "Processing patient# 300 ETA: -1.2363688643994157 hrs\n",
+      "[[90, 356, 361], [247, 304, 365], [220, 348, 456], [147, 334, 434], [185, 383, 447], [127, 377, 433], [139, 96, 282], [133, 411, 310], [166, 113, 421], [124, 94, 383], [90, 295, 378], [112, 369, 372]]\n",
+      "2013    14.627\n",
+      "2014     8.630\n",
+      "2015     4.541\n",
+      "2016     7.850\n",
+      "2017     5.058\n",
+      "2018     6.911\n",
+      "2019     5.561\n",
+      "2020     3.875\n",
+      "2021     6.085\n",
+      "2022     3.570\n",
+      "2023     8.049\n",
+      "2024     4.754\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 89 with actual coord [90, 356, 361]\n",
+      "Nodule Detected at slice# 90 with actual coord [90, 356, 361]\n",
+      "Nodule Detected at slice# 91 with actual coord [90, 356, 361]\n",
+      "Nodule Detected at slice# 246 with actual coord [247, 304, 365]\n",
+      "Nodule Detected at slice# 247 with actual coord [247, 304, 365]\n",
+      "Nodule Detected at slice# 248 with actual coord [247, 304, 365]\n",
+      "Nodule Detected at slice# 146 with actual coord [147, 334, 434]\n",
+      "Nodule Detected at slice# 126 with actual coord [127, 377, 433]\n",
+      "Nodule Detected at slice# 127 with actual coord [127, 377, 433]\n",
+      "Nodule Detected at slice# 128 with actual coord [127, 377, 433]\n",
+      "Nodule Detected at slice# 138 with actual coord [139, 96, 282]\n",
+      "Nodule Detected at slice# 139 with actual coord [139, 96, 282]\n",
+      "Nodule Detected at slice# 140 with actual coord [139, 96, 282]\n",
+      "Nodule Detected at slice# 165 with actual coord [166, 113, 421]\n",
+      "Nodule Detected at slice# 166 with actual coord [166, 113, 421]\n",
+      "Nodule Detected at slice# 167 with actual coord [166, 113, 421]\n",
+      "Nodule Detected at slice# 89 with actual coord [90, 295, 378]\n",
+      "Nodule Detected at slice# 90 with actual coord [90, 295, 378]\n",
+      "Nodule Detected at slice# 91 with actual coord [90, 295, 378]\n",
+      "Sensitivity: 0.4233576642335766\n",
+      "Specificity: 0.07907098121085596\n",
+      "Processing patient# 301 ETA: -1.2614309130803207 hrs\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "[[94, 111, 362]]\n",
+      "2025    6.325\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 93 with actual coord [94, 111, 362]\n",
+      "Nodule Detected at slice# 94 with actual coord [94, 111, 362]\n",
+      "Nodule Detected at slice# 95 with actual coord [94, 111, 362]\n",
+      "Sensitivity: 0.4254545454545455\n",
+      "Specificity: 0.07854209445585215\n",
+      "Processing patient# 302 ETA: -1.2831493301344234 hrs\n",
+      "[[35, 194, 194], [34, 333, 327]]\n",
+      "2026    16.635\n",
+      "2027    30.818\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 34 with actual coord [35, 194, 194]\n",
+      "Nodule Detected at slice# 35 with actual coord [35, 194, 194]\n",
+      "Nodule Detected at slice# 36 with actual coord [35, 194, 194]\n",
+      "Nodule Detected at slice# 33 with actual coord [34, 333, 327]\n",
+      "Nodule Detected at slice# 34 with actual coord [34, 333, 327]\n",
+      "Nodule Detected at slice# 35 with actual coord [34, 333, 327]\n",
+      "Sensitivity: 0.4296028880866426\n",
+      "Specificity: 0.07874015748031496\n",
+      "Processing patient# 303 ETA: -1.2988921113892007 hrs\n",
+      "[[22, 133, 249], [54, 144, 319], [61, 374, 342], [65, 114, 216], [50, 356, 266], [23, 122, 317]]\n",
+      "2028    21.273\n",
+      "2029     5.113\n",
+      "2030     6.716\n",
+      "2031     5.094\n",
+      "2032     5.075\n",
+      "2033     8.756\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 21 with actual coord [22, 133, 249]\n",
+      "Nodule Detected at slice# 22 with actual coord [22, 133, 249]\n",
+      "Nodule Detected at slice# 23 with actual coord [22, 133, 249]\n",
+      "Nodule Detected at slice# 61 with actual coord [61, 374, 342]\n",
+      "Nodule Detected at slice# 22 with actual coord [23, 122, 317]\n",
+      "Nodule Detected at slice# 23 with actual coord [23, 122, 317]\n",
+      "Nodule Detected at slice# 24 with actual coord [23, 122, 317]\n",
+      "Sensitivity: 0.43109540636042404\n",
+      "Specificity: 0.07962588473205258\n",
+      "Processing patient# 304 ETA: -1.312506511129482 hrs\n",
+      "Processing patient# 305 ETA: -1.3207822793885007 hrs\n",
+      "[[249, 112, 419], [79, 137, 365], [92, 81, 249], [50, 157, 296], [78, 293, 330], [125, 215, 374], [229, 111, 348], [118, 91, 217], [236, 419, 290], [170, 148, 173], [157, 113, 330]]\n",
+      "2034     4.435\n",
+      "2035     4.019\n",
+      "2036     3.704\n",
+      "2037     3.978\n",
+      "2038     5.908\n",
+      "2039     6.180\n",
+      "2040     7.348\n",
+      "2041     7.628\n",
+      "2042    22.907\n",
+      "2043     8.543\n",
+      "2044     6.417\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 77 with actual coord [78, 293, 330]\n",
+      "Nodule Detected at slice# 78 with actual coord [78, 293, 330]\n",
+      "Nodule Detected at slice# 79 with actual coord [78, 293, 330]\n",
+      "Nodule Detected at slice# 124 with actual coord [125, 215, 374]\n",
+      "Nodule Detected at slice# 125 with actual coord [125, 215, 374]\n",
+      "Nodule Detected at slice# 126 with actual coord [125, 215, 374]\n",
+      "Nodule Detected at slice# 228 with actual coord [229, 111, 348]\n",
+      "Nodule Detected at slice# 229 with actual coord [229, 111, 348]\n",
+      "Nodule Detected at slice# 230 with actual coord [229, 111, 348]\n",
+      "Nodule Detected at slice# 117 with actual coord [118, 91, 217]\n",
+      "Nodule Detected at slice# 118 with actual coord [118, 91, 217]\n",
+      "Nodule Detected at slice# 119 with actual coord [118, 91, 217]\n",
+      "Nodule Detected at slice# 235 with actual coord [236, 419, 290]\n",
+      "Nodule Detected at slice# 236 with actual coord [236, 419, 290]\n",
+      "Nodule Detected at slice# 237 with actual coord [236, 419, 290]\n",
+      "Nodule Detected at slice# 169 with actual coord [170, 148, 173]\n",
+      "Nodule Detected at slice# 170 with actual coord [170, 148, 173]\n",
+      "Nodule Detected at slice# 171 with actual coord [170, 148, 173]\n",
+      "Nodule Detected at slice# 156 with actual coord [157, 113, 330]\n",
+      "Nodule Detected at slice# 157 with actual coord [157, 113, 330]\n",
+      "Nodule Detected at slice# 158 with actual coord [157, 113, 330]\n",
+      "Sensitivity: 0.4387755102040816\n",
+      "Specificity: 0.08335400645001241\n",
+      "Processing patient# 306 ETA: -1.3450457502952415 hrs\n",
+      "[[200, 301, 286], [111, 328, 363], [157, 392, 288], [187, 72, 322]]\n",
+      "2045     8.737\n",
+      "2046     4.263\n",
+      "2047    12.609\n",
+      "2048     4.405\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 199 with actual coord [200, 301, 286]\n",
+      "Nodule Detected at slice# 200 with actual coord [200, 301, 286]\n",
+      "Nodule Detected at slice# 201 with actual coord [200, 301, 286]\n",
+      "Nodule Detected at slice# 156 with actual coord [157, 392, 288]\n",
+      "Nodule Detected at slice# 157 with actual coord [157, 392, 288]\n",
+      "Nodule Detected at slice# 158 with actual coord [157, 392, 288]\n",
+      "Sensitivity: 0.4395973154362416\n",
+      "Specificity: 0.08409146791246619\n",
+      "Processing patient# 307 ETA: -1.3713638908231855 hrs\n",
+      "[[109, 436, 294], [72, 166, 201], [30, 212, 281], [53, 365, 357], [113, 414, 335], [16, 161, 267], [61, 407, 186], [29, 294, 293]]\n",
+      "2049    5.195\n",
+      "2050    5.314\n",
+      "2051    5.437\n",
+      "2052    6.282\n",
+      "2053    3.758\n",
+      "2054    6.389\n",
+      "2055    5.619\n",
+      "2056    4.355\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 109 with actual coord [109, 436, 294]\n",
+      "Nodule Detected at slice# 110 with actual coord [109, 436, 294]\n",
+      "Sensitivity: 0.43137254901960786\n",
+      "Specificity: 0.08431372549019608\n",
+      "Processing patient# 308 ETA: -1.389509897487504 hrs\n",
+      "[[149, 313, 366]]\n",
+      "2057    3.629\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42996742671009774\n",
+      "Specificity: 0.08371866634217572\n",
+      "Processing patient# 309 ETA: -1.4223142139980665 hrs\n",
+      "[[38, 405, 316]]\n",
+      "2058    5.071\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42857142857142855\n",
+      "Specificity: 0.08313194780086998\n",
+      "Processing patient# 310 ETA: -1.4394842782264115 hrs\n",
+      "[[113, 209, 335], [194, 401, 230], [131, 109, 186]]\n",
+      "2059     4.160\n",
+      "2060     4.946\n",
+      "2061    17.130\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 130 with actual coord [131, 109, 186]\n",
+      "Nodule Detected at slice# 131 with actual coord [131, 109, 186]\n",
+      "Nodule Detected at slice# 132 with actual coord [131, 109, 186]\n",
+      "Sensitivity: 0.42765273311897106\n",
+      "Specificity: 0.08295481711690174\n",
+      "Processing patient# 311 ETA: -1.4672522982280993 hrs\n",
+      "[[66, 403, 312]]\n",
+      "2062    4.422\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42628205128205127\n",
+      "Specificity: 0.0818010372465818\n",
+      "Processing patient# 312 ETA: -1.4948357845948972 hrs\n",
+      "[[117, 132, 152]]\n",
+      "2063    4.946\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4249201277955272\n",
+      "Specificity: 0.08118858212447357\n",
+      "Processing patient# 313 ETA: -1.5178912255835526 hrs\n",
+      "[[110, 166, 396]]\n",
+      "2064    4.282\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42356687898089174\n",
+      "Specificity: 0.08047309833024119\n",
+      "Processing patient# 314 ETA: -1.5437265551128208 hrs\n",
+      "Processing patient# 315 ETA: -1.5523245109662387 hrs\n",
+      "[[75, 333, 206], [60, 148, 347], [61, 375, 288], [143, 385, 255], [121, 313, 205], [62, 376, 267], [116, 299, 184], [50, 349, 213], [130, 164, 165]]\n",
+      "2065    23.414\n",
+      "2066     4.437\n",
+      "2067     8.552\n",
+      "2068     4.913\n",
+      "2069     4.114\n",
+      "2070     3.614\n",
+      "2071    12.915\n",
+      "2072     5.109\n",
+      "2073     5.220\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 74 with actual coord [75, 333, 206]\n",
+      "Nodule Detected at slice# 75 with actual coord [75, 333, 206]\n",
+      "Nodule Detected at slice# 76 with actual coord [75, 333, 206]\n",
+      "Nodule Detected at slice# 60 with actual coord [61, 375, 288]\n",
+      "Nodule Detected at slice# 61 with actual coord [61, 375, 288]\n",
+      "Nodule Detected at slice# 62 with actual coord [61, 375, 288]\n",
+      "Nodule Detected at slice# 115 with actual coord [116, 299, 184]\n",
+      "Nodule Detected at slice# 116 with actual coord [116, 299, 184]\n",
+      "Nodule Detected at slice# 117 with actual coord [116, 299, 184]\n",
+      "Nodule Detected at slice# 49 with actual coord [50, 349, 213]\n",
+      "Nodule Detected at slice# 50 with actual coord [50, 349, 213]\n",
+      "Nodule Detected at slice# 51 with actual coord [50, 349, 213]\n",
+      "Nodule Detected at slice# 129 with actual coord [130, 164, 165]\n",
+      "Nodule Detected at slice# 130 with actual coord [130, 164, 165]\n",
+      "Nodule Detected at slice# 131 with actual coord [130, 164, 165]\n",
+      "Sensitivity: 0.42724458204334365\n",
+      "Specificity: 0.08270504912040211\n",
+      "Processing patient# 316 ETA: -1.5749615946013884 hrs\n",
+      "[[55, 110, 299]]\n",
+      "2074    2.907\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42592592592592593\n",
+      "Specificity: 0.0823288605867637\n",
+      "Processing patient# 317 ETA: -1.5920844926085758 hrs\n",
+      "[[90, 455, 272], [94, 146, 360], [101, 420, 369]]\n",
+      "2075    4.722\n",
+      "2076    3.119\n",
+      "2077    3.738\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42201834862385323\n",
+      "Specificity: 0.08201178069777978\n",
+      "Processing patient# 318 ETA: -1.6090465639876286 hrs\n",
+      "[[30, 166, 306], [101, 382, 162], [99, 72, 260], [124, 172, 382]]\n",
+      "2078    10.323\n",
+      "2079     4.843\n",
+      "2080     4.796\n",
+      "2081     4.596\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 29 with actual coord [30, 166, 306]\n",
+      "Nodule Detected at slice# 30 with actual coord [30, 166, 306]\n",
+      "Nodule Detected at slice# 31 with actual coord [30, 166, 306]\n",
+      "Sensitivity: 0.4199395770392749\n",
+      "Specificity: 0.08218869623958568\n",
+      "Processing patient# 319 ETA: -1.6284042104348948 hrs\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "[[261, 148, 142]]\n",
+      "2082    4.669\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4186746987951807\n",
+      "Specificity: 0.08172861621137484\n",
+      "Processing patient# 320 ETA: -1.6654085892438888 hrs\n",
+      "[[143, 347, 369], [104, 372, 135]]\n",
+      "2083    10.763\n",
+      "2084    26.356\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 142 with actual coord [143, 347, 369]\n",
+      "Nodule Detected at slice# 144 with actual coord [143, 347, 369]\n",
+      "Nodule Detected at slice# 103 with actual coord [104, 372, 135]\n",
+      "Nodule Detected at slice# 104 with actual coord [104, 372, 135]\n",
+      "Nodule Detected at slice# 105 with actual coord [104, 372, 135]\n",
+      "Sensitivity: 0.4221556886227545\n",
+      "Specificity: 0.08214920071047957\n",
+      "Processing patient# 321 ETA: -1.690273597471109 hrs\n",
+      "[[195, 119, 320]]\n",
+      "2085    15.408\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 194 with actual coord [195, 119, 320]\n",
+      "Nodule Detected at slice# 195 with actual coord [195, 119, 320]\n",
+      "Nodule Detected at slice# 196 with actual coord [195, 119, 320]\n",
+      "Sensitivity: 0.42388059701492536\n",
+      "Specificity: 0.08103410819031066\n",
+      "Processing patient# 322 ETA: -1.7222911129354033 hrs\n",
+      "[[113, 345, 356], [121, 323, 374], [68, 91, 281], [154, 79, 307]]\n",
+      "2086    5.108\n",
+      "2087    4.252\n",
+      "2088    4.071\n",
+      "2089    3.588\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 112 with actual coord [113, 345, 356]\n",
+      "Nodule Detected at slice# 113 with actual coord [113, 345, 356]\n",
+      "Nodule Detected at slice# 114 with actual coord [113, 345, 356]\n",
+      "Sensitivity: 0.4218289085545723\n",
+      "Specificity: 0.08037622915775973\n",
+      "Processing patient# 323 ETA: -1.7560242365628205 hrs\n",
+      "[[180, 176, 375], [173, 164, 359]]\n",
+      "2090     5.764\n",
+      "2091    10.315\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 179 with actual coord [180, 176, 375]\n",
+      "Nodule Detected at slice# 180 with actual coord [180, 176, 375]\n",
+      "Nodule Detected at slice# 181 with actual coord [180, 176, 375]\n",
+      "Nodule Detected at slice# 172 with actual coord [173, 164, 359]\n",
+      "Nodule Detected at slice# 173 with actual coord [173, 164, 359]\n",
+      "Nodule Detected at slice# 174 with actual coord [173, 164, 359]\n",
+      "Sensitivity: 0.4252199413489736\n",
+      "Specificity: 0.08127659574468085\n",
+      "Processing patient# 324 ETA: -1.7881466622852986 hrs\n",
+      "[[294, 158, 282], [122, 399, 337]]\n",
+      "2092    7.186\n",
+      "2093    5.476\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 293 with actual coord [294, 158, 282]\n",
+      "Nodule Detected at slice# 294 with actual coord [294, 158, 282]\n",
+      "Nodule Detected at slice# 295 with actual coord [294, 158, 282]\n",
+      "Nodule Detected at slice# 121 with actual coord [122, 399, 337]\n",
+      "Nodule Detected at slice# 122 with actual coord [122, 399, 337]\n",
+      "Nodule Detected at slice# 123 with actual coord [122, 399, 337]\n",
+      "Sensitivity: 0.42857142857142855\n",
+      "Specificity: 0.08068205448118111\n",
+      "Processing patient# 325 ETA: -1.8192087536438915 hrs\n",
+      "[[72, 135, 290], [48, 353, 319]]\n",
+      "2094    7.106\n",
+      "2095    3.841\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 71 with actual coord [72, 135, 290]\n",
+      "Nodule Detected at slice# 72 with actual coord [72, 135, 290]\n",
+      "Nodule Detected at slice# 73 with actual coord [72, 135, 290]\n",
+      "Sensitivity: 0.4289855072463768\n",
+      "Specificity: 0.08085194375516956\n",
+      "Processing patient# 326 ETA: -1.8369306185567302 hrs\n",
+      "[[81, 352, 202]]\n",
+      "2096    17.409\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 80 with actual coord [81, 352, 202]\n",
+      "Nodule Detected at slice# 81 with actual coord [81, 352, 202]\n",
+      "Nodule Detected at slice# 82 with actual coord [81, 352, 202]\n",
+      "Sensitivity: 0.430635838150289\n",
+      "Specificity: 0.08073770491803278\n",
+      "Processing patient# 327 ETA: -1.8630767037323288 hrs\n",
+      "[[145, 147, 392]]\n",
+      "2097    4.628\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42939481268011526\n",
+      "Specificity: 0.07996752587781611\n",
+      "Processing patient# 328 ETA: -1.8904273674352383 hrs\n",
+      "[[44, 328, 381], [41, 217, 307], [20, 375, 287]]\n",
+      "2098     6.388\n",
+      "2099    10.325\n",
+      "2100    17.008\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 43 with actual coord [44, 328, 381]\n",
+      "Nodule Detected at slice# 44 with actual coord [44, 328, 381]\n",
+      "Nodule Detected at slice# 19 with actual coord [20, 375, 287]\n",
+      "Nodule Detected at slice# 20 with actual coord [20, 375, 287]\n",
+      "Nodule Detected at slice# 21 with actual coord [20, 375, 287]\n",
+      "Sensitivity: 0.43142857142857144\n",
+      "Specificity: 0.08058977984245606\n",
+      "Processing patient# 329 ETA: -1.9057568196485832 hrs\n",
+      "[[37, 205, 275]]\n",
+      "2101    5.868\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4301994301994302\n",
+      "Specificity: 0.08045977011494253\n",
+      "Processing patient# 330 ETA: -1.931154639223208 hrs\n",
+      "[[59, 406, 202], [19, 337, 289], [18, 328, 320]]\n",
+      "2102     4.469\n",
+      "2103    10.870\n",
+      "2104     4.613\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 18 with actual coord [19, 337, 289]\n",
+      "Nodule Detected at slice# 19 with actual coord [19, 337, 289]\n",
+      "Nodule Detected at slice# 20 with actual coord [19, 337, 289]\n",
+      "Sensitivity: 0.4293785310734463\n",
+      "Specificity: 0.08031968031968031\n",
+      "Processing patient# 331 ETA: -1.9491273069467752 hrs\n",
+      "[[42, 130, 352], [22, 318, 364], [158, 400, 361], [190, 342, 471]]\n",
+      "2105    2.569\n",
+      "2106    6.282\n",
+      "2107    6.627\n",
+      "2108    6.028\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 21 with actual coord [22, 318, 364]\n",
+      "Nodule Detected at slice# 22 with actual coord [22, 318, 364]\n",
+      "Nodule Detected at slice# 23 with actual coord [22, 318, 364]\n",
+      "Sensitivity: 0.4273743016759777\n",
+      "Specificity: 0.08040500297796307\n",
+      "Processing patient# 332 ETA: -1.986476611913926 hrs\n",
+      "[[56, 409, 237]]\n",
+      "2109    3.553\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42618384401114207\n",
+      "Specificity: 0.08018214215006929\n",
+      "Processing patient# 333 ETA: -2.013454695883933 hrs\n",
+      "[[132, 439, 279]]\n",
+      "2110    3.811\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.425\n",
+      "Specificity: 0.07988165680473373\n",
+      "Processing patient# 334 ETA: -2.0410690262233584 hrs\n",
+      "Processing patient# 335 ETA: -2.0501630088820386 hrs\n",
+      "[[34, 319, 236], [51, 139, 200]]\n",
+      "2111    6.066\n",
+      "2112    8.039\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.42265193370165743\n",
+      "Specificity: 0.07958341520927491\n",
+      "Processing patient# 336 ETA: -2.0773469060706713 hrs\n",
+      "[[148, 368, 165], [161, 148, 201], [225, 343, 127], [182, 124, 393], [175, 87, 264], [88, 414, 303], [145, 218, 179], [217, 317, 386], [228, 422, 363], [366, 61, 353], [231, 296, 119], [49, 137, 317], [157, 392, 194]]\n",
+      "2113    6.224\n",
+      "2114    6.030\n",
+      "2115    3.375\n",
+      "2116    6.215\n",
+      "2117    5.608\n",
+      "2118    3.845\n",
+      "2119    4.069\n",
+      "2120    6.318\n",
+      "2121    4.300\n",
+      "2122    3.605\n",
+      "2123    4.337\n",
+      "2124    4.807\n",
+      "2125    4.499\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 147 with actual coord [148, 368, 165]\n",
+      "Nodule Detected at slice# 148 with actual coord [148, 368, 165]\n",
+      "Nodule Detected at slice# 149 with actual coord [148, 368, 165]\n",
+      "Nodule Detected at slice# 181 with actual coord [182, 124, 393]\n",
+      "Nodule Detected at slice# 182 with actual coord [182, 124, 393]\n",
+      "Nodule Detected at slice# 183 with actual coord [182, 124, 393]\n",
+      "Nodule Detected at slice# 216 with actual coord [217, 317, 386]\n",
+      "Nodule Detected at slice# 217 with actual coord [217, 317, 386]\n",
+      "Nodule Detected at slice# 218 with actual coord [217, 317, 386]\n",
+      "Sensitivity: 0.416\n",
+      "Specificity: 0.07967667436489607\n",
+      "Processing patient# 337 ETA: -2.1175451011312623 hrs\n",
+      "[[307, 425, 245], [282, 110, 394], [417, 420, 397], [285, 426, 262], [239, 131, 198], [297, 67, 208]]\n",
+      "2126     4.202\n",
+      "2127     4.082\n",
+      "2128     3.526\n",
+      "2129    10.595\n",
+      "2130     4.959\n",
+      "2131     6.096\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 284 with actual coord [285, 426, 262]\n",
+      "Nodule Detected at slice# 285 with actual coord [285, 426, 262]\n",
+      "Nodule Detected at slice# 286 with actual coord [285, 426, 262]\n",
+      "Nodule Detected at slice# 296 with actual coord [297, 67, 208]\n",
+      "Nodule Detected at slice# 297 with actual coord [297, 67, 208]\n",
+      "Nodule Detected at slice# 298 with actual coord [297, 67, 208]\n",
+      "Sensitivity: 0.4146981627296588\n",
+      "Specificity: 0.0794251134644478\n",
+      "Processing patient# 338 ETA: -2.160758105053234 hrs\n",
+      "Processing patient# 339 ETA: -2.169995894762423 hrs\n",
+      "[[143, 55, 294]]\n",
+      "2132    6.85\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 142 with actual coord [143, 55, 294]\n",
+      "Nodule Detected at slice# 143 with actual coord [143, 55, 294]\n",
+      "Nodule Detected at slice# 144 with actual coord [143, 55, 294]\n",
+      "Sensitivity: 0.4162303664921466\n",
+      "Specificity: 0.07954118089507334\n",
+      "Processing patient# 340 ETA: -2.1903565393982367 hrs\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "[[53, 206, 239], [212, 87, 230], [76, 140, 297]]\n",
+      "2133    7.367\n",
+      "2134    3.389\n",
+      "2135    4.956\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 52 with actual coord [53, 206, 239]\n",
+      "Nodule Detected at slice# 53 with actual coord [53, 206, 239]\n",
+      "Nodule Detected at slice# 54 with actual coord [53, 206, 239]\n",
+      "Sensitivity: 0.4155844155844156\n",
+      "Specificity: 0.07953696788648244\n",
+      "Processing patient# 341 ETA: -2.2257796875699873 hrs\n",
+      "[[125, 153, 354]]\n",
+      "2136    23.587\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 124 with actual coord [125, 153, 354]\n",
+      "Nodule Detected at slice# 125 with actual coord [125, 153, 354]\n",
+      "Nodule Detected at slice# 126 with actual coord [125, 153, 354]\n",
+      "Sensitivity: 0.4170984455958549\n",
+      "Specificity: 0.07887479316050745\n",
+      "Processing patient# 342 ETA: -2.262423532506024 hrs\n",
+      "[[76, 423, 358]]\n",
+      "2137    4.803\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4160206718346253\n",
+      "Specificity: 0.07857142857142857\n",
+      "Processing patient# 343 ETA: -2.2803060747249093 hrs\n",
+      "[[73, 163, 362], [34, 303, 153], [67, 383, 269]]\n",
+      "2138    3.390\n",
+      "2139    4.037\n",
+      "2140    6.002\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 67 with actual coord [67, 383, 269]\n",
+      "Nodule Detected at slice# 68 with actual coord [67, 383, 269]\n",
+      "Sensitivity: 0.4153846153846154\n",
+      "Specificity: 0.07853498542274052\n",
+      "Processing patient# 344 ETA: -2.2991284793476723 hrs\n",
+      "[[102, 399, 168], [133, 176, 129]]\n",
+      "2141    4.596\n",
+      "2142    4.338\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.413265306122449\n",
+      "Specificity: 0.077825929938606\n",
+      "Processing patient# 345 ETA: -2.3214763074163076 hrs\n",
+      "[[111, 136, 340]]\n",
+      "2143    9.118\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 110 with actual coord [111, 136, 340]\n",
+      "Nodule Detected at slice# 111 with actual coord [111, 136, 340]\n",
+      "Nodule Detected at slice# 112 with actual coord [111, 136, 340]\n",
+      "Sensitivity: 0.41475826972010177\n",
+      "Specificity: 0.07725169099323603\n",
+      "Processing patient# 346 ETA: -2.3474992018329384 hrs\n",
+      "[[87, 86, 250], [32, 159, 311]]\n",
+      "2144    3.948\n",
+      "2145    6.494\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 31 with actual coord [32, 159, 311]\n",
+      "Nodule Detected at slice# 32 with actual coord [32, 159, 311]\n",
+      "Nodule Detected at slice# 33 with actual coord [32, 159, 311]\n",
+      "Sensitivity: 0.4151898734177215\n",
+      "Specificity: 0.07722212405018554\n",
+      "Processing patient# 347 ETA: -2.37587370918704 hrs\n",
+      "[[59, 350, 271]]\n",
+      "2146    7.155\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.41414141414141414\n",
+      "Specificity: 0.07707231040564375\n",
+      "Processing patient# 348 ETA: -2.399350373549327 hrs\n",
+      "[[18, 210, 321]]\n",
+      "2147    4.544\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.41309823677581864\n",
+      "Specificity: 0.07614566997734797\n",
+      "Processing patient# 349 ETA: -2.4194342114713985 hrs\n",
+      "[[101, 172, 340], [96, 157, 322], [67, 130, 288]]\n",
+      "2148     6.336\n",
+      "2149     3.462\n",
+      "2150    17.520\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 100 with actual coord [101, 172, 340]\n",
+      "Nodule Detected at slice# 101 with actual coord [101, 172, 340]\n",
+      "Nodule Detected at slice# 102 with actual coord [101, 172, 340]\n",
+      "Nodule Detected at slice# 66 with actual coord [67, 130, 288]\n",
+      "Nodule Detected at slice# 67 with actual coord [67, 130, 288]\n",
+      "Nodule Detected at slice# 68 with actual coord [67, 130, 288]\n",
+      "Sensitivity: 0.415\n",
+      "Specificity: 0.07585616438356164\n",
+      "Processing patient# 350 ETA: -2.453822374400638 hrs\n",
+      "[[104, 118, 218], [145, 184, 240], [21, 301, 253], [26, 228, 262], [122, 169, 159]]\n",
+      "2151    3.490\n",
+      "2152    4.754\n",
+      "2153    5.124\n",
+      "2154    5.603\n",
+      "2155    3.994\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.40987654320987654\n",
+      "Specificity: 0.07539142273655548\n",
+      "Processing patient# 351 ETA: -2.47779455808606 hrs\n",
+      "[[70, 331, 212], [74, 132, 215]]\n",
+      "2156    7.202\n",
+      "2157    4.233\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 69 with actual coord [70, 331, 212]\n",
+      "Nodule Detected at slice# 70 with actual coord [70, 331, 212]\n",
+      "Nodule Detected at slice# 71 with actual coord [70, 331, 212]\n",
+      "Sensitivity: 0.4103194103194103\n",
+      "Specificity: 0.0752361673414305\n",
+      "Processing patient# 352 ETA: -2.516836094949583 hrs\n",
+      "[[148, 389, 286], [240, 429, 185], [184, 119, 149], [114, 141, 181], [257, 458, 298], [63, 177, 307], [158, 98, 318], [229, 433, 209]]\n",
+      "2158    5.153\n",
+      "2159    3.869\n",
+      "2160    3.550\n",
+      "2161    6.922\n",
+      "2162    4.799\n",
+      "2163    4.322\n",
+      "2164    5.006\n",
+      "2165    3.809\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 147 with actual coord [148, 389, 286]\n",
+      "Nodule Detected at slice# 148 with actual coord [148, 389, 286]\n",
+      "Nodule Detected at slice# 149 with actual coord [148, 389, 286]\n",
+      "Nodule Detected at slice# 113 with actual coord [114, 141, 181]\n",
+      "Nodule Detected at slice# 114 with actual coord [114, 141, 181]\n",
+      "Nodule Detected at slice# 115 with actual coord [114, 141, 181]\n",
+      "Sensitivity: 0.4072289156626506\n",
+      "Specificity: 0.07604306864064603\n",
+      "Processing patient# 353 ETA: -2.5453680088212742 hrs\n",
+      "[[65, 133, 399]]\n",
+      "2166    5.63\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 64 with actual coord [65, 133, 399]\n",
+      "Nodule Detected at slice# 65 with actual coord [65, 133, 399]\n",
+      "Sensitivity: 0.40865384615384615\n",
+      "Specificity: 0.0761744966442953\n",
+      "Processing patient# 354 ETA: -2.563256074702747 hrs\n",
+      "[[71, 96, 165], [79, 162, 387]]\n",
+      "2167    4.660\n",
+      "2168    5.103\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.40669856459330145\n",
+      "Specificity: 0.07611064543168483\n",
+      "Processing patient# 355 ETA: -2.582472086877144 hrs\n",
+      "[[156, 353, 408]]\n",
+      "2169    6.306\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 155 with actual coord [156, 353, 408]\n",
+      "Nodule Detected at slice# 156 with actual coord [156, 353, 408]\n",
+      "Nodule Detected at slice# 157 with actual coord [156, 353, 408]\n",
+      "Sensitivity: 0.4081145584725537\n",
+      "Specificity: 0.07541254125412541\n",
+      "Processing patient# 356 ETA: -2.611665942405493 hrs\n",
+      "[[105, 145, 297], [121, 160, 327]]\n",
+      "2170    5.923\n",
+      "2171    5.217\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 104 with actual coord [105, 145, 297]\n",
+      "Nodule Detected at slice# 105 with actual coord [105, 145, 297]\n",
+      "Nodule Detected at slice# 106 with actual coord [105, 145, 297]\n",
+      "Nodule Detected at slice# 120 with actual coord [121, 160, 327]\n",
+      "Nodule Detected at slice# 121 with actual coord [121, 160, 327]\n",
+      "Nodule Detected at slice# 122 with actual coord [121, 160, 327]\n",
+      "Sensitivity: 0.41092636579572445\n",
+      "Specificity: 0.07526007802340702\n",
+      "Processing patient# 357 ETA: -2.65487501386 hrs\n",
+      "[[295, 153, 166], [316, 424, 271], [75, 402, 298], [185, 106, 363]]\n",
+      "2172    4.915\n",
+      "2173    3.534\n",
+      "2174    6.169\n",
+      "2175    4.367\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 74 with actual coord [75, 402, 298]\n",
+      "Nodule Detected at slice# 75 with actual coord [75, 402, 298]\n",
+      "Nodule Detected at slice# 76 with actual coord [75, 402, 298]\n",
+      "Sensitivity: 0.40941176470588236\n",
+      "Specificity: 0.07454807230843065\n",
+      "Processing patient# 358 ETA: -2.6930751167125835 hrs\n",
+      "[[122, 419, 337]]\n",
+      "2176    5.079\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 121 with actual coord [122, 419, 337]\n",
+      "Nodule Detected at slice# 122 with actual coord [122, 419, 337]\n",
+      "Sensitivity: 0.4107981220657277\n",
+      "Specificity: 0.07474844274077623\n",
+      "Processing patient# 359 ETA: -2.721961952400296 hrs\n",
+      "[[88, 314, 169]]\n",
+      "2177    22.661\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 87 with actual coord [88, 314, 169]\n",
+      "Nodule Detected at slice# 88 with actual coord [88, 314, 169]\n",
+      "Nodule Detected at slice# 89 with actual coord [88, 314, 169]\n",
+      "Sensitivity: 0.41217798594847777\n",
+      "Specificity: 0.07426679280983917\n",
+      "Processing patient# 360 ETA: -2.752537683057196 hrs\n",
+      "[[79, 173, 348], [92, 122, 325]]\n",
+      "2178    3.414\n",
+      "2179    4.225\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.41025641025641024\n",
+      "Specificity: 0.07358225277300422\n",
+      "Processing patient# 361 ETA: -2.7808586135718523 hrs\n",
+      "[[95, 78, 278]]\n",
+      "2180    4.249\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.40930232558139534\n",
+      "Specificity: 0.07233911841499002\n",
+      "Processing patient# 362 ETA: -2.8235655456715523 hrs\n",
+      "[[66, 57, 284], [78, 449, 374], [57, 441, 355]]\n",
+      "2181    4.742\n",
+      "2182    3.198\n",
+      "2183    4.809\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4064665127020785\n",
+      "Specificity: 0.07208448117539026\n",
+      "Processing patient# 363 ETA: -2.8415355438119887 hrs\n",
+      "[[135, 143, 267]]\n",
+      "2184    5.017\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4055299539170507\n",
+      "Specificity: 0.07146108329540282\n",
+      "Processing patient# 364 ETA: -2.869065261079278 hrs\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "[[146, 386, 337], [158, 134, 229], [225, 182, 299]]\n",
+      "2185     4.280\n",
+      "2186     3.888\n",
+      "2187    38.148\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 224 with actual coord [225, 182, 299]\n",
+      "Nodule Detected at slice# 225 with actual coord [225, 182, 299]\n",
+      "Nodule Detected at slice# 226 with actual coord [225, 182, 299]\n",
+      "Sensitivity: 0.40503432494279173\n",
+      "Specificity: 0.0704204427276779\n",
+      "Processing patient# 365 ETA: -2.8986850076315065 hrs\n",
+      "[[156, 124, 169], [130, 140, 310]]\n",
+      "2188    4.790\n",
+      "2189    7.062\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 129 with actual coord [130, 140, 310]\n",
+      "Nodule Detected at slice# 130 with actual coord [130, 140, 310]\n",
+      "Nodule Detected at slice# 131 with actual coord [130, 140, 310]\n",
+      "Sensitivity: 0.4054669703872437\n",
+      "Specificity: 0.06995160580730313\n",
+      "Processing patient# 366 ETA: -2.9261916415048645 hrs\n",
+      "[[84, 80, 257], [35, 338, 321]]\n",
+      "2190    4.677\n",
+      "2191    4.120\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4036281179138322\n",
+      "Specificity: 0.06963503649635036\n",
+      "Processing patient# 367 ETA: -2.9470381484371297 hrs\n",
+      "[[184, 145, 400], [109, 95, 358], [215, 396, 199]]\n",
+      "2192     4.481\n",
+      "2193    11.861\n",
+      "2194    13.805\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 108 with actual coord [109, 95, 358]\n",
+      "Nodule Detected at slice# 109 with actual coord [109, 95, 358]\n",
+      "Nodule Detected at slice# 110 with actual coord [109, 95, 358]\n",
+      "Nodule Detected at slice# 214 with actual coord [215, 396, 199]\n",
+      "Nodule Detected at slice# 215 with actual coord [215, 396, 199]\n",
+      "Nodule Detected at slice# 216 with actual coord [215, 396, 199]\n",
+      "Sensitivity: 0.40540540540540543\n",
+      "Specificity: 0.06939655172413793\n",
+      "Processing patient# 368 ETA: -2.9880874305704372 hrs\n",
+      "[[224, 381, 414], [365, 335, 401], [309, 437, 373], [224, 421, 333], [363, 461, 315]]\n",
+      "2195     2.876\n",
+      "2196    12.983\n",
+      "2197     4.747\n",
+      "2198     5.187\n",
+      "2199     4.229\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 364 with actual coord [365, 335, 401]\n",
+      "Nodule Detected at slice# 365 with actual coord [365, 335, 401]\n",
+      "Nodule Detected at slice# 366 with actual coord [365, 335, 401]\n",
+      "Nodule Detected at slice# 223 with actual coord [224, 421, 333]\n",
+      "Nodule Detected at slice# 224 with actual coord [224, 421, 333]\n",
+      "Nodule Detected at slice# 225 with actual coord [224, 421, 333]\n",
+      "Sensitivity: 0.4053452115812918\n",
+      "Specificity: 0.06962836394703119\n",
+      "Processing patient# 369 ETA: -3.03107933963702 hrs\n",
+      "Processing patient# 370 ETA: -3.0407743953172863 hrs\n",
+      "[[29, 392, 242]]\n",
+      "2200    4.461\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.40444444444444444\n",
+      "Specificity: 0.06950959488272922\n",
+      "Processing patient# 371 ETA: -3.0625835187865715 hrs\n",
+      "[[69, 413, 257]]\n",
+      "2201    4.584\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4035476718403548\n",
+      "Specificity: 0.06940107862617088\n",
+      "Processing patient# 372 ETA: -3.083073799907093 hrs\n",
+      "[[48, 325, 146], [51, 380, 292]]\n",
+      "2202    3.486\n",
+      "2203    3.344\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.40176600441501104\n",
+      "Specificity: 0.06918505942275043\n",
+      "Processing patient# 373 ETA: -3.1024945414307785 hrs\n",
+      "[[229, 139, 215], [136, 228, 349], [276, 195, 178], [296, 108, 397], [288, 417, 362], [181, 344, 185], [264, 129, 179], [331, 402, 379]]\n",
+      "2204    7.517\n",
+      "2205    4.342\n",
+      "2206    8.418\n",
+      "2207    6.075\n",
+      "2208    6.924\n",
+      "2209    3.943\n",
+      "2210    5.080\n",
+      "2211    4.133\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 228 with actual coord [229, 139, 215]\n",
+      "Nodule Detected at slice# 229 with actual coord [229, 139, 215]\n",
+      "Nodule Detected at slice# 230 with actual coord [229, 139, 215]\n",
+      "Nodule Detected at slice# 275 with actual coord [276, 195, 178]\n",
+      "Nodule Detected at slice# 276 with actual coord [276, 195, 178]\n",
+      "Nodule Detected at slice# 277 with actual coord [276, 195, 178]\n",
+      "Nodule Detected at slice# 295 with actual coord [296, 108, 397]\n",
+      "Nodule Detected at slice# 296 with actual coord [296, 108, 397]\n",
+      "Nodule Detected at slice# 297 with actual coord [296, 108, 397]\n",
+      "Nodule Detected at slice# 287 with actual coord [288, 417, 362]\n",
+      "Nodule Detected at slice# 288 with actual coord [288, 417, 362]\n",
+      "Nodule Detected at slice# 289 with actual coord [288, 417, 362]\n",
+      "Nodule Detected at slice# 263 with actual coord [264, 129, 179]\n",
+      "Nodule Detected at slice# 264 with actual coord [264, 129, 179]\n",
+      "Nodule Detected at slice# 265 with actual coord [264, 129, 179]\n",
+      "Sensitivity: 0.40563991323210413\n",
+      "Specificity: 0.07061790668348046\n",
+      "Processing patient# 374 ETA: -3.1503513261436775 hrs\n",
+      "[[132, 321, 272], [293, 413, 166], [182, 166, 266]]\n",
+      "2212     4.579\n",
+      "2213     3.763\n",
+      "2214    10.749\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 181 with actual coord [182, 166, 266]\n",
+      "Nodule Detected at slice# 182 with actual coord [182, 166, 266]\n",
+      "Nodule Detected at slice# 183 with actual coord [182, 166, 266]\n",
+      "Sensitivity: 0.4051724137931034\n",
+      "Specificity: 0.07057349665924276\n",
+      "Processing patient# 375 ETA: -3.192826619232142 hrs\n",
+      "[[87, 297, 176], [211, 116, 151]]\n",
+      "2215    3.895\n",
+      "2216    6.987\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 210 with actual coord [211, 116, 151]\n",
+      "Nodule Detected at slice# 211 with actual coord [211, 116, 151]\n",
+      "Nodule Detected at slice# 212 with actual coord [211, 116, 151]\n",
+      "Sensitivity: 0.4055793991416309\n",
+      "Specificity: 0.0691619202603743\n",
+      "Processing patient# 376 ETA: -3.237334467527714 hrs\n",
+      "[[24, 401, 291], [28, 360, 208]]\n",
+      "2217    3.898\n",
+      "2218    4.726\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.40384615384615385\n",
+      "Specificity: 0.06911505624068302\n",
+      "Processing patient# 377 ETA: -3.2596919145134042 hrs\n",
+      "[[60, 323, 395]]\n",
+      "2219    4.095\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.40298507462686567\n",
+      "Specificity: 0.06900284129346503\n",
+      "Processing patient# 378 ETA: -3.278818171113327 hrs\n",
+      "[[89, 111, 367]]\n",
+      "2220    5.201\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 88 with actual coord [89, 111, 367]\n",
+      "Nodule Detected at slice# 89 with actual coord [89, 111, 367]\n",
+      "Nodule Detected at slice# 90 with actual coord [89, 111, 367]\n",
+      "Sensitivity: 0.40425531914893614\n",
+      "Specificity: 0.06932432432432432\n",
+      "Processing patient# 379 ETA: -3.3091597370383536 hrs\n",
+      "[[196, 371, 137], [155, 290, 243], [399, 39, 283], [210, 64, 233], [158, 397, 293], [332, 436, 352], [154, 304, 261]]\n",
+      "2221    3.744\n",
+      "2222    8.259\n",
+      "2223    4.911\n",
+      "2224    3.658\n",
+      "2225    6.005\n",
+      "2226    5.015\n",
+      "2227    9.895\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 157 with actual coord [158, 397, 293]\n",
+      "Nodule Detected at slice# 158 with actual coord [158, 397, 293]\n",
+      "Nodule Detected at slice# 159 with actual coord [158, 397, 293]\n",
+      "Nodule Detected at slice# 331 with actual coord [332, 436, 352]\n",
+      "Nodule Detected at slice# 332 with actual coord [332, 436, 352]\n",
+      "Nodule Detected at slice# 333 with actual coord [332, 436, 352]\n",
+      "Nodule Detected at slice# 155 with actual coord [154, 304, 261]\n",
+      "Sensitivity: 0.40461215932914046\n",
+      "Specificity: 0.06970509383378017\n",
+      "Processing patient# 380 ETA: -3.3505196650718387 hrs\n",
+      "[[150, 418, 153], [99, 126, 287], [189, 91, 175]]\n",
+      "2228     3.140\n",
+      "2229     5.016\n",
+      "2230    16.141\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 188 with actual coord [189, 91, 175]\n",
+      "Nodule Detected at slice# 189 with actual coord [189, 91, 175]\n",
+      "Nodule Detected at slice# 190 with actual coord [189, 91, 175]\n",
+      "Sensitivity: 0.4041666666666667\n",
+      "Specificity: 0.069826435246996\n",
+      "Processing patient# 381 ETA: -3.382899270853623 hrs\n",
+      "[[121, 154, 339], [149, 138, 331], [151, 151, 313], [151, 352, 301]]\n",
+      "2231    4.183\n",
+      "2232    4.997\n",
+      "2233    6.015\n",
+      "2234    4.857\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 150 with actual coord [151, 151, 313]\n",
+      "Nodule Detected at slice# 151 with actual coord [151, 151, 313]\n",
+      "Nodule Detected at slice# 152 with actual coord [151, 151, 313]\n",
+      "Sensitivity: 0.40289256198347106\n",
+      "Specificity: 0.06992821058229194\n",
+      "Processing patient# 382 ETA: -3.412722591825042 hrs\n",
+      "[[77, 102, 223], [38, 126, 341]]\n",
+      "2235    4.836\n",
+      "2236    6.953\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 37 with actual coord [38, 126, 341]\n",
+      "Nodule Detected at slice# 38 with actual coord [38, 126, 341]\n",
+      "Sensitivity: 0.40329218106995884\n",
+      "Specificity: 0.07000795544948289\n",
+      "Processing patient# 383 ETA: -3.4360059995605594 hrs\n",
+      "Processing patient# 384 ETA: -3.44578555987389 hrs\n",
+      "[[266, 81, 177], [198, 378, 150], [279, 99, 175], [308, 85, 162], [305, 451, 257], [249, 84, 209]]\n",
+      "2237    4.149\n",
+      "2238    2.869\n",
+      "2239    6.631\n",
+      "2240    4.205\n",
+      "2241    5.773\n",
+      "2242    3.171\n",
+      "Name: eq. diam., dtype: float64\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Nodule Detected at slice# 278 with actual coord [279, 99, 175]\n",
+      "Nodule Detected at slice# 279 with actual coord [279, 99, 175]\n",
+      "Nodule Detected at slice# 280 with actual coord [279, 99, 175]\n",
+      "Nodule Detected at slice# 304 with actual coord [305, 451, 257]\n",
+      "Nodule Detected at slice# 305 with actual coord [305, 451, 257]\n",
+      "Nodule Detected at slice# 306 with actual coord [305, 451, 257]\n",
+      "Sensitivity: 0.4024390243902439\n",
+      "Specificity: 0.07042067783199261\n",
+      "Processing patient# 385 ETA: -3.4872073284286094 hrs\n",
+      "[[73, 192, 122], [43, 75, 310], [60, 173, 137], [12, 191, 295], [57, 85, 302], [17, 335, 305], [19, 195, 315], [41, 203, 344], [33, 109, 265], [79, 460, 229], [47, 411, 310], [41, 185, 349], [41, 393, 322], [67, 453, 242], [60, 381, 396], [77, 450, 309]]\n",
+      "2243    4.555\n",
+      "2244    4.732\n",
+      "2245    5.739\n",
+      "2246    5.051\n",
+      "2247    4.995\n",
+      "2248    5.089\n",
+      "2249    5.636\n",
+      "2250    4.732\n",
+      "2251    4.975\n",
+      "2252    8.312\n",
+      "2253    4.207\n",
+      "2254    5.465\n",
+      "2255    5.301\n",
+      "2256    7.478\n",
+      "2257    4.645\n",
+      "2258    8.586\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 60 with actual coord [60, 173, 137]\n",
+      "Nodule Detected at slice# 12 with actual coord [12, 191, 295]\n",
+      "Nodule Detected at slice# 13 with actual coord [12, 191, 295]\n",
+      "Nodule Detected at slice# 17 with actual coord [17, 335, 305]\n",
+      "Nodule Detected at slice# 19 with actual coord [19, 195, 315]\n",
+      "Nodule Detected at slice# 20 with actual coord [19, 195, 315]\n",
+      "Nodule Detected at slice# 79 with actual coord [79, 460, 229]\n",
+      "Nodule Detected at slice# 80 with actual coord [79, 460, 229]\n",
+      "Nodule Detected at slice# 41 with actual coord [41, 185, 349]\n",
+      "Nodule Detected at slice# 67 with actual coord [67, 453, 242]\n",
+      "Nodule Detected at slice# 76 with actual coord [77, 450, 309]\n",
+      "Nodule Detected at slice# 77 with actual coord [77, 450, 309]\n",
+      "Nodule Detected at slice# 78 with actual coord [77, 450, 309]\n",
+      "Sensitivity: 0.40551181102362205\n",
+      "Specificity: 0.07189800210304942\n",
+      "Processing patient# 386 ETA: -3.5051857701391755 hrs\n",
+      "[[47, 363, 268]]\n",
+      "2259    3.259\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.40471512770137524\n",
+      "Specificity: 0.07170009175514484\n",
+      "Processing patient# 387 ETA: -3.5533651142227494 hrs\n",
+      "[[269, 119, 178], [215, 410, 367]]\n",
+      "2260    5.003\n",
+      "2261    2.032\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 268 with actual coord [269, 119, 178]\n",
+      "Nodule Detected at slice# 269 with actual coord [269, 119, 178]\n",
+      "Nodule Detected at slice# 270 with actual coord [269, 119, 178]\n",
+      "Sensitivity: 0.4050880626223092\n",
+      "Specificity: 0.07167991659064252\n",
+      "Processing patient# 388 ETA: -3.5894986695249194 hrs\n",
+      "[[180, 388, 183], [132, 185, 155], [173, 157, 309], [107, 368, 207], [133, 398, 257], [247, 427, 297], [173, 364, 286], [199, 112, 181], [125, 185, 395], [269, 94, 321], [237, 135, 325], [74, 145, 278], [170, 411, 235]]\n",
+      "2262    4.745\n",
+      "2263    3.171\n",
+      "2264    4.736\n",
+      "2265    2.916\n",
+      "2266    4.544\n",
+      "2267    7.341\n",
+      "2268    6.286\n",
+      "2269    3.994\n",
+      "2270    8.685\n",
+      "2271    3.228\n",
+      "2272    9.013\n",
+      "2273    4.386\n",
+      "2274    2.962\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 246 with actual coord [247, 427, 297]\n",
+      "Nodule Detected at slice# 247 with actual coord [247, 427, 297]\n",
+      "Nodule Detected at slice# 248 with actual coord [247, 427, 297]\n",
+      "Nodule Detected at slice# 124 with actual coord [125, 185, 395]\n",
+      "Nodule Detected at slice# 125 with actual coord [125, 185, 395]\n",
+      "Nodule Detected at slice# 126 with actual coord [125, 185, 395]\n",
+      "Nodule Detected at slice# 236 with actual coord [237, 135, 325]\n",
+      "Nodule Detected at slice# 237 with actual coord [237, 135, 325]\n",
+      "Nodule Detected at slice# 238 with actual coord [237, 135, 325]\n",
+      "Sensitivity: 0.40076335877862596\n",
+      "Specificity: 0.07214765100671142\n",
+      "Processing patient# 389 ETA: -3.637720636394459 hrs\n",
+      "[[88, 435, 238]]\n",
+      "2275    3.644\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4\n",
+      "Specificity: 0.07190635451505016\n",
+      "Processing patient# 390 ETA: -3.6674616115096628 hrs\n",
+      "[[103, 357, 356], [33, 327, 305]]\n",
+      "2276    7.922\n",
+      "2277    8.351\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 102 with actual coord [103, 357, 356]\n",
+      "Nodule Detected at slice# 103 with actual coord [103, 357, 356]\n",
+      "Nodule Detected at slice# 104 with actual coord [103, 357, 356]\n",
+      "Nodule Detected at slice# 32 with actual coord [33, 327, 305]\n",
+      "Nodule Detected at slice# 33 with actual coord [33, 327, 305]\n",
+      "Nodule Detected at slice# 34 with actual coord [33, 327, 305]\n",
+      "Sensitivity: 0.40227703984819735\n",
+      "Specificity: 0.07247306310928682\n",
+      "Processing patient# 391 ETA: -3.6925366023981496 hrs\n",
+      "[[47, 213, 294], [63, 323, 402]]\n",
+      "2278    18.213\n",
+      "2279     5.824\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 46 with actual coord [47, 213, 294]\n",
+      "Nodule Detected at slice# 47 with actual coord [47, 213, 294]\n",
+      "Nodule Detected at slice# 48 with actual coord [47, 213, 294]\n",
+      "Nodule Detected at slice# 63 with actual coord [63, 323, 402]\n",
+      "Nodule Detected at slice# 64 with actual coord [63, 323, 402]\n",
+      "Sensitivity: 0.4045368620037807\n",
+      "Specificity: 0.072992700729927\n",
+      "Processing patient# 392 ETA: -3.7106697891845184 hrs\n",
+      "Processing patient# 393 ETA: -3.7205055191205454 hrs\n",
+      "[[185, 136, 238], [235, 74, 207]]\n",
+      "2280    5.004\n",
+      "2281    7.739\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 234 with actual coord [235, 74, 207]\n",
+      "Nodule Detected at slice# 235 with actual coord [235, 74, 207]\n",
+      "Nodule Detected at slice# 236 with actual coord [235, 74, 207]\n",
+      "Sensitivity: 0.4048964218455744\n",
+      "Specificity: 0.07286368260427263\n",
+      "Processing patient# 394 ETA: -3.7636868399398447 hrs\n",
+      "[[157, 469, 294], [129, 72, 183], [100, 434, 375]]\n",
+      "2282    5.358\n",
+      "2283    5.803\n",
+      "2284    3.977\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 156 with actual coord [157, 469, 294]\n",
+      "Nodule Detected at slice# 157 with actual coord [157, 469, 294]\n",
+      "Nodule Detected at slice# 158 with actual coord [157, 469, 294]\n",
+      "Sensitivity: 0.4044943820224719\n",
+      "Specificity: 0.07307789901040346\n",
+      "Processing patient# 395 ETA: -3.7904552509915477 hrs\n",
+      "[[98, 189, 265]]\n",
+      "2285    20.686\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 98 with actual coord [98, 189, 265]\n",
+      "Nodule Detected at slice# 99 with actual coord [98, 189, 265]\n",
+      "Sensitivity: 0.405607476635514\n",
+      "Specificity: 0.07309978500063236\n",
+      "Processing patient# 396 ETA: -3.8098674097078553 hrs\n",
+      "[[51, 164, 214], [45, 211, 334], [89, 400, 182], [188, 456, 267], [187, 461, 324], [72, 126, 230], [23, 192, 264], [114, 146, 168], [134, 378, 397]]\n",
+      "2286    4.477\n",
+      "2287    4.205\n",
+      "2288    3.424\n",
+      "2289    6.038\n",
+      "2290    5.367\n",
+      "2291    4.137\n",
+      "2292    5.124\n",
+      "2293    4.292\n",
+      "2294    5.658\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 187 with actual coord [188, 456, 267]\n",
+      "Nodule Detected at slice# 188 with actual coord [188, 456, 267]\n",
+      "Nodule Detected at slice# 189 with actual coord [188, 456, 267]\n",
+      "Nodule Detected at slice# 186 with actual coord [187, 461, 324]\n",
+      "Nodule Detected at slice# 187 with actual coord [187, 461, 324]\n",
+      "Nodule Detected at slice# 133 with actual coord [134, 378, 397]\n",
+      "Nodule Detected at slice# 134 with actual coord [134, 378, 397]\n",
+      "Nodule Detected at slice# 135 with actual coord [134, 378, 397]\n",
+      "Sensitivity: 0.40441176470588236\n",
+      "Specificity: 0.0736404833836858\n",
+      "Processing patient# 397 ETA: -3.841024845880585 hrs\n",
+      "[[198, 136, 313], [233, 161, 202]]\n",
+      "2295    7.710\n",
+      "2296    4.552\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 197 with actual coord [198, 136, 313]\n",
+      "Nodule Detected at slice# 198 with actual coord [198, 136, 313]\n",
+      "Nodule Detected at slice# 199 with actual coord [198, 136, 313]\n",
+      "Sensitivity: 0.40476190476190477\n",
+      "Specificity: 0.07355516637478109\n",
+      "Processing patient# 398 ETA: -3.890861464127823 hrs\n",
+      "[[74, 93, 155], [49, 346, 298]]\n",
+      "2297    4.938\n",
+      "2298    4.805\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Sensitivity: 0.4032846715328467\n",
+      "Specificity: 0.07354596622889306\n",
+      "Processing patient# 399 ETA: -3.911309088614617 hrs\n",
+      "[[174, 171, 252], [192, 165, 212], [211, 116, 296], [180, 112, 414]]\n",
+      "2299     5.342\n",
+      "2300    20.904\n",
+      "2301     4.450\n",
+      "2302    12.865\n",
+      "Name: eq. diam., dtype: float64\n",
+      "Nodule Detected at slice# 191 with actual coord [192, 165, 212]\n",
+      "Nodule Detected at slice# 192 with actual coord [192, 165, 212]\n",
+      "Nodule Detected at slice# 193 with actual coord [192, 165, 212]\n",
+      "Nodule Detected at slice# 179 with actual coord [180, 112, 414]\n",
+      "Nodule Detected at slice# 180 with actual coord [180, 112, 414]\n",
+      "Nodule Detected at slice# 181 with actual coord [180, 112, 414]\n",
+      "Sensitivity: 0.40398550724637683\n",
+      "Specificity: 0.07374301675977654\n",
+      "28390.67985391617\n"
+     ]
+    }
+   ],
+   "source": [
+    "#maskedtumor=pix_resampled[int(coord[0])]*cmw_patient\n",
+    "start_time=time.time()\n",
+    "elapsed_time=0\n",
+    "totaltime=50000\n",
+    "noduleimages=np.ndarray([10000,512,512],dtype=np.float32)\n",
+    "#predictedemasks=np.ndarray([len(patients)*8,512,512],dtype=np.float32)\n",
+    "nodulelabels=[]\n",
+    "nodulesensitivity=[]\n",
+    "index=0\n",
+    "coordcount=0\n",
+    "coordtruecount=0\n",
+    "nodulecount=0\n",
+    "noduletruecount=0\n",
+    "slicecounts=[]\n",
+    "thresh=-500 #lower HU threshold for nodule segmentation\n",
+    "for i in range(197,400):\n",
+    "    print(\"Processing patient#\",i,\"ETA:\",(totaltime-elapsed_time)/3600,\"hrs\")\n",
+    "    if len(nodule_coordinates(nodulelocations,meta.iloc[i]))>0:\n",
+    "        patient_scan=load_scan(patients[i])\n",
+    "        slicecounts.append(len(patient_scan))\n",
+    "        patient_pix=get_pixels_hu(patient_scan)\n",
+    "        processed_pix = processimagefromfile(patient_pix)\n",
+    "        coord = nodule_coordinates(nodulelocations,meta.iloc[i])\n",
+    "        print(coord)\n",
+    "        radius = nodulelocations[\"eq. diam.\"][nodulelocations.index[nodulelocations[\"case\"]==int(meta[\"Patient Id\"][i][-4:])]]\n",
+    "        print(radius)\n",
+    "        mask = predictmask(processed_pix)\n",
+    "        noduleindex = getnoduleindex(mask)        \n",
+    "        labels = np.zeros(len(noduleindex)).astype(np.bool)\n",
+    "        cordlabels=np.zeros(len(coord)).astype(np.bool)\n",
+    "        for j,cord in enumerate(coord): #loop through labeled nodules\n",
+    "            if radius.iloc[j]>5:\n",
+    "                nodulemask = cmw.cell_magic_wand(-patient_pix[int(cord[0])],[int(cord[2]),int(cord[1])],2,int(radius.iloc[j])+2)\n",
+    "                nodulepix=nodulemask*patient_pix[cord[0]]\n",
+    "                nodulepix[nodulepix<thresh]=0\n",
+    "                nodulepix[nodulepix!=0]=1\n",
+    "                nodulemask=nodulepix.astype(np.bool)\n",
+    "                for k,ind in enumerate(noduleindex): #loop through detected nodules\n",
+    "                    if abs(ind-cord[0])<2:\n",
+    "                        if np.sum(nodulemask*mask[ind][0])>1:\n",
+    "                            print(\"Nodule Detected at slice#\",ind,\"with actual coord\",cord)\n",
+    "                            labels[k] = True\n",
+    "                            cordlabels[j] = True\n",
+    "\n",
+    "        for j in range(len(coord)):\n",
+    "            nodulesensitivity.append(cordlabels[j])\n",
+    "            \n",
+    "        for k in range(len(noduleindex)):\n",
+    "            nodulelabels.append(labels[k])\n",
+    "            noduleimages[index]=processed_pix[noduleindex[k]]\n",
+    "            index+=1\n",
+    "        coordtruecount+=len(cordlabels[cordlabels==True])\n",
+    "        noduletruecount+=len(labels[labels==True])\n",
+    "        coordcount+=len(coord)\n",
+    "        nodulecount+=len(noduleindex)\n",
+    "        print(\"Sensitivity:\",coordtruecount/coordcount)\n",
+    "        print(\"Specificity:\",noduletruecount/nodulecount)\n",
+    "    elapsed_time=time.time()-start_time\n",
+    "    totaltime=elapsed_time/(i+1)*200\n",
+    "print(elapsed_time)\n",
+    "noduleimages=noduleimages[:len(nodulelabels)]"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {
+    "collapsed": true
+   },
+   "outputs": [],
+   "source": [
+    "noduleimages=noduleimages[:len(nodulelabels)]\n",
+    "noduleimages=noduleimages.reshape([noduleimages.shape[0],1,512,512])\n",
+    "nodulelabels=np.array(nodulelabels)\n",
+    "np.save(\"noduleimages197-399.npy\",noduleimages)\n",
+    "np.save(\"nodulelabels197-399.npy\",nodulelabels)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {
+    "collapsed": true
+   },
+   "outputs": [],
+   "source": [
+    "#noduleimages=np.load(\"noduleimages0-192.npy\")\n",
+    "nodulelabels=np.load(\"nodulelabels0-192.npy\")\n",
+    "#noduleimages=np.concatenate((noduleimages,np.load(\"noduleimages197-399.npy\")))\n",
+    "nodulelabels=np.concatenate((nodulelabels,np.load(\"nodulelabels197-399.npy\")))"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Number of True Positive nodules: 1336\n",
+      "Number of False Positive nodules: 14856\n",
+      "# of FPs per TP 11.119760479041917\n"
+     ]
+    }
+   ],
+   "source": [
+    "TP=len([nl for nl in nodulelabels if nl==True])\n",
+    "FP=len([nl for nl in nodulelabels if nl==False])\n",
+    "print(\"Number of True Positive nodules:\",TP)\n",
+    "print(\"Number of False Positive nodules:\",FP)\n",
+    "print(\"# of FPs per TP\",FP/TP)\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 84,
+   "metadata": {
+    "collapsed": true
+   },
+   "outputs": [],
+   "source": [
+    "noduleimagestrue=np.load(\"noduleimagesv3.npy\")\n",
+    "falseind=[i for i in range(len(nodulelabels)) if nodulelabels[i]==False]\n",
+    "random.shuffle(falseind)\n",
+    "falseind=falseind[:noduleimagestrue.shape[0]]\n",
+    "noduleimagesfalse=np.array([noduleimages[i] for i in falseind])\n",
+    "del noduleimages\n",
+    "noduleimagesbalanced=np.concatenate((noduleimagestrue,noduleimagesfalse.reshape(noduleimagesfalse.shape[0],1,512,512)),axis=0)\n",
+    "nodulelabelsbalanced=[True]*noduleimagestrue.shape[0]+[False]*noduleimagesfalse.shape[0]\n",
+    "nodulelabelsbalanced=to_categorical(nodulelabelsbalanced,2)\n",
+    "del noduleimagestrue,noduleimagesfalse\n",
+    "Xtrain, Xtest, Ytrain, Ytest = train_test_split(noduleimagesbalanced,nodulelabelsbalanced,test_size=.30)\n",
+    "del noduleimagesbalanced, nodulelabelsbalanced"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 90,
+   "metadata": {
+    "scrolled": false
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Train on 7032 samples, validate on 3014 samples\n",
+      "Epoch 1/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.6701 - acc: 0.5709Epoch 00000: loss improved from inf to 0.67013, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 463s - loss: 0.6701 - acc: 0.5708 - val_loss: 0.6254 - val_acc: 0.6676\n",
+      "Epoch 2/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.6036 - acc: 0.6505Epoch 00001: loss improved from 0.67013 to 0.60376, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 461s - loss: 0.6038 - acc: 0.6503 - val_loss: 0.5821 - val_acc: 0.6981\n",
+      "Epoch 3/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.5434 - acc: 0.6982Epoch 00002: loss improved from 0.60376 to 0.54359, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 458s - loss: 0.5436 - acc: 0.6981 - val_loss: 0.5493 - val_acc: 0.7283\n",
+      "Epoch 4/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.4905 - acc: 0.7462Epoch 00003: loss improved from 0.54359 to 0.49050, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 457s - loss: 0.4905 - acc: 0.7460 - val_loss: 0.5110 - val_acc: 0.7565\n",
+      "Epoch 5/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.4400 - acc: 0.7830Epoch 00004: loss improved from 0.49050 to 0.43996, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 456s - loss: 0.4400 - acc: 0.7831 - val_loss: 0.4842 - val_acc: 0.7704\n",
+      "Epoch 6/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.3978 - acc: 0.8068Epoch 00005: loss improved from 0.43996 to 0.39774, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.3977 - acc: 0.8069 - val_loss: 0.4702 - val_acc: 0.7731\n",
+      "Epoch 7/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.3501 - acc: 0.8368Epoch 00006: loss improved from 0.39774 to 0.35043, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.3504 - acc: 0.8365 - val_loss: 0.4465 - val_acc: 0.7906\n",
+      "Epoch 8/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.3224 - acc: 0.8586Epoch 00007: loss improved from 0.35043 to 0.32226, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.3223 - acc: 0.8586 - val_loss: 0.4299 - val_acc: 0.8019\n",
+      "Epoch 9/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.2871 - acc: 0.8717Epoch 00008: loss improved from 0.32226 to 0.28703, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.2870 - acc: 0.8717 - val_loss: 0.4381 - val_acc: 0.7960\n",
+      "Epoch 10/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.2671 - acc: 0.8796Epoch 00009: loss improved from 0.28703 to 0.26707, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.2671 - acc: 0.8797 - val_loss: 0.4083 - val_acc: 0.8149\n",
+      "Epoch 11/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.2485 - acc: 0.8900Epoch 00010: loss improved from 0.26707 to 0.24853, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.2485 - acc: 0.8901 - val_loss: 0.4103 - val_acc: 0.8162\n",
+      "Epoch 12/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.2226 - acc: 0.9051Epoch 00011: loss improved from 0.24853 to 0.22252, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 456s - loss: 0.2225 - acc: 0.9051 - val_loss: 0.4034 - val_acc: 0.8275\n",
+      "Epoch 13/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.2103 - acc: 0.9099Epoch 00012: loss improved from 0.22252 to 0.21038, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 456s - loss: 0.2104 - acc: 0.9098 - val_loss: 0.4086 - val_acc: 0.8321\n",
+      "Epoch 14/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.1949 - acc: 0.9169Epoch 00013: loss improved from 0.21038 to 0.19480, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 456s - loss: 0.1948 - acc: 0.9170 - val_loss: 0.4247 - val_acc: 0.8235\n",
+      "Epoch 15/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.1785 - acc: 0.9287Epoch 00014: loss improved from 0.19480 to 0.17869, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.1787 - acc: 0.9285 - val_loss: 0.4020 - val_acc: 0.8328\n",
+      "Epoch 16/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.1606 - acc: 0.9368Epoch 00015: loss improved from 0.17869 to 0.16055, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.1606 - acc: 0.9369 - val_loss: 0.4224 - val_acc: 0.8301\n",
+      "Epoch 17/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.1600 - acc: 0.9347Epoch 00016: loss improved from 0.16055 to 0.15991, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.1599 - acc: 0.9347 - val_loss: 0.4110 - val_acc: 0.8374\n",
+      "Epoch 18/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.1463 - acc: 0.9407Epoch 00017: loss improved from 0.15991 to 0.14649, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.1465 - acc: 0.9406 - val_loss: 0.4141 - val_acc: 0.8361\n",
+      "Epoch 19/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.1413 - acc: 0.9405Epoch 00018: loss improved from 0.14649 to 0.14119, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.1412 - acc: 0.9406 - val_loss: 0.4146 - val_acc: 0.8454\n",
+      "Epoch 20/20\n",
+      "7028/7032 [============================>.] - ETA: 0s - loss: 0.1333 - acc: 0.9459Epoch 00019: loss improved from 0.14119 to 0.13350, saving model to truenodule-cnn-weights-improvement2.hdf5\n",
+      "7032/7032 [==============================] - 455s - loss: 0.1335 - acc: 0.9458 - val_loss: 0.4118 - val_acc: 0.8437\n"
+     ]
+    }
+   ],
+   "source": [
+    "#classify as nodule or non-nodule\n",
+    "input_shape=(1,512,512)\n",
+    "num_classes=2\n",
+    "model = Sequential()\n",
+    "model.add(Conv2D(8, kernel_size=(3, 3),\n",
+    "                 activation='relu',\n",
+    "                 input_shape=input_shape))\n",
+    "model.add(Conv2D(16, (3, 3), activation='relu'))\n",
+    "model.add(MaxPooling2D(pool_size=(2, 2)))\n",
+    "model.add(Dropout(0.25))\n",
+    "model.add(Flatten())\n",
+    "model.add(Dense(32, activation='relu'))\n",
+    "model.add(Dropout(0.5))\n",
+    "model.add(Dense(num_classes, activation='softmax'))\n",
+    "\n",
+    "model.compile(loss=keras.losses.binary_crossentropy,\n",
+    "              optimizer=Adam(lr=1e-5),\n",
+    "              metrics=['accuracy'])\n",
+    "\n",
+    "\n",
+    "#model.load_weights(truenoduleweightspath)\n",
+    "\n",
+    "checkpoint = ModelCheckpoint(truenoduleweightspath, monitor='loss', verbose=1, save_best_only=True)\n",
+    "\n",
+    "history=model.fit(Xtrain, Ytrain, batch_size=4, epochs=20, verbose=1, shuffle=True, callbacks=[checkpoint], validation_data=(Xtest,Ytest))"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 101,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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\narKkh6vq0QAAAABJRU5ErkJggg==\n",
+      "text/plain": [
+       "<matplotlib.figure.Figure at 0x134b27f0>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "image/png": "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\n6tHg5wAAAABJRU5ErkJggg==\n",
+      "text/plain": [
+       "<matplotlib.figure.Figure at 0x13499dd8>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "plt.plot(history.history['loss'], color='b')\n",
+    "plt.plot(history.history['val_loss'], color='g')\n",
+    "plt.xlabel(\"Epoch\")\n",
+    "plt.ylabel(\"Log Loss\")\n",
+    "plt.legend([\"Train\", \"Validation\"])\n",
+    "plt.show()\n",
+    "plt.plot(history.history['acc'], color='b')\n",
+    "plt.plot(history.history['val_acc'], color='g')\n",
+    "plt.xlabel(\"Epoch\")\n",
+    "plt.ylabel(\"Accuracy\")\n",
+    "plt.legend([\"Train\", \"Validation\"])\n",
+    "plt.show()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 99,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "1531/1531 [==============================] - 8s     \n",
+      "1483/1483 [==============================] - 8s     \n"
+     ]
+    }
+   ],
+   "source": [
+    "XtestTrue=np.array([Xtest[i] for i in range(Ytest.shape[0]) if Ytest[i,1]==1])\n",
+    "YtestTrue=np.array([Ytest[i] for i in range(Ytest.shape[0]) if Ytest[i,1]==1])\n",
+    "XtestFalse=np.array([Xtest[i] for i in range(Ytest.shape[0]) if Ytest[i,1]==0])\n",
+    "YtestFalse=np.array([Ytest[i] for i in range(Ytest.shape[0]) if Ytest[i,1]==0])\n",
+    "\n",
+    "scoretrue=model.evaluate(XtestTrue,YtestTrue)\n",
+    "scorefalse=model.evaluate(XtestFalse,YtestFalse)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 100,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Sensitivity: 0.7477\n",
+      "FP Rate/slice: 0.06030808390063514\n",
+      "FP Rate/slice after nodule classification: 0.0110205601612\n",
+      "Sensitivity after nodule classification: 0.650025277771\n"
+     ]
+    }
+   ],
+   "source": [
+    "print(\"Sensitivity:\", 0.7477) #Evaluated from 2TrainUnet.ipynb\n",
+    "print(\"FP Rate/slice:\", len(falseind)/(sum(slicecounts+slicecounts2)))\n",
+    "print(\"FP Rate/slice after nodule classification:\", len(falseind)*(1-scorefalse[1])/(sum(slicecounts+slicecounts2)))\n",
+    "print(\"Sensitivity after nodule classification:\", 0.7477*scoretrue[1])"
+   ]
+  }
+ ],
+ "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.6.1"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}