found |= set(re.findall('cv2?\.\w+', code))\r
\r
cv2_used = found & cv2_callable\r
+cv2_unused = cv2_callable - cv2_used\r
+with open('unused_api.txt', 'w') as f:\r
+ f.write('\n'.join(sorted(cv2_unused)))\r
\r
r = 1.0 * len(cv2_used) / len(cv2_callable)\r
print '\ncv2 api coverage: %d / %d (%.1f%%)' % ( len(cv2_used), len(cv2_callable), r*100 )\r
+'''\r
+Lucas-Kanade tracker\r
+====================\r
+\r
+Lucas-Kanade sparse optical flow demo. Uses goodFeaturesToTrack\r
+for track initialization and back-tracking for match verification\r
+between frames.\r
+\r
+Usage\r
+-----\r
+lk_track.py [<video_source>]\r
+\r
+\r
+Keys\r
+----\r
+ESC - exit\r
+'''\r
+\r
import numpy as np\r
import cv2\r
import video\r
from common import anorm2, draw_str\r
from time import clock\r
\r
-help_message = '''\r
-USAGE: lk_track.py [<video_source>]\r
-\r
-Keys:\r
- SPACE - reset features\r
-'''\r
-\r
lk_params = dict( winSize = (15, 15), \r
maxLevel = 2, \r
criteria = (cv2.TERM_CRITERIA_EPS | cv2.TERM_CRITERIA_COUNT, 10, 0.03),\r
try: video_src = sys.argv[1]\r
except: video_src = 0\r
\r
- print help_message\r
+ print __doc__\r
App(video_src).run()\r
\r
if __name__ == '__main__':\r