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面向对象编程中关于类和方法的学习笔记
Jun 30 Python
使用python获取csv文本的某行或某列数据的实例
Apr 03 Python
Python实现的计算马氏距离算法示例
Apr 03 Python
python读取LMDB中图像的方法
Jul 02 Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
Oct 31 Python
PyQt5实现五子棋游戏(人机对弈)
Mar 24 Python
Python 3 实现定义跨模块的全局变量和使用教程
Jul 07 Python
使用遗传算法求二元函数的最小值
Feb 11 Python
pytorch中的inference使用实例
Feb 20 Python
浅谈python 类方法/静态方法
Sep 18 Python
用Python自动清理系统垃圾的实现
Jan 18 Python
Python爬取奶茶店数据分析哪家最好喝以及性价比
Sep 23 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中uploaded_files函数使用方法详解
2011/03/09 PHP
详解WordPress中用于更新和获取用户选项数据的PHP函数
2016/03/08 PHP
支付宝服务窗API接口开发php版本
2016/07/20 PHP
PHP数组生成XML格式数据的封装类实例
2016/11/10 PHP
jQuery实现的简单折叠菜单(折叠面板)效果代码
2015/09/16 Javascript
Three.js学习之Lamber材质和Phong材质
2016/08/04 Javascript
JavaScript之面向对象_动力节点Java学院整理
2017/06/29 Javascript
深入探究AngularJs之$scope对象(作用域)
2017/07/20 Javascript
Three.js如何用轨迹球插件(trackball)增加对模型的交互功能详解
2017/09/25 Javascript
基于vue2实现左滑删除功能
2017/11/28 Javascript
vue.js或js实现中文A-Z排序的方法
2018/03/08 Javascript
生产制造追溯系统之再说条码打印
2019/06/03 Javascript
微信小程序 简易计算器实现代码实例
2019/09/02 Javascript
vue 实现走马灯效果
2019/10/28 Javascript
Vue3+elementui plus创建项目的方法
2020/12/01 Vue.js
利用numpy+matplotlib绘图的基本操作教程
2017/05/03 Python
深入理解Python单元测试unittest的使用示例
2017/11/18 Python
Python闭包执行时值的传递方式实例分析
2018/06/04 Python
python3.6.5基于kerberos认证的hive和hdfs连接调用方式
2020/06/06 Python
Python下载网易云歌单歌曲的示例代码
2020/08/12 Python
jupyter notebook远程访问不了的问题解决方法
2021/01/11 Python
美国高端婴童品牌:Hanna Andersson
2016/10/30 全球购物
亚洲独特体验旅游专家:eOasia
2018/08/15 全球购物
会计主管岗位职责范文
2013/11/08 职场文书
家长会学生家长演讲稿
2013/12/29 职场文书
写给保洁员表扬信
2014/01/08 职场文书
建筑投标担保书
2014/05/20 职场文书
团结就是力量演讲稿
2014/05/21 职场文书
软件售后服务承诺书
2014/05/21 职场文书
个人求职自荐信范文
2014/06/20 职场文书
八一建军节慰问信
2015/02/14 职场文书
辞职书格式样本
2015/02/26 职场文书
创业开店,这样方式更合理
2019/08/26 职场文书
详解GaussDB for MySQL性能优化
2021/05/18 MySQL
JS的深浅复制详细
2021/10/16 Javascript
PostgreSQL数据库创建并使用视图以及子查询
2022/04/11 PostgreSQL