Mercurial > hg > nsaunier > traffic-intelligence
comparison trafficintelligence/cvutils.py @ 1112:956a66096e91
removed code now available in simulation project, and issue with deprecated find function in matplotlib
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Wed, 05 Jun 2019 13:12:10 -0400 |
| parents | c6cf75a2ed08 |
| children | b358bed29ab4 |
comparison
equal
deleted
inserted
replaced
| 1111:345cd9cd62d8 | 1112:956a66096e91 |
|---|---|
| 5 from os import listdir | 5 from os import listdir |
| 6 from subprocess import run | 6 from subprocess import run |
| 7 from math import floor, log10, ceil | 7 from math import floor, log10, ceil |
| 8 from time import time | 8 from time import time |
| 9 | 9 |
| 10 from numpy import dot, array, append, float32, loadtxt, savetxt, append, zeros, ones, identity, abs as npabs, logical_and, unravel_index, sum as npsum, isnan, mgrid, median, floor as npfloor, ceil as npceil | 10 from numpy import dot, array, append, float32, loadtxt, savetxt, append, zeros, ones, identity, abs as npabs, logical_and, unravel_index, sum as npsum, isnan, mgrid, median, floor as npfloor, ceil as npceil, nonzero |
| 11 from numpy.linalg import inv | 11 from numpy.linalg import inv |
| 12 from matplotlib.mlab import find | |
| 13 from matplotlib.pyplot import imread, imsave, imshow, figure, subplot | 12 from matplotlib.pyplot import imread, imsave, imshow, figure, subplot |
| 14 | 13 |
| 15 try: | 14 try: |
| 16 import cv2 | 15 import cv2 |
| 17 opencvAvailable = True | 16 opencvAvailable = True |
| 426 to distorted (original image) | 425 to distorted (original image) |
| 427 map1(x,y) = originalx, originaly''' | 426 map1(x,y) = originalx, originaly''' |
| 428 distx = npabs(map1-x) | 427 distx = npabs(map1-x) |
| 429 disty = npabs(map2-y) | 428 disty = npabs(map2-y) |
| 430 indices = logical_and(distx<maxDistance, disty<maxDistance) | 429 indices = logical_and(distx<maxDistance, disty<maxDistance) |
| 431 closeCoordinates = unravel_index(find(indices), distx.shape) # returns i,j, ie y,x | 430 closeCoordinates = unravel_index(nonzero(indices), distx.shape) # returns i,j, ie y,x |
| 432 xWeights = 1-distx[indices] | 431 xWeights = 1-distx[indices] |
| 433 yWeights = 1-disty[indices] | 432 yWeights = 1-disty[indices] |
| 434 return dot(xWeights, closeCoordinates[1])/npsum(xWeights), dot(yWeights, closeCoordinates[0])/npsum(yWeights) | 433 return dot(xWeights, closeCoordinates[1])/npsum(xWeights), dot(yWeights, closeCoordinates[0])/npsum(yWeights) |
| 435 | 434 |
| 436 def undistortTrajectoryFromCVMapping(map1, map2, t): | 435 def undistortTrajectoryFromCVMapping(map1, map2, t): |
