In [1]:
# import modules
% matplotlib inline
import os
import time
import h5py
import pylab
import random
import pandas as pd
import numpy as np
import cPickle as pkl
from lasagne import layers, updates
from scipy.misc import imread, imresize
from lasagne.nonlinearities import softmax
from nolearn.lasagne import NeuralNet, BatchIterator
icdar_root = 'icdar03/train/case-sensitive-train.mat'
project_root = 'workspace/.project/project'
data_root = os.path.join(os.path.expanduser('~'), project_root, 'datasets')
model_root = os.path.join(os.path.expanduser('~'), project_root, 'models')
In [2]:
f = h5py.File(os.path.join(data_root, icdar_root), "r")
In [3]:
f.keys()
Out[3]:
In [4]:
som1 = f['gt']['images']
som2 = f['gt']['labels']
In [ ]:
start_time = time.time()
som1_np = []
for i in som1:
for j in f[i.item()]:
som1_np.append(np.array(f[j.item()]).T)
images = np.stack(som1_np)
print time.time() - start_time
In [76]:
som1_np[1].shape
Out[76]:
In [77]:
i = random.randrange(0, images.shape[0])
pylab.imshow(images[i])
pylab.gray()
pylab.axis('off')
pylab.show()
In [78]:
images.shape[0]
Out[78]:
In [85]:
start_time = time.time()
som2_np = []
for i in som2:
for j in f[i.item()]:
print chr(j);break
#som2_np.append(f[j.item()])
#labels = np.stack(som2_np)
#print time.time() - start_time
In [5]:
start_time = time.time()
no_in_class = []
for i in som1:
cnt = 0
for j in f[i.item()]:
cnt += 1
no_in_class.append(cnt)
print time.time() - start_time
In [6]:
no_in_class
Out[6]:
In [ ]: