当前位置: 首页 > news >正文

OpenCV直方图计算

#include <opencv2/opencv.hpp>
#include <vector>using namespace cv;
using namespace std;int main()
{cout << "直方图calcHist" << endl;Mat src = imread("left.png", IMREAD_GRAYSCALE);if (src.empty()){cout << "read image failed." << endl;return -1;}imshow("gray_img", src);Mat hist;int histSize = 256;calcHist(&src, 1, 0, Mat(), hist, 1, &histSize, 0);double maxVal = 0;double minVal = 0;minMaxLoc(hist, &minVal, &maxVal, 0, 0);int zoom = 2;Mat histImg(histSize * zoom, histSize * zoom, CV_8U, Scalar(255));int hpt = static_cast<int>(0.9 * histSize);for (int h = 0; h < histSize; h++){float binVal = hist.at<float>(h);if (binVal > 0){int intensity = static_cast<int>(binVal * hpt / maxVal);line(histImg, Point(h * zoom, histSize * zoom), Point(h * zoom, (histSize - intensity) * zoom), Scalar(0), zoom);}}imshow("hist_img", histImg);cout << "直方图均衡化equalizeHist" << endl;Mat result;equalizeHist(src, result);imshow("equalizeHist", result);cout << "直方图反向投影calcBackProject" << endl;Mat imageROI = src(Rect(400,20,150,80));Mat hist2;calcHist(&imageROI, 1, 0, Mat(), hist2, 1, &histSize, 0);normalize(hist2, hist2, 1.0);Mat backP;calcBackProject(&src, 1, 0, hist2, backP, 0, 255.0);Mat mask;threshold(backP, mask, 30, 255, THRESH_BINARY);imshow("backProject", mask);cout << "积分图像" << endl;Mat integralImg;integral(src, integralImg, CV_32S);waitKey();return 0;
}

相关文章:

OpenCV直方图计算

#include <opencv2/opencv.hpp> #include <vector>using namespace cv; using namespace std;int main() {cout << "直方图calcHist" << endl;Mat src imread("left.png", IMREAD_GRAYSCALE);if (src.empty()){cout << &qu…...

多线程篇(并发相关类- 原子操作类)(持续更新迭代)

目录 前言 一、原子变量操作类&#xff08;AtomicLong为例&#xff09; 1. 前言 2. 实例 二、JDK 8新增的原子操作类LongAdder 三、LongAccumulator类原理探究 前言 JUC包提供了一系列的原子性操作类&#xff0c;这些类都是使用非阻塞算法CAS实现的&#xff0c;相比使用…...

数学建模常用工具总结

数学建模常用工具总结 绘图篇pythonMATLABLIVEGAP CHARTSApache EChartsBioLadderHiplot Pro 生物医学可视化平台Graph EditorRAWGraphs 2.0ExcalidrawPPT绘图 配色篇Color SpaceAdobe Color 素材篇手绘素材插画网iconfont-阿里巴巴矢量图标库下面四个都是实物风格的素材&#…...

【Redis】为什么选择 Redis 做缓存?

近期文章&#xff1a; 【Redis】Redis 底层的数据结构&#xff08;结合源码&#xff09; 【MySQL】索引底层的数据结构 BTree 在系统开发中&#xff0c;我们经常会使用 Redis 作为缓存系统&#xff0c;但你知道为什么要使用缓存吗&#xff1f;为什么是使用 Redis 作为缓存呢&…...

Flutter 开发常用第三方库总结

Flutter 开发常用第三方库总结 常用库 常用库 屏幕适配flutter_screenutil加载 svg flutter_svg状态管理 flutter_bloc&#xff08;bloc、equatable&#xff09;、provider视频播放器chewie图片缓存cached_network_image网络请求 dio设备信息查询device_info_plus文件路径 pat…...

OpenCV中的颜色映射函数applyColorMap的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 OpenCV 中应用类似于 GNU Octave 或 MATLAB 中的颜色映射&#xff0c;虽然 OpenCV 中的颜色映射类型与 GNU Octave 或 MATLAB 中的颜色映射类型名…...

Ubuntu22.04安装colmap

首先上这里查看自己电脑GPU的CMAKE_CUDA_ARCHITECTURES 终端输入以下内容安装预先的前置依赖 sudo apt-get install \git cmake ninja-build build-essential \libboost-program-options-dev libboost-filesystem-dev \libboost-graph-dev libboost-system-dev libboost-tes…...

认识GO语言中的nil,零值与空结构体

go语言的初学者&#xff0c;特别是java开发者新学习go语言&#xff0c;对于一些和java类似但是又有差异的概念很容易混淆&#xff0c;比如说go中的零值&#xff0c;nil 和 空结构体。本文就来详细探讨一下go中这些特殊概念的含义和实际场景中的应用&#xff1a; 零值 零值&…...

Node.js sqlite3:Statement对象详解

