In [5]:
from matplotlib.pyplot import imshow
import matplotlib.pyplot as plt

%matplotlib inline


/home/d/nolearn/local/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.
  warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')

In [18]:
import cPickle as pickle
import os; import sys; sys.path.append('..')
import gp
import gp.nets as nets


Using gpu device 0: GeForce GTX TITAN (CNMeM is disabled, CuDNN 4007)
/home/d/nolearn/local/lib/python2.7/site-packages/theano/tensor/signal/downsample.py:6: UserWarning: downsample module has been moved to the theano.tensor.signal.pool module.
  "downsample module has been moved to the theano.tensor.signal.pool module.")

In [13]:
import numpy as np
import mahotas as mh
import h5py

In [4]:
golds = np.zeros((250,2048,2048), dtype=np.uint64)
rhoanas = np.zeros((250,2048,2048), dtype=np.uint64)
probs = np.zeros((250,2048,2048), dtype=np.uint64)

for z in range(0,250):

    image, prob, mask, gold, rhoana = gp.Util.read_section('/home/d/data/cylinderNEW/', z)
#     masked_image = image.copy()
#     masked_image[mask==0] = 0
    masked_prob = prob.copy()
    masked_prob = 255. - masked_prob
    masked_prob[mask==0] = 0
    golds[z] = gold
    rhoanas[z] = rhoana
    probs[z] = masked_prob

# gp.Util.view(masked_image,color=False)
# gp.Util.view(masked_prob,color=False)


