二、图片加载与保存

一、基本概念

1,什么是图片?
答:图像是结构化存储的数据信息

2,图像的属性
答:1、通道数目,2、宽与高,3、像素数据,4、图像类型

二、加载显示图像并保存

import cv2
import numpy as npdef get_image_info(image):print(type(image))# <class 'numpy.ndarray'>print(image.shape)# (150, 110, 3)print(image.size)# 49500 = 150*110*3print(image.dtype)# uint8print(np.array(image))'''[[[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]][[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]][[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]]...[[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]][[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]][[255 255 255][255 255 255][255 255 255]...[255 255 255][255 255 255][255 255 255]]]
'''src = cv2.imread("G:/Juptyer_workspace/study/img/water_0.jpg")#加载图片
cv2.namedWindow("input image",cv2.WINDOW_AUTOSIZE)
cv2.imshow("input image",src)
get_image_info(src)
gray = cv2.cvtColor(src,cv2.COLOR_BGR2GRAY)#彩色图片转换为灰度图
cv2.imwrite("G:/Juptyer_workspace/beyond.jpg",src)#保存该图片
cv2.imwrite("G:/Juptyer_workspace/beyond_gray.jpg",gray)#保存该图片的灰度图
cv2.waitKey(0)
cv2.destroyAllWindows()

运行效果如下:在这里插入图片描述
在这里插入图片描述

三、调用电脑摄像头进行实时显示

import cv2
import numpy as npdef video_demo():capture = cv2.VideoCapture(0)#0代表本地电脑自带的摄像头,这里的0也可以换成视频的路径while(True):ret,frame = capture.read()frame = cv2.flip(frame,1)cv2.imshow("video",frame)c = cv2.waitKey(50)if c == 27 :#捕获回车键breaksrc = cv2.imread(("G:\Juptyer_workspace\study\img\water_0.jpg"))
cv2.namedWindow("input image",cv2.WINDOW_AUTOSIZE)
cv2.imshow("input image",src)
video_demo(src)
cv2.waitKey(0)
cv2.destroyAllWindows()

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/378066.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 206. 反转链表 思考分析

题目 反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶: 你可以迭代或递归地反转链表。你能否用两种方法解决这道题&#xff1f; 迭代双指针 从某公众号&#xff08;代码随想录&#xff09;搬过来的gif图&…

怎样看虚拟主机的服务器,虚拟主机怎么查看服务器类型

虚拟主机怎么查看服务器类型 内容精选换一换使用华为云提供的公共镜像制作私有镜像时&#xff0c;您需先购买云主机等云资源时镜像选择公共镜像、云服务器类型建议统一选择“s3 (通用计算型)”&#xff0c;在云主机安装部署完商品&#xff0c;然后参照以下方式进行私有镜像制作…

Anaconda自带Python编译器Jupyter Notebook显示代码行数

ESC&#xff1a;进入命令行模式&#xff1b;按下H即可显示各种快捷键信息 Enter&#xff1a;进入编辑模式 方法一&#xff1a;命令方法 一、点击代码段&#xff0c;按ESC&#xff0c;使代码段显示蓝色&#xff0c;进入命令行模式 二、按下ShiftL&#xff0c;显示代码行数 方法…

(转)MOMO的Unity3D研究院之深入理解Unity脚本的执行顺序(六十二)

http://www.xuanyusong.com/archives/2378 Unity是不支持多线程的&#xff0c;也就是说我们必须要在主线程中操作它&#xff0c;可是Unity可以同时创建很多脚本&#xff0c;并且可以分别绑定在不同的游戏对象身上&#xff0c;他们各自都在执行自己的生命周期感觉像是多线程&…

【C、C++基础】什么时候用 “.” 什么时候用“->”(3个实例搞懂)

从堆栈的角度来说&#xff1a; 从堆栈的角度来说&#xff1a; 对象放在堆上&#xff0c;就要用指针&#xff0c;也就是对象指针->函数&#xff1b; 放在栈上,就对象.函数 那么如何判断对象放在堆上还是栈上&#xff1f; 从我的另一篇笔记【C grammar】C简化内存模型可知&am…

三、Numpy数组操作

一、对图片各个像素点的像素值进行操作 image.shape[0]&#xff1a;image图像的height image.shape[1]&#xff1a;image图像的width image.shape[2]&#xff1a;image图像的channels import cv2 import numpy as npdef access_pixels(image):print(image.shape)height imag…

二叉树笔记(深度遍历与广度遍历+13道leetcode题目(深度3道、广度10道))

本文章为结合leetcode题目以及公众号“代码随想录”的文章所做的笔记&#xff01; 感觉代码随想录的题目整理真的很好&#xff0c;比自己盲目刷题好很多。 目录1、二叉树小记1、满二叉树与完全二叉树2、二叉搜索树3、平衡二叉搜索树AVL4、二叉树存储方式5、二叉树遍历方式6、二…

ZZ的计算器

Problem Description ZZ自从上大学以来&#xff0c;脑容量就是以SB计算的&#xff0c;这个吃货竟然连算术运算也不会了&#xff0c;可是当今的计算机可是非常强大的&#xff0c;作为ACMer&#xff0c; 几个简单的算术又算得了什么呢&#xff1f;可是该怎么做呢&#xff1f;ZZ只…

对视频中的特征颜色物体(青色水杯)进行跟踪

方法一&#xff1a;目标物体白色&#xff0c;其余黑色 import cv2 import numpy as npdef extrace_object():capture cv2.VideoCapture("G:/Juptyer_workspace/study/data/yy.mp4")while(True):ret,frame capture.read()if retFalse:breakhsv cv2.cvtColor(frame…

Android实现号码归属地查询

我们通过发送XML访问 WebService就可以实现号码的归属地查询&#xff0c;我们可以使用代理服务器提供的XML的格式进行设置&#xff0c;然后请求提交给服务器&#xff0c;服务器根据请求就会返回给一个XML&#xff0c;XML中就封装了我们想要获取的数据。 发送XML 1.通过URL封装路…

如何从 Datagrid 中获得单元格的内容与 使用值转换器进行绑定数据的转换IValueConverter...

一、如何从 Datagrid 中获得单元格的内容 DataGrid 属于一种 ItemsControl, 因此&#xff0c;它有 Items 属性并且用ItemContainer 封装它的 items. 但是&#xff0c;WPF中的DataGrid 不同于Windows Forms中的 DataGridView。 在DataGrid的Items集合中&#xff0c;DataGridRow…

【C++ grammar】常量、指针、Usage of using, typedef, and #define

目录1、常量 &#xff08;Constant&#xff09;2、指针&#xff08;Pointer&#xff09;3、Usage of using, typedef, and #define1、常量 &#xff08;Constant&#xff09; 常量是程序中一块数据&#xff0c;这个数据一旦声明后就不能被修改了。 如果这块数据有一个名字&am…

四、色彩空间

一、色彩空间 1、什么是色彩空间&#xff1f; 色彩空间是定义的颜色范围。 2、常见的色彩空间有哪些&#xff1f; ①RGB ②HSV 在OpenCV中&#xff0c;Hue的值为0~180&#xff0c;之所以不是360是因为&#xff0c;8位存不下&#xff0c;故进行归一化操作&#xff0c;使得H…

FIFA的完整形式是什么?

国际足联&#xff1a;国际足球联合会 (FIFA: Federation Internationale de Football Association) FIFA is an abbreviation of the "Federation Internationale de Football Association" in French. It is also known as the International Federation of Associa…

【C++ grammar】重载、内联、变量作用域、带默认参数的函数

目录1、变量的作用域1. 变量的作用域分类2. Unary Scope Resolution (一元作用域解析运算符)2、重载函数3、带有默认参数值的函数4、重载函数 VS 带有默认参数值的函数5、内联函数&#xff08;Inline Function&#xff09;1. 普通函数的优缺点2. 使用内联函数3. 定义内联函数4.…

五、像素运算

一、相关概念 1、算术运算 Ⅰ加减乘除 Ⅱ调节亮度 Ⅲ调整对比度 2、逻辑运算 Ⅰ与或非 Ⅱ遮罩层控制 二、图像算术运算(加减乘除均值方差) 其中图像的加减乘除需要保证两张图像的大小相同 import cv2 import numpy as npdef add(src1,src2):dst cv2.add(src1,src2)cv2.im…

Chaikin Curve(球面插值)

在两条折线间完成平滑的过渡是 用画布做UI 或者做类似地图编辑器一类的工作的 很常见的任务。 怎么样化方为圆是决定工作效率的很重要的因素。&#xff08;当需要编辑的曲线多起来&#xff0c; 复杂起来的时候&#xff0c;这会是件相当繁重的工作&#xff09; 最容易想到的莫非…

六、ROI和泛洪填充

一、ROI ROI&#xff1a;region of interest&#xff0c;即感兴趣区域。 一般主要通过numpy来获取ROI 将某区域转变为灰色图片再覆盖原图像 import cv2 import numpy as npsrc cv2.imread(r"G:\Juptyer_workspace\study\opencv\opencv3\a1.jpg") cv2.imshow(&quo…

django 静态数据_如何在Django中使用静态数据?

django 静态数据Static Data means those data items that we cannot want to change, we want to use them as it is like audio, video, images, files etc. 静态数据是指我们不想更改的数据项&#xff0c;我们想像音频&#xff0c;视频&#xff0c;图像&#xff0c;文件等那…

Leetcode226. 翻转二叉树(递归、迭代、层序三种解法)

目录题目1、层序法&#xff1a;2、递归法&#xff1a;1、先序遍历&#xff08;中左右&#xff09;2、后序遍历&#xff08;左右中&#xff09;3、递归中序遍历为什么不行&#xff08;左中右&#xff09;3、迭代法&#xff1a;1、先序遍历2、中序遍历3、后序遍历为什么迭代法的中…