رفتن به مطلب

پیاده سازی مقاله در مورد تشخیص اعداد با هیستوگرام و شبکه عصبی


ارسال های توصیه شده

سلام

بعد از یه مدت طولانی که از میادین دور بودم دوباره من اومدم

خوب برسیم به کار امروزمون

من تصمیم دارم اگر کسی یاری کرد با هم یه مقاله رو پیاده سازی کنیم.

  • Like 4
لینک به دیدگاه

سلام المیرا خانوم:icon_gol:

 

مقاله مشخصه؟

یعنی مرحله به مرحله اینجا پیش میریم، کدها رو هم کامل میذاریم دیگه؟

 

من شبکه عصبی بلد نیست، ولی پردازش تصویرش رو هستم.:ws3:

البته شبکه هم دوس دارم یاد بگیرم:w02:

  • Like 5
لینک به دیدگاه
سلام المیرا خانوم:icon_gol:

 

مقاله مشخصه؟

یعنی مرحله به مرحله اینجا پیش میریم، کدها رو هم کامل میذاریم دیگه؟

 

من شبکه عصبی بلد نیست، ولی پردازش تصویرش رو هستم.:ws3:

البته شبکه هم دوس دارم یاد بگیرم:w02:

 

آره مشخصه.

خوب کاری میکنی

  • Like 2
لینک به دیدگاه
آره مشخصه.

خوب کاری میکنی

 

می خواهی همین الان یه استارت برای شروع کار بزنیم

 

مقاله ت رو بذار، ببینم چیه.:a030:

  • Like 1
لینک به دیدگاه

قدم اول ساخت LOCAL BINARY PATTERN

The basic LBP operator works with a 3×3 window.

Center of this window is placed on each pixel of the

image and is compared with other pixels in the

window. The results are put along and make a

binary string which is interpreted as a decimal

number. Histogram of these decimal numbers is the

output features.

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

  • Like 3
لینک به دیدگاه
قدم اول ساخت LOCAL BINARY PATTERN

The basic LBP operator works with a 3×3 window.

Center of this window is placed on each pixel of the

image and is compared with other pixels in the

window. The results are put along and make a

binary string which is interpreted as a decimal

number. Histogram of these decimal numbers is the

output features.

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

 

اوکی فهمیدم، عکس هم میذارم که کامل شه:ws3:

 

9yfq16c9ioplpjhjkcw.png

یه سوال دایره ای و اینا هم توی خودش گفته به اونا نیاز نداریم؟

  • Like 2
لینک به دیدگاه

=================================== به دلیل استقبال نشدن پست ================================

================================================================================================

 

================================= پست را در همینجا می بندیم ==============================

================================================================================================

=================================:ws28::ws28::ws28::ws28::ws28::ws28::ws28::ws28::ws28::ws28::ws28::ws28::ws28::ws28::ws28:================

لینک به دیدگاه
  • 1 ماه بعد...
  • 3 هفته بعد...

اینم اولین کد lbp

 

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

 

9yfq16c9ioplpjhjkcw.png

 

 

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

  • Like 2
لینک به دیدگاه

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

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

  • Like 1
لینک به دیدگاه
اینم اولین کد lbp

 

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

 

9yfq16c9ioplpjhjkcw.png

 

 

 

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

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

 

سلام

 

کد که خب درسته، ولی میشه بدون حلقه هم نوشت، اون counter برای چیه؟

var5 و var6 رو برای چی جدا کردی، دوباره مگه توی بردار ویژگی کنار هم نذاشتی، فرقی هم می کنه؟

 

مثلا اینجوری هم میشه نوشت، از دستور im2col استفاده کرده، میاد بلاک های 3 در 3 هر پیکسل رو به صورت ستونی کنار هم قرار میده، یعنی اول تبدیل به بردار ستونی می کنه شون:

 

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

  • Like 1
لینک به دیدگاه

جمع هر قسمت را جدا محاسبه می کنم در سته کنار هم گذاشتم ولی دلیل کنار هم گذاشتن ساخت یک بردار ویژگی است برای مرحله بعد که می خواهیم بدیم شبکه عصبی

  • Like 1
لینک به دیدگاه
جمع هر قسمت را جدا محاسبه می کنم در سته کنار هم گذاشتم ولی دلیل کنار هم گذاشتن ساخت یک بردار ویژگی است برای مرحله بعد که می خواهیم بدیم شبکه عصبی

 

خب تو دو بردار باشه کنار هم قرار داده بشه، با اینکه از اول تو یه بردار بذاری که فرقی نمی کنه.

سوالم در مورد counter رو جواب ندادی؟

  • Like 1
لینک به دیدگاه

counter برای ارقام هست.

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

دیتا بیسی که ما استفاده می کنیم دیتا بیس هدا است که کلا 80000 عکس داره یعنی از هر رقم 8000 تا . برای همین از counter استفاده کردم.

  • Like 1
لینک به دیدگاه

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

یک سری توضیحات درباره کد ها می گذارم

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

هر الگوریتم دسته بندی(همانند شبکه عصبی , svm) شامل دو قسمت می باشند یک داده های آموزشی و داده های تست. در داده های آموزشی ما کلاس داده را نیز مشخص می کنیم. نکته ای باید به آن توجه کنید آن است که داده های آموزشی همان بردار ویژگی های مربوز به هر رقم می باشد.

حال نوبت به توضیح کد ها می رسه

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

dataTrain برای نگه داری بردار وپژگی ها و TargetTrain برای نگه داری کلاس داده ها بکار می رود.

 

حلقه اول for counter=1:10 برای پیماش رقم ها استفاده می گردد(0 تا 9) حلقه دوم برای خواندن تصاویر هر نمونه از رقم استفاده می شود. همانظور که مشخص است ما برای هر رقم 150 تصویر در نظر گرفته ایم.

برای ساخت بردار ویژگی برای هر رقم ابتدا باید تصویر ورودی را به تصویر با ساختار LBP ببریم که توضیحات آن در بالا مندرج گردیده است و بعد از این که ما تصویر را با استفاده از ساختار LBP ساختم نوبت به استخراج ویژگی می رسد.

برای استخراج ویژگی در این مقاله از Histogtram Ptrojection در راستای عمودی و افقی استفاده گردیده است. برای اینکه ویژگی ها متمایز گردن تصوی را به چهار قسمت تقسیم کرده ایم بعد عملیات Projection را روی آن انجام داده ایم.

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

کد های بالا تبدیل تصویر با استفاده از ساختار LBP را انجام می دهد و کد های زیر عملیات Projection روی چهار قسمت تصویر به کار می برد.

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

  • Like 2
لینک به دیدگاه
  • 1 ماه بعد...
×
×
  • اضافه کردن...