Frequently Asked Questions
A knowledge base for common issues and additional information.
General
How can I add additional languages to NormCap?
The prebuild packages are shipped with the following
languages English, Arabic, Chinese, German, Spanish and Russian. If you miss
a language, click the settings icon and "open data folder..." (in the
"Languages" section), then follow the instructions in the file
add_more_languages.txt.
If you installed NormCap as Python package, refer to the
online documentation on how to install additional language for Tesseract on
your system.
How can I improve the detection accuracy?
The most import thing is to specify the correct language(s) (via settings
menu or the --language
command line argument). Keep in mind:
selecting multiple languages at once slows down the recognition a bit.
Sometimes Tesseract struggles with recognizing text with just very few
characters, like a single word. In this case try selecting a larger portion
of text.
The prebuild NormCap packages are shipped with the
tessdata-fast
models, which offer a very good accuracy to speed compromise. But you can
also try to add the models from
tessdata
or
tessdata-best
instead as described above.
If the results are still bad, please submit a screenshot of the text you are
trying to recognize
as an issue.
Is my image/text analyzed in "the cloud"?
No. The text recognition is performed offline using the OCR framework
Tesseract.
Is any other data send to the internet?
No telemetry data is collected and by default also no other data is sent
anywhere.
However, some (optional) features require accessing resources on the web and
therefore expose minimal information (like IP address) to the accessed
server:
-
If you enable the check for updates on start, the application checks
NormCap's releases page on GitHub.
-
If you download additional languages, they are being fetched from GitHub,
too.
Can I start NormCap via a keyboard shortcut?
Yes, but you'll have to configure it on your own using your operating
system's tools:
Ask your preferred search engine for support or different ways to do this.
Are there alternatives to NormCap?
Some applications offer similar features like NormCap and might be a good or
even better alternative for you: It completely depends on your use case and
requirements. Some similar open-source Projects are:
[Windows] How can I write a log-file with debugging information?
On every start of NormCap, a fresh log file is automatically written to the
following location:
C:\Users\<USER-NAME>\AppData\Local\dynobo\NormCap\logs\normcap.log
(for error traceback) and
normcap-debug.log
(for additional details).
In case of problems,
create a new issue on GitHub
and include the information in the log file.
[macOS] Does NormCap work on the M1 architecture?
The prebuild package won't work, install the
Python package instead.
Why?
-
A prebuild package can only run on the CPU architecture on which it was
build. NormCap uses GitHub actions for the automated build process, which
currently does not offer a
runner
with an M1 architecture.
-
The developer of NormCap doesn't have a Mac, and the M1 can't be emulated
via a virtual machine. Therefore, testing and debugging such a build would
not be feasible.
Troubleshooting
How to get debug information?
-
With Python package:
Run: normcap -v debug
-
On Windows (msi):
The debug log is always written to a file in the executable's folder: C:\Users\<USER-NAME>\AppData\Local\Programs\NormCap\NormCap.exe.log
-
On MacOS (dmg):
Run: $ flatpak run --arch=x86_64 --command=normcap com.github.dynobo.normcap -v debug
-
On Linux (AppImage):
Run: $ NormCap-{version}-x86_64.AppImage -v debug
-
On Linux (FlatPak):
Run: $ flatpak run --command=normcap com.github.dynobo.normcap -v debug
-
On Linux (AUR):
Run: $ normcap -v debug
NormCap is not starting
Please try to take a look at the debug information. It might provide
enough information for you to solve the issue for yourself. If it doesn't help you, don't
hesitate to report your problem description together with debug information.
[Linux] Could not load the Qt platform plugin xcb
In case you get the following output...
$ normcap -v debug
12:06:34 - INFO - normcap.app - L:32 - Starting Normcap v0.2.0
12:06:34 - DEBUG - normcap.utils - L:199 - [QT] L:0, func: None, file: None
12:06:34 - DEBUG - normcap.utils - L:200 - [QT] QtInfoMsg - Could not load the Qt platform plugin "xcb" in "" even though it was found.
12:06:34 - DEBUG - normcap.utils - L:199 - [QT] L:0, func: None, file: None
12:06:34 - DEBUG - normcap.utils - L:200 - [QT] QtFatalMsg - This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.
... the chances are, some system requirements are outdated. You can check
this with apt list "libxcb-util*"
:
$ apt list "libxcb-util*"
Listing... Done
libxcb-util-dev/hirsute 0.4.0-1 amd64
libxcb-util-dev/hirsute 0.4.0-1 i386
libxcb-util0-dev/hirsute 0.4.0-1 amd64
libxcb-util0-dev/hirsute 0.4.0-1 i386
libxcb-util1/hirsute,now 0.4.0-1 amd64 [installed,automatic]
libxcb-util1/hirsute 0.4.0-1 i386
Is only libxcb-util0
shown but libxcb-util1
is
missing? Then you can try to create a symlink for the missing version:
sudo ln -s /lib/x86_64-linux-gnu/libxcb-util.so.0 /lib/x86_64-linux-gnu/libxcb-util.so.1
[Linux] Normcap does not show up in system tray
Is your display environment Gnome Shell? Then you probably need to install a
Gnome Shell extension
to support showing applications in the top bar, e.g.:
[Linux] Normcap doesn't show a notification after capture
NormCap's notifications depend on the system tray functionality. Try running
normcap with the --tray
flag, and if nothing is shown in the
system tray, proceed like in the question above.
Development
"No such file or directory" error when running
briefcase build
To verify, if this is the issue you are facing, run the docker image
interactively and try to run the linuxdeploy-*.AppImage
file
there:
$ docker run -it \
--volume /home/<USER>/<PROJECT PATH>/normcap/linux:/app:z \
--volume /home/<USER>/.briefcase:/home/brutus/.briefcase:z \
--env VERSION=0.2.0 briefcase/eu.dynobo.normcap:py3.9 \
/bin/bash
$ /home/brutus/.briefcase/tools/linuxdeploy-x86_64.AppImage
If that results in a `No such file or directory` error, according to
this issue
and
this one
a workaround is to correct the "magic" bytes of the AppImage. This worked
for me:
sed '0,/AI\x02/{s|AI\x02|\x00\x00\x00|}' -i linuxdeploy-x86_64.AppImage