<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Applying custom kernel filters in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/Applying-custom-kernel-filters/m-p/858007#M7422</link>
    <description>&lt;DIV style="margin:0px;"&gt;According ippiFilter declaration&lt;BR /&gt;&lt;BR /&gt;
&lt;P&gt;/* ////////////////////////////////////////////////////////////////////////////&lt;BR /&gt;// Names: ippiFilter_8u_C1R&lt;BR /&gt;//&lt;BR /&gt;// Purpose: Filters an image using a general integer rectangular kernel&lt;BR /&gt;// Returns:&lt;BR /&gt;// ippStsNoErr OK&lt;BR /&gt;// ippStsNullPtrErr One of the pointers is NULL&lt;BR /&gt;// ippStsSizeErr dstRoiSize or kernelSize has a field with zero or negative value&lt;BR /&gt;// ippStsDivisorErr divisor value is zero, function execution is interrupted&lt;BR /&gt;//&lt;BR /&gt;// Parameters:&lt;BR /&gt;// pSrc Pointer to the source buffer&lt;BR /&gt;// srcStep Step in bytes through the source image buffer&lt;BR /&gt;// pDst Pointer to the destination buffer&lt;BR /&gt;// dstStep Step in bytes through the destination image buffer&lt;BR /&gt;// dstRoiSize Size of the source and destination ROI in pixels&lt;BR /&gt;// pKernel Pointer to the kernel values ( 32s kernel )&lt;BR /&gt;// kernelSize Size of the rectangular kernel in pixels.&lt;BR /&gt;// anchor Anchor cell specifying the rectangular kernel alignment&lt;BR /&gt;// with respect to the position of the input pixel&lt;BR /&gt;// divisor The integer value by which the computed result is divided.&lt;BR /&gt;*/&lt;/P&gt;
&lt;P&gt;IPPAPI( IppStatus, ippiFilter_8u_C1R, ( const Ipp8u* pSrc, int srcStep,&lt;BR /&gt; Ipp8u* pDst, int dstStep, IppiSize dstRoiSize, const Ipp32s* pKernel,&lt;BR /&gt; IppiSize kernelSize, IppiPoint anchor, int divisor ))&lt;/P&gt;
&lt;/DIV&gt;
you need to define 3x3 memory buffer which will be reffered through pKernel pointer then specufy kernelSize (3x3 in your case), fill kernel with desired values and specify kernel anchor point. Note, there is divisor parameter which might be used to normalize filtered results.&lt;BR /&gt;Please look at IPP manual for more details.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt; Vladimir</description>
    <pubDate>Thu, 16 Apr 2009 16:50:38 GMT</pubDate>
    <dc:creator>Vladimir_Dudnik</dc:creator>
    <dc:date>2009-04-16T16:50:38Z</dc:date>
    <item>
      <title>Applying custom kernel filters</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Applying-custom-kernel-filters/m-p/858004#M7419</link>
      <description>I am using version 5.3 and there are a wide range of filters available, but I need to apply a user defined 3x3 filter. Is there any ipp function that can do this?</description>
      <pubDate>Thu, 16 Apr 2009 08:22:25 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Applying-custom-kernel-filters/m-p/858004#M7419</guid>
      <dc:creator>pholden</dc:creator>
      <dc:date>2009-04-16T08:22:25Z</dc:date>
    </item>
    <item>
      <title>Re: Applying custom kernel filters</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Applying-custom-kernel-filters/m-p/858005#M7420</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
