Skip to content

Commit

Permalink
Merge pull request #26 from SonySemiconductorSolutions/release/1.0.6
Browse files Browse the repository at this point in the history
release/1.0.6 to main
  • Loading branch information
TE-ChihiroIsmail committed Apr 12, 2024
2 parents 854e755 + 00780d2 commit f516d3d
Show file tree
Hide file tree
Showing 149 changed files with 11,893 additions and 3,915 deletions.
3 changes: 0 additions & 3 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,3 @@ RUN pip3 --disable-pip-version-check --no-cache-dir install -r /tmp/pip-tmp/requ
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y install --no-install-recommends libopencv-dev \
&& apt-get autoremove -y && apt-get clean -y && rm -rf /var/lib/apt/lists/*

# [Optional] Uncomment this line to install global node packages.
# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g <your-package-here>" 2>&1
6 changes: 6 additions & 0 deletions .devcontainer/cvat/docker-compose.devcontainer-2.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# cvat v2.6.1 docker compose configuration for devcontainer with docker in docker

services:
traefik:
ports:
- 8080:8080
13 changes: 11 additions & 2 deletions .devcontainer/cvat/docker-compose.devcontainer.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# cvat v2.4.0 docker compose configuration for devcontainer with docker in docker
# cvat v2.6.1 docker compose configuration for devcontainer with docker in docker

services:
cvat_db:
Expand All @@ -14,7 +14,7 @@ services:
init: true
labels:
- traefik.http.routers.cvat.rule=(Host(`${CVAT_HOST:-localhost}`) &&
PathPrefix(`/api/`, `/git/`, `/opencv/`, `/static/`, `/admin`, `/documentation/`, `/django-rq`)) ||
PathPrefix(`/api/`, `/git/`, `/static/`, `/admin`, `/documentation/`, `/django-rq`)) ||
(Host(`127.0.0.1`) && PathPrefix(`/api/`, `/git/`, `/opencv/`, `/static/`, `/admin`, `/documentation/`, `/django-rq`))

cvat_utils:
Expand All @@ -37,6 +37,14 @@ services:
restart: "no"
init: true

cvat_worker_quality_reports:
restart: "no"
init: true

cvat_worker_analytics_reports:
restart: "no"
init: true

cvat_ui:
restart: "no"
init: true
Expand All @@ -46,6 +54,7 @@ services:
traefik:
restart: "no"
init: true
ports: !reset []

cvat_opa:
restart: "no"
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/cvat/startup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@
set -e

cd .devcontainer/cvat/cvat/
docker compose -f docker-compose.yml -f ../docker-compose.devcontainer.yml up -d
docker compose -f docker-compose.yml -f ../docker-compose.devcontainer.yml -f ../docker-compose.devcontainer-2.yml up -d
2 changes: 1 addition & 1 deletion .devcontainer/postCreateCommand.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ if [ ! -d $CVAT_DIR ]
then
echo "downloading cvat."
cd .devcontainer/cvat/
git clone --depth 1 https://github.com/opencv/cvat -b v2.4.0
git clone --depth 1 https://github.com/opencv/cvat -b v2.6.1
echo "downloading cvat completed."
else
echo "cvat already downloaded."
Expand Down
658 changes: 233 additions & 425 deletions LICENSE

Large diffs are not rendered by default.

88 changes: 41 additions & 47 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# "**Vision and Sensing Application SDK**" for AITRIOS&trade;
# "**Edge Application SDK**" for AITRIOS&trade;

## Contents <!-- omit in toc -->
- ["**Vision and Sensing Application SDK**" for AITRIOS™](#vision-and-sensing-application-sdk-for-aitrios)
- ["**Edge Application SDK**" for AITRIOS™](#edge-application-sdk-for-aitrios)
- [Overview](#overview)
- [What you can do with the "**Vision and Sensing Application SDK**"](#what-you-can-do-with-the-vision-and-sensing-application-sdk)
- [What you can do with the "**Edge Application SDK**"](#what-you-can-do-with-the-edge-application-sdk)
- [Components](#components)
- [Workflow for developing AI models](#workflow-for-developing-ai-models)
- [Workflow for developing Vision and Sensing Applications](#workflow-for-developing-vision-and-sensing-applications)
- [Workflow for developing Edge Applications](#workflow-for-developing-edge-applications)
- [Restrictions](#restrictions)
- [About "**Vision and Sensing Application SDK**"](#about-vision-and-sensing-application-sdk)
- [About "**Edge Application SDK**"](#about-edge-application-sdk)
- [About AITRIOS](#about-aitrios)
- [About GitHub Codespaces](#about-github-codespaces)
- [Installation Guide](#installation-guide)
Expand All @@ -26,26 +26,26 @@
- [Branch](#branch)

## Overview
"**Vision and Sensing Application SDK**" for AITRIOS is a toolkit for developing AI models and post-processing applications that can be installed on Edge AI Devices. Post-processing applications are called "**Vision and Sensing Applications**".
The models and "**Vision and Sensing Applications**" can be deployed to Edge AI Devices through "**Console for AITRIOS**".
"**Edge Application SDK**" for AITRIOS is a toolkit for developing AI models and post-processing applications that can be installed on Edge AI Devices. Post-processing applications are called "**Edge Applications**".
The models and "**Edge Applications**" can be deployed to Edge AI Devices through "**Console for AITRIOS**".

![overview](./Images_README/overview.png)

### What you can do with the "**Vision and Sensing Application SDK**"
### What you can do with the "**Edge Application SDK**"
- Use GitHub Codespaces (Dev Container) as development environment.
- You don't need to install any additional tools in your environment.
<br>

- Develop your AI models in the container.
<br>

- Develop "**Vision and Sensing Applications**" using build environment and sample code included in the container.
- Develop "**Edge Applications**" using build environment and sample code included in the container.
<br>

- Import AI models and "**Vision and Sensing Applications**" to "**Console for AITRIOS**" and deploy them to Edge AI Devices.
- Import AI models and "**Edge Applications**" to "**Console for AITRIOS**" and deploy them to Edge AI Devices.

### Components
"**Vision and Sensing Application SDK**" is provided as Development Container (Dev Container) that runs on GitHub Codespaces or Docker environment on Local PC.
"**Edge Application SDK**" is provided as Development Container (Dev Container) that runs on GitHub Codespaces or Docker environment on Local PC.
This container includes tools and jupyter notebooks that can be used for development.

<!-- mermaid alt text: Legend -->
Expand Down Expand Up @@ -126,7 +126,7 @@ graph TB;
deploy_console --> device
device --> eval_console
subgraph DevContainer[Vision and Sensing Application SDK Dev Container]
subgraph DevContainer[Edge Application SDK Dev Container]
prepare_sdk --> img_sdk
img_sdk --> prepare_sdk
prepare_sdk --> data_sdk
Expand All @@ -147,8 +147,8 @@ graph TB;
```

#### Workflow for developing "**Vision and Sensing Applications**"
<!-- mermaid alt text: Workflow for developing Vision and Sensing Applications -->
#### Workflow for developing "**Edge Applications**"
<!-- mermaid alt text: Workflow for developing Edge Applications -->
```mermaid
%%{init: {'theme': 'default'}}%%
graph TB;
Expand All @@ -166,7 +166,7 @@ graph TB;
aot[Application<br>.aot]:::object
eval_result[Evaluation<br>Result]:::object
develop(Develop Vision and Sensing Application)
develop(Develop Edge Application)
build_wasm(Build)
debug_wasm(Run / Debug)
compile_aot(Compile)
Expand All @@ -175,7 +175,7 @@ graph TB;
device[Edge AI Device]:::device
subgraph DevContainer[Vision and Sensing Application SDK Dev Container]
subgraph DevContainer[Edge Application SDK Dev Container]
develop --> ppl_code
ppl_code --> build_wasm
build_wasm --> wasm
Expand Down Expand Up @@ -204,8 +204,8 @@ Following functions are available on "**Console for AITRIOS**":
- upload image from device
- import image from your local PC or storages
- import AI model
- import "**Vision and Sensing Application**"
- deploy model and "**Vision and Sensing Application**" to device
- import "**Edge Application**"
- deploy model and "**Edge Application**" to device
- create model
- annotate image (for AI model created on "**Console for AITRIOS**")
- train model (for AI model created on "**Console for AITRIOS**")
Expand All @@ -224,14 +224,14 @@ Following functions are available on Dev Container.
- Jupyter notebook for importing models to "**Console for AITRIOS**"
- Jupyter notebook for deploying models to Edge AI Devices
- Prepare applications:
- Tools for developing, building and debugging "**Vision and Sensing Applications**"
- Jupyter notebook for importing "**Vision and Sensing Applications**" to "**Console for AITRIOS**"
- Jupyter notebook for deploying "**Vision and Sensing Applications**" to Edge AI Devices
- Tools for developing, building and debugging "**Edge Applications**"
- Jupyter notebook for importing "**Edge Applications**" to "**Console for AITRIOS**"
- Jupyter notebook for deploying "**Edge Applications**" to Edge AI Devices
- See [Tutorials](./tutorials/README.md) for details on each notebook and tool.

### Restrictions

#### About "**Vision and Sensing Application SDK**"
#### About "**Edge Application SDK**"

- AI model training
- Datasets for Object Detection created on the Dev Container cannot be used for training base AI models (only for training user's custom AI models).
Expand Down Expand Up @@ -277,61 +277,55 @@ See [Development Environment Setup Guide](https://developer.aitrios.sony-semicon
## Samples
You can learn the development workflow using the samples in a day. <br>
See ["**Vision and Sensing Application SDK**" samples](./samples/README.md).

> **NOTE**
>
> To complete all steps, Azure Blob Storage is required when importing AI model to "**Console for AITRIOS**".
This is because "**Console Access Library**" used in the sample notebook does not support importing AI model from a local environment.
This sample is intended to execute all steps with python scripts.
See ["**Edge Application SDK**" samples](./samples/README.md).

## Tutorials
You can start the development workflow using the tutorial. <br>
See ["**Vision and Sensing Application SDK**" tutorials](./tutorials/README.md).
See ["**Edge Application SDK**" tutorials](./tutorials/README.md).

>**NOTE**
>
> If you are unfamiliar with "**Vision and Sensing Application SDK**", it's recommended to learn with [Samples](#samples) first.
> If you are unfamiliar with "**Edge Application SDK**", it's recommended to learn with [Samples](#samples) first.
## Migration Guide

### From SDK v0.2 to v1.0

If you have already developed the "**Vision and Sensing Application**" using SDK v0.2,
you need to modify the "**Vision and Sensing Application**" source code to migrate to SDK v1.0.
If you have already developed the "**Edge Application**" using SDK v0.2,
you need to modify the "**Edge Application**" source code to migrate to SDK v1.0.

See ["**Vision and Sensing Application**" Migration Guide from SDK v0.2 to v1.0](./tutorials/4_prepare_application/1_develop/README_migration_0.2_1.0.md).
See ["**Edge Application**" Migration Guide from SDK v0.2 to v1.0](./tutorials/4_prepare_application/1_develop/README_migration_0.2_1.0.md).

## Documentation
### SDK Functional Specifications
- Prepare dataset
- ["**Image Download Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_ImageDownload.adoc)
- ["**Image Annotation CVAT Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_ImageAnnotationCvat.adoc)
- ["**Image Download Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_ImageDownload.adoc)
- ["**Image Annotation CVAT Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_ImageAnnotationCvat.adoc)

- Prepare model
- ["**Model Training Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_ModelTraining.adoc)
- ["**Model Quantization Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_ModelQuantization.adoc)
- ["**Model Training Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_ModelTraining.adoc)
- ["**Model Quantization Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_ModelQuantization.adoc)

- Prepare application
- ["**Application Development Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_ApplicationDevelopment.adoc)
- ["**Application Development Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_ApplicationDevelopment.adoc)

- Setup "**Console Access Library**"
- ["**Console API Initialize Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_APIInitialize.adoc)
- ["**Console API Initialize Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_APIInitialize.adoc)

- Import AI model and "**Vision and Sensing Applications**" to "**Console for AITRIOS**"
- ["**AI model and application Import Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_ModelAndPPLImport.adoc)
- Import AI model and "**Edge Applications**" to "**Console for AITRIOS**"
- ["**AI model and application Import Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_ModelAndPPLImport.adoc)

- Deploy AI model and "**Vision and Sensing Applications**" to Edge AI Device
- ["**AI model and application Deploy Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_ModelAndPPLDeploy.adoc)
- Deploy AI model and "**Edge Applications**" to Edge AI Device
- ["**AI model and application Deploy Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_ModelAndPPLDeploy.adoc)

- Development container
- ["**Development Container Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_DevelopmentContainer.adoc)
- ["**Development Container Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_DevelopmentContainer.adoc)

- Version control
- ["**Version Control Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_VersionControl.adoc)
- ["**Version Control Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_VersionControl.adoc)

- Deserialize
- ["**Deserialize Functional Specifications**"](./docs/development-docs/AsciiDoc/VisionandSensingApplicationSDK_FuncSpec_Deserialize.adoc)
- ["**Deserialize Functional Specifications**"](./docs/development-docs/AsciiDoc/EdgeApplicationSDK_FuncSpec_Deserialize.adoc)

## Get support
- [Contact us](https://developer.aitrios.sony-semicon.com/contact-us/)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
= Vision and Sensing Application SDK pass:[<br/>] Console API Initialize pass:[<br/>] Functional Specifications pass:[<br/>]
= Edge Application SDK pass:[<br/>] Console API Initialize pass:[<br/>] Functional Specifications pass:[<br/>]
:sectnums:
:sectnumlevels: 1
:author: Copyright 2022-2023 Sony Semiconductor Solutions Corporation
Expand Down Expand Up @@ -53,7 +53,7 @@ Added alternate text to images.

== Expected use case
* Use "**Console for AITRIOS**" through API
** Example: Import AI models and "**Vision and Sensing Application**" into "**Console for AITRIOS**" and deploy them to edge AI devices through API
** Example: Import AI models and "**Edge Application**" into "**Console for AITRIOS**" and deploy them to edge AI devices through API
* Authenticate to use the API

[[anchor-operation]]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
= Vision and Sensing Application SDK pass:[<br/>] Console API Initialize pass:[<br/>] 機能仕様書 pass:[<br/>]
= Edge Application SDK pass:[<br/>] Console API Initialize pass:[<br/>] 機能仕様書 pass:[<br/>]
:sectnums:
:sectnumlevels: 1
:author: Copyright 2022-2023 Sony Semiconductor Solutions Corporation
Expand Down Expand Up @@ -53,7 +53,7 @@

== 想定ユースケース
* 「**Console for AITRIOS**」を、API経由で利用したい
** 例:AI Modelや「**Vision and Sensing Application**」のインポートおよびデプロイ
** 例:AI Modelや「**Edge Application**」のインポートおよびデプロイ
* APIを使用する上で必要な認証処理を簡単に行いたい

[[anchor-operation]]
Expand Down
Loading

0 comments on commit f516d3d

Please sign in to comment.