Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Investigate performance effects of current structure

Ouverte
#18 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
25/100
Type d'issue
Refactorisation
Clarté
À clarifier
Activité
À l'abandon
Stack technique
opencv, python

Piste de recherche

Commencez par localiser les implémentations actuelles de VideoReader, LockedCamera et LockedScreen, puis comparez-les à des classes équivalentes utilisant directement cv2.VideoCapture. Comparez les opérations pertinentes dans les mêmes conditions ; le travail est considéré comme terminé lorsque la différence de performances est quantifiée et que le besoin de modifications structurelles ou de consignes d’utilisation est documenté.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

question

Motivation:

Every convenience comes at a cost, but quantifying the cost makes it possible to determine whether it's "too expensive".

Suggested Method

Currently use a combination of inheritance and composition, which make modification and new base classes really simple to implement and use, but may come at a performance cost. Would be good to quantify the difference between the current situation and e.g. the 'best-case' performance of VideoReader, LockedCamera, and LockedScreen being implemented with cv2.VideoCapture as their direct parent class.

Possible Resulting Changes

If performance difference is significant, it may be worth

  • making a code-generator that can trade off some program memory for the benefit of fewer function calls at each step
  • changing code structure (hard to recommend - very versatile at the moment, and repetition is a 'bad smell')
  • recommending this library for rapid development, and more optimised code once development is complete (e.g. lower level looping, or just C++ implementation)
Langage dominant
Python
Étoiles
45
Forks
3
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de ES-Alexander/pythonic-cv

Toutes les issues de ES-Alexander/pythonic-cv

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.