Files
Basic-OpenCV-Tutorial/videos.ipynb
2021-05-24 16:01:29 +03:00

1238 lines
202 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Contents\n",
"\n",
"1. [Capture Video from Camera](#1)\n",
"1. [Capture Video from IP Camera](#2)\n",
"1. [Playing Video from File](#3)\n",
"1. [Playing Video from Youtube](#4)\n",
"1. [Saving a Video](#5)\n",
"1. [Video Capture Properties](#6)\n",
"1. [Background Subtraction](#7)\n",
"1. [Trackbar](#8)\n",
"1. [Simple Blob Detection](#9)\n",
"1. [Calculate FPS](#10)\n",
"1. [Image to Text](#11)\n",
" * [Real Time Text Recognition ](#12)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import cv2\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import time # for calculate FPS\n",
"import pafy # for import video from youtube\n",
"import requests # for using IP camera\n",
"import pytesseract # for image to text\n",
"\n",
"import warnings\n",
"warnings.filterwarnings(\"ignore\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"1\"></a><br>\n",
"# Capture Video from Camera\n",
"\n",
"Often, we have to capture live stream with a camera. OpenCV provides a very simple interface to do this. Let's capture a video from the camera (I am using the built-in webcam on my laptop) and display it. Just a simple task to get started.\n",
"\n",
"To capture a video, you need to create a VideoCapture object. Its argument can be either the device index or the name of a video file. A device index is just the number to specify which camera. Normally one camera will be connected (as in my case). So I simply pass 0. You can select the external camera by passing 1. After that, you can capture frame-by-frame. But at the end, don't forget to release the capture.\n",
"\n",
"* cv2.VideoCapture(0): Means first camera or webcam.\n",
"\n",
"* cv2.VideoCapture(1): Means second camera or webcam.\n",
"\n",
"* cv2.VideoCapture(\"file_name.mp4\"): Means video file"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"cap = cv2.VideoCapture(0)\n",
"\n",
"# check the camera \n",
"if not cap.isOpened():\n",
" \"\"\"\n",
" Sometimes, cap may not have initialized the capture.\n",
" You can check whether it is initialized or not by the method cap.isOpened(). \n",
" If it is True, OK. Otherwise open it using cap.open().\n",
" \"\"\"\n",
" cap.open(index= 0, apiPreference = cv2.CAP_ANY)\n",
" \n",
"while True:\n",
" # Capture frame-by-frame\n",
" isTrue, frame = cap.read() # if frame is read correctly, isTrue is True :)\n",
" \n",
" if isTrue is not True: # if isTrue is False, break the loop, because done video\n",
" break\n",
"\n",
" # flip the frame according to the y-axis\n",
" frame= cv2.flip(frame, 1)\n",
" \n",
" # Display the resulting frame\n",
" cv2.imshow('Frame', frame)\n",
" \n",
" if cv2.waitKey(1) & 0xFF== ord('q'): # if i press q, break the loop\n",
" break\n",
" \n",
"# When everything done, release the capture\n",
"cap.release()\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"2\"></a><br>\n",
"# Capture Video from IP Camera"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# The use of IP cameras made in this way does not require internet, \n",
"# but the computer and camera must be connected to the same network.\n",
"\n",
"url= \"http://10.62.225.180:8081\" # ip cam url\n",
"\n",
"cap= cv2.VideoCapture(url)\n",
"\n",
"while True:\n",
" \n",
" ret, frame= cap.read()\n",
" \n",
" if not ret:\n",
" print(\"Camera is not available\")\n",
" break\n",
" \n",
" cv2.imshow(\"IP Camera\", frame)\n",
" \n",
" if cv2.waitKey(1)== 27: # if press \"esc\" , break the loop\n",
" break\n",
" \n",
"cap.release()\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# if using the request module, internet is required for our connection process.\n",
"\n",
"url= \"http://10.62.225.180:8081//shot.jpg\" # ip cam url\n",
"\n",
"while True:\n",
" \n",
" img_resp= requests.get(url) # getting image \n",
" \n",
" img_arr= np.array(bytearray(img_resp.content), dtype=np.uint8) # setting image dtype\n",
" \n",
" img= cv2.imdecode(img_arr, cv2.IMREAD_COLOR) # decoding\n",
" \n",
" img= cv2.resize( img, (640,480))\n",
" \n",
" cv2.imshow(\"IP Camera\", img)\n",
" \n",
" if cv2.waitKey(1)== 27: # if press \"esc\" , break the loop\n",
" break\n",
" \n",
"cv2.destroyWindow()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"3\"></a><br>\n",
"# Playing Video from File\n",
"\n",
"Playing video from file is the same as capturing it from camera, just change the camera index to a video file name. Also while displaying the frame, use appropriate time for cv2.waitKey(). If it is too less, video will be very fast and if it is too high, video will be slow (Well, that is how you can display videos in slow motion). 25 milliseconds will be OK in normal cases."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"video_path= \"...\\\\Github\\\\Basic OpenCV Tutorial\\\\Videos\\\\MOT17-13-FRCNN-raw.webm\"\n",
"cap = cv2.VideoCapture(video_path)\n",
"\n",
"while True:\n",
" \n",
" ret, frame = cap.read()\n",
" \n",
" if ret is False:\n",
" break\n",
" \n",
" cv2.imshow('Frame', frame)\n",
" \n",
" if cv2.waitKey(25) == ord('q'):\n",
" break\n",
" \n",
"cap.release()\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"4\"></a><br>\n",
"# Playing Video from Youtube"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"url = \"https://youtu.be/M1bhOaLV4FU\"\n",
"video = pafy.new(url)\n",
"best = video.getbest(preftype=\"any\")\n",
"\n",
"cap = cv2.VideoCapture(best.url)\n",
"\n",
"while True:\n",
"\n",
" ret, frame = cap.read()\n",
" \n",
" if not ret:\n",
" break\n",
" \n",
" frame= cv2.resize(frame, (720,480))\n",
"\n",
" cv2.imshow('frame',frame)\n",
" \n",
" if cv2.waitKey(30) & 0xFF== ord(\"q\"):\n",
" break\n",
"\n",
"cap.release()\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"5\"></a><br>\n",
"# Saving a Video\n",
"\n",
"We create a VideoWriter object. First we should specify the output file name (eg: output.avi). Then we should specify the FourCC code. Then number of frames per second (fps) and frame size should be passed. And the last one is the isColor flag. If it is True, the encoder expect color frame, otherwise it works with grayscale frame.\n",
"\n",
"[FourCC](https://en.wikipedia.org/wiki/FourCC) is a 4-byte code used to specify the video codec. The list of available codes can be found in [fourcc web site](https://www.fourcc.org/codecs.php)."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"cap = cv2.VideoCapture(0)\n",
"\n",
"# Define the codec and create VideoWriter object\n",
"fourcc = cv2.VideoWriter_fourcc(*'XVID')\n",
"\n",
"output = cv2.VideoWriter( filename= 'output.avi', \n",
" fourcc= fourcc, \n",
" fps= 25, \n",
" frameSize= (640, 480))\n",
"\n",
"while cap.isOpened():\n",
" \n",
" ret, frame = cap.read()\n",
" \n",
" if not ret:\n",
" break\n",
" \n",
" frame = cv2.flip(frame, 0)\n",
" \n",
" # write the flipped frame\n",
" output.write(frame)\n",
" \n",
" cv2.imshow('frame', frame)\n",
" \n",
" if cv2.waitKey(1) == ord('q'):\n",
" break\n",
" \n",
"# Release everything if job is finished\n",
"cap.release()\n",
"output.release()\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"6\"></a><br>\n",
"# Video Capture Properties"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"video_path= \"...\\\\Github\\\\Basic OpenCV Tutorial\\\\Videos\\\\MOT17-13-FRCNN-raw.webm\"\n",
"cap= cv2.VideoCapture(video_path)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"for i in range(250):\n",
" _, frame= cap.read()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"True\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Decodes and returns the grabbed video frame.\n",
"\"\"\"\n",
"The method decodes and returns the just grabbed frame. \n",
"If no frames has been grabbed (camera has been disconnected, or there are no more frames in video file), \n",
"the method returns false and the function returns an empty image.\n",
"\"\"\"\n",
"ret, grabbed_frame= cap.retrieve()\n",
"print(ret)\n",
"plt.imshow(grabbed_frame[:,:,[2,1,0]]), plt.axis(\"off\");"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For reference, the first argument in the cap.set() and cap.get() command refers to the enumeration of the camera properties, listed below:\n",
"\n",
"\n",
"\n",
"0. CV_CAP_PROP_POS_MSEC: Current position of the video file in milliseconds.\n",
"1. CV_CAP_PROP_POS_FRAMES: 0-based index of the frame to be decoded/captured next.\n",
"2. CV_CAP_PROP_POS_AVI_RATIO: Relative position of the video file\n",
"3. CV_CAP_PROP_FRAME_WIDTH: Width of the frames in the video stream.\n",
"4. CV_CAP_PROP_FRAME_HEIGHT: Height of the frames in the video stream.\n",
"5. CV_CAP_PROP_FPS: Frame rate.\n",
"6. CV_CAP_PROP_FOURCC: 4-character code of codec.\n",
"7. CV_CAP_PROP_FRAME_COUNT: Number of frames in the video file.\n",
"8. CV_CAP_PROP_FORMAT: Format of the Mat objects returned by retrieve() .\n",
"9. CV_CAP_PROP_MODE: Backend-specific value indicating the current capture mode.\n",
"10. CV_CAP_PROP_BRIGHTNESS: Brightness of the image (only for cameras).\n",
"11. CV_CAP_PROP_CONTRAST: Contrast of the image (only for cameras).\n",
"12. CV_CAP_PROP_SATURATION: Saturation of the image (only for cameras).\n",
"13. CV_CAP_PROP_HUE: Hue of the image (only for cameras).\n",
"14. CV_CAP_PROP_GAIN: Gain of the image (only for cameras).\n",
"15. CV_CAP_PROP_EXPOSURE: Exposure (only for cameras).\n",
"16. CV_CAP_PROP_CONVERT_RGB: Boolean flags indicating whether images should be converted to RGB.\n",
"17. CV_CAP_PROP_WHITE_BALANCE: Currently unsupported\n",
"18. CV_CAP_PROP_RECTIFICATION: Rectification flag for stereo cameras (note: only supported by DC1394 v 2.x backend currently)\n",
"\n",
"\n",
"[Source](https://stackoverflow.com/questions/11420748/setting-camera-parameters-in-opencv-python)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Current position of the video file in milliseconds or video capture timestamp: 9960.0\n",
"\n",
"0-based index of the frame to be decoded/captured next: 250.0\n",
"\n",
"Width of the frames in the video stream: 960.0\n",
"\n",
"Height of the frames in the video stream: 540.0\n",
"\n",
"Frame rate: 25.0\n",
"\n",
"Number of frames in the video file: 750.0\n"
]
}
],
"source": [
"# cap.get()\n",
"# Returns the specified VideoCapture property.\n",
"\"\"\"\n",
"Value for the specified property. \n",
"Value 0 is returned when querying a property that is not supported by the backend used by the VideoCapture instance.\n",
"\"\"\"\n",
"\n",
"frame_time= cap.get(cv2.CAP_PROP_POS_MSEC) # index= 0\n",
"\n",
"which_frame= cap.get(cv2.CAP_PROP_POS_FRAMES) # index= 1\n",
"\n",
"frame_width= cap.get(cv2.CAP_PROP_FRAME_WIDTH) # index= 3\n",
"\n",
"frame_height= cap.get(cv2.CAP_PROP_FRAME_HEIGHT) # index= 4\n",
"\n",
"fps= cap.get(cv2.CAP_PROP_FPS) # index= 5\n",
"\n",
"total_frame= cap.get(cv2.CAP_PROP_FRAME_COUNT) # index= 7\n",
"\n",
"print(\"Current position of the video file in milliseconds or video capture timestamp: \", frame_time)\n",
"print()\n",
"print(\"0-based index of the frame to be decoded/captured next: \", which_frame)\n",
"print()\n",
"print(\"Width of the frames in the video stream: \", frame_width)\n",
"print()\n",
"print(\"Height of the frames in the video stream: \", frame_height)\n",
"print()\n",
"print(\"Frame rate: \", fps)\n",
"print()\n",
"print(\"Number of frames in the video file: \", total_frame)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"New position of the video file in milliseconds: 5000.0\n",
"\n",
"New index of the frame: 125.0\n"
]
}
],
"source": [
"# cap.set()\n",
"# Sets a property in the VideoCapture.\n",
"\n",
"cap.set(0, 5000)\n",
"print(\"New position of the video file in milliseconds: \", cap.get(0))\n",
"print()\n",
"cap.set(1, 125)\n",
"print(\"New index of the frame: \", cap.get(1))"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"video_path= \"...\\\\Github\\\\Basic OpenCV Tutorial\\\\Videos\\\\MOT17-13-FRCNN-raw.webm\"\n",
"\n",
"cap= cv2.VideoCapture(video_path)\n",
"\n",
"while True:\n",
" ret, frame= cap.read()\n",
" \n",
" if ret is False:\n",
" break\n",
" \n",
" if cap.get(1)==50:\n",
" cap.set(1, 500)\n",
" \n",
" text= str(cap.get(1))\n",
" cv2.putText(frame, \"Frame: \"+text, (10,30), cv2.FONT_HERSHEY_SIMPLEX, 1, (0,0,255), 2)\n",
" \n",
" cv2.imshow(\"Frame\", frame)\n",
" \n",
" if cv2.waitKey(50)== ord(\"q\"):\n",
" break\n",
" \n",
"cap.release()\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"7\"></a><br>\n",
"# Background Subtraction\n",
"\n",
"* Background subtraction (BS) is a common and widely used technique for generating a foreground mask (namely, a binary image containing the pixels belonging to moving objects in the scene) by using static cameras.\n",
"* As the name suggests, BS calculates the foreground mask performing a subtraction between the current frame and a background model, containing the static part of the scene or, more in general, everything that can be considered as background given the characteristics of the observed scene.\n",
"\n",
"\n",
"* Background modeling consists of two main steps:\n",
"\n",
" 1. Background Initialization;\n",
" 2. Background Update.\n",
" \n",
"* In the first step, an initial model of the background is computed, while in the second step that model is updated in order to adapt to possible changes in the scene.\n",
"\n",
"\n",
"* In this tutorial we will learn how to perform BS by using OpenCV."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"video_path= \"...\\\\Github\\\\Basic OpenCV Tutorial\\\\Videos\\\\MOT17-04-SDP-raw.webm\"\n",
"cap= cv2.VideoCapture(video_path)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [],
"source": [
"#create Background Subtractor objects\n",
"bgSubtractorMOG2 = cv2.createBackgroundSubtractorMOG2()\n",
"bgSubtractorKNN = cv2.createBackgroundSubtractorKNN()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [],
"source": [
"while True:\n",
" ret, frame = cap.read()\n",
" if frame is None:\n",
" break\n",
" \n",
" #resize windows to fit the screen\n",
" frame= cv2.resize(frame, (580, 360))\n",
" \n",
" #update the background model\n",
" fgMaskMOG2 = bgSubtractorMOG2.apply(frame)\n",
" fgMaskKNN = bgSubtractorKNN.apply(frame)\n",
" \n",
" #get the frame number and write it on the current frame\n",
" cv2.rectangle(frame, (10, 2), (110,20), (255,255,255), -1)\n",
" cv2.putText(frame, \"Frame:\"+str(int(cap.get(cv2.CAP_PROP_POS_FRAMES))), (15, 15),\n",
" cv2.FONT_HERSHEY_SIMPLEX, 0.5 , (0,0,0))\n",
" \n",
" #show the current frame and the fg masks\n",
" cv2.imshow('Frame', frame)\n",
" cv2.imshow('FG Mask MOG2', fgMaskMOG2)\n",
" cv2.imshow('FG Mask KNN', fgMaskKNN)\n",
"\n",
" \n",
" keyboard = cv2.waitKey(10)\n",
" if keyboard == ord('q') or keyboard == 27:\n",
" break\n",
" \n",
"cap.release()\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"8\"></a><br>\n",
"# Trackbar"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [],
"source": [
"# trackbar callback function\n",
"def callback(x): # we won't use it, but it is necessary for trackbar\n",
" pass\n",
"\n",
"# create trackbar window\n",
"cv2.namedWindow('Trackbar')\n",
"trackbar = np.zeros((10,500), np.uint8)\n",
"\n",
"# create trackbar \n",
"cv2.createTrackbar(\"Trackbar Trial\", # trackbar name\n",
" \"Trackbar\", # windowName\n",
" 0, # value\n",
" 500, # count \n",
" callback)\n",
"\n",
"while True:\n",
" \n",
" cv2.imshow('Trackbar', trackbar)\n",
" \n",
" if cv2.waitKey(1)== 27:\n",
" break\n",
" \n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [],
"source": [
"\"\"\" ----------------- Getting Trackbar Values ----------------- \"\"\"\n",
"\n",
"\n",
"def nothing(x):\n",
" pass\n",
"\n",
"cv2.namedWindow('Trackbar')\n",
"trackbar = np.zeros((50,500,3), np.uint8)\n",
"\n",
"cv2.createTrackbar(\"Trackbar Trial\", \"Trackbar\", 28, 500, callback)\n",
"\n",
"font= cv2.FONT_HERSHEY_COMPLEX_SMALL\n",
"\n",
"while True:\n",
" \n",
" canvas= trackbar.copy()\n",
" \n",
" value= cv2.getTrackbarPos(trackbarname= 'Trackbar Trial', winname= 'Trackbar' )\n",
" cv2.putText(canvas, \"Value: \"+str(value), (0,40), font, 2, (0,0,255), 2)\n",
" \n",
" cv2.imshow('Trackbar', canvas)\n",
" \n",
" if cv2.waitKey(1)== 27:\n",
" break\n",
" \n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"\"\"\" ----------------- RGB Colorspace with Trackbar ----------------- \"\"\"\n",
"\n",
"\n",
"def nothing(x):\n",
" pass\n",
"\n",
"canvas= np.zeros((300,500,3), np.uint8)\n",
"cv2.namedWindow(\"Canvas\")\n",
"\n",
"cv2.createTrackbar(\"R\", \"Canvas\", 0, 255, nothing)\n",
"cv2.createTrackbar(\"G\", \"Canvas\", 0, 255, nothing)\n",
"cv2.createTrackbar(\"B\", \"Canvas\", 0, 255, nothing)\n",
"cv2.createTrackbar(\"Switch\", \"Canvas\", 0, 1, nothing)\n",
"\n",
"while True:\n",
" \n",
" cv2.imshow(\"Canvas\", canvas)\n",
" \n",
" if cv2.waitKey(1) & 0xFF==ord(\"q\"):\n",
" break\n",
" \n",
" #get trackbar values\n",
" r= cv2.getTrackbarPos(\"R\", \"Canvas\")\n",
" g= cv2.getTrackbarPos(\"G\", \"Canvas\")\n",
" b= cv2.getTrackbarPos(\"B\", \"Canvas\")\n",
" switch= cv2.getTrackbarPos(\"Switch\", \"Canvas\")\n",
" \n",
" if switch: # if switch == 1, color the canvas\n",
" canvas[:]= [b,g,r]\n",
" \n",
" elif not switch: # If the key == 0, the canvas is black\n",
" canvas[:]= [0,0,0]\n",
" \n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"\"\"\" ----------------- Image Transition with Trackbar ----------------- \"\"\"\n",
"\n",
"\n",
"def nothing(x):\n",
" pass\n",
"\n",
"img1 = cv2.imread(\"...\\\\Github\\\\Basic OpenCV Tutorial\\\\Images\\\\aircraft.jpg\")\n",
"img1 = cv2.resize(img1,(640,480))\n",
"\n",
"img2 = cv2.imread(\"...\\\\Github\\\\Basic OpenCV Tutorial\\\\Images\\\\balls.jpg\")\n",
"img2 = cv2.resize(img2,(640,480))\n",
"\n",
"windowName = \"Transition Program\"\n",
"cv2.namedWindow(windowName)\n",
"\n",
"cv2.createTrackbar(\"Alpha-Beta\",windowName,0,1000,nothing)\n",
"\n",
"while True:\n",
"\n",
" alpha = cv2.getTrackbarPos(\"Alpha-Beta\",windowName)/1000\n",
" beta = 1-alpha\n",
" \n",
" output = cv2.addWeighted(img1, alpha, img2, beta, 0)\n",
" \n",
" cv2.imshow(windowName, output)\n",
" \n",
" if cv2.waitKey(1) == 27:\n",
" break\n",
"\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"\"\"\" ----------------- Image Thresholding with Trackbar ----------------- \"\"\"\n",
"\n",
"\n",
"def nothing(x):\n",
" pass\n",
"\n",
"lenna= cv2.imread(\"...\\\\Github\\\\Basic OpenCV Tutorial\\\\Images\\\\lenna.png\", 0)\n",
"\n",
"cv2.namedWindow(\"Trackbar\")\n",
"\n",
"cv2.createTrackbar(\"Thresh Value\", \"Trackbar\", 0, 255, nothing)\n",
"\n",
"while True:\n",
" \n",
" value= cv2.getTrackbarPos(\"Thresh Value\", \"Trackbar\")\n",
" \n",
" _, thresh= cv2.threshold(lenna, value, 255, cv2.THRESH_BINARY)\n",
" \n",
" cv2.imshow(\"Trackbar\", np.hstack([lenna, thresh]))\n",
" \n",
" if cv2.waitKey(1) & 0xFF== ord(\"q\"):\n",
" break\n",
" \n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [],
"source": [
"\"\"\" ----------------- Real Time Shape Detection with Trackbar ----------------- \"\"\"\n",
"\n",
"\n",
"def nothing(x): pass\n",
"\n",
"cap= cv2.VideoCapture(0)\n",
"\n",
"cv2.namedWindow(\"Settings\")\n",
"\n",
"# we create the trackbar for the lower and upper values for the HSV color space\n",
"cv2.createTrackbar(\"Lower-Hue\", \"Settings\", 0, 180, nothing) \n",
"cv2.createTrackbar(\"Lower-Saturation\", \"Settings\", 0, 255, nothing) \n",
"cv2.createTrackbar(\"Lower-Value\", \"Settings\", 0, 255, nothing) \n",
"cv2.createTrackbar(\"Uppuer-Hue\", \"Settings\", 180, 180, nothing) \n",
"cv2.createTrackbar(\"Upper-Saturation\", \"Settings\", 255, 255, nothing) \n",
"cv2.createTrackbar(\"Upper-Value\", \"Settings\", 255, 255, nothing) \n",
"\n",
"font= cv2.FONT_HERSHEY_SIMPLEX\n",
"\n",
"while 1: \n",
" \n",
" _, frame= cap.read()\n",
" \n",
" frame= cv2.flip(frame, 1)\n",
" \n",
" hsv= cv2.cvtColor(frame, cv2.COLOR_BGR2HSV) # convert BGR to HSV\n",
" \n",
" # getting lower and upper values\n",
" lh= cv2.getTrackbarPos(\"Lower-Hue\", \"Settings\")\n",
" ls= cv2.getTrackbarPos(\"Lower-Saturation\", \"Settings\")\n",
" lv= cv2.getTrackbarPos(\"Lower-Value\", \"Settings\")\n",
" uh= cv2.getTrackbarPos(\"Uppuer-Hue\", \"Settings\")\n",
" us= cv2.getTrackbarPos(\"Upper-Saturation\", \"Settings\")\n",
" uv= cv2.getTrackbarPos(\"Upper-Value\", \"Settings\")\n",
"\n",
" # create array using lower and upper values for mask\n",
" lower_color= np.array([lh, ls, lv], np.uint8)\n",
" upper_color= np.array([uh, us, uv], np.uint8)\n",
" \n",
" #create mask\n",
" mask= cv2.inRange(hsv, lower_color, upper_color)\n",
" \n",
" kernel= np.ones((5,5), np.uint8)\n",
" mask= cv2.erode(mask, kernel)\n",
" \n",
" contours,_= cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)\n",
" \n",
" for cnt in contours:\n",
" area= cv2.contourArea(cnt)\n",
" \n",
" epsilon= .01*cv2.arcLength(cnt, True)\n",
" approx= cv2.approxPolyDP(cnt, epsilon, True)\n",
" \n",
" x= approx.ravel()[0]\n",
" y= approx.ravel()[1]\n",
" \n",
" if area > 400:\n",
" cv2.drawContours(frame,[approx],0,(0,0,0),5)\n",
" \n",
" if len(approx)==3:\n",
" cv2.putText(frame,\"Triangle\",(x,y),font,1,(0,0,0))\n",
" \n",
" elif len(approx)==4:\n",
" cv2.putText(frame,\"Rectangle\",(x,y),font,1,(0,0,0))\n",
" \n",
" elif len(approx)>5:\n",
" cv2.putText(frame,\"Circle\",(x,y),font,1,(0,0,0))\n",
"\n",
" cv2.imshow(\"frame\",frame)\n",
" cv2.imshow(\"mask\",mask)\n",
"\n",
" if cv2.waitKey(3) & 0xFF == ord('q'):\n",
" break\n",
"\n",
"cap.release()\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"9\"></a><br>\n",
"# Simple Blob Detection\n",
"\n",
"\n",
"SimpleBlobDetector, as the name implies, is based on a rather simple algorithm described below. The algorithm is controlled by parameters and has the following steps.\n",
"\n",
"\n",
"* Thresholding : Convert the source images to several binary images by thresholding the source image with thresholds starting at minThreshold. These thresholds are incremented by thresholdStep until maxThreshold. So the first threshold is minThreshold, the second is minThreshold + thresholdStep, the third is minThreshold + 2 x thresholdStep, and so on.\n",
"\n",
"* Grouping : In each binary image, connected white pixels are grouped together. Lets call these binary blobs.\n",
"\n",
"* Merging : The centers of the binary blobs in the binary images are computed, and blobs located closer than minDistBetweenBlobs are merged.\n",
"\n",
"* Center & Radius Calculation : The centers and radii of the new merged blobs are computed and returned."
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"scrolled": true
},
"outputs": [],
"source": [
"# Setup SimpleBlobDetector parameters.\n",
"params = cv2.SimpleBlobDetector_Params()\n",
"# Change thresholds\n",
"params.minThreshold = 150\n",
"params.maxThreshold = 255\n",
"# Filter by Area.\n",
"params.filterByArea = True\n",
"params.minArea = 25\n",
"params.maxArea = 150\n",
"# Create a detector with the parameters\n",
"detector= cv2.SimpleBlobDetector_create(params)"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [],
"source": [
"url = \"https://youtu.be/1H_L46D9m0E\"\n",
"video = pafy.new(url)\n",
"best = video.getbest(preftype=\"any\")\n",
"\n",
"cap = cv2.VideoCapture(best.url)\n",
"cap.set(1, 350)\n",
"\n",
"while True:\n",
"\n",
" ret, frame = cap.read()\n",
" \n",
" if not ret or cap.get(1)== 650:\n",
" break\n",
" \n",
" frame= cv2.resize(frame, (640,480))\n",
" \n",
" gray= cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)\n",
"\n",
" # Detect blobs.\n",
" keypoints = detector.detect(gray)\n",
" \n",
" # Draw detected blobs as red circles.\n",
" # cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS ensures the size of the circle corresponds to the size of blob\n",
" blank = np.array([])\n",
" blobs = cv2.drawKeypoints(frame, keypoints, blank, (0,0,255), cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)\n",
"\n",
" cv2.imshow(\"Blob\",blobs)\n",
" \n",
" if cv2.waitKey(1) & 0xFF== ord(\"q\"):\n",
" break\n",
"\n",
"cap.release()\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"10\"></a><br>\n",
"# Calculate FPS\n",
"\n",
"Processing time for this frame = Current time time when previous frame processed\n",
"\n",
"\n",
" FPS = 1 / (Processing time for this frame)"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [],
"source": [
"# creating the video capture object\n",
"# and reading from the input file\n",
"# Change it to 0 if reading from webcam\n",
"\n",
"url = \"https://youtu.be/OOF3MsexHcE\"\n",
"video = pafy.new(url)\n",
"best = video.getbest(preftype=\"any\")\n",
"\n",
"cap = cv2.VideoCapture(best.url)\n",
" \n",
"# used to record the time when we processed last frame\n",
"prev_frame_time = 0\n",
" \n",
"# used to record the time at which we processed current frame\n",
"new_frame_time = 0\n",
" \n",
"# Reading the video file until finished\n",
"while(cap.isOpened()):\n",
" \n",
" # Capture frame-by-frame\n",
" ret, frame = cap.read()\n",
" \n",
" # if video finished or no Video Input\n",
" if not ret:\n",
" break\n",
" \n",
" # Our operations on the frame come here\n",
" gray = frame\n",
" \n",
"\n",
"\n",
"\n",
" # font which we will be using to display FPS\n",
" font = cv2.FONT_HERSHEY_SIMPLEX\n",
" # time when we finish processing for this frame\n",
" new_frame_time = time.time()\n",
" \n",
" # Calculating the fps\n",
" \n",
" # fps will be number of frame processed in given time frame\n",
" # since their will be most of time error of 0.001 second\n",
" # we will be subtracting it to get more accurate result\n",
" fps = 1/(new_frame_time-prev_frame_time)\n",
" prev_frame_time = new_frame_time\n",
" \n",
" # converting the fps into integer\n",
" fps = int(fps)\n",
" \n",
" # converting the fps to string so that we can display it on frame\n",
" # by using putText function\n",
" fps = str(fps)\n",
" \n",
" # puting the FPS count on the frame\n",
" cv2.putText(gray, fps, (7, 70), font, 3, (100, 255, 0), 3, cv2.LINE_AA)\n",
" \n",
" # displaying the frame with fps\n",
" cv2.imshow('frame', gray)\n",
" \n",
" # press 'Q' if you want to exit\n",
" if cv2.waitKey(10) & 0xFF == ord('q'):\n",
" break\n",
" \n",
"# When everything done, release the capture\n",
"cap.release()\n",
"# Destroy the all windows now\n",
"cv2.destroyAllWindows()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"11\"></a><br>\n",
"# Image to Text"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [],
"source": [
"image_path= \"...\\\\Github\\\\Basic OpenCV Tutorial\\\\Images\\\\text.png\" "
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [],
"source": [
"image= cv2.imread(image_path, 0)"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.imshow(image, cmap= \"gray\"), plt.axis(\"off\");"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [],
"source": [
"text= pytesseract.image_to_string(image)"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Hello World !\n",
"\n",
"Image to Text\n",
"\f",
"\n"
]
}
],
"source": [
"print(text)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id = \"12\"></a><br>\n",
"## Real Time Text Recognition"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [],
"source": [
"cap= cv2.VideoCapture(0)\n",
"\n",
"points = []\n",
"font= cv2.FONT_HERSHEY_COMPLEX_SMALL\n",
"\n",
"prev_frame_time = 0\n",
"new_frame_time = 0\n",
"\n",
"fourcc = cv2.VideoWriter_fourcc(*'MPEG')\n",
"\n",
"output = cv2.VideoWriter('output.mp4', fourcc, 20, (640, 480))\n",
"\n",
"while True:\n",
" \n",
" _, frame= cap.read()\n",
" frame= cv2.flip(frame, 1)\n",
" \n",
" # determine the roi\n",
" roi= frame[50:300, 400:600]\n",
" \n",
" # determine the \"CLEAR ALL\" button\n",
" roi[0:30, 0:140]= 0\n",
" cv2.putText(roi, \"CLEAR ALL\", (5,20), font, 1, (255,255,255), 1)\n",
" \n",
" # determine the \"img to text\" button\n",
" roi[220:250, 0:140]= 0\n",
" cv2.putText(roi, \"img2text\", (10,240), font, 1, (255,255,255), 1)\n",
" \n",
" # convert to hsv\n",
" hsv= cv2.cvtColor(roi, cv2.COLOR_BGR2HSV)\n",
" \n",
" # blue color range in hsv\n",
" lower_blue = np.array([100,60,60])\n",
" upper_blue = np.array([115,255,255])\n",
" \n",
" # mask the frame, for blue object detect\n",
" mask= cv2.inRange(hsv, lower_blue, upper_blue)\n",
" mask = cv2.erode(mask,(5,5),iterations =1)\n",
" mask = cv2.morphologyEx(mask,cv2.MORPH_OPEN,(5,5))\n",
" mask = cv2.dilate(mask,(5,5),iterations = 1)\n",
" \n",
" # find contours \n",
" contours,_ =cv2.findContours(mask,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)\n",
" center = None\n",
"\n",
" if len(contours) > 0: # if there is contour\n",
" \n",
" # find the contour with the largest area\n",
" max_contours = sorted(contours, key = cv2.contourArea, reverse=True)[0]\n",
" \n",
" if cv2.contourArea(max_contours) > 350: # if contour area > 350\n",
" # calculate minimum enclosing circle center and radius, and point them\n",
" ((x,y),radius) = cv2.minEnclosingCircle(max_contours)\n",
" cv2.circle(frame[50:300, 400:600], (int(x),int(y)), int(radius), (0,255,255), 3)\n",
" center= (int(x),int(y))\n",
" \n",
" # if there is center, add them to points \n",
" if center:\n",
" x,y= center\n",
" points.append(center)\n",
" \n",
" # If there is object center in \"CLEAR ALL\" , clear all points\n",
" if 0<= x <= 160:\n",
" if 0<= y <= 50:\n",
" points= []\n",
" \n",
" # If there is object center in \"img2text\" , show on screen\n",
" if 0<= x <= 160:\n",
" if 220<= y <= 250: \n",
" text= pytesseract.image_to_string(thresh, lang= \"eng\").split(\"\\n\")[0]\n",
" cv2.putText(frame, text , (400, 350), font, 3, (255,0,0), 3)\n",
" \n",
" # circle the object\n",
" if points:\n",
" for center in points:\n",
" x,y= center\n",
" cv2.circle(frame[50:300, 400:600], (x,y), 5, (0,0,0), -1)\n",
" \n",
" # image binarization for text recognition\n",
" image= frame[80:260, 405:600]\n",
" gray= cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)\n",
" _, thresh= cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY)\n",
" \n",
" # calculate FPS \n",
" new_frame_time = time.time()\n",
" fps = 1/(new_frame_time-prev_frame_time)\n",
" prev_frame_time = new_frame_time\n",
" fps = int(fps)\n",
" fps = str(fps)\n",
" cv2.putText(frame,\"FPS: \"+fps, (10, 50), font, 2, (0, 255, 0), 2, cv2.LINE_AA)\n",
"\n",
" # draw roi\n",
" cv2.rectangle(frame, (400, 50), (600, 300), (0,0,255), 0)\n",
" \n",
" output.write(frame)\n",
" \n",
" cv2.imshow(\"Frame\", frame)\n",
" cv2.imshow(\"Image\", thresh)\n",
"\n",
" \n",
" if cv2.waitKey(1)== 27:\n",
" break\n",
" \n",
"cap.release()\n",
"output.release()\n",
"cv2.destroyAllWindows()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.3"
}
},
"nbformat": 4,
"nbformat_minor": 4
}