108 lines
3.8 KiB
Plaintext
108 lines
3.8 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## 光学フローを使用した手のひらの動き検出\n",
|
|
"\n",
|
|
"このラボは[AI for Beginners Curriculum](http://aka.ms/ai-beginners)の一部です。\n",
|
|
"\n",
|
|
"[この動画](../../../../../../lessons/4-ComputerVision/06-IntroCV/lab/palm-movement.mp4)を考えてみてください。この動画では、安定した背景の上で人の手のひらが左/右/上/下に動いています。\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",
|
|
"\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この文書はAI翻訳サービス[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:43+00:00",
|
|
"source_file": "lessons/4-ComputerVision/06-IntroCV/lab/MovementDetection.ipynb",
|
|
"language_code": "ja"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 2
|
|
} |