Matlab - perform a function of all matrix cells
2 ビュー (過去 30 日間)
古いコメントを表示
Hello,
I have loaded a grayscale image into img so now I have a one matrix in it.
Now I used plot to show a graph of a function and I would like to use this function over all of the matrix values and actually change the gray values of the image.
I do know the "A(A>0) = value" function but I'm not sure how to use it with the plot I've made.
XData=get(get(gca,'children'),'XData');
YData=get(get(gca,'children'),'YData');
% Get y value for x=3.33 - NOT a data point.
y_3p33 = interp1(XData,YData,3.33,'spline')
(c) paulo silva http://www.mathworks.com/matlabcentral/answers/1353 so this is actually the way of getting the new Y point for each value but how can I use it over all the matrix cells in a fast way? (actually in any way)
thank you!
1 件のコメント
Jan
2012 年 11 月 13 日
Please use meaningful tags. Obviously all questions in thius forum concern "matlab code".
Do you mean "matrix elements"? "Cells" are a special type of arrays, which can contain elements of different types.
回答 (2 件)
Jan
2012 年 11 月 13 日
Please use meaningful tags. Obviously all questions in thius forum concern "matlab code".
Do you mean "matrix elements"? "Cells" are a special type of arrays, which can contain elements of different types.
I do not see the connection between the XData and YData of your graph and the loaded image. What exactly is a "one matrix"? Are you looking for:
A2 = reshape(interp1(XData,YData, A(:), 'spline'), size(A));
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Resizing and Reshaping Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!