Loading z00000000.png
Loading z00000001.png
Loading z00000002.png
Loading z00000003.png
Loading z00000004.png
Loading z00000005.png
Loading z00000006.png
Loading z00000007.png
Loading z00000008.png
Loading z00000009.png
Loading z00000010.png
Loading z00000011.png
Loading z00000012.png
Loading z00000013.png
Loading z00000014.png
Loading z00000015.png
Loading z00000016.png
Loading z00000017.png
Loading z00000018.png
Loading z00000019.png
Loading z00000020.png
Loading z00000021.png
Loading z00000022.png
Loading z00000023.png
Loading z00000024.png
Loading z00000025.png
Loading z00000026.png
Loading z00000027.png
Loading z00000028.png
Loading z00000029.png
Loading z00000030.png
Loading z00000031.png
Loading z00000032.png
Loading z00000033.png
Loading z00000034.png
Loading z00000035.png
Loading z00000036.png
Loading z00000037.png
Loading z00000038.png
Loading z00000039.png
Loading z00000040.png
Loading z00000041.png
Loading z00000042.png
Loading z00000043.png
Loading z00000044.png
Loading z00000045.png
Loading z00000046.png
Loading z00000047.png
Loading z00000048.png
Loading z00000049.png
Loading z00000050.png
Loading z00000051.png
Loading z00000052.png
Loading z00000053.png
Loading z00000054.png
Loading z00000055.png
Loading z00000056.png
Loading z00000057.png
Loading z00000058.png
Loading z00000059.png
Loading z00000060.png
Loading z00000061.png
Loading z00000062.png
Loading z00000063.png
Loading z00000064.png
Loading z00000065.png
Loading z00000066.png
Loading z00000067.png
Loading z00000068.png
Loading z00000069.png
Loading z00000070.png
Loading z00000071.png
Loading z00000072.png
Loading z00000073.png
Loading z00000074.png
Loading z00000075.png
Loading z00000076.png
Loading z00000077.png
Loading z00000078.png
Loading z00000079.png
Loading z00000080.png
Loading z00000081.png
Loading z00000082.png
Loading z00000083.png
Loading z00000084.png
Loading z00000085.png
Loading z00000086.png
Loading z00000087.png
Loading z00000088.png
Loading z00000089.png
Loading z00000090.png
Loading z00000091.png
Loading z00000092.png
Loading z00000093.png
Loading z00000094.png
Loading z00000095.png
Loading z00000096.png
Loading z00000097.png
Loading z00000098.png
Loading z00000099.png
Loading z00000100.png
Loading z00000101.png
Loading z00000102.png
Loading z00000103.png
Loading z00000104.png
Loading z00000105.png
Loading z00000106.png
Loading z00000107.png
Loading z00000108.png
Loading z00000109.png
Loading z00000110.png
Loading z00000111.png
Loading z00000112.png
Loading z00000113.png
Loading z00000114.png
Loading z00000115.png
Loading z00000116.png
Loading z00000117.png
Loading z00000118.png
Loading z00000119.png
Loading z00000120.png
Loading z00000121.png
Loading z00000122.png
Loading z00000123.png
Loading z00000124.png
Loading z00000125.png
Loading z00000126.png
Loading z00000127.png
Loading z00000128.png
Loading z00000129.png
Loading z00000130.png
Loading z00000131.png
Loading z00000132.png
Loading z00000133.png
Loading z00000134.png
Loading z00000135.png
Loading z00000136.png
Loading z00000137.png
Loading z00000138.png
Loading z00000139.png
Loading z00000140.png
Loading z00000141.png
Loading z00000142.png
Loading z00000143.png
Loading z00000144.png
Loading z00000145.png
Loading z00000146.png
Loading z00000147.png
Loading z00000148.png
Loading z00000149.png
Loading z00000150.png
Loading z00000151.png
Loading z00000152.png
Loading z00000153.png
Loading z00000154.png
Loading z00000155.png
Loading z00000156.png
Loading z00000157.png
Loading z00000158.png
Loading z00000159.png
Loading z00000160.png
Loading z00000161.png
Loading z00000162.png
Loading z00000163.png
Loading z00000164.png
Loading z00000165.png
Loading z00000166.png
Loading z00000167.png
Loading z00000168.png
Loading z00000169.png
Loading z00000170.png
Loading z00000171.png
Loading z00000172.png
Loading z00000173.png
Loading z00000174.png
Loading z00000175.png
Loading z00000176.png
Loading z00000177.png
Loading z00000178.png
Loading z00000179.png
Loading z00000180.png
Loading z00000181.png
Loading z00000182.png
Loading z00000183.png
Loading z00000184.png
Loading z00000185.png
Loading z00000186.png
Loading z00000187.png
Loading z00000188.png
Loading z00000189.png
Loading z00000190.png
Loading z00000191.png
Loading z00000192.png
Loading z00000193.png
Loading z00000194.png
Loading z00000195.png
Loading z00000196.png
Loading z00000197.png
Loading z00000198.png
Loading z00000199.png
Loading z00000200.png
Loading z00000201.png
Loading z00000202.png
Loading z00000203.png
Loading z00000204.png
Loading z00000205.png
Loading z00000206.png
Loading z00000207.png
Loading z00000208.png
Loading z00000209.png
Loading z00000210.png
Loading z00000211.png
Loading z00000212.png
Loading z00000213.png
Loading z00000214.png
Loading z00000215.png
Loading z00000216.png
Loading z00000217.png
Loading z00000218.png
Loading z00000219.png
Loading z00000220.png
Loading z00000221.png
Loading z00000222.png
Loading z00000223.png
Loading z00000224.png
Loading z00000225.png
Loading z00000226.png
Loading z00000227.png
Loading z00000228.png
Loading z00000229.png
Loading z00000230.png
Loading z00000231.png
Loading z00000232.png
Loading z00000233.png
Loading z00000234.png
Loading z00000235.png
Loading z00000236.png
Loading z00000237.png
Loading z00000238.png
Loading z00000239.png
Loading z00000240.png
Loading z00000241.png
Loading z00000242.png
Loading z00000243.png
Loading z00000244.png
Loading z00000245.png
Loading z00000246.png
Loading z00000247.png
Loading z00000248.png
Loading z00000249.png

In [5]:
import glob
golds = np.zeros((250,2048,2048), dtype=np.uint32)

path = '/home/d/data/cylinderNEW/'
for z in range(0,250):
    gold = sorted(glob.glob(os.path.join(path, 'gold', '*'+str(z)+'.png')))
    gold = mh.imread(gold[0])
    gold_single = np.zeros((gold.shape[0], gold.shape[1]), dtype=np.uint32)
    gold_single[:, :] = gold[:,:,0]*256*256 + gold[:,:,1]*256 + gold[:,:,2]
    
    golds[z] = gold_single
#
# create gold h5 for neuroproof
#
all_labels = mh.fullhistogram(golds.astype(np.uint64))
all_labels = np.where(all_labels!=0)

