
给零编程基础新手的一份完整指南。
面向国际市场,收入按美元计算。
如何使用这份指南。 按顺序读。
第 1–3 部分帮你理解这件事到底是什么,以及该怎么思考。
第 4–5 部分是实操:你会跑起第一段代码。
第 6–8 部分讲怎么把这项技能变成收入。
最后有常见问题和术语表(遇到不懂的词,就去那里查)。

目录
-
这是什么,以及为什么有人愿意付钱
-
你的工具 -> 它们是什么、为什么需要它们(通俗解释)
-
如何跟 AI 协作 -> 你的主要技能不是编程
-
在 Google Colab 跑起第一段代码 -> 分步指南
-
现成脚本包(附每个脚本的用途说明)
-
作品集 -> 三个能卖钱的项目
-
去哪里找客户,以及该收多少钱(附英文模板)
-
你的前 90 天计划
-
收入基准
-
常见问题(FAQ)
-
不要做什么
-
术语表

第 1 部分。这是什么,以及为什么有人愿意付钱
计算机视觉(Computer vision) 是一种让计算机能「看」照片或视频,并理解里面有什么的技术:有哪些物体、它们在哪里、往哪儿移动、数量是多少。本质上,它做的是人眼和大脑做的事 -> 只是变成了自动化,而且可以同时处理任意数量的摄像头。
开头那四个视频不是玩具教程 -> 它们是 四个真实的商业任务:
- 物体计数 -> 仓库、库存、存货管理。
- 追踪并统计人/车辆 -> 商店(进来多少人)、道路(经过多少车)。
- 速度估算 -> 交通执法、道路和工地安全。
- 体育分析 -> 追踪球员、拆解比赛(这是一个很大的行业)。
企业一直在为这类东西付钱:零售、安防、道路交通、制造业(缺陷控制)、农业、体育、物流。

为什么现在一个没有学位、不会编程的人也能做这个? 因为出现了两样东西:
- 现成工具,已经会「看」了(不用你自己发明 -> 你只要运行它们)。
- AI 助手,可以替你写代码、修代码。
这件事以前需要有多年经验的工程师。现在你的工作是 把现成模块拼起来,并向 AI 说清楚你需要什么。
坦白说,哪条路真的更走得通:
- 这条路 最适合 做 自由职业和交钥匙项目 -> 你给客户搭一个能用的系统(比如访客计数),按结果收钱。这是主路线(下文的 Path B)。
- 去公司做全职工程岗位 更难、更慢:面试时他们还是会让你现场写代码,光靠 AI 不够。通常是先有项目经验,再往那条路走(Path A)。
换句话说,钱来得最快的方式,是 客户为完成的工作付费,不是等大公司给你 offer。
第 2 部分。你的工具 -> 它们是什么、为什么需要它们
别被这些名字吓到。用大白话说,它们分别是:
- YOLO -> 「眼睛」。一个现成模型,能在图像里找到物体,给它画框并打标签(「person」「car」)。一行命令就能下载,马上能用。
- ByteTrack -> 「记忆」。YOLO 自己是每一帧都从头看。ByteTrack 会把不同帧里的物体串起来,并给它们编号(ID),所以它知道:第 1 秒的这个人和第 5 秒的那个人是同一个人。没有它,你就没法计数,也没法测运动。
- Supervision -> 「积木箱」。一个现成模块库:画框、加计数线、定义区域、统计穿越次数。它把「模型看到了物体」变成「程序统计进出」。
- Roboflow -> 「几乎无代码的平台」。在浏览器里,你用鼠标标注数据,点几下就能训练模型,然后得到现成 API。而且 Roboflow Universe 里有成千上万个已经训练好的模型 -> 很多时候你根本不用训练,直接拿一个现成的就行。
- Google Colab -> 「浏览器里的电脑」。一个免费环境,代码跑在 Google 的服务器上。你不需要强力电脑,也不用安装任何东西:打开页面、粘贴代码、点按钮。
- AI 助手(Claude、ChatGPT、Gemini)->「你的程序员」。它会为你的任务写代码、改代码、修错误。如果你想做一个真正的应用,还有 Cursor -> 这是一个编辑器,AI 几乎可以自己写完整个代码。
它们怎么配合(流水线):
视频 → YOLO 找到物体 → ByteTrack 给物体编号 → Supervision 按线/区域统计 → 你得到结果(标注后的视频 + 数字)。这一切都跑在 Colab 里,代码由 AI 来写和修。如果你需要识别非标准物体,就在 Roboflow 里训练一个模型。
第 3 部分。如何跟 AI 协作 -> 你的主要技能
在这套流程里,你真正的技能不是 Python -> 而是 清楚地向 AI 说明任务,并把各个模块拼起来。这就像跟一个很能干的助手共事:任务说得越清楚,结果越好。
黄金规则: Colab 抛出的任何错误,你都 完整复制,交给 AI -> 它会针对当前版本的库来修代码。版本会变,代码有时会坏 -> 这很正常,AI 就是用来处理这个的。永远不要自己坐在那里死磕错误。
覆盖 90% 任务的 prompt 模板:
为自己改脚本:「这是一个使用 supervision 库、可以运行的 Python 脚本:[粘贴代码]。我不是程序员。请把它改成只统计人,不统计所有物体。返回完整代码。」
修错误:「我在 Google Colab 里运行了这段代码:[粘贴代码],得到这个错误:[粘贴完整错误文本]。请针对当前版本的库修好代码,并返回完整的修正版。」
理解代码在做什么:「用通俗的话解释这个脚本在做什么,以及我会看到什么输出,不要用行话。」
针对具体视频调参数:「帮我为一个宽 1280、高 720 的视频设置计数线坐标。计数线应该水平穿过画面中心。」
加新功能:「基于这个脚本,增加按类型分别计数:经过了多少辆小汽车、多少辆卡车。返回完整代码。」
写文本(简历、README、客户方案):「为我的 GitHub 写一段简短的英文访客计数项目介绍:问题是什么、解决方案是什么、用了哪些技术、怎么运行。」
新手跟 AI 协作时常犯的错误:
- 只给 AI 一小段代码,而不是完整代码 -> 它只能盲修。给它 整个 脚本。
- 只写「跑不起来」,不粘错误文本。永远粘贴 完整错误。
- 自己随手乱改代码。不要这样 -> 让 AI 做修改,并返回 完整可用 的版本。
最重要的是 -> 永远检查结果。 AI 可能很自信地写出能运行、但数错东西的代码。打开输出视频,用眼睛确认框是不是框在正确物体上,数字看起来是否合理。这是你的责任,不是 AI 的责任。
第 4 部分。在 Google Colab 跑起第一段代码 -> 分步指南

这对新手来说是「最吓人」的部分,但实际上只要 5 分钟。弄懂一次就行。
- 打开 colab.research.google.com(用 Google 账号登录)→ 点击 New notebook。
- 你会看到一个空框 -> 那是一个 cell。代码就放在那里。cell 左边有 ▶ 按钮(运行)。
- 把 Script 0(安装库)粘到第一个 cell 里,然后点 ▶。等 20–60 秒 -> 会有很多文本滚出来,这是正常的。
- 拿一个测试视频。 最简单的方式是用内置样例。新建一个 cell(点「+ Code」按钮),运行:
from supervision.assets import download_assets, VideoAssets
path = download_assets(VideoAssets.PEOPLE_WALKING)
print("Video downloaded:", path) # this is the file people-walking.mp4
或者上传你自己的视频:
from google.colab import files
uploaded = files.upload() # pick a file; remember its name and put it in the script instead of input.mp4
- 把你需要的脚本(比如 Script 3)粘到新的 cell 里。必要时改好输入文件名。点 ▶。
- 把结果下载到你的电脑:
from google.colab import files
files.download("output_count.mp4")
如果出了问题:
- 「No such file」/ file not found -> 脚本里的视频名和真实文件名不一致。检查文件名。
- 很慢、很卡 -> 打开免费 GPU:菜单 Runtime → Change runtime type → GPU。
- 任何红色错误 -> 完整复制,交给 AI(黄金规则)。
第 5 部分。现成脚本包
你不需要逐行理解这些脚本。先跑起来;如果有错误,就交给 AI。每个脚本都附有通俗解释。

