SAMA.FA 106 اشتراک گذاری ارسال شده در 21 بهمن، ۱۳۹۳ آیا کد موجک گابور ایراد داره که خروجی که می خوام در نمیاد؟ در ضمن استخراج ویژگی که بدست میاره کدوم؟ لینک به دیدگاه
SAMA.FA 106 اشتراک گذاری ارسال شده در 22 بهمن، ۱۳۹۳ سلام کسی میدونه اسکن معوج کج یعنی چی؟ منظور اسکن کج ومعوج چیکارمیکنه؟ 1 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 23 بهمن، ۱۳۹۳ سلام چطوری بعداعمال موجک گابور روتصویر استخراج ویژگی بدست میاد؟وچطور با میشه با40تا خروجی پیچیدگی یک تصویرگابور بدست آورد؟ سلام توی صفحه اول این تاپیک یه توضیحاتی داده شده، فکر کنم بد نباشه که یه نگاهی بهش بندازی. 1 لینک به دیدگاه
SAMA.FA 106 اشتراک گذاری ارسال شده در 28 بهمن، ۱۳۹۳ سلام انرژی محلی و میانگین دامنه برای استخراج ویژگی فیلترگابور چهجور حساب میشه؟؟؟ لینک به دیدگاه
hhamidy 885 مالک اشتراک گذاری ارسال شده در 28 بهمن، ۱۳۹۳ سلام انرژی محلی و میانگین دامنه برای استخراج ویژگی فیلترگابور چهجور حساب میشه؟؟؟ سلام. Local Energy = summing up the squared value of each matrix value from a response matrix Mean Amplitude = sum of absolute values of each matrix value from a response matrix لطفا خطوط آخر از پست دوم این صفحه رو بخونید: http://www.noandishaan.com/forums/thread132953.html 4 لینک به دیدگاه
SAMA.FA 106 اشتراک گذاری ارسال شده در 21 اسفند، ۱۳۹۳ سلام ایراد کد کجاست که موققع اجرا خطا میده؟؟؟ کد: close all; clear all; clc; % Parameter Setting Img = imread('D:\image\roz.png'); Img = rgb2gray(Img); Img = im2double(Img) [R C]=size(Img); % R = 128; % C = 128; Kmax = pi / 3; f = sqrt( 1 ); Delt = 2 * pi/3; Delt2 = Delt * Delt; % Img=Img(:); % Show the Gabor Wavelets for v = 0 : 4 for u = 1 : 8 GW = GaborWavelet ( R, C, Kmax, f, u, v, Delt2 ); % Create the Gabor wavelets figure( 2 ); subplot( 5, 8, v * 8 + u ),imshow ( real( GW ) ,[]); % Show the real part of Gabor wavelets IGW=conv2(Img,GW,'same'); % IGW=conv((Img),(figure ( 2 ))); figure ( 3 ); subplot( 5, 8, v * 8 + u ),imshow (abs( IGW ) ,[]); end % figure ( 4 ); % subplot( 1, 5, v + 1 ),imshow ( abs( GW ),[]); % Show the magnitude of Gabor wavelets % end [n,m] = size(Img); s = (n*m)/(u*v); l = s*u*v; featureVector = zeros(1,1); c = 0; for i = 1:u for j = 1:v c = c+1; gaborAbs = abs(IGW); gaborAbs = downsample(gaborAbs,u); gaborAbs = downsample(gaborAbs.',v); gaborAbs = reshape(gaborAbs.',[],1); % Normalized to zero mean and unit variance. (if not applicable, please comment this line) gaborAbs = (gaborAbs-mean(gaborAbs))/std(gaborAbs,1); featureVector(((c-1)*s+1):(c*s)) = gaborAbs; end end خطا: Warning: Integer operands are required for colon operator when used as index In an assignment A(I) = B, the number of elements in B and I must be the same. 3 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ سلام ایراد کد کجاست که موققع اجرا خطا میده؟؟؟ کد: close all; clear all; clc; % Parameter Setting Img = imread('D:\image\roz.png'); Img = rgb2gray(Img); Img = im2double(Img) [R C]=size(Img); % R = 128; % C = 128; Kmax = pi / 3; f = sqrt( 1 ); Delt = 2 * pi/3; Delt2 = Delt * Delt; % Img=Img(:); % Show the Gabor Wavelets for v = 0 : 4 for u = 1 : 8 GW = GaborWavelet ( R, C, Kmax, f, u, v, Delt2 ); % Create the Gabor wavelets figure( 2 ); subplot( 5, 8, v * 8 + u ),imshow ( real( GW ) ,[]); % Show the real part of Gabor wavelets IGW=conv2(Img,GW,'same'); % IGW=conv((Img),(figure ( 2 ))); figure ( 3 ); subplot( 5, 8, v * 8 + u ),imshow (abs( IGW ) ,[]); end % figure ( 4 ); % subplot( 1, 5, v + 1 ),imshow ( abs( GW ),[]); % Show the magnitude of Gabor wavelets % end [n,m] = size(Img); s = (n*m)/(u*v); l = s*u*v; featureVector = zeros(1,1); c = 0; for i = 1:u for j = 1:v c = c+1; gaborAbs = abs(IGW); gaborAbs = downsample(gaborAbs,u); gaborAbs = downsample(gaborAbs.',v); gaborAbs = reshape(gaborAbs.',[],1); % Normalized to zero mean and unit variance. (if not applicable, please comment this line) gaborAbs = (gaborAbs-mean(gaborAbs))/std(gaborAbs,1); featureVector(((c-1)*s+1):(c*s)) = gaborAbs; end end خطا: Warning: Integer operands are required for colon operator when used as index In an assignment A(I) = B, the number of elements in B and I must be the same. سلام سما خانوم ببین، متن اخطار اول داره بهت میگه که وقتی از کالون (:) استفاده می کنی، نیاز هست که اعداد حتما صحیح باشن، و البته مثبت. ولی s توی اینجا اعشاری هست: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام بعد هم میگه تعداد دو طرف باید برابر باشه، یعنی تعداد درایه های آدرس دهی شده سمت چپ، با تعداد درایه های سمت راست مساوی برابر باشن. 2 لینک به دیدگاه
SAMA.FA 106 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ خب من چطوری میتونم رفع خطا کنم؟ 1 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ خب من چطوری میتونم رفع خطا کنم؟ به جای اون عبارتی که برای S نوشتی، S رو مساوی 345 قرار بده، این خط رو میگم: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام 2 لینک به دیدگاه
SAMA.FA 106 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ باز خطا میده خطا: Error: The expression to the left of the equals sign is not a valid target for an assignment. درضمن تو خروجیش مگه نباید تصویرم کانوال کنه؟؟؟ 1 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ باز خطا میده خطا: Error: The expression to the left of the equals sign is not a valid target for an assignment. درضمن تو خروجیش مگه نباید تصویرم کانوال کنه؟؟؟ چجوری تغییرش دادی؟ نمیدونم در مورد چی صحبت می کنی، کامل که کد رو بررسی نکردم، فقط گفتم چجوری مشکلش حل میشه. 3 لینک به دیدگاه
SAMA.FA 106 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ اون خطا اول درست شد ممنون ولی موندم چرا اصلا تو خروجی از تصویر خبری نیست؟؟؟؟ و کدوم خط میگه باهم برابر نیست a(i)=b؟؟؟؟؟؟؟؟؟؟؟؟؟ 1 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ اون خطا اول درست شد ممنون ولی موندم چرا اصلا تو خروجی از تصویر خبری نیست؟؟؟؟و کدوم خط میگه باهم برابر نیست a(i)=b؟؟؟؟؟؟؟؟؟؟؟؟؟ کدوم تصویر، یه بردار ویژگی حساب کردی که 11040 درایه داره. کد جدیدت رو میذاری؟ 2 لینک به دیدگاه
SAMA.FA 106 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ کد: Img = imread('D:\image\roz.png'); Img = rgb2gray(Img); Img = im2double(Img) u=8; v=5; m=39; n=39; gaborArray = gaborFilterBank(5,8,39,39); if (nargin ~= 4) end gaborArray = cell(u,v); fmax = 0.25; gama = sqrt(2); eta = sqrt(2); for i = 1:u fu = fmax/((sqrt(2))^(i-1)); alpha = fu/gama; beta = fu/eta; for j = 1:v tetav = ((j-1)/v)*pi; gFilter = zeros(m,n); for x = 1:m for y = 1:n xprime = (x-((m+1)/2))*cos(tetav)+(y-((n+1)/2))*sin(tetav); yprime = -(x-((m+1)/2))*sin(tetav)+(y-((n+1)/2))*cos(tetav); gFilter(x,y) = (fu^2/(pi*gama*eta))*exp(-((alpha^2)*(xprime^2)+(beta^2)*(yprime^2)))*exp(1i*2*pi*fu*xprime); end end gaborArray{i,j} = gFilter; end end figure('NumberTitle','Off','Name','Magnitudes of Gabor filters'); for i = 1:u for j = 1:v subplot(u,v,(i-1)*v+j); imshow(abs(gaborArray{i,j}),[]); end end figure('NumberTitle','Off','Name','Real parts of Gabor filters'); for i = 1:u for j = 1:v subplot(u,v,(i-1)*v+j); imshow(real( gaborArray{i,j}),[]); end end [u,v] = size(gaborArray); gaborResult = cell(u,v); for i = 1:u for j = 1:v gaborResult{i,j} = conv2(Img,gaborArray{i,j},'same'); % J{u,v} = filter2(G{u,v},I); end end [n,m] = size(Img); s=(n*m)/(u*v); s=345; l = s*u*v; featureVector = zeros(l,1); c = 0; for i = 1:u for j = 1:v c = c+1; gaborAbs = abs(gaborResult{i,j}); gaborAbs = downsample(gaborAbs,u); gaborAbs = downsample(gaborAbs.',v); gaborAbs = reshape(gaborAbs.',[],1); % Normalized to zero mean and unit variance. (if not applicable, please comment this line) gaborAbs = (gaborAbs-mean(gaborAbs))/std(gaborAbs,1); featureVector(((c-1)*s+1):(c*s)) = gaborAbs; end end 2 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ کد:Img = imread('D:\image\roz.png'); Img = rgb2gray(Img); Img = im2double(Img) u=8; v=5; m=39; n=39; gaborArray = gaborFilterBank(5,8,39,39); if (nargin ~= 4) end gaborArray = cell(u,v); fmax = 0.25; gama = sqrt(2); eta = sqrt(2); for i = 1:u fu = fmax/((sqrt(2))^(i-1)); alpha = fu/gama; beta = fu/eta; for j = 1:v tetav = ((j-1)/v)*pi; gFilter = zeros(m,n); for x = 1:m for y = 1:n xprime = (x-((m+1)/2))*cos(tetav)+(y-((n+1)/2))*sin(tetav); yprime = -(x-((m+1)/2))*sin(tetav)+(y-((n+1)/2))*cos(tetav); gFilter(x,y) = (fu^2/(pi*gama*eta))*exp(-((alpha^2)*(xprime^2)+(beta^2)*(yprime^2)))*exp(1i*2*pi*fu*xprime); end end gaborArray{i,j} = gFilter; end end figure('NumberTitle','Off','Name','Magnitudes of Gabor filters'); for i = 1:u for j = 1:v subplot(u,v,(i-1)*v+j); imshow(abs(gaborArray{i,j}),[]); end end figure('NumberTitle','Off','Name','Real parts of Gabor filters'); for i = 1:u for j = 1:v subplot(u,v,(i-1)*v+j); imshow(real( gaborArray{i,j}),[]); end end [u,v] = size(gaborArray); gaborResult = cell(u,v); for i = 1:u for j = 1:v gaborResult{i,j} = conv2(Img,gaborArray{i,j},'same'); % J{u,v} = filter2(G{u,v},I); end end [n,m] = size(Img); s=(n*m)/(u*v); s=345; l = s*u*v; featureVector = zeros(l,1); c = 0; for i = 1:u for j = 1:v c = c+1; gaborAbs = abs(gaborResult{i,j}); gaborAbs = downsample(gaborAbs,u); gaborAbs = downsample(gaborAbs.',v); gaborAbs = reshape(gaborAbs.',[],1); % Normalized to zero mean and unit variance. (if not applicable, please comment this line) gaborAbs = (gaborAbs-mean(gaborAbs))/std(gaborAbs,1); featureVector(((c-1)*s+1):(c*s)) = gaborAbs; end end خب کدت نسبت به حالت قبل خیلی تغییر کرده، مطمئنا اندازه بردار gaborAbs که بدست میاری دیگه 345 نمیشه، این خط های آخر رو اینجوری تغییر بده که دیگه این مشکل رو نداشته باشی: برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام s رو اینجا مقدار دهی کنی. 4 لینک به دیدگاه
SAMA.FA 106 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ ممنــــــــــــــــــــــــــــــــــــــــــــــــــون دیگه مقدار S کد حساب میکنه؟ در خروجی دیگه تصویر کانوال نمیکنه مثل موجک ویولت که کانوال کرد 40تا تصویرمیداد؟ 2 لینک به دیدگاه
Imaaan 17059 اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ ممنــــــــــــــــــــــــــــــــــــــــــــــــــون دیگه مقدار S کد حساب میکنه؟در خروجی دیگه تصویر کانوال نمیکنه مثل موجک ویولت که کانوال کرد 40تا تصویرمیداد؟ خواهش می کنم، بله داخل حلقه اندازه بردار gaborAbs حساب میشه و به همون تعداد داخل بردار ویژگی شما (featureVector) درایه برای ذخیره سازی آدرس دهی میشه. اون مرحله رو فکر کنم قبلش انجام دادین دیگه، اینجا ویژگی ها داره حساب میشه از اون خروجی ها اگه اشتباه نکنم. 4 لینک به دیدگاه
hhamidy 885 مالک اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ سلام سما خانوم این کد گابور رو حساب می کنه یا گابور ویولت؟ 3 لینک به دیدگاه
hhamidy 885 مالک اشتراک گذاری ارسال شده در 22 اسفند، ۱۳۹۳ ممنــــــــــــــــــــــــــــــــــــــــــــــــــون دیگه مقدار S کد حساب میکنه؟در خروجی دیگه تصویر کانوال نمیکنه مثل موجک ویولت که کانوال کرد 40تا تصویرمیداد؟ برای این قسمت از کدت imshow رو اضافه کن تا کانولو رو ببینی عزیز: for i = 1:u for j = 1:v gaborResult{i,j} = conv2(Img,gaborArray{i,j},'same'); % J{u,v} = filter2(G{u,v},I); subplot(u,v,(i-1)*v+j); imshow(abs(gaborResult{i,j}),[]); end end 2 لینک به دیدگاه
ارسال های توصیه شده