RT1062 Extremely Low FPS Compared to H7 R1

Hi everyone,

I’m using the OpenMV RT1062, and I’ve noticed that it runs at significantly lower FPS compared to the H7 R1, even when using the same code or the built-in find_apriltags example. For example:

-The H7 R1 runs the find_apriltags example at 60 FPS.
-The RT1062 only achieves around 13 FPS with the same example.

I’ve tried several optimizations:

-Reducing the resolution to QVGA and setting a 240x240 window.
-Disabling auto white balance, gain, and exposure, while setting a manual exposure time.
-Using GRAYSCALE to minimize processing load.
-Running the latest firmware on the RT1062.

Despite these changes, the FPS remains much lower than expected. Given that the RT1062 is a more advanced camera, I’m unsure why it underperforms compared to the older H7 R1.

Is there something specific about the RT1062 (e.g., OV5640 sensor) or its firmware that I should configure differently to get better FPS? Any guidance would be greatly appreciated.

Thank you!

It’s because it stores the image in SDRAM. So, the memory bandwidth of this is much less than the internal SRAM (8x). To hide this we try to allocate data structures inside of an internal stack on the SRAM. But, if this is exhausted then the allocations go to SDRAM.

Given this, expect the H7 R1 to be more performant. However, it can’t go to a high res.

Performance should equalize at a small enough resolution where all allocations go into the internal stack. However, apriltags is a rather heavy user of allocs. So, you’d need to be at the QQVGA resolution or lower before you see performance start to equalize.

Thanks for the explanation. Given this, would the H7 Plus perform better than both the H7 R1 and the RT1062 for my use case? I’m trying to find the best option that can run detection fast without compromising resolution too much.

The H7 Plus has faster internal SRAM than the RT1062 and faster external SDRAM than the RT1062. So, the algorithm will be faster on it. We try our best to have as many buffers in SRAM versus SDRAM as possible. However, the main frame buffer is in SDRAM versus SRAM on the H7 Plus against the H7. Given this, there’s always a speed hit on the H7 Plus or RT1062 even at low reses where we can fit all other buffers into SRAM.

Would the H7 R2 perform better than the H7 R1 for my use case?

Since the H7 R1 seems to outperform both the RT1062 and H7 Plus in FPS at low res for AprilTag detection, would the H7 R2 be a better option? Would it maintain the same speed as the H7 R1?

The only difference between the R1 and R2 is the camera sensor. The original OV7725 camera sensor for the R1 is faster than the MT9M114 on the R2. However, the camera sensor FPS doesn’t matter as you’re not going to get anywhere near its max for the AprilTag algorithm.