<?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 clarification sought re. DenoiseCast in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763780#M54</link>
    <description>Hi Timofei,&lt;BR /&gt; Thanks. Your explanation did iron out some kinks in my understanding of the function. Could I also ask, since you mentioned that the method was developed at Intel, if there are any IP restrictuions in using this function in a commercial software? &lt;BR /&gt;Thanks again,&lt;BR /&gt;Sid.</description>
    <pubDate>Tue, 20 Mar 2012 17:14:40 GMT</pubDate>
    <dc:creator>siddy</dc:creator>
    <dc:date>2012-03-20T17:14:40Z</dc:date>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763774#M48</link>
      <description>Hi,&lt;BR /&gt; I need some explanation regarding the interpretation of the contents of pSrcEdge pointer argument to ippiDenoiseCAST filter. Should it point to an edge image? The documentation says "edge detection filtered image", but I am not able to understand if it should point to an image that has just been filtered to make edge extraction easy (like smoothed version etc) or the actual edges have to be calculated and passed to the function?&lt;BR /&gt;Thanks,&lt;BR /&gt;Sid.</description>
      <pubDate>Mon, 09 Jan 2012 18:11:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763774#M48</guid>
      <dc:creator>siddy</dc:creator>
      <dc:date>2012-01-09T18:11:42Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763775#M49</link>
      <description>Good day.&lt;DIV&gt;Sorry for delay.&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;You can usepSrcEdge to pass filtered version of source image to to the function. Filtered image can decrease blur effect on edges. However you can use every image as edge filtered and there is no specific edge detection algorithm you require to use. You can setStrongEdgeThreshold = 255 in parameters structure and edge image will be ignored.&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;You can also tune blur/denoiseby tweakingNonEdgePixelWeight and EdgePixelWeight parameters.&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Example (ABS(verSobel) + ABS(horSobel)):&lt;/DIV&gt;&lt;DIV&gt;&lt;PRE&gt;[cpp]                ippiFilterSobelVert_8u16s_C1R(pData, iDataStep, dx, dxStep, size, ippMskSize3x3);
                ippiFilterSobelHoriz_8u16s_C1R(pData, iDatatep, dy, dyStep, size, ippMskSize3x3);
                ippiAbs_16s_C1IR(dx, dxStep, size);
                ippiAbs_16s_C1IR(dy, dyStep, size);
                ippiAdd_16s_C1IRSfs(dx, dxStep, dy, dyStep, size, 0);
                ippiConvert_16s8u_C1R(dy, dyStep, pEdgeData, iEdgeDataStep, size);

                ippiFilterDenoiseCAST_8u_C1R(pData, NULL, iDataStep, 
                    pEdgeData, iEdgeDataStep,
                    size,
                    pDataOut, iDataOutStep, NULL, &amp;amp;param);[/cpp]&lt;/PRE&gt; &lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 30 Jan 2012 09:10:21 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763775#M49</guid>
      <dc:creator>Pavel_V_Intel</dc:creator>
      <dc:date>2012-01-30T09:10:21Z</dc:date>
    </item>
    <item>
      <title>Clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763776#M50</link>
      <description>&lt;DIV id="tiny_quote"&gt;&lt;DIV style="margin-left: 2px; margin-right: 2px;"&gt;Quoting &lt;A jquery1327932974109="55" rel="/en-us/services/profile/quick_profile.php?is_paid=&amp;amp;user_id=503792" href="https://community.intel.com/en-us/profile/503792/" class="basic"&gt;Pavel V.Vlasov (Intel)&lt;/A&gt;&lt;/DIV&gt;&lt;DIV style="background-color: #e5e5e5; margin-left: 2px; margin-right: 2px; border: 1px inset; padding: 5px;"&gt;&lt;I&gt;...&lt;BR /&gt;You can use&lt;SPAN style="text-decoration: underline;"&gt;pSrcEdge&lt;/SPAN&gt; to pass &lt;SPAN style="text-decoration: underline;"&gt;filtered version of source image&lt;/SPAN&gt; to to the function. Filtered image can decrease blur effect on edges. However you can use every image as edge filtered and there is no specific edge detection algorithm you require to use. You can setStrongEdgeThreshold = 255 in parameters structure and edge image will be ignored.&lt;BR /&gt;...&lt;/I&gt;&lt;/DIV&gt;&lt;BR /&gt;Thank you, Pavel. Finallyexplained.&lt;/DIV&gt;</description>
      <pubDate>Mon, 30 Jan 2012 14:20:07 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763776#M50</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2012-01-30T14:20:07Z</dc:date>
    </item>
    <item>
      <title>Clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763777#M51</link>
      <description>Hi Pavel,&lt;BR /&gt; Sorry for the late thanks, but I have asked this question so many times before without getting a reply, that I had almost lost hope. So, many thanks for the clarification. It really helps a lot.&lt;BR /&gt; Sid.</description>
      <pubDate>Tue, 31 Jan 2012 17:07:31 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763777#M51</guid>
      <dc:creator>siddy</dc:creator>
      <dc:date>2012-01-31T17:07:31Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763778#M52</link>
      <description>Hi Pavel,&lt;BR /&gt; Thanks. This really helped. Can you also clarify how the other fields in the params structure are affecting the whole filtering process? I have been able to reduce some blurring due to an apparant motion induced by features that change fast in the temporal direction. Can I control them further by playing around with some of the settings through the params structure? &lt;BR /&gt;In addition, if you could also point me to some relevant publications related to the method, that would help too.....&lt;BR /&gt;Thanks,&lt;BR /&gt;Sid.&lt;BR /&gt;</description>
      <pubDate>Thu, 15 Mar 2012 16:32:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763778#M52</guid>
      <dc:creator>siddy</dc:creator>
      <dc:date>2012-03-15T16:32:58Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763779#M53</link>
      <description>&lt;P&gt;Hi Sid,&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;TemporalDifferenceThreshold, NumberOfMotionPixelsThreshold&lt;/STRONG&gt;are used to determine whether the block is a static or a motion one: the block is considered a motion one if the number of pixels with values differing from the value of the co-located pixel in the previous frame by more than &lt;STRONG&gt;TemporalDifferenceThreshold&lt;/STRONG&gt; exceeds &lt;STRONG&gt;NumberOfMotionPixelsThreshold&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;GaussianThreshold&lt;/STRONG&gt;: used to select the spatially adjacent pixels to be involved in the smoothing of the current pixel: only the pixels spatially adjacent to the current pixel, with values differing from that of the current pixel by less than &lt;STRONG&gt;GaussianThreshold&lt;/STRONG&gt;, participate in the smoothing of the current pixel. &lt;BR /&gt;In ippiFilterDenoiseCAST_8u_C1R(), solely &lt;STRONG&gt;GaussianThresholdY&lt;/STRONG&gt; is employed, while in ippiFilterDenoiseCASTYUV422_8u_C2R(), &lt;STRONG&gt;GaussianThresholdY&lt;/STRONG&gt; is used for luma and &lt;STRONG&gt;GaussianThresholdUV&lt;/STRONG&gt;  for chroma.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;HistoryWeight&lt;/STRONG&gt; is the weight of the previous frame in the temporal denoising applied to the pixels of static blocks. If the function is called with pSrcPrev == NULL and pHistoryWeight != NULL, the per-block weights pointed to by pHistoryWeight are initializied to &lt;STRONG&gt;HistoryWeight &lt;/STRONG&gt;(and further updated at calls with pSrcPrev != NULL).&lt;BR /&gt;&lt;BR /&gt;As for the publications, the algorithm was developed at Intel, andI don't think that the detailed descriptionis publicly available.&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Timofei&lt;/P&gt;</description>
      <pubDate>Tue, 20 Mar 2012 11:55:14 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763779#M53</guid>
      <dc:creator>Timofei_K_Intel</dc:creator>
      <dc:date>2012-03-20T11:55:14Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763780#M54</link>
      <description>Hi Timofei,&lt;BR /&gt; Thanks. Your explanation did iron out some kinks in my understanding of the function. Could I also ask, since you mentioned that the method was developed at Intel, if there are any IP restrictuions in using this function in a commercial software? &lt;BR /&gt;Thanks again,&lt;BR /&gt;Sid.</description>
      <pubDate>Tue, 20 Mar 2012 17:14:40 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763780#M54</guid>
      <dc:creator>siddy</dc:creator>
      <dc:date>2012-03-20T17:14:40Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763781#M55</link>
      <description>Also, should the TemporalDifferenceThreshold be indicated as an abs(difference) to account for both advancing and receeding features in the temporal direction?</description>
      <pubDate>Tue, 20 Mar 2012 17:24:31 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763781#M55</guid>
      <dc:creator>siddy</dc:creator>
      <dc:date>2012-03-20T17:24:31Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763782#M56</link>
      <description>Could you, or possibly someone from Intel, complete the picture by explaining&lt;BR /&gt;1) StrongEdgeThreshold &lt;BR /&gt;2) EdgePixelWeight&lt;BR /&gt;3) NonEdgePixelWeight.&lt;BR /&gt;&lt;BR /&gt;does the StrongEdgeThreshold divide the pixels into edge and non-edge pixels? Also, I am not very clear of the "weight" in the function: dies it somehow control how much of the previous frame will be used to construct the current frame. With all parameters fixed, I have tried to play around with the edge and non-edge weights, but I do not see any difference in the output. &lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Sid.&lt;BR /&gt;</description>
      <pubDate>Tue, 20 Mar 2012 23:19:22 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763782#M56</guid>
      <dc:creator>siddy</dc:creator>
      <dc:date>2012-03-20T23:19:22Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763783#M57</link>
      <description>To further clarify:&lt;BR /&gt;&lt;BR /&gt;if I am processing a sequence of frames with this filter, of which ..... F(n-1), F(n), F(n+1) ... is a current context, is the following correct:&lt;BR /&gt;1) pSrcCurr = F(n), &lt;BR /&gt;2) pSrcPrev = CAST(F(n-1))&lt;BR /&gt;3) pSrcEdge = convolve(G, F(n)), where G is a gaussian kernel or pSrcEdge = sobel(F(n))&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Sid</description>
      <pubDate>Wed, 21 Mar 2012 16:46:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763783#M57</guid>
      <dc:creator>siddy</dc:creator>
      <dc:date>2012-03-21T16:46:54Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763784#M58</link>
      <description>Hi Sid,&lt;BR /&gt;&lt;BR /&gt;To the bestif my belief,there are no restrictionson usingIPP functions.&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Timofei</description>
      <pubDate>Thu, 22 Mar 2012 15:26:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763784#M58</guid>
      <dc:creator>Timofei_K_Intel</dc:creator>
      <dc:date>2012-03-22T15:26:56Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763785#M59</link>
      <description>&lt;P&gt;Yes, it is the an absolute value to account for both increase and decrease in luminance/chrominance.&lt;BR /&gt;Timofei&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2012 15:43:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763785#M59</guid>
      <dc:creator>Timofei_K_Intel</dc:creator>
      <dc:date>2012-03-22T15:43:51Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763786#M60</link>
      <description>1) StrongEdgeThreshold: pixel iis considered an edge one if pSrcEdge&lt;I&gt; &amp;gt; StrongEdgeThreshold.&lt;BR /&gt;2-3) EdgePixelWeight/NonEdgePixelWeight define the share of the current "edge"/"non-edge" pixel valuein the formation of the output for the pixel, the higher the weight the more contribution is made by the current pixel and the less - by its neighbourhood.&lt;BR /&gt;&lt;BR /&gt;And yes, you are right,the higher the HistoryWeight, the more is taken from the previous frame to form the output.&lt;BR /&gt;&lt;BR /&gt;As for your experiments with the edge weights: perhaps, with the parameters/content you used, all the blocksturned out static, and thuswere denoised purely temporally.&lt;BR /&gt;You can try decreasing TemporalDifferenceThreshold and NumberOfMotionPixelsThreshold.&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Timofei&lt;/I&gt;</description>
      <pubDate>Thu, 22 Mar 2012 16:44:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763786#M60</guid>
      <dc:creator>Timofei_K_Intel</dc:creator>
      <dc:date>2012-03-22T16:44:06Z</dc:date>
    </item>
    <item>
      <title>clarification sought re. DenoiseCast</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763787#M61</link>
      <description>Yes, everything is correct except that the convolution with a gaussian kernel will hardly give you the desired edge information.&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;Timofei</description>
      <pubDate>Thu, 22 Mar 2012 16:58:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/clarification-sought-re-DenoiseCast/m-p/763787#M61</guid>
      <dc:creator>Timofei_K_Intel</dc:creator>
      <dc:date>2012-03-22T16:58:12Z</dc:date>
    </item>
  </channel>
</rss>