transforms = np.zeros((all_labels[0].shape[0],2), dtype=np.uint32)
transforms[:,0] = all_labels[0]
transforms[:,1] = all_labels[0]
print 'generated transforms.'

with h5py.File('/home/d/fp_data/c_gold2.h5', 'w') as hf:
    hf.create_dataset('stack', data=golds)
    hf.create_dataset('transforms', data=transforms)


generated transforms.

In [6]:
import glob
rhoanas = np.zeros((250,2048,2048), dtype=np.uint32)

path = '/home/d/data/cylinderNEW/'
for z in range(0,250):
    rhoana = sorted(glob.glob(os.path.join(path, 'rhoana', '*'+str(z)+'.png')))
    rhoana = mh.imread(rhoana[0])
    rhoana_single = np.zeros((rhoana.shape[0], rhoana.shape[1]), dtype=np.uint32)
    rhoana_single[:, :] = rhoana[:,:,0]*256*256 + rhoana[:,:,1]*256 + rhoana[:,:,2]
    
    rhoanas[z] = rhoana_single
    
#
# create rhoana h5 for neuroproof
#
all_labels = mh.fullhistogram(rhoanas.astype(np.uint64))
all_labels = np.where(all_labels!=0)

transforms = np.zeros((all_labels[0].shape[0],2), dtype=np.uint32)
transforms[:,0] = all_labels[0]
transforms[:,1] = all_labels[0]

with h5py.File('/home/d/fp_data/training/c_rhoana2.h5', 'w') as hf:
    hf.create_dataset('stack', data=rhoanas)
    hf.create_dataset('transforms', data=transforms)

In [ ]:


In [6]:
import glob
import tifffile as tif
probs = np.zeros((250,2048,2048), dtype=np.uint8)

path = '/home/d/data/cylinderNEW/'
for z in range(0,250):
    prob = sorted(glob.glob(os.path.join(path, 'prob', '*'+str(z)+'.tif')))
    prob = tif.imread(prob[0])
    mask = sorted(glob.glob(os.path.join(path, 'mask', '*'+str(z)+'.png')))
    mask = mh.imread(mask[0]).astype(np.bool)
    masked_prob = prob
    masked_prob = 255 - masked_prob
    masked_prob[mask==0] = 0
    
    probs[z] = masked_prob
    

#
# create prob h5 for neuroproof
#
p1 = probs
# has to be x,y,z
p1 = p1.swapaxes(0,2)
p1 = p1.swapaxes(0,1)

p2 = p1.copy()
p2 = 255-p2
p_2channels = np.zeros((probs.shape[2],probs.shape[1],probs.shape[0],2), dtype=np.float32)
p_2channels[:,:,:,0] = p1 / 255.
p_2channels[:,:,:,1] = p2 / 255.
with h5py.File('/home/d/fp_data/training/c_prob2.h5', 'w') as hf:
    hf.create_dataset('volume/predictions', data=p_2channels)

In [19]:
sys.path.append('../gp/')

In [2]:
import h5py

In [7]:
hf = h5py.File('/home/d/FP/c_prob.h5', 'r')
print hf['volume/predictions'].value.shape


(2048, 2048, 250, 2)

In [12]:
imshow(hf['volume/predictions'][:,:,20,1])


Out[12]:
<matplotlib.image.AxesImage at 0x7f28ad4c5290>

In [10]:
hf['volume/predictions'][:,:,20,0].max()


Out[10]:
1.0

In [15]:
import glob, os
rhoanas = np.zeros((250,2048,2048), dtype=np.uint32)

path = '/home/d/cylinder/'
for z in range(0,250):
    rhoana = sorted(glob.glob(os.path.join(path, 'segmentation', '*_'+str(z).zfill(9)+'_segmentation.png')))
    rhoana = mh.imread(rhoana[0])
    rhoana_single = np.zeros((rhoana.shape[0], rhoana.shape[1]), dtype=np.uint32)
    rhoana_single[:, :] = rhoana[:,:,0]*256*256 + rhoana[:,:,1]*256 + rhoana[:,:,2]
    
    rhoanas[z] = rhoana_single
    
#
# create rhoana h5 for neuroproof
#
all_labels = mh.fullhistogram(rhoanas.astype(np.uint64))
all_labels = np.where(all_labels!=0)

