首页 > 编程语言 >python学opencv|读取图像(二)保存彩色图像

python学opencv|读取图像(二)保存彩色图像

时间:2024-12-05 16:56:57浏览次数:6  
标签:picture 彩色图像 python image opencv 001 cv 图片

【1】引言

前序学习过程中,已经掌握了读取图像的基本操作,对三个函数的功能有了基本了解:cv.imread()cv.imshow()cv.imwrite()

学习文章链接为:

python学opencv|读取图像-CSDN博客

不过这篇文章里,我们获得的图像是灰度图。

如果需要彩色图,那又如何处理,这就是本次课程的目的。

【2】官网教程

首先我们来到官网对cv.imread()函数的说明:

OpenCV: Image file reading and writing

说实话这个阅读体验对普通英语水平的西猫雷婶来说不是很友好,所以,我更新换读个半懂然后直接测试代码。

【3】读取功能实现-灰度

首先我需要做准备工作,打开浏览器截了一张颜色还算丰富的图片(opencv-picture-001.png),图片具体效果如图1所示:

图1

然后我先输入下述代码看看图片是否可以正常读取。

import cv2 as cv #引入CV模块

# 读取图片
image = cv.imread('opencv-picture-001.png',0)
# 检查图片是否正确加载
if image is not None:
    # 保存图片
    cv.imshow("Display window", image) #在屏幕上加载图片
    cv.imwrite('opencv-picture-001-gray.jpg', image) #保存图片,特意将其改为JPG格式
    k = cv.waitKey(0) #图片不会自动关闭
else:
    print("Error: 图片无法加载") #如果找不到图片的输出

这段代码非常简单,就是一个读read,显示show和保存write,并且特意将图片格式由PNG保存转换为JPG。

运行代码的输出图像为:

图2

【4】读取功能实现-彩色

在前述基础上,我们尝试增加一些代码,增加部分包括:

【a】再读取一次图片,但是在图片名称后将0改为1:

image = cv.imread('opencv-picture-001.png',0)
image1 = cv.imread('opencv-picture-001.png',1)

【b】保存【a】中读取的图片:

cv.imwrite('opencv-picture-001-0.jpg', image)
cv.imwrite('opencv-picture-001-1.jpg', image1)

运行程序,获得的 opencv-picture-001-1.jpg效果为:

图3

其实继续研究就会发现,只要 cv.imread('图片名',par)这里的par不是0,就会输出彩色图像。

此时的完整代码为:

import cv2 as cv #引入CV模块

# 读取图片
image = cv.imread('opencv-picture-001.png',0)
image1 = cv.imread('opencv-picture-001.png',10)
# 检查图片是否正确加载
if image is not None:
    # 保存图片
    cv.imshow("Display window", image) #在屏幕上加载图片
    cv.imwrite('opencv-picture-001-0.jpg', image) #保存图片,特意将其改为JPG格式
    cv.imwrite('opencv-picture-001-10.jpg', image1) #保存图片,特意将其改为JPG格式
    k = cv.waitKey(0) #图片不会自动关闭
else:
    print("Error: 图片无法加载") #如果找不到图片的输出

【5】总结

掌握了使用python+opencv保存彩色图像的技巧。

标签:picture,彩色图像,python,image,opencv,001,cv,图片
From: https://blog.csdn.net/weixin_44855046/article/details/144269853

相关文章

  • Python 装饰器
    基本概念装饰器是一种强大的工具,允许你在不修改原有函数或方法代码的情况下,给其增加额外的功能。装饰器本质上是一个函数,它接受一个函数作为参数并返回一个新的函数。基本语法defmy_decorator(func):defwrapper(*args,**kwargs):print('函数运行之前')......
  • (2024最新毕设合集)基于SSM的河北省博物馆管理系统-02350|可做计算机毕业设计JAVA、PHP
    目 录摘要1绪论1.1选题背景与意义1.2国内外研究现状1.3论文结构与章节安排2 河北省博物馆管理系统系统分析2.1可行性分析2.1.1技术可行性分析2.1.2 经济可行性分析2.1.3操作可行性分析2.2系统功能分析2.2.1功能性分析2.2.2非功能性分析......
  • 基于python爬虫的豆瓣电影推荐系统
    私信我获取源码和万字论文,制作不易,感谢点赞支持。目  录1团队建设1.1团队的任务和目标1.2团队制度1.3团队任务分配1.4项目进度安排2需求分析2.1国内外研究现状2.2研究背景与意义2.3功能分析和性能分析2.4用例图2.5类图2.6系统E-R图......
  • 停车场车位识别:基于Python和OpenCV(含完整代码)
    停车场车位识别:基于Python和OpenCV一、引言在现代城市生活中,停车场的管理效率对于解决交通拥堵和提升用户体验至关重要。停车场车位识别技术作为智能化停车场管理的核心部分,能够自动检测和识别停车场中的空闲车位,为车主提供便捷的停车引导,同时也便于停车场管理者进行资源......
  • Python如何将Excel数据导入到MySQL数据库?详细教程与实战示例
    在数据处理和分析的过程中,我们常常需要将Excel数据导入到MySQL数据库中,以便进行更高效的查询和管理。那么,如何利用Python实现这一过程呢?本文将深入探讨Python将Excel数据导入到MySQL数据库的方法,并提供详细的教程和实战示例。无论您是初学者还是有经验的开发者,都可以通过本文掌......
  • 如何运用Python爬虫快速获得1688商品详情数据
    在数字化时代,数据的价值日益凸显,尤其是在电商领域。对于企业来说,获取竞争对手的商品信息是分析市场趋势、制定营销策略的重要手段。1688作为中国领先的B2B电商平台,拥有海量的商品数据。本文将介绍如何使用Python编写爬虫程序,以合法合规的方式快速获取1688商品详情,为电商企业提......
  • 【Python项目】基于时间序列分析的降雨量预测系统
    【Python项目】基于时间序列分析的降雨量预测系统技术简介:采用Python技术、B/S结构、MYSQL数据库等实现。系统简介:主要功能包括:(1)登录功能:用户如果想要使用系统,就必须登录系统,登录的时候需要输入用户名和密码。(2)用户管理:包括用户列表、用户增加与删除。(3)降雨量预测功能:输入要......
  • python毕设 校园外卖点餐管理系统程序+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容进度安排:2023年12月:查看相关资料、技术,准备技术文档,做好需求分析;下发任务书;2024年01月:撰写开题报告,并制定软件开发计划,初步设计软件功能架构......
  • Python实现几何分布图(Geometric Distribution)
    几何分布(GeometricDistribution)是一个离散概率分布,用于表示在一次独立重复试验中,直到首次成功所需的试验次数的分布。几何分布的特点1.每次试验的结果只有两种:成功或失败(比如掷硬币)。2.每次试验是独立的,且成功的概率p是恒定的。3.随机变量X表示第一次成功发生所需......
  • RESTful API 简介(Python示例)
    RESTfulAPI是一种基于REST(RepresentationalStateTransfer,表述性状态转移)架构风格的接口设计方法。它通过HTTP协议提供对资源的访问和操作,具有简单、高效和可扩展的特点。REST的核心概念1.资源(Resource)•资源是RESTfulAPI的核心。•每个资源用一个唯一的U......