一句话答案:计算机视觉(Computer Vision,CV)是让计算机从图像或视频中提取可验证信息,并输出类别、位置、像素区域、关键点、文字、轨迹或三维关系的一组技术。它不是笼统地“像人一样看懂”,而是把一个视觉问题写成明确的输入、输出和评测合同,再用图像处理、机器学习或深度学习完成。

计算机视觉到底解决什么问题?
人看到一张仓库照片,可能同时说出“有三只纸箱”“右侧纸箱破损”“通道被占用”。计算机系统却必须把这些目标拆成不同任务:计数通常依赖检测或跟踪,破损位置可能需要检测或分割,通道占用要先定义区域和事件规则。任务不同,标注、模型、指标、错误成本也不同。
OpenCV 官方介绍把项目定位为开源计算机视觉和机器学习软件库;其官方教程同时覆盖图像处理、相机标定、特征、目标检测与深度神经网络。这说明 CV 不是某一种神经网络的别名,而是从像素变换到语义任务的完整领域。
| 业务问题 | 更合适的任务 | 典型输出 | 不能只写的目标 |
|---|---|---|---|
| 照片中是否有安全帽 | 分类;若有多人则检测 | 标签/概率,或每个人的框和标签 | “识别安全帽” |
| 货架上每件商品在哪里 | 目标检测 | 类别、边界框、置信度 | “理解货架” |
| 道路积水覆盖了哪些像素 | 语义或实例分割 | 像素级掩码 | “判断积水情况” |
| 票据上的金额和日期是什么 | OCR + 版面/字段抽取 | 文字、坐标、字段与置信度 | “读懂票据” |
| 同一目标在视频中怎样移动 | 检测 + 多目标跟踪 | 跨帧 ID、轨迹、事件 | “分析视频” |
| 用文字检索图片或回答图片问题 | 图文检索或 VLM | 相似度、结构化字段或文本 | “多模态理解” |
计算机视觉、图像处理、机器视觉和 VLM 有什么区别?
这些词经常混用,但项目边界不同。图像处理通常改变像素或增强信号,例如去噪、缩放、透视校正和颜色变换;计算机视觉更关注从视觉输入中估计有意义的状态;机器视觉常指工业现场中相机、光源、触发器、算法、控制器和执行机构组成的整套系统;视觉语言模型则把视觉与语言联系起来。
| 概念 | 主要输入/输出 | 适合的问题 | 常见误区 |
|---|---|---|---|
| 图像处理 | 图像 → 变换后的图像或低级特征 | 去噪、增强、几何校正、颜色分析 | 认为每个问题都需要训练模型 |
| 计算机视觉 | 图像/视频 → 标签、位置、掩码、轨迹等 | 分类、检测、分割、姿态、OCR、三维 | 把“能输出”当成“输出可靠” |
| 工业机器视觉 | 相机与传感器 → 检测结果或控制信号 | 测量、定位、外观检测、机器人引导 | 只比较模型,不验证光学与节拍 |
| VLM | 视觉 + 文本 → 检索分数、字段或语言回答 | 图文检索、描述、视觉问答、文档交互 | 流畅回答等于像素定位和事实正确 |
如果任务需要开放式问答、图文检索或自然语言交互,应继续查看本站已复核的VLM 原理、任务选型与生产验收指南。如果只需要稳定输出框、掩码或数值,专用视觉模型通常更容易约束和评测,不必为了“可以聊天”引入更大的生成系统。
分类、检测、分割、关键点、OCR 与跟踪怎样选?
选择任务的关键不是哪个模型更热门,而是下游动作需要什么最小输出。只要整张图一个标签,分类可能足够;需要知道多个对象的位置,就用检测;需要轮廓、面积或像素级操作,再考虑分割。COCO 官方 API覆盖检测、分割、人体关键点等任务,TorchVision 官方教程则展示了如何在自定义数据上微调检测与实例分割模型。
| 任务 | 最低标注 | 常见指标 | 典型失败 |
|---|---|---|---|
| 图像分类 | 每张图的类别 | 每类精确率、召回率、F1、混淆矩阵 | 背景捷径、长尾类别被平均值掩盖 |
| 目标检测 | 类别 + 边界框 | AP、召回率、不同尺寸/类别结果 | 小目标漏检、密集场景重复框 |
| 语义/实例分割 | 像素掩码 | IoU、Dice、边界误差 | 细边界、遮挡和相邻实例粘连 |
| 关键点/姿态 | 关键点坐标与可见性 | 关键点距离或任务专用 AP | 遮挡、视角变化、左右混淆 |
| OCR/文档 | 文字、位置、版面或字段 | 字符/词错误率、字段正确率 | 旋转、模糊、表格关系和相似字符 |
| 跟踪/事件 | 跨帧身份、轨迹或事件区间 | 漏检、ID 切换、事件召回和延迟 | 遮挡后换 ID、离开画面后误关联 |
指标定义也要与任务一致。scikit-learn 官方文档明确区分精确率、召回率、F 分数和 support;类别不均衡时,只报总体准确率可能隐藏少数类失败。检测项目使用 COCO 风格 AP 时,也应记录 IoU 阈值、最大检测数、目标尺寸和每类结果,不能只截取一个 mAP 数字。
计算机视觉模型从传统方法发展到哪里了?
传统视觉并没有消失。边缘、颜色、形态学、特征匹配和几何变换在固定机位、规则目标、相机标定和质量检查中仍然有价值,优点是可解释、数据要求低、运行成本可控。深度学习扩大了复杂外观和大规模类别的处理能力,但也引入数据依赖、漂移、算力和解释难题。
| 路线 | 核心做法 | 更适合 | 必须核验 |
|---|---|---|---|
| 规则与传统特征 | 阈值、边缘、轮廓、几何、手工特征 | 环境可控、规则明确、样本少 | 光照、镜头和工件变化 |
| CNN | 用卷积学习局部层级特征 | 分类、检测、分割的成熟基线 | 训练分布、感受野、速度和模型大小 |
| Vision Transformer | 把图像块作为序列处理 | 大规模预训练和多种视觉主干 | 数据、预训练、分辨率和计算预算 |
| 图文预训练 | 学习图像与文本的联合表示 | 检索、零样本分类和开放词汇候选 | 提示措辞、长尾、偏差和领域差异 |
| 可提示分割/视觉基础模型 | 用点、框、掩码或文本指定目标 | 交互标注、候选掩码和任务适配 | 目标边界、陌生领域与下游规则 |
ViT 论文展示了纯 Transformer 处理图像块序列的路线,但论文结论依赖预训练规模和评测设置;它不是“所有项目都应替换 CNN”的采购结论。OpenAI 的 CLIP 说明展示了自然语言监督和零样本迁移,也明确列出计数、细粒度分类、分布外图像和提示措辞等限制。Meta SAM 2把可提示分割扩展到图像和视频;这类通用能力可以降低交互成本,但仍需在目标领域逐类验证。
怎样把一个业务问题做成可验收的视觉项目?

