密里根油滴实验系统 – Windows 11 安装部署指南
本文最后更新于181 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com

版本: v3.0 适用系统: Windows 11 (64位) 更新日期: 2025年11月 作者: TC


📋 目录


🖥️ 系统要求

硬件要求

  • 处理器: Intel Core i5 或更高 (推荐 i7/i9)
  • 内存: 8GB RAM 以上 (推荐 16GB)
  • 显卡: 支持 CUDA 的 NVIDIA 显卡 (可选,用于 GPU 加速)
  • 硬盘: 至少 10GB 可用空间
  • 接口: USB 3.0 接口 (用于工业相机连接)

软件要求

  • 操作系统: Windows 11 (64位)
  • 权限: 管理员权限 (安装阶段需要)
  • 网络: 互联网连接 (用于下载依赖)

外设要求

  • 工业相机: 海康威视 MVS 系列工业相机 (可选)
  • 串口设备: 用于定时器控制 (可选)

📦 准备工作

下载必需文件

  1. Anaconda 安装包
  2. 项目压缩包
    • 包含本项目所有必需文件 (见后续打包清单)
    • 解压到任意目录 (建议: E:\Program Files\youdi)
  3. 海康威视 MVS SDK (如使用工业相机)
  4. OpenH264 库 (已包含在项目压缩包中)

🚀 安装步骤

1. 安装 Anaconda

1.1 运行安装程序

  1. 双击 Anaconda3-2024.02-1-Windows-x86_64.exe
  2. 选择 Just Me (recommended) (仅为当前用户安装)
  3. 安装路径建议: C:\ProgramData\anaconda3C:\Users\<用户名>\anaconda3

1.2 重要配置选项

  • Add Anaconda3 to my PATH environment variable (勾选此项,方便命令行调用)
  • Register Anaconda3 as my default Python 3.x (设为默认 Python)

1.3 验证安装

打开 命令提示符 (CMD)PowerShell,输入:

conda --version
python --version

正常输出版本号即表示安装成功。

示例输出:


conda 24.1.2
Python 3.11.7

2. 创建 Python 环境

为避免依赖冲突,建议为项目创建独立的 conda 环境。

2.1 创建环境

打开 Anaconda Prompt命令提示符,执行:


conda create -n millikan python=3.11 -y

参数说明:

  • -n millikan: 环境名称为 millikan
  • python=3.11: 使用 Python 3.11 版本
  • -y: 自动确认所有提示

2.2 激活环境


conda activate millikan

激活后,命令行前缀会显示 (millikan),表示进入该环境。


3. 安装核心依赖库

3.1 安装 PyTorch (支持 CUDA)

如果有 NVIDIA 显卡 (推荐):


conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia -y

如果仅使用 CPU:


conda install pytorch torchvision torchaudio cpuonly -c pytorch -y

3.2 安装 YOLOv8 (Ultralytics)


pip install ultralytics

3.3 安装 OpenCV


pip install opencv-python opencv-contrib-python

3.4 安装数据处理库


pip install pandas numpy scipy matplotlib

3.5 安装 Web 框架 NiceGUI


pip install nicegui

3.6 安装网络请求库


pip install httpx

3.7 安装串口通信库


pip install pyserial

3.8 一键安装命令 (推荐)

为方便安装,可将以下命令保存为 install_dependencies.bat 批处理文件:


@echo off
echo 正在安装密里根实验系统依赖...
conda activate millikan
pip install ultralytics opencv-python opencv-contrib-python pandas numpy scipy matplotlib nicegui httpx pyserial
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia -y
echo 依赖安装完成!
pause

双击运行即可完成所有依赖安装。


4. 配置 OpenH264 库

OpenH264 是视频编码库,用于支持 H.264 格式视频的录制和播放。

4.1 放置 DLL 文件

openh264-2.5.1-win64.dll 复制到项目根目录:


E:\Program Files\youdi\openh264-2.5.1-win64.dll

