CUDA Programming Applications

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

CUDA Programming Applications

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

دستورات cudaThreadSynchronize و cudaDeviceSynchronize

تفاوت بین دستورات cudaThreadSynchronize وcudaDeviceSynchronize در چیست؟
بنظر می رسد بسیاری از برنامه های کاربردی از تابع cudaThreadSynchronize بسیار استفاده نموده انداما اسناد اخیر شرکت NVIDIA در این رابطه بیان نموده است که تابع cudaThreadSynchronize بعلت منعکس نکردن رفتار واقعی خود منسوخ شده است و بعلت تشابه زیاد کارآیی آن با کارآیی تابع cudaDeviceSynchronize از این تابع بجای آن استفاده می شودو وظیفه اصلی آن همگام سازی تردهای داخل GPU بوده و ربطی به CPU ندارد مکان قرار گیری این دستور ،بعد از فراخوانی آخرین کرنل می باشد. مانند شکل زیر


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


شماره آزمونبا استفاده از دستورcudaDeviceSynchronizeبدون استفاده از دستور cudaDeviceSynchronize
1
2479028microsecond
2486615microsecond
2
2503691microsecond
2573641microsecond
3
2576774microsecond
2570786microsecond
4
2470012microsecond
2629837microsecond
5
2571920microsecond
2710080microsecond
6
2495909microsecond
2618598microsecond


پایگاه داده AT&T

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

http://www.cl.cam.ac.uk/research/dtg/attarchive/facedatabase.html

تاریخچه ایده Histogram Oriented Gradient(HOG)

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

HOG توسط Robert K. McConnell  در سال 1986 میلادی معرفی و در سال 1994 توسط Mitsubishi Electric Research Laboratories مورد استفاده قرار گرفت. بهرحال استفاده از این روش درسال 2005 گسترده تر شد، محققان موسسه IRINA کار تکمیلی خود را در این زمینه در کنفرانس بینایی ماشین و الگوی تشخیص CVPR نشان دادند ، در این کار آنها بر روی تصویر عابر پیاده در تصاویر ثابت تمرکز کردند اگرچه آنها از آن به بعد کارشان را بر روی تصاویر ویدیویی متحرک و همچنین برای حیوانات و وسایل نقلیه در تصاویر ثابت نیز بسط دادند.

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

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

فیلتر گابور

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

ورودی و خروجی فیلتر