From 92c299bbbad177f0257ee9053a2870012ee5a8ef Mon Sep 17 00:00:00 2001 From: ToMaToJ Date: Mon, 4 Mar 2024 18:15:11 +0800 Subject: [PATCH 1/3] [docs]update info in readme --- README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 52ad4ca0..222e2807 100644 --- a/README.md +++ b/README.md @@ -6,14 +6,16 @@ [![Twitter](https://img.shields.io/badge/Follow-Twitter-blue)](https://twitter.com/Xtreme1io) [![Online](https://img.shields.io/badge/Xtreme1_Online-App-yellow)](https://app.basic.ai/#/login) [![Docs](https://img.shields.io/badge/Docs-Stable-success.svg?style=flat&longCache=true)](http://docs.xtreme1.io/) + +[![Use Cloud for Free](https://basicai-asset.s3.amazonaws.com/docs/Open-source/Operation/App_Button.png)](https://app.basic.ai/login) # Intro -Xtreme1 is the world's first open-source platform for Multimodal training data. +Xtreme1 is an all-in-one open-source platform for Multimodal training data. -Xtreme1 unlocks deep insights into 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 game to the next level of efficiency, powering your projects in 2D/3D Object Detection, 3D Instance Segmentation and LiDAR-Camera Fusion like never before. +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. -Today, building upon this initiative, we're delighted to present our [AI-powered Cloud platform](https://app.basic.ai/#/login/) — **completely FREE of charge!** This groundbreaking decision marks another important step towards AI democracy, making AI solutions more accessible to everyone. +A long-term free plan is offered in the Xtreme1 Cloud version. Click to [🎉 Use Cloud for Free](https://app.basic.ai/login). # Documentation From 99079b672bedb5bc50f8fcf056eb18bcab950729 Mon Sep 17 00:00:00 2001 From: ToMaToJ Date: Mon, 4 Mar 2024 18:26:13 +0800 Subject: [PATCH 2/3] Revert "[docs]update info in readme" This reverts commit 92c299bbbad177f0257ee9053a2870012ee5a8ef. --- README.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 222e2807..52ad4ca0 100644 --- a/README.md +++ b/README.md @@ -6,16 +6,14 @@ [![Twitter](https://img.shields.io/badge/Follow-Twitter-blue)](https://twitter.com/Xtreme1io) [![Online](https://img.shields.io/badge/Xtreme1_Online-App-yellow)](https://app.basic.ai/#/login) [![Docs](https://img.shields.io/badge/Docs-Stable-success.svg?style=flat&longCache=true)](http://docs.xtreme1.io/) - -[![Use Cloud for Free](https://basicai-asset.s3.amazonaws.com/docs/Open-source/Operation/App_Button.png)](https://app.basic.ai/login) # Intro -Xtreme1 is an all-in-one open-source platform for Multimodal training data. +Xtreme1 is the world's first 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. +Xtreme1 unlocks deep insights into 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 game to the next level of efficiency, 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](https://app.basic.ai/login). +Today, building upon this initiative, we're delighted to present our [AI-powered Cloud platform](https://app.basic.ai/#/login/) — **completely FREE of charge!** This groundbreaking decision marks another important step towards AI democracy, making AI solutions more accessible to everyone. # Documentation From 4543067116a37197bd981359aa56adffbed9f564 Mon Sep 17 00:00:00 2001 From: fanyinbo <1553199396@qq.com> Date: Wed, 13 Nov 2024 08:33:15 +0800 Subject: [PATCH 3/3] Fixed data export in COCO format Signed-off-by: fanyinbo <1553199396@qq.com> --- backend/Dockerfile | 2 +- .../main/java/ai/basic/x1/usecase/ExportUseCase.java | 10 ++++++++-- .../src/main/java/ai/basic/x1/util/DataFormatUtil.java | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/backend/Dockerfile b/backend/Dockerfile index 7ba02213..d58f6d80 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -7,7 +7,7 @@ RUN --mount=type=cache,target=/root/.m2 mvn package FROM openjdk:11-jre RUN apt update && \ apt install -y iputils-ping curl wget netcat python3 python3-pip git -RUN pip3 install --upgrade --force-reinstall git+https://github.com/xtreme1-io/xtreme1-sdk.git@d0cf4cc +RUN pip3 install --upgrade --force-reinstall git+https://github.com/xtreme1-io/xtreme1-sdk.git@6b53a73 WORKDIR /app COPY --from=build /build/target/xtreme1-backend-0.9.1-SNAPSHOT.jar ./app.jar RUN mkdir -p config diff --git a/backend/src/main/java/ai/basic/x1/usecase/ExportUseCase.java b/backend/src/main/java/ai/basic/x1/usecase/ExportUseCase.java index 1fbd637a..92461c88 100644 --- a/backend/src/main/java/ai/basic/x1/usecase/ExportUseCase.java +++ b/backend/src/main/java/ai/basic/x1/usecase/ExportUseCase.java @@ -144,12 +144,13 @@ private void getDataAndUpload(ExportRecord record, Strin var zipPath = srcPath + ".zip"; File zipFile; var path = String.format("%s/%s", rootPath, FileUtil.getName(zipPath)); + if (DataFormatEnum.COCO.equals(query.getDataFormat())) { var basePath = String.format("%s/%s", tempPath, IdUtil.fastSimpleUUID()); var respPath = String.format("%s/resp.json", basePath); var baseOutPath = String.format("%s/%s", basePath, FileUtil.getPrefix(zipPath)); var outPathNew = String.format("%s/result", baseOutPath); - FileUtil.move(Path.of(String.format("%s/image", srcPath)), Path.of(String.format("%s/image", baseOutPath)), true); + //FileUtil.move(Path.of(String.format("%s/image", srcPath)), Path.of(String.format("%s/image", baseOutPath)), true); ZipUtil.zip(srcPath, zipPath, true); FileUtil.mkdir(outPathNew); DataFormatUtil.convert(Constants.CONVERT_EXPORT, zipPath, outPathNew, respPath); @@ -157,7 +158,12 @@ private void getDataAndUpload(ExportRecord record, Strin zipFile = ZipUtil.zip(baseOutPath, zipPath, true); } else { FileUtil.del(basePath); - throw new UsecaseException("convert coco error"); + var exportRecordBO = exportRecordBOBuilder + .status(ExportStatusEnum.FAILED) + .updatedAt(OffsetDateTime.now()) + .build(); + exportRecordUsecase.saveOrUpdate(exportRecordBO); + return; } FileUtil.del(basePath); } else { diff --git a/backend/src/main/java/ai/basic/x1/util/DataFormatUtil.java b/backend/src/main/java/ai/basic/x1/util/DataFormatUtil.java index 2031836d..72f2e1d8 100644 --- a/backend/src/main/java/ai/basic/x1/util/DataFormatUtil.java +++ b/backend/src/main/java/ai/basic/x1/util/DataFormatUtil.java @@ -15,7 +15,7 @@ public static void convert(String type, String srcPath, String outPath, String r FileUtil.mkParentDirs(respPath); ProcessBuilder builder = new ProcessBuilder(); FileUtil.mkParentDirs(respPath); - String command = String.format("xtreme1_ctl --mode '%s' -src '%s' -out '%s' --rps '%s' --format=coco", type, srcPath, outPath, respPath); + String command = String.format("script_ctl --mode '%s' --src '%s' --dst '%s' --rps '%s' --fmt=coco", type, srcPath, outPath, respPath); builder.command("sh", "-c", command); Process process = builder.start(); BufferedReader in = new BufferedReader(new InputStreamReader(process.getErrorStream()));