Mercurial Hosting > traffic-intelligence
comparison trafficintelligence/moving.py @ 1240:bb14f919d1cb
cleaned use of centile (np only) and added info in classify-objects
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Mon, 05 Feb 2024 14:14:14 -0500 |
parents | d5695e0b59d9 |
children | ab4c72b9475c |
comparison
equal
deleted
inserted
replaced
1239:31173c4699d2 | 1240:bb14f919d1cb |
---|---|
2 '''Libraries for moving objects, trajectories...''' | 2 '''Libraries for moving objects, trajectories...''' |
3 | 3 |
4 import copy | 4 import copy |
5 from math import sqrt, atan2, cos, sin | 5 from math import sqrt, atan2, cos, sin |
6 | 6 |
7 from numpy import median, mean, array, arange, zeros, ones, hypot, NaN, std, floor, ceil, float32, argwhere, minimum, issubdtype, integer as npinteger | 7 from numpy import median, mean, array, arange, zeros, ones, hypot, NaN, std, floor, ceil, float32, argwhere, minimum, issubdtype, integer as npinteger, percentile |
8 from matplotlib.pyplot import plot, text, arrow | 8 from matplotlib.pyplot import plot, text, arrow |
9 from scipy.stats import scoreatpercentile | |
10 from scipy.spatial.distance import cdist | 9 from scipy.spatial.distance import cdist |
11 from scipy.signal import savgol_filter | 10 from scipy.signal import savgol_filter |
12 | 11 |
13 try: | 12 try: |
14 from shapely.geometry import Polygon, Point as shapelyPoint | 13 from shapely.geometry import Polygon, Point as shapelyPoint |
1848 cvutils.displayTrajectories(videoFilename, [self], homography = homography, firstFrameNum = self.getFirstInstant(), lastFrameNumArg = self.getLastInstant(), undistort = undistort, intrinsicCameraMatrix = intrinsicCameraMatrix, distortionCoefficients = distortionCoefficients, undistortedImageMultiplication = undistortedImageMultiplication) | 1847 cvutils.displayTrajectories(videoFilename, [self], homography = homography, firstFrameNum = self.getFirstInstant(), lastFrameNumArg = self.getLastInstant(), undistort = undistort, intrinsicCameraMatrix = intrinsicCameraMatrix, distortionCoefficients = distortionCoefficients, undistortedImageMultiplication = undistortedImageMultiplication) |
1849 | 1848 |
1850 def speedDiagnostics(self, framerate = 1., display = False, nInstantsIgnoredAtEnds=0): | 1849 def speedDiagnostics(self, framerate = 1., display = False, nInstantsIgnoredAtEnds=0): |
1851 speeds = framerate*self.getSpeeds(nInstantsIgnoredAtEnds) | 1850 speeds = framerate*self.getSpeeds(nInstantsIgnoredAtEnds) |
1852 coef = utils.linearRegression(list(range(len(speeds))), speeds) | 1851 coef = utils.linearRegression(list(range(len(speeds))), speeds) |
1853 print('min/5th perc speed: {} / {}\nspeed diff: {}\nspeed stdev: {}\nregression: {}'.format(min(speeds), scoreatpercentile(speeds, 5), speeds[-2]-speeds[1], std(speeds), coef[0])) | 1852 print('min/5th perc speed: {} / {}\nspeed diff: {}\nspeed stdev: {}\nregression: {}'.format(min(speeds), percentile(speeds, 5), speeds[-2]-speeds[1], std(speeds), coef[0])) |
1854 if display: | 1853 if display: |
1855 from matplotlib.pyplot import figure, axis | 1854 from matplotlib.pyplot import figure, axis |
1856 figure(1) | 1855 figure(1) |
1857 self.plot() | 1856 self.plot() |
1858 axis('equal') | 1857 axis('equal') |