roLabelImg 详细安装教程

roLabelImg 详细安装教程

📌 简介

roLabelImg 是一款基于 labelImg 重写的开源图形图像标注工具,专门用于标注旋转矩形框(Rotated Bounding Box),广泛应用于遥感图像目标检测(如 DOTA 数据集)等场景。


一、环境准备

1. 安装 Python

roLabelImg 需要 Python 3.x (推荐 3.6 ~ 3.8,兼容性最好)。

验证安装:

bash 复制代码
python --version
# 输出示例:Python 3.8.10

2.(推荐)创建虚拟环境

为避免依赖冲突,建议使用 Anacondavenv 创建独立环境:

方式一:Anaconda

bash 复制代码
conda create -n rolabel python=3.8 -y
conda activate rolabel

方式二:venv

bash 复制代码
python -m venv rolabel_env
# Windows 激活
rolabel_env\Scripts\activate
# Linux/macOS 激活
source rolabel_env/bin/activate

二、安装依赖库

在激活的虚拟环境中,安装以下依赖:

bash 复制代码
# 安装 PyQt5(GUI 框架)
pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple

# 安装 pyqt5-tools(包含 pyrcc5 资源编译工具)
pip install pyqt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simple

# 安装 lxml(XML 解析库)
pip install lxml -i https://pypi.tuna.tsinghua.edu.cn/simple

💡 使用清华镜像源 (-i https://pypi.tuna.tsinghua.edu.cn/simple) 可大幅加速下载。如果安装失败,可多尝试几次。


三、下载 roLabelImg 源码

方式一:Git 克隆(推荐)

bash 复制代码
git clone https://github.com/cgvict/roLabelImg.git
cd roLabelImg

方式二:下载 ZIP

  1. 访问 https://github.com/cgvict/roLabelImg
  2. 点击绿色 "Code" 按钮 → "Download ZIP"
  3. 解压到任意无中文、无空格 的路径下,例如 D:\tools\roLabelImg

四、编译资源文件

进入 roLabelImg 源码根目录(即包含 resources.qrc 文件的目录),执行:

bash 复制代码
cd roLabelImg   # 进入源码目录
pyrcc5 -o resources.py resources.qrc

这一步将 Qt 资源文件 resources.qrc 编译为 Python 文件 resources.py,是运行前的必要步骤。

⚠️ 如果提示 pyrcc5 不是内部命令

  • 说明 pyrcc5.exe 不在系统 PATH 中

  • 找到它的路径,通常在:

    • Anaconda 环境:anaconda3/envs/rolabel/Scripts/pyrcc5.exe
    • venv 环境:rolabel_env/Scripts/pyrcc5.exe
  • 将该路径添加到系统环境变量 PATH 中,或使用完整路径执行:

    bash 复制代码
    # 示例(Windows)
    D:\anaconda3\envs\rolabel\Scripts\pyrcc5.exe -o resources.py resources.qrc

五、启动 roLabelImg

在源码根目录下运行:

bash 复制代码
python roLabelImg.py

如果一切正常,将会弹出 roLabelImg 的图形界面窗口 🎉


六、常见问题及解决方案

❌ 问题 1:codecs 编码错误

运行时出现类似以下报错:

复制代码
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd5 in position 0

解决方法 :打开 roLabelImg.py,找到文件开头的编码声明,确保第一行或第二行为:

python 复制代码
# -*- coding: utf-8 -*-

同时检查文件路径中是否包含中文字符,如有请改为英文路径。

❌ 问题 2:ModuleNotFoundError: No module named 'resources'

原因:未执行第四步的资源编译。

解决方法

bash 复制代码
pyrcc5 -o resources.py resources.qrc

❌ 问题 3:PyQt5 版本不兼容

解决方法:尝试安装特定版本:

bash 复制代码
pip install PyQt5==5.15.4
pip install PyQt5-tools==5.15.4.3.2

❌ 问题 4:Linux 下缺少系统依赖

bash 复制代码
sudo apt-get install pyqt5-dev-tools
sudo apt-get install python3-lxml

七、基本使用指南

启动后,常用操作如下:

操作 快捷键 / 方法
打开图片 Ctrl + O
打开图片目录 Ctrl + U
保存标注 Ctrl + S
创建旋转框 Ctrl + R
删除当前框 Delete
下一张图片 D
上一张图片 A
缩放 Ctrl + + / Ctrl + -

标注流程:

  1. 点击 "Open Dir" 打开图片文件夹
  2. 点击 "Change Save Dir" 设置标注文件保存路径
  3. 确认保存格式为 VOC (XML)或 YOLO(TXT)
  4. Ctrl + R 绘制旋转矩形框
  5. 输入类别标签名称
  6. Ctrl + S 保存,按 D 切换到下一张

八、替代方案(免安装)

如果源码安装遇到困难,也可以考虑:

  1. 预编译安装包:B站/ CSDN 上有博主提供了 Windows 一键安装包(基于 PyInstaller 打包),双击即可使用,无需配置 Python 环境。

  2. labelImg2 :另一个支持旋转框标注的工具,操作方式类似:

    bash 复制代码
    pip install labelImg2

📝 总结 :核心安装流程就是 安装 Python → 安装依赖(PyQt5 + lxml)→ 下载源码 → 编译资源 → 运行,整个过程约 10 分钟。遇到问题时,优先检查 Python 版本兼容性和路径中是否有中文字符。

希望这份教程对你有帮助!如有其他问题,欢迎继续提问 😊

相关推荐
Setsuna_F_Seiei3 小时前
前端的 AI 学习之路 02 之 Provider 与 Structured Output - 规范化模型输入输出
人工智能·agent·ai编程
JavaPub-rodert3 小时前
王仕宇RAG 实战教程(二):从 0 搭建一个可运行的 RAG 知识库——Embedding、Qdrant 与问答实战
人工智能·embedding
Setsuna_F_Seiei3 小时前
前端的 AI 学习之路 01 之 Agent API 调用 - 和 Agent 的基础对话
前端·人工智能·ai编程
覆东流3 小时前
7.Java数组
java·开发语言·后端
码行山野赴时序归途3 小时前
三道经典数组题:从暴力到最优的算法思维
c语言·开发语言·数据结构·算法·leetcode
threerocks4 小时前
AI 原生软件开发生命周期手册 - 如何借助 AI,逐阶段改造软件开发生命周期
前端·javascript·后端
lzhdim4 小时前
提高 SQL 语句执行速度的方法
java·开发语言·数据库·sql·oracle
JavaPub-rodert4 小时前
王仕宇在 Go Context 如何解决协程泄漏与超时控制
开发语言·后端·golang·iphone·javapub·王仕宇
咔咔学姐kk4 小时前
小白程序员必收藏:轻松入门AI Agent开发,大厂校招新风口!
人工智能·深度学习·ai·程序员·大模型·就业·大模型学习
2601_967097224 小时前
园区巡检机器人推荐:4项评估维度与主流产品横评
大数据·人工智能·信息可视化