Help doing the average between successive (1,2) cells of two different arrays?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Jacob
il 30 Mar 2014
Modificato: Azzi Abdelmalek
il 30 Mar 2014
Hi! I have a (250,2) array and i divide that array in two array: one contains the even rows and the other the odd rows. Those coordinates are points and i want to find the mid point of those two points(the odd one and the even one, between 1 and 2, then between 2 and 3, then between 3 and 4, and so on...) Is there a way to do this?
Thank you very much
0 Commenti
Risposta accettata
Image Analyst
il 30 Mar 2014
Modificato: Image Analyst
il 30 Mar 2014
Try this:
a = rand(250, 2); % Sample data
% Make kernel to do the averaging.
kernel = [1;1]/2;
% Make every row of b the average or two adjacent rows of a.
b = conv2(a, kernel, 'valid')
It give you exactly what you're asking for. With your example data:
a =
4 3
2 2
3 3
4 2
b =
3 2.5
2.5 2.5
3.5 2.5
0 Commenti
Più risposte (1)
Azzi Abdelmalek
il 30 Mar 2014
Modificato: Azzi Abdelmalek
il 30 Mar 2014
a=rand(250,2)
a1=a(1:2:end,:);
a2=a(2:2:end,:);
b=(a2+a1)/2
4 Commenti
Azzi Abdelmalek
il 30 Mar 2014
Modificato: Azzi Abdelmalek
il 30 Mar 2014
I think you need this
a =[ 4 3
2 2
3 3
4 2]
a1=a(1:end-1,:)
a2=a(2:end,:,:)
b=(a1+a2)/2
Vedere anche
Categorie
Scopri di più su Elementary Polygons in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!