π’ Announcement: MemryX SDK 2.0 is now released!
Please update to the latest SDK version before proceeding with any of the examples.
Welcome to MemryX eXamples, a collection of end-to-end AI applications and tasks powered by MemryX hardware and software solutions. Whether you're performing real-time video inference, exploring fun AI projects, or generating text, these examples provide practical, hands-on use cases to help you fully leverage MemryX technology. For detailed guides and tutorials, visit the MemryX Developer Hub.
To ensure a smooth experience with MemryX solutions, follow these steps before diving into the examples:
- Explore the Developer Hub: Your gateway to comprehensive documentation for MemryX hardware and software.
- Install the MemryX SDK: Set up the essential tools and drivers to begin using MemryX accelerators.
- Check out our Tutorials: Step-by-step instructions for various use cases and end-to-end applications.
- Explore the Model Explorer: A great starting point for discovering models compiled and tested on MemryX accelerators.
Before working with the examples, ensure your system is correctly set up by installing the MemryX SDK. Follow the detailed instructions here: MemryX SDK Get Started Guide.
Clone this repository plus any linked submodules with:
git clone --recursive https://github.com/memryx/memryx_examples.gitNote: Applications marked with π have tutorials available. Clicking on the icon will take you directly to the tutorial page.
Leverage MemryX accelerators for real-time video processing tasks. These applications demonstrate how to run models efficiently on live video streams.
| Application | Description | Models | Code | OS | Preview |
|---|---|---|---|---|---|
| Depth Estimation using MiDaS π | Estimate depth from a video stream | MiDaS | ![]() |
||
| Object Blurring using YOLOv8 | Protect individuals privacy in a video stream | YOLOv8 | ![]() |
||
| Object Tracking using YOLOv8 | Object tracking in a video stream | YOLOv8 | |||
| Object Detection using YOLOv7 π | Detect objects in real time | YOLOv7 (Tiny) | ![]() |
||
| Object Detection using CenterNet π | Detect objects in real time | CenterNet | ![]() |
||
| Object Detection using YoloX | Detect objects in real time | YoloX (Medium) | ![]() |
||
| Vehicle Detection | Detect vehicle in real time | Vehicle-Detection-0200 | ![]() |
||
| Segmentation using YOLOv8 | Perform instant segmentation on video in real time | YOLOv8 Nano Segmentation | ![]() |
||
| Pose Estimation using YOLOv8 π | Estimate human pose from video | YOLOv8 (Medium) | ![]() |
||
| 3D Point Cloud from Depth Estimation | Generate real-time point clouds from depth data | MiDaS | ![]() |
||
| Wireframe detection Using M-LSD and QT | Perform Line segment detection in real time | M-LSD (Large) | ![]() |
||
| Face Detection & Emotion Classification π | Detect faces and classify emotions | Multiple Models | ![]() |
||
| Person Tracking using YOLOv7 | Track unique people across video frames | YOLOv7 (Tiny) | |||
| Face Landmarks Detection | Detect presence of a face and its landmarks | BlazeFace and FaceMesh | ![]() |
||
| Mediapipe Hand Landmarks | Detect hands and draw a "skeleton" of landmarks | PalmDet and HandPose | ![]() |
||
| Interactive Realtime Multi-Face Recognition | Interactive app for face recognition | Multiple Models | ![]() |
||
| Intrusion Detection | Detect any intruding object in a ROI | Yolov8 and ByteTrack | ![]() |
Explore models performing inference on static images and data. These examples demonstrate how to leverage the MXA to process large amounts of data.
| Application | Description | Models | Code | OS | Preview |
|---|---|---|---|---|---|
| Satellite Object Detection with Oriented Boxes | Detect oriented bounding boxes on satellite images | YoloV8m-OBB | ![]() |
||
| Face Detection + Recognition | Perform face detection + recognition | YoloV8n-Face + FaceNet | ![]() |
Explore how the MemryX accelerators can be used for open-vocabulary tasks. The examples below demonstrate how to run models using MemryX hardware.
| Application | Description | Models | Code | OS | Preview |
|---|---|---|---|---|---|
| Open-Vocab Seg with YoloE | open-vocabulary, zero-shot object detection and segmentation | yoloe-v8s-seg | ![]() |
||
| Zero-Shot Classify β OpenAI CLIP | open-vocabulary, zero-shot object classification | ClipResNet50 | ![]() |
Maximize performance by running multiple video streams concurrently on MemryX accelerators.
| Application | Description | Models | Code | OS | Preview |
|---|---|---|---|---|---|
| Multi-Stream Object Detection using YOLOv8S π | Detect objects across multiple streams | YOLOv8 (Small) | ![]() |
||
| Multi-Stream Object Detection using YOLOv7Tiny π | Detect objects across multiple streams | YOLOv7 (Tiny) | ![]() |
Run multiple models simultaneously on separate DFPs within a single application.
| Application | Description | Models | Code | OS | Preview |
|---|---|---|---|---|---|
| Cartoonizer and Pose (Side-by-Side) | Real-time cartoon effects and pose detection simultaneously | Facial-Cartoonizer & YOLOv8s-pose | ![]() |
||
| Cartoonizer and Pose (Selectable Overlays) | Real-time overlay of cartoon and pose estimation | Facial-Cartoonizer & YOLOv8s-pose | ![]() |
Configurable many-stream video applications with USB, RTSP, and video file support, using optimized C++ pre/post-processing.
| Application | Description | Models | Code | OS | Preview |
|---|---|---|---|---|---|
| Object Detection with YOLOv8 | High performance, configurable C++ object detection | YOLOv8 (Nano) | ![]() |
||
| PCB Defect Detection | Detect defects on printed circuit boards in real time across multiple video streams | Retrained YOLOv8 (Small) | ![]() |
Explore interactive and engaging AI-powered applications in our fun projects section.
| Application | Description | Models | Code | OS | Preview |
|---|---|---|---|---|---|
| Chrome Dino Game π | Control the Chrome Dino Game using palm detection | Palm Detection | ![]() |
||
| Deep Reinforcement Learning with Mario | Play Mario with a Reinforcement Learning Agent | Custom | ![]() |
||
| Aimbot | Automatic aim and click for Windows games | YOLOv7 (Tiny) | ![]() |
||
| Repcounting Web-application | Workout repcounting web-application | YOLOv8 Pose (medium) | ![]() |
||
| Facial Cartoonizer | Instantly cartoonize videos in real time | Facial-Cartoonizer | ![]() |
||
| Virtual Painter | Virtually Paint using Hand Landmarks in real-time | Palm Detection & Hand Landmark | ![]() |
||
| ASL Alphabet to Text | Use the American Sign Language alphabet to spell words | Palm Detection & Hand Landmark | ![]() |
Measure and evaluate the accuracy of various models using MemryX hardware.
| Task | Description | Models | Code | OS |
|---|---|---|---|---|
| Classification Accuracy π | Calculate accuracy for classification models | ResNet50 | ||
| Object Detection Accuracy π | Calculate accuracy for object detection models | YOLOv8 (Medium) | ||
| Keras Classifiers Accuracy π | Calculate Keras classifiers accuracy on the MXA | Keras applications |
Explore how the MemryX accelerators can be used for audio/speech processing tasks. The examples below demonstrate how to run models using MemryX hardware.
| Task | Description | Models | Code | OS |
|---|---|---|---|---|
| Audio Denoising using UNet | Remove noise from speech audio using UNet | UNet | ||
| Audio Classification using YAMNet | Identify audio categories using YAMNet | YAMNet | ||
| Audio Classification Web App | Classify audio using YAMNet in a web app | YAMNet | ||
| Speech Emotion Recognition Web App | Detect emotion from speech (web app) | Light-SERNet |
- Developer Hub β Comprehensive documentation for MemryX hardware and software.
- DevHub Get Started β Guide to set up MemryX software and hardware.
- Tutorials β Step-by-step instructions for various use cases and applications.
- FAQ β Frequently asked questions.
- Troubleshooting Guide β Solutions to common issues.
We welcome contributions! If you'd like to contribute to this repository or examples, please refer to our contribution guidelines. Feel free to submit pull requests, suggest improvements, or ask questions in the issues section.
1. How do I install the MemryX SDK?
Refer to the SDK Installation Guide for a detailed step-by-step guide on setting up the MemryX SDK.
2. What do I do if an example isn't working?
Make sure youβve followed all setup steps. You can also check the Troubleshooting Guide for more help, or open an issue in the repository.
3. Can I contribute to this repository?
Yes! We welcome contributions. Please refer to our contribution guidelines for more information on how to contribute.
Happy coding! π
The MemryX Team































