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.
The follow tasks are fairly specific and can be done without requiring major changes to the library:
- Write about BoofCV!
- BoofCV is very new and not well know, so post about it on your blog/twitter/bathroom wall/tattoo
- If you use BoofCV in your project link back to this webpage to improve its page rank on search engines
- Android support
- Identify incompatibilities with Android's API
- Help come up with solutions
- Create Android examples
- Improve Wiki and Documentation
- Create a wiki account by clicking on the left
- After the account has been approved edit away
- Approval is required to counter act all the spam bots
- 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
- See in code comments for improving Canny edge's speed
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.
- 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.
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 Applets.