نوشته‌ها

جزوه پردازش تصویر با متلب (Matlab)_ دانشگاه پیام نور

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

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

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

لینک دانلود: جزوه پردازش تصویر با متلب_ دانشگاه پیام نور

پسورد فایل: behsanandish.com

تعداد صفحات : ۵۱

مقدمه

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

دانلود کامل کاتالوگ (شامل تصاویر بیشتر جهت آشنایی با موضوع)

 

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

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

بینایی ماشین و کنترل کیفیت

 

مزایای بهره گیری از بینایی ماشین در صنعت

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

 

کنترل کیفیت در صنعت

 

کاربردهای بینایی ماشین در صنعت

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

بینایی ماشین و کنترل کیفیت

 

اجزای سیستم بینایی ماشین جهت پیاده سازی کنترل کیفیت هوشمند

اگرچه “بینایی ماشینی” بیشتر به عنوان یک فرآیند در کاربردهای صنعتی شناخته شده است، برای فهرست کردن اجزای سخت‌افزاری و نرم‌افزاری به کار برده شده نیز مفید می‌باشد. معمولاً یک بینایی ماشینی از اجزای زیر ساخته شده است:
۱٫ یک یا چند دوربین دیجیتال یا آنالوگ (سیاه-سفید یا رنگی) با اپتیک مناسب برای گرفتن عکس.
۲٫ واسطه‌ای که عکس‌ها را برای پردازش آماده می‌سازد. برای دوربین‌های آنالوگ این واسطه شامل یک دیجیتال کننده عکس است.

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

تاریخچه

