官术网_书友最值得收藏!

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. 

主站蜘蛛池模板: 日照市| 扎囊县| 嘉定区| 彰化县| 博客| 改则县| 安龙县| 即墨市| 离岛区| 衡阳市| 额尔古纳市| 泰安市| 孟村| 安徽省| 千阳县| 乾安县| 日喀则市| 商都县| 上犹县| 定日县| 波密县| 无极县| 苍南县| 西林县| 兴隆县| 绥宁县| 长武县| 和静县| 梁平县| 民乐县| 门源| 峨山| 浪卡子县| 澄城县| 乡城县| 兴仁县| 屯昌县| 贵定县| 石泉县| 巴中市| 班戈县|