نمونه دوره

سرفصل های دوره

فصل اول : شروع کار با نرم افزار Halcon

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

در این مقدمه با نرم افزار هالکن و کاربردهای آن آشنا می شویم. سپس تعدادی از پروژه هایی که با این نرم افزار انجام داده ایم را ذکر خواهیم کرد. همچنین در مورد محتوای این دوره ی آموزشی و منابع مورد استفاده توضیحاتی را ارائه می نماییم. 

در این بخش با پیاده سازی مثال شمارش گیره ها برنامه نویسی و استفاده از محیط هالکن را یاد می گیریم، همچنین نحوه ی کار با دو ابزار پرکاربرد هیستوگرام و ویژگی ها را آموزش خواهیم داد و در نهایت ساخت تابع در نرم افزار هالکن را توضیح میدهیم. 

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

در این بخش در ابتدا انواع متغییرها در نرم افزار هالکن و نحوه ی کاربرد آنها را یاد می گیریم. همچنین نکات تکمیلی کار با نرم افزار هالکن را توضیح می دهیم. در نهایت تمرینات پایانی فصل را ارائه می کنیم.

فصل دوم : پردازش ناحیه ها و تکنیک های مورفولوژی

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

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

جداسازی نخود از لوبیا یک مثال عالی برای درک مفاهیم این فصل و نحوه ی استفاده از تکنیک های مورفولوژی در نرم افزار Halcon است. ما در این مثال از 4 عملگر مهم مورفولوژی استفاده می کنیم.

در این مثال با استفاده از تکنیک های مورفولوژی به دنبال یک راهکار ابتکاری می گردیم که بتوانیم قسمت مشخصی از تصویر را پیدا کنیم.  

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

فصل سوم : شناسایی رنگ

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

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

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

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

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

فیوزهای خودرو بر مبنای رنگ طبقه بندی می شوند. مثلا فیوز های ۱۰ آمپر قرمز و فیوز های ۱۵ آمپر آبی هستند. در این بخش برنامه ای خواهیم نوشت که تعداد و رنگ فیوز ها را در عکس های مختلف تشخیص دهد.

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

فصل چهارم : شناسایی اشیا

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

در این بخش مفهوم شناسایی اشیا در نرم افزار هالکن و نحوه ی کار آن را بیان می کنیم. سپس مهمترین کاربردهای این روش را تشریح خواهیم کرد. در ادامه انواع روشهای شناسایی اشیا در نرم افزار هالکن را توضیح می دهیم. 

نرم افزار Halcon یک ابزار مفید جهت شناسایی اشیا ارائه کرده است. از این ابزار می توانیم برای ساخت و پیدا کردن مدل در نرم افزار هالکن استفاده کنیم، در این بخش نحوه ی کار با این ابزار  قدرتمند و تنظیم پارامترهای برنامه در آن  را یاد می گیریم.

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

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

در این بخش به شما یاد می دهیم چطور می توانیم از شناسایی اشیا برای کنترل کیفیت محصولات خود استفاده کنیم. 

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

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

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

فصل پنجم : شناسایی چاپ

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

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

ما در این بخش هر دو روش ذکر شده را در نرم افزار هالکن پیاده سازی می کنیم و کاربرد هر یک از آنها را تشریح خواهیم کرد.

فصل ششم : فیلترهای بینایی ماشین

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

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

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

فصل هفتم : آستانه گذاری اتوماتیک

یکی از تکنیک های پرکاربرد در  پردازش تصویر  آستانه گذاری اتوماتیک (auto threshold ) نام دارد. در این فصل  با حل چندی مثال یاد می گیریم چگونه با استفاده از این راهکار پروژه های مختلف را در نرم افزار Halcon پیاده سازی نماییم.

با حل  مثال پیدا کردن خط بریل ( خط ناشنوایان )  یاد می گیرم کجا و چگونه از تکنیک آستانه گذاری اتوماتیک (auto threshold ) در نرم افزار هالکن استفاده کنیم. 

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

