Coder Social home page Coder Social logo

xtreme1-io / xtreme1 Goto Github PK

View Code? Open in Web Editor NEW
728.0 29.0 114.0 48.84 MB

Xtreme1 is an all-in-one data labeling and annotation platform for multimodal data training and supports 3D LiDAR point cloud, image, and LLM.

Home Page: https://www.basic.ai

License: Apache License 2.0

Dockerfile 0.03% Java 11.36% HTML 2.72% Vue 26.22% CSS 0.61% TypeScript 35.38% JavaScript 22.37% Less 1.31% Shell 0.01%
annotation-tool annotation computer-vision image-annotation image-classification image-labelling-tool labeling-tool 3d-annotation point-cloud rlhf multimodal

xtreme1's Introduction

Xtreme1 logo

Twitter Online Docs

Use Cloud for Free

Intro

Xtreme1 is an all-in-one open-source platform for Multimodal training data.

Xtreme1 unlocks efficiency in data annotation, curation, and ontology management for tackling machine learning challenges in computer vision and LLM. The platform's AI-fueled tools elevate your annotation to the next efficiency level, powering your projects in 2D/3D Object Detection, 3D Instance Segmentation, and LiDAR-Camera Fusion like never before.

A long-term free plan is offered in the Xtreme1 Cloud version. Click to 🎉 Use Cloud for Free.

Documentation

🎆 Welcome aboard! If you have any questions or doubts about features, installation, development, and deployment, you can always refer to our documentation.

📙 Find our docs here!

Find Us

Twitter | Medium | Issues

Key features

Image Annotation (B-box, Segmentation) - YOLOR & RITM Lidar-camera Fusion Annotation - OpenPCDet & AB3DMOT

1️⃣ Supports data labeling for images, 3D LiDAR and 2D/3D Sensor Fusion datasets

2️⃣ Built-in pre-labeling and interactive models support 2D/3D object detection, segmentation and classification

3️⃣ Configurable Ontology Center for general classes (with hierarchies) and attributes for use in your model training

4️⃣ Data management and quality monitoring

5️⃣ Find labeling errors and fix them

6️⃣ Model results visualization to help you evaluate your model

7️⃣ RLHF for Large Language Models 🆕 (beta version)

Image Data Curation (Visualizing & Debug) - MobileNetV3 & openTSNE RLHF Annotation tool for LLM (beta version)

Quick start

Download package

Download the latest release package and unzip it.

wget https://github.com/xtreme1-io/xtreme1/releases/download/v0.9.1/xtreme1-v0.9.1.zip
unzip -d xtreme1-v0.9.1 xtreme1-v0.9.1.zip

Start all services

docker compose up

Visit http://localhost:8190 in the browser (Google Chrome is recommended) to try out Xtreme1!

⚠️ Install built-in models

You need to explicitly specify a model profile to enable model services.

docker compose --profile model up

Enable model services

Make sure you have installed NVIDIA Driver and NVIDIA Container Toolkit. But you do not need to install the CUDA Toolkit, as it already contained in the model image.

# You need set "default-runtime" as "nvidia" in /etc/docker/daemon.json and restart docker to enable NVIDIA Container Toolkit
{
  "runtimes": {
    "nvidia": {
      "path": "nvidia-container-runtime",
      "runtimeArgs": []
    }
  },
  "default-runtime": "nvidia"
}

If you use Docker Desktop + WSL2.0, please find this issue #144 for your reference.

License

This software is licensed under the Apache 2.0 LICENSE. Xtreme1 is a trademark of LF AI & Data Foundation.

Xtreme1 is now hosted in LF AI & Data Foundation as the 1st open source data labeling annotation and visualization project.

If Xtreme1 is part of your development process / project / publication, please cite us ❤️ :

