سیستمهای تعبیهشده، سیستمهای کامپیوتری تخصصی هستند – معمولاً ترکیبی از پردازندههای رایانه، حافظه و دستگاههای جانبی ورودی/خروجی. این دستگاه ها برای انجام عملیات محاسباتی تخصصی یا اختصاصی در یک سیستم مکانیکی یا الکترونیکی بزرگتر طراحی شده اند. آنها به طور گسترده در خودرو، مراقبت های بهداشتی، لوازم الکترونیکی مصرفی، هوافضا، و غیره استفاده می شوند. اگر قصد خرید دوربین پردازش تصویر ، خرید دوربین صنعتی ، خرید دوربین بینایی ماشین و خرید سنسور پردازش تصویر را دارید کافیست به فروشگاه ایمیجین سورس مراجعه کنید.
در اینجا در این مقاله قصد داریم بررسی کنیم:
- تعریف سیستم های جاسازی شده
- ساختار اصلی و معماری
- اجزای کلیدی
- پروژه های سیستم جاسازی شده مبتنی بر دید کامپیوتری
- نمونه های دنیای واقعی
- مزایا یا ارزش های ارائه شده توسط سیستم های جاسازی شده در کامپیوتر ویژن
سیستم های جاسازی شده چیست؟
همانطور که قبلاً بحث شد، یک سیستم تعبیه شده یک سیستم کامپیوتری است که برای انجام یک عملکرد اختصاصی در یک سیستم مکانیکی یا الکترونیکی بزرگتر طراحی شده است. این پردازنده، حافظه و لوازم جانبی ورودی/خروجی را برای کنترل عملیات فیزیکی دستگاه ها ترکیب می کند.
سیستمهای تعبیهشده مدرن معمولاً از میکروکنترلرهایی استفاده میکنند که پردازندهها، حافظه و رابطها را در یک تراشه واحد ترکیب میکنند. سیستم های پیچیده تر ممکن است از ریزپردازنده ها با حافظه و رابط های جداگانه استفاده کنند.
از نظر فنی، پردازندههای مورد استفاده در سیستمهای تعبیهشده از طرحهای همهمنظوره تا معماریهای خاص برنامه یا طراحی سفارشی را شامل میشود. یکی از رایج ترین انواع پردازنده های مورد استفاده برای محاسبات اختصاصی، پردازشگر سیگنال دیجیتال (DSP) است.
ساختار اساسی یک سیستم جاسازی شده
در اینجا ساختار یا معماری اولیه پروژه های سیستم جاسازی شده آورده شده است:
سنسور
یک حسگر تغییرات محیط اطراف را شناسایی و اندازه گیری می کند. ورودی را از محیط فیزیکی می گیرد و آن را به سیگنال های الکتریکی تبدیل می کند. سپس این سیگنال های الکتریکی برای پردازش بیشتر به یک مبدل AD (یا می توانیم بگوییم آنالوگ به دیجیتال) وارد می شوند.
مبدل AD
سپس مبدل آنالوگ به دیجیتال سیگنال آنالوگ را از حسگر به سیگنال دیجیتال تبدیل می کند تا پردازشگر آن را تفسیر کند.
پردازنده و ASIC
هدف یک پردازنده ارزیابی داده های سیگنال دیجیتال است. خروجی را تعیین یا محاسبه می کند و داده های پردازش شده را در حافظه دستگاه ذخیره می کند. مدارهای مجتمع خاص برنامه (ASIC) نوعی پردازنده هستند و محاسبات تخصصی را نیز انجام می دهند.
مبدل DA
سپس سیگنال دیجیتال پردازش شده به مبدل دیجیتال به آنالوگ وارد می شود. یک مبدل دیجیتال به آنالوگ، داده های دیجیتالی پردازنده را دوباره به شکل آنالوگ تبدیل می کند.
محرک
عملگرها وسایلی هستند که سیگنال های الکتریکی را به حرکات مکانیکی تبدیل می کنند. هنگامی که ورودی الکتریکی، پنوماتیکی یا هیدرولیکی به آن وارد می شود، نیرو، گشتاور یا جابجایی ایجاد می کند. از نظر فنی، یک محرک خروجی پردازش شده را با نتیجه مورد نظر مقایسه می کند و اقدام تایید شده را برای کنترل سیستم اجرا می کند.

سیستم جاسازی شده در کامپیوتر ویژن
سیستم های جاسازی شده در بینایی کامپیوتر: کاربردها و مزایا
بینایی کامپیوتری حجم زیادی از داده های بصری را در زمان واقعی پردازش می کند. سیستم های تعبیه شده در چنین برنامه هایی عالی هستند زیرا برای این وظایف پردازشی بهینه شده اند. سیستمهای تعبیهشده میتوانند با یکپارچهسازی حسگرها، دوربینها و واحدهای پردازشی، از گرفتن تصویر، پردازش دادهها و اجرای الگوریتمهای مرتبط با بینایی کارآمد اطمینان حاصل کنند. تواناییهای پردازش سیستمهای تعبیهشده در زمان واقعی، آنها را برای کاربردهای حیاتی در رباتیک ، نظارت، وسایل نقلیه خودران و اتوماسیون صنعتی ایدهآل میسازد.
برای مثال، سیستمهای تعبیهشده از شتابدهندههای سختافزاری مانند واحدهای پردازش گرافیکی (GPU) یا واحدهای پردازش تانسور (TPU) استفاده میکنند که به اجرای وظایف محاسباتی سنگین کمک میکنند. به طور کلی، GPU ها در اجرای الگوریتم های بینایی پیچیده مانند شبکه های عصبی کانولوشن (CNN) با سرعت بسیار بالا بسیار مفید هستند.
نکته دیگر، اگر یک سیستم تعبیه شده با تجهیزات جانبی مانند حسگرهای LiDAR و IMU (واحد اندازه گیری اینرسی) ادغام شود، بینش عالی در مورد داده های بینایی با اطلاعات عمق و حرکت ارائه می دهد. همه اینها متعاقباً به تصمیم گیری قوی کمک می کند.
اجزای کلیدی در پروژه های سیستم جاسازی شده مبتنی بر CV
بینایی کامپیوتر برای پردازش و تفسیر دادههای بصری به شدت به اجزای سختافزار و نرمافزار تخصصی متکی است. اینجاست که سیستم های تعبیه شده در قالب پردازنده ها، کنترلرها، حسگرها و بسیاری دیگر وارد عمل شدند.
در اینجا نگاهی دقیق به اجزای اصلی داریم:
قطعات سخت افزاری
دوربین ها و سنسورهای تصویر
این حسگرها دستگاه های اصلی برای ثبت تصاویر و داده های ویدئویی هستند. حسگرهای تصویر، اطلاعات نوری را برای پردازش به سیگنال های الکتریکی تبدیل می کنند.
پردازنده ها
پردازنده های پرسرعت می توانند الگوریتم های CV مورد نیاز برای تجزیه و تحلیل تصویر و تصمیم گیری را اجرا و اجرا کنند. به عنوان مثال میتوان به پردازندههای همه منظوره (GPP)، واحدهای میکروکنترلر (MCU) یا گزینههای تخصصیتر مانند واحدهای پردازش گرافیکی (GPU) و آرایههای دروازه قابل برنامهریزی میدانی (FPGA) اشاره کرد.
حافظه
ماژول های حافظه با سرعت بالا الگوریتم ها و داده های موقت مورد نیاز برای کارهای پردازش تصویر را ذخیره می کنند. این ممکن است شامل RAM برای دسترسی فوری به داده ها و حافظه فلش برای ذخیره سازی طولانی مدت باشد.
ماژول های اتصال
ماژول های اترنت و وای فای سیستم را قادر می سازند تا با دستگاه ها یا شبکه های دیگر ارتباط برقرار کند. ماژول های اتصال برای برنامه هایی مانند نظارت بلادرنگ یا وسایل نقلیه خودران بسیار مهم هستند.
منبع تغذیه
منبع تغذیه یک وسیله الکتریکی است که نیروی الکتریکی را برای بار الکتریکی تامین می کند. منابع انرژی کارآمد و قابل اعتماد برای مدل های بینایی کامپیوتری بسیار مهم هستند. به خصوص برای سیستم هایی که در تنظیمات از راه دور یا مستقل مستقر هستند. این ممکن است شامل باتری ها، سلول های خورشیدی (سلول های فتوولتائیک) و غیره باشد.
اجزای نرم افزار
سیستم عامل
یک سیستم عامل (OS) حافظه و فرآیندهای یک سیستم کامپیوتری و همچنین تمامی نرم افزارها و سخت افزارهای آن را مدیریت می کند. برای یک پروژه سیستم جاسازی شده مبتنی بر CV، سیستم عامل های بلادرنگ (RTOS) بهترین هستند. RTOS برنامه ها را در زمان بندی دقیق اجرا می کند.
الگوریتم های بینایی کامپیوتر
الگوریتم ها مجموعه ای از رویه ها هستند که سیستم های کامپیوتری را قادر می سازند تا داده های بصری را تفسیر و پردازش کنند. آنها کارهایی مانند تشخیص اشیا، طبقه بندی، ردیابی اشیا و غیره را انجام می دهند.
کتابخانه های پردازش داده
کتابخانه ها بخش هایی از کد حیاتی هستند که قبلاً برای شما ساخته شده اند. به عنوان مثال، OpenCV توابع از پیش ساخته شده ای را برای عملیات های مختلف پردازش تصویر فراهم می کند. کتابخانه داده پردازش را تسریع می کند.
این اجزا با هم کار می کنند تا به سیستم های تعبیه شده در پروژه های بینایی کامپیوتری اجازه دهند تا وظایف بصری پیچیده ای را انجام دهند. آنها داده ها را به طور موثر پردازش می کنند و به نشانه های محیطی در زمان واقعی واکنش نشان می دهند.
نمونه های واقعی از پروژه های سیستم جاسازی شده
دوربین های مداربسته هوشمند
دوربین های مداربسته ضبط های لحظه ای را به ایستگاه های نظارت ارسال می کنند. مجری قانون و سازمان های دولتی از سیستم های نظارتی هوشمند برای کشف، پیشگیری و بررسی جرایم استفاده می کنند. همچنین برای شناسایی نفوذهای غیرمجاز و نظارت بر فعالیت ها در یک مرکز عمومی، خصوصی یا شرکتی بسیار مفید است. این دوربین ها از پردازش ویدیوی بلادرنگ برای تشخیص چهره ها، تشخیص حرکت و طبقه بندی اشیا استفاده می کنند. آنها دستگاه های کم مصرف و بسیار بادوام هستند.
این دوربین ها از YOLO (شما فقط یک بار نگاه می کنید) یا SSD (تک شات MultiBox Detector) را برای تشخیص اشیا استفاده می کنند . YOLO و SSD الگوریتمهای بینایی رایانهای هوشمند هستند که برای پردازش دادهها به سیستمها/سختافزار تعبیهشده نیاز دارند. بردهای جاسازی شده مانند NVIDIA Jetson Nano داده های این دوربین های نظارتی را به طور موثر پردازش می کنند.
ناوبری خودران خودرو
همانطور که می دانید، یک وسیله نقلیه خودمختار می تواند بدون دخالت انسان، محیط خود را تشخیص دهد و در مورد رانندگی تصمیم بگیرد. سیستم های تعبیه شده در این زمینه کمک زیادی می کنند. این خودروهای خودران دارای مجموعهای از نرمافزارها و سختافزارهای تعبیهشده با هوش مصنوعی مانند پردازندهها، کنترلکنندهها، حسگرها و غیره هستند که برای تشخیص خط، اجتناب از موانع، تشخیص علائم راهنمایی و رانندگی و بسیاری موارد دیگر میباشد. مجهز به دوربینهای استریو، LiDAR و حسگرهای رادار برای نقشهبرداری سهبعدی و محلیسازی اشیا.
پلتفرمهای تعبیهشده مبتنی بر CV مانند NVIDIA Xavier یا Intel Movidius Myriad X، پردازش بیدرنگ الگوریتمهای یادگیری عمیق را امکانپذیر میکنند . معمولاً از مدلهای تقسیمبندی معنایی و R-CNN سریعتر استفاده میشود. به طور مشابه، پردازنده های با عملکرد بالا مانند NVIDIA Jetson یا Google Coral این سخت افزار را تامین می کنند. این پردازندههای تعبیهشده در خودروهای خودران متعاقباً پردازش دادهها و تصمیمگیری در زمان واقعی را برای ناوبری ایمن امکانپذیر میسازند.
کنترل کیفیت صنعتی
کنترل کیفیت به شرکت کمک می کند تا خواسته های مصرف کننده خود را برآورده کند. بنابراین، در هر تاسیسات صنعتی از اهمیت بالایی برخوردار است. سیستمهای بینایی جاسازی شده میتوانند به شرکتها کمک کنند تا محصولات خود را از نظر نقص و ناهماهنگی بررسی کنند. آنها می توانند تصاویری با وضوح بالا از خط مونتاژ خود بگیرند. سپس آنها را برای عیوب ساخت و عدم انطباق تجزیه و تحلیل کنید. ربات های صنعتی یکی از نمونه های بارز آن هستند. آنها همچنین ممکن است در تولید برای کاهش خطاهای انسانی کمک کنند. همچنین کارایی و بهره وری را افزایش می دهد.
دوربین های پرسرعت جفت شده با FPGA های صنعتی در ربات های صنعتی می توانند تصاویر را در فواصل میلی ثانیه پردازش کنند. این سیستم ها همچنین می توانند با PLC ها (کنترل کننده های منطقی قابل برنامه ریزی) ادغام شوند تا اکثر فرآیندهای خود را خودکار کنند.

پروژه سیستم جاسازی شده در کامپیوتر ویژن
سیستم های تشخیص چهره
سیستم های تشخیص چهره در گوشی های هوشمند یا سیستم های کنترل دسترسی از پردازنده های فشرده مانند ARM Cortex-A53 استفاده می کنند. این برای اجرای استخراج ویژگی های صورت با استفاده از آبشار هار یا مدل های شبکه عصبی است. یکی دیگر از مهمترین کاربردهای سیستم های تعبیه شده. شرایط نوری متغیر می تواند کار را بسیار دشوارتر کند. بنابراین، تمام سیستم های تشخیص چهره باید دارای سنسورهای هوشمند و دوربین های عمق برای بهبود دقت در شرایط نوری متغیر باشند. به همان اندازه برای کاربردهای بیومتریک حیاتی است.
دستگاه های تصویربرداری پزشکی
دستگاه های تصویربرداری پزشکی ابزاری حیاتی در پزشکی مدرن هستند. تجهیزات پزشکی هوشمند هوشمند صنعت پزشکی را متحول می کند. در این زمینه، پردازندهها و کنترلکنندههای تعبیهشده سوخت پشت آن هستند. این دستگاه ها به متخصصان مراقبت های بهداشتی امکان تجزیه و تحلیل بالینی و مداخله پزشکی را می دهند.
به عنوان مثال، دستگاه های اسکن اشعه ایکس، ام آر آی و سی تی اسکن از سیستم های تعبیه شده برای کنترل انتشار تشعشعات استفاده می کنند. آنها تصاویری از تمام قسمت های داخلی بدن به طور دقیق و دقیق می گیرند. دستگاه های MRI از پردازنده های سیگنال دیجیتال (DSP) برای پردازش سیگنال های فرکانس بالا به تصاویر دقیق استفاده می کنند. سیستم های جاسازی شده، نوآوری در بخش پزشکی را هدایت می کنند.
ارزش ارائه شده توسط سیستم های جاسازی شده مدل های بینایی کامپیوتری
سیستم های جاسازی شده مدل های بینایی کامپیوتری را تقویت می کنند. هنگامی که آنها با یک مدل بینایی کامپیوتری ادغام می شوند، مقادیر غیرقابل شمارش را ارائه می دهند، از افزایش سرعت پردازش گرفته تا دقت و قابلیت اطمینان.
بیایید برخی از مقادیر کلیدی را مورد بحث قرار دهیم.
پردازش زمان واقعی
مزیت شماره یک پردازش بلادرنگ است. سیستم های جاسازی شده داده های بصری را به صورت آنی پردازش می کنند. این به تصمیم گیری بلادرنگ در برنامه هایی مانند وسایل نقلیه خودران، نظارت و غیره کمک می کند.
طراحی فشرده و یکپارچه
سیستم های جاسازی شده اساساً سیستم روی تراشه (SoS) هستند. چندین پردازنده و رابط را در یک تراشه جاسازی می کند. سیستم های تعبیه شده حسگرها، پردازنده ها و نرم افزارها را در یک واحد فشرده ادغام می کنند. این طراحی فشرده نیاز به فضا و سخت افزار را کاهش می دهد. در پهپادها و دستگاه های تلفن همراه که در آن فضا و وزن محدودیت هستند، بسیار مهم است.
بهره وری انرژی
دستگاه های پرمصرف یا غیر ضروری هم برای خریداران و هم برای تولیدکنندگان جذابیتی ندارند. سیستم های جاسازی شده دستگاه های کم مصرف هستند. آنها طوری طراحی شده اند که انرژی کمتری مصرف کنند. برای کار به حداقل انرژی نیاز دارد، به ویژه در سناریوهایی که منابع برق محدود یا غایب هستند. همچنین ردپای انرژی در استقرار در مقیاس بزرگ را کاهش می دهد.
قابلیت سفارشی سازی
طراحان می توانند سیستم های تعبیه شده را برای برآوردن نیازهای دقیق برنامه های کاربردی خاص سفارشی کنند. از انتخاب حسگر گرفته تا الگوریتم های نرم افزاری سفارشی، انواع سفارشی سازی امکان پذیر است. این قابلیت سفارشیسازی به توسعهدهندگان اجازه میدهد تا عملکرد و عملکرد خاص کار را بهینه کنند.
مقیاس پذیری
سیستم های تعبیه شده مقیاس پذیر هستند. همه به لطف ماهیت SoS آن است. چه برای اتوماسیون صنعتی افزایش یابد و چه برای لوازم الکترونیکی مصرفی (دستگاه های کوچک اینترنت اشیاء اینترنت اشیا). این سیستم ها می توانند با طیف وسیعی از خواسته های مصرف کننده سازگار شوند.
تعامل دنیای واقعی
حسگرها و پردازندههای تعبیهشده تعاملات دنیای واقعی را افزایش میدهند. آنها دستگاه های هوشمند را قادر می سازند تا ورودی های بصری را درک کنند، تجزیه و تحلیل کنند و به طور هوشمندانه به آنها پاسخ دهند. به تعاملات تعاملی با دنیای فیزیکی اجازه دهید. این تعامل در کاربردهایی مانند رانندگی خودکار، نمایشگرهای خرده فروشی تعاملی و موارد دیگر اساسی است.
بینایی کامپیوتر، سیستم های جاسازی شده و برنامه های کاربردی هوش مصنوعی
به لطف گستره وسیع پلتفرمهای سختافزاری و تعداد کتابخانههای منبع باز برای یادگیری ماشین و هوش مصنوعی (AI)، سیستمهای بینایی کامپیوتری بیشتری را میتوان بهسرعت بهعنوان سیستمهای جاسازی شده/دستگاههای اینترنت اشیا مستقر کرد . برنامه های تخصصی هوش مصنوعی برای بینایی کامپیوتر در سیستم های تعبیه شده بسیار رقابتی هستند و ارزش بالایی دارند . اگر بتوانید از برخی سخت افزارهای استاندارد و منبع باز بهره ببرید، می توانید به سرعت نسخه قدرتمند 1.0 محصول جدید خود را بسازید و به سرعت وارد بازار شوید.
بینایی کامپیوتر در سیستمهای تعبیهشده از کاربردهای فراوانی برخوردار است، بهویژه زمانی که قابلیتهای هوش مصنوعی در این سیستمها آورده شود. برخی از حوزه های کاربردی مهم آینده عبارتند از:
- تولید و صنعت 4.0. بازرسی نقص، بازرسی دارایی تولید، و ردیابی دارایی در داخل و خارج از یک کارخانه متصل، همگی به ترکیبی از دید کامپیوتری در سیستمهای تعبیهشده و هوش مصنوعی نیاز دارند.
- وسایل نقلیه خودران و روباتیک. این سیستم ها برای تعامل ایمن با دنیای اطراف خود به بینایی رایانه همراه با مدل های قدرتمند هوش مصنوعی ادامه خواهند داد.
- امنیت. تشخیص اشیاء، تقسیم بندی اشیا، تشخیص چهره، تشخیص ژست و بسیاری دیگر از وظایف پردازش صوتی و تصویری با یک سیستم تعبیه شده با قابلیت هوش مصنوعی با دید کامپیوتری بسیار آسان تر می شود.
- تجربیات مشتری همه با موتورهای توصیه در سرویسهای استریم آشنا هستند که قبلاً به مدلهای یادگیری ماشینی متکی هستند.
هر سیستم تعبیهشدهای که میخواهید برای کاربردهای بینایی ماشین خودکار (مثلاً پردازش تصویر و ویدیو در زمان واقعی) استفاده کنید، حداقل باید یک نسخه سادهشده از یک سیستم عامل استاندارد و کتابخانههای استاندارد برای مدلهای یادگیری ماشین را اجرا کند. اگرچه میتوانید این قابلیتها را در یک FPGA برنامهریزی کنید، اما مسلماً انجام این کار با یک MCU قدرتمند یا کامپیوتر روی ماژول (COM) آسانتر است.
استفاده از MCU معمولاً مستلزم تهیه یک برد ارزیابی و تطبیق آن با کاربرد مورد نظر شماست. برخی از تولیدکنندگان، طرحهای برد خود را برای دانلود رایگان در دسترس قرار میدهند و به شما این امکان را میدهند که سختافزار موجود را با کاربرد خاص خود تطبیق دهید. یک راه سریعتر برای استقرار محصولات جدید در این زمینهها، طراحی یک سیستم تعبیهشده بر روی یک پلتفرم سختافزاری اثباتشده با COM یا SoM است. استفاده از COM مبتنی بر MPU یا GPU از دیدگاه طراحی بسیار آسانتر است.
این ماژولها با کانکتورهای استاندارد به یک برد سفارشی متصل میشوند و مسیریابی در برد به شدت استاندارد شده است. این بردها نیازی به پیشرفت بیش از حد ندارند، مگر اینکه ماژولهای دیگری را مانند ماژولهای فرکانس رادیویی گیگاهرتز ، در یک برد واحد ادغام کنید. گذشته از این مورد خاص، اتخاذ رویکردی ماژولار و طراحی یک مادربرد سفارشی کوچک برای پشتیبانی از COM در کنار سایر ماژولها بسیار آسان است .