笔记2 OpenCV图像处理

计算机视觉基础知识

1.|图像的最小单元-像素
在计算机中像素的值通常是用8位的无符号整型表示,取值范围是O-255。
假设图片的颜色变化从黑到白分成256级,这种类型的图片就是我们常说的黑白图片,也叫作单通道图片。
在这里插入图片描述
2. RGB三原色
我们生活中的图像都是有RGB三原色构成的︰R是Red红色,G是Green绿色,B是Blue蓝色。在计算机中RGB这三个颜色的取值通常也是在0-255之间。彩色图片有三个通道,所以是属于三通道图片。
在这里插入图片描述
3.颜色组成

对于3通道图片来说,第一个通道表示红色的数值,第二个通道表示绿色的数值,第三个通道表示蓝色的数值。
在这里插入图片描述
在这里插入图片描述
4.图片的高和宽

每张图片都是由很多个3通道的彩色像素组成的,我们可以把一张图片看成是一个矩阵,图片中的一个像素对应矩阵中的一个位置。
在这里插入图片描述

在这里插入图片描述

图片的存取

在openCV中无论读取还是保存都是按照BGR格式来进行的,matplotlib是按照RGB来进行显示的
准备一张照片备用

读取图片,查看图片数据
0 宽度
1 高度
2 通道数

import cv2
import matplotlib.pyplot as plt
image = cv2.imread('image.jpg')
print("width: %d pixels" % (image.shape[1]))
print("height: %d pixels" % (image.shape[0]))
print("channels: %d pixels" % (image.shape[2]))

在这里插入图片描述

显示图片,可以观察到图片与原始图片部分颜色不一致,原因是因为读入时采用BGR格式,但在输出时采用的是RGB格式

plt.imshow(image)
plt.axis('off')
plt.show()

在这里插入图片描述

调整格式来进行输出

image = cv2.cvtColor(image,cv2.COLOR_BGR2RGB)
plt.imshow(image)
plt.axis('off')
plt.show()

在这里插入图片描述

将图片保存,保存时是按照BGR格式图片

cv2.imwrite("new_image.jpg",image)

在这里插入图片描述

完整代码

import cv2
import matplotlib.pyplot as plt
image = cv2.imread('image.jpg')
print("width: %d pixels" % (image.shape[1]))
print("height: %d pixels" % (image.shape[0]))
print("channels: %d pixels" % (image.shape[2]))
width: 640 pixels
height: 1136 pixels
channels: 3 pixels
plt.imshow(image)
plt.axis('off')
plt.show()

请添加图片描述

image = cv2.cvtColor(image,cv2.COLOR_BGR2RGB)
plt.imshow(image)
plt.axis('off')
plt.show()

请添加图片描述

cv2.imwrite("new_image.jpg",image)
True
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值