YOLO Vision 2026:
返回 Ultralytics 词汇表

Change Detection

了解变更检测如何使用 Ultralytics YOLO 在卫星分析、灾害评估和工业检查中识别图像和视频中的显著差异。

变化检测是一种计算机视觉技术,用于识别在不同时间捕获的同一场景观测结果之间的有意义的差异。它不仅询问图像中出现了什么,还询问什么出现了、消失了、移动了、生长了、缩小了或改变了状态。系统可能会比较两张照片、连续的视频帧或更长的时间序列。其输出可以是二值变化图、带标签的区域、改变的物体或新受灾土地面积等测量值。

变化检测的工作原理#

典型的工作流程从同一区域的两张或多张图像开始。双时相变化检测比较两个日期,而多时相变化检测分析序列以区分孤立事件与渐进趋势。

在进行比较之前,必须使图像具备兼容性:

  1. 对齐:图像配准将对应的场景点放置在相同的像素坐标处。否则,即使是很小的相机位移也会在每个物体周围产生虚假的边缘。
  2. **归一化:**调整亮度、颜色、大气条件和传感器响应。对于卫星分析,地表反射率产品通过减少大气效应来改进比较。
  3. **表示:**系统比较原始像素、提取的视觉特征、检测到的物体或分割掩码。基本方法可以使用OpenCV绝对图像差,而学习模型尽管存在轻微的光照或视点差异,也能识别语义变化。
  4. **决策:**通过阈值将有意义的变化与噪声区分开来。scikit-image图像指标API中的相似性度量等工具可以量化两个观测结果的不同程度。
  5. **后处理:**可以移除小的孤立检测结果,将相邻像素合并为区域,并为变化分配诸如“新建筑”或“缺失组件”之类的标签。

最小可检测变化是系统能够可靠地从传感器噪声、配准误差和正常变异中分离出来的最小改变量。它取决于图像分辨率、物体大小、对比度、预处理质量以及所选的阈值。

相关概念与关键区别#

变化检测与几个视觉任务有重叠,但每个任务回答的问题都不同:

  • **异常检测**识别与学到的正常定义不同的观测结果,有时仅使用一张图像。变化检测需要时间或基准比较,并且不意味着该变化是异常的。
  • **目标检测**在每张图像中独立定位和分类物体。比较不同日期的检测结果可以揭示添加或移除的物体。
  • **图像分割**在像素级别分配标签。变化检测可以比较分割掩码以精确测量改变的形状或区域。
  • **目标跟踪**在视频帧之间保持物体身份,并强调运动和轨迹。变化检测通常关注场景内容或状态的变化,这些变化可能在几分钟、几个月或几年内发生。
  • 数据漂移描述生产输入统计分布的变化。它关乎模型的可靠性,而视觉变化检测关乎观察到的场景内部的差异。

实际应用#

**地球观测与灾害评估:**分析人员比较卫星图像来绘制森林砍伐、城市扩张、海岸线移动、野火破坏或洪水的地图。卫星图像分析可能会将多光谱数据与分割结合起来,以对每个改变的区域进行分类。USGS Earthshots集合展示了前后Landsat影像如何揭示环境变迁,而NASA则提供了一个实用的对数差分变化检测工作流程。像NOAA海岸土地覆被与变化这样的长期项目将这些比较转化为用于防洪规划和海岸管理的信息。

**工业检测:**固定相机可以在生产步骤前后比较装配情况。检测可能会显示缺少的螺栓或新放置的组件,而分割可以测量裂纹或受损表面。在自动制造视觉检测中,未检测到的变化可能会允许有缺陷的产品继续向下游流动,而误报则会导致不必要的停线和人工复查。

使用 Ultralytics YOLO 的变化检测#

Ultralytics YOLO 可以提供变化检测管道的语义感知阶段。例如,自定义的YOLO26分割模型可以通过YOLO预测模式处理配准前后的图像:

from ultralytics import YOLO

# Load a segmentation model trained for relevant objects or regions
model = YOLO("yolo26n-seg.pt")

# Run inference on an aligned image pair
sources = ["before.jpg", "after.jpg"]
results = model(sources)

# Save semantic predictions for comparison
output_names = ["before_predictions.jpg", "after_predictions.jpg"]

for result, output_name in zip(results, output_names, strict=True):
    result.save(filename=output_name)

此工作流程为每个观测生成物体掩码和标签。下游应用程序可以匹配对应的类别并比较它们的存在性、位置或掩码面积。对于专业类别,团队可以使用Ultralytics Platform标注成对图像、训练自定义模型并管理部署。

实际挑战与最佳实践#

可靠的变化检测不仅仅是相减图像。相机移动、阴影、季节性植被、反射、云层和遮挡都可能类似于真正的变化。团队应保持视点和传感器设置一致,在比较前对齐图像,使用具有代表性的“无变化”变异进行训练,并使用验证数据选择阈值。

评估应同时衡量误报(例如被标记为结构变化的阴影)和漏报(例如遗漏的小缺陷)。适当的平衡取决于后果:灾害测绘可能优先考虑召回率,而大批量检测线可能需要更严格的精确度以避免过多的警报。对于模棱两可或高影响的结果,人工复查仍然很有价值。

Explore solutions

让我们一起构建 AI 的未来!

开启你的机器学习未来之旅