How to create filter using openvx/opencv ?

Hello All,
I am a newbie in Jetson I am learning openvx and also opencv. In my project I want to create a filter called Savitzky Golay since it is not available in either of them. So , can anyone please help me in How to create a filter in any of these language ?


Guess that Savitzky Golay is a custom-kernel filter. Please correct me if I’m wrong.

For custom-kernel, you can assign the filter value by your own. And then pass the custom-kernel with standard filtering API.
Here is a tutorial for your reference:


Yes, it is a custom filter but a polynomial filter


You can assign the filter value first and then call the custom-kernel filtering API.
Please check the link mentioned in comment #2.

In the link you suggested is related to creating a kernel first, but savitzky filter doesn’t has kernel it works on polynomial


We are not familiar with Savitzky Golay filter.
Guess that there is a discretized approximation for the polynomial filter.
So, please decide the polynomial filter coefficients first, and the call the custom kernel API.

Another WAR is to write a simple CUDA code for this.

Thanx Assta It works.

Hi aasta,
Since I have completed it in Opencv can you please tell me for Openvx too ? How to create kernels is openvx ?


Please check custom convolution function.
Information can be found at VisionWorks document:

VisionWorks API
Khronos OpenVX 1.1 API
OpenVX API Modules
Vision Functions
Custom Convolution