VisionPro 中 图像预处理工具
- [一. 图片预处理参数详解](#一. 图片预处理参数详解)
-
- [1. 灰度变换](#1. 灰度变换)
-
- [1.1 加减常量 (AddConstant / SubtractConstant) --- 对每个像素增加或减少一个固定数值,调整整体亮度。](#1.1 加减常量 (AddConstant / SubtractConstant) — 对每个像素增加或减少一个固定数值,调整整体亮度。)
- [1.2 灰度反转 (Invert) --- 将像素灰度值取反(黑变白,白变黑)。](#1.2 灰度反转 (Invert) — 将像素灰度值取反(黑变白,白变黑)。)
- [1.3 像素映射 (PixelMap) --- 通过查找表(LUT)自定义灰度映射关系,实现对比度拉伸等效果。](#1.3 像素映射 (PixelMap) — 通过查找表(LUT)自定义灰度映射关系,实现对比度拉伸等效果。)
- [2. 几何变换](#2. 几何变换)
-
- [2.1 缩放 (Scale) --- 改变图像的尺寸(放大或缩小),也可称为"扩展"。](#2.1 缩放 (Scale) — 改变图像的尺寸(放大或缩小),也可称为“扩展”。)
- [2.2 仿射变换 (Affine) --- 包括旋转、平移、倾斜、镜像等线性变换。](#2.2 仿射变换 (Affine) — 包括旋转、平移、倾斜、镜像等线性变换。)
- [2.3 极坐标转换 (Polar) --- 在直角坐标与极坐标之间转换图像,常用于圆形检测。](#2.3 极坐标转换 (Polar) — 在直角坐标与极坐标之间转换图像,常用于圆形检测。)
- [2.4 高斯采样 (GaussianSampling) --- 使用高斯金字塔进行降采样,用于多尺度分析。](#2.4 高斯采样 (GaussianSampling) — 使用高斯金字塔进行降采样,用于多尺度分析。)
- [3. 滤波](#3. 滤波)
-
- [3.1 卷积 (Convolution) --- 使用自定义卷积核进行线性滤波,可实现锐化、模糊、边缘检测等。](#3.1 卷积 (Convolution) — 使用自定义卷积核进行线性滤波,可实现锐化、模糊、边缘检测等。)
- 在这里插入图片描述
-
- [3.2 图像滤波工具 (Filter) --- 内置的预设滤波器,包括:高通滤波、低通滤波、中值滤波、高斯滤波等。](#3.2 图像滤波工具 (Filter) — 内置的预设滤波器,包括:高通滤波、低通滤波、中值滤波、高斯滤波等。)
- [4. 形态学处理](#4. 形态学处理)
-
- [4.1 形态学 (Morphology) --- 腐蚀、膨胀、开运算、闭运算等,用于二值图像或灰度图像的形状处理。](#4.1 形态学 (Morphology) — 腐蚀、膨胀、开运算、闭运算等,用于二值图像或灰度图像的形状处理。)
- [5. 图像间运算](#5. 图像间运算)
-
- [5.1 图像加减 (Add / Subtract) --- 两张图像之间逐像素相加或相减。](#5.1 图像加减 (Add / Subtract) — 两张图像之间逐像素相加或相减。)
- [6. 对比度增强](#6. 对比度增强)
-
- [6.1 直方图均衡化 (Equalize) --- 自动拉伸直方图,增强全局对比度。](#6.1 直方图均衡化 (Equalize) — 自动拉伸直方图,增强全局对比度。)
- [7 质量评估](#7 质量评估)
-
- [7.1 锐度工具 (Sharpness) --- 计算图像的清晰度分数,不改变图像内容;用于自动对焦或图像质量判断。](#7.1 锐度工具 (Sharpness) — 计算图像的清晰度分数,不改变图像内容;用于自动对焦或图像质量判断。)
- [二、CogImageConvertTool 图像格式转换工具](#二、CogImageConvertTool 图像格式转换工具)
- [三、CogIPOneImageTool 多功能图像预处理工具](#三、CogIPOneImageTool 多功能图像预处理工具)
-
- [1. 概述](#1. 概述)
- [2. 核心功能](#2. 核心功能)
-
- [2.1 基础灰度运算类](#2.1 基础灰度运算类)
- [2.2 卷与滤波类(核心去噪 + 特征增强)](#2.2 卷与滤波类(核心去噪 + 特征增强))
- [2.3 形态学处理类](#2.3 形态学处理类)
- [2.4 几何与重采样类](#2.4 几何与重采样类)
- [2.5 其他实用功能](#2.5 其他实用功能)
- [3. 操作 CogIPOneImageTool工具](#3. 操作 CogIPOneImageTool工具)
- [四、CogPixelMapTool 像素重映射工具](#四、CogPixelMapTool 像素重映射工具)
-
- [1. 概念](#1. 概念)
- [2. 核心功能](#2. 核心功能)
- [3. 关键参数与设置](#3. 关键参数与设置)
- 4.作用
- [五、CogPolarUnwrapTool 极坐标展开工具](#五、CogPolarUnwrapTool 极坐标展开工具)
-
- [1. 概念](#1. 概念)
- [2. 核心功能](#2. 核心功能)
- [3. 采样模式参数说明](#3. 采样模式参数说明)
- [4. 如何使用](#4. 如何使用)
- [六、CogSobelEdgeTool Sobel边缘检测工具](#六、CogSobelEdgeTool Sobel边缘检测工具)
-
- [1. 概念](#1. 概念)
- [2. 核心功能](#2. 核心功能)
- 3.参数说明
- [4. 三种输出图像表示](#4. 三种输出图像表示)
一. 图片预处理参数详解
这里简介各种参数概念 便于理解工具中参数的作用和如何使用这些工具
1. 灰度变换
1.1 加减常量 (AddConstant / SubtractConstant) --- 对每个像素增加或减少一个固定数值,调整整体亮度。
加减常量 是一种基础的点运算(像素级操作),对图像中的每一个像素值加上或减去一个固定的数值 。其直接效果是整体提高或降低图像亮度,同时保持对比度不变(不考虑饱和或截断时)。

平面0代表红色®,平面1代表绿色(G),平面2代表蓝色(B)。它们其实是彩色图像独立存储的三个颜色通道 。
溢位模式 (Overflow Mode): 溢出处理很重要,有封装和箝位可选。在大多数工业场景,建议使用箝位(Clamp)模式,能确保像素值不会溢出范围,导致图像出现反常的亮度变化
1.2 灰度反转 (Invert) --- 将像素灰度值取反(黑变白,白变黑)。
灰度反转,也叫反色 或负片效果 ,就是把每个像素的亮度值颠倒过来:原来亮的变暗,暗的变亮。
用0(黑)到255(白)的灰度图来说:
原本是 0(纯黑) → 反转为 255(纯白)
原本是 255(纯白) → 反转为 0(纯黑)
原本是 100(中灰) → 反转为 155(也是中灰)
公式很简单:新值 = 255 -- 原值(如果图像是8位深度)
灰度反转 = 亮度取反,把图像的黑白颠倒过来。
信息不会丢失: 反转是严格一对一的映射,不会像加减常量那样产生饱和截断。原图细节都能保留,只是极性翻转。
彩色反转: 在 VisionPro 里处理彩色图时,如果你只想反转灰度(比如只针对亮度通道),需要先用 CogImageConvertTool 把彩色转成灰度图,再反转,否则你会得到一个彩色负片。
1.3 像素映射 (PixelMap) --- 通过查找表(LUT)自定义灰度映射关系,实现对比度拉伸等效果。
像素映射,简单说就是给每个灰度值重新翻译一遍。你把原图的灰度值(比如 0~255)看作一个坐标,通过一张 对照表 (LUT) 把它映射到一个新的灰度值。这样一来,你可以自由地重新分配亮度关系。
想象你有 256 个不同的亮度等级(0=纯黑,255=纯白)。PixelMap 就像一本 翻译词典:
- 原图的 0 => 你想让它变成多少?比如 255(黑变白)
- 原图的 128 => 你想让它变成多少?比如 200(中灰提亮)
- 原图的 255 => 你想让它变成多少?比如 0(白变黑)
PixelMap 更强大的用法包括
| 效果 | 映射方式 | 作用 |
|---|---|---|
| 对比度拉伸 | 把输入范围 [a, b] 映射到 [0, 255] | 让原本灰蒙蒙的图像(灰度集中在中间)变清晰,黑白分明 |
| 提高暗部细节 | 低灰度区域斜率 >1 | 暗区被提亮,但亮区几乎不变 |
| 压制高光 | 高灰度区域斜率 <1 | 把过亮的部分压暗,保留更多亮部纹理 |
| 二值化(阈值) | 映射成只有 0 和 255 两种输出 | 直接生成黑白二值图 |
| Gamma 校正 | 使用幂函数曲线 | 符合人眼感知的亮度调整 |
举个对比度拉伸例子
拍了一张金属零件照片,背景是深灰色(灰度值 80120),零件是浅灰色(160200)。整张图对比度很低。
设置 PixelMap:
输入 80 => 输出 0(纯黑)
输入 200 => 输出 255(纯白)
中间线性映射
结果: 背景变成纯黑,零件变成纯白,边缘清晰得像黑白剪影。后续的定位或测量工具一下就能抓住零件。
2. 几何变换
2.1 缩放 (Scale) --- 改变图像的尺寸(放大或缩小),也可称为"扩展"。
就是改变图像的尺寸------可以放大(让图像变得更大更清晰吗?不,放大会变模糊)或缩小(让图像变小,细节浓缩)。
想象你有一张 500×500 像素的数码照片。
缩小: 把它改成 200×200 像素。图像变小了,文件也变小了,整体内容还在,但一些微小细节会丢失(因为很多像素被"合并"了)。
放大: 把它改成 1000×1000 像素。图像变大了,但并没有增加真正的细节,只是把原来的每个像素"撑开",然后用算法填补中间的空缺。所以放大会变模糊,出现马赛克或锯齿。
缩放的实际用途
缩小:
- 把高分辨率图像(比如 500万像素)缩小后再做处理,能大幅提高运行速度(因为像素少了很多)。
- 去除高频噪声(缩小本身就有低通滤波效果)。
- 生成图像金字塔(多尺度处理)。
放大:
- 让微小缺陷或细小特征变得更容易被人眼观察。
- 放大不会增加真实信息,不要指望它能"修复"模糊图像。
2.2 仿射变换 (Affine) --- 包括旋转、平移、倾斜、镜像等线性变换。
仿射变换(Affine Transform) 就是对图像进行拉、扯、扭、转 的一套线性变换,能把一个平行四边形区域映射成一个矩形的操作。在工业视觉里,它的主要作用就是 摆正目标,方便后续进行测量、识别等分析。
简单调整图片尺寸(放大/缩小),用 CogIPOneImageTool 的扩展功能就够了。而当你需要把歪斜的零件扶正,进行旋转、倾斜校正时,就必须靠CogAffineTransformTool 这类专业的仿射变换工具来实现。
2.3 极坐标转换 (Polar) --- 在直角坐标与极坐标之间转换图像,常用于圆形检测。
极坐标转换是一种坐标变换方法,将图像从直角坐标系(x, y) 映射到极坐标系(r, θ):
r: 到圆心的距离(半径)
θ: 绕圆心的角度(0°~360°)
视觉上的效果: 把一个环形区域"切开拉直"成一个矩形。
映射关系: 在矩形图像中:水平轴(X) → 对应原图中的角度 θ(从左到右 = 0° 到 360°)。垂直轴(Y) → 对应原图中的半径 r(从上到下 = 内半径 → 外半径)
**结果:**原图中一个圆周上的点,在矩形图中变成同一水平行上的点。原图中一条径向线(从圆心向外),变成矩形图中的一列垂直的线。
常常使用CogPolarUnwrapTool极坐标展开工具进行操作
2.4 高斯采样 (GaussianSampling) --- 使用高斯金字塔进行降采样,用于多尺度分析。
高斯采样器 是一个集成了模糊 和缩小 功能的图像预处理操作,它通过预先去除高频细节和噪声,避免了图像在后续缩小尺寸时出现锯齿或图像失真,即抗混叠。它还是构建图像金字塔结构的基础单元。
想象一下: 你有一幅巨大、满是细微噪点的油画。现在需要把它缩小到巴掌大小。如果直接缩小,画里那些细碎的噪点会挤在一起,导致小图上全是杂乱的"雪花",关键内容反而看不清。
高斯采样做的: 在缩小前,先对画进行一次高斯模糊,把小噪点都"抹平",使画面更柔和。然后再缩小尺寸。这样,小图看起来就是一幅干净、平滑的画,避免了噪点干扰,也没有锯齿感。
高斯采样器在执行时的核心参数包括采样步长 (SampleX, SampleY) 与平滑强度 (SmoothnessX, SmoothnessY)。
- 先平滑 (高斯模糊): 输入参数 平滑强度 (SmoothnessX, SmoothnessY) 实际上代表了高斯核的标准差 σ (sigma)。σ 值越大,模糊效果越强,降噪更明显,但细节损失也更大。
- 后采样 (降采样): 输入参数 采样步长 (SampleX, SampleY) 。采样步长表示每多少个原始像素中选取一个,值越大,最终输出的图像尺寸就越小。

3. 滤波
3.1 卷积 (Convolution) --- 使用自定义卷积核进行线性滤波,可实现锐化、模糊、边缘检测等。
卷积是一种线性滤波操作: 用一个小矩阵(卷积核) 在图像上滑动,对每个位置,将核覆盖下的像素值与核系数相乘后求和,得到输出图像在该位置的像素值。
简单理解就是
拿一个模板去扫图,每个位置都做一次加权平均
- 模板(核)上的数字就是权重。
- 正权重 => 保留/增强该像素;负权重 → 削弱或产生"边缘"效果。
- 核的总和决定整体亮度变化:
总和 = 1 => 亮度不变(如模糊)
总和 = 0 => 提取差异(如边缘)
总和 > 1 => 整体变亮;< 1 => 整体变暗
常见卷积核及效果
| 类别 | 核(未归一化) | 归一化因子 | 效果 |
|---|---|---|---|
| 均值模糊 | [1,1,1; 1,1,1; 1,1,1] | 1/9 | 局部平均,去噪但模糊 |
| 高斯模糊 | [1,2,1; 2,4,2; 1,2,1] | 1/16 | 平滑更自然,边缘保留略好 |
| 锐化 | [0,-1,0; -1,5,-1; 0,-1,0] | 1 | 增强边缘,图像更"清晰" |
| Sobel水平边缘 | [-1,0,1; -2,0,2; -1,0,1] | 无(或1) | 检测垂直边缘 |
| Sobel垂直边缘 | [-1,-2,-1; 0,0,0; 1,2,1] | 无(或1) | 检测水平边缘 |
| 拉普拉斯边缘 | [0,-1,0; -1,4,-1; 0,-1,0] | 1 | 各向同性边缘,对噪声敏感 |
为什么要用"卷积"这个麻烦的方法?
因为同一个操作(滑动窗口加权求和)只要换一组数字,就能实现三种完全不同的效果。
想模糊 : 填平均权重
想锐化 : 填中心突出权重
想找边缘 : 填正负对称权重
3.2 图像滤波工具 (Filter) --- 内置的预设滤波器,包括:高通滤波、低通滤波、中值滤波、高斯滤波等。
滤波是指通过预设或自定义的算法对图像进行平滑、去噪、锐化或边缘增强。常见的内置滤波操作有以下几类:
| 滤波工具 | 原理 | 效果 |
|---|---|---|
| 低通滤波(平滑/去噪) | 保留图像中变化缓慢的部分(低频),抑制突变的高频噪声。 | 图像变模糊,噪声减少。 |
| 高通滤波(锐化/边缘增强) | 提取图像中的高频成分(边缘、细节),让边缘更突出。 | 图像看起来更"清晰",边缘对比度提高。 |
| 中值滤波(去椒盐噪声) | 用邻域内像素的中位数替换中心像素。 | 强力去除孤立的黑白噪点,同时保留边缘(不模糊边缘) |
| 高斯滤波(加权平滑) | 邻域内像素按高斯分布赋权(中心权重大,越远权重越小),然后加权平均。 | 比普通均值模糊更自然,边缘保留略好 |
4. 形态学处理
4.1 形态学 (Morphology) --- 腐蚀、膨胀、开运算、闭运算等,用于二值图像或灰度图像的形状处理。
形态学是一种分析和处理图像形状的技术。
形态学有两个基本操作:膨胀和腐蚀/侵蚀。基于这两种操作,还有开运算和闭运算。
膨胀和腐蚀操作
膨胀操作将图像中的目标生长 或变粗 ,用于扩大区域面积,连接断裂部分。
腐蚀操作则将目标收缩 或变细 ,用于清楚噪声和细节。
两者互为逆运算,通过结构元素与图像的卷积运算实现,是形态学处理中最基本的操作。
开运算与闭运算
开运算是先腐蚀后膨胀 ,用于祛除噪声和断开联通区域,平滑目标轮廓;
闭运算是先膨胀后腐蚀 ,用于填补空洞和弥合小的断裂
这两种运算在图像处理中具有广泛的应用,能后有效的改善图像质量。
形态学操作 每一个形态操作对应效果图

5. 图像间运算
5.1 图像加减 (Add / Subtract) --- 两张图像之间逐像素相加或相减。
图像加减的本质是像素级算术运算。对于两张尺寸完全相同的灰度图 A(尺寸为 MxN)和 B,它们之间的加法与减法运算可以精确定义为一张新图 C 的形成过程。
图像加法 (Addition) C(x, y) = A(x, y) + B(x, y)
图像减法 (Subtraction) C(x, y) = A(x, y) - B(x, y),
溢出规则: 如果结果 < 0,则 C(x, y) = 0 ;结果 > 255,则 C(x, y) = 255。
VisionPro中图像加减操作通过两个不同的工具实现 CogIPTwoImageAddTool 和CogIPTwoImageSubtractTool 工具通常使用CogImageFileTool等工具加载图片来提供输入。
| 特性 | CogIPTwoImageAddTool | CogIPTwoImageSubtractTool |
|---|---|---|
| 核心功能 | 执行图像加法 (A + B) | 执行图像减法 (A - B) |
| 核心应用 | 图像融合、多帧降噪 | 缺陷检测、变化检测 |
| 关键配置 | 输入A (InputImageA)、输入B (InputImageB)、像素溢出模式(Pixel Overflow Mode) | 输入A (InputImageA)、输入B (InputImageB)、像素溢出模式(Pixel Overflow Mode) |
| 预处理项 | 可为每张输入图像定义独立的兴趣区域(ROI, Region of Interest)和对齐方式(Alignment) | 可为每张输入图像定义独立的兴趣区域(ROI, Region of Interest)和对齐方式(Alignment) |
图像加法主要用于融合信息或降噪,而图像减法主要用于突显差异。
6. 对比度增强
6.1 直方图均衡化 (Equalize) --- 自动拉伸直方图,增强全局对比度。
直方图均衡化是一种自动增强图像全局对比度的点运算。它通过重新映射像素灰度值,使输出图像的直方图尽可能均匀分布在 0~255 整个范围内,从而让原本偏暗、偏亮或对比度不足的图像呈现出更丰富的细节。
直方图均衡化 = 自动拉伸灰度分布,增强全局对比度。

7 质量评估
7.1 锐度工具 (Sharpness) --- 计算图像的清晰度分数,不改变图像内容;用于自动对焦或图像质量判断。
锐度工具(Sharpness)用于计算图像的清晰度分数,输出一个数值(如01或0100),分数越高表示图像越清晰;它只分析不修改图像内容,主要用于自动对焦时寻找峰值清晰度,或在线监控图像质量(低于阈值报警)。其工作原理基于分析边缘梯度强度或高频分量。在VisionPro中,
主要用途
自动对焦:在连续调焦过程中,寻找清晰度分数最高的位置(峰值对焦)。
图像质量监控:在生产线上定期检测图像清晰度,若分数低于阈值则报警(镜头脏污、失焦、光源问题)。
工作原理
锐度工具通过分析图像中边缘的梯度强度或高频分量来评估清晰度。常见的算法包括:
- 梯度能量(Sobel、Laplacian)
- 频域分析(傅里叶变换)
- 相邻像素差异统计
清晰图像 => 边缘锐利、高频丰富 => 分数高
模糊图像 => 边缘平滑、高频缺失 => 分数低
输出解释
| 分数范围 | 含义 |
|---|---|
| 接近 1 或 100 | 图像非常清晰 |
| 中等 | 可接受的清晰度 |
| 接近 0 | 图像严重模糊 |
二、CogImageConvertTool 图像格式转换工具
将彩色图像转为8位灰度图像

下面样例图 均为此工具输出的灰度图
三、CogIPOneImageTool 多功能图像预处理工具
1. 概述
所有功能都服务于工业机器视觉的图像增强 + 特征突出,为后续定位、识别、检测等核心算法扫清干扰。它集成了数十种算法,涵盖亮度/对比度调整、滤波降噪、形态学处理等多个核心模块。
2. 核心功能

2.1 基础灰度运算类
| 功能名称 | 核心作用 | 工业场景用法 | 通俗原理 |
|---|---|---|---|
| 加 / 减常量 | 全局调整图像亮度,给所有像素的灰度值统一加 / 减一个固定数值 | 环境光偏暗导致整体画面发灰时,用加常量 提亮;画面过曝时,用减常量压暗,快速拉回正常曝光 | 给图像里每一个像素的亮度值,统一做加减法,比如加 30 就是全图整体变亮 30 个灰度级 |
| 乘以常数 | 线性调整图像对比度,放大 / 缩小像素间的亮度差异 | 当目标和背景的亮度差太小、特征不明显时,用乘大于 1 的常数 放大对比度;画面亮度分布不均时,用乘小于 1 的常数压缩动态范围 | 给所有像素的灰度值统一做乘法,比如乘 1.5 就是把亮的更亮、暗的更暗,拉开明暗差距 |
| 像素映射 | 自定义灰度值的转换规则,实现非线性的亮度 / 对比度调整 | 针对特定灰度区间做精细调整,比如只提亮暗部、不影响亮部,或者只压缩过曝的高亮区域,比加减乘除更灵活 | 相当于给每个灰度值做 一对一翻译,比如把灰度值 0-50 放大到 0-100,把 200-255 压缩到 180-220 |
| 量化 | 降低图像的灰度等级,减少灰度层次 | 高速检测场景下,用低灰度等级(比如从 256 级降到 32 级)减少计算量,同时过滤掉微小的亮度噪声 | 把连续的灰度值 "合并归类",比如相邻的几个灰度值都归为同一个等级,画面的色彩过渡会变 "硬",同时噪点会减少 |
2.2 卷与滤波类(核心去噪 + 特征增强)
| 功能名称 | 核心作用 | 工业场景用法 | 通俗原理 |
|---|---|---|---|
| 卷积 3x3 | 用固定 3x3 大小的卷积核对图像做滤波,实现去噪、边缘增强、模糊等效果 | 快速做基础图像处理:用均值卷积做基础模糊、用锐化卷积做边缘强化、用拉普拉斯卷积做边缘提取 | 用一个 3×3 的 滑动窗口"在图像上逐像素滑动,用窗口内像素的加权和,替换中心像素的数值 |
| 卷积 NxM | 自定义任意 N 行 M 列大小的卷积核,实现更灵活的滤波效果 | 针对大尺寸噪声、特定方向的纹理做处理,比如用 5×5 高斯核做大范围柔化,用横向卷积核强化水平边缘 | 和 3×3 卷积原理完全一致,只是窗口大小可以自由定义,适配更复杂的场景 |
| 高通过滤器 | 保留图像中的高频信息(边缘、纹理、突变区域),抑制低频信息(大面积的均匀背景) | 背景有缓慢的亮度渐变干扰时,用它过滤掉背景,只保留工件的边缘、划痕、字符等高频特征 | 相当于 "高通音箱",只让画面里 "变化快" 的细节通过,把 "变化慢" 的大面积背景过滤掉 |
| 3x3 中值 | 用 3×3 窗口内的像素中值替换中心像素,去除椒盐噪声、斑点噪声 | 工业现场最常用的去噪功能,比如图像里的亮斑、暗点、飞点,用它去噪的同时,能最大程度保留边缘 | 取 3×3 窗口里所有像素亮度的中间值,替换中心像素,噪点这种 "突兀的极值" 会被直接过滤,不会被放大 |
| 中值 NxM | 自定义 N×M 窗口的中值滤波,适配不同大小的噪声 | 面对大面积的颗粒噪声、大尺寸的斑点干扰时,用更大的窗口(如 5×5、7×7)做中值滤波 | 和 3×3 中值原理一致,窗口越大,去噪能力越强,但同时也会让边缘变模糊 |
| 采样卷积 | 结合图像降采样的卷积运算,兼顾处理速度与效果 | 大分辨率图像做预处理时,先降采样再做卷积,大幅减少计算量,提升检测速度 | 先把图像缩小,再做卷积处理,最后恢复尺寸,用牺牲少量精度的代价,换成倍的速度提升 |
2.3 形态学处理类
| 功能名称 | 核心作用 | 工业场景用法 | 通俗原理 |
|---|---|---|---|
| 灰度形态调整 | 用固定结构元素做灰度形态学操作(膨胀、腐蚀、开运算、闭运算) | 处理灰度图像的特征:用闭运算填充工件表面的小黑洞、用开运算去除表面的亮噪点、用膨胀强化亮特征、用腐蚀收缩亮区域 | 用一个 "探针" 在图像上滑动,通过 "最大值 / 最小值替换" 改变亮暗区域的形状,比如膨胀会让亮的区域变大,腐蚀会让亮的区域变小 |
| 灰度形态调整 NxM | 自定义 N×M 结构元素的灰度形态学操作 | 针对特定形状的干扰 / 特征做处理,比如用横向结构元素去除横向的划痕、用圆形结构元素填充圆形的孔洞 | 和基础灰度形态原理一致,只是 "探针" 的大小、形状可以自定义,适配更精准的场景 |
2.4 几何与重采样类
| 功能名称 | 核心作用 | 工业场景用法 | 通俗原理 |
|---|---|---|---|
| 翻转 / 旋转 | 对图像做水平 / 垂直翻转,或任意角度的旋转 | 工件姿态不固定时,先把图像旋转到统一方向,再做检测;或者镜像安装的相机,用翻转还原正确画面 | 对整幅图像的像素坐标做几何变换,实现画面的左右 / 上下颠倒,或角度旋转 |
| 扩展 | 给图像边缘填充像素,扩大图像尺寸 | 卷积、形态学操作后,图像边缘会出现黑边 / 无效区域,用它填充边缘,避免边缘信息丢失 | 在图像的四周新增像素,填充方式可以选固定灰度、复制边缘像素等,保证后续处理不越界 |
| 二次采样器 | 图像的缩放(放大 / 缩小),支持多种插值算法 | 大分辨率图像缩小以提升处理速度,或小特征图像放大以看清细节,同时保证缩放后的图像质量 | 重新计算图像的像素数量,缩小是合并像素,放大是插值生成新像素,支持双线性、双三次等多种插值方式 |
| 高斯采样器 | 结合高斯模糊的图像降采样,抗锯齿效果更好 | 图像缩小前先做高斯模糊,避免缩小后出现锯齿、摩尔纹,适合高精度特征的预处理 | 先对图像做高斯柔化,再缩小尺寸,既能降速,又能避免缩小带来的锯齿失真 |
2.5 其他实用功能
| 功能名称 | 核心作用 | 工业场景用法 | 通俗原理 |
|---|---|---|---|
| 均衡 | 直方图均衡化,自动拉伸图像的灰度分布,提升全局对比度 | 图像整体偏暗 / 偏亮、对比度不足时,自动让亮的更亮、暗的更暗,让特征更突出 | 把图像的灰度直方图拉平,让所有灰度级都均匀出现,自动提升画面的对比度 |
| 丢失像素 | 处理图像中的坏点、无效像素 | 相机传感器有坏点、图像出现固定位置的黑点 / 白点时,用它修复这些无效像素 | 识别出无效的像素,用周围正常像素的数值替换,修复图像缺陷 |
3. 操作 CogIPOneImageTool工具
传入图像

操作乘与常数

操作卷积3*3 噪声敏感

还有多种处理图像的方式 这里就不一一列举了

四、CogPixelMapTool 像素重映射工具
1. 概念
CogPixelMapTool 是一个支持自定义分段线性映射的专业灰度重映射工具,适用于对比度拉伸、16-bit 量化、手动灰度变换等高级预处理场景,比 CogIPOneImageTool 提供更灵活的曲线控制。
2. 核心功能
- 自定义灰度映射: 通过添加基准点绘制分段线性映射曲线,实现任意输入灰度到输出灰度的转换(如对比度拉伸、局部增强)。
- 输出位深控制: 可将高位深图像(如16-bit)转换为低位深(8-bit),用于后续工具兼容或数据量化。
- 辅助线性调整: 支持在映射后叠加缩放、偏移、反色等操作,灵活微调输出效果。
- 自动/手动双模式: 自动模式根据直方图生成映射(类似均衡化);手动模式允许用户精确控制每个灰度区间的变换关系。
- 仅作用于灰度: 对单张灰度图或彩色图的各通道分别应用相同映射,不改变像素位置
3. 关键参数与设置
| 参数项 | 说明 |
|---|---|
| 基准点(Anchor Points) | 定义映射的关键点,每个点包含输入灰度值 x 和输出灰度值 y。工具自动在点之间线性插值。 |
| 对数直方图(Log Histogram) | 当图像灰度集中在暗区时,开启此选项可使直方图显示更清晰,便于观察和设置基准点。 |
| 输出位深(Output Pixel Depth) | 指定输出图像的位深(如 CogImage8Grey、CogImage16Grey)。输出位深不能高于输入图像。 |
| 输出缩放(Scale) | 在映射完成后,对输出值乘以一个系数。 |
| 输出偏移(Offset) | 在映射完成后,对输出值加上一个常数。 |
| 反色(Invert) | 对最终输出值做 255 - value(8-bit)或 65535 - value(16-bit)反转 |

4.作用
CogPixelMapTool 的作用是对图像中每个像素的灰度值进行自定义重映射,通过查找表或分段线性曲线将输入灰度转换为输出灰度。它主要用于拉伸对比度、改善图像动态范围、将16-bit图像量化为8-bit、以及实现手动控制的非线性灰度变换(如模拟伽马校正或自定义均衡化),从而让后续检测工具更容易提取目标特征。
五、CogPolarUnwrapTool 极坐标展开工具
1. 概念
它通过极坐标-笛卡尔坐标变换,将圆形/椭圆/环形区域展开为矩形图像,解决了圆周上字符识别难、环形表面缺陷检测不方便的核心问题。在 VisionPro 项目中,通常配合 CogFindCircleTool 定位圆心,再配合 CogOCRMaxTool 或 CogBlobTool 进行分析,是工业视觉中"环形目标检测"的必备预处理工具。
2. 核心功能
将环形 / 圆形 / 椭圆目标的表面图像从环形卷绕形态 拆成平铺矩形形态,解决圆形 / 椭圆区域直接检测不便的问题
3. 采样模式参数说明
采样模式
| 模式 | 原理简述 | 优点 | 缺点 | 推荐程度 |
|---|---|---|---|---|
| 最近邻采样 (Nearest Neighbor) | 简单粗暴地直接选用离采样点最近的那个像素的数值。 | 计算速度非常快。 | 精度较低, | 产生的图像边缘会有锯齿,看起来不平滑。 |
| 双线性插值 (Bilinear Interpolation) | 一种更精细的算法。它会参考采样点周围最近的4个像素,根据它们到采样点的距离进行加权平均,计算出更精准的新像素值。 | 展开的图像边缘更平滑、更自然。 | 计算量稍大,速度比最近邻采样略慢。 | 强烈推荐,是几乎所有精度检测任务的默认选项。 |
X/Y 缩放系数控制展开图像的尺寸
输出宽度 = 默认宽度 × ScalingX
输出高度 = 默认高度 × ScalingY
4. 如何使用
随便在网上找了一张图

进行灰度转换(这里不进行其他工具操作 只对CogPorlarUnwrapTool 工具进行操作)

输出图像结果

六、CogSobelEdgeTool Sobel边缘检测工具
1. 概念
梯度边缘检测器,输出边缘强度和方向图像,支持后处理细化边缘,常与 Blob 分析工具串联用于轮廓提取和缺陷检测。
2. 核心功能
CogSobelEdgeTool 的核心功能是检测图像中的边缘,输出两张结果图:边缘幅度图像(像素越亮表示该处边缘越强)和边缘角度图像(编码边缘的方向),并可选择性地对边缘进行细化或过滤虚假边缘。
3.参数说明
| 参数 | 说明 | 建议 |
|---|---|---|
| 输入图像 | 待检测的灰度图像 | 必要时先用 CogIPOneImageTool 降噪 |
| 操作区域 | 整图或 ROI | 整图模式下输出尺寸会减少2像素 |
| 幅度缩放系数 | 放大/缩小边缘强度(0.5~ 50) | 金属件=5~ 7,塑料件=10~15,弱边缘可适当增大 |
| 全像素峰值探测 | 将厚边缘细化为单像素宽 | 需要精确边缘位置时启用 |
| 滞后阈值化 | 双阈值过滤虚假边缘 消除噪声造成的孤立边缘 |
4. 三种输出图像表示
**EdgeMagnitudeImage 原始梯度幅值图像:**计算每个像素点的边缘强度(如 Sobel 算子的梯度幅值),值越大表示边缘越明显。未经过非极大值抑制,边缘较粗、响应较宽。

EdgeAngleImage 梯度方向图像: 存储每个像素点的边缘方向(通常为 0°~ 180° 或 0°~ 360°),用于后续非极大值抑制和边缘连接。像素值代表该点的法线方向(垂直于边缘的方向)。

FinalMagnitudeImage 最终边缘幅值图像: 通常指非极大值抑制(NMS)后的边缘幅值图像。沿梯度方向保留局部最大值,抑制非边缘点,使边缘细化至单像素宽度。之后可能还会进行双阈值及连接处理,但此处的Magnitude 仍表示幅值,而非二值边缘图。

