Mercurial Hosting > traffic-intelligence
view scripts/play-video.py @ 372:349eb1e09f45
Cleaned the methods/functions indicating if a point is in a polygon
In general, shapely should be used, especially for lots of points:
from shapely.geometry import Polygon, Point
poly = Polygon(array([[0,0],[0,1],[1,1],[1,0]]))
p = Point(0.5,0.5)
poly.contains(p) -> returns True
poly.contains(Point(-1,-1)) -> returns False
You can convert a moving.Point to a shapely point: p = moving.Point(1,2) p.asShapely() returns the equivalent shapely point
If you have several points to test, use moving.pointsInPolygon(points, polygon) where points are moving.Point and polygon is a shapely polygon.
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Tue, 16 Jul 2013 17:00:17 -0400 |
parents | 1d90e9080cb2 |
children | 1917db662aa7 |
line wrap: on
line source
#! /usr/bin/env python import sys,getopt import cvutils options, args = getopt.getopt(sys.argv[1:], 'hi:f:',['help', 'fps=']) options = dict(options) print options if '--help' in options.keys() or '-h' in options.keys() or len(sys.argv) == 1: print('Usage: '+sys.argv[0]+' --help|-h -i video-filename [-f first_frame] [--fps frame_rate]') sys.exit() firstFrameNum = 0 if '-f' in options.keys(): firstFrameNum = int(options['-f']) frameRate = -1 if '--fps' in options.keys(): frameRate = int(options['--fps']) cvutils.playVideo(options['-i'], firstFrameNum, frameRate)