OpenCV4.8 开发实战系列专栏之 01- 环境搭建与图像读写

news2024/11/15 19:47:59

大家好,欢迎大家学习OpenCV4.8 开发实战专栏,长期更新,不断分享源码。

专栏代码全部基于C++ 与Python双语演示,专栏答疑群 请联系微信 OpenCVXueTang_Asst

本文关键知识点:

开发环境搭建、读取图像与显示图像,读取图像我们使用imread、imshow、imwrite

imshow 函数是 OpenCV 库中用于在窗口中显示图像的一个非常实用的函数。
void cv::imshow	(	
const String & 	winname,
InputArray 	mat 
)	

两个参数解释如下:

winname: 字符串参数,表示窗口的名称。
mat: 要显示的图像。这个参数是图像数据,在 OpenCV 中,图像通常以 BGR(而不是
RGB)通道顺便保存。

imread 函数是 OpenCV 库中用于从指定文件路径读取图像的函数

函数原型
C++

Mat cv::imread	(	
const String & 	filename,
int flags = IMREAD_COLOR 
)	

python

cv2.imread(filename, flags=cv2.IMREAD_COLOR)

filename: 字符串,表示要读取的图像的路径。这可以是相对路径或绝对路径。
flags: 可选参数,指定读取图像的方式。默认值为
IMREAD_COLOR,表示以彩色模式读取图像
IMREAD_GRAYSCALE:以灰度模式读取图像。其中数组的每个元素代表对应像素的灰度值(亮度)
IMREAD_UNCHANGED:包括图像的 alpha通道(如果有的话)的原样读取图像。

演示代码

在这里插入图片描述
python 代码演示

import cv2 as cv
src = cv.imread("D:/images/test.png")
cv.namedWindow("input", cv.WINDOW_AUTOSIZE)
cv.imshow("input", src)
gray = cv.cvtColor(src, cv.COLOR_BGR2GRAY)
cv.imshow("gray", gray)
cv.waitKey(0)
cv.destroyAllWindows()

在这里插入图片描述

VS配置指南

VS2017,创建控制台项目, 按顺序查看,最后两张图即可!
特别注意: 那个预编译头文件,千万不能选择!
在这里插入图片描述
在这里插入图片描述

结束语

学习贵在坚持,学习OpenCV贵在每一天的代码练习,原理跟基本的函数解释,相关知识,后续更新边学边理解,搞技术永远要坚持做长期主义者!我们一起努力!!!

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

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

相关文章

什么是换电连接器

换电连接器是一种高压连接器,安装在整车中,属于车载连接器。它利用导体和绝缘体的特性,将电能和数据信号从换电站设备传输到电动汽车的电池组,实现能源的快速补充。换电连接器通常由插头和插座两部分组成,通过精密的对…

紫光展锐 携手摩托罗拉在全球市场推出强竞争力5G手机moto G35

moto G35 5G亮点 ■ 高清视界:6.72英寸FHDLCD屏幕,120Hz高刷新率; ■ 震撼音效:配备立体声扬声器和杜比全景声Dolby Atmos; ■ 大师影像:5000万像素后置AI相机; ■ 强劲核芯:紫光…

计算机毕业设计Hadoop+Spark知识图谱美团美食推荐系统 美团餐厅推荐系统 美团推荐系统 美食价格预测 美团爬虫 美食数据分析 美食可视化大屏

《HadoopSpark知识图谱美团美食推荐系统》开题报告 一、引言 随着互联网技术的快速发展,大数据已成为企业竞争力的关键要素。美团作为国内领先的本地生活服务平台,拥有海量的用户行为数据和丰富的业务场景。为了进一步提升用户体验,提高推荐…

JVM内存区域详解及DirectByteBuffer内存

Java虚拟机(JVM)是Java程序运行的基础,它为Java程序提供了一个与平台无关的执行环境。JVM内存区域的划分对于理解Java程序的运行机制至关重要。本文将详细介绍JVM的内存区域,并探讨对外内存中的DirectByteBuffer。 方法区&#x…

炉石传说辅助攻略—VMOS云手机助攻:国服回归任务要点,哪个辅助更好?

在《炉石传说》中想要轻松完成各种任务并享受游戏的乐趣,VMOS云手机是您的最佳辅助工具!VMOS云手机为《炉石传说》提供了专属定制版的云手机,内置游戏安装包,不需要重新下载安装游戏,让您快速上手。更棒的是&#xff0…

Misc-流量分析基础

第一种:直接搜索flag字符串 第二种:flag进行了十六进制编码,通过十六进制编码解决 第三种:压缩包流量:tar.gz的压缩包可以直接在wireshark中解压查看,其他的压缩包则要将流量导出来,然后去解码…

