python opencv 在线读取网络图片图像资源

opencv3.3.0在线读取网络图片图像资源

照例打开opencv3.3.0-python3.6官方文档: 
https://docs.opencv.org/master/d8/dfe/classcv_1_1VideoCapture.html 
这里写图片描述这里写图片描述

详解 
官方文档给出4种用法:

  1. VideoCapture(‘c://video.avi’):直接读入本地的一个视频文件,不解释。
  2. VideoCapture (”c://”+’img_%02d.jpg’):读入本地的图片序列,结果如:img_00.jpg, img_01.jpg, img_02.jpg, …
  3. VideoCapture(url):读入在线网络资料,这个可以发挥的余地就太大了,详情请看后面的实例。
  4. VideoCapture(int index):打开一个设备,通常0就是笔记本自带的摄像头,1就是笔记本扩展的USB-QQ直播用摄像头。

特别说明:VideoCapture()可以带参数int apiPreference,apiPreference preferred Capture API backends to use. Can be used to enforce a specific reader implementation if multiple are available: e.g. cv::CAP_FFMPEG or cv::CAP_IMAGES or cv::CAP_DSHOW. 
关于参数的描述和特征参见: 
https://docs.opencv.org/master/d4/d15/group__videoio__flags__base.html#ga023786be1ee68a9105bf2e48c700294d

VideoCapture的其它函数方法包括open、get、set、grab 、release 、retrieve、isOpened()等,不再讨论,自行学习文档即可。

特别说明:在get得到视频的帧频时,官方文档和网络上大多数的参数都是cap.get(cv2.CV_CAP_PROP_FPS),但在opencv3.3.0中编译不过,应为cap.get(cv2.CV_PROP_FPS)。 
估计许多人会下坑。

实例 
从本地读取文件不再描述,本博客仅展示从网络读入资源文件的练习。

1 读入一个网络图片: 
打开百度,点击图片,输入名称,右键点选一张获取网络地址,填写在url中:

import cv2

cv2.namedWindow('photo',0)   #0窗口大小可以任意拖动,1自适应
cv2.resizeWindow('photo',640,480)

url='http://i5.qhimg.com/t019c3e49c9c9319c33.jpg'
cap=cv2.VideoCapture(url)
ret=cap.isOpened()
while (ret):
    ret,img=cap.read()
    if not ret:break
    cv2.imshow('photo', img)
    cv2.waitKey(0)
cap.release()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

这里写图片描述

2 打开网络视频资源 
网络视频资源包括直播推流rtmp、rtsp、mms等以及Ip摄像头的资源,需要自己到网络上去寻找。 
正是这些网络资源的获取,让opencv给我们进行学习和图片处理带来了极大的便利,必须赞一个!

打开HKS电视台的直播地址

import cv2

cv2.namedWindow('photo',0)   #0窗口大小可以任意拖动,1自适应
cv2.resizeWindow('photo',640,480)

url="rtmp://live.hkstv.hk.lxdns.com/live/hks"
cap=cv2.VideoCapture(url)
ret=cap.isOpened()
while (ret):
    ret,img=cap.read()
    if not ret:break
    cv2.imshow('photo', img)
    if cv2.waitKey(25)==ord(' '):break
cap.release()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

这里写图片描述

打开中央6套高清频道 
这里写图片描述

打开我家客厅萤石C2c网络摄像头的推流视频 
这里写图片描述

我的华为手机变身ipwebcam,直接读取手机移动视频 
这里写图片描述 
看出来屏幕里面的嵌套了吗?

是不是打开了一扇便利之窗!

猜你喜欢

转载自blog.csdn.net/jacke121/article/details/81118028