- 写业务动作:系统发现什么后,由谁做什么;误报和漏报分别造成什么损失。
- 定义输出合同:字段、坐标系、阈值、超时、空结果、置信不足和异常输入怎样表达。
- 建立数据清单:来源、授权、设备、时间、地点、场景、标注规范、保留和删除责任。
- 先做最小基线:比较人工流程、简单规则、传统视觉和预训练模型,避免一开始就训练最大模型。
- 划分真实切片:相机、光照、天气、距离、遮挡、尺寸、地区、班次和高风险人群分别评测。
- 影子运行:在真实流量中记录结果,但先不自动触发高影响动作;复核失败样本和容量。
- 分组灰度:限制设备、地点、用户和动作范围,设置错误阈值、人工接管和旧版回滚。
- 持续回归:模型、相机、镜头、压缩、阈值、业务规则或数据分布变化后,重跑受影响切片。
数据是否放在本地、云端或混合环境,不应由“视觉数据敏感”一句话决定。应逐项画出原图、裁剪图、标注、特征、日志和备份的数据流,再结合并发、延迟、运维与退出路径选择。本站的本地部署与云端大模型决策指南提供了可复用的数据流和总成本检查方法。
数据和标注怎样设计,才不会“测试很好、上线失效”?
视觉项目首先是数据项目。训练集、验证集和测试集不仅要分开,还要防止同一视频相邻帧、同一对象连拍、同一患者、同一生产批次或同一地点同时落入训练和测试,从而造成数据泄漏。随机按图片切分看似方便,却可能让测试集与训练集几乎相同,得到虚高结果。
标注规范需要定义“标什么”和“怎样标”。例如检测被遮挡的人时,是框出可见部分还是估计完整身体;模糊到无法判断的目标是忽略、标为困难样本还是强制归类;实例分割的边界是否包含阴影和透明区域。这些规则必须有正例、反例、边界例和仲裁方式。没有一致的真值,模型分数再精确也无法说明真实质量。
| 数据环节 | 必须记录 | 常见泄漏或偏差 | 检查动作 |
|---|---|---|---|
| 采集 | 设备、镜头、地点、时间、授权、原始格式 | 只采晴天、白天或最容易的机位 | 按真实流量建立采集矩阵 |
| 抽样 | 抽样单位、频率、去重和排除规则 | 视频相邻帧重复,少数事件被淹没 | 按事件/对象分组再抽样 |
| 标注 | 标签版本、工具、标注员、分歧和仲裁 | 边界规则不一致,困难样本被删除 | 双人抽检与分歧率监控 |
| 数据切分 | 分组键、随机种子、时间边界、冻结日期 | 同一对象或批次跨训练与测试 | 按主体、地点或时间隔离 |
| 评测切片 | 每个切片定义、样本数与业务权重 | 总体平均掩盖夜间、小目标或少数类 | 总体与关键切片同时设门槛 |
| 再训练 | 新增样本来源、去重、旧测试集保护 | 把线上错误样本加入训练后又用其测试 | 保留独立冻结回归集 |
预处理也属于可复现配置。缩放、裁剪、颜色顺序、归一化、去畸变和压缩方式只要不一致,就可能导致训练与生产差异。OpenCV 的图像处理官方教程目录列出滤波、几何变换、直方图、轮廓和分割等操作;项目应保存具体版本、参数和执行顺序,而不是只写“使用 OpenCV 预处理”。
应该买 API、使用预训练模型,还是自己训练?
四种路线都可能合理:现成产品/API、通用预训练模型、在预训练模型上微调、从头训练。选择应看输出能否约束、目标数据能否代表真实场景、供应商是否提供版本与数据边界、目标设备是否满足延迟,以及团队能否持续维护。概念验证成功不代表长期成本更低。
| 路线 | 适用起点 | 最先验证 | 主要责任 |
|---|---|---|---|
| 现成产品/API | 通用 OCR、内容分析或标准能力,需快速试用 | 地区、版本、数据条款、限额、真实样本质量 | 供应商依赖、数据流、费用和退出 |
| 预训练模型直接推理 | 类别或输出与模型能力接近 | 模型卡、许可证、输入格式、领域切片 | 部署、阈值、监控与适用范围 |
| 微调预训练模型 | 有领域数据,需要定制类别或外观 | 基线增益、标注质量、过拟合和灾难性退化 | 训练数据、实验、版本和持续回归 |
| 从头训练 | 数据与任务高度专用且资源充足 | 是否真的优于预训练基线 | 最大的数据、算力、人才和维护负担 |
| 规则 + 模型混合 | 业务规则明确,模型只处理感知难点 | 边界条件、规则冲突和降级路径 | 两套逻辑的版本与联合测试 |
供应商演示只能生成候选名单。正式比较时应固定同一批脱敏样本、同一输出格式和同一计分脚本,记录接口版本、预处理、重试、人工修正与失败样本。若产品不能导出结果、锁定版本或说明数据处理,就要把迁移与审计成本计入,而不是只看每次调用标价。
边缘端、服务器和云端部署怎样决定?
相机旁的边缘计算可以减少原始视频外传和网络依赖,但设备的算力、内存、功耗、散热与升级能力有限;中心服务器便于统一管理,却要承担视频回传、并发和故障域;云端具有弹性与托管能力,但仍需核对区域、链路、数据和费用。常见的混合方案是在边缘做裁剪、质量检查或初筛,只把必要片段和结构化结果送到中心。
| 部署位置 | 主要优势 | 容易漏算 | 验收重点 |
|---|---|---|---|
| 相机/边缘设备 | 低链路依赖、原始数据可就地处理 | 散热、功耗、驱动、批量升级和设备差异 | 最差设备上的持续运行和断网降级 |
| 现场服务器 | 多路相机共享资源,便于本地集中管理 | 峰值并发、存储、备份和单点故障 | 真实码流、队列、故障恢复和容量余量 |
| 私有中心/机房 | 统一权限与模型服务 | 跨站链路、运维值守和资源竞争 | 端到端延迟、隔离、审计与扩容 |
| 云端 API/服务 | 快速启用、弹性和托管能力 | 出入站流量、重试、限额、地区和退出成本 | 数据条款、P95 延迟、失败策略和账单 |
| 混合 | 按敏感度、延迟和复杂度路由 | 策略错误、重复处理与多版本一致性 | 路由规则、降级、追踪和跨端回归 |
成本应按“每个可验收结果”计算:相机与光学、标注、训练、GPU/CPU、网络、存储、接口、监控、人工复核、失败重试、现场维护和模型更新都要进入分母。一个便宜但需要大量人工纠错的模型,单位合格结果成本可能更高;一个更大但无法在节拍内返回的模型,也没有生产价值。
评测为什么不能只看准确率或 mAP?
离线平均指标只回答“在这份测试集和这组配置上表现如何”。生产系统还要回答:少数类是否被漏掉、夜间是否退化、目标设备能否按时处理、错误是否会触发危险动作、数据是否有权使用、失败后能否接管和回滚。比较多个方案时,应像本站AI 平台同任务评测指南那样固定输入、版本、评分尺和失败分类,而不是凭几个漂亮样例选型。

