رفتن به مطلب

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


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

  • پاسخ 66
  • ایجاد شد
  • آخرین پاسخ

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

سلام.

 

از دوستان کسی در مورد استخراج ویژگی به روش بلاک بندی و یا هیستو گرام اطلاعی دارید؟

 

سلام

بیشتر توضیح میدین؟

  • Like 3
لینک به دیدگاه
  • 2 هفته بعد...

هیستوگرام تصویر نموداری است که توسط آن تعداد پیکسل های هر سطح روشنایی در تصویر ورودی مشخص می شود. فرض کنید تصویر ورودی یک تصویر Grayscale با 256 سطح روشنایی باشد ، بنابراین هریک از پیکسل های تصویر مقداری در بازه [255...0] می توانند داشته باشند. بنابراین با محاسبه هیستوگرام شما برای هر تصویر یک آرایه به طول 256 دارید که یک بردار ویژگی تصویر مورد نظر شماست.

  • Like 4
لینک به دیدگاه
هیستوگرام تصویر نموداری است که توسط آن تعداد پیکسل های هر سطح روشنایی در تصویر ورودی مشخص می شود. فرض کنید تصویر ورودی یک تصویر Grayscale با 256 سطح روشنایی باشد ، بنابراین هریک از پیکسل های تصویر مقداری در بازه [255...0] می توانند داشته باشند. بنابراین با محاسبه هیستوگرام شما برای هر تصویر یک آرایه به طول 256 دارید که یک بردار ویژگی تصویر مورد نظر شماست.

 

سلام،

از توضیحاتتون ممنونم:icon_gol:

 

اما پاسخ سوالم رو متوجه شدم و همین جا توضیح میدم تا دوستان دیگه هم اگر در این مورد سوالی داشتن برطرف بشه.

 

بله این مطالب در مورد محاسبه ی هیستو گرام صحیح هست و درست می فرمایید.

(البته میشه که شدت روشنایی پیکسل ها رو هم به عنوان یک ویژگی کلی برای هر پیکسل در نظر گرفت)

 

 

اما برای استخراج ویژگی از روش هیستو گرام بیشتر منظور به این صورتی هست که توضیح داده میشه:

 

منظور از روش هیستو گرام برای استخراج ویژگی، استفاده از روش های اصطلاحا histogram static هست.

 

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

 

و تعدادی از این ویژگی ها که به این شکل بدست میاد اینها هستند:

 

1.Mean (میانگین)

2. Skewness(چولگی)

3. Absolute deviation(انحراف مطلق)

4.Variance(واریانس)

5. Kurtosis(کشیدگی)

6. Standard deviation(انحراف معیار)

 

و ...

 

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

 

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

 

اون هم مستلزم استفاده از قوانین و تکنیک های GLCM، GLRLM و ... هست.

 

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

  • Like 5
لینک به دیدگاه
  • 2 هفته بعد...
سلام،

از توضیحاتتون ممنونم:icon_gol:

 

اما پاسخ سوالم رو متوجه شدم و همین جا توضیح میدم تا دوستان دیگه هم اگر در این مورد سوالی داشتن برطرف بشه.

 

بله این مطالب در مورد محاسبه ی هیستو گرام صحیح هست و درست می فرمایید.

(البته میشه که شدت روشنایی پیکسل ها رو هم به عنوان یک ویژگی کلی برای هر پیکسل در نظر گرفت)

 

 

اما برای استخراج ویژگی از روش هیستو گرام بیشتر منظور به این صورتی هست که توضیح داده میشه:

 

منظور از روش هیستو گرام برای استخراج ویژگی، استفاده از روش های اصطلاحا histogram static هست.

 

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

 

و تعدادی از این ویژگی ها که به این شکل بدست میاد اینها هستند:

 

1.Mean (میانگین)

2. Skewness(چولگی)

3. Absolute deviation(انحراف مطلق)

4.Variance(واریانس)

5. Kurtosis(کشیدگی)

6. Standard deviation(انحراف معیار)

 

و ...

 

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

 

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

 

اون هم مستلزم استفاده از قوانین و تکنیک های GLCM، GLRLM و ... هست.

 

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

 

سلام خواهری

میشه خواهش کنم اگر در رابطه با GLCMو GLRLM مقاله ای داری بزاری.

همچنین ممنون میشم اگر میتونید در رابطه با نحوه ی استخراج ویژگی ها با استفاده از این ماتریسا یه توضیح مختصر بفرمائین.

ممنون:icon_gol:

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

سلام خانومی،

به روی چشم:icon_gol:

همونطور مستحضرید طبیعتا برای طبقه بندی و کلاس بندی داده ها نیاز به یک سری دیتا داریم.

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

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

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

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

اما GLCM مخفف gray level co-occurrence matrix (ماتریس های هم رخداد) اولین بار توسط هارالیک معرفی شد و از روشGLCM مشخصه ها و ویژگی های هارالیک استخراج میشه.

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

لطفا به مثال زیر دقت کنید:

6kfbseuxh2x088gold1u_thumb.png

 

ماتریس سمت چپ رو ماتریس تصویر اصلیمون تصور کنید.(B)

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

