Skip to content

Commit

Permalink
Merge branch 'Seeed-Studio:dev' into dev
Browse files Browse the repository at this point in the history
  • Loading branch information
mjq2020 authored Jul 13, 2023
2 parents 2f364a0 + 325d7f7 commit bcefcd7
Show file tree
Hide file tree
Showing 44 changed files with 199 additions and 103 deletions.
26 changes: 25 additions & 1 deletion .github/workflows/smoke-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ jobs:
manual-installation:
name: manual installation test for (${{ matrix.python-version }}, ${{ matrix.os }})
runs-on: ${{ matrix.os }}
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
Expand Down Expand Up @@ -64,9 +65,32 @@ jobs:
python -m pip --version
python -m pip list
conda-installation:
name: conda installation test for (${{ matrix.os }})
runs-on: ${{ matrix.os }}
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest

steps:
- name: checkout repository
uses: actions/checkout@v3

- name: conda install deps (CPU, only base)
run: |
conda env create -n edgelab -f environment.yml
- name: conda install deps (CUDA, only base)
run: |
conda env create -n edgelab_cuda -f environment_cuda.yml
auto-installation:
name: auto installation test for (${{ matrix.os }})
runs-on: ${{ matrix.os }}
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
Expand All @@ -77,6 +101,6 @@ jobs:
- name: checkout repository
uses: actions/checkout@v3

