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

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. 

主站蜘蛛池模板: 开原市| 东乌珠穆沁旗| 全椒县| 岢岚县| 商城县| 西峡县| 安徽省| 扎兰屯市| 江北区| 苏州市| 西盟| 高雄县| 康定县| 光山县| 怀来县| 合作市| 灵宝市| 娄烦县| 玉屏| 潮州市| 额济纳旗| 峨眉山市| 锡林浩特市| 昭苏县| 绥阳县| 江都市| 仁化县| 乌海市| 德阳市| 栾城县| 伊川县| 北流市| 北辰区| 肇源县| 金湖县| 常德市| 湖南省| 永和县| 伊金霍洛旗| 和硕县| 南和县|