اما ماتریس سمت راست :

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

مثلا اینجا 8 تا بیشتر نداشتیم پس 8*8 شده این ماتریس.(این واقعی نیست چون تصویرمون خیلی از این بزرگتره).

در ماتریس B احتمال وقوع اینکه عدد 1 در کنار عدد 1 قرار گرفته باشه چقدر هست:

می بینیم که در ماتریس B ، 1 در هیچ حالتی کنار 1 قرار نگرفته، پس در ماتریس نتیجه (سمت راستی)هم عدد صفر در خانه ی 1و1 قرار میگیره.و یا مثلا 8 و1 در ماتریس B یک بار کنار هم قرار گرفتن پس در ماتریس سمت راست در خانه ی 8و1 عدد 1 قرار می گیره.

از ماتریس های هم رخداد ویژگی های(مشخصه های هارالیک) مختلفی نظیر :

Uniformity/Energy/Angular second moment, Entropy, Dissimilarity, Contrast/Inertia , Inverse difference, Correlation,…

استخراج میشه.این مثال براساس جهت صفر درجه این ماتریس رو بررسی کرده بود.

میتونیم از زوایای 45، 90، 135 هم برای استخراج این ویژگی ها استفاده کنیم.

یعنی مثلا به صورتی باشه که دیگه به صورت افقی کنار هم بودن اعداد ماتریس رو نسنجیم و مثلا برای 45 درجه به صورت قطری بسنجیم که این اعداد کنارهم هستند یانه.

این از GLCM.

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

اما GLRLM هم مخفف gray level run length matrix از ماتریس run length برای استخراج ویژگی استفاده می کنه و میزان ساییدگی یک بافت را در هریک از جهت های 0°و 45°, 90°,،135 ° تعیین می کند.

این ماتریس هم مثل ماتریسای هم رخداد در GLCM، اگه تصویرمون n تا سطح خاکستری داشته باشه، n*n تا عنصر می تونه داشته باشه.

باز هم لطفا به این مثال دقت کنید:

2fb5y16pf5ncdb911lnc_thumb.png

 

در این روش هم مثل قبلی به جهت و فاصله دقت میشه.

اگر فاصله رو باز هم یک فرض کنیم:

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

سطح i در ماتریس بالا داره یک عدد خاکستری رو از ماتریس سمت چپ(تصویرمون) نشون میده.

و ستون ها (j) بیانگر تعداد مرتبه ای هست که اینها کنار هم قرار گرفتن.

مثلا در ماتریس سمت راست اگر در خونه ی (i=2,j=3) عدد یک نوشته شده، به این معنی هست که در ماتریس تصویرمون(سمت چپی) عدد 2 تنها یک بار به صورت سه تایی در تصویر قرار گرفته.

و یا

به عنوان مثال وقتی به ازای مقدار i=4 , j=2 در ماتریس مقدار 1 مشاهده می شه:

این به این معنیه که پیکسل دارای سطح خاکستری 4 تنها یک بار در ماتریس تصویر اصلی به صورت دوتایی در کنار هم قرار گرفته.

 

نمونه ای از ویژگی های استخراج شده با این روش:

. Short run emphasis، : Long run emphasis، Gray level nonuniformity و... .

 

امیدوارم که گویا بیان شده باشه،

اگر سوالی بود حتما بفرمایید.

 

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

  • Like 5
لینک به دیدگاه
ممنون از توضیحات خوبت حانومی

اما راستش من نحوه ی ایجاد ماتریس جدید رو با روش glcm متوجه نشدم!

 

خواهش می کنم عزیزم.

Glrlm رو متوجه شدی؟

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

عزیز، یه تعداد مقاله در مورد استخراج ویژگی با GLCM براتون در این لینک قرار دادم:

 

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

 

 

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

  • Like 4
  • Sad 1
لینک به دیدگاه
  • 4 هفته بعد...

سلام.

 

کسی از دوستان میتونن در مورد استخراج ویژگی به روش HOG راهنمایی کنن؟

 

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

 

....................

ممنون.

  • Like 2
لینک به دیدگاه
  • 7 ماه بعد...
اما glrlm هم مخفف gray level run length matrix از ماتریس run length برای استخراج ویژگی استفاده می کنه و میزان ساییدگی یک بافت را در هریک از جهت های 0°و 45°, 90°,،135 ° تعیین می کند.

این ماتریس هم مثل ماتریسای هم رخداد در glcm، اگه تصویرمون n تا سطح خاکستری داشته باشه، n*n تا عنصر می تونه داشته باشه.

باز هم لطفا به این مثال دقت کنید:

2fb5y16pf5ncdb911lnc_thumb.png

 

در این روش هم مثل قبلی به جهت و فاصله دقت میشه.

اگر فاصله رو باز هم یک فرض کنیم:

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

سطح i در ماتریس بالا داره یک عدد خاکستری رو از ماتریس سمت چپ(تصویرمون) نشون میده.

و ستون ها (j) بیانگر تعداد مرتبه ای هست که اینها کنار هم قرار گرفتن.

