Sorry to be slow to release new articles but I've been working on an "AI" / Machine Learning image categorization application for some time and have gotten it to the point where I've released a 1.0.0 version for Python (suitable for Windows, Linux, and Mac) and Windows.executables.
This software will examine images from any allsky camera that can produce an image on disk at a known location. For indi-allsky, the software will load the latest image location from the database. Using Machine Learning, the software compares the most recent image with it's training model to produce a file that will tell you whether the sky is cloudy or clear. For observatories that means open the roof or not. The software also supports pending states where it will delay opening or closing so the observatory isn't constantly opening and closing all night! All messages and configuration is set using an INI file.
Also included is a program to train a new model based on your images from your allskycam. Just capture JPG images from your camera into a folder with two sub-folders Clear and Cloudy with the appropriate images in them, and the code will train a new model specific to your sky conditions. This is especially important for dark sky sites where clouds are usually dark, not lit up by lights in my Bortle 8 location.
Code and installation instructions are located on Github at: https://github.com/gordtulloch/mlCloudDetect. As the model files and Windows EXE files (containing all the Python assets for the project) are too large for Github, these files are shared from my personal OnDrive.
I'm looking forward to hearing if people find it useful!
Discussion about this post
No posts
This is exactly what I am looking for - excellent!
Will it work with indi-allsky running on a raspberry pi?
and, if so - can I build for windows and train on windows, then transfer the model to the pi for the live detection?
yes, I'm going to just try those steps myself, but if the answer is 'no' then you can save me lots of angst!