Python bindings for SecureMR.
Project description
pySecureMR
Python bindings for SecureMR project.
Table of Contents
Why pySecureMR?
When developing a SecureMR app, it's not very easy to debug pipeline.
You are not allowed to access each operator output directly. pySecureMR happens here
to rescue you from complicated and painful debugging time. We bind most of SecureMR
operators to python so you can call each operator and check input and output.
Supported platform
- Linux (ubuntu22): YES
- Windows (wsl2, ubuntu22): YES
- Mac: NO
Install
Pip
pip3 install securemr
Manual install
git clone https://github.com/Pico-Developer/pySecureMR
cd pySecureMR
pip3 install -e "."
Check installation:
python3 -c "import securemr"
Run test
pytest
Refer to test code to learn more about the usage.
Supported operators
| ID | Name | Pybind |
|---|---|---|
| 1 | ARITHMETIC_COMPOSE | ✅ |
| 4 | ELEMENTWISE_MIN | ✅ |
| 5 | ELEMENTWISE_MAX | ✅ |
| 6 | ELEMENTWISE_MULTIPLY | ✅ |
| 7 | CUSTOMIZED_COMPARE | ✅ |
| 8 | ELEMENTWISE_OR | ✅ |
| 9 | ELEMENTWISE_AND | ✅ |
| 10 | ALL | ✅ |
| 11 | ANY | ✅ |
| 12 | NMS | ✅ |
| 13 | SOLVE_P_N_P | ✅ |
| 14 | GET_AFFINE | ✅ |
| 15 | APPLY_AFFINE | ✅ |
| 16 | APPLY_AFFINE_POINT | ✅ |
| 17 | UV_TO_3D_IN_CAM_SPACE | ❌ |
| 18 | ASSIGNMENT | ✅ |
| 19 | RUN_MODEL_INFERENCE | ❌ |
| 21 | NORMALIZE | ✅ |
| 22 | CAMERA_SPACE_TO_WORLD | ❌ |
| 23 | RECTIFIED_VST_ACCESS | ❌ |
| 24 | ARGMAX | ✅ |
| 25 | CONVERT_COLOR | ✅ |
| 26 | SORT_VEC | ✅ |
| 27 | INVERSION | ✅ |
| 28 | MAKE_TRANSFORM_MAT | ✅ |
| 29 | SORT_MAT | ✅ |
| 30 | SWITCH_GLTF_RENDER_STATUS | ❌ |
| 31 | UPDATE_GLTF | ❌ |
| 32 | RENDER_TEXT | ❌ |
| 33 | UPLOAD_TEXTURE_TO_GLTF | ❌ |
Quick start for QNN
Install qnn. Only tested on Ubuntu22.04 & python3.10
python3 -m securemr.qnn.install_qnn
Run pytorch-to-qnn test and run on android device.
python3 -m securemr.test_pytorch_to_qnn
Visualize pipeline json
python3 -m securemr.viz.pipeline_viz path-to-pipeline.json
How to contribute
Before coding, please install develop related tools by:
make env
For new features, unittest is required.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file securemr-0.1.0.tar.gz.
File metadata
- Download URL: securemr-0.1.0.tar.gz
- Upload date:
- Size: 23.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c7dabd09988209cc4e211aac340e1cdfd115d3667e5a13267ad0f04cc3e4ffa
|
|
| MD5 |
36442407acf8b0275c300f96ff877b1d
|
|
| BLAKE2b-256 |
fee18a2401b945c826d50577b3398c99f75d7a75dd7794067f50f7ad67ec5e98
|
File details
Details for the file securemr-0.1.0-py3-none-any.whl.
File metadata
- Download URL: securemr-0.1.0-py3-none-any.whl
- Upload date:
- Size: 24.0 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57df601cddbd9dd2ea87fdb10cc3ae77714b6a1f0c373b11a8a5f31036ddb9c8
|
|
| MD5 |
352d1159a1e482ac02d9cb97e5251cba
|
|
| BLAKE2b-256 |
b58fc40d93d4a6811960f3cc27bdc37b63f5ba256558c46ef44e68069bd4816d
|