javacollection_java freemarker

javacollection_java freemarkerlabelmeImagePolygonalAnnotationwithPythonDescriptionLabelmeisagraphicalimageannotationtoolinspiredbyhttp://labelme.csail.mit.edu.ItiswritteninPythonandusesQtforitsgraphica…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

d1e00e0e3adb25fefbda01430efbec37.png

labelme

Image Polygonal Annotation with Python

labelme.svg

labelme.svg

badge.svg?branch=master&event=push

labelme.svg

db9cf80904a89bac0d2060cef7e0833c.png

Description

Labelme is a graphical image annotation tool inspired by http://labelme.csail.mit.edu.

It is written in Python and uses Qt for its graphical interface.

36b38921df0767e20e5bd3b0cd03b835.png

6cddf320dd27f0a00e5029da7cf95c22.png

47df370482364633e8ab6097c90d454d.png

9a7e9a3fd4e889a1fa6880e1188e8e82.png

3e39eea9e50a92c3d306bb6eced87eed.png

VOC dataset example of instance segmentation.

ac1de5a5fa9c3c76c160e0040fc04325.png

annotation.jpg

01d09cace16162b7f5118931d5fa461c.png

Other examples (semantic segmentation, bbox detection, and classification).

b6a1a5512c4e2e11bc330be5655390f7.gif

c4b6bb6548e1c11d85540d2b3fde6352.gif

a3290b699cca1b81174ed928820070ed.png

Various primitives (polygon, rectangle, circle, line, and point).

Features

Image annotation for polygon, rectangle, circle, line and point. (tutorial)

