最近遇到了一个新的情景,需要将彩色图片转化为黑白图片,如果手动地去转化一张一张图片,那就真的太原始人了。

用Python,咱只需要几行代码就可以在几秒内转化上千张图片。而且,这个功能的用途相当广泛,不仅能使图片变得深邃,而且还可以简化一些复杂模型的数学计算,具体可见第三部分的分析。

1.准备

开始之前,你要确保Python和pip已经成功安装在电脑上噢,如果没有,请访问这篇文章:超详细Python安装指南进行安装。

Windows环境下打开Cmd(开始—运行—CMD),苹果系统环境下请打开Terminal(command+空格输入Terminal),准备开始输入命令安装依赖。

当然,我更推荐大家用VSCode编辑器,把本文代码Copy下来,在编辑器下方的终端装依赖模块,多舒服的一件事啊:Python 编程的最好搭档—VSCode 详细指南。

在终端输入以下命令安装我们所需要的依赖模块:

pip install pillow -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

看到 Successfully installed xxx 则说明安装成功。

2.编写代码

首先写一下我们的彩色图转单色图的转化函数,接收两个参数,一个是输入文件的路径,一个是输出文件路径:

熟悉的注释比代码长系列

然后将你需要转化的图片放到一个文件夹中,我这里命名该文件夹为imgs,然后指定一个输出文件夹 output,如下:

这里比较难理解的可能是image_filenames,用到了列表推导式,即遍历所有dataset_dir里的文件:

for file_dir in os.listdir(dataset_dir)

并将其和我们指定的目录以路径的形式链接起来:

os.path.join(output_dir, file_dir)

最终生成一个数组,第一个元素是输入路径,第二个元素是输出路径:

image_filenames = [(os.path.join(dataset_dir, file_dir),os.path.join(output_dir, file_dir)) for file_dir in os.listdir(dataset_dir)]

3.效果及用途

黑白效果就是这样的:

用途当然很多了,比如:

1.在深度学习分类图像的时候,如果并不需要考虑颜色的维度,可以先将图片转化为黑白图,简化运算复杂度。

2.黑白图片有的时候比彩色图片更具备冲击力,能够更加突出主题。

3.黑白图片有些时候也有美颜的作用,因为此时注意力的重点在于脸型,如果那个人的脸型特别好看,但是肤色比较差,这时候黑白照片就很有效果。

如果你喜欢今天的Python 教程,请持续关注Python实用宝典,如果对你有帮助,麻烦在下面点一个赞/在看

,有任何问题都可以在下方留言,我们会耐心解答的!

点击下方阅读原文可以获取所有代码和链接哦!

Python实用宝典 (pythondict.com)

不只是一个宝典

欢迎关注公众号:Python实用宝典