- name: setup deps
- name: setup deps (shell)
run: |
bash scripts/setup_linux.sh
22 changes: 11 additions & 11 deletions docs/.vitepress/locales/en_US.ts
Original file line number Diff line number Diff line change
Expand Up @@ -65,25 +65,25 @@ function sidebar() {
]
},
{
text: 'Examples',
text: 'Deploy',
collapsed: false,
link: '/examples/examples',
link: '/deploy/examples',
items: [
{
text: 'ESP32 - Deploy',
link: '/examples/esp32/deploy',
link: '/deploy/esp32/deploy',
items: [
{ text: 'ESP32 Mask Detection', link: '/examples/esp32/mask_detection' },
{ text: 'ESP32 Meter Reader', link: '/examples/esp32/meter_reader' }
{ text: 'ESP32 Mask Detection', link: '/deploy/esp32/mask_detection' },
{ text: 'ESP32 Meter Reader', link: '/deploy/esp32/meter_reader' }
]
},
{
text: 'Grove - Deploy',
link: '/examples/grove/deploy',
link: '/deploy/grove/deploy',
items: [
{ text: 'Grove Mask Detection', link: '/examples/grove/mask_detection' },
{ text: 'Grove Meter Reader', link: '/examples/grove/meter_reader' },
{ text: 'Grove Digital Meter', link: '/examples/grove/digital_meter' }
{ text: 'Grove Mask Detection', link: '/deploy/grove/mask_detection' },
{ text: 'Grove Meter Reader', link: '/deploy/grove/meter_reader' },
{ text: 'Grove Digital Meter', link: '/deploy/grove/digital_meter' }
]
}
]
Expand All @@ -93,7 +93,7 @@ function sidebar() {
collapsed: false,
items: [
{
text: 'Edge Impulse Learning Blocks',
text: 'Machine Learning Blocks',
link: '/edgeimpulse/ei_ml_blocks',
},
]
Expand All @@ -104,7 +104,7 @@ function sidebar() {
items: [
{ text: 'FAQs', link: '/community/faqs' },
{ text: 'Reference', link: '/community/reference' },
{ text: 'Contribution Guidelines', link: '/community/contributing' },
{ text: 'Contribution', link: '/community/contributing' },
{ text: 'Copyrights and Licenses', link: '/community/licenses' }
]
}
Expand Down
16 changes: 8 additions & 8 deletions docs/.vitepress/locales/zh_CN.ts
Original file line number Diff line number Diff line change
Expand Up @@ -71,23 +71,23 @@ function sidebar() {
{
text: '部署示例',
collapsed: false,
link: '/zh_cn/examples/examples',
link: '/zh_cn/deploy/examples',
items: [
{
text: 'ESP32 - 部署教程',
link: '/zh_cn/examples/esp32/deploy',
link: '/zh_cn/deploy/esp32/deploy',
items: [
{ text: 'ESP32 口罩检测', link: '/zh_cn/examples/esp32/mask_detection' },
{ text: 'ESP32 表计读数', link: '/zh_cn/examples/esp32/meter_reader' }
{ text: 'ESP32 口罩检测', link: '/zh_cn/deploy/esp32/mask_detection' },
{ text: 'ESP32 表计读数', link: '/zh_cn/deploy/esp32/meter_reader' }
]
},
{
text: 'Grove - 部署教程',
link: '/zh_cn/examples/grove/deploy',
link: '/zh_cn/deploy/grove/deploy',
items: [
{ text: 'Grove 口罩检测', link: '/zh_cn/examples/grove/mask_detection' },
{ text: 'Grove 表计读数', link: '/zh_cn/examples/grove/meter_reader' },
{ text: 'Grove 数字表记', link: '/zh_cn/examples/grove/digital_meter' }
{ text: 'Grove 口罩检测', link: '/zh_cn/deploy/grove/mask_detection' },
{ text: 'Grove 表计读数', link: '/zh_cn/deploy/grove/meter_reader' },
{ text: 'Grove 数字表记', link: '/zh_cn/deploy/grove/digital_meter' }
]
}
]
Expand Down
21 changes: 20 additions & 1 deletion docs/community/contributing.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Contribution Guidelines
# Contribute

Contributions to EdgeLab are welcome! We welcome contributions of any kind, including but not limited to:

Expand Down Expand Up @@ -28,6 +28,25 @@ Contributions to EdgeLab are welcome! We welcome contributions of any kind, incl

Please refer to the [Github Documentation - Collaborating](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests).

## Commit Style

We recommend that you follow the following authoring principles when writing your commit, as this will make our project cleaner and easier to iterate.

```
build: build related changes
chore: typo fixes, library updates, etc.
ci: continue integration related changes
deps: dependencies update
docs: docs related changes
feat: new feactures
fix: fix issues
perf: add perf results
refactor: refactor components
revert: undo some changes
style: code style changes
test: test cases changes
```

## Permissions Section

After a contribution is submitted, you agree to the project's [License](./licenses).
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
10 changes: 6 additions & 4 deletions docs/introduction/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,16 +121,18 @@ Or you can do the configuration manually using Conda's configuration file.
::: code-group
```sh [CPU]
conda env create -n edgelab -f environment.yml -y && \
conda env create -n edgelab -f environment.yml && \
conda activate edgelab && \
pip3 install -r requirements.txt && \
pip3 install -r requirements/inference.txt -r requirements/export.txt -r requirements/tests.txt && \
mim install -r requirements/mmlab.txt && \
mim install -e .
```
```sh [GPU (CUDA)]
conda env create -n edgelab -f environment_cuda.yml -y && \
conda env create -n edgelab -f environment_cuda.yml && \
conda activate edgelab && \
pip3 install -r requirements_cuda.txt && \
pip3 install -r requirements/inference.txt -r requirements/export.txt -r requirements/tests.txt && \
mim install -r requirements/mmlab.txt && \
mim install -e .
```
Expand Down
19 changes: 18 additions & 1 deletion docs/introduction/quick_start.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ In [Overview](./what_is_edgelab), we have introduced the functions and features
We suggest that all beginners of EdgeLab start learning from [Getting Started](#getting-started), if you are familiar with EdgeLab or [OpenMMLab](https://github.com/open-mmlab), and you want to try to deploy on edge computing devices, modify existing neural networks, or train on user-defined data sets, you can directly refer to [Advanced](#advanced).
:::

Now, you can try out [EdgeLab Colab Examples](https://github.com/Seeed-Studio/EdgeLab/tree/main/notebooks) on Google Colab without setup EdgeLab on your computer.

## Getting Started

1. First, refer to the [Installation Guide](./installation.md) to configure the running environment of EdgeLab.
Expand All @@ -20,8 +22,23 @@ We suggest that all beginners of EdgeLab start learning from [Getting Started](#

## Advanced

- **Model Deployment**. If you want to deploy the exported training model on edge computing devices, please refer to [ESP32 Deployment Example](../examples/esp32/deploy) or [Grove Vision AI Deployment Example](../examples/grove/deploy).
- **Model Deployment**. If you want to deploy the exported training model on edge computing devices, please refer to [ESP32 Deployment Example](../deploy/esp32/deploy) or [Grove Vision AI Deployment Example](../deploy/grove/deploy).

- **Custom Datasets**. If you want to train on a custom dataset, please refer to [Datasets](../tutorials/datasets).

- **Custom Model**. If you want to modify an existing neural network or design your own neural network, please refer to [Model Configuration](../tutorials/config).

## Necessary Knowledge

- Computer Vision:

The basics of computer vision are built upon digital image processing. So, you need to learn the basics of the DlP first. Then you can move forward to read computer vision topics like pattern recognition and 3D geometry. You need to know linear algebra to be able to fully understand some concepts of the computer vision like dimensionality reduction. After understanding the fundamentals of computer vision you should also build your knowledge in deep learning, especially in Convolutional Neural Networks (CNN).

- Programming:

Python will be enough for design and prototyping, but if you want to do some
embedded work, you should also be familiar with C++.

- Tools:

OpenCV is the main tool for computer vision, and Numpy is an important tool for data processing and analysis. You must know them. You never know, but you should know what tools are available and how to use them. How to use them. Another tool you need to familiarize yourself with is the deep learning framework. Frameworks. You can start with Keras which is the easiest to learn and then learn Tensorflow or PyTorch.
10 changes: 5 additions & 5 deletions docs/tutorials/export/pytorch_2_onnx.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,18 +26,18 @@ You also need to prepare the PyTorch model and its weights before exporting the

- Or download the EdgeLab official pre-trained weights from our [GitHub Releases - Model Zoo](https://github.com/Seeed-Studio/EdgeLab/releases/tag/model_zoo).

## Model Transform
## Export Model

For model transformation (convert and export), the relevant commands with some common parameters are listed.
For model convert and export, the relevant commands with some common parameters are listed.

```sh
python3 tools/export.py \
"<CONFIG_FILE_PATH>" \
"<CHECKPOINT_FILE_PATH>" \
"<TARGETS>"
onnx
```

### Transform Examples
### ONNX Export Examples

Here are some model conversion examples for reference.

Expand Down Expand Up @@ -90,7 +90,7 @@ For more parameters supported, please refer to the source code `tools/inference.

:::

### Validation Example
### Model Validation Example

::: code-group

Expand Down
8 changes: 4 additions & 4 deletions docs/tutorials/export/pytorch_2_tflite.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,18 +32,18 @@ Export TFLite model requires a training set as a representative dataset, if it n

:::

## Model Transform
## Export Model

For model transformation (convert and export), the relevant commands with some common parameters are listed.

```sh
python3 tools/export.py \
"<CONFIG_FILE_PATH>" \
"<CHECKPOINT_FILE_PATH>" \
"<TARGETS>"
tflite
```

### Transform Examples
### TFLite Export Examples

Here are some model conversion examples (`int8` precision) for reference.

Expand Down Expand Up @@ -97,7 +97,7 @@ For more parameters supported, please refer to the source code `tools/inference.

:::

### Validation Example
### Model Validation Example

Here are some examples for validating converted model (`int8` precision), for reference only.

Expand Down
2 changes: 1 addition & 1 deletion docs/tutorials/training/fomo.md
Original file line number Diff line number Diff line change
Expand Up @@ -175,4 +175,4 @@ In order to further test and evaluate the model on a realistic edge computing de

### Deployment

After exporting the model, you can deploy the model to the edge computing device for testing and evaluation. You can refer to the [examples](../../examples/examples.md) section to learn more about how to deploy models.
After exporting the model, you can deploy the model to the edge computing device for testing and evaluation. You can refer to the [Deploy](../../deploy/examples.md) section to learn more about how to deploy models.
2 changes: 1 addition & 1 deletion docs/tutorials/training/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,4 @@ python3 tools/train.py --help

### Deployment

After exporting the model, you can deploy the model to an edge computing device for testing and evaluation. You can refer to [examples](../../examples/examples.md) section to learn more about how to deploy the model.
After exporting the model, you can deploy the model to an edge computing device for testing and evaluation. You can refer to [Deploy](../../deploy/examples.md) section to learn more about how to deploy the model.
2 changes: 1 addition & 1 deletion docs/tutorials/training/pfld.md
Original file line number Diff line number Diff line change
Expand Up @@ -170,4 +170,4 @@ In order to further test and evaluate the model on a realistic edge computing de

### Deployment

After exporting the model, you can deploy the model to the edge computing device for testing and evaluation. You can refer to the [examples](../../examples/examples.md) section to learn more about how to deploy models.
After exporting the model, you can deploy the model to the edge computing device for testing and evaluation. You can refer to the [Deploy](../../deploy/examples.md) section to learn more about how to deploy models.
2 changes: 1 addition & 1 deletion docs/tutorials/training/yolov5.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,4 +118,4 @@ In order to further test and evaluate the model on a realistic edge computing de

### Deployment

After exporting the model, you can deploy the model to the edge computing device for testing and evaluation. You can refer to the [examples](../../examples/examples.md) section to learn more about how to deploy models.
After exporting the model, you can deploy the model to the edge computing device for testing and evaluation. You can refer to the [Deploy](../../deploy/examples.md) section to learn more about how to deploy models.
19 changes: 19 additions & 0 deletions docs/zh_cn/community/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,25 @@

请参考 [Github 文档 - Collaborating](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests)

## 提交格式

我们建议您在编写 commit 时,遵循以下编写原则,这可以让我们的项目更加整洁,方便迭代

```
build: build related changes
chore: typo fixes, library updates, etc.
ci: continue integration related changes
deps: dependencies update
docs: docs related changes
feat: new feactures
fix: fix issues
perf: add perf results
refactor: refactor components
revert: undo some changes
style: code style changes
test: test cases changes
```

## 许可部分

在贡献被提交之后,我们默认您同意了本项目的[许可协议](./licenses)
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
10 changes: 6 additions & 4 deletions docs/zh_cn/introduction/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -120,16 +120,18 @@ bash scripts/setup_linux.sh
::: code-group

```sh [CPU]
conda env create -n edgelab -f environment.yml -y && \
conda env create -n edgelab -f environment.yml && \
conda activate edgelab && \
pip3 install -r requirements.txt && \
pip3 install -r requirements/inference.txt -r requirements/export.txt -r requirements/tests.txt && \
mim install -r requirements/mmlab.txt && \
mim install -e .
```

```sh [GPU (CUDA)]
conda env create -n edgelab -f environment_cuda.yml -y && \
conda env create -n edgelab -f environment_cuda.yml && \
conda activate edgelab && \
pip3 install -r requirements_cuda.txt && \
pip3 install -r requirements/inference.txt -r requirements/export.txt -r requirements/tests.txt && \
mim install -r requirements/mmlab.txt && \
mim install -e .
```

Expand Down
19 changes: 18 additions & 1 deletion docs/zh_cn/introduction/quick_start.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
我们建议所有初次上手 EdgeLab 的小伙伴从[入门](#%E5%85%A5%E9%97%A8)开始学习,如果你熟悉 EdgeLab 或 [OpenMMLab](https://github.com/open-mmlab),想尝试在边缘计算设备上部署、对现有的神经网络进行修改或在自定义的数据集上进行训练,则可以直接参考[进阶](#%E8%BF%9B%E9%98%B6)
:::

现在,您可以在 Google Colab 上试用 [EdgeLab Colab Examples](https://github.com/Seeed-Studio/EdgeLab/tree/main/notebooks),而无需在您的电脑上安装 EdgeLab。

## 入门

1. 首先查阅[安装指南](./installation.md)配置 EdgeLab 的运行环境。
Expand All @@ -20,8 +22,23 @@

## 进阶

- **模型的部署**,如果您想将训练导出后的模型部署在边缘计算设备上,请参考 [ESP32 部署示例](../examples/esp32/deploy)[Grove Vision AI 部署示例](../examples/grove/deploy)
- **模型的部署**,如果您想将训练导出后的模型部署在边缘计算设备上,请参考 [ESP32 部署示例](../deploy/esp32/deploy)[Grove Vision AI 部署示例](../deploy/grove/deploy)

- **自定义数据集**,如果您想在自定义数据集上进行训练,请参考[数据集](../tutorials/datasets)

- **自定义模型**,如果您想对现有的神经网络进行修改或设计自己的神经网络,请参考[模型配置](../tutorials/config)

## 必要知识

- 计算机视觉:

计算机视觉的基础知识建立在数字图像处理之上。因此,您需要首先学习数字图像处理的基础知识。然后,您可以继续阅读计算机视觉主题,如模式识别和三维几何。您需要了解线性代数,以便能够充分理解计算机视觉的一些概念,如降维。在了解了计算机视觉的基础知识后,您还应该掌握深度学习方面的知识,尤其是卷积神经网络(CNN)方面的知识。

- 编程:

Python 足够用于设计和原型开发,但如果您想做一些嵌入式工作
嵌入式工作,您还应该熟悉 C++。

- 工具:

OpenCV 是计算机视觉的主要工具,Numpy 是数据处理和分析的重要工具。您必须了解它们。你永远不会知道,但你应该知道有哪些工具可用以及如何使用它们。如何使用它们 您需要熟悉的另一个工具是深度学习框架。框架。你可以从最容易学习的 Keras 开始,然后学习 TensorFlow 或 PyTorch。
2 changes: 1 addition & 1 deletion docs/zh_cn/tutorials/training/fomo.md
Original file line number Diff line number Diff line change
Expand Up @@ -175,4 +175,4 @@ python3 tools/inference.py \

### 部署

在导出模型后,你可以将模型部署到边缘计算设备上进行测试和评估。你可以参考 [examples](../../examples/examples.md) 部分来了解更多关于如何部署模型的信息。
在导出模型后,你可以将模型部署到边缘计算设备上进行测试和评估。你可以参考 [Deploy](../../deploy/examples.md) 部分来了解更多关于如何部署模型的信息。
Loading

0 comments on commit bcefcd7

Please sign in to comment.