How to create user defined function in matlab?
    조회 수: 3 (최근 30일)
  
       이전 댓글 표시
    
I have use below set of code frequently. So i have to make user defined function
below is my frequently used code:-
            x=xvalue;
            y=yvalue;
            for j=1:3;
                red(j)=RGB(y,x,j);
            end
            shape.color=red;
댓글 수: 2
  Azzi Abdelmalek
      
      
 2014년 1월 22일
				Can you explain what are the argument (inputs and outputs) of your function?
채택된 답변
  Image Analyst
      
      
 2014년 1월 22일
        
      편집: Image Analyst
      
      
 2014년 1월 22일
  
      I think this is the minimum necessary:
function shape = myFunction(RGB, xvalue, yvalue, i)
  x=xvalue;
  y=yvalue;
  for j=1:3;
    red(j)=RGB(y,x,j);
  end
  shape(i).color=red;
Optionally, x, y, and red could also be outputs, and shape could also be an input. Be aware that the "red" variable actually contains the red, green, and blue values from the pixel at (y, x).
댓글 수: 6
  Walter Roberson
      
      
 2014년 1월 23일
				shape.color=red;
creates "shape" as a structure with a field "color" that it sets to the content of "red". Then your statement
shape=shape.color
overwrites "shape" with the contents of the field "color", into which you had written the content of "red". The net effect of your code is as the same as if you had changed those last two lines to
shape = red;
  Image Analyst
      
      
 2014년 1월 23일
				Do you want a structure or not? If there is only one field, then I see no reason at all to use a structure. Just use a simple variable.
추가 답변 (1개)
  Walter Roberson
      
      
 2014년 1월 22일
        function shape = myFunction(RGB, xvalue, yvalue, i)
  shape(i).color = squeeze(RGB(xvalue, yvalue, :));
댓글 수: 2
  Walter Roberson
      
      
 2014년 1월 22일
				The output variable is "shape", as listed in the function header. The "shape" that is output will be a structure array with a single field "color", with the "i"th element of the structure array populated with meaningful data and the rest of the shape(K).color will be the empty array []
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



