新手入门3D视觉(一)WSL2+Ubuntu22.04+PCL环境配置
「零基础转行工业 3D 视觉」系列第一篇。本文记录我用 WorkBuddy 把第 1 周环境搭起来的完整过程3 个步骤手动敲的命令不超过 3 条。全程用到的 3 个脚本放在文末附件里可以直接下载复用。开始之前一条最重要的提醒不要装 VMware也不要装 VirtualBox。它们会和 WSL2 抢 CPU 的虚拟化层Hyper-V轻则 WSL2 启动报0x80370102重则蓝屏 / kernel panic —— 这也是我学习计划里明确写着「不用 VirtualBox」的原因。已经装了的建议先卸载再往下走。本文最终装出来的版本版本对不上会多踩很多坑先列清楚组件版本来源宿主系统Windows 11 23H2Build 22631—WSLWSL2wsl --update发行版Ubuntu 22.04.5 LTS (Jammy)微软商店PCL1.12.1Ubuntu 22.04 官方源OpenCV4.5.4同上Eigen3.4.0同上Ceres2.0.0同上Open3Dpip 最新版独立虚拟环境划重点Ubuntu 22.04 的 apt 源里 PCL 正好是1.12直接apt install libpcl-dev就行完全不用源码编译。第 1 步让 WorkBuddy 先检查 Windows 系统我没急着动手而是先把需求和学习计划发给 WorkBuddy让它先看看我这台机器能不能装、该怎么装。我发给它的话根据我的转行学习计划我需要在本周完成第 1 周环境搭建WSL2 安装 Ubuntu 22.04不用 VirtualBox避免 kernel panic安装 PCL 1.12、OpenCV 4.x、Eigen、Ceres、Open3D其中指导我进行 Ubuntu 的安装尽量安装在 D 盘我的文件夹的 softwares 中它查到的由此定的决策系统实际是Windows 11 23H2Build 22631但注册表ProductName显示 “Windows 10 Pro”以 Build 号为准。Win11 自带 WSLg图形界面直接可用不用额外装 X ServerC 盘 200 GB只剩 75 GBD 盘 753 GB 剩 222 GBUbuntu必须装 D 盘ext4.vhdx只增不减会一路把 C 盘吃干wsl.exe存在但没装任何发行版全新安装脚本可以直接跑第 2 步一键安装 WSL2 Ubuntu 22.04以管理员身份打开 PowerShell开始菜单搜 PowerShell → 右键 → 以管理员身份运行执行一条命令powershell-ExecutionPolicy Bypass-FileD:\Mengyuan\Softwares\scripts\01-install-wsl2-ubuntu2204.ps1脚本会依次做 5 件事可重复运行已完成的自动跳过步骤它自动做的【1/5】开启「适用于 Linux 的 Windows 子系统」「虚拟机平台」两个 Windows 功能并提示重启【2/5】重启后wsl --update升级内核默认版本设为 WSL2【3/5】安装 Ubuntu 22.04落到D:\Mengyuan\Softwares\WSL\Ubuntu-22.04【4/5】写C:\Users\你\.wslconfig限制内存/CPU防止后续编译时把 Windows 卡死【5/5】验证打印发行版列表确认ext4.vhdx真的在 D 盘全程只有一处需要你动手中途会弹出 Ubuntu 终端让你创建账号、输入密码。Enter new UNIX username: mengyuan # 全小写英文别用中文、别用大写 New password: ******** # 输入时屏幕不显示字符这是正常的 Retype new password: ********小插曲我输administrator结果首字母被提示符吃掉变成了dministrator。问了 WorkBuddy说这是终端交互的常见现象、功能完全不受影响继续用就行 —— 省了我一次重装。重点看三行* Ubuntu-22.04 Stopped 2 - VERSION 必须是 2 [√] 虚拟磁盘已落在 D 盘D:\Mengyuan\Softwares\WSL\Ubuntu-22.04\ext4.vhdx当前 1.35 GB会随使用增长 全部完成脚本里的一个关键设计它预设了两条安装路径。优先用wsl --install --location一步装到 D 盘如果当前 WSL 版本不支持--location自动降级为「装到 C 盘 → 导出 → 注销 → 导入到 D 盘」。我这台机器的 WSL 版本不支持--location于是它自己走了降级路径我全程无感。第 3 步一键安装 PCL / OpenCV / Eigen / Ceres / Open3D进入 Ubuntu任意终端输入wsl回车运行一条命令bash/mnt/d/Mengyuan/Softwares/scripts/02-setup-dev-env.sh脚本依次做 5 件事同样可重复运行步骤它自动做的【1/5】切换 apt 源到清华 TUNA 镜像自动备份原文件国内下载提速 10 倍以上【2/5】安装编译链 PCL 1.12 / OpenCV 4.5 / Eigen 3.4 / Ceres 2.0【3/5】Open3D 装进独立虚拟环境~/venvs/py3d不污染系统 Python【4/5】校验 WSLg 图形环境【5/5】打印版本核对表逐项对照学习计划下载量约 12 GB5~~15 分钟。装完的关键输出能看到这两行就说明 PCL 装上了Setting up libpcl-dev (1.12.1dfsg-3build1) ... Setting up libvtk9-dev (9.1.0really9.1.0dfsg2-3build1) ...Setting up是 apt 安装的最后一个阶段解包之后的配置它出现在所有依赖处理完之后 —— 看到它基本就是成功了。最后脚本还会打印一张版本核对表----------------------------------------------------------- PCL 1.12.1-1 计划要求 1.12 OpenCV 4.5.4dfsg 计划要求 4.x Eigen 3.4.0-4 Ceres 2.0.0dfsg1-5build1 CMake 3.22.1 GCC 11.4.0 Open3D 0.18.0 -----------------------------------------------------------为什么不用源码编译 PCLUbuntu 22.04 官方源里正好是 1.12直接 apt 装即可。源码编译要多花 1~2 小时还容易挂在 VTK / Qt 依赖上 —— 新手第一周纯属自找麻烦。附件3 个脚本在资源里对应直接拿去用哈附件文件用途怎么用01-install-wsl2-ubuntu2204.ps1Windows 侧一键装 WSL2 把 Ubuntu 22.04 装到 D 盘管理员 PowerShell 运行02-setup-dev-env.shUbuntu 侧一键装 PCL / OpenCV / Eigen / Ceres / Open3D在 Ubuntu 里执行run-stage-b-env.cmd双击启动器免敲命令直接跑上面那个.sh双击即可只有 2 个地方需要改成你自己的位置改成01-install-wsl2-ubuntu2204.ps1里的$InstallRoot你想装的目录run-stage-b-env.cmd里的脚本路径你的脚本实际位置跨平台存放行尾要注意不然会报$\r: command not found文件类型行尾 / 编码.ps1UTF-8 with BOM.shLF.cmdCRLF结尾WSL2 Ubuntu 22.04 装在 D 盘PCL 全套依赖就位啦下一篇PCL 核心算法手写VoxelGrid / SOR / RANSAC / ICP。本文首发于 CSDN是「零基础转行工业 3D 视觉」系列第一篇转载请注明出处。

