• درخواست دمو
  • ۰۳۱-۹۱۰۰۱۸۸۱
بهسان اندیش
  • صفحه اصلی
  • محصولات
    • نرم افزار پلاک خوان
      • نرم افزار ثبت تردد جاده ای
      • نرم افزار مدیریت پارکینگ
      • نرم افزار تعمیرگاه ، کارواش و تعویض روغن
    • نرم افزار باسکول
    • راهکارهای سازمانی
      • نرم افزارانبار و حساب داری
    • محصولات جانبی
      • دوربین پلاک خوان
      • ماژول رله کنترل راهبند
  • نمونه کارها
    • سامانه جامع پلاکخوان خودرو
    • سامانه جامع مدیریت باسکول
    • سامانه قرائت فرم های چند گزینه ای
  • وبلاگ
  • ارتباط با ما
    • تماس با ما
    • درباره ما
    • دعوت به همکاری
  • جستجو
  • منو منو

بایگانی برچسب برای: کنترل تردد

خوشه بندی (Clustering) قسمت 1

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

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

هدف خوشه بندی

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

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

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

تجزیه و تحلیل خوشه ای در انسان‌شناسی توسط Driver و Kroeber در سال 1932 آغاز شد و در روان‌شناسی توسط زوبین در سال 1938 و رابرت تیرون در سال 1939 معرفی شد و در سال 1943 برای طبقه بندی نظریه رفتاری در روانشناسی شخصیت توسط Cattell استفاده شده‌است.

تعریف

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

  •    مدل‌های متصل: به عنوان مثال، خوشه بندی سلسله مراتبی، مدل‌هایی براساس فاصله متصل را ایجاد می‌کند.
  •    مدل‌های مرکزی: به عنوان مثال، الگوریتم k-means ، هر خوشه را با یک بردار متوسط نشان می‌دهد.​​
  •    مدل‌های توزیع: خوشه‌ها با استفاده از توزیع‌های آماری، مانند توزیع نرمال چند متغیره که در الگوریتم حداکثر انتظار ، استفاده شده‌است.
  •    مدلهای تراکم: به عنوان مثال، DBSCAN و OPTICS خوشه را به عنوان مناطق متراکم متصل در فضای داده تعریف می‌کنند.
  •    مدل‌های زیر فضایی: در biclustering (که به عنوان خوشه مشترک یا خوشه ای دو حالت شناخته می‌شود)، خوشه‌ها با هر دو اعضای خوشه و ویژگی‌های مرتبط مدل سازی می‌شوند.
  •    مدل‌های گروهی: برخی از الگوریتم‌ها یک مدل تصحیح شده برای نتایج خود را ارائه نمی دهند و فقط اطلاعات گروه بندی را ارائه می دهند.
  •    مدل‌های مبتنی بر گراف: یک کلاس، یعنی یک زیر مجموعه از گره‌ها در یک گراف به طوری که هر دو گره در زیر مجموعه با یک لبه متصل می‌شود که می‌تواند به عنوان یک شکل اولیه از خوشه مورد توجه قرار گیرد.
  •   مدل‌های عصبی: شبکه عصبی غیرقابل نظارت ، شناخته شده‌ترین نقشه خود سازمانی است و معمولا این مدل‌ها می توانند به عنوان مشابه با یک یا چند مدل فوق شامل مدل‌های زیر فضایی، زمانی که شبکه‌های عصبی یک فرم تجزیه و تحلیل مؤلفه اصلی یا مستقل تجزیه و تحلیل المان می‌باشد .

“خوشه بندی” اساسا مجموعه ای از خوشه‌ها است که معمولا شامل تمام اشیاء در مجموعه داده‌ها می‌شود. علاوه بر این، می‌توان رابطه خوشه‌ها را به یکدیگر تعریف کند، به عنوان مثال، سلسله مراتب خوشه‌های تعبیه شده در یکدیگر.

خوشه بندی را می‌توان براساس سختی تمایز به صورت زیر مشخص کرد:

  •    خوشه بندی سخت: هر شیء متعلق به خوشه است یا نه.
  •    خوشه بندی نرم (همچنین: خوشه فازی): هر شیء به درجه خاصی از هر خوشه متعلق است (به عنوان مثال، احتمال وابستگی به خوشه)

همچنین امکان تمایز دقیق تر وجود دارد، مثلا:

  •    خوشه بندی جداسازی دقیق ( پارتیشن بندی): هر شیء دقیقا به یک خوشه متعلق است.
  •    خوشه بندی جداسازی دقیق با ناپیوستگی: اشیاء می توانند به هیچ خوشه ای تعلق نداشته باشند.
  •    خوشه بندی همپوشانی (همچنین: خوشه بندی جایگزین، خوشه بندی چندگانه): اشیاء ممکن است متعلق به بیش از یک خوشه باشد؛ معمولا خوشه‌های سخت را شامل می‌شود
  •    خوشه بندی سلسله مراتبی: اشیایی که متعلق به خوشه فرزند هستند، متعلق به خوشه پدر و مادر هم هستند.
  •    خوشه بندی زیر فضا: در حالی که خوشه بندی همپوشانی، که در یک زیر فضای منحصر به فرد تعریف شده ، انتظار نمی رود که خوشه‌ها با همپوشانی داشته باشند.

الگوریتم

همانطور که در بالا ذکر شد، الگوریتم‌های خوشه بندی را می‌توان بر اساس مدل خوشه ای طبقه بندی کرد. در ادامه نمونه‌های برجسته ای از الگوریتم‌های خوشه بندی بیان شده‌است، زیرا احتمالا بیش از 100 الگوریتم خوشه بندی منتشر شده وجود دارد. همه مدلها برای خوشه هایشان بیان نشده اند، بنابراین نمی توان به راحتی دسته بندی کرد.

الگوریتم خوشه بندی عینی “صحیح” وجود ندارد، اما همانطور که اشاره شد، “خوشه بندی در چشم بیننده است.” بهترین الگوریتم خوشه بندی برای یک مسئله خاص، اغلب باید به صورت تجربی انتخاب شود، مگر اینکه یک دلیل ریاضی برای ترجیح دادن یک مدل خوشه بر دیگری وجود داشته باشد. لازم به ذکر است که یک الگوریتم که برای یک نوع مدل طراحی شده‌است و در یک مجموعه داده ای که شامل تفاوت اساسی مدل است، شکست می خورد. به عنوان مثال، k-means نمیتواند خوشه‌های غیرمحدب را پیدا کند.

خوشه بندی براساس اتصال (خوشه بندی سلسله مراتبی)

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

خوشه بندی سلسله مراتبی شامل دو نوع خوشه بندی می‌باشد:

single linkage -1 این روش که به روش Bottom-Up و Agglomerative نیز معروف است روشی است که در آن ابتدا هر داده به عنوان یک خوشه در نظر گرفته می‌شود. در ادامه با به کارگیری یک الگوریتم هر بار خوشه‌های دارای ویژگی‌های نزدیک به هم با یکدیگر ادغام شده و این کار ادامه می‌یابد تا به چند خوشهٔ مجزا برسیم. مشکل این روش حساس بودن به نویز و مصرف زیاد حافظه می‌باشد.

complete linkage -2 در این روش که به روش Top-Down و Divisive نیز معروف است ابتدا تمام داده‌ها به عنوان یک خوشه در نظر گرفته شده و با به کارگیری یک الگوریتم تکرار شونده هربار داده‌ای که کمترین شباهت را با داده‌های دیگر دارد به خوشه‌های مجزا تقسیم می‌شود. این کار ادامه می‌یابد تا یک یا چند خوشه یک عضوی ایجاد شود. مشکل نویز در این روش برطرف شده‌است.

مثال هایی از خوشه linkage

مثال هایی از خوشه linkage

خوشه بندی براساس centroid

در خوشه بندی براساس centroid، خوشه‌ها با یک بردار مرکزی نشان داده می‌شوند، که ممکن است لزوما جزء مجموعه داده نباشد. هنگامی که تعدادی از خوشه‌ها به k متصل می‌شوند، خوشه بندی k-means یک تعریف رسمی را به عنوان یک مسئله بهینه سازی ارائه می‌دهد.

روش میانگین k در عین سادگی یک روش بسیار کاربردی و پایه چند روش دیگر مثل خوشه بندی فازی و Segment-wise distributional clustering Algorithm می‌باشد.روش کار به این صورت است که ابتدا به تعداد دلخواه نقاطی به عنوان مرکز خوشه در نظر گرفته می‌شود. سپس با بررسی هر داده، آن را به نزدیک‌ترین مرکز خوشه نسبت می‌دهیم. پس از اتمام این کار با گرفتن میانگین در هر خوشه می‌توانیم مراکز خوشه و به دنبال آن خوشه‌های جدید ایجاد کنیم. (با تکرار مراحل قبل)از جمله مشکلات این روش این است که بهینگی آن وابسته به انتخاب اولیه مراکز بوده و بنابراین بهینه نیست. مشکلات دیگر آن تعیین تعداد خوشه‌ها و صفر شدن خوشه‌ها می‌باشد.

K-means دارای تعدادی خواص نظری است. اول، فضای داده را به یک ساختار معروف به یک نمودار Voronoi تقسیم می‌کند. دوم، به لحاظ مفهومی نزدیک به طبقه بندی نزدیکترین همسایه است و به همین علت در یادگیری ماشین محبوب است. سوم، می‌توان آن را به عنوان تنوع خوشه بندی براساس مدل مشاهده کرد.

مثال هایی از خوشه بندی k-means

  • مثال هایی از خوشه بندی k-means

خوشه بندی براساس توزیع

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

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

مثال های Expectation-maximization (EM)

مثال های EM

خوشه بندی براساس Density

در این تکنیک این اصل مطرح می‌شود که خوشه‌ها مناطقی با چگالی بیشتر هستند که توسط مناطق با چگالی کمتر از هم جدا شده‌اند. یکی از مهم‌ترین الگوریتم‌ها در این زمینه الگوریتم DBSCAN است.

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

مثال هایی برای خوشه بندی براساس Density

مثال هایی برای خوشه بندی براساس Density

پیشرفت های اخیر

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

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

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

 

خوشه بندی (Clustering) قسمت 1
خوشه بندی (Clustering) قسمت 2
خوشه بندی (Clustering) قسمت 3

دسامبر 7, 2019/0 دیدگاه /توسط daliri
https://behsanandish.com/wp-content/uploads/2018/10/2000px-DBSCAN-Gaussian-data.svg_.png 2152 2000 daliri https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png daliri2019-12-07 10:00:182019-12-07 10:00:18خوشه بندی (Clustering) قسمت 1

ایجاد پانوراما با چندین عکس قسمت 1

آموزش عمومی پردازش تصویر و بینایی ماشین

ایجاد یک پانوراما با استفاده از چندین عکس:

چسباندن(دوختن) چند تصویر

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

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

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

panorama

panorama

مباحث تحت پوشش پیاده سازی پانوراما در زبان برنامه نویسی پایتون انجام خواهد شد.

خواندن چندین عکس (به ترتیب)

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

دوختن تصاویر

شروع کنیم …

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

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

راه اندازی محیط

لطفا توجه داشته باشید که سیستم شما با پایتون 2.7 راه اندازی شده است (پیاده سازی کد در python2.7 است اگر شما نسخه های دیگر را دارید، بنابراین لطفا کد را تغییر دهید) و OpenCV 3.0. ما از خدمات OpenCV Helper برای خواندن تصاویر، نوشتن تصاویر و تبدیل فضاهای رنگ استفاده خواهیم کرد. هنگامی که تصاویر به دست می آید، کل محاسبات پانوراما با استفاده از یک تابع اختلاط خانه انجام می شود. این مقاله به سه قسمت عمده تقسیم شده است.

  • ورود، خواندن و پردازش تصاویر: مسیرهای تصویری از فایل های متنی. هر متن فایل حاوی لیست مسیرهای هر تصویر است. اطمینان حاصل کنید که مسیرها به ترتیب جهت چپ به راست هستند.
  • محاسبه جهت نسبی تصاویر w.r.t با یکدیگر: جفت
  • ماژول دوختن/ترکیب و مطابقت: که اساسا دو تصویر  را در یک زمان پیوند می دهد.

