How do I put this formula int matlab?

z=imread('C:\Users\*****\Desktop\Matlab\Homework 3-02 03 04 05\Fig308a.jpg');
for i=1:255
y(i)=sum(z(:) == i);
end
n=488*373;
for j=1:255
s(j)=symsum(y(k)/n, k, 1, j); %% Talking about this part.
end
bar(y), figure, imhist(z), figure, bar(s)
Long story short, what I want to get is such that:
s(1)=y(1)/n
s(2)=y(1)/n+y(2)/n
...
I get the error saying:
"Invalid indexing or function definition. Indexing must follow MATLAB indexing. Function arguments
must be symbolic variables, and function body must be sym expression."
Ekran Alıntısı.PNGOriginial formula.
What should i use?

2 个评论

I am not able to interpret your formula but if the concept is this
s(1)=y(1)/n
s(2)=y(1)/n+y(2)/n
... then why not
cumsum(y/n) % ?
[comment moved to answer section]
Exactly what I am searching for. I tried to search summation types on matlab but couldn't come to this title. Thank you very much.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Logical 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by