mirror of https://github.com/opencv/opencv.git
Open Source Computer Vision Library
https://opencv.org/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
796 B
29 lines
796 B
#!/usr/bin/env python |
|
|
|
''' |
|
Utility for measuring python opencv API coverage by samples. |
|
''' |
|
|
|
# Python 2/3 compatibility |
|
from __future__ import print_function |
|
|
|
from glob import glob |
|
import cv2 as cv |
|
import re |
|
|
|
if __name__ == '__main__': |
|
cv2_callable = set(['cv.'+name for name in dir(cv) if callable( getattr(cv, name) )]) |
|
|
|
found = set() |
|
for fn in glob('*.py'): |
|
print(' --- ', fn) |
|
code = open(fn).read() |
|
found |= set(re.findall('cv2?\.\w+', code)) |
|
|
|
cv2_used = found & cv2_callable |
|
cv2_unused = cv2_callable - cv2_used |
|
with open('unused_api.txt', 'w') as f: |
|
f.write('\n'.join(sorted(cv2_unused))) |
|
|
|
r = 1.0 * len(cv2_used) / len(cv2_callable) |
|
print('\ncv api coverage: %d / %d (%.1f%%)' % ( len(cv2_used), len(cv2_callable), r*100 ))
|
|
|