LabelMe图像注释标注工具源代码
LabelMe的目标是提供在线注释工具,为计算机视觉研究构建图像数据库。在这里将介绍在服务器上安装LabelMe注释工具的源代码。LabelMe是一个用Javascript和Perl编写的标注工具,用于在线图像标注标记。LabelMe图像标注注释工具的优势在于您可以从任何地方访问该工具,并且可以同时多人协作注释图像,而无需大型数据集安装或布署到其计算机上。
LabelMe帮助:
LabelMe是一种基于WEB的图像标注工具,允许研究人员标记图像并与世界共享注释。
创建用户帐户:您将能够为注释创建图像数据库。
将图像组织到集合中:您可以将图像组织成集合。您也可以像对文件夹一样在集合内创建集合。下载数据库时,集合将组织到文件夹中。
上传和图像注释:您可以使用在线LabelMe注释工具将图像上传到集合中并注释图像。
快速入门说明:
-
将LabelMe注释工具代码放在Web服务器上。
内容来自dedecms
-
在命令行上运行: copyright dedecms
这将设置perl脚本所需的全局变量。 注意如果移动代码的位置,则需要重新运行“make”以刷新全局变量。 织梦内容管理系统
-
在“Images”文件夹中创建一个子文件夹,然后将图像放在那里。例如:“Images / example_folder / img1.jpg”。确保所有图像都有“.jpg”扩展名,文件夹/文件名包含字母数字字符(即没有空格或有趣的字符)。
dedecms.com
-
将Web浏览器指向以下URL:
copyright dedecms
http://www.yourserver.edu/path/to/LabelMe/tool.html?collection=LabelMe&mode=f&folder=example_folder&image=img1.jpg copyright dedecms
-
标记您的图像。按“显示另一个图像”转到文件夹中的下一个图像。 copyright dedecms
-
瞧!您的注释将显示在“注释”文件夹中。
dedecms.com
网络服务器要求:
您需要以下内容在Web服务器上设置LabelMe工具:
织梦内容管理系统
-
运行Apache服务器。
内容来自dedecms
-
在Apache中启用authconfig,以便服务器端包含(SSI)可以正常工作。这将允许SVG绘图功能。这是最常见的错误来源,因此请确保此步骤正常运行。 dedecms.com
-
允许perl / CGI脚本运行。这是第二个最常见的错误来源。
织梦好,好织梦
-
确保安装了php5和libapache2-mod-php5库。您可以通过运行以下命令在Linux上安装它们: 本文来自织梦
$ sudo apt-get install php5 libapache2-mod-php5 dedecms.com
-
(可选)如果要在Ubuntu或Windows上进行安装,请参阅特殊配置说明。 织梦好,好织梦
如果您无法绘制多边形,请检查页面是否作为“application / xhtml + xml”页面加载(您可以在Firefox中通过导航到Tools-> Page Info来查看)。如果不是,请确保已启用SSI(请参阅上面的启用Apache中的authconfig)。
本文来自织梦
确保您的图像在Web服务器上具有读取权限,并且“Annotations”文件夹中的文件夹具有写入权限。此外,“annotationCache / TmpAnnotations”需要具有写入权限。
dedecms.com
注释工具的特点:
-
以下是您可以传递给注释工具的URL变量:
本文来自织梦
-
mode = im - 仅显示图像和绘图画布(不显示图像外的任何内容。
-
mode = mt - 机械土耳其人模式。
-
mode = f - 按“下一个图像”按钮进入文件夹中的下一个图像。
-
mode = i - 按“下一个图像”按钮转到默认LabelMe集合中的随机图像。
-
mode = c - 转到集合中的下一个图像(通过dirlist设置)。
-
username = johndoe - 设置标签会话的用户名。
-
collection = LabelMe - 使用默认的LabelMe集合列表。请参阅以下有关设置新收藏列表的信息。
-
folder = MyLabelMeFolder - 图像所在的LabelMe文件夹。
-
image = image.jpg - 要标注的LabelMe图像。
-
objects = car,person,building - 当出现弹出气泡询问用户对象名称时,用户选择其中一个对象显示为下拉列表。
-
scribble = false - 关闭涂鸦模式。
-
objlist = visible - 它控制右侧的对象列表是否可见。使用“objlist = hidden”使其隐藏。
-
actions = n - 控制允许用户执行的操作。要设置所需的操作,请使用以下字母的任意组合。例如,要允许重命名,修改控制点和删除操作,请设置“actions = rmd”。默认情况下,“actions = n”。以下是可能的操作:
-
n - 创建和编辑新多边形
-
r - 重命名现有对象
-
m - 修改现有对象上的控制点
-
d - 删除现有对象
-
a - 允许所有操作
-
v - 仅查看多边形(不允许任何编辑)
-
viewobj = e - 控制用户看到的对象。使用以下可能的选项之一。默认情况下,“viewobj = e”。请注意,对于已删除的对象,这些对象将以灰色显示,对象列表中的对象名称将以斜体显示。
-
e - 查看新的和先前标记的对象
-
n - 仅查看新对象
-
d - 查看新对象和已删除对象
-
a - 查看所有对象(新的,现有的,已删除的)
以下是Mechanical Turk模式: 本文来自织梦
-
mt_sandbox = true - 使用Mechanical Turk沙盒模式。此模式用于在Mechanical Turk上进行调试。您可能希望从此变量集开始,以确保一切正常。
-
N = 5 - 要求工人标记至少5个多边形。使用N = inf允许工人标记他们想要的任意数量。
-
mt_intro = http://yourpage.com - 您可以自定义工作人员看到的指令。默认情况下,会向工作人员提供以下说明。
-
mt_instructions =在此处放置说明 - 您可以自定义工作人员在标签任务顶部看到的单行说明。默认情况下,说明如下:请在此图像中标记任意数量的对象。
-
您可以通过在命令行上运行以下命令来创建要标记的图像集合:
内容来自dedecms
$ cd ./annotationTools/sh/
$ ./populate_dirlist.sh dedecms.com
这将创建“./Images”文件夹中所有图像的列表,并将显示在文件“./annotationCache/DirLists/labelme.txt”中。 dedecms.com
然后,您可以使用以下URL标记集合中的图像: 内容来自dedecms
http://www.yourserver.edu/path/to/LabelMe/tool.html?collection=labelme&mode=i
内容来自dedecms
您可以通过从命令行运行以下命令来创建包含特定文件夹的集合: 织梦好,好织梦
$ cd ./annotationTools/sh/
$ ./populate_dirlist.sh my_collection.txt example_folder 本文来自织梦
该列表将出现在“./annotationCache/DirLists/my_collection.txt”中。然后,您可以使用以下URL标记集合中的图像: 内容来自dedecms
http://www.yourserver.edu/path/to/LabelMe/tool.html?collection=my_collection&mode=i
本文来自织梦
-
您可以通过修改“./annotationCache/XMLTemplates/your_collection.xml”中的XML文件模板来更改集合的注释文件的布局。默认模板是“./annotationCache/XMLTemplates/labelme.xml”。 内容来自dedecms
-
注释工具操作的日志文件记录在“./annotationCache/Logs/logfile.txt”中。确保此文件具有写入权限。 内容来自dedecms
CODE API
以下是源代码的简要概述。 有关详细信息,请参阅 Javascript代码API。
copyright dedecms
-
tool.html - 这是注释工具的入口点。主要功能是插入所有的javascript代码并放下绘图画布。 织梦内容管理系统
-
annotationTools / js / - 此文件夹包含注释工具功能的所有javascript代码。我们提供了 Javascript源代码的代码API,它已经从源代码注释中自动提取。
copyright dedecms
-
annotationTools / perl / - 此文件夹包含用于与服务器后端通信的所有Perl脚本。
织梦内容管理系统
-
annotationTools / css / - 此文件夹包含所有CSS样式定义。 内容来自dedecms
-
annotationTools / html / - 此文件夹包含辅助HTML文件(例如,用于Mechanical Turk指令等)。 copyright dedecms
许可证:
请确保您上传的图片不受版权保护,且不包含不适当的内容。您上传和注释的图像将被视为公共域的一部分。由于LabelMe的目标是提供研究工具,因此图像和注释有望无限制地供研究机构使用。
引用:
如果您使用源代码,请添加引用此网址页面,我们将不胜感激:
BC Russell,A。Torralba,KP Murphy,WT Freeman,LabelMe:用于图像标注的数据库和基于Web的工具。
麻省理工学院,计算机科学和人工智能实验室。