Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头


Posted in Python onOctober 22, 2020

一. 打印图片属性、设置图片存储路径

代码如下:

#打印图片的属性、保存图片位置
import cv2 as cv
import numpy as np   #numpy是一个开源的Python科学计算库
def get_image_info(image):
  print(type(image))  #type() 函数如果只有第一个参数则返回对象的类型  在这里函数显示图片类型为 numpy类型的数组
  print(image.shape)
  #图像矩阵的shape属性表示图像的大小,shape会返回tuple元组,
  # 第一个元素表示矩阵行数,第二个元组表示矩阵列数,第三个元素是3,表示像素值由光的三原色组成
  print(image.size) #返回图像的大小,size的具体值为shape三个元素的乘积
  print(image.dtype) #数组元素的类型通过dtype属性获得
  pixel_data=np.array(image)
  print(pixel_data) # 打印图片矩阵   N维数组对象即矩阵对象
src=cv.imread('E:\imageload\example.png')
cv.namedWindow('input_image', cv.WINDOW_AUTOSIZE)
cv.imshow('input_image', src)
get_image_info(src)
cv.imwrite("E:/example.png",src)    #图片存储路径
# gray=cv.cvtColor(src,cv.COLOR_BGR2GRAY)  #使图片颜色变为灰度
# cv.imwrite("E:/example.png",gray)
cv.waitKey(0)
cv.destroyAllWindows()

二.电脑摄像头的调取和显示

代码如下:

#电脑摄像头的调取和显示
import cv2 as cv
def video_demo():
  capture=cv.VideoCapture(0)
  #参数为视频设备的id ,如果只有一个摄像头可以填0,表示打开默认的摄像头   这里的参数也可以是视频文件名路径,只要把视频文件的具体路径写进去就好
  while True: #只要没跳出循环,则会循环播放每一帧 ,waitKey(10)表示间隔10ms
    ret, frame = capture.read()
    #read函数读取视频(摄像头)的某帧,它能返回两个参数. 第一个参数是bool型的ret,其值为True或False,代表有没有读到图片. 第二个参数是frame,是当前截取一帧的图片
    frame=cv.flip(frame,1)
    #翻转 0:沿X轴翻转(垂直翻转)  大于0:沿Y轴翻转(水平翻转)  小于0:先沿X轴翻转,再沿Y轴翻转,等价于旋转180°
    cv.imshow("video",frame)
    pc=cv.waitKey(10)  #超过10ms, waitKey函数会返回-1,如果10ms内在键盘按了某个按键,则 waitKey函数会返回对应按键的ASCII码值,ASCII码值一定大于0
    if pc>0:
      break
    # if cv.waitKey(10) == ord('z'): # 键盘输入z退出窗口,不按z点击关闭会一直关不掉 也可以设置成其他键。 ord()函数返回对应字符的ASCII数值
    #   break
video_demo()
cv.destroyAllWindows()

以上就是Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头的详细内容,更多关于Python+OpenCV图像处理的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python格式化压缩后的JS文件的方法
Mar 05 Python
numpy 返回函数的上三角矩阵实例
Nov 25 Python
关于pytorch处理类别不平衡的问题
Dec 31 Python
Windows系统下pycharm中的pip换源
Feb 23 Python
python实现提取str字符串/json中多级目录下的某个值
Feb 27 Python
python中读入二维csv格式的表格方法详解(以元组/列表形式表示)
Apr 24 Python
Python实现UDP程序通信过程图解
May 15 Python
浅谈tensorflow使用张量时的一些注意点tf.concat,tf.reshape,tf.stack
Jun 23 Python
Keras预训练的ImageNet模型实现分类操作
Jul 07 Python
利用Python如何制作贪吃蛇及AI版贪吃蛇详解
Aug 24 Python
python 进制转换 int、bin、oct、hex的原理
Jan 13 Python
python实现批量提取指定文件夹下同类型文件
Apr 05 Python
Python基于内置函数type创建新类型
Oct 22 #Python
python使用ctypes库调用DLL动态链接库
Oct 22 #Python
Python通过len函数返回对象长度
Oct 22 #Python
python 还原梯度下降算法实现一维线性回归
Oct 22 #Python
利用Pycharm + Django搭建一个简单Python Web项目的步骤
Oct 22 #Python
python处理写入数据代码讲解
Oct 22 #Python
基于Python爬取股票数据过程详解
Oct 21 #Python
You might like
PHP 事务处理数据实现代码
2010/05/13 PHP
本地机apache配置基于域名的虚拟主机详解
2013/08/10 PHP
基于PHP实现用户注册登录功能
2016/10/14 PHP
PHP标准库(PHP SPL)详解
2019/03/16 PHP
PHP7导出Excel报ERR_EMPTY_RESPONSE解决方法
2019/04/16 PHP
php 使用mpdf实现指定字段配置字体样式的方法
2019/07/29 PHP
[原创]静态页面也可以实现预览 列表不同的显示方式
2006/10/14 Javascript
javascript的键盘控制事件说明
2008/04/15 Javascript
jQuery基础语法实例入门
2014/12/23 Javascript
JavaScript学习笔记之内置对象
2015/01/22 Javascript
js+css实现文字散开重组动画特效代码分享
2015/08/21 Javascript
WEB前端实现裁剪上传图片功能
2016/10/17 Javascript
Angular2学习教程之TemplateRef和ViewContainerRef详解
2017/05/25 Javascript
AngularJS中table表格基本操作示例
2017/10/10 Javascript
使用Vue.js和Flask来构建一个单页的App的示例
2018/03/21 Javascript
微信小程序使用npm支持踩坑
2018/11/07 Javascript
判断JavaScript中的两个变量是否相等的操作符
2019/12/21 Javascript
JavaScript中的各种宽高属性的实现
2020/05/08 Javascript
JavaScript实现音乐导航效果
2020/11/19 Javascript
使用scrapy实现爬网站例子和实现网络爬虫(蜘蛛)的步骤
2014/01/23 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
2016/06/30 Python
利用Python爬虫给孩子起个好名字
2017/02/14 Python
python读取图片任意范围区域
2019/01/23 Python
Tensorflow tf.dynamic_partition矩阵拆分示例(Python3)
2020/02/07 Python
python统计字符串中字母出现次数代码实例
2020/03/02 Python
浅谈Tensorflow加载Vgg预训练模型的几个注意事项
2020/05/26 Python
Python map及filter函数使用方法解析
2020/08/06 Python
菲律宾优惠券网站:MetroDeal
2019/04/12 全球购物
建筑专业毕业生自荐信
2014/05/25 职场文书
农村党建工作汇报材料
2014/10/27 职场文书
大学感恩节活动总结
2015/05/05 职场文书
电影地道战观后感
2015/06/04 职场文书
钢琴师观后感
2015/06/12 职场文书
歌咏比赛主持词
2015/06/29 职场文书
pandas DataFrame.shift()函数的具体使用
2021/05/24 Python
MySQL数据管理操作示例讲解
2022/12/24 MySQL