|(13 intermediate revisions by 2 users not shown)|
= Ways to Contribute =
BoofCV is an open source project and in order for it to grow its users need contribute to the project! Even if you don't know computer vision or how to program there are many ways you can contribute.
Specific List ==
The follow tasks are fairly specific and can be done without requiring major changes to the library:
can be the
# Android support
## Identify incompatibilities with Android's API
## Help come up with solutions
## Create Android examples
## Arbitrary length Coiflet coefficients
## Arbitrary length Daub coefficients
## Verify that Biorthogonal Daub is buggy and fix
## Don't add any addition jar file requires for wavelet tasks
# Corner detectors
## Add option to process image border in SSD feature detectors
# Modify BRIEF so that it can describe feature partially outside of image
# Add fast non-maximum suppression algorithm
# See in code comments for improving Canny edge's speed
== Non-Coding Tasks ==
Non-coding tasks can be done by just about anyone. Typically these involve updating documentation and reporting problems. Design changes should be suggested to the message board.
# Citing BoofCV on projects and papers which use it!
BoofCV and papers are ways to . on the message and is a .
# Reporting bugs as they are found.
# Fixing spelling and grammar errors on the wiki.
# Checking links on the wiki.
# Adding tutorials to the wiki.
# Quality control on JavaDOC.
# Suggesting ways to improve the API.
== Coding Tasks ==
There is plenty of room for improvement left in BoofCV. If you which to donate code or tweak the existing code you should sign up on the BoofCV message board (see the [[main page]] for a link) and join the discussion. An important part of BoofCV is validating the correctness of the library. Making sure that each piece of code does what it says it does or that it is a correct implementation of the algorithm cited requires time and many eyes.
# Fixing bugs which have been reported.
# Adding unit tests.
# Adding system level tests.
# Implementing new algorithms.
# Validating the correctness of algorithms and implementations.
# Improve demo [[List of Applets|Applets]].
Seriously, if you find a bug please report it! Make sure you read the documentation first though. Sometimes its useful to report a but even if there isn't really one. That can be an indication that the documentation in that area needs improvement.
Got something you think might be useful in BoofCV? Well let us know! You should post it online to make it easy to inspect and provide one or more examples. It's ok if the code is not perfect.
To actually make it into BoofCV the code will need rigorous unit tests and be programmed in a certain way to make it more efficient. The good news is that those can be done afterwards. We will do our best to your code conform and might even modify it ourselves, depending on time and need. All code which is contributed into BoofCV will need to be transferred to the standard BoofCV license, but your contribution will be acknowledged!
If for some reason your code doesn't make it in we will still advertise it if it looks like a useful feature, but is out of scope or just not ready yet.
We are actively trying to grow the BoofCV community and need help spreading the word. YouTube videos, blog posts, articles, or papers are good ways to do this. Also participating on the message boards and answering questions is a good idea too.