python opencv将图片转为灰度图的方法示例


Posted in Python onJuly 31, 2019

使用opencv将图片转为灰度图主要有两种方法,第一种是将彩色图转为灰度图,第二种是在使用OpenCV读取图片的时候直接读取为灰度图

将彩色图转为灰度图

import cv2
import numpy as np

if __name__ == "__main__":
  img_path = "timg.jpg"
  img = cv2.imread(img_path)
  #获取图片的宽和高
  width,height = img.shape[:2][::-1]
  #将图片缩小便于显示观看
  img_resize = cv2.resize(img,
  (int(width*0.5),int(height*0.5)),interpolation=cv2.INTER_CUBIC)
  cv2.imshow("img",img_resize)
  print("img_reisze shape:{}".format(np.shape(img_resize)))

  #将图片转为灰度图
  img_gray = cv2.cvtColor(img_resize,cv2.COLOR_RGB2GRAY)
  cv2.imshow("img_gray",img_gray)
  print("img_gray shape:{}".format(np.shape(img_gray)))
  cv2.waitKey()

img_reisze shape:(337, 600, 3)
img_gray shape:(337, 600)

使用opencv读取图片的时候,默认使用的是BGR来读取图片的,可以看到原始读取的图片是3通道的,经过转换之后变成了单通道。

python opencv将图片转为灰度图的方法示例

直接将图片采用灰度图的方式进行读取

import cv2
import numpy as np

if __name__ == "__main__":
  img_path = "timg.jpg"
  img = cv2.imread(img_path)
  #获取图片的宽和高
  width,height = img.shape[:2][::-1]
  #将图片缩小便于显示观看
  img_resize = cv2.resize(img,
  (int(width*0.5),int(height*0.5)),interpolation=cv2.INTER_CUBIC)
  cv2.imshow("img",img_resize)
  print("img_reisze shape:{}".format(np.shape(img_resize)))

  #读取灰度图
  img_gray = cv2.imread(img_path,cv2.IMREAD_GRAYSCALE)
  #将图片缩小便于显示观看
  img_gray = cv2.resize(img_gray,
  (int(width*0.5),int(height*0.5)),interpolation=cv2.INTER_CUBIC)
  cv2.imshow("img_gray",img_gray)
  print("img_gray shape:{}".format(np.shape(img_gray)))
  cv2.waitKey()

img_reisze shape:(337, 600, 3)
img_gray shape:(337, 600)

python opencv将图片转为灰度图的方法示例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python运用于数据分析的简单教程
Mar 27 Python
Python 25行代码实现的RSA算法详解
Apr 10 Python
Django 浅谈根据配置生成SQL语句的问题
May 29 Python
python list转矩阵的实例讲解
Aug 04 Python
python读取TXT每行,并存到LIST中的方法
Oct 26 Python
对Python强大的可变参数传递机制详解
Jun 13 Python
python跳出双层for循环的解决方法
Jun 24 Python
Python学习笔记之文件的读写操作实例分析
Aug 07 Python
详解python中的三种命令行模块(sys.argv,argparse,click)
Dec 15 Python
python中K-means算法基础知识点
Jan 25 Python
python 将Excel转Word的示例
Mar 02 Python
利用python实时刷新基金估值(摸鱼小工具)
Sep 15 Python
Django中使用极验Geetest滑动验证码过程解析
Jul 31 #Python
Python对接六大主流数据库(只需三步)
Jul 31 #Python
Python爬虫 scrapy框架爬取某招聘网存入mongodb解析
Jul 31 #Python
python爬虫 模拟登录人人网过程解析
Jul 31 #Python
Python爬虫 bilibili视频弹幕提取过程详解
Jul 31 #Python
Django实现跨域的2种方法
Jul 31 #Python
Django CSRF跨站请求伪造防护过程解析
Jul 31 #Python
You might like
一段php加密解密的代码
2007/07/16 PHP
PHP中in_array函数使用的问题与解决办法
2016/09/11 PHP
php判断str字符串是否是xml格式数据的方法示例
2017/07/26 PHP
laravel 实现向公共模板中传值 (view composer)
2019/10/22 PHP
Javascript生成json的函数代码(可以用php的json_decode解码)
2012/06/11 Javascript
JavaScript获取Url里的参数
2014/12/18 Javascript
js实现浮动在网页右侧的简洁QQ在线客服代码
2015/09/04 Javascript
node.js下LDAP查询实例分享
2015/09/30 Javascript
jquery中object对象循环遍历的方法
2015/12/18 Javascript
Angularjs中ng-repeat-start与ng-repeat-end的用法实例介绍
2016/12/31 Javascript
JavaScript实现前端分页控件
2017/04/19 Javascript
vue注册组件的几种方式总结
2018/03/08 Javascript
vue项目webpack中Npm传递参数配置不同域名接口
2018/06/15 Javascript
详解Node.js一行命令上传本地文件到服务器
2019/04/22 Javascript
通过python下载FTP上的文件夹的实现代码
2013/02/10 Python
Python用 KNN 进行验证码识别的实现方法
2018/02/06 Python
Python Django的安装配置教程图文详解
2019/07/17 Python
Django Aggregation聚合使用方法解析
2019/08/01 Python
python+OpenCV实现车牌号码识别
2019/11/08 Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
2019/12/10 Python
解决Python发送Http请求时,中文乱码的问题
2020/04/30 Python
新版Pycharm中Matplotlib不会弹出独立的显示窗口的问题
2020/06/02 Python
adidas美国官网:adidas US
2016/09/21 全球购物
汉语言文学毕业生求职信
2013/10/01 职场文书
大专应届生个人简历的自我评价
2013/10/15 职场文书
企事业单位求职者的自我评价
2013/12/28 职场文书
《灰椋鸟》教学反思
2014/04/27 职场文书
大学生应聘求职信
2014/05/26 职场文书
品牌推广策划方案
2014/05/28 职场文书
感恩祖国演讲稿
2014/09/09 职场文书
2014年优质护理服务工作总结
2014/11/14 职场文书
2014年教务工作总结
2014/12/03 职场文书
2014年教研工作总结
2014/12/06 职场文书
2015年普法依法治理工作总结
2015/05/26 职场文书
少年犯观后感
2015/06/11 职场文书
《帝国时代4》赛季预告 新增内容编译器可创造地图
2022/04/03 其他游戏