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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • webstorm格式化代码快捷键[通俗易懂]

    webstorm格式化代码快捷键[通俗易懂]ctrl+alt+L把网易云音乐的快捷键关了就可以了转载于:https://www.cnblogs.com/foreverlin/p/10103283.html

    2022年6月14日
    27
  • Java 面试之 IO 流及Socket

    Java 面试之 IO 流及SocketJava 面试之 IO 流及Socket

    2022年4月22日
    33
  • YUV简介

    YUV简介介绍YUV的相关概念。YUV444YUV422YUV420。YUV与RGB。

    2022年7月16日
    12
  • iservice list方法_MyBatis-Plus IService<T> 方法汇总[通俗易懂]

    一、IService使用1.getOne(),这个是方法返回结果不止一条则会抛出异常,如果想默认取第一条结果,可以给这方法传第二个参数为false。@TestpublicvoidgetOne(){Userone=userService.getOne(Wrappers.lambdaQuery().eq(User::getAge,31),false);System.out.println…

    2022年4月7日
    331
  • iPhone的屏幕尺寸和分辨率

    iPhone的屏幕尺寸和分辨率设计原型时,使用低分辨率的就可以。最终用户界面才使用高分辨率的,以适应苹果Retina屏的显示。iPhone4做原型时,可以用320*480,iPhone5做原型时,可以用320*568,iPhone6做原型时,可以用375*667,iPhone6Plus原型,可以用414×736, 参考链接:http://www.zhihu.com/question/2

    2022年5月14日
    41
  • [图文教程] 手把手教你安装Android SDK

    [图文教程] 手把手教你安装Android SDK配置环境总是痛苦的,不断地找教程,寻方法……在不断犯错的道路上跌跌撞撞……有点收获还好但是!几百年不配置一次环境,要这经验值何用?记录下来吧,以后也可以傻瓜式跟着教程走我已经下载并安装了AndroidStudio没有下载安装的可移步————>AndroidStudio官网下载开始下载AndroidSDK不用跑了——》AndroidSDK免费下载安装地址不让改不是…下一步吧安装权限……好像问题不大,下一步安装位置……可以更改…

    2022年7月21日
    11

发表回复

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

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