示例#1
0
import som4
import weights
import image


ow = 640 / 8
oh = 480 / 8

d = weights.data("weights")

img = image.image(ow, oh)

num_classes = img.get_all_images("./forest")
num_classes = img.get_all_images("./beach")

s = som4.som(ow * oh * 3, num_classes, 0.01)
s.init()

img.save_all()
print num_classes

for i in range(0, num_classes):
    dataset = img.get_data_set(i)
    indx = s.learn(dataset, str(i))
    print "-------------------- ", i
    for j in range(0, 400):
        print s.train(indx)

w, m = s.get_weights()
d.save(ow, oh, num_classes, w, m)
示例#2
0
import weights
import image


ow = 640 / 8
oh = 480 / 8

d = weights.data("weights")
ow, oh, inp, w, m = d.load()

print "w = ", ow, " h = ", oh, " classes = ", inp

img1 = image.image(ow, oh)
img2 = image.image(ow, oh)

s = som4.som(ow * oh * 3, inp, 0.01)
s.init()
print len(s.get_weights()[0]), " ", len(w)
s.put_weights(w, m)

nb = img1.get_all_images("./test/b")
nf = img2.get_all_images("./test/f")

print "beach test\n"

for i in range(0, nb):

    dataset = img1.get_data_set(i)
    name = img1.get_name(i)
    ct = int(s.find(dataset))