@misc{Xtreme1,
title = {Xtreme1 - The Next GEN Platform For Multisensory Training Data},
year = {2023},
note = {Software available from https://github.com/xtreme1-io/xtreme1/},
url={https://xtreme1.io/},
author = {LF AI & Data Foundation},
}

xtreme1's People

Contributors

butterflyzh avatar chanyoung1998 avatar chasingw avatar chengang4505 avatar chua1989 avatar fanyinbo avatar guhaomine avatar jaggerwang avatar jotamotk avatar jzdmurmwzezh avatar nicozhan avatar raincolor avatar ruovan avatar sccassiel avatar swa07016 avatar wuyudian1 avatar zfcstring avatar zhangfc846072 avatar zhangxuefengtest 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

xtreme1's Issues

xtreme1 very close to the system I want to design and implement

Sorry for not being able to use English, I have a lot of ideas and translating them will take up a lot of my time

此issue的目的只是为了表达我激动愉悦的心情!!

在我的实际项目中,误识别数据和新数据的不断加入是我提高模型准确率和召回率的重要方式,而没有一个类似的系统,依靠人工不断地搬移数据,运行脚本等工作让人厌烦。我希望通过web界面去实现这些枯燥且重复的工作。

我设计并实现了一个系统

  • 基础的用户管理,包括标注人员以及训练管理人员

  • 灵活的数据标注管理及版本控制系统,(我试图移植嵌入一个现成的web标注软件比如CVAT,但是这些软件存在一些限制,他们API为了方便管理使用了task类似的单元去管理数据,并且不支持动态的增加删除数据,只能增加新的task。而我希望一切以数据集为单元展开,新的数据能够很方便的集成进我的数据集,于是我在fastapi上实现了一套以git为为支撑的后端,实现了数据灵活的改动,又不会使数据的管理混乱),而由于我不熟悉前端知识,我使用了低代码工具appsimth作为web的实现

  • 并且我的模型基于指定版本的git提交进行训练,数据和模型变得很好回溯和重现

  • 在训练完模型后,有一个简单的精度评估和统计,以及可视化测试

  • 一键部署功能将模型打包成onnx文件上传到gitlab的package中供实际项目使用

  • 我暂时只集成了yolov5到我的系统中,我考虑过使用openmmlab作为我的模型训练后端mmdeploy作为推理转换后端,但是因为mmdeploy目前基本没有实现dynamic的tensorrt转换,所以我展示搁置了。因为我的项目中使用triton作为推理引擎,所以我需要模型最后能够被转换到triton(需要dynamic batch提高吞吐量)上运行,yolov5能够实现这一点。但是实现openmmlab作为训练后端是一件很酷的事情,我只需要关注数据本身,以极小的代价就能享受很多先进模型的能力,并且openmmlab的社区非常活跃,mmdeploy也在慢慢成熟,我打算实际项目中实现一个以mmdeploy sdk为基础的推理服务,然后再尝试集成openmmlab,这非常酷

  • 提供一些界面
    image
    image
    image

  • xtreme1目前实现的功能非常酷,我觉得实现预期的功能后,能够很大的帮助到模型落地应用,或者科研的工作者们,让程序员们不再需要对着枯燥的终端开发,我觉的能把openmmlab的配置文件通过web界面修改并且运行是一件很酷的事情,再集成数据的管理,感觉很让人期待,并且由于openmmlab的规范化设计,这些似乎并不是一件特别困难的事情

  • 我知道还有一些类似平台 NVIDIA TAO paddlepaddle也有类似的桌面软件好像

  • 我很希望能够帮助到你们完善这个项目,但是我的coding能力和时间,还不太能支持,但希望我得经验也能给你们提供一点帮助

  • 如果我说了一堆废话,希望你们可以只把这些看成我对这个项目的期待!!

  • 可以关闭这个issue在任何时候

如何将滚动显示变为分页?

我在整个文档中发现,滚动功能属于自定义封装,现在像将其改为分页,请问怎样做?
(我在其他文件中发现了分页功能的代码,但存在bug)

Unable to access app on remote server

I have deployed Xtreme1 app on a remote server, but when I accessed it by my own pc, it pops up an error.
It looks like calling a wrong host

image

Please fix this bug

filename with ":" shows "Load Resource Error"

If the filename contains ":" I am not able to view/annotate, it throws a "Load Resource Error". If I remove the ":" I am able to view/annotate. And filename with ":" is supported in Linux machines but not in Windows.

Usually, with rosbags the multimodal dataset has a ":" character in the filename, as it helps to synchronize the data with the exact time if it's necessary. It's quite a usual format to have.

filename = datetime.fromtimestamp(msg_timestamp).strftime('%Y-%m-%d_%H:%M:%S.%f')

Kindly fix this bug ASAP, thank you!

Selection_058
image

need frame series upload support

It seems frontend support frame series data. but now can't upload data for frame series. so how to upload data for frame series, Look forward for your reply, thanks

RuntimeError: CUDA error: no kernel image is available for execution on the device

Describe the bug
RuntimeError: CUDA error: no kernel image is available for execution on the device

To Reproduce
Steps to reproduce the behavior:

  1. Go to webui
  2. Click on 'Run Model'
  3. See the error

Additional context
After exec into the docker file, I found that it is due to the mismatched torch version. The installed version is torch==1.10.1+cu102, which only support to sm_70, but my 3090 need sm_86.

Extrinsic parameters for the annotation tool

Hi,

I am using the online version of your annotation tool and I would like to ask how did you calibrate the extrinsic parameter for camera and lidar? I have used the dataset from Dair-V2X (https://thudair.baai.ac.cn/index) and the calibration seems not quite accurate. Could you suggest some useful tools or methods for extrinsic parameter calibration? Thank you very much.

Hi, when I click on the help document, it does not pop up a new page but replaces the current page, which is very inconvenient for me. Can you separate the pages of the help document?

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Tutorial feedback

The tutorial is very important: it is the very first thing a user sees.
Please report here if anything does not work or is unclear.

Pointing out errors and contributing documentation are always welcome.

dependency failed to start: container xtreme1-minio-1 is unhealthy

I git clone the code install the enviroment, but when run the docker compose up, seems container xtreme1-nginx-1 and backend not running. Here are the console output

(base) ➜  xtreme1 git:(main) ✗ docker compose up                                                                                                                                                  [460/1816]
[+] Running 8/7                                                                                                                                                                                             
 ⠿ Container xtreme1-frontend-1                  Recreated                                                                                                                                             0.0s 
 ⠿ Container xtreme1-minio-1                     Created                                                                                                                                               0.0s 
 ⠿ Container xtreme1-pcd-tools-1                 Recreated                                                                                                                                             0.0s 
 ⠿ Container xtreme1-image-vect-visualization-1  Recreated                                                                                                                                             0.0s 
 ⠿ Container xtreme1-redis-1                     Recreated                                                                                                                                             0.0s 
 ⠿ Container xtreme1-mysql-1                     Recreated                                                                                                                                             0.0s 
 ⠿ Container xtreme1-backend-1                   Recreated                                                                                                                                             0.0s 
 ⠿ Container xtreme1-nginx-1                     Recreated                                                                                                                                             0.0s 
Attaching to xtreme1-backend-1, xtreme1-frontend-1, xtreme1-image-vect-visualization-1, xtreme1-minio-1, xtreme1-mysql-1, xtreme1-nginx-1, xtreme1-pcd-tools-1, xtreme1-redis-1                             
xtreme1-redis-1                     | 1:C 17 Feb 2023 04:34:54.128 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo                                                                                          
xtreme1-redis-1                     | 1:C 17 Feb 2023 04:34:54.128 # Redis version=6.2.10, bits=64, commit=00000000, modified=0, pid=1, just started                                                        
xtreme1-redis-1                     | 1:C 17 Feb 2023 04:34:54.128 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf    
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.129 * monotonic clock: POSIX clock_gettime                                                                                                   
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.130 * Running mode=standalone, port=6379.                                                                                                    
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.130 # Server initialized                                                                                                                     
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.130 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disa
bled, it can can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboo
t or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.                                                                                                                               
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.130 * Loading RDB produced by version 6.2.10                                                                                                 
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.130 * RDB age 57 seconds                                                                                                                     
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.130 * RDB memory usage when created 0.77 Mb                                                                                                  
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.130 # Done loading RDB, keys loaded: 0, keys expired: 0.                                                                                     
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.130 * DB loaded from disk: 0.000 seconds                                                                                                     
xtreme1-redis-1                     | 1:M 17 Feb 2023 04:34:54.130 * Ready to accept connections                                                                                                            
xtreme1-mysql-1                     | 2023-02-17 04:34:54+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.41-1.el7 started.                                                               
xtreme1-mysql-1                     | 2023-02-17 04:34:54+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'                                                                                    
xtreme1-mysql-1                     | 2023-02-17 04:34:54+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.41-1.el7 started.                                                               
xtreme1-mysql-1                     | '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock'                                                                                                          
xtreme1-mysql-1                     | 2023-02-17T04:34:54.985058Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documenta
tion for more details).                                                                                                                                                                                     
xtreme1-mysql-1                     | 2023-02-17T04:34:54.986665Z 0 [Note] mysqld (mysqld 5.7.41) starting as process 1 ...                                                                                 
xtreme1-mysql-1                     | 2023-02-17T04:34:54.990720Z 0 [Note] InnoDB: PUNCH HOLE support available                                                                                             
xtreme1-mysql-1                     | 2023-02-17T04:34:54.990743Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins                                                                             
xtreme1-mysql-1                     | 2023-02-17T04:34:54.990760Z 0 [Note] InnoDB: Uses event mutexes                                                                                                       
xtreme1-mysql-1                     | 2023-02-17T04:34:54.990764Z 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier                                                           
xtreme1-mysql-1                     | 2023-02-17T04:34:54.990768Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.12
xtreme1-mysql-1                     | 2023-02-17T04:34:54.990771Z 0 [Note] InnoDB: Using Linux native AIO
xtreme1-mysql-1                     | 2023-02-17T04:34:54.991114Z 0 [Note] InnoDB: Number of pools: 1
xtreme1-mysql-1                     | 2023-02-17T04:34:54.991233Z 0 [Note] InnoDB: Using CPU crc32 instructions
xtreme1-mysql-1                     | 2023-02-17T04:34:54.993617Z 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
xtreme1-mysql-1                     | 2023-02-17T04:34:55.004509Z 0 [Note] InnoDB: Completed initialization of buffer pool
xtreme1-mysql-1                     | 2023-02-17T04:34:55.006753Z 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority(
).
xtreme1-mysql-1                     | 2023-02-17T04:34:55.018855Z 0 [Note] InnoDB: Highest supported file format is Barracuda.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.027755Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
xtreme1-mysql-1                     | 2023-02-17T04:34:55.027811Z 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
xtreme1-mysql-1                     | 2023-02-17T04:34:55.046550Z 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.047440Z 0 [Note] InnoDB: 96 redo rollback segment(s) found. 96 redo rollback segment(s) are active.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.047452Z 0 [Note] InnoDB: 32 non-redo rollback segment(s) are active.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.047875Z 0 [Note] InnoDB: 5.7.41 started; log sequence number 12381345
xtreme1-mysql-1                     | 2023-02-17T04:34:55.048011Z 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool                                                                
xtreme1-mysql-1                     | 2023-02-17T04:34:55.048191Z 0 [Note] Plugin 'FEDERATED' is disabled.                                                                                                  
xtreme1-mysql-1                     | 2023-02-17T04:34:55.049981Z 0 [Note] InnoDB: Buffer pool(s) load completed at 230217  4:34:55                                                                         
xtreme1-mysql-1                     | 2023-02-17T04:34:55.054341Z 0 [Note] Found ca.pem, server-cert.pem and server-key.pem in data directory. Trying to enable SSL support using them.                     
xtreme1-mysql-1                     | 2023-02-17T04:34:55.054352Z 0 [Note] Skipping generation of SSL certificates as certificate files are present in data directory.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.054357Z 0 [Warning] A deprecated TLS version TLSv1 is enabled. Please use TLSv1.2 or higher.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.054372Z 0 [Warning] A deprecated TLS version TLSv1.1 is enabled. Please use TLSv1.2 or higher.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.055024Z 0 [Warning] CA certificate ca.pem is self signed.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.055080Z 0 [Note] Skipping generation of RSA key pair as key files are present in data directory.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.055375Z 0 [Note] Server hostname (bind-address): '*'; port: 3306
xtreme1-mysql-1                     | 2023-02-17T04:34:55.055499Z 0 [Note] IPv6 is available.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.055517Z 0 [Note]   - '::' resolves to '::';
xtreme1-mysql-1                     | 2023-02-17T04:34:55.055543Z 0 [Note] Server socket created on IP: '::'.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.056713Z 0 [Warning] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing
 a different directory.
xtreme1-mysql-1                     | 2023-02-17T04:34:55.065927Z 0 [Note] Event Scheduler: Loaded 0 events
xtreme1-mysql-1                     | 2023-02-17T04:34:55.066132Z 0 [Note] mysqld: ready for connections.
xtreme1-mysql-1                     | Version: '5.7.41'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server (GPL)
xtreme1-pcd-tools-1                 | 2023-02-17 04:34:55 INFO: -------------------- logging start --------------------
xtreme1-pcd-tools-1                 | 2023-02-17 04:34:55 INFO: LEVEL: INFO
xtreme1-pcd-tools-1                 | 2023-02-17 04:34:55 INFO: PATH:  /app/pcd_tools/server_logs/pid1
xtreme1-pcd-tools-1                 | 2023-02-17 04:34:55 INFO: -------------------------------------------------------
xtreme1-pcd-tools-1                 | 2023-02-17 04:34:55 INFO: ----- SERVER STARTED -----
xtreme1-frontend-1                  | Starting up http-server, serving ./ on port: 8080
xtreme1-frontend-1                  | Hit CTRL-C to stop the server
xtreme1-pcd-tools-1                 | Tornado server starting on port 5000
xtreme1-minio-1                     |  04:34:55.28 
xtreme1-minio-1                     |  04:34:55.28 Welcome to the Bitnami minio container
xtreme1-minio-1                     |  04:34:55.28 Subscribe to project updates by watching https://github.com/bitnami/containers
xtreme1-minio-1                     |  04:34:55.28 Submit issues and feature requests at https://github.com/bitnami/containers/issues
xtreme1-minio-1                     |  04:34:55.28 
xtreme1-minio-1                     |  04:34:55.28 INFO  ==> ** Starting MinIO setup **
xtreme1-minio-1                     | minio 04:34:55.30 WARN  ==> Certificates provided but 'http' scheme in use. Please set MINIO_SCHEME and/or MINIO_SERVER_URL variables
xtreme1-minio-1                     | minio 04:34:55.31 INFO  ==> Starting MinIO in background...
xtreme1-image-vect-visualization-1  | args : Namespace(device='cpu', embedding_bucket_name='embedding', img_vect_bucket_name='img-vect', minio_access_key='admin', minio_endpoint='minio:9000', minio_secret
_key='1tQB970y', point_bucket_name='point-set', port=5000, threads_in_pool=2, vect_dim=256)
xtreme1-image-vect-visualization-1  | client created
xtreme1-image-vect-visualization-1  | Tornado server starting on port 5000
xtreme1-minio-1                     | minio 04:35:00.34 INFO  ==> Adding local Minio host to 'mc' configuration...
xtreme1-minio-1                     | minio 04:35:00.40 INFO  ==> Creating default buckets...
xtreme1-minio-1                     | minio 04:35:00.46 INFO  ==> Bucket local/x1-community already exists, skipping creation.
xtreme1-minio-1                     | minio 04:35:00.51 INFO  ==> Stopping MinIO...
xtreme1-minio-1                     |  04:35:01.61 INFO  ==> ** MinIO setup finished! **
xtreme1-minio-1                     | 
xtreme1-minio-1                     | minio 04:35:01.63 INFO  ==> ** Starting MinIO **
xtreme1-minio-1                     | MinIO Object Storage Server
xtreme1-minio-1                     | Copyright: 2015-2022 MinIO, Inc.
xtreme1-minio-1                     | License: GNU AGPLv3 <https://www.gnu.org/licenses/agpl-3.0.html>
xtreme1-minio-1                     | Version: DEVELOPMENT.2022-09-01T23-53-36Z (go1.18 linux/amd64)
xtreme1-minio-1                     | 
xtreme1-minio-1                     | Status:         1 Online, 0 Offline.                                                                                                                                  
xtreme1-minio-1                     | API: http://localhost:9000                                                                                                                                            
xtreme1-minio-1                     | Console: http://172.18.0.6:9001 http://127.0.0.1:9001                                                                                                                 
xtreme1-minio-1                     |                                                                                                                                                                       
xtreme1-minio-1                     | Documentation: https://docs.min.io                                                                                                                                    
dependency failed to start: container xtreme1-minio-1 is unhealthy

Could you give me some advice how to locate the problem? thanks

Install Xtreme1 on a Mac with Apple silicon

My computer is a MacBook Air with Apple silicon/M1 Preview, I encountered several issues when installing Xtreme1. I will share them here.

  1. Download Docker Desktop for Mac with Apple silicon
    https://docs.docker.com/desktop/install/mac-install/

  2. Docker desktop for Mac does not want to start
    image
    --remove files
    $ rm -rf ~/Library/Containers/com.docker.*
    --modify configuration
    $ vi ~/Library/Group Containers/group.com.docker/settings.json
    --find "filesharingDirectories" and change into "filesharingDirectories": []

  3. Docker (Apple Silicon/M1 Preview) MySQL "no matching manifest for Linux/arm64/v8 in the manifest list entries"
    image
    Oracle maintains a MySQL 8.0.23 docker image for arm64. Use it in your docker-compose file

how to replace localhost to ip?

"you can open address http://localhost:8190 in your favorite browser (Chrome recommend) to try out Xtreme1. You can replace localhost to ip address if you want to access from another computer"
I deployed my docker and defining TCP/IP transition of localhost:8190 , but can not open from another computer.

No Docker Support for /linux/arm64/v8 (OSX MacBook M1/M2 chipset)

Is your feature request related to a problem? Please describe.
Trying to get this running on docker on newer Mac builds. Doesn't appear to be a docker setup for my chipset

Describe the solution you'd like
Any chance you can build your platform for the M1 chipset and publish the container with the correct dependencies?

Describe alternatives you've considered
I'll probably drop this on an NVIDIA Jetson appliance so I can have a look, but if I am going to use it with any regularity, it will be on a Mac. Probably not the only Mac based prospective customer out there.

Additional context
None

Models Deployment Error RuntimeError: Found no NVIDIA driver on your system

error use detection model
when I run docker compose --profile model up

xtreme1-redis-1                         | 1:M 30 Nov 2022 10:58:04.193 * Ready to accept connections
xtreme1-image-object-detection-1        | /opt/conda/lib/python3.6/site-packages/requests/__init__.py:91: RequestsDependencyWarning: urllib3 (1.26.9) or chardet (3.0.4) doesn't match a supported version!
xtreme1-image-object-detection-1        |   RequestsDependencyWarning)
xtreme1-point-cloud-object-detection-1  | 2022-11-30 10:58:05 INFO start_logger: -------------------- logging start --------------------
xtreme1-point-cloud-object-detection-1  | 2022-11-30 10:58:05 INFO start_logger: LEVEL: INFO
xtreme1-point-cloud-object-detection-1  | 2022-11-30 10:58:05 INFO start_logger: PATH:  /app/pcdet_open/server_logs/pid1
xtreme1-point-cloud-object-detection-1  | 2022-11-30 10:58:05 INFO start_logger: -------------------------------------------------------
xtreme1-point-cloud-object-detection-1  | 2022-11-30 10:58:05 INFO start_service: ----- SERVER STARTED -----
xtreme1-point-cloud-object-detection-1  | Tornado server starting on port 5000
xtreme1-image-object-detection-1        | test data convert to vgpu BEGIN
xtreme1-image-object-detection-1        | kk : tensor([0., 0., 0., 0.])
xtreme1-image-object-detection-1        | Traceback (most recent call last):
xtreme1-image-object-detection-1        |   File "server_abroad.py", line 35, in <module>
xtreme1-image-object-detection-1        |     tt = torch.zeros(4).cuda()
xtreme1-image-object-detection-1        |   File "/opt/conda/lib/python3.6/site-packages/torch/cuda/__init__.py", line 214, in _lazy_init
xtreme1-image-object-detection-1        |     torch._C._cuda_init()
xtreme1-image-object-detection-1        | RuntimeError: Found no NVIDIA driver on your system. Please check that you have an NVIDIA GPU and installed a driver from http://www.nvidia.com/Download/index.aspx

OS: ubuntu 18.04
GPU: GeForce RTX 2060
GPU driver version: 515.65.01
I do have installed NVIDIA Driver and NVIDIA Container Toolkit.
and nvidia-smi

(base) ➜  xtreme1 git:(main) nvidia-smi
Wed Nov 30 19:03:30 2022       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.65.01    Driver Version: 515.65.01    CUDA Version: 11.7     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   49C    P8     7W /  N/A |    364MiB /  6144MiB |     11%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      2378      G   /usr/lib/xorg/Xorg                173MiB |
|    0   N/A  N/A      2604      G   /usr/bin/gnome-shell               67MiB |
|    0   N/A  N/A      3166      G   ...RendererForSitePerProcess       36MiB |
|    0   N/A  N/A      6922      G   ...AAAAAAAAA= --shared-files       62MiB |
|    0   N/A  N/A     11576      G   ...AAAAAAAAA= --shared-files       20MiB |
+-----------------------------------------------------------------------------+

and docker run --rm --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi is also success

(base) ➜  xtreme1 git:(main) docker run --rm --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi       
Wed Nov 30 11:04:06 2022       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.65.01    Driver Version: 515.65.01    CUDA Version: 11.7     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   48C    P8     5W /  N/A |    357MiB /  6144MiB |      9%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+

and found another issue seems same error on Nvidia Tesla T4 #62, any suggestion about this? look forward for your reply, thanks!

ask for help

I'm trying to upload kitti dataset, but it show error. I suspect it is the camera parameter problem, please help. Thanks
5frames.zip

Pcd/img frame can not be operated after removing users.

I use the docker version. I find that if a user is removed when some pcd/image frames are occupied by this user, then these pcd/img frames cannot be annotated and removed in the dataset by others.

To Reproduce
Steps to reproduce the behavior:

  1. Register 2 users A and B.
  2. User A is annotating frame F in a dataset D.
  3. User B remove user A.

Expected behavior
User B cannot annotate and remove frame F in a dataset D, though this frame is not (shown to be) occupied by others.

Desktop (please complete the following information):

  • OS: windows11
  • Browser edge

Export class names

Hi, I am using the website version for annotating lidar point. When I export the result file from the website, I cannot find the class label for each bounding box in the result json file. For example, for the sample data, I got the following content:

[{"version":"1.0","dataId":33540037,"sourceId":30930,"sourceType":"DATA_FLOW","sourceName":"Without Task","validity":"VALID","classificationValues":[],"objects":[{"id":"f0c0e30b-5b9a-4c50-9a21-59eecda55a6e","type":"3D_BOX","trackId":"NpFkgZwEuid1z0x1","trackName":"1","classValues":[{"alias":"","id":"f7434cfd-a542-4e00-825d-cd4ed0b76e4e","isLeaf":true,"name":"","value":"High"},{"alias":"","id":"0250dfc6-f0b5-49f7-8809-7442ec1293a9","isLeaf":true,"name":"","value":"No"}],"contour":{"center3D":{"x":0.07479472138966892,"y":5.685984817386404,"z":0.7350000000000002},"pointN":1660,"points":[],"rotation3D":{"x":0,"y":0,"z":0.7830466862070613},"size3D":{"x":4.115060429478478,"y":1.9631255795928428,"z":1.4900000000000042},"viewIndex":0},"modelConfidence":null,"modelClass":""},{"id":"ec77bf46-df89-4f38-a09a-3bb1ecd1d96b","type":"3D_BOX","trackId":"n2Q5TgmrkuB0ceLZ","trackName":"2","classValues":[{"alias":"","id":"0250dfc6-f0b5-49f7-8809-7442ec1293a9","isLeaf":true,"name":"","value":"Yes"},{"alias":"","id":"f7434cfd-a542-4e00-825d-cd4ed0b76e4e","isLeaf":true,"name":"","value":"Medium"}],"contour":{"center3D":{"x":25.86569116182311,"y":1.510761637851699,"z":0.617681331542546},"pointN":1751,"points":[],"rotation3D":{"x":0,"y":0,"z":-0.9403950741664222},"size3D":{"x":6.361173403725293,"y":2.372192347521158,"z":2.0680939598347616},"viewIndex":0},"modelConfidence":null,"modelClass":""}]}]

However, for the class values, I could only find the content for the class attribute, but I cannot find the name such as cars, vans, trucks. Can you help me with this? Thank you very much.

request for extrinsic LiDAR-image calibration tool

It would be great to have an inbuild robust extrinsic calibration tool, the extrinsic value can be embedded as an attribute for each object ID's

Example:
[
{
"id": 0,
"name": "pc0",
"type": "pointcloud",
"extrinsics": {
"location": [
-0.7956064878711493,
0.06994663796442704,
0.07554082295382114
],
"rotation": [
0.06168062793771913,
0.01200528651139976,
-0.26920656196175347
]
}
},
{
"id": 1,
"name": "image2",
"type": "image",
"intrinsics": {
"focal": [
721.5377197265625,
721.5377197265625
],
"center": [
609.559326171875,
172.85400390625
],
"skew": 0,
"radial": null,
"tangential": null
},
"extrinsics": {
"location": [
-0.0027968167666705956,
-0.0751087909738869,
-0.27213280776889376
],
"rotation": [
0.011902515224334161,
-1.5603441219160237,
1.548328901848571
]
}
},
{
"id": 2,
"name": "image3",
"type": "image_3d",
"intrinsics": {
"focal": [
721.5377197265625,
721.5377197265625
],
"center": [
609.559326171875,
172.85400390625
],
"skew": 0,
"radial": null,
"tangential": null
},
"extrinsics": {
"location": [
-0.5327253937721252,
0.0,
0.0
],
"rotation": [
-1.5723664220969806,
0.07224191126404556,
-1.8406363281435645
]
}
}
]

Unable to see nested attributes

Describe the bug
I created a nested class in ontology, but it didn't pop up when i was annotating

To Reproduce
Steps to reproduce the behavior:
1.Created a nest class
image
2.Annotate in tool

Expected behavior
Expecting a nested attributes

Screenshots
But it didn't pop up
image

Local source code debugging problem

hello,i look this project source code ,so i'm running this code for idea 。
1、 the backend and froend is running ,meanwhile i start nginx and copy deploy/nginx/conf.d/default.conf content to nginx.conf 。but it not running , can u help me?
Uploading image.png…

image
2、INSERT INTO x1_community.user(username, password, nickname) VALUES ('[email protected]', '$2a$10$0qk8vIkREsV6KYPeYJLU..C/JxJZc/ccfZIcEmFcnS8W9DtOD/y5K', 'admin'); what is password plaintext ?
3、my nginx.conf content
location / {
set $no_cache 0;
if ($uri ~* ^/$) {
set $no_cache 1;
}
if ($uri ~* .(?:html|json)$) {
set $no_cache 1;
}
if ($no_cache = 1) {
add_header Cache-Control "no-store,no-cache";
add_header Pragma "no-cache";
}

		proxy_pass   http://localhost:8080/main/;
	}

	location /tool/image {
		set $no_cache 0;
		if ($uri ~* ^/tool/image[/]?$) {
			set $no_cache 1;
		}
		if ($uri ~* \.(?:html|json)$) {
			set $no_cache 1;
		}
		if ($no_cache = 1) {
			add_header Cache-Control "no-store,no-cache";
			add_header Pragma "no-cache";
		}

		proxy_pass   http://localhost:8080/image-tool/;
	}

	location /tool/pc {
		set $no_cache 0;
		if ($uri ~* ^/tool/pc[/]?$) {
			set $no_cache 1;
		}
		if ($uri ~* \.(?:html|json)$) {
			set $no_cache 1;
		}
		if ($no_cache = 1) {
			add_header Cache-Control "no-store,no-cache";
			add_header Pragma "no-cache";
		}

		proxy_pass   http://localhost:8080/pc-tool/;
	}

	location /api/ {
		proxy_set_header Host $http_host;
		proxy_set_header X-Forwarded-Proto $scheme;
		rewrite ^/api/(.*) /$1 break;
		proxy_pass   http://localhost:8080;
	}

	location /minio/ {
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header X-Forwarded-Proto $scheme;

		proxy_http_version 1.1;
		proxy_set_header Connection "";
		chunked_transfer_encoding off;

		rewrite ^/minio/(.*) /$1 break;
		proxy_pass http://localhost:9000;
	}
}

