Happy Holidays! First Manufacturing Update (Trident Kickstarter Update #9)
Original post date: December 29, 2015
From all of us at OpenROV, we hope you're having a great holiday season!
We've been working hard to get the Trident ready for production. Everything is proceeding according to the original schedule laid out in the project overview, and we wanted to give you an update about some of the important decisions we've been making along the way. This post is going to focus on one specific aspect of production: the camera.
Image quality is important, and many other "observation class" ROVs in the world still use analog cameras with relatively low resolution and quality. Even the term "observation class" seems to be used pejoratively as if it were saying "is only good for observation." We want to change that. We think the vehicle should be optimized for observation. The camera aboard Trident is its main payload, so for the last four months, we've conducted an extensive research and trial program to design a camera with stunning image quality.
Designing a high definition camera is not a trivial engineering effort. We've had to dig deep into the technical aspects of imaging arrays, video processing electronics, video processing software, lenses, and compression algorithms. During Kickstarter, we were still in the midst of our R&D effort for the camera, so we couldn't dig into the specifications. We've now selected a primary camera configuration, and we're excited to share the results.
The camera uses an Omnivision OV4689 imager married with a Geo Semiconducter chipset that encodes the video as an H.264 stream which gets sent out over USB to the onboard computer. For all of you software geeks curious about how we're handling the video after that (since doing this can be tricky), we've developed a way to multiplex the H.264 stream into a fragmented MP4 stream which can be viewed directly in a web browser with very low latency. You'll be able to read more about our H.264 processing effort on our forums after we finish documenting it.
There are several factors that can be used to evaluate image quality, but the main ones we used were field of view, resolution (both in the center of the image and toward the edges), color rendering, lack of warp, depth of field, low light sensitivity, and image noise. The process of designing around all of these factors can be arduous to read about, so we'll just skip to the results.
To examine performance, we set up a rudimentary test platform in our tank which consisted of a box with a glass floor (using the same window we plan to use for Trident) looking into the water. On the bottom of the test tank - about 1m below the window- we set up a few color test targets and a 1m long scale. We looked at those objects through the window with various camera and lens configurations.
As an initial comparison, let’s take a look at some cameras OpenROV users may already be familiar with.
For a baseline, we captured this image of our underwater test targets as seen from the Genius F100 camera (which is what we currently use on the 2-series OpenROVs). An interesting note, we selected the F100 for the 2-series kits because of its large field of view and HD rating, and we’ve been pretty happy with its performance (it’s one of the only parts that has stayed the same since our first version of OpenROV).
Next, we wanted to test against something many people would be familiar with, the GoPro Hero. As we expected, the resolution and warp characteristics from this camera were excellent. Even though our Genius F100 is considered “HD”, the GoPro knocks the socks off of it in terms of actual sharpness. We also noted that the field of view with the GoPro camera was comparable to the F100. One thing we were surprised by, however, was the color rendition. Compared to the F100, the GoPro’s colors were quite dull. Particularly for underwater photography, where the available lighting already makes colors more bland, we believe that color sensitivity is extremely important.
Finally, we ran the same test with the camera system we’ve selected for Trident. As you can see, the results were something one can get pretty excited about. We’re still doing some work with lens selection, and we're also yet to tune the image processing firmware, but the initial results are very good. The camera produces vivid color rendition and the image is sharp both in the center of the frame as well as out toward the fringes. The Field of View is a little bit smaller than what we saw with the F100 and GoPro cameras, but it is still quite wide by normal standards. There is a bit of noticeable warping in the image, but that is something the image processing chipset should be able to correct for once we get it tuned. Finally, there is also a weird effect going on at certain frequencies of black and white stripes on the test targets, where the camera thinks these areas should be rendered purple. We believe this is an effect known as cross-chroma, which is something we should also be able to correct for in firmware.
We’ll continue to optimize the characteristics of our camera system as our R&D effort progresses. We still have some more experimentation to do with lens matching, and we are working on getting firmware for the image processing chips tuned just right for our application. Once we get these things locked down, we also plan to make this camera available as an upgrade to our current 2-series ROVs- which we’ll make available under the “Experimental” section of our store. If you’d be interested in trying out this system and would like to be notified when they become available in our store, please send us an email with the subject heading “INTERESTED IN TRIDENT CAMERA” to firstname.lastname@example.org and we’ll add you to an email list.
We’ve been able to dive much deeper into the engineering complexities of camera design with this project than we ever would have as a hobby project, and for that, we have to thank all of you who supported this Kickstarter project.
Much more to come. Feel free to join the discussion in the OpenROV Forums if you have ideas or feedback.
The OpenROV Team