Intel出品开源图片标注工具CVAT在Ubuntu18.04上部署
OPENCV官方出品开源图片标注工具CVAT在Ubuntu18.04上部署
- docker和docker-compose的安装
- 修改apt-get国内镜像源(网上一大把,我也是抄的)
- apt-get update
- 安装docker和docker-compose
- 配置docker 国内镜像源
- 下载并修改cvat
- 下载
- 修改
- Dockerfile
- 修改基础镜像
- 添加apt-get国内镜像源
- 添加pip国内镜像
- 替换ffmpeg和openh264
- 修改后的完整版
- Dockerfile.ui
- 修改alpine国内镜像源
- 修改npm镜像源
- 修改后的完整代码
- docker-compose.yml
- 添加自己的端口
- 磁盘挂载(还有另一种[方法](https://github.com/openvinotoolkit/cvat/blob/master/cvat/apps/documentation/installation.md#share-path))
- 修改base.txt
- 制作镜像及运行
- build
- run
- 创建管理员账户
- 方法一
- 方法二
- 最后
- 参考文献
- CVAT标注工具是我测试那么多中算是非常强大的,可以去他官网体验一下。
- 目前github上的cvat需要成20.04的ubuntu系统了,但是出于一些考虑还是换成18.04的吧。
- 最新有需要需要部署一下,踩了无数的坑(主要原因就是不能翻墙,下东西慢得一匹,所以经常会timeout,然后就完犊子了)。闲话就不瞎扯了
docker和docker-compose的安装
若是本地以及安装好了,就直接跳过,注意最好docker的仓库换成国内的镜像源,否则中间死了就完蛋了
修改apt-get国内镜像源(网上一大把,我也是抄的)
把下面的代码复制到到终端运行就好了。我用的是aliyun的镜像,当然你也可以自己百度搜其他的镜像源,注意一定要是ubuntu18.04的镜像源
apt镜像源替换的核心就是修改/etc/apt/source.txt
至于我为啥非得这么麻烦的弄,是为了后面直接复制。
mv /etc/apt/sources.list /etc/apt/sources.list.bak && \
echo "deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse" >>/etc/apt/sources.list && \
echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse" >>/etc/apt/sources.list && \
echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse" >>/etc/apt/sources.list && \
echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse" >>/etc/apt/sources.list && \
echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse" >>/etc/apt/sources.list && \
echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse" >>/etc/apt/sources.list && \
echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse" >>/etc/apt/sources.list && \
echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse" >>/etc/apt/sources.list && \
echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse" >>/etc/apt/sources.list
apt-get update
apt-get update
一般来说这一步不会有问题,但是倒霉的我还是遇到了问题,当时给我装系统的系统盘估计有问题,时间怎么都不对,所以若是该步骤出现了问题,那就date看看你的时间对不对。若是没问题就继续往下走,忽略我这一块的。
若是时间有问题可以用以下两个命令修改,这个是强行修改,就跟你调表一样,对不对就看你调,时间只要不差个好几天估计都没问题吧,我没试。
date -s day/mon/year
date -s hour:mini:sec
这个时间一定要修改,因为镜像里面的时间是读取的外面的时间,外面不对,到镜像里面一定不对。
安装docker和docker-compose
sudo apt install apt-transport-https ca-certificates software-properties-common curlcurl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) stable"sudo apt updatesudo apt install -y docker-ce docker-ce-cli containerd.iopip install docker-compose -i https://pypi.tuna.tsinghua.edu.cn/simplesudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
配置docker 国内镜像源
在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件):
{
"registry-mirrors": [ "https://kfwkfulq.mirror.aliyuncs.com", "https://2lqq34jg.mirror.aliyuncs.com", "https://pee6w651.mirror.aliyuncs.com", "https://registry.docker-cn.com", "http://hub-mirror.c.163.com" ],
"dns": ["8.8.8.8","8.8.4.4"]
}
然后查看、启动或者重启一下docker
systemctl daemon-reload
systemctl status docker
systemctl start docker
systemctl restart docker
下载并修改cvat
下载
由于xx的网络实在是差,连git经常会中断,所以我是在windows环境下下载的,用这个网站downgit。
修改
修改主要是为了把其中的一些安装换成国内镜像源
Dockerfile
Dockerfile是主要修改的地方。但是核心就是更换源,更换已经下载好的安装包
修改基础镜像
将两处
FROM ubuntu:20.04
修改为
FROM ubuntu:18.04
经过实测,这样是ok的
添加apt-get国内镜像源
把上面那一段前面加上RUN之后添加到下面两个红色框位置
避免往前翻以及出错
RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse" >>/etc/apt/sources.list
添加pip国内镜像
RUN mkdir ~/.pip && echo "[global]" >>~/.pip/pip.conf && \echo "timeout = 6000" >>~/.pip/pip.conf && \echo "index-url = http://pypi.douban.com/simple/" >>~/.pip/pip.conf && \echo "extra-index-url = https://pypi.python.org/simple/" >>~/.pip/pip.conf && \echo "[install]" >>~/.pip/pip.conf && \echo "trusted-host=pypi.douban.com" >>~/.pip/pip.conf
在下图红色框位置添加上面部分
替换ffmpeg和openh264
由于其中需要安装的ffmpeg和openh264,然后又是从git上下载,真的会崩溃的,所以就自己下载好了,放在和Dockerfile同级目录下,然后修改Dockerfile图中位置的代码。下载方法我用的Downgit。
WORKDIR /tmp/openh264
COPY openh264-2.1.1.tar.gz /tmp/openh264/
RUN tar -zx --strip-components=1 -f openh264-${OPENH264_VERSION}.tar.gz && \make -j5 && make install PREFIX=${PREFIX} && make clean
WORKDIR /tmp/ffmpeg
COPY ffmpeg-4.3.1.tar.bz2 /tmp/ffmpeg/
RUN tar -jx --strip-components=1 -f ffmpeg-${FFMPEG_VERSION}.tar.bz2 && \./configure --disable-nonfree --disable-gpl --enable-libopenh264 --enable-shared --disable-static --prefix="${PREFIX}" && \make -j5 && make install && make distclean
其实就加了一个COPY的命令。
修改后的完整版
FROM ubuntu:18.04 as build-image
ARG http_proxy
ARG https_proxy
ARG no_proxy
ARG socks_proxy
ARG DJANGO_CONFIGURATION
RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse" >>/etc/apt/sources.list
RUN apt-get update && \DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends install -yq \apache2-dev \build-essential \curl \libldap2-dev \libsasl2-dev \nasm \git \pkg-config \python3-dev \python3-pip \python3-venv && \rm -rf /var/lib/apt/lists/*
# Compile Openh264 and FFmpeg
ARG PREFIX=/opt/ffmpeg
ARG PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
ENV FFMPEG_VERSION=4.3.1 \OPENH264_VERSION=2.1.1
WORKDIR /tmp/openh264
COPY openh264-2.1.1.tar.gz /tmp/openh264/
# RUN tar -zx --strip-components=1 -f openh264-${OPENH264_VERSION}.tar.gz && \
# make -j5 && make install PREFIX=${PREFIX} && make clean
WORKDIR /tmp/ffmpeg
COPY ffmpeg-4.3.1.tar.bz2 /tmp/ffmpeg/
RUN tar -jx --strip-components=1 -f ffmpeg-${FFMPEG_VERSION}.tar.bz2 && \./configure --disable-nonfree --disable-gpl --enable-shared --disable-static --prefix="${PREFIX}" && \make -j5 && make install && make distclean
# Install requirements
RUN python3 -m venv /opt/venv
ENV PATH="/opt/venv/bin:${PATH}"
#RUN python3 -m pip install --no-cache-dir Cython==0.27.3
RUN mkdir ~/.pip && echo "[global]" >>~/.pip/pip.conf && \echo "timeout = 6000" >>~/.pip/pip.conf && \echo "index-url = http://pypi.douban.com/simple/" >>~/.pip/pip.conf && \echo "extra-index-url = https://pypi.python.org/simple/" >>~/.pip/pip.conf && \echo "[install]" >>~/.pip/pip.conf && \echo "trusted-host=pypi.douban.com" >>~/.pip/pip.conf
RUN python3 -m pip install --no-cache-dir -U pip==20.0.1 setuptools==49.6.0 wheel==0.35.1
COPY cvat/requirements/ /tmp/requirements/
RUN DATUMARO_HEADLESS=1 python3 -m pip install --no-cache-dir -r /tmp/requirements/${DJANGO_CONFIGURATION}.txt
#RUN python3 /tmp/requirements/datumaro-master/setup.py build
FROM ubuntu:18.04
ARG http_proxy
ARG https_proxy
ARG no_proxy
ARG socks_proxy
ARG TZ
ENV TERM=xterm \http_proxy=${http_proxy} \https_proxy=${https_proxy} \no_proxy=${no_proxy} \socks_proxy=${socks_proxy} \LANG='C.UTF-8' \LC_ALL='C.UTF-8' \TZ=${TZ}
ARG USER
ARG DJANGO_CONFIGURATION
ENV DJANGO_CONFIGURATION=${DJANGO_CONFIGURATION}
RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse" >>/etc/apt/sources.list && \echo "deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse" >>/etc/apt/sources.list
# Install necessary apt packages
RUN apt-get update && \DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends install -yq \apache2 \libapache2-mod-xsendfile \supervisor \libldap-2.4-2 \libsasl2-2 \libpython3-dev \tzdata \python3-distutils \p7zip-full \git \git-lfs \poppler-utils \ssh \curl && \ln -fs /usr/share/zoneinfo/${TZ} /etc/localtime && \dpkg-reconfigure -f noninteractive tzdata && \rm -rf /var/lib/apt/lists/* && \echo 'application/wasm wasm' >> /etc/mime.types
ARG CLAM_AV
ENV CLAM_AV=${CLAM_AV}
RUN if [ "$CLAM_AV" = "yes" ]; then \apt-get update && \apt-get --no-install-recommends install -yq \clamav \libclamunrar9 && \sed -i 's/ReceiveTimeout 30/ReceiveTimeout 300/g' /etc/clamav/freshclam.conf && \freshclam && \chown -R ${USER}:${USER} /var/lib/clamav && \rm -rf /var/lib/apt/lists/*; \fi
# Add a non-root user
ENV USER=${USER}
ENV HOME /home/${USER}
RUN adduser --shell /bin/bash --disabled-password --gecos "" ${USER} && \if [ -z ${socks_proxy} ]; then \echo export "GIT_SSH_COMMAND=\"ssh -o StrictHostKeyChecking=no -o ConnectTimeout=30\"" >> ${HOME}/.bashrc; \else \echo export "GIT_SSH_COMMAND=\"ssh -o StrictHostKeyChecking=no -o ConnectTimeout=30 -o ProxyCommand='nc -X 5 -x ${socks_proxy} %h %p'\"" >> ${HOME}/.bashrc; \fi
ARG INSTALL_SOURCES='no'
WORKDIR ${HOME}/sources
RUN if [ "$INSTALL_SOURCES" = "yes" ]; then \sed -Ei 's/^# deb-src /deb-src /' /etc/apt/sources.list && \apt-get update && \dpkg --get-selections | while read -r line; do \package=$(echo "$line" | awk '{print $1}'); \mkdir "$package"; \( \cd "$package"; \apt-get -q --download-only source "$package"; \) \done && \rm -rf /var/lib/apt/lists/*; \fi
# COPY --from=build-image /tmp/openh264/openh264*.tar.gz /tmp/ffmpeg/ffmpeg*.tar.bz2 ${HOME}/sources/
# Copy python virtual enviroment and FFmpeg binaries from build-image
COPY --from=build-image /opt/venv /opt/venv
ENV PATH="/opt/venv/bin:${PATH}"
COPY --from=build-image /opt/ffmpeg /usr
# Install and initialize CVAT, copy all necessary files
COPY --chown=${USER} components /tmp/components
COPY --chown=${USER} ssh ${HOME}/.ssh
COPY --chown=${USER} supervisord.conf mod_wsgi.conf wait-for-it.sh manage.py ${HOME}/
COPY --chown=${USER} cvat/ ${HOME}/cvat
COPY --chown=${USER} utils/ ${HOME}/utils
COPY --chown=${USER} tests/ ${HOME}/tests
# RUN all commands below as 'django' user
USER ${USER}
WORKDIR ${HOME}
RUN mkdir data share media keys logs /tmp/supervisord
RUN python3 manage.py collectstatic
EXPOSE 8080
ENTRYPOINT ["/usr/bin/supervisord"]
Dockerfile.ui
Dockerfile.ui和Dockerfile一样,只是这里修改的是npm和apt的镜像源
修改alpine国内镜像源
添加清华镜像源
RUN echo "https://mirror.tuna.tsinghua.edu.cn/alpine/v3.4/main" > /etc/apk/repositories \&& echo "https://mirror.tuna.tsinghua.edu.cn/alpine/v3.4/community" >> /etc/apk/repositories \&& echo "https://mirror.tuna.tsinghua.edu.cn/alpine/edge/testing" >> /etc/apk/repositories
在红框位置添加上述代码
修改npm镜像源
添加淘宝镜像源
RUN npm config set registry https://registry.npm.taobao.org && \npm config get registry && \npm config set phantomjs_cdnurl https://npm.taobao.org/dist/phantomjs
在红框位置添加上述代码
修改后的完整代码
FROM node:lts-alpine AS cvat-ui
ARG http_proxy
ARG https_proxy
ARG no_proxy
ARG socks_proxy
ARG PUBLIC_INSTANCE
ARG WA_PAGE_VIEW_HIT
ENV TERM=xterm \http_proxy=${http_proxy} \https_proxy=${https_proxy} \no_proxy=${no_proxy} \socks_proxy=${socks_proxy} \LANG='C.UTF-8' \LC_ALL='C.UTF-8'
RUN echo "https://mirror.tuna.tsinghua.edu.cn/alpine/v3.4/main" > /etc/apk/repositories \&& echo "https://mirror.tuna.tsinghua.edu.cn/alpine/v3.4/community" >> /etc/apk/repositories \&& echo "https://mirror.tuna.tsinghua.edu.cn/alpine/edge/testing" >> /etc/apk/repositories
RUN apk add python3 g++ make --no-cache
# Install dependencies
COPY cvat-core/package*.json /tmp/cvat-core/
COPY cvat-canvas/package*.json /tmp/cvat-canvas/
COPY cvat-ui/package*.json /tmp/cvat-ui/
COPY cvat-data/package*.json /tmp/cvat-data/
RUN npm config set registry https://registry.npm.taobao.org && \npm config get registry && \npm config set phantomjs_cdnurl https://npm.taobao.org/dist/phantomjs
# Install cvat-data dependencies
WORKDIR /tmp/cvat-data/
RUN npm ci
# Install cvat-core dependencies
WORKDIR /tmp/cvat-core/
RUN npm ci
# Install cvat-canvas dependencies
WORKDIR /tmp/cvat-canvas/
RUN npm ci
# Install cvat-ui dependencies
WORKDIR /tmp/cvat-ui/
RUN npm ci
# Build source code
COPY cvat-data/ /tmp/cvat-data/
COPY cvat-core/ /tmp/cvat-core/
COPY cvat-canvas/ /tmp/cvat-canvas/
COPY cvat-ui/ /tmp/cvat-ui/
RUN npm run build
FROM nginx:stable-alpine
# Replace default.conf configuration to remove unnecessary rules
RUN sed -i "s/}/application\/wasm wasm;\n}/g" /etc/nginx/mime.types
COPY cvat-ui/react_nginx.conf /etc/nginx/conf.d/default.conf
COPY --from=cvat-ui /tmp/cvat-ui/dist /usr/share/nginx/html/
docker-compose.yml
添加自己的端口
在cvat下添加
cvat:ports:- 'xxx.xxx.xxx.xx:9000:8080'
在cvat-proxy下修改
cvat-proxy:environment:CVAT_HOST: xx.xxx.xxx.xxx
磁盘挂载(还有另一种方法)
这一项是可选项,个人建议可以加上,目的是直接在容器挂载本地磁盘,而且将其作为一个容器。
在后续使用创建task的时候就可以在这直接选了
修改方式直接在对应位置添加该部分。然后就会把宿主机的/mnt/share映射为/root。应该还有其他方法,就暂时没有更多的尝试了。
version: '3.3'services:cvat:environment:CVAT_SHARE_URL: 'Mounted from /mnt/share host directory'volumes:- cvat_share:/home/django/share:rovolumes:cvat_share:driver_opts:type: nonedevice: /mnt/shareo: bind
修改base.txt
由于用到了tensorflow,然后里面又调用了opencv自己github上的开源项目datumaro,所以在base中调用了git。
修改方式:
https == >http
否则会超时
注意
说到这就需要提一下前修改pip的源的时候一定要将pip官方源加上,否则安装datumaro需要安装Cython,很多国内镜像没有
制作镜像及运行
build
准备了N多久,总算到生成镜像这一步了。这一部分没有多说的,根据官方的Quick installation guide来就行
docker-compose build
中间卡住了就ctrl + C中断就好,然后再来一遍,会接着之前的位置进行处理。中途修改了Dockerfile就会从修改处接着开始。
run
docker-compose up -d
创建管理员账户
方法一
docker exec -it cvat bash -ic 'python3 ~/manage.py createsuperuser'
有可能会报错
错误信息是:LINE 1: …user".“is_active”, “auth_user”.“date_joined” FROM "auth_user…
再来一遍就好
顺利执行会让你输入用户名、邮箱、密码。
方法二
登陆http:xxx.xxx.xxx.xxx:/9000/admin添加
最后
然后你就可以happy的在http:xxx.xxx.xxx.xxx:/8080下创建任务标注了。
相比于官方的版本少了models和analysis。models可以自己加一下model就好,analysis就不知道了。
参考文献
docker的安装、更换国内镜像源、项目部署
cvat官方文档
标注环境CVAT在Ubuntu18.04下搭建
Intel出品开源图片标注工具CVAT在Ubuntu18.04上部署相关推荐
- OpenCV开发团队开源计算机视觉标注工具CVAT
OpenCV开发团队开源计算机视觉标注工具Computer Vision Annotation Tool (CVAT) 同时支持图像和视频的标注,最大特点是专业!专业团队做的专业水准的工具! (关注& ...
- 构想:中文文本标注工具(内附多个开源文本标注工具)
■ 项目地址 | https://github.com/crownpku/Chinese-Annotator 自然语言处理的大部分任务是监督学习问题.序列标注问题如中文分词.命名实体识别,分类问题如关 ...
- python图像标记工具怎么用_图片标注工具LabelImg使用教程
1.进入labelImg-master文件夹,在空白处使用 "Shift+鼠标右键" ,选择在此处打开命令窗口,依次输入下面语句即可打开软件. pyrcc4 -o resource ...
- CV之LabelImg:图片标注工具之LabelImg(图像标注工具)的简介、安装、使用方法详细攻略
CV之LabelImg:图片标注工具之LabelImg(图像标注工具)的简介.安装.使用方法详细攻略 目录 LabelImg的简介 常见的图片标注工具 LabelImg trainingImageLa ...
- VOC数据集图片标注工具labelImg简介、安装、使用方法详细攻略(windows) PyQt4、PyQt5
参考文章1:labelImg:图片标注工具之labelImg的简介.安装.使用方法详细攻略 参考文章2:LabelImg labelImg的安装 用gitbash打开,运行git clone http ...
- 图片标注工具 LabelImg 使用教程
转自:http://blog.csdn.net/jesse_mx/article/details/53606897 作者:Jesse_Mx ------------------------------ ...
- 图片标注工具LabelImg的安装及使用方法
项目地址:LabelImg 下载地址:Windows/Linux 百度云备份:最近几个版本 密码: cnn6 前言 我们知道,图片标注主要是用来创建自己的数据集,方便进行深度学习训练.本篇博客将推 ...
- 图片标注工具LabelImg的简单安装
前言 最近要用到图片标注工具LabelImg来创建导师的数据集,方便进行 深度学习训练.这款工具是全图形界面,用Python和Qt写的,最牛的是其标注信息可以直接转化成为XML文件,与PASCAL V ...
- YOLOV5目标检测---labelimg图片标注工具(1)
前言:在使用YOLO训练自己模型的时候首先要学会对数据进行处理,这里介绍一个常用的本地打标签工具labelimg,如果不想按照的话也可以使用在线标签工具,因为害怕数据泄露,所以本人一直使用的是本地工具 ...
- 用java的swing写了个图片标注工具
功能说明: 1 鼠标单击:选取裁剪区域 2 鼠标双击:选取裁剪区域,并把裁剪区域保存为文件,同时把区域中心点的坐标保存 3 打开图片:从某个文件夹打开图片并显示,同时把该目录的所有图片的路径载进来.这 ...
最新文章
- 【imx6】/dev中fb和video的对应关系
- 团队-团队编程项目作业名称-模块开发过程
- Python3中 对local和nonlocal 关键字的改善认识(新手向)
- MySQL学习记录 (二) ----- SQL数据查询语句(DQL)
- 【医疗影像处理】使用GMM分割3D T1得到wm/gm/csf/background
- 算法复习周------“动态规划之‘图像压缩’”
- Scanner、String(java基础知识十二)
- 15、孪生网络与相似度
- 如何制作纯净的U盘启动盘
- 在Word文档中快速插入水平线
- git reset,rebase,amend 使用实战
- 想做数据分析,都需要学些什么?
- Markdown快速入门
- AB PLC 1769模拟量模块量程转换
- 机动车号牌查询, 在线查询, api 查询
- shp文件格式说明(二)
- 如何在CSDN博客中上传图片
- 2016年最经典的高仿系列源码打包下载4.84G
- qlv文件是什么?qlv文件格式介绍
- 基于微信共享充电桩小程序系统设计与实现 开题报告
热门文章
- 计算当前时间到午夜零点的时间差——Java(JDK1.8)
- win7网络适配器_win7网络重置
- Cisco Packet Tracer路由器的基本命令
- 一个人的行动力,取决于他的底层信念。
- 电脑香港,香港购物:在HK买笔记本电脑都要注意什么?
- 安装pytorch1.10.0/cu111时报错:no matching distribution found for torchvision==0.11.0+cu111
- 笔记本电脑无线网络连接不上怎么办
- Delphi XE E2251 Ambiguous overloaded call to ‘StrPas‘错误处理
- 老司机教你下载tumblr上视频和图片的正确姿势
- 判断无线网卡是否支持监听模式