Xtreme1 Release 0.6-Discussion

Overview

Xtreme1 is planning to release

  • Functions and APIs &SDK to elementarily integrate models, datasets, and annotations.
  • Support point cloud segmentation, will possibly be delayed if there are no more contributors

Any issues, discussions, and contributions will be constructive. Feel free to discuss anything under this issue!

Target release date

March 2023

Scope

Improvements & bug fixes

  • Add a force unlock feature to solve inactive users occupy issues like:

  • #84

  • Add COCO format export and import as a feature instead of merely script

  • Multiple select in similarity map

Model

  • Todo:

    • Users can integrate their models into Xtreme1 and use them for annotations
    • Able to provide APIs & SDK and functions to integrate key evaluation metrics of models training to Xtreme1
    • Able to compare model runs results with ground truths in Xtreme1
  • Don't do:

    • Xtreme1 is not planning to support the model training inside Xtreme1 in 0.6
  • Related Issues:

  • #50

Point cloud segmentation

  • Todo:

    • Provides a point cloud tool to annotate instances like cuboid and segmentation together
    • Provides a point cloud segmentation pre-annotation model
    • Able to import and export segmentation annotation results
    • Needs to provide relevant ontology and dataset functions
  • Don't do:

    • Xtreme1 is not planning to support segmentation annotation projects from 3D to 2D

