rnote
rnote copied to clipboard
Add shape recognition
Is your feature request related to a problem? Please describe.
While making notes, people often draw simple shapes such as lines, circles, triangles, squares... Switching to a different tool often requires a lot of unnecessary hand movement and takes time that is then wasted.
Describe the solution you'd like
I'd like a shape recognition feature to be added to aid in drawing simple shapes. This makes drawing/taking notes a much simpler, quicker and generally more enjoyable experience.
Describe alternatives you've considered
Additional context
Other apps have this:
- Xournal++
https://user-images.githubusercontent.com/25768714/154840426-ab31c779-968a-44eb-b36d-48234f3d9fdd.mp4
- Microsoft Whiteboard
https://user-images.githubusercontent.com/25768714/154840428-d81d9507-fa69-48d1-8e0d-0ceba0ad6ad0.mp4
This could be available in two tools in my opinion:
- A switch in the settings menu of the pen tool (automatically apply shape recognition after the strokes are drawn)
- A button in the sidebar of the selection tool to recognize already drawn shapes (but not necessary for a first implementation; just a nice thing to have)
Here is explained how Xournal/Xournal++ does shape recognition: https://sourceforge.net/p/xournal/support-requests/6/ The comment is quiet old but should still be up to date according to https://github.com/xournalpp/xournalpp/issues/2275#issuecomment-720041759
I think this should be doable by using something like the $-family of algorithms, or maybe work based off of this group of algorithms like Penny Pincher. Either algorithm was already considered lightweight when the research was published, but should have negligible impact anyway considering the evolution of performance since their publishing. All of these algorithms showed a recognition rate of 95% - 99% which should be plenty for trivial shapes like arrows and lines.
I think regardless of the implementation, the shape database would have to be created. Although, one could use their dataset from the research project, it would contain a bunch of shapes irrelevant for Rnote increasing the chance of recognition issues.
bump