<?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 Rotating a buffer with ippiRotate_    in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/Rotating-a-buffer-with-ippiRotate/m-p/847897#M6268</link>
    <description>I want to flip the following buffer upside down.  See example source and destination.&lt;BR /&gt; &lt;BR /&gt; source (src):&lt;BR /&gt; &lt;BR /&gt; 01 02 03&lt;BR /&gt; 04 05 06&lt;BR /&gt; 07 08 09&lt;BR /&gt; &lt;BR /&gt; destination (dst - correct):&lt;BR /&gt; &lt;BR /&gt; 07 08 09&lt;BR /&gt; 04 05 06&lt;BR /&gt; 01 02 03&lt;BR /&gt; &lt;BR /&gt; The following sample does not rotate the buffer correctly.  What am I doing wrong?&lt;BR /&gt; &lt;BR /&gt; unsigned char src [9] = {1,2,3,4,5,6,7,8,9};&lt;BR /&gt; IppiSize size = {3,3};&lt;BR /&gt; IppiRect roi = {0,0,3,3};&lt;BR /&gt; unsigned char dst [9];&lt;BR /&gt; int step = 3;&lt;BR /&gt;&lt;BR /&gt; IppStatus status = ippiRotate_8u_C1R(src, size, step,  roi, dst, step, roi, 90, 0, 0, IPPI_INTER_LINEAR);&lt;BR /&gt; &lt;BR /&gt; destination (dst - wrong):&lt;BR /&gt; &lt;BR /&gt; 01 04 07&lt;BR /&gt; 00 00 00&lt;BR /&gt; 00 58 C3	&lt;BR /&gt;</description>
    <pubDate>Fri, 01 Jan 2010 00:44:30 GMT</pubDate>
    <dc:creator>reportbase</dc:creator>
    <dc:date>2010-01-01T00:44:30Z</dc:date>
    <item>
      <title>Rotating a buffer with ippiRotate_</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Rotating-a-buffer-with-ippiRotate/m-p/847897#M6268</link>
      <description>I want to flip the following buffer upside down.  See example source and destination.&lt;BR /&gt; &lt;BR /&gt; source (src):&lt;BR /&gt; &lt;BR /&gt; 01 02 03&lt;BR /&gt; 04 05 06&lt;BR /&gt; 07 08 09&lt;BR /&gt; &lt;BR /&gt; destination (dst - correct):&lt;BR /&gt; &lt;BR /&gt; 07 08 09&lt;BR /&gt; 04 05 06&lt;BR /&gt; 01 02 03&lt;BR /&gt; &lt;BR /&gt; The following sample does not rotate the buffer correctly.  What am I doing wrong?&lt;BR /&gt; &lt;BR /&gt; unsigned char src [9] = {1,2,3,4,5,6,7,8,9};&lt;BR /&gt; IppiSize size = {3,3};&lt;BR /&gt; IppiRect roi = {0,0,3,3};&lt;BR /&gt; unsigned char dst [9];&lt;BR /&gt; int step = 3;&lt;BR /&gt;&lt;BR /&gt; IppStatus status = ippiRotate_8u_C1R(src, size, step,  roi, dst, step, roi, 90, 0, 0, IPPI_INTER_LINEAR);&lt;BR /&gt; &lt;BR /&gt; destination (dst - wrong):&lt;BR /&gt; &lt;BR /&gt; 01 04 07&lt;BR /&gt; 00 00 00&lt;BR /&gt; 00 58 C3	&lt;BR /&gt;</description>
      <pubDate>Fri, 01 Jan 2010 00:44:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Rotating-a-buffer-with-ippiRotate/m-p/847897#M6268</guid>
      <dc:creator>reportbase</dc:creator>
      <dc:date>2010-01-01T00:44:30Z</dc:date>
    </item>
    <item>
      <title>Re: Rotating a buffer with ippiRotate_</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Rotating-a-buffer-with-ippiRotate/m-p/847898#M6269</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;What you want to do is not a rotation. As you said, it's a flip. For this, use the ippiMirror function.&lt;BR /&gt;&lt;BR /&gt;Best Regards,&lt;BR /&gt;Matthieu&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 04 Jan 2010 08:59:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Rotating-a-buffer-with-ippiRotate/m-p/847898#M6269</guid>
      <dc:creator>matthieu_darbois</dc:creator>
      <dc:date>2010-01-04T08:59:33Z</dc:date>
    </item>
    <item>
      <title>Re: Rotating a buffer with ippiRotate_</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Rotating-a-buffer-with-ippiRotate/m-p/847899#M6270</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="width: 100%; margin-top: 5px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/404840"&gt;matthieu.darbois&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;Hi,&lt;BR /&gt;&lt;BR /&gt;What you want to do is not a rotation. As you said, it's a flip. For this, use the ippiMirror function.&lt;BR /&gt;&lt;BR /&gt;Best Regards,&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
Matthieu,&lt;BR /&gt;For this partically case ( angle == 90) - yes, the Mirror function is the best choise,&lt;BR /&gt;but for arbitrary cases - first of all call ippiAddRotateShift(,,,,,) for computing shift values of an images... .&lt;BR /&gt;The function helps compute shift values xShift, yShift that should be passed to ippiRotate function for the rotation around (xCenter, yCenter) to take place.&lt;BR /&gt; For your cases, it seems to me that shiftY == 2 ...&lt;BR /&gt;--Gennady&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 04 Jan 2010 18:04:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Rotating-a-buffer-with-ippiRotate/m-p/847899#M6270</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2010-01-04T18:04:15Z</dc:date>
    </item>
    <item>
      <title>Re: Rotating a buffer with ippiRotate_</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Rotating-a-buffer-with-ippiRotate/m-p/847900#M6271</link>
      <description>Instead of flipping your buffer, you should just process it backwards (in-place) for better performance.&lt;BR /&gt;&lt;BR /&gt;Suppose you have 500x400 with step/pitch of 512, you should call IPP functions with the following :&lt;BR /&gt;&lt;BR /&gt;pSrc = pBuffer + (height - 1) * step = pBuffer + 399 * 512;&lt;BR /&gt;srcRoi = { 500, 400 };&lt;BR /&gt;srcStep = -step = -512;&lt;BR /&gt;&lt;BR /&gt;IPP will view the last row as the first, and jump by -512 pixels after every row.&lt;BR /&gt;</description>
      <pubDate>Mon, 04 Jan 2010 19:49:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Rotating-a-buffer-with-ippiRotate/m-p/847900#M6271</guid>
      <dc:creator>oxydius</dc:creator>
      <dc:date>2010-01-04T19:49:20Z</dc:date>
    </item>
  </channel>
</rss>