Xtreme1 Release 0.5.5

Overview

Release 0.5.5 takes the first step into the Scenario Search, APIs, Ontology Center, Ontology Fusion, and Data Visualizations. All of them are fundamental modules of Xtreme1. We would greatly appreciate any issues, discussions, and contributions as an open and community-driven project.

Release Date

Tag v0.5.5 2022/12/26

Data Visualization

This module is planning to visualize data in the following aspects:

  • Data statistics level
  • Raw data level
  • Annotation data level
  • Object level

The target of this release:

  • At the data statistics level:

    • Basic metrics of the dataset
    • Distribution chart of data by class and classification
    • Similarity map for the Image dataset
    • Similarity map for LiDAR and LiDAR fusion dataset
  • At raw data level:

    • Raw data visualization for both image and LiDAR dataset
    • Annotation data visualization for both image and LiDAR dataset
  • At the annotation data level:

    • Preview annotation results in the dataset for both the image and LiDAR dataset
  • At the object level:
    Will be included in scenario search

Data import and export

  • Support COCO format for the image dataset

Xtreme1 will provide a script to convert Xtreme1 format to COCO format now: https://github.com/xtreme1-io/xtreme1-SDK, and later will support a function and SDK to support mutual conversion between COCO to Xtreme1

Related Issues:

