You can’t open such a large image with your OpenMV Cam and store in on the heap. We only have about 20kb for that. Instead, you need to load it I to the frame buffer. Add copy_to_fb=True to the load image command. This loads the image into the frame buffer which has about 360kb versus the general purpose heap.
As for jpeg images, we don’t support decompressing them so you can do anything with them other than save them on the disk. Please load just a bmp file into memory. As for getting a BMP file corrupted error… Mmm, that means I didn’t like the file format. Um, can you save the bmp with MS paint? Also load it with copy_to_fb set to true.
Finally note that the image will not appear immediately in the IDE after loading once you’ve used that command. We transfer whatever image was in the frame buffer to the IDE when snapshot is called. So, you should call snapshot first, then overwrite the image with load, and then call snapshot again to see the image in the IDE. The easiest thing to do is just to add the load command after the snapshot command in a loop and everything will work fine. The requirement to call snapshot currently will be removed in the next firmware version.
Also, there was a bug with load before. Make sure you have the latest firmware flashed.