4.2 添加环境变量 (可选)

  1. 右键 此电脑属性高级系统设置环境变量
  2. 系统变量 中找到 Path,点击 编辑
  3. 添加新条目: E:\Program Files\youdi
  4. 点击 确定 保存

注意: 项目启动脚本已自动处理该路径,手动配置环境变量仅作为备用方案。


5. 安装海康威视 MVS SDK

如果不使用工业相机,可跳过此步骤。

5.1 运行 SDK 安装程序

  1. 双击 MVS-V4.x.x_x64.exe (版本号可能不同)
  2. 选择安装路径,建议: D:\MVS
  3. 勾选 Python 开发包 选项
  4. 完成安装

5.2 配置 SDK 路径

项目代码中使用的 SDK 导入路径为:


D:/MVS/Development/Samples/Python/MvImport

如安装到其他路径,需修改以下文件:

  • Millikan-Procedure.py (主程序)
  • testmvs.py (相机测试脚本)

搜索 MvImport 并替换为实际路径。

5.3 验证 SDK 安装

在 Python 环境中测试:


import sys
sys.path.append('D:/MVS/Development/Samples/Python/MvImport')
from MvCameraControl_class import MvCamera
print("MVS SDK 导入成功!")

6. 部署项目文件

6.1 解压项目文件

将项目压缩包解压到目标目录,推荐路径:


E:\Program Files\youdi\

6.2 验证文件结构

确保以下核心文件存在:


E:\Program Files\youdi\
├── Millikan-Procedure.py         (主程序)
├── 启动密里根实验.bat             (启动脚本)
├── best.pt                       (YOLO 模型文件)
├── openh264-2.5.1-win64.dll       (视频编码库)
├── video_config.json             (路径配置)
├── MvCameraControl_class.py       (相机控制类)
├── MvErrorDefine_const.py         (错误定义)
├── PixelType_header.py           (像素类型)
├── CameraParams_header.py         (相机参数)
├── MathJAX.py                     (数学公式渲染)
├── binarytizevideo.py             (视频二值化)
├── testmvs.py                     (相机测试)
└── 定时器/                       (定时器控制模块)

6.3 创建必要目录

运行以下命令创建数据存储目录:


cd /d "E:\Program Files\youdi"
mkdir video\MP4_video
mkdir binarization
mkdir modeltest
mkdir results
mkdir camera_recordings

或使用 PowerShell:


cd "E:\Program Files\youdi"
New-Item -ItemType Directory -Path video\MP4_video, binarization, modeltest, results, camera_recordings -Force

📂 项目文件结构


E:\Program Files\youdi\

├── Millikan-Procedure.py         # 主程序 (核心)
├── 启动密里根实验.bat             # 启动脚本 (推荐使用)
├── best.pt                       # YOLOv8 训练模型 (5.3GB)
├── openh264-2.5.1-win64.dll       # H.264 视频编码库
├── video_config.json             # 视频路径配置文件

├── MvCameraControl_class.py       # 相机控制类 (海康威视 SDK 封装)
├── MvErrorDefine_const.py         # 错误码定义
├── PixelType_header.py           # 像素格式定义
├── CameraParams_header.py         # 相机参数定义
├── MathJAX.py                     # 数学公式渲染支持

├── testmvs.py                     # 相机功能测试脚本
├── binarytizevideo.py             # 视频二值化处理
├── transform(批量).py             # 批量格式转换工具
├── train_yolo_large.py           # YOLO 模型训练脚本

├── video/                         # 原始视频存储目录
│   └── MP4_video/                 # MP4 格式视频
├── binarization/                 # 二值化视频输出目录
├── modeltest/                     # 标记视频输出目录
├── results/                       # 分析结果输出目录
│   ├── camera_config.json         # 相机配置文件
│   └── 3303_plot/                 # 实验数据图表
├── camera_recordings/             # 相机录制视频目录

├── 定时器/                       # 定时器控制模块
│   ├── serial_timer_gui.py       # 串口定时器 GUI
│   ├── quick_start.bat           # 快速启动脚本
│   ├── 使用说明.txt               # 使用说明
│   └── 打包说明.txt               # 打包说明

