目录
【OpenCV】️高手勿入! 半小时学会基本操作️色彩空间
概述
OpenCV 是一个跨平台的计算机视觉库, 支持多语言, 功能强大. 今天小白就带大家一起携手走进 OpenCV 的世界. (第 6 课)
色彩空间
色彩空间 (Color Space) 即以同的空间维度来表示某一色彩 (通常使用 3 个或者 4 个 值).
常见的色彩空间:
- RGB
- HSV
- HIS
- YCrCb
- YUV
色彩空间转换
原图:
代码实现:
import numpy as np import cv2 def color_space(image): """色彩空间转换""" hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV) hls = cv2.cvtColor(image, cv2.COLOR_BGR2HLS) ycrcb = cv2.cvtColor(image, cv2.COLOR_BGR2YCrCb) yuv = cv2.cvtColor(image, cv2.COLOR_BGR2YUV) h1 = np.hstack((hsv, hls)) h2 = np.hstack((ycrcb, yuv)) stack = np.vstack((h1, h2)) return stack # 读取图片 img = cv2.imread("beautiful_girl.jpg") # 不同色彩空间 stack = color_space(img) # 图片展示 cv2.imshow("stack", stack) cv2.waitKey(0) cv2.destroyAllWindows()
输出结果:
视频阈值
import numpy as np import cv2 def video_capture(): """读取视频""" # 从摄像头获取视频 capture = cv2.VideoCapture(0) # 循环 while (True): # 读取一帧 ret, frame = capture.read() # 如果读取帧, 返回值为False, break if ret == False: break # 设置颜色阈值 lower = np.array([0, 0, 0]) upper = np.array([100, 100, 255]) mask = cv2.inRange(frame, lowerb=lower, upperb=upper) # 展示 cv2.imshow("video", frame) cv2.imshow("mask", mask) # 按下q键退出 if cv2.waitKey(20) & 0xFF == ord("q"): break if __name__ == "__main__": video_capture()
输出结果:
到此这篇关于OpenCV半小时掌握基本操作之色彩空间的文章就介绍到这了,更多相关OpenCV色彩空间内容请搜索华域联盟以前的文章或继续浏览下面的相关文章希望大家以后多多支持华域联盟!
您可能感兴趣的文章:
- Python+OpenCV图像处理—— 色彩空间转换
- 基于Python3.6中的OpenCV实现图片色彩空间的转换
- OpenCV半小时掌握基本操作之分水岭算法
- OpenCV半小时掌握基本操作之图像轮廓
- OpenCV半小时掌握基本操作之直方图
- OpenCV半小时掌握基本操作之圆圈检测
- OpenCV半小时掌握基本操作之对象测量
本文由 华域联盟 原创撰写:华域联盟 » OpenCV半小时掌握基本操作之色彩空间
转载请保留出处和原文链接:https://www.cnhackhy.com/33867.htm