CUDA Programming Applications

کاربردهای برنامه نویسی کودا

CUDA Programming Applications

کاربردهای برنامه نویسی کودا

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

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


TN: این مقدار بیانگر تعداد رکوردهایی است که دسته واقعی آنها منفی بوده و الگوریتم دسته‌بندی نیز دسته واقعی آنها را بدرستی منفی تشخیص داده است.
FP: این مقدار بیانگر تعداد رکوردهایی است که دسته واقعی آنها منفی بوده و الگوریتم دسته‌بندی دسته آنها را به اشتباه مثبت تشخیص داده است.
FN: این مقدار بیانگر تعداد رکوردهایی است که دسته واقعی آنها مثبت بوده و الگوریتم دسته‌بندی دسته آنها را به اشتباه منفی تشخیص داده است.
TP: این مقدار بیانگر تعداد رکوردهایی است که دسته واقعی آنها مثبت بوده و الگوریتم دسته‌بندی دسته آنها را بدرستی مثبت تشخیص داده است.


شکل زیر نمونه ای از FN و FP را نشان می دهد.



از این رو نرخ دقت بازیابی و همچنین نرخ خطا به ترتیب  از روابط 1 و 2 محاسبه می شود:



Principal Component Analysis

تحلیل مولفه های اصلی(Principal Component Analysis)ابتدا در سال 1901 توسط پیرسون معرفی و پس از آن در سال 1933 توسط هتلینگ روشهای محاسباتی آن پیشنهاد شد،PCA در تعریف ریاضی یک تبدیل خطی متعامد است که داده را به دستگاه مختصات جدید برده بطوریکه بزرگترین واریانس داده ها بر روی اولین محور مختصات قرار گرفته و واریانس مرتبه بعدی بر روی دومین محور مختصات قرار می گیرد و این روند تا انتها ادامه می یابد.(شکل 1)

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

     1- کاهش تعداد متغیرها

      2- یافتن ساختار ارتباطی بین متغیرها که در حقیقت همان دسته بندی متغیرهاست

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

از فوریه تا گابور

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

عملگر ضرب:

عملگر ضرب در واقع برای شناسایی میزان شباهت دو تابع می تواند به کار رود و عملگر کواریانس در حقیقت از این ویژگی برای همبستگی (شباهت) دو تابع استفاده می کند.

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


مقدار f بیان کننده یک فرکانس خاص است.

 
ادامه مطلب ...

تبدیل فوریه

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

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


مفهوم اولیه تبدیل فوریه:


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



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

G( x  , y ) = H( u , v ) * F( u , v )

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


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

1- فیلترهای پایین گذر

2-فیلترهای بالاگذر

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

دستوری که در opencv برای تبدیل فوریه برروی تصاویر وجود دارد fft می باشدکه نتیجه آن در تصاویر زیر قابل رویت می باشد.