Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
不会修仙的道士
labelme
提交
01df3966
L
labelme
项目概览
不会修仙的道士
/
labelme
与 Fork 源项目一致
从无法访问的项目Fork
通知
4
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
L
labelme
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
01df3966
编写于
5月 09, 2016
作者:
K
Kentaro Wada
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Prepare source to release pypi
上级
af1e8896
变更
51
隐藏空白更改
内联
并排
Showing
51 changed file
with
71 addition
and
67 deletion
+71
-67
.gitignore
.gitignore
+5
-6
Makefile
Makefile
+0
-6
README.md
README.md
+3
-5
_images/screencast.ogv
_images/screencast.ogv
+0
-0
labelme/__init__.py
labelme/__init__.py
+0
-0
labelme/canvas.py
labelme/canvas.py
+2
-2
labelme/colorDialog.py
labelme/colorDialog.py
+0
-0
labelme/icons/cancel.png
labelme/icons/cancel.png
+0
-0
labelme/icons/close.png
labelme/icons/close.png
+0
-0
labelme/icons/color.png
labelme/icons/color.png
+0
-0
labelme/icons/color_line.png
labelme/icons/color_line.png
+0
-0
labelme/icons/copy.png
labelme/icons/copy.png
+0
-0
labelme/icons/delete.png
labelme/icons/delete.png
+0
-0
labelme/icons/done.png
labelme/icons/done.png
+0
-0
labelme/icons/done.svg
labelme/icons/done.svg
+0
-0
labelme/icons/edit.png
labelme/icons/edit.png
+0
-0
labelme/icons/expert1.png
labelme/icons/expert1.png
+0
-0
labelme/icons/expert2.png
labelme/icons/expert2.png
+0
-0
labelme/icons/eye.png
labelme/icons/eye.png
+0
-0
labelme/icons/feBlend-icon.png
labelme/icons/feBlend-icon.png
+0
-0
labelme/icons/file.png
labelme/icons/file.png
+0
-0
labelme/icons/fit-width.png
labelme/icons/fit-width.png
+0
-0
labelme/icons/fit-window.png
labelme/icons/fit-window.png
+0
-0
labelme/icons/fit.png
labelme/icons/fit.png
+0
-0
labelme/icons/help.png
labelme/icons/help.png
+0
-0
labelme/icons/labels.png
labelme/icons/labels.png
+0
-0
labelme/icons/labels.svg
labelme/icons/labels.svg
+0
-0
labelme/icons/new.png
labelme/icons/new.png
+0
-0
labelme/icons/objects.png
labelme/icons/objects.png
+0
-0
labelme/icons/open.png
labelme/icons/open.png
+0
-0
labelme/icons/open.svg
labelme/icons/open.svg
+0
-0
labelme/icons/quit.png
labelme/icons/quit.png
+0
-0
labelme/icons/save-as.png
labelme/icons/save-as.png
+0
-0
labelme/icons/save-as.svg
labelme/icons/save-as.svg
+0
-0
labelme/icons/save.png
labelme/icons/save.png
+0
-0
labelme/icons/save.svg
labelme/icons/save.svg
+0
-0
labelme/icons/undo-cross.png
labelme/icons/undo-cross.png
+0
-0
labelme/icons/undo.png
labelme/icons/undo.png
+0
-0
labelme/icons/zoom-in.png
labelme/icons/zoom-in.png
+0
-0
labelme/icons/zoom-out.png
labelme/icons/zoom-out.png
+0
-0
labelme/icons/zoom.png
labelme/icons/zoom.png
+0
-0
labelme/labelDialog.py
labelme/labelDialog.py
+0
-0
labelme/labelFile.py
labelme/labelFile.py
+0
-0
labelme/lib.py
labelme/lib.py
+0
-0
labelme/resources.qrc
labelme/resources.qrc
+0
-0
labelme/shape.py
labelme/shape.py
+0
-0
labelme/toolBar.py
labelme/toolBar.py
+0
-0
labelme/zoomWidget.py
labelme/zoomWidget.py
+0
-0
scripts/labelme
scripts/labelme
+9
-10
setup.py
setup.py
+52
-0
test.py
test.py
+0
-38
未找到文件。
.gitignore
浏览文件 @
01df3966
build/
dist/
*.py[cdo]
*.egg-info/
icons/.DS_Store
resources.py
*.pyc
.*.swp
labelme/resources.py
Makefile
已删除
100644 → 0
浏览文件 @
af1e8896
all
:
resources.py
%.py
:
%.qrc
pyrcc4
-o
$@
$<
README.md
浏览文件 @
01df3966
# Labelme
Labelme is a graphical image annotation tool inspired by
...
...
@@ -6,13 +5,13 @@ http://labelme.csail.mit.edu.
It is written in Python and uses Qt for its graphical interface.
# Dependencies
#
#
Dependencies
Labelme requires at least
[
Python 2.6
](
http://www.python.org/getit/
)
and
has been tested with
[
PyQt
4.8
](
http://www.riverbankcomputing.co.uk/software/pyqt/intro
)
.
# Usage
#
#
Usage
After cloning the code you should first run
`make`
to generate the
resource file (a Python module containing all the icons).
...
...
@@ -24,8 +23,7 @@ At the moment annotations are saved as a [JSON](http://www.json.org/) file.
The file includes the image itself. In the feature support for XML
output or possibly even
[
SVG
](
http://www.w3.org/Graphics/SVG/
)
will be added.
# TODO
#
#
TODO
-
Refactor into a Python package.
-
Add installation script.
screencast.ogv
→
_images/
screencast.ogv
浏览文件 @
01df3966
文件已移动
labelme/__init__.py
0 → 100644
浏览文件 @
01df3966
canvas.py
→
labelme/
canvas.py
浏览文件 @
01df3966
...
...
@@ -21,8 +21,8 @@ from PyQt4.QtGui import *
from
PyQt4.QtCore
import
*
#from PyQt4.QtOpenGL import *
from
shape
import
Shape
from
lib
import
distance
from
labelme.
shape
import
Shape
from
l
abelme.l
ib
import
distance
# TODO:
# - [maybe] Find optimal epsilon value.
...
...
colorDialog.py
→
labelme/
colorDialog.py
浏览文件 @
01df3966
文件已移动
icons/cancel.png
→
labelme/
icons/cancel.png
浏览文件 @
01df3966
文件已移动
icons/close.png
→
labelme/
icons/close.png
浏览文件 @
01df3966
文件已移动
icons/color.png
→
labelme/
icons/color.png
浏览文件 @
01df3966
文件已移动
icons/color_line.png
→
labelme/
icons/color_line.png
浏览文件 @
01df3966
文件已移动
icons/copy.png
→
labelme/
icons/copy.png
浏览文件 @
01df3966
文件已移动
icons/delete.png
→
labelme/
icons/delete.png
浏览文件 @
01df3966
文件已移动
icons/done.png
→
labelme/
icons/done.png
浏览文件 @
01df3966
文件已移动
icons/done.svg
→
labelme/
icons/done.svg
浏览文件 @
01df3966
文件已移动
icons/edit.png
→
labelme/
icons/edit.png
浏览文件 @
01df3966
文件已移动
icons/expert1.png
→
labelme/
icons/expert1.png
浏览文件 @
01df3966
文件已移动
icons/expert2.png
→
labelme/
icons/expert2.png
浏览文件 @
01df3966
文件已移动
icons/eye.png
→
labelme/
icons/eye.png
浏览文件 @
01df3966
文件已移动
icons/feBlend-icon.png
→
labelme/
icons/feBlend-icon.png
浏览文件 @
01df3966
文件已移动
icons/file.png
→
labelme/
icons/file.png
浏览文件 @
01df3966
文件已移动
icons/fit-width.png
→
labelme/
icons/fit-width.png
浏览文件 @
01df3966
文件已移动
icons/fit-window.png
→
labelme/
icons/fit-window.png
浏览文件 @
01df3966
文件已移动
icons/fit.png
→
labelme/
icons/fit.png
浏览文件 @
01df3966
文件已移动
icons/help.png
→
labelme/
icons/help.png
浏览文件 @
01df3966
文件已移动
icons/labels.png
→
labelme/
icons/labels.png
浏览文件 @
01df3966
文件已移动
icons/labels.svg
→
labelme/
icons/labels.svg
浏览文件 @
01df3966
文件已移动
icons/new.png
→
labelme/
icons/new.png
浏览文件 @
01df3966
文件已移动
icons/objects.png
→
labelme/
icons/objects.png
浏览文件 @
01df3966
文件已移动
icons/open.png
→
labelme/
icons/open.png
浏览文件 @
01df3966
文件已移动
icons/open.svg
→
labelme/
icons/open.svg
浏览文件 @
01df3966
文件已移动
icons/quit.png
→
labelme/
icons/quit.png
浏览文件 @
01df3966
文件已移动
icons/save-as.png
→
labelme/
icons/save-as.png
浏览文件 @
01df3966
文件已移动
icons/save-as.svg
→
labelme/
icons/save-as.svg
浏览文件 @
01df3966
文件已移动
icons/save.png
→
labelme/
icons/save.png
浏览文件 @
01df3966
文件已移动
icons/save.svg
→
labelme/
icons/save.svg
浏览文件 @
01df3966
文件已移动
icons/undo-cross.png
→
labelme/
icons/undo-cross.png
浏览文件 @
01df3966
文件已移动
icons/undo.png
→
labelme/
icons/undo.png
浏览文件 @
01df3966
文件已移动
icons/zoom-in.png
→
labelme/
icons/zoom-in.png
浏览文件 @
01df3966
文件已移动
icons/zoom-out.png
→
labelme/
icons/zoom-out.png
浏览文件 @
01df3966
文件已移动
icons/zoom.png
→
labelme/
icons/zoom.png
浏览文件 @
01df3966
文件已移动
labelDialog.py
→
label
me/label
Dialog.py
浏览文件 @
01df3966
文件已移动
labelFile.py
→
label
me/label
File.py
浏览文件 @
01df3966
文件已移动
lib.py
→
l
abelme/l
ib.py
浏览文件 @
01df3966
文件已移动
resources.qrc
→
labelme/
resources.qrc
浏览文件 @
01df3966
文件已移动
shape.py
→
labelme/
shape.py
浏览文件 @
01df3966
文件已移动
toolBar.py
→
labelme/
toolBar.py
浏览文件 @
01df3966
文件已移动
zoomWidget.py
→
labelme/
zoomWidget.py
浏览文件 @
01df3966
文件已移动
labelme.py
→
scripts/labelme
浏览文件 @
01df3966
...
...
@@ -30,16 +30,15 @@ from collections import defaultdict
from
PyQt4.QtGui
import
*
from
PyQt4.QtCore
import
*
import
resources
from
lib
import
struct
,
newAction
,
newIcon
,
addActions
,
fmtShortcut
from
shape
import
Shape
,
DEFAULT_LINE_COLOR
,
DEFAULT_FILL_COLOR
from
canvas
import
Canvas
from
zoomWidget
import
ZoomWidget
from
labelDialog
import
LabelDialog
from
colorDialog
import
ColorDialog
from
labelFile
import
LabelFile
,
LabelFileError
from
toolBar
import
ToolBar
from
labelme
import
resources
from
labelme.lib
import
struct
,
newAction
,
newIcon
,
addActions
,
fmtShortcut
from
labelme.shape
import
Shape
,
DEFAULT_LINE_COLOR
,
DEFAULT_FILL_COLOR
from
labelme.canvas
import
Canvas
from
labelme.zoomWidget
import
ZoomWidget
from
labelme.labelDialog
import
LabelDialog
from
labelme.colorDialog
import
ColorDialog
from
labelme.labelFile
import
LabelFile
,
LabelFileError
from
labelme.toolBar
import
ToolBar
__appname__
=
'labelme'
...
...
setup.py
0 → 100644
浏览文件 @
01df3966
from
distutils.command.build_py
import
build_py
as
BuildPyCommand
from
setuptools
import
find_packages
from
setuptools
import
setup
import
shlex
import
subprocess
import
sys
version
=
'1.0'
class
LabelmeBuildPyCommand
(
BuildPyCommand
):
def
run
(
self
):
BuildPyCommand
.
run
(
self
)
src
=
'labelme/resources.py'
dst
=
'labelme/resources.qrc'
cmd
=
'pyrcc4 -o {0} {1}'
.
format
(
src
,
dst
)
print
(
'converting {0} -> {1}'
.
format
(
src
,
dst
))
subprocess
.
check_call
(
shlex
.
split
(
cmd
))
try
:
import
PyQt4
except
ImportError
:
sys
.
stderr
.
write
(
'Please install PyQt4.
\n
'
)
sys
.
exit
(
1
)
setup
(
name
=
'labelme'
,
version
=
version
,
packages
=
find_packages
(),
cmdclass
=
{
'build_py'
:
LabelmeBuildPyCommand
},
description
=
'Simple Image Annotation Tool.'
,
long_description
=
open
(
'README.md'
).
read
(),
author
=
'mpitid'
,
author_email
=
'mpitid@gmail.com'
,
url
=
'https://github.com/mpitid/pylabelme'
,
install_requires
=
[],
license
=
'MIT'
,
keywords
=
'Image Annotation, Machine Learning'
,
classifiers
=
[
'Development Status :: 5 - Production/Stable'
,
'Intended Audience :: Developers'
,
'License :: OSI Approved :: MIT License'
,
'Operating System :: POSIX'
,
'Topic :: Internet :: WWW/HTTP'
,
],
package_data
=
{
'labelme'
:
[
'icons'
]},
scripts
=
[
'scripts/labelme'
],
)
test.py
已删除
100755 → 0
浏览文件 @
af1e8896
#!/usr/bin/env python
# -*- coding: utf8 -*-
import
sys
from
PyQt4.QtGui
import
*
from
PyQt4.QtCore
import
*
class
MainWindow
(
QMainWindow
):
def
__init__
(
self
):
super
(
MainWindow
,
self
).
__init__
()
self
.
setWindowTitle
(
"test"
)
quit
=
QAction
(
"&Quit"
,
self
)
quit
.
triggered
.
connect
(
self
.
close
)
menu
=
self
.
menuBar
().
addMenu
(
'&File'
)
menu
.
addAction
(
quit
)
self
.
notepad
=
QTabWidget
()
tabs
=
[(
"hello"
,
QWidget
(),
"test"
)]
for
i
,
(
name
,
widget
,
title
)
in
enumerate
(
tabs
):
self
.
notepad
.
addTab
(
widget
,
title
)
self
.
setCentralWidget
(
self
.
notepad
)
self
.
statusBar
().
show
()
def
main
(
argv
):
app
=
QApplication
(
argv
)
app
.
setApplicationName
(
"test"
)
win
=
MainWindow
()
win
.
show
()
return
app
.
exec_
()
if
__name__
==
'__main__'
:
sys
.
exit
(
main
(
sys
.
argv
))
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录