用Python和OpenCV提取颜色直方图特征

本文介绍了如何利用OpenCV的cv2.calHist()函数来计算图像的颜色直方图特征。针对灰度图像,该函数的参数包括输入图像、指定的通道(对于灰度图是[0])、掩膜(全图取值为None)、bin数量以及像素值范围。通过这个方法,可以有效地提取图像的颜色分布信息。

用OpenCV中自带的cv2.calHist()函数求图像的颜色直方图特征

import cv2  
import numpy 
  
image = cv2.imread("D:/lena.jpg", 0)  
hist = cv2.calcHist([image], [0], None, [256], [0.0,255.0])

上面程序是以灰度图的方式计算颜色直方图特征,cv2.calcHist()函数的参数

第一个参数[image],必须带[], 是读入后的图像

第二个参数[0],必须带[],指定通道,若为灰度图则为[0],若彩色图,则[0]、[1]、[2]分别对应于B、G、R通道

第三个参数是掩膜Mask,指定ROI区域,若对整张图像取特征,则置为None

第四个参数是bins的个数,必须带[]

第五个参数是像素值范围


来看一下hist的内容:

>>> hist
array([[  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  1.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  0.00000000e+00],
       [  1.00000000e+00],
       [  2.00000000e+00],
       [  5.00000000e+00],
       [  8.00000000e+00],
       [  1.70000000e+01],
       [  2.40000000e+01],
       [  5.50000000e+01],
       [  8.30000000e+01],
       [  1.12000000e+02],
       [  1.60000000e+02],
       [  2.02000000e+02],
       [  2.81000000e+02],
      
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值