خلاصه (Summary)

توجه

Kinect Azure CHOP برای دریافت اطلاعات رهگیری بدن (Body Tracking)، شامل موقعیت و چرخش مفاصل (joints) و داده‌های سنسور IMU از دوربین Microsoft Kinect Azure یا دوربین‌های سازگار Orbbec (مثل Femto Mega, Femto Bolt و …) استفاده می‌شود.

این CHOP نیاز به یک Kinect Azure TOP دارد تا به دوربین متصل شود و تنظیمات آن را کنترل کند. توجه کنید:

  • همه‌ی تنظیمات دوربین از رهگیری بدن پشتیبانی نمی‌کنند (مثل حالت Passive IR Depth).

  • رهگیری بدن فقط توسط یک نوع سخت‌افزار در یک زمان پشتیبانی می‌شود. اگر چند سخت‌افزار مختلف (مایکروسافت یا اوربِک) در پروژه باشند، فقط اولین نودی که cook شود فعال خواهد بود.

با پارامتر Max Players می‌توان تعیین کرد چند نفر توسط دوربین رهگیری شوند. TOP به‌طور خودکار بدن‌های شناسایی‌شده را به فضای بازیکنان اختصاص می‌دهد.

به دلیل سیستم پردازش اسکلت از تصویر عمق (Depth Camera)، داده‌های بدن می‌توانند چند فریم عقب‌تر از تصویر باشند. برای همگام‌سازی بهتر داده‌های بدن و تصویر می‌توان از گزینه Sync Body Tracking To Image روی Kinect Azure TOP اصلی استفاده کرد (البته این همگام‌سازی باعث افزایش لگ تصویر می‌شود).

📌 برای مشاهده‌ی دیاگرام مفاصل و سلسله‌مراتب آن‌ها، به Kinect Azure SDK مراجعه کنید.

داده‌های شتاب و چرخش از سنسور IMU دوربین نیز با فعال‌کردن پارامتر IMU Channels قابل دسترسی است.

🔗 همچنین ببینید: Kinect Azure TOP، Kinect Azure Select TOP


پارامترها (Parameters)

🔹 Kinect Azure Page

  • Active (فعال): فعال یا غیرفعال‌سازی دریافت داده رهگیری بدن. (نیازمند فعال بودن Kinect Azure TOP)

  • Kinect Azure TOP: نام Kinect Azure TOP متصل به دوربین.

  • Max Players (حداکثر بازیکنان): تعداد اسکلت‌هایی که باید رهگیری شوند. اگر کمتر از این تعداد اسکلت پیدا شود، کانال‌های اضافی صفر می‌شوند.

  • Relative Bone Rotations: خروجی چرخش‌های نسبی تمام استخوان‌ها نسبت به والدشان. (درجه حول محورهای X, Y, Z)

  • Absolute Bone Rotations: خروجی چرخش‌های مطلق استخوان‌ها در فضای جهانی.

  • Bone Lengths: طول هر استخوان (فاصله‌ی یک مفصل تا مفصل والد).

  • World Space Positions: مختصات مطلق هر استخوان در فضای جهانی (متر).

  • Color Image Positions: موقعیت اسکلت‌ها در مختصات UV تصویر رنگی.

  • Depth Image Positions: موقعیت اسکلت‌ها در مختصات UV تصویر عمق.

  • Aspect Correct UVs: اصلاح نسبت تصویر UV برای مطابقت با دوربین.

  • Mirror Image V Positions: برعکس کردن محور V تصویر (۰,۰ بالا-چپ قرار بگیرد).

  • Mirror U Positions: آینه‌کردن مختصات U (برای زمانی که تصویر رنگی یا عمق در محور X آینه شده باشد).

  • Bone Confidence (اعتماد به دقت مفصل):

    • 0 = خارج از محدوده (خیلی دور از دوربین).

    • 1 = دیده نمی‌شود، اما بر اساس مفاصل مجاور پیش‌بینی می‌شود.

    • 2 = اعتماد متوسط (بیشترین سطحی که فعلاً تولید می‌شود).

    • 3 = اعتماد بالا (رزرو برای آینده).

  • IMU Channels: فعال‌سازی داده‌های سنسور IMU (دما، شتاب، چرخش).


⚙️ صفحه Common

  • Time Slice: فعال‌سازی خروجی Time Slice.

  • Scope: انتخاب کانال‌های تحت تأثیر.

  • Sample Rate Match: مدیریت نرخ نمونه‌برداری ورودی‌ها (First, Max, Min, Error).

  • Export Method: نحوه اتصال کانال‌ها به پارامترها:

    • DAT Table by Index

    • DAT Table by Name

    • Channel Name is Path:Parameter

  • Export Root: مسیر ریشه‌ی اکسپورت.

  • Export Table: جدول DAT برای اکسپورت.


کانال‌های Info (Info CHOP Channels)

🔹 Common CHOP Info Channels

  • start – شروع بازه CHOP (بر حسب نمونه).

  • length – تعداد نمونه‌ها.

  • sample_rate – نرخ نمونه‌برداری (فریم بر ثانیه).

  • num_channels – تعداد کانال‌ها.

  • time_slice – آیا Time Slice فعال است (۱ یا ۰).

  • export_sernum – تعداد دفعات به‌روزرسانی اکسپورت.

🔹 Common Operator Info Channels

  • total_cooks – تعداد cook از شروع.

  • cook_time – مدت cook آخر (ms).

  • cook_frame – شماره فریم هنگام cook.

  • cook_abs_frame – شماره فریم مطلق هنگام cook.

  • cook_start_time – زمان شروع cook (ms).

  • cook_end_time – زمان پایان cook (ms).

  • cooked_this_frame – آیا در این فریم cook شده است یا نه.

  • warnings – تعداد هشدارها.

  • errors – تعداد خطاها.