Action-Packed Weekend at Lake Coeur d’Alene

I was able to get my ROV working Friday afternoon after being down for 70 days, and It’s a very good thing because I had a great weekend and did 8 dives. The lake is very warm at 74 degrees so there might be an algae explosion soon. The camera quality seems to be significantly better than I remember it being. An annoying thing is that I keep moving the Newton gripper since it uses the same buttons as the camera tilt and I apparently don’t hit the shift button correctly. I also have to choose before the dive to either have the Newton extended and ready to use, or retracted so it doesn’t block half of the video.

These dive videos aren’t in any particular order.

Umbrella Rescue

I though that the shipwreck was going to be my headline adventure, but my favorite dive was rescuing a neighbor’s umbrella that fell of of their dock. There wasn’t much coordination other than I would attach the hook and they would pull it up. I was expecting them to hold the hook in midwater so I could grab it where I wanted to, but they though that I would pick it up from the bottom.
0:49 I see the umbrella
3:36 First attempt with Newton gripper
4:42 Second attempt with Newton gripper
6:43 Hook and rope is deployed
11:43 First hook attempt
13:23 Second hook attempt
14:03 First time trying to pull it up
16:33 Third hook attempt
16:59 Pulling it up

You can see that at 5:20 the ROV is capable of lifting the umbrella, but I wasn’t able to control the direction so I dropped it and used the hook and rope. I got a little adrenaline rush around 11:30 when I realized that it might be a little more challenging than I was expecting and I could ruin the video if I did something stupid, but I was able to keep my hands steady.


Here’s the shipwreck. There was about a 10 minute period where there was about a half second latency between my control inputs and the video feed. You can see the video stream cutting out around 25:36. It seems like the latency was only when the tether was also snagged on the steel siding, so maybe the steel was causing some interference? I feel a little bad for possibly damaging the wreck by possibly loosening the side panel with the tether, but it was also a good experience for me. I dragged the ROV in at the end of the dive to save power since it was at 13.75 volts and we wanted to check out Beauty Bay right after this dive.

Apparently they used to strip down the wood steamboats and burn them for the 4th of July celebrations. This is one of those boats since you can see a lot of charred wood on the inside of the bow.

3:49 See Shipwreck
27:56 Tether gets caught on wreck
33:53 Exploring past the wreck to see if anything else is out there
49:38 ROV gets caught on a rope or hose

Beauty Bay

Then we went to Beauty Bay right after the shipwreck just seeing what was there. I was only planning a 15 or 20 minute dive since the battery was just under 14 volts at the start. I got lucky and found a truck and anchor right away. We are planning on going back for the anchor in a few weeks and try our rope and hook method again, though this will be harder with the mud getting stirred up.
1:34 Arrive at bottom
3:46 Truck
9:20 Anchor
21:31 Chew Toy?

Dusk Adventure

After I fixed the ROV in the late afternoon and completed the test dive, I did another dive as the sun was going down to see if I could see any catfish or other fish that don’t come out during the day. I wanted to look at a neighbor’s cool dock since it’s a frame made of concrete logs and filled in with rocks. I needed the Ping360 to guide me to it. You can see it in the top center:

8:54 Group of Bass
11:39 Plastic bucket under tree stump
28:32 Neighbor’s concrete dock
34:54 Neighbor’s water pump

Boat Lift Inspection Practice

I looked at the neighbor’s boat lift to practice my inspection skills and get better at precise maneuvering. They didn’t seem to be home and as far as I know they don’t care if I use the ROV around their dock.
11:51 Boat lift
15:10 ROV get caught on something
28:53 A boat went almost directly over the ROV. I though they were going to hit the tether
29:10 Lots of bass

Blue Creek Bay

I also went exploring right next to the I-90 highway bridge at Blue Creek bay to see what was there.
The bridge was covered in anodes:

There was a cool scene where the sunlight was shining through the trees and made a spotlight:

I played with the thermocline for a few minute to watch the temperature change and you can see a separation layer of silt as I ascend through it. The visibility suddenly increases when I go above it. It was 50 degrees below the layer and 74 above it.

2:34 Arrived at bottom
15:04 Playing with the thermocline layer (watching the temperature change)
20:25 Beam of sunlight
25:35 I-90 bridge

Threemile Point

I explored by Threemile Point to see what was there. I didn’t see anything interesting. This was the first time that I have launched the ROV from a boat.
2:24 Arrived at bottom

Steel Plate

I also grabbed a little steel plate that was in front of the dock for fun. I was partly inspired by another plate recovery that someone did: Hard test of my new gripper - Dive Log - Blue Robotics Community Forums
It’s overexposed since the camera was looking at the black gripper. This was the end of the first test dive and I don’t have the video stream recording since I restated QGroundControl after I started recording and forgot to hit the record button again.


