图像标注工具labelme在WIndows系统上的安装和使用

1 前言

labelme可对图像进行标注,包括多边形,矩形,线,点和图像级标注。
它是用Python编写的,并使用Qt作为其图形界面。

详细内容见:https://github.com/wkentaro/labelme

其实,我开始是在Ubuntu 14.04上安装的,但是导入图片后报以下错误,找不到解决办法,所以只好在Windows上安装了。遇到这个问题并且已经解决的朋友请不吝赐教。

Traceback (most recent call last):
File “/usr/local/lib/python2.7/dist-packages/labelme/app.py”, line 1030, in openFile
filename = str(filename)
UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 9-10: ordinal not in range(128)

2 在Windows上的安装

首先安装Anaconda,可以安装Python2.7版本或Python3.6版本。

下载连接为:https://www.anaconda.com/distribution/
安装教程为:https://docs.anaconda.com/anaconda/install/windows

安装成功后,打开Anaconda Prompt,然后依次输入以下命令。

# python2
conda create --name=labelme python=2.7
source activate labelme
# conda install -c conda-forge pyside2
conda install pyqt
pip install labelme
# if you'd like to use the latest version. run below:
# pip install git+https://github.com/wkentaro/labelme.git

# python3
conda create --name=labelme python=3.6
conda activate labelme
# conda install -c conda-forge pyside2
# conda install pyqt
pip install pyqt5  # pyqt5 can be installed via pip on python3
pip install labelme

# Pillow 5 causes dll load error on Windows.
# https://github.com/wkentaro/labelme/pull/174
conda install pillow=4.0.0

执行pip install labelme时,因为网络问题,可能会报以下错误。

Exception:
Traceback (most recent call last):
File “/usr/lib/python2.7/dist-packages/pip/basecommand.py”, line 122, in main
status = self.run(options, args)
File “/usr/lib/python2.7/dist-packages/pip/commands/install.py”, line 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File “/usr/lib/python2.7/dist-packages/pip/req.py”, line 1198, in prepare_files
do_download,
File “/usr/lib/python2.7/dist-packages/pip/req.py”, line 1376, in unpack_url
self.session,
File “/usr/lib/python2.7/dist-packages/pip/download.py”, line 572, in unpack_http_url
download_hash = _download_url(resp, link, temp_location)
File “/usr/lib/python2.7/dist-packages/pip/download.py”, line 433, in _download_url
for chunk in resp_read(4096):
File “/usr/lib/python2.7/dist-packages/pip/download.py”, line 421, in resp_read
chunk_size, decode_content=False):
File “/usr/share/python-wheels/urllib3-1.7.1-py2.py3-none-any.whl/urllib3/response.py”, line 225, in stream
data = self.read(amt=amt, decode_content=decode_content)
File “/usr/share/python-wheels/urllib3-1.7.1-py2.py3-none-any.whl/urllib3/response.py”, line 174, in read
data = self._fp.read(amt)
File “/usr/lib/python2.7/httplib.py”, line 602, in read
s = self.fp.read(amt)
File “/usr/lib/python2.7/socket.py”, line 380, in read
data = self._sock.recv(left)
File “/usr/lib/python2.7/ssl.py”, line 341, in recv
return self.read(buflen)
File “/usr/lib/python2.7/ssl.py”, line 260, in read
return self._sslobj.read(len)
SSLError: The read operation timed out

以上都成功后,在Anaconda Prompt中输入labelme,如果打开下图所示的界面,则表明安装成功。

有解决方案是将以上命令替换为pip --default-timeout=100 install labelme,但是对我无效,好吧,可能是我的网络太差了。最后迫不得用电脑连手机开的热点才成功,心疼我的流量啊!

3 标注图像

Labelme可对图像进行矩形和多边形的注释,保存的是json格式的文件。具体使用步骤就不在此赘述,因为很简单……

3.1 对图像进行矩形注释

3.2 对图像进行多边形注释

4 labelme与labelImg的比较

Lableme和LabelImg都是跨平台的标注工具,在Windows和Ubuntu都可以使用。

都可以对图像进行矩形注释,但是Lableme还可以对图像进行多边形注释,因此能完成可行驶区域、语义分割、实例分割等任务。

因此从功能上来说,Lableme更加全面。

5 总结

对深度学习而言,数据集非常重要,监督学习离不开对数据的标注,标注是一项非常繁琐的工作,因此一款简单易用,效率高的工具十分必要。

可能很多公司都有自己的标注工具,但很少公开,这可以理解。

对于开源工具的个人和公司,在这里由衷的表达敬意。

  • 11
    点赞
  • 88
    收藏
    觉得还不错? 一键收藏
  • 25
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值