Hello,&lt;BR /&gt;&lt;BR /&gt;there is general ippiFilter function which takes a kernel as a parameter, so you may define your own kernels.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt; Vladimir&lt;BR /&gt;</description>
      <pubDate>Thu, 16 Apr 2009 08:43:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Applying-custom-kernel-filters/m-p/858005#M7420</guid>
      <dc:creator>Vladimir_Dudnik</dc:creator>
      <dc:date>2009-04-16T08:43:33Z</dc:date>
    </item>
    <item>
      <title>Re: Applying custom kernel filters</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Applying-custom-kernel-filters/m-p/858006#M7421</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="margin-top: 5px; width: 100%;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/336498"&gt;Vladimir Dudnik (Intel)&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;there is general ippiFilter function which takes a kernel as a parameter, so you may define your own kernels.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt; Vladimir&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;BR /&gt;Thanks Vladimir&lt;BR /&gt;&lt;BR /&gt;I think this may do the job by specifying a 3x3 roi sizeand then providing the anchor and divisor to specify particular parts of the kernel matrix. I am new to filters so thanks very much for your help.&lt;BR /&gt;&lt;BR /&gt;Pholden</description>
      <pubDate>Thu, 16 Apr 2009 13:36:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Applying-custom-kernel-filters/m-p/858006#M7421</guid>
      <dc:creator>pholden</dc:creator>
      <dc:date>2009-04-16T13:36:10Z</dc:date>
    </item>
    <item>
      <title>Re: Applying custom kernel filters</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Applying-custom-kernel-filters/m-p/858007#M7422</link>
      <description>&lt;DIV style="margin:0px;"&gt;According ippiFilter declaration&lt;BR /&gt;&lt;BR /&gt;
&lt;P&gt;/* ////////////////////////////////////////////////////////////////////////////&lt;BR /&gt;// Names: ippiFilter_8u_C1R&lt;BR /&gt;//&lt;BR /&gt;// Purpose: Filters an image using a general integer rectangular kernel&lt;BR /&gt;// Returns:&lt;BR /&gt;// ippStsNoErr OK&lt;BR /&gt;// ippStsNullPtrErr One of the pointers is NULL&lt;BR /&gt;// ippStsSizeErr dstRoiSize or kernelSize has a field with zero or negative value&lt;BR /&gt;// ippStsDivisorErr divisor value is zero, function execution is interrupted&lt;BR /&gt;//&lt;BR /&gt;// Parameters:&lt;BR /&gt;// pSrc Pointer to the source buffer&lt;BR /&gt;// srcStep Step in bytes through the source image buffer&lt;BR /&gt;// pDst Pointer to the destination buffer&lt;BR /&gt;// dstStep Step in bytes through the destination image buffer&lt;BR /&gt;// dstRoiSize Size of the source and destination ROI in pixels&lt;BR /&gt;// pKernel Pointer to the kernel values ( 32s kernel )&lt;BR /&gt;// kernelSize Size of the rectangular kernel in pixels.&lt;BR /&gt;// anchor Anchor cell specifying the rectangular kernel alignment&lt;BR /&gt;// with respect to the position of the input pixel&lt;BR /&gt;// divisor The integer value by which the computed result is divided.&lt;BR /&gt;*/&lt;/P&gt;
&lt;P&gt;IPPAPI( IppStatus, ippiFilter_8u_C1R, ( const Ipp8u* pSrc, int srcStep,&lt;BR /&gt; Ipp8u* pDst, int dstStep, IppiSize dstRoiSize, const Ipp32s* pKernel,&lt;BR /&gt; IppiSize kernelSize, IppiPoint anchor, int divisor ))&lt;/P&gt;
&lt;/DIV&gt;
you need to define 3x3 memory buffer which will be reffered through pKernel pointer then specufy kernelSize (3x3 in your case), fill kernel with desired values and specify kernel anchor point. Note, there is divisor parameter which might be used to normalize filtered results.&lt;BR /&gt;Please look at IPP manual for more details.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt; Vladimir</description>
      <pubDate>Thu, 16 Apr 2009 16:50:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Applying-custom-kernel-filters/m-p/858007#M7422</guid>
      <dc:creator>Vladimir_Dudnik</dc:creator>
      <dc:date>2009-04-16T16:50:38Z</dc:date>
    </item>
  </channel>
</rss>