مثلا در ماتریس سمت راست اگر در خونه ی (i=2,j=3) عدد یک نوشته شده، به این معنی هست که در ماتریس تصویرمون(سمت چپی) عدد 2 تنها یک بار به صورت سه تایی در تصویر قرار گرفته.

و یا

به عنوان مثال وقتی به ازای مقدار i=4 , j=2 در ماتریس مقدار 1 مشاهده می شه:

این به این معنیه که پیکسل دارای سطح خاکستری 4 تنها یک بار در ماتریس تصویر اصلی به صورت دوتایی در کنار هم قرار گرفته.

 

نمونه ای از ویژگی های استخراج شده با این روش:

. short run emphasis، : Long run emphasis، gray level nonuniformity و... .

 

امیدوارم که گویا بیان شده باشه،

اگر سوالی بود حتما بفرمایید.

 

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

 

سلام دوست عزیزم،

یه سوال داشتم ماتریس glrlm رو متلب آماده داره؟ یا خودمون باید بنویسیم؟

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

سلام.

 

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

 

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

 

اگرم نه، بگو تا خودم برات ارسال کنم.

 

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

  • Like 3
لینک به دیدگاه
سلام.

 

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

 

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

 

اگرم نه، بگو تا خودم برات ارسال کنم.

 

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

 

من متوجه نمیشم ماتریسشو چیجور بدست میاره:banel_smiley_4:

  • Like 2
لینک به دیدگاه
  • 2 هفته بعد...
من متوجه نمیشم ماتریسشو چیجور بدست میاره:banel_smiley_4:

 

فمیدم چطور کار میکنه، اول کار برای محاسبه ماتریسهای Run Length یه سری پارامتر مثه offset، NumLevels،GrayLimitsو ... می گیره. با توجه به بعضی از این پارامترهای ورودی اول تصویر ورودیمون رو scale میکنه، بعدش با توجه به offset ( مشخص کننده جهت های لازم برای بدست آوردن ماتریس) ماتریس هامون محاسبه می شن.

به عنوان مثال اگه برای تصویرمون فراخوانی زیر رو داشته باشیم:


GLRLMS=grayrlmatrix(I,'NumLevels',256,'G',[]);
برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

خب اول ابعاد تصویر scale شده رو محاسبه می کنه بعدش به ازای بعد اول ماتریس si حلقمون تکرار میشه در هر تکرار اول اندیس مقادیر متفاوت رو بدست میاره بعد طول این اندیس ها، سپس مقادیر مرتبط با این اندیس را محاسبه می کنه توی مرحله بعدی با توجه به تابع accumarray یه آرایه n*NL ایجاد می کنه و توی اندیسهای [val;len] یک میذاره.

 

اگه تصویر scale شده به شکل زیر باشه:


SI =

1 1 1 2 2
3 4 2 2 3
4 4 4 4 4
5 5 3 3 3
1 1 3 4 5
برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

خب اگه ماتریس SI رو دقت کنیم می بینیم که برای سطر اول دو سطح خاکستری 1 و 2 رو داریم. از ماتریس میشه فهمید که سطح 1 به طول 3، یک بار مشاهده شده و سطح 2 به طول 2، یک بار مشاهده شده است.

 

اگه جایی اشتباه کردم میشه بگید، ممنون:icon_gol:

  • Like 3
لینک به دیدگاه
  • 2 ماه بعد...
سلام،

از توضیحاتتون ممنونم:icon_gol:

 

اما پاسخ سوالم رو متوجه شدم و همین جا توضیح میدم تا دوستان دیگه هم اگر در این مورد سوالی داشتن برطرف بشه.

 

بله این مطالب در مورد محاسبه ی هیستو گرام صحیح هست و درست می فرمایید.

(البته میشه که شدت روشنایی پیکسل ها رو هم به عنوان یک ویژگی کلی برای هر پیکسل در نظر گرفت)

 

 

اما برای استخراج ویژگی از روش هیستو گرام بیشتر منظور به این صورتی هست که توضیح داده میشه:

 

منظور از روش هیستو گرام برای استخراج ویژگی، استفاده از روش های اصطلاحا histogram static هست.

 

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

 

و تعدادی از این ویژگی ها که به این شکل بدست میاد اینها هستند:

 

1.Mean (میانگین)

2. Skewness(چولگی)

3. Absolute deviation(انحراف مطلق)

4.Variance(واریانس)

5. Kurtosis(کشیدگی)

6. Standard deviation(انحراف معیار)

 

و ...

 

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

 

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

 

اون هم مستلزم استفاده از قوانین و تکنیک های GLCM، GLRLM و ... هست.

 

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

 

میخاستم ببینم چطور میتونم این ویژگی هارو واسه هیستوگرام محاسبه کنم؟

خود متلب تابع داره؟ یا باید برنامشو دانلود کرد؟

  • Like 2
لینک به دیدگاه
  • 1 ماه بعد...
سلام

چرا من وقتی از GLCM استفاده میکنم این وارنینگ رو میده؟ آیا به نظرتون مشکل ایجاد میکنه؟

 

سلام

میگه دیگه این فانکشن ها در آینده حذف میشن، به جاشون باید از چه فانکشنی استفاده بشه.

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

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