- Practical Computer Vision
- Abhinav Dadhich
- 339字
- 2021-06-30 18:54:45
Opencv FAQs
Though we saw an introductory OpenCV programs in previous chapter, we will see some more frequently used code snippets that will be used throughout this book.
- Let's begin with importing OpenCV and will print the version of OpenCV used:
import cv2
print(cv2.__version__)
- We can read an image from a file as:
img = cv2.imread('flower.png')
The previous snippet will decode an image stored in common formats such as .jpg, .png , .jpeg , .tiff , .pgm, and so on. using image codecs either installed with OpenCV or available on the platform. If there are no codecs available, then OpenCV will not be able to read image or write image to a file. So, it is necessary for the user to install codecs on a non-supported platforms such as embedded devices.
We can write an image to file as:
cv2.imwrite('image.png', img)
In writing a file also there is need for image codecs which are generally installed with OpenCV. We can write the image with file formats such as JPG, PNG, JPEG, TIFF, and so on.
Processing a video includes opening a video file and applying algorithms on each frame. We will first initialize the source of frames which can be a video file or an attached USB camera as:
# to use default usb camera set the value to 0
video_capture = cv2.VideoCapture(0)
Or we can also write it as follows:
# to use video file, set filename
video_capture = cv2.VideoCapture('video.avi')
Similar to image reading and writing, video reading will also require codecs which are installed with OpenCV or available from the OS. Once the source is setup we can continue processing each frame as:
while(True):
# get each frame
ret, frame = video_capture.read()
# if no frame available then quit
if not ret:
print("Frame not available")
break
# show read frame in window
cv2.imshow('frame', frame)
# escape the loop on pressing 'q'
if cv2.waitKey(1) & 0xFF == ord('q'):
break
Here cv2.imshow is to display image and cv2.waitKey() is time delay in the execution.
- Instant Raspberry Pi Gaming
- Java編程全能詞典
- 計算機應(yīng)用復(fù)習(xí)與練習(xí)
- Hands-On Machine Learning with TensorFlow.js
- RPA:流程自動化引領(lǐng)數(shù)字勞動力革命
- 自動生產(chǎn)線的拆裝與調(diào)試
- AI 3.0
- 網(wǎng)絡(luò)安全與防護
- 菜鳥起飛系統(tǒng)安裝與重裝
- Visual FoxPro數(shù)據(jù)庫基礎(chǔ)及應(yīng)用
- 從零開始學(xué)PHP
- 基于RPA技術(shù)財務(wù)機器人的應(yīng)用與研究
- 天才與算法:人腦與AI的數(shù)學(xué)思維
- Mastering Machine Learning with R
- 工業(yè)機器人技術(shù)