Utilize Custom Processing Blocks in Your Image ML Pipelines

In computer vision, the term (local) features designates interesting areas of the image. These areas can correspond to contours, points or regions of interest. Each feature detected is associated with a vector, called a feature descriptor or feature vector, which, as its name suggests, describes the area concerned. In short, a good feature must be unique enough to be able to differentiate two different classes of images, and generic enough to be able to easily recognize images of the same class despite the diversity of representations.


This is a companion discussion topic for the original entry at https://www.edgeimpulse.com/blog/utilize-custom-processing-blocks-in-your-image-ml-pipelines
1 Like

@mathijs Can the custom processing block be used with OpenMV or it just works with exporting the C++ library? When choosing to build a library for OpenMV, it doesn’t give any errors but I couldn’t find any custom processing block function on the script generated.

Hello,

When you are using custom dsp block, you need to re-implement that custom processing in our SDK (indeed we don’t know what your custom processing is about).
Please see Building custom processing blocks - Edge Impulse Documentation

For this use case and for OpenMV that is actually a good question as you might be able to use directly the openCV library to pre-process your data and pass that to the classifier. I don’t have the answer now but feel free to tell me if it works if you test it.

Best,

Louis

Hey, I tested it. Currently, building a library for OpenMV doesn’t export the custom processing block. For Cpp, the exported library does give some templates, but none for OpenMV.

The dependences in the requirements.txt file dont seem to work