Corner tracker IP to Composable Overlays

Hello all,

I have been testing out the composable overlays and it seems to work fine. I would need to include the corner tracker functionality from the Vitis video library to the pipeline ( L3/examples/cornertracker). Could you give me some pointers how to get started?

I am running it on the PYNQ-Z2 board.

1 Like

Hi @hnkka,

Welcome to the PYNQ community.

Someone wrote a post about this

I can provide guidance on the methodology, but not on the implementation/usage of that function part as this is outside the scope of this forum.

Mario

1 Like

Thank you for the reply @marioruiz

I went through the guide you linked and it seems clear how to add a single functionality to the pipeline. I am just wondering how things work when I have these multiple different functions that the corner tracker uses. Namely:

  • xf::cv::cornerHarris
  • xf::cv:: cornersImgToList
  • xf::cv::cornerUpdate
  • xf::cv::pyrDown
  • xf::cv::densePyrOpticalFlow

Should I add these functions separately to the pipeline and then connect them on the software side. Or does the Vitis library offer some kind of a wrapper for these functions which I can then add to the pipeline to get the full corner tracker functionality?

Hi @hnkka,

You have to think about the available ports on the switch, how these functions connect to each other (data path) and the resources available in the design.

Should I add these functions separately to the pipeline and then connect them on the software side. Or does the Vitis library offer some kind of a wrapper for these functions which I can then add to the pipeline to get the full corner tracker functionality?

This is something you have to decide yourself. You can wrap these primitives into a bigger kernels. Look up examples on the L2/L3 folder on the Vision libraries. Canny can be an example.

Mario

1 Like