zoukankan      html  css  js  c++  java
  • OpenCV常用基本处理函数(3)颜色空间

    颜色空间转换

    对图像进行颜色空间转换,比如从 BGR 到灰度图,或者从BGR 到 HSV 等

    我们要用到的函数是:cv2.cvtColor(input_image ,flag),其中 flag就是转换类型,常用的就几种转换的类型;

    对于 BGR↔Gray 的转换,我们要使用的 flag 就是 cv2.COLOR_BGR2GRAY。
    同样对于 BGR↔HSV 的转换,我们用的 flag 就是 cv2.COLOR_BGR2HSV。

    物体跟踪

    通过某个颜色来跟踪一个物体,

    • 从视频中获取每一帧图像
      • 将图像转换到 HSV 空间
      • 设置 HSV 阈值到蓝色范围。
      • 获取蓝色物体

     1 import cv2
     2 import numpy as np
     3 
     4 cap = cv2.VideoCapture(r'你的视频文件')
     5 
     6 while(1):
     7 
     8     # Take each frame
     9     _, frame = cap.read()
    10 
    11     # Convert BGR to HSV
    12     hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
    13 
    14     # define range of blue color in HSV
    15     lower_blue = np.array([110,50,50])
    16     upper_blue = np.array([130,255,255])
    17 
    18     # Threshold the HSV image to get only blue colors
    19     mask = cv2.inRange(hsv, lower_blue, upper_blue)
    20 
    21     # Bitwise-AND mask and original image
    22     res = cv2.bitwise_and(frame,frame, mask= mask)
    23 
    24     cv2.imshow('frame',frame)
    25     cv2.imshow('mask',mask)
    26     cv2.imshow('res',res)
    27     k = cv2.waitKey(5) & 0xFF
    28     if k == 27:
    29         break
    30 
    31 cv2.destroyAllWindows()

    利用掩膜(mask)进行“与”操作,即掩膜图像白色区域是对需要处理图像像素的保留

  • 相关阅读:
    consul服务注册于发现
    zookeeper注册服务中心
    Eureka自我保护机制
    发现服务
    修改主机名
    Eureka集群原理与搭建
    Eureka服务注册中心
    微服务简单规划
    开启多服务一键启动 run DashBoad,重启idea
    手撕代码:判断二进制串除以3的余数
  • 原文地址:https://www.cnblogs.com/ywheunji/p/10987656.html
Copyright © 2011-2022 走看看