Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 2. diel - Práca s videom v Pythone a kreslenie a písanie do obrázkov

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
Antonín Martykán:6.6.2021 14:02

Moc nerozumím té podmínce, která ukončí cyklus:

if cv2.waitKey(1) & 0xFF == ord("x"):
    break

Jak to prosím funguje?

Avatar
mhos
Člen
Avatar
Odpovedá na Antonín Martykán
mhos:2.7.2021 14:05

Ahoj.
OK zkusím to nějak srozumitelně napsat:

cv2.waitKey(1)

Prográmek zobrazuje snímky z videa a čeká na vstup z klávesnice a platí standardně pravidlo, že je je v závorkách hodnota < nebo = 0 čeká na nějakou klávesu.

Pokud v kód upravíš následovně bude video prostě statické a každý další snímek se zobrazí po stisknutí libovolné klávesy mimo "q" a stisk klávesy "q" ti okno jednoduše zavře. (nebo pokud budeš mačkat klávesy mimo "q" tak to ukončí prostě chyba až odklikneš poslední snímek )

if cv2.waitKey(0) & 0xFF == ord("q"):
    break

"& 0xFF" je bitová maska a podmínka se splní pokud se objeví ASCII hodnota daná písmenu "q"

Dá se to napsat například i takhle, pomocí proměnné kde "27" je ASCII hodnota klávesy Escape.

konecVidea = cv2.waitKey(1) & 0xff     # nadefinuješ proměnou "konecVidea"
   if k == 27 :     # Odejdeš když stiskneš ESC
break

Zde je odkaz na ASCII tabulku lze si vyzkoušet cokoli dle libosti.

No snad je to srozumitelné....

Avatar
mhos
Člen
Avatar
Odpovedá na mhos
mhos:2.7.2021 14:09
konecVidea = cv2.waitKey(0) & 0xff
    if konecVidea == 27 : return False
    return True
Avatar
mhos
Člen
Avatar
Odpovedá na mhos
mhos:2.7.2021 14:22
konecVidea = cv2.waitKey(1)
        if konecVidea == 27 or konecVidea == ord('q') or konecVidea == ord('Q'):
            break
Editované
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 4 správy z 4.