Kinect 2 رزلوشن مؤثرش 10 برابر (یا شاید بیشتر، خود مایکروسافت گفته 10 برابر) Kinect 1 هست. کینکت 1 از یک الگوریتم تصویری برای بدست آوردن عمق استفاده میکنه که دقتش رو پایین میاره. در واقع کینکت 2 High-resolution ترین یا یکی از Highres ترین دوربینهای ToF به حساب میاد.
الگوی برداشت عمق کینکت 1:
کینکت 2 قابلیت تشخیص اجسام دور و نزدیک بطور همزمان (High dynamic range) رو با استفاده از تکنیک خاصی که استفاده کرده دارا هست (مشکلی که خیلی از دوربینهای ToF ازش رنج میبرن)، میتونه نویز حاصل از نورهای محیطی رو با استفاده از روش اندازه گیری فاصله با فاز موج از بین ببره ( که شاید مشکل یسری از دوربینهای ToF باشه که از اکتیو IR استفاده میکنن). ماکزیمم فرکانس کاریش هم بر خلاف کینکت 1، 60fps هست (یا میتونه باشه، منبع هم مقالهای رسمی/آکادمیک مایکروسافت در مورد کینکت 2 هست که در ادامه لینکش رو گذاشتم). از نظر تأخیر یا Latency هم باز از کینکت 1 خیلی بهتر هست. فقط 14ms طول میکشه (برای 30 فریم) تا یک بسته داده که شامل تصویر رنگی (یا RGB)، تصویر عمقی (depth data) و صدا رو برای CPU بفرسته (این مقدار برای کینکت 1 65ms بود)، بعد از اون هم 20ms طول میکشه تا تمام اینها پردازش بشن و نتیجش رو ببینیم (که البته همین پردازش و شیوهاش رو هم باز میتونن بهبود بدن). این دوربین خصوصیات دیگهای هم داره که در نوعش خودشون جالب هستن اما از حوصله این بحث و تاپیک خارج هستن. برای اطلاعات بیشتر میتونید به این مقالات و سایتها رجوع کنید:
این هم ویدئوی کنفرانس Hot Chips 2013 هست (بخش مربوط به کینکت از دقیقه 53 شروع میشه) که در بخش دومش در مورد کینکت صحبت شده. البته مشروح و توضیحات بیشتر رو در دو لینک بالا از سایت semiaccurate میتونید بخونید. و البته بهترین منبع میتونه مقاله اختصاصی کینکت باشه:
در مورد قیمت هم میشه گفت از اونجایی که دوربینهای ToF کم نیستن و نسخه PC کینکت 2 هم برای بازی کردن نیست (در واقع برای کارهای اقتصادی، صنعتی، علمی و پژوهشی هست و البته دست افرادی که در مورد Computer Vision کار میکنن رو هم باز میذاره و در آینده نتایج کار همینها میتونه در نهایت به بهبود بازیهای کینکت روی X1 و افزایش قابلیتهاش کمک کنه) پس دست همه باز هست. هر کس که این ورژن کینکت بنظرش گرون هست میتونه دوربینهایی صنعتی مثل این رو که فقط یکم گرونتر از کینکت 2 هست (فقط 4100$ گرونتر و البته با رزلوشنی که 8.5 برابر کمتر از کینکت 2 هست) برای مقاصد پژوهشی و کاربردیشون تهیه بکنن. کینکت 2 در کنار سنسور عمق با کیفیت و های رزلوشنش و خصوصیات میشه گفت منحصربفردش یک دوربین 1080p، میکروفون آرایهای و یک پک نرمافزاری منسجم رو هم که از طرف تیم تحقیقاتی خود مایکروسافت مدام حمایت و بروز میشه رو داره ارائه میده.
یکی از بهترین کاربرداش ، تبدیل کینکت به موشن کپچره ، که اتفاقا یه بار خودم اینو امتحان کردم .
باگ داره ولی قابل استفادس ، مشکل نسخه اول کینکت رزولیشن پایین تو کانال Z-Depth بود ولی این جدیده رزولیشن بالاتر و حساسیت بیشتری داره .
اما مشکل اصلیش هنوزم پابرجاس ، اونم عدم کپچر کردن حرکات انگشتاس .
کینکت میتونه انگشتها و حرکاتشون رو کپچر بکنه، مشکل نبود نرمافزار رسمی و کامل از طرف مایکروسافت هست/بود که روی کینکت 2 طبق گفته های این سایت باید رفع شده باشه.
Finger tracking (1 finger & thumb on each hand using default skeletal system and all fingers using custom system, compared to no finger tracking using default skeletal system and very limited finger tracking using custom system for Kinect 1.
Kinect 2
[/SPOILER]
کینکت میتونه انگشتها و حرکاتشون رو کپچر بکنه، مشکل نبود نرمافزار رسمی و کامل از طرف مایکروسافت هست/بود که روی کینکت 2 طبق گفته های این سایت باید رفع شده باشه. راهحل های سایر محققین برای کینکت 1.
توی یک دقیقه ابتدایی ویدئوی همون سایت هم میتونید ببینید که کینکت انگشتها رو از فاصله +2 متری داره تشخیص میده.
عدم تشخیص انگشت ها ربطی به نرم افزار نداره ، این وسیله محدودیت های زیادی داره که بتونه حرکات انگشتها رو تو تمام حالات تشخیص بده .
تشخیص دادن با Tracking دقیق دوتا چیز کاملا متفاوته. شما یه تیکه چوب هم جلوی سنسورش بگیرید اون میتونه تشخیصش بده ، اما آیا این به این معنیه که میتونه تمام حرکات اونو تو هر Distance ردیابی کنه ؟
قضیه مفاصل انگشت ها با مفاصل بزرگتر بدن خیلی متفاوته ، سنسور های کینکت چطوری میتونن نوع Position انگشتها رو در حالی که همپوشانی دارند رو Track کنه ؟!!!!!!!!! تازه اونم با یک سنسور ثابت و از یک زاویه ؟
مگر اینکه فاصله اون فرد تا کینکت کم باشه ، تازه در این حالت هم وضعیت همپوشانی انگشتها پیش میاد .
با توجه به اطلاعات و تجربه ای که تو Motion Capture داشتم ، منطق اینو به من میگه که در شرایط عادی کینکت نمی تونه انگشت هارو Track کنه .
عدم تشخیص انگشت ها ربطی به نرم افزار نداره ، این وسیله محدودیت های زیادی داره که بتونه حرکات انگشتها رو تو تمام حالات تشخیص بده .
تشخیص دادن با Tracking دقیق دوتا چیز کاملا متفاوته. شما یه تیکه چوب هم جلوی سنسورش بگیرید اون میتونه تشخیصش بده ، اما آیا این به این معنیه که میتونه تمام حرکات اونو تو هر Distance ردیابی کنه ؟
قضیه مفاصل انگشت ها با مفاصل بزرگتر بدن خیلی متفاوته ، سنسور های کینکت چطوری میتونن نوع Position انگشتها رو در حالی که همپوشانی دارند رو Track کنه ؟!!!!!!!!! تازه اونم با یک سنسور ثابت و از یک زاویه ؟
مگر اینکه فاصله اون فرد تا کینکت کم باشه ، تازه در این حالت هم وضعیت همپوشانی انگشتها پیش میاد .
با توجه به اطلاعات و تجربه ای که تو Motion Capture داشتم ، منطق اینو به من میگه که در شرایط عادی کینکت نمی تونه انگشت هارو Track کنه .
شاید روشهای دیگه به نرمافزار ربطی نداشته باشن ولی برای سنسورهایی مثل کینکت (هر نوع دوربینی) به نرم افزار ربط داره، شما تصویر رو به ماشین میدید تا پردازش بشه (Image Processing) و ماشین در واقع باید با IP درک بکنه که دست شما در چه موقعیتی قرار داره . هر چقدر نرم افزار شما بهتر باشه و دیتابیس قوی تری از حرکات مختلف دست داشته باشه بهتر میتونه حالت دست شما رو پیشبینی کنه. وقتی کینکت میتونه از فاصله 2 متری دست شما رو تشخیص بده (انگشتها و بند انگشتها) بنابراین ردگیری حرکات اونها هم با استفاده از الگوریتمهای مخصوصش کار چندان متفاوتی نسبت به تشخیص حرکات بدن نیست.
اون ویدئوها رو متأسفانه نگاه نکردید (همشون از کینکت 1 استفاده کردن)
Tracking دقیق هم باید یک معیار داشته باشه. شما برای ساختن انیمیشنهای آواتار نمیتونید از کینکت استفاده کنید ولی برای خیلی از بازیهای Indie میشه از کینکت برای ساخت انیمیشن استفاده کنن یا اینکه میشه از چند کینکت (3-4 تا باید کافی باشه) در زوایای مختلف برای بالاتر بردن کیفیت موشن کپچر استفاده کرد.
واقعا چی فکر کرده بدون هیچ نرم افزاری می خواد این وسیله را رو pc عرضه کنه !
چند روز پیش داشتیم یک کنسرت نگاه می کردیم دیدیم دارن از کیکت استفاده می کنن