Title: OpenCV 3.0 released — and the coming changes to the PyImageSearch blog. - PyImageSearch

URL Source: https://pyimagesearch.com/2015/06/08/opencv-3-0-released-and-the-coming-changes-to-the-pyimagesearch-blog/

Published Time: 2015-06-08T14:00:20+00:00

Markdown Content:
[![Image 1: opencv3_installed_examples](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20600%20246'%3E%3C/svg%3E)](https://pyimagesearch.com/wp-content/uploads/2015/06/opencv3_installed_examples.jpg)

It’s been a long time coming, but [**OpenCV 3.0 has finally been released!**](http://opencv.org/opencv-3-0.html)

This update is _definitely_ one of the most extensive overhauls to the library in recent years, and boasts increased stability, performance increases, and OpenCL support.

But _by far_, the most exciting update for us in the Python world is:

**_Python 3 support!_**

After years of being stuck in Python 2.7, **_we can now finally use OpenCV in Python 3.0!_** Awesome news indeed!

**So you might be asking _“What does this mean for PyImageSearch?”_**
---------------------------------------------------------------------

Are we dropping OpenCV 2.4.X immediately and moving to OpenCV 3.0? Are we officially done with Python 2.7?

The short answer is **_no_**.

OpenCV 3.0 being released is **awesome news** — but this is also a _transition time_ for the computer vision community. Some of us will be dependent on the previous OpenCV 2.4.X version. Others will be dashing to grab the latest bleeding-edge copy of v3.0. And perhaps others of us won’t really care what version we are using provided that our code executes and runs as expected.

Because of these variety of reasons, moving forward I will be writing content related to **_both_** OpenCV 2.4.X and OpenCV 3.0.

I think it would be a _huge mistake_ to abandon writing content on OpenCV 2.4.X right now. It’s older. It’s more established. And it’s more widely used.

However, it would be an _equally huge mistake_ to ignore OpenCV 3.0 until it matures and gets a few minor releases under its belt. OpenCV 3.0 is indeed the future — and we need to treat it as such.

Because of this, I have come up with the following plan:

**We’ll be doing a mix of OpenCV 2.4.X and OpenCV 3.0.**
--------------------------------------------------------

OpenCV 3.0 is brand new. It’s shiny. It’s sexy. We’ll definitely be taking off the wrapper and having some fun.

But we’ll still be doing a fair amount of tutorials in OpenCV 2.4.X. Remember, OpenCV 2.4.X is _still_ the _de facto_ library for computer vision and image processing and _will remain so_ until the v3.0 matures a little bit and obtains a substantial adoption rate.

**All _new_ blog posts will be marked with OpenCV + Python versions.**
----------------------------------------------------------------------

All _new_ articles, tutorials, and blog posts published on PyImageSearch will include both the assumed **_OpenCV version_** and **_Python version_** to ensure that you know which development environment we are using.

**You can also expect some OpenCV 3.0 install tutorials on a variety of platforms coming soon.**

**All _old_ blog posts will also be marked with OpenCV + Python versions.**
---------------------------------------------------------------------------

Just like all _new_ posts will list the assumed versions of OpenCV and Python, I will also be going back and updating all _old_ blog posts to include the required versions of OpenCV and Python.

**This change will not happen overnight**, but I’ll be updating a few older articles per week.

The updated posts will include a section like this:

[![Image 2: Figure 1: All blog posts on PyImageSearch will include a section that explicitly defines which Python and OpenCV versions are being used.](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20600%20346'%3E%3C/svg%3E)](https://pyimagesearch.com/wp-content/uploads/2015/06/example_python_opencv_versions.jpg)

**Figure 1:** All blog posts on PyImageSearch will include a section that explicitly defines which Python and OpenCV versions are being used.

**What about _Practical Python and OpenCV + Case Studies_?**
------------------------------------------------------------

You might be wondering about my books, _[Practical Python and OpenCV + Case Studies](https://pyimagesearch.com/practical-python-opencv/)_ — will they be updated to OpenCV 3.0?

**_The answer is YES, Practical Python and OpenCV + Case Studies will absolutely be updated to cover OpenCV 3.0._**

I have already forked the example code from the books and am updating the code examples.

The first update to the book will include revised source code for those who want to run the provided examples using Python 3 and OpenCV 3.0.

The second update will then transition the actual code explanations in the book to OpenCV 3.0.

I will likely be providing **_both a 2.4.X and 3.0 version of the book_**.

**Regardless, the update OpenCV will in _no way_ harm the integrity of _Practical Python and OpenCV + Case Studies_.** Definitely consider [purchasing a copy](https://pyimagesearch.com/practical-python-opencv/) if you want to get up to speed on OpenCV. As I promised above, the book will be updated to cover OpenCV 3.0 as well.

**There _will_ be a transition period.**
----------------------------------------

As I mentioned in the sections above, we will be doing a mix of OpenCV 2.4.X and OpenCV 3.0 articles and tutorials.

**In the beginning most of these tutorials will be using the 2.4.X version.**

But as the OpenCV 3.0 matures, **we’ll mature with it** and start introducing more and more v3.0 tutorials.

Exactly how long will the transition period take?

It’s hard to put an exact timeline on the transition period since it depends on a variety of factors:

*   It depends on how willing developers and programmers are to update to a new version of OpenCV and risk legacy code breaking (which based on my initial tests, that risk is very high).
    
*   It depends on the actual _demand_ of OpenCV 3.0 tutorials.
    
*   And it depends on _your_ feedback
    

My **_guess_** is that it could take up to 6-12 months before we use OpenCV 3.0 regularly on PyImageSearch, but who knows — my estimate could be way off. It could be shorter. And it could be longer.

Realistically, my gut tells me that we won’t be _fully_ transitioning over until the 3.1 release. Remember, PyImageSearch is a **teaching blog**, and thus it’s very important that all of the code examples work as advertised.

**Either way, my promise to you is that I’ll evolve the PyImageSearch blog as OpenCV evolves — and we’ll continue to ensure that PyImageSearch is the _go to_ website to learn computer vision + OpenCV.**

**If anything, the only real change you’ll see is _more_ posts from me.**
-------------------------------------------------------------------------

I think the only big change you’ll see on the PyImageSearch blog is perhaps _more_ blog posts.

Each Monday I’ll continue publishing the **_big_** blog post for the week. And then you might see another short blog post later in the week that details a particular caveat of OpenCV 3.0. As I said, this will be a transition period and each post published will detail the assumed Python and OpenCV versions.

**So what do you think?**
-------------------------

Do you like the plan? Hate the plan?

Leave a comment or [shoot me a message](https://pyimagesearch.com/contact/) — your input and response is what makes this blog possible!

![Image 3](data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20410%20567'%3E%3C/svg%3E)

#### Join the PyImageSearch Newsletter and Grab My FREE 17-page Resource Guide PDF

Enter your email address below to **join the PyImageSearch Newsletter** and **download my FREE 17-page Resource Guide PDF** on Computer Vision, OpenCV, and Deep Learning.