Python OpenCV 彩色与灰度图像的转换实现


Posted in Python onJune 05, 2021

彩色图像转换为灰度图像

第一种方式通过 imread 读取图像的时候直接设置参数为 0 ,自动转换彩色图像为灰度图像
第二种方式,可以通过 split 进行通道分离,或者叫做读取单个通道,也可以将一个彩色图像分离成 3 个单通道的灰度图像

今天要学习的方法,是通过一个叫做 cvtColor 的方法实现该操作。

cv2.cvtColor() 方法用于将图像从一种颜色空间转换为另一种颜色空间。
OpenCV 提供了 150 多种 color-space 转换方法。多到用不过来~

该方法的语法格式为:

cv2.cvtColor(src, code[, dst[, dstCn]])

参数:

  • src:它是要更改其色彩空间的图像。
  • code:它是色彩空间转换代码。
  • dst:它是与 src 图像大小和深度相同的输出图像,可选参数。
  • dstCn:它是目标图像中的频道数。如果参数为 0,则通道数自动从 src 和代码得出,可选参数。

参数翻译成中文,也找到了

cvtColor(src,dst,code,dstCn)  ===>  (原图像,color转化代码,输出图像,输出通道)

转换灰度图代码如下:

import cv2

# path
path = './7_1.jpg'

# 读取图片
src = cv2.imread(path)

# 图片展示窗口名称
window_name = 'Image'

# BGR 转换成灰度图
image = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)

cv2.imshow(window_name, image)

cv2.waitKey()

Python OpenCV 彩色与灰度图像的转换实现

也看到了 HSV 格式图片,转换结果如下,有点吓人,顺便转换了其他的一些格式:

import cv2
import matplotlib.pyplot as plt
# path
path = './7_1.jpg'

# 读取图片
src = cv2.imread(path)

# 图片展示窗口名称
window_name = 'Image'

# BGR 转换成 RGB
image1 = cv2.cvtColor(src, cv2.COLOR_BGR2RGB)

# BGR 转换成 Gray
image2 = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)

# BGR 转换成 HSV
image3 = cv2.cvtColor(src, cv2.COLOR_BGR2HSV)

plt.subplot(1, 3, 1)
plt.imshow(image1)
plt.title("RGB")

plt.subplot(1, 3, 2)
plt.imshow(image2,"gray")
plt.title("GRAY")

plt.subplot(1, 3, 3)
plt.imshow(image3,"hsv")
plt.title("hsv")

plt.show()

Python OpenCV 彩色与灰度图像的转换实现

伪彩色图像

彩色图片可以变成灰度图,那相应的灰度图也可以变成彩色的,当然这里说的是伪彩色图像。

这部分内容由于目前应用场景不明确,给大家贴一下我学习过程中看到的博客吧。

https://blog.csdn.net/kingroc/article/details/101302997
https://blog.csdn.net/sns1991sns/article/details/102838303
https://blog.csdn.net/xiaxuesong666/article/details/79522904

关于伪彩色图像的说明,在百度百科可以直接查阅到。

Python OpenCV 彩色与灰度图像的转换实现

感谢大佬方向性的指导

到此这篇关于Python OpenCV 彩色与灰度图像的转换实现的文章就介绍到这了,更多相关OpenCV彩色与灰度图像转换内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python文件右键找不到IDLE打开项解决办法
Jun 08 Python
python自动zip压缩目录的方法
Jun 28 Python
Python中字符串的修改及传参详解
Nov 30 Python
python 读取excel文件生成sql文件实例详解
May 12 Python
python实现zabbix发送短信脚本
Sep 17 Python
在python中安装basemap的教程
Sep 20 Python
基于python实现名片管理系统
Nov 30 Python
对PyQt5基本窗口控件 QMainWindow的使用详解
Jun 19 Python
python使用numpy实现直方图反向投影示例
Jan 17 Python
Python reduce函数作用及实例解析
May 08 Python
python引入其他文件夹下的py文件具体方法
May 23 Python
利用Python实现翻译HTML中的文本字符串
Jun 21 Python
Python深度学习之实现卷积神经网络
python opencv通过4坐标剪裁图片
Jun 05 #Python
Python还能这么玩之只用30行代码从excel提取个人值班表
Jun 05 #Python
拒绝盗图!教你怎么用python给图片加水印
python四个坐标点对图片区域最小外接矩形进行裁剪
Python OpenCV 图像平移的实现示例
Python包argparse模块常用方法
Jun 04 #Python
You might like
php socket实现的聊天室代码分享
2014/08/16 PHP
Yii数据读取与跳转参数传递用法实例分析
2016/07/12 PHP
laravel批量生成假数据的方法
2019/10/09 PHP
使用jquery hover事件实现表格的隔行换色功能示例
2013/09/03 Javascript
手机平板等移动端适配跳转URL的js代码
2014/01/25 Javascript
$.each遍历对象、数组的属性值并进行处理
2014/07/18 Javascript
更快的异步执行(setTimeout多浏览器)
2014/08/12 Javascript
网站基于flash实现的Banner图切换效果代码
2014/10/14 Javascript
node.js中的http.response.end方法使用说明
2014/12/14 Javascript
超实用的JavaScript表单代码段
2016/02/26 Javascript
jQuery深拷贝Json对象简单示例
2016/07/06 Javascript
Node.js Sequelize如何实现数据库的读写分离
2016/10/23 Javascript
JS函数节流和函数防抖问题分析
2017/12/18 Javascript
解决Vue 浏览器后退无法触发beforeRouteLeave的问题
2017/12/24 Javascript
vue中element-ui表格缩略图悬浮放大功能的实例代码
2018/06/26 Javascript
Vue 实现分页与输入框关键字筛选功能
2020/01/02 Javascript
[01:06:54]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第二场 2月28日
2021/03/11 DOTA
Python中正则表达式的用法实例汇总
2014/08/18 Python
Python连接MySQL并使用fetchall()方法过滤特殊字符
2016/03/13 Python
python连接数据库的方法
2017/10/19 Python
python如何求解两数的最大公约数
2018/09/27 Python
python生成多个只含0,1元素的随机数组或列表的实例
2018/11/12 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
2019/08/09 Python
Python3批量移动指定文件到指定文件夹方法示例
2019/09/02 Python
python实现图像拼接
2020/03/05 Python
CSS3 please 跨浏览器的CSS3产生器
2010/03/14 HTML / CSS
HTML5使用DOM进行自定义控制示例代码
2013/06/08 HTML / CSS
html2 canvas生成清晰的图片实现打印功能
2019/09/23 HTML / CSS
使用canvas压缩图片上传的方法示例
2020/02/07 HTML / CSS
交通事故协议书范文
2014/04/16 职场文书
党风廉正建设个人工作总结
2015/03/06 职场文书
房租涨价通知
2015/04/23 职场文书
利用Python网络爬虫爬取各大音乐评论的代码
2021/04/13 Python
使用springboot暴露oracle数据接口的问题
2021/05/07 Oracle
Jackson 反序列化时实现大小写不敏感设置
2021/06/29 Java/Android
http通过StreamingHttpResponse完成连续的数据传输长链接方式
2022/02/12 Python