【计算机视觉】人脸算法之图像处理基础知识(二)

图像处理基础知识(二)

1.图像的颜色空间转换

我们常见的图像通常由R(红色)、G(绿色)、B(蓝色)组成。但是在很多时候我们会将彩色图像转换成灰度图像进行处理。此时会用到cv2.cvtColor函数,它有很多转换方式,如

复制代码
cv2.COLOR_BGR2GRAY:将 BGR 图像转换为灰度图像。
cv2.COLOR_BGR2HSV:将 BGR 图像转换为 HSV 颜色空间。
cv2.COLOR_BGR2RGB:将 BGR 图像转换为 RGB 颜色空间。
cv2.COLOR_GRAY2BGR:将灰度图像转换为 BGR 图像。
cv2.COLOR_HSV2BGR:将 HSV 颜色空间转换为 BGR 图像。
python 复制代码
import cv2

#定义图片路径
imgpath = "images/img1.jpg"
img = cv2.imread(imgpath) #加载图像
img = cv2.resize(img, (img.shape[1]//2, img.shape[0]//2)) #缩小图像尺寸,方便展示
img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)#将彩色图像转成灰度图像
cv2.imshow("img", img)
cv2.waitKey(0) #和imshow函数一起使用,显示图像

2.彩色图像的通道分离和混合

opencv中通过split和merge函数实现图像的分离和融合

python 复制代码
import cv2

#定义图片路径
imgpath = "images/img1.jpg"
img = cv2.imread(imgpath) #加载图像
img = cv2.resize(img, (img.shape[1]//4, img.shape[0]//4))
b,g,r = cv2.split(img) #将多通道图像分离成单通道
cv2.imshow("b", b)
cv2.imshow("g", g)
cv2.imshow("r", r)
cv2.waitKey(0) 
python 复制代码
import cv2

imgpath = "images/img1.jpg"
img = cv2.imread(imgpath)
img = cv2.resize(img, (img.shape[1]//4, img.shape[0]//4))
b,g,r = cv2.split(img) #分离图像
merge = cv2.merge([b,g,r]) #合并图像
cv2.imshow("merge", merge)
cv2.waitKey(0) 
相关推荐
算AI11 小时前
人工智能+牙科:临床应用中的几个问题
人工智能·算法
hyshhhh13 小时前
【算法岗面试题】深度学习中如何防止过拟合?
网络·人工智能·深度学习·神经网络·算法·计算机视觉
杉之14 小时前
选择排序笔记
java·算法·排序算法
烂蜻蜓14 小时前
C 语言中的递归:概念、应用与实例解析
c语言·数据结构·算法
OYangxf14 小时前
图论----拓扑排序
算法·图论
我要昵称干什么14 小时前
基于S函数的simulink仿真
人工智能·算法
AndrewHZ15 小时前
【图像处理基石】什么是tone mapping?
图像处理·人工智能·算法·计算机视觉·hdr
念九_ysl15 小时前
基数排序算法解析与TypeScript实现
前端·算法·typescript·排序算法
守正出琦15 小时前
日期类的实现
数据结构·c++·算法
ChoSeitaku15 小时前
NO.63十六届蓝桥杯备战|基础算法-⼆分答案|木材加工|砍树|跳石头(C++)
c++·算法·蓝桥杯