| 验收门 | 最低证据 | 失败时的动作 |
|---|---|---|
| 任务质量 | 固定测试集、指标实现、阈值、每类结果和失败样本 | 改任务、数据、模型或阈值 |
| 场景切片 | 关键设备、光照、距离、遮挡、尺寸与人群的分组结果 | 限制适用范围或补数据 |
| 性能容量 | 目标设备上的 P50/P95 延迟、吞吐、内存、功耗和队列 | 压缩、降级、扩容或异步处理 |
| 数据权利 | 来源、告知/同意或其他合法基础、授权、保留和删除记录 | 停止使用、重新采集或最小化 |
| 安全接管 | 低置信、传感器异常、越界输入、高风险动作的停止线 | 转人工或禁止自动执行 |
| 监控回滚 | 版本、错误样本、漂移、人工改判、告警和旧版回退演练 | 自动降级或回滚 |
真实世界中最容易忽略哪些失败?
| 失败来源 | 表面现象 | 验证方法 | 缓解方向 |
|---|---|---|---|
| 分布漂移 | 上线一段时间后漏检增加 | 按时间、地点、设备监控切片 | 再采样、回归集、受控更新 |
| 背景捷径 | 换背景就判断错误 | 遮挡/替换背景、反事实样本 | 增加多样背景和对象级证据 |
| 小目标与遮挡 | 总体 AP 尚可,关键对象漏掉 | 按尺寸、可见比例分组 | 改善镜头、分辨率、裁剪与数据 |
| 压缩与链路变化 | 开发机正常,视频流失败 | 复现真实编码、带宽和丢帧 | 端到端测试和输入质量告警 |
| 标注不一致 | 模型和人工反复争议 | 双人复核、分歧率、规范样例 | 修订标签定义和仲裁流程 |
| 自动化偏差 | 错误结果直接进入决策 | 统计人工改判和受影响群体 | 人机分工、申诉和停止线 |
人脸识别尤其不能只报一个总体正确率。NIST 人脸识别评测持续展示不同算法、图像质量和人口统计分组之间可能存在差异;这类结果应被理解为需要分组测试的证据,而不是对任意产品或人群的固定结论。
人脸、医疗、交通等高风险场景有哪些边界?
视觉输出可能影响身份验证、诊疗、出行、安全生产和公共管理。通用模型或公开基准的结果不能自动外推到这些场景。至少应有领域专家、目标人群与设备上的验证、错误影响评估、人工复核、申诉渠道、事件响应和受控变更。
在中国使用人脸识别技术,还要核对专门规则。国家网信办等部门发布的《人脸识别技术应用安全管理办法》自 2025 年 6 月 1 日起施行,涉及必要性、单独同意、替代方式、个人信息保护影响评估、存储和备案等要求。是否适用、以何种法律基础处理,应由项目责任人与专业法律人员结合真实流程判断,不能用模型“准确率很高”替代合规审查。
- 不要把通用图像分类器直接描述为医疗诊断系统。
- 不要把检测到对象等同于理解原因、意图或责任。
- 不要在未经验证时让模型直接拒绝服务、处罚人员或控制危险设备。
- 不要采集“以后可能有用”的无限量图像;定义最小必要范围、保留期和删除流程。
- 不要只保存成功案例;错误样本、人工改判和版本关系才是持续改进证据。
初学者怎样开始学习计算机视觉?
学习顺序可以从“能运行的小任务”开始,而不是先背模型名字。第一步用 OpenCV 完成读取、颜色空间、滤波、阈值、轮廓和几何变换;第二步理解训练集、验证集、测试集以及精确率和召回率;第三步用 TorchVision 的预训练模型做分类或检测基线;第四步再选择分割、OCR、跟踪、三维或 VLM 方向。
| 阶段 | 建议练习 | 应保存的证据 |
|---|---|---|
| 像素与几何 | 透视校正、颜色阈值、轮廓测量 | 输入条件、参数、失败图 |
| 分类 | 两到五类小数据集,比较简单基线 | 类别分布、混淆矩阵、错误样本 |
| 检测/分割 | 标注少量目标并微调预训练模型 | 标注规范、每类/尺寸结果、推理速度 |
| 部署 | 在目标设备或真实视频流上运行 | P95 延迟、内存、失败切片、降级方案 |
| 生产闭环 | 影子流量、人工复核、回归和回滚 | 版本、阈值、人工改判和告警记录 |
移动端或边缘部署还应查阅目标平台资料,例如 Apple Vision 官方文档,并在真实设备上测量相机输入、预处理、模型和后处理的端到端延迟。只测模型单次推理时间,无法代表用户看到结果所需的总时间。
一份可执行的计算机视觉需求应该怎样写?
不要把需求写成“用 AI 识别现场异常”。可以改写为:在指定仓库的固定相机视频中,每两秒检查一次黄色安全通道是否被纸箱占用;输出相机编号、时间、通道多边形、占用区域和置信度;连续三次超过阈值才生成待复核事件;低照度、镜头遮挡或输入中断时输出“不可判断”,不得自动通知处罚;值班员可确认、驳回或标记原因,所有改判进入每周回归集。
这份写法同时限定了地点、对象、采样频率、空间范围、输出字段、触发规则、异常输入、禁止动作、人工接管和反馈用途。团队随后才能决定用区域规则、检测、分割还是混合方案,并计算所需相机、标注和延迟。如果换成“所有仓库、所有异常、实时识别”,范围会瞬间扩大,却没有可验证的完成条件。
- 适用范围:哪些地点、设备、对象和时间段在范围内,哪些明确不在。
- 输出合同:字段、坐标、单位、置信度、空结果、错误码和超时。
- 质量门槛:关键类别的召回与误报上限,以及必须单独达标的场景切片。
- 动作边界:结果只做提示、进入人工队列,还是允许自动控制;哪些情况必须停止。
- 变更规则:相机、模型、阈值或标注规范变化后,要重跑哪些固定回归集。
常见问题
计算机视觉一定要用深度学习吗?
不一定。固定环境、规则清晰、数据少的任务可能用图像处理和传统特征更稳定、更便宜。复杂外观、类别和场景通常更需要学习方法。正确做法是保留简单基线,再用同一测试集比较。
CNN 已经过时了吗?
没有。CNN、ViT 和混合架构都仍在使用。选择取决于预训练资源、数据、分辨率、延迟、内存、目标设备和任务结果;“更新”不等于在你的数据上更好。
计算机视觉和 AI 图像生成是一回事吗?
不是。计算机视觉通常从已有视觉输入中识别、定位或测量;图像生成根据文本、图像或其他条件合成新内容。两者可能共享编码器、数据和多模态技术,但输出目标与风险不同。
mAP 越高,产品就一定越好吗?
不一定。mAP 依赖数据集、IoU 阈值、类别、尺寸和实现;产品还受召回、延迟、错误成本、设备、数据权利和回滚能力影响。应先确定业务停止线,再组合指标。
零样本模型可以不做标注直接上线吗?
不建议。零样本能力可以用于探索、候选生成或减少初始标注,但目标领域仍需要有代表性的真值集、分组评测和失败复核。提示词或类别描述变化也可能改变结果。
结论:把“看懂”改写成可验收输出
计算机视觉的核心不是让系统模糊地模仿人眼,而是把真实场景变成可测量的任务:输入来自哪里,输出是什么,哪些错误最危险,在哪些数据切片上达标,谁能复核,失败后怎样停止和回滚。分类、检测、分割、OCR、跟踪和 VLM 各有边界;传统方法、CNN、ViT 与基础模型也没有脱离场景的统一赢家。
最小行动清单:先写业务动作和错误成本;选择最小输出任务;确认数据来源与权利;建立简单基线;按场景切片评测;在目标设备上测端到端性能;先影子运行再灰度;为高风险动作设置人工接管;保存版本、错误样本和回滚证据。
延伸阅读:腾讯元宝 Agent 与多模态能力指南提供了国产大模型在视觉理解方面的最新实践参考。
