mcOCRCurrent Version: 3.30 |
mcOCR captures local weather data from an LCD display. It's been running now for eight years, with a very high capture percentage. The program is triggered by the appearance of an image file; it then loads in the image and performs an area analysis to determine which pixels are lit and which are extinguished. Finally, it spits out the data thus captured into a text file, which is conveyed to the weather server. A settings page allows you to configure the program without touching the underlying .INI file. Buttons at top-left allow you to add an observation to the sky condition, for weather types not easily deduced by wxSky, and for variable duration (default 20 minutes). Also, if mcOCR detects precipitation, it automatically appends 'rain' to the sky condition for 20 minutes. A History feature allows you to view and edit data from the last 1,500 captures. You can re-issue the readings (output) files to include your changes. The program is capable of capturing things like wind direction, where only one of many pixel-groups is lit. It also has a differential mode, for things like precipitation, where the value is constantly increasing. I coded this for myself in 2012, but over the years I've added to it; and today it is almost research-grade. So much is configurable—for example, each character comes with a list of scan codes (the results of scanning the segments) and their corresponding characters. This often allows you to do error-correction (imperfectly-scanned characters). Individual segment threshold values can be defined, and it is possible for the individual segments to be calculated from a basic set of outline dimensions. Input and output paths, output filenames, and even the content of the output can be specified. A given value could be scanned from the image, or copied from some other value; it could be calculated (Dew Point, Humidex, Wind Chill Index); or it could be converted between multiple measuring units. Control areas can be relative to a character's position, or absolute—a fixed area on the screen. Multiple opportunities exist to perform basic arithmetic on the values, during the scanning process. |
Downloads:
|