当前位置:   article > 正文

【OpenCV3经典编程100例】(22)直方图处理:计算和绘制H-S二维直方图、calcHist()函数_色调饱和度二维直方图

色调饱和度二维直方图

计算彩色图像的色调、饱和度二维直方图,简称H-S直方图。

颜色空间转换,从RGB彩色原图,转换为HSV颜色空间。色调H,饱和度S,亮度V。

一、c++示例代码

  1. //包含头文件
  2. #include <opencv2/opencv.hpp>
  3. //命名空间
  4. using namespace cv;
  5. using namespace std;
  6. //全局函数声明部分
  7. //主函数
  8. int main()
  9. {
  10. //【1】载入图像
  11. Mat image = imread("G:\\opencvtest\\testImage\\airplane.jpg");
  12. //【2】检查是否载入成功
  13. if (image.empty())
  14. {
  15. printf("读取图片错误,请确认目录下是否有imread函数指定图片存在! \n ");
  16. return 0;
  17. }
  18. //【3】颜色空间转换HSV颜色模型
  19. Mat hsvImage;
  20. cvtColor(image, hsvImage, COLOR_BGR2HSV);
  21. //【4】计算H-S二维直方图
  22. const int nimages = 1;//输入图像个数
  23. int channels[] = {0,1};//色调H在通道0,饱和度S在通道1,亮度V在通道2
  24. MatND hist;//输出直方图
  25. int dims = 2;//二维直方图
  26. int histSize[] = {30, 32};//色调H量化为30个等级,饱和度S量化为32个等级
  27. float Hhranges[] = {0, 179};//色调H的取值范围
  28. float Shranges[] = {0, 255};//饱和度S的取值范围
  29. const floa
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/46689
推荐阅读
相关标签
  

闽ICP备14008679号