└── ud/                           # Conda 虚拟环境 (可选,用于离线部署)
  ├── python.exe
  ├── Lib/
  ├── Scripts/
  └── ...

▶️ 启动与运行

方法一: 使用启动脚本 (推荐)

  1. 找到项目根目录下的 启动密里根实验.bat
  2. 双击运行
  3. 脚本会自动:
    • 检测 conda 环境
    • 设置环境变量
    • 启动主程序

脚本内容说明:

@echo off
chcp 65001 >nul
title 密里根油滴实验程序 (Conda直接启动)

REM 设置conda环境路径
set CONDA_ENV=E:\Program Files\youdi\ud
set CONDA_PYTHON=%CONDA_ENV%\python.exe

REM 设置环境变量
set KMP_DUPLICATE_LIB_OK=True
set OPENCV_VIDEOIO_PRIORITY=FFMPEG
set PATH=E:\Program Files\youdi;%PATH%

REM 切换到项目目录
cd /d "E:\Program Files\youdi"

REM 运行主程序
"%CONDA_PYTHON%" Millikan-Procedure.py

注意: 如果项目路径不是 E:\Program Files\youdi,需修改批处理文件中的路径。

方法二: 手动启动

  1. 打开 Anaconda Prompt
  2. 激活环境:
    conda activate millikan
  3. 切换到项目目录:
    cd /d “E:\Program Files\youdi”
  4. 运行主程序:
    python Millikan-Procedure.py

方法三: 使用系统 Python (如已配置 ud 环境)


cd /d "E:\Program Files\youdi"
ud\python.exe Millikan-Procedure.py

🌐 访问 Web 界面

程序启动后,会自动:

  1. 启动本地 Web 服务器
  2. 查找可用端口 (默认 8080-8090)
  3. 打印访问地址,例如:
    NiceGUI ready to go on http://localhost:8081

在浏览器中访问显示的地址即可使用系统。

推荐浏览器:

  • Google Chrome (推荐)
  • Microsoft Edge
  • Firefox

❓ 常见问题排查

问题 1: 启动脚本提示”未找到 conda 环境的 Python”

原因: 批处理文件中的路径配置不正确。

解决方案:

  1. 打开 启动密里根实验.bat
  2. 修改第 8 行为实际环境路径:
    set CONDA_ENV=<你的实际路径>\youdi\ud
  3. 或使用 conda 环境:
    set CONDA_ENV=C:\Users\<用户名>\anaconda3\envs\millikan

问题 2: 提示 “ModuleNotFoundError: No module named ‘ultralytics'”

原因: 依赖库未安装或环境未激活。

解决方案:


conda activate millikan
pip install ultralytics

问题 3: 相机无法连接或提示 “MVS SDK 不可用”

原因:

  • 未安装 MVS SDK
  • SDK 路径配置错误
  • 相机未正确连接

解决方案:

  1. 确认已安装 MVS SDK 到 D:\MVS
  2. 检查 USB 连接是否正常
  3. 在设备管理器中查看相机是否识别
  4. 运行测试脚本:
    python testmvs.py

问题 4: 串口设备无法访问 (PermissionError)

原因: 串口被其他程序占用。

解决方案:

  1. 关闭所有可能占用串口的程序 (如串口调试助手)
  2. 在设备管理器中检查串口是否存在
  3. 更换 USB 端口重新连接
  4. 以管理员权限运行程序

问题 5: 视频编码失败 “H.264 编码器不可用”

原因: OpenH264 库未正确加载。

解决方案:

  1. 确认 openh264-2.5.1-win64.dll 在项目根目录
  2. 检查环境变量 PATH 是否包含项目路径
  3. 重启程序

问题 6: CUDA 不可用,模型运行速度慢

原因: PyTorch 未检测到 NVIDIA 显卡。

检测方法:


import torch
print(torch.cuda.is_available())  # 应输出 True

解决方案:

  1. 安装 NVIDIA 显卡驱动 (版本 ≥ 525.60.11)
  2. 重新安装支持 CUDA 的 PyTorch:
    conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia -y

