如何优化SmoothGra函数精准去噪以计算热钢像素行宽度?
热钢宽度识别的梯度噪声优化问题
背景
希望通过处理一行归一化至0-255区间的像素值(如图中绿线所示)获取热钢宽度,但热钢表面的噪声干扰(红框标注)导致无法直接从像素变化曲线定位真实边界(红箭头所指)。
现有处理流程
- 执行小幅低通滤波抑制噪声
- 计算像素值的梯度曲线
- 基于梯度的峰值和谷值去除部分噪声
- 以梯度的最大值、最小值分别对应边界的上升沿和下降沿
现存问题
现有方法虽能抑制部分噪声,但核心的SmoothGra函数存在误删有效波峰的问题,最终导致识别出错误的左边界(红色竖线标记)。
需求
不依赖OpenCV,优化SmoothGra函数以更精准地过滤噪声,实现热钢边界的正确识别。
可用工具
允许使用numpy、scipy.signal.find_peaks、scipy.ndimage.gaussian_filter1d等工具处理数据。
内容的提问来源于stack exchange,提问作者Mumu
相关产品推荐
相关产品推荐

