Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Investigate performance effects of current structure

Offen
#18 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Refactoring
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
opencv, python

Rechercherichtung

Beginne damit, die aktuellen Implementierungen von VideoReader, LockedCamera und LockedScreen zu lokalisieren, und vergleiche sie mit gleichwertigen Klassen, die cv2.VideoCapture direkt verwenden. Vergleiche die relevanten Operationen unter denselben Bedingungen; abgeschlossen ist die Aufgabe, wenn der Performanceunterschied quantifiziert und der Bedarf an strukturellen Änderungen oder Nutzungshinweisen dokumentiert ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

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)
Vorherrschende Sprache
Python
Sterne
45
Forks
3
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Entwicklungsumgebung

Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus ES-Alexander/pythonic-cv

Alle Issues in ES-Alexander/pythonic-cv

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.