Skip to main content

cvflair

PyPI CI Python 3.10+ İndirme License: MIT

Bilgisayarlı görü tespitlerini üç satırda, hazır temalarla ekrana çizen ince bir katman.

Kamera döngüsü, temalar ve çizim tek pakette; numpy ve opencv dışında bağımlılığı yok. Model bağımsızdır: kutu üreten her kaynak (YOLO, MediaPipe, InsightFace veya özel bir model) aynı temayla çizilir.

cvflair demo

Aynı tespitler, dört tema. tools/make_demo_gif.py ile üretildi: docs/city.png üzerine çizilen kutular. Başka bir görsel için --background <yol>.

Sekiz çerçeve biçimi, beş hazır tema — hepsi tek Theme(...) satırıyla. Hiçbirini kurmadan denemek için: tema playground → Ayarları oynat, hazır Python kodunu kopyala; sayfa tamamen tarayıcıda çalışır.

çerçeve biçimleri

Kurulum

Python 3.10 veya üzeri gerekir.

pip install cvflair

YOLO ile kullanmak için Ultralytics extra'sı (lisans notu aşağıda):

pip install "cvflair[yolo]"

Hızlı başlangıç

from cvflair import Camera

cam = Camera(source=0, theme="neon")
for frame in cam.stream():
    cam.show(frame)

Kamera açılır, kareler ayrı bir thread'de okunur, pencere q veya ESC ile kapanır — release() çağırmaya, while True kurmaya gerek yok.

Bu akışta ekranda ham kare görünür: tema ancak ortada tespit varken çizim yapar. Bir model bağlandığında her adım (kare, tespitler) çiftine dönüşür ve tema otomatik uygulanır:

cam = Camera(source=0, theme="hud")
for frame, detections in cam.stream(model="yolov8n.pt"):
    cam.show(frame, detections)

model yerine Detections döndüren kendi fonksiyonunu da verebilirsin — kütüphaneyi model-agnostik yapan yer orası.

Belgeler

Temalar ve çerçeve biçimleri Beş tema, sekiz biçim, ikinci renk, renk paleti, sayaç paneli, kendi temanı yazmak
Model bağlama ve tespitler stream(model=...), kendi detektörün, Detections, Ultralytics ayarları, video dosyaları
API özeti ve iç işleyiş Bütün genel arayüz, thread ve kuyruk davranışı, ölçülmüş performans
Örnek galerisi Dokuz çalışan örnek; hangisi kamera istiyor, hangisi istemiyor
Katkı rehberi Kurulum, kapsam sınırları, yeni tema ekleme adımları

Kameran yoksa bile çalışan üç örnek var:

python examples/motion_detection.py       # gerçek tespit, sinir ağı yok (kamera ister)
python examples/theme_preview.py          # kamerasız, her temayı bir PNG'ye çizer
python examples/video_file.py girdi.mp4   # dosyayı işleyip işaretlenmiş kopyasını yazar

Neden bu tasarım

  • Kuyruk tek slotlu. Yeni kare gelince bekleyen eski kare düşürülür; işleme yavaşladığında gecikme birikmez, ekranda hep en güncel kare olur. Video dosyası için drop_frames=False bunu tersine çevirir.
  • Çizim nesneleri bir kere kurulur, her karede yeniden kullanılır.
  • Bağımlılık yüzeyi kasten dar. import cvflair ~0,3 saniye, kurulum ~170 MB (neredeyse tamamı opencv + numpy).
  • Model paketin dışında. Hiçbir ağırlık veya model kodu pakete gömülü değil.

Ölçülmüş rakamlar ve gerekçeleri: API ve iç işleyiş.

Geliştirme

git clone https://github.com/kbycode/cvflair.git
cd cvflair
pip install -e ".[dev]"

pytest              # kamera gerektirmez
ruff check .
mypy                # paket py.typed gönderiyor, tip iddiası denetleniyor

Ayrıntılar ve katkı akışı: CONTRIBUTING.md

Lisans

MIT — bkz. LICENSE. Bağımlılıkların ikisi de izin verici lisanslı (opencv-python Apache 2.0, numpy BSD).

YOLO ağırlıkları veya Ultralytics kodu bu pakete gömülü değildir; Ultralytics'in kullanılması hâlinde AGPL-3.0 koşulları onu kullanan projenin sorumluluğundadır.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cvflair-0.8.1.tar.gz (51.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cvflair-0.8.1-py3-none-any.whl (24.6 kB view details)

Uploaded Python 3

File details

Details for the file cvflair-0.8.1.tar.gz.

File metadata

  • Download URL: cvflair-0.8.1.tar.gz
  • Upload date:
  • Size: 51.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for cvflair-0.8.1.tar.gz
Algorithm Hash digest
SHA256 6eeacf382d572d4e29e3791c1251fe4f2ba1c57a3e0d230416963492e54a8145
MD5 8c7704af28fb77ef49bcfede49230981
BLAKE2b-256 6d48ed353e98406a55a2fd3530f86518e7e89e24939498a3382443a0a4ce3421

See more details on using hashes here.

Provenance

The following attestation bundles were made for cvflair-0.8.1.tar.gz:

Publisher: release.yml on kbycode/cvflair

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cvflair-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: cvflair-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 24.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for cvflair-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bc8412647f1d7c6628b697111cf68657a7cae6ba77d5e4831297f5bcb94fc65b
MD5 1672b409dda92496af667dc4effbf60e
BLAKE2b-256 f0920ae8479424139af38f31d3b744c3cc14d9f73a0190b5155cac782240ed5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for cvflair-0.8.1-py3-none-any.whl:

Publisher: release.yml on kbycode/cvflair

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page