Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.thistle.tech/llms.txt

Use this file to discover all available pages before exploring further.

Edge Impulse models (e.g., .eim) are loaded via the SDK’s ImageImpulseRunner. With the secure loader, verification happens before the model is initialized:
from edge_impulse_linux.image import ImageImpulseRunner
from thistle_secure_loader import secure_load

def edge_impulse_loader(path: str):
    runner = ImageImpulseRunner(path)
    runner.init()
    return runner

MODEL_PATH = "modelfile.eim"

runner = secure_load(MODEL_PATH, edge_impulse_loader)
print("Edge Impulse model verified and ready.")
The secure_load call verifies the .eim file’s signature using tuc before passing it to ImageImpulseRunner. If the signature check fails, a ModelVerificationError is raised and the model is never loaded.

Requirements

edge-impulse-linux>=1.0.0
PyAudio>=0.2.14                # required by edge_impulse_linux (audio submodule loaded on import)
opencv-python>=4.5.1,<5        # required by edge_impulse_linux (image processing)