سلام
من می خواستم با یکسری از تصاویر بهبود داده شده رو با glcm استخراج ویژگی کنم و یا svm کلاسیفیکیشن کنم. اما نتیجه با خروجی مقاله مطابقت نداره.
چون تصاویر تفاوت کمی با هم دارن و glcm برای هر تصویر در نهایت از هر ویژگی تنها یه مقدار میده. فکر کردم شاید برای هر ویژگی به ازای هر پیکسل باید یه مقدار بده که در اون صورت تعداد ویژگی های بدست اومده خیلی بشتر می شه.
متاسفانه کدم خیلی خیلی کند شد و یه جورایی انگاری اجرا نمی شه . چون سایز تصاویر 1024*1024 هستش.
تابع GLCM_Features4 رو دانلود کردم این هم لینکش:
http://www.mathworks.com/matlabcentr...-code-changes-
برای مثال هم خودش یه تصویر رو داده و تابع چند تا عدد رو به عنوان ویژگی برای کل تصویر بر می گردونه. که برای کار من تشخیصش پایین هست.
من اون رو برای هر پیکسل از تصویرم این طور در نظر گرقتم که خیلی خیلی کند هست.
n = 8;
img_col = im2col(Image_edge,[n n],'sliding');
stats1 = zeros(1,20*size(img_col,2));
for i = 1:size(img_col,2)
tmp = reshape(img_col(:,i),[n,n]);
GLCM2 = graycomatrix(tmp,'GrayLimits',[],'Offset',[0 1]);
stats_temp = GLCM_Features4(GLCM2,0);
stats_temp = rmfield(stats_temp,{'corrm','homom'});
stats1 = zeros(1,20*size(img_col,2),'single');
end
با پنجره 8*8 و فقط برای 20 ویژگی که مورد نظرم بوده.
ممنون می شم اگه راهنمایی بفرمایید