تحولی در بینایی ماشین: استفاده از دوربین دوگانه در Jetson Nano B01 با آداپتور چنددوربینه ArduCAM

نویسنده:
شرکت پیشرو Ai
تاریخ انتشار:
11 اردیبهشت 1404
دیدگاه ها:
Jetson Nano B01

به‌روزرسانی NVIDIA Jetson Nano B01 اکنون از ضبط هم‌زمان با دو دوربین از طریق ماژول ArduCAM Multi Camera Adapter پشتیبانی می‌کند. این ارتقاء، قابلیت بینایی استریو، دوخت پانوراما و کاربردهای پیشرفته هوش مصنوعی را روی…

به‌روزرسانی NVIDIA Jetson Nano B01 اکنون از ضبط هم‌زمان با دو دوربین از طریق ماژول ArduCAM Multi Camera Adapter پشتیبانی می‌کند. این ارتقاء، قابلیت بینایی استریو، دوخت پانوراما و کاربردهای پیشرفته هوش مصنوعی را روی پلتفرم Jetson Nano فعال می‌سازد. در ادامه، مرور کلی از به‌روزرسانی، شرح ویژگی‌ها، مراحل سخت‌افزاری و نرم‌افزاری، نکات بهینه‌سازی عملکرد و سناریوهای دنیای واقعی را خواهید یافت تا بتوانید حداکثر استفاده را از تصویربرداری دو-CSI در لبه شبکه ببرید.

مرور کلی به‌روزرسانی دوربین دوگانه Jetson Nano B01

انتشار جدید سیستم‌عامل و فریم‌ور Jetson Nano B01 امکان کار هم‌زمان دو دوربین MIPI CSI-2 را فراهم می‌کند. با استفاده از ArduCAM Multi Camera Adapter HAT، توسعه‌دهندگان می‌توانند ربات‌های بینایی استریو، سیستم‌های تصویربرداری پانورامیک و برنامه‌های نظارتی چندزاویه‌ای بسازند—همه با اجرای استنتاج هوش مصنوعی در لبه شبکه. این به‌روزرسانی نه تنها تعداد کانال‌های ورودی را دو برابر می‌کند، بلکه ضبط همگام‌سازی‌شده فریم‌ها را برای برآورد عمق دقیق و گردش کار یکپارچه دوخت فراهم می‌آورد.

 

 

Jetson Nano B01

Jetson Nano B01

مزایای کلیدی

۱. بینایی استریوسکوپیک واقعی

  • درک عمق: اطلاعات عمق برای نقشه‌برداری سه‌بعدی و اجتناب از موانع را ثبت می‌کند.

  • همگام‌سازی دقیق: همگام‌سازی سطح سخت‌افزار با دقت میکروثانیه.

  • هوش مصنوعی لبه: ترکیب با مدل‌های تخمین عمق شتاب‌یافته TensorRT برای استنتاج بلادرنگ.

۲. ضبط پانوراما و چندزاویه‌ای

  • دوخت با وضوح بالا: ترکیب دو جریان ۸ مگاپیکسلی برای پانورامای عریض.

  • میدان دید پویا: امکان تغییر چیدمان دوربین‌ها به صورت کنار هم یا بالا/پایین.

  • رسانه غوطه‌ور: تولید محتوا برای هدست‌های واقعیت مجازی و ویدئوهای ۳۶۰°.

۳. پردازش پیشرفته هوش مصنوعی در لبه

  • کارهای هم‌زمان: اجرای تشخیص شی در یک جریان و محاسبه عمق در جریان دیگر.

  • بهینه‌سازی توان عملیاتی: استفاده از I/O ویدیوی شتاب‌یافته CUDA برای کمترین تأخیر.

  • معماری مقیاس‌پذیر: پشتیبانی از تا چهار دوربین در صورت ارتقاء فراتر از حالت دوگانه.

نیازمندی‌های سخت‌افزاری

  1. کیت توسعه‌دهنده NVIDIA Jetson Nano B01

  2. ArduCAM Multi Camera Adapter HAT (پشتیبانی تا چهار ماژول CSI-2)

  3. دو ماژول دوربین MIPI CSI-2 (مثلاً ArduCAM 8MP IMX219)

  4. کابل‌های روبان انعطاف‌پذیر و کانکتورهای GPIO

  5. منبع تغذیه ۵ ولت پایدار (حداقل ۴ آمپر)

  6. اختیاری: هیت‌سینک و فن برای بار کاری سنگین GPU

راه‌اندازی نرم‌افزار

الف. به‌روزرسانی سیستم‌عامل Jetson Nano

  1. آخرین تصویر JetPack (L4T) را روی کارت microSD فلش کنید.

  2. Jetson Nano را بوت کرده و به شبکه متصل شوید.

  3. اجرا کنید:

    sudo apt update && sudo apt upgrade -y
    

ب. نصب درایورها و SDK آردوکام

  1. مخزن ArduCAM را کلون کنید:

    git clone https://github.com/ArduCAM/JetsonNano  
    cd JetsonNano/Multi_Camera_Adapter  
    
  2. بیلد و نصب:

    ./install.sh
    sudo reboot
    

