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>.

Dokuz çerçeve biçimi, beş hazır tema, el ve poz iskeleti — hepsi tek Theme(...) satırıyla. Hiçbirini kurmadan denemek için: tema playground → Önizlemede kutu ve iskelet kipleri ayrı ayrı denenebiliyor. Ayarları oynat, hazır Python kodunu kopyala; sayfa tamamen tarayıcıda çalışır.

çerçeve biçimleri

Kutunun üstüne binen çizimler de var: kilitlenme nabzı ve takip edilen nesnenin bıraktığı iz.

nabız ve iz

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ı.

Kutuların yanında el ve poz iskeleti de çizilir; noktalar yine senin modelinden gelir:

from cvflair import HAND_21, KeyPoints

cam.show(frame, keypoints=KeyPoints(xy=el_noktalari), skeleton=HAND_21)

Belgeler

Temalar ve çerçeve biçimleri Beş tema, dokuz biçim, nabız ve iz, ikinci renk, renk paleti, sayaç paneli, kendi temanı yazmak
Nokta ve iskelet çizimi El ve poz iskeletleri, KeyPoints, hazır topolojiler, kendi iskeletin
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 On ç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.10.0.tar.gz (73.6 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.10.0-py3-none-any.whl (35.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for cvflair-0.10.0.tar.gz
Algorithm Hash digest
SHA256 ae264fc8058a40aaf2835e1caeebedf3df6836e9804324fe5e532c4ae1b47625
MD5 f6962d843d69cd09157ab2c52c59f179
BLAKE2b-256 e0c76af8e0fc47d024e61b3f0b321de823588da0b59fd34493889b243b96bd76

See more details on using hashes here.

Provenance

The following attestation bundles were made for cvflair-0.10.0.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.10.0-py3-none-any.whl.

File metadata

  • Download URL: cvflair-0.10.0-py3-none-any.whl
  • Upload date:
  • Size: 35.8 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.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5389a055821bcb3dc3e5dfd9b369bf84a602e1047b9762e07f690cb401e525a9
MD5 b0570f13d13a048b988a4f3788fbcc72
BLAKE2b-256 07881355f5d4a8798a4a9141d8ff644e0a76bbab3e28ab2b6d9237689d028dba

See more details on using hashes here.

Provenance

The following attestation bundles were made for cvflair-0.10.0-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