This repository is focused on having various feature implementations of OpenCV in Python.
OpenCV (Open Source Computer Vision Library) is an open-source computer vision and machine learning software library. OpenCV was built to provide a common infrastructure for computer vision applications and to accelerate the use of machine perception in commercial products. Right now, OpenCV supports a lot of algorithms related to Computer Vision and Machine Learning and it is expanding day-by-day.
OpenCV-Python is the Python API of OpenCV. It combines the best qualities of OpenCV C++ API and Python language.
OpenCV is a huge library. One can get lost while reading specific feature documentation and its implementation. So, the repository aims to have a minimal implementation of all OpenCV features together, under one roof.
To work on an open-source project, you will first need to make your copy of the repository. To do this, you should fork the repository and then clone it so that you have a local working copy.
Fork 🍴 this repo. Click on the Fork button at the top right corner.
With the repository forked, you’re ready to clone it so that you have a local working copy of the codebase.
Clone the Repository
To make your local copy of the repository you would like to contribute to, let’s first open up a terminal window.
We’ll use the git clone command along with the URL that points to your fork of the repository.
- Open the Command Prompt
- Type this command:
git clone https://github.com/your_username/Image-Processing-OpenCV
It is important to branch the repository so that you can manage the workflow, isolate your code, and control what features make it back to the main branch of the project repository.
When creating a branch, you must create your new branch off of the master branch. To create a new branch, from your terminal window, follow:
git branch new-branch
git checkout new-branch
Once you enter the git checkout command, you will receive the following output:
Switched to branch 'new-branch'
Make relevant changes. Add new algorithms. Add Readme files. Contribute in any way you feel like :)
Once you have modified an existing file or added a new file to the project, you can add it to your local repository, which we can do with the git add command.
git add filename
or git add .
You can type the command git add -A
or alternatively git add -all
for all new files to be staged.
With our file staged, we’ll want to record the changes that we made to the repository with the git commit
command.
The commit message is an important aspect of your code contribution; it helps the other contributors fully understand the change you have made, why you made it, and how significant it is.
git commit -m "commit message"
At this point you can use the git push
command to push the changes to the current branch of your forked repository:
git push --set-upstream origin new-branch
At this point, you are ready to make a pull request to the original repository.
You should navigate to your forked repository, and press the “Compare & pull request” button on the page.
GitHub will alert you that you can merge the two branches because there is no competing code. You should add in a title, a comment, and then press the “Create pull request” button.
You have made your contributions. Kudos to you!!
-
Your files should be uploaded directly into the corresponding folder (For instance, if you wrote code for Object Tracking Implementation in Python, it goes inside the ObjectTracking folder along with a descriptive README.md )
-
Under no circumstances create new folders within the language folders to upload your code unless specifically told to do so.
For any more issues and queries, please join our Discord Server.
Feel free to reach out to us.
**Rememeber, collaboration is the key to open-source** 🌟✨
Please go through the whole Contributing Guidelines here.
- Make sure you do not copy codes from external sources because that work will not be considered. Plagiarism is strictly not allowed.
- You can only work on issues that have been assigned to you.
- If you want to contribute to an existing algorithm, we prefer that you create an issue before making a PR and link your PR to that issue.
- If you have modified/added code work, make sure the code compiles before submitting.
- Strictly use snake_case (underscore_separated) in your file_name and push it in the correct folder.
- Do not update the README.md.
You can find our Code of Conduct here.
This project follows the MIT License.
Aditya Kumar Gupta 💻 🖋 |