问题 7: 程序运行时出现 “KMP_DUPLICATE_LIB_OK” 警告

原因: Intel MKL 库冲突。

解决方案:启动脚本已自动设置该环境变量,无需额外处理。如手动启动,执行:


set KMP_DUPLICATE_LIB_OK=True

问题 8: Web 界面无法访问

原因: 端口被占用或防火墙拦截。

解决方案:

  1. 检查防火墙设置,允许 Python 访问网络
  2. 尝试更换端口 (修改代码中的 ui.run(port=8080))
  3. 使用 netstat -ano | findstr :8080 检查端口占用

📚 附录

A. 环境导出与恢复

导出当前环境 (便于在其他设备部署):


conda activate millikan
conda env export > environment.yml

在新设备上恢复环境:


conda env create -f environment.yml

B. 离线安装方案

1. 打包 conda 环境

在联网设备上:


conda activate millikan
conda pack -n millikan -o millikan_env.tar.gz

2. 在目标设备上解压


mkdir E:\Program Files\youdi\ud
cd E:\Program Files\youdi\ud
tar -xzf millikan_env.tar.gz

3. 激活环境


E:\Program Files\youdi\ud\Scripts\activate.bat

C. 依赖库版本参考

以下是经过测试的稳定版本组合:

库名称版本说明
Python3.11.7基础环境
PyTorch2.1.2深度学习框架
CUDA12.1GPU 加速 (可选)
Ultralytics8.2.0YOLOv8 框架
OpenCV4.10.0图像处理
NiceGUI1.4.10Web 界面
NumPy1.26.4数值计算
Pandas2.2.1数据处理
Matplotlib3.8.3绘图
SciPy1.12.0科学计算
httpx0.27.0HTTP 客户端
pyserial3.5串口通信

D. 性能优化建议

  1. 使用 SSD 硬盘 提升视频读写速度
  2. 启用 GPU 加速 YOLO 推理速度提升 10-50 倍
  3. 调整批处理大小 根据显存大小调整 batch_size
  4. 关闭不必要的后台程序 减少 CPU/内存占用

E. 项目打包文件清单

建议打包以下文件到 millikan_experiment_v3.0.zip:

核心文件 (必须):

Millikan-Procedure.py
启动密里根实验.bat
best.pt
openh264-2.5.1-win64.dll
video_config.json
MvCameraControl_class.py
MvErrorDefine_const.py
PixelType_header.py
CameraParams_header.py
MathJAX.py
binarytizevideo.py
testmvs.py

辅助文件 (推荐):

定时器/serial_timer_gui.py
定时器/quick_start.bat
定时器/使用说明.txt
transform(批量).py
train_yolo_large.py
install_guide.md (本文档)

配置文件 (可选):

results/camera_config.json

不建议打包:

  • video/ (视频文件过大)
  • binarization/ (处理结果)
  • modeltest/ (处理结果)
  • ud/ (环境文件,建议用户自行创建)
  • 各种备份文件 (*副本*.py, *backup*.py)

F. 技术支持

问题反馈:

  • 项目仓库: (如有 GitHub 链接)
  • 邮箱: (如有技术支持邮箱)

参考文档:


📝 更新日志

v3.0 (2025-11-11)

  • 集成工业相机实时预览功能
  • 添加 AI 智能问答助手 (DeepSeek API)
  • 优化视频编码 (H.264 支持)
  • 改进串口定时器控制
  • 完善错误处理和日志记录

v2.0 (2024-11-10)

  • 引入 YOLOv8 目标检测
  • 实现油滴轨迹跟踪算法
  • 添加电荷量自动计算
  • Web 界面重构 (NiceGUI)

v1.0 (初始版本)

  • 基础视频处理功能
  • 手动标记和分析

⚖️ 许可证

本项目仅用于学术研究和教学用途,未经授权不得用于商业目的。


祝您使用愉快!如有问题,请参考常见问题排查部分或联系小仇获得技术援助。 🔬✨

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