102 lines
4.2 KiB
Plaintext
102 lines
4.2 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"**Ваша мета** — використати Оптичний Потік, щоб визначити, які частини відео містять рухи вгору/вниз/ліворуч/праворуч.\n",
|
||
"\n",
|
||
"Почніть із отримання кадрів відео, як описано в лекції:\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# Code here"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Тепер обчисліть кадри щільного оптичного потоку, як описано в лекції, і перетворіть щільний оптичний потік у полярні координати:\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# Code here"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Створіть гістограму напрямків для кожного кадру оптичного потоку. Гістограма показує, скільки векторів потрапляє в певний бін, і має розділяти різні напрямки руху на кадрі.\n",
|
||
"\n",
|
||
"> Ви також можете обнулити всі вектори, чия величина нижча за певний поріг. Це дозволить позбутися дрібних зайвих рухів у відео, таких як рухи очей і голови.\n",
|
||
"\n",
|
||
"Побудуйте гістограми для деяких кадрів.\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# Code here"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Дивлячись на гістограми, має бути досить просто визначити напрямок руху. Вам потрібно вибрати ті стовпці, які відповідають напрямкам вгору/вниз/ліворуч/праворуч і які перевищують певний поріг.\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# Code here"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Вітаємо! Якщо ви виконали всі наведені вище кроки, ви завершили лабораторну роботу!\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"\n---\n\n**Відмова від відповідальності**: \nЦей документ був перекладений за допомогою сервісу автоматичного перекладу [Co-op Translator](https://github.com/Azure/co-op-translator). Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ на його рідній мові слід вважати авторитетним джерелом. Для критичної інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникають внаслідок використання цього перекладу.\n"
|
||
]
|
||
}
|
||
],
|
||
"metadata": {
|
||
"language_info": {
|
||
"name": "python"
|
||
},
|
||
"orig_nbformat": 4,
|
||
"coopTranslator": {
|
||
"original_hash": "153d9e417e079bf62f8f693002d0deaf",
|
||
"translation_date": "2025-08-30T09:21:56+00:00",
|
||
"source_file": "lessons/4-ComputerVision/06-IntroCV/lab/MovementDetection.ipynb",
|
||
"language_code": "uk"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 2
|
||
} |