"In the world ye shall have tribulation: but be of good cheer; I have overcome the world." –John 16:33

San Pedro Garza Garcia

Category: Technology Page 2 of 9

Retirement PhD: Progress on GaugeCam Web Server

First pass of GaugeCam Open Source Water Level Measurement Web Server

I am still not full convinced I can or should do this PhD thing, but all the pieces are still in motion. I expect I should be able to make a decision to move forward or not by late winter or sometime in the spring. In the meantime, I continue to make progress on the GaugeCam reboot as Open Source software (free as in liberty and free as in beer). The video speaks for itself. We hope to present a journal article and make the beta software available for download by spring. The video kind of speaks for itself

Not a birthday gift

I would like to say this is a birthday gift, but it is not. It is the new, extra-wide display I ordered for my work (on my birthday). Christian recommended this. One thing I did not expect was the width makes me change the way I use the different windows I keep open on the screen when I am programming. It is so wide that if you make something full screen, you often have to move your mouse a long, long way to get to the menu selection you need. All things considered, though, that is a minor quibble. I would definitely get this screen again if the occasion ever arises.

Bluetooth scale: New tool to beat Jon in the weight loss wars

I have always quit my daily weigh-ins when I was traveling, but my weight loss war with has Jon has forced me to re-prioritize. To that end, I bought a Bluetooth scale that can sync with the Fitbit app on my Android phone. It measures more than just weight, but that is all I really want to track because I track food intake and other measures in other ways. The reality is that I don’t really need Bluetooth connectivity and it is a little bit of a pain because I have to keep the thing charged with a USB charger while most of these kinds of scales have (pretty much) lifetime batteries.

New computers are not as fun anymore

Our friend, Bonnie, picked up the computer that arrived at our house when we were off visiting in Boston and Tempe last week. Lorena met with her for lunch yesterday to pick it up. It is a beautiful, brand new, Dell 5491 14″ touchscreen, i7 laptop with all the requisite amounts of memory and drive space to work on the relatively large images with which I work in my job. I love the computer, but it is a hassle to switch all the work I have been doing on the personal computer I used while I waited for my work computer.

First, I am reminded of the invasive nature of Windows (not to suggest Apple is any less so–they are probably even worse). I work in Linux, so I have to install that, but leave the computer dual-booted because I write cross-platform software. Then, I need to install Qt, OpenCV, Boost, and a ton of tools like Gimp, ImageJ, Filezilla, the Brave browser, Git, VirtualBox, etc, etc, etc. AND then I get to do it all again so all this stuff is available on both Windows and Linux. It will be really nice when it is complete, but it will be a full day of work to be up and running where I was with the previous computer.

I am not complaining TOO  much–it will be really nice when I am up and running and I really do not mind the kind of brain-dead work, but I lose a day and there is a lot to do.

Paying with my phone

I had to drive down to Kelso to drop off some equipment from my old company, but I left my wallet on the counter in the kitchen when I left. Then the guy I was dropping the equipment off to called and said he would be an hour and a half late so I was stuck at a McDonald’s beside the freeway with no way to buy an Egg McMuffin. I decided to go ahead and try to add one of those telephone pay apps. it worked really really well and if I didn’t hate Google so much I might even keep it on my phone.

New foldable bluetooth keyboard for my cellphone

I just bought a new foldable bluetooth keyboard to use while I am traveling with my Pixel 2 XL cellphone. This is just a test to see how it works. It surely seems like it works pretty good. Lorena took this picture and texted it to me.

3d camera for new 3d project

I ordered one of the Intel RealSense 3d cameras several months ago. It arrived yesterday. It is not like I need a brand new project, but I got one anyway and it is a good one. The reality is that I will not be in a place to start doing anything on this for a couple of months due to the start of a new job, vacation and a bunch of other commitments. It is great to finally get my hands on one of these and I am really looking forward to making it work.

Dispensers in the shower

The thing with which Lorena was most impressed with my Hotel here in the Boston area is the dispensers in the shower. Instead of little bars of soap and little bottles of hair conditioner and shampoo, the shower in the hotel had these dispensers. I have to admit, I was not wildly impressed, but am glad Lorena was.