Scenario Search

Scenario Search will solve the problem of how we define and find desired data or a part of data explicitly at the situation and scenario level

We normally curate data at the data or object level which raises the problem that curating data by data level will be too general to find a concrete issue in your data, meanwhile, at the object level, objects are too isolated to avoid duplicates and to find connections with other objects. The scenario search feature defines objects by labels and attributes and defines scenarios by objects, relations between objects, and object attention. You would be very easy to define and find scenarios like Lane Changes, Parking, U-turns, and Runway Incursion.

图片

The target of this release:

  • Search scenarios by classes and classification in a specific dataset(image and LiDAR)
  • Search scenarios by classes in the ontology center(image and LiDAR)
  • Export search results as a JSON file or a new dataset

In future releases:

  • Will support relation annotation and scenario search by objects and relations
  • Will support attributes search in scenario search by objects, relations, and attributes.

Ontology Center

Ontology Center is designed to:

  • Manage your ontologies and data across all datasets.
  • Provide industrial templates and solutions for your annotation and model training

The target of this release:

  • CRUD ontologies and their classes and classifications in the ontology center
  • Ontology fusion at the data storage level between classes in the dataset and classes in the ontology center
  • Ontology export and import both in the ontology center and the dataset
  • Copy classes and classifications from the ontology center
  • Push, pull classes' attributes between classes in the dataset and ontology
  • Scenario search across all datasets of the same dataset type