ج. تأیید شناسایی دوربین دوگانه

  • پس از راه‌اندازی مجدد، اجرا کنید:

    v4l2-ctl --list-devices
    

    باید video0 و video1 را ببینید که نشان‌دهنده هر دوربین هستند.

مثال: اجرای دمو بینایی استریو

  1. به پوشه دمو بروید:

    cd JetsonNano/Multi_Camera_Adapter/Demo
    
  2. اسکریپت ضبط استریو را اجرا کنید:

    python3 stereo_capture.py --left /dev/video0 --right /dev/video1
    
  3. نقشه عمق و تصاویر اختلاف منظر را به‌صورت بلادرنگ روی نمایشگر ببینید.

نکته حرفه‌ای: برای تعادل بین عملکرد و کیفیت، پرچم‌های --fps و --resolution را تنظیم کنید. وضوح و نرخ فریم کمتر می‌تواند بار CPU را به‌طور قابل توجهی کاهش دهد اگر مدل‌های هوش مصنوعی ثانویه اجرا می‌کنید.

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

برای حداکثر کردن توان عملیاتی و کم کردن تأخیر در Jetson Nano B01:

  • فعال‌سازی حافظه بدون کپی: از خطوط لوله GStreamer با nvarguscamerasrc برای دور زدن سربار کپی CPU استفاده کنید.

  • قفل فرکانس GPU: GPU را در حالت عملکرد بالا با:

    sudo nvpmodel -m 0
    sudo jetson_clocks
    
  • استفاده از TensorRT: مدل‌های تخمین عمق و تشخیص شی خود را به موتورهای TensorRT تبدیل کنید تا زمان استنتاج زیر ۳۰ میلی‌ثانیه باشد.

  • پردازش موازی: از multiprocessing در پایتون یا تردهای C++ برای مدیریت هر جریان دوربین در فرآیند جداگانه استفاده کنید و سپس خروجی‌ها را در حافظه مشترک GPU ادغام کنید.

رفع اشکال رایج

  • هیچ دستگاه ویدیویی شناسایی نشد:
    • مطمئن شوید کابل‌های روبان محکم وصل شده‌اند.
    • از تأمین برق کافی اطمینان حاصل کنید.

  • خطا در نصب درایور:
    install.sh را دوباره اجرا کنید و وابستگی‌های مفقود (libv4l-dev، python3-dev) را بررسی کنید.

  • نرخ فریم نامتوازن:
    • هر دو ماژول دوربین را در همان وضوح و نرخ فریم تنظیم کنید.

  • استفاده بالای CPU:
    • از OpenCV Capture به GStreamer NVMM pipelines تغییر دهید.
    • پیش‌پردازش‌ها (مثلاً تغییر اندازه) را به هسته‌های CUDA واگذار کنید.

کاربردهای عملی

  • رباتیک خودران: اجتناب از موانع و SLAM بلادرنگ برای ناوبری داخلی و خارجی.

  • امنیت و نظارت: فیدهای چندزاویه‌ای با تشخیص و ردیابی افراد مبتنی بر هوش مصنوعی.

  • VR/AR غوطه‌ور: دوخت پانورامای زنده برای تورهای مجازی و شبیه‌سازی‌های آموزشی.

  • حسگر عمق: نقشه‌برداری داخلی و بازسازی سه‌بعدی برای اتوماسیون انبار.

  • پایش کشاورزی: تصویربرداری NDVI دوگانه برای تحلیل سلامت گیاهان.

نکات یکپارچه‌سازی برای کاربران پیشرفته

  1. همگام‌سازی چند‌دوربین: از پین‌های تریگر GPIO هَت برای همگام‌سازی سخت‌افزاری بیش از دو دوربین در رگ‌های پیچیده استفاده کنید.

  2. استقرار مدل سفارشی: کانتینرهای Docker با مدل‌های AI خود بسازید و از پشتیبانی Docker Jetson برای استقرار قابل حمل بهره ببرید.

  3. خط لوله Edge-to-Cloud: فیدهای دوگانه را با RTSP به سرور مرکزی استریم کنید تا نظارت گسترده داشته باشید در حالی که استنتاج روی دستگاه انجام می‌شود.

  4. مدیریت توان: با استفاده از tegrastats میزان استفاده GPU و CPU را مانیتور کرده و برنامه‌نویسی فرکانس‌ها را به‌صورت داینامیک تنظیم کنید.

نتیجه‌گیری

با به‌روزرسانی دوربین دوگانه Jetson Nano B01 و ArduCAM Multi Camera Adapter، اکنون می‌توانید تصویربرداری استریو و ثبت چندزاویه‌ای را روی یک پلتفرم AI جمع‌وجور پیاده کنید. مراحل فوق را دنبال کنید تا سخت‌افزار خود را راه‌اندازی، درایورها را نصب و اولین دمو را اجرا کنید. چه در حال ساخت ربات خودران باشید، چه سیستم‌های نظارتی پیشرفته پیاده می‌کنید و چه تجربیات واقعیت مجازی خلق می‌کنید، این ارتقاء امکانات لبه شبکه را گسترش می‌دهد. همین امروز شروع کنید و برنامه‌های تصویری خود را با قابلیت‌های دوربین دوگانه متحول سازید!

