Mercurial Hosting > traffic-intelligence
diff scripts/learn-motion-patterns.py @ 844:5a68779d7777
added capability to save prototypes
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Thu, 14 Jul 2016 00:34:59 -0400 |
parents | 5dc7a507353e |
children | 0cb69238e6f5 |
line wrap: on
line diff
--- a/scripts/learn-motion-patterns.py Wed Jul 13 23:45:47 2016 -0400 +++ b/scripts/learn-motion-patterns.py Thu Jul 14 00:34:59 2016 -0400 @@ -50,13 +50,16 @@ prototypeIndices, labels = ml.prototypeCluster(trajectories, similarities, args.minSimilarity, lambda x,y : lcss.computeNormalized(x, y), args.minClusterSize, args.randomInitialization) # this line can be called again without reinitializing similarities -print(ml.computeClusterSizes(labels, prototypeIndices, -1)) +clusterSizes = ml.computeClusterSizes(labels, prototypeIndices, -1) +print(clusterSizes) + +storage.savePrototypesToSqlite(args.databaseFilename, [objects[i].getNum() for i in prototypeIndices], args.trajectoryType, {objects[i].getNum():clusterSizes[i] for i in prototypeIndices}) if args.saveSimilarities: - np.savetxt(utils.removeExtension(args.databaseFilename)+'-prototype-similarities.txt.gz', similarities, '%.4') + np.savetxt(utils.removeExtension(args.databaseFilename)+'-prototype-similarities.txt.gz', similarities, '%.4f') if args.display: - from matplotlib.pyplot import figure, show + from matplotlib.pyplot import figure, show, axis figure() for i,o in enumerate(objects): if i not in prototypeIndices: @@ -66,6 +69,7 @@ o.plot(utils.colors[labels[i]]) for i in prototypeIndices: objects[i].plot(utils.colors[i]+'o') + axis('equal') show() # TODO store the prototypes trajectories, add option so store similarities (the most expensive stuff) with limited accuracy