گروه مهندسی لناوا
پردازش زبان طبیعی یا NLP، در علوم کامپیوتر، مسئلهای دشوار، به حساب میرود. علت این دشواری را باید در طبیعت زبان انسانی پیدا کرد. قوانین حاکم بر زبان انسان در هنگام برقراری ارتباط با دیگران، قوانین بسیار پیچیدهای است که شناخت و فهم آن برای کامپیوتر، آسان نیست.
NLP، کاربردهای فراوانی دارد. به طور خلاصه، میتوان به کاربردهای زیر اشاره کرد:
• کاربرد در ترجمهی ماشینی مانند google translate
حجم زیاده دادههای متنی در هوش مصنوعی
پردازش زبان طبیعی، رایانهها را قادر میسازد تا با زبان خود انسانها با آنها ارتباط برقرار کنند؛ برای مثال حرف انسانها را بشنوند، آن را بخوانند، تحلیل کنند و قسمتهای مهم آن را مشخص نمایند.
در تکنیکهای آنالیز معنایی، هدف ما درک معنای درست یک متن است. آنالیز معنایی، یکی از سختترین کارها در پردازش زبان طبیعی (NLP) است که هنوز هم مسائل حلنشدهی بسیاری دربارهی آن وجود دارد.
در پردازش زبان طبیعی، ما به دنبال پیادهسازی و کشف الگوریتمهایی هستیم که بتواند دادههای ساختارنیافتهی زبان انسان را به دادههای منظم و قابل فهم برای رایانه تبدیل کند.
کنار هم جمع شدن اغاز است
کنار هم ماندن پیشرفت است
با هم کار کردن موفقیت است
گروه مهندسی لناوا
مرز مشخصی بین پردازش تصویر و بینایی ماشین نمی توان تعیین کرد؛با این حال پردازش تصویر را می توان به سه دسته کلی تقسیم نمود:
۱. پردازش سطح پایین: شامل پردازش های ابتدایی همچون حذف نویز،فیلتر کردن تصویر، کنتراست و …
۲. پردازش سطح میانی: ویژگی این پردازش این است که ورودی آن معمولا تصویر و خروجی آن صفاتی از اشیا
تصویر مانند لبه ها کانتورها و تشخیص اشیا است
۳. پردازش سطح بالا: این پردازش شامل فهمیدن رابطه بین اشیا تشخیص داده شده استنباط و تفسیر صحنه و انجام
تفسیر و تشخیص هایی که سیستم بینایی انسان انجام می دهد.
۱. تبدیلات هندسی مثل تغییر اندازه وچرخش
۲. رنگ مثل تغییرات روشنایی
۳. فشرده سازی تصویر
۴. ناحیه بندی تصویر
۵. انطباق تصویر
تشدید تصویروبهبود
۲.بازیابی تصویر
۳.ارزیابی الگو
۴.تشخیص تصویر
سوالی که به ذهن بشرمیاید این است که الگوچیست؟ یک الگو میتواند هر شی یا بخش موردنظر باشد که برای تشخیص و شناسایی لازم است مثل:یک پیکسل در تصویر یا یک کاراکترتایپ شده.
شناسایی الگو (تشخیص الگو) شاخهای از مبحث یادگیری ماشینی است. میتوان گفت تشخیص الگو، دریافت دادههای خام و تصمیمگیری بر اساس دستهبندی دادهها است. روشهای تشخیص الگو، الگوهای مورد نظر را از یک مجموعه دادهها با استفاده از دانش قبلی در مورد الگوها یا اطلاعات آماری دادهها، جداسازی میکند.
دراین مبحث درتصویر ورودی دنبال یک الگوی خاص با مشخصات تعریف شده هستیم به طور مثال ۱-تشخیص یک کاراکتردرمتن ۲-تشخیص حروف و اعداد در ناحیه خودرو ۳-تشخیص جسم
روش عمومی درحوزه مکانی استفاده ازتابع هم بستگی است.ماکزیمم مقدار تابع همبستگی به معنی بیشترین تطابق یا شباهت میباشد.
یک سیستم شناسایی الگوی کامل متشکل از یک حسگر که مشاهداتی را که باید کلاسه بندی شوند را جمع اوری میکند یک مکانیزم استخراج ویژگی ها که که اطلاعات عددی یا سمبولیک را از مشاهدات استخراج میکند و یک نظام کلاسه بندی که وظیفه اصلی طبقه بندی یا توصیف الگوها را با تکیه بر ویژگی های استخراج شده عهده دار است .
رایانه تنها یک ابزار است که ما میباید شیوه کارکردن به اوبیاموزیم و امکانات کار را برایش فراهم اوریم نرم افزار های مختلفی بدین منظور طراحی شدند که برای تشخیص و بازیایی حروف الفبا به کار میروند.
بطور کلی کاربردهای پردازش زبان طبیعی در زندگی روزمره ما، محیطهای آموزشی، درمان و صنعت را میتوان
به چند دسته، مطابق ذیل، تقسیمبندی نمود:
• پردازش گفتار
• پردازش تصویر
• پردازش متن
ازکاربردهای پردازش گفتار میتوان دستیار شخصی، تبدیل گفتار به نوشتار،مترجمهای صوتی نام بردوازکاربرد های پردازش متن میتوان به ترجمه ماشینی متن ،موتور جستجو،غنیسازی متن نام برد.
بیش از ۹۰ درصد اطلاعات پیرامون ما به وسیله ی مشاهده صورت می پذیرد. با پیشرفت فناوری امکان ثبت، پردازش و انتقال تصاویر به صورت دیجیتال میسر شده است.
پردازش تصاویر امروزه بیشتر به موضوع پردازش تصویر دیجیتال گفته میشود که شاخهای از دانش رایانه است که با پردازش سیگنال دیجیتال که نماینده تصاویر برداشته شده با دوربین دیجیتال یا پویش شده توسط پویشگر هستند سر و کار دارد.
در معنای خاص آن پردازش تصویر عبارتست از هر نوع پردازش سیگنال که ورودی یک تصویر است مثل عکس یا صحنهای از یک فیلم. خروجی پردازشگر تصویر میتواند یک تصویر یا یک مجموعه از نشانهای ویژه یا متغیر (ریاضی)های مربوط به تصویر باشدپردازش تصاویر دارای دو شاخه عمدهٔ بهبود تصاویر و بینایی ماشین است.
روشهایی چون استفاده از فیلتر محوکننده و افزایش تضاد برای بهتر کردن کیفیت دیداری تصاویر و اطمینان از نمایش درست آنها در محیط مقصد (مانند چاپگر یا نمایشگر رایانه)است،در حالی که بینایی ماشین به روشهایی میپردازد که به کمک آنها میتوان معنی و محتوای تصاویر را درک کرد تا از آنها در کارهایی چون رباتیک و محور تصاویر استفاده شود.
امروزه با پیشرفت سیستمهای تصویر برداری و الگوریتمهای پردازش تصویر شاخه جدیدی در کنترل کیفیت و ابزار دقیق به وجود آمدهاست برنامههایی مانند اینستاگرام، کماسکنر و… از الگوریتمهای مربوط به پردازش تصویر استفاده میکنند عموماً دو راه برای برنامه نویسی در حوزه پردازش تصویر در پیش دارید: استفاده از زبان برنامه نویسی پایتون یا متلب به طورخلاصه میتوان گفت پردازش تصویر، مطالعه و بررسی هر نوع الگوریتمی گویند که یک عکس به عنوان ورودی دریافت کرده و یک عکس به عنوان خروجی برمی گرداند
زمینه های مختلف کاربرد پردازش تصویر عبارتند از صنعت، هواشناسی، شهرسازی، کشاورزی، علوم نظامی و امنیتی، نجوم و فضا نوردی، پزشکی، فناوری های علمی، باستان شناسی، تبلیغات، سینما، اقتصاد، روانشناسی و زمین شناسی
گروه مهندسی لناوا
تا چند دهه پیش بسیاری از مردم، حوزه بینایی ماشین را متناظر با داستانهای «علمی-تخیلی» (Science Fiction) تصور میکردند. ولی در یک دهه گذشته، بینایی ماشین تبدیل به یکی از حوزههای تحقیقاتی بالغ در علوم کامپیوتر، هوش مصنوعی و زیر شاخههای مرتبط آن تبدیل شده است. تحقیقات بنیادی و اساسی که توسط محققان و دانشمندان پیشین در حوزه بینایی ماشین انجام شده است، بنیان مستحکمی را برای تحقیقات بدیع و مدرن در این زمینه فراهم آورده است. در این مطلب، مرور جامعی بر رویکردهای پیشین و رویکردهای مدرن در حوزه بینایی ماشین ارائه خواهد شد. همچنین، ساختار مورد انتظار برای تحقیقات، جهتگیریهای پژوهشی و تکنیکهایی که ممکن است در آینده، در این حوزه توسعه داده شوند، ارائه خواهد شد.
شاید سؤالی که برای بسیاری از خوانندگان و مخاطبان این مطلب پدید آمده باشد این است که چرا حوزه بینایی ماشین اهمیت دارد؟ دلیل اهمیت روز افزون حوزه تحقیقاتی بینایی ماشین برای دانشمندان و شرکتهای صنعتی و تجاری چیست؟ بینایی ماشین از این جهت حائز اهمیت است که به برنامههای کامپیوتری اجازه میدهد تا وظایف و کاربردهای مختلف را به صورت «خودکار» (Automated) انجام دهند؛ وظایفی که پیش از این و برای انجام آنها، بهرهگیری از فاکتور «نظارت انسانی» (Human Supervision) ضروری بود.
در این مطلب، روی تکنیکهای بینایی غیر فعال یا بینایی منفعل تمرکز میشود؛ به عنوان نمونه، جمعآوری نور از محیط عملیاتی (همانند فرایندی که در سیستم بینایی انسان انجام میشود). این دسته از تکنیکهای بینایی ماشین از آن جهت حائز اهمیت هستند که به صورت «مخفیانه» (Stealthy) عمل میکنند و محیط را با انتشار صدا، نور و یا موج ناهنجار مختل نمیکنند. علاوه بر این، پیادهسازی سختافزار موردنیاز برای راهاندازی این دسته از سیستمهای بینایی ماشین به مراتب ارزانتر از سیستمهای بینایی فعال است.
بنابراین میتوان گفت که یکی از اهداف اصلی سیستمهای بینایی ماشین هوش مصنوعی، پیادهسازی سیستمهای خودکار «بازسازی صحنه» (Scene Reconstruction) و «بازشناسی اشیاء» (Object Recognition) است (خودکارسازی وظایف). در نتیجه، تحقیقات موجود در حوزه بینایی ماشین را میتوان به سه دسته مطابقت دو سویی (Stereo Correspondence)، بازسازی صحنه و بازشناسی اشیاء تقسیمبندی کرد. برای آشنایی بهتر خوانندگان و مخاطبان این مطلب با مؤلفههای سیستمهای بینایی ماشین، این مطلب به بخشهای مختلفی تقسیمبندی میشود تا هر کدام از سه زیر شاخه تحقیقاتی ذکر شده مورد بررسی قرار بگیرند و در نهایت، جهتدهی تحقیقاتی آینده در حوزه بینایی ماشین مشخص شود.
بسیاری از افراد گمان میکنند که بینایی ماشین و «بینایی کامپیوتر» (Computer Vision) در هوش مصنوعی دو اصطلاح معادل یکدیگر هستند. در حالی که بینایی ماشین و بینایی کامپیوتر اصطلاحات متفاوتی هستند که برای توصیف فناوریهای همپوشان مورد استفاده قرار میگیرند. به صورت کلی، بینایی کامپیوتر به فرایند خودکارسازی «دریافت» (Capture) و «تحلیل تصاویر» (Image Analysis) گفته میشود. در دامنه وسیع کاربردهای عملی و تئوری حوزه بینایی کامپیوتر، تأکید سیستمهای بینایی کامپیوتر بیشتر روی قابلیتهای تحلیل تصاویر، استخراج اطلاعات مفید از آنها و درک و فهم اشیاء یا موجودیتهای موجود در آنها است.
در نقطه مقابل، بینایی ماشین اصطلاحی است که برای توصیف سیستمهایی به کار گرفته میشود که از تکنیکهای بینایی کامپیوتر در کاربردهای صنعتی و عملی استفاده میکنند. همچنین، در صورتی که از تکنیکهای بینایی کامپیوتر در سیستمها یا فرایندهایی استفاده شود که جهت تضمین عملکرد بهینه آنها، اجرای یک تابع تحلیل تصویر یا دستیابی به یک خروجی خاص (مبتنی بر تحلیل تصویر) ضروری باشد، عملا یک سیستم بینایی ماشین پیادهسازی شده است.
معمولا، مؤلفههای ابتدایی لازم برای توسعه سیستمهای بینایی کامپیوتر و بینایی ماشین مشابه یکدیگر هستند:
• یک دستگاه تصویربرداری یا دریافت تصویر (معمولا یک دوربین که از یک سنسور تصویر و یک لنز تشکیل شده است)
• وجود شرایط نوری مناسب برای تعامل با محیط عملیاتی، دریافت تصویر از محیط، تحلیل تصاویر دریافت شده و تولید خروجیهای متناسب با تحلیل انجام شده
• یک سیستم کامپیوتری (البته در سیستمهای تصویربرداری امروز نظیر «دوربینهای هوشمند» (Smart Cameras)، به دلیل وجود پردازندههای اختصاصی، بسیاری از فرایندهای پردازش و تحلیل تصویر درون دستگاه تصویربرداری انجام میشود)
• برنامه پردازش تصویر (برنامه کاربردی کد نویسی شده در زبانهای برنامهنویسی نظیر پایتون، متلب و سایر موارد جهت پردازش و تحلیل تصاویر)
در طی چند سال اخیر، مرز میان سیستمهای بینایی کامپیوتر و بینایی ماشین باریک شده است و در حال از بین رفتن است. با این حال، امروزه از اصطلاح بینایی ماشین، علاوه بر اینکه در محیطهای صنعتی استفاده میشود، در محیطهای غیر صنعتی نظیر «نظارت پیشرفته و دست بالا» (High-end Surveillance)، «بیوپزشکی» (Biomedical) و یا کاربردهای «علوم حیاتی» (Life Science) نیز مورد استفاده قرار میگیرد. همچنین، برای توصیف تکنیکهایی که با هدف بهبود قابلیتهای «موتورهای جستجو» (Search Engines) و ارائه سرویسهای «بازشناسی مبتنی بر تصویر» (Image-based Recognition) در جستجو ارائه شدهاند، از اصطلاح بینایی ماشین استفاده میشود.
وظایفی نظیر «بازشناسی قطعات در خط تولید» (Assembly Line Part Recognition)، «بازشناسی چهره» (Face Recognition)، «وسایل نقلیه هوایی بدون سرنشین» (Unmanned Aerial Vehicles)، «بازسازی صحنه جرم» (Crime Scene Reconstruction) و حتی «وسایل نقلیه بدون سرنشین» (Unmanned Automobiles)، از جمله وظایف و کاربردهایی در هوش مصنوعی هستند که توسط سیستمهای بینایی ماشین و تکنیکهای توسعه داده شده در این حوزه کاربردی، قابلیت خودکارسازی دارند.
هدف کنونی سیستمهای بینایی ماشین در هوش مصنوعی، پیادهسازی یک «چارچوب کلی» (Generic Framework) برای حل بسیاری از مسائل باز (و پیش از این حل نشده) در این حوزه و در نهایت، ایجاد یک سیستم عملیاتی و کاربردی در حوزه هوش مصنوعی و «روباتیکز» (Robotics) است.
تاکنون رویکردهای مختلفی برای حل مسائل موجود در زیر مجموعههای مختلف حوزه بینایی ماشین و جهت رسیدن به هدف نهایی آن (پیادهسازی یک سیستم بینایی ماشین عملیاتی و کاربردی در حوزه هوش مصنوعی و روباتیکز) ارائه شده است. با این حال، یکی از نقیصههای اصلی در پیادهسازی سیستمهای مرتبط با بینایی ماشین، عدم وجود یک فرایند جامع و عمومی برای تولید مؤلفههای مدلسازی سهبُعدی، «تشخیص یا بازشناسی اشیاء» (Object Recognition) و سایر موارد است. در حال حاضر، بینایی در سیستمهای بینایی ماشین به دو دسته زیر طبقهبندی میشوند:
• «بینایی فعال» (Active Vision)
• «بینایی غیر فعال یا منفعل» (Passive Vision)
در بینایی فعال، سیستم بینایی ماشین به طور مستقیم با محیط ارتباط برقرار میکند و به دریافت اطلاعات از محیط مبادرت میورزد. تکنیکهای نظیر RADAR ،LIDAR ،SONAR و سایر موارد، سیگنالهایی نظیر «صوت» (Audio)، «نور» (Light) یا «موجهای رادیویی» (Radio Waves) را از خود ساطع میکند و سپس از طریق گوش دادن به سیگنال منعکس شده، سعی میکنند تا یک تصویر خاص را دریافت و مدلسازی کنند.