Image flag annotation for classification and cleaning. (#166)

Video annotation. (video annotation)

GUI customization (predefined labels / flags, auto-saving, label validation, etc). (#144)

Exporting VOC-format dataset for semantic/instance segmentation. (semantic segmentation, instance segmentation)

Exporting COCO-format dataset for instance segmentation. (instance segmentation)

Requirements

Ubuntu / macOS / Windows

Python2 / Python3

Installation

There are options:

Platform agonistic installation: Anaconda, Docker

Platform specific installation: Ubuntu, macOS, Windows

Anaconda

You need install Anaconda, then run below:

# python2

conda create –name=labelme python=2.7

sourceactivate labelme

# conda install -c conda-forge pyside2

conda installpyqt

pip installlabelme

# 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

sourceactivate labelme

# conda install -c conda-forge pyside2

# conda install pyqt

# pip install pyqt5 # pyqt5 can be installed via pip on python3

pip installlabelme

# or you can install everything by conda command

# conda install labelme -c conda-forge

Docker

You need install docker, then run below:

# on macOS

socat TCP-LISTEN:6000,reuseaddr,fork UNIX-CLIENT:\”$DISPLAY\” &

docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=docker.for.mac.host.internal:0 -v $(pwd):/root/workdir wkentaro/labelme

# on Linux

xhost +

docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=:0 -v $(pwd):/root/workdir wkentaro/labelme

Ubuntu

# Ubuntu 14.04 / Ubuntu 16.04

# Python2

# sudo apt-get install python-qt4 # PyQt4

sudoapt-get installpython-pyqt5 # PyQt5

sudopip installlabelme

# Python3

sudoapt-get installpython3-pyqt5 # PyQt5

sudopip3 installlabelme

Ubuntu 19.10+ / Debian (sid)

sudoapt-get installlabelme

macOS

# macOS Sierra

brew installpyqt # maybe pyqt5

pip installlabelme # both python2/3 should work

# or install standalone executable / app

# NOTE: this only installs the `labelme` command

brew installwkentaro/labelme/labelme

brew cask installwkentaro/labelme/labelme

Windows

Install Anaconda, then in an Anaconda Prompt run:

# python3

conda create –name=labelme python=3.6

conda activate labelme

pip installlabelme

Usage

Run labelme –help for detail.

The annotations are saved as a JSON file.

labelme # just open gui

# tutorial (single image example)

cdexamples/tutorial

labelme apc2016_obj3.jpg # specify image file

labelme apc2016_obj3.jpg -O apc2016_obj3.json # close window after the save

labelme apc2016_obj3.jpg –nodata # not include image data but relative image path in JSON file

labelme apc2016_obj3.jpg \

–labels highland_6539_self_stick_notes,mead_index_cards,kong_air_dog_squeakair_tennis_ball # specify label list

# semantic segmentation example

cdexamples/semantic_segmentation

labelme data_annotated/ # Open directory to annotate all images in it

labelme data_annotated/ –labels labels.txt # specify label list with a file

For more advanced usage, please refer to the examples:

Command Line Arguments

–output specifies the location that annotations will be written to. If the location ends with .json, a single annotation will be written to this file. Only one image can be annotated if a location is specified with .json. If the location does not end with .json, the program will assume it is a directory. Annotations will be stored in this directory with a name that corresponds to the image that the annotation was made on.

The first time you run labelme, it will create a config file in ~/.labelmerc. You can edit this file and the changes will be applied the next time that you launch labelme. If you would prefer to use a config file from another location, you can specify this file with the –config flag.

Without the –nosortlabels flag, the program will list labels in alphabetical order. When the program is run with this flag, it will display labels in the order that they are provided.

Flags are assigned to an entire image. Example

Labels are assigned to a single polygon. Example

FAQ

How to convert JSON file to numpy array? See examples/tutorial.

How to load label PNG file? See examples/tutorial.

How to get annotations for semantic segmentation? See examples/semantic_segmentation.

How to get annotations for instance segmentation? See examples/instance_segmentation.

Testing

pip installhacking pytest pytest-qt

flake8 .

pytest -v tests

Developing

git clone https://github.com/wkentaro/labelme.git

cdlabelme

# Install anaconda3 and labelme

curl -L https://github.com/wkentaro/dotfiles/raw/master/local/bin/install_anaconda3.sh | bash -s .

source .anaconda3/bin/activate

pip install -e .

How to build standalone executable

Below shows how to build the standalone executable on macOS, Linux and Windows.

Also, there are pre-built executables in

the release section.

# Setup conda

conda create –name labelme python==3.6.0

conda activate labelme

# Build the standalone executable

pip install .

pip installpyinstaller

pyinstaller labelme.spec

dist/labelme –version

Acknowledgement

This repo is the fork of mpitid/pylabelme,

whose development has already stopped.

Cite This Project

If you use this project in your research or wish to refer to the baseline results published in the README, please use the following BibTeX entry.

@misc{labelme2016,

author = {Kentaro Wada},

title = {
{labelme: Image Polygonal Annotation with Python}},

howpublished = {\url{https://github.com/wkentaro/labelme}},

year = {2016}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194785.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 国产自动化测试工具「建议收藏」

    国产自动化测试工具「建议收藏」软件测试工具一直是国外的占据了主流!国内鲜有自主研发的。但是最近几年国内逐渐出现了几个,也许发展下去可以与国外主流软件测试工具厂商一较高下。 AutoRunnerhttp://www.spasvo.com/泽众软件TAR终端自动化测试工具宣称是国内最好的银行业务测试工具。 Tester360http://www.tester360.com/亚

    2022年6月5日
    50
  • 高可用高性能分布式文件系统FastDFS实践Java程序

    高可用高性能分布式文件系统FastDFS实践Java程序

    2022年3月13日
    51
  • java socket 实现原理_java socket原理

    java socket 实现原理_java socket原理TCP/IP模型中有5层结构:应用层、传输层、网络层、数据链路层以及物理层。其中IP协议是位于网络层的,TCP协议是位于传输层的,通过IP协议可以使两台计算机使用同一种语言,从而允许Internet上连接不同类型的计算机和不同的操作系统的网络,IP协议只能保证计算机能够接收和发送分组数据,当计算机要和远程的计算机建立连接时,TCP协议会让它们建立连接:用于发送和接收数据的虚拟电路。在Java中…

    2022年7月7日
    15
  • Selenium2+python自动化48-登录方法(参数化)

    Selenium2+python自动化48-登录方法(参数化)

    2022年3月2日
    42
  • ATECC508A芯片开发笔记(七):实现数字签名(Sign)并校验(Verify)证书签名

    ATECC508A芯片开发笔记(七):实现数字签名(Sign)并校验(Verify)证书签名ATECC508A芯片开发笔记(七):实现对数据数字签名(Sign)并验证(Verify)证书签名一、数据签名、验证基本流程二、利用508对数据签名并验证代码实现:三、X.509证书验证本节介绍利用508对证书数据进行签名、验证的步骤和原理。一、数据签名、验证基本流程由网络安全知识我们知道,对数据进行签名,其实就是用私钥加密而已,而验证签名就是用该私钥对应的公钥进行解密。而如果对整个数

    2022年6月12日
    29
  • HTML 空格转义符的用法

    HTML 空格转义符的用法记录一下,空格的转义字符分为如下几种:1. &160#;不断行的空白(1个字符宽度)2. &8194#;半个空白(1个字符宽度)3.&a

    2022年8月6日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号