필터 지우기
필터 지우기

Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

question about fun defining

조회 수: 1 (최근 30일)
Andrea
Andrea 2012년 7월 17일
마감: MATLAB Answer Bot 2021년 8월 20일
I want to create this fun as below:
R=rand(100);
diff=rand(25);
sum_r1=rand(25);;
fun =@(x) x(:)+x(:).*diff(:)./sum_r1(:);
R_im=nlfilter(R,[2 2],fun);
In fact, I want to add the amount of (diff/sum_r1).x(:) in each neighborhood of 2 by 2 to x(:); I mean I have 1 diff and 1 sum_r1 for every 2 by 2 neighborhood of R. But it gives me an error!
Can anybody please help me?
  댓글 수: 4
Walter Roberson
Walter Roberson 2012년 7월 17일
편집: Walter Roberson 2012년 7월 17일
In your code, you do not have 1 diff and 1 sum_r1 for each 2 x 2 neighborhood in R: in your code, you have 1 diff and 1 sum_r1 total
Also, watch out: there are 2500 non-overlapping 2 x 2 neighborhoods in a 100 x 100 matrix, not merely 25. And nlfilter() does sliding windows, not non-overlapping windows.
Perhaps you should consider using blkproc() instead of nlfilter()
Andrea
Andrea 2012년 7월 17일
Thanks. I will give it a try.

답변 (0개)

이 질문은 마감되었습니다.

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by