Mesure FPS simple de python

Je veux connaître la vitesse de traitement en boucle d'un programme Python. Le moyen le plus sûr est d'utiliser un profileur, mais je veux couper les coins ronds et afficher facilement le FPS (image par seconde).

fps.py


import time, sys
import Queue
import numpy as np

class fpsCalculator(object):
    def __init__(self, length=5):
        self.times = Queue.LifoQueue()
        self.length = length
        self.fpsHist = []

    def tick_tack(self):
        if self.times.qsize() < self.length:
            self.times.put(time.time())

        elif self.times.qsize() == self.length:
            begin = self.times.get()
            end = time.time()
            self.times.put(end)
            fps = self.length / (end - begin)
            sys.stdout.write("\r FPS: %2.2f " % fps)
            sys.stdout.flush()

            self.fpsHist.append(fps)

    def getFPS(self):
        return np.average(np.array(self.fpsHist[1:]))

fps = fpsCalculator()

while True:
    try:
        fps.tick_tack()
        time.sleep(0.1)
    except KeyboardInterrupt:
        break

print 'average of fps = ', fps.getFPS()

Cependant, cela n'entraîne pas fps = 60.

Recommended Posts

Mesure FPS simple de python
mesure du temps python
Les bases de Python ①
Bases de python ①
Copie de python
Introduction de Python
Automatiser des tâches simples avec Python Table des matières
Comparaison simple des bibliothèques Python qui exploitent Excel
Liste des modules python
GRPC simple en Python
Unification de l'environnement Python
Copie des préférences python
Principes de base du grattage Python
[python] comportement d'argmax
Utilisation des locaux Python ()
le zen de Python
Changer le FPS de Maya Python
Logiciel de sécurité Python-Simple
# 4 [python] Bases des fonctions
Connaissance de base de Python
Anecdotes sobres de python3
Résumé des arguments Python
Mesure du temps d'exécution
Sélection des données de mesure
Bases de python: sortie
Installation de matplotlib (Python 3.3.2)
Application de Python 3 vars
Divers traitements de Python
Python - Échantillon multi-thread simple
Exemple d'implémentation d'un système de traitement LISP simple (version Python)
[Python] [Word] [python-docx] Analyse simple des données de diff en utilisant python
Calculer le coefficient de régression d'une analyse de régression simple avec python
[Python] Utilisation correcte de la carte
Vers la retraite de Python2
Mémo de mesure du temps d'exécution Python
Utiliser le protocole de mesure avec Python
Résumé des opérations de liste Python3
Un simple exemple de pivot_table.
Python - Démarrage rapide de la journalisation
Recommandation de la bibliothèque binpacking de python
[python] Valeur de l'objet fonction (?)
Mise à jour automatique du module Python
Python - Vérifiez le type de valeurs
Analyse statique des programmes Python
À propos de divers encodages de Python 3
Jugement d'équivalence d'objet en Python
Introduction d'activités appliquant Python
python> Gestion des tableaux 2D
Installer plusieurs versions de Python
Mise à niveau de python Anaconda
Manipulation de python sur mac
python: principes de base de l'utilisation de scikit-learn ①
# 1 [python3] Calcul simple à l'aide de variables
2.x, 3.x code de caractères des séries python
Comparaison de 4 types de frameworks Web Python
Mesure du temps d'exécution avec Python avec
Simulation simple de l'infection virale
Vérifiez la version OpenSSL de python 2.6
[Avec une explication simple] Implémentation Scratch d'une machine Boltsman profonde avec Python ②
Implémentation Python du filtre à particules