Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
OpenCV 4 for Secret Agents

You're reading from   OpenCV 4 for Secret Agents Use OpenCV 4 in secret projects to classify cats, reveal the unseen, and react to rogue drivers

Arrow left icon
Product type Paperback
Published in Apr 2019
Publisher Packt
ISBN-13 9781789345360
Length 336 pages
Edition 2nd Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Joseph Howse Joseph Howse
Author Profile Icon Joseph Howse
Joseph Howse
Arun Ponnusamy Arun Ponnusamy
Author Profile Icon Arun Ponnusamy
Arun Ponnusamy
Arrow right icon
View More author details
Toc

Table of Contents (16) Chapters Close

Preface 1. Section 1: The Briefing FREE CHAPTER
2. Preparing for the Mission 3. Searching for Luxury Accommodations Worldwide 4. Section 2: The Chase
5. Training a Smart Alarm to Recognize the Villain and His Cat 6. Controlling a Phone App with Your Suave Gestures 7. Equipping Your Car with a Rearview Camera and Hazard Detection 8. Creating a Physics Simulation Based on a Pen and Paper Sketch 9. Section 3: The Big Reveal
10. Seeing a Heartbeat with a Motion-Amplifying Camera 11. Stopping Time and Seeing like a Bee 12. Making WxUtils.py Compatible with Raspberry Pi
13. Learning More about Feature Detection in OpenCV
14. Running with Snakes (or, First Steps with Python)
15. Other Books You May Enjoy

Preparing images and resources for the app

Alongside RequestsUtils.py and ImageSearchSession.py, let's create another file called ResizeUtils.py with the following import statements:

import numpy # Hint to PyInstaller
import cv2

For display in a GUI, images usually have to be resized. One popular mode of resizing is called aspect fill. Here, we want to preserve the image's aspect ratio while changing its larger dimension (width for a landscape image or height for a portrait image) to a certain value. OpenCV does not directly provide this resizing mode, but it does provide a function, cv2.resize, which accepts an image, target dimensions, and optional arguments, including an interpolation method. We can write our own function, cvResizeAspectFill, which accepts an image, maximum size, and preferred interpolation methods for upsizing and downsizing. It determines the appropriate...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime