خلاصه (Summary)

نکته مهم:

  • سیستم‌عامل (OS): این اپراتور فقط در Microsoft Windows پشتیبانی می‌شود.

  • سخت‌افزار (Hardware): این اپراتور از Augmented Reality SDK سیستم Nvidia Maxine استفاده می‌کند و برای عملکرد، به کارت گرافیک‌های Nvidia RTX سری 20، 30 یا 40 نیاز دارد.
    ⚠️ کارت‌های سری 50 (Blackwell) در حال حاضر پشتیبانی نمی‌شوند.

Face Track CHOP می‌تواند در یک تصویر، چهره‌ها و نقاط نشانه‌گذاری چهره (Facial Landmarks) را تشخیص دهد، و همچنین جهت نگاه چهره نسبت به دوربین را مشخص کند.

در ترکیب با یک مدل سه‌بعدی چهره قابل تغییر (3D Morphable Face Model – 3DMM) و Face Track SOP، می‌توان از آن برای انطباق (Fitting) و انیمیت کردن یک مش سه‌بعدی متناسب با چهره شناسایی‌شده استفاده کرد.

ورودی تصویر از طریق یک TOP تأمین می‌شود و می‌تواند در هر رزولوشن یا فرمتی باشد، چه تصویر ثابت و چه ویدیو.
اگر چند چهره در تصویر وجود داشته باشد، CHOP سعی می‌کند بزرگ‌ترین چهره شناسایی‌شده را دنبال کند.

مختصات ویژگی‌های شناسایی‌شده در قالب موقعیت‌های u و v نسبت به گوشه پایین-چپ تصویر ورودی ارائه می‌شوند.
به‌صورت پیش‌فرض، مقادیر از ۰ تا ۱ هستند. با فعال کردن گزینه ‘Aspect Correct’، این مقادیر به‌گونه‌ای مقیاس می‌شوند که بتوان از آن‌ها به‌عنوان مختصات سه‌بعدی استفاده کرد و نسبت ابعاد تصویر اصلی حفظ شود.

💡 نکته: نمونه‌های مختلفی از Face Track CHOP/SOP در بخش OP Snippets موجود است.

برای هم‌تراز کردن رندر سه‌بعدی نقاط با تصویر ورودی اصلی:

  • در Camera COMP گزینه Projection را روی Orthographic تنظیم کنید،

  • گزینه Ortho Origin را روی Bottom-Left بگذارید،

  • گزینه Ortho Width را برابر ۱ قرار دهید،

  • و گزینه Aspect Correct را در Face Track CHOP فعال کنید.

برای استفاده از قابلیت انطباق مش (Mesh Fitting)، نیاز به فایل مش چهره با فرمت nvf از Nvidia دارید.
پیشنهاد می‌شود از فایل face_model2.nvf که در پوشه Config/Models داخل محل نصب TouchDesigner قرار دارد، استفاده کنید.
⚠️ توجه: فایل‌های مشی که برای نسخه‌های قبلی TouchDesigner ساخته شده‌اند، دیگر کار نمی‌کنند.

همچنین ببینید: Face Track SOP

📘 کلاس پایتون: facetrackCHOP_Class


فهرست مطالب

  1. خلاصه

  2. پارامترها – صفحه FaceTrack

  3. پارامترها – صفحه Common

  4. کانال‌های Info CHOP

    • 4.1 کانال‌های اطلاعاتی مشترک CHOP

    • 4.2 کانال‌های اطلاعاتی مشترک اپراتور


پارامترها – صفحه FaceTrack

Active (active)

فعال‌سازی ویژگی‌های تشخیص چهره.

Model Folder (modelfolder)

مسیر فایل‌های مدل هوش مصنوعی مورد استفاده برای تشخیص چهره.
به‌صورت پیش‌فرض، این فایل‌ها در پوشه Config/Models قرار دارند.

Mesh File (meshfile)

فایل مش سه‌بعدی قابل تغییر (3D Morphable Mesh) با فرمت nvf از Nvidia برای انطباق مش.
در صورت وجود، مش انطباق‌یافته از طریق Face Track SOP در دسترس خواهد بود.

TOP (top)

مسیر اپراتور TOP که تصویر ورودی برای تشخیص چهره را تأمین می‌کند.

Bounding Boxes (bbox)

کانال‌هایی را خروجی می‌دهد که یک جعبه مرزی (Bounding Box) پیرامون چهره شناسایی‌شده را توصیف می‌کنند.
این کانال‌ها شامل موقعیت u، v مرکز چهره، و همچنین عرض و ارتفاع جعبه هستند.
مقادیر نسبت به گوشه پایین-چپ تصویر ورودی بیان می‌شوند.

Bounding Box Confidence (bboxconfidence)

