رفتن به مطلب

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

ارسال شده در

سلام

این فعلا گابور حساب میکنه بعدگابور ویولت:a030:

  • Like 1
  • پاسخ 90
  • ایجاد شد
  • آخرین پاسخ

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

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

ارسال شده در

اضافه کردم ممنون

برای 40 تاتصویر خروجی چطوری بردارویژگی حساب میشه؟

  • Like 1
ارسال شده در

سلام

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

  • 1 ماه بعد...
ارسال شده در

سلام

کد فیلتر بالاگذر گوسی رو میشه در این تاپیک بگذارید ممنون

  • Like 2
  • 2 هفته بعد...
ارسال شده در

سلام چطوری میتونم از فیلتر گابور گوسی استخراج وِیژگی کنم؟

  • Like 2
  • 2 هفته بعد...
ارسال شده در

1. گفته میانگین اول حساب کن

2. برای بلوک k*k پیکسلهای بزرگتراز یک که میانگین حساب می کنیم بعد باهم جمع می کنیم ودر S قرار می دهیم

3. اگر پیکسلی نبود بجاش برای محاسبه k=g،S که K اندازه بلوک هاست

4. S رو به عنوان ویژگی توی بردار ستونی قرار می دهیم

5. مرحله 2 تا 4 را برای بلوک های دیگه حساب می کنیم.

 

 

