cv2.imread()和cv2.cvtColor() 的使用

cv2.imread()和cv2.cvtColor() 的使用1 cv2 imread 接口读图像 读进来直接是 BGR 格式数据格式在 0 255 需要特别注意的是图片读出来的格式是 BGR 不是我们最常见的 RGB 格式 颜色肯定有区别 2 cv2 cvtColor p1 p2 是颜色空间转换函数 p1 是需要转换的图片 p2 是转换成何种格式 cv2 COLOR BGR2RGB 将 BGR 格式转换成 RGB 格式 cv2 COLOR BGR2GRAY 将

1、cv2.imread()接口读图像,读进来直接是BGR 格式数据格式在 0~255

需要特别注意的是图片读出来的格式是BGR,不是我们最常见的RGB格式,颜色肯定有区别。

2、cv2.cvtColor(p1,p2) 是颜色空间转换函数,p1是需要转换的图片,p2是转换成何种格式。

cv2.COLOR_BGR2RGB 将BGR格式转换成RGB格式

cv2.COLOR_BGR2GRAY 将BGR格式转换成灰度图片

通过我做的实验和在网上看别人实验的结果,发现转换后并不是通常意义上的黑白图片。根据我问别人后的结果,他说,灰度图片并不是指常规意义上的黑白图片,只用看是不是无符号八位整型(unit8),单通道即可判断。

以下是代码,各位大神若觉得我的理解有问题,欢迎留言沟通。

 

import matplotlib.pyplot as plt import cv2 # cv2.imread()接口读图像,读进来直接是BGR 格式数据格式在 0~255,通道格式为(W,H,C) img_BGR = cv2.imread('D:/Desktop/lena.jpg') plt.subplot(2,2,1) plt.imshow(img_BGR) plt.axis('off') plt.title('BGR') img_RGB = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2RGB) plt.subplot(2,2,2) plt.imshow(img_RGB) plt.axis('off') plt.title('RGB') img_GRAY = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2GRAY) print(img_BGR.shape) print(img_GRAY.shape) print(type(img_GRAY)) print(img_GRAY.astype) print(img_GRAY.dtype.name, img_BGR .dtype.name) from skimage import io,data img=data.chelsea() print(img.dtype.name) plt.subplot(2,2,3); plt.imshow(img_GRAY);plt.axis('off');plt.title('GRAY') img_HSV = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2HSV) plt.subplot(2,2,4); plt.imshow(img_HSV);plt.axis('off');plt.title('HSV') plt.show()

结果如下

cv2.imread()和cv2.cvtColor() 的使用

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/204687.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午7:46
下一篇 2026年3月19日 下午7:46


相关推荐

  • 渗透测试工具下载

    渗透测试工具下载好多工具资源

    2022年8月12日
    8
  • 如何使用Webpack打包

    如何使用Webpack打包简单的说了一下 webpack 是干嘛的 和 webpack 如何安装 如何进行打包 步骤很详细 感兴趣的同学可以试着操作一下 文章目录 1 webpacks 是什么 2 Webpack 安装 3 初始化项目 4 使用 webpack 进行 JS 打包 5 使用 webpack 进行 CSS 打包总结 1 webpacks 是什么 Webpack 是一个前端资源加载 打包工具 它将根据模块的依赖关系进行静态分析 然后将这些模块按照指定的规则生成对应的静态资源 从图中我们可以看出 Webpack 可以将多种静态资源 js css le

    2026年3月18日
    2
  • git常用命令

    git常用命令Git常用命令汇总以及其它相关操作(转载)一、常用的git命令–文件目录操作命令mkdir*创建一个空目录*指目录名pwd显示当前目录的路径。cat*查看*文件内容gitr

    2022年7月4日
    27
  • linux 多ip出口ip,linux查看出口ip的方法

    linux 多ip出口ip,linux查看出口ip的方法1 Curl 纯文本格式输出 curlicanhazi comcurlifcon mecurlcurlmy comcurlip appspot comcurlipinf io ipcurlipecho net plaincurlwww trackip net i2 curlJSON 格式输出 curlipinfo io jsoncurlifco me all

    2026年3月17日
    1
  • vue中使用防抖节流

    vue中使用防抖节流1 什么是防抖节流函数防抖 debounce 是指在一定时间内 在动作被连续频繁触发的情况下 动作只会被执行一次 也就是说当调用动作过 n 毫秒后 才会执行该动作 若在这 n 毫秒内又调用此动作则将重新计算执行时间 所以短时间内的连续动作永远只会触发一次 函数节流是指一定时间内执行的操作只执行一次 也就是说即预先设定一个执行周期 当调用动作的时刻大于等于执行周期则执行该动作 然后进入下一个新周期 一个比较形象的例子是如果将水龙头拧紧直到水是以水滴的形式流出 那你会发现每隔一段时间 就会有一滴水流出

    2026年3月16日
    2
  • 【基础知识】4、python-opencv 入门基础知识

    【基础知识】4、python-opencv 入门基础知识和 Python 一样 当前的 OpenCV 也有两个大版本 OpenCV2 和 OpenCV3 相比 OpenCV2 OpenCV3 提供了更强的功能和更多方便的特性 不过考虑到和深度学习框架的兼容性 以及上手安装的难度 这部分先以 2 为主进行介绍 如果不考虑视频应用 以上三个就是最核心和常用的模块了 NearestNeigh 用于在多维空间进行聚类和检索 经常和关键点匹配搭配使用 regularizati 算法从使用的角度来看 和 OpenCV2 相比 OpenCV3 的主要变化是更多的功能和更细化的模块划分

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号