python图像处理第四课--图像属性获取、ROI操作及图像通道处理--小白的成长历程

#目的为记录在自己运行时存在的问题及解决方法,本文基于CSDN社区的Eastmount大佬的课程,通过学习,其中也增加了自己的考量和问题的解决。

一、获取图像属性

  1. 采用shape关键字输出图片的“形状”,包括行数、列数和通道数,灰度图只有行数和列数。
import cv2
import numpy
#读取图片
img = cv2.imread("C:/Users/CLH/Desktop/test1.JPG",cv2.IMREAD_UNCHANGED)
#获取图像形状
print(img.shape)

#结果
(768, 1024, 3)
  1. 通过size关键字获取像素数目,其值就等于行数×列数 ×通道数
#获取图像像素数目
print(img.size)

#结果
2359296
  1. 通过dtype关键字获取图像的数据类型,通常返回uint8。
#获取图像类型
print(img.dtype)

#结果
uint8

二 、ROI区域(Region of Interest)表示感兴趣区域,可以随意选取、操作。

  1. 显示图像在 [300:500 , 600:800] 范围的区域
import cv2
import numpy
#读取图片
img = cv2.imread("C:/Users/CLH/Desktop/test1.JPG",cv2.IMREAD_UNCHANGED)
#显示ROI区域
window = img[300:500,600:800]
cv2.imshow("123",window)
#等待显示
cv2.waitKey(0)
cv2.destroyAllWindows()

结果图
2. 可以将提取的区域融合进原图

window = img[300:500,600:800]
img[100:300,300:500] = window
cv2.imshow("test", img)

在这里插入图片描述

三、图像通道处理
zeros函数的作用为返回来一个给定形状和类型的用0填充的数组;

  1. 通道拆分
#方法一 直接拆分
b = img[:, :, 0]
g = img[:, :, 1]
r = img[:, :, 2]
#方法二 利用split函数
b, g, r = cv2.split(img)

例子:
由于拆分后不再具有三个通道,单纯的一个通道的值表现出的就是灰度图像。

import cv2
import numpy
#读取图片
img = cv2.imread("C:/Users/CLH/Desktop/test1.JPG",cv2.IMREAD_UNCHANGED)

# 拆分通道
b, g, r = cv2.split(img)
#显示图像
cv2.imshow("B",b)
cv2.imshow("G",g)
cv2.imshow("R",r)

# 等待显示
cv2.waitKey(0)
cv2.destroyAllWindows()

B
G
R
2. 获取蓝色通道图
利用merge函数合并通道

import cv2
import numpy
#读取图片
img = cv2.imread("C:/Users/CLH/Desktop/test1.JPG",cv2.IMREAD_UNCHANGED)

# 拆分通道
b, g, r = cv2.split(img)

# 获取图像的行、列及通道数
rows, cols, chn = img.shape

# 将g、r通道替换为等行列数的0矩阵,并使其与img数据类型一致
g = numpy.zeros((rows,cols),dtype=img.dtype)
r = numpy.zeros((rows,cols),dtype=img.dtype)

# 利用merge合并通道
test = cv2.merge([b,g,r])

# 显示蓝色通道图像
cv2.imshow("B", test)

# 等待显示
cv2.waitKey(0)
cv2.destroyAllWindows()

蓝色通道图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值