32 Commits

Author SHA1 Message Date
Erik Auerswald 443b100ab9 bump version number to 2.25.1 2025-10-31 19:44:16 +01:00
Erik Auerswald 63495ef4a8 suppress debug output without -P, --debug-output
Again, a debug message was not properly guarded with a check
for the debug-flag.
2025-10-30 00:04:42 +01:00
Erik Auerswald 9d9b2253e1 bump version number to 2.25.0 2025-03-23 19:06:24 +01:00
Erik Auerswald e914669079 add option -F, --adapt-after-crop
When this option is used, the threshold is adapted to the cropped
image, i.e., after the "crop" command, but not directly before.
This allows to avoid adjusting the threshold to the full image,
and thus potentially reduce the time needed for recognition.
2025-03-23 19:03:48 +01:00
Erik Auerswald 94ce321060 lazily adapt threshold to image
Instead of adapting the threshold to the image before executing
commands, adapt the threshold just before it is needed.

This allows to avoid theshold adaptation when -p, --process-only
is used with only the "grayscale" and/or "mirror" commands.

This also prepares the code to allow introduction of a new option
to avoid adapting the threshold to the original image before the
"crop" command is applied.
2025-03-23 18:54:13 +01:00
Erik Auerswald 7f2a9f3f22 warn when options -a and -T are used together 2025-03-22 18:45:15 +01:00
Erik Auerswald e309861f24 man page: suggest -a when using gray_stretch 2025-03-20 21:23:33 +01:00
Erik Auerswald 4b5c6ea770 NEWS: mention speed up of -g with gray_stretch
Commit 67abe0fba8 improved the
speed for determining both minimum and maximum luminance (gray)
values for the image.  This speeds up some debugging output,
and also using the gray_stretch command together with option -g.
(I did not notice that initially.)
2025-03-20 21:15:01 +01:00
Erik Auerswald eaf0f32850 NEWS: mention performance improvement 2025-03-18 21:45:00 +01:00
Erik Auerswald 5439679c83 bump version number to 2.24.1 2024-12-11 15:43:49 +01:00
Erik Auerswald 88a627050a print warning when ignoring unknown luminance formula 2024-11-18 17:55:02 +01:00
Erik Auerswald ad5b6da118 NEWS: mention recent changes 2024-11-17 19:44:57 +01:00
Erik Auerswald 895b0cb2b5 bump version number to 2.24.0 2024-06-22 20:05:30 +02:00
Erik Auerswald 894f3035fd fix a special case for decimal point recognition
When the widest digit found in the image is a one, it is likely
that a decimal separator is nearly as wide as this digit.  Thus
it cannot be recognized, because the decimal separator needs to
be at most half as wide as the widest digit (before this commit).

Thus add an additional pass over the digits for this special case.
This pass comes after the existing recognition passes for the
digit one, decimal separator, and minus sign.  In the new pass,
the width of the digit is ignored.

This addresses GitHub issue #26.
2024-06-22 20:04:08 +02:00
Erik Auerswald bae7381e34 add lower case r to character set "full" 2024-05-18 23:51:13 +02:00
Erik Auerswald d6be469e14 add lower case h to character set "full" 2024-05-18 23:49:07 +02:00
Erik Auerswald 624e998efb NEWS: mention message improvements 2023-09-10 14:54:27 +02:00
Erik Auerswald f25047745d INSTALL: mention gcc and man under prerequisites 2023-05-20 16:58:38 +02:00
Erik Auerswald 658230679a bump version number to 2.23.1 2023-05-18 16:13:18 +02:00
Erik Auerswald 1fe392c772 use latest release date as man page date
The latest release date is extracted from the NEWS file,
i.e., it depends only on the sources, not the build date.
This is intended to help in creating reproducible builds
by avoiding timestamps.  It is also closer to the date of
the contents of the man page than using just the latest
copyright year.

I do not have a perfect solution that works for both a git
clone and a downloaded tar ball.  This solution works well
for released tar balls of the ssocr sources.
2023-05-14 17:37:48 +02:00
Erik Auerswald 66dbee3591 typo fix in NEWS 2023-05-12 18:28:16 +02:00
Erik Auerswald 7e056835fa man page: mention -- to end option-scanning 2023-05-11 21:25:31 +02:00
Erik Auerswald 050830a709 man page: use latest copyright year, not build date
In order to help creating reproducible builds of ssocr,
do not use the build day of the man page as the date
inside the man page.  Instead, use the latest copyright
year of ssocr.

Using the man page build date has always been problematic,
because it is misleading.  But I do not have a general
automatic way to maintain the last change date for the
man page that works for both git clones and tar balls.
This seems like an improvement to me.  It provides some
idea of how old the man page is, and this date depends
only on the ssocr source code, not the build date.

This should help with one of the two problems reported
in GitHub issue #22.
2023-05-09 18:11:53 +02:00
Erik Auerswald 0cd776b479 bump version number to 2.23.0
This ssocr release adds new features and thus addresses
GitHub issue #21:

* new option -N, --min-segment=SIZE
* new option -M, --min-char-dims=WxH
* a range of expected digits can be specified (before, only
  a single number could be specified, or the number could be
  left unspecified)
2023-05-01 19:36:47 +02:00
Erik Auerswald 898f5ec712 allow to specify a range for the number of digits
This can be helpful when using ssocr with a display showing
a variable number of digits, e.g., a clock, a scale, or a
thermometer.
2023-05-01 16:19:12 +02:00
Erik Auerswald 9e2d37ddbf add option -M, --min-char-dims=WxH
When there is a bit of noise in the image, the segmentation
step might find lots of small potential digits that are not
really digits (or other characters) of the display.  Given
sufficiently large display characters, it may be possible
to specify minimum character dimensions to remove spurious
potential characters (digits) based on their size.
2023-04-30 19:14:19 +02:00
Erik Auerswald 06c2afc85e add option -N, --min-segment=SIZE
This option is similar to -n, --number-pixels=#, but also
applies the limit to ratio based detection (i.e., for
recognition of "one" and "minus").
2023-04-29 11:53:32 +02:00
Erik Auerswald fe272d21ef bump version number to 2.22.2
This "bug fix" release comprises documentation improvements only.
2023-04-23 14:45:57 +02:00
Erik Auerswald 629ecd05f6 bump version number to 2.22.1 2022-01-25 18:56:14 +01:00
Erik Auerswald 3b35bcace6 bump version number to 2.22.0 and make release 2021-11-07 12:29:33 +01:00
Erik Auerswald 2ebe192fb2 add charset "tt_robot"
In 2017, I received a report of ssocr being used to interpret the
status display of some Chinese table tennis robot.  The user had
implemented character recognition in a Perl script that interpreted
the ASCII art segments in ssocr's debug output.

The new ssocr character set "tt_robot" implements the exact same
segment interpretations as found in the Perl script mentioned above.
This even includes two erroneous '7' definitions that work around
recognition problems.
2021-11-01 15:16:06 +01:00
Erik Auerswald c4491d1f98 add a NEWS file
I have taken the contents from the web page, adding dates from
"git log".
2021-11-01 13:51:18 +01:00