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实现爬取知乎神回复简单爬虫代码分享
Jan 04 Python
python去除拼音声调字母,替换为字母的方法
Nov 28 Python
在Django model中设置多个字段联合唯一约束的实例
Jul 17 Python
快速解决vue.js 模板和jinja 模板冲突的问题
Jul 26 Python
Python unittest工作原理和使用过程解析
Feb 24 Python
浅谈Python中os模块及shutil模块的常规操作
Apr 03 Python
关于python 的legend图例,参数使用说明
Apr 17 Python
简单了解Python变量作用域正确使用方法
Jun 12 Python
Python模拟登录requests.Session应用详解
Nov 17 Python
python 爬取小说并下载的示例
Dec 07 Python
高考要来啦!用Python爬取历年高考数据并分析
Jun 03 Python
python index() 与 rindex() 方法的使用示例详解
Dec 24 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
用DBSQL类加快开发MySQL数据库程序的速度
2006/10/09 PHP
adodb与adodb_lite之比较
2006/12/31 PHP
PHP Global变量定义当前页面的全局变量实现探讨
2013/06/05 PHP
深入PHP变量存储的详解
2013/06/13 PHP
php和editplus正则表达式去除空白行
2015/04/17 PHP
jquery插件之easing使用
2010/08/19 Javascript
Draggable Elements 元素拖拽功能实现代码
2011/03/30 Javascript
如何在JavaScript中实现私有属性的写类方式(二)
2013/12/04 Javascript
VUEJS实战之构建基础并渲染出列表(1)
2016/06/13 Javascript
基于jQuery实现弹出可关闭遮罩提示框实例代码
2016/07/18 Javascript
详谈Angular路由与Nodejs路由的区别
2017/03/05 NodeJs
基于canvas粒子系统的构建详解
2017/08/31 Javascript
jQuery中 DOM节点操作方法大全
2017/10/12 jQuery
Vue中的无限加载vue-infinite-loading的方法
2018/04/08 Javascript
微信小程序使用map组件实现检索(定位位置)周边的POI功能示例
2019/01/23 Javascript
vue 检测用户上传图片宽高的方法
2020/02/06 Javascript
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
Python对列表去重的多种方法(四种方法)
2017/12/05 Python
python实现括号匹配的思路详解
2018/08/23 Python
Python facenet进行人脸识别测试过程解析
2019/08/16 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
2019/12/06 Python
Python中zip()函数的解释和可视化(实例详解)
2020/02/16 Python
在Python中用GDAL实现矢量对栅格的切割实例
2020/03/11 Python
IE8下CSS3选择器nth-child() 不兼容问题的解决方法
2016/11/16 HTML / CSS
IE支持HTML5的解决方法
2009/10/20 HTML / CSS
手工制作的意大利礼服鞋:Ace Marks
2018/12/15 全球购物
Foot Locker加拿大官网:美国知名运动产品零售商
2019/07/21 全球购物
美国名牌手表折扣网站:Jomashop
2020/05/22 全球购物
七年级政治教学反思
2014/02/03 职场文书
员工工作表现评语
2014/04/26 职场文书
通信工程求职信
2014/07/16 职场文书
会议主持词结束语
2015/07/03 职场文书
2015年女工委工作总结
2015/07/27 职场文书
2016猴年开门红标语口号
2015/12/26 职场文书
nginx处理http请求实现过程解析
2021/03/31 Servers
vscode远程免密登入Linux服务器的配置方法
2022/06/28 Servers