Qt图像处理技术九:得到QImage图像的灰度直方图

效果

在这里插入图片描述

原理

得到灰度化值,将灰度化的值带入0-255内,增加,得到可视化图形

源码

// 绘制直方图
QImage drawHistogram(const QImage &image)
{
    QVector<int> histogram(256, 0);

    // 计算图像的灰度直方图
    for (int y = 0; y < image.height(); ++y) {
        for (int x = 0; x < image.width(); ++x) {
            QColor color(image.pixel(x, y));
            int intensity = qGray(color.rgb());
            histogram[intensity]++;
        }
    }

    int maxValue = *std::max_element(histogram.constBegin(), histogram.constEnd());

    QImage histogramImage(256, maxValue, QImage::Format_RGB32);
    histogramImage.fill(Qt::white);

    QPainter painter(&histogramImage);
    painter.setPen(Qt::black);

    for (int i = 0; i < histogram.size(); ++i) {
        int height = histogram[i] * histogramImage.height() / maxValue;
        painter.drawLine(i, histogramImage.height(), i, histogramImage.height() - height);
    }

    return histogramImage;
}

相关推荐

  1. Qt图像处理-OpenCv中Mat与QImage互转

    2024-06-08 07:00:04       56 阅读
  2. qml刷新C++中QImage图像

    2024-06-08 07:00:04       62 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-08 07:00:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-08 07:00:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-08 07:00:04       82 阅读
  4. Python语言-面向对象

    2024-06-08 07:00:04       91 阅读

热门阅读

  1. 深拷贝的实现方式

    2024-06-08 07:00:04       31 阅读
  2. 8086 汇编笔记(八):转移指令的原理

    2024-06-08 07:00:04       31 阅读
  3. test1

    2024-06-08 07:00:04       27 阅读
  4. 【MongoDB】rs.add 将成员添加到副本集

    2024-06-08 07:00:04       31 阅读
  5. CMakeFile根据不同指令集配置加载obj对象

    2024-06-08 07:00:04       24 阅读
  6. Element-UI快速入门

    2024-06-08 07:00:04       31 阅读
  7. C++中的字符串详解

    2024-06-08 07:00:04       27 阅读
  8. Linux入门学习指南

    2024-06-08 07:00:04       26 阅读
  9. 设计模式之模板方法模式

    2024-06-08 07:00:04       29 阅读
  10. Linux基于V4L2的视频捕捉

    2024-06-08 07:00:04       33 阅读
  11. Unity3D DOTS 10W GPU Intancing 动画与合批优化详解

    2024-06-08 07:00:04       28 阅读
  12. Excel中的SUMPRODUCT函数:使用方法与案例分析

    2024-06-08 07:00:04       30 阅读
  13. 【MyBatisPlus条件构造器】

    2024-06-08 07:00:04       29 阅读
  14. [DT] 翻译笔记

    2024-06-08 07:00:04       24 阅读
  15. uniapp vue 隐藏button的边框

    2024-06-08 07:00:04       32 阅读