Coder Social home page Coder Social logo

csailvision / labelmeannotationtool Goto Github PK

View Code? Open in Web Editor NEW
1.4K 62.0 430.0 12.55 MB

Source code for the LabelMe annotation tool.

License: MIT License

Makefile 0.14% CSS 2.80% HTML 42.91% JavaScript 44.42% Shell 0.31% Perl 1.97% PHP 0.68% C++ 6.27% Python 0.23% Dockerfile 0.29%
annotation computer-vision

labelmeannotationtool's Introduction

LabelMe annotation tool source code

Here you will find the source code to install the LabelMe annotation tool on your server. LabelMe is an annotation tool writen in Javascript for online image labeling. The advantage with respect to traditional image annotation tools is that you can access the tool from anywhere and people can help you to annotate your images without having to install or copy a large dataset onto their computers.

CITATION:

B. C. Russell, A. Torralba, K. P. Murphy, W. T. Freeman. LabelMe: a Database and Web-based Tool for Image Annotation. International Journal of Computer Vision, 77(1-3):157-173, 2008. Project page

DOWNLOAD:

You can download a zip file of the source code directly.

Alternatively, you can clone it from GitHub as follows:

$ git clone https://github.com/CSAILVision/LabelMeAnnotationTool.git

CONTENTS:

  • Images - This is where your images go.
  • Annotations - This is where the annotations are collected.
  • Masks - This is where the segmentation masks are collected (scribble mode).
  • Scribbles - This is where the scribbles are collected (scribble mode).
  • tool.html - Main web page for LabelMe annotation tool.
  • annotationTools - Directory with source code.
  • annotationCache - Location of temporary files.
  • Icons - Icons used on web page.
  • DockerFiles - Directory with Docker files for installation via Docker.

QUICK START INSTRUCTIONS:

  1. Put LabelMe annotation tool code on web server (see web server configuration requirements below).

  2. On the command line run:

    $ make

    This will set a global variable that the perl scripts need. Note If you move the location of the code, then you need to re-run "make" to refresh the global variable.

  3. Create a subfolder inside the "Images" folder and place your images there. For example: "Images/example_folder/img1.jpg". Make sure all of your images have a ".jpg" extension and the folders/filenames have alphanumeric characters (i.e. no spaces or funny characters).

  4. Point your web browser to the following URL:

    http://www.yourserver.edu/path/to/LabelMe/tool.html?collection=LabelMe&mode=f&folder=example_folder&image=img1.jpg

  5. Label your image. Press "show me another image" to go to the next image in the folder.

  6. Voila! Your annotations will appear inside of the "Annotations" folder.

WEB SERVER REQUIREMENTS:

You will need the following to set up the LabelMe tool on your web server:

  • Run an Apache server (see special configuration instructions for Ubuntu or Windows).

  • Enable authconfig in Apache so that server side includes (SSI) will work. This will allow SVG drawing capabilities. This is the most common source of errors, so make sure this step is working.

  • Allow perl/CGI scripts to run. This is the second most common source of errors.

  • Make sure the php5 and libapache2-mod-php5 libraries are installed. You can install them on Linux by running the following:

    $ sudo add-apt-repository ppa:ondrej/php
    $ sudo apt-get update
    $ sudo apt-get install -y php5.6 php5.6-mcrypt php5.6-mbstring php5.6-curl php5.6-cli php5.6-mysql php5.6-gd php5.6-intl php5.6-xsl php5.6-xml php5.6-zip libapache2-mod-php5.6
  • (Optional) See special configuration instructions if you are installing on Ubuntu or Windows.

If you are not able to draw polygons, check to see if the page is loaded as an "application/xhtml+xml" page (you can see this in Firefox by navigating to Tools->Page Info). If it is not, be sure that SSI are enabled (see above for enabling authconfig in Apache).

Make sure that your images have read permissions on your web server and folders in the "Annotations" folder have write permissions. Also, "annotationCache/TmpAnnotations" needs to have write permissions.

FEATURES OF THE ANNOTATION TOOL:

  • The following are URL variables you can pass to the annotation tool:

    • mode=im - Only show the image and drawing canvas (do not show anything outside of the image.
    • mode=mt - Mechanical Turk mode.
    • mode=f - Pressing "next image" button goes to next image in the folder.
    • mode=i - Pressing "next image" button goes to random image in the default LabelMe collection.
    • mode=c - Go to next image in the collection (set via the dirlist).
    • username=johndoe - Sets username for labeling session.
    • collection=LabelMe - Uses the default LabelMe collection list. See below for setting up a new collection list.
    • folder=MyLabelMeFolder - LabelMe folder where the image lives.
    • image=image.jpg - LabelMe image to annotate.
    • objects=car,person,building - When popup bubble appears asking the user for the object name, the user selects one of these objects appearing as a drop-down list.
    • scribble=false - Turns off scribble mode.
    • objlist=visible - This controls whether the object list on the right side is visible or not. Use "objlist=hidden" to make it hidden.
    • actions=n - Control what actions the user is allowed to do. To set the desired actions, use any combination of the letters below. For example, to allow renaming, modify control points, and delete actions, then set "actions=rmd". By default, "actions=n". The following are possible actions:
      • n - create and edit new polygons
      • r - rename existing objects
      • m - modify control points on existing objects
      • d - delete existing objects
      • a - allow all actions
      • v - view polygons only (do not allow any editing)
    • viewobj=e - Control which objects the user sees. Use one of the following possible options below. By default, "viewobj=e". Note that for deleted objects, these will be shown in gray and the object name in the object list will be italicized.
      • e - view new and previously labeled objects
      • n - view new objects only
      • d - view new and deleted objects
      • a - view all objects (new, existing, deleted)

    The following are for Mechanical Turk mode:

    • mt_sandbox=true - Use Mechanical Turk sandbox mode. This mode is used for debugging on Mechanical Turk. You may want to start with this variable set to make sure everything works.
    • N=5 - The worker is required to label at least 5 polygons. Use N=inf to allow the worker to label as many as they want.
    • mt_intro=http://yourpage.com - You may customize the instructions that the worker sees. By default, the following instructions are given to the workers.
    • mt_instructions=Place your instructions here - You may customize the one-line instructions that the worker sees at the top of the labeling task. By default, the instructions are: Please label as many objects as you want in this image.
  • You can create a collection of images to label by running the following on the command line:

    $ cd ./annotationTools/sh/
    $ ./populate_dirlist.sh

    This will create a list of all images inside the "./Images" folder, and will appear inside the file "./annotationCache/DirLists/labelme.txt".

    You can then label images inside the collection using the following URL:

    http://www.yourserver.edu/path/to/LabelMe/tool.html?collection=labelme&mode=i

    You can create a collection consisting of a particular folder by running the following from the command line:

    $ cd ./annotationTools/sh/
    $ ./populate_dirlist.sh my_collection.txt example_folder

    The list will appear inside "./annotationCache/DirLists/my_collection.txt". You can then label images inside the collection using the following URL:

    http://www.yourserver.edu/path/to/LabelMe/tool.html?collection=my_collection&mode=i

  • You can change the layout of the annotation files for your collection by modifying the XML file template inside of "./annotationCache/XMLTemplates/your_collection.xml". The default template is "./annotationCache/XMLTemplates/labelme.xml".

  • A log file of the annotation tool actions are recorded in "./annotationCache/Logs/logfile.txt". Make sure that this file has write permissions.

CODE API

The following is a brief overview of the source code. Please see the Javascript code API for more details.

  • tool.html - This is the entry point for the annotation tool. The main functionality is to insert all of the javascript code and lay down the drawing canvases.

  • annotationTools/js/ - This folder contains all of the javascript code for the annotation tool functionalities. We provide the code API for the Javascript source code, which has been automatically extracted from the source code comments.

  • annotationTools/perl/ - This folder contains all of the Perl scripts used for communication with the server back-end.

  • annotationTools/css/ - This folder contains all of the CSS style definitions.

  • annotationTools/html/ - This folder contains auxillary HTML files (e.g. for Mechanical Turk instructions, etc.).


(c) 2015, MIT Computer Science and Artificial Intelligence Laboratory

labelmeannotationtool's People

Contributors

brianabrams avatar brussell123 avatar jhung0 avatar karhohs avatar kuukulgur-robot avatar rishizek avatar there avatar xavierpuigf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

labelmeannotationtool's Issues

Mode "c" doesn't seem to work as documented

The documentation say:

mode=c - Go to next image in the collection (set via the dirlist).
But if we look at the code here, we can see that it actually tries to read the contents of a specific folder:

elsif($mode eq "c") {
    opendir(DIR,$LM_HOME . "Images/users/$username/$collection") || die("Cannot read collections");
    my @all_images = readdir(DIR);
    closedir(DIR);

    my $c = 0;
    foreach my $i (@all_images) {
	if($i eq $image) {
	    goto next_section;
	}
	$c = $c+1;
    }
  next_section:
    if($c == scalar(@all_images)-1) {
	$c = 1;
    }
    $im_file = $all_images[$c+1];
    $im_dir = $folder;
}

Next image fails

I'm using ubuntu 14.04, apache 2.4. I can load one image using url query string parameter 'image' and 'folder', however when i click on the next button, white page appear. It happens with the new images or with the images in the example_folder.

Secondly, i would like to ask how one generate Mask from annotations available in the form of xml. The labelme loads them but when i press process/done, it says i need to scribble first. Is it possible to convert xml annotations to colored masks (i.e. colored label images)?

Thanks

Click Next Image but URL remains the same

I am running LabelMeAnnotationTool on Ubuntu 14.04 with Apache 2.4. Everything seems perfect except when I finish annotating one image and click the ''Next Image''. The web page updates and the next image shows up correctly. However, it seems that the url remains the same. For example, I have a starting url pointing to 1.jpg (http://mywebsite.com/tool.html?collection=LabelMe&mode=f&folder=example_images&**image=1.jpg**). After I click next image, the second image shows up on the web page but the url indicates that it still points to 1.jpg (http://mywebsite.com/tool.html?collection=LabelMe&mode=f&folder=example_images&**image=1.jpg**) instead of (http://mywebsite.com/tool.html?collection=LabelMe&mode=f&folder=example_images&image=2.jpg). In this case, the annotations of different images are crammed into one file, which is difficult to process. Has anyone got any clues on this?

Fatal: there are problems with fetch_image.cgi

I installed LabelMe on AWS based on the instructions given on github.

However, whenever I am trying to call

/tool.html?collection=LabelMe&model=f&folder=example_folder&image=img1.jpg

I am facing this box:
Fatal: there are problems with fetch_image.cgi.

I tried other modes, but the result was the same.

When I try to access images individually, I can do that. When I annotate, annotations field reflects the xml image of that image.

Create updated alert window

One function that would be useful is to have a better alert popup. Right now for alerts we use the "alert" function in javascript. But it is ugly.

If we could have somewhere a

LMalert(message)

then we could post messages like:

"please enter an object name"

"This polygon was entered by another user. You can only modify polygons that you have entered. Do not forget to sign in if you want to be able to edit your annotations"

and so on

Verification mode

Hi,

We are working on a verification mode for LabelMe - please comment - in particular on the interpretation of the verified-element in the Label XML-format. Is there an XSD available?


When dealing with object recognition/classification, a way to fast and easily verify object classifications is often desirable.
A mode (‘v’) will be added to LabelMe in which it is possible to verify whether a given object is correctly classified or not.

labelmeverificationmode

When mode=v:
The objects in the annotation will be examined one after the other. The object in question (e.g. a car) will be framed by a polygon on the canvas. Instead of the object list, a verification tool will be presented on the right.
The verification tool will show an image example of what the classified class looks like (e.g. an image of a car) and a description of how the given class should be labelled. It will then be possible to verify, skip or reject the classification by using three buttons - or keyboard shortcuts. Upon each action, the verification tool proceeds to the next object (or image).

A new folder will be added (in addition to Images and Annotations): Classes
The Classes folder will contain example images and corresponding descriptions (HTML-snippets wrapped in XML) - e.g.:
Classes/car.jpg
Classes/car.xml
Classes/bike.jpg
Classes/bike.xml

The verification tool will exploit the existing verified-element in the XML-format, with values:
0 = not-examined
1 = verified
2 = rejected
3 = skipped (examined, but neither verified nor rejected).

How to deal with image of big size

I have an image of size 345651843, and its space size is 11M. I failed to upload the image to the web tool. How can I deal with image of such big size? Will the MATLAB Toolbox work?
Thanks very much for your help!

user page - user stats?

could you keep a summary per user showing:-
[1] total labels added
[2] which collections you have added them too

I see that in the collections, the user contributions show up in stats, but it would be nice to see you total contributions accumulated in your own page

The FetchImage js code don't work

My environment is : Ubuntu14.04 Apache2.4 (new installed)
I check lot of things . Then I found the cgi was not work .
In the apache2.conf file , the cgi model was not included by default .
I did this
/etc/apache2/mods-enabled# ln -s ../mods-available/cgi.load ./
to enable cgi .
Then it's work .
Hope to help .

Have Trouble in Building Index D with HOMEANNOTATIONS

Hi all,

According to the tutorial, after downloading a specific list of folders, I need to build the index with the following instruction.

D = LMdatabase(HOMEANNOTATIONS);

But I couldn't get any annotated images from XML files in ANNOTATIONS folder (see the massage as follow).

1/4, .
Total images:0, annotation files:0 (with 0 empty xml files)
2/4, E:\Code\LabelMeToolbox-master\LabelMeToolbox-master\annotation\05june05_static_indoor
Total images:0, annotation files:0 (with 0 empty xml files)
3/4, E:\Code\LabelMeToolbox-master\LabelMeToolbox-master\annotation\dec_static_office
Total images:0, annotation files:0 (with 0 empty xml files)
LabelMe Database summary:
Total of 0 annotated images.

Any help on that?

Best,
Kevin

Browser detection (IE) failed

Newer versions of IE (e.g., IE11) no longer use "MSIE" for identification. The function IsMicrosoft() in browser.js might fail.

svg:svg does not work

Hi all,

I found that svg:svg does not work on my end, by 'not work', I mean this tag produce a blank screen on my browsers (chrome and safari). I discovered that if I change svg:svg to svg only, lots of svg come back. Do you guys know what's happened? I don't think I need to change the code like that.

Thank you very much for your help!

actions=v mode

When "actions=v" is set in the URL it is possible to change the names of objects already annotated. In this mode the object bubble should be deactivated so that no annotation is possible.

Mode C even after merging #33 doesn't seem to work as given in documentation

In reference to #33

The documentation says: mode=c - Go to next image in the collection (set via the dirlist).

But the code in fetch_image.cgi

elsif($mode eq "c") {
    opendir(DIR,$LM_HOME . "Images/$collection") || die("Cannot read collections");
    my @all_images = readdir(DIR);
    closedir(DIR);

    my $c = 0;
    foreach my $i (@all_images) {
	if($i eq $image) {
	    goto next_section;
	}
	$c = $c+1;
    }
  next_section:
    if($c == scalar(@all_images)-1) {
	$c = 1;
    }
    $im_file = $all_images[$c+1];
    $im_dir = $folder;

Doesn't seem to read the foo.txt file which is created using populate_dirlist.sh

From my guess the code for mode = "c" should be similar to code for mode = "i" with the random part removed.

So, I think the code for mode = "c" should loook something like this:

if($mode eq "c") {
    my $fname = $LM_HOME . "annotationCache/DirLists/$collection.txt";
    
    if(!open(FP,$fname)) {
	print "Status: 404\n\n";
	return;
    }
    
    open(NUMLINES,"wc -l $fname |");
    my $numlines = <NUMLINES>;
    ($numlines,my $bar) = split(" DirLists",$numlines);
    close(NUMLINES);
    
    my $line = int(rand($numlines))+1; # this should be in series and not a random integer. 
    
    for(my $i=1; $i < $line; $i++) {
	my $garbage = readline(FP);
    }
    
    my $fileinfo = readline(FP);
    ($im_dir,$im_file) = split(",",$fileinfo);
    $im_file =~ tr/"\n"//d; # remove trailing newline
    
    close(FP);

@brianabrams could you please look at this?
Basically what I feel is, It should read the foo.txt file created by populate_dirlist.sh and display the images in order given in the text file

Video Tutorial on Setting up LabelMe with Ubuntu 12.04

I made a video tutorial for me and those who are not familiar with Apache configurations on Ubuntu.
https://www.youtube.com/watch?v=IXQMALMprhY
Hope this helps.

It might be better if the authors could specify how to do the following two steps in detail, it took me a while to figure that out.

  • Enable authconfig in Apache so that server side includes (SSI) will work. This will allow SVG drawing capabilities. This is the most common source of errors, so make sure this step is working.
  • Allow perl/CGI scripts to run. This is the second most common source of errors.

Blank Screen

My apache server is working correctly on Ubuntu since I can annotate using the Label Me Video version. However having installed the Label Me Image tool, when I navigate to /LabelMeImage/LabelMeAnnotationTool/tool.html via Firefox, I see a blank screen. I am not sure what the issue could be. I checked all directory permissions.

Error message: Second argument must be either "get" or "post".

Hi all,
I followed the instructions from the website and input the following commands.

HOMEIMAGES = 'http://people.csail.mit.edu/brussell/research/LabelMe/Images';
HOMEANNOTATIONS = 'http://people.csail.mit.edu/brussell/research/LabelMe/Annotations';
D = LMdatabase(HOMEANNOTATIONS);

But I constantly got the error messages shown below.

??? Error using ==> urlread at 43
Second argument must be either "get" or "post".

Error in ==> urldir at 44
[webpage, status] = urlread(page, 'Timeout', 5);

Error in ==> LMdatabase at 103
files = urldir(HOMEANNOTATIONS);

Any help?

Best,
Kai

Windows perquisites

Had a hard time running this on Windows,

It should be stated clearly in the Windows instructions that Imagemagick is required (for the "identify" command) and cygwin should be added to PATH (for cp in windows)

'occluded' dialog - make 'unspecified' the default

people are lazy, assume this.. the entry for 'occluded' should default to unspecified, because unless you actually click one or the other, you don't know if it is or isn't. It's also not immediately clear if you're supposed to highlight the area the object would cover (including it's occlusion), or just it's pixels that show through

Binary label choice

Hi --

Is it possible to set up LabelMe to give the user a binary choice of labels? For instance, present an image and prompt "Male" and "Female", and allow the user to press a key to select one of them, and automatically forward to the next image.

LabelMe looks great for visual object labeling; we would also like fast and simple categorization.

Cheers,
David

Submit HIT button fails on Amazon Mechanical Turk mode

Hi All,

I have set up an AWS web server to hosting labelme annotation tool. Then I successfully use Amazon Mechanical Turk command tool to submit labelme task as a HIT on mturk sandbox.

When I test the HIT, I found out that I am not able to submit HIT after I click the Submit HIT button. Meanwhile the chrome browser generate the error "Refused to display 'https://www.mturk.com/mturk/welcome' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'."

It seems that something related to use iframe to show labelme webtool. Can anyone help me to figure out the solution? Thanks for in advanced.

Mike

collections browser , enhance with thumbnails

in the 'public collections' screen, it would be nice to show a few images from the collection, to give more of an idea whats in there, and perhaps some of the existing labels used in it
(perhaps show the most common labels, and the most-labelled images)

line/curve annotations

how about an option for annotations that are equivalent to GL_LINE_STRIP, a series of N points connected by lines; these could be used for highlighting features like cables, tracks, curb edges, whatever

remember 'current label', allow repeating it by default

remember the last label you entered; display this in the dialogue box and say '... or ...' e.g. if you don't enter a new label, it will use the last one; so it is fewer clicks / keyboard entries to repeat the same label many times (e.g. label all the trees, label all the pedestrians, label all the cars in sequence)

svg draw using append does not work

Hi all,

I also find that the current git version does not work on using svg drawing.
In annotationTools/js/plot.js, there are lots of draw functions, such as DrawPolygon, DrawPolyLines, ... all of these functions use $('#'+element_id).append("xxx");
However, it does not work at my side. By "not work", I mean these functions show no output on my screen. I use console.log to check what was contained in $('#'+element_id), and found that the append does not work.

So, I googled, and find a workaround by adding

var divName = String('#'+element_id+'_div');
if (divName != null) $(divName).html($(divName).html());

these two lines at the end of each these draw function.
It generally works, but I cannot believe this is the right way to go.

My question is that
is there any special setup I should follow?

My environment is macbook pro + safari/chrome, apache 2.4.

yours,
Luming

How to start LabelMe Video

Hi geniuses,
I need to set up a LabelMe Video Tool on my web server. And I've already successful run an Image version on my server. I saw some codes about video in LabelMeAnnotationTool, but I can't find any documents about video tool in this Github. And I didn't find any start html for video like tool.html, I just found a demo.xhtml, but its almost an empty document. I'm confused about whether you have stopped LabelMe Video version.
Thanks a lot.

Can't locate globalvariables.pl

I set up the LableMe annotation tool on the local server. While browsing the tool, I am receiving the error "Unknown objXml.status" and unable to draw a polygon. Set up files are fine in concern with the possible causes mentioned in the README file.
In the server error log, I found that globalvariables.pl is used in the perl scripts but it is not in the package. I was wondering if this file supposed to be in the labelme tool or is there a problem with perl installation?

Following is the snippet of the error log:
"Can't locate globalvariables.pl in @inc (@inc contains: /etc/perl /usr/local/lib/perl/5.10.0 /usr/local/share/perl/5.10.0 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .) at /var/www/public/LabelMe/annotationTools/perl/get_anno_file.cgi line 2., referer: http://myServer.LabelMe/tool.html?collection=LabelMe&mode=f&folder=example_folder&image=img1.jpg"

segmentCPP question.

I recently want to change some function of scribble , so I modified the source code , and make once , then I got example.js and example.js.mem two files , I put two files into annotationTool/js/folder . and then problem comes . I got a "you need to wait for the runtime to be ready (e.g. wait for main() to be called).) " error , But I know , it's some js code issues . May I ask you add something it to example.js after it be created ? If you not add something , you compile it as I did , how does it worked ? I readed the Emscripten FAQ but I am so stupid that to know what the document want to say and how to do , could you help me to fix that ? Thanks whatever .

label hierarchy, display

in the database of labels, keep relationships e.g. "isa", (1:many , like traits or multiply inheritance),
display these in the label list, e.g.
if you label some traffic with "car", "van", "hatchback car", "sedan", the list would show:-

vehicle:
  truck:
     articulated lorry
  van
  bus:
      bus
      school bus
      double decker bus
  car:
      car
      hatchback car
      sedan
      pickup truck
      sports car
      taxi
  minibus

more specific labels like 'hatchback car' would still show up as 'car' labels. Allow being as specific as possible with the labelling, whilst still providing broadly useful data.

editing existing polygons - point and edge manipulation

Could you add a vertex movement , vertex delete, and edge-split tools to the toolbox, to allow you to refine or correct existing polygons;

these should treat bounding rectangles as 4-sided polygons, which can be further refined
(e.g. allow a workflow where you block things out quickly , then go and refine the region outlines)

Adjusting control points failed when use_attributes=0

In edit_events.js function AdjustPolygonButton() , we should check if the user's using attributes before get those elements.

adjust_objEnter = document.getElementById('objEnter').value;
if (use_attributes){
adjust_attributes = document.getElementById('attributes').value;
adjust_occluded = document.getElementById('occluded').value;
}

front page - give indication of other user activity

To encourage people that this is an active project, maybe you could show a summary - recent history of additions - on the front page (e.g. 'user blah blah added N labels to X; user foo added M labels to Y..' .. or perhaps an activity graph.

This would just be to re-assure people that the project is active, not forgotten, etc.. give a sense of an active community

main page - login as guest or anonymous

from the main page,
http://labelme.csail.mit.edu/Release3.0/

I don't see a way to just start using it, without having to faff around with registration (email, passwords, usernames).

it would be better if you can just dive in. You could still record the IP of contributions, tag them as 'anonymous'/'guest' or whatever, and retroactively validate them (if clients want to filter contributions from trusted sources). Given 'anonymous contributions' a 10% weighting or something, if you're worried about a higher probability of damage

mouse wheel zooming

Could this tool support mouse-wheel zooming , e.g. where using the mouse wheel zooms in at the point of the cursor (keeping that point fixed). This is an image navigation technique that can substitute for scrolling aswell, whilst keeping your hand on the mouse and your eyes focussed on the target area

Suggestion : M-turk like feature but in a Local server

Hey guys, thanks for the awesome annotation tool.

  1. Is there a way to use Label-Me similar to M-turk mode but used within the organisation via LAN?. I mean asking the human workers in the organisation to label the images using Label-Me which is running on a local server?
  2. One idea to make the above possible is to host label me on a local server and ask the workers to sign in with different usernames and label
  3. The main problem is in determining the accuracy of the labelling by different workers . Is it possible to do something like this using label me?

or any other suggestions on determining the accuracy of labelling?
Thanks in advance.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.