Sophie

Sophie

distrib > Mageia > 7 > x86_64 > media > nonfree-updates > by-pkgid > b86a85131cc739c1c53d0b55840a4328 > files > 1796

nvidia-cuda-toolkit-devel-10.1.168-1.2.mga7.nonfree.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>NVIDIA 2D Image And Signal Performance Primitives (NPP): Affine Transform Utility Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">NVIDIA 2D Image And Signal Performance Primitives (NPP)
   &#160;<span id="projectnumber">Version 10.1.1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Affine Transform Utility Functions<div class="ingroups"><a class="el" href="group__image__affine__transform.html">Affine Transforms</a></div></div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga23271c99d494acb16a151b35a2b95921"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__typedefs__npp.html#ga1105a17b5e76381583c46ecd6a60fe21">NppStatus</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__affine__transform__utility__functions.html#ga23271c99d494acb16a151b35a2b95921">nppiGetAffineTransform</a> (<a class="el" href="struct_nppi_rect.html">NppiRect</a> oSrcROI, const double aQuad[4][2], double aCoeffs[2][3])</td></tr>
<tr class="memdesc:ga23271c99d494acb16a151b35a2b95921"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes affine transform coefficients based on source ROI and destination quadrilateral.  <a href="#ga23271c99d494acb16a151b35a2b95921">More...</a><br/></td></tr>
<tr class="separator:ga23271c99d494acb16a151b35a2b95921"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaae5de75bf0b6d007f7f225cee9e33b5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__typedefs__npp.html#ga1105a17b5e76381583c46ecd6a60fe21">NppStatus</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__affine__transform__utility__functions.html#gaae5de75bf0b6d007f7f225cee9e33b5e">nppiGetAffineQuad</a> (<a class="el" href="struct_nppi_rect.html">NppiRect</a> oSrcROI, double aQuad[4][2], const double aCoeffs[2][3])</td></tr>
<tr class="memdesc:gaae5de75bf0b6d007f7f225cee9e33b5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute shape of transformed image.  <a href="#gaae5de75bf0b6d007f7f225cee9e33b5e">More...</a><br/></td></tr>
<tr class="separator:gaae5de75bf0b6d007f7f225cee9e33b5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6519f85d55e0c396c61c2b5f5da492ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__typedefs__npp.html#ga1105a17b5e76381583c46ecd6a60fe21">NppStatus</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__affine__transform__utility__functions.html#ga6519f85d55e0c396c61c2b5f5da492ac">nppiGetAffineBound</a> (<a class="el" href="struct_nppi_rect.html">NppiRect</a> oSrcROI, double aBound[2][2], const double aCoeffs[2][3])</td></tr>
<tr class="memdesc:ga6519f85d55e0c396c61c2b5f5da492ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute bounding-box of transformed image.  <a href="#ga6519f85d55e0c396c61c2b5f5da492ac">More...</a><br/></td></tr>
<tr class="separator:ga6519f85d55e0c396c61c2b5f5da492ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga6519f85d55e0c396c61c2b5f5da492ac"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__typedefs__npp.html#ga1105a17b5e76381583c46ecd6a60fe21">NppStatus</a> nppiGetAffineBound </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_nppi_rect.html">NppiRect</a>&#160;</td>
          <td class="paramname"><em>oSrcROI</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>aBound</em>[2][2], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double&#160;</td>
          <td class="paramname"><em>aCoeffs</em>[2][3]&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compute bounding-box of transformed image. </p>
<p>The method effectively computes the bounding box (axis aligned rectangle) of the transformed source ROI (see <a class="el" href="group__affine__transform__utility__functions.html#gaae5de75bf0b6d007f7f225cee9e33b5e" title="Compute shape of transformed image. ">nppiGetAffineQuad()</a>).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">oSrcROI</td><td>The source ROI. </td></tr>
    <tr><td class="paramname">aBound</td><td>The resulting bounding box. </td></tr>
    <tr><td class="paramname">aCoeffs</td><td>The afine transform coefficients. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Error codes:<ul>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21a63297527390b522fa2b47a4d82f71b4b">NPP_SIZE_ERROR</a> Indicates an error condition if any image dimension has zero or negative value</li>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21aba8db23ee8afb9f272c2b21768ea7fab" title="Size of the rectangle region is less than or equal to 1. ">NPP_RECTANGLE_ERROR</a> Indicates an error condition if width or height of the intersection of the oSrcROI and source image is less than or equal to 1</li>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21a37e7b555565366e78cffd58e2d51c305" title="Unallowable values of the transformation coefficients. ">NPP_COEFFICIENT_ERROR</a> Indicates an error condition if coefficient values are invalid </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="gaae5de75bf0b6d007f7f225cee9e33b5e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__typedefs__npp.html#ga1105a17b5e76381583c46ecd6a60fe21">NppStatus</a> nppiGetAffineQuad </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_nppi_rect.html">NppiRect</a>&#160;</td>
          <td class="paramname"><em>oSrcROI</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>aQuad</em>[4][2], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double&#160;</td>
          <td class="paramname"><em>aCoeffs</em>[2][3]&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compute shape of transformed image. </p>
