dynobo / normcap Goto Github PK
View Code? Open in Web Editor NEWOCR powered screen-capture tool to capture information instead of images
Home Page: https://dynobo.github.io/normcap/
License: Other
OCR powered screen-capture tool to capture information instead of images
Home Page: https://dynobo.github.io/normcap/
License: Other
Instead linking the magics' py file by hard imports, dynamically load all py files from magics folder.
This way, it's easier to develop new or customize existing magics.
The startup speed and also text recognition is okay, but faster would be better.
If you have any ideas on how to improve this, please leave a note here! :-)
Check for updates on the Application launch and inform users to download new updates when available.
This will help users enjoy the latest features and enhancements in the application.
As of now, there is no way for users to know if there is a new update for the app, until or unless they visit the GitHub repository.
💡 The idea is to pop up the notification if there is an update and ask the user to Download
it or Remind me next time
.
if the user chooses to download it, then it will open a browser window with the download link.
Use NSIS (already installed on build agent) along with the appropriate github action.
This is also one step to mitigate #87
Ideas for Heuristics:
Automated action triggering makes code much more complicated (because of platform independence) and is probably not so important. Remove them.
The windows with the red border showing the screenshots to select a region are not covering the full screen, but are getting tiled by the window manager. This is at least the case on Ubuntu 20.04 with the gnome-shell extension of PopOS.
Tasks:
self.tk.attributes("-zoomed", True)
for linuxI did recommended way but this no works, also is there way to add shortcut keys to execute this app.
How to print shortcuts to Screen?
Which recorder to use?
Probably due to the window is not getting focus.
I tried to keep the dependencies / third party libs at minimum, but still have the feeling, they could be less.
If you have ideas on how to get rid of another dependency, please comment.
Idea: Do OCR ones in e.g. "EN", run language detection, run OCR again in detected language (if it's different than EN and available in the OCR).
Libraries:
Links that might be helpful:
Requirements:
Further Criteria:
Prioritized Options:
NormCap crashes when trying to run it under Wayland:
20:29:41 - INFO - normcap.normcap - Starting NormCap v0.1.2 ...
Traceback (most recent call last):
File "/home/ige/.local/bin/normcap", line 10, in <module>
sys.exit(run())
File "/home/ige/.local/lib/python3.7/site-packages/normcap/__main__.py", line 5, in run
_ = main()
File "/home/ige/.local/lib/python3.7/site-packages/normcap/normcap.py", line 153, in main
normcap_data = client_code(capture, normcap_data)
File "/home/ige/.local/lib/python3.7/site-packages/normcap/normcap.py", line 106, in client_code
result = handler.handle(normcap_data)
File "/home/ige/.local/lib/python3.7/site-packages/normcap/handlers/capture_handler.py", line 26, in handle
request = self._take_screeshot(request)
File "/home/ige/.local/lib/python3.7/site-packages/normcap/handlers/capture_handler.py", line 40, in _take_screeshot
raw = sct.grab(position)
File "/home/ige/.local/lib/python3.7/site-packages/mss/linux.py", line 403, in grab
ZPIXMAP,
File "/home/ige/.local/lib/python3.7/site-packages/mss/linux.py", line 175, in validate
raise ScreenShotError(err, details=details)
mss.exception.ScreenShotError: XGetImage() failed
Before my i would like to thank you for application, it is just what i wanted. I am not a programmer of anykind i just wanted app like this for everyday use so here is my problem. I turned of the windows notifications form notifications area but it was a bad decision and i wanted to turn it back on but i can't find any option to turn the apps notifications on. I guess because app is working from a file and not installed the pc windows does not sees the app and i can't be found in the notifications settings. Because of that maybe there can be a another download option like a setup to improve notification settings etc. Or do you know i way i can handle this issue ?
Somethings creates an output after the capturing. Seek and destroy.
{'single_line': <normcap.magics.single_line_magic.SingleLineMagic object at 0x7f5db1b7a650>, 'paragraph': <normcap.magics.paragraph_magic.ParagraphMagic
object at 0x7f5db1b7e150>, 'email': <normcap.magics.email_magic.EmailMagic object at 0x7f5db1b9b610>,
'url': <normcap.magics.url_magic.UrlMagic object at 0x7f5db1b9b0d0>}
Instead the compromising traineddata sets for tesseract, try using the best. I think more accuracy is worth potential slower execution.
At least with Tesseract, on Linux & Windows
Requirements:
Further Criteria:
Prioritized Options:
E.g.:
Package Normcap as AppImage for easier install/execution without installing too much dependencies.
See also: https://github.com/AppImage/AppImageKit/wiki/Bundling-Python-apps
To make installable via pip
Extend test workflow to all platforms
Create an addon system for essy extensible Magic Commands.
Should include a scoring mechanism to decide, which magic to run, an transformer and an executor.
Support for the Tray icon
can be added so that the user is not always required to relaunch the application.
What do you think, should I bundle NormCap together with tesseract and a set of languages? Some thoughts:
Pros:
Cons:
Most of the detection quality depends on Tesseract OCR and the input image.
But there are also options/ideas in scope of this project:
I'm happy about any ideas or pull request on this topic!
For automated regression tests
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.