الگوریتم

الگوریتم برای انجام دوخت تصویر بسیار ساده است.

  images []  < -- Input images Assuming, that the center image is no_of_images/2 let centerIdx = length(images)/2 for each images[] at positions 0 - >   centerIdx :
        perform leftward stitching

    for each images[] at positions centerIdx   -  >   length(images):
        perform rightward stitching

خروجی یک موزاییک کامل از تصاویر ورودی خواهد بود.

بعضی محدودیت ها الگوریتم وقت گیر است به دلیل تعداد تکرارهای درگیر، بهتر است که تعداد تصاویر ورودی hte چندان زیاد نباشد یا نه از وضوح بسیار بالا (به عنوان مثال 4000×3000). پیاده سازی من بر روی رایانه 2 گیگابایتی دارای پردازنده Intel i3 (بر روی دستگاه من آزمایش نشده است) مبتنی است. به راحتی می توانید این مدل را با استفاده از مشخصات بالاتر یا شاید GPU ارتقا دهید/مقیاس کنید. هیچ وقت برای سعی کردن خیلی دیر نیست.

معماری پروژه:

|_ code -|
    |        |-- pano.py
    |        |-- txtlists-|
    |                     |--files1.txt .... 
    |   
    |_ images - |
    |           |- img1.jpg
    |           |- abc.jpg 
    |           .... and so on ...

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

در این آموزش، من از تصاویر مجموعه داده های PASSTA استفاده خواهم کرد. این شامل 2 مجموعه داده، رستوران غذاهای مختصر و ترکیبی است. همچنین برای تست، من از تصاویری از وبلاگ بینایی رایانه Mare استفاده خواهم کرد. من از تست تصاویر تپه دیون نیز استفاده خواهم کرد. و هم چنین تی شرلوک !! (برای کاربرد و استنادات مربوطه، نگاهی به منابع بیندازید.)

اکنون قسمت واقعی

برای درک هر دو ماژول دوخت چپ یا راست، اول اجازه دهید برخی مفاهیم بینایی را مستقیماً دریافت کنیم. آنها بودند:

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

هم نگاشتی

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

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

به هر حال، اکنون که من آن را روشن کرده ام، ادامه دهید تا چگونگی محاسبۀ هموگرافی را انجام دهیم. بگویید شما یک جفت از تصاویر I1، I2 را دارید. شما تصویر اول را ضبط میکنید. سپس شما تصمیم به چرخش دوربین خود می‌گیرید، و یا شاید کمی از برگردان را انجام دهید و یا شاید ترکیبی از حرکت چرخش/برگردان. سپس با به روز رسانی موقعیت دوربین جدید خود، تصویر دوم را ضبط کنید. مشکلی که اکنون وجود دارد این است که چگونه شما برای سیستمی که در آن به ایجاد یک تغییر نیاز خواهید داشت که به طور موثر یک نقطه را که در هر دو تصویر پیش بینی می شود حل کنید. یا به عبارت ساده، چگونه شما یک تصویر w.r.t دیگر از منظره را تجسم می کنید، با توجه به اطلاعات موجود که در مورد هر دو نقطه منظره شما وجود دارد.

هم نگاشتی

انواع تغییرات

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

تصویر زیر را که ببینید، درک میکنید که من در مورد چه چیزی صحبت میکنم.

 

انواع تغییرات

آنچه که در بالا می بینید، می تواند یک خروجی از اعمال هم نگاشتی از I1 = H × I2 باشد. چگونه از هم نگاشتی(Homography) برای تبدیل تصاویر در OpenCV استفاده کنیم؟(این پاسخ را نیز بررسی کنید. این عکس ها از پست مزبور گرفته شده است.)

شما می توانید از روش ()openCV findhomography برای حل مسئله برای هم نگاشتی استفاده کنید. برای پیدا کردن I1 = H × I2 شما نیاز خواهید داشت که مختصات نقاط را در صفحه اصلی تصویر 1 و مختصات نقاط هدف در تصویر 2 را به روش عبور دهید. پس از گذشت زمان، متد، ماتریس هموگرافی را از بین خواهد برد.

نحوه شناسایی نقاط برای محاسبه هموگرافی!

