1.代码速记
- cv2.getTickCount()
- cv2.getTickFrequency()
- time.time()
- cv2.useOptimized()
- cv2.setUseOptimized(False)
2.实战
(1)用opencv函数获取函数执行时间
def get_cv_time(self):
e1 = cv2.getTickCount()#从参考点到这个函数被执行的时钟数
for i in range(5, 49, 2):#用不同的核来进行中值模糊
img=cv2.medianBlur(self.img, i)
e2 = cv2.getTickCount()#从参考点到这个函数被执行的时钟数
t = (e2 - e1) / cv2.getTickFrequency() # 时钟频率 或者 每秒钟的时钟数
print(t) # 1.3738476076698682
(2)用python time库函数获取函数执行时间
import time
def get_time(self):
e1 = time.time()#从参考点到这个函数被执行的时钟数
for i in range(5, 49, 2):#用不同的核来进行中值模糊
img=cv2.medianBlur(self.img, i)
e2 = time.time()#从参考点到这个函数被执行的时钟数
t = (e2 - e1)
print(t) # 1.193786859512329
(3)检测和开启/关闭OpenCV的默认优化
def IPy_Time(self):
cv2.useOptimized()#检测是否开启了默认优化
cv2.setUseOptimized(False)#关闭默认优化
#%timeit IPython的魔法命令