Spatial/Temporal Filter

How can we set/enable the spatial/temporal filter in the OpenMV Cam RT1062 with a Flir Lepton 3.5?

I don’t know what that is. Can you elaborate?

It is part of the Video pipeline.

7.3 Spatial / Temporal Filtering
The image pipeline includes a number of sophisticated image filters designed to enhance signal-to-noise ratio
(SNR) by eliminating temporal noise and residual non-uniformity. The filtering suite includes a scene-based
non-uniformity correction (SBNUC) algorithm which relies on motion within the scene to isolate fixed pattern
noise (FPN) from image content.

There is a function already in the OpenMV repo. I wanted to know how can we enable it or it is already enabled by default?

I’ve never thought it was needed. However, you can do this yourself via the ioctls in the sensor module.

sensor.ioctl(*args , **kwargs )→ Any

  • sensor.IOCTL_LEPTON_SET_ATTRIBUTE - Pass this enum to set a FLIR Lepton SDK attribute.

    • The first argument is the 16-bit attribute ID to set (set the FLIR Lepton SDK).
    • The second argument is a MicroPython byte array of bytes to write (should be a multiple of 16-bits). Create the byte array using struct following the FLIR Lepton SDK.
  • sensor.IOCTL_LEPTON_GET_ATTRIBUTE - Pass this enum to get a FLIR Lepton SDK attribute.

    • The first argument is the 16-bit attribute ID to set (set the FLIR Lepton SDK).
    • Returns a MicroPython byte array of the attribute. Use struct to deserialize the byte array following the FLIR Lepton SDK.

See this document: 1 (sparkfun.com)

Note, I recommend just looking at the C code to determine the 16-bit value and struct format: openmv/src/drivers/lepton/include/LEPTON_OEM.h at eaf0cbd014048c3dc31ad108bfbb6e8cd986e0e5 · openmv/openmv (github.com)

1 Like

Thanks, @kwagyeman for the detailed information.

BTW, it seems enabled by default.