python图片转黑白_Python 批量转化彩色图片为黑白图片相关推荐

  1. python照片转彩色手绘_Python 批量转化彩色图片为黑白图片

    最近遇到了一个新的情景,需要将彩色图片转化为黑白图片,如果手动地去转化一张一张图片,那就真的太原始人了. 用Python,咱只需要几行代码就可以在几秒内转化上千张图片.而且,这个功能的用途相当广泛,不 ...

  2. python千人成像_Python实现千图成像:从图片爬取到图片合成

    千图成像:用N张图片拼凑成一张图片. 实现原理:先将所要成像的图片转化成马赛克图片,然后从图库中用对应颜色的图片替换相应色块. 图库中的图片处理:标记图库中每张图片的混合颜色,用于替换目标色块,并记录 ...

  3. Python脚本工具,PyMuPDF批量提取PDF文件中的图片

    如何批量快速提取出PDF中的图片文件,你是否遇到这样的一个问题,尤其是PPT文件转换为PDF文件,需要快速提取其中的图片文件,如果你恰好会那么一点py,同时复制粘贴没问题的话,那么相信你也能够很轻松的 ...

  4. python 爬取作品集_Python批量抓取站酷ZCOOL作品图片并归档

    前言 前几天,由于个人有需求,所以就要对站酷网一些类别下的作品的图片进行批量抓取,首先是采用的是NodeJs来写的,但是在运行的途中遇到很多的问题,所以后来就换成了Python,同时使用了多线程,使得 ...

  5. python批量读取文件里的图片_Python批量从文件夹中读取图片

    导入必要的库 from PIL import Image import numpy as np 先导入一张图片 X_train = Image.open(r'.\faces\00b34e16b0270 ...

  6. python通过qt5添加水印_Python 批量加水印就这么简单!

    工作的时候,尤其是自媒体,我们必备水印添加工具以保护我们的知识产权 ,网上有许多的在线/下载的水印添加工具,但他们或多或少都存在以下问题: 在线工具需要将图片上传到对方服务器,信息不安全. 很多工具不 ...

  7. python修改文件内容_Python批量修改文本文件内容的方法详解

    这篇文章主要介绍了Python批量修改文本文件内容的方法的相关资料,需要的朋友可以参考下 Python批量替换文件内容,支持嵌套文件夹 import os path="./" fo ...

  8. python输入ip地址_python批量生成本地ip地址的方法

    本文实例讲述了python批量生成本地ip地址的方法.分享给大家供大家参考.具体分析如下: 这段代码用于在本地计算机上生成本地ip地址绑定到网卡,生成的是一个bat的批处理文件,运行此批处理文件,可以 ...

  9. python爬虫贴吧_Python爬虫简单实现,贴吧图片一键下

    在平常上网阅读网页的时刻,经常会看到一些好看的图片,就盼望把这些图片保留下载,或许用户用来做桌面壁纸,或许用来做计划的素材. 最惯例的做法便是经由过程鼠标右键,抉择另存为.但有些图片鼠标右键的时刻并无 ...

  10. python设置文件编码_python批量修改文件编码格式的方法

    本文实例为大家分享了python批量修改文件编码格式的具体代码,供大家参考,具体内容如下 使用说明: 1.使用工具:Python2.7.6+chardet2.3.0,chardet2.3.0下载地址: ...

最新文章

  1. 80页笔记看遍机器学习基本概念、算法、模型,帮新手少走弯路
  2. WebService大讲堂之Axis2(8):异步调用WebService
  3. 用html做一个发送邮件验证,邮件发送还有问题吗?送大家一个写好的类吧,支持stmp认证、HTML格式邮件-PHP教程,PHP应用...
  4. [armv9]-ARMV8/ARMV9安全架构介绍(ARMv9 CCA)
  5. 集成学习之参数调整策略
  6. 安装uwsgi报错:error linking uWSGI解决方法
  7. 前端实现3d效果_前端动画效果实现的简单比较
  8. 深度学习Dubbo系列(入门开篇)
  9. 阿里云前端周刊 - 第 15 期
  10. abstract、virtual、override 和 new
  11. vba,选中带有图片连接的单元格时,自动下载图片
  12. 全新的服务器debian/ubuntu---校准时间、更新apt,设置ssh远程访问
  13. python字体有哪些种类_Python的数据类型(字符串类型),python
  14. 软件是用计算机解决问题,电脑常见的软件问题及解决方法
  15. 20181113-1 版本控制报告
  16. 【计组】字长、数据总线、地址总线
  17. 从零开始学VUE之IDEA安装VUE插件
  18. 百度地图标点鼠标样式更改
  19. PostgreSQL 多维空间几何对象 相交、包含 高效率检索实践 - cube
  20. 全国所有航空公司信息

热门文章

  1. Matlab绘制树形图
  2. where 空集_实验七SQL的空值和空集处理.doc
  3. 加密文件夹里的图片打不开
  4. 交换机组播风暴_「广播风暴」CISCO交换机如何防止广播风暴 - seo实验室
  5. c# 实现的支付宝支付
  6. 如何写一份合格的SAP功能开发说明书--报表类
  7. [jzoj 4244] 【五校联考6day2】yi {贪心}
  8. 【vivado使用】第3篇:BD文件(ip integrator)使用技巧
  9. 自动驾驶 Apollo 源码分析系列,感知篇(三):红绿灯检测和识别
  10. 博客做外链不收录怎么办,如何利用博客做外链