So teach us to number our days, that we may apply our hearts unto wisdom.

Category: GaugeCam

John Stranzl, PhD

My buddy, John, successfully defended his doctoral dissertation yesterday afternoon and it was a glorious event. We are two old guys who did late career PhD’s with much joy. Honestly, I think John beat me badly in the quality of his doctoral studies and research. It is not that I did badly–I am wildly happy with what I did, but John is a force of nature. Congrats to a very dear friend.

Papers with small datasets

Troy has been sending me links to new papers on the measurement of water level with cameras that kind of make me crazy. We have been doing this for over fifteen years now and papers are coming out that do not cite us that describe things we did with thousands and thousands of images. Beside the fact that virtually every paper we have ever seen used data sets of 10’s to 100’s of images with maybe one or two that had up to a couple thousand. But they were presenting nothing new on with super small datasets on stuff we had already done on tens of thousands of images. One of those papers even used stop signs to perform a pixel to world coordinate conversion. Oh well.

GaugeCam line finder

Machine vision, 24/7/365 in the wild under all weather and lighting conditions has challenges most laboratory and factory settings never encounter. For the GaugeCam GRIME3 software, fog, snow, glint from water reflections, debris, nighttime IR lighting vs. daytime ambient lighting, ices, and animals wandering into the scene are everyday occurrences. We have worked on our line finding algorithm for a long, long time and are amazed it how well it does. The waterline find in this image is a good case in point. The one greatest challenge for our software is biofouling when crud builds up at one or more water levels when the water level does not change for a day or even a few hours. We are working on solving that problem with AI right now, but hope to eventually get completely away from the kinds of surfaces that accumulate biofouling marks to no artificial surface at all.

GaugeCam GRIME3 Pre-release v1.5

The camera-based water level measurement software upgrade from GaugeCam GRIME2 to GRIME3 hit a major milestone today today with GRIME3 Pre-release version 1.5. It is a research version, not yet ready for publication but to do the research to determine whether our new algorithms improve the precision of the water level detection in the presence of biofouling and other image degradation using a variety of both deterministic and stochastic (AI) techniques to improve the water level. I am downloading two data sets of 800 and 8000 images now and will receive a hard drive with ~30k images in the mail in a week or sot that I will run through the GRIME3 software, God willing, so we can start evaluating the numbers to see how we did.

Selling the house

We are in the process of selling our house in Virginia so we can build a house on a lot we own in Texas. The design for the new house is complete along with the engineering drawings and approval from the Historic Preservation Commission of the town where we want to build. We are dying to get the house sold, but the market is not optimal right now, so we are enjoying this spectacular part of Virginia while we wait. We had a showing yesterday and a three hour open house today. That means Lorena and I have to be out of the house for an extended period time. Lorena goes out shopping and I hang out programming GaugeCam for long periods of time. I am amazed how much I am getting done and expect to be submitting two papers for publication before the end of the year. Maybe three, God willing.

GRIME3 — First prerelease

The first prerelease version of GRIME3, the Python port of GRIME2, is up and available for download on GitHub. It has almost all the functionality of the CLI version of GRIME2, but with improved waterline and octagon finding. There has already been one small feature release. I expect there will be one or two more of those before I move on to start integrating the second major prerelease version that features a GRIME AI segmentation model to help us deal with the pernicious biofouling that plagues camera based water level measurement. Testing of the first prerelease version is planned for next week in Troy Gilmore’s lab at University of Nebraska-Lincoln.

GaugeCam remote office (Panera)

I am extremely grateful for the Panera by our house. When Lorena goes shopping at Costco, Trader Joe’s, Wegman’s, Home Goods or the plethora of other stores around here, she drops me off at Panera. I drink coffee and work on GRIME3. The have a good internet connection, I love the coffee, and my favorite table is almost always available. I think it helps we are there mostly during slow hours, because I do not think it would be so good during the rush. I think about 80% of the work I have done so far on the project has been here at Panera and that percentage is rising.

GRIME3 water level measurement

My main engagement with the GaugeCam GRIME Lab these days is a port of the GRIME2 camera based water level measurement software. It was initially written in C++ as a prototype research project starting back in 2009. It morphed into production software, but has always suffered from its beginnings. It was developed on Linux using that ecosystem, but delivered only as a Windows desktop installer. It really did a great job for what it was initially intended to be, but was only adequate as a production software release.

We have wanted to make improvements to the software to handle things like biofouling at the waterline and the ability to find a much smaller target, so that was planned to be my next project. When I got my fingers back into the code to do that, I decided I was going to make this a longer term project with production code as opposed to just making the minimal fixes to make it all work just well enough to gather data and publish a couple of papers. Troy Gilmore and I have frequently discussed some of the things that would make the product better, so I decided to try to morph GRIME2 into GRIME3 with the following aims in mind:

  • Port to Python (that is where the user base is going)
  • Cross-platform compatible
    • Desktop (Linux, Windows, Apple)
    • Linux embedded (Raspberry Pi)
    • Cloud server
  • Browser based GUI
  • Extensive CLI support
  • Measurement improvements
    • Smaller calibration targets (hoping for something that fits on a standard staff gauge)
    • AI model to extract waterline in the face of biofouling

This work and corresponding publications are well under way. It is also important to note that GRIME4 is on the road map and aimed at a stretch goal and production level functionality that could have a significant impact on this niche research area.

Powered by WordPress & Theme by Anders Norén