AI-For-Beginners/translations/pl/lessons/4-ComputerVision/06-IntroCV/lab/MovementDetection.ipynb

108 lines
3.5 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Wykrywanie ruchu dłoni za pomocą optycznego przepływu\n",
"\n",
"To laboratorium jest częścią [Kursu AI dla Początkujących](http://aka.ms/ai-beginners).\n",
"\n",
"Rozważ [ten film](../../../../../../lessons/4-ComputerVision/06-IntroCV/lab/palm-movement.mp4), na którym dłoń osoby porusza się w lewo/prawo/góra/dół na stabilnym tle.\n",
"\n",
"**Twoim celem** będzie użycie optycznego przepływu, aby określić, które części filmu zawierają ruchy w górę/dół/lewo/prawo.\n",
"\n",
"Zacznij od uzyskania klatek wideo zgodnie z opisem w wykładzie:\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# Code here"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Teraz oblicz gęste przepływy optyczne zgodnie z opisem w wykładzie i przekształć gęste przepływy optyczne na współrzędne biegunowe:\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# Code here"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Zbuduj histogram kierunków dla każdej klatki optycznego przepływu. Histogram pokazuje, ile wektorów mieści się w określonym przedziale, i powinien rozdzielać różne kierunki ruchu na klatce.\n",
"\n",
"> Możesz również wyzerować wszystkie wektory, których wielkość jest poniżej określonego progu. Pozwoli to wyeliminować drobne, nieistotne ruchy wideo, takie jak ruchy oczu i głowy.\n",
"\n",
"Narysuj histogramy dla niektórych klatek.\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# Code here"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Patrząc na histogramy, powinno być dość proste określenie kierunku ruchu. Musisz wybrać te przedziały, które odpowiadają kierunkom góra/dół/lewo/prawo i które są powyżej określonego progu.\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# Code here"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Gratulacje! Jeśli wykonałeś wszystkie powyższe kroki, ukończyłeś laboratorium!\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n---\n\n**Zastrzeżenie**: \nTen dokument został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Chociaż staramy się zapewnić dokładność, prosimy mieć na uwadze, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w jego rodzimym języku powinien być uznawany za wiarygodne źródło. W przypadku informacji krytycznych zaleca się skorzystanie z profesjonalnego tłumaczenia przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia.\n"
]
}
],
"metadata": {
"language_info": {
"name": "python"
},
"orig_nbformat": 4,
"coopTranslator": {
"original_hash": "153d9e417e079bf62f8f693002d0deaf",
"translation_date": "2025-08-31T12:57:30+00:00",
"source_file": "lessons/4-ComputerVision/06-IntroCV/lab/MovementDetection.ipynb",
"language_code": "pl"
}
},
"nbformat": 4,
"nbformat_minor": 2
}