پرسش‌های متداول

1. Jetson Nano B01 چیست و چه قابلیت‌هایی نسبت به نسخه قبلی ارائه می‌دهد؟

Jetson Nano B01 نسخه ارتقاءیافته از Jetson Nano A01 است که دارای کنترلر CSI-2 ثانویه برای پشتیبانی از دوربین دوم و بهینه‌سازی‌های نرم‌افزاری برای پردازش هم‌زمان دو جریان ویدیویی است.

2. ArduCAM Multi Camera Adapter HAT چیست و چگونه امکان استفاده هم‌زمان از دو دوربین را فراهم می‌کند؟

این برد HAT سیگنال MIPI CSI-2 را به دو کانال تقسیم می‌کند و با ثبت همگام‌سازی سخت‌افزاری اجازه می‌دهد دو ماژول دوربین به‌صورت جداگانه و هم‌زمان شناسایی و استفاده شوند.

3. چه ماژول‌های دوربین CSI-2 با این به‌روزرسانی سازگار هستند؟

ماژول‌های رایج مانند ArduCAM 8MP IMX219 و IMX477 و همچنین سایر دوربین‌های MIPI CSI-2 با رزولوشن و نرخ فریم مشابه قابل استفاده هستند.

4. مراحل اتصال سخت‌افزاری دوربین‌ها به Jetson Nano B01 چگونه است؟

کابل‌های روبان را به درگاه CSI-2 روی HAT و سپس HAT را روی پین‌های CSI اصلی Jetson Nano قرار دهید. دقت کنید کابل‌ها به‌درستی قفل شوند و منبع تغذیه ۵ ولتی کافی به برد متصل باشد.

5. برای نصب و راه‌اندازی درایورهای ArduCAM چه مراحلی لازم است؟

مخزن ArduCAM را کلون کنید، وارد پوشه Multi_Camera_Adapter شوید، اسکریپت `install.sh` را اجرا و پس از اتمام، برد را ریبوت کنید.

6. چگونه می‌توان صحت شناسایی دو دوربین را بررسی کرد؟

پس از ریبوت، با دستور `v4l2-ctl –list-devices` باید دو دستگاه `video0` و `video1` مشاهده شود که نشان‌دهنده شناسایی موفق دو دوربین است.

7. برای اجرای دمو بینایی استریو چه پارامترهایی را باید تنظیم کرد؟

در اسکریپت `stereo_capture.py` پارامترهای `–left`، `–right`، `–fps` و `–resolution` را براساس نیاز پروژه تنظیم کنید تا تعادل بین کیفیت تصویر و نرخ فریم برقرار شود.

8. چگونه می‌توان عملکرد سیستم را برای نرخ فریم بالاتر بهینه کرد؟

از خطوط لوله GStreamer با `nvarguscamerasrc` برای کاهش بار CPU، قفل فرکانس GPU با `jetson_clocks` و تبدیل مدل‌ها به TensorRT برای کاهش زمان استنتاج استفاده کنید.

9. چه مشکلات رایجی در پیاده‌سازی دوربین دوگانه ممکن است رخ دهد و راه‌حل آن‌ها چیست؟

مشکلاتی مانند عدم شناسایی دوربین (اتصال نامناسب کابل)، خطاهای درایور (وابستگی‌های ناقص) و ناهماهنگی نرخ فریم (تنظیم نادرست رزولوشن) رایج هستند؛ بررسی کابل، نصب مجدد درایور و تراز نمودن تنظیمات توصیه می‌شود.

10. کاربردهای عملی این به‌روزرسانی در پروژه‌های هوش مصنوعی و رباتیک چیست؟

هم‌زمانی دوربین‌ها امکان بینایی استریو برای ربات‌های خودران، دوخت پانوراما برای VR، نظارت چند‌زاویه‌ای و نقشه‌برداری سه‌بعدی در پروژه‌های لبه را فراهم می‌کند.

مشتاقانه منتظر دریافت نظرات شما دوستان عزیز هستیم





مطالب مرتبط

کربن رباتیکس

کنترل هوشمند علف‌های هرز با لیزر و GPUهای انویدیا: انقلاب کربن رباتیکس در کشاورزی

Jetpack جتسون

Jetpack جتسون: راهنمای جامع برای تسلط بر مغز متفکر ربات‌های هوشمند

پردازش تصویر با Jetson Nano

پردازش تصویر با Jetson Nano

شهر هوشمند

انویدیا هوش مصنوعی فیزیکی را با برنامه‌ای جدید به شهرهای اروپایی می‌آورد

کاربردهای Jetson

کاربردهای Jetson: گشودن افق‌های هوش مصنوعی

کاربردهای جتسون در صنعت

تحول هوش مصنوعی صنعتی: کاربردهای جتسون در صنعت