图像处理复习

转灰度图像

import cv2
import numpy as np

普通读取图片
img = cv2.imread('image\h.jpg')
读取灰度图像
img = cv2.imread('image\h.jpg',cv2.IMREAD_GRAYSCALE)

展示图片
def show(name,img):
	cv2.imshow(name,img)
	cv2.waitKey(0)
	cv2.destroyAllWindows()

图片的类型:numpy.ndarray
print(type(img))

图片的形状
彩色图片(长,,3)
灰色图片 (,)
print(image.shape)

每个像素点都是整数类型

把彩色图像转为灰度图像
img = cv2.cvtVolor(img,cv2.COLOR_BGR2GRAY)

写图像
cv2.imwrite('image\girl_gray.png',img)
彩色转灰度的公式
Gray = R * 0.299 + G * 0.587 + B * 0.114
cv2.imread()读取图片的格式是BGR

把彩色图片才分为BGR独立通道,各个都是二维的
bImg,gImg,rImg = cv2.split(img)
Graying = np.zeros_like(bImg,dtype='uint8') #创建与bImg相同形状的黑色图像
Graying = rImg*0.299 + gImg*0.587 + bImg*0.114

图像缩放

import cv2
import numpy as np

img = cv2.imread('image\girl.webp')
target_size = (400,200) #宽高
img_scale = cv2.resize(img,target_size)

在使用cv2.imread()读取RGB图像时,得到的array的shape是(长,宽)
使用cv2.resize(),第二个参数是输出图像的(宽,长)
img_scale = cv2.resize(img,(0,0))

图像通道拆分与合并

cv2.split()3通道BGR彩色图像分离为B、G、R单通道图像。

import cv2
import numpy as np

img1 = cv2.imread('image/girl.webp',flags=1) # 读取彩色图像
bImg,gImg,rImg = cv2.split(img1)
# 1.直接使用merge函数
mergeImg = cv2.merge([bImg,gImg,rImg])
# 2.数组赋值
mergeImg = np.zeros_like(img1)
mergeImg[:,:,0] = bImg;
mergeImg[:,:,1] = gImg;
mergeImg[:,:,2] = rImg;
# 3.stack函数
mergeImg = np.stack([bImg,gImg,rImg],axis=2)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

饼干饼干圆又圆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值