Custom dataset error OSError: Currently, only float32 input type is supported

Using Edge Impulse to try and create a custom dataset.

After following the 15 minute tutorial of creating a custom dataset, I quickly realized this may only be for the H7 plus. Upon running the example .py they provide I immediately ran into the memory size problem and got that handled.

The next error is one that I can not seem to get past. As described in the topic of this post it is OSError Currently only float32 input type is supported.

It only occurs after the program runs and tries to take the first capture.

Hardware/software:
H7 R1 camera (non plus) OV7725 Sensor. Firmware 3.9.4 [Latest]

I have found some information relating to this from older posts in 2018 or so about straight tensor flow, but nothing related to edge impulse.

I noticed that on some of the deployments in edge impulse it was possible to change the output from unit8 to float32, but this is not possible for the OpenMV build.

There was a firmware build for openMV from 19 that says it now supports int8, uint8, or float32. This seems like it should have taken care of this issue given the context of the thread it was in.

Is it currently possible to use edge impulse with the non plus H7? The edge impulse site does say it supports the H7 plus with not mention of the original H7.

Thank you for taking the time to look at this.

Did you use transfer learning or a custom kernel? The issue is in TensorFlow code. Not our stuff. The Google tensor flow allocator doesn’t support your model it appears.

If you used transfer learning it should shave worked right.

These types of issues can only be fixed by changing the model. I don’t have a fix on my end.

I used transfer learning directly from the Ei walk through.
Images attached of the process.

Thanks for the feedback. Much appreciated. I was 50/50 whether it was in opencam or in EI. I started with the code that generated the error as my reasoning. I will post up in EI as I am not sure what I could change about my model at this point. I took the pictures directly from the opencam and imported them using the capture data by loading the files from my PC. I also tried every parameter that would fit inside the 400k.

Did you ever find any solution to your problem? I’m running into the same issue as well using the non-plus version of the OpenMV cam.

Like you I’m following Edge Impulse’s tutorial for creating a custom dataset - capturing image using the OpenMV IDE, loading them to EI, and using transfer learning to train a MobileNet model. I then build the depolyment and copy the appropriate files to the OpenMV cam.

Like you, when I run the provided script I get the exact same error. (The image you posted of your script and the error is exactly what I’m seeing)

Any updates on if this is fixable would be amazing.

Edit: I’m using OpenMV Cam H7 R2 (non plus). Firmware 4.0.2

@rhh1272 I never did get a fix for the original H7. There was already a plus version on its way, this worked flawlessly upon arrival. Sorry I don’t have a better answer for you, but I think it has something to do with the chipset and possibly the package support that was done on the EI side.

Indeed, I ended up buying a Plus version and have been using it now without any issues. Who knows