About this project
Well, thanks to you, PyImageSearch Gurus has hit its initial funding goal (within the first 25 minutes!). But let’s not step there. Let’s keep going and hit some stretch goals.
Third Stretch Goal ($40,000):
- Launch a computer vision app on the App Store: Ever hear of the Vivino wine scanning app? Basically, it's a mobile app that allows you to snap a photo of a wine bottle and then instantly identify it, view ratings, and even purchase a bottle! If we reach our third stretch goal we’ll build our own version of Vivino that you can use to identify wine bottles on your smart phone. (And not to mention, launch on the App Store!)
Second Stretch Goal ($27,000):
- Hand gesture recognition: Learn how to recognize hand gestures using Python and OpenCV. You’ll learn how to detect your hands in images and recognize the gestures your hands are making.
First Stretch Goal ($22,000):
This project has only one goal -- to make developers, programmers, researchers, and students like yourself become awesome at solving real-world computer vision problems.
Whether you're just getting started in computer vision or you're a seasoned computer vision expert, PyImageSearch Gurus has kick-ass tutorials, tons of code examples, and a dedicated community that is guaranteed to level-up your computer vision skills.
As you can see, PyImageSearch Gurus is:
- An actionable, real-world 6-8 month course on OpenCV and computer vision. This course is entirely self-paced and will be taught using Python and OpenCV (along with a few other libraries). Each month a new set of lessons will be released. See below for a sample of the topics to be covered. Trust me, you'll love these topics.
- A community of like-minded developers, programmers, and students who are eager to learn computer vision and level-up their OpenCV skills.
- An IPython Notebook development environment in the cloud. Everything we study and all the projects we work on will be done in the the cloud and from your browser. There will be nothing to download, and nothing to install.
Regardless of whether you're just getting started in computer vision or you're already a seasoned computer vision pro, PyImageSearch Gurus has tutorials and code just for you.
Just getting started in computer vision? Don’t worry, you won’t be bogged down with tons of theory and complex equations. We’ll start off with the basics of computer vision, image processing, and OpenCV. You’ll learn in a fun, practical way with lots of code. And you’ll be an OpenCV ninja in no time and be able to graduate to the more advanced content.
Already a seasoned computer vision pro? This course isn’t just for beginners — there’s content in here for you too. You’ll discover how to leverage big data tools like Hadoop, Elasticsearch, and Accumulo to build large-scale image search engine (CBIR) systems. You’ll construct a framework that can be used to train your own object detector with minimal effort. And you’ll build systems to automatically recognize license plates in images. These real-world solutions can be directly applied to your job and research.
Let me ask you, have you been on Facebook recently? If so, you have noticed that Facebook can not only automatically detect faces in images, but also recognize and tag them as well!
Computer vision is now prevalent in many areas of your life, whether you realize it or not. We apply computer vision algorithms to analyze movies, football games, hand gesture recognition (for sign language), license plates (just in case you were driving too fast), medicine, surgery, military, and retail.
And my goal is to teach you how to utilize computer vision to solve problems of your own.
I've broken down this course into a series of modules. The goal is to create a practical, actionable computer vision course that is 6-8 months long.
Each month a new set of modules will be released until the course is complete — and from there more topics will be covered based on what you and the community want to learn.
The course will also be entirely self-paced, so feel free to work through the content at your leisure. If life gets in the way, don’t worry — the course will be waiting for you when you get back!
The format of the course will primarily consist of:
- Text based content where we work through a specific computer vision technique.
- Thorough real-world code explanations.
- Video walkthroughs as necessary.
Below follows the list of topics I’ve already planned out. More topics will be covered based on what you and the community want to learn.
If you see a topic that is not on the list that you want me to cover, just send me a message or leave a comment. Remember, this is your course and I want to tune it to what you want to learn.
Computer Vision and OpenCV Basics
- Image basics
- Loading, displaying, and saving images
- Image processing
- Smoothing and blurring
- Morphological operations
- Gradients and edge detection
Building your own custom object detector
- Preparing your training data
- Selecting an image descriptor
- The sliding window technique
- Training a classifier
- Hard negative mining
- Object detection
Content-Based Image Retrieval/Image Search Engines
- Constructing a Bag of Visual Words (BoVW)
- Codebook construction
- Vector quantization
- Hard vs. soft codeword assignment
- Inverted indexes
- Tf-idf weighting
- Spatial verification
Standard Image Classification
- Image pyramids
- Selecting appropriate image descriptors
- Evaluation on various datasets, including:
- Flowers 17
- ...and many more!
- Preparing and pre-preprocessing your data
Automatic license plate recognition
- Preparing your training data
- Finding the license plate in images
- Training your classifier
- Classifying license plate numbers and digits
Hadoop + Big Data
- Preparing images for use on HDFS
- Introduction to Hadoop and MapReduce
- Running computer vision jobs on MapReduce
- Elasticsearch and Accumulo for indexing and retrieval
- High-throughput face detection
- High-throughput feature extraction
- Basic introduction to deep learning
- Case Studies:
- Deep Belief Networks
- Convolutional Neural Networks
- ...applied to various datasets such as
Raspberry Pi Projects
- Surveillance and motion detection
- Face recognition for security
Describing Images with Image Descriptors
- Keypoints (DoG, Harris, etc.)
- Local invariant descriptors (SIFT, SURF, etc.)
- Histogram of Oriented Gradients
- Haralick texture
- Local Binary Patterns
- Zernike moments
- Hu moments
- ...and many more!
Computer Vision Case Studies
- Face detection in images and photos
- Eye tracking
- Object tracking in video
- Handwriting recognition
- Plant classification
- License plate recognition
- Finding regions of text in document images
- Measuring distance from camera to object in image
Of course, we need the perfect teaching environment. An environment that doesn't get in our way as we learn. An environment that is fun to use. And an environment that is conducive to teaching computer vision.
And that's exactly why we are going to use IPython Notebooks.
IPython Notebooks are a web-based, interactive environment where you can combine code execution with text and plots in a single document.
Your IPython Notebook environment will come pre-configured and pre-installed with all the necessary computer vision, image processing, and machine learning libraries you’ll need to work through the course content.
Nope, there's nothing to download, install, or configure — you get to run your code in the cloud hassle free.
Each week I receive a ton of emails. To be honest, it's hard to keep up with them all. If you need access to me to help solve a computer vision problem or get advice in what direction to go, the PyImageSearch Gurus forum will be my new home. I'll be checking the forums and replying to topics and questions each and every day.
Upon successfully completing the PyImageSearch Gurus course, you will receive a Certificate of Completion that you can include in your resume and CV. Display your computer vision knowledge with pride!
Hey, I'm Adrian Rosebrock, a Ph.D and entrepreneur who has spent his entire adult life studying computer vision, machine learning, and image search engines.
Over the past year alone I have:
- Started the PyImageSearch.com blog and published over 50+ tutorials and articles aimed at teaching computer vision, image processing, and image search engines.
- Authored Practical Python and OpenCV, which has been featured on the official OpenCV.org website.
- Answered 1,000's of emails and helped 100's of developers, programmers, and students learn the ropes of computer vision and OpenCV.
As you can see, computer vision is my passion. And I want to pass this passion on to you.
If learning about computer vision and OpenCV sounds interesting to you, I hope you'll consider joining me inside PyImageSearch Gurus. You'll learn a ton about building practical, real-world computer vision applications -- and have fun while doing it.
See you on the other side!
The main reward is a Kickstarter-exclusive early access pass to PyImageSearch Gurus at either a significantly reduced monthly rate or a heavily discounted yearly membership. These monthly and yearly rates are exclusive to the Kickstarter campaign and will not be available once PyImageSearch Gurus officially launches.
I am also offering a Kickstarter-exclusive printing of my book, Practical Python and OpenCV. Previously, this book only existed as an eBook. But for this Kickstarter campaign I will be having physical copies made, and individually numbering and hand signing each copy, just for you. Definitely be sure to check out this reward, I’m not sure if my book will ever be offered in print again!
If I reach my kickstarter goal of $2,500, the first wave of users will be let in during May 2015, the second wave in June, and the third wave in July. The remaining users will be allowed access in August.
Below is the access timeline for PyImageSearch Gurus based on the reward level you choose:
I've already written 25% of the tutorials for PyImageSearch Gurus, but I've started this Kickstarter to get me the rest of the way there. Here's a breakdown of where the funds will go:
- Licensing for multi-user IPython Notebooks. Out of the box IPython Notebooks were never designed to run in a (secure) multi-user environment. And unfortunately, current approaches to creating mutli-user IPython Notebook environments are glued together using shell scripts and bubblegum. Instead of building my own mutli-user IPython Notebook management system, I am currently looking into two companies that provide this service: Wakari and Sage Math Cloud. Some of the funds from this Kickstarter will go into licensing this software.
- Server costs. Running IPython Notebooks in the cloud will be awesome. You won't have to download any software and you won't have to configure or install anything. You'll be able to learn OpenCV and computer vision in the cloud. However, this means added server costs -- especially as we first start to lift off and iron out any kinks. A portion of the funding from this Kickstarter will be used to pay for additional server costs.
- Free me up to write. This is a big one. Authoring (quality) tutorials is a time consuming task. And while I am confident that I can deliver by the May 2015 deadline, I do need to ensure that I can be dedicated to this project.
Risks and challenges
Like many Kickstarters, this project is already in the "alpha" phase. I have already written 25% of the content and I have a clear path to finishing the rest. Given my experience and expertise in the area, I believe that many of the risks and challenges are already mitigated.
Launch timing: With any project, there are always potential risks and unforeseen circumstances that cause delays in launch. That said, I don't expect to any significant hiccups along the way and am confident that I can deliver by the May 2015 deadline.
Experience: This past year alone I've written over 50+ blog posts and authored a book on computer vision and OpenCV. I have no doubt that I'll be able to deliver high-quality courses and tutorials that will taken you from computer vision beginner to guru.Learn about accountability on Kickstarter
Support this project
- (30 days)