Structure inside a while loop && pixel distance

3 ビュー (過去 30 日間)
tabw
tabw 2014 年 8 月 12 日
編集済み: Ben11 2014 年 8 月 12 日
I want to create a structure that stores my array inside a loop
for Example Every time it will generate a data stored in result array. let's say, I have N result. I want to stored into a 1XN structure. How to do that inside a loop?
I have tried for i=1:10
second Qusetion, For example, I have a M x N array. a pixel (m,n) And I used j=(n-1)*M+m convert pixel into the order in Array(:) Is there a way to know the distance between two pixels?
like (3,2) and (3,3) just have 1 unit distance
s=struct('num2str(i)',{result})
But it won't work
Thanks

採用された回答

Ben11
Ben11 2014 年 8 月 12 日
編集済み: Ben11 2014 年 8 月 12 日
Something like this?
N = 10;
YourStructure(N).result = zeros(15); % Initialize the structure
for k = 1:N
YourStructure(k).result = rand(15); % store your array in the structure;
end
EDIT:
To use a while loop (I based my previous answer on your for-loop sorry):
N = 10;
YourStructure(N).result = zeros(15);
k = 1;
while k<=N
YourStructure(k).result = rand(15);
k = k+1;
end
======= For your 2nd question, the distance is calculated like so:
Distance =sqrt((y2-y1)^2+(x2-x1)^2)
with the coordinates of the pixels being [x1 y1] and [x2 y2].

その他の回答 (1 件)

Joakim Magnusson
Joakim Magnusson 2014 年 8 月 12 日
編集済み: Joakim Magnusson 2014 年 8 月 12 日
You are trying to create field names named 1,2,3 ... but that is not possible because the field name have to start with a letter.

カテゴリ

Help Center および File ExchangeStructures についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by