Python - 创建一个考虑执行时间的延迟

时间:2015-06-08 15:40:23

标签: python image-processing time delay

我正在编写一个函数,在一秒内从bin文件读取N(800 * 600)帧。 FPS是用户可控的

import time

def getFrame(file,N):  #read N frames per second, 800X600 pixels each from file
    start = time.time()
    delay = (1/float(N))
    while N:
        frame = file.read(480000)
        time.sleep(delay)
        N -= 1
    print time.time()-start
    return

time.sleep()创建延迟,但不考虑其余代码的执行时间。 总的来说,运行时间总是大于1秒,随着我增加N(fps)值,它会递增。

有没有办法创建一个考虑处理时间的延迟?

1 个答案:

答案 0 :(得分:3)

嗯......你需要基本的数学

time.sleep(delay-(time.time()-start))
相关问题