Feasability and suggested approach to detect river-waterlevels?

Hi everyone.
I am new to CV (or, actually not even started yet), so assume no specific knowledge on my side…

I want to read waterlevels from pictures like these here:
https://data.rivermap.org/wassenphoto/hs-index2.php
(remove the filename part if the page is broken).

Ideally, i would want a cm reading. For this, it would be probably simplest to read a strain-gauge mounted or painted against a big rock.
But this is not feasable in many places like the above shown.
So, even if i can’t get a cm-reading from the image, any kind of number would be better than the raw image. Smoething that can be used to plot a (possibly not very accurate) graph.
The camera could also supply short video clips, if it would make detecting water-movement easyer.
In general, i wonder what experienced people think about the difficulty, best approach and possibly prior work.

I imagine the moving water (or generally water) vs. land could be detected and the ratio would be a number that i could use.
But as i have almost no knowledge about CV, there might be totally differnt approaches to this.
Also, i have read that IR images could help in detecting water vs. land. But looking at the ir-images, i don’t see immediately how this would help.

So, i hope to get some tips from people here. Or, maybe someone is even interested in the challenge and wants to contribute more? You would be more than welcome to contribute.

deep learning.

I doubt anything less will do… anything less effectively amounts to building an overly complicated sensor. you can have that cheaper and more reliably without any camera involved.

collect pictures.
collect “good” measurements in any way. some sensor a mile up/downstream, someone wades in there with a yard stick, anything. collect water level (height), but I’d also suggest also some measure of volume flow, if possible.

train the network to make the right predictions. from then on you can skip the extra work.

the network may have to be retrained once in a while because the river changes. you can get away with training it on its own predictions. that’ll make it “confident” in its own opinion (even if it drifts away from real measurements), rather than gradually get insecure and perhaps output something ridiculous. it’s always best to update with real measurements.

not necessarily video itself, but some estimation of optical flow (which takes 2+ frames of video) can probably help a lot. visible agitation probably correlates well with velocity and volume.

that’s just my opinion. I have no background in geology or anything. there is very likely a ton of research (or should I say “publications”) on this already…

what’ that ? please kindly explain :slight_smile:

I’m guessing centimeters

Thanks. Yes, i mean centimeters.

There’s a lot of points that i dont understand properly:

With “sensor”, you mean a setup in opencv?

You mean by using a water pressure-, ultrasonic-, etc. sensor? Yes, but they can not be used in many places. There, a camera seems like a good option.

Ok. I could also just give numbers to pics without doing physical measurements.
I guess they could be dimensionless numbers, just 0 to n from min. to max. flow. For that, i just have to look at images and attach numbers to them.

Do u think volume (m3) would be better/easyer for the training? If so, why?
Sure, if we can choose, we prefer m3 over cm as end-result, but it’s very complicated to get: You do many depth measurements in a cross-section, then measure (or estimate) flow-speeds and calculate from there. Speed changes with volume, etc. So this is not really practically doable. Even for cm’s, it would be complicated, as different flows would mean going there on different days.

“Train” would mean feed the network images and associated height-values and let it predict which new image fits to which number, without trying to explicitly attempt to identify water vs land, as i wrote in my initial post?

I’d like to know some background.

who’s commissioning this? who’s executing this? it doesn’t seem like any research facilities are involved, why not? what cooperation is there?

a lot of these issues are probably already solved, if you talk to the right departments at universities that are dealing with “Hydraulic Engineering and Water Resources Management” and so on. you shouldn’t reinvent the wheel, as one might say.

by “sensor” I mean “black boxes” that quantify reality. that can be as complex as a “sensor” for barcodes and QR codes, which also contains a camera, but its “interface” is so simple and its guts are so robust, that you can treat it as absolutely reliable magic that tells you precisely one type of information and nothing else.

This is a private initiative by some paddlers, and as the result of it would be interesting for paddlers in general, the swiss kayak federation is willing to support whoever works on it.
Sure, i know of some Academic projects that go in that direction, but to get something from them, i think one needs a more formal approach and greater support&funding. I might be wrong, and if you have more advice and/or curiousity, i’d love to chat with whomever. Just PM or mail me.

swiss, eh?

I find that academics are often willing to give free advice. try contacting them. they may know some proven solutions nobody here would know of.