필터 지우기
필터 지우기

3D Gaussian Decay from 1 to 0

조회 수: 1 (최근 30일)
Inês Rodrigues
Inês Rodrigues 2015년 5월 26일
댓글: Inês Rodrigues 2015년 5월 26일
I'm doing a model in matlab and I want that, when my variable k is 1, it decays to 0 by a gaussian pattern. It's a 3D model, so the maximum 1 would decay in every direction. The result would be a matrix with the ones k gave me and the other elements between 0 and 1. Could you please help me?

채택된 답변

Image Analyst
Image Analyst 2015년 5월 26일
편집: Image Analyst 2015년 5월 26일
If you have the Image Processing Toolbox, you can use fspecial(). Of course since it's Gaussian, it will decay towards zero, not to zero. Gaussians can never equal zero.
If you don't have that toolbox, just use meshgrid() and exp() to create the Gaussian pattern. In fact, this might be easier for the 3D case since with fspecial, it just creates a 2D Gaussian so you'd have to call it repeatedly to get the third dimension of a 3D Gaussian "ball".
  댓글 수: 3
Image Analyst
Image Analyst 2015년 5월 26일
Of course, just use x - xCenter. The usual offset formula like for all mathematical formula like you're used to. But you're not creating a 3D matrix, you're creating a 2D one. Just look - 2 indexes. That means it's 2D. If it were 3D, you'd have to have 3 indexes, one for x, one for y, and one for z.
Inês Rodrigues
Inês Rodrigues 2015년 5월 26일
Thank you!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

태그

Community Treasure Hunt

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

Start Hunting!

Translated by