<?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 Trouble with the Canny operator in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/Trouble-with-the-Canny-operator/m-p/956702#M19140</link>
    <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Hi,&lt;/DIV&gt;
&lt;DIV&gt; I am having difficulties getting the canny operator to work correctly for me. I am trying to do edge detection in the hue part of an RGB image. I am extracting the hue correctly and am using the following code to compute the edges:&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Note: HSVPanes[0] contains the hue values.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;IppiSize image = {buf-&amp;gt;w(), buf-&amp;gt;h()};&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;ippiCannyGetSize(image, &amp;amp;numBytesRequired);&lt;BR /&gt;Ipp8u *tempBuf = (Ipp8u*)malloc(sizeof(unsigned char)*numBytesRequired*1);&lt;/DIV&gt;
&lt;DIV&gt;Ipp16s *derivX = ippiMalloc_16s_C1(buf-&amp;gt;w(), buf-&amp;gt;h(), &amp;amp;derivStep);&lt;BR /&gt;Ipp16s *derivY = ippiMalloc_16s_C1(buf-&amp;gt;w(), buf-&amp;gt;h(), &amp;amp;derivStep);&lt;BR /&gt;Ipp8u *t3 = ippiMalloc_8u_C1(buf-&amp;gt;w(), buf-&amp;gt;h(), &amp;amp;paneSB);&lt;/DIV&gt;
&lt;DIV&gt;ippiSobel3x3_Dy_8u16s_C1R(HSVPanes[0], paneSB, derivY, derivStep, IPCV_ORIGIN_TL, image);&lt;BR /&gt;ippiSobel3x3_Dx_8u16s_C1R(HSVPanes[0], paneSB, derivX, derivStep, image);&lt;/DIV&gt;
&lt;DIV&gt;ippiCanny_16s8u_C1R(derivX, derivStep, derivY, derivStep, t3, paneSB, WHOLE, 0, 10, tempBuf)&lt;BR /&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;The problem is that the t3 buffer doesn't even change. If I set it to a particular value, it returns from the Canny function call without even changing.&lt;/P&gt;
&lt;P&gt;I am confused as to what is going wrong.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Thank you for any assistance.&lt;/P&gt;
&lt;P&gt;Brendan&lt;/P&gt;</description>
    <pubDate>Tue, 25 May 2004 06:49:27 GMT</pubDate>
    <dc:creator>bmeeder</dc:creator>
    <dc:date>2004-05-25T06:49:27Z</dc:date>
    <item>
      <title>Trouble with the Canny operator</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Trouble-with-the-Canny-operator/m-p/956702#M19140</link>
      <description>&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Hi,&lt;/DIV&gt;
&lt;DIV&gt; I am having difficulties getting the canny operator to work correctly for me. I am trying to do edge detection in the hue part of an RGB image. I am extracting the hue correctly and am using the following code to compute the edges:&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Note: HSVPanes[0] contains the hue values.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;IppiSize image = {buf-&amp;gt;w(), buf-&amp;gt;h()};&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;ippiCannyGetSize(image, &amp;amp;numBytesRequired);&lt;BR /&gt;Ipp8u *tempBuf = (Ipp8u*)malloc(sizeof(unsigned char)*numBytesRequired*1);&lt;/DIV&gt;
&lt;DIV&gt;Ipp16s *derivX = ippiMalloc_16s_C1(buf-&amp;gt;w(), buf-&amp;gt;h(), &amp;amp;derivStep);&lt;BR /&gt;Ipp16s *derivY = ippiMalloc_16s_C1(buf-&amp;gt;w(), buf-&amp;gt;h(), &amp;amp;derivStep);&lt;BR /&gt;Ipp8u *t3 = ippiMalloc_8u_C1(buf-&amp;gt;w(), buf-&amp;gt;h(), &amp;amp;paneSB);&lt;/DIV&gt;
&lt;DIV&gt;ippiSobel3x3_Dy_8u16s_C1R(HSVPanes[0], paneSB, derivY, derivStep, IPCV_ORIGIN_TL, image);&lt;BR /&gt;ippiSobel3x3_Dx_8u16s_C1R(HSVPanes[0], paneSB, derivX, derivStep, image);&lt;/DIV&gt;
&lt;DIV&gt;ippiCanny_16s8u_C1R(derivX, derivStep, derivY, derivStep, t3, paneSB, WHOLE, 0, 10, tempBuf)&lt;BR /&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;The problem is that the t3 buffer doesn't even change. If I set it to a particular value, it returns from the Canny function call without even changing.&lt;/P&gt;
&lt;P&gt;I am confused as to what is going wrong.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Thank you for any assistance.&lt;/P&gt;
&lt;P&gt;Brendan&lt;/P&gt;</description>
      <pubDate>Tue, 25 May 2004 06:49:27 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Trouble-with-the-Canny-operator/m-p/956702#M19140</guid>
      <dc:creator>bmeeder</dc:creator>
      <dc:date>2004-05-25T06:49:27Z</dc:date>
    </item>
    <item>
      <title>Re: Trouble with the Canny operator</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Trouble-with-the-Canny-operator/m-p/956703#M19141</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;It is possiblethat one of functions (rather Canny) returns the bad status&lt;/P&gt;
&lt;P&gt;Please check is it zero:&lt;/P&gt;
&lt;P&gt;IppStatus status = ippiCanny_16s8u_C1R(derivX, derivStep, derivY, derivStep, t3, paneSB, WHOLE, 0, 10, tempBuf)&lt;/P&gt;
&lt;P&gt;What is WHOLE in this example?&lt;/P&gt;
&lt;P&gt;Are low and high tresholds 0 an? 10 correctly converted to float?&lt;/P&gt;
&lt;DIV&gt;Regards,&lt;BR /&gt; Vladimir&lt;/DIV&gt;</description>
      <pubDate>Tue, 25 May 2004 16:59:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Trouble-with-the-Canny-operator/m-p/956703#M19141</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2004-05-25T16:59:56Z</dc:date>
    </item>
  </channel>
</rss>

