Feature tracking using dv_processing through python

62 views
Skip to first unread message

Johan R.

unread,
Sep 19, 2023, 3:26:38 AM9/19/23
to davis-users
Hello!

Have anybody worked with different feature settings apart from the default? I am trying to make sense of the documentation but can't seem to set different detector settings such as FAST-threshold for example. Currently using dv.features.ImageFeatureLKTracker.RegularTracker.

I am familiarizing myself with dv_processing in Python and wish to do a simple demonstration of frame based feature tracking on edge maps.

All the best,
Johan

Jonatan Kronander

unread,
Sep 19, 2023, 4:07:52 PM9/19/23
to davis-users
Hi Johan, 
Did you have a look at the tracker samples in the documentation? You can find them here: https://dv-processing.inivation.com/rel_1.7/feature_tracking.html 

For the ImageFeatureLKTracker.RegularTracker you should be able to set the LKTracker config when you intialise the tracker. See here for info https://dv-processing.inivation.com/rel_1.7/api.html#_CPPv4N2dv8features17LucasKanadeConfigE 

Hope this helps!

Best,
Jonatan

Johan R.

unread,
Sep 25, 2023, 4:40:09 AM9/25/23
to davis-users
Hi Jonatan,

Thank you for the reply. I fear I made myself unclear in my first post. I have looked at most of the examples on the documentation of dv_processing and the demo is at this stage very similar to the feature tracking example presented there.

Basically, I would like to pass a custom feature detector to an instance of dv::features::EventCombinedLKTracker::RegularTracker and hopefully be able to experiment with different feature detectors. By default this class uses a FAST corner detector with a threshold of 10, as I understand it.
I tried instantiating a FAST detector using OpenCV with a different threshold but to no results.

My questions are:
Firstly, how would I go about changing the threshold of the default implemented FAST detector?
Secondly, given a custom detector class, I suspect it needs to inherit from some abstract class implementing methods such as detect(). Is there a specification on the requirements what an arbitrary detector class need to fulfill?

All the best and thank you for replying!
Johan

Pierre Giraud

unread,
Sep 25, 2023, 10:17:49 AM9/25/23
to Johan R., davis-users
Hi Johan,

Sadly, setting custom detectors for our tracker classes is not available in Python.
Indeed, since this option is implemented in our library using templates in C++, we are not able to easily expose it to Python.
Therefore, in Python, those trackers can only be used with the default provided detectors (that also cannot be changed).

If you want to use the full functionalities of our Feature Trackers in dv-processing, you will have to use C++.

We are really sorry about that and hope that you can understand the limitations.
Best Regards,

--

Pierre Giraud
Software Engineer

iniVation AG



From: davis...@googlegroups.com <davis...@googlegroups.com> on behalf of Johan R. <johan...@gmail.com>
Sent: Monday, 25 September 2023 10:40
To: davis-users <davis...@googlegroups.com>
Subject: [davis-users] Re: Feature tracking using dv_processing through python
 
--
You received this message because you are subscribed to the Google Groups "davis-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to davis-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/davis-users/00314c1a-4dc0-4fcb-bc7e-30fa7fdaf234n%40googlegroups.com.

Johan R.

unread,
Sep 25, 2023, 10:58:48 AM9/25/23
to davis-users
Hi Pierre,

I suspected this might be the case. I appreciate the information. :)

All the best,
Johan
Reply all
Reply to author
Forward
0 new messages