opencv 학습 프로그램 성능 검사 및 최적화

1269 단어 opencv 학습
cv2.getTickCount () 함수는 참고점에서 이 함수로 실행된 시계 수를 되돌려줍니다.그래서 한 함수의 실행 전후에 그것을 호출하면 이 함수의 실행 시간 (시계수) 을 얻을 수 있다.cv2.getTickFrequency () 는 시계 주파수를 되돌려주거나 초당 시계 수를 되돌려줍니다.그래서 너는 아래의 방식에 따라 함수가 몇 초 동안 운행되었는지 얻을 수 있다
import cv2
import numpy as np


e1 = cv2.getTickCount()
# your code execution
e2 = cv2.getTickCount()
time = (e2 - e1)/ cv2.getTickFrequency()
print(time)

#2.666665481482008e-06
import cv2
import numpy as np
img1 = cv2.imread('1.jpg')
e1 = cv2.getTickCount()
for i in range(5,49,2):                                 #       (5,7,9)          
    img1 = cv2.medianBlur(img1,i)
e2 = cv2.getTickCount()
t = (e2 - e1)/cv2.getTickFrequency()
print (t)

#0.3206749685889029

주의: 당신은 타임 모듈로 상기 기능을 실현할 수 있습니다. 필요한 함수는 타임입니다.cv2가 아닌 time ()getTickCount, 두 결과의 차이를 비교합니다.
cv2.useOptimized () 를 사용하여 최적화가 cv2에 열려 있는지 확인합니다.setUseOptimized()로 최적화를 시작합니다.
import cv2
import numpy as np
img = cv2.imread('1.png')
print(cv2.useOptimized()) # True
 
# % timeit res = cv2.medianBlur(img, 49)
# 10 loops, best of 3: 34.9 ms per loop
 
cv2.setUseOptimized(False)
print(cv2.useOptimized()) # False
 
# % timeit res = cv2.medianBlur(img, 49)
# 10 loops, best of 3: 64.1 ms per loop

좋은 웹페이지 즐겨찾기