跟女朋友旅游三天,Python治好了我的精神内耗…

前阵子请了年假,陪女朋友出了趟远门,途中心情愉悦景色宜人,不过累也是真的累,尤其在几天都没休息好还要一路颠簸回到家之后。

谁想到前脚刚踏回家门的我,刚准备休息,就收到了这样的消息:

图片

把图片逐一保存,没想到她四天功夫竟然拍了小两百张照片。

这就有点让我为难了:首先我现在的工作不需要切图,PS也早就卸载了,其次就算有PS,光是给几百张图套上预设也得好一会儿才能搞定。又累又困还要做事,想想就很折磨。

我有点一筹莫展,一边琢磨一边端详起这些照片来:

图片

由于原图质量还可以,所以如果修的话其实不需要太多操作,因为当天云彩很多光线不是很好,照片颜色有点平淡,可以适当加一下饱和度,同时降低一下亮度,就能得到一张不错的照片了。

这时我突然想起前阵子看OpenCV时用过的一个api,借助python,我们说不定能快速把这几百张图搞定。

首先介绍一下HSV,HSV是一种颜色空间,与RGB通过红绿蓝的组合来描述颜色不同,HSV把颜色拆分为色调(H)、饱和度(S)和明度(V)三个维度,这样能够更直接的表达色彩的明暗以及鲜艳程度,因此广泛应用于图像识别领域。

图片

借助opencv的split()函数,我们可以将图片的HSV变量分离出来,然后修改后再用merge()函数合成一张新的图片,达到批量修改饱和度和明度的效果。同时split()也可以将图片的RGB三颜色通道分离出来,然后单独对某个通道进行修改。

话不多说,开始操作:

import cv2import numpy as npimport osdef modify_image(img_path, target_dir):# 读取全部图片pic = cv2.imread(img_path, cv2.IMREAD_UNCHANGED)# 将图片修改为HSVpichsv = cv2.cvtColor(pic, cv2.COLOR_BGR2HSV)# 提取饱和度和明度H,S,V = cv2.split(pichsv)# S为饱和度,V为明度new_pic = cv2.merge([np.uint8(H), np.uint8(S*1.4), np.uint8(V*0.9)])# 将合并后的图片重置为RGBpictar = cv2.cvtColor(new_pic, cv2.COLOR_HSV2BGR)# 获取原文件名file_name = img_path.split("/")[-1]# 将图片写入目录cv2.imwrite(os.path.join(target_dir, file_name), pictar)root, dirs, files = next(os.walk("./test/"))for item in files:img_path = os.path.join(root,item)process_image(img_path, "./target/")

登录后复制

三下五除二搞定了代码,看眼手机的功夫,几百张图片就处理完毕了。左边是修改前,右边是修改后,可以看到效果还是很明显的,颜色饱满了许多。

图片

几分钟就搞定了所有的图片,女朋友满脸不可思议,但对结果很满意,我当然不会告诉她我是怎么做到的啦。

以上就是跟女朋友旅游三天,Python治好了我的精神内耗…的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2241660.html

(0)
上一篇 2025年2月26日 20:42:18
下一篇 2025年2月24日 01:55:32

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 如何在Python中使用图像语义分割技术?

    随着人工智能技术的不断发展,图像语义分割技术已经成为图像分析领域的热门研究方向。在图像语义分割中,我们将一张图像中的不同区域进行分割,并对每个区域进行分类,从而达到对这张图像的全面理解。 Python是一种著名的编程语言,其强大的数据分析和…

    编程技术 2025年2月26日
    200
  • Python中的图像分类实例

    python是一种广泛使用的编程语言,它在计算机视觉和图像处理方面非常流行。在本文中,我们将探讨python中的图像分类实例。图像分类是计算机视觉中的一项基础任务,它涉及识别图像中的对象或场景。本文将介绍如何使用python中的深度学习框架…

    编程技术 2025年2月26日
    200
  • 如何使用Python对图片进行图像去噪处理

    如何使用Python对图片进行图像去噪处理 图像去噪是图像处理中的一项重要任务,它的目的是去除图像中的噪声,提高图像的质量和清晰度。Python是一种功能强大的编程语言,拥有丰富的图像处理库,如PIL、OpenCV等,可以帮助我们实现图像去…

    2025年2月26日
    200
  • 如何使用Python对图片进行图像增强

    如何使用Python对图片进行图像增强 摘要:图像增强是图像处理中的重要步骤之一,可以提高图片的质量和视觉效果。本文将介绍如何使用Python语言对图片进行图像增强,并附上代码示例进行演示。 一、引入必要的库和模块 在开始之前,我们需要先引…

    2025年2月26日
    200
  • 如何使用Python将图像转换为NumPy数组并保存为CSV文件?

    Python 是一种功能强大的编程语言,拥有大量的库和模块。 NumPy 就是这样的库之一,它用于数值计算和处理大型多维数组和矩阵。 Python 中用于图像处理的另一个流行库是 Pillow,它是 Python 图像库 (PIL) 的一个…

    2025年2月26日
    200
  • 生成任何图像的点状文本的Python脚本

    在数字时代,操纵图像和创造艺术效果已成为一种常见的做法。一种有趣的效果是从图像生成点状文本。此过程涉及将图像的像素转换为点图案,从而创建有趣的文本视觉表示。 在这篇博文中,我们将探索如何创建一个可以从任何给定图像生成点线文本的 Python…

    2025年2月26日
    200
  • Matplotlib保存图像的方法是什么

    Matplotlib保存图像的方法是使用savefig()函数。savefig()函数可以将当前绘图窗口中的内容保存为图像文件,支持多种常见的图像格式,如PNG、JPEG、SVG等。 本教程操作系统:windows10系统、Python3.…

    2025年2月26日
    200
  • 详解Matplotlib图像的保存方法

    Matplotlib图像保存方法详解 Matplotlib是一个Python的绘图库,广泛应用于数据可视化和科学计算。在绘制好图像后,我们常常需要将图像保存下来以备后续使用或者分享给他人。本文将介绍Matplotlib图像保存的几种常见方法…

    2025年2月26日
    200
  • 保存图像的Matplotlib用法

    如何使用Matplotlib保存图像 Matplotlib 是一个Python的绘图库,它提供了丰富的绘图功能。保存绘制的图像是使用Matplotlib的一个常见需求,下面将介绍如何使用Matplotlib保存图像,并提供具体的代码示例。 …

    2025年2月26日
    200
  • PHP中怎么输出图片?(图例详解)

    在之前的文章中给大家带来了《php如何上传文件?看完就明白了!》,其中详细的给大家介绍了在php中应该怎样上传文件,本篇文章来一起看一看php中图像处理的相关知识,希望对大家有帮助! 图像处理是PHP工作中常遇到的事情,我们遇到需要处理图像…

    2025年2月24日 编程技术
    200

发表回复

登录后才能评论