من اول میانگین تصویر خروجی حساب کردم;( g=mean(img_out_disp

برای مرحله 2و3و4و5 چهجوری کد بنویسم؟؟؟؟

  • Like 2
ارسال شده در
1. گفته میانگین اول حساب کن

2. برای بلوک k*k پیکسلهای بزرگتراز یک که میانگین حساب می کنیم بعد باهم جمع می کنیم ودر S قرار می دهیم

3. اگر پیکسلی نبود بجاش برای محاسبه k=g،S که K اندازه بلوک هاست

4. S رو به عنوان ویژگی توی بردار ستونی قرار می دهیم

5. مرحله 2 تا 4 را برای بلوک های دیگه حساب می کنیم.

 

 

من اول میانگین تصویر خروجی حساب کردم;( g=mean(img_out_disp

برای مرحله 2و3و4و5 چهجوری کد بنویسم؟؟؟؟

 

خب همین میانگین رو هم درست ننوشتی که.

  • Like 2
ارسال شده در

خب پس میانگین چهجوری حساب میکنن؟؟این درسته؟

 

;( g=mean2(img_out_disp

  • Like 1
ارسال شده در

آیا این درسته برای مرحله 2؟

g=mean2(img_out_disp);

im=imread('D:\image\roz12.png');

im=imresize(im,[92 112]);

im=rgb2gray(im);

k=1:16;

[h,w]=size(im);

for i=1:15:h-15

for j=1:15:w-15

imblock=im(i:i+15,j:j+15);

s=sum(img_out_disp(:));

end

end

imshow(imblock)

  • Like 1
ارسال شده در

برای استخراج بردارویژگی فیلتربالاگذرگوسی این کد درسته؟؟؟

 

clc;

clear;

a=im2double(imread('D:\image\roz11.png'));

a = rgb2gray(a);

figure,imshow(a),title('main image','fontsize',15);

H =fspecial('gaussian' ,[16 16],2);

hpg= imfilter(a,H);

figure,imshow(hpg),title('matlab gausian filter','fontsize',15);

 

[m,n]=size(a);

high_filter=zeros(m,n);

f_transform=fft2(a);

f_shift=fftshift(f_transform);

p=m/2;

q=n/2;

d0=70;

for i=1:m

for j=1:n

distance=sqrt((i-p)^2+(j-q)^2);

high_filter(i,j)=exp(-(distance)^2/(2*(d0^2)));

end

end

temp=high_filter.*f_shift;

x=real(ifft2(double(temp)));

figure,imshow(x,[]),title('my high pass gaussian filter','fontsize',15);

 

A=conv2(H,x,'same');

[u R]=eig(A)

(B=eig(A

 

  • Like 1
ارسال شده در
خب پس میانگین چهجوری حساب میکنن؟؟این درسته؟

 

;( g=mean2(img_out_disp

 

آره، درسته.

آیا این درسته برای مرحله 2؟

g=mean2(img_out_disp);

im=imread('D:\image\roz12.png');

im=imresize(im,[92 112]);

im=rgb2gray(im);

k=1:16;

[h,w]=size(im);

for i=1:15:h-15

for j=1:15:w-15

imblock=im(i:i+15,j:j+15);

s=sum(img_out_disp(:));

end

end

imshow(imblock)

 

فکر کنم باید با میانگین مقایسه بشه، متن انگلیسیش رو هم بذار، s هم اینجا یه مقدار فقط نگه میداره.

برای استخراج بردارویژگی فیلتربالاگذرگوسی این کد درسته؟؟؟

 

clc;

clear;

a=im2double(imread('D:\image\roz11.png'));

a = rgb2gray(a);

figure,imshow(a),title('main image','fontsize',15);

H =fspecial('gaussian' ,[16 16],2);

hpg= imfilter(a,H);

figure,imshow(hpg),title('matlab gausian filter','fontsize',15);

 

[m,n]=size(a);

high_filter=zeros(m,n);

f_transform=fft2(a);

f_shift=fftshift(f_transform);

p=m/2;

q=n/2;

d0=70;

for i=1:m

for j=1:n

distance=sqrt((i-p)^2+(j-q)^2);

high_filter(i,j)=exp(-(distance)^2/(2*(d0^2)));

end

end

temp=high_filter.*f_shift;

x=real(ifft2(double(temp)));

figure,imshow(x,[]),title('my high pass gaussian filter','fontsize',15);

 

A=conv2(H,x,'same');

[u R]=eig(A)

(B=eig(A

 

 

من نمی دونم منظورش چیه، قرار بود یه توضیحی در مورد فیلترات بدی، high_filter پایین گذر نیست؟

  • Like 2
ارسال شده در

اینم متن انگلیسی:

 

1. Find α g = [mean of (GF)].

2. For each block B of size k×k pixels, find pixels (x, y) in

B such that    G x y g F ,  , then consider the sum of all

the pixels that satisfy the above criteria consider the sum

as S   G F  x , y  .

3. If no such pixel exists then take S=k × α g , where k is a

constant, here k is taken as the block size.

4. Store S i.e., the feature points into the column vector

i O .

5. Repeat step 2 to step 4 for all the blocks.

End

  • Like 1
ارسال شده در

high_filter بالاگذر

خب اول رو گوسین تبدیلات انجام دادم بعد بالاگذر بعد بالاگذر و گوسین باهم کانوال کردم شده فیلتربالاگذر گوسی بعد از طریق بردارویژه ،بردار فیلتر بالاگذر گوسی رو بدست اوردم. بنظرتون برداری که بدست اوردم درسته؟

 

 

ضمنا گفتین میانگین مقایسه ،میشه واضحتر بگین .

  • Like 1
ارسال شده در

من یه کد دیگه هم برای فیلتر بالاگذر گوسی نوشتم ولی موقع اجرا ارور میده نمیدونم چهجوری ارورشو درست کنم؟؟؟

کد:

f=im2double(imread('D:\image\roz.png'));

f = rgb2gray(f);

f=imresize(f,[92 112]);

PQ=paddedsize(size(f));

D0=0.5*PQ(1);

PQ(1)=PQ(2);

H=hpfilter('gaussian',PQ(1),PQ(2),D0);

g=dftfilt(f,H);

figure,imshow(g,[])

 

خطا:

Error using hpfilter

Too many input arguments.

  • Like 1
ارسال شده در
اینم متن انگلیسی:

 

1. Find α g = [mean of (GF)].

2. For each block B of size k×k pixels, find pixels (x, y) in

B such that    G x y g F ,  , then consider the sum of all

the pixels that satisfy the above criteria consider the sum

as S   G F  x , y  .

3. If no such pixel exists then take S=k × α g , where k is a

constant, here k is taken as the block size.

4. Store S i.e., the feature points into the column vector

i O .

5. Repeat step 2 to step 4 for all the blocks.

End

 

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

 

 

من یه کد دیگه هم برای فیلتر بالاگذر گوسی نوشتم ولی موقع اجرا ارور میده نمیدونم چهجوری ارورشو درست کنم؟؟؟

کد:

f=im2double(imread('D:\image\roz.png'));

f = rgb2gray(f);

f=imresize(f,[92 112]);

PQ=paddedsize(size(f));

D0=0.5*PQ(1);

PQ(1)=PQ(2);

H=hpfilter('gaussian',PQ(1),PQ(2),D0);

g=dftfilt(f,H);

figure,imshow(g,[])

 

خطا:

Error using hpfilter

Too many input arguments.

 

این فانکشن هایی که استفاده کردی رو نمیشناسم، میگه تعداد ورودی هات زیاده.

  • Like 2
ارسال شده در

خب چطوری تعداد ورودی هارو کمتر کنم؟؟

  • Like 1
ارسال شده در

خب من اول باید میانگین تصویر بدست بیارم بعد چیکار کنم راهنمایی کنید؟:ws38:

  • Like 1
  • 2 هفته بعد...
ارسال شده در
اینم متن انگلیسی:

 

1. Find α g = [mean of (GF)].

2. For each block B of size k×k pixels, find pixels (x, y) in

B such that    G x y g F ,  , then consider the sum of all

the pixels that satisfy the above criteria consider the sum

as S   G F  x , y  .

3. If no such pixel exists then take S=k × α g , where k is a

constant, here k is taken as the block size.

4. Store S i.e., the feature points into the column vector

i O .

5. Repeat step 2 to step 4 for all the blocks.

End

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

iodxnu4r58nl2pljvw20.png

  • Like 2
ارسال شده در

سلام

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

اگه کسی کمک کنه ممنون میشم

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

  • Like 2
ارسال شده در

چرا این کد خطا میده بنظرتون؟؟

 

clear;

img = imread('D:\image\roz.png');

 

figure;

subplot(121)

imshow(img)

g = mean2(img);

k=16;

[h,w]=size(img);

n = 1;

for i=1:k:h

for j=1:k:w

imblock=img(i:i+k-1,j:j+k-1);

if nnz(imblock>g)>0

S(n) = sum(imblock(imblock>g));

else

S(n) = k * g;

end

n = n+1;

end

end

subplot(122)

imshow(reshape(S,h/16,w/16)',[],'InitialMagnification','fit')

 

 

اینم خطاش؟

 

Index exceeds matrix dimensions.


×
×
  • اضافه کردن...