cv2.read 与cv2.imread的区别_vc泡腾片不能和什么一起吃

cv2.read 与cv2.imread的区别_vc泡腾片不能和什么一起吃1、cv2.imread()接口读图像,读进来直接是BGR格式数据格式在0~255需要特别注意的是图片读出来的格式是BGR,不是我们最常见的RGB格式,颜色肯定有区别。2、cv2.cvtColor(p1,p2)是颜色空间转换函数,p1是需要转换的图片,p2是转换成何种格式。cv2.COLOR_BGR2RGB将BGR格式转换成RGB格式cv2.COLOR_BGR2GRAY将…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

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.read 与cv2.imread的区别_vc泡腾片不能和什么一起吃

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • kafka批量删除topic_kafka清空数据

    kafka批量删除topic_kafka清空数据一般情况下,是不会删除数据的。到达一定时间后,kafka会自动删除。如果一定要删除可以删除topic在重建topic了No.1:如果需要被删除topic此时正在被程序produce和consume,则这些生产和消费程序需要停止。因为如果有程序正在生产或者消费该topic,则该topic的offset信息一致会在broker更新。调用kafkadelete命令则无法删除该topi…

    2022年10月17日
    2
  • Oracle如何创建数据库[通俗易懂]

    Oracle如何创建数据库[通俗易懂]C:\Users\爸爸>sqlplus–执行OracleSQL*Plus:Release11.2.0.1.0Productionon星期四3月1014:14:052022Copyright(c)1982,2010,Oracle.Allrightsreserved.请输入用户名:system–用户名输入口令:–密码连接到:OracleDatabase11gEnterpriseEditionRelease11.2.0.1….

    2022年9月22日
    4
  • vim编辑器显示行数过多_vim查看指定行

    vim编辑器显示行数过多_vim查看指定行设置ubuntu的vim编辑器显示行数,方法如下:1.打开终端输入:sudovi/etc/vim/vimrc,打开vim的配置文件(使用sudo可忽视vimrc文件的readonly属性);2.在配置文件中,找到最底行,点击键盘a键,打开输入模式;3.输入:setnu,设置显示行数;4.点击键盘esc键,退出输入模式,点击shift+:,输入:wq,保存退出;至此所有用vim打开的…

    2025年7月21日
    4
  • ZOJ 2412 Farm Irrigation(DFS 条件通讯块)

    ZOJ 2412 Farm Irrigation(DFS 条件通讯块)

    2022年1月5日
    60
  • linux安装软件的三种方式:yum install 、rpm安装以及源码包安装

    linux安装软件的三种方式:yum install 、rpm安装以及源码包安装目录【RPM工具】【yum工具】【安装源码包】正文在windows下安装一个软件很轻松,只要双击setup或者.exe的文件,安装提示连续“下一步”即可,然而linux系统下安装一个软件似乎并不那么轻松了,因为我们不是在图形界面下。所以你要学会如何在linux下安装一个软件。在前面的内容中多次提到的yum,这个yum是Redhat所特有的安装RPM程序…

    2022年5月26日
    44
  • jrtplib接收rtcp_印象笔记是哪国的

    jrtplib接收rtcp_印象笔记是哪国的原博主博客地址:https://blog.csdn.net/qq21497936本文章博客地址:https://blog.csdn.net/qq21497936/article/details/84785284目录前话2019年12月6日补充JRTPLIB介绍CMake介绍JThread编译步骤一:下载JThread1.3.1并解压,如下图:步骤二:新建jthre…

    2022年7月28日
    4

发表回复

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

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