{"id":13499762,"url":"https://github.com/sipeed/MaixPy","last_synced_at":"2025-03-29T05:32:25.737Z","repository":{"id":218204580,"uuid":"745771617","full_name":"sipeed/MaixPy","owner":"sipeed","description":"Easily create AI projects with Python on edge device","archived":false,"fork":false,"pushed_at":"2024-10-30T02:50:10.000Z","size":38453,"stargazers_count":182,"open_issues_count":8,"forks_count":36,"subscribers_count":9,"default_branch":"main","last_synced_at":"2024-10-30T05:12:12.357Z","etag":null,"topics":["ai","ai-vision","edge-ai","embedded","maixpy","monitor"],"latest_commit_sha":null,"homepage":"https://wiki.sipeed.com/maixpy/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sipeed.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-20T05:00:16.000Z","updated_at":"2024-10-25T11:30:52.000Z","dependencies_parsed_at":"2024-01-25T12:25:09.002Z","dependency_job_id":"b99e23ae-1ea1-412c-b8ee-40704e5c444e","html_url":"https://github.com/sipeed/MaixPy","commit_stats":null,"previous_names":["sipeed/maixpy"],"tags_count":38,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipeed%2FMaixPy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipeed%2FMaixPy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipeed%2FMaixPy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipeed%2FMaixPy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sipeed","download_url":"https://codeload.github.com/sipeed/MaixPy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246145012,"owners_count":20730494,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","ai-vision","edge-ai","embedded","maixpy","monitor"],"created_at":"2024-07-31T22:00:41.462Z","updated_at":"2025-03-29T05:32:20.729Z","avatar_url":"https://github.com/sipeed.png","language":"Python","funding_links":[],"categories":["C","Python","硬件_其他","2. 嵌入式系统项目 | Embedded System"],"sub_categories":["网络服务_其他"],"readme":"MaixPy (v4)\n======\n\n\u003cdiv align=\"center\"\u003e\n\n![](https://wiki.sipeed.com/maixpy/static/image/maixpy_banner.png)\n\n**Let's Sipeed up, Maximize AI's power!**\n\n**MaixPy** (v4): Easily create AI projects with Python on edge device\n\n\u003ch3\u003e\n    \u003ca href=\"https://wiki.sipeed.com/maixpy/doc/en/index.html\"\u003e Quick Start \u003c/a\u003e |\n    \u003ca href=\"https://wiki.sipeed.com/maixpy/en/index.html\"\u003e Documentation \u003c/a\u003e |\n    \u003ca href=\"https://wiki.sipeed.com/maixpy/api/index.html\"\u003e API \u003c/a\u003e |\n    \u003ca href=\"https://wiki.sipeed.com/maixcam\"\u003e Hardware \u003c/a\u003e\n\u003c/h3\u003e\n\n[![GitHub Repo stars](https://img.shields.io/github/stars/sipeed/MaixPy?style=social)](https://github.com/sipeed/MaixPy/stargazers)\n[![Apache 2.0](https://img.shields.io/badge/license-Apache%20v2.0-orange.svg)](\"https://github.com/sipeed/MaixPy/blob/main/LICENSE.md)\n[![PyPI](https://img.shields.io/pypi/v/maixpy.svg)](https://pypi.python.org/pypi/maixpy/)\n[![PyPI - Downloads](https://img.shields.io/pypi/dm/maixpy?label=pypi%20downloads)](https://pypi.org/project/maixpy/)\n![GitHub repo size](https://img.shields.io/github/repo-size/sipeed/maixpy) \n[![Build MaixCAM](https://github.com/sipeed/MaixPy/actions/workflows/build_maixcam.yml/badge.svg)](https://github.com/sipeed/MaixPy/actions/workflows/build_maixcam.yml)\n[![Trigger wiki](https://github.com/sipeed/MaixPy/actions/workflows/trigger_wiki.yml/badge.svg)](https://github.com/sipeed/MaixPy/actions/workflows/trigger_wiki.yml)\n\nEnglish | [中文](./README_ZH.md)\n\n\u003c/div\u003e\n\n\n\u003e New MaixPy (v4) and new hardware platform MaixCAM is coming now(2024.4)!\u003cbr\u003e\n\u003e If you have any suggestions, tell us on [MaixHub](https://maixhub.com/discussion/100073), or [Telegram/MaixPy](https://t.me/maixpy) or QQ group: 862340358.\n\u003e\n\u003e Click the **Star** in the upper right corner to let us know you like it to encourage us to add more features.\n\n\n## Introduction\n\nWith MaixPy you can easily create **AI vision project** within **10 lines of code**:\n\n```python\nfrom maix import camera, display, image, nn\n\nclassifier = nn.Classifier(model=\"/root/models/mobilenetv2.mud\")\ncam = camera.Camera(classifier.input_width(), classifier.input_height(), classifier.input_format())\ndis = display.Display()\n\nwhile 1:\n    img = cam.read()\n    res = classifier.classify(img)\n    max_idx, max_prob = res[0]\n    msg = f\"{max_prob:5.2f}: {classifier.labels[max_idx]}\"\n    img.draw_string(10, 10, msg, image.COLOR_RED)\n    dis.show(img)\n```\n\nResult video:\n\n\u003cvideo playsinline controls autoplay loop muted preload src=\"https://github.com/sipeed/MaixPy/assets/8625829/d06e4f0e-31af-4679-b3bc-1f93cd633af0\" type=\"video/mp4\"\u003e\nClassifier Result video\n\u003c/video\u003e\n\nSimply use **peripheral** like serial port:\n\n```python\nfrom maix import uart\n\ndevices = uart.list_devices()\n\nserial = uart.UART(devices[0], 115200)\nserial.write_str(\"hello world\")\nprint(\"received:\", serial.read(timeout = 2000))\n```\n\nWe also provide a handy **[MaixVision](https://wiki.sipeed.com/en/maixvision)** workstation software to make development easier and faster:\n\n\u003cvideo playsinline controls muted preload src=\"https://github.com/sipeed/MaixPy/assets/8625829/1168a282-d7c2-45bc-9ffb-c00de1ca24f5\" type=\"video/mp4\"\u003e\nMaixVision\n\u003c/video\u003e\n\nAnd online AI train platform **[MaixHub](https://maixhub.com)**, one click to train AI model and deploy to MaixCAM even you have no AI knowledge and expensive training equipment.\n\n![MaixHub](https://wiki.sipeed.com/maixpy/static/image/maixhub.jpg)\n\n## Features\n\nPython programing, MaixVision Workstation, AI vision, video streaming, voice recognize, peripheral usage etc.\n\n**Details and videos** visit official site: [wiki.sipeed.com/maixpy/](https://wiki.sipeed.com/maixpy/)\n\n## Hardware platform MaixCAM\n\nAnd we provide new powerful hardware platform **[MaixCAM](https://wiki.sipeed.com/maixcam)**:\n\n![MaixCAM](https://wiki.sipeed.com/maixpy/static/image/maixcam.png)\n\n| CPU | NPU | Memory |\n| --- | --- | ------- |\n| - 1GHz RISC-V(Linux)/ARM A53\u003cbr\u003e- 700MHz RISCV-V(RTOS)\u003cbr\u003e- 25~300MHz 8051(LowPower) | 1Tops@INT8 NPU, support BF16\u003cbr\u003esupport YOLOv5 YOLOv8 etc.| 256MB DDR3 |\n\n| Connecting | Peripheral | MultiMedia | Buy |\n| ----------- | ----- | --- | ---- |\n|  USB2.0/WiFi6/BLE5.4 | IIC/PWM/SPI/UART/WDT/ADC | - 4M Camera\u003cbr\u003e- 2.3\" 552x368 Touchscreen\u003cbr\u003e- H.264/H.265/MJPEG codec | [Sipeed Official Store](https://wiki.sipeed.com/store) |\n\nChip register level open, more detalils: [MaixCAM](https://wiki.sipeed.com/maixcam)\n\n\u003e * Big core can choose one of RISC-V and ARM A53.\n\u003e * **Maix-I K210** series is outdated, MaixPy v4 not support it, use it please visit **[MaixPy-v1](https://github.com/sipeed/maixpy-v1)**\n\n\n## Who are using MaixPy?\n\n* **AI Algorithm Engineer** who want to deploy your AI model to embedded devices.\n\u003e MaixPy provide easy-to-use API to access NPU, and docs to help you develop your AI model.\n* **STEM** teacher who wants to teach AI and embedded devices to students.\n\u003e MaixPy provide easy-to-use API, PC tools, online AI train service ... Let you focus on teaching AI, not the hardware and complicated software usage.\n* **Maker** who want to make some cool projects but don't want to learn complicated hardware and software.\n\u003e MaixPy provide Python API, so all you need is learn basic Python syntax, and MaixPy's API is so easy to use, you can make your project even in a few minutes.\n* **Engineer** who want to make some projects but want a prototype as soon as possible.\n\u003e MaixPy is easy to build projects, and provide corresponding C++ SDK, so you can directly use MaixPy to deploy or transfer Python code to C++ in a few minutes.\n* **Students** who want to learn AI, embedded development.\n\u003e We provide many docs and tutorials, and lot of open source code, to help you find learning route, and grow up step by step. From simple Python programming to `Vision`, `AI`, `Audio`, `Linux`, `RTOS` etc.\n* **Enterprise** who want to develop AI vision products but have no time or engineers to develop complicated embedded system.\n\u003e Use MaixPy even graphic programming to develop your products with no more employees and time. For example, add a AI QA system to your production line, or add a AI security monitor to your office as your demand.\n* **Contestants** who want to win the competition.\n\u003e MaixPy integrate many functions and easy to use, fasten your work to win the competition in limited time. There are already many contestants win the competition with MaixPy.\n\n\n## Performance comparison\n\nK210 and v831 are outdated, they have many limitations in memory, performance, NPU operators missing etc.\u003cbr\u003e\nNo matter you are using them or new comer, it's recommended to upgrade to MaixCAM and MaixPy v4.\u003cbr\u003e\n\nHere's the comparison between them:\n\n| Feature | Maix-I K210 | Maix-II v831 | MaixCAM |\n| ------- | ----------- | ------------ | ------- |\n| CPU | 400MHz RISC-V x2 | 800MHz ARM7 | **1GHz RISC-V(Linux)\u003cbr\u003e700MHz RISC-V(RTOS)\u003cbr\u003e25~300MHz 8051(Low Power)** |\n| Memory | 6MB SRAM | 64MB DDR2 | **256MB DDR3** |\n| NPU | 0.25Tops@INT8\u003cbr\u003eofficial says 1T but... | 0.25Tops@INT8 | **1Tops@INT8** |\n| Encoder | ✖ | 1080p@30fps | **2K@30fps** |\n| Screen | 2.4\" 320x240 | 1.3\" 240x240 | **2.28\" 552x368** / 5\" 1280x720 / 7\" 1280x800 / 10“ 1280x800|\n| TouchScreen | ✖ | ✖ | **2.3\" 552x368** |\n| Camera | 30W | 200W | **500W** |\n| WiFi   | 2.4G | 2.4G | **WiFi6** 2.4G/5G |\n| USB    | ✖    | **USB2.0** | **USB2.0** |\n| Eth    | ✖    | 100M(Optional)   | 100M(Optional) |\n| SD Interface | SPI | **SDIO** | **SDIO** |\n| BLE    | ✖    | ✖      | **BLE5.4** |\n| OS     | RTOS | Tina Linux | **Linux + RTOS** |\n| Language | C / C++ / MicroPython | C / C++ / **Python3** | C / **C++ / Python3** |\n| Software | MaixPy | MaixPy3 | **MaixCDK + MaixPy v4 + opencv + numpy + ...**|\n| PC software | MaixPy IDE | MaixPy3 IDE | **MaixVision** Workstation |\n| Docs   | ⭐️⭐️⭐️⭐️ |  ⭐️⭐️⭐️   |  🌟🌟🌟🌟🌟 |\n| Online AI train | ⭐️⭐️⭐️ |  ⭐️⭐️⭐️⭐️ |  🌟🌟🌟🌟🌟 |\n| Official APPs   | ⭐️⭐️   |  ⭐️⭐️⭐️   |  🌟🌟🌟🌟🌟 |\n| AI classify(224x224) | MobileNetv1 50fps\u003cbr\u003eMobileNetv2 ✖\u003cbr\u003eResnet ✖ | MobileNet ✖\u003cbr\u003eResnet18 20fps\u003cbr\u003eResnet50 ✖| MobileNetv2 **130fps**\u003cbr\u003eResnet18 **62fps**\u003cbr\u003eResnet50 **28fps** |\n| AI detect(NPU forward part)   | YOLOv2(224x224) 15fps |  YOLOv2(224x224) 15fps |  **YOLOv5s(224x224) 100fps\u003cbr\u003eYOLOv5s(320x256) 70fps\u003cbr\u003eYOLOv5s(640x640) 15fps\u003cbr\u003eYOLOv8n(640x640) 23fps\u003cbr\u003eYOLO11n(224x224)175fps\u003cbr\u003eYOLO11n(320x224)120fps\u003cbr\u003eYOLO11n(320x320)95fps\u003cbr\u003eYOLO11n(640x640)23fps**|\n| Ease of use     | ⭐️⭐️⭐️⭐️ |  ⭐️⭐️⭐️   |  🌟🌟🌟🌟🌟 |\n\n## Maix Ecosystem\n\nMaixPy not only a Python SDK, but have a whole ecosystem, including hardware, software, tools, docs, even cloud platform etc.\nSee the picture below:\n\n![](https://wiki.sipeed.com/maixpy/static/image/maix_ecosystem.png)\n\n\n## What difference between MaixPy v1, MaixPy3 and MaixPy v4?\n\n* MaixPy v1 use MicroPython programming language, only support Sipeed Maix-I K210 series hardware, have limited third-party packages.\n* MaixPy3 is designed for Sipeed Maix-II-Dock v831, not a long-term support version.\n* MaixPy v4 use Python programming language, so there's much package we can use directly. MaixPy v4 support new hardware platforms of Sipeed, it's a long-term support version, the future's hardware platforms will support this version. MaixPy v4 have a MaixPy-v1 compatible API, so you can quickly migrate your MaixPy v1 project to MaixPy v4.\n\n(MaixPy v4 Will not support Maix-I K210 series, if you are using Maix-I K210 series, it's recommended to upgrade hardware platform to use this to get more features and better performance.)\n\n## Compile Source Code\n\nIf you want to compile MaixPy firmware from source code, refer to [Build MaixPy source code](https://wiki.sipeed.com/maixpy/doc/en/source_code/build.html) page.\n\n\n## License\n\nAll files in this repository are under the terms of the [Apache License 2.0 Sipeed Ltd.](./LICENSE) except the third-party libraries or have their own license.\n\n\n## Community\n\n* Project sharing: [maixhub.com/share](https://maixhub.com/share)\n* Discussion: [maixhub.com/discussion](https://maixhub.com/discussion)\n* QQ group: 862340358\n* Telegram: [t.me/maixpy](https://t.me/maixpy)\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsipeed%2FMaixPy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsipeed%2FMaixPy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsipeed%2FMaixPy/lists"}