【OpenCV】高手勿入! 半小时学会基本操作 6 色彩空间

编程入门 行业动态 更新时间:2024-10-05 19:21:09

【OpenCV】高手勿入! <a href=https://www.elefans.com/category/jswz/34/1734138.html style=半小时学会基本操作 6 色彩空间"/>

【OpenCV】高手勿入! 半小时学会基本操作 6 色彩空间

【OpenCV】高手勿入! 半小时学会基本操作 6

  • 概述
  • 色彩空间
  • 色彩空间转换
  • 视频阈值

概述

OpenCV 是一个跨平台的计算机视觉库, 支持多语言, 功能强大. 今天小白就带大家一起携手走进 OpenCV 的世界. (第 6 课)

色彩空间

色彩空间 (Color Space) 即以同的空间维度来表示某一色彩 (通常使用 3 个或者 4 个 值).

常见的色彩空间:

  • RGB
  • HSV
  • HIS
  • YCrCb
  • YUV

色彩空间转换

原图:


代码实现:

import numpy as np
import cv2def 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 cv2def video_capture():"""读取视频"""# 从摄像头获取视频capture = cv2.VideoCapture(0)# 循环while (True):# 读取一帧ret, frame = capture.read()# 如果读取帧, 返回值为False, breakif 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"):breakif __name__ == "__main__":video_capture()

输出结果:

更多推荐

【OpenCV】高手勿入! 半小时学会基本操作 6 色彩空间

本文发布于:2024-02-07 06:08:32,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1754355.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:半小时   色彩   操作   高手   空间

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!