کانالی را خروجی می‌دهد که میزان اطمینان مدل هوش مصنوعی از شناسایی چهره در تصویر را نشان می‌دهد.
مقادیر بالاتر = اطمینان بیشتر.

Rotations (rotations)

مقادیر rx, ry, rz را خروجی می‌دهد که جهت‌گیری چهره را در تصویر نشان می‌دهند.
(۰,۰,۰) یعنی چهره مستقیماً به سمت دوربین نگاه می‌کند.
مقادیر می‌توانند از ±۱۸۰ درجه متغیر باشند.

Number of Landmarks (landmarks) – ⊞

تعداد نقاط نشانه‌گذاری چهره برای خروجی:

  • None (none) → بدون نقطه نشانه‌گذاری

  • 68 (Multi-PIE Mark-ups) (num68) → مجموعه استاندارد ۶۸ نقطه‌ای در تحقیقات هوش مصنوعی

  • 126 (num126) → مجموعه توسعه‌یافته از ویژگی‌ها

هر نقطه نمایانگر بخشی ثابت از چهره (چانه، ابرو، بینی و غیره) است.
موقعیت‌ها در مختصات u, v نسبت به گوشه پایین-چپ داده می‌شوند.

Landmark Confidence (landmarkconfidence)

افزودن مقدار اطمینان برای هر ویژگی نشانه‌گذاری‌شده.
مقادیر بالاتر = دقت بیشتر.

Mesh Transform (meshtransform)

در صورت فعال‌سازی، کانال‌های ترجمه (Translate)، چرخش (Rotate) و مقیاس (Scale) برای مش انطباق‌یافته خروجی می‌دهد.
این قابلیت نیاز به فایل مش معتبر سه‌بعدی (nvf) دارد.
این مقادیر می‌توانند برای انطباق مش خروجی از Face Track SOP با تصویر ورودی استفاده شوند.
به‌طور پیش‌فرض، مش انطباق‌یافته پیش‌تبدیل (Pre-Transformed) شده است؛ اگر گزینه Pre-Transform در SOP غیرفعال باشد، از این کانال‌ها برای کنترل دقیق‌تر استفاده کنید.

Aspect Correct UVs (aspectcorrectuv)

مقیاس‌دهی مجدد مختصات u, v برای حفظ نسبت تصویر ورودی.
در زمانی مفید است که از مختصات به‌عنوان مختصات سه‌بعدی استفاده شود، نه صرفاً موقعیت تصویری.


پارامترها – صفحه Common

Time Slice (timeslice)

در صورت فعال‌سازی، کانال‌ها در حالت Time Sliced قرار می‌گیرند.
(Time Slice = فاصله بین آخرین Cook و Cook جاری)

Scope (scope)

مشخص می‌کند کدام کانال‌ها تحت‌تأثیر قرار گیرند (با استفاده از رشته Scope).

Sample Rate Match (srselect) – ⊞

مدیریت اختلاف نرخ نمونه‌برداری در ورودی‌ها:

  • first → استفاده از نرخ اولین ورودی

  • max → بالاترین نرخ

  • min → پایین‌ترین نرخ

  • err → در صورت اختلاف نرخ، خطا می‌دهد

Export Method (exportmethod) – ⊞

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

  • datindex → با ایندکس

  • datname → با نام

  • autoname → مسیر کامل شامل نام پارامتر

Export Root (autoexportroot)

گره ریشه برای مسیرهای نسبی Export.

Export Table (exporttable)

جدول DAT برای نگهداری اطلاعات Export هنگام استفاده از روش‌های مبتنی بر DAT Table.


کانال‌های Info CHOP

اطلاعات اضافه مربوط به Face Track CHOP از طریق Info CHOP در دسترس است.


کانال‌های اطلاعاتی مشترک CHOP

  • start → شروع بازه در نمونه‌ها

  • length → تعداد نمونه‌ها

  • sample_rate → نرخ نمونه‌برداری

  • num_channels → تعداد کانال‌ها

  • time_slice → فعال بودن Time Slice (۱ یا ۰)

  • export_sernum → تعداد دفعات به‌روزرسانی Export


کانال‌های اطلاعاتی مشترک اپراتور

  • total_cooks → تعداد دفعات Cook از زمان شروع

  • cook_time → مدت زمان آخرین Cook (ms)

  • cook_frame → شماره فریم آخرین Cook (نسبی)

  • cook_abs_frame → شماره فریم آخرین Cook (مطلق)

  • cook_start_time → زمان شروع Cook

  • cook_end_time → زمان پایان Cook

  • cooked_this_frame → Cook شده در این فریم؟ (۱ یا ۰)

  • warnings → تعداد هشدارها

  • errors → تعداد خطاها