(آنالیز موجک) ایده ی نمایش یک تابع برحسب مجموعه ی کاملی از توابع اولین بار توسط ژوزف فوریه، ریاضیدان و فیزیکدان بین سال های ۱۸۰۶-۱۸۰۲ طی رساله ای در آکادمی علوم راجع به انتشار حرارت، برای نمایش توابع بکار گرفته شد. در واقع برای آنکه یک تابع(f(x به شیوه ای ساده و فشرده نمایش داده شود فوریه اساسا ثابت کرد که می توان از محور هایی استفاده کرد که بکمک مجموعه ایی نامتناهی از توابع سینوس وار ساخته می شوند. بعبارت دیگر فوریه نشان داد که یک تابع (f(x را می توان بوسیله ی حاصل جمع بی نهایت تابع سینوسی و کسینوسی به شکل (sin(ax و (cos(ax نمایش داد. پایه های فوریه بصورت ابزار هایی اساسی، با کاربردهای فوق العاده متواتر در علوم، در آمده اند، زیرا برای نمایش انواع متعددی از توابع و در نتیجه کمین های فیزیکی فراوان بکار می روند.
با گذشت زمان ضعف پایه های فوریه نمایان شد مثلا دانشمندان پی بردند پایه های فوریه و نمایش توابع سینوس وار در مورد سیگنال های پیچیده نظری تصاویر، نه تنها ایده آل نیستند بلکه از شرایط مطلوب دورند، بعنوان مثال به شکل کارآمدی قادر به نمایش ساختارهای گذرا نظیر مرزهای موجود در تصاویر نیستند. همچین آنها متوجه شدند تبدیل فوریه فقط برای توابع پایه مورد استفاده قرار می گیرد و برای توابع غیر پایه کار آمد نیست.(البته در سال ۱۹۴۶ با استفاده از توابع پنجره ای، که منجر به تبدیل فوریه ی پنجره ای شداین مشکل حل شد.)
در سال ۱۹۰۹ هار اولین کسی بود که به موجک ها اشاره کرد. در سال های ۱۹۳۰ ریاضیدانان به قصد تحلیل ساختارهای تکین موضوعی به فکر اصلاح پایه های فوریه افتادند. و بعد از آن در سال ۱۹۷۰ یک ژئوفیزیکدان فرانسوی به نام ژان مورله متوجه شد که پایه های فوریه بهترین ابزار ممکن در اکتشافات زیر زمین نیستند، این موضوع در آزمایشگاهی متعلق به الف آکیلن منجر به یکی از اکتشافات تبدیل به موجک ها گردید.
در سال ۱۹۸۰ ایومیر ریاضیدان فرانسوی، نخستین پایه های موجکی متعامد را کشف کرد(تعامد نوعی از ویژگی ها را بیان می کند که موجب تسهیلات فراوانی در استدلال و محاسبه می شود، پایه های فوریه نیز متعامدند.) در همین سال ها مورله مفهوم موجک و تبدیل موجک را بعنوان یک ابزار برای آنالیز سیگنال زمین لزره وارد کرد و گراسمن فیزیکدان نظری فرانسه نیز فرمول وارونی را برای تبدیل موجک بدست آورد.
در سال ۱۹۷۶ میرو و مالت از پایه های موجک متعامد توانسنتد آنالیز چند تفکیکی را بسازند و مالت تجزیه موجک ها و الگوریتم های بازسازی را با بکار بردن آنالیز چند تفکیکی بوجود آورد. در سال ۱۹۹۰ مورنزی همراه با آنتوان موجک ها را به دو بعد و سپس به فضاهایی با ابعد دیگر گسترش دادند و بدین ترتیب بود که آنالیز موجکی پایه گذاری گردید.

 آشنایی

آنالیز موجک (Wavelet Analysis) یکی از دستاوردهای نسبتا جدید و هیجان انگیز ریاضیات محض که مبتنی بر چندین دهه پژوهش در آنالیز همساز است، امروزه کاربردهای مهمی در بسیاری از رشته های علوم و مهندسی یافته و امکانات جدیدی برای درک جنبه های ریاضی آن و نیز افزایش کاربردهایش فراهم شده است.
در آنالیز موجک هم مانند آنالیز فوریه با بسط تابع ها سروکار داریم ولی این بسط برحسب «موجک ها» انجام می شود.
موجک تابع مشخص مفروضی با میانگین صفر است و بسط برحسب انتقالها و اتساعهای این تابع انجام می گیرد، بر خلاف چند جمله ای های مثلثاتی، موجک ها در فضا بصورت موضعی بررسی می شوند و به این ترتیب ارتباط نزدیکتری بین بعضی توابع و ضرایب آن ها امکان پذیر می شود و پایداری عددی بیشتری در باز سازی و محاسبات فراهم می گردد. هر کاربردی را که مبتنی بر تبدیل سریع فوریه است می توان با استفاده از موجک ها فومول بندی کرد و اطلاعات فضایی (یا زمانی) موضعی بیشتری بدست آورد. بطور کلی، این موضوع بر پردازش سیگنال و تصویر و الگوریتم های عددی سریع برای محاسبه ی عملگرهای انتگرالی اثر می گذارد.
آنالیز موجک حاصل ۵۰ سال کار ریاضی (نظریه ی لیتلوود – پیلی و کالدرون – زیگموند) است که طی آن، با توجه به مشکلاتی که در پاسخ دادن به ساده ترین پرسش های مربوط به تبدیل فوریه وجود داشت، جانشینهای انعطاف پذیر ساده تری از طریق آنالیز همساز ارائه شدند. مستقل از این نظریه که درون ریاضیات محض جای دارد، صورتهای مختلفی از این رهیافت چند مقیاسی (multi Scale) را در طی دهه ی گذشته در پردازش تصویر، آکوستیک، کدگذاری(به شکل فیلترهای آیینه ای متعامد و الگوریتمهای هرمی)، و استخراج نفت دیده ایم.

 کاربردها

آنالیز موجک همراه با تبدیل سریع فوریه در تحلیل سیگنالهای گذرایی که سریعا تغییر می کنند، صدا و سیگنالهای صوتی، جریان های الکتریکی در مغز، صداهای زیر آبی ضربه ای و داده های طیف نمایی NMR، و در کنترل نیروگاههای برق از طریق صفحه ی نمایش کامپیوتر بکار رفته است. و نیز بعنوان ابزاری علمی، برای روشن ساختن ساختارهای پیچیده ای که در تلاطم ظاهر می شوند، جریان های جوی، و در بررسی ساختارهای ستاره ای از آن استفاده شده است. این آنالیز به عنوان یک ابزار عددی می تواند مانند تبدیل سریع فوریه تا حد زیادی از پیچیدگی محاسبات بزرگ مقیاس بکاهد، بدین ترتیب که با تغییر هموار ضریب، ماتریس های متراکم را به شکل تنکی که به سرعت قابل محاسبه باشد در آورد. راحتی و سادگی این آنالیز باعث ساختن تراشه هایی شده است که قادر به کدگذاری به نحوی بسیار کارا، و فشرده سازی سیگنالها و تصاویرند.
آنالیز موجک امروزه کاربردهای فراوانی پیدا کرده است که از آن جمله می توان به کاربرد آن در تصویر برداری پزشکی (MRI) و سی تی اسکن (CAT)، جداسازی بافت های مغزی از تصاویر تشدید مغناطیس، تشخیص خودکار خوشه های میکروکلسیفیکاسیون، تحلیل تصاویر طیفی تشدید مغناطیسی (MR Spectrorscopy) و عملکردهای تشدید مغناطیسی (F MRI) اشاره کرد.

منبع


موجک

موجک (Wavelet) دسته‌ای از توابع ریاضی هستند که برای تجز‌یه سیگنال پیوسته به مؤلفه‌های فرکانسی آن بکار می‌رود که رزولوشن هر مؤلفه برابر با مقیاس آن است. تبدیل موجک تجزیه یک تابع بر مبنای توابع موجک می‌باشد. موجک‌ها (که به عنوان موجک‌های دختر شناخته می‌شوند) نمونه‌های انتقال یافته و مقیاس شده یک تابع (موجک مادر) با طول متناهی و نوسانی شدیداً میرا هستند. چند نمونه موجک مادر در شکل زیر نمایش داده شده‌اند.

مِیِر

مورله

کلاه مکزیکی

تبدیل‌های موجک

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

  • تبدیل موجک پیوسته (Continuous wavelet transform (CWT
  • تبدیل موجک گسسته (Discrete wavelet transform (DWT
  • تبدیل سریع موجک (Fast wavelet transform (FWT
  • Lifting scheme
  • تجزیه بسته‌های موجک(Wavelet packet decomposition (WPD
  • تبدیل موجک ساکن (Stationary wavelet transform (SWT

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

  • انتقال (Translation)

[عکس: 34b5ae95f23a0378679d434d7cea3360.png]

  • اتساع (Dilation)

[عکس: a9be4f8956d1bb85c9e932c584196743.png]

مقایسه با تبدیل فوریه

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

تاریخچه

در تاریخ ریاضیات مبادی و ریشه‌های متعددی را می‌توان برای موجک‌ها سراغ گرفت.

کارهای قبل از ۱۹۳۰
مربوط به قبل از ۱۹۳۰ (م) می‌توان به آنالیز فرکانس‌ها اشاره کرد، که به وسیلهٔ فوریه شروع شد.
استفاده از واژهٔ موجک‌ها، برای اولین بار، در یکی از ضمیمه‌های تز آلفرد هار (۱۹۰۹ م) ظاهر شد. امروزه هم، این موجک‌ها به همان نام یعنی به موجک‌های هار معروف اند. موجک‌های هار دارای دامنهٔ تعریف فشرده (compact) بوده، و غیر مشتق‌پذیر به صورت پیوسته هستند.

کارهای مربوط به دهه ۱۹۳۰
در این دهه چند گروه پیرامون موضوع نمایش توابع با به کارگیری پایه‌های با مقیاس متغیر برای تنیدن فضاهای توابع تحقیق می‌نمودند.

موجک‌های متعامد

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

موجک هار

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

منبع

بینایی کامپیوتری (Computer vision) چیست؟

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

تصویر هنری از مریخ نورد NASA بر روی سطح سیاره مریخ. مثالی از خودروهای زمینی بدون سرنشین

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

کاوش در داده‌ها

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

وظایف اصلی در بینایی رایانه‌ای(بینایی کامپیوتری)

تشخیص شیء

تشخیص حضور و/یا حالت شیء در یک تصویر. به عنوان مثال:

  • جستجو برای تصاویر دیجیتال بر اساس محتوای آن‌ها (بازیابی محتوامحور تصاویر).
  • شناسایی صورت انسان‌ها و موقعیت آن‌ها در عکس‌ها.
  • تخمین حالت سه‌بعدی انسان‌ها و اندام‌هایشان.

پیگیری

پیگیری اشیاء شناخته شده در میان تعدادی تصویر پشت سر هم. به عنوان مثال:

  • پیگیری یک شخص هنگامی که در یک مرکز خرید راه می‌رود.

تفسیر منظره

ساختن یک مدل از یک تصویر/تصویر متحرک. به‌عنوان مثال:

  • ساختن یک مدل از ناحیهٔ پیرامونی به کمک تصاویری که از دوربین نصب شده بر روی یک ربات گرفته می‌شوند.

خودمکان‌یابی

مشحص کردن مکان و حرکت خود دوربین به عنوان عضو بینایی رایانه. به‌عنوان مثال:

  • مسیریابی یک ربات درون یک موزه.

سامانه‌های بینایی رایانه‌ای یا بینایی کامپیوتری

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

تصویربرداری

تصویر یا دنباله تصاویر با یک سامانه تصویربرداری(دوربین، رادار، لیدار، سامانه توموگرافی) برداشته می‌شود. معمولاً سامانه تصویربرداری باید پیش از استفاده تنظیم شود.

پیش‌پردازش

در گام پیش‌پردازش، تصویر در معرض اَعمال «سطح پایین» قرار می‌گیرد. هدف این گام کاهش نوفه (کاهش نویز – جدا کردن سیگنال از نویز) و کم‌کردن مقدار کلی داده‌ها است. این کار نوعاً با به‌کارگیری روش‌های گوناگون پردازش تصویر(دیجیتال) انجام می‌شود. مانند:

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

استخراج ویژگی

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

  • انجام آشکارسازی لبه.
  • استخراج ویژگی‌های گوشه ای.
  • استخراج تصاویر چرخش از نقشه‌های ژرفا.
  • بدست آوردن خطوط تراز و احتمالاً گذر از صفرهای خمش.

ثبت

هدف گام ثبت برقراری تناظر میان ویژگی‌های مجموعه برداشت شده و ویژگی‌های اجسام شناخته‌شده در یک پایگاه داده‌های مدل و/یا ویژگی‌های تصویر قبلی است. در گام ثبت باید به یکفرضیه نهایی رسید. چند روش این کار عبارت‌اند از:

  • تخمین کمترین مربعات.
  • تبدیل هاگ در انواع گوناگون.
  • درهم‌سازی هندسی.
  • پالودن ذره‌ای.

بینایی و تفسیر تصاویر در انسان‌ها

lز آنجایی که هدف نهایی computer vision ساخت مفسر قدرتمند اجسام ۳D , رنگ‌ها و عمق تصاویر هست. دانستن این موضوع که چگونه مغز موجودات، بینایی و دیدن را تفسیر می‌کند و اینکه چند درصد نورون‌های کل مغز در گیر این پروسه هستند نسبتاً اهمیت پیدا می‌کند. مقاله زیر می‌تواند یک نگاه کلی از این روند پیچیده بدهد.

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

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

جریان dorsal بصری (سبز رنگ در تصویر) و جریان ventral(بنفش) در تصویر مشخص شده. قسمت‌های بسیار زیادی ازcerebral cortex در پروسه بینایی نقش دارند.

سلولهای مخروطی (Cone cells) در یک منطقه مرکزی شبکیه متمرکز به نام گودال متمرکز شده‌اند که فرورفتگی (یا fovea) هم نام دارد. آنها مسئول وظایف سنگین و دقیقی مثل خواندن هستند. سلول‌های Cone بسته به اینکه به نور آبی، قرمز، سبز چگونه واکنش می‌دهند به سه دسته تقسیم می‌شوند، و در مجموع این سه نوع از Cone ما را قادر به درک رنگ‌ها می‌کنند. سیگنال‌ها از سلول‌های گیرنده نوری (photoreceptor cells) از طریق شبکه ای از interneuronsها در لایه دوم شبکیه چشم به سلول‌های ganglion در لایه سوم منتقل می‌شوند. نورون‌های موجود در این دو لایه از شبکیه زمینه پذیرای پیچیده ای که آنها را قادر به تشخیص تضادهای تغییراتی در یک تصویر می‌کند را ارائه می‌دهند: این تغییرات ممکن است لبه‌ها یا سایه‌ها را نشان دهند. سلول‌های Ganglion این اطلاعات را به همراه دیگر اطلاعات در مورد رنگ جمع‌آوری می‌کنند و خروجی خود را به مغز از طریق عصب بینایی ارسال می‌کنند. عصب یا Nerve بینایی در درجه اول اطلاعات را از طریق thalamus به قشاء مغزی (cerebral cortex) ارسال می‌کند. پس از ارسال اطلاعات در قسمت cerebral cortex ادراک بصری انسان به وقوع می‌پیوندد. اما در عین حال این عصب (Nerve) حامل اطلاعات مورد نیاز برای مکانیک دید نیز هست که به دو قسمت از ساقه مغز (brainstem) این اطلاعات را منتقل می‌کند. اولین قسمت از brainstem گروهی از سلول‌های هسته هستند که pretectum نام دارند که کنترل غیرارادی اندازه مردمک در پاسخ به شدت نور را بر عهده دارند. اطلاعات مربوط به اهداف متحرک و اطلاعات ساکن اسکن شده توسط چشم نیز به قسمت دوم در brainstem منتقل می‌شود، یک هسته که با نام superior colliculus شناخته می‌شود مسئول حرکات چشم در پرش‌های کوتاه هست. بخش دیگر از این دو قسمت saccades هست که به مغز اجازه درک یک اسکن هموار را با کمک چسباندن یک سری از تصاویر نسبتاً ثابت می‌دهد. Saccadic eye movement مشکل تاری شدید- که می‌تواند برای تصویر پیش بیاید – را حل می‌کند. چشم می‌تواند به صورت یکنواخت در سراسر چشم‌انداز بصری حرکت کند؛ saccadesها در بعضی از وضعیت‌ها تجربه بصری را ممکن و آسان می‌کنند مانند مشاهده چشم فرد دیگری برای شما، در حالی که آن فرد در تلاش برای نگاه کردن سرتاسر اتاق هست.

محل دقیق قسمت thalamus(تالاموس) در عمق مغز در تصویر سه بعدی

بسیاری از تصاویر از شبکیه چشم (retina) از طریق عصب بینایی به بخشی از thalamus که به نام (lateral geniculate nucleus) شناخته شده است و در اختصار (LGN) هم کفته می‌شود منتقل می‌شوند، thalamus در عمق مرکز مغز قرار گرفته. LGN ورودی شبکیه (retinal) را به جریان‌های موازی ای مورد جداسازی قرار می‌دهد که یکی حاوی رنگ و ساختار ثابت و دیگری حاوی تضادها (contrast) و حرکات هست. سلول‌هایی که پردازش رنگ و ساختار را انجام می‌دهند چهار لایه بالایی از شش لایه LGN را تشکیل می‌دهند. این چهار لایه به علت کوچکی سلول‌ها، parvocellular نامیده می‌شوند. سلول‌هایی که پردازش حرکات و تضادهای تصویر را انجام می‌دهند دو لایه پایینی LGN رو تشکیل می‌دهند و به علت بزرگی سلول‌های این قسمت، لایه magnocellular نامیده می‌شوند.

سلول‌های لایه‌های magnocellular و parvocellular همه راه‌ها را به بخش‌های پشت مغز و به سمت قشر بینایی اولیه (Visual cortex _ V1) طرح‌ریزی می‌کنند. سلول‌ها در V1 در چندین مسیر مرتب شده‌اند که این مسئله اجازه می‌دهد سیستم بینایی محل اشیاء را در فضا محاسبه کند. در ابتدا سلول‌های V1 به صورت retinotopically یا موضعی سازمان یافته‌اند، که به معنای این است که نقطه به نقطه روی نقشه بین شبکیه و قشر بینایی اولیه وجود دارد و مناطق همجوار در شبکیه چشم با مناطق همجوار در V1 مطابقت دارد؛ که این به V1 اجازه می‌دهد که موقعیت اشیا را در دو بعد از جهان بصری که افقی و عمودی (مختصات (x , y)) تعیین کند. بعد سوم و عمق نیز با مقایسه سیگنال‌های دو چشم توسط V1 نقشه‌برداری و تعیین می‌شود. این سیگنال‌ها در پشته سلولها که ستون ocular dominance نامیده می‌شوند پردازش می‌شوند، که یک الگوی شطرنجی اتصالات متناوب بین سمت چپ و چشم راست است. اختلافی جزئی در موقعیت یک شی نسبت به هر چشم وجود دارد که اجازه می‌دهد تا عمق توسط مثلث محاسبه شود.

در نهایت، V1 به ستون‌های جهت گیری سازمان یافته است، پشته از سلول‌ها که به شدت توسط خطوط یک جهت گیری داده شده، فعال می‌شوند. ستون‌های جهت امکان تشخیص لبه‌های اشیاء در جهان بصری را برایV1 را فراهم می‌سازند، و به طوری که آنها کار پیچیده ای از تشخیص بصری را شروع می‌کنند. سازمان ستونی از قشر بینایی اولیه برای اولین بار توسط David Hubel و Torsten Wiesel توصیف شده است، که در نتیجه بخاطر این موضوع جایزه نوبل ۱۹۸۱ را دریافت کرده‌اند.

جالب توجه است که این الگوی شطرنجی، سازمان ستونی V1 در هنگام تولد بسیار مبهم است. قشر بینایی یک نوزاد تازه متولد شده رشد بیش از حد (hypertrophy) , یا اتصالات اتفاقی دارد که باید به دقت و بر اساس تجربه بصری در بلند مدت هرس شوند، و در نهایت به ستون‌های جداگانه تعریف شده تبدیل شوند- این در واقع یک کاهش در تعداد اتصالات و نه افزایش اتصالات خواهد بود -که در نهایت توانایی نوزاد برای دیدن جزئیات ریز و به رسمیت شناختن اشکال و الگوها را بهبود می‌بخشد.

primary visual cortex (V1)

این نوع از پالایش وابسته، به فعالیت به V1 محدود نمی‌شود و در بسیاری از مناطق سراسر قشر مغز (cerebral cortex) رخ می‌دهد. در همان زمان که توانایی تبعیض خطوط و لبه در قشر بینایی اولیه بهبود می‌یابد، سلول‌ها را در قشر بینایی ثانویه (secondary visual cortex V2) , توانایی خود را برای تفسیر رنگ پالایش می‌کنند. V2 تا حد زیادی مسئول پدیده ثبات رنگ است؛ و این حقیقت را توضیح می‌دهد که واقعیت یک گل سرخ تحت تأثیر بسیاری از رنگ‌های مختلف نور توسط ما هنوز هم به رنگ سرخ به نظر می‌رسد. این طور گمان می‌شود که ثبات رنگ وقتی رخ می‌دهد که V2 می‌تواند یک شیء و نور محیط را مقایسه کند و می‌تواند برآورد رنگ روشنایی را کاهش دهد. با اینحال این پروسه با توجه به اینکه بیننده انتظار دارد که شیء بخصوص به چه رنگی داشته باشد، به شدت تحت تأثیر قرار می‌گیرد.

در حقیقت، تقریباً تمام ویژگی‌های مرتبه بالاتر از بینایی و منظره توسط انتظارات بر اساس تجربه گذشته تحت تأثیر قرار می‌گیرد. این ویژگی به گسترش رنگ و درک فرم موجود در V3 و V4، به چهره و تشخیص شیء در لوب temporal (جایی که تصویر ذهنی سه بعدی از آنچه که می‌بینیم در نهایت تشکیل می‌شود) و به حرکت و آگاهی از فضای موجود در لوب parietal می‌انجامد. هرچند چنین روش و تأثیراتی گاهی اجازه می‌دهد مغز تحت تأثیر تصورات نادرست فریب بخورد، برای مثال در مواقع خطای دید در برخی از تصاویر، ولی این روش پردازش به ما توانایی دیدن و پاسخ سریع به جهان بصری را داده است. از تشخیص روشنایی و تاریکی در شبکیه چشم (retina) تا خطوط انتزاعی در V1 تا تفسیر اشیا و روابط فضاییشان در ناحیه‌های بصری بالاتر، هر وظیفه ای در ادراک بصری کارایی و قدرت سیستم بینایی انسان را نشان می‌دهد.

موارد حال حاضر استفاده از تکنولوژی computer vision

  • کاربردهای غیرنظامی
    1. سرچ پیدا کردن تصاویر مشابه در سرویس‌های Google یا Bing
    2. سرویس‌های شناختی Microsoft
      1. پیدا کردن افراد یکسان در تصاویر حتی در صورتی که آنها تغییر فیافه داده باشند
      2. سرویس تشخیص احساسات لحظه ای افراد مبتنی بر تصاویر
      3. سرویس تشخیص سن افراد و جنسیت و . . . در تصاویر
      4. سرویس PhotoDNA
      5. سرویس قدرتمند تبدیل نوشته‌های موجود در تصاویر به متن
      6. تشخیص چهره در ویدئو به صورت real time
      7. تبدیل گفتار به متن
      8. تشخیص لحن گفتار بر پایه متن
      9. سرویس پیدا کردن مفاهیم بر پایه محتویات متنی
      10. سرویس‌های تشخیص زبان‌های طبیعی
      11. سرویس توصیف تصاویر
      12. ربات‌های چت پیشرفته (از جمله این ربات‌ها می شه به Tay در twitter اشاره کرد)
      13. و سرویس‌های دیگر . . . .
    3. سرویس‌های شناختی IBM
      1. تشخیص احساسات بر پایه تصاویر
      2. سرویس اپن سورس توصیف تصاویر با node.js (سورس code)
      3. توصیف محتواهای متنی
      4. سرویس شناختی آنالیز شبکه‌های اجتماعی
      5. ربات‌های خودکار پاسخ دهنده هوشمند به کاربران
      6. تشخیص احساسات بر پایهٔ محتوای متنی
      7. سرویس گراف‌های شناختی از داده‌های تاریک
      8. کسب و کارهای شناختی
      9. تشخیص real time ایتم‌های مختلف با تراشه SyNAPSE
      10. و سرویس‌های دیگر . . . .
    4. خودروهای خودران Google و بقیه شرکت‌ها
    5. استفاده برای تشخیص چهره درگرفتن عکس در تلفن‌های همراه همچنین استفاده در سرویس شبکه اجتماعی فیسبوک جهت نوشتن نام‌ها بر روی تصاویر
    6. استفاده در فروشگاه‌ها برای دنبال کردن سلایق بازدید کننده گان
    7. استفاده در تشخیص پلاک خودرو
    8. درمان بیماری‌ها و تومورها و سرطان با Nanobots های که انرژی خود را از برخورد اتفاقی با سلول‌ها به دست می آورند

 

ناو ACTUV

تصویری از رونمایی کشتی جنگی بدون سرنشین ضد زیر دریایی با قابلیت ردیابی ممتد یا به اختصار (ACTUV)

  • کاربردهای نظامی
    • تشخیص و شناسایی چهره افراد در فرودگاها و مراکز حساس دیگر
    • وسایل حرکتی بدون سرنشین _ مستقل (Uncrewed vehicle)
      1. خودروهای زمینی بدون سرنشین نظامی چند منظوره با قابلیت‌های استفاده موتوریزه و انتقال نیروها و تجهیزات . . . (Unmanned ground vehicle)
      2. زیردریایی بدون سرنشین: زیردریایی شرکت بوئینگ (Boeing submarine) که قابلیت ماه‌ها ماندن در زیر دریا و بررسی و ارسال اطلاعات به طور کاملاً مستقل را قادر می‌باشند
      3. ناوهای بدون سرنشین: ناوهای ضد زیردریایی ACTUV ساخت DARPA (سازمان پروژه‌های تحقیقاتی پیشرفتهٔ دفاعی)
      4. هواپیماهای بدون سرنشین و پهپادها با کنترل مستقل (Unmanned aerial vehicle)
      5. سیستم دفاع موشکی هوش مصنوعی (Artificially Intelligent Missile Defense System)
      6. فضاپیمای بدون سرنشین (Unmanned spacecraft)
      7. ربات‌های Humanoid (پروژه Atlas robot)
      8. Nanobots

منبع

مطالب مرتبط :

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

آشنایی با ماشین بینایی

آشنایی با بینایی ماشین و بینایی رایانه ای

بارکد چیست؟

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

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

ضرورت استفاده از بارکد

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

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

سیستم بارکدگذارى چگونه آغاز شد؟

در سالذ۱۹۳۲ گروهى از دانشجویان رشته مدیریت بازرگانى دانشگاه هاروارد، تصمیم گرفتند روشى را انتخاب کنند تا بر اساس آن مشتریان کالاى مورد نظرشان را از درون کاتالوگى پیدا کنند و سپس با برداشتن کارت هاى خاص چسبانده شده در کنار نام هر کالا و تحویل به مسؤول کنترل و قرار دادن آن در دستگاه کارت خوان و پانچ، مستقیماً کالا را از طریق انبار به باجه کنترل انتقال دهند و صورتحساب کامل را دریافت کنند و مهم تر از همه صاحبان فروشگاه از موجودى انبار خود اطلاعات به روزى داشته باشند. البته ایده سیستم «بارکدینگ» مدرن و پیشرفته از سال ۱۹۴۸ وارد سیستم تجارى شد.

سیستم بارکد امروزى چگونه شروع به کار کرد؟

سال ۱۹۴۸ بود که رئیس یک فروشگاه مواد غذایى در آمریکا از کار کند و بى دقت کارکنان فروشگاه به ستوه آمد و براى پیدا کردن راه حل به مسؤولان دانشگاه (Drexel) مراجعه کرد تا تقاضاى ساخت سیستم کنترل خودکارى را داشته باشد، اما مسؤولان دانشگاه از این نظریه استقبال نکردند.

یکى از دانشجویان فارغ التحصیل این دانشگاه به نام باب سیلور «Bob Silver» این گفت و گو را شنید و آن را با یکى از دوستانش Norman Joseph Woodland در میان گذاشت و تصمیم گرفتند براى ساخت چنین سیستمى شروع به کار کنند. آنها در شروع از رمز و الفباى سیستم مورس الهام گرفتند و سعى کردند با چاپ و طراحى میله هاى پهن و باریک این شیوه را راه اندازى کنند و مدتى بعد هم به فکر سیستم بارکد نقطه اى و دایره اى افتادند.

سال ۱۹۴۹ بود که توانستند اختراع خود را ثبت کنند و در سال ۱۹۵۲ نخستین سیستم بارکدخوان را ساختند. «وودلند» که از سال۱۹۵۱در شرکت IBM مشغول به کار شده بود، توانست با استفاده از موقعیتهایى که در آنجا برایش ایجاد مى شد، به کمک دوستش در سال ۱۹۵۲ دستگاهى به بزرگى یک میز تحریر بسازد و ۲ جزء اصلى در آن تعبیه کرد:

۱- یک حباب (لامپ) ۵۰۰ واتى به عنوان منبع نور.

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

بعداً متوجه شدند لامپ ۵۰۰ واتى میزان الکتریسیته اى زیادتر از آنچه آنها نیاز داشتند، تولید مى کند و میزان اضافى، علاوه بر بالا بردن هزینه ها، گرماى اضافى هم تولید مى کرد و از طرفى نگاه کردن به آن باعث آسیب چشم مى شد، بنابراین به فکر استفاده از منبعى افتادند که تمام نور مورد نیاز آنها را در فضاى کوچکى متمرکز کند. همان کارى که امروزه «لیزر» انجام مى دهد، اما در سال ۱۹۵۲ لیزر موجود نبود!

بعدها با گسترش و تولید لیزر «Laser» توانستند دستگاههاى بارکدخوان ارزان ترى تولید کنند. گرچه «باب سیلور» فرصت استفاده درست از دانش خود را در شرایط آسان تر نیافت و در ۳۸سالگى فوت کرد، اما همکارش کار را ادامه داد.

در سال ۱۹۷۲ سیستم بارکد نقطه اى نیز در عمل مورد استفاده قرار گرفت، اما این روش چندان موفق نبود (زیرا حین چاپ براحتى مغشوش مى شد.)

در سال ۱۹۷۴ وودلند در IMB سیستم بارکد خطى را گسترش داد و نخستین محصول خرده فروشى (محصولاتى چون آب میوه و آدامس) به این طریق فروخته شد. (و جالب اینکه در حال حاضر یک بسته از آن آدامس در موزه اى در آمریکا نگهدارى مى شود).
و سرانجام آقاى وود در سال ۱۹۹۲ توانست مدال ملى تکنولوژى را بابت به کارگیرى سیستم بارکد دریافت کند. (تنها به خاطر استراق سمع دوستش آقاى سیلور!) خلاصه آنکه، بارکدها و سایر برچسب هاى خوانا در جایى که نیاز به خوانده شدن اطلاعات با پردازش توسط کامپیوتر وجود دارد، استفاده مى شوند و کاربرها به عوض تایپ کردن رشته اى طویل از داده ها، تنها بارکد مورد نظر را جلوى دستگاه بارکدخوان قرار مى دهند و پردازش بدون نیاز به نیروى انسانى به طور کاملاً خودکار انجام مى شود. بنابراین بارکد شیوه شناسایى و تعیین هویت خودکار داده ها است.

رقمى که توسط بارکد تولید مى شود، عموماً محصول خاصى را نشان مى دهد. سیستم بارکدینگ به طور معکوس هم کار مى کند، یعنى قادر است با دریافت رقم مربوط به یک محصول، بارکد مورد نظر را ایجاد بکند و در واقع نوعى خود شناسایى انجام مى شود.
فواید بارکد کردن
۱- مصون بودن از خطاپذیرى به علت کاهش دخالت نیروى انسانى و وارد نشدن دستى اطلاعات.
۲- دسته بندى دقیق اطلاعات.
۳- سرعت بالا به همراه صحت ۱۰۰درصد.
۴- دسترسى آسان به اطلاعات واقعى و حقیقى (در جریان روند مدیریت) البته اگر: با دقت تمام کالاها در فروشگاهها بارکدگذارى شوند تا مراجعه کنندگان دچار دردسرهایى که ما با آن خوب آشنایى داریم، نشوند

منبع


كد ۱۲۸ امكان كد گذاري همه ی ۱۲۸ حرف مربوط به مجموعه كاراكترهاي كد اسكي را ارائه مي كند. اين كد با استفاده از خطوط و فضاهاي خالي با ۴ پهناي مختلف ، به بيشترين فشردگي ممكن سمبل ها نسبت به روش هاي قديمي تر خود كه از خطوط و فضاهاي خالي با ۲ ضخامت مختلف استفاده مي كردند ، رسيده است.

كد ۱۲۸ ممكن است به صورت دو طرفه (از هر دو جهت ) اسكن شود و محدوديتي هم براي تعداد كاراكترها در هر باركد وجود ندارد. هر چند ممكن است طول باركد با توجه به نوع اسكنر مورد استفاده و يا مكان مورد نظر براي چاپ باركد محدود شود . اما اين روش محدوديتي براي طول باركد ايجاد شده ندارد.

كد ۱۲۸ سه مجموعه كاراكتري متفاوت دارد كه در جدول مشخصات باركد به نام هاي Code Set a و Code Set B و Code Set C مشخص شده است .هر كدام از اين سه مجموعه كد مي تواند با كاراكتر شروع مربوط به خودش مورد انتخاب واقع شود. كاراكتر خاص `shift` در هر مجموعه به شما امكان مي دهد تا بتوانيد در بين يك كد ست از كد ست هاي ديگر هم استفاده كنيد با اين توصيف امكان استفاده ازچند كد ست در يك بار كد وجود دارد. با استفاده از اين روش طول باركد چاپ شده مي تواند به كمترين حد ممكن خود برسد.

در صورتي كه داده ها فقط شامل اعداد باشد استفاده از مجموعه كد C باعث مي شود تا طول باركد چاپ شده به كمترين حد ممكن تقليل پيدا كند . البته بايد اين نكته را در نظر داشته باشيد كه براي استفاده از Code Set C بايستي تعداد ارقام رشته اي كه مي خواهيد باركد آن را چاپ كنيد زوج بوده و حداقل ۴ رقم و يا بيشتر طول داشته باشد.
هر كدام از مجموعه كدهاي a,B,C يك يا چند كاراكتر براي توابع خاص رزرو كرده اند
از ويژگي هاي كد ۱۲۸ استفاده از رقم كنترل براي بررسي صحت باركد خوانده شده توسط دستگاه اسكنر باركد مي باشد.

ساختار باركد ۱۲۸ به صورت زير است
• يك فضاي يكنواخت و يا خالي در سمت چپ خطوط باركد
• كاراكتر شروع
• تعداد نامحدودي از داده ها
• رقم كنترل صحت
• كاراكتر خاتمه
• يك فضاي يكنواخت و يا خالي در سمت راست خطوط باركد
پهناي فضاي يكنواخت و يا خالي حداقل بايد ۱۰ برابر پهناي نازكترين خط / نازكترين فاصله خالي در باركد باشد.

هر كاراكتر در باركد ۱۲۸ تركيبي از ۳ خط و ۳ فاصله است . (كاراكتر خاتمه داراي ۴ خط و ۳ فاصله مي باشد ) .هر خط / فاصله خالي مي تواند يكي از ۴ واحد پهناي مختلف را داشته باشد . نازكترين خط / فاصله خالي بايد يك چهارم پهن ترين خط/ فاصله خالي باشد. جدول مشخصات باركد پهناي خط/ فاصله خالي براي همه مجموعه كاراكترهاي مربوط به كد ۱۲۸ را نشان مي دهد. دقت كنيد كه مجموع پهناي خطوط در هر يك از كاراكتر ها عددي زوج و مجموع فواصل خالي براي هر كدام از كاراكترها عددي فرد است. اولين ستون در جدول با عنوان « value » حاوي عددي است كه براي محاسبه رقم كنترل بكار مي رود.

بارکد چیست؟ قسمت ۱
بارکد چیست؟ قسمت ۲

الگوریتم کلونی زنبور عسل مصنوعی Artificial Bee Colony (ABC) Algorithm

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

مقدمه

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

۱٫ الگوریتم کلونی زنبورهای مصنوعی

الگوریتم کلونی زنبورهای مصنوعی (ABC) توسط کارابوگا در سال ۲۰۰۵ برای بهینه سازی واقعی پارامترها ارایه شد، این الگوریتم یک الگوریتم بهینه سازی جدیدا معرفی شده است و رفتار کاوشی کلونی زنبورها را برای مسایل بهینه سازی بدون محدودیت شبیه سازی می کند. برای حل مسائل بهینه سازی با محدودیت یک روش اداره محدودیت با این الگوریتم ترکیب می شود.

در یک کلونی زنبور عسل واقعی ، وظایفی وجود دارد که توسط افراد تخصصی شده انجام می شود. این زنبورهای متخصص تلاش می کنند تا میزان شهد ذخیره شده در کندو را با انجام تقسیم کار و خودسازماندهی موثر حداکثر کنند. مدل کمینه انتخاب جستجوی غذا توسط گروه های هوشمند زنبور در یک کلونی زنبور عسل ، که الگوریتم ABC اتخاذ کرده است ، شامل سه نوع زنبور است : زنبورهای کارگر ، زنبورهای ناظر ، و زنبورهای پیشاهنگ (یا دیده ور) .

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

۱- مقدار دهی اولیه به موقعیت های منابع غذایی
۲- هر زنبور کارگر یک منبع غذایی جدید در مکان منبع غذایی خود تولید می کند و منبع بهتر را استخراج می کند .
۳- هر زنبور دیده ور یک منبع را وابسته به کیفیت راه حلش انتخاب می کند و یک منبع غذایی جدید رادر مکان منبع غذایی انتخاب شده تولید می کند و منبع بهتر را استخراج می کند.
۴- تعیین منبعی که باید متروک شود و تخصیص زنبورهای کارگر آن به عنوان دیده ور برای جستجوی منابع غذایی جدید.
۵- بخاطر سپردن بهترین منبع غذایی پیدا شده تا کنون.
۶- تکرار مرحله های ۲ – ۵ تا زمانی که معیار توقف مقتضی شود.

در مرحله اول الگوریتم ، xi (i = 1, . . . , SN) راه حل ها به صورت تصادفی تولید می شوند که در آن SN تعداد منابع غذایی است . در مرحله دوم الگوریتم ، برای هر زنبور کارگر ، که تعداد کل آنها برابر با نصف تعداد منابع غذایی است ، یک منبع جدید بوسیله رابطه زیر تولید می شود:

vij = xij + φij (xij – xkj) (1

φij یک عدد تصادفی بطور یکنواخت توزیع شده در بازه [-۱,۱] است که تولید موقعیت منابع غذایی همسایه را در اطراف xij کنترل می کند، K شاخص راه حل است که به صورت تصادفی از کلونی انتخاب شده است (K=int(rand ∗ SN) + 1), j = 1, . . .,D و D ابعاد مسئله است . بعد از تولید vi این راه حل جدید با xi مقایسه می شود و زنبور کارگر منبع بهتر را استخراج می کند . در مرحله سوم الگوریتم ، یک زنبور ناظر یک منبع غذایی را با احتمال (۲) انتخاب می کند و منبع جدیدی را در مکان منبع غذایی انتخاب شده توسط (۱) تولید می کند و به همان شکل روش زنبور کارگر، منبع بهتر برای استخراج شدن مورد تصمیم گیری قرار می گیرد.

Fiti میزان شایستگی راه حل xi است.

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

بوسیله رابطه (۳) xij = xj min + (xj max – xjmin )*rand

منبع : http://www.ecg-pnum.ir


۲٫ الگوریتم زنبور عسل

۲٫۱٫ زنبورها در طبیعت

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

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

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

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

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

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

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

۲٫۲٫ الگوریتم زنبور عسل معرفی شده

همان طور که اشاره شد، الگوریتم زنبور عسل یک الگوریتم بهینه سازی است که از رفتار کاوشی طبیعی زنبورهای عسل برای پیدا کردن راه حل بهینه الهام شده است. شکل ۱ شبهه کد الگوریتم را در ساده ترین حالت آن نشان می دهد. این الگوریتم نیازمند تنظیم تعدادی پارامتر است: تعداد زنبورهای دیده ور (n)، تعداد مکانهای انتخاب شده از مکانهای بازدید شده (m)، تعداد بهترین مکان ها از مکانهای انتخاب شده (e)، تعداد زنبورهای تازه نفس استخدام شده برای بهترین مکانهای e (nep)، تعداد زنبورهای استخدام شده برای سایر (m-e) مکان های انتخاب شده (nsp)، اندازه اولیه قطعه زمینها (ngh) که شامل مکان و همسایه های آن می شود و معیار توقف الگوریتم.

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

۱- مقدار دهی اولیه جمعیت با راه حلهای تصادفی
۲- ارزیابی تابع شایستگی جمعیت
۳- تا زمانی که (شرط توقف ملاقات نشده است)
// تشکیل جمعیت جدید.
۴- انتخاب مکان هایی برای جستجوی همسایه ها
۵- استخدام زنبورها برای مکانهای جدید (زنبورهای بیشتر برای بهترین مکان های e)
۶- انتخاب مناسب ترین زنبور از هر قطعه زمین گل
۷- تخصیص زنبورهای باقی مانده برای جستجوی تصادفی و ارزیابی شایستگی های آنها
۸- پایان حلقه

در مرحله ۴ زنبورهایی که بالاترین شایستگی را دارند به عنوان “زنبورهای انتخاب شده” انتخاب می شوند و مکان های ملاقات شده توسط آنها برای جستجوی همسایگی انتخاب می شود. سپس، در مرحله های ۵ و ۶، الگوریتم جستجوها را در همسایگی های مکانهای انتخاب شده هدایت می کند، و زنبورهای بیشتری را نزدیک بهترین مکانهای e تخصیص می دهد. زنبورها می توانند مستقیماً بر اساس شایستگی مکان هایی که آنها ملاقاتش کرده اند انتخاب شوند. متناوباً ، مقادیر شایستگی برای تعیین احتمال اینکه کدام زنبورها انتخاب خواهند شد استفاده می شوند.

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

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

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

منبع


شرح الگوریتم زنبور عسل

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

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

الگوریتم زنبور عسل هر نقطه را در فضای پارامتری – متشکل از پاسخ‌های ممکن- به عنوان منبع غذا تحت بررسی قرار می‌دهد. زنبورهای دیده‌بان – کارگزاران شبیه‌سازی شده – به صورت تصادفی فضای پاسخ­ها را ساده می­کنند و به وسیله­ی تابع شایستگی کیفیت موقعیت­های بازدید شده را گزارش می­دهند. جواب‌های ساده شده رتبه بندی می‌شوند و دیگر زنبورها نیروهای تازه­ای هستند که فضای پاسخ‌ها را در پیرامون خود برای یافتن بالاترین رتبه محل‌ها جستجو می‌کنند که گلزار نامیده می‌شود. الگوریتم به صورت گزینشی دیگر گلزارها را برای یافتن نقطه­ی بیشینه­ی تابع شایستگی جستجو می‌کند

کاربردها 

برخی کاربردهای الگوریتم زنبور در مهندسی:

* آموزش شبکه عصبی برای الگو شناسی

* زمان بندی کارها برای ماشین‌های تولیدی

* دسته‌بندی اطلاعات

* بهینه‌سازی طراحی اجزای مکانیکی

* بهینه‌سازی چند گانه

* میزان کردن کنترل کننده‌های منطق فازی برای ربات‌های ورزشکار

هم چنبن نوشته ای با عنوان مقاله های الگوریتم کلونی زنبور عسل (Artificial Bee Colony (ABC) Algorithm) و کاربردهای آن شامل مقالات داخلی و خارجی در همین سایت قرار داده شده است.

الگوریتم زنبور شامل گروهی مبتنی بر الگوریتم جستجو است که اولین بار در سال ۲۰۰۵ توسعه یافت ؛ این الگوریتم شبیه سازی رفتار جستجوی غذای گروههای زنبور عسل است. در نسخه ابتدایی این الگوریتم، الگوریتم نوعی از جستجوی محلی انجام می دهد که با جستجوی کتره ای (Random) ترکیب شده و می تواند برای بهینه سازی ترکیبی {زمانی که بخواهیم چند متغیر را همزمان بهینه کنیم.}یا بهینه سازی تابعی به کار رود.

جستجوی غذا در طبیعت

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

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

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

الگوریتم

الگوریتم زنبور هر نقطه را در فضای پارامتری_ متشکل از پاسخ های ممکن_به عنوان منبع غذا تحت بررسی قرار می دهد.”زنبور های دیده بان”_ کارگزاران شبیه سازی شده _به صورت کتره ای (Random) فضای پاسخ ها را ساده می کنند و به وسیله ی تابع شایستگی کیفیت موقعیت های بازدید شده را گزار ش می دهند. جواب های ساده شده رتبه بندی می شوند، و دیگر “زنبورها” نیروهای تازه ای هستند که فضای پاسخ ها را در پیرامون خود برای یافتن بالا ترین رتبه محل ها جستجو می کنند(که “گلزار” نامیده می شود) الگوریتم به صورت گزینشی دیگر گلزار ها را برای یافتن نقطه ی بیشینه ی تابع شایستگی جستجو می کند.

الگوريتم زنبور عسل

الگوریتم زنبور شامل گروهی مبتنی بر الگوریتم جستجو است که اولین بار در سال ۲۰۰۵ توسعه یافت ؛ این الگوریتم شبیه سازی رفتار جستجوی غذای گروه های زنبور عسل است. در نسخه ابتدایی این الگوریتم نوعی از جستجوی محلی انجام می دهد که با جستجوی کتره ای{Random } ترکیب شده و می تواند برای بهینه سازی ترکیبی {زمانی که بخواهیم چند متغیر را همزمان بهینه کنیم.}یا بهینه سازی تابعی به کار رود.

جستجوی غذا در طبیعت

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

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

پروسه ی جستجوی غذای یک کلونی به وسیله ی زنبورهای دیده بان آغاز می شود که برای جستجوی گلزار های امید بخش {دارای امید بالا برای وجود نکتار یا گرده}فرستاده می شوند. زنبورهای دیده بان به صورت کتره ای{Random } از گلزاری به گلزار دیگر حرکت می کنند.
در طول فصل برداشت محصول{گل دهی}، کلونی با آماده نگه داشتن تعدادی از جمعیت کلونی به عنوان زنبور دیده بان به جستجوی خود ادامه می دهند. هنگامی که جستجوی تمام گلزار ها پایان یافت، هر زنبور دیده -بان ، بالای گلزاری که اندوخته ی کیفی مطمئنی از نکتار و گرده دارد، رقص خاصی را اجرا می کند.
این رقص که به نام “رقص چرخشی”{حرکتی مانند حرکت قرقره} شناخته می شود، اطلاعات مربوط به جهت تکه گلزار{نسبت به کندو}، فاصله تا گلزار و کیفیت گلزار را به زنبور های دیگر انتقال می دهد. این اطلاعات زنبور های اضافی و پیرو را به سوی گلزار می فرستد.
بیشتر زنبور های پیرو به سوی گلزار هایی میروند که امید بخش تر هستند و امید بیشتری برای یافتن نکتار و گرده در آنها، وجود دارد.
وقتی همه ی زنبور ها به سمت ناحیه ای مشابه بروند، دوباره به صورت کتره ای {Random } و به علت محدوده ی رقصشان در پیرامون گلزار پراکنده می شوند تا به موجب این کار سرانجام نه یک گلزار ، بلکه بهترین گل های موجود درون آن تعیین موقعیت شوند.

الگوریتم زنبور هر نقطه را در فضای پارامتری- متشکل از پاسخ های ممکن- به عنوان منبع غذا تحت بررسی قرار می دهد.”زنبور های دیده بان”- کارگزاران شبیه سازی شده – به صورت کتره ای{Random } فضای پاسخ ها را ساده می کنند و به وسیله ی تابع شایستگی کیفیت موقعیت های بازدید شده را گزار ش می دهند. جوابهای ساده شده رتبه بندی می شوند، و دیگر “زنبورها” نیروهای تازه ای هستند که فضای پاسخ ها را در پیرامون خود برای یافتن بالا ترین رتبه محل ها جستجو می کنند{که “گلزار” نامیده می شود} الگوریتم به صورت گزینشی دیگر گلزار ها را برای یافتن نقطه ی بیشینه ی تابع شایستگی جستجو می کند.

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

منبع: http://faraebtekari.ir


الگوریتم های الهام گرفته شده از کلونی زنبورها

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

به علاوه آنها يک مدل کمينه از از رفتار کاوشگرانه زنبورها ارائه داند. اين مدل شامل سه مولفه مهم میباشد: ۱)منبع غذايي ۲(زنبورهای کارگر ۳(زنبورهای غيرکارگر. اين مدل دو نوع رفتار را دربرمیگيرد: سربازگيری برای يک منبع شهد و ترک منبع. Teodorovic پيشنهاد داد تا از هوش جمعی زنبورها در توسعه و بهبود سيستمهای مصنوعی با هدف حل مسائل پيچيده در حمل و نقل و ترافيک استفاده شود، همچنين او الگوريتم BCO (Bee Colony Optimization)را ارائه کرد که قادر است مسائل ترکيبی قطعی را همانند مسائل ترکيبی به خوبی حل نمايد. Drias يک روش هوشمندانه جديد را معرفی نمود با نام BSO که الهام گرفته از زنبورهای واقعی است. Wedde يک الگوريتم مسيريابی جديد با نام BeeHive ارائه کرد که الهام گرفته از متدهای ارتباطی و ارزيابی و همچنين رفتار زنبورهای عسل میباشد. در اين الگوريتم عاملها در منطقه شبکه که محدودهی کاوش ناميده میشود، در طول مسيرشان اطلاعات وضعيتی شبکه را به منظور بهنگام سازی جدول مسيريابی محلی جمع آوری می کنند.

کارهای انجام شده که در پاراگراف های قبلی ذکرشد، شامل انواع مختلفی از مسائل بود. تنها دو الگوريتم بهينه سازی عددی در مقالات مبتنی بر رفتار جمعی زنبورهای عسل وجود دارد. Yang الگوريتم زنبورهای مجازی برای حل( (VBAبهينه سازی توابع عددی ارائه داده است. در ابتدا يک تجمع از زنبورهای مجازی ايجاد میشود و تجمع شروع به حرکت کردن در فضای مسئله به صورت تصادفی مینمايد. اين زنبورها هنگامی که يک يا چند منبع غذايي را يافتند که متناظر است با يافتن مقدار تابع، با يکديگر تعامل برقرار میکنند راهحل برای مسئله بهينه سازی از شدت و قوت تعاملات زنبورها با يکديگر بدست خواهد آمد. برای بهينه سازی توابع چندمتغييره Karaboga الگوريتم کلونی زنبورهای مصنوعی ( ABC ) را ارئه داد که با الگوريتم زنبورهای مجازی تفاوت دارد.

الگوریتم زنبور عسل

الگوریتم کلونی زنبور عسل مانند سایر الگوریتم های هوش ازدحامی مرتبط بر رفتار تصادفی المان های آن است و برای حل مسائل بهینه سازی کاربرد دارد. بسیاری از الگوریتم های هوش ازدحامی با الهام گرفتن از طبیعت ایجاد شده اند مانند الگوریتم کلونی مورچگان، الگوریتم پرندگان، الگوریتم فاخته و الگوریتم کلونی زنبور عسل یا Artificial bee colony algorithm که به صورت مخفف BCO نامیده میشود (Bee Colony Optimization) .

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

یکی دیگر از روش های حل مسائل بهینه سازی الگوریتم های هوش ازدحامی است که الگوریتم زنبور عسل از جمله این الگوریتم ها است. الگوریتم زنبور (Bee Algorithm) یک الگوریتم گروهی مبتنی بر جستجو است که در سال ۲۰۰۵ میلادی ابداع شده است.این الگوریتم شبیه‌ سازی رفتار جستجوی غذای گروه‌های زنبور عسل است. در نسخه ابتدایی این الگوریتم، الگوریتم نوعی از جستجوی محلی انجام می‌دهد که با جستجوی تصادفی کتره­­ا ترکیب شده و می‌تواند برای بهینه سازی ترکیبی یا بهینه‌ سازی تابعی استفاده شود.

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

منبع: http://faraebtekari.ir


الگوریتم کلونی زنبور عسل (ABC)

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

اگر یک الگوریتم یک قانون احتمالی را برای بهبود راه حل بکار بگیرد سپس آن را احتمال یا اتفاقی نامیده میشود. یکی دیگر از طبقه بندی را می توان بسته به ماهیت پدیده توسط الگوریتم شبیه سازی کرد.این نوع طبقه بندی ، عمدتا دارای دو گروه مهم از الگوریتم جمعیت هستند که براساس : الگوریتم های تکاملی (EA) و الگوریتم های مبتنی بر هوش جمعی. از محبوب ترین الگوریتم های تکاملی الگوریتم ژنتیک(GA) است. درGA تلاش شده است تکامل طبیعی یک پدیده شبیه سازی شود. در تکامل طبیعی ، هر گونه جستجو برای سازگاری سودمند در یک محیط در حال تغییر است. به عنوان یک گونه تکامل یافته ، ویژگی های جدیدی در کروموزوم های فردی کد گذاری می شوند.

این اطلاعات توسط جهش تصادفی تغییرمی یابد ، اما بطورواقعی نیروی محرکه باعث توسعه تکاملی درترکیب و جایگزینی مواد کروموزومی در طول تولید مثل میشود. اگر چه تلاش های متعددی برای گنجاندن این اصول در روال بهینه سازی دراوایل دهه ۱۹۶۰انجام شده ، الگوریتم های ژنتیک برای اولین بار بر یک مبنای نظری صوتی ایجاد شده بودند. این اصطلاح جمعی در حالت کلی برای اشاره به هر مجموعه دار از تعامل افراد مورد استفاده قرار می گیرد. به عنوان یک مثال کلاسیک از ازدحام زنبورهایی که در اطراف کندوی خود تجمع کردند ، اما در استعاره به راحتی می توان به سیستم هایی معماری مشابهی دارند توسعه داد. در کلونی مورچه ها،مورچه ها می توانند به عنوان گروهی ازعوامل تصور شوند ، همچنین ازدحام پرندگان گروهی از پرندگان است. یک سیستم ایمنی ، گروهی از سلول ها ومولکول ها است در حالی که یک جمعیت شامل گروهی از مردم است.

الگوریتم بهینه سازی ازدحام ذرات (PSO) شبیه سازی می کند رفتار اجتماعی پرندگان یا ماهی ها توسط ابرهارت و کندی در سال ۱۹۹۵ معرفی شده است. روش های گوناگونی به مدل رفتار هوشمند خاص ازدحام زنبور عسل پیشنهاد شده است و برای حل مسایل از نوع ترکیبی استفاده شده است.آنها یک ایده روبات بر رفتار جستجوی غذا از زنبورها را ایجاد کرده اند . معمولا ، همه %

کاربرد های پردازش تصویر در دنیای امروز

چکيده

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

كليد واژه- پردازش تصویر(Image processing)، بینایی ماشین(Machine vision)، کاربرد

۱- مقدمه

امروزه با گسترش روز افزون روش های مختلف اخذ اطلاعات گسسته مانند پویشگرها و دوربین های دیجیتالی، پردازش تصویر کاربرد فراوانی یافته است. تصاویر حاصله از این اطلاعات همواره کم و بیش همراه مقداری نویز بوده و در مواردی نیز دارای مشکل محوشدگی مرزهای نمونه های داخل تصویر می باشند که موجب کاهش وضوح تصویر دریافتی می گردند. مجموعه عملیات و روش هایی که به منظور کاهش عیوب و افزایش کیفیت ظاهری تصویر مورد استفاده قرار میگیرد، پردازش تصویر نامیده می شود. اگرچه حوزه های کار با تصویر بسیار وسیع است ولی عموماً محدوده مورد توجه در چهار زمینه ی بهبود کیفیت ظاهری(Enhancement)، بازسازی تصاویر مختل شده(Restoration)، فشرده گی و رمزگذاری تصویر (Compression and Coding) و درک تصویر توسط ماشین (Understanding) متمرکز می گردد.
بهبود تصاویر شامل روش هایی مثل استفاده از فــ….یـــ……لـــ……تـــ…. …ر محو کننده و افزایش تضاد برای بهتر کردن کیفیت دیداری تصاویر و اطمینان از نمایش درست آن ها در محیط مقصد است. بینایی ماشین به روش هایی می پردازد که به کمک آن ها می توان معنی و محتوای تصاویر را درک کرد تا از آن ها در کارهایی چون رباتیک و محور تصاویر استفاده شود. پردازش تصویر از هر دو جنبه نظری و عملی پیشرفت های چشمگیری داشته است و بسیاری از علوم به آن وابسته اند.

۲- کاربردهای پردازش تصویر

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

۲-۱-صنعت

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

۲-۲- هواشناسی

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

۲-۳-شهرسازی

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

۲-۴- کشاورزی

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

۲-۵-علوم نظامی و امنیتی

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

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

۲-۶-نجوم و فضا نوردی

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

پردازش تصویر در فضانوردی هم کاربرد زیادی دارد. در تصاویر دور می توان سطح سیارات و همچنین سطح قمرها را اسکن کرده و اطلاعات بسیار ریزی از آنها استخراج کنیم.
کاربرد دیگر پردازش تصویر در فــ….یـــ……لـــ……تـــ…. …ر کردن عکس هایی است که توسط تلسکوپ های فضایی مختلف از جمله هابل (Hubble Space Telescope)، از فضا گرفته می شود.
کاربرد دیگر آن حذف گرد و خاک و جو سیاره ها از تصاویر به کمک تصویربرداری IR و X-RAY به صورت همزمان و ترکیب این تصاویر است.
در تصاویر نزدیک هم کاربرد دارد، از جمله هدایت مریخ نوردها، فرود فضاپیماهای بدون سرنشین و الصاق تجهیزات جدید به ایستگاههای فضایی به صورت خودکار.
از امکانات سایت گوگل، امکاناتی است به نام Google Mars که این برنامه دقیقاً مانند Google Earth عمل می کند با این تفاوت که Google Earth سطح زمین را در هر زمان که بخواهید و در هر نقطه ای از زمین و از ارتفاع های بسیار پائین هم نشان می دهد ولی Google Mars دقیقاً همین کار را برای سطح سیاره مریخ انجام می دهد.

۲-۷-پزشکی

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

۲-۸-فناوری های علمی

پردازش تصویر در افزایش سرعت پیشرفت های علمی تأثیر فوق العاده داشته است. اولین و مشخص ترین تأثیر آن را می توان در علم عکاسی یا هنر دید. شکار لحظه های شگفت آوری که در کسری از ثانیه اتفاق می افتد، بالا بردن وضوح عکس های گرفته شده و ایجاد افکت های خیره کننده، از دستاوردهای پردازش تصویر است.
همچنین در توسعه تکنولوژی پیشرفته (gps (Global Positioning Systems کمک زیادی داشته و تهیه نقشه های سه بعدی از جاده ها در تمام نقاط جهان، از کاربردهای دیگر آن است. با به وجود آمدن این علم، مسابقات ربات های فوتبالیست به صورت جدی دنبال شد.
این علم در پیشرفت علوم پایه فیزیک ، شیمی و مخصوصاً تحقیقات فیزیکی و مکانیکی، کمک فراوانی کرده است. به عنوان مثال وسیله ای برای حمل و نقل کالاها در مسیرهای صعب العبور ساخته شده است. قبل از ساخت آن، رفتار چهارپایان در حالت های مختلف توسط کامپیوتر تحلیل و عیناً به دستگاه آموزش داده شده است.در کل پردازش تصاویر به علت سرعت زیاد آن، در ساخت وسایل مکانیکی پر سرعت، کاربرد زیادی دارد. وسیله ای وجود دارد که قادر است ، توپی که با سرعت بسیار زیاد به سمت پائین می آید را مهار کند.

۲-۹-باستان شناسی

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

۲-۱۰-تبلیغات

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

۲-۱۱-سینما

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

۲-۱۲-اقتصاد

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

۲-۱۳-روانشناسی

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

۲-۱۴-زمین شناسی‌

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

——————-
عملیات پردازش تصویر در حقیقت مقایسه دو مجموعه عدد است که اگر تفاوت این دو مجموعه از یک محدوده خاص فراتر رود، از پذیرفتن محصول امتناع شده و در غیر این‌صورت محصول‌ پذیرفته می‌شود.

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

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

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

——————–
صنايع چوب يكي از پر كاربرد ترين صنايع در عصر حاضر است.
اين صنعت قديمي روز به روز در حال پيشرفت در زمينه هاي مختلف آن مي باشد.
اكنون ديگر صنايع چوب به يك صنعت آميخته با هنر تبديل شده است.
همان طور كه مي دانيم برش و حالت دهي از جمله مهمترين و كليدي ترين كار هاي صنعت چوب مي باشد.
اما هميشه يك مشكل اساسي در برش صحيح چوب وجود داشت و آن هم اين بود كه چگونه چوب به حالتي برش شود كه كمترين ميزان اتلاف چوب را داشته باشد و نيز بعد از برش چگونه مي توان صحيح بودن برش را كنترل كرد.
اين مشكل نيز به راحتي توسط پردازش تصوير قابل حل است.
بعد از اين كه برش يك قسمت از چوب تمام شد ، با استفاده از يك دوربين آن قسمت را كنترل مي كنيم تا نقصي از لحاظ برش وجود نداشته باشد.

——————–
بحث شمارش، جزء لاينفك بسته بندي كالاهاي مختلف مي باشد.
زماني كه تعداد بسته بندي ها بالا رود ، اين كار يك كار خسته كننده و طاقت فرسا براي انسان به نظر مي آيد.
اما شايد ساده ترين كار در بحث پردازش تصوير ، شمارش باشد.
شمارش تعداد به خودي خود شامل چندين موضوع مي شود؛ از جمله : شمارش اجزاي داخل بسته بندي ، شمارش اجزاي روي نوار نقاله و … .

——————–
تشخیص شماره پلاک خودرو
نرم افزار شمارش خودروهای عبوری از عرض خیابان

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

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

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

۱٫ اندازه گیری و کالیبراسیون
۲٫ جداسازی پینهای معیوب
۳٫ بازرسی لیبل و خواندن بارکد
۴٫ بازرسی عیوب چوب
۵٫ بازرسی قرص
۶٫ بازرسی و دسته بندی زعفران
۷٫ درجه بندی و دسته بندی کاشی
۸٫ بازرسی میوه
———————-
اتوماسیون صنعتی

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

* افزایش سرعت و کیفیت تولی
* کاهش ضایعات
* اصلاح روند تولید
* گسترش کنترل کیفیت

———————
نمونه ای از کاربردهای پردازش تصویر در زمینه رهگیری (tracking):

نمونه ای از کاربردهای پردازش تصویر در زمینه رهگیری (tracking)

نمونه ای از کاربردهای پردازش تصویر در زمینه رهگیری (tracking)

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

هوش مصنوعی چیست؟

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

هوش مصنوعی به هوشی که یک ماشین از خود نشان می‌دهد و یا به دانشی در کامپیوتر که سعی در ایجاد آن دارد گفته می‌شود. بیشتر نوشته‌ها و مقاله‌های مربوط به هوش مصنوعی آن را «دانش شناخت و طراحی عامل‌های هوشمند» تعریف کرده‌اند. یک عامل هوشمند سیستمی است که با شناخت محیط اطراف خود، شانس موفقیت خود را بالا می‌برد.[۲] جان مکارتی که واژه هوش مصنوعی را در سال ۱۹۵۶ استفاده نمود، آن را «دانش و مهندسی ساخت ماشین‌های هوشمند» تعریف کرده‌است. تحقیقات و جستجوهایی انجام شده برای رسیدن به ساخت چنین ماشین‌هایی مرتبط با بسیاری از رشته‌های علمی دیگر می‌باشد، مانند علوم رایانه، روان‌شناسی، فلسفه، عصب شناسی، علوم ادراکی، تئوری کنترل، احتمالات، بهینه سازی و منطق.

پیش از بوجود آمدن علوم الکترونیک، هوش مصنوعی توسط فلاسفه و ریاضی‌دانانی نظیر بول که اقدام به ارائه قوانین و نظریه‌هایی در باب منطق نمودند، مطرح شده بود. با اختراع رایانه‌های الکترونیکی در سال ۱۹۴۳، هوش مصنوعی دانشمندان را به چالشی بزرگ فراخواند. در بادى امر، چنین به‌نظر می‌رسید که این فناوری در نهایت قادر به شبیه‌سازی رفتارهای هوشمندانه خواهد بود.

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

نام هوش مصنوعی در سال ۱۹۶۵ میلادی به عنوان یک دانش جدید ابداع گردید. البته فعالیت درزمینه این علم از سال ۱۹۶۰ میلادی شروع شده‌بود.

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

این اصطلاح (هوش مصنوعی) برای اولین بار توسط جان مکارتی (John Mccorthy) که از آن به‌عنوان پدر «علم و دانش تولید ماشینهای هوشمند» یاد می‌شود استفاده شد.آقای جان مکارتی مخترع یکی از زبانهای برنامه نویسی هوش مصنوعی به نام (lisp) نیز هستند. با این عنوان می‌توان به هویت هوشمند یک ابزار مصنوعی اشاره کرد. (ساختهٔ دست بشر، غیر طبیعی، مصنوعی)

حال آنکه AI به عنوان یک اصطلاح عمومی پذیرفته شده که شامل محاسبات هوشمندانه و ترکیبی (مرکب از مواد مصنوعی) می‌باشد.

از اصطلاح strong and weak AI می‌توان تا حدودی برای معرفی رده‌بندی سیستم‌ها استفاده کرد. AI‌ها در رشته‌های مشترکی چون علم کامپیوتر، روانشناسی و فلسفه مورد مطالعه قرار می‌گیرند، که مطابق آن باعث ایجاد یک رفتار هوشمندانه، یادگیری و سازش می‌شود و معمولاً نوع پیشرفتهٔ آن در ماشینها و کامپیوترها استفاده می‌شود.

آزمون تورینگ

آزمون تورینگ آزمونی است که توسط آلن تورینگ در سال ۱۹۵۰ در نوشته‌ای به نام «محاسبات ماشینی و هوشمندی» مطرح شد. در اين آزمون شرايطي فراهم مي شود كه شخصي با ماشين تعامل برقرار كند و پرسش هاي كافي براي بررسي هوشمندي او بپرسد. چنانچه در پايان آزمايش نتواند تعيين كند كه با انسان در تعامل بوده است يا با ماشين، تست تورينگ با موفقيت انجام شده است. تا كنون هيچ ماشيني از اين آزمون با موفقيت بيرون نيامده است. کوشش این آزمون برای تشخیص درستی هوشمندی یک سیستم است که سعی در شبیه سازی انسان دارد.
منبع

تعریف و طبیعت هوش مصنوعی

هنوز تعریف دقیقی که مورد قبول همهٔ دانشمندان این علم باشد برای هوش مصنوعی ارائه نشده‌است، و این امر، به هیچ وجه مایهٔ تعجّب نیست. چرا که مقولهٔ مادر و اساسی‌تر از آن، یعنی خود هوش هم هنوز بطور همه‌جانبه و فراگیر تن به تعریف نداده‌است. در واقع، می‌توان نسل‌هایی از دانشمندان را سراغ گرفت که تمام دوران زندگی خود را صرف مطالعه و تلاش در راه یافتن جوابی به این سؤال عمده نموده‌اند که: هوش چیست؟

اما اکثر تعریف‌هایی که در این زمینه ارایه شده‌اند بر پایه یکی از ۴ باور زیر قرار می‌گیرند:

۱٫ سیستم‌هایی که به طور منطقی فکر می‌کنند
۲٫ سیستم‌هایی که به طور منطقی عمل می‌کنند
۳٫ سیستم‌هایی که مانند انسان فکر می‌کنند
۴٫ سیستم‌هایی که مانند انسان عمل می‌کنند

شاید بتوان هوش مصنوعی را این گونه توصیف کرد: «هوش مصنوعی عبارت است از مطالعه این که چگونه کامپیوترها را می‌توان وادار به کارهایی کرد که در حال حاضر انسان‌ها آنها را بهتر انجام می‌دهند».

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

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

–مشاهده رفتاري هوشمندانه و صحيح از يك سيستم را نمي توان دليلي كافي بر هوشمندي آن سيستم تصوركرد بلكه بايستي به ساختار داخلي و مكانيزم انتخاب راه توسط سيستم توجه شود كه آيا مبتني بر آگاهي خود سيستم است يا نه و اين آگاهي زماني ميسر خواهد بود كه سيستم خود قابليت تحليل اطلاعات در يافتي از محيط را داشته باشد و بتواند رابطه هاي معني داري بين علت و معلول ما بين اتفاقات محيطي ايجاد كند و در واقع قادر به ايجاد مدلي هر چند غير دقيق بر پايه مشاهدات خود از محيط باشد سپس سيستم ايده ارزشمندي از نظرگاه خود توليد بكند و بعنوان خواسته و هدفي سعي در پياده سازي آن بكند يعني در پي پيدا كردن و اتصال ابزارهاي مناسبي به آن هدف باشد تا بتواند آلگوريتم عملياتي براي برآورد آن خواسته توليد نمايد.
منبع

فلسفهٔ هوش مصنوعی

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

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

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

اتاق چینی

اتاق چینی بحثی است که توسط «جان سیرل» در ۱۹۸۰ مطرح شد در این راستا که یک ماشین سمبل گرا هرگز نمی‌تواند دارای ویژگی‌هایی مانند «مغز» و یا «فهمیدن» باشد، صرف نظر از اینکه چقدر از خود هوشمندی نشان دهد.
منبع

مدیریت پیچیدگی

ایجاد و ابداع فنون و تکنیک‌های لازم برای مدیریّت پیچیدگی را باید به عنوان هستهٔ بنیادین تلاش‌های علمی و پژوهشی گذشته، حال، و آینده، در تمامی زمینه‌های علوم رایانه، و به ویژه، در هوش مصنوعی معرّفی کرد. شیوه‌ها و تکنیک‌های هوش مصنوعی، در واقع، برای حلّ آن دسته از مسائل به وجود آمده‌است که به طور سهل و آسان توسط برنامه‌نویسی تابعی (Functional programming)، یا شیوه‌های ریاضی قابل حلّ نبوده‌اند.

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

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

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

هر چند نمونه بالا ممکن است کمی آرمانی به نگر برسد، ولی به هیچ عنوان دور از دسترس نمی‌باشد. دانشمندان, عموماً برای تولید چنین ماشینهایی، از وجود مدلهای زنده‌ای که در طبیعت وجود، به ویژه آدمی نیز سود برده‌اند.

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

تکنیک‌ها وزبان‌های برنامه نویسی هوش مصنوعی

عملکرد اولیه برنامه نویسی هوش مصنوعی ایجاد ساختار کنترلی مورد لزوم برای محاسبه سمبولیک است زبانهای برنامه نویسی LISP,PROLOG علاوه بر اینکه از مهمترین زبانهای مورد استفاده در هوش مصنوعی هستند خصوصیات نحوی ومعنایی انها باعث شده که انها شیوه‌ها و راه حل‌های قوی برای حل مسئله ارایه کنند. تاثیر قابل توجه این زبانها بر روی توسعه AI از جمله توانایی‌های انها بعنوان «ابزارهای فکرکردن» می باشد. در حقیقت همانطور که هوش مصنوعی مراحل رشد خود را طی می‌کند زبانهای LISP ,PROLOG بیشتر مطرح می‌شوند این زبانها کار خود را در محدوده توسعه سیستم‌های AIدر صنعت ودانشگاه‌ها دنبال می‌کنند و طبیعتاً اطلاعات در مورد این زبانها بعنوان بخشی از مهارت هر برنامه نویس AIمی‌باشد. PROLOGیک زبان برنامه نویسی منطقی است. یک برنامه منطقی دارای یک سری ویژگیهای قانون ومنطق است.

در حقیقت خود این نام از برنامه نویسی PROدر LOGIC می‌آید. در این زبان یک مفسر برنامه را بر اساس یک منطق می‌نویسد.ایده استفاده توصیفی محاسبهٔ اولیه برای بیان خصوصیات حل مسئله یکی از محوریتهای مشارکت PROLOG می باشد که برای علم کامپیوتر بطور کلی و بطور اخص برای زبان برنامه نویسی هوشمند مورد استفاده قرار می‌گیرند. LISP اصولاً LISP یک زبان کامل است که دارای عملکردها و لیست‌های لازمه برای توصیف عملکردهای جدید، تشخیص تناسب و ارزیابی معانی می‌باشد. LISP به برنامه نویس قدرت کامل برای اتصال به ساختارهای اطلاعاتی را می‌دهد گر چه LISP یکی از قدیمی ترین ترین زبانهای محاسباتی است که هنوز فعال است ولی دقت کافی در برنامه نویسی وطراحی توسعه باعث شده که این یک زبان برنامه نویسی فعال باقی بماند. در حقیقت این مدل برنامه نویسی طوری موثر بوده‌است که تعدادی از دیگر زبانها براساس عملکرد برنامه نویسی آن بنا شده‌اند: مثل FP ،ML ،SCHEME یکی از مهمترین برنامه‌های مرتبط با LISP برنامه SCHEME می‌باشد که یک تفکر دوباره در باره زبان در آن وجود دارد که بوسیله توسعه AI وبرای آموزش واصول علم کامپیوتر مورد استفاده قرار می‌گیرد.
منبع

عامل‌های هوشمند

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

سیستم‌های خبره

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

ﭘﻴﺶ ﭘﺮﺩﺍﺯﺵ-اولین بخش از کار OCR

پیش پردازش در تشخص نوری کاراکترها

ﺍﻳﻦ ﻣﺮﺣﻠﻪ ﺷﺎﻣﻞ ﻛﻠﻴﺔ ﭘﺮﺩﺍﺯﺷﻬﺎﻳﻲ ﺍﺳﺖ ﻛﻪ ﺑﺮ ﺭﻭﻱ ﺳﻴﮕﻨﺎﻟﻬﺎﻱ ﺗﺼﻮﻳﺮﻱ ﺧﺎﻡ ﺍﻧﺠﺎﻡ ﻣﻲ ﺷﻮﻧﺪ. ﺗﺎ ﻣﻮﺟﺐ ﺗﺴﻬﻴﻞ ﻳﺎ ﺍﻓﺰﺍﻳﺶ ﺩﻗﺖ ﺭﻭﻧﺪ ﺍﺟﺮﺍﻱ ﻓﺎﺯﻫﺎﻱ ﺑﻌﺪﻱ ﮔﺮﺩﻧﺪ. ﺍﺯ ﻣﺠﻤﻮﻋﺔ ﺍﻳﻦ ﭘﺮﺩﺍﺯﺷﻬﺎ، ﻫﺪﻓﻬﺎﻱ ﺯﻳﺮ ﺩﻧﺒﺎﻝ ﻣﻲ ﺷﻮﺩ :
۱-    ﻛﺎﻫﺶ ﻧﻮﻳﺰ
۲-    ﻧﺮﻣﺎﻟﻴﺰﻩ ﻧﻤﻮﺩﻥ ﺩﺍﺩهﻫﺎ
۳-    ﻓﺸﺮﺩﻩ ﺳﺎﺯﻱ ﻣﻴﺰﺍﻥ ﺍﻃﻼﻋﺎﺗﻲ ﻛﻪ ﻣﻲ ﺑﺎﻳﺴﺖ ﻣﺤﻔﻮﻅ ﺑﻤﺎﻧﺪ.
۴-    ﺑﺎﺯﺷﻨﺎﺳﻲ ﺧﻂ ، ﺯﺑﺎﻥ ﻭ ﻓﻮﻧﺖ

۱-كاهش نویز

ﻧﻮﻳﺰ ﺍﻳﺠﺎﺩ ﺷﺪﻩ ﺑﻮﺍﺳﻄﺔ ﺩﺳﺘﮕﺎﻫﻬﺎﻱ ﺍﺳﻜﻨﺮ ﻧﻮﺭﻱ ﻳﺎ ﺍﺑﺰﺍﺭﻫﺎﻱ ﻧﮕﺎﺭﺷﻲ ﻣﻨﺠﺮ ﺑﻪ ﺍﻳﺠﺎﺩ ﻗﻄﻌﻪ ﺧﻄﻬﺎﻱ ﮔﺴﺴﺘﻪ ، ﺍﺗﺼﺎﻝ ﺑﻴﻦ ﺧﻄﻮﻁ، ﻓﻀﺎﻫﺎﻱ ﺧﺎﻟﻲ ﺩﺭ ﺧﻄﻮﻁ ﻣﺘﻦ، ﭘﺮ ﺷﺪﻥ ﺣﻔﺮه‌های ﻣﻮﺟﻮﺩ ﺩﺭ ﺗﺼﻮﻳﺮ ﺑﺮﺧﻲ ﺣﺮﻭﻑ ﻭ ﻏﻴﺮﻩ ﻣﻲ ﮔﺮﺩﺩ. ﻫﻤﭽﻨﻴﻦ ﺍﻋﻮﺟﺎﺟﻬﺎﻱ ﻣﺨﺘﻠﻒ ﺷﺎﻣﻞ ﺗﻐﻴﻴﺮﺍﺕ ﻣﺤﻠﻲ، ﻣﻨﺤﻨﻲ ﺷﺪﻥ ﮔﻮﺷﻪ ﺣﺮﻭﻑ، ﺗﻐﻴﻴﺮ ﺷﻜﻞ ﻭ ﻳﺎ ﺧﻮﺭﺩﮔﻲ ﺣﺮﻭﻑ ﺭﺍ ﻧﻴﺰ ﺑﺎﻳﺴﺘﻲ ﻣﺪ ﻧﻈﺮ ﻗﺮﺍﺭ ﺩﺍﺩ. ﻗﺒﻞ ﺍﺯ. ﻣﺮﺣﻠﺔ ﺑﺎﺯﺷﻨﺎﺳﻲ ﺣﺮﻭﻑ ﻻﺯﻡ ﺍﺳﺖ ﻛﻪ ﺍﻳﻦ ﻧﻘﺎﻳﺺ ﺑﺮﻃﺮﻑ ﺷﻮﻧﺪ. یكی از ﺗﻜﻨﻴﻜﻬﺎﻱ ﻣﺨﺘﻠﻒ ﻛﺎﻫﺶ ﻧﻮﻳﺰ فیلتر كردن می‌باشد :

۱-۱-فیلتر كردن

ﺍﻳﻦ ﺭﻭﺵ ﺑﻪ ﺣﺬﻑ ﻧﻮﻳﺰ ﻛﻤﻚ ﻣﻲ ﻛﻨﺪ ﻭ ﻧﺎﺻﺎﻓﻴﻬﺎﻱ ﺑﺪﻧﺔ ﺣﺮﻭﻑ ﺭﺍ ﻛﻪ ﻣﻌﻤﻮﻻً ﺑﻮﺳﻴﻠﺔ ﺳﻄﻮﺡ ﻧﮕﺎﺭﺵ ﻧﺎﻫﻤﻮﺍﺭ ( ﺩﺭ ﻣﻮﺭﺩ ﻣﺘﻮﻥ ﺩﺳﺘﻨﻮﻳﺲ ) ﻭ ﻳﺎ ﻧﺮﺥ ﻧﻤﻮﻧﻪ ﺑﺮﺩﺍﺭﻱ ﺿﻌﻴﻒ ﺩﺳﺘﮕﺎﻫﻬﺎﻱ ﺍﺧﺬ ﺩﺍﺩﻩ ﺍﻳﺠﺎﺩ می‌شوند،  در مرحله پیش پردازش كاهش می‌دهد. ﻓﻴﻠﺘﺮﻫﺎﻱ ﺣﻮﺯﺓ ﻣﻜﺎﻧﻲ ﻳﺎ ﻓﺮﻛﺎﻧﺴﻲ ﻣﺘﻌﺪﺩﻱ ﺭﺍ ﻣﻲ ﺗﻮﺍﻥ ﺑﺮﺍﻱ ﺍﻳﻦ ﻣﻨﻈﻮﺭ ﻃﺮﺍﺣﻲ ﻛﺮﺩ. ﺍﻳﺪﺓ ﺍﺻﻠﻲ ﺩﺭ ﺍﻳﻦ ﺭﻭﺵ، ﻛﺎﻧﻮﻭﻟﻮ ﻛﺮﺩﻥ (Convolute) (به معنی پیچاپیچ كردن) یك ماسك از پیش تعریف شده با تصویر ﺟﻬﺖ ﺗﺨﺼﻴﺺ ﻳﻚ ﻣﻘﺪﺍﺭ ﺟﺪﻳﺪ ﺑﻪ ﭘﻴﻜﺴﻞ ﺑﺮﺣﺴﺐ ﺗﺎﺑﻌﻲ ﺍﺯ ﻣﻘﺎﺩﻳﺮ ﭘﻴﻜﺴﻠﻬﺎﻱ مجاور است. فیلترها ﺭﺍ ﻣﻲ ﺗﻮﺍﻥ ﺑﺮﺍﻱ ﻣﻘﺎﺻﺪ ﻣﺨﺘﻠﻔﻲ ﭼﻮﻥ ﻫﻤﻮﺍﺭﺳﺎﺯﻱ، ﺷﺎﺭﭖ ﻛﺮﺩﻥ ، ﺍﻋﻤﺎﻝ ﺳﻄﻮﺡ ﺁﺳﺘﺎﻧﻪ، ﺣﺬﻑ ﭘﺲ ﺯﻣﻴﻨﺔ ﺑﺎﻓﺖ ﮔﻮﻧﻪ ﻳﺎ ﺭﻧﮕﻲ ﺧﻔﻴﻒ ﻭ ﺗﻨﻈﻴﻢ ﻛﻨﺘﺮﺍﺳﺖ (ﭘﺎﺩﻧﻤﺎﻳﻲ) طراحی کرد.

۲-ﻧﺮﻣﺎﻟﻴﺰﻩ ﻧﻤﻮﺩﻥ ﺩﺍﺩهﻫﺎ

ﺭﻭﺷﻬﺎﻱ ﻧﺮﻣﺎﻟﻴﺰﻩ ﻛﺮﺩﻥ ﺩﺍﺩﻩ ﻫﺎ در پیش پردازش ﺑﻪ ﺣﺬﻑ ﺗﻐﻴﻴﺮﺍﺕ ﻧﮕﺎﺭﺷﻲ ﻛﻤﻚ ﻧﻤﻮﺩﻩ و ﺩﺍﺩﻩهای ﺍﺳﺘﺎﻧﺪﺍﺭﺩ ﺷﺪﻩﺍﻱ ﺭﺍ ﻧﺘﻴﺠﻪ ﻣﻲﺩﻫﺪ.
ﺭﻭﺷﻬﺎﻱ ﭘﺎﻳﺔ ﻧﺮﻣﺎﻟﻴﺰﻩ ﻛﺮﺩﻥ ﻋﺒﺎﺭﺗﻨﺪ ﺍﺯ :

۲-۱-ﻧﺮﻣﺎﻟﻴﺰﻩ ﻛﺮﺩﻥ ﻛﺠﻲ ﻣﺘﻦ ﻭ ﺍﺳﺘﺨﺮﺍﺝ ﺧﻄﻮﻁ ﺯﻣﻴﻨﻪ

ﺑﺪﻳﻞ ﻋﺪﻡ ﺩﻗﺖ ﺩﺭ ﻣﺮﺣﻠﺔ ﺍﺳﻜﻦ ﻭ ﻳﺎ ﺑﻲ ﺩﻗﺘﻲ ﻧﻮﻳﺴﻨﺪﻩ ﺩﺭ ﻫﻨﮕﺎﻡ ﻧﮕﺎﺭﺵ ﻣﺘﻦ ﺩﺳﺘﻨﻮﻳﺲ، ﻣﻤﻜﻦ است ﺧﻄﻮﻁ ﻣﺘﻦ ﻧﺴﺒﺖ ﺑﻪ ﺗﺼﻮﻳﺮ ﺍﻧﺪﻛﻲ ﺍﻧﺤﺮﺍﻑ ﻳﺎ ﭼﺮﺧﺶ ﺩﺍﺷﺘﻪ ﺑﺎﺷﻨﺪ، ﺍﻳﻦ ﻣﺴﺌﻠﻪ ﻣﻲ ﺗﻮﺍﻧﺪ ﻛﺎﺭﺍﻳﻲ ﺍﻟﮕﻮﺭﻳﺘﻤﻬﺎﻱ ﺑﻜﺎﺭ ﺭﻓﺘﻪ ﺩﺭ ﻃﺒﻘﺎﺕ ﺑﻌﺪﻱ ﺳﻴﺴﺘﻢ OCR ﺭﺍ ﺗﺄﺛﻴﺮ ﻗﺮﺍﺭ ﺩﻫﺪ؛ ﭼﺮﺍ ﻛﻪ ﻳﻜﻲ ﺍﺯ ﻣﻔﺮﻭﺿﺎﺕ ﺑﻴﺸﺘﺮ ﺭﻭﺷﻬﺎﻱ ﻗﻄﻌﻪ ﺑﻨﺪﻱ، ﻋﺪﻡ ﻛﺞ ﺑﻮﺩﻥ ﺗﺼﻮﻳﺮ ﻣﺘﻦ ﻭﺭﻭﺩﻱ ﺍﺳﺖ ﻭ ﺩﺭ ﻧﺘﻴﺠﻪ ﻻﺯﻡ ﺍﺳﺖ ﻛﻪ ﺍﻳﻦ ﻧﻘﻴﺼﻪ ﺁﺷﻜﺎﺭ ﻭ ﺗﺼﺤﻴﺢ ﮔﺮﺩﺩ. ﺁﺷﻜﺎﺭﺳﺎﺯﻱ ﺧﻂ ﺯﻣﻴﻨﻪ ﺩﺭ ﺑﺴﻴﺎﺭﻱ ﺍﺯ ﺗﻜﻨﻴﻜﻬﺎﻱ ﻗﻄﻌﻪ ﺑﻨﺪﻱ ﻭ ﺑﺎﺯﺷﻨﺎﺳﻲ ﻣﺘﻮﻥ ﻓﺎﺭﺳﻲ، ﻋﺮﺑﻲ ﻭ لاتین ﻧﻘﺶ ﺍﺳﺎﺳﻲ ﺩﺍﺭﺩ. ﻋﻼﻭﻩ ﺑﺮ ﺍﻳﻦ، ﺑﺮﺧﻲ ﺍﺯ ﻛﺎﺭﺍﻛﺘﺮﻫﺎ ﻣﺎﻧﻨﺪ « g » ﻭ « ۹ » ﺭﺍ ﻣﻲ ﺗﻮﺍﻥ ﺑﻮﺍﺳﻄﺔ ﻣﻮﻗﻌﻴﺖ ﻧﺴﺒﻲ ﺷﺎﻥ ﻧﺴﺒﺖ ﺑﻪ ﺧﻂ ﺯﻣﻴﻨﻪ ﺁﺷﻜﺎﺭ ﺳﺎﺧﺖ

۲-۲-ﻧﺮﻣﺎﻟﻴﺰﻩ ﻛﺮﺩﻥ ﺍﺭﻳﺐ ﺷﺪﮔﻲ

ﺩﺭ ﻣﺘﻮﻥ ﭼﺎﭘﻲ فارسی ﻭ ﻻﺗﻴﻦ، ﻛﺎﺭﺍﻛﺘﺮﻫﺎﻱ ﺩﺍﺭﺍﻱ ﻓﺮﻣﺖ ﺍﻳﺘﺎﻟﻴﻚ ﺍﺯ ﺭﺍﺳﺘﺎﻱ ﻋﻤﻮﺩ ﺍﻧﺤﺮﺍﻑ دارند. ﻫﻤﭽﻨﻴﻦ ﺩﺭ ﻣﺘﻮﻥ ﺩﺳﺘﻨﻮﻳﺲ ﺑﺮﺧﻲ ﺍﺯ ﻧﻮﻳﺴﻨﺪﻩ ها ﺍﻳﻦ ﭘﺪﻳﺪﻩ ﺗﺤﺖ ﻋﻨﻮﺍﻥ « ﺷﺪﮔﻲ ﺍﺭﻳﺐ » ﺷﻨﺎﺧﺘﻪ ﻣﻲشود و می‌تواند ﺩﻗﺖ ﺑﺮﺧﻲ ﺍﺯ ﺍﻟﮕﻮﺭﻳﺘﻤﻬﺎﻱ ﻗﻄﻌﻪ بندی ﻳﺎ ﺑﺎﺯﺷﻨﺎﺳﻲ ﺭﺍ ﺗﺤﺖ ﺗﺄﺛﻴﺮ ﻗﺮﺍﺭ ﺩﻫﺪ ﻭ ﻟﺬﺍ ﺩﺭ ﺍﻳﻦ ﺳﻴﺴﺘﻤﻬﺎ ﻻﺯﻡ ﺍﺳﺖ ﻛﻪ ﺩﺭ ﻣﺮﺣﻠﺔ پیش پردازش ﻣﻴﺰﺍﻥ ﺍﺭﻳﺐ ﺑﻮﺩﻥ ﻛﺎﺭﺍﻛﺘﺮﻫﺎ ﺷﻨﺎﺳﺎﻳﻲ ﻭ ﺗﺼﺤﻴﺢ ﮔﺮﺩﺩ. اریب ﺷﺪﮔﻲ ﺑﺼﻮﺭﺕ ﺯﺍﻭﻳﺔ ﺷﻴﺐ ﺑﻴﻦ ﻃﻮﻳﻠﺘﺮﻳﻦ ﺯﻳﺮﺣﺮﻑ ﺩﺭ ﻳﻚ ﻛﻠﻤﻪ ﻭ ﺟﻬﺖ ﻋﻤﻮﺩﻱ ﺗﻌﺮﻳﻒ ﻣﻲ ﺷﻮﺩ. ﻧﺮﻣﺎﻟﻴﺰﻩ ﻛﺮﺩﻥ ﺍﺭﻳﺐ، ﺑﻨﻈﻮﺭ ﻧﺮﻣﺎﻟﻴﺰﻩ ﻧﻤﻮﺩﻥ ﻛﻠﻴﺔ ﻛﺎﺭﺍﻛﺘﺮﻫﺎ ﺑﻪ ﻳﻚ ﻓﺮﻡ ﺍﺳﺘﺎﻧﺪﺍﺭﺩ ﺑﻜﺎﺭ می‌رود. ﻣﻌﻤﻮﻟﺘﺮﻳﻦ ﺭﻭﺵ ﺩﺭ ﺗﺨﻤﻴﻦ ﻣﻴﺰﺍﻥ ﺍﺭﻳﺐ ﺷﺪﮔﻲ، ﻣﺤﺎﺳﺒﺔ ﺯﺍﻭﻳﺔ ﻣﺘﻮﺳﻂ ﺍﺟﺰﺍﺀ ﻧﺰﺩﻳﻚ ﺑﻪ ﺧﻂ ﻋﻤﻮﺩ ﺍﺳﺖ. در ﺍﺳﺘﺨﺮﺍﺝ ﺧﻄﻮﻁ ﻋﻤﻮﺩﻱ ﺍﺯ ﻛﺎﺭﺍﻛﺘﺮﻫﺎ ﺑﻮﺳﻴﻠﺔ ﺩﻧﺒﺎﻝ ﻛﺮﺩﻥ ﻣﺆﻟﻔﻪ های ﻛﺪ ﺯﻧﺠﻴﺮﻩای ﺗﻮﺳﻂ ﻳﻚ ﺟﻔﺖ ﻓﻴﻠﺘﺮ ﻳﻚ ﺑﻌﺪﻱ ﺍﻧﺠﺎﻡ ﻣﻲﭘﺬﻳﺮﺩ. ﻣﺨﺘﺼﺎﺕ ﺷﺮﻭﻉ ﻭ ﭘﺎﻳﺎﻥ ﻫﺮ ﺧﻂ، ﺯﺍﻭﻳﺔ ﺍﺭﻳﺐ ﺭﺍ ﺑﺪﺳﺖ ﻣﻲ دهد.

۲-۳-ﻧﺮﻣﺎﻟﻴﺰﻩ ﻛﺮﺩﻥ ﺍﻧﺪﺍﺯﻩ (ﺗﻐﻴﻴﺮ ﻣﻘﻴﺎﺱ ﺩﺍﺩﻥ)

ﺩﺭ ﺳﻴﺴﺘﻤﻬﺎﻱ OCR ﺍﻏﻠﺐ ﺗﺼﺎﻭﻳﺮ ﻛﻠﻤﺎﺕ ﺧﻴﻠﻲ ﻛﻮﭼﻚ ﻳﺎ ﺧﻴﻠﻲ ﺑﺰﺭﮒ ، ﺑﻪ ﻳﻚ ﺍﻧﺪﺍﺯﺓ ﺍﺳﺘﺎﻧﺪﺍﺭﺩ ﻧﺮﻣﺎﻟﻴﺰﻩ ﻣﻲﺷﻮﻧﺪ. ﺍﻳﻦ ﻋﻤﻞ ﻣﻌﻤﻮﻻﹰ ﺑﺎ ﻧﻤﻮﻧﻪ ﺑﺮﺩﺍﺭﻱ ﻣﺠﺪﺩ ﺗﺼﻮﻳﺮ ﺍﻧﺠﺎﻡ ﻣﻲ ﮔﻴﺮﺩ.
روشهای بازشناسی حروف ممكن است نرمالیزه كردن اندازه را در هر دو جهت افقی و عمودی انجام دهند. هر كاراكتر به تعدادی ناحیه تقسیم می‌شود و هر یك از این نواحی بصورت جداگانه تغییر مقیاس داده می‌شوند.

۳-ﻓﺸﺮﺩﻩ ﺳﺎﺯﻱ ﻣﻴﺰﺍﻥ ﺍﻃﻼﻋﺎﺗﻲ ﻛﻪ ﻣﻲ ﺑﺎﻳﺴﺖ ﻣﺤﻔﻮﻅ ﺑﻤﺎﻧﺪ

ﺍﻳﻦ ﻣﺴﺌﻠﻪ ﭘﺬﻳﺮﻓﺘﻪ ﺷﺪﻩ ﺍﺳﺖ ﻛﻪ ﺗﻜﻨﻴﻜﻬﺎﻱ ﻛﻼﺳﻴﻚ ﻓﺸﺮﺩﻩ ﺳﺎﺯﻱ ﺗﺼﺎﻭﻳﺮ ﻛﻪ ﺗﺼﻮﻳﺮ ﺭﺍ ﺍﺯ ﺣﻮﺯﺓ ﻣﻜﺎﻧﻲ ﺑﻪ ﺣﻮﺯﻩ ﺩﻳﮕﺮ ﻣﻨﺘﻘﻞ ﻣﻲ ﻛﻨﻨﺪ، ﺑﺮﺍﻱ ﺑﺎﺯﺷﻨﺎﺳﻲ ﺣﺮﻭﻑ ﻣﻨﺎﺳﺐ ﻧﻤﻲ ﺑﺎﺷﻨﺪ. در ﺑﺎﺯﺷﻨﺎﺳﻲ ﺣﺮﻭﻑ در پیش پردازش، ﻋﻤﻞ ﻓﺸﺮﺩﻩ سازی ﻧﻴﺎﺯﻣﻨﺪ ﺁﻥ ﺩﺳﺘﻪ ﺍﺯ ﺗﻜﻨﻴﻜﻬﺎﻱ ﺣﻮﺯﺓ ﻣﻜﺎﻧﻲ ﺍﺳﺖ ﻛﻪ اطلاعات ﺷﻜﻠﻲ ﺭﺍ ﺣﻔﻆ ﻣﻲ ﻧﻤﺎﻳﻨﺪ.
ﺩﻭ ﺗﻜﻨﻴﻚ ﻣﺘﻌﺎﺭﻑ ﻓﺸﺮﺩﻩ ﺳﺎﺯﻱ، ﻳﻜﻲ ﺗﻜﻨﻴﻚ ﺍﻋﻤﺎﻝ ﺳﻄﺢ ﺁﺳﺘﺎﻧﻪ (ﺑﻤﻨﻈﻮﺭ ﺑﺎﻳﻨﺮﻱ ﻛﺮﺩﻥ ﺗﺼﺎﻭﻳﺮ ﺳﻄﺢ ﺧﺎﻛﺴﺘﺮﻱ ﻣﺘﻮﻥ) و دیگری ﺩﻳﮕﺮﻱ ﻧﺎﺯﻙ سازی می‌باشد.

۳-۱-ﺑﺎﻳﻨﺮﻱ ( ﺩﻭﺳﻄﺤﻲ ) ﻛﺮﺩﻥ ﺗﺼﻮﻳﺮ ﻣﺘﻦ

ﺑﻤﻨﻈﻮﺭ ﻛﺎﻫﺶ ﺣﺠﻢ ﺫﺧﻴﺮﻩ ﺳﺎﺯﻱ ﻣﻮﺭﺩ ﻧﻴﺎﺯ ﻭ ﺍﻓﺰﺍﻳﺶ ﺳﺮﻋﺖ ﭘﺮﺩﺍﺯﺵ، ﺍﻏﻠﺐ ﻣﻄﻠﻮﺏ ﺍﺳﺖ ﻛﻪ ﺑﺎ ﺍﻧﺘﺨﺎﺏ ﻳﻚ ﺳﻄﺢ ﺁﺳﺘﺎﻧﻪ، ﺗﺼﺎﻭﻳﺮ ﺳﻄﺢ ﺧﺎﻛﺴﺘﺮﻱ ﻳﺎ ﺭﻧﮕﻲ ﺭﺍ ﺑﻪ ﺗﺼﺎﻭﻳﺮ ﺑﺎﻳﻨﺮﻱ ﺗﺒﺪﻳﻞ ﻧﻤﻮﺩ. دو ﺭﻭﺵ ﺍﻋﻤﺎﻝ ﺳﻄﺢ ﺁﺳﺘﺎﻧﻪ ﻋﺒﺎﺭﺗﻨﺪ ﺍﺯ سراسری (Global) و محلی (Local). ﺩﺭ ﺭﻭﺵ ﺍﻋﻤﺎﻝ ﺳﻄﺢ ﺁﺳﺘﺎﻧﺔ ﺳﺮﺍﺳﺮﻱ، ﻣﻘﺪﺍﺭ ﺳﻄﺢ ﺁﺳﺘﺎﻧﻪ ﺑﺮﺍﻱ ﻛﻞ ﺗﺼﻮﻳﺮ ﺳﻨﺪ ﺍﻧﺘﺨﺎﺏ ﻣﻲ شود. ﺍﻳﻦ ﻣﻘﺪﺍﺭ ﺍﻏﻠﺐ ﺑﺮ ﻣﺒﻨﺎﻱ ﺗﺨﻤﻴﻨﻲ ﺍﺯ سطح ﭘﺲ ﺯﻣﻴﻨﻪ ﻛﻪ ﺍﺯ ﻫﻴﺴﺘﻮﮔﺮﺍﻡ ﺳﻄﺢ ﺭﻭﺷﻨﺎﻳﻲ ﺗﺼﻮﻳﺮ ﻣﺤﺎﺳﺒﻪ ﻣﻲگردد، ﺳﻨﺠﻴﺪﻩ ﻣﻲ ﺷﻮﺩ. روش اعمال ﺳﻄﺢ ﺁﺳﺘﺎﻧﺔ ﻣﺤﻠﻲ ( ﺗﻄﺒﻴﻘﻲ ) ﺑﺮﺍﺳﺎﺱ اطلاعات ﻧﻮﺍﺣﻲ ﻣﺤﻠﻲ، ﺍﺯ ﻣﻘﺎﺩﻳﺮ ﻣﺘﻔﺎﻭﺗﻲ ﺑﺮﺍﻱ ﻫﺮ ﭘﻴﻜﺴﻞ ﺍﺳﺘﻔﺎﺩﻩ ﻣﻲ ﻛﻨﺪ. ﻣﻘﺎﻳﺴﻪ ﺍﻱ ﺑﻴﻦ ﺗﻜﻨﻴﻜﻬﺎﻱ ﻣﻌﻤﻮﻝ ﺍﻋﻤﺎﻝ ﺳﻄﺢ ﺁﺳﺘﺎﻧﻪ ﺑﺼﻮﺭﺕ ﺳﺮﺍﺳﺮﻱ ﻭ ﻣﺤﻠﻲ ﺑﺎ ﺍﺳﺘﻔﺎﺩﻩ ﺍﺯ ﻳﻚ ﻣﻌﻴﺎﺭ ﺍﺭﺯﻳﺎﺑﻲ ﺍﻧﺠﺎﻡ ﭘﺬﻳﺮﻓﺘﻪ ﺍﺳﺖ. ﺍﻳﻦ ﻣﻌﻴﺎﺭ ﺍﺭﺯﻳﺎﺑﻲ ﻋﺒﺎﺭﺕ ﺍﺳﺖ ﺍﺯ ﻣﻘﺎﻳﺴﺔ ﺩﻗﺖ ﺑﺎﺯﺷﻨﺎﺳﻲ ﺻﺤﻴﺢ ﻳﻚ ﺳﻴﺴﺘﻢ ﺑﺎﺯﺷﻨﺎﺳﻲ ﺣﺮﻭﻑ ﺑﺎ ﺍﻋﻤﺎﻝ ﺗﻜﻨﻴﻜﻬﺎﻱ ﻣﺨﺘﻠﻒ ﺳﻄﺢ ﺁﺳﺘﺎﻧﻪ ﮔﺬﺍﺭﻱ.

۳-۲-ﻧﺎﺯﻙ ﺳﺎﺯﻱ

ﺍﻳﻦ ﻋﻤﻞ ﺩﺭﺣﺎﻟﻴﻜﻪ ﻛﺎﻫﺶ ﻗﺎﺑﻞ ﻣﻼﺣﻈﻪای ﺩﺭ ﺣﺠﻢ ﺩﺍﺩﻩ ایجاد میﻛﻨﺪ، اطلاعات ﺷﻜﻠﻲ ﻛﺎﺭﺍﻛﺘﺮ ﺭﺍ ﻧﻴﺰ ﺍﺳﺘﺨﺮﺍﺝ می ﻧﻤﺎﻳﺪ. ﺩﻭ ﺭﻭﺵ ﭘﺎﻳﻪ ﺑﺮﺍﻱ ﻧﺎﺯﻙ ﺳﺎﺯﻱ ﻋﺒﺎﺭﺗﻨﺪ ﺍﺯ :
–    ﻧﺎﺯﻙ ﺳﺎﺯﻱ ﺍﺯ ﻃﺮﻳﻖ ﭘﻴﻜﺴﻞ
–    ﻧﺎﺯﻙ ﺳﺎﺯﻱ ﻏﻴﺮ ﺍﺯ ﻃﺮﻳﻖ ﭘﻴﻜﺴﻞ
ﻧﺎﺯﻙ ﺳﺎﺯﻱ ﺍﺯ ﻃﺮﻳﻖ ﭘﻴﻜﺴﻞ ﺑﺼﻮﺭﺕ ﻣﺤﻠﻲ ﻭ ﺗﻜﺮﺍﺭﻱ ﺗﺼﻮﻳﺮ ﺭﺍ ﻣﻮﺭﺩ ﭘﺮﺩﺍﺯﺵ ﻗﺮﺍﺭ ﻣﻲ ﺩﻫﺪ ﺗﺎ ﻭﻗﺘﻲ ﻛﻪ ﺍﺯ ﺗﺼﻮﻳﺮ ﻛﺎﺭﺍﻛﺘﺮ ﺗﻨﻬﺎ ﺍﺳﻜﻠﺖ ﺁﻥ ﺑﻪ ﻋﺮﺽ ﻳﻚ ﭘﻴﻜﺴﻞ ﺑﺎﻗﻲ ﺑﻤﺎﻧﺪ. ﺍﻳﻦ ﺭﻭﺵ ﻧﺴﺒﺖ ﺑﻪ ﻧﻮﻳﺰ ﺑﺴﻴﺎﺭ ﺣﺴﺎﺱ ﺑﻮﺩﻩ، ﻣﻤﻜﻦ ﺍﺳﺖ ﺗﺼﻮﻳﺮ ﻛﺎﺭﺍﻛﺘﺮ ﺭﺍ ﻣﺨﺪﻭﺵ ﺳﺎﺯﺩ. ﺍﺯ ﺳﻮﻱ ﺩﻳﮕﺮ، ﺭﻭﺷﻬﺎﻱ ﻧﺎﺯﻙ ﺳﺎﺯﻱ ﻏﻴﺮ ﺍﺯ ﻃﺮﻳﻖ ﭘﻴﻜﺴﻞ، ﻃﻲ ﻓﺮﺍﻳﻨﺪ ﻧﺎﺯﻙ سازی ﻣﻘﺪﺍﺭﻱ ﺍﺯ اطلاعات ﺳﺮﺍﺳﺮﻱ ﺩﺭﺑﺎﺭﺓ ﻛﺎﺭﺍﻛﺘﺮ ﺭﺍ ﻣﻮﺭﺩ ﺍﺳﺘﻔﺎﺩﻩ ﻗﺮﺍﺭ ﻣﻲ ﺩﻫﻨﺪ. ﺍﻳﻦ ﺭﻭﺷﻬﺎ ﻳﻚ ﺧﻂ ﻣﺮﻛﺰﻱ ﻳﺎ ﻣﻴﺎﻧﺔ ﺑﺨﺼﻮﺹ ﺍﺯ ﺗﺼﻮﻳﺮ ﭘرتر ﺭﺍ ﺑﺪﻭﻥ ﺁﺯﻣﺎﻳﺶ ﻫﻤﺔ ﭘﻴﻜﺴﻠﻬﺎ ﺗﻮﻟﻴﺪ ﻣﻲ نمایند.

۴-ﺑﺎﺯﺷﻨﺎﺳﻲ ﺧﻂ ، ﺯﺑﺎﻥ ﻭ ﻓﻮﻧﺖ 

ﺑﺎﺯﺷﻨﺎﺳﻲ ﺧﻂ، ﺗﻌﺪﺍﺩ ﻛﻼﺳﻬﺎﻱ ﻣﺨﺘﻠﻒ ﺳﻤﺒﻞ ﻛﻪ ﺑﺎﻳﺴﺘﻲ ﻣﻮﺭﺩ ملاحظه ﻗﺮﺍﺭ ﮔﻴﺮﻧﺪ ﺭﺍ ﻛﺎﻫﺶ ﻣﻲ ﺩﻫﺪ. ﺷﻨﺎﺳﺎﻳﻲ ﺯﺑﺎﻥ ﻣﺘﻦ در پیش پردازش، ﺑﻤﻨﻈﻮﺭ ﺑﻜﺎﺭﮔﻴﺮﻱ ﻣﺪﻟﻬﺎﻱ ﻣﺘﻨﻲ ﺧﺎﺹ ﺿﺮﻭﺭت دارد. ﻃﺒﻘﻪ ﺑﻨﺪﻱ ﻓﻮﻧﺘﻬﺎ، ﺗﻌﺪﺩ ﺷﻜﻠﻬﺎﻱ ﻣﺨﺘﻠﻒ ﺣﺮﻭﻑ ﺩﺭ ﻫﺮ ﻛﻼﺱ كه می‌بایست ﺩﺭ ﻓﺮﺍﻳﻨﺪ ﺑﺎﺯﺷﻨﺎﺳﻲ ﻟﺤﺎﻅ ﮔﺮﺩﺩ ﺭﺍ ﻛﺎﻫﺶ می‌دهد و سبب می‌شود كه امر شناسایی، تنها به یك كلاس فونت محدود گردد. ﺑﺎﺯﺷﻨﺎﺳﻲ خط و ﺯﺑﺎﻥ ﻭ ﻓﻮﻧﺖ ﺩﺭ ﻛﺎﺭﺑﺮﺩﻫﺎﻳﻲ ﻣﺎﻧﻨﺪ ﻧﻤﺎﻳﻪ سازی و ﺩﺳﺘﻜﺎﺭﻱ ﺍﺳﻨﺎﺩ نیز مطلوب می باشد.

منبع

تاریخچه OCRدر ایران

 ocr در ایران چگونه آغاز شد؟ 

ماجرا از ثبت‌نام داوطلبان آزمون «سازمان ملی پرورش استعدادهای درخشان (تیزهوشان)» در سال ۱۳۸۰ ‎آغاز شد. ثبت‌نام از روی فرم‌هایی كه توسط دانش‌آموزان تكمیل می‌شد انجام می‌گرفت. دانش‌آموزان شركت‌كننده در آزمون ــ مانند آزمون‌های سراسری ــ باید نام، نام خانوادگی، نام پدر، نام شهرستان محل تولد و سكونت، نام مدرسه و دین خود را در داخل كادرهای مربعی شكل و به صورت حروف مقطع (یعنی هر حرف داخل یك كادر) می‌نوشتند. وقتی كه همة فرم‌ها از طریق پست به سازمان مركزی برگزاركننده آزمون می‌رسید، عدة زیادی تایپیست متن آنها را دوباره وارد رایانه می‌كردند. در واقع همان حرف‌های داخل كادر را دوباره تایپ می‌كردند تا اطلاعات شناسنامه‌ای هر دانش‌آموز به صورت دیجیتالی درآید. این روش هم بسیار زمان‌بُر بود و هم نیاز به تعداد زیادی تایپیست داشت. احتمال داشت كه تایپیست‌ها هم هنگام تایپ اشتباه كنند و با ثبت نادرست یك نام، مشخصات فردی در رایانه مركزی وارد شود كه اصلاً متولد نشده است! مثلاً فرض كنید تایپیست محترم نام «جواد» را، كه داخل كادرها به صورت «ج.و.ا.د» نوشته شده بود،« فؤاد» تایپ می‌كرد؛ در آن صورت در كارت شناسایی جواد سابق، فؤاد فعلی ثبت می‌شد! (جوادِ موجود حذف می‌شد و فؤاد ناموجود وارد فهرست داوطلبان می‌شد!) افزون بر این، هزینة كار نیز بسیار زیاد بود.
به علت همین مشكلات، در بهمن‌ماه ۱۳۸۰، نخستین طرح OCR برای بازشناسی حروف فارسی توسط كامپیوتر ارائه شد و در سال‌های ۱۳۸۱ و ۱۳۸۲ نیز ثبت‌نام آزمون تیزهوشان به یاری این نرم‌افزار انجام شد.
در زبان‌های دیگر، به ویژه زبان‌هایی كه با حروف لاتینی نوشته می‌شوند، سال‌هاست كه از OCR استفاده می‌شود. اما در ایران تازه دو سه سالی است كه به فكر استفاده از OCR در زبان فارسی افتاده‌ایم.
و اما OCR چند نوع است: یا تایپی است یا دست‌نویس. یعنی یا باید یك متن قبلاً تایپ شده را (مثل كتاب‌ها و روزنامه‌های چندین سال قبل، یا حتی متنی را كه فایل تایپی آن موجود نیست و فقط پرینت آن را داریم) وارد رایانه كنیم، یا متن دست‌نویس را. متن‌های دست‌نویس هم به دو صورت «گسسته» و «پیوسته» وجود دارند: متن «دست‌نویس پیوسته» مثل همان چیزهایی است كه ما هر از گاهی كه دلمان تنگ می‌شود روی كاغذ می‌نویسیم، یا یك نامه، یا یك قطعه شعر و … اما متن «دست‌نویس گسسته» همان نوشته‌‌هایی است كه حروف آن جدا از هم و به صورت گسسته نوشته شده‌اند، مثل نام و نام‌خانوادگی كه در فرم‌های آزمون ثبت‌نام، به صورت هر حرف داخل یك كادر، نوشته می‌شوند. طراحی OCR گسستة فارسی تقریباً در مراحل پایانی كار قرار دارد ولی، OCR پیوسته ظاهراً سال‌های زیادی كار می‌برد. «رضا صدیق» و «پرویز رزازی»، كه در رشتة مخابرات تحصیل كرده‌اند و مسئولان یك شركت كامپیوتری به نام «اندیشه نرم‌افزار پایا» هستند، برای اولین بار به طور جدی پروژة OCR فارسی را دنبال كرده‌اند. رزازی كه دانشجوی مخابرات و مسئول بخش پردازش سیگنال شركت «پایا» و مدیر پروژة OCR در این شركت است، می‌گوید : « OCR در دنیا موضوعی ناشناخته نیست، و بر روی آن زیاد كار شده است، ولی در ایران با آنكه مدت‌هاست روی آن كار شده، اما بسیاری از این كارها در حد كارهای دانشگاهی و مقاله‌های علمی باقی‌مانده بود و تبدیل به یك محصول كاربردی در ابعاد وسیع (مثل ثبت‌نام آزمون‌های بزرگ) نشده بود. ما بر روی این طرح كار كردیم و هدفمان هم این بود كه محصول را به شكل صنعتی آن تولید كنیم. البته غیر از شركت «پایا»، دو شركت دیگر نیز با حمایت دبیرخانه طرح «تكفا» (توسعه كاربرد فناوری اطلاعات و ارتباطات) مشغول پژوهش و آزمایش بر روی OCR فارسی هستند. یكی از این شركت‌ها «داده‌پردازان دوران نوین» نام دارد كه مدیریت آن را دكتر «حسام فیلی» بر عهده دارد. دكتر فیلی متخصص در رشتة هوش مصنوعی، از دانشگاه صنعتی شریف، است و شركت «دوران نوین» را از سال ۱۳۸۱، با هدف كار تخصصی بر روی پروژه‌های هوش مصنوعی تأسیس كرده است. او دربارة چگونگی پیوستن شركتش به این طرح می‌گوید: «از تیرماه سال ۸۲ با شروع فعالیت طرح «تكفا» و حمایت‌های مالی آنها، این شركت تصمیم گرفت كه در زمینة طراحی OCR فارسی پژوهش و فعالیت كند. این پروژه در شركت «دوران نوین» با همكاری آقای دكتر «ابراهیمی مقدم» كه او هم از دانشجویان دورة دكتری هوش مصنوعی دانشگاه صنعتی شریف است، انجام می‌گیرد.
ﭘﻴﺪﺍﻳﺶ ﻋﻠﻮﻡ ﻭ ﻓﻨﻮﻥ ﺟﺪﻳﺪ، ﺟﻮﺍﻣﻊ ﺑﺸﺮﻱ ﺭﺍ ﺑﺎ ﺷﻜﻠﻬﺎﻱ ﻣﺨﺘﻠﻔﻲ ﺍﺯ اطلاعات ﺭﻭﺑﺮﻭ ﻧﻤﻮﺩﻩ است ﺳﻄﺢ ﺗﻮﺳﻌﺔ ﻳﻚ ﺟﺎﻣﻌﻪ ﺭﺍ ﻣﻲ ﺗﻮﺍﻥ ﺑﺎ ﻣﻘﺪﺍﺭ اطلاعات ﻭ ﺩﺍﻧﺶ ﺗﻮﻟﻴﺪ ﺷﺪﻩ ﺩﺭ ﺁﻥ ﺍﺭﺯﻳﺎﺑﻲ ﻛﺮﺩ. ﺗﻮﻟﻴﺪ ﻓﺰﺍﻳﻨﺪﺓ اطلاعات ﺑﻪ ﺷﻜﻠﻬﺎﻱ ﻣﺨﺘﻠﻒ ﺻﻮﺭﺕ ﻣﻲ گیرد و با درجات متفاوتی ﺍﺯ ﭘﻴﭽﻴﺪﮔﻲ ﻫﻤﺮﺍﻩ می باشد. ﺩﺭ ﻧﺘﻴﺠﻪ ﻧﻴﺎﺯ ﺑﻪ ﺳﻴﺴﺘﻤﻬﺎﻱ ﭘﺮﺩﺍﺯﺵ اطلاعات ﺑﺼﻮﺭﺕ ﺭﻭﺯﺍﻓﺰﻭﻥ ﺍﻓﺰﺍﻳﺶ ﻣﻲ یابد یكی از ﻣﺴﺎﺋﻞ ﻣﻬﻢ ﺩﺭ ﻃﺮﺍﺣﻲ ﺳﻴﺴﺘﻤﻬﺎﻱ ﻣﺪﺭﻥ ﺍﻃﻼﻋﺎﺗﻲ ﺑﺎﺯﺷﻨﺎﺳﻲ ﺧﻮﺩﻛﺎﺭ ﺍﻟﮕﻮﻫﺎ می باشد.

ﺑﺮخی ﻭﻳﮋﮔﻴﻬﺎی ﻣﺘﻮﻥ ﭼﺎپی ﻓﺎﺭسی

ﻧﮕﺎﺭﺵ ﻓﺎﺭﺳﻲ ﻭﻳﮋﮔﻴﻬﺎﻱ ﻣﻨﺤﺼﺮ ﺑﻪ ﻓﺮﺩﻱ ﺩﺍﺭﺩ ﻛﻪ ﺁﻥ ﺭﺍ ﻛﺎﻣﻼً ﺍﺯ ﻧﮕﺎﺭﺵ لاتین ﻣﺘﻤﺎﻳﺰ ﻣﻲسازد.
ﺑﻤﻨﻈﻮﺭ ﻓﻌﺎﻟﻴﺖ ﺩﺭ ﺯﻣﻴﻨﺔ OCR فارسی ﺁﮔﺎﻫﻲ ﺍﺯ ﻗﻮﺍﻧﻴﻦ ﻧﮕﺎﺭﺷﻲ ﻭ ﻧﺤﻮﺓ ﭼﺎﭖ ﺣﺮﻭﻑ ﺩﺭ ﺍﻳﻦ ﺯﺑﺎﻥ ﺍﻣﺮﻱ ﺿﺮﻭﺭﻱ ﺍﺳﺖ. ﺩﺭ ﺍﻳﻨﺠﺎ ﺑﻪ ﻭﻳﮋﮔﻴﻬﺎﻱ ﻛﻠﻲ ﻧﮕﺎﺭﺵ ﻓﺎﺭﺳﻲ ﺍﺷﺎﺭﻩ ﻣﻲ ﺷﻮﺩ :

۱-    ﻣﺘﻮﻥ ﻓﺎﺭﺳﻲ ﺑﺮﺧﻼﻑ متون لاتین ﺍﺯ ﭼﭗ ﺑﻪ ﺭﺍﺳﺖ ﻧﻮﺷﺘﻪ ﻣﻲشود.
۲-     ﺩﺭ ﻛﻠﻤﺎﺕ ﻓﺎﺭﺳﻲ ﺑﺮﺧﻲ ﺍﺯ ﺣﺮﻭﻑ ﺍﺯ ﻳﻚ ﻳﺎ ﺩﻭ ﻃﺮﻑ ﺑﻪ ﺣﺮﻭﻑ ﻣﺠﺎﻭﺭ ﺧﻮﺩ ﺍﺗﺼﺎﻝ ﺩﺍﺷﺘﻪ ﻭ ﺑﺮﺧﻲ ﻧﻴﺰ ﺑﺼﻮﺭﺕ ﻣﺠﺰﺍ ﻧﻮﺷﺘﻪ ﻣﻲ ﺷﻮﻧﺪ. ﺩﺭ ﻧﺘﻴﺠﻪ ﻫﺮ ﻛﻠﻤﻪ ﻣﻤﻜﻦ ﺍﺳﺖ ﺷﺎﻣﻞ ﻳﻚ ﻳﺎ ﭼﻨﺪ ﺑﺨﺶ ﻣﺘﺼﻞ ﺑﺎﺷﺪ ﻛﻪ « ﺯﻳﺮﻛﻠﻤﻪ » ﻧﺎﻣﻴﺪﻩ ﻣﻲ ﺷﻮﻧﺪ. (الف)
۳-    ﺣﺮﻭﻑ ﻓﺎﺭﺳﻲ ﻣﻲﺗﻮﺍﻧﻨﺪ ﭼﻬﺎﺭ ﻣﻮﻗﻌﻴﺖ ﻣﺠﺰﺍ ﻭ ﺩﺭ ﻧﺘﻴﺠﻪ ﭼﻬﺎﺭ ﺷﻜﻞ ﻣﺘﻔﺎﻭﺕ ﻧﮕﺎﺭﺵ ﺩﺍﺷﺘﻪ باشند. ﺣﺮﻭﻑ ﺍﺑﺘﺪﺍﻳﻲ، ﻣﻴﺎﻧﻲ، ﺍﻧﺘﻬﺎﻳﻲ ﻭ ﻣﺠﺰﺍ. (ب)
۴-     ﺣﺮﻭﻑ ﻭﺍﻗﻊ ﺩﺭ ﻳﻚ ﻛﻠﻤﻪ ﻣﻤﻜﻦ ﺍﺳﺖ ﻫﻤﭙﻮﺷﺎﻧﻲ ﺩﺍﺷﺘﻪ ﺑﺎﺷﻨﺪ، ﺑﺪﻳﻦ ﻣﻌﻨﻲ ﻛﻪ ﻧﺘﻮﺍﻥ ﺑﺎ ﺭﺳﻢ ﺧﻄﻮﻁ ﻋﻤﻮﺩﻱ، ﺣﺮﻭﻑ ﺭﺍ ﺑﻄﻮﺭ ﻛﺎﻣﻞ ﺍﺯ ﻳﻜﺪﻳﮕﺮ ﻣﺠﺰﺍ ﻧﻤﻮﺩ. (ج)
۵-    ﺑﺮﺧﻲ ﺍﺯ ﻓﻮﻧﺘﻬﺎ ﺑﻌﻀﻲ ﺍﺯ ﺣﺮﻭﻑ ﺩﺭ ﺩﻭ ﻣﺤﻞ ﺑﻪ ﻳﻜﺪﻳﮕﺮ ﺍﺗﺼﺎﻝ ﺩﺍﺭﻧﺪ (د)
۶-    ﺑﺮﺧﻲ ﺍﺯ ﺣﺮﻭﻑ ﺑﻴﻦ ﻳﻚ ﺗﺎ ﺳﻪ ﻋﺪﺩ ﻧﻘﻄﻪ ﺩﺍﺭﻧﺪ ﻛﻪ ﻣﻤﻜﻦ ﺍﺳﺖ ﺩﺭ ﺑﺎﻻ ﻳﺎ ﭘﺎﻳﻴﻦ ﺑﺪﻧﺔ ﺣﺮﻑ ﻭﺍﻗﻊ ﺑﺎﺷﻨﺪ.
۷-    ﺩﺭ ﺑﻌﻀﻲ ﺍﺯ ﺣﺮﻭﻑ ﺑﺪﻧﺔ ﻣﺸﺎﺑﻪ ﺩﺍﺭﻧﺪ ﻭ ﺗﻔﺎﻭﺕ ﺁﻧﻬﺎ ﺗﻨﻬﺎ ﺩﺭ ﺗﻌﺪﺍﺩ ﻭ ﻣﺤﻞ ﻗﺮﺍﺭﮔﻴﺮﻱ ﻧﻘﺎﻁ ﺁﻧﻬﺎﺳﺖ (ﻩ)
۸-    ﺣﺮﻭﻑ ﻓﺎﺭﺳﻲ ﻣﻲ ﺗﻮﺍﻧﻨﺪ ﺩﺭ ﺑﺎﻻ ﻳﺎ ﭘﺎﻳﻴﻦ ﺑﺪﻧﺔ ﺧﻮﺩ ﺩﺍﺭﺍﻱ ﺍﻋﺮﺍﺏ ﺑﺎﺷﻨﺪ. سه اعراب ﺩﺭ ﺯﺑﺎﻥ ُ  ِ  َ در زبان فارسی ﺍﻋﺮﺍﺑﻬﺎﻱ ﺍﺻﻠﻲ ﺑﻮﺩﻩ و ﺍﻋﺮﺍﺏ ً ﺩﺭ ﺑﺮﺧﻲ ﻛﻠﻤﺎﺕ ﻋﺮﺑﻲ ﺭﺍﻳﺞ ﺩﺭ ﺯﺑﺎﻥ ﻓﺎﺭﺳﻲ ﺩﻳﺪﻩ ﻣﻲ ﺷﻮﺩ. ﻛﻠﻤﺎﺕ ﻋﺮﺑﻲ ﺩﺍﺭﺍﻱ اعراب  ٍ   ٌ  ﺩﺭ ﺯﺑﺎﻥ ﻓﺎﺭﺳﻲ ﻋﻤﻮﻣﻴﺖ ندارد.
۹-    ﺩﺭ ﺑﺎﻻﻱ ﺑﺪﻧﺔ ﻳﻚ ﺣﺮﻑ ﻣﻤﻜﻦ ﺍﺳﺖ ﻋﻼﻣﺖ ﺗﺸﺪﻳﺪ ﻭﺟﻮﺩ ﺩﺍﺷﺘﻪ ﺑﺎﺷﺪ.
۱۰-ﺑﺮﺧﻲ ﺍﺯ ﺣﺮﻭﻑ ﺷﺎﻣﻞ ﻫﻤﺰﻩ ﻫﺴﺘﻨﺪ.
۱۱-ﺣﺮﻭﻓﻲ ﻛﻪ ﺍﺯ ﻃﺮﻑ ﭼﭗ ﻗﺎﺑﻠﻴﺖ ﺍﺗﺼﺎﻝ ﺑﻪ ﺣﺮﻑ ﻣﺠﺎﻭﺭ ﺧﻮﺩ ﺭﺍ ﺩﺍﺭﻧﺪ، ﻣﻲ ﺗﻮﺍﻧﻨﺪ ﺑﺼﻮﺭﺕ ﻛﺸﻴﺪﻩ ﻧﻮﺷﺘﻪ ﺷﻮﻧﺪ.
ﺑﺎﺯﺷﻨﺎﺳﻲ ﺣﺮﻭﻑ ﺧﻮﺩ ﺯﻳﺮﻣﺠﻤﻮﻋﻪ ﺍﺯ ﺩﺳﺘﺔ بزرگی از ﺗﻜﻨﻴﻜﻬﺎ ﺑه نامﺁﻧﺎﻟﻴﺰ ﺍﺳﻨﺎﺩ ﺍﺳﺖ ﻛﻪ ﻣﺒﺤﺚ ﺍﺻﻠﻲ ﺍﻳﻦ ﻃﺮﺡ می باشد.
هدف از مبحث آنالیز اسناد، شناسایی اجزای متنی، گرافیكی و عكس در تصاویر اسناد و استخراج اطلاعات مورد نظر از آنها می باشد. آنایز اسناد مشتمل بر كلیه مراحل پردازشی است كه محتویات یك سند اسكن یا دورنگاری شده چند صفحه ای را به یك فرم الكترونیكی مناسب كد می كنند. این كد كردن می توان چندین شكل داشته باشد : یك توصیف قابل ویرایش، یك نمایش فشرده كه تصویر سند از ان قابل بازیابی باشد و یا یك توصیف معناشناختی سطح بالا كه به منظور پاسخگویی به پرس و جوها می توان بكار رود.
منبع