یکی از روش های مستقیم به شرح زیر است:

  Compute similar features in both images

    Out of them , filter out good features (you'll find plenty of tutorials on these )

    Make an array sorts of ; featuresofI1   = =  >   [srcPoints], featuresofI2   = =  >  [dstPoints] (using opencv nomenclature)

    Compute Homography matrix using RANSAC algorithm
دسامبر 3, 2019/0 دیدگاه /توسط daliri
https://behsanandish.com/wp-content/uploads/2018/08/matlab_pano-1.png 375 918 daliri https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png daliri2019-12-03 10:00:092019-12-03 10:00:09ایجاد پانوراما با چندین عکس قسمت 1

حذف نویز تصاویر با شبکه های عصبی و فیلتر میانی قسمت 3

آموزش عمومی پردازش تصویر و بینایی ماشین

شبکه های عصبی پرسپترون چند لایه

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

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

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

ارائه نمونه داده های ورودی به شبکه عصبی به دو روش امکان پذیر است:

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

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

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

الگوریتم پس انتشار خطا

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

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

1-     روش گرادیان شیب

2-     روش نیوتن

3-     روش اندازه حرکت

4-     روش آنتروپی متقابل

5-     روش Marquarlt-levenberg

الگوریتم پیشنهادی

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

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

ساختار هر شبکه مصنوعی با تعداد سلول ورودی، تعداد لایه های پنهان و تعداد سلول ها در هر لایه پنهان و تعداد سلول خروجی مشخص می شود. شبکه عصبی ارائه شده دارای 7 سلول ورودی، یک لایه پنهان با ده سلول و یک سلول خروجی است. در ادامه جزئیات شبکه پیشنهادی شرح داده خواهد شد.

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

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

رویکرد معمولی که در مقالات مختلف برای حل این مشکل ارائه شده است، تولید یک تصویر تصادفی است و هدف این کار آن است که آموزش شبکه به تصویر خاصی وابسته نباشد. برای آموزش شبکه عصبی پیشنهادی از تصویر 128*128 از بلوک های 4*4 که تمام پیکسل های هر بلوک شدت روشنایی ثابتی دارند که به صورت تصادفی انتخاب می شوند استفاده می شود.

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

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

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

معیار های ارزیابی

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

نتایج شبیه سازی

جدول 1 مقدار PSNR حاصل از اجرای الگوریتم پیشنهادی بر روی تصاویر موجود در شکل به ازای چگالی های مختلف نویز فلفل نمکی را نشان می دهد.

مقادیر PSNR حاصل از اجرای متد پیشنهادی بر روی تصاویر مختلف با درصد نویز متفاوت:

جدول 1- مقادیر PSNR حاصل از متد پیشنهادی بر روی تصاویر مختلف با درصد نویز متفاوت

Peppers

House

Barbara

Boat

Cameraman

%noisy

26.05

45.01

36.66

42.01

38.26

5

25.94

41.35

33.53

38.45

35.26

10

25.77

39.12

31.77

36.43

32.94

15

25.68

37.02

30.09

34.60

31.50

20

25.27

34.38

28.67

32.13

28.70

30

24.77

31.98

26.33

29.84

26.63

40

23.96

29.90

24.79

27.86

24.62

50

22.80

26.90

23.16

25.60

22.83

60

همچنین مقدار MSE بین تصویر اصلی و خروجی حاصل از الگوریتم پیشنهادی برای تصاویر مختلف در جدول 2 لیست شده است:

جدول 2- مقدار MSE بین تصویر اصلی و خروجی الگوریتم پیشنهادی

Peppers

House

Barbara

Boat

Cameraman

%noisy

161.10

2.04

14.02

4.08

9.69

5

165.36

4.76

28.81

9.27

19.32

10

171.82

7.97

43.22

14.78

32.97

15

175.49

12.94

63.67

22.49

45.93

20

193.14

23.67

101.47

39.79

78.56

30

216.50

41.13

151.38

67.42

141.04

40

261.06

66.49

215.35

106.35

224.29

50

340.81

132.57

314.02

178.87

338.37

60

هر چه میزان شباهت تصویر اصلی و بازیابی شده بیشتر باشد، مقدار MSE بین دوتصویر کمتر و لذا طبق رابطه میزان PSNR بین آن ها بیشتر خواهد بود.

جدول 3 نتایج مقایسه الگوریتم پیشنهادی و سایر متد های شناخته شده و موفق برای حذف نویز فلفل نمکی با چگالی 25% را برای جند تصویر نشان می دهد:

جدول 3- نتایج مقایسه الگوریتم پیشنهادی با سایر متدها

Barbara

House

Peppers

Cameraman

Boat

Method

42.62

28.12

22.89

22.24

22.19

MF

52.12

29.86

25.92

55.35

24.32

Sdrom

26.08

31.15

27.67

27.91

28.05

TONF

27.55

34.49

28.00

28.11

28.22

Yuksel

29.73

36.03

28.59

30.21

32.15

Proposed

نتایج

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

پیشنهاد ها

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

منبع

حذف نویز تصاویر با شبکه های عصبی و فیلتر میانی قسمت 1
حذف نویز تصاویر با شبکه های عصبی و فیلتر میانی قسمت 2
حذف نویز تصاویر با شبکه های عصبی و فیلتر میانی قسمت 3

دسامبر 2, 2019/0 دیدگاه /توسط hgadmin
https://behsanandish.com/wp-content/uploads/2019/08/download-2-1.jpg 250 340 hgadmin https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png hgadmin2019-12-02 10:00:212019-12-02 10:00:21حذف نویز تصاویر با شبکه های عصبی و فیلتر میانی قسمت 3

حذف نویز تصاویر با شبکه های عصبی و فیلتر میانی قسمت 1

آموزش عمومی پردازش تصویر و بینایی ماشین

ارائه الگوریتمی جدید برای حذف نویز از تصاویر دیجیتالی با استفاده از شبکه های عصبی و فیلتر میانی:

مقدمه

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

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

پردازش تصویر

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

سیستمهای پردازش تصویر را می توان در سه سطح پردازشی دسته بندی کرد:

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

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

–         سطح بالا: تحلیل و تفسیر محتوایی یک صحنه که اغلب از الگوریتم های یادگیری ماشین در این سطح استفاده می شود.

هر سیستم پردازش تصویر معمولا بر حسب نوع کاربرد و هدف نهایی پردازش شامل بخش های مختلفی است. در گام اول یک تصویر توسط یکی از ابزار های تصویر برداری همچون دوربین دیجیتال یا اسکنر بدست می آید. کیفیت تصویر خروجی بلوک تصویر برداری به شدت بر روی کل سیستم تاثیر گذار است. در گام بعد، پیش پردازشی بر روی تصویر ورودی انجام می شود. هدف این پیش پردازش بهبود ظاهری تصویر، بالا بردن کنتراست، حذف نویز، تصحیح درخشندگی، تمیز کردن تصویر یا از بین بردن تاری ناشی از قرار گرفتن سوژه خارج از فاصله کانونی است. در گام بعدی تصویر بر مبنای معیار های مختلفی از جمله ویژگی های بافتی، مولفه های هم بندی، اشکال هندسی و موارد دیگر بخش بندی می شود. و در نهایت در گام نهایی هر یک از بخش ها بر مبنای همین ویژگی ها مورد تجزیه و تحلیل قرار می گیرد و به هر ناحیه یک برچسب نسبت داده می شود. در تمام این مراحل از یک پایگاه دانش بسته به نوع سیستم استفاده می شود. پایگاه دانش علاوه بر محیا کردن دانش لازم برای هر واحد به تعامل بین بخش ها نیز نظارت دارد.(van bemmel and musen, 1997)

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

–         کاربرد های پزشکی

–         تفسیر خود کار تصاویر پزشکی سونوگرافی، رادیولوژی و مامو گرافی

–         تحلیل تصاویر سلولی از گونه های کروموزوم

–         کشاورزی

–         پردازش تصاویر ماهواره های جهت تعیین محل مناسب برای کشت محصول

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

–         صنعت

–         خودکار سازی خط تولید در کارخانه ها

–         تحلیل وضعیت ترافیکی جاده ها

–         دسته بندی محصولات کارخانه ای

–         قضایی

–         تحلیل و بررسی اثر انگشت

–         تعیین هویت شخص از روی نشانه های بیومتریک

–         تعیین هویت تصاویر(جعلی یا واقعی بودن آن ها)

انواع تصاویر دیجیتال

تصویر در واقع یک تابع دو بعدب مانند (F(x,y است که در آن آرگومان های ورودی x,y مختصات مکانی در هر نقطه به صورت شماره سطر و شماره ستون است. و مقدار تابع شدت روشنایی آن نقطه از تصویر است. از آن جا که مقادیر (F(x,y و x,y مقادیر گسسته اند، تصویر را یک تصویر دیجیتال می نامند. یک تصویر دیجیتال از تعدادی از عناصر با مقدار و موقعیت مشخص تشکیل شده است که به هر یک از این عناصر پیکسل گفته می شود. برای نمایش یک تصویر با ابعاد M*N از یک ماتریس دو بعدی با M  سطر و N ستون استفاده می شود. مقدار هر یک از این عناصر این آرایه شدت روشنایی آن پیکسل را نشان می دهد. بسته به نوع داده ای این آرایه دو بعدی، انواع مختلف از تصاویر بوجود می آیند که در ادامه هر یک از انواع تصاویر به طور خلاصه بررسی می شوند.

تصاویر دودویی

در تصاویر دودویی هر کدام از پیکسل ها می توانند یکی از دو مقدار روشن 1 و خاموش 0 را داشته باشند. لذا برای نگهداری هر پیکسل تنها به یک بیت دودویی نیاز است. یکی از اصلی ترین مزایای این گونه تصاویر حجم کم آن ها است و معمولا برای نگهداری نوشته های چاپی و یا دست نویس، اثر انگشت و نقشه های مهندسی از آن استفاده می شود.(Gonzalez and woods, 2005)

تصاویر شدت روشنایی

تصاویر شدت با نام تصاویر خاکستری نیز شناخته می شوند. در این تصاویر مقدار هر یک ار عناصر آرایه دوبعدی تصویر یک عدد 8 بیتی است که می تواند نقداری بین 0 (معادل رنگ مشکی) و 255 (معادل رنگ سفید) را در خود ذخیره کند. دامنه تغییرات عناصر در این گونه تصاویر، اعداد صحیح بین 0 تا 255 است.

تصاویر رنگی

در تصاویر رنگی هر پیکسل دارای یک رنگ مشخص است که خود ترکیبی از سه مولفه رنگی اصلی قرمز، سبز و آبی است و لذا برای ذخیره کردن یک تصویر رنگی با ابعاد M*N نیاز به سه ماتریس با ابعاد M*N است که هر کدام شدت روشنایی هر کدام از مولفه ها را در خود ذخیره می کنند. به عنوان مثال اگر رنگ یک پیکسل قرمز خالص باشد لایه های رنگی آن به صورت [0و0و255] می باشند. برای نمایش سفید خالص هر سه مولفه رنگی برابر 255 و برای مشکی خالص هر سه مولفه برابر صفر است. تصاویر RGB دارای سه لایه رنگی 8 بیتی هستند و لذا بانام تصاویر 24 بیتی نیز شناخته می شوند. این تصاویر سه برابر تصاویر سطح خاکستری هم اندازه خود فضا اشغال می کنند. (Gonzalez and woods, 2005)

تصاویر شاخص

یکی از مهم ترین معایب تصاویر 24 بیتی عدم سازگاری با سخت افزار های قدیمی بود که قادر به نمایش هم زمان 16 میلیون رنگ نبودند. علاوه بر این به حجم بالای ذخیره سازی نیاز داشتند. راه اصلی که همزمان دو مشکل را حل می کند استفاده از یک بازنمایی شاخص دار است که در آن از یک آرایه دوبعدی هم اندازه با تصویر استفاده می شود. لذا برای نمایش هر تصویر شاخص دار از یک آرایه دو بعدی 8 بیتی تصویر و یک نقشه رنگی 256 مدخلی استفاده می شود.

الگوریتم مبتنی بر تصمیم گیری

در (srinirasan and Ebenezer 2007) روشی با نام الگوریتم مبتنی بر تصمصم گیری ارائه شده است. در صورتی که مقدار هر پیکسل بین مینیمم و ماکزیمم مقدار درون پنجره فیلتر قرار گیرد، پیکسل سالم معرفی شده و بدون تغییر باقی می ماند. اگر پیکسل نویزی باشد و مقدار میانه پنجره فیلتر در بازه مینیمم و ماکزیمم پنجره باشد مقدار میانه جایگزین پیکسل خواهد شد و در غیر این صورت مقدار پیکسل با پیکسل همسایه اش جایگزین می شود. الگوریتم DBA در چگالی نویز بالا نیز کارامد است.

متدهای مبتنی بر محاسبات نرم

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

در (zvonarev and khryashchev 2005) از ترکیب فیلتر میانه و شبکه عصبی برای بهبود عملکرد حذف نویز استفاده شده است. سیستم پیشنهاد شده، برای جدا سازی پیکسل نویزی از پیکسل سالم از الگوریتم دو مرحله ای استفاده می کند. در تشخیص اولیه، اگر مقدار هر پیکسل درون بازه [min,max] باشد پیکسل سالم و در غیر این صورت نویز تشخیص داده می شود. پیکسل های کاندید برای نویزی بودن به شبکه عصبی فرستاده می شود تا طبقه بندی انجام شود. از ویژگی های محلی آماری برای ورودی شبکه استفاده شده است. مفهوم منطق فازی در سال 1965  توسط آقای زاده به عنوان یک ابزار ریاضی برای مدل سازی عضویت نسبی در مجموعه های معرفی شد. بر خلاف تکنیک های کلاسیک مجموعه ای که تنها عضویت قطعی در آن ها وجود دارد، در منطق فازی امکان تعریف عضویت نسبی وجود دارد.

در منبع (yuksel and besdok 2004)  از یک سیستم فازی عصبی تطبیقی برای آشکار سازی پیکسل نویزی استفاده شده است که شامل دو زیر آشکار گر مبتنی بر شبکه فازی عصبی با منطق فازی نوع سوگنو است که هر کدام از سه ورودی استفاده می کنند. این سه ورودی پیکسل های عمودی و افقی در یک پنجره 3*3 هستند. هر زیر آشکارگر برای هر ورودی سه تابع و سه تابع زنگوله ای برای هر ورودی، 27 قاعده برای تصمیم گیری است.که وزن ها بر اساس شدت آتش هر قاعده تعیین می شود. در نهایت میانگین خروجی دو زیر آشکارگر محاسبه می شود و از یک آستانه نهایی برای تشخیص پیکسل نویزی استفاده می شود.

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

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

 

نوامبر 30, 2019/0 دیدگاه /توسط daliri
https://behsanandish.com/wp-content/uploads/2018/12/download-2.jpg 250 340 daliri https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png daliri2019-11-30 10:00:142019-11-30 10:00:14حذف نویز تصاویر با شبکه های عصبی و فیلتر میانی قسمت 1

نویز چیست؟ قسمت 2

آموزش عمومی پردازش تصویر و بینایی ماشین

نویز چیست ؟

نویز Noise در معنای لغوی به معنی سر و صدا می باشد اما در عمل به انرژی نامطلوب و ناخواسته ای گفته می شود که کم ترین سطح سیگنالی را که یک مدار می تواند آن را با کیفیت قابل قبول پردازش کند ، محدود می کند. چرا که اگر سطح سیگنال از یک آستانه ای کمتر شود و نسبت سیگنال به نویز یا SNR ( مخفف Signal to Noise Ratio ) به عدد 1 نزدیکتر شود باعث مخلوط شدن سیگنال نویز و سیگنال اصلی شده و حذف کلی سیگنال اصلی را منجر می گردد. امروزه طراحان آنالوگ پیوسته درگیر مساله نویز هستند زیرا با مساله اتلاف توان ، سرعت و میزان خطی بودن مدار در ارتباط است. اکثر منابع نویز در مدارها توان متوسط ثابتی دارند.

طیف نویز

مفهوم توان متوسط اگر با در نظر گرفتن محتوای فرکانسی نویز تعریف شود ، پیچیده تر می شود. نویز صوتی که توسط یک گروه از مردان تولید می شود شامل مولفه های فرکانس بالای ضعیف تری نسبت به نویز صدای گروهی از زنان است و این تفاوت در طیف هر نوعی از نویز قابل مشاهده است. طیف نویز که آن را چگالی طیفی توان نویز یا PSD نیز می نامند ، نشان می دهد که سیگنال ، چقدر توان در هر فرکانس حمل می کند. به طور خاص ٬ PSD یا (Sx(f1 به صورت توان متوسطی که نویز (X(t در یک هرتز پهنای باند اطراف f حمل می کند ، تعریف می شود. همانطور که در شکل (الف) رسم شده است ، ( X(t را به فیلتر میان گذر با فرکانس مرکزی f1 و یک هرتز پهنای باند حول آن ، اعمال می کنیم. سپس خروجی را به توان ۲ رسانده و متوسط آن را روی یک مدت طولانی برای یافتن (Sx(f1 حساب می کنیم. با تکرار این فرآیند به وسیله فیلتر های میان گذری که فرکانس مرکزی متفاوتی دارند شکل کلی (Sx(f شکل (ب) را بدست می آوریم.

PSD

قضیه : اگر یک سیگنال با طیف (Sx(f به یک سیستم خطی غیر متغیر با زمان که تابع تبدیل آن (H(s است وارد شود ٬ طیف خروجی آن برابر است با:

Sy(f)=Sx(f).|H(f)|^2

طیف خروجی

این قضیه با انتظار منطقی ما از اینکه طیف سیگنال باید توسط تابع تبدیل سیستم (شکل بالا) تغییر شکل یابد٬ سازگار است. برای مثال همانطور که در شکل زیر رسم شده ٬ چون تلفن های معمولی تقریبا پهنای باند ۴KHz دارند ٬ مولفه های فرکانس بالای صدای گوینده ٬ را حذف می کنند. توجه کنید که به دلیل محدودیت پهنای باند ٬ (Xout(t تغییرات آهسته تری نسبت به( Xin(t دارد.

فرکانس و نویز در تلفن های معمولی

انواع نویز

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

۱-نویز ناشی از ادوات الکترونیکی

۲- نویز محیطی

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

نویز حرارتی

نویز حرارتی مقاومت: حرکت تصادفی الکترون ها در یک رسانا باعث افت و خیز هایی در ولتاژ اندازه گیری شده روی آن می شود حتی اگر جریان متوسط صفر باشد. بنابراین طیف نویز حرارتی با دمای مطلق متناسب است. همانطور که در شکل زیر نشان داده شده است ٬ نویز حرارتی یک مقاومت R را می توان با یک منبع ولتاژ سری مدل کرد که چگالی طیفی یک طرفه آن برابر است با: Sv(f)=4kTR , 0≤f که k ثابت بولتزمن می باشد.

نویز حرارتی

نویز حرارتی ماسفت ها: ترانزیستورهای MOS نیز نویز حرارتی تولید می کنند. مهم ترین منبع نویزی است که در کانال تولید می شود. می توان ثابت کرد که برای ادوات MOS با کانال بلند٬ که در اشباع کار می کنند٬ نویز را می توان با یک منبع جریان که بین ترمینال های درین و سورس وصل شده مدل کرد (شکل زیر) که چگالی طیفی آن عبارت است از:

نویزحرارتی برای ترانزستورهای MOS

ضریب γ (لاندا) با ضریب اثر بدنه اشتباه نشود γ برای ترانزیستورهای کانال بلند برابر با ۲/۳ است و برای ماسفت های زیرمیکرون لازم است که آن را با مقادیر بزرگتری جایگزین کرد.

ضریب لاندا

نویز فلیکر

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

نویز فلیکر

منبع


نویز چیست ؟

نویز در لغت به معنی “صدا” می‌باشد، صدایی که دارای هیچ وزن موسیقی نیست و به طور نامنظم است. اما به طور کلی نویز سیگنالی است ناخواسته که بر روی دستگاه الکترونیکی یا الکتریکی ما تاثیر می‌گذارد و به سه دسته زیر تقسیم می‌شود:

  • Background Noise (نویز زمینه)
  • Modulated Noise (نویز نوسانی)
  • Interference Noise (نویز مزاحم) 

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

نویز در دوربین‌های مداربسته

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

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

حال با توجه به اینکه دوربین مداربسته شما آنالوگ است یا دیجیتال تاثیرات نویز را روی سیگنال خروجی می‌بینید. با نویز تا حدودی آشنا شدیم حال چه کنیم که کمترین آسیب را از نویز در دوربین های مداربسته داشته باشیم:

  1. از سالم بودن قطعات الکتریکی مطمئن شویم.
  2. سالم بودن کابل‌ها و کیفیت خوب آن‌ها.
  3. مسافت کابل‌ها بیش تر از ظرفیت انتقال سیگنال‌های آن کابل نباشد، به عنوان مثال در بعضی از کابل‌ها ابتدا و انتهای اتصال کابل نمی‌تواند بیشتر از ۱۰ یا ۲۰ متر باشد و کابل پهنای باند لازم برای انتقال سیگنال را ندارد.
  4. مسیر کابل کشی کنار کابل و سیم‌های دیگر نباشد.
  5. دستگاه‌های ورودی مانند دوربین و دستگاه خروجی مانند DVR در کنار قطعات و کابل‌های الکتریکی نباشند.
  6. حتما در مسیر کابل کشی‌ها از داکت یا ترانک استفاده شود تا از حداقل تاثیرات نویز نیز کاسته شود.

 

منبع

نویز چیست؟ قسمت 1

نویز چیست؟ قسمت 2

نوامبر 29, 2019/0 دیدگاه /توسط hgadmin
https://behsanandish.com/wp-content/uploads/2019/08/220px-RuidosCuantificacionSegunResolucion-1.png 137 220 hgadmin https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png hgadmin2019-11-29 10:00:272019-11-29 10:00:27نویز چیست؟ قسمت 2

نویز چیست؟ قسمت 1

آموزش عمومی پردازش تصویر و بینایی ماشین

نوفه یا «نویز» (به انگلیسی: Noise) بمعنای آلودگی صوتی یا نشانکی (سیگنال) ناخواسته است که شکل نشانک‌ها را تغییر می‌دهد و باعث بروز اختلال می‌شود.

پژوهشگران ناسا در «مرکز پژوهش گلِن» بر سر اجرای آزمون‌های نوفهٔ موتور هوانورد در ۱۹۶۷م

پژوهشگران ناسا در «مرکز پژوهش گلِن» بر سر اجرای آزمون‌های نوفهٔ موتور هوانورد در ۱۹۶۷م

 

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

نوفهٔ روی یک تصویر، اغلب دارای اجزای بسامدی (فرکانسی) نیز می‌باشند و واکاوی بسامدی شبیه به نشانک (اطّلاعات واقعی تصویر) دارد. بیناب توان نوفه که «بیناب وینِر» هم نامیده می‌شود همان وردایی (واریانس) نوفه ۲(σ) تصویر است که بصورت تابعی از بسامد فضایی (f) بیان می‌گردد.

نویز در شبکه‌های رایانه‌ای

در شبکه‌های رایانه‌ای حرارت، القا و هم‌شنوایی سبب ایجاد نوفه می‌شوند.

حرارت

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

القای الکترومغناطیسی

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

هم‌شنوایی

هم‌شنوایی اثر میدان‌های مغناطیسی یک بافه کنار خود است.

منبع


در زندگی روزانه  نویز(noise) به صدایی ناخواسته و بلند گفته می‌شود که هیچ نظم موسیقی نداشته باشد  در دورانی که ارتباط رادیودیی وجود داشت ، نویز “هر سیگنال الکتریکی که باعث مختل کردن ارتباط رادیودیی می‌شود ” تغریف شد . ( برگرفته از فرهنگ لغت وبستر). این نوع نویز قبل شنیدن بود ؛ مانند نویزی که در گوشی‌ها می‌شنویم .

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

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

انواع نویز :

نویز بر اساس تغییرات زمانی و فرکانسی خود بیشتر مشخص می‌شوند . در شکل زیر نویز را بر اساس چگالی طیفی نویز ( که بر اساس فرکانس است) رسم شده است.
نویز‌هایی که در زیر آمده است ، معمول ترین نویز‌های موجود هستند :
۱-   نویز سفید طیفی (یا در واقعیت ، نویز صورتی)
۲-   آشفتگی های هارمونیک
۳-   نویز ۱/f
4-   رانش

در اینجا ، منبع هر کدام از نویز‌ها مورد بررسی قرار می‌گیرد و مهمترین نویز ، نویز سفید ، بیشتر تاکید می‌شود .
1- نویز سفید: طیفی طبق تعریف به نویزی گفته می‌شود که طیف چگالی آن به فرکانسی بستگی نداشته باشد .( مقدار ثابتی باشد ). البته این یک تعریف ایده ال است چون اگر از یک عدد ثابت نسبت به فرکانس انتگرال بگیریم ، واریانس نویز ( یا همان انرژی نویز ) بی نهایت به دست می‌آید . در سیستم‌های‌هایی که بیشتر مورد بررسی قرار می‌گیرند ، نویز عملا سفید نیست بلکه “صورتی ” است .به این معنا که داری فرکنس قطع می‌باشد . این فرکانس قطع باعث می‌شود که واریانس نویز محدود شود . در سیستم‌های  کاربردی ، به اندازه ی کافی بزرگ است و مقدار چگالی طیفی آن به اندازه ی کافی ثابت است تا مدل نویز سفید را راضی کند . نویز سفید طیفی یکی از بنیادی ترین و فیزیکی ترین نویز‌ها در لیست بالا است .
بیشتر نویز‌های فوق را می‌توان ( به طور کلی) با استفاده از طراحی‌های زیرکانه برداشت ولی محدودیت‌های بنیادی نویز سفید آن را محدود می‌کند. نویز سفید به دو صورت ظاهر می‌شود : نویز دمایی و اثر ساچمه ای .
2- آشفتگی‌های‌هارمونیکی: واقعا نویز‌های تصادفی نیستند بلکه آشفتگی هایی هستند که از منابع نزدیک گرفته میشود (یا اصطلاحا نویز از طریق منابع نزدیک روی سیستم افتاده است). این نویز‌ها می‌توانند به وسیله ی طراحی‌های مناسب حذف بشوند. ترفند‌های که برای حذف این نویز استفاده می‌شوند عبارتند از : پوشش، زمین کردن مناسب ، کاهش حساسیت سیستم به نویز گرفتن .از آنجایی که آشفتگی‌های هارمونیکی دارای فرکانس‌های مشخصی هستند، باعث ایجاد نوسانات غیر میرا در سیگنال و ایجاد ضربه در طیف فرکانسی می‌شوند. این رفتار تکین باعث میشود که نوع آنها با نویز‌های دیگر فرق کند.( توی آزمایشگاه‌های الکتریسیته، می توان نویز برق شهر را بر روی اسیلوسکوپ مشاهده کرد. فقط کافی است دو دست خود را به ورودی‌های اسکوپ وصل کنید ؛ چون بدن مثل آنتن عمل میکند و این نویز  را که در فضا پر است را می‌گیرد.)
3- نویز ۱/f : از روی اسم نویز ۱/f می‌توان فهمید که رفتار آن چگونه می‌تواند باشد .چگالی طیفی این نویز با آهنگ ۱/f کاهش پیدا می‌کتد. این نویز در وسایل نیمه رسانا حضور دارد و عموماً به ” دام‌های ژرف (deep traps) ” نسبت داده می‌شود ؛ این دام‌های ژرف باعث می‌شوند که حامل‌ها برای مدتی به دام بیفتند. البته مکانیزم ایجاد این نویز همیشه مشخص نیست. در نتیجه ی این دام‌های ژرف و کند، ویژگی‌های وسیله با زمان به صورت کندی تغییر می کنند و این کندی تغییر یعنی در فرکانس‌های پایین این نویز دارای بیشترین انرژی می‌باشد. قدرت نویز ۱/f بستگی به نحوه ی تولید دارد از وسیله ی به وسیله ی دیگر متفاوت است. برای یک وسیله ی نیمه‌هادی، جایی که قدرت نویز ۱/f  با نویز سفید برابر می‌شود  در یک بازه ی بزرگ ۱ هرتز تا ۱۰۰ کیلو هرتز است .
4- رانش: کمی‌ قبلتر گفتیم که نویز بدون هیچ مقدار ثابتی است یعنی مقدار میانگین آن صفر است. _N(t)_ = 0. ولی باید گفت که این جمله همیشه درست نیست . در بعضی سیستم‌ها مقدار ثابت نمودار با زمان تغییر میکند(برای دوستانی که با تبدیل و سری فوریه آشنایی ندارند باید توضیح بدهم که در بسط دادن یک سیگنال به صورت سینوسی و یا نمایی ، مقداری ظاهر می‌شود که آن مقدار ثابت منحنی می‌گویند. این مقدار ثابت نشان دهنده ی میانگین نمودار است  و می‌توان برای شکلهای متقارن گفت که نمودار روی آن سوار می‌شود. مثال: یک موج سینوسی که به جای حرکت رو ی محور x ‌ها روی مقدار  y=1 حرکت می کند). وقتی که این مقادیر ثابت به صورت خطی و ثابت تغییر می کنند، به آن رانش گفته می شود .البته این جمله ممکن است کمی‌بی معنا باشد ولی می‌توان گفت که این نویز دارای فرکانس بسیار پایین است؛ چون تبدیل فوریه یک تابع با شیب ثابت یک چیزی شبیه مشتق تابع ضربه در اطراف صفر است. بهتر است واژه ی رانش برای نویز‌هایی گفته شود که در طول زمان دارای تغییرات خطی هستند چون در صورت بروز تغییرات تبدیل فوریه ی آن دارای فرکانس‌هایی خواهد بود که غیر از فرکانس صفر است .

در اینجا به عوامل ایجاد کننده ی نویز‌های مختلف اشاره می‌کنیم:

نویز دمایی :

همانطور که گفته شد نویز سفید ، بنیادیترین نویز است و لی این حرف باید کامل  شود؛ نویز سفید با منشأ دمایی این ویژگی را دارد. نویز دمایی که بعضی اوقات نویز جانسون هم گفته می شود یک نتیجه ی طبیعی از نظریه ی نوسان-اتلاف است. این نظریه بیان می‌کند که هر المان اتلاف کننده انرژی نوساناتی خود به خود متناسب با قدرت اتلاف المان هنگامی‌که تحت یک میدان خارجی است، ایجاد می‌کند.(یک ذره نامفهوم هست، نه؟). منشأ فیزیکی نوسانات و اتلاف کوپلاژ و اتصال بین المان و محیط اطراف است. یک اتصال قوی باعث ایجاد اتلاف زیاد و در نتیجه نوسانات زیادی می‌شود. در فرکانس‌هایی کمتر از f << kT/h, که در آن k  ثابت بولتزمن، h  ثابت پلانک و T دمای محیط است. مقدار انرژی طیفی نوسانات دمایی  ثابت و مقدار آن متناسب با دما است. به همین خاطر به آن نویز سفید دمایی گفته میشود(چون مقدار ثابتی دارد).
یک مثال از نویز دمایی نوسانات ولتاژ در مقاومت است. در حضور یک میدان خارجی مقدار اتلافی که وجود دارد برابر با V^2/R است. وقتی که میدان خارجی وجود نداشته باشد و همان اتم‌ها و الکترون‌هایی که در حضور میدان باعث ایجاد گرما می‌شدند، با هم برخورد می‌کنند ولی این بار یک ولتاژ بین دو سر اتصال مقاومت ایجاد می‌کنند(به دلیل تغییرات در چگال الکترون‌ها در دو طرف مقاومت). واریانس این تغییرات ولتاژ برابر است با : ۴kTRΔf که با تقسیم کردن آن بر فرکانس چگالی طیفی نویز به دست می‌آید. در دمای اتاق ، برای یک مقاومت ۱k در یک پهنای باند یک مگاهرتر تغییرات ولتاژ ۰٫۹ میکرو ولت بدست می‌آید .  یعنی می‌توان گفت که تغییرات ولتاژ در حد ۱ میکرو ولت خواهد بود .

نویز یا اثر ساچمه ای (Shot noise)

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

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

Si(f) = 2qi0 [A2/Hz]

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

نویز ۱/f (نویز صورتی)

همه ی سیستم‌ها دارای نویز سفید می‌باشند. ولی بعضی سیستم‌های کاربردی علاوه بر آن نویز توسط نویز‌هایی با فرکانس پایین نیز آلوده شده اند. وقتی که این نویز طوری باشد که با شد که مقدار انرژی طیفی آن با  نرخ ۱/f کاهش پیدا بکند، گوییم که نوع نویز ۱/f  است (نویز صورتی). اهمیت نویز ۱/f در فرکانسی به نام فرکانس گذار مشخص می‌شود : در فرکانس‌های زیر این فرکانس نویز صورتی و در فرکانس های بالای این فرکانس نویز سفید غالب است.
نویز ۱/f می تواند در آزمایشات خیلی مزاحم باشد. در مواد نیمه‌هادی، منشاء این نویز‌ها، ناخالصی‌هایی است که در هنگام ساخت وارد ماده می‌شود( نه آن ناخالصی که باعث ایجاد n و P می‌شود). این ناخالصی‌ها بیشتر بر روی سطح نیمه‌هادی رخ می‌دهد تا درون آنها به همین دلیل موادی که دارای سطوح زیادی هستند، بیشتر از این نویز رنج می‌برند(مثل MOSFET‌ها). با پیشرفت تکنولوژی این نویز ممکن است آن قدر کم شود به طوری که بتوان از آن صرف نظر کرد.

معرفی  EMG:

جریانهای  الکتریکی  کوچکی  هستند که توسط فیبر‌های عضلانی به منظور فراهم کردن نیروی لازم عضلانی تولید می‌شوند. این جریانات به وسیله تبادلات یونی که در سطوح فیبر‌های ماهیچه ای صورت می‌گیرد تولید می‌شوند. این سیگنال‌ها که الکترومیوگرام (EMG) نامیده می‌شوند را می‌توان ازطریق قرار دادن المان‌های رسانا یا الکترود‌ها بر روی سطح پوست و یا به طور تهاجمی‌ از طریق قرار دادن در داخل فیبر ماهیچه ای اندازه گیری کرد.
اندازه گیری EMG به صورت سطحی از روی پوست به تعدادی از عوامل و دامنه سیگنال سطحی (sEMG)- که در رنج میکروولت تا چند میلی ولت تغییرات دارد – بستگی دارد .دامنه و فرکانس مشخصه سیگنال‌های EMG را می‌توان به عوامل زیر مرتبط دانست :
•   مدت زمان وقدرت انقباضی ماهیچه‌ها
•   فاصله الکترود‌های ماهیچه‌های فعال
•   مشخصه و خاصیت بافت‌های سطحی
•   جنس و مشخصه الکترود‌ها
•   اتصال مناسب بین الکترود و پوست
در اکثر موارد اطلاعاتی که در مورد مدت زمان و قدرت انقباض عضله می‌باشند بسیار مطلوب هستند. بقیه عوامل مانده فقط موجب نامطلوب تر شدن تغییرات در در ثبت EMG می‌شوند و موجب می‌شوند که تجزیه و تحلیل نتایج بسیار دشوار گردد. با وجود این روش‌هایی وجود دارد اثرات آن عوامل غیر عضله ای که بر روی سیگنال EMG تغییرات ایجاد می‌کنند کاهش داد:
•   استفاده از الکترود‌ها و تقویت کننده‌های همسان (به طور مثال اصلاح مشخصه‌های اطلاعات در پارامتر‌های سیگنال در خط انتقال از طریق تصحیح خصوصیات فاز و دامنه تقویت کننده‌ها )
•   اطمینان از همنواختی اتصال بین الکترودها و پوست
از این طریق می‌تواند با جابجایی پی در پی الکترود‌های در نواحی مختلف پوست میزان تغییرات ناخواسته در رنج EMG را کاهش داد. علاوه بر این از روش‌هایی برای نرمالیزه کردن سیگنال EMG در درون و بین الکترود‌ها و عضله استفاده کرد. تعداد بسیار زیادی از اطلاعات مهم مرتبط با ثبت و فراگیری و آنالیز سیگنال‌های sEMG را می‌توانید از طریق رفت به آدرس زیر کسب کنید :

(www.rrd.nl/projects/content/file_100.html) (Freriks and Hermens, 2000)

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

منبع

 

نوامبر 28, 2019/0 دیدگاه /توسط daliri
https://behsanandish.com/wp-content/uploads/2019/01/220px-RuidosCuantificacionSegunResolucion.png 137 220 daliri https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png daliri2019-11-28 10:00:422019-11-28 10:00:42نویز چیست؟ قسمت 1

سیستم استنتاج فازی چیست؟ قسمت 2

آموزش های عمومی هوش مصنوعی

سیستم استنتاج فازی (Fuzzy Inference Systems (FIS

  • قوانین اگر- سپس Fuzzy از فرم IF A THEN B هستند که A و B علامت مجموعه های فازی هستند.

ممداني، سوگنو، لارسن و تاكاگی

ممداني: متغييرهاي ورودي در اين روش فازي و خروجي هم فازي مي‌باشد.

سوگنو: مانند ممداني ولي ورودي ها فازي ولي خروجي مي‌تواند فازي نباشد.

تاكاگي: مانند ممداني ولي در خروجي از ميانگين وزني استفاده مي‌شود.

لارسن: تفاوت مهم آن با روش‌هاي قبلي در متغييرهاي ورودي هستند كه مي‌تواند هم فازي و هم غير فازي باشد.

انواع سیستم های استنتاج فازی (1) (ممدانی)

  • سیستم های فازی خالص
  •  
سیستم های فازی خالص

انواع سیستم های استنتاج فازی (2)

  • سیستم های فازی تاکاگی – سوگنو و کانگ (TSK)
  • یک میانگین وزنی از مقادیر بخش هاي آنگاه قواعد می باشد.
  • قسمت مقدم قواعد، فازی اما قسمت نتیجه، غیرفازی و ترکیبی خطی از متغیرهای ورودی است.

Sugeno model

Assume that the fuzzy inference system has two inputs x and y and one output z.

A first-order Sugeno fuzzy model has rules as the following:

 Rule1:

If x1 is A11 and x2 is A21, then y = p1x1 + q1x2 + r1

 Rule2:

If x1 is A12 and x2 is A22, then y = p2x1 + q2x2 + r2

مدل Sugeno

مدل sugeno
fuzzy inference system

تکنیک های استنتاج فازی

تکنیک های استنتاج فازی

گریزی بر شبکه های عصبی

  • شبکه های عصبی یک مدل محاسباتی از عملیاتی است که در مغز انسان صورت می گیرد . شبکه های عصبی از تعدادی گره تشکیل شده است که توسط ارتباطاتی به هم متصل می باشند.

هر ارتباط یک وزن عددی مختص به خود دارد.

شبکه های عصبی با ارتباط وزن دار
  • وزن ها ابزار اصلی ذخیره سازی طولانی مدت هستند.
  • شبکه های عصبی می توانند وزن ها را به منظور بهبود عملکرد یک کار خاص، تنظیم نمایند.
  • یک گره از چندین ورودی از سایر گره ها و از چندین خروجی و از یک تابع غیر خطی (تابع فعال) تشکیل شده است.
  • شبکه های عصبی به دو گروه Feed forward و Feedback تقسیم بندی می شوند.
گروه های شبکه های عصبی

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

  • Supervised
  • Unsupervised
  • شبکه پرسپترون چند لایه و الگوریتم یادگیری آن
شبکه پرسپترون چند لایه و الگوریتم یادگیری آن
  • الگوریتم یادگیری Error Back propagation
  • ارزیابی تغییرات وزن
ارزیابی تغییرات وزن

سیستم های فازی و شبکه های عصبی

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

ANFIS

Adaptive Network-based Fuzzy Inference Systems

سیستم های تطبیقی استنتاجی فازی مبتنی بر شبکه

Adaptive Neural-fuzzy Inference System

سیستم های نورو- فازی تطبیقی

معرفی ANFISS

  • ANFIS مخفف adaptive network-based fuzzy inference system می باشد.
  • توسط دکتر راگر جانگ (Rogger Jang) درسال 1993 معرفی شد.
  • یک شبکه تطبيق پذير و قابل آموزشی است (خود را با داده های آموزشی تطبیق می دهد) که به لحاظ عملکرد کاملا مشابه سيستم استنتاج فازی است.
  • برای استفاده کارآمدتر می توان در آن از پارامترهای الگوریتم ژنتیک نیز استفاده نمود.
  • سیستم های ANFIS در اصل یک سیستم  TSK (تاگاکی- سوگنو-کانگ) درجه 1 هستند.
  • ANFIS از الگوریتم یادگیری HYBRID استفاده می کند.
  • از آنجا که تعیین پارامترهاي توابع عضویت در قسمت مقدم قواعد و همچنین تعیین ضرائب قسمت تالی قواعد همانند تعیین وزنهاي شبکه عصبی است به کمک روش هایی مثل الگوریتم هاي پس انتشار خطا انجام می شود.

منبع

 

سیستم استنتاج فازی چیست؟ قسمت 1

سیستم استنتاج فازی چیست؟ قسمت 2

نوامبر 27, 2019/0 دیدگاه /توسط hgadmin
https://behsanandish.com/wp-content/uploads/2019/08/سیستم-استنتاج-فازی-1.png 1122 2326 hgadmin https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png hgadmin2019-11-27 10:00:352019-11-27 10:00:35سیستم استنتاج فازی چیست؟ قسمت 2

سیستم استنتاج فازی چیست؟ قسمت 1

آموزش های عمومی هوش مصنوعی

مقدمه

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

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

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

منطق فازی

منطق فازی اولين بار توسط آقای پروفسور لطفی زاده در رساله ای به نام «مجموعه های فازی – اطلاعات و كنترل» در سال 1965 معرفی گردید و در دهه 1970 رشد و كاربرد عملی پيدا كرد، بزرگترین رخدادهای این دهه توليد كنترل كننده های فازی برای سيستم های واقعی بود.

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

مزایا و معایب منطق فازی

از جمله مزایای منطق فازی می توان به موارد زیر اشاره نمود:

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

از جمله معایب منطق فازی می توان به موارد زیر اشاره كرد:

  • قوانين منطق فازی توسط تجربه متخصص تعيين می شوند.
  • تجزیه و تحليل یک سيستم با منطق فازی دشوار است یعنی نمی توان قبل از واكنش آن را تخمين زد.
  • توابع توسط آزمون و خطا مشخص می شوند كه زمان بر هستند.

سيستم های استنتاج فازی

در شکل 1 معماری سيستم استنتاج فازی نشان داده شده است. همانطور كه مشخص است سيستم استنتاج فازی به طور كلی از اجزاء زیر ساخته شده است:

  1. فازی ساز
  2. موتور استنتاج فازی
  3. دفازی ساز

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

انواع روش های دفازی سازی شامل مركز ثقل ناحيه (COA)، نيمساز ناحيه (BOA )، كوچکترین ماكزیمم (SOM)، بيشترین ماكزیمم (LOM )، ميانگين ماكزیمم (MOM)، ميانگين وزنی (WA)، مجموع وزنی (WS) می باشد كه به طور كلی COA و WA بيشترین كاربردها را دارد.

سیستم استنتاج فازی

کاربردهای سيستم استنتاج فازی

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

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

انواع الگوریتم های استنتاج فازی

1-الگوریتم استنتاج ممدانی

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

دیاگرام كلی سيستم استنتاج فازی ممدانی در شکل 2 نشان داده شده است، سيستم استنتاج ممدانی از مجموعه های فازی به عنوان نتيجه قانون استفاده می كند و خروجی هر قانون به صورت غيرخطی و فازی است. همچنين از لحاظ روش دفازی سازی با بقيه سيستم های استنتاج متفاوت است. روش های دفازی سازی در سيستم استنتاج ممدانی به صورت BOA، COA، SOM, ،LOM, ،MOM هستند.

دیاگرام سیستم استنتاج فازی ممدانی

فرم كلی قوانين در سيستم ممدانی در شکل 3 نشان داده شده است، نتایج هر قانون كه با مقدارهای c1 و c2 مشخص می باشند، همانطور كه مشخص است پس ازتجميع نتایج حاصل از قوانين، عمل دفازی سازی بر روی تابع عضویت خروجی z انجام می گيرد و نتایج به صورت عددی به دست می آید.

اجرای قوانین در سیستم استنتاج فازی ممدانی
شکل 3 :فرم كلی اجرای قوانين در سيستم استنتاج ممدانی

2- الگوریتم استنتاج تاکاگی سوگنو

سيستم استنتاج تاكاگی سوگنو، توسط تاكاگی و ميشيو سوگنو در سال 1985 به منظور توسعه یک رویکرد سيستماتيک برای توليد قوانين فازی ارائه شد، این سيستم استنتاج بيشتر در سيستم های كنترلی و در زمينه هایی كه نياز به محاسبات ریاضی باشد مورداستفاده قرار می گيرد. شکل 4 دیاگرام یک سيستم استنتاج سوگنو را نشان می دهد. خروجی الگوریتم استنتاج سوگنو از یک چند جمل های مرتبه اول از متغيرهای ورودی به عنوان نتيجه قانون استفاده می كند و روش دفازی سازی در آن از نوع روشهای دفازی سازی WS,WA می باشد، همچنين سيستم استنتاج سوگنو به صورت MISO پياده سازی می شود و نمی تواند به صورت MIMO پياده سازی شود.

دیاگرام یک سیستم استنتاج سوگنو

شمای كلی ارزیابی قوانين با استفاده از روش سوگنو در شکل 1 نشان داده شده است. همانطور كه مشخص است نتایج قانون در سيستم استنتاج سوگنو به صورت صریح و خطی می باشد.

نمای کلی از اجرای قوانین در سیستم استنتاج سوگنو

مقایسه الگوریتم استنتاج فازی ممدانی و سوگنو

در جدول (1) مقایسه ای بين الگوریتم های استنتاج ممدانی و سوگنو نشان داده شده است. الگوریتم استنتاج سوگنو بيشتر در سيستم های كنترلی و سيستم هایی كه احتياج به محاسبات ریاضی دارند استفاده می شود اما در الگوریتم استنتاج ممدانی نتایج منطقی با یک ساختار نسبتاً ساده بيان می شود و بيشتر در سيستم های پشتيبانی تصميم و سيستم هایی كه قابليت تفسيری از قوانين را دارند استفاده می شوند، خروجی الگوریتم استنتاج ممدانی غيرخطی و فازی است اما خروجی سيستم استنتاج سوگنو خطی است، الگوریتم ممدانی در بسياری از عملکردها كه دقت خروجی و انعطاف پذیری مهم است به خوبی عمل نمی كند ولی موتور استنتاج تاكاگی سوگنو انعطاف پذیرتر و از دقت عملکرد بالاتری برخوردار می باشد و از لحاظ محاسباتی نسبت به ممدانی مؤثرتر است، زیرا فرایند دفازی سازی به زمان محاسباتی كمتری نياز دارد، اما فقط برای تجزیه وتحليل سيستم های كنترلی MISO خطی بهتر عمل می كند.

مقایسه بین الگوریتم های استنتاج فازی ممدانی و سوگنو

نتيجه گيری

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

منبع : مقاله مروری بر الگوریتم های استنتاج فازی نویسندگان: عالمه جعفری سوق، حامد شهبازی

مروری بر الگوریتم های استنتاج فازیدریافت

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

Fuzzy Inference Systemsدریافت

سيستم استنتاج فازي

سيستمي كه يك نگاشت از ورودي به خروجي را با استفاده از منطق فاز فرموله ميكند به نام سيستم استنتاج فازي (FIS) شناخته مي شود. سيستم استنتاج فازي همچنين به نام سيستم مبتني بر قواعد نيز ناميده مي شود .زيرا اين سيستم ها از تعدادي عبارت « اگر – آنگاه » ساخته شده است. وقتي چنين سيستم هايي در نقش كنترلي ظاهر مي شوند به آنها كنترل كننده های فازی می گويند .معماري اصلي FIS از پنج بلوك تابع تشكيل شده كه در شكل زير نشان داده شده است:

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

پايگاه قواعد ( Rule base) : شامل قواعد و عبارات «‌اگر – آنگاه » فازي

پايگاه داده (Dara base) : تعريف توابع عضويت

واحد تصميم گيري ( Decision making unit)‌: انجام عمليات روي قواعد فازي

رابط فازي ساز ( Fazzification inter face)‌: تبديل ورودي هاي حقيقي به مجموعه هاي فازي

رابط غير فازي ساز ( Defazzification  inter face)‌ : تبديل نتايج فازي به مقادير حقيقي

دو واحد پايگاه داده و پايگاه قواعد با هم تحت عنوان پايگاه دانش (Knowledge base) شناخته مي شوند. سيستم هاي استنتاج فازي را مي توان به سه كلاس « ممداني (mamdani) » ، «‌سوگنو (sugeno) » و «‌تاكاگي (Takagi)» تقسيم كرد.

بسياري از FIS ها از نوع ممداني هستند كه در اين نوع ، اعضاي مجموعة فازي خروجي را پيش بيني مي كنند . 

برای کار کردن با بخش فازی در Matlab درخط فرمان متلب عبارت fuzzy<< را تایپ کنید و یا  در بخش command  کلمه fuzzy  را تایپ کرده اینتر میزنیم .صفحه ای به صورت زیر باز می شود .

شروع به کار متلب برای قسمت فازی

 تعریف متغیر ها

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

افزودن متغیر ورودی و خروجی در متلب

 تعریف توابع عضویت

بعد از تعیین ورودی ها و خروجی ها باید تابع عضویت را برای هر یک از آنها تعین کنیم برای این منظور از منوی Edit  وارد قسمت membership function  می شویم و با کلید روی هر متغیر تابع عضویت آن را تنظیم می کنیم . در زیر نمای بخش membership function آمده است . توابع عضویت را با استفاده از المان های موجود می توان تغییر داد.

تعریف توابع عضویت

از قسمت Type میتوان نوع تابع عضویت را تغییر داد و از قسم params میتوان پارامترهای مربوط به تابع عضویت را تغییر داد:

تغییر پارامترهای عضویت

تعریف rule ها

بعد از تعی ن membership function باید Ruleها را تعریف کنیم. برای این کار از منوی edit وارد قسمت Rule شده و شروع به تعریف Rule ها می کنیم.  

تعریف رول ها

 بررسی

بعد از تعریف Rule ها نوبت به بررسی نتایج می رسد . برای بررسی نتایج از منوی view گزینه Rules را انتخاب می کنیم و در صفحه باز شده متغیرها و حاصل آنها را بر روی خرو جی ها می توان مشاهده کرد.

دیدن خروجی

برای دیدن نمودارهای حاصل از بخش view قسمت Surface را انتخاب می کنیم .

منبع

 

سیستم استنتاج فازی چیست؟ قسمت 1

سیستم استنتاج فازی چیست؟ قسمت 2

نوامبر 26, 2019/2 دیدگاه /توسط daliri
https://behsanandish.com/wp-content/uploads/2019/01/سیستم-استنتاج-فازی.png 1122 2326 daliri https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png daliri2019-11-26 10:00:202019-11-26 10:00:20سیستم استنتاج فازی چیست؟ قسمت 1

مدل مخفی مارکوف (Hidden Markov Model) قسمت 4

دسته‌بندی نشده

مسئله کد گشایی و الگوریتم ویتربی (Viterbi Algorithm)

در این حالت می‌خواهیم با داشتن دنباله مشاهدات {\displaystyle O=\{O_{1},...,O_{t}\}} و مدل {\displaystyle lambda=\{A,B,\pi \}} دنباله حالات بهینه {\displaystyle Q=\{q_{1},...,q_{t}\}} برای تولید {\displaystyle O=\{O_{1},...,O_{t}\}} را به‌دست آوریم.

یک راه حل این است که محتمل‌ترین حالت در لحظه t را به‌دست آوریم و تمام حالات را به این شکل برای دنبالهٔ ورودی به‌دست آوریم. اما برخی مواقع این روش به ما یک دنبالهٔ معتبر و بامعنا از حالات را نمی‌دهد. به همین دلیل، باید راهی پیدا کرد که یک چنین مشکلی نداشته باشد.

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

{\displaystyle \delta _{t}(i)=maxp\{q_{1},q_{2},...,q_{t-1},q_{t}=t,o_{1},o_{2},...,o_{t-1}|\lambda \}}

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

{\displaystyle \delta _{t+1}(j)=b_{j}(o_{t+1})[max\delta _{t}(i)a_{ij}],\qquad 1\leq i\leq N,\qquad 1\leq t\leq T-1}

که در آن

{\displaystyle \delta _{1}(j)=\pi _{j}b_{j}(o_{1}),\qquad 1\leq i\leq N}

به همین دلیل روال پیدا کردن دنباله حالات با بیشترین احتمال از محاسبهٔ مقدار {\displaystyle \delta _{j}(i),i\leq j\leq N} و با کمک رابطهٔ فوق شروع می‌شود. در این روش در هر زمان یک اشاره گر به حالت برنده قبلی خواهیم داشت. در نهایت حالت {\displaystyle \ j^{*}} را با داشتن شرط زیر به‌دست می‌آوریم.

{\displaystyle \ j^{*}=argmax\delta _{T}(i),}

و با شروع از حالت {\displaystyle \ j^{*}}، دنباله حالات به شکل بازگشت به عقب و با دنبال کردن اشاره گر به حالات قبلی به‌دست می‌آید. با استفاده از این روش می‌توان مجموعه حالات مورد نظر را به‌دست‌آورد. این الگوریتم را می‌توان به صورت یک جستجو در گراف که نودهای آن برابر با حالتها مدل HMM در هر لحظه از زمان می‌باشند نیز تفسیر نمود

مسئله یادگیری

به‌طور کلی مسئله یادگیری به این موضوع می‌پردازد که چگونه می‌توان پارامترهای مدل HMM را تخمین زد تا مجموعه داده‌های آموزشی به بهترین نحو به کمک مدل HMM برای یک کاربرد مشخص بازنمایی شوند. به همین دلیل می‌توان نتیجه گرفت که میزان بهینه بودن مدل HMM برای کاربردهای مختلف، متفاوت است. به بیان دیگر می‌توان از چندین معیار بهینه‌سازی متفاوت استفاده نمود، که از این بین یکی برای کاربرد مورد نظر مناسب تر است. دو معیار بهینه‌سازی مختلف برای آموزش مدل HMM وجود دارد که شامل معیار بیشترین شباهت (ML) و معیار ماکزیمم اطلاعات متقابل ((Maximum Mutual Information (MMI) می‌باشند. آموزش به کمک هر یک از این معیارها در ادامه توضیح داده شده‌است.

معیار بیشترین شباهت((Maximum Likelihood (ML)

در معیار ML ما سعی داریم که احتمال یک دنباله ورودی {\displaystyle \ O^{w}} که به کلاس w تعلق دارد را با داشتن مدل HMM همان کلاس به‌دست آوریم. این میزان احتمال برابر با نسبت شباهت کلی دنبالهٔ مشاهدات است و به صورت زیر محاسبه می‌شود.

{\displaystyle \ L_{tot}=p\{O^{w}|\lambda _{w}\}}

با توجه به رابطه فوق در حالت کلی معیار ML به صورت زیر تعریف می‌شود.

{\displaystyle \ L_{tot}=p\{O|\lambda \}}

اگر چه هیچ راه حل تحلیلی مناسبی برای مدل {\displaystyle \lambda =\{A,B,\pi \}} وجود ندارد که مقدار {\displaystyle \ L_{tot}} را ماکزیمم نماید، لیکن می‌توانیم با استفاده از یک روال بازگشتی پارامترهای مدل را به شکلی انتخاب کنیم که مقدار ماکزیمم به‌دست آید. روش Baum-Welch یا روش مبتنی بر گرادیان از جملهٔ این روش‌ها هستند.

الگوریتم بام- ولش

این روش را می‌توان به سادگی و با محاسبه احتمال رخداد پارامترها یا با محاسبه حداکثر رابطه زیر بر روی {\displaystyle {\bar {\lambda }}} تعریف نمود.

{\displaystyle \ Q(\lambda ,{\bar {\lambda }})=\sum _{q}p\{q|O,\lambda \}log[p\{O,q,{\bar {\lambda }}\}]}

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

اولین متغیر از این دست احتمال بودن در حالت i در زمان t و در حالت j در زمان t+1 است، که به صورت زیر تعریف می‌شود.

{\displaystyle \xi _{t}(i,j)=p\{{qt}=i,q_{t+1}=j|O,\lambda \}}

این تعریف با تعریف زیر معادل است.

{\displaystyle \xi _{t}(i,j)={\frac {p\{q_{t}=i,q_{t+1}=j,O|\lambda \}}{p\{O|\lambda \}}}}

می‌توان این متغیر را با استفاده از متغیرهای پیشرو و پسرو به صورت زیر تعریف نمود.

{\displaystyle \xi _{t}(i,j)={\frac {\alpha _{t}(i)a_{ij}\beta _{t+1}(j)b_{j}(o_{t+1})}{\sum _{i=1}^{N}\sum _{j=1}^{N}\alpha _{t}(i)a_{ij}\beta _{t+1}(j)b_{j}(o_{t+1})}}}

Baztakhmin

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

{\displaystyle \gamma _{t}(i)=p\{q_{t}=i|O,\lambda \}}

این متغیر را نیز می‌توان در قالب متغیرهای پیشرو و پسرو تعریف نمود.

{\displaystyle \gamma _{t}(i)=\left[{\frac {\alpha _{t}(i)\beta _{t}(i)}{\sum _{i=1}^{N}\alpha _{t}(i)\beta _{t}(i)}}\right]}

رابطه بین دو متغیر فوق به صورت زیر بیان می‌شود.

{\displaystyle \gamma _{t}(i)=\sum _{i=1}^{N}\xi _{t}(i,j),\qquad 1\leq i\leq N,\qquad 1\leq t\leq M}

اکنون می‌توان الگوریتم آموزش بام – ولش را با ماکزیمم کردن مقدار به‌دست‌آورد. اگر مدل اولیهٔ ما باشد، می‌توانیم متغیرهای پسرو و پیشرو و متغیرهای {\displaystyle \xi } و \gamma  را تعریف نمود. مرحلهٔ بعدی این است که پارامترهای مدل را با توجه به روابط بازتخمین زیر به‌روزرسانی کنیم.

{\displaystyle {\bar {\pi }}_{i}=\gamma _{1}(i),\qquad 1\leq i\leq N}

{\displaystyle {\bar {a}}_{ij}={\frac {\sum _{t=1}^{T-1}\xi _{t}(i,j)}{\sum _{t=1}^{T-1}\gamma _{t}(i)}},\qquad 1\leq i\leq N,\qquad 1\leq j\leq N}

{\displaystyle {\bar {b}}_{j}(k)={\frac {\sum _{t=1}^{T}\gamma _{t}(j)}{\sum _{t=1}^{T}\gamma _{t}(j)}},\qquad 1\leq j\leq N,\qquad 1\leq k\leq M}

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

الگوریتم حداکثرسازی امید ریاضی (Expectation Maximization)

الگوریتم حداکثرسازی امید ریاضی یا EM به عنوان یک نمونه از الگوریتم بام – ولش در آموزش مدل‌های HMM مورد استفاده قرار می‌گیرد. الگوریتم EM دارای دو فاز تحت عنوان Expectation و Maximization است. مراحل آموزش مدل در الگوریتم EM به صورت زیر است.

  1. مرحله مقدار دهی اولیه: پارامترهای اولیه مدل \lambda را تعیین می‌نماییم.
  2. مرحله امید ریاضی(Expectation): برای مدل \lambda موارد زیر را محاسبه می‌کنیم.
  • \alpha مقادیر با استفاده از الگوریتم پیشرو
  • مقادیر \beta و \gamma  با استفاده از الگوریتم پسرو
  1. مرحله ماکزیمم‌سازی (Maximization): مدل \lambda را با استفاده از الگوریتم باز تخمین محاسبه می‌نماییم.
  2. مرحله بروزرسانی {\displaystyle \lambda \leftarrow {\acute {\lambda }}}
  3. بازگشت به مرحله امید ریاضی

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

روش مبتنی بر گرادیان

در روش مبتنی بر گرادیان هر پارامتر{\displaystyle \ \Theta } از مدل{\displaystyle \ \lambda }با توجه به رابطه زیر تغییر داده می‌شود.

{\displaystyle \ \Theta ^{new}=\Theta ^{old}-\eta \left[{\frac {\partial j}{\partial \Theta }}\right]}

که در آن مقدار J با ید مینیمم شود. در این حالت خواهیم داشت.

{\displaystyle \ J=E_{ML}=-\log(P{O|\lambda })=-\log L_{tot}}

از آنجا که مینیمم کردن J معادل است با مینیمم کردن{\displaystyle \ L_{tot}}نیاز است است تا معیار ML بهینه به‌دست آید. آنگاه مسئله، یافتن مقدار مشتق{\displaystyle \ \left({\frac {\partial J}{\partial \Theta }}\right)} برای تمام پارامترهای{\displaystyle \ \Theta }از مدل است. این کار را می‌توان به سادگی با استفاده از مقدار{\displaystyle \ L_{tot}}

{\displaystyle \ L_{tot}=\sum _{i=1}^{N}p(O,q_{t}=i|\lambda )=\sum _{i=1}^{N}\alpha _{t}(i)\mathrm {B} _{t}(i)}

با مشتق گرفتن از رابطهٔ قبل به این نتیجه دست می‌یابیم:

{\displaystyle \ \left({\frac {\partial J}{\partial \Theta }}\right)=-\left({\frac {1}{L_{tot}}}\right)\left({\frac {\partial L_{tot}}{\partial \Theta }}\right)}

از آنجا که در رابطهٔ فوق مقدار {\displaystyle \ \left({\frac {\partial J}{\partial \Theta }}\right)} بر حسب{\displaystyle \ \left({\frac {\partial L_{tot}}{\partial \Theta }}\right)} به‌دست می‌آید، می‌توان رابطه {\displaystyle \ \left({\frac {\partial J}{\partial \Theta }}\right)} به‌دست‌آورد.

در روش مبتنی بر گرادیان، مقدار {\displaystyle \ \left({\frac {\partial L_{tot}}{\partial \Theta }}\right)} را باید برای پارامترهای {\displaystyle \ a_{g}} (احتمال انتقال) و {\displaystyle \ b_{g}} (احتمال مشاهدات) به‌دست‌آورد.

استفاده از مدل HMM در شناسایی گفتار

بحث شناسایی اتوماتیک گفتار را می‌توان از دو جنبه مورد بررسی قرار داد.

  1. از جنبه تولید گفتار
  2. از جنبه فهم و دریافت گفتار

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

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

استفاده از HMM در شناسایی کلمات جداگانه

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

آموزش

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

{\displaystyle \ O=(o_{1},o_{2},....,o_{N})}

پارامترهای اولیه تمام مدل‌های HMM را با یک مجموعه از مقادیر مشخص مقدار دهی می‌نماییم.

{\displaystyle \ \lambda _{i},1\leq i\leq N}

در آغاز این مسئله را برای حالت clamped در نظر بگیرید. از آنجایی که ما برای هر کلاس از واحدها یک HMM داریم، می‌توانیم مدل{\displaystyle \ \lambda _{i}}از کلاس l را که دنباله مشاهدات فعلی به آن مربوط می‌شود، را انتخاب نماییم.

{\displaystyle \ L_{tot}^{clamped}=\sum _{i\in \lambda _{i}}\alpha _{t}(i)\mathrm {B} _{t}(i)=\sum _{i\in \lambda _{i}}\alpha _{T}(i)}

برای حالت free نیز به مانند حالت قبل می‌توان مقدار نسبت شباهت را به‌دست‌آورد. {\displaystyle \ L_{tot}^{free}=\sum _{m=1}^{N}L_{m}^{I}=\sum _{m=1}^{N}[\sum _{i\in \lambda _{m}}\alpha _{t}(i)\mathrm {B} _{t}(i)]\sum _{m=1}^{N}\sum _{i\in \lambda _{i}}\alpha _{T}(i)}

که در آن {\displaystyle \ L_{m}^{I}}بیانگر میزان شباهت دنبالهٔ مشاهدات فعلی به کلاس l در مدل{\displaystyle \ \lambda _{m}} است.

شناسایی

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

{\displaystyle \ I^{*}\ \arg maxL_{m}^{I}}

{\displaystyle \ 1\leq m\leq N}

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

منبع


 

برای دریافت اطلاعات بیشتر فایل زیر را دانلود و مشاهده فرمایید.

رمز فایل: behsanandish.com

ML_93_1_Chap15_Hidden Markov Model

Hidden Markov Model

مدل مخفی مارکوف (Hidden Markov Model) قسمت 1
مدل مخفی مارکوف (Hidden Markov Model) قسمت 2
مدل مخفی مارکوف (Hidden Markov Model) قسمت 3
مدل مخفی مارکوف (Hidden Markov Model) قسمت 4

نوامبر 4, 2019/0 دیدگاه /توسط hgadmin
https://behsanandish.com/wp-content/uploads/2019/08/hmm_weather_model-1.jpg 584 600 hgadmin https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png hgadmin2019-11-04 10:00:382019-11-04 10:00:38مدل مخفی مارکوف (Hidden Markov Model) قسمت 4

مدل مخفی مارکوف (Hidden Markov Model) قسمت 3

دسته‌بندی نشده

انواع مدل‌های مخفی مارکوف و HMM پیوسته

همان‌طور که گفته شد نوع خاصی از HMM وجود دارد که در آن تمام حالات موجود با یکدیگر متصل هستند. لیکن مدل مخفی مارکوف از لحاظ ساختار و اصطلاحاً توپولوژی انواع مختلف دارد. همان‌طور که گفته شد برای مدل ارگودیک برای تمام i و jها {\displaystyle \ a_{ij}>0} است و ساختار مدل مثل یک گفتار کامل است که راسها در آن دارای اتصالات بازگشتی نیز می‌باشند. لیکن برای کاربردهای متفاوت و با توجه به پیچیدگی فرایند نیاز به ساختار متفاوتی وجود دارد. از جمله این ساختارها که به شکل گسترده‌ای در کاربردهای شناسایی گفتار مبتنی بر واج و شناسایی گوینده مورد استفاده قرار می‌گیرد، مدل چپ به راست یا مدل بکیس است. این مدل که ساختار آن را در شکل ۲ نیز می‌بینید، دارای اتصالات چپ به راست است و برای مدل کردن سیگنالهایی که خواص آن‌ها با زمان تغییر می‌کند مورد استفاده قرار می‌گیرد. در مدل چپ به راست تنها یک حالت ورودی وجود دارد که همان حالت اول است و به این ترتیب:

{\displaystyle \pi _{t}={\begin{cases}0,&\,i\neq 1\\1,&\,i\neq 1\end{cases}}} مدلهای ارگودیک و چپ به راست مدل‌های HMM پایه هستند و در پردازش گفتار نیز بیشترین کاربرد را دارا می‌باشند. هرچند می‌توان با اتصال چندین مدل یا تغییر در ساختار اتصالات آن مدلهایی با انعطاف‌پذیری بیشتری ایجاد نمود. شکل ۲-ج یک نمونه از مدل موازی چپ به راست، که شامل دو مدل چپ به راست است، را نشان می‌دهد.

مدل مخفی مارکوف

در قسمت‌های قبل مدل‌های HMM برای مجموعه مشاهدات گسسته را مورد بررسی قرار دادیم. اگر چه می‌توان با چندی‌سازی تمام فرایندهای پیوسته را به فرایندهای با دنباله مشاهدات گسسته تبدیل نمود، اما این کار ممکن است باعث افت مدل شود. در مدل HMM پیوسته احتمال قرار گرفتن مشاهدات در یک حالت را با توابع چگالی احتمال نشان می‌دهند. در این شرایط برای هر حالت i و ورودی O، احتمال مشاهده {\displaystyle \ b_{t}(O)} به صورت یک توزیع شامل M مخلوط نشان داده می‌شود:

{\displaystyle \ b_{t}(O)=\sum _{m=1}^{M}c_{im}R(O,\mu _{im},U_{im})}

{\displaystyle \ c_{im}\geq 0,1\leq i\leq N,1\leq m\leq M}

مدل مخلوط گاوسی

مدل مخلوط گوسی یکی از مهمترین روش‌های مدل کردن سیگنال است که در واقع شبیه یک HMM یک حالته است که تابع چگالی احتمال آن حالت دارای چندین مخلوط نرمال می‌باشد. احتمال تعلق بردار آزمایشیd به یک مدل مخلوط گاوسی دارای M مخلوط به شکل زیر بیان می‌شود:

{\displaystyle P(x|GMM)=\sum _{t=1}^{M}c_{t}.N(\mu _{t},\Sigma _{t}),}

که در آن {\displaystyle \ c_{t}} وزن مخلوط {\displaystyle \mu _{t}} و {\displaystyle \Sigma _{t}}به ترتیب بردار میانگین و ماتریس کوواریانس توزیع نرمال هستند. ماتریس کوواریانس مدل GMM معمولاً به صورت قطری در نظر گرفته می‌شود، گرچه امکان استفاده از ماتریس کامل نیز وجود دارد.

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

فرضیات تئوری مدل مخفی مارکوف

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

۱- فرض مارکوف

با داشتن یک مدل مخفی مارکوف، احتمال انتقال از حالت i به حالت j به صورت زیر تعریف می‌شود:

{\displaystyle \ a_{ij}=p(q_{t+1}|q_{t}=i)}

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

{\displaystyle \ a_{i1}a_{i2}a_{i3}a{i4}...=p(q_{t+1}=j|q_{t}=i_{1},q_{t-1}=i_{2}....,q_{t-k+1}=i_{k},1\leq i_{1},i_{2},...i_{k},j\leq N))}

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

۲- فرض ایستایی (stationarity)

در اینجا فرض می‌شود که احتمال انتقال در بین حالات از زمان واقعی رخداد انتقال مستقل است. در این صورت می‌توان برا ی هر {\displaystyle \ t_{1},t_{2}} نوشت

{\displaystyle \ p(q_{t_{1}+1}=j|q_{t_{1}}=i)=p(q_{t_{2}+1}=j|q_{t_{2}}=i}

۳- فرض استقلال خروجی

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

{\displaystyle \ O=o_{1},o_{2},....o_{T}}

آنگاه مطابق با این فرض برای مدل HMM با نام{\displaystyle \ \lambda } خواهیم داشت:

{\displaystyle \ p(O|q_{1},q_{2},..q_{T},\lambda )={\begin{matrix}\prod _{t=1}^{T}p(O_{t}|q_{t},\lambda )\end{matrix}}}

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

مسئله ارزیابی و الگوریتم پیشرو (forward)

در این حالت مسئله این است که با داشتن مدل {\displaystyle \lambda =(A,B,\pi )} و دنباله مشاهدات {\displaystyle O=\{O_{1},O_{2},...,O_{T}\}} باید مقدار {\displaystyle \ P(O|\lambda )} را پیدا نماییم. می‌توانیم این مقدار را با روش‌های آماری مبتنی بر پارامترها محاسبه نماییم. البته این کار به محاسباتی با پیچیدگی {\displaystyle \ O(N^{T})} احتیاج دارد. این تعداد محاسبات حتی برای مقادیر متوسط t نیز بسیار بزرگ است. به همین دلیل لازم است که راه دیگری برای این محاسبات پیدا نماییم. خوشبختانه روشی ارائه شده‌است که پیچیدگی محاسباتی کمی دارد و از متغیر کمکی {\displaystyle \ a_{t}(i)} با نام متغیر پیشرو استفاده می‌کند.

متغیر پیشرو به صورت یک احتمال از دنباله مشاهدات {\displaystyle O=\{O_{1},O_{2},...,O_{t}\}} تعریف می‌شود که در حالت i خاتمه می‌یابد. به بیان ریاضی:

{\displaystyle \alpha _{t}(i)=p\{O_{1},O_{2},...,O_{t},q_{t}=i|\lambda \}} آنگاه به سادگی مشاهده می‌شود که رابطه بازگشتی زیر برقرار است.

{\displaystyle \ a_{t+1}(j)=b_{j}(O_{t+1}\sum _{i=1}^{N})a_{t}(i)a_{ij},1\leq j\leq N,1\leq t\leq T-1}

که در آن

{\displaystyle \ a_{1}(j)=\pi _{j}b_{j}(O_{1}),1\leq j\leq N}

Ehtemalat_pishro

 

با داشتن این رابطه بازگشتی می‌توانیم مقدار زیر را محاسبه نماییم.

{\displaystyle \ a_{T}(i),1\leq i\leq N}

و آنگاه احتمال {\displaystyle \ P(O|\lambda )} به صورت زیر محاسبه خواهد شد:

{\displaystyle p\{O|\lambda \}=\sum _{i=1}^{N}a_{T}(i)}

پیچیدگی محاسباتی روش فوق که به الگوریتم پیشرو معروف است برابر با {\displaystyle \ O(N^{2}T)} است، که در مقایسه با حالت محاسبه مستقیم که قبلاً گفته شد، و دارای پیچیدگی نمایی بود، بسیار سریعتر است.

روشی مشابه روش فوق را می‌توان با تعیین متغیر پسرو، {\displaystyle \beta _{t}(i)}، به عنوان احتمال جزئی دنباله مشاهدات {\displaystyle O=\{O_{t+1},O_{t+2},...,O_{T}\}} در حالت i تعریف نمود. متغیر پیشرو را می‌توان به شکل زیر نمایش داد.

{\displaystyle \beta _{t}(i)=p\{O_{t+1},O_{t+2},...,O_{T}|q_{t}=i,\lambda \}}

مانند روش پیشرو یک رابطه بازگشتی به شکل زیر برای محاسبه {\displaystyle \beta _{t}(i)} وجود دارد.

{\displaystyle \beta _{t}(i)=\sum _{i=1}^{N}\beta _{t+1}(j)a_{ij}b_{j}(O_{t+1}),1\leq i\leq N,1\leq t\leq T-1}

Ehtemalat_pasro

 

که در آن

{\displaystyle \beta _{t}(i)=1,1\leq i\leq N}

می‌توان ثابت کرد که

{\displaystyle \ a_{t}(i)\beta _{t}(i)=p\{O,q_{t}=i|\lambda \},1\leq i\leq N,1\leq t\leq T}

آنگاه می‌توان با کمک هر دو روش پیشرو و پسرو مقدار احتمال {\displaystyle \ P(O|\lambda )} را محاسبه نمود.

{\displaystyle p\{O|\lambda \}=\sum _{i=1}^{N}p\{O,q_{t}=i|\lambda \}=\sum _{i=1}^{N}a_{t}(i)\beta _{t}(i)} رابطه فوق بسیار مهم و مفید است و بخصوص برای استخراج روابط آموزش مبتنی بر گرادیان لازم می‌باشد.

 

 

مدل مخفی مارکوف (Hidden Markov Model) قسمت 1
مدل مخفی مارکوف (Hidden Markov Model) قسمت 2
مدل مخفی مارکوف (Hidden Markov Model) قسمت 3
مدل مخفی مارکوف (Hidden Markov Model) قسمت 4

نوامبر 3, 2019/0 دیدگاه /توسط hgadmin
https://behsanandish.com/wp-content/uploads/2019/08/hmm_weather_model-1.jpg 584 600 hgadmin https://behsanandish.com/wp-content/uploads/2020/09/logo-farsi-englisi-300x195-1.png hgadmin2019-11-03 11:00:322019-11-03 11:00:32مدل مخفی مارکوف (Hidden Markov Model) قسمت 3
صفحه 6 از 12«‹45678›»

صفحات

  • #9096 (بدون عنوان)
  • #12541 (بدون عنوان)
  • 990729
  • home
  • product-mahdi
  • slider1
  • slider2
  • slider3
  • slider4
  • Video Test
  • آموزش
  • آموزش پردازش تصویر در نرم افزار متلب (Matlab)
  • آموزش های زبان برنامه نویسی سی شارپ (#C)
  • آموزش های زبان سی پلاس پلاس (++C)
  • آموزش های عمومی برنامه نویسی
  • آموزش های عمومی پردازش تصویر و بینایی ماشین
  • آموزش های عمومی هوش مصنوعی
  • ابزار و محصولات جانبی
  • ارتباط با ما
  • استخدام برنامه نویس
  • استخدام برنامه نویس
  • برگه نمونه
  • برگه نمونه
  • برنامه نویسی
  • بینایی ماشین (Machine Vision) و بینایی کامپیوتر
  • پردازش تصویر با کتابخانه متن باز OpenCV
  • پردازش تصویر و بینایی ماشین
  • پروژه ها و سورس کدهای پردازش تصویر و بینایی ماشین
  • پروژه ها و سورس کدهای هوش مصنوعی
  • تست اسلایدر
  • تشخيص پلاک خودرو(Car Plate Recognition)
  • تشخیص نوری کاراکتر و تشخیص دست خط (OCR/HCR)
  • تشخیص هویت زیست سنجی (Biometrics Identification)
  • تماس با ما
  • دانلود نسخه دمو سامانه کنترل تردد بهسان
  • درباره ما
  • درخواست دمو
  • دعوت به همکاری
  • دوربین و ابزارهای تصویربرداری (camera)
  • سامانه جامع پلاکخوان خودرو(کنترل تردد بهسان)
  • سامانه جامع مدیریت باسکول (بهسان توزین)
  • سامانه قرائت فرم های چند گزینه ای
  • سامانه قرائت فرم های چند گزینه ای
  • صفحه اصلی
  • فرم درخواست همکاری
  • محصولات
  • محصولات جانبی
  • مقالات ، سمینارها و کنفرانس های پردازش تصویر
  • مقالات، سمینارها و کنفرانس های هوش مصنوعی
  • نرم افزار باسکول
  • نرم افزار ثبت تردد جاده ای
  • نرم افزار مدیریت تعمیرگاه ، کارواش و تعویض روغن بهسان
  • نرم افزارانبار و حساب داری بهسان اندیش
  • نمونه کارها
  • نمونه کارهای سامانه جامع پلاکخوان خودرو
  • هوش محاسباتی (Computational Intelligence)
  • هوش مصنوعی
  • وبلاگ

دسته ها

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

بایگانی

  • آوریل 2022
  • مارس 2022
  • دسامبر 2021
  • نوامبر 2021
  • سپتامبر 2021
  • جولای 2021
  • می 2021
  • مارس 2021
  • فوریه 2021
  • آوریل 2020
  • مارس 2020
  • فوریه 2020
  • ژانویه 2020
  • دسامبر 2019
  • نوامبر 2019
  • اکتبر 2019
  • سپتامبر 2019
  • آگوست 2019
  • مارس 2019
  • ژانویه 2018
  • دسامبر 2017

تلفن های تماس:

تلفن: ۹۱۰۰۱۸۸۱(۰۳۱)
بازرگانی و فروش:۰۹۱۳۶۵۳۱۸۸۱
پشتیبانی: ۰۹۱۱۷۶۱۰۲۷۵

ساعات کاری

از شنبه تا چهارشنبه : ۰۹:۰۰ تا ۱۷:۰۰

پنچ شنبه ها : از ۰۹:۰۰ تا ۱۳:۳۰

پیوند ها :

  • درخواست دمو
  • مطالب و آموزش ها
  • همکاری با بهسان اندیش
  • درباره ما

 

محصولات :

  • پلاک خوان
  • نرم افزار ثبت تردد جاده ای
  • نرم افزار مدیریت پارکینگ
  • نرم افزار مدیریت کارواش
  • نرم افزار تعمیرگاه خودرو
  • نرم افزار جامع مدیریت باسکول
  • ماژول رله کنترل راهبند
  •  

 

تمامی حقوق مالکیت معنوی این ‌سایت برای شرکت بهسان اندیش سپهر، محفوظ است.
  • Instagram
  • Facebook
  • Youtube
  • LinkedIn
  • Mail
رفتن به بالا