blob: 215e91445f432a79d3a4f65ef56ca9460237d3dc [file] [log] [blame]
Jenkins514be652019-02-28 12:25:18 +00001<!-- HTML header for doxygen 1.8.15-->
2<!-- Remember to use version doxygen 1.8.15 +-->
Jenkinsb9abeae2018-11-22 11:58:08 +00003<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml">
5<head>
6<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
7<meta http-equiv="X-UA-Compatible" content="IE=9"/>
Jenkins514be652019-02-28 12:25:18 +00008<meta name="generator" content="Doxygen 1.8.15"/>
Jenkinsb9abeae2018-11-22 11:58:08 +00009<meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
10<title>Compute Library: src/core/CL/cl_kernels/scale_quantized.cl File Reference</title>
11<link href="tabs.css" rel="stylesheet" type="text/css"/>
12<script type="text/javascript" src="jquery.js"></script>
13<script type="text/javascript" src="dynsections.js"></script>
14<link href="navtree.css" rel="stylesheet" type="text/css"/>
15<script type="text/javascript" src="resize.js"></script>
16<script type="text/javascript" src="navtreedata.js"></script>
17<script type="text/javascript" src="navtree.js"></script>
18<script type="text/javascript">
Jenkins514be652019-02-28 12:25:18 +000019/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
Jenkinsb9abeae2018-11-22 11:58:08 +000020 $(document).ready(initResizable);
Jenkins514be652019-02-28 12:25:18 +000021/* @license-end */</script>
Jenkinsb9abeae2018-11-22 11:58:08 +000022<link href="search/search.css" rel="stylesheet" type="text/css"/>
23<script type="text/javascript" src="search/searchdata.js"></script>
24<script type="text/javascript" src="search/search.js"></script>
25<script type="text/x-mathjax-config">
26 MathJax.Hub.Config({
27 extensions: ["tex2jax.js"],
28 jax: ["input/TeX","output/HTML-CSS"],
29});
Jenkins514be652019-02-28 12:25:18 +000030</script><script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
Jenkinsb9abeae2018-11-22 11:58:08 +000031<link href="doxygen.css" rel="stylesheet" type="text/css" />
Jenkins514be652019-02-28 12:25:18 +000032<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
Jenkinsb9abeae2018-11-22 11:58:08 +000033</head>
34<body>
35<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
36<div id="titlearea">
37<table cellspacing="0" cellpadding="0">
38 <tbody>
39 <tr style="height: 56px;">
Jenkins514be652019-02-28 12:25:18 +000040 <img alt="Compute Library" src="https://raw.githubusercontent.com/ARM-software/ComputeLibrary/gh-pages/ACL_logo.png" style="max-width: 100%;margin-top: 15px;margin-left: 10px"/>
Jenkinsb9abeae2018-11-22 11:58:08 +000041 <td style="padding-left: 0.5em;">
Jenkins514be652019-02-28 12:25:18 +000042 <div id="projectname">
Jenkins7f09cf72020-01-22 18:08:16 +000043 &#160;<span id="projectnumber">19.11.1</span>
Jenkinsb9abeae2018-11-22 11:58:08 +000044 </div>
45 </td>
46 </tr>
47 </tbody>
48</table>
49</div>
50<!-- end header part -->
Jenkins514be652019-02-28 12:25:18 +000051<!-- Generated by Doxygen 1.8.15 -->
Jenkinsb9abeae2018-11-22 11:58:08 +000052<script type="text/javascript">
Jenkins514be652019-02-28 12:25:18 +000053/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
Jenkinsb9abeae2018-11-22 11:58:08 +000054var searchBox = new SearchBox("searchBox", "search",false,'Search');
Jenkins514be652019-02-28 12:25:18 +000055/* @license-end */
Jenkinsb9abeae2018-11-22 11:58:08 +000056</script>
57<script type="text/javascript" src="menudata.js"></script>
58<script type="text/javascript" src="menu.js"></script>
59<script type="text/javascript">
Jenkins514be652019-02-28 12:25:18 +000060/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
Jenkinsb9abeae2018-11-22 11:58:08 +000061$(function() {
62 initMenu('',true,false,'search.php','Search');
63 $(document).ready(function() { init_search(); });
64});
Jenkins514be652019-02-28 12:25:18 +000065/* @license-end */</script>
Jenkinsb9abeae2018-11-22 11:58:08 +000066<div id="main-nav"></div>
67</div><!-- top -->
68<div id="side-nav" class="ui-resizable side-nav-resizable">
69 <div id="nav-tree">
70 <div id="nav-tree-contents">
71 <div id="nav-sync" class="sync"></div>
72 </div>
73 </div>
74 <div id="splitbar" style="-moz-user-select:none;"
75 class="ui-resizable-handle">
76 </div>
77</div>
78<script type="text/javascript">
Jenkins514be652019-02-28 12:25:18 +000079/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
Jenkinsb9abeae2018-11-22 11:58:08 +000080$(document).ready(function(){initNavTree('scale__quantized_8cl.xhtml','');});
Jenkins514be652019-02-28 12:25:18 +000081/* @license-end */
Jenkinsb9abeae2018-11-22 11:58:08 +000082</script>
83<div id="doc-content">
84<!-- window showing the filter options -->
85<div id="MSearchSelectWindow"
86 onmouseover="return searchBox.OnSearchSelectShow()"
87 onmouseout="return searchBox.OnSearchSelectHide()"
88 onkeydown="return searchBox.OnSearchSelectKey(event)">
89</div>
90
91<!-- iframe showing the search results (closed by default) -->
92<div id="MSearchResultsWindow">
93<iframe src="javascript:void(0)" frameborder="0"
94 name="MSearchResults" id="MSearchResults">
95</iframe>
96</div>
97
98<div class="header">
99 <div class="summary">
100<a href="#func-members">Functions</a> </div>
101 <div class="headertitle">
102<div class="title">scale_quantized.cl File Reference</div> </div>
103</div><!--header-->
104<div class="contents">
105<div class="textblock"><code>#include &quot;<a class="el" href="helpers__asymm_8h_source.xhtml">helpers_asymm.h</a>&quot;</code><br />
106<code>#include &quot;<a class="el" href="warp__helpers__quantized_8h_source.xhtml">warp_helpers_quantized.h</a>&quot;</code><br />
107</div>
108<p><a href="scale__quantized_8cl_source.xhtml">Go to the source code of this file.</a></p>
109<table class="memberdecls">
110<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
111Functions</h2></td></tr>
112<tr class="memitem:acbe073ffe68691758706acfe1dc305ba"><td class="memItemLeft" align="right" valign="top">const float8&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="scale__quantized_8cl.xhtml#acbe073ffe68691758706acfe1dc305ba">transform_bilinear_quantized</a> (const float2 coord, const float2 scale)</td></tr>
113<tr class="memdesc:acbe073ffe68691758706acfe1dc305ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transforms four 2D coordinates. <a href="#acbe073ffe68691758706acfe1dc305ba">More...</a><br /></td></tr>
114<tr class="separator:acbe073ffe68691758706acfe1dc305ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkins0e205f72019-11-28 16:53:35 +0000115<tr class="memitem:a157d3c35f643dafe1c4bed09594f3bb5"><td class="memItemLeft" align="right" valign="top">__kernel void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="scale__quantized_8cl.xhtml#a157d3c35f643dafe1c4bed09594f3bb5">scale_bilinear_quantized_nchw</a> (__global uchar *in_ptr, uint in_stride_x, uint in_step_x, uint in_stride_y, uint in_step_y, uint in_offset_first_element_in_bytes, __global uchar *out_ptr, uint out_stride_x, uint out_step_x, uint out_stride_y, uint out_step_y, uint out_offset_first_element_in_bytes, const float input_width, const float input_height, const float scale_x, const float scale_y)</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000116<tr class="memdesc:a157d3c35f643dafe1c4bed09594f3bb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs an affine transformation on an image interpolating with the BILINEAR method. <a href="#a157d3c35f643dafe1c4bed09594f3bb5">More...</a><br /></td></tr>
117<tr class="separator:a157d3c35f643dafe1c4bed09594f3bb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb9abeae2018-11-22 11:58:08 +0000118</table>
119<h2 class="groupheader">Function Documentation</h2>
120<a id="a157d3c35f643dafe1c4bed09594f3bb5"></a>
121<h2 class="memtitle"><span class="permalink"><a href="#a157d3c35f643dafe1c4bed09594f3bb5">&#9670;&nbsp;</a></span>scale_bilinear_quantized_nchw()</h2>
122
123<div class="memitem">
124<div class="memproto">
125 <table class="memname">
126 <tr>
127 <td class="memname">__kernel void scale_bilinear_quantized_nchw </td>
128 <td>(</td>
129 <td class="paramtype">__global uchar *&#160;</td>
130 <td class="paramname"><em>in_ptr</em>, </td>
131 </tr>
132 <tr>
133 <td class="paramkey"></td>
134 <td></td>
135 <td class="paramtype">uint&#160;</td>
136 <td class="paramname"><em>in_stride_x</em>, </td>
137 </tr>
138 <tr>
139 <td class="paramkey"></td>
140 <td></td>
141 <td class="paramtype">uint&#160;</td>
142 <td class="paramname"><em>in_step_x</em>, </td>
143 </tr>
144 <tr>
145 <td class="paramkey"></td>
146 <td></td>
147 <td class="paramtype">uint&#160;</td>
148 <td class="paramname"><em>in_stride_y</em>, </td>
149 </tr>
150 <tr>
151 <td class="paramkey"></td>
152 <td></td>
153 <td class="paramtype">uint&#160;</td>
154 <td class="paramname"><em>in_step_y</em>, </td>
155 </tr>
156 <tr>
157 <td class="paramkey"></td>
158 <td></td>
159 <td class="paramtype">uint&#160;</td>
160 <td class="paramname"><em>in_offset_first_element_in_bytes</em>, </td>
161 </tr>
162 <tr>
163 <td class="paramkey"></td>
164 <td></td>
165 <td class="paramtype">__global uchar *&#160;</td>
166 <td class="paramname"><em>out_ptr</em>, </td>
167 </tr>
168 <tr>
169 <td class="paramkey"></td>
170 <td></td>
171 <td class="paramtype">uint&#160;</td>
172 <td class="paramname"><em>out_stride_x</em>, </td>
173 </tr>
174 <tr>
175 <td class="paramkey"></td>
176 <td></td>
177 <td class="paramtype">uint&#160;</td>
178 <td class="paramname"><em>out_step_x</em>, </td>
179 </tr>
180 <tr>
181 <td class="paramkey"></td>
182 <td></td>
183 <td class="paramtype">uint&#160;</td>
184 <td class="paramname"><em>out_stride_y</em>, </td>
185 </tr>
186 <tr>
187 <td class="paramkey"></td>
188 <td></td>
189 <td class="paramtype">uint&#160;</td>
190 <td class="paramname"><em>out_step_y</em>, </td>
191 </tr>
192 <tr>
193 <td class="paramkey"></td>
194 <td></td>
195 <td class="paramtype">uint&#160;</td>
196 <td class="paramname"><em>out_offset_first_element_in_bytes</em>, </td>
197 </tr>
198 <tr>
199 <td class="paramkey"></td>
200 <td></td>
201 <td class="paramtype">const float&#160;</td>
202 <td class="paramname"><em>input_width</em>, </td>
203 </tr>
204 <tr>
205 <td class="paramkey"></td>
206 <td></td>
207 <td class="paramtype">const float&#160;</td>
208 <td class="paramname"><em>input_height</em>, </td>
209 </tr>
210 <tr>
211 <td class="paramkey"></td>
212 <td></td>
213 <td class="paramtype">const float&#160;</td>
214 <td class="paramname"><em>scale_x</em>, </td>
215 </tr>
216 <tr>
217 <td class="paramkey"></td>
218 <td></td>
219 <td class="paramtype">const float&#160;</td>
220 <td class="paramname"><em>scale_y</em>&#160;</td>
221 </tr>
222 <tr>
223 <td></td>
224 <td>)</td>
225 <td></td><td></td>
226 </tr>
227 </table>
228</div><div class="memdoc">
229
230<p>Performs an affine transformation on an image interpolating with the BILINEAR method. </p>
231<dl class="section note"><dt>Note</dt><dd>Sampling policy to used is passed as -DSAMPLING_POLICY_(TYPE) e.g. -DSAMPLING_POLICY_TOP_LEFT </dd>
232<dd>
233Scale value for QASYMM8 data type to used is passed as -DSCALE=</dd></dl>
234<p>e.g. -DSCALE=0.5 </p><dl class="section note"><dt>Note</dt><dd>Offset value for QASYMM8 data type to used is passed as -DOFFSET=</dd></dl>
235<p>e.g. -DOFFSET=1</p>
236<dl class="params"><dt>Parameters</dt><dd>
237 <table class="params">
238 <tr><td class="paramdir">[in]</td><td class="paramname">in_ptr</td><td>Pointer to the source image. Supported data types: QASYMM8. </td></tr>
239 <tr><td class="paramdir">[in]</td><td class="paramname">in_stride_x</td><td>Stride of the source image in X dimension (in bytes) </td></tr>
240 <tr><td class="paramdir">[in]</td><td class="paramname">in_step_x</td><td>src_stride_x * number of elements along X processed per workitem(in bytes) </td></tr>
241 <tr><td class="paramdir">[in]</td><td class="paramname">in_stride_y</td><td>Stride of the source image in Y dimension (in bytes) </td></tr>
242 <tr><td class="paramdir">[in]</td><td class="paramname">in_step_y</td><td>src_stride_y * number of elements along Y processed per workitem(in bytes) </td></tr>
243 <tr><td class="paramdir">[in]</td><td class="paramname">in_offset_first_element_in_bytes</td><td>The offset of the first element in the source image </td></tr>
244 <tr><td class="paramdir">[out]</td><td class="paramname">out_ptr</td><td>Pointer to the destination image. Supported data types: U8, S16. (Must be the same as the input) </td></tr>
245 <tr><td class="paramdir">[in]</td><td class="paramname">out_stride_x</td><td>Stride of the destination image in X dimension (in bytes) </td></tr>
246 <tr><td class="paramdir">[in]</td><td class="paramname">out_step_x</td><td>dst_stride_x * number of elements along X processed per workitem(in bytes) </td></tr>
247 <tr><td class="paramdir">[in]</td><td class="paramname">out_stride_y</td><td>Stride of the destination image in Y dimension (in bytes) </td></tr>
248 <tr><td class="paramdir">[in]</td><td class="paramname">out_step_y</td><td>dst_stride_y * number of elements along Y processed per workitem(in bytes) </td></tr>
249 <tr><td class="paramdir">[in]</td><td class="paramname">out_offset_first_element_in_bytes</td><td>The offset of the first element in the destination image </td></tr>
250 <tr><td class="paramdir">[in]</td><td class="paramname">input_width</td><td>Input image width </td></tr>
251 <tr><td class="paramdir">[in]</td><td class="paramname">input_height</td><td>Input image height </td></tr>
252 <tr><td class="paramdir">[in]</td><td class="paramname">scale_x</td><td>The scale factor along x dimension </td></tr>
253 <tr><td class="paramdir">[in]</td><td class="paramname">scale_y</td><td>The scale factor along y dimension </td></tr>
254 </table>
255 </dd>
256</dl>
257
258<p class="definition">Definition at line <a class="el" href="scale__quantized_8cl_source.xhtml#l00073">73</a> of file <a class="el" href="scale__quantized_8cl_source.xhtml">scale_quantized.cl</a>.</p>
Jenkins0e205f72019-11-28 16:53:35 +0000259<div class="fragment"><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="struct_image.xhtml">Image</a> in = <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a4334a4a76f8e9628c0fb9e1acf616e2a">CONVERT_TO_IMAGE_STRUCT_NO_STEP</a>(in);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="struct_image.xhtml">Image</a> out = <a class="code" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#aebe814363556c244be043b13e7969197">CONVERT_TO_IMAGE_STRUCT</a>(out);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">const</span> float2 r = (float2)(scale_x, scale_y);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">const</span> float8 tc = <a class="code" href="scale__quantized_8cl.xhtml#acbe073ffe68691758706acfe1dc305ba">transform_bilinear_quantized</a>(<a class="code" href="warp__helpers__quantized_8h.xhtml#aa13de3eff8afd51e8bf4c1904a9b7415">get_current_coords_quantized</a>(), r);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; vstore4(<a class="code" href="warp__helpers__quantized_8h.xhtml#ae8a3d61874f95580e8110f4f206c3b8b">bilinear_interpolate_with_border_quantized</a>(&amp;in, tc, input_width, input_height, BORDER_SIZE, SCALE, OFFSET), 0, (__global <a class="code" href="convolution3x3_8cl.xhtml#afb8c72ce35c4a1f4a2588d6573e54aa1">DATA_TYPE</a> *)out.<a class="code" href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a>);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;}</div><div class="ttc" id="src_2core_2_c_l_2cl__kernels_2_helpers_8h_xhtml_aebe814363556c244be043b13e7969197"><div class="ttname"><a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#aebe814363556c244be043b13e7969197">CONVERT_TO_IMAGE_STRUCT</a></div><div class="ttdeci">#define CONVERT_TO_IMAGE_STRUCT(name)</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00311">helpers.h:311</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +0000260<div class="ttc" id="convolution3x3_8cl_xhtml_afb8c72ce35c4a1f4a2588d6573e54aa1"><div class="ttname"><a href="convolution3x3_8cl.xhtml#afb8c72ce35c4a1f4a2588d6573e54aa1">DATA_TYPE</a></div><div class="ttdeci">#define DATA_TYPE</div><div class="ttdef"><b>Definition:</b> <a href="convolution3x3_8cl_source.xhtml#l00027">convolution3x3.cl:27</a></div></div>
Jenkins514be652019-02-28 12:25:18 +0000261<div class="ttc" id="scale__quantized_8cl_xhtml_acbe073ffe68691758706acfe1dc305ba"><div class="ttname"><a href="scale__quantized_8cl.xhtml#acbe073ffe68691758706acfe1dc305ba">transform_bilinear_quantized</a></div><div class="ttdeci">const float8 transform_bilinear_quantized(const float2 coord, const float2 scale)</div><div class="ttdoc">Transforms four 2D coordinates.</div><div class="ttdef"><b>Definition:</b> <a href="scale__quantized_8cl_source.xhtml#l00034">scale_quantized.cl:34</a></div></div>
Jenkins0e205f72019-11-28 16:53:35 +0000262<div class="ttc" id="src_2core_2_c_l_2cl__kernels_2_helpers_8h_xhtml_a4334a4a76f8e9628c0fb9e1acf616e2a"><div class="ttname"><a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h.xhtml#a4334a4a76f8e9628c0fb9e1acf616e2a">CONVERT_TO_IMAGE_STRUCT_NO_STEP</a></div><div class="ttdeci">#define CONVERT_TO_IMAGE_STRUCT_NO_STEP(name)</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00314">helpers.h:314</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +0000263<div class="ttc" id="warp__helpers__quantized_8h_xhtml_ae8a3d61874f95580e8110f4f206c3b8b"><div class="ttname"><a href="warp__helpers__quantized_8h.xhtml#ae8a3d61874f95580e8110f4f206c3b8b">bilinear_interpolate_with_border_quantized</a></div><div class="ttdeci">const DATA_TYPE4 bilinear_interpolate_with_border_quantized(const Image *in, const float8 coords, const float width, const float height, const float border_size, const float scale, const int offset_qasymm)</div><div class="ttdoc">Computes the bilinear interpolation for each set of coordinates in the vector coords and returns the ...</div><div class="ttdef"><b>Definition:</b> <a href="warp__helpers__quantized_8h_source.xhtml#l00084">warp_helpers_quantized.h:84</a></div></div>
Jenkins0e205f72019-11-28 16:53:35 +0000264<div class="ttc" id="struct_image_xhtml"><div class="ttname"><a href="struct_image.xhtml">Image</a></div><div class="ttdoc">Structure to hold Image information.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00349">helpers.h:349</a></div></div>
265<div class="ttc" id="struct_image_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">Image::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer.</div><div class="ttdef"><b>Definition:</b> <a href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00351">helpers.h:351</a></div></div>
Jenkins514be652019-02-28 12:25:18 +0000266<div class="ttc" id="warp__helpers__quantized_8h_xhtml_aa13de3eff8afd51e8bf4c1904a9b7415"><div class="ttname"><a href="warp__helpers__quantized_8h.xhtml#aa13de3eff8afd51e8bf4c1904a9b7415">get_current_coords_quantized</a></div><div class="ttdeci">const float2 get_current_coords_quantized()</div><div class="ttdoc">Returns the current thread coordinates.</div><div class="ttdef"><b>Definition:</b> <a href="warp__helpers__quantized_8h_source.xhtml#l00069">warp_helpers_quantized.h:69</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +0000267</div><!-- fragment -->
Jenkins0e205f72019-11-28 16:53:35 +0000268<p class="reference">References <a class="el" href="warp__helpers__quantized_8h_source.xhtml#l00084">bilinear_interpolate_with_border_quantized()</a>, <a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00311">CONVERT_TO_IMAGE_STRUCT</a>, <a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00314">CONVERT_TO_IMAGE_STRUCT_NO_STEP</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00027">DATA_TYPE</a>, <a class="el" href="warp__helpers__quantized_8h_source.xhtml#l00069">get_current_coords_quantized()</a>, <a class="el" href="src_2core_2_c_l_2cl__kernels_2_helpers_8h_source.xhtml#l00351">Image::ptr</a>, and <a class="el" href="scale__quantized_8cl_source.xhtml#l00034">transform_bilinear_quantized()</a>.</p>
Jenkinsb9abeae2018-11-22 11:58:08 +0000269
Jenkinsb9abeae2018-11-22 11:58:08 +0000270</div>
271</div>
272<a id="acbe073ffe68691758706acfe1dc305ba"></a>
273<h2 class="memtitle"><span class="permalink"><a href="#acbe073ffe68691758706acfe1dc305ba">&#9670;&nbsp;</a></span>transform_bilinear_quantized()</h2>
274
275<div class="memitem">
276<div class="memproto">
277<table class="mlabels">
278 <tr>
279 <td class="mlabels-left">
280 <table class="memname">
281 <tr>
282 <td class="memname">const float8 transform_bilinear_quantized </td>
283 <td>(</td>
284 <td class="paramtype">const float2&#160;</td>
285 <td class="paramname"><em>coord</em>, </td>
286 </tr>
287 <tr>
288 <td class="paramkey"></td>
289 <td></td>
290 <td class="paramtype">const float2&#160;</td>
291 <td class="paramname"><em>scale</em>&#160;</td>
292 </tr>
293 <tr>
294 <td></td>
295 <td>)</td>
296 <td></td><td></td>
297 </tr>
298 </table>
299 </td>
300 <td class="mlabels-right">
301<span class="mlabels"><span class="mlabel">inline</span></span> </td>
302 </tr>
303</table>
304</div><div class="memdoc">
305
306<p>Transforms four 2D coordinates. </p>
307<p>This is used to map the output coordinates to the input coordinates.</p>
308<dl class="params"><dt>Parameters</dt><dd>
309 <table class="params">
310 <tr><td class="paramdir">[in]</td><td class="paramname">coord</td><td>2D coordinates to transform. </td></tr>
311 <tr><td class="paramdir">[in]</td><td class="paramname">scale</td><td>input/output scale ratio</td></tr>
312 </table>
313 </dd>
314</dl>
315<dl class="section return"><dt>Returns</dt><dd>a float8 containing 4 2D transformed values in the input image. </dd></dl>
316
317<p class="definition">Definition at line <a class="el" href="scale__quantized_8cl_source.xhtml#l00034">34</a> of file <a class="el" href="scale__quantized_8cl_source.xhtml">scale_quantized.cl</a>.</p>
Jenkins975dfe12019-09-02 11:47:54 +0100318<div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keyword">const</span> float4 in_x_coords = (float4)(coord.s0, 1 + coord.s0, 2 + coord.s0, 3 + coord.s0);</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef SAMPLING_POLICY_TOP_LEFT</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">const</span> float4 new_x = in_x_coords * (float4)(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a>.s0);</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">const</span> float4 new_y = (float4)(coord.s1 * <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a>.s1);</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">return</span> (float8)(new_x.s0, new_y.s0, new_x.s1, new_y.s1, new_x.s2, new_y.s2, new_x.s3, new_y.s3);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#elif SAMPLING_POLICY_CENTER</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keyword">const</span> float4 new_x = (in_x_coords + ((float4)(0.5f))) * (float4)(<a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a>.s0) - (float4)(0.5f);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">const</span> float4 new_y = (float4)((coord.s1 + 0.5f) * <a class="code" href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">scale</a>.s1 - 0.5f);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">return</span> (float8)(new_x.s0, new_y.s0, new_x.s1, new_y.s1, new_x.s2, new_y.s2, new_x.s3, new_y.s3);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#else </span><span class="comment">/* SAMPLING_POLICY */</span><span class="preprocessor"></span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#error(&quot;Unsupported sampling policy&quot;);</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* SAMPLING_POLICY */</span><span class="preprocessor"></span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;}</div><div class="ttc" id="namespacearm__compute_1_1test_1_1validation_xhtml_acec6d8ad52a28972fa74e071c1a63b6a"><div class="ttname"><a href="namespacearm__compute_1_1test_1_1validation.xhtml#acec6d8ad52a28972fa74e071c1a63b6a">arm_compute::test::validation::scale</a></div><div class="ttdeci">scale</div><div class="ttdef"><b>Definition:</b> <a href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00317">PixelWiseMultiplication.cpp:317</a></div></div>
Jenkinsb9abeae2018-11-22 11:58:08 +0000319</div><!-- fragment -->
Jenkins975dfe12019-09-02 11:47:54 +0100320<p class="reference">References <a class="el" href="_n_e_o_n_2_pixel_wise_multiplication_8cpp_source.xhtml#l00317">arm_compute::test::validation::scale</a>.</p>
Jenkins514be652019-02-28 12:25:18 +0000321
322<p class="reference">Referenced by <a class="el" href="scale__quantized_8cl_source.xhtml#l00073">scale_bilinear_quantized_nchw()</a>.</p>
323
Jenkinsb9abeae2018-11-22 11:58:08 +0000324</div>
325</div>
326</div><!-- contents -->
327</div><!-- doc-content -->
328<!-- start footer part -->
329<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
330 <ul>
331 <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.xhtml">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.xhtml">core</a></li><li class="navelem"><a class="el" href="dir_8c278f79c760e5c5fbd911f9870614c1.xhtml">CL</a></li><li class="navelem"><a class="el" href="dir_25885286e9dad4fa105b7b25a8031bbf.xhtml">cl_kernels</a></li><li class="navelem"><a class="el" href="scale__quantized_8cl.xhtml">scale_quantized.cl</a></li>
Jenkins7f09cf72020-01-22 18:08:16 +0000332 <li class="footer">Generated on Wed Jan 22 2020 18:07:48 for Compute Library by
Jenkinsb9abeae2018-11-22 11:58:08 +0000333 <a href="http://www.doxygen.org/index.html">
Jenkins514be652019-02-28 12:25:18 +0000334 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
Jenkinsb9abeae2018-11-22 11:58:08 +0000335 </ul>
336</div>
337</body>
338</html>