相关新闻

深度学习损失函数选型实战:从MSE到Focal Loss的原理与踩坑

深度学习损失函数选型实战:从MSE到Focal Loss的原理与踩坑

损失函数这玩意儿,说起来是深度学习里最基础的组件之一,但恰恰是很多同学在实战里翻车最频繁的地方。我带项目的时候经常看到有人模型结构抄得挺像样,学习率调度也配了一堆,可训练出来的结果就是不对,Loss 曲线跟心电图…

2026/10/14 6:38:29 阅读更多 →
微信小程序聊天室:WebSocket实时通信与图片消息实现

微信小程序聊天室:WebSocket实时通信与图片消息实现

上个月接了个需求,要做微信小程序聊天室,支持文字消息和图片消息,图片要能直接发到聊天流里。团队里一位同事提议先上HTTP轮询,2秒拉一次,省事。我说这个方案在简单场景下能跑,但聊天室里撑不住多少用户。后…

2026/10/14 6:38:29 阅读更多 →
SQLite FTS5+BM25实现上下文感知搜索(context-mode)

SQLite FTS5+BM25实现上下文感知搜索(context-mode)

1. “context-mode”到底是什么?别被术语唬住,它本质是让工具真正“听懂你话”的底层机制 “context-mode”这个词最近在开发者社区、低代码平台和本地AI工具链里高频出现,但翻遍官方文档,几乎找不到一句清晰定义。我最初看到它时…

