opencv加载图片和视频
一、加载图片:
1.先放一段最简单的加载图片的代码
import cv2 as cv #引用opencv库
image = "D:/Image/test.jpg" #确定图片所在路径
src = cv.imread(image) #读取图片
cv.imshow("Picture", src) #显示图片
cv.waitKey(0) #等待按键关闭,若缺少这条语句图片会无法正常显示
2.三个函数的介绍:
imread():
函数原型:imread(const String& filename,int flags = IMREAD_COLOR)
参数介绍(filename:图片名称,
flag: flag=-1时,8位深度,原通道
flag=0,8位深度,1通道
flag=1, 8位深度 ,3通道 flag默认值为1,显示彩色图像。若更改flag为0,则显示灰度图像。
flag=2,原深度,1通道
flag=3, 原深度,3通道
flag=4,8位深度 ,3通道)
imshow():
函数原型:imshow(const string& winname, InputArray mat)
参数介绍 (winname:显示的窗口名称, mat:要显示的图片)
waitKey():
函数原型:WaitKey(int delay)
参数介绍:delay:让程序等待delay ms后在继续运行其后面的语句。若delay=0,则无限期等待,直到按下键盘任意按键。
此函数的返回值是按下的键的值,仅对opencv产生的窗口有效
3.若要显示加载图片的信息,可添加如下代码:
print(src.shape) # 图像的高,宽,通道数
print(src.size) #图像的大小
print(src.dtype) #图像的字节
二、加载视频:
1.相关代码:
capture = cv.VideoCapture(0) #加载摄像头
while(True): #判断是否加载成功
ret, frame = capture.read()
frame = cv.flip(frame, 1) #对摄像头进行镜像变换
cv.imshow("Video", frame) #显示视频
c = cv.waitKey(50)
if c == 27:
break
2.函数介绍:
Videocapture():
参数介绍:1.若在括号内输入视频名字,如:capture = cv.VideoCapture("D:/Image/test.mp4"),则显示读取到的视频。
2.若输入数字,如0,则显示第零号摄像头看到的视频。
ret, frame = capture.read():
介绍:第一个参数ret 为True 或者False,代表有没有读取到图片
第二个参数frame表示截取到一帧的图片
opencv加载图片和视频的更多相关文章
- opencv加载图片imread失败的原因
用简单的imshow函数加载图片,报加载失败的异常,显示没有将图片加载到内存中.原因是在配置环境是同时将*lib与*d.lib都入了附加依赖项,而项目的生成方式选择的是debug,*lib在*d.li ...
- Unity3d外部加载音频,视频,图片等资源 及根据路径获取制定格式的文件
1.根据路径获取制定文件类型的文件: 这里写一个类,调用了打开路径的方法:using UnityEngine;using System;using System.Collections.Generic ...
- OpenCV教程【002 VideoCapture加载并播放视频】
#include <opencv2/opencv.hpp> #include <iostream> using namespace std; using namespace c ...
- OpenCV使用:加载图片时报错 0x00007FFC1084A839 处(位于 test1.exe 中)有未经处理的异常: Microsoft C++ 异常: cv::Exception,位于内存位置 0x00000026ABAFF1A8 处。
加载图片代码为: #include<iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgu ...
- 多线程异步加载图片async_pictures
异步加载图片 目标:在表格中异步加载网络图片 目的: 模拟 SDWebImage 基本功能实现 理解 SDWebImage 的底层实现机制 SDWebImage 是非常著名的网络图片处理框架,目前国内 ...
- Android中的Glide加载图片
注意:在Android Studio的项目的build.gradle中添加: compile 'com.github.bumptech.glide:glide:3.6.1' 然后同步一下 目录: 使用 ...
- android 加载图片框架--Glide使用详解
一.简介 Glide,一个被google所推荐的图片加载库,作者是bumptech.这个库被广泛运用在google的开源项目中,包括2014年的google I/O大会上发布的官方app.(PS:众所 ...
- 如何使用 opencv 加载 darknet yolo 预训练模型?
如何使用 opencv 加载 darknet yolo 预训练模型? opencv 版本 > 3.4 以上 constexpr const char *image_path = "da ...
- CSS3学习总结——实现瀑布流布局与无限加载图片相册
首先给大家看一下瀑布流布局与无限加载图片相册效果图: 一.pic1.html页面代码如下: <!DOCTYPE html> <html> <head> <me ...
随机推荐
- hdu2476【区间DP,未完待续】
好难搞得东西.... 题意都懒得写了,看题解的巨巨莫怪啊,未完待续未完待续,回去睡觉.
- poj 1743 Musical Theme【二分+SA】
差分,然后二分长度mid,判断是把height按照min不小于mid分组,取最大最小的sa位置看是否>=mid即可,注意差分后最后答案要+1 #include<iostream> # ...
- gcc降版本方法 - [学习]
[转载]转载时请以超链接形式标明文章原始出处和作者信息及本声明http://www.blogbus.com/huangw10-logs/182474992.html 周末折腾了一下午加一夜,终于弄明白 ...
- 第十二篇 .NET高级技术之lambda表达式
最近由于项目需要,刚刚学完了Action委托和Func<T>委托,发现学完了委托就必须学习lambda表达式,委托和Lambda表达式联合起来,才能充分的体现委托的便利.才能使代码更加简介 ...
- php 获得上周数据
$lastMondy = date('Y-m-d', strtotime('-2 sunday +1 days', time()));$lastSundy = date('Y-m-d', strtot ...
- Linux Ubuntu 14.04 LTS下VirtualBox连接USB
1.环境 主机:Ubuntu 14.04 LTS 虚拟机:Windows 7 专业版本 VirtualBox: 图形用户界面版本 5.1.8 r111374 (Qt5.6.1) 2.在主机上给Virt ...
- Contextual Action bar(1) CAB in Android
Contextual Action bar (CAB) in Android BY PARESH MAYANI - OCTOBER, 23RD 2013 Before getting into the ...
- 476 Number Complement 数字的补数
给定一个正整数,输出它的补数.补数是对该数的二进制表示取反.注意: 给定的整数保证在32位带符号整数的范围内. 你可以假定二进制数不包含前导零位.示例 1:输入: 5输出: 2解释: 5的 ...
- P1838 三子棋I
题目描述 小a和uim喜欢互相切磋三子棋.三子棋大家都玩过是吗?就是在九宫格里面OOXX(别想歪了),谁连成3个就赢了. 由于小a比较愚蠢,uim总是让他先. 我们用9个数字表示棋盘位置: 123 4 ...
- Java基础50题test3—水仙花数
水仙花数 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例 如:153 是一个"水仙花数", ...