工程

计算机视觉

面向检测、分析、部署与视觉系统集成的计算机视觉工作。

本服务聚焦于计算机视觉系统,其中检测逻辑、环境条件、部署约束与系统集成都至关重要。

固定范围报价1 个工作日内回复任何技术栈或语言位于欧盟 · 符合 GDPR

在部署前审视视觉系统

告诉我们差距在环境契合度、运行时行为、集成还是管线设计。我们会勾勒出最有力的第一个范围。

  • 固定范围报价 — 无义务
  • 1 个工作日内回复

提交即表示您同意我们就此咨询与您联系。

inspect.py
import cv2import numpy as npfrom inspection import Detector, Verdict, plc# Loaded once at start-up: model load is ~900 ms and the line gives us 240 ms# per part. Anything that can be done before the first part arrives, is.detector = Detector("models/weld-seam-v7.onnx", provider="CUDAExecutionProvider")def inspect(frame: np.ndarray) -> Verdict: # Crop to the fixture. The camera sees the whole cell, but the weld is always # in the same window, and cropping first cuts inference cost roughly fourfold. roi = frame[220:820, 340:1240] # Normalise for the lighting, which drifts all shift as the lamps warm up. # Without this the model quietly gets worse between 06:00 and 10:00. gray = cv2.cvtColor(roi, cv2.COLOR_BGR2GRAY) gray = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8, 8)).apply(gray) # Infer. "Not sure" is a distinct outcome from "no defect", and conflating # the two is how vision systems lose the operators' trust in week three. boxes, scores = detector.run(gray) confident = scores >= 0.62 if not confident.any() and scores.max(initial=0) > 0.35: return Verdict.REVIEW # Decide inside the cycle time. The PLC holds the authority here; the vision # system only ever reports, so a crash fails safe instead of passing scrap. if boxes[confident].size: plc.write("Line1.Reject", True) return Verdict.REJECT plc.write("Line1.Pass", True) return Verdict.PASS
  1. 01 — Crop to the fixture

    The camera sees the whole cell. The weld is always in the same window, so cropping before inference cuts the cost about fourfold and removes most of the background the model could get distracted by.

  2. 02 — Normalise the lighting

    Shift lamps warm up over the morning and the image drifts with them. CLAHE flattens that out. Skip this and the model gets quietly worse between 06:00 and 10:00 — the hardest kind of fault to diagnose.

  3. 03 — Infer, and allow "not sure"

    Two thresholds, not one. A confident detection is a reject; a weak signal is sent for review. Collapsing those into a single yes/no is how a vision system loses the operators’ trust in week three.

  4. 04 — Decide, inside the cycle

    The PLC holds the authority. The vision system only reports, so if the inference box dies the line fails safe rather than passing scrap. That division is the difference between a demo and something allowed near production.

The model is the smallest part of this. Cropping, lighting, an explicit "not sure" outcome, and who is allowed to stop the line are what decide whether it survives a real shift.

常见问题

  • •某个视觉构想在测试中能用,却在真实环境中变得不可靠。
  • •模型或管线与周边系统的连接不够好。
  • •在能够真正具备运营价值之前,项目需要更多部署现实感。

我们构建什么

  • •视觉系统架构与部署支持
  • •视觉管线与周边软件之间的集成
  • •面向真实环境使用的可靠性改进
  • •面向运营视觉工作流的工程支持

最佳适配

  • •正从视觉原型走向部署的团队
  • •真实条件会击穿模型假设的项目
  • •需要围绕视觉的更强系统工程的构建

我们的方法

我们聚焦视觉系统中最阻碍运营使用的部分:环境契合度、管线结构、集成或运行时行为。

技术重点

有用的计算机视觉取决于的不只是一个模型。它取决于数据流、运行时约束、环境变异、管线集成,以及输出如何被更大系统所使用。

简要场景

情境

一条视觉管线在受控验证中表现良好,但运行时条件与系统集成仍然阻碍可靠部署。

方法

围绕部署需求重构管线,强化集成,并应对真实环境的失效模式。

结果

视觉系统在生产中变得更可用,在运营上也更值得信赖。

常见问答

这只是模型开发吗?

不是。工作包括围绕部署、数据流、集成与运行时行为的工程。

你们能帮忙把原型推向生产吗?

能。这一过渡往往正是最艰难工程工作的开端。

这是否包括集成到更大的产品或机器系统中?

是的。集成通常是让视觉输出真正有用的核心。

其他工程服务

软件工程与科学计算

软件工程、C++/Python 科学计算、定制求解器与架构落地。

嵌入式系统

面向软硬件边界、设备逻辑与控制行为的嵌入式系统工程。

机器人软件

面向机器人系统、运动工作流、控制与机器行为的软件工作。

工业自动化与 CFD/FEA

工业自动化、OpenFOAM 中的 CFD 仿真、有限元分析与过程建模。