Your browser is ancient!
Upgrade to a different browser to experience this site.

Python Project: Software Engineering and Image Manipulation

What You'll Learn

  • How to inspect and understand APIs and third party libraries to be used with Python 3
  • How to apply the Python imaging library (pillow) to open, view, and manipulate images, including cropping, resizing, recoloring, and overlaying text
  • How to apply the python tesseract (pytesseract) library with Python 3 in order to detect text in images through optical character recognition (OCR)
3 Modules
9 Hours
3 hrs per module (approx.)
Rating

About Python Project: Software Engineering and Image Manipulation

This course will walk you through a hands-on project suitable for a portfolio. You will be introduced to third-party APIs and will be shown how to manipulate images using the Python imaging library (pillow), how to apply optical character recognition to images to recognize text (tesseract and pytesseract). By the end of the course you will have worked with these different libraries available for Python 3 to create a real-world project.

The course is best-suited for learners who have taken the first four courses of the Python 3 Programming Specialization. Learners who already have Python programming skills but want to practice with a hands-on, real-world project can also benefit from this course.

This is the fifth and final course in the Python 3 Programming Specialization.

Skills You'll Gain

  • Object-Oriented Programming (OOP)
  • Python Imaging Libraries (Python Package)
  • Python (Programming Language)
  • Web Development

What You'll Earn

Certificate of Completion
Certificates of completion acknowledge knowledge acquired upon completion of a non-credit course or program.
Experience Type
100% Online
Format
Self-Paced
Subject
  • Computer Science
  • Education
Platform
Coursera
Welcome Message

Welcome to Python Project: Software Engineering and Image Manipulation, a portfolio-focused course where learners apply Python to real-world image processing tasks using industry-standard libraries.
This abbreviated syllabus description was created with the help of AI tools and reviewed by staff. The full syllabus is available to those who enroll in the course.

Course Schedule

Module 1: The Python Imaging Library

  • Video: Introduction to the Specialization
  • Video: Welcome to Python Project: pillow, tesseract, opencv
  • Reading: Syllabus
  • Video: Introduction to Jupyter Notebooks
  • Video: How to install Jupyter on Windows (Optional)
  • Video: How to install Jupyter on a Mac (Optional)
  • Reading: Help Us Learn More About You!
  • Ungraded Lab: Module 1 Lectures
  • Video: The Python Runtime Environment
  • Video: Python Imaging Library (PIL)
  • Video: Common Functions in the Python Imaging Library
  • Video: Additional PIL Functions
  • Video: Introduction to Week One Assignment
  • Ungraded Lab: Week One Assignment - Jupyter Notebook
  • Graded: Week 1 Assignment

Module 2: Tesseract and Optical Character Recognition

  • Ungraded Lab: Module 2 Lectures
  • Video: Introduction to Optical Character Recognition
  • Video: Open-Source Software
  • Video: The (Py)Tesseract Library
  • Video: More Tesseract
  • Video: Tesseract and Photographs
  • Video: Jupyter Widgets (Optional)

Module 3: Computer Vision with OpenCV

  • Ungraded Lab: Module 3 Lectures
  • Video: Release the Kraken!
  • Video: Comparing Image Data Structures
  • Video: OpenCV
  • Video: More Jupyter Widgets (Optional)
  • Reading: Hint 1
  • Reading: Hint 2
  • Reading: Hint 3
  • Reading: Hint 4
  • Ungraded Lab: Project
  • Graded: Project
Grading Policy

Learners must complete all programming assignments and score at least 80% on the assessment in Module 1 and at least 70% on their Module 3 assessment.

Course content developed by U-M faculty and managed by the university. Faculty titles and affiliations are updated periodically.

Intermediate Level

Some related experience required

Enrollment Options

Individuals

This experience is available to individual learners on the following platforms:

U-M Community

Free access is only available to current U-M students, alumni, faculty, and staff.

Organizations

Special pricing and tailored programming bundles available for organizational partners.

What are Coursera and edX?

Michigan Online learning experiences may be hosted on one or more learning platforms. Platform features may vary, including payment models, social communities, and learner support.

Coursera

  • Hosts online courses, series, and Teach-Outs from Michigan Online
  • Enroll and preview courses anytime
  • May earn a non-credit certificate from Coursera

edX

  • Hosts online courses and series from Michigan Online
  • Many offer a free (limited) audit option
  • May earn a non-credit certificate from edX

For more information visit the What are Coursera and edX? FAQ section

Reviews and Ratings

4.0

1585 Ratings from Coursera

Most Recent Reviews

Read all reviews
The Python 3 Programming Specialization was excellent overall, with very precise execution in delivering the relevant concepts. In this final course Professor Brooks delivered an outstandingly articulate and thoughtfully structured high level overview of the software architecting process, basics behind computer images, fundamental tools in the Python Imaging Library and OCR with Tesseract and overview of Jupyter widgets. His personal experience and passion in this area was clear and added appeal to the teaching. The concept for the three module projects, and how each one successively built on those previous is a very solid approach. I appreciate that they were purposely and progressively less structured, adding some challenge and struggle to complete. I think that's appropriate for the capstone course in the series, bringing with it a degree of real world authenticity. I look forward to completing several more U of M offerings on Coursera in the near future.
Thanks to the professors here for the quality course series
Marking issues
is a course to recommend
Don't waste your time
I did not feel like anything was explained to me in a good way. Just felt like I was dumped into a new system I hadn't used before and told to figure it out with little to no help. Everything else in the specialization was great but this was not very helpful.
This module is extremely hard a 360 jump from the previous module.
As many others have said, this course does not feel like a course, it is just 3 notebooks to read, do 2 exercises without good preparation and hoping that your code works, I had to rely on better information and much better explained than the "videos".
The material is interesting. But the course needs some work. It's basically lots of information, little practice or exercises, and one big project at the end.
Too hard for beginner, I think the course need more optional lab that could make people acquainted with the library and function. So I think people shouldn't bought this course, just audit the course, the lab is the same as in video and the project you can find on google( in github or some other platform)

Michigan Online
For You

Sign up for a Michigan Online account to customize your experience!