Deep Neural networks have already surpassed human-level performance in tasks such as object recognition and detection. However, deep networks were lagging far behind in tasks like generating artistic artifacts having high perceptual quality until recent times. Creating better quality art using machine learning techniques is imperative for reaching human-like capabilities, as well as opens up a new spectrum of possibilities. And with the advancement of computer hardware as well as the proliferation of deep learning, deep learning is right now being used to create art. For example, an AI-generated art wonβt be sold at an auction for a whopping $432,500.
Create a Python packageπ¦ for plug in and playπ different image processing and deep learning tasks without having to know about its working and the scary math that follows π±.
In the process of doing so, we want the participants to:
- Learn various concepts in Deep Learning and Computer Visionπ±βπ
- Implement them in the form of scripts π©βπ»
- Reimplement using more optimized methods and do a comparative analysis π΅οΈββοΈ
- Create your own datasets, test your scripts on them and make it available for the community to work further π¨
- Build small APIs for each task (wherever applicable)
- Build web apps for certain tasks using TensorFlow.JS or Flask
- Build Flutter apps with TensorFlow lite for certain tasks π²
- Increment your personal portfolio with certain tasks you do here as standalone projects π©βπΌ
- Work for applying the various tasks undertaken into several real world scenarios
- Write blog posts about your contributions (Medium: @techquilla) to share with the world β
- Learn to read and implement research papers π¬
- Don't push anything to the root directory of the master branch. Always use specific subdirectories inside the deeppixel directory
For each of the tasks:
-
Work on the task inside the
respective
sub-directory [Please name it appropiately and use camel_case] -
In the first attempt ππ use a [Jupyter notebook] to perform your work.
-
Once you are done give a Pull Requestπ©Ή with the message π©
Developed Jupyter Notebook for respective_task
, breifing about your approach in the description and add a link of the above notebook in Google Colab [Please ensure you have given access] β -
Once mergedπ , build a script for the same task in the
respective
directory __(If you are using Deep Learning, ensure that you have saved your trained model and its weights so that in the script you build can simply fetch it instead of training again) -
Use argparse library so that the input image and output path can be given as arguments in the terminal while running the script
-
Update the
requirements.txt
file in root directory of the master branch to ensure any additional modules you have used in present there. -
Make sure you provide sample images/videos π· used
-
Give a Pull Request π©Ή with the message π©
Developed Script for respective_task
and mention how you have given the argument parameters to run the script in the description -
Once approved, work on documenting every block of code if not every line of your script
-
Add a
README.MD
file with appropiate description [Please ensure you properly cite any research paper or blog you have taken direct reference from] -
Give another Pull Request π©Ή with a message π© :
Documentation Updated
-
Once merged and no other changes is required:
-
Move on to working on a new β task
-
Look for better methods to improve π₯ this or any other existing task
-
Try to curate a custom dataset π§° for your task or anyone of the task
-
Propose a new task!
-
Contribute to the Documentation of the project in terms of ReadMe, GitHub Pagesπ inside the
docs
subdirectory or working on sphinx for the documentation of the package -
For the completed issues, Use TensorFlow.JS for building client-side web apps π
-
For some of the issues, Use TensorFlow Lite along with Flutter to make mobile apps π±
-
Work on structuring the entire work in the form of a python pacakge π¦
-
Fix any bugs you find! ππ¨
1. Fork this repository.
2. Clone the forked repository.
git clone https://github.com/<your-github-username>/DeepPixel
3. Navigate to the project directory.
cd DeepPixel
4. Create a new branch.
git checkout -b <your_branch_name>
5. Make changes in source code.
6. Commit your changes.
git add .
git commit -m "<your_commit_message>"
7. Push your local branch to the remote repository.
git push -u origin <your_branch_name>
8. Create a Pull Request!
Congratulations! You have just made your contribution to DeepPixel project.
- Python(Mandatory)
- Git(Mandatorty)
- Linux Command Line(Mandatory)
- Elementary Knowledge of Deep Learning or Computer Vision (Mandatory)
- Ability to use TensorFlow 2.0/PyTorch/Keras/fast.ai (any one is suggested)
- OpenCV(Required)
- HTML,CSS,JavaScript(can be picked up on the go)
- Dart and Flutter (can be picked up on the go)
- TensorFlow.JS
- TensorFlow Lite
- Sphinx
And above all the willingness to learn and contribute!
- PyImageSearch-One of the best places on the Internet for anything on Computer Vision
- Fast.ai-Deep Learning course+Forum for any level that you will fall in love with!
- MIT:Intro to Deep Learning - shows you more real world applications as you dive into deep learning
- CS231n: Convolutional Neural Networks for Visual Recognition
- MIT Deep Learning - From self driving cars to Alpha fold..they help you dig into the latest in the field..Lex Fridman's podcasts are just π₯π₯
- Deep Learning Specialization - Most popular MOOCs that is used by thousands all over the world to get started with Deep Learning
We would love to hear from you! We communicate on the following platforms: