{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Deteksi Gerakan Telapak Tangan menggunakan Optical Flow\n", "\n", "Lab ini adalah bagian dari [Kurikulum AI untuk Pemula](http://aka.ms/ai-beginners).\n", "\n", "Perhatikan [video ini](../../../../../../lessons/4-ComputerVision/06-IntroCV/lab/palm-movement.mp4), di mana telapak tangan seseorang bergerak ke kiri/kanan/atas/bawah dengan latar belakang yang stabil.\n", "\n", "**Tujuan Anda** adalah menggunakan Optical Flow untuk menentukan bagian mana dari video yang mengandung gerakan ke atas/ke bawah/kiri/kanan.\n", "\n", "Mulailah dengan mendapatkan frame video seperti yang dijelaskan dalam kuliah:\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Code here" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Sekarang, hitung frame aliran optik padat seperti yang dijelaskan dalam kuliah, dan ubah aliran optik padat ke koordinat polar:\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Code here" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Bangun histogram arah untuk setiap frame optical flow. Histogram menunjukkan berapa banyak vektor yang masuk ke dalam setiap bin, dan seharusnya memisahkan berbagai arah pergerakan pada frame.\n", "\n", "> Anda mungkin juga ingin menghapus semua vektor yang memiliki magnitudo di bawah ambang tertentu. Ini akan menghilangkan gerakan kecil tambahan dalam video, seperti gerakan mata dan kepala.\n", "\n", "Plot histogram untuk beberapa frame.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Code here" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Melihat histogram, seharusnya cukup jelas bagaimana menentukan arah pergerakan. Anda perlu memilih bin yang sesuai dengan arah atas/bawah/kiri/kanan, dan yang berada di atas ambang tertentu.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Code here" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Selamat! Jika Anda telah menyelesaikan semua langkah di atas, Anda telah menyelesaikan lab!\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n---\n\n**Penafian**: \nDokumen ini telah diterjemahkan menggunakan layanan penerjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Meskipun kami berupaya untuk memberikan hasil yang akurat, harap diperhatikan bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang berwenang. Untuk informasi yang bersifat kritis, disarankan menggunakan jasa penerjemahan manusia profesional. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.\n" ] } ], "metadata": { "language_info": { "name": "python" }, "orig_nbformat": 4, "coopTranslator": { "original_hash": "153d9e417e079bf62f8f693002d0deaf", "translation_date": "2025-08-29T14:01:01+00:00", "source_file": "lessons/4-ComputerVision/06-IntroCV/lab/MovementDetection.ipynb", "language_code": "id" } }, "nbformat": 4, "nbformat_minor": 2 }