Qwatercam - Tracking swimmers from underwater

Underwater footage - the problem

I think we can all agree that underwater swimming footage is cool and useful. It gives swimmers, coaches, and spectators a better view into how the swimmer is moving through the water that a normal pool deck view can’t really provide. The angle of view from the pool deck, plus all the refraction and bubbles from the water, make it difficult to see what’s going on. What happens underwater is really how we generate force and, well, swim fast.

For big meets like Worlds and the Olympics, we’ve solved this problem by having massive trolley setups that can move the entire length of the pool, and even rotate on an axis to get different angles. They look like the image below and you’ve probably seen Youtube videos of full race footage taken from these cameras (Here’s one of my favorites (link). I personally think this is an awesome view, and given the view counts these videos get, lots of other people do too.

An underwater camera trolley beside a swimming pool
Leviathan

These trolleys are great for TV broadcasts, but aren’t realistic for your average team or swimmer. Teams don’t have $100k to casually throw at a full setup, and most pools don’t even have the space or shape for a trolley to work. So instead, we resort to GoPros or cheap aquarium cameras like this that reduce price and setup time at the cost of functionality.

The functionality hit we take with these cameras is pretty significant. They only give you a single fixed perspective, and you’re in frame for maybe three or four seconds max per length. Any adjustments require someone (either a swimmer or a coach) to physically move the camera and set it up in another position. Since nobody wants to be doing that mid practice, the view you start with is typically the only one you get for the whole session.

When I was swimming, I was never a fan of these setups. It usually leads to one of a few not-great scenarios:

  • Scenario 1: You rotate swimmers in and out of a “camera lane”, with everyone taking turns doing a specific action for the camera (turns, stroke, etc), one swimmer at a time.
    • This is pretty disruptive and inefficient for swimmers. Let’s say you have a 15 minute camera session. Most swimmers would, individually, only get around 30 seconds of footage. Maybe a minute if there are only a small number of other swimmers getting filmed (so we can rotate through everyone faster). Keep in mind that’s total footage over the session, and isn’t continuous. It’ll probably be in four or five 15 second clips that the coach or swimmers have to manually look through and splice together.
    • This isn’t a good representation of how we swim most of the time. It’s too easy to mask problems in your technique when you’re being filmed for such a short window. Anecdotally, I can tell you my stroke always looked great when I did a couple swims for the camera. It probably didn’t look as good on the tenth 200 threshold of a practice, or more importantly, at the end of an actual race.
  • Scenario 2: You have the camera constantly rolling for a large chunk of practice while you do a “normal” set, and share the whole video file after practice.
    • I’ve seen this less often, but it emphasizes how little footage of ourselves we actually get. If you have a raw 30 minute clip of a lane, only about 20-30% of that will have you in frame, and that footage is heavily fragmented. Reviewing it requires either manually scrubbing and rewinding, or actually watching the whole video and spending 80% of your time not watching yourself swim.
  • Scenario 3: You have a complex multi-camera system that’s setup around your pool
    • Scaling up the number of cameras might seem like the initial solution, but in practice it just exacerbates the problems we already have. Setup time and cost both increase with each new camera you setup, and now you have to parse through and splice multiple streams to get the footage you want.

Ideally, cameras should be empowering our training, instead of us having to modify practice to get meaningful value from them. So we need a way to gather footage efficiently without totally throwing a wrench in the flow of practice.

How do we solve this?


The underwater trolley is a good “ideal” system that solves the problem of keeping a swimmer in frame and having continuous footage over a long period of time. If you could set up something like a trolley instantly, and for free, in any pool, I’m sure most teams would love that (I certainly would). But we already established this isn’t feasible for your average club or college team. Instead we need something that’s scalable and cost-effective while also giving footage that’s somewhat comparable to what’s provided by a trolley.

I like to think of the current systems available with this graph below. On one axis you have the cost and complexity of the system you’re using. On the other axis you have the observability of the swimmer you’re filming. To be more specific, observability refers to:

  1. how clearly you can see the features of a swimmer’s stroke, and
  2. how often the swimmer is actually in the frame
Comparison of camera system cost and swimmer observability

The static cameras are the economic solution: low cost with the drawback of only being able to see the swimmer for a short amount of time. You can scale them up to a point of having about 3 or 4 in your pool to get more angles and footage time, but that takes extra setup and requires you to constantly switch feeds. Conversely, the trolley setup is the ultimate high end solution: perfect footage all the time, but you need operators, installation time, and most importantly, money.

We weren’t really satisfied with any of these options, which is why we made Qwatercam.

Qwatercam is a self tracking underwater swim camera built for short course pools. Its design is simple: you plug it in and place it on the bottom of the pool, roughly near the middle. Then, onboard AI vision models automatically detect swimmers, and internal servos rotate the camera to track any swimmer selected by the coach.

Here’s a demo of the footage that Qwatercam gets:

[demo video]

On the graph we saw earlier, this is where Qwatercam is:

Comparison placing Qwatercam between static cameras and trolley systems

We get a massive increase in stroke observability, while still maintaining (or lowering!) the cost of current static camera systems.

Let’s explore the features that make Qwatercam special.

Video feed

You interact with Qwatercam through your choice of a desktop app or (in development) iOS app. You can select either live video (~200 ms delay) or playback video, where you can view and scrub through the past five minutes of footage. Live and Playback footage always stream at 1080p, 30 FPS.

You can start and stop recording anytime you want. There’s no limit to how long your recordings can be, and once you stop recording, the video is saved locally to your device.

Camera movement and Tracking

Qwatercam has two movement modes: Manual and Tracking.

Manual is just what it sounds like: you can pan and tilt the camera using the joystick in the bottom right of the app. Alternatively, you can hook up an Xbox controller and move the camera with the joystick. Flight stick support included!

Manual control alone would be enough to set us apart from currently available systems. But with Qwatercam, we went one step further, and implemented Tracking. Once you press “Toggle Tracking”, Qwatercam will be begin detecting swimmers in frame. Then, clicking on any swimmer in your video feed will cause Qwatercam to start tracking them.

You can even turn on bounding box viewing to see what Qwatercam is detecting in real time.

Even with multiple swimmers in frame, Qwatercam is able to identify and track the swimmer you choose, regardless of if their orientation changes or they get obstructed by another swimmer for a short time.

High(er) Quality Video

Ever notice how most swimming videos look cloudy, blurry, and blocky? There are a lot of reasons for this, but the biggest one is that most video formats don’t have the bitrate to support the fine detail in the water like ripples and bubbles. Qwatercam solves this by streaming video at 15 Mbps, which is three times more than most standard 5 Mbps 1080p videos.

If you don’t know what that last paragraph means, just know that Qwatercam videos are always crisp, clear, and high quality, whether you’re viewing locally on your device or in the cloud.

Power

Qwatercam is powered by Power over Ethernet (PoE). Each Qwatercam purchase comes with a network switch that serves as the central hub where you connect your Qwatercam unit and your device. Once connected, Qwatercam automatically turns on and begins streaming.

Currently in development is an internal battery powered version of Qwatercam. With this, you won’t be constrained by proximity to a wall outlet near your pool, and can connect directly to your choice of laptop or mobile device with an ethernet adapter (also included).

Cost

Qwatercam starts at $1,399. With that purchase, you get the real, physical Qwatercam unit. And it’s yours. Forever. No subscription is needed to use any of the features we just described. That being said, we also offer an optional cloud subscription described below.

Video Delivery, and optional cloud subscription

The most common way for coaches to share footage with their swimmers is either through Google Drive or Youtube. This is an OK solution, but both those services actually reduce the quality of your video in their streams. And like we mentioned earlier, Qwatercam streams at a higher bitrate to get more details of the swimmers and water. Even in the Youtube video earlier, the quality is lower than what Qwatercam outputs. To get the full quality, you would have to download the whole video file from Google Drive, which kind of eliminates the point of cloud streaming. If it’s on Youtube, your original quality is just gone.

Below is a comparison of the image quality you get on Qwatercam (top) vs Google Drive/Youtube (bottom).




Enjoy Reading This Article?

Here are some more articles you might like to read next:

  • Epilogue
  • The Weekend Free Time Paradox
  • Observations in swimming no one talks about
  • Collaboration is the key to my productivity
  • Winning the Bridge to Bridge swim