APIs & SDK

Xtreme1 is planning to provide full API and SDK suites for integration

The target of this release:

  • Provides My APIs page to manage API tokens
  • Provides fundamental APIs and docs, you can find our APIs docs here
  • Provides SDK based on APIs

Python/Java SDK for Converting Xtreme1 dedicated json format to Coco format

Is your feature request related to a problem? Please describe

Xtreme1 has its own annotation format, and this is necessary cause Xtreme1 needs record more and more details according to the growth of features.

However, we still need language tool to help people convert this dedicated format to some common format e.g. Coco. This is very important since the deep learning frameworks or tools already support the Coco format otherwise every people need to write the converting code.

With this SDK, Xtreme1 can be more easy to provide some new features like exporting Coco format directly in the Web Console without duplicate effect.

Describe the solution you'd like

Describe alternatives you've considered

Additional context

关于相机内外参数的问题

通过xtreme1加载nussence数据集后,在点云上标注的方框与左侧2D图像出现偏差。请问,应该怎样解决?nussence的相机内外参数已经写好了,并没有使用xtreme1的默认相机参数。

How can I export COCO data format?

Hello!
I just installed Xtreme1 on my computer using Docker and I'm trying to export files.
According to the update information, it should be possible to export in COCO format, but I can't find that option on my page.
What should I do?

Import data

I want to load the 3d data and their pre-annotation result (kitti dataset) while launching the xtreme1.
We want to know whether it supports? Or is there any converter available to convert it?

can't annotate my data due to resource uploading issue

Hi,I met with resource loading issue while uploading data.

  1. I uploaded LiDAR fusion type
  2. when I click annotate in data card I got an error information like this
    IMG_2419
  3. the error information is as below
    IMG_2433
    Can anyone help me with this?

Annotation tool deployment

Hi,
I'm interested on deploying the tool on my pc.
Can the open source version work as a full stand alone on a pc without internet connection?

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.