Bean sorter: Gene’s first pass at the feeder!

Gene outdid himself with his first pass at the bean feeder. I got this video as a text this morning and was very impressed. It will take some more work, but it is doing all the really critical things we need it to do–singulating the beans, dropping them off the end in single file with separation. He will refine the design and set up to start taking pictures of the beans as the drop. The main takeaway for me is that now I am the short stick again and will need to start blasting away.

Pixel 2 XL: Stitching images for a panorama


I thought this was very cool. I took a set of pictures with my new Pixel 2 XL cellphone to make a panorama of our roof as it was getting installed. The picture in the previous post is from the sequence. Before I got to stitch it together, the camera did it for me without me even asking. It also made an animation. I was pretty impressed with the quality of the image stitching, too.

Reengaging with water research

Over the last couple of days, I had a couple of long and interesting talks with my old friend, Troy, with whom I worked on the GaugeCam project when we lived in North Carolina. Troy is an Assistant Professor at University of Nebraska right now with lots of interesting research going on. We discussed the idea of me reengaging on some of his research again when I started to approach retirement. Well, retirement is rapidly approaching and it looks like the stars might be starting to align. This is still just wishful thinking, but we have talked about a few specific ideas and I even called and talked to my old Masters degree professor, Carroll Johnson long retired from University of Texas at El Paso. We have hope we can make something happen.  If this idea comes to fruition, I hope to be writing about it here on a semi-regular basis.

Home from vacation at Casa Grande, AZ and Burnaby, B.C.

We are home from our trip to Casa Grande, AZ and Burnaby, B.C. We are grateful for our friend, Bonnie’s, help with Kiwi the surviving, twin cat sister. It was a trip for which to be thankful. We had the family all together for a few days, we spent some quality time with our friends, the Rizos, we got some new spiritual insights, we got new Pixel 2 XL cell phones, and when we got home, our new phone cases were waiting for us in the mailbox. Fortunately, neither of us dropped our phones hard enough to make them break (an unusual source of satisfaction) before we got them into the protective cases. Even more cool, the cases have the piece of metal in them that allows them to mount on the windshield fixture we have in our car. We are a little worn out, but plan to hit the hay early tonight and reengage at the salt mines in the morning.

Upgrade with Ubuntu Bionic Beaver

The new Ubuntu operating system (Bionic Beaver 18.04 LTS) came out yesterday and I installed it today. So far it is great. I had been using Xubuntu up until now, but have decided I am going to try Ubuntu for awhile and then Linux Mint (Cinnamon) when it comes out for awhile before I decide on where to the settle for the next few years. I am really glad Ubuntu went back to Gnome and a way from Unity. That was the main reason I switched to Xubuntu in the first place–so I did not have to deal with Unity. My good buddy, Lyle W. has been raving about Mint for quite a few years now as have many others, so I think I need to give that a try.

A “for personal use” 3D/RGB camera

I bought a RealSense 3d/RGB camera today from Intel. I have wanted to get one for awhile and try it out, but now I have an actual reason. I am working with a friend from an old job on a small project and we are actually using them in my day job. The camera takes aligned 2d and 3d images. It is (relatively) cheap and has an SDK that will allow me to pull the images into some fun environments where I can use OpenCV and the PCL on them. Looking forward to it, but the sad part is they are so popular it is on backorder. I will have to be patient.

Bean sorter: The opto-rack for the raspberry pi arrives from China

This opt-output rack I bought from China cost less than $17. They used to cost an order of magnitude more than that. It is kind of sad we do not make them so much anymore in the US, but it is a very good thing they are available at so a low price and that we do not have to make them as low cost items with thin profit margins. This is the last piece of hardware I needed for hooking up the control to our coffee bean sorting project, but I have had two other projects take priority (involving clinical trials and compliance issues–that is a good thing because the trials and compliance issues would not be needed if the product did not work). So I am going to have to sit and just look at this fun new toy for a month or two before I can hook it up and make it do its thing.