Script 0 -> 安装(永远先跑这个)
!pip install ultralytics supervision -q
它做什么:安装「眼睛」(YOLO)和「积木箱」(Supervision)。每个 session 做一次。
Script 1 -> 在视频里找出并标注物体
它做什么:给所有物体画框并加标签。这是最基础的检查,用来确认一切能正常工作。
from ultralytics import YOLO
import supervision as sv
model = YOLO("yolov8n.pt") # the "eye" model, downloads automatically
box_annotator = sv.BoxAnnotator()
label_annotator = sv.LabelAnnotator()
def callback(frame, index):
results = model(frame)[0]
detections = sv.Detections.from_ultralytics(results)
labels = [f"{results.names[c]} {conf:.2f}"
for c, conf in zip(detections.class_id, detections.confidence)]
out = box_annotator.annotate(frame.copy(), detections=detections)
out = label_annotator.annotate(out, detections=detections, labels=labels)
return out
sv.process_video(source_path="input.mp4", target_path="output_detect.mp4", callback=callback)
print("Done: output_detect.mp4")
Script 2 -> 带编号(ID)的追踪
它做什么:给每个物体分配一个持续编号,并在物体还在画面里时一直保持这个编号。这是计数和运动分析的基础。
from ultralytics import YOLO
import supervision as sv
model = YOLO("yolov8n.pt")
tracker = sv.ByteTrack()
box_annotator = sv.BoxAnnotator()
label_annotator = sv.LabelAnnotator()
def callback(frame, index):
results = model(frame)[0]
detections = sv.Detections.from_ultralytics(results)
detections = tracker.update_with_detections(detections)
labels = [f"#{tid}" for tid in detections.tracker_id]
out = box_annotator.annotate(frame.copy(), detections=detections)
out = label_annotator.annotate(out, detections=detections, labels=labels)
return out
sv.process_video(source_path="input.mp4", target_path="output_track.mp4", callback=callback)
print("Done: output_track.mp4")
Script 3 -> 统计穿线次数(最主要、最商业化的那个)
它做什么:统计有多少物体从两个方向穿过一条虚拟线。这正是「进来了多少访客」或「经过了多少辆车」。
from ultralytics import YOLO
import supervision as sv
model = YOLO("yolov8n.pt")
tracker = sv.ByteTrack()
# Counting line: tune the coordinates (x, y in pixels) to your video.
line_zone = sv.LineZone(start=sv.Point(x=0, y=400), end=sv.Point(x=1280, y=400))
box_annotator = sv.BoxAnnotator()
label_annotator = sv.LabelAnnotator()
line_annotator = sv.LineZoneAnnotator()
def callback(frame, index):
results = model(frame)[0]
detections = sv.Detections.from_ultralytics(results)
# TO COUNT ONLY PEOPLE — remove the # on the line below (0 = person):
# detections = detections[detections.class_id == 0]
detections = tracker.update_with_detections(detections)
line_zone.trigger(detections)
labels = [f"#{tid}" for tid in detections.tracker_id]
out = box_annotator.annotate(frame.copy(), detections=detections)
out = label_annotator.annotate(out, detections=detections, labels=labels)
out = line_annotator.annotate(out, line_counter=line_zone)
return out
sv.process_video(source_path="input.mp4", target_path="output_count.mp4", callback=callback)
print(f"In: {line_zone.in_count} | Out: {line_zone.out_count}")
把计数结果保存到文件(可以交给客户)
在视频处理完成后,把这段加到最后:
with open("counts.txt", "w") as f:
f.write(f"In: {line_zone.in_count}\n")
f.write(f"Out: {line_zone.out_count}\n")
print("Numbers saved to counts.txt")
更难的东西 -> 交给 AI(不要自己写)
- 车速估算: 「基于 YOLO 和 supervision 库,写一个用于 Google Colab 的脚本,用行车记录仪/道路摄像头视频估算汽车速度。请用通俗的话详细解释,如何为我的画面设置透视。我不是程序员,请给我完整、现成的代码。」
- 区域内计数(不是按线计数) -> 比如等候区里有多少人: 「重写脚本,让它统计视频里一个矩形区域内的人数(使用 supervision 的 PolygonZone)。给出完整代码,并解释如何设置区域坐标。」
- 自定义物体(产品、缺陷、标准模型里没有的动物):在浏览器里用 Roboflow 标注数据集,在那里训练,拿到你的模型,然后让 AI 把它接入 Script 3。
第 6 部分。作品集 -> 三个能卖钱的项目
作品集比学位更重要:在国际市场上,人们看的是 你展示出来的结果,不是证书。你需要 3 个针对真实细分场景的短 demo。
去哪里找免费视频做 demo(不用担心版权):
- Supervision 内置样例(见第 4 部分)-> 最快的起点。
- Pexels 和 Pixabay -> 免费素材视频,有人、街道、汽车,并且授权可用。
三个项目:
- 商店访客计数。 用 Script 3,加上只统计人的过滤器,把线放在入口处。你展示:带框和计数器的视频 + 最终数字。卖给谁:零售店、咖啡馆、商场。
- 车辆计数和追踪。 在道路/停车场录像上跑 Script 3。卖给谁:停车场运营商、道路服务方、交通分析公司。
- 用 Roboflow 做自定义物体。 你标注一种非标准物体(比如生产线上的瓶子,或某类缺陷),然后统计它。这能证明你可以处理客户自己的数据。卖给谁:制造业、仓库、农业。

