Учёт затраченного времени

Если после запуска программы изображение периодически "подвисает", это означает, что частота кадров (FPS) низкая.

Подсчёт FPS

import csi, image, time
csi0 = csi.CSI()

csi0.reset()                      # Сброс и инициализация датчика.
csi0.pixformat(csi.RGB565) # Установить формат пикселей RGB565 (или GRAYSCALE)
csi0.framesize(csi.QVGA)   # Установить размер кадра QVGA (320x240)
csi0.snapshot(frames=10)              # Дождаться применения настроек.
clock = time.clock()                # Создать объект clock для отслеживания FPS.

while(True):
    clock.tick()                    # Обновить счётчик FPS.
    img = csi0.snapshot()         # Сделать снимок и вернуть изображение.
    print(clock.fps())

Отслеживайте частоту кадров с помощью time.clock().

Если частота кадров низкая, вы можете вычислить время, затраченное на

разные этапы, с помощью millis(). Так можно измерить, на каком именно этапе программа тратит больше всего времени.

Пример:

import csi, image, time
csi0 = csi.CSI()

csi0.reset()
csi0.pixformat(csi.RGB565)
csi0.framesize(csi.QVGA)
csi0.snapshot(time = 2000)

clock = time.clock()

while(True):
    time_start = time.ticks_ms()
    img = csi0.snapshot()
    time_end = time.ticks_ms()
    print(time_end - time_start)

Используйте pyb.millis(), чтобы зафиксировать начальное время.

Затем, спустя некоторый промежуток времени, найдите разницу и вычислите затраченное время.

results matching ""

    No results matching ""