<p>This method computes the quadrilateral in the destination image that the source ROI is transformed into by the affine transformation expressed by the coefficients array (aCoeffs).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">oSrcROI</td><td>The source ROI. </td></tr>
    <tr><td class="paramname">aQuad</td><td>The resulting destination quadrangle. </td></tr>
    <tr><td class="paramname">aCoeffs</td><td>The afine transform coefficients. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Error codes:<ul>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21a63297527390b522fa2b47a4d82f71b4b">NPP_SIZE_ERROR</a> Indicates an error condition if any image dimension has zero or negative value</li>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21aba8db23ee8afb9f272c2b21768ea7fab" title="Size of the rectangle region is less than or equal to 1. ">NPP_RECTANGLE_ERROR</a> Indicates an error condition if width or height of the intersection of the oSrcROI and source image is less than or equal to 1</li>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21a37e7b555565366e78cffd58e2d51c305" title="Unallowable values of the transformation coefficients. ">NPP_COEFFICIENT_ERROR</a> Indicates an error condition if coefficient values are invalid </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga23271c99d494acb16a151b35a2b95921"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__typedefs__npp.html#ga1105a17b5e76381583c46ecd6a60fe21">NppStatus</a> nppiGetAffineTransform </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_nppi_rect.html">NppiRect</a>&#160;</td>
          <td class="paramname"><em>oSrcROI</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double&#160;</td>
          <td class="paramname"><em>aQuad</em>[4][2], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>aCoeffs</em>[2][3]&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Computes affine transform coefficients based on source ROI and destination quadrilateral. </p>
<p>The function computes the coefficients of an affine transformation that maps the given source ROI (axis aligned rectangle with integer coordinates) to a quadrilateral in the destination image.</p>
<p>An affine transform in 2D is fully determined by the mapping of just three vertices. This function's API allows for passing a complete quadrilateral effectively making the prolem overdetermined. What this means in practice is, that for certain quadrilaterals it is not possible to find an affine transform that would map all four corners of the source ROI to the four vertices of that quadrilateral.</p>
<p>The function circumvents this problem by only looking at the first three vertices of the destination image quadrilateral to determine the affine transformation's coefficients. If the destination quadrilateral is indeed one that cannot be mapped using an affine transformation the functions informs the user of this situation by returning a <a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21a5ec27ef41aefcf03f530c01736c0b2c4" title="Indicates that the quadrangle passed to one of affine warping functions doesn&#39;t have necessary proper...">NPP_AFFINE_QUAD_INCORRECT_WARNING</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">oSrcROI</td><td>The source ROI. This rectangle needs to be at least one pixel wide and high. If either width or hight are less than one an <a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21aba8db23ee8afb9f272c2b21768ea7fab" title="Size of the rectangle region is less than or equal to 1. ">NPP_RECTANGLE_ERROR</a> is returned. </td></tr>
    <tr><td class="paramname">aQuad</td><td>The destination quadrilateral. </td></tr>
    <tr><td class="paramname">aCoeffs</td><td>The resulting affine transform coefficients. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Error codes:<ul>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21a63297527390b522fa2b47a4d82f71b4b">NPP_SIZE_ERROR</a> Indicates an error condition if any image dimension has zero or negative value</li>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21aba8db23ee8afb9f272c2b21768ea7fab" title="Size of the rectangle region is less than or equal to 1. ">NPP_RECTANGLE_ERROR</a> Indicates an error condition if width or height of the intersection of the oSrcROI and source image is less than or equal to 1</li>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21a37e7b555565366e78cffd58e2d51c305" title="Unallowable values of the transformation coefficients. ">NPP_COEFFICIENT_ERROR</a> Indicates an error condition if coefficient values are invalid</li>
<li><a class="el" href="group__typedefs__npp.html#gga1105a17b5e76381583c46ecd6a60fe21a5ec27ef41aefcf03f530c01736c0b2c4" title="Indicates that the quadrangle passed to one of affine warping functions doesn&#39;t have necessary proper...">NPP_AFFINE_QUAD_INCORRECT_WARNING</a> Indicates a warning when quad does not conform to the transform properties. Fourth vertex is ignored, internally computed coordinates are used instead </li>
</ul>
</dd></dl>

</div>
</div>
</div><!-- contents -->
<HR>
<center>Copyright &copy; 2009-2019 NVIDIA Corporation</center>
<HR>