Super keen to watch these :smiley:

A quick note on this, you can make headings by starting a line with a hash #, or more hashes for smaller/sub-headings. Those can then be linked to directly in the page as well, which can be handy. Might be worth a quick edit to add some names, but if you’d prefer I can do that for you as an example, and add a hyperlinked table of contents so people can quickly jump to a particular one of interest :slight_smile:

1 Like

Thanks for the tip.

1 Like

No worries - better accessibility never hurts :slight_smile:
Maybe I should put together a pinned post for using the forum/formatting posts - I was planning to do something like that together with the recent category updates, but didn’t get around to covering those aspects.

I think the youtube timestamps might need one for 00:00 at the start to make the chapters work correctly.

Will save further comments for after I’ve finished watching the videos. Halfway through the umbrella recovery at the moment! :smiley:

So much awesome stuff here - action packed indeed!

Fun to live vicariously through your adventures, especially since I’m stuck inside at the moment.

I really enjoyed the umbrella rescue, and seeing the fish darting in an out at various points. Was also cool to see the thermocline layer effects - would be fun to see the temperature vs depth graph there :slight_smile:
So much content makes me wonder how hard it would be to automate some kind of montage creation, or auto fast-forwarding between the main events :smiley:

I feel like every time I watch an ROV video it gets me thinking about the processing required to improve the visibility. Normalising each colour channel and adding some extra contrast can help with seeing more detail (at the cost of some flickering when brightness levels change):

#!/usr/bin/env python3
import cv2
import numpy as np

def process(frame):
    result = np.empty_like(frame)
    # normalise each colour channel
    for channel in range(3):
        result[:,:,channel] = cv2.normalize(frame[:,:,channel], None, 0, 255, cv2.NORM_MINMAX)
    # clip off the bottom 10% of values to increase contrast
    return cv2.convertScaleAbs(result, None, 1.1, -25)

but there are definitely more advanced but still quite lightweight algorithms that could do a better job. Then there’s actual attempts at colour correction, which is perhaps also valuable/important for different purposes, and would require a different approach.

Oh also, have you tried the opacity option in the recent PingViewer update? Could be helpful to see some extra video in that top right corner :slight_smile:

1 Like

Thanks for the tip, but the opacity won’t matter because it’s my second monitor that I add with my Davinci Resolve video editor (recorded with OBS). I do 95% opacity now, but it was lower in older videos. I want all of the small details in the Ping360 to be clearly visible. I haven’t updated the Ping Viewer or QGround Control in a while. I probably should check them out.

Please feel free to share your thoughts on my video layout. I enjoy having the GoPro and Ping Viewer views up at all times, but I’m not sure on how to handle it. What I do now works, but it they can block things on the upper corners of the screen.

I have thought about making a quick guide on how I make my videos so people will know how to add the telemetry subtitles or both Ping Viewers, but I can’t think of a single person on this planet who does similar ROV videos so I don’t know who will benefit from my efforts. The simple answer is that I use the camera flash on my phone to sync the ROV video to the GoPro within 1 frame, and I use the seconds on the computer time to sync the Ping Viewers and ROV video within 1 frame. That is after I use Handbrake to burn in the subtitles while converting the .mkv to H.265 .mp4.


(picture believed to be the Harrison)

Date built:1912 at Lacon for the Oregon- Washington Railroad & Navigation Company.

Size: almost as large as the Georgie Oaks

Capacity: Shuttled passengers and freight from Harrison to Amwaco on the west side of the lake. Two deck and wheel house

Propulsion: Stern wheeler coal fired in 1903 or earlier

Owned by: OWRNC

Uses: passenger and freight service for the OWRNC.

Sunk:burned sometime in the 1920 at Brautigan’s dock in CDA.

Notes: wood framed hull with steel sheeting

1 Like

I’d be interested. Did you say you have a GoPro working at the same time as the stock camera? I’d be interested in what you’re doing there.


Nothing too interesting, just the optional front mount. I use the flash on my phone to give me a reference to sync the ROV camera with the GoPro in the video editor.

Edit: I should say that the 2 reasons why I use the GoPro are to give me much higher quality video, and to give me the ROV audio for my videos.
I have been considering adding another GoPro mount on the top and a long extension arm for some 3rd person views of the ROV, but that would also add some entanglement risks.

Cheers. I didn’t know about that mount actually. Must get one printed.

@EliotBR , you provided some sample Python above to improve images in poor visibility. Is this something that can be done live on the BR2s camera feed? Thanks!

A post was merged into an existing topic: Live Camera Processing