opencv-python(四)

读取图像文件

image = cv2.imread(path, flag)

flag:1. 默认值,依原图像读取图像,保留Alpha透明度通道。2.IMREAD_GRAYSCALE:将图像转为灰度再读取。3.IMREAD_COLOR:将图像转为三通道BGR彩色再读取。

可读取的图像格式:bmp, jpg, jpeg, jpe, tiff, tif, png

显示图像与关闭图像窗口

import cv2
cv2.namedWindow('MyPicture1')
cv2.namedWindow('MyPicture2', cv2.WINDOW_NORMAL)
img1 = cv2.imread('jk.jpg')
img2 = cv2.imread('jk.jpg', cv2.IMREAD_GRAYSCALE)
cv2.imshow('MyPicture1', img1)
cv2.imshow('MyPicture2',img2)
cv2.waitKey(3000)
cv2.destroyWindow('MyPicture1')
cv2.waitKey(8000)
cv2.destroyAllWindows()

cv2.imshow(window_name. image)

建立标题是window_name的窗口,所建立的窗口无法修改大小。

将image图像在window_name窗口显示。

cv2.destoryWindow(window_name)   # 删除单一所指定的窗口

cv2.destoryAllWindow()  # 删除所有opencv的图像窗口

ret_key = cv2.waitKey(delay)

指定时间内没有按下键盘的键,返回值-1。如果按下键盘的键,则返回值是按键的ASCLL码。常用于检测键盘按键。

执行此程序需要设置为英文输入模式,如果输入是一般模式,可以使用 ret_value==ord(key) 判断是否按了特定的键盘字符。

import cv2
img = cv2.imread('jk.jpg')
cv2.imshow('MyPicture', img)
ret_value = cv2.waitKey(0)
if ret_value == ord('Q') or ret_value == ord('q'):cv2.destroyWindow('MyPicture')

delay是毫秒。delay为0或省略,代表无限期等待。

cv2.nameWindow(window_name, flag)

flag:1. WINDOW_NORMAL:用户可以自行调整窗口大小。2.WINDOW_AUTOSIZE:系统依据图像调整窗口大小,用户无法调整。3.WINDOW_OPENGL:将以OpenGL支持方式打开窗口。

图片存储

import cv2cv2.namedWindow('MyPicture')
img = cv2.imread('./jk.jpg')
cv2.imshow('MyPicture', img)
ret = cv2.imwrite('out1_7_1.tiff', img)
if ret:print('存储文件成功')
else:print('存储文件失败')
ret = cv2.imwrite('out1_7_2.png', img)
if ret:print('存储文件成功')
else:print('存储文件失败')
cv2.waitKey(3000)
cv2.destroyAllWindows()

ret = cv2.imwrite(path, image)

存储成功返回True,否则False。

可以存储多种格式,jpg,tiff,png等。

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

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

相关文章

upload-labs-第五关

目录 第五关 1、构造.user.ini文件 2、构造一个一句话木马文件,后缀名为jpg 3、上传.user.ini文件后上传flag.jpg 4、上传成功后访问上传路径 第五关 原理: 这一关采用黑名单的方式进行过滤,不允许上传php、php3、.htaccess等这几类文件…

Python 自定义类型提示 from __future__ import annotations

Python 自定义类型提示 from __future__ import annotations 正文方法1方法2方法3 正文 今天,遇到了一个比较有意思的问题,我自定义一个矢量类型,但是我想在它的方法中加入类型提示,但是遇到了错误,代码如下&#xff…

Vue根据后端返回的tabList动态渲染组件信息

最近做了一个功能&#xff0c;后端根据配置信息&#xff0c;动态返回一个tabList&#xff0c;其中结构是List<String,Object> tabList; map里面的数据是 label、value 页面需要根据tablist动态渲染组件&#xff08;不同的tab都使用了组件进行了封装&#xff09; 实现效果…

都给我冲!微信视频号下载助手可快速提取视频号视频,已测可用

不少视频内容创作者在写文案&#xff0c;以及收集素材的时候发现微信视频号的视频无法下载&#xff0c;该怎么办呢&#xff1f; 都给我冲&#xff01;已实测好用的视频号下载助手&#xff0c;无论是个人或者企业都可以快速保存视频号视频。 你也不用担心自己是用到什么设备&am…

Xilinx的Aurora8B10B ip原理讲解(高速收发器十六)

点击进入高速收发器系列文章导航界面 前文讲解了Aurora 8B/10B协议的一些基础知识&#xff0c;本文对Xilinx的Aurora 8B/10B IP进行讲解&#xff0c;该IP在Aurora 8B/10B的基础之上还完成了字对齐等等操作&#xff0c;开放给用户的端口有axi_full或axi_stream两种格式。 相应的…

17.3 命令行-POSIX特性、安装与分享

1. POSIX特性 在Linux和macOS系统中&#xff0c;大多数命令行工具都要求以推荐标准POSIX指定的方式传递命令行参数。 POSIX即UNIX可移植操作系统接口(Portable Operating System Interface of UNIX)是一套标准&#xff0c;旨在确保操作系统之间彼此兼容。 很多开发人员也希望…

java进阶——JVM 与 Java 体系结构详解

文章目录 1.JVM 与 Java 体系结构1.1. 前言1.1.1. 开发人员如何看待上层框架1.1.1. 我们为什么要学习 JVM&#xff1f;1.1.2. Java vs C 1.2. Java 及 JVM 简介1.2.1. JVM&#xff1a;跨语言的平台1.2.1. 字节码1.2.2. 多语言混合编程 1.3. 虚拟机与 Java 虚拟机1.3.1. 虚拟机1…

vue 弹出框组件重复打开时,资源重新加载

新增或者编辑内容使用同一个弹出框&#xff0c;如何使数据可以重新加载&#xff1f; 1、绑定时间戳&#xff0c;有副作用&#xff0c;屏幕会闪烁一下 <el-dialog :key"timer" > </el-dialog> 2、v-if和:visible.sync同时使用 <el-dialogv-if"…

沃尔沃Volvo EDI:运输标签测试流程

对接Volvo的EDI项目中&#xff0c;需要按照以下流程完成测试&#xff1a; 1.创建EDI连接并且传输第一个交付计划 2.请求发货通知以及运输标签 3.反馈关于发货通知以及运输标签的细节 4.使用生产数据进行最终的验证 在Volvo EDI项目案例中&#xff0c;详细介绍了有关连接测试以…

25届最近5年南京航空航天大学自动化考研院校分析!

南京航空航天大学 一、学校学院专业简介 二、考试科目指定教材 1、考试科目介绍 2、指定教材介绍 三、近5年考研分数情况 以下为南京航空航天大学&#xff0c;自动化学院近几年的考研分数情况。 以下为南京航空航天大学&#xff0c;航天学院近几年的考研分数情况。 以下为南京…

2710. 移除字符串中的尾随零

给你一个用字符串表示的正整数 num &#xff0c;请你以字符串形式返回不含尾随零的整数 num 。 示例 1&#xff1a; 输入&#xff1a;num "51230100" 输出&#xff1a;"512301" 解释&#xff1a;整数 "51230100" 有 2 个尾随零&#xff0c;移除…

React -- memo允许你的组件在 props 没有改变的情况下跳过重新渲染。

memo(Component, arePropsEqual?) 使用 memo 将组件包装起来&#xff0c;以获得该组件的一个 记忆化 版本。通常情况下&#xff0c;只要该组件的 props 没有改变&#xff0c;这个记忆化版本就不会在其父组件重新渲染时重新渲染。但 React 仍可能会重新渲染它&#xff1a;记忆化…

内容产品运营方案业务架构解析与实践探索

### 背景 在信息爆炸的时代背景下&#xff0c;内容产品运营成为各行各业竞争的重要环节。构建合理的内容产品运营方案业务架构&#xff0c;能够帮助企业更好地管理内容生产、推广和变现&#xff0c;提升品牌影响力和商业价值。 ### 业务架构设计 #### 1. 内容生产与管理 建立…

Chrome Plugin静态页面触发CSP如何解决CSP

CSP 内容安全策略 (Content Security Policy)&#xff1a; 内容安全策略是一种计算机安全标准&#xff0c;旨在防御跨站脚本、点击劫持等代码注入攻击&#xff0c;阻止恶意内容在受信网页环境中执行。 Manifest V3 对于内容安全策略有一些默认的设置&#xff0c;如禁止外部代码…

漏洞挖掘 | 记一次信息泄露到登入后台

这次是项目上遇到的一个洞&#xff0c;打开页面是一个红红的登录页面 这里就不放图了&#xff0c;浓浓的红色气息~ 老样子抓登录包 虽然是明文传输但是爆破弱口令无果 f12大法&#xff0c;审计源代码&#xff0c;在其中一个js文件中发现了这个接口 拼接URL进行访问 感觉有点东…

Python与CMD的交织之旅:探索、挑战与突破

Python与CMD的交织之旅&#xff1a;探索、挑战与突破 在编程的世界中&#xff0c;Python以其简洁明了的语法和强大的功能库赢得了广大开发者的青睐。而CMD&#xff0c;作为Windows操作系统的命令行工具&#xff0c;也是程序员们进行各种操作的重要工具。那么&#xff0c;Pytho…

微信小程序和支付宝小程序生成二维码

描述&#xff1a;前端生成二维码 一、页面 <canvas type"2d" style"width: 312px; height: 312px;" id"myQrcode"></canvas>二、微信小程序 安装 weapp-qrcode-canvas-2d 官方文档传送门 const query wx.createSelectorQuery()…

优质域名怎么注册?

在数字化时代&#xff0c;一个优质的域名对于企业和个人品牌的重要性不言而喻。它不仅能够提升品牌形象&#xff0c;还能带来可观的流量和潜在客户。然而&#xff0c;注册一个优质域名并非易事&#xff0c;它需要策略和技巧。本文将探讨如何注册一个优质域名&#xff0c;包括选…

qgroundcontrol编程入门:探索无人机控制的新境界

qgroundcontrol编程入门&#xff1a;探索无人机控制的新境界 在无人机技术的飞速发展下&#xff0c;qgroundcontrol作为一款强大的地面控制站软件&#xff0c;逐渐成为了无人机开发者和爱好者们的首选工具。然而&#xff0c;对于初学者而言&#xff0c;qgroundcontrol的编程入…

二、electron 的 BrowserWindow 的属性

const { app, BrowserWindow } require(electron)function createWindow() {let mainWin new BrowserWindow({x: 100,y: 100, //设置窗口的显示位置&#xff0c;相对于当前屏幕的左上角 show: true, //默认情况下创建一个窗口对象之后就会显示&#xff0c;设置为false&#x…