如何打包每个项目:
- 录一段结果演示视频(10–30 秒)。录屏播放输出视频 -> 任何录屏软件都行,或者直接把短片上传到 YouTube,设为「不公开」。
- 放到 GitHub 上(一个免费的代码和项目网站)。让 AI 写文件和说明文字(README): 「用英文为一个视频访客计数项目写 README。分成:问题、解决方案做什么、用了哪些技术(YOLO、ByteTrack、Supervision)、如何在 Google Colab 运行。简短清楚。」
- 可选 -> 在线 demo。 你可以免费部署到 Hugging Face Spaces(一个让你的 demo 在线运行、别人点链接就能打开的平台),或者使用 Roboflow 的现成 API。这会大幅提高客户信任。具体怎么做 -> 问 AI。
第 7 部分。去哪里找客户,以及该收多少钱
美国/欧洲客户按美元付费。刚开始最主要的平台是 Upwork。
第 1 步。你的 Upwork 个人资料

标题应该是 一个很窄的专长,而不是泛泛的「AI developer」。例子(你可以直接用):
Computer Vision Engineer -> Object Detection, Tracking & People/Vehicle Counting
「Overview」文本 -> 英文示例:
I build computer vision systems that detect, track, and count objects in video -> people counting for retail, vehicle counting for traffic and parking, and custom object detection for manufacturing and inventory.Stack: YOLO, ByteTrack, Supervision, Roboflow, Python. I deliver working solutions with annotated output video and exportable counts (CSV/report).See my demos below. Tell me your use case and I'll show you exactly what's possible.
在个人资料的作品集里 -> 放你的三个 demo,带视频和 GitHub 链接。
第 2 步。你的第一批评价
起步阶段,这件事决定一切。前 3–5 个活可以略低于市场价 接下来(比如 $30–45/hr,而不是 $60+),用来快速拿评价和评分。然后马上涨价 -> 有了好评价还停在低价上,就是把钱留在桌上。
第 3 步。回应一个工作(proposal)
不要写一大堵文字。结构是:「我理解任务 → 我做过这个 → 我会怎么做、多少钱做」。英文示例:
Hi! You need to count [people/vehicles] in your video footage -> I've built exactly this. Here's a 20-second demo of my counting system: [link].For your project I'll: detect and track the objects, set up a counting line/zone, and give you the annotated video plus the final counts in a report.I can deliver a first working version in [3–5] days. Happy to do a quick test on a short clip of your footage first, free of charge.
用客户的一小段素材做免费测试,能消掉一半疑虑,通常也能促成成交。
第 4 步。先问客户什么(避免做错)
- 我们到底要统计/检测什么(人、车、某个特定产品)?
- 视频来自哪里:现成文件、摄像头、在线流(RTSP)?
- 需要什么输出:标注后的视频、表格里的数字、实时仪表板、告警?
- 什么样的准确率算够用,截止日期是什么?
- 预算是多少?
第 5 步。价格和费用
- 时薪: 起步 $30–45(为了拿评价)→ 然后自信地向市场价靠近:junior $50–80,middle $80–120,senior $120–200+。ML 自由职业的中位费率约为 $100/hr。
- 按项目(固定价): 一个简单的交钥匙计数系统,起步基准是 $300–1500;严肃系统从 $5k 起,而且可以高得多(市场上项目能到 $250k+)。
- Upwork 费用 -> 0–15% 不等,通常约 10%($50 的报价,你到手约 $45)。把这部分算进你的价格里。
第 6 步。往哪里发展
- Toptal -> 一个有 top-3% 筛选的平台,费率更高,客户也更扎实。等你已经有作品集和评价,再去那里。
- Fiverr -> 你可以设置一个「产品化服务」(比如「我会在你的视频上搭好访客计数,收费 $X」),更被动地接单。
第 8 部分。你的前 90 天计划
| 时期 | 你做什么 | 结果 |
|---|---|---|
| 第 1 周 | 搞懂 Colab,在测试视频上跑 Scripts 1–3 | 代码真的能在你手里跑起来 |
| 第 2–3 周 | 用你自己的视频做 3 个细分场景 demo,并录成短片 | demo 准备好了 |
| 第 4 周 | GitHub + 英文包装(文本由 AI 写) | 作品集上线 |
| 第 5 周 | Upwork 个人资料,第一批 proposal | 第一批 proposal 发出 |
| 第 6–10 周 | 主动投 proposal(每周 10–20 个),给客户做免费测试 | 拿到第一个活和评价 |
| 第 11–13 周 | 交付项目,收集评价,涨价 | 第一笔收入,费率提高 |
如果第一个活没有马上来,不要灰心 -> 刚开始这很正常;这条路通常需要 1–3 个月的持续投入。
第 9 部分。收入基准(美元,2026)
| 渠道 | Junior | Middle | Senior |
|---|---|---|---|
| 自由职业($/hr) | $50–80 | $80–120 | $120–200+ |
| 交钥匙项目 | 从 ~$10k 起 | — | 最高 $250k+ |
| 美国全职岗位($/yr) | ~$102k | ~$130–165k | $200k–266k+ |
计算机视觉市场正在增长:2024 年约 220 亿美元 → 预测到 2033 年约 1110 亿美元。需求在你这边。
第 10 部分。常见问题(FAQ)
我需要一台强力电脑吗? 不需要。Google Colab 让你免费使用云端带 GPU 的强力服务器。哪怕你只有一台性能很弱的笔记本,甚至平板,也可以工作。
我需要付钱吗? 基本上都免费:Colab(免费层)、YOLO/Supervision(开源)、Roboflow(免费计划)、GitHub。只有当项目变大时,你才开始付费(付费 Colab/云服务)。
这合法吗? 工具本身 -> 合法,它们是开放、合法的。但只要你处理真实摄像头和真实的人,就会涉及隐私和数据法律。不要未经许可发布别人的视频,并且要跟客户确认他们有权使用这些数据。
如果客户的任务和这些脚本不一样怎么办? 这正是 AI 的用处:把任务拆成几部分,然后向它求助。如果任务真的超出你的能力范围,诚实拒绝比拖到错过截止日期更好。
第一笔钱多久能来? 现实一点说 -> 积极推进的话,从几周到几个月不等。这不是一个「按下就来钱」的按钮,而是一项你需要卖出去的技能。
我需要数学和理论吗? 对这条 AI 辅助路径来说 -> 不需要。理解基础知识以后会有帮助,尤其是当你想接复杂项目,或者进入全职岗位时。
它能实时运行 / 接实时摄像头吗? 免费 Colab 足够做 demo 和处理文件。要处理在线流(RTSP)和实时画面,就需要更多资源 -> AI 会告诉你怎么搭。
第 11 部分。不要做什么
- 不要在还不能「交付结果」的时候就去市场上接活。「它在我机器上跑起来了」还不够 -> 客户需要明确成果(视频 + 数字 + 简短报告)。
- 不要一比一复制纯教程。 你需要用自己的视频、针对具体细分场景做 demo。
- 不要卡在低费率上。 拿到第一批评价后就涨价。
- 不要盲信 AI 写的代码。 永远打开结果,用眼睛检查它是不是真的数对了。
- 不要把自己摊薄在泛泛的「AI」上。 窄专长(计数/追踪/视频分析)更好卖,也更容易让客户理解。
第 12 部分。术语表
- Model -> 训练过的程序,可以识别某种东西(比如 YOLO 识别物体)。
- Dataset -> 一组图像/视频,模型从里面学习。
- Labeling / annotation -> 你用鼠标在图像里框出需要的物体,让模型知道要找什么(在 Roboflow 里完成)。
- Bounding box -> 检测到的物体周围那个矩形框。
- Class -> 物体类别:「person」「car」「bottle」。
- Confidence -> 模型对一次检测有多确定(从 0 到 1)。
- Inference -> 模型运行并识别出东西的那个过程(相对于训练而言)。
- Training -> 模型针对你的任务,从数据集里学习的过程。
- Tracking / ID -> 跨帧跟踪同一个物体,并给它一个持续编号。
- API -> 一种「通过互联网」调用模型的方式:发一张图,拿到结果,不需要你自己写模型代码。
- FPS -> 每秒帧数;越高,视频处理越接近「实时」。
- RTSP -> 监控摄像头实时流的格式。
- GPU -> 显卡里的强力处理器;它可以加速模型(在 Colab 里,云端免费提供)。