در این مثال یاد میگیریم چگونه ذرات را با استفاده از  آستانه گذاری اتوماتیک  پیدا کنیم و مساحت هر یک را محاسبه نماییم. همچنین تنظیمات نمایشی را به گونه ای انجام خواهیم داد که چنانچه روی هر یک از حفره ها کلیک کنیم ناحیه ی مورد نظر و مساحت آن را بر روی تصویر نمایش دهد. در انتهای این بخش تمرین های این فصل آمده است. 

فصل هشتم : انجام پروژه با دوربین های وبکم

در این بخش یاد میگیریم چگونه با استفاده ازنرم افزار Halcon به یک دوربین وبکم معمولی متصل شویم و تنظیمات مربوط به عکس برداری را انجام دهیم. همچنین در مورد مشکلات کار با دوربین وبکم نظیر تغییر نور تصویر و… نکاتی را یاد خواهیم گرفت.  در ادامه روال انجام یک پروژه ی ساده را با دوربین وبکم یاد خواهیم گرفت.

در این بخش یاد میگیریم چگونه با استفاده ازنرم افزار Halcon به یک دوربین وبکم معمولی متصل شویم و تنظیمات مربوط به عکس برداری را انجام دهیم.  در ادامه یاد میگیریم چگونه می توانیم تصاویر دوربین وبکم را ذخیره کنیم. همچنین در مورد مشکلات کار با دوربین وبکم نظیر تغییر نور تصویر و… نکاتی را یاد خواهیم گرفت. در ادامه تصاویر مختلفی از یک تاس را ذخیره خواهیم کرد تا در قسمت بعد به کمک این تصاویر، عدد روی تاس را شمارش نماییم. 

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

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

یکی از پرکاربردترین الگوریتم های بینایی ماشین شناسایی اشیا می باشد. در نرم افزار Halcon این روش با نام مچینگ اسم گذاری شده است.  با این الگوریتم می توانیم تعداد محصولات را شمارش کنیم. مدل های مختلف را از یکدیگر تفکیک کنیم . موقعیت اجسام را کنترل کنیم. همچنین  این الگوریتم قدرتمند در حل بسیاری از مسائل مثل شناسایی حروف و اعداد ، تشخیص خرابی چاپ و… به کمک ما می آید تا در ابتدای حل مسئله جسم مورد نظر را پیدا کنیم.

در این بخش با دوربین های دارت باسلر آشنا می شویم و توضیحاتی در مورد ویژگی های این دوربین، نحوه ی فوکوس و طریقه ی نصب بیان می کنیم . 

در این قسمت ورودی ها و خروجی های دوربین ، ولتاژ تغذیه، نحوه ی سیم بندی آن و… را بررسی می کنیم، در ادامه در مورد نرم افزار دوربین های باسلر (نرم افزار پایلون) توضیحاتی ارائه خواهیم کرد و در درنهایت طریقه ی دانلود این نرم افزار را بیان می کنیم. 

دوربین های صنعتی از یک نرم افزار واسط استفاده می کنند، به کمک این نرم افزارها می توان تنظیمات مختلف تصویر برداری را انجام داد. مثلا دوربین های Basler از نرم افزار pylon جهت انجام این تنظیمات استفاده می کنند. در این بخش از طریق نرم افزار پایلون به دوربین دارت باسلر متصل می شویم و تنظیمات مورد نظر را  ( از قبیل نحوه ی تصویر برداری، انجام فوکوس، تنظیم سایز تصویر ، تنظیم ورودی ها و خروجی های دوربین و…  ) را برای خواندن بارکد روی یک جعبه ی قرص، انجام می دهیم. 

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

در این مثال هدف ما شناسایی عدد روی چندین تاس با رنگ های مختلف است. با حل این مثال با مسائل و نکات مختلف انجام یک پروژه واقعی آشنایی می شویم. برای حل این مثال از الگوریتم شناسایی اشیا استفاده شده است. 

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

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

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

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

