opencv 阈值分割函数

CV_EXPORTS_W double threshold( InputArray src, OutputArray dst,

double thresh, double maxval, int type );

/**

复制代码
@brief 对数组的每个元素应用固定阈值处理

该函数对多通道数组执行固定阈值分割,常用于从灰度图像生成二值图像(也可使用#compare实现类似功能),

或通过过滤过小/过大的像素值来去除噪声。函数支持多种阈值分割类型,由type参数指定。

特殊值#THRESH_OTSU或#THRESH_TRIANGLE可与其他类型组合使用。此时函数将采用大津算法或三角算法

自动确定最优阈值,并忽略手动指定的thresh值。

@注意 目前大津法和三角法仅支持8位单通道图像。

@param src 输入数组(多通道,8位或32位浮点类型)

@param dst 输出数组(与src尺寸、类型及通道数相同)

@param thresh 阈值

@param maxval 与#THRESH_BINARY和#THRESH_BINARY_INV类型搭配使用的最大值

@param type 阈值分割类型(参见#ThresholdTypes枚举)

@return 若使用大津法或三角法,返回计算得到的阈值

@另见 adaptiveThreshold, findContours, compare, min, max
*/

THRESH_BINARY 或 THRESH_BINARY_INV,会将大于thresh的像素值设置为maxval,其余设置为0(二值化)

/** Threshold types */

enum

{

CV_THRESH_BINARY =0, /< value = value > threshold ? max_value : 0 */
CV_THRESH_BINARY_INV =1, /
< value = value > threshold ? 0 : max_value */

CV_THRESH_TRUNC =2, /< value = value > threshold ? threshold : value */
CV_THRESH_TOZERO =3, /
< value = value > threshold ? value : 0 /
CV_THRESH_TOZERO_INV =4, /< value = value > threshold ? 0 : value */
CV_THRESH_MASK =7,
CV_THRESH_OTSU =8, /
< use Otsu algorithm to choose the optimal threshold value;
combine the flag with one of the above CV_THRESH_
values /
CV_THRESH_TRIANGLE =16 /**< use Triangle algorithm to choose the optimal threshold value;
combine the flag with one of the above CV_THRESH_
values, but not

with CV_THRESH_OTSU */

};

相关推荐
MysTic_Zhong4 分钟前
【2】整体架构蓝图:六层依赖与技术选型
人工智能·agent
硅谷秋水7 分钟前
EgoHumanoid‑V2 方法分析
人工智能·机器学习·计算机视觉·语言模型·机器人
hpoenixf17 分钟前
Spec 驱动的 Agent 研发全景:从需求澄清到可信交付
人工智能
dozenyaoyida26 分钟前
AI与大模型新闻日报 | 2026-11-12
人工智能·ai·大模型·新闻
hpoenixf36 分钟前
把 Agent 拆成三个进程,究竟换来了什么?从单体 Runtime 到独立宿主
人工智能
QXWZ_IA37 分钟前
具身智能巡检和无人机巡检怎么选?
人工智能·安全·无人机
hpoenixf40 分钟前
报告写完以后:让 Agent 查证、协作,再独立复核
人工智能
hpoenixf43 分钟前
Agent 运行身份全景:从一次聊天到 Model Turn,系统到底在继续什么?
人工智能
玩美数据1 小时前
市场调研数据分析与数据集驱动的行业格局变革深度解析
大数据·人工智能
lucas_AI1 小时前
AI 思考时非要「说人话」吗?哈工大团队让模型「用数据格式思考」,省 5 倍 token 还更准
人工智能