2026/10/14 6:38:29 阅读更多 →

最新新闻

MATLAB共享储能电站冷热电多微网双层优化配置模型详解

MATLAB共享储能电站冷热电多微网双层优化配置模型详解

先说一句啊,这篇不是那种把模型往纸上一放、公式一抄就完事的论文复现,而是基于“MATLAB共享储能电站服务冷热电多微网系统双层优化配置模型”这条线,把建模思路、求解路线、MATLAB实现细节和踩坑经验一次性捋清楚。如果你想做园区级综合能源…

2026/10/14 7:20:37 阅读更多 →
90天PMP通关攻略:专治拖延症的反人性备考技巧

90天PMP通关攻略:专治拖延症的反人性备考技巧

2026年6月PMP考试:一场与“拖延症”的终极对决!90天通关全攻略(内附反人性备考技巧)如果有人问我,PMP考试难在哪,我大概率会说:难在开始。2026年6月那场考试,我提前90天就买好了教材…

2026/10/14 7:20:37 阅读更多 →
电商数据获取技术解析与实战架构设计

电商数据获取技术解析与实战架构设计

1. 电商数据获取的核心价值与挑战在电商行业摸爬滚打这些年,我深刻体会到数据就是决策的氧气。记得2016年刚入行时,团队还在用Excel手动统计商品点击量,现在回头看简直像石器时代。如今一个中等规模的电商平台,日均产生的用户行为…

2026/10/14 7:20:37 阅读更多 →
豆瓣电影排行榜高级爬虫实战:从请求构造到数据存储的完整链路

豆瓣电影排行榜高级爬虫实战:从请求构造到数据存储的完整链路

很多人学网络爬虫时,第一个练手项目都会选豆瓣电影排行榜的数据抓取。理由很简单:页面结构清晰、数据规律、难度适中。但如果你以为requests拿到HTML、正则抠出几条电影名就算学会了爬虫,那离真正的高级数据抓取还差着十万八千里。我见过不少…

2026/10/14 7:20:37 阅读更多 →
做Temu多久能看到收益?回款周期与利润真相深度拆解

做Temu多久能看到收益?回款周期与利润真相深度拆解

做Temu多久能看到收益?这个问题几乎每个新入局的人都问过,但网上的答案特别极端:一边是晒后台截图说上架三天就出单的,一边是吐槽备货压了几万块却迟迟见不到钱的。我跟几个做全托管、半托管的朋友反复对过账,也盯着后…

2026/10/14 7:20:37 阅读更多 →
AI编程教程为何爆火2万Star:从零基础到生产落地的完整路径

AI编程教程为何爆火2万Star:从零基础到生产落地的完整路径

1. 这个“2万Star”到底意味着什么:从GitHub数字看AI编程教程的真实分量很多人看到标题里“2万Star”第一反应是:哇,火了。但作为在开发者教育领域摸爬滚打十多年的老手,我得先泼一盆冷静的水——Star数从来不是教学内容质量的直接…

2026/10/14 7:19:37 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →