changeset 757:61248f2cd459 dev

removed old code for TTC computation from Sohail Zangenehpour
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Tue, 03 Nov 2015 13:48:28 -0500
parents a73f43aac00e
children 0a05883216cf a05b70f307dd
files samples/TTC/Video.png samples/TTC/bikeDes.png samples/TTC/bikeOri.png samples/TTC/carDes.png samples/TTC/carOri.png samples/TTC/computeTTC.py samples/TTC/ttcCompare.py
diffstat 7 files changed, 0 insertions(+), 112 deletions(-) [+]
line wrap: on
line diff
Binary file samples/TTC/Video.png has changed
Binary file samples/TTC/bikeDes.png has changed
Binary file samples/TTC/bikeOri.png has changed
Binary file samples/TTC/carDes.png has changed
Binary file samples/TTC/carOri.png has changed
--- a/samples/TTC/computeTTC.py	Fri Oct 30 17:57:09 2015 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-def computeTTC(databaseFilename,homography,framePerSecond,videoX,videoY,collisionDistanceThreshold,bikAreaOri,bikAreaDes,carAreaOri,carAreaDes):
-
-    import numpy as np
-    import sys
-    sys.path.append('/home/sohail/trafficintelligence/python/')
-    import moving, cvutils, storage
-    import timeToCollision
-
-    print 'Loading database...'
-    objects = storage.loadTrajectoriesFromSqlite(databaseFilename, 'object')
-
-    bikCount=0
-    carCount=0
-    bik=[]
-    car=[]
-    bikSpeed=[]
-    carSpeed=[]
-
-    for obj in objects:
-	    inCarAreaOri = False
-	    inBikAreaOri = False
-	    for time in obj.getTimeInterval():
-		x=int(obj.getPositionAtInstant(time).project(homography).x)
-		y=int(obj.getPositionAtInstant(time).project(homography).y)
-		x=min(videoX-1,x)
-		y=min(videoY-1,y)
-		if bikAreaOri[y,x] == 1 and obj.userType == moving.userType2Num['bicycle']:
-		    inBikAreaOri = True
-		if bikAreaDes[y,x] == 1 and inBikAreaOri == True:
-		    bikCount += 1
-		    bik.append(obj)
-		    bikSpeed.append(framePerSecond*3.6*np.median(obj.getSpeeds()))
-		    break
-		if carAreaOri[y,x] == 1 and obj.userType == moving.userType2Num['car']:
-		    inCarAreaOri = True
-		if carAreaDes[y,x] == 1 and inCarAreaOri == True:
-		    carCount += 1
-		    car.append(obj)
-		    carSpeed.append(framePerSecond*3.6*np.median(obj.getSpeeds()))
-		    break
-
-    print 'Computing TTC...'
-    TTC=[]
-    potCollision=0
-    for obj1 in bik:
-	for obj2 in car:
-	    ti1=obj1.getTimeInterval()
-	    ti2=obj2.getTimeInterval()
-	    if ti1.first < ti2.last and ti2.first < ti1.last:
-		potCollision += 1
-		ttc=[]
-		for frameNum in range(max(ti1.first,ti2.first),min(ti1.last,ti2.last)):
-		    ttcp=timeToCollision.timeToCollision(obj1,obj2,collisionDistanceThreshold,frameNum,framePerSecond)
-		    if ttcp < 100:
-			ttc.append(ttcp)
-		if ttc != []:
-		    ttc.sort()
-	            TTC.append(ttc[int(.15*len(ttc))])
-
-    return bikCount,carCount,bikSpeed,carSpeed,TTC,potCollision
-
--- a/samples/TTC/ttcCompare.py	Fri Oct 30 17:57:09 2015 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-import matplotlib.image as mpimg
-from numpy.linalg.linalg import inv
-from numpy import loadtxt
-import computeTTC
-import numpy as np
-import glob
-
-#databaseName = ['11.sqlite']
-databaseName = glob.glob("*.sqlite")
-
-bikOri = mpimg.imread('bikeOri.png')
-bikAreaOri = bikOri[:,:,0]
-bikDes = mpimg.imread('bikeDes.png')
-bikAreaDes = bikDes[:,:,0]
-carOri = mpimg.imread('carOri.png')
-carAreaOri = carOri[:,:,0]
-carDes = mpimg.imread('carDes.png')
-carAreaDes = carDes[:,:,0]
-
-videoY = bikOri.shape[0]
-videoX = bikOri.shape[1]
-
-homography=inv(loadtxt('homography.txt'))
-framePerSecond=15
-collisionDistanceThreshold=10
-
-bikCount=0
-carCount=0
-bikSpeed=[]
-carSpeed=[]
-ttcDist=[]
-potentioalCollision=0
-
-for d in databaseName:
-    print d
-    bc,cc,bs,cs,ttcdist,potCollision = computeTTC.computeTTC(d,homography,framePerSecond,videoX,videoY,collisionDistanceThreshold,bikAreaOri,bikAreaDes,carAreaOri,carAreaDes)
-    bikCount += bc
-    carCount += cc
-    bikSpeed.extend(bs)
-    carSpeed.extend(cs)
-    ttcDist.extend(ttcdist)
-    potentioalCollision += potCollision
-
-print 'bikCount :', bikCount
-print 'carCount :', carCount
-print 'Number of Potential Collisions :', potentioalCollision
-np.savetxt('ttc.txt',ttcDist,fmt='%1.2f')
-np.savetxt('freq.txt',[bikCount,carCount,potentioalCollision],fmt='%i')
-np.savetxt('bikSpeed.txt',bikSpeed,fmt='%1.2f')
-np.savetxt('carSpeed.txt',carSpeed,fmt='%1.2f')
-