بخش اول : مفاهیم 

  • الگوریتم شناسایی اشیا چیست و چگونه کار می کند؟
  • 9 کاربرد مهم Object Detection در پردازش تصویر صنعتی
  • منظور از مچینگ تشخیص اشیا  بر مبنای لبه ها ، مقادیر خاکستری و نقاط چیست؟
  • انواع روشهای مچینگ ( شناسایی اشیا) در نرم افزار Halcon و کاربرد هر یک از آنها

بخش دوم : کار با دستیار شناسایی اشیا

نرم افزار Halcon یک ابزار مفید جهت شناسایی اشیا ارائه کرده است. با این ابزار می توانیم بدون کد نویسی، یک برنامه ی شناسایی اشیا بنویسیم در این بخش این ابزار را به طور کامل آموزش می دهیم. علاوه بر آن  چگونگی تنظیم انواع پارامتر های یک Object Detection را به شما آموزش می دهیم. 

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

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

فصل یازدهم : طراحی سیستم های بینایی ماشین

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

در این بخش یک سیستم ویژن برای کنترل کیفیت پوشک ها را طراحی می کنیم. در این پروژه حداکثر 3 پوشک در ثانیه با ابعاد مختلف تولید می شود که نیاز به کنترل موارد مختلفی روی پوشک ها می باشد. در ابتدا اطلاعات گرفته شده از مشتری را آنالیز می کنیم و بر مبنای آنها محاسبات لازم را انجام داده و تجهیزات پروژه نظیر دوربین ، لنز ، لایت، کامپیوتر، منابع تغذیه ، کابل های ارتباطی و…. را انتخاب خواهیم کرد. 

در این بخش می خواهیم  طراحی و انتخاب تجهیزات مورد نیاز ( دوربین، لنز ، لایت ، PC و تجهیزات جانبی) را برای یک سیستم کنترل موقعیت چاپ انجام دهیم. چنانچه چاپ سالم باشد درب ماست توسط ربات برداشته می شود اما در غیر این صورت Reject خواهد شد. 

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

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

این بخش مربوط به تحلیل پروژه ی “تشخیص پلمپ بودن درب بطری” است. در این پروژه خواسته ی مشتری تشخیص درب آب معدنی هایی است که به درستی پلمپ نشده اند.با تحلیل و تست های انجام شده روی این پروژه خواهیم دید که وجود یک سری مشکلات ( نظیر  شکل های ظاهری و طیف رنگی متفاوت درب بطری  و… ) می توانند در تحلیل و انتخاب تجهیزات مختلف پروژه تاثیر بگذارند.

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

در این مسئله می خواهیم کیفیت درب بطری را بررسی کنیم. یکی از آیتم های مهم در کنترل کیفیت درب بتری کنترل رزوه ها است. اما با لنز های معمولی نمی توانیم رزوه ها را در تصویر به خوبی ببینیم. به همین دلیل برای حل این مسئله به سراغ لنز های خاص در بینایی ماشین خواهیم رفت.

در این قسمت نکات تکمیلی برای طراحی سیستم های ویژن را تشریح می کنیم. 

فصل دوازدهم : الگوریتم نویسی در نرم افزار Halcon

برای اجرای پروژه ها در دنیای واقعی نیاز داریم که کدهای خود را در نرم افزار هالکن به گونه ای بنویسیم که برنامه ی ما قابل آموزش باشد همچنین  بتوانیم به راحتی با استفاده از زبان های برنامه نویسی مثل C، CPP و NET. یک محیط کاربری مناسب برای برنامه ی خود ایجاد کنیم.
برای دستیابی به اهداف گفته شده در نرم افزار هالکن دوقابلیت مهم وجود دارد یکی استفاده از دیکشنری و دیگری استفاده از آبجکت ها. در این فصل با اجرای مرحله به مرحله ی یکی از پروژه هایی که انجام دادیم ( شناسایی موقعیت چاپ) به شما یاد میدهیم چگونه از این قابلیت ها برای نوشتن یک برنامه ی استاندارد و قابل آموزش در نرم افزار هالکن استفاده کنید. علاوه بر آن توضیحاتی راجع به نحوه ی فراخونی توابع برنامه ی هالکن در زبان های برنامه نویسی دیگر ارائه خواهد شد.

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