In [5]:
import amitgroup as ag
In [6]:
import numpy as np
a = range(10)
img = ag.io.load_mnist("training",[4], selection= slice(100),return_labels=False)
In [7]:
import amitgroup.plot as gr
In [8]:
gr.images(img)
In [9]:
img2 = ag.io.load_mnist("training",[9], selection= slice(100),return_labels=False)
gr.images(img2)
In [10]:
img3 = ag.io.load_mnist("training",[7], selection= slice(100),return_labels=False)
gr.images(img3)
In [11]:
img4 = ag.io.load_mnist("training",[1], selection= slice(100),return_labels=False)
gr.images(img4)
In [12]:
import amitgroup as ag
import pnet
In [ ]:
edgeLayer = pnet.EdgeLayer(k=5, radius=1, spread='orthogonal', minimum_contrast=0.05)
#pnet.IntensityThresholdLayer(),
In [98]:
partsLayer = pnet.PartsLayer(20, (6, 6), settings=dict(outer_frame=0,
threshold=150,
samples_per_image=200,
max_samples=100000,
min_prob=0.005,
))
In [99]:
a = range(10)
img = ag.io.load_mnist("training",a, selection= slice(1000),return_labels=False)
In [94]:
edgeLayer.train(img)
In [95]:
imgEdges = edgeLayer.extract(img)
In [96]:
imgEdges.shape
Out[96]:
In [100]:
patches, originalPatches = partsLayer._get_patches(imgEdges,img)
In [23]:
type(patches)
Out[23]:
In [101]:
originalPatches.shape
Out[101]:
In [89]:
gr.images(originalPatches[0:100])
In [90]:
partsLayer.train_from_samples(patches,originalPatches)
In [ ]:
extractedFeature,num = partsLayer.extract(patches)
In [ ]:
meanPart = np.array([originalPatches[extractedFeature[:,0,0,0]==k].mean(axis = 0) for k in range(partsLayer._num_parts)])
In [81]:
totalFeature.shape
Out[81]:
In [75]:
originalPatches[extractedFeature[:,0,0,0]==2].shape
Out[75]:
In [ ]:
meanPart.shape
In [ ]:
gr.images(meanPart)
In [ ]: