opencv颜色识别算法,opencv提取特定颜色区域

  opencv颜色识别算法,opencv提取特定颜色区域

  特征提取是降维的一部分,在降维过程中,原始数据的初始集合被划分并缩减为更易管理的组。本文主要介绍如何用OpenCV提取特征(颜色、形状)的相关信息,有需要的可以参考一下。

  00-1010图像处理1。颜色2。形状摘要

  

目录

 

  图像处理所做的只是从图像中提取有用的信息,从而减少数据量,但保留描述图像特征的像素。

  下面从图像中提取颜色、形状和纹理特征的方法开始

  

图像处理

 

  我们每处理一个图像项目,图像的色彩空间都会是首先要探索的地方,而RGB色彩空间是最常用的一个。那么接下来,使用OpenCV,我们可以将图像的色彩空间转换成HSV、LAB、灰度、YCrCb、CMYK等。

  a. HSV(色相饱和度值)

  h:描述主波长,即指定颜色的通道饱和度S:描述颜色的色调/纯度/色调值V:描述颜色导入的强度cv2

  从google.colab.patches导入cv2_imshow

  image=cv2.imread(image_file)

  hsv_image=cv2.cvtColor(image,cv2。COLOR_BGR2HSV)

  cv2_imshow

  下图为RGB和HSV

  b. LAB

  l:描述颜色的亮度,与强度互换使用:颜色分量范围,从绿色到品红色B:颜色分量导入cv2从蓝色到黄色。

  从google.colab.patches导入cv2_imshow

  image=cv2.imread(image_file)

  lab_image=cv2.cvtColor(image,cv2。COLOR_BGR2LAB)

  cv2_imshow(实验室图像)

  下图为RGB和LAB颜色空间可视化

  b.YCrCb

  Y :伽玛校正后从RGB色彩空间获得的亮度Cr:描述红色分量与亮度Cb之间的距离:描述蓝色(B)分量与亮度导入cv2之间的距离

  从google.colab.patches导入cv2_imshow

  image=cv2.imread(image_file)

  ycrcb_image=cv2.cvtColor(image,cv2。COLOR_BGR2YCrCb)

  cv2_imshow(ycrcb_image)

  下图为RGB 与 YCrCb 颜色空间

  一旦我们确定或探索了足够的图像色彩空间,并确定我们只对单个通道感兴趣,我们就可以使用*cv2.inRange()*来屏蔽不想要的像素。这在HSV色彩空间中尤其实用。

  导入cv2

  从google.colab.patches导入cv2_imshow

  #读取原始图像

  image _ spot=cv2 . im read(image _ file)

  cv2_imshow(图像_光斑)

  #将其转换到HSV色彩空间

  HSV _ image _ spot=cv2 . CVT color(image _ spot,cv2。COLOR_BGR2HSV)

  cv2_imshow

  #设置黑色像素蒙版并执行bitwise_and以仅获得黑色像素

  mask=cv2 . in range(HSV _ image _ spot,(0,0,0),(180,255,40))

  masked=cv2 . bitwise _ and(hsv_image_spot,HSV _ image _ spot,mask=mask)

  cv2_imshow(屏蔽)

  RGB vs HSV vs蒙版图像使用cv2.inRange()检索黑点。

  

1. 颜色

 

  一旦我们完全探索了颜色特征,我们可能想要在某个时候提取图像中的形状。比如我们的任务是找不同类型的杯子,颜色不是特别重要。同样,我们需要做的是将图像转换到其他颜色空间,看看是否有颜色空间会使对象的边缘或形状更加突出。然后,我们可以使用cv2.finContours检索图像中的所有轮廓。具体用法见OpenCV文档。

  

2. 形状

 

  关于如何用OpenCV提取特征(颜色、形状)的这篇文章到此结束。关于OpenCV特征提取的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • opencv图像识别数字,opencv 识别
  • opencv图像识别数字,opencv 识别,如何基于opencv实现简单的数字识别
  • opencv图像的旋转角度计算,opencv图像仿射变换
  • opencv图像的旋转角度计算,opencv图像仿射变换,OpenCV图像几何变换之透视变换
  • opencv图像的旋转角度计算,opencv 旋转任意角度
  • opencv图像的旋转角度计算,opencv 旋转任意角度,opencv图片的任意角度旋转实现示例
  • opencv图像处理函数,opencv图像轮廓合并
  • opencv图像处理函数,opencv图像轮廓合并,OpenCV图像处理之七种常用图像几何变换
  • opencv双线性插值函数,opencv 图像插值
  • LBPH人脸识别,基于opencv的人脸识别技术
  • LBPH人脸识别,基于opencv的人脸识别技术,Opencv LBPH人脸识别算法详解
  • ,,OpenCV黑帽运算(BLACKHAT)的使用
  • opencv双线性插值函数,opencv 图像插值,C++ OpenCV实现图像双三次插值算法详解
  • ,,C语言 OpenCV实现柱面投影
  • ,,C++ Opencv imfill孔洞填充函数的实现思路与代码
  • 留言与评论(共有 条评论)
       
    验证码: