【C++】【Opencv】minMaxLoc()函数详解和示例
【C++】【Opencv】minMaxLoc()函数详解和示例
minMaxLoc()函数 是 OpenCV 库中的一个函数,用于找到一个多维数组中的最小值和最大值,以及它们的位置。这个函数对于处理图像和数组非常有用。本文通过参数和示例详解,帮助大家理解和使用该函数。
参数详解
函数原型:
void minMaxLoc(InputArray src, double* minVal, double* maxVal=0, Point* minLoc=0, Point* maxLoc=0, InputArray mask=noArray());
参数详解:
src:输入数组或者向量,必须包含至少一个元素。
minVal:可选的输出参数,用于存储最小值的实际值。如果不需要这个值,可以设为0。
maxVal:可选的输出参数,用于存储最大值的实际值。如果不需要这个值,可以设为0。
minLoc:可选的输出参数,用于存储最小值的位置。如果不需要这个值,可以设为0。
maxLoc:可选的输出参数,用于存储最大值的位置。如果不需要这个值,可以设为0。
mask:可选的掩码,其大小和类型必须与 src 相同。如果指定了此参数,那么函数只查找具有非零掩码值的元素。
示例
#include <opencv2/opencv.hpp>
#include <iostream>int main() {// 读取图像cv::Mat img = cv::imread("image.jpg", cv::IMREAD_GRAYSCALE);if (img.empty()) {std::cout << "无法加载图像" << std::endl;return -1;}// 找到图像中的最小和最大灰度值,以及它们的位置cv::Point minLoc, maxLoc;double minVal, maxVal;cv::minMaxLoc(img, &minVal, &maxVal, &minLoc, &maxLoc);// 显示结果std::cout << "最小值:" << minVal << ",位置:" << minLoc << std::endl;std::cout << "最大值:" << maxVal << ",位置:" << maxLoc << std::endl;return 0;
}
在这个示例中,我们首先读取一张灰度图像。然后使用 minMaxLoc 函数找到图像中的最小和最大灰度值,以及它们的位置。最后,我们将结果打印到控制台上。
运行输出:
最新文章
- 笔记本电脑光驱无法读写故障的识别原则
- 12周年庆|一文回顾思迈特十二年大事记
- 优雅的Java编程:将接口对象作为方法参数
- Java 通过POI快速导入带图片的excel并且图片不会丢失
- Vue 小黑记事本组件版
- XSelect清空选中值
- Debian中执行脚本 提示没有那个文件或目录
- 红队专题
- 数据结构 1、基本概念 动态数组实现
- 电脑桌面图标打不开?三种方法让你轻松应对
- Ultipa 支持OpenCypher,助力企业级应用发展
- Direct3D拾取
- thinkphp5 连接多个服务器数据库
- 【PC】开发者日志:竞技比赛验证系统强化
- 仿京东拼多多商品分类页
- C++与多态
- 智能化的同城服务共享台球室小程序系统,提升台球室运营效率