Age | Commit message (Collapse) | Author |
|
Part 1
* Add KwsClassifier
* KwsPostProcess can now be told to average results
* Averaging is handlded by KwsClassifier
* Current sliding window index is now an argument of DoPreProcess
Change-Id: I07626da595ad1cbd982e8366f0d1bb56d1040459
|
|
Most of the issues identified by coverity scan as high are
false-positives revolving around intrinsics of lambda-function in C++.
This patch fixes high risk reports about function pointer not being
initialized.
Signed-off-by: Maksims Svecovs <maksims.svecovs@arm.com>
Change-Id: I52998ed4603ca943568f7bec5cb0d6a77731b02f
|
|
Documentation md files added under source tree with links to
the main docs. Minor updates to FAQs for MLECO-3251 as well.
Change-Id: Ifdcc587f2fcf77228fd46e211d3f9c3963bc9b97
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
* CMake version requirement bumped up to 3.21.0
* CMake 3.22.4 installed in the local Python virtualenv
* CPU flags updated in toolchain files.
* Using __ARM_FEATURE_DSP instead of potentially defining
ARM_MATH_DSP wrongly.
* CMake project version bumped up to 22.05.0
Changes also made for MLECO-3107 (pack generation):
* TensorFlow Lite Micro CMSIS-pack version updated to
1.22.02.
* Change to using __ARM_FEATURE_DSP will also help the
generated pack.
Partial changes for MLECO-3095:
* CMSIS updated to version post 5.9.0
* TensorFlow Lite Micro updated to latest available
* Ethos-U driver and core-platform repositories updated
to 20.05_rc2 tags.
Change-Id: I012c9e65897aed8ce589cff9bfe3a19efc3edeb9
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
OD API now takes in these paramaters as part of the constructor
Change-Id: I4cce25e364b2a99847b4540440db059997f6a81b
|
|
Improvements based on feedback from initial tests done with
the generated pack.
Change-Id: Ia769dd6264c53e6b9337473e1c50bdfa6469a216
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Certain UCs required additional work due to case context variables which also
became part of a namespace in generated files.
Solution was to declare these extra variables as part of the UC namespace in the respective model.hpp files.
Additional changes to standardise use of namespaces may be required - proposing new task.
Minor typo and rewording of customizing.md in relevant sections included.
Signed-off-by: Liam Barry <liam.barry@arm.com>
Change-Id: Ie78f82a30be252cb841136ea5115f21fc8d762cb
|
|
Platform agnostic application sources are moved into application
api module with their own independent CMake projects.
Changes for MLECO-3080 also included - they create CMake projects
individial API's (again, platform agnostic) that dependent on the
common logic. The API for KWS_API "joint" API has been removed and
now the use case relies on individual KWS, and ASR API libraries.
Change-Id: I1f7748dc767abb3904634a04e0991b74ac7b756d
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: I36f61ce74bf17f7b327cdae9704a22ca54144f37
|
|
TensorFlow Lite Micro's error reporting fix with some minor
wiring changes.
Change-Id: Ib011ab132c82db5809b75a7c4b983a3db2a808d6
|
|
Looks large but it is mainly just many small adjustments
Removed the inference runner code as it wasn't used
Fixes to doc strings
Consistent naming e.g. Asr/Kws instead of ASR/KWS
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: I43b620b5c51d7910a29a63b509ac4d8a82c3a8fc
|
|
Cleaning up HAL sources by removing unnecessary redirections
with function pointers. The "platform packages" under HAL are
now streamlined enough to not need any major HAL wrapping (as
was the case before).
This allows us to have a very thin HAL layer that sits on top
of the platform and compnent packs. Also helps in getting rid
of "hal platform" pointer being passed around in the code to
use any HAL functionality.
Change-Id: I04b2057f972aad7a5cfb4a396bcdf147c9f9ef1c
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
All ML related work for image classification seperated out and accessed via new Runner
Further work to improve profiling integration to be done in follow up ticket: MLECO-3154
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: I0fe0550c932241a2d335a560ecb7abc329c934e9
|
|
Further to the HAL refactoring done in previous commits,
this CR simpifies HAL by removing data_acq and data_psn
"modules". The associated function pointers have been
removed.
Change-Id: I04c194c08dfe0aff98ce4e0f0f056bac254c137d
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Moving away from CMake description of targets and generation of
platform header files (for memory addresses and IRQ numbers).
Instead these headers are part of the repository under their
respective platform-driver packages under HAL sources.
Change-Id: I9bd3e68eb17385f8b93eb3d8d76b212ce0e1a6d5
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
MLECO-2949: Platform drivers should own NPU and TA init
Change-Id: I13606a0197f137816bae803eb9d7d46c358b5fb8
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
|
|
* Add ImageUtils
* Move image related code from UseCaseCommonUtils to ImageUtils
* Move NMS related code to ImageUtils
* Delete test specific ImageUtils and use new ImageUtils
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: Icbf5dd9c6a941b0126ecdf69a0c9d9969f22729f
|
|
Profiler is a stand alone static lib that will depend on
log and hal targets.
Change-Id: Ibbff289c6760982f54ae278d95a054e73db018c8
|
|
MLECO-2930: logging macros were extracted from hal.h and used separately around the code.
MLECO-2931: arm_math lib introduced, cmsis-dsp removed from top level linkage.
MLECO-2915: platform related post-build steps.
Change-Id: Id718884e22f262a5c070ded3f3f5d4b048820147
Signed-off-by: alexander <alexander.efremov@arm.com>
|
|
Change-Id: Ic14e93a50fb7b3f3cfd9497bac1280794cc0fc15
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
|
|
Change-Id: I182bfa55b5ae743d6f0b9f5c766b746202a7968d
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
|
|
Replaced overloaded PresentInferenceresults with single function and removed
logic to handle arguments which are no longer passed.
Change-Id: I745271638fcf78b7121c2a4b95844b752643bac2
Signed-off-by: Liam Barry <liam.barry@arm.com>
|
|
Aligning with output from other use cases, inference runner
output now prints the number of inferences as one.
Change-Id: Ifc03385a5de86477508fe8c377d481b7140a8429
Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Added SoftMax function to Mathutils to allow MicroNet
to output probability as it does not nativelu have this layer.
Minor refactoring to accommodate Softmax Calculations
Extensive renaming and updating of documentation and resource download script.
Added SoftMax function to Mathutils to allow MicroNet
to output probability.
Change-Id: I7cbbda1024d14b85c9ac1beea7ca8fbffd0b6eb5
Signed-off-by: Liam Barry <liam.barry@arm.com>
|
|
* LCD display behavior for Run All now matches Run Next
* Remove repeated code
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: I16706187fd4e7a59dd935783f5bfb8731435f381
|
|
* CMSIS-DSP acceleration will now be used for FFT in RNNoise pre-processing
* PESQ scores tested and similar
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: Ifeebc041f58867909b27c948950e08f8f39ef276
|
|
* Currently using 21.11 release candidates
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: I696b48c3a4c87c5dca3bbee957049790d900b48e
|
|
These changes will limit the use of FPGA internal SRAM from a max
of 4MiB to 2MiB and the BRAM from 2MiB to 1MiB.
Change-Id: I69c8e695aee26ff4f235bfe83ffd26efbd66f547
|
|
-Updated CMake to use C++ 14
-Removed cmsis makefile include from tensorflow.cmake
-Documentation update
-Added more flags for processor in CMake
Change-Id: I1c2b72141e98a5cf8bb09176d7c331da3b05b4c5
|
|
* Changed image->cc conversion to be similar with preprocessing
of img_class and vww models: images are scaled maintaing the
aspect ration and then the centre crop of the correct size
is taken.
* VWW applies input quantization info to the int8 image
(prior converted to [0,1] float range).
* Changed adult_blur to a image without person.
* Fix menu print when selecting a specific ifm to run
(Select message was displayed after typing something)
Change-Id: Ie6cde7ab4835ea842667b87397458a5d32131df3
|
|
Adding sine function and allowing FFTs to be computed for cases where
the FFT len is not a power of 2. In this case, the naive implementation
is used. Option for computing FFT for a complex vector has also been
added, although, the CMSIS-DSP flow needs to be tested.
Change-Id: Iad9902b946f3088de91a5f67acfb4cb3d0b00457
|
|
Change-Id: Icf09410f12072e8d7850dd1e540c3243af24ed09
|
|
AN547 sets the core clock for both M55 and U55 to 32MHz, while the
blocks on APB use a different clock of 25MHz.
Note: this will have not change any of the MPS3 FPGA profiling
numbers (cycle counts and elapsed time in milliseconds) for
Cortex-M55 as this was already using the correct counters under
MPS3. The only difference would be that the system tick interrupt
will fire every 10ms as intended instead of every 7.8125 ms as it
is doing with current software.
Change-Id: I77cd269c7c02f5d6e65328eb285185bae74e4e36
|
|
* Update all dependancies to 21.08
* Refactoring to fit the new changes
Change-Id: Icc2ae3628ee6e8fbc0af2cd8f91e368c9ccae053
|
|
With this patch, the generic inference runner use-case can be
configured to accept the model tflite file at run-time via
the FVP's command line parameters. Same is true for the IFM
and the inference results can be dumped out too.
NOTE: this change is only for supporting the FVP, the FPGA
implementation will not allow additional loading for the
changes in this patch to be useful.
Change-Id: I1318bd5b0cfb7bb635ced6fe58d22c3e401d2547
|
|
MLECO-2083: Refactoring img_class and visual wake word
*Added source files for visual wake word
*Added tests
*Added docs
*Added new images for visual wake word demo
*Refactored common functions in img_class, visual wake word and other usecases
Change-Id: Ibd25854e19a5517f940a8d3086a5d4835fab89e9
Signed-off-by: Éanna Ó Catháin <eanna.ocathain@arm.com>
|
|
The ApplicationContext::Set function allocates always new memory for the attibute.
When called multiple times (like it is done in most of the UseCaseHandler) this will generate a memory leak.
The function now checks if the attibute exists; If it does it frees the memory and then allocate memory for the new attribute.
Change-Id: I21db10009d6d0e360eab2dd33c344ef72eafe77f
|
|
Change-Id: I0dab5308bf5c3eba9b4bb2c9bf0939ac9598d2f6
|
|
Change-Id: Id5c09851d4377cc52039a4988df93cfd84dab9c0
Signed-off-by: Éanna Ó Catháin <eanna.ocathain@arm.com>
|
|
Change-Id: I86b74c35572b52977991681e95c63934fed08bf0
Signed-off-by: Éanna Ó Catháin <eanna.ocathain@arm.com>
|
|
Change-Id: I744a4eb2553207004c9403b956e5bd9e9b352bfb
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
|
|
* Now uses seperate TFLu github repo
* Fixes to align with API changes
* Update ASR model ops and re-enable ASR inference tests
* Set default release level to release_with_logs
Signed-off-by: Richard Burton <richard.burton@arm.com>
Change-Id: I57612088985dece1413c5c00a6e442381e07dd91
|
|
* Fix broken link "building-for-different-ethos_u-npu-variants"
* Corstone-300 + Ethos-U65 NPU support in memory_considerations
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
Change-Id: I2e99e2d24d3cd0bb64e06481862660d1b0679f20
|
|
Change-Id: I64ab930a1de5210f435f91bed7600a700581946f
Signed-off-by: Isabella Gottardi <isabella.gottardi@arm.com>
Reviewed-on: https://eu-gerrit-2.euhpc.arm.com/c/ml/ecosystem/ml-embedded-evaluation-kit/+/459126
Tested-by: mlecosys <mlecosys@arm.com>
Tested-by: George Gekov <george.gekov@arm.com>
Reviewed-by: George Gekov <george.gekov@arm.com>
Reviewed-by: Kshitij Sisodia <kshitij.sisodia@arm.com>
|
|
Change-Id: I803b1d4d8b4a19fa83c5c329760de2f7623b63fc
|
|
ASRSlidingWindow can be used in other use-cases,
thus it was renamed to decouple from ASR.
Signed-off-by: alexander <alexander.efremov@arm.com>
Change-Id: I2df977e4f18f490a532e0f27e3625b153ca464d7
|
|
The counter val could have been 0 when read the first time
quickly after the init function. The init function will now
wait for the SysTick counter to start before returning.
Also included are some minor changes to get around GNU's
file stream implementation being line buffered.
Change-Id: I8d51fef5d85f1261a6a5710608349d7ecc19ad62
|
|
Change-Id: I431205c66170e81137419719af60bd7d87a3ef5b
Signed-off-by: alexander <alexander.efremov@arm.com>
|
|
Core driver and sofware dependencies updated to latest release
candidate revisions. Note: TensorFlow Lite Micro has not been
updated.
Also, gcc warnings for simple_platform target and ad use case have
been fixed.
Change-Id: I455b421f34375a719a941e6e220fe292a57613f5
|
|
Fixed the CPU counter being truncated by the diff function's return type.
Change-Id: I9417dbc9da357f8593b67c3a94620ac6e62eddbf
|