## how can I find the coordinates of the central axis of a river in an image (binary)?

### Hernán Madrid Oyarzún (view profile)

on 11 Nov 2019 at 14:43
Latest activity Commented on by Hernán Madrid Oyarzún

### Hernán Madrid Oyarzún (view profile)

on 25 Nov 2019 at 23:47

### Matt J (view profile)

I am trying to find a vector that contains the midpoint or talweg of an image of the Valdivia River (Chile) To do this I am using a code that I found on this page, I attached it. The problem is that with the example there is no problem, but when changing to my image I get an error. help!! clc
clear all
imshow(a);
impixelinfo
b=im2bw(a);
figure,imshow(b)
imfinfo('1.png')
impixelinfo
E = edge(b);
figure;imshow(E)
c=imcomplement(E);
figure,imshow(c)
impixelinfo
[col row]=size(c);
k=1;
count=1;
for i=1:col
for j=1:row
if c(i,j)==0
[j i]
if i==i
z(k)=j
k=k+1;
g=i;
end
count=count+1;
end
end
k=1;
if (z(2)-z(1))>2
av=(z(1)+z(2))/2;
hold on
plot(av,g,'.')
else
av=(z(1)+z(3))/2;
hold on
plot(av,g,'.k')
end
end

### Matt J (view profile)

on 11 Nov 2019 at 16:36
Edited by Matt J

### Matt J (view profile)

on 11 Nov 2019 at 18:51

C=watershed(bwdist(A))==0;
[icoords,jcoords]=find(C); %coordinates of center line
imshow(A+C) on 11 Nov 2019 at 16:46
Great approach!
Where did A come from?
Matt J

### Matt J (view profile)

on 11 Nov 2019 at 16:56
It's just a cropping of the image in the original post.