transforms = np.zeros((all_labels[0].shape[0],2), dtype=np.uint32)
transforms[:,0] = all_labels[0]
transforms[:,1] = all_labels[0]

with h5py.File('/home/d/FP/c_rhoana.h5', 'w') as hf:
    hf.create_dataset('stack', data=rhoanas)
    hf.create_dataset('transforms', data=transforms)

In [ ]:
# TEST DATA (LAST 50 slices)

In [16]:
import glob, os
rhoanas = np.zeros((50,2048,2048), dtype=np.uint32)

path = '/home/d/cylinder/'
for i,z in enumerate(range(250,300)):
    rhoana = sorted(glob.glob(os.path.join(path, 'segmentation', '*_'+str(z).zfill(9)+'_segmentation.png')))
    rhoana = mh.imread(rhoana[0])
    rhoana_single = np.zeros((rhoana.shape[0], rhoana.shape[1]), dtype=np.uint32)
    rhoana_single[:, :] = rhoana[:,:,0]*256*256 + rhoana[:,:,1]*256 + rhoana[:,:,2]
    
    rhoanas[i] = rhoana_single
    
#
# create rhoana h5 for neuroproof
#
all_labels = mh.fullhistogram(rhoanas.astype(np.uint64))
all_labels = np.where(all_labels!=0)

transforms = np.zeros((all_labels[0].shape[0],2), dtype=np.uint32)
transforms[:,0] = all_labels[0]
transforms[:,1] = all_labels[0]

with h5py.File('/home/d/FP/test/c_rhoana.h5', 'w') as hf:
    hf.create_dataset('stack', data=rhoanas)
    hf.create_dataset('transforms', data=transforms)

In [20]:
import glob
import tifffile as tif
probs = np.zeros((50,2048,2048), dtype=np.uint8)

path = '/home/d/data/cylinderNEW/'
for i,z in enumerate(range(250,300)):
    prob = sorted(glob.glob(os.path.join(path, 'prob', '*'+str(z)+'.tif')))
    prob = tif.imread(prob[0])
    mask = sorted(glob.glob(os.path.join(path, 'mask', '*'+str(z)+'.png')))
    mask = mh.imread(mask[0]).astype(np.bool)
    masked_prob = prob
    masked_prob = 255 - masked_prob
    masked_prob[mask==0] = 0
    
    probs[i] = masked_prob
    

#
# create prob h5 for neuroproof
#
p1 = probs
# has to be x,y,z
p1 = p1.swapaxes(0,2)
p1 = p1.swapaxes(0,1)

p2 = p1.copy()
p2 = 255-p2
p_2channels = np.zeros((probs.shape[2],probs.shape[1],probs.shape[0],2), dtype=np.float32)
p_2channels[:,:,:,0] = p1 / 255.
p_2channels[:,:,:,1] = p2 / 255.
with h5py.File('/home/d/FP/test/c_prob.h5', 'w') as hf:
    hf.create_dataset('volume/predictions', data=p_2channels)

In [21]:
import glob
golds = np.zeros((50,2048,2048), dtype=np.uint32)

path = '/home/d/data/cylinderNEW/'
for i,z in enumerate(range(250,300)):
    gold = sorted(glob.glob(os.path.join(path, 'gold', '*'+str(z)+'.png')))
    gold = mh.imread(gold[0])
    gold_single = np.zeros((gold.shape[0], gold.shape[1]), dtype=np.uint32)
    gold_single[:, :] = gold[:,:,0]*256*256 + gold[:,:,1]*256 + gold[:,:,2]
    
    golds[i] = gold_single
#
# create gold h5 for neuroproof
#
all_labels = mh.fullhistogram(golds.astype(np.uint64))
all_labels = np.where(all_labels!=0)

transforms = np.zeros((all_labels[0].shape[0],2), dtype=np.uint32)
transforms[:,0] = all_labels[0]
transforms[:,1] = all_labels[0]
print 'generated transforms.'

with h5py.File('/home/d/FP/test/c_gold.h5', 'w') as hf:
    hf.create_dataset('stack', data=golds)
    hf.create_dataset('transforms', data=transforms)


generated transforms.

In [ ]: