نوشته‌ها

بینایی ماشین و تضاد آن با بینایی کامپیوتر در چگونگی ایجاد تصویر و پردازش آن است. بینایی کامپیوتر هر روزه در فیلمبرداری و عکسبرداری دنیای واقعی انجام می شود. بینایی ماشین در حالت های بسیار ساده انجام می شود. قابلیت اعتماد افزایش می یابد، در حالی که هزینه ی تجهیزات و پیچیدگی الگوریتم کاهش می یابد.

در نتیجه در کارخانه ها بینایی ماشین برا ی ربات ها استفاده می شود، در حالی که بینایی کامپیوتر بیشتر برای ربات هایی که در محیط های انسانی عمل می کنند، مناسب است. بینایی ماشین ابتدایی تر است ولی کاربردی تر است، در حالی که بینایی کامپیوتر به هوش مصنوعی بستگی دارد.
منبع 

بینایی کامپیوتر

Computer Vision
Field of robotics in which programs attempt to identify objects represented in digitized images provided by video cameras, thus enabling robots to “see.” Much work has been done on stereo vision as an aid to object identification and location within a three-dimensional field of view. Recognition of objects in real time, as would be needed for active robots in complex environments, usually requires computing power beyond the capabilities of present-day technology. See also pattern recognition.

بینایی کامپیوتر گرایشی از رباتیک است که در آن ، با شناسایی اشیاء موجود در تصاویر دیجیتالی بدست آمده از دوربین های فیلم برداری ، امکان “دیدن” را برای ربات ها فراهم می سازد. تا کنون کار های زیادی بر روی دید دوگانه (استریو ویژن) جهت کمک به شناسایی و مکان جسم در سه بعد انجام شده است. جهت شناسایی اشیا به صورت بلادرنگ که ربات ها در محیط های پیچیده بدان نیازمندند ، معمولا احتیاج به قدرت محاسباتی فراتر از تکنولوژی روز داریم.
منبع : Britannica Encyclopedia

پردازش تصویر

image processing
به مجموعه عملیاتی که یک ماشین الکترونیکی(مثلا کامپیوتر) به منظور ویرایش تصاویر انجام میدهد پردازش تصویر گفته می شود.
مثال: به تمامی عملیاتی که در برنامه فوتوشاپ بر روی تصاویر انجام میشود پردازش تصویر گفته می شود.
بین سه عبارت “پردازش تصویر” و “بینایی کامپیوتر” و “بینایی ماشین” تفاوت وجود دارد. که متاسفانه در ایران خیلی ها فرق این ها را نمی دانند و به همه ی آن ها می گویند پردازش تصویر !
منبع

استفاده از حس گرها برای دریافت سیگنال هایی که تشکیل دهنده تصویر یک شی هستند که توسط کامپیوتر و یا سایر وسایل پردازش سیگنال برای تفسیر و تحلیل سیگنال‌های دریافت شده از قطعه مورد استفاده قرار می گیرد.

Machine vision به عنوان یک ابزار مهندسی در ابزارهای دیجیتال و در شبکه‌های کامپیوتری، برای کنترل ابزارهای صنعتی دیگر از قبیل کنترل بازوهای روبات و یا خارج کردن تجهیزات معیوب به کار می رود. در حقیقت Machine vision شاخه ای از علم مهندسی است که به رشته‌های علوم کامپیوتری (Computer science) و علم نورشناسی و مهندسی مکانیک و اتوماسیون صنعتی ارتباط دارد. یکی از مهمترین پر استفاده‌ترین کاربردهای آن در بازبینی و بررسی کالاهای صنعتی از جمله نیمه هادیها، اتومبیل ها، مواد خوراکی و دارو می باشد.

همانند نیروی انسانی که با چشم غیر مسلح در خط تولید کالاها را برای تعیین کیفیت و نوع ساخت آنها بازبینی می کنند، Machine vision از دوربین‌های دیجیتال و دوربین‌های هوشمند و نرم‌افزارهای image processing (پردازش تصویر) برای این کار استفاده می کند. دستگاههای مربوطه (Machine vision) برای انجام دادن وظایفی خاص از جمله شمردن اشیاء در بالابرها، خواندن شماره سریالها (Serial numbers)، جستجوی سطح‌های معیوب به کار می روند.

در حال حاضر صنعت استفاده زیادی از سیستم ماشین بینایی برای بازبینی تصویری اشیاء (Visual inspection) که نیاز به سرعت بالا و دقت بالا و کار ۲۴ ساعته و تکرار محابات بالا دارد، وجود دارد. اگرچه انسان عملکرد بهتر و قابلیت تطبیق دهی بیبشتری برای خطاهای تازه در زمان کوتاه دارد ولی با توجه به ویژگی‌های ذکر شده این دستگاهها به مرور جای نیروی انسانی را که به دلیل انحراف و شرایط بد دارای خطا می باشند، در صنعت پر می کند. کامپیوترها به همان صورتی که انسان می بیند نمی توانند ببینند.

دوربین‌ها همانند سیستم بینایی انسان نیستند و در حالی که انسان می تواند بر استنباط و فرضیات اتکا کند، تجهیزات کامپیوتری باید به وسیله آزمودن و تجزیه و تحلیل کردن جداگانه پیکسل‌ها و تلاش کردن برای انجام نتیجه گیری با توجه به پشتوانه اطلاعاتی و روش هایی مانند شناسایی الگو مشاهده کنند. علی رغم اینکه بعضی الگوریتم‌های machine vision برای تقلید کردن از سیستم بینایی انسان توسعه یافته اند، تعداد معدودی روش برای تحلیل و شناسایی ویژگیهای مرتبط تصاویر به صورت مؤثر و ثابت توسعه یافته اند.

سیستم‌های Machine vision و computer vision قادر هستند به صورت ثابت تصاویر را تجزیه و تحلیل کنند، ولی image processing بر پایهٔ کامپیوتر به صورت کلی برای انجام کارهای تکراری طراحی می شوند و علی رغم پیشرفت‌های صورت گرفته در این زمینه، هیچ سیستم machine vision و computer vision قادر نیست با برخی از ویژگی‌های سیستم بینایی انسان در قالب درک تصویر، تلرانس به تغییرات نور، تضعیف قدرت تصویر و تغییرات اجزا و… تطبیق پیدا کند.
منبع

اجزای یک سیستم ماشین بینایی :

اگرچه “Machine vision” بیشتر به عنوان یک پروسهٔ به کار بستنٍ “Machine vision” در کاربردهای صنعتی شناخته شده است، برای لیست کردن اجزای سخت‌افزاری و نرم‌افزاری به کار برده شده نیز مفید می باشد. معمولاً یک Machine vision از اجزای زیر ساخته می شود :

۱٫ یک و یا چند دوربین دیجیتال یا آنالوگ ( سیاه-سفید یا رنگی ) با اپتیک مناسب برای گرفتن عکس.
۲٫ واسطه ای که عکس‌ها را برای پردازش آماده می سازد. برای دوربین‌های آنالوگ این واسطه شامل یک دیجیتال کننده عکس است. هنگامی که این واسطه یک سخت‌افزارٍ جدا باشد، به آن Frame grabber ( کارتی که برای دریافت سیگنال تصویری و فرستادن آن به کامپیوتر استفاده می شود)می گویند.
۳٫ یک پردازشگر ( گاهی یک PC یا پردازنده تعبیه شده ( Embedded Processor ) مانند DSP
۴٫ نرم‌افزار Machine vision : این نرم‌افزار امکاناتی برای توسعه یک برنامه نرم‌افزاری که برای کاربردی مشخص است را فراهم می کند.
۵٫ سخت‌افزار ورودی / خروجی ( مثلا I/O دیجیتال ) یا حلقه‌های ارتباطی ( مثلا ارتباط شبکه ای یا RS-232 ) برای گزارش نتایج.
۶٫ یک دوربین هوشمند : یک وسیله ساده که همه موارد فوق را داراست.
۷٫ لنزهایی که بتواند به مقدار مطلوبی روی سنسور تصویر زوم کند.
۸٫ منابع نوری مناسب و گاهی خیلی مخصوص ( مثلا چراغهای LED، فلورسنت، لامپهای هالوژن و . . . )
۹٫ یک برنامهٔ مشخص که بتواند تصاویر را پردازش کرده و مشخصه‌های مربوط و مناسب را شناسایی کند.
۱۰٫ یک سنسور همزمان ساز برای شناسایی اجزا ( گاهی یک سنسور نوری و یا یک سنسور مغناطیسی ) : این سنسور برای راه اندازی سیستمٍ استخراج و پردازش تصویر می باشد.

سنسور همزمان ساز تعیین می‌کند که چه زمانی یک بخش ( که معمولاً روی یک حمل کننده حرکت می کند) در موقعیتی قرار گرفته است که باید مورد بررسی واقع شود. این سنسور هنگامیکه از زیر دوربین می گذرد و یک پالس نوری برای ثابت نگهداشتن تصویر ایجاد می‌کند، دوربین را برای گرفتن عکس فعال می کند.

نوری که برای روشن کردن آن بخش به کار می رود در واقع برای آن است که مشخصه‌های مطلوب را برجسته و مشخصات نامطلوب ( مثل سایه‌ها و یا انعکاس ها) را به حداقل برساند. معمولاً پنل‌های LED با اندازه و طراحی مناسب برای این هدف مورد استفاده قرار می گیرند.

تصویر دوربین یا توسط یک frame grabber و یا توسط یک حافظه کامپیوتری (که در آن از frame grabber استفاده نشده است) گرفته می شود. frame grabber یک وسیله دیجیتال کننده است ( یا در داخل دوربین هوشمند و یا بطور جداگانه) که خروجی دوربین را به فرمت دیجیتال تبدیل کرده ( معمولاً این فرمت از یک آرایه دو بعدی از اعداد تشکیل شده که هر عدد متناظر شدت روشنایی نقطه متناظر در آن تصویر می باشد. به این نقاط پیکسل می گویند.) و سپس تصویر را به منظور پردازش توسط نرم‌افزارٍ Machine vision در حافظه کامپیوتر ذخیره می کند.

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

در نهایت با توجه به ضوابط و معیارهای برنامه ریزی شده ممکن است بخشی را بپذیرد و یا رد کند. اگر یک بخش رد شد، نرم‌افزار به یک دستگاه مکانیکی فرمان می دهد تا آن بخش را خارج کند و همچنین سیستم خط تولید را قطع کرده و به کارگر هشدار می دهد تا مشکلی که باعث ایجاد خطا شده را رفع نماید. اگرچه اکثر Machine vision‌ها بر مبنای دوربین‌های سیاه–سفید بنا نهاده شده اند، استفاده از دوربین‌های رنگی در حال رایج شدن است.

همچنین امروزه شاهد شیوع فراوان استفاده از تجهیزات دوربین‌های دیجیتال به جای یک دوربین و یک frame grabber جداگانه در Machine vision هستیم. استفاده از یک دوربین دیجیتال به منظور برقراری ارتباط مستقیم، باعث صرفه جویی در هزینه و نیز سادگی سیستم خواهد شد. دوربین‌های هوشمند که در داخل آنها embedded processor‌ها تعبیه شده اند، در حال تسخیر سهم بالایی از بازار Machine vision‌ها هستند.

استفاده از یک embedded processor ( و یا یک پردازنده بهینه ) نیاز ما به frame grabber و یک کامپیوتر خارجی را از بین می برد. به همین خاطر این پردازنده‌ها باعث کاهش هزینه، کاهش پیچیدگی سیستم و همچنین اختصاص توان پردازشی مشخص به هر دوربین می شود. دوربین‌های هوشمند معمولاً ارزان تر از سیستمهای شامل یک دوربین و یک برد و یک کامپیوتر خارجی هستند. همچنین توان بالای embedded processor و DSP‌ها منجر به بالا رفتن عملکرد و توانایی آنها نسبت به سیستمهای مرسوم ( که بر مبنای PC هستند ) شده است.
منبع

روش‌های پردازش :

شمارش پیکسل :

شمردن تعداد پیکسل‌های روشن و تاریک.

تعیین آستانه :

تبدیل یک عکس با قسمت‌های خاکستری به یک عکس سیاه و سفید به این طریق که با قرار دادن آستانه ای پیکسل‌های روشن تر از آن را سفید و پیکسل‌های تیره تر از آن را سیاه در نظر می گیریم.

بخش بندی کردن (Segmentation) :

تبدیل تصویر ورودی به بخش‌های مختلف برای موقعیت یابی و شمارش پیکسل ها.

تشخیص و شناسایی لکه‌ها و دستکاری :

بررسی یک عکس برای یافتن گسسته از بین تمامی پیکسل ها.(به عنوان مثال یک حفره سیاه رنگ در درون یک جسم خاکستری) این لکه‌ها به عنوان نشان اختصاصی عکس خواهند بود.

تشخیص و شناسایی توسط اجزاء موجود :

استخراج اجزاءی خاص از یک تصویر ورودی مثلا عکس.

تشخیص وشناسایی الگو به طور مقاوم در برابر تغییرات :

به این معنا که موقعیت جسمی که ممکن است چرخانده شود یا اندازه اش تغییر کند یا قسمتی از این جسم توسط جسم دیگر پوشانده شود، را به طور دقیق شناسایی کند.

خواندن بارکد :

شناسایی و تعیین کدهای یک بعدی (۱D) و دو بعدی (۲D) اسکن شده توسط ماشین‌ها طراحی شده است.

تشخیص و شناسایی کاراکتر نوری :

خواندن خودکار یک متن (مثال : یک رشته اعداد پشت سر هم).

اندازه گیری :

اندازه گیری ابعاد یک جسم (بر حسب میلی متر یا اینچ).

تشخیص و شناسایی لبه ها :

پیدا کردن لبه‌های یک جسم در یک تصویر.

تشخیص و شناسایی از طریق تطبیق الگو :

پیدا کردن، مطابقت دادن و شمارش اشکال خاص در یک تصویر.

در اکثرموارد یک سیستم Machine vision به منظور بررسی کامل یک تصویر، از زنجیره مرکبی از این تکنیکهای پردازش استفاده می کند. به عنوان مثال می توان به سیستمی اشاره کرد که بارکد را می خواند و هم سطح جسم را برای خراش احتمالی مورد بررسی قرار می دهد و هم ممکن است طول و عرض آن وسیله را اندازه گیری کند.
منبع

کاربردهای ماشین بینایی :

دستگاهای ماشین بینایی دارای کاربردهای متنوعی هستند که از آن جمله به طور خلاصه می توان به موارد زیر اشاره نمود :

۱٫ تولید صنعتی در مقیاس بزرگ.
۲٫ ساخت اجزایی که نیاز به زمان تولید مشخصی دارند.
۳٫ سیستمهای ایمنی موجود در محیط‌های صنعتی.
۴٫ بررسی مواد اولیه تولید ( مثلا کنترل کیفیت و بررسی وقوع خطا )
۵٫ کنترل موجودی انبار و سیستمهای مدیریتی ( شمارش، بارکد خواندن و ذخیره اطلاعات در سیستمهای دیجیتال )
۶٫ کنترل رباتهای تعقیب خطی که برای حمل بار در کارخانه‌های صنعتی استفاده می شوند.
۷٫ کنترل کیفیت و بهبود محصولات غذایی.
۸٫ ماشینی کردن اجزای کوچک صنعتی.
سیستم‌های ماشین بینایی به طور گسترده در صنعت تولید نیمه هادی ها کاربرد دارند. به راستی بدون وجود این سیستم‌ها تولید قطعات کامپیوتری کاهش می یابد. این دستگاهها برای بازبینی دقیق ویفرهای سیلیکونی و بردازش گرها به کار می روند. در صنعت خودروسازی، Machine vision برای هدایت روبات‌های صنعتی، سنجیدن مناسب بودن کالاهای مشخص شده برای اهدافی خاص و بازبینی سطح‌های رنگ شده ماشین جهت یافتن عیب. اگرچه تکنیک‌های مربوط به سیستمهای ماشین بینایی برای طیف‌های مرئی از اشیاء گسترش یافته اند ولی ممکن است مشابه با روش‌ها برای طیف‌های نامرئی نور مانند اشعه مادون قرمز یا اشعه به کار برده شوند.

زمینه‌های مربوط به ماشین بینایی :

ماشین بینایی به مهندسی سیستمهای تصویر در صنعت و تولید و همچنین به گستره وسیعی از علوم کامپیوتر شامل computer vision، کنترل تجهیزات، شبکه‌های کامپیوتری، مدارهای واسط و فراگیری ماشین مربوط می شود. لازم به ذکر است که دو مفهوم Machine vision و Computer vision نباید با یکدیگر اشتباه گرفته شوند. Computer vision مفهوم گسترده تری در حل مسائل تصویری دارد درحالیکه Machine vision یک روش مهندسی است که عموما در مسائل مهندسی کاربرد دارد.
منبع

كاربردهاي ماشين‌ بينايي در صنايع مختلف

ورق‌هاي فولاد، آلومينيوم، مس و …
ورق پليمري، كامپوزيت، كارتن پلاست و …
ورق‌هاي سلولوزي(كاغذ، مقوا، كارتن)
لوله و پروفيل فلزي
لوله پليمري و كابل
منسوجات (پارچه، موكت، فرش و بافته‌هاي صنعتي)
كاشي، سراميك و كفپوش‌هاي ديگر
مديريت و كنترل هوشمند ترافيك
صنايع هوافضا
بسته‌بندي و چاپ
صنايع خودرو
داروسازي و پزشكي
صنايع الكترونيك
صنايع غذايي

……………………..

[عکس: dp01.jpg]
صنايع فولاد، آلومينيوم، مس و …
• بازرسي و كنترل كيفيت سطح
• اندازه‌گيري عرض
• مانيتورينگ، آرشيو و بازبيني تصاوير محصول
• تهيه نقشه عيوب
• درجه‌بندي محصول

………………………………….
[عکس: dp02.jpg]
ورق پليمري، كامپوزيت، كارتن پلاست و …
• بازرسي و كنترل كيفيت سطح
• مانيتورينگ، آْرشيو و بازبيني تصاوير محصول
• تهيه نقشه عيوب
• درجه‌بندي محصول

……………………………….
[عکس: dp03.jpg]
ورق‌هاي سلولوزي(كاغذ، مقوا، كارتن)
• بازرسي و كنترل كيفيت سطح
• مانيتورينگ، آْرشيو و بازبيني تصاوير محصول
• تهيه نقشه عيوب
• درجه‌بندي محصول

……………………………….
[عکس: dp04.jpg]
لوله و پروفيل فلزي
• بازرسي و كنترل كيفيت سطح
• اندازه‌گيري ابعاد
• تهيه نقشه عيوب
• درجه‌بندي محصول

…………………………

[عکس: dp05.jpg]
لوله پليمري و كابل
• بازرسي و كنترل كيفيت سطح
• اندزه‌گيري قطر
• تهيه نقشه عيوب
• درجه‌بندي محصول

……………………………
[عکس: dp06.jpg]
منسوجات (پارچه، موكت، فرش و بافته‌هاي صنعتي)
• بازرسي الياف
• بازرسي نخ
• بازرسي بافت پارچه
• بازرسي چاپ
• تهيه نقشه عيوب

……………………………..
[عکس: dp07.jpg]
كاشي، سراميك و كفپوش‌هاي ديگر
• بازرسي سطح
• كنترل طرح چاپ
• کنترل سطح رنگ (Shade)
• درجه‌بندي
منبع

[عکس: dp08.jpg]
مديريت و كنترل هوشمند ترافيك
• آمار و اطلاعات ترافيكي
• كنترل هوشمند تقاطع
• كنترل ترافيك تونل‌ها و پل‌ها
• تشخيص سانحه
• ثبت تخلف سرعت

……………………………

[عکس: dp09.jpg]
صنايع هوافضا
• آشكارسازي اپتيكي
• هدايت و كنترل هوشمند
• رديابي اهداف متحرك
• نقشه‌برداري و پردازش تصاوير هوايي

…………………………..

[عکس: dp10.jpg]
بسته‌بندي و چاپ
• بازرسي چاپ
• بازرسي برچسب، باركد و تاريخ مصرف
• بازرسي بطري و ظرف محصول
• كنترل پربودن جعبه

………………………….

[عکس: dp11.jpg]
صنايع خودرو
• كنترل رباتهاي خط توليد
• كنترل ابعادي قطعات
• بازرسي سطح قطعات
• بازرسي رنگ خودرو
• بازرسي مونتاژ خودرو

………………………….

[عکس: dp12.jpg]
داروسازي و پزشكي
• كنترل بسته‌بندي انواع دارو
• بازرسي برچسب، باركد و تاريخ
• آشكارسازي و تشخيص تومورها
• پردازش تصاوير پزشكي(آنژيوگرافي، ماموگرافي و …)

…………………………….
[عکس: dp13.jpg]
صنايع الكترونيك
• بازرسي PCB
• بازرسي قطعات مونتاژشده
• بازرسي چاپ بورد
• بازرسي برچسب و باركد

……………………………..

[عکس: dp14.jpg]
صنايع غذايي
• بازرسي بطري و ظرف محصول
• درجه‌بندي ميوه‌ها، غلات، حبوبات و …
• بازرسي برچسب و باركد و تاريخ مصرف
• كنترل پربودن جعبه
منبع

بینایی ماشین

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

در حقیقت Machine vision شاخه‌ای از علم مهندسی است که به رشته‌های علوم کامپیوتری (Computer science) و علم نورشناسی و مهندسی مکانیک و اتوماسیون صنعتی ارتباط دارد. یکی از مهمترین پر استفاده‌ترین کاربردهای آن در بازبینی و بررسی کالاهای صنعتی از جمله نیمه هادیها، اتومبیل‌ها، مواد خوراکی و دارو می‌باشد. همانند نیروی انسانی که با چشم غیر مسلح در خط تولید کالاها را برای تعیین کیفیت و نوع ساخت آنها بازبینی می‌کنند، Machine vision از دوربین‌های دیجیتال و دوربین‌های هوشمند و نرم‌افزارهای image processing (پردازش تصویر) برای این کار استفاده می‌کند. دستگاههای مربوطه (Machine vision) برای انجام دادن وظایفی خاص از جمله شمردن اشیاء در بالابرها، خواندن شماره سریالها(Serial numbers)، جستجوی سطح‌های معیوب به کار می‌روند.
در حال حاضر صنعت استفاده زیادی از سیستم ماشین بینایی برای بازبینی تصویریاشیاء (Visual inspection) که نیاز به سرعت بالا و دقت بالا و کار ۲۴ ساعته و تکرار محاسبات بالا دارد، وجود دارد. اگرچه انسان عملکرد بهتر و قابلیت تطبیق دهی بیشتری برای خطاهای تازه در زمان کوتاه دارد ولی با توجه به ویژگی‌های ذکر شده این دستگاهها به مرور جای نیروی انسانی را که به دلیل انحراف و شرایط بد دارای خطا می‌باشند، در صنعت پر می‌کند. کامپیوترها به همان صورتی که انسان می‌بیند نمی‌توانند ببینند. دوربین‌ها همانند سیستم بینایی انسان نیستند و در حالی که انسان می‌تواند بر استنباط و فرضیات اتکا کند، تجهیزات کامپیوتری باید به وسیله آزمودن و تجزیه و تحلیل کردن جداگانه پیکسل‌ها و تلاش کردن برای انجام نتیجه‌گیری با توجه به پشتوانه اطلاعاتی و روش‌هایی مانند شناسایی الگو مشاهده کنند.
علی‌رغم اینکه بعضی الگوریتم‌های machine vision برای تقلید کردن از سیستم بینایی انسان توسعه یافته‌اند، تعداد معدودی روش برای تحلیل و شناسایی ویژگیهای مرتبط تصاویر به صورت مؤثر و ثابت توسعه یافته‌اند. سیستم‌های Machine vision و computer vision قادر هستند به صورت ثابت تصاویر را تجزیه و تحلیل کنند، ولی image processing بر پایهٔ کامپیوتر به صورت کلی برای انجام کارهای تکراری طراحی می‌شوند و علی‌رغم پیشرفت‌های صورت گرفته در این زمینه، هیچ سیستم machine vision و computer vision قادر نیست با برخی از ویژگی‌های سیستم بینایی انسان در قالب درک تصویر، تلرانس به تغییرات نور، تضعیف قدرت تصویر و تغییرات اجزا و… تطبیق پیدا کند.

سیستم اولیه ماشین بینایی Autovision II که در سال ۱۹۸۳ در یک نمایشگاه تجاری به عرضه گذاشته شد.

 سیستم اولیه ماشین بینایی Autovision II که در سال ۱۹۸۳ در یک نمایشگاه تجاری به عرضه گذاشته شد.

اجزای یک سیستم بینایی ماشین

اگرچه “بینایی ماشینی” بیشتر به عنوان یک فرآیند در کاربردهای صنعتی شناخته شده است، برای فهرست کردن اجزای سخت‌افزاری و نرم‌افزاری به کار برده شده نیز مفید می‌باشد. معمولاً یک بینایی ماشینی از اجزای زیر ساخته شده است:

  • ۱. یک یا چند دوربین دیجیتال یا آنالوگ (سیاه-سفید یا رنگی) با اپتیک مناسب برای گرفتن عکس.
  • ۲. واسطه‌ای که عکس‌ها را برای پردازش آماده می‌سازد. برای دوربین‌های آنالوگ این واسطه شامل یک دیجیتال کننده عکس است. هنگامی که این واسطه یک سخت‌افزارٍ جدا باشد، به آن Frame grabber (کارتی که برای دریافت سیگنال تصویری و فرستادن آن به کامپیوتر استفاده می‌شود) می گویند.
  • ۳. یک پردازشگر (گاهی یک PC یا پردازنده تعبیه شده (Embedded Processor) مانند DSP
  • ۴. نرم‌افزار Machine vision: این نرم‌افزار امکاناتی برای توسعه یک برنامه نرم‌افزاری که برای کاربردی مشخص است را فراهم می‌کند.
  • ۵. سخت‌افزار ورودی / خروجی (مثلاً I/O دیجیتال) یا حلقه‌های ارتباطی (مثلاً ارتباط شبکه ای یا RS-232) برای گزارش نتایج.
  • ۶. یک دوربین هوشمند: یک وسیله ساده که همه موارد فوق را داراست.
  • ۷. لنزهایی که بتواند به مقدار مطلوبی روی سنسور تصویر زوم کند.
  • ۸. منابع نوری مناسب و گاهی خیلی مخصوص (مثلاً چراغهای LED، فلورسنت، لامپهای هالوژن و . . .)
  • ۹. یک برنامهٔ مشخص که بتواند تصاویر را پردازش کرده و مشخصه‌های مربوط و مناسب را شناسایی کند.
  • ۱۰. یک سنسور همزمان ساز برای شناسایی اجزا (گاهی یک سنسور نوری یا یک سنسور مغناطیسی): این سنسور برای راه‌اندازی سیستمٍ استخراج و پردازش تصویر می‌باشد.

سنسور همزمان ساز تعیین می‌کند که چه زمانی یک بخش (که معمولاً روی یک حمل کننده حرکت می‌کند) در موقعیتی قرار گرفته است که باید مورد بررسی واقع شود. این سنسور هنگامیکه از زیر دوربین می‌گذرد و یک پالس نوری برای ثابت نگهداشتن تصویر ایجاد می‌کند، دوربین را برای گرفتن عکس فعال می‌کند. نوری که برای روشن کردن آن بخش به کار می‌رود در واقع برای آن است که مشخصه‌های مطلوب را برجسته و مشخصات نامطلوب (مثل سایه‌ها یا انعکاس‌ها) را به حداقل برساند.

معمولاً پنل‌های LED با اندازه و طراحی مناسب برای این هدف مورد استفاده قرار می‌گیرند. تصویر دوربین یا توسط یک frame grabber یا توسط یک حافظه کامپیوتری (که در آن از frame grabber استفاده نشده است) گرفته می‌شود. frame grabber یک وسیله دیجیتال کننده است (یا در داخل دوربین هوشمند یا بطور جداگانه) که خروجی دوربین را به فرمت دیجیتال تبدیل کرده (معمولاً این فرمت از یک آرایه دو بعدی از اعداد تشکیل شده که هر عدد متناظر شدت روشنایی نقطه متناظر در آن تصویر می‌باشد. به این نقاط پیکسل می‌گویند.) و سپس تصویر را به منظور پردازش توسط نرم‌افزارٍ Machine vision در حافظه کامپیوتر ذخیره می‌کند. به طور معمول نرم‌افزار، اقدامات متفاوتی را برای پردازش تصویر انجام می‌دهد.

گاهی در ابتدا تصویر برای کاهش نویز یا تبدیل سایه‌های خاکستری به ترکیب ساده‌ای از رنگهای سیاه و سفید دستکاری می‌شود (Binarization ). در قدم بعدی نرم‌افزار عمل شمردن، اندازه‌گیری و شناسایی اجسام، ابعاد، کاستی‌ها و مشخصات دیگر تصویر را انجام می‌دهد. در نهایت با توجه به ضوابط و معیارهای برنامه ریزی شده ممکن است بخشی را بپذیرد یا رد کند. اگر یک بخش رد شد، نرم‌افزار به یک دستگاه مکانیکی فرمان می‌دهد تا آن بخش را خارج کند و همچنین سیستم خط تولید را قطع کرده و به کارگر هشدار می‌دهد تا مشکلی که باعث ایجاد خطا شده را رفع نماید. اگرچه اکثر Machine visionها بر مبنای دوربین‌های سیاه–سفید بنا نهاده شده‌اند، استفاده از دوربین‌های رنگی در حال رایج شدن است.

همچنین امروزه شاهد شیوع فراوان استفاده از تجهیزات دوربین‌های دیجیتال به جای یک دوربین و یک frame grabber جداگانه در Machine vision هستیم. استفاده از یک دوربین دیجیتال به منظور برقراری ارتباط مستقیم، باعث صرفه جویی در هزینه و نیز سادگی سیستم خواهد شد. دوربین‌های هوشمند که در داخل آنها embedded processorها تعبیه شده‌اند، در حال تسخیر سهم بالایی از بازار Machine visionها هستند. استفاده از یک embedded processor (و یا یک پردازنده بهینه) نیاز ما به frame grabber و یک کامپیوتر خارجی را از بین می‌برد.

به همین خاطر این پردازنده‌ها باعث کاهش هزینه، کاهش پیچیدگی سیستم و همچنین اختصاص توان پردازشی مشخص به هر دوربین می‌شود. دوربین‌های هوشمند معمولاً ارزان تر از سیستمهای شامل یک دوربین و یک برد و یک کامپیوتر خارجی هستند. همچنین توان بالای embedded processor و DSPها منجر به بالا رفتن عملکرد و توانایی آنها نسبت به سیستمهای مرسوم (که بر مبنای PC هستند) شده است.

روش‌های پردازش

شمارش پیکسل

شمردن تعداد پیکسلهای روشن و تاریک.

تعیین آستانه

تبدیل یک عکس با قسمت‌های خاکستری به یک عکس سیاه و سفید به این طریق که با قرار دادن آستانه‌ای پیکسل‌های روشن تر از آن را سفید و پیکسل‌های تیره تر از آن را سیاه در نظر می‌گیریم.

بخش بندی کردن (Segmentation)

تبدیل تصویر ورودی به بخش‌های مختلف برای موقعیت یابی و شمارش پیکسل‌ها.

تشخیص و شناسایی لکه‌ها و دستکاری

بررسی یک عکس برای یافتن گسسته از بین تمامی پیکسل‌ها.(به عنوان مثال یک حفره سیاه رنگ در درون یک جسم خاکستری) این لکه‌ها به عنوان نشان اختصاصی عکس خواهند بود.

تشخیص و شناسایی توسط اجزاء موجود

استخراج اجزاءی خاص از یک تصویر ورودی مثلاً عکس.

تشخیص و شناسایی الگو به طور مقاوم در برابر تغییرات

به این معنا که موقعیت جسمی که ممکن است چرخانده شود یا اندازه اش تغییر کند یا قسمتی از این جسم توسط جسم دیگر پوشانده شود، را به طور دقیق شناسایی کند.

خواندن بارکد

شناسایی و تعیین کدهای یک بعدی (۱D) و دو بعدی (۲D) اسکن شده توسط ماشین‌ها طراحی شده است.

تشخیص و شناسایی کاراکتر نوری

خواندن خودکار یک متن (مثال: یک رشته اعداد پشت سر هم).

اندازه‌گیری

اندازه‌گیری ابعاد یک جسم (بر حسب میلی‌متر یا اینچ).

تشخیص و شناسایی لبه‌ها

پیدا کردن لبه‌های یک جسم در یک تصویر.

تشخیص و شناسایی از طریق تطبیق الگو

پیدا کردن، مطابقت دادن و شمارش اشکال خاص در یک تصویر.

در اکثرموارد یک سیستم Machine vision به منظور بررسی کامل یک تصویر، از زنجیره مرکبی از این تکنیکهای پردازش استفاده می‌کند. به عنوان مثال می‌توان به سیستمی اشاره کرد که بارکد را می‌خواند و هم سطح جسم را برای خراش احتمالی مورد بررسی قرار می‌دهد و هم ممکن است طول و عرض آن وسیله را اندازه‌گیری کند.

کاربردهای ماشین بینایی

همانطور که در بین حس‌های انسان بینایی از همه کاربرد وسیع تری دارد؛ بینایی ماشین نیز در زمینه‌های گوناگون کاربردهای متنوع و فراوانی دارد.

اتوماسیون صنعتی

دستگاهای ماشین بینایی دارای کاربردهای متنوعی هستند که از آن جمله به طور خلاصه می‌توان به موارد زیر اشاره نمود:

  • تولید صنعتی در مقیاس بزرگ.
  • ساخت اجزایی که نیاز به زمان تولید مشخصی دارند.
  • سیستمهای ایمنی موجود در محیط‌های صنعتی.
  • بررسی مواد اولیه تولید (مثلاً کنترل کیفیت و بررسی وقوع خطا)
  • کنترل موجودی انبار و سیستمهای مدیریتی (شمارش، بارکد خواندن و ذخیره اطلاعات در سیستمهای دیجیتال)
  • کنترل رباتهای تعقیب خطی که برای حمل بار در کارخانه‌های صنعتی استفاده می‌شوند.
  • کنترل کیفیت و بهبود محصولات غذایی.
  • ماشینی کردن اجزای کوچک صنعتی.

سیستم‌های ماشین بینایی به طور گسترده در صنعت تولید نیمه هادی‌ها کاربرد دارند. به راستی بدون وجود این سیستم‌ها تولید قطعات کامپیوتری کاهش می‌یابد. این دستگاهها برای بازبینی دقیق ویفرهای سیلیکونی و پردازش گرها به کار می‌روند. در صنعت خودروسازی، Machine vision برای هدایت روبات‌های صنعتی، سنجیدن مناسب بودن کالاهای مشخص شده برای اهدافی خاص و بازبینی سطح‌های رنگ شده ماشین جهت یافتن عیب. اگرچه تکنیک‌های مربوط به سیستمهای ماشین بینایی برای طیف‌های مرئی از اشیاء گسترش یافته‌اند ولی ممکن است مشابه با روش‌ها برای طیف‌های نامرئی نور مانند اشعه مادون قرمز یا اشعه به کار برده شوند.

حمل و نقل

پلاک خوان

تشخیص کاراکترهای پلاک از جمله کاربردهای فراگیر ماشین بینایی می‌باشد. با شناساندن کاراکترهای پلاک هر کشور به سیستم پردازشی و جستجوی شباهت میان آن‌ها و تصاویر ورودی دوربین می‌توان پلاک موجود در تصویر را خواند. این سیستم‌ها در پارکینگ‌های هوشمند؛ ورودی و خروجی سازمان‌ها و مجتمع‌های بزرگ جهت کنترل تردد مورد استفاده قرار می‌گیرد. علاوه بر اینها در صورت پلاک خوانی یک خودرو در ابتدا و انتهای یک مسیر می‌توان سرعت میانگین آن را محاسبه و متخلفین را اعمال قانون کرد.

سرعت سنج

با استفاده از تصویر دو دوربین می‌توان عمق تصویر را بدست آورد و از این طریق تغییرات عمق را می‌توان بدست آورد که به معنی سرعت است. در نوعی از سرعت سنج‌های بزرگراهی از بینایی ماشین جهت استخراج سرعت استفاده می‌شود. مزیت این سیستم‌ها بر نمونه‌های مشابهی که از رادار یا لیزر برای سرعت سنجی بهره می‌برند؛ پسیو بودن آن‌ها است. پسیو بودن به این معنی است که امواجی از خود صادر نمی‌کنند و به همین علت استفاده از jammer یا detector به منظور جلوگیری از ثبت تخلف کارایی ندارد. این سیستم‌ها در نوع ثابت و متحرک طراحی می‌شوند. سیستم‌های ثابت در کنار خیابان، جاده یا بزرگراه نصب شده و سیستم‌های متحرک بر روی خودروی‌های پلیس نصب می‌شوند. از این سیستم‌ها می‌توان به عنوان تردد شمار و سیستم کنترل ترافیک نیز بهره برد.

ثبت تخلف چراغ راهنمایی و رانندگی

با پردازش تصاویر دوربین‌های نصب شده در تقاطع‌ها می‌توان زمان، سرعت، جهت حرکت و پلاک خودروها را بدست آورد و بدین ترتیب تخلفات متنوعی از جمله عبور از چراغ قرمز، توقف روی خط عابر پیاده، گردش به چپ و راست و تخطی از سرعت مجاز هنگام عبور از تقاطع را ثبت کرد.

ایمنی رانندگی

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

تشخیص حجم

با توجه به اینکه سیستم‌های ماشین بینایی قادرند مشخصات مکانی نقاط تصاویر را استخراج کنند، می‌توان از آن‌ها به عنوان سیستم‌های تشخیص حجم بهره برد. به عنوان نمونه می‌توان به سیستم تشخیص حجم بار خودروهای سنگین اشاره کرد. این سیستم‌ها در محل‌های دفن زباله پسماند یا نخاله ساختمانی، معادن و کارخانجات تولید مصالح ساختمانی کاربرد دارد.

زمینه‌های مربوط به ماشین بینایی

ماشین بینایی به مهندسی سیستمهای تصویر در صنعت و تولید و همچنین به گستره وسیعی از علوم کامپیوتر شامل computer vision، کنترل تجهیزات، شبکه‌های کامپیوتری، مدارهای واسط و فراگیری ماشین مربوط می‌شود. لازم به ذکر است که دو مفهوم Machine vision و Computer vision نباید با یکدیگر اشتباه گرفته شوند. Computer vision مفهوم گسترده تری در حل مسائل تصویری دارد درحالیکه Machine vision یک روش مهندسی است که عموماً در مسائل مهندسی کاربرد دارد.

منبع


بینایی ماشین چیست؟


بینایی ماشین 
شاخه ای از دانش است که سعی دارد از طریق پردازش تصاویر دوبعدی، جهان سه بعدی پیرامون را بازسازی و تفسیر کند. به بیان ساده، بینایی ماشین یعنی اینکه کامپیوترها بتوانند جهان را به کمک دوربین‌ها ببینند، بفهمند و حتی از بینایی انسان پیشی بگیرند. بینایی ماشین می‌تواند در هر جایی که نیاز است تا ماشین به جای انسان ببیند، مورد استفاده قرار گیرد.

بینایی ماشین را از دو منظر علمی و تکنولوژیکی می‌توان بررسی کرد. به عنوان یک رشته علمی، بینایی ماشین به توسعه تئوری سیستم‌های هوشمندی می‌پردازد که اطلاعات را از تصاویر استخراج می‌کنند و به عنوان یک رشته تکنولوژیکی (فناورانه) تلاش دارد که از تئوری‌ها و مدل‌های توسعه داده شده برای ساخت سیستم‌های بینایی ماشین بهره برداری کند. به عنوان مثال تولیدکنندگان صنایع مختلف سیستم‌های بینایی ماشین را برای بازرسی چشمی که نیاز به سرعت بالا، بزرگ نمایی، عملکرد ۲۴ ساعته و تکرارپذیری دارد استفاده می‌کنند.

 

بینایی ماشین-01

 

مفاهیم اولیه بینایی ماشین

بینایی ماشین را می‌توان یک رشته ی میان رشته ای از علوم مختلف دانست.به طوری که می‌تواند در علومی مثل رایانه، برق و الکترونیک، صنایع، مکانیک و یا پزشکی مورد استفاده قرار گیرد.از طرفی بینایی ماشین با مفاهیمی چون پردازش تصویر و یا پردازش ویدیو ارتباطی تنگاتنگ دارد.به طوری که در بسیاری از موارد نمی‌توان خط قرمز مشخصی بین آن‌ها قائل شد.

وقتی سراغ مفاهیم اولیه پردازش تصویر و بینایی ماشین می‌رویم با این کلمات  Computer Vision ،  Machine Vision و Image Processing  مواجه می‌شویم.

پردازش تصویر(Image Processing) مفهومی جامع است. با این تعریف که یکی از شاخه‌های مدرن و متنوع هوش مصنوعی است که با ترکیب روش‌های خاص و الگوریتم‌های خاص بر روی یک تصویر، شما می‌توانید پروژه‌های مختلفی را با کاربردهای خاص انجام دهید.

وقتی شما می‌خواهید از این الگوریتم‌های پردازشی استفاده کنید باید به سراغ یک پردازنده مانند کامپیوتر بروید و همچنین باید از یک دوربین برای گرفتن تصویر و فرستادن آن به کامپیوتر استفاده کنید. بعد از اینکه تصاویر از دوربین به کامپیوتر ارسال شد؛ شما باید از نرم‌افزارهای مربوط به این رشته استفاده کنید. در این صورت وقتی شما پروژه‌ای را توسط این روش انجام دادید؛ در حقیقت از سیستم بینایی کامپیوتری (Computer Vision) استفاده کرده‌اید.

در صنایع مختلف شما برای تعیین کیفیت و نوع ساخت و همچنین برای بازبینی و بررسی کالاهای صنعتی و کنترل آن‌ها ازجمله نیمه‌هادی‌ها، اتومبیل‌ها، مواد خوراکی و دارو از نیروی انسانی که با چشم کالاها را بازبینی کند نیاز دارید. در این صورت اگر شما از کامپیوتر، دوربین‌های صنعتی، لنز و لایتینگ و دیگر تجهیزات مورد نیاز یک پروژه استفاده کردید و توسط این تجهیزات و با نوشتن برنامه‌های کامپیوتری توانستید در صنایع مختلف یکی از کارهایی را که نیروی انسانی توسط چشمانجام می‌دهد را  انجام دهید شما در حقیقت یک سیستم بینایی ماشین  (Machine Vision) ساخته‌اید.

 

بینایی ماشین-02

بینایی ماشین چیست؟قسمت ۱
بینایی ماشین چیست؟قسمت ۲