...
Data directory is the only place where you can store external data files for AdamApp. Files which were placed in this directory will be copied when AdamApp is installed. This directory should be empty if you do not have data files you need to copy.
The data_CV2X directory is a directory where you can place external data files for AdamApp for ambaCV2X. The data_CV5X directory is a directory where you can place external data files for AdamApp for ambaCV5X. If you want to share it between ambaCV2X and ambaCV5X, store the external data file for AdamApp in the data directory and it will be shared. If you want to differentiate external data files for AdamApp between ambaCV2X and ambaCV5X, place them under the data_CV2X and data_CV5X directories.
If you are using the AI accelerator, place the converted binary data under the cnn directory.
⚫ external directory: for external software files used in AdamApp
...
Build and create a package of AdamApp after creating and placing the required files for AdamApp.
(1) Read configuration file for the AdamApp execution environment and (2) Execute make
For detailed instructions, please see here if you are using SDK v1.71 or earlier.
If you are using SDK v1.80 or later, please refer here.
Build the ambaCV2X and ambaCV5X extension apps into one file
...
Set the same value as the sample application. These are not used in internal processing.
Case of using AI accelerator
Note |
---|
・AI accelerator is available only in AdamApp for i-pro ambaCV2X model. ・Tool(cvtool) is not included in AdamAppSDK. Please contact i-PRO Co., Ltd. if you need one. |
Accelerator (CVFlow) for AI inference process is embedded in i-pro ambaCV2X model IP camera. AdamApp can use the accelerator through a dedicated Adam API. A binary file for accelerator is needed as an input for API. Create a binary file and built it into AdamApp by the following sequence.
Convert a pre-trained AI model into a binary file for accelerator.
Create AdamApp package in accord to here in this document. Place the binary file generated in step 1 under data/cnn directory.
...
A tool (cvtool) to be used to process the step1 above is provided by Adam. Please see here for how to use cvtool.
Appendix
Appendix A: Regarding product security
Please be aware of the following matters to ensure product security throughout the course of your development.
- Perform static analysis
- Verify vulnerability of the app.
- When using OSS, use the latest OSS or check for known vulnerabilities before using.
Appendix B: CPU and RAM available in AdamApp
The CPU usage and RAM usage available in AdamApp varies depending on i-PRO camera model. The camera will restrain AdamApp not to use CPU when CPU usage limit has been reached. AdamApp will be forced to terminate as the memory usage reaches the limit. Please access the URL for usage information for each model.
https://dev-partner.i-pro.com/space/TPFAQ/694780048
Appendix C: About development in Python
Python environment of i-PRO camera
The Python environment pre-installed to the i-PRO camera is shown below.
Interpreter : Python 3.7.9
External library : python adam module for ADAM API
Structure of the Python version AdamApp
The Python version AdamApp runs 2 threads, Main thread and Python thread as shown below.
...
Python scripts are usually executed on Python thread. On the other hand, callback functions such as stopCallback, httpCallback and appPrefCallback are executed on Main thread.
...
Appendix
...
Appendix A: Regarding product security
Please be aware of the following matters to ensure product security throughout the course of your development.
- Perform static analysis
- Verify vulnerability of the app.
- When using OSS, use the latest OSS or check for known vulnerabilities before using.