OpenCV: Master OpenCV 3 Application Development Using Python
What you'll learn
- Build an Image Search Engine from Scratch based on feature extraction
- Build an Android selfie camera app with emotion-based selfie filters
- Build an Android App to generate panoramas with HDR and AR capabilities
- Learn how to make a car learn how to drive itself based on imitation learning
- Explore the new OpenCV functions for text detection and recognition with Tesseract
- Get to grips with the computer vision workflows and understand the basic image matrix format and filters
- Familiarity with OpenCV's concepts and Python libraries is assumed
- Basic knowledge of Python programming is expected and assumed.
- Basic understanding of computer vision and image processing will be useful
OpenCV is a cross-platform, used for real-time computer vision and image processing. It is one of the best open source libraries that helps developers focus on constructing complete projects on image processing, motion detection, and image segmentation.
This comprehensive 3-in-1 course is a step-by-step tutorial to developing real-world computer vision applications using OpenCV 3 with Python. Program advanced computer vision applications in Python using different features of the OpenCV library. Boost your knowledge of computer vision and image processing by developing real-world projects in OpenCV 3 with Python.
Contents and Overview
This training program includes 3 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, OpenCV 3 by Example, covers a practical approach to computer vision and image processing by developing real-world projects in OpenCV 3. This course will teach you the basics of OpenCV such as matrix operations, filters, and histograms, as well as more advanced concepts such as segmentation, machine learning, complex video analysis, and text recognition. You’ll create optical flow video analysis or text recognition in complex scenes, and learn computer vision techniques to build your own OpenCV projects from scratch.
The second course, Practical OpenCV 3 Image Processing with Python, covers amazing computer vision applications development with OpenCV 3. This course will teach you how to develop a series of intermediate-to-advanced projects using OpenCV and Python, rather than teaching the core concepts of OpenCV in theoretical lessons. Working projects developed in this video teach you how to apply theoretical knowledge to topics such as image manipulation, augmented reality, object tracking, 3D scene reconstruction, statistical learning, and object categorization.
The third course, Hands-on TensorFlow Lite for Intelligent Mobile Apps, covers development of advanced OpenCV3 projects with Python. This course will teach you how to to perform 3D reconstruction by stitching multiple 2D images and recovering camera projection angles. You’ll learn to capture facial landmark points and recognize emotion in images, including in real time. You’ll generate a panorama of a scene and augment a camera view with virtual objects.
By the end of the course, you’ll boost your knowledge of computer vision and image processing and develop real-world applications in OpenCV 3 with Python.About the Authors
- David Millán Escrivá was eight years old when he wrote his first program on an 8086 PC with Basic language, which enabled the 2D plotting of basic equations. In 2005, he finished his studies in IT through the Universitat Politécnica de Valencia with honors in human-computer interaction supported by computer vision with OpenCV (v0.96). He had a final project based on this subject and published it on HCI Spanish congress. He participated in Blender, an open source, 3D-software project, and worked on his first commercial movie Plumiferos - Aventuras voladorasas, as a Computer Graphics Software Developer. David now has more than 10 years of experience in IT, with experience in computer vision, computer graphics, and pattern recognition, working on different projects and start-ups, applying his knowledge of computer vision, optical character recognition, and augmented reality. He is the author of the DamilesBlog, where he publishes research articles and tutorials about OpenCV, computer vision in general, and Optical Character Recognition algorithms. David has reviewed the book gnuPlot Cookbook, Packt Publishing, written by Lee Phillips.
- Prateek Joshi is an Artificial Intelligence researcher, the published author of five books, and a TEDx speaker. He is the founder of Pluto AI, a venture-funded Silicon Valley startup building an analytics platform for smart water management powered by deep learning. His work in this field has led to patents, tech demos, and research papers at major IEEE conferences. He has been an invited speaker at technology and entrepreneurship conferences including TEDx, AT&T Foundry, Silicon Valley Deep Learning, and Open Silicon Valley. Prateek has also been featured as a guest author in prominent tech magazines. His tech blog has received more than 1.2 million page views from over 200 countries and has over 6,600+ followers. He frequently writes on topics such as Artificial Intelligence, Python programming, and abstract mathematics. He is an avid coder and has won many hackathons utilizing a wide variety of technologies. He graduated from University of Southern California with a Master's degree, specializing in Artificial Intelligence. He has worked at companies such as Nvidia and Microsoft Research. You can learn more about him on his personal website.
- Vinícius Godoy is a computer graphics university professor at PUCPR. He started programming with C++ 18 years ago and ventured into the field of computer gaming and computer graphics 10 years ago. His former experience also includes working as an IT manager in document processing applications in Sinax, a company that focuses in BPM and ECM activities, building games and applications for Positivo Informática, including building an augmented reality educational game exposed at CEBIT and network libraries for Siemens Enterprise Communications (Unify). As part of his Master's degree research, he used Kinect, OpenNI, and OpenCV to recognize Brazilian sign language gestures. He is currently working with medical imaging systems for his PhD thesis. He was also a reviewer of the OpenNI Cookbook, Packt Publishing. He is also a game development fan, having a popular site entirely dedicated to the field called Ponto V. He is the cofounder of a startup company called Black Muppet. His fields of interest includes image processing, Computer Vision, design patterns, and multithreaded applications.
- Riaz Munshi has a Bachelor's and a Master's degree in Computer Science from University of Buffalo, NY. He is a computer vision and machine learning enthusiast. Riaz has 3.5 years' experience working on challenging problems in mobility, computing, and augmented reality. He has a solid foundation in Computer Science, with strong competencies in data structures, algorithms, and software design. Currently he works at Yahoo as a software engineer, exploring use-cases that harness the power of AR to control robots. He makes robots perform more efficiently at their job by guiding them remotely via holograms.
Who this course is for:
- Software developer with a basic understanding of computer vision and image processing and want to develop interesting computer vision applications with OpenCV.
- Anyone with a basic knowledge of OpenCV who would like to enhance their knowledge to develop advanced practical applications
Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.
With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.
From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.
Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.