微信小程序注册流程及APPID获取(完整版图文教程)

文章目录 前言1. 注册微信小程序账号1.1微信小程序注册1.2 点击注册按钮,进入小程序注册步骤。1.3 填写邮箱、密码、验证码1.4 用户信息登记1.5 微信扫码认证后,回到微信公众平台点击确认提交1.6 进小程序后台,完成注册 2.完善小程序账号信息…

力扣 困难 25.K个一组反转链表

文章目录 题目介绍题解 题目介绍 题解 先把链表的长度求出来,翻转前先判断剩余链表节点的个数,如果大于等于k则翻转,否则直接退出循环返回,每一个小组的翻转和上一题一样。 参考b站灵茶山艾府 class Solution {public ListNo…

汽车3d动画渲染选择哪个?选择最佳云渲染解决方案

面临汽车3D动画渲染挑战?选择正确的云渲染服务至关重要。探索最佳解决方案,优化渲染效率,快速呈现逼真动画。 汽车3d动画渲染选择哪个? 对于汽车3D动画渲染,选择哪个渲染器取决于你的项目需求、预算和期望的效果。Ble…

inBuilder零代码新版表单设计器特性一览

inBuilder零代码新版表单设计器正式上线,此次新版表单设计器相比旧版,优化了界面外观、提升了功能易用性、增加了许多新特性。下面跟随本文简要了解下零代码新设计器主要的几大新特性: 1. 优化设计器界面 新版设计器对表单上控件层级做了一…

素数判断-C语言

1.问题: 输入一个大于3的整数n,判断是否为素数(质数)。 2.解答: 对100-200之间的每一个数进行遍历,如果不能被3整除,就将此数输出,若能被3整除,就不输出此数。 3.代码&…

【CSP】2024第二轮前的准备工作

第二轮成绩还没出,估分有希望但不高,发个帖子涨rp 1. 大纲 目前最新版本2023版NOI大纲 ,字字珠玑要细品,比如这次CSP-J第一轮就考到了格雷编码,没有经历GESP逐级洗礼的普娃哪知道这个啊。 2.在线培训 金牌教练在线…

线程的状态及常用方法

1. 线程的状态 在Java程序中,一个线程对象通过调用start()方法启动线程,并且在线程获取CPU时,自动执行run()方法。run()方法执行完毕,代表线程的生命周期结束。在整个线程的生命周期中,线程的状态有以下6种&#xff1…

network-scripts目录下没有ens33文件的问题

作者:程序那点事儿 日期:2023/11/09 06:52 systemctl start NetworkManager #开启网络管理器nmcli con show #查看ens33网卡对应的是ifcfg-Wired_connection_3这个文件(网络管理器要开启,不然报错),或者根据…

分布式Redis(14)哈希槽

文章目录 一致性哈希算法理论普通哈希的问题一致性hash算法 Redis 使用哈希槽Redis Cluster集群 为什么Redis是使用哈希槽而不是一致性哈希呢?为什么Redis Cluster哈希槽数量是16384? 关键词:一致性 Hash,哈希槽, 带着…

双指针算法详解

什么是双指针 双指针算法是一种常用的算法策略,通常用于处理有序数组或链表,能够高效地解决许多问题。其核心思想是通过维护两个指针在数组或链表中移动,从而达到减少时间复杂度的目的。我们将通过三个示例代码来深入了解双指针算法的…

《动手学深度学习》笔记2.2——神经网络从基础→进阶 (参数管理-每层的权重/偏置)

目录 0. 前言 正文:参数管理 1. 参数访问 1.1 [目标参数] 1.2 [一次性访问所有参数] 1.3 [从嵌套块收集参数] 2. 参数初始化 2.1 [内置初始化] 2.2 [自定义初始化] 2.3 [参数绑定-共享参数] 3. 小结 4. 练习 0. 前言 课程全部代码(pytorch版…

echarts地图的简单使用

echarts地图的简单使用 文章说明核心源码效果展示源码下载 文章说明 主要介绍echarts地图组件的简单使用,记录为文章,供后续查阅使用 目前只是简单的示例,然后还存在着一些小bug,主要是首个Legend的点击会导致颜色全部不展示的问题…

笔试编程-百战成神——Day02

1.简写单词 题目来源: 简写单词——牛客网 测试用例 算法原理 本题的主要难点就是如何识别每一个单词并且返回其首字母大写,最终组成一个新的字符串后输出,这里我们使用while(cin>>str)就可以解决,直接忽略每一个空格直接…

深入理解及如何使用main函数参数

目录 前言:一、main函数参数二、main函数参数的意义及如何使用三、从操作系统层面(指令)理解main函数参数 前言: 在平时编写代码的过程中,我们会经常写main函数,这是一个程序必不可少的,main 函…