Beansorter: Node.js and the first camera stand

Gene sent me the first camera stand and bracket today. I am actually to the point now where I have enough mechanical items to start doing some more bean testing, but as I feared, I have now become the bottleneck. I have decided Flask and Python are probably not the tools I want to use for the machine interface server, so I am switching over to Node.js. I am trying out the Visual Studio Code IDE to develop the app. So far (which is not very far), I am very impressed with it all and think it will make the whole enterprise easier to develop, deploy, maintain and extend. I might change my mind after I get a little deeper, but so far so good.

Thanks Gene!

Beansorter: Light tower and UI travails

The indicator light tower for the bean sorting project arrived today. Really nice, but really cheap, too. I hope it works when I hook it up. Honestly, I had gotten pretty burnt out on all the user interface programming I was doing and, combined with a ton of stuff going on at my day job and a trip to Canada, I was getting a little weary and was planning to take a break. Then, some new hardware came in the mail and I realized I was not going to be able to hook it up and get it going until I finish with some UI enhancements, bug fixes, and robustification.

There is nothing like new toys for motivation for an engineer and this definitely qualifies. So, today, I am reinvigorated and will dive back into the UI so I can move on to the fun stuff. In the meantime, we are putting together a marketing survey of a large group of potential users of this product. Actually, there is value in making this thing (for me anyway) outside of having a market for it. I am learning a ton, having fun and putting together the structure I need to complete other projects of a similar nature with my buddy John.

Ups and downs all day long

It was a long and busy day today. I expected it to slow down, but work poured in right at quitting time and I am just finishing up what was possible to finish. The good news is that the relays to control the LED’s for the bean sorter project arrived today. They are small, cheap and should be perfect for this project, but not as the strobe control I/O’s we need. They are mechanical relays that can switch at a maximum rate of 10ms to active and 5ms to inactive. That is way to slow for what we want to do. The good news about the bad news though is that I thought I was only getting one board, but I got two and I will be able to use them to do a lot of the development work while I wait for some faster solid state switches AND I will be able to use them in the product to control the indicator lights that show machine status.

Beansorter: GUI and live video up and running

The browser based GUI for the bean sorting project is now up and running and being served from the Raspberry Pi. I only have one camera running right now because I only have one camera, but it does all the things that need to be done. There is a lot underneath the hood on this thing, so it should serve as a good base for  other embedded machine vision projects beside this one.

In terms of particulars, I am using a Flask (Python3)/uWSGI/nginx based program that runs as a service in the Raspberry Pi. Users access this service wirelessly (anywhere from the internet). The service passes these access requests to the C++/OpenCV based vision application which is also running as a service on the Raspberry Pi. Currently, we can snap images show “live” video, read the C++ vision log, and do other such tasks. We probably will use something other than a Raspberry Pi for the final product with a USB 3.0 port and the specific embedded resources we need, but the Raspberry Pi as been great for development and will do a great job for prototypes and demonstration work.

The reason I put the “live” of “live” video in scare quotes is that I made the design decision not to stream the video with gstreamer. In the end applications I will be processing 1 mega-pixel images at 20-30 frames per second which is beyond the bandwidth available for streaming at any reasonable rate. The purpose of the live video is for camera setup and to provide a little bit of a reality check at runtime by showing results for each 30th to 100th image as a reality check along with sort counts. There is no way we could stream the images at processing rates and we want to see something better than the degraded streamed image.

Beansorter–finally on the web (with some understanding)

After about a gazillion fits and restarts associated with reading the manual and getting syntax and basic concepts wrong, I have finally gotten the bean sorter web interface up and running. The idea is to be able to control the bean sorter vision system from a cell phone, tablet, or PC. I have been going around in circles for about two weeks now, but it appears I am ready to move on to the next thing. Here is a shot of my phone accessing the site from outside the LAN. I am glad to be done with this. The next step is to not just load a previously captured image, but to allow users to capture images by clicking a link.

Page 2 of 9

Powered by WordPress & Theme by Anders Norén