在Node.js的sqlite3库中&#xff0c;Statement对象是一个非常重要的概念。它代表了一个预编译的SQL语句&#xff0c;可以多次执行以提高性能。通过使用Statement对象&#xff0c;你可以避免重复解析和编译SQL语句的开销&#xff0c;特别是在需要频繁执行相同SQL语句的情况下。本…...

ELK学习笔记——如何给Kibana新增用户和角色

Kibana新增用户和角色 首先用超管账号登录上Kibana&#xff0c;按照下面步骤操作 1、创建角色 按图操作 2、创建用户 按图操作 3、给用户分配角色 至此&#xff0c;角色和用户绑定成功&#xff1b; 最后&#xff0c;可以退出管理员账号&#xff0c;登录这个新…...

Minikube Install Kubernetes v1.18.1

文章目录 简介安装工具配置代理运行集群检查集群加入rancher 简介 模拟客户环境&#xff0c;测试 kubernetes v1.18.x 是否可以被 rancher v2.9.1 纳管。 安装工具 docker 安装Install and Set Up kubectl on Linux 安装 minikube 配置代理 docker proxylinux proxy 运行…...

重修设计模式-创建型-工厂模式

重修设计模式-创建型-工厂模式 一、概述 工厂模式&#xff08;Factory Pattern&#xff09;是设计模式中非常基础且常用的一种模式&#xff0c;主要目的是通过封装对象的创建过程&#xff0c;从而实现代码的解耦和灵活性的提升。 工厂模式的核心思想 封装对象的创建&#x…...

使用Cskin时候 遇到按钮有默认阴影问题解决

使用Cskin时候 遇到按钮有默认阴影 设置 DrawType 属性就可以了...

121.rk3399 uboot(2017.09) 源码分析1(2024-09-05)

参考源码 : uboot&#xff08;2017.09&#xff09; 硬件平台&#xff1a;rk3399 辅助工具&#xff1a;linux虚拟机&#xff0c;sourceinsight4&#xff0c;文件浏览器&#xff08;可以使用samba访问&#xff09;&#xff0c;ultraeidt(查看bin文件比较方便) 说明&#xff1a…...

【图论】虚树 - 模板总结

适用于解决一棵树中只需要用到少部分点的时候&#xff0c;将需要用到的点提出来单独建一棵树 /********************* 虚树 *********************/ struct edge {int to, next;int val; };struct Virtual_Tree {int n; // 点数int dfn[N]; // dfs序int dep[N]; // 深度int fa…...

[C#学习笔记]注释

官方文档&#xff1a;Documentation comments - C# language specification | Microsoft Learn 一、常用标记总结 1.1 将文本设置为代码风格的字体&#xff1a;<c> 1.2 源代码或程序输出:<code> 1.3 异常指示:<exception> 1.4 段落 <para> 1.5 换行&…...

c# checkbox的text文字放到右边

checkbox的text文字放到右边 实现方法如下图 特此记录 anlog 2024年9月2日...

【node.js】基础之修改文件

node.js 基础(一) node.js是什么&#xff1f; 上面这句话的意思就是&#xff1a;Node.js 是一个开源的&#xff0c;跨平台的javascript运行环境。通俗的说就是一个应用程序或者说是一个软件&#xff0c;可以运行javascript。 Node.js的作用&#xff1a; 开发服务器应用。 将数…...

Notepad++回车不自动补全

问题 使用Notepad时&#xff0c;按回车经常自动补全&#xff0c;但我们希望回车进行换行&#xff0c;而不是自动补全&#xff0c;而且自动补全使用Tab进行补全足够了。下文介绍设置方法。 设置方法 打开Notepad&#xff0c;进入设置 - 首选项 - 自动完成&#xff0c;在插入选…...

CSS线性渐变拼接,一个完整的渐变容器(div),要拆分成多个渐变容器(div),并且保持渐变效果一致

1 需求 一个有渐变背景的div&#xff0c;需要替换成多个渐变背景div拼接&#xff0c;渐变效果需要保持一致&#xff08;不通过一个大的div渐变&#xff0c;其他子的div绝对定位其上并且背景透明来解决&#xff09; 2 分析 主要工作&#xff1a; 计算完整div背景线性渐变时的…...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子&#xff0c;用于处理异步操作&#xff08;如数据加载&#xff09;中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误&#xff1a;捕获在 loader 或 action 中发生的异步错误替…...

超短脉冲激光自聚焦效应

前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应&#xff0c;这是一种非线性光学现象&#xff0c;主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场&#xff0c;对材料产生非线性响应&#xff0c;可能…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

HBuilderX安装(uni-app和小程序开发)

下载HBuilderX 访问官方网站&#xff1a;https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本&#xff1a; Windows版&#xff08;推荐下载标准版&#xff09; Windows系统安装步骤 运行安装程序&#xff1a; 双击下载的.exe安装文件 如果出现安全提示&…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...