dumber/software/raspberry/superviseur-robot/lib/doc/html/image_8h.html

598 lines
30 KiB
HTML

<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Bibliotheques TP RT: image.h File Reference</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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></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 id="projectlogo"><img alt="Logo" src="robot-icon.resized.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Bibliotheques TP RT
&#160;<span id="projectnumber">1.0</span>
</div>
<div id="projectbrief">Bibliotheque de support pour TP/RT</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('image_8h.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</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="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">image.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Functions for image treatment.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;raspicam/raspicam_cv.h&gt;</code><br />
<code>#include &quot;opencv2/imgproc/imgproc.hpp&quot;</code><br />
<code>#include &lt;unistd.h&gt;</code><br />
<code>#include &lt;math.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for image.h:</div>
<div class="dyncontent">
<div class="center"><img src="image_8h__incl.png" border="0" usemap="#image_8h" alt=""/></div>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="image_8h__dep__incl.png" border="0" usemap="#image_8hdep" alt=""/></div>
<map name="image_8hdep" id="image_8hdep">
<area shape="rect" id="node2" href="monitor_8h.html" title="Library for sending message to monitor or receiving message. " alt="" coords="5,80,81,107"/>
<area shape="rect" id="node3" href="server_8h.html" title="Library for opening a TCP server, receiving data and sending message to monitor. " alt="" coords="106,80,175,107"/>
</map>
</div>
</div>
<p><a href="image_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_position.html">Position</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a241aeeb764887ae5e3de58b98f04b16d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#a241aeeb764887ae5e3de58b98f04b16d">WIDTH</a>&#160;&#160;&#160;480</td></tr>
<tr class="separator:a241aeeb764887ae5e3de58b98f04b16d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed89bd71aee8be823e8a20ec4e093c1e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#aed89bd71aee8be823e8a20ec4e093c1e">HEIGHT</a>&#160;&#160;&#160;360</td></tr>
<tr class="separator:aed89bd71aee8be823e8a20ec4e093c1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a466446fef9c0348568bc6743186d1a38"><td class="memItemLeft" align="right" valign="top">typedef Mat&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a></td></tr>
<tr class="separator:a466446fef9c0348568bc6743186d1a38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a739dda3f6f6ddbab22617837b43a692a"><td class="memItemLeft" align="right" valign="top">typedef RaspiCam_Cv&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#a739dda3f6f6ddbab22617837b43a692a">Camera</a></td></tr>
<tr class="separator:a739dda3f6f6ddbab22617837b43a692a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa856a7cb8a1535c9f13096bede6c8586"><td class="memItemLeft" align="right" valign="top">typedef Rect&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#aa856a7cb8a1535c9f13096bede6c8586">Arene</a></td></tr>
<tr class="separator:aa856a7cb8a1535c9f13096bede6c8586"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ac2855e21920c676a108df386ff9415"><td class="memItemLeft" align="right" valign="top">typedef vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#a9ac2855e21920c676a108df386ff9415">Jpg</a></td></tr>
<tr class="separator:a9ac2855e21920c676a108df386ff9415"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aca0662ab31eac7fdb2d64fecc52ff1da"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#aca0662ab31eac7fdb2d64fecc52ff1da">open_camera</a> (<a class="el" href="image_8h.html#a739dda3f6f6ddbab22617837b43a692a">Camera</a> *camera)</td></tr>
<tr class="memdesc:aca0662ab31eac7fdb2d64fecc52ff1da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ouvre une camera. <a href="#aca0662ab31eac7fdb2d64fecc52ff1da">More...</a><br /></td></tr>
<tr class="separator:aca0662ab31eac7fdb2d64fecc52ff1da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19eac11a04cb4b86fd32e6a36445ad5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#a19eac11a04cb4b86fd32e6a36445ad5d">close_camera</a> (<a class="el" href="image_8h.html#a739dda3f6f6ddbab22617837b43a692a">Camera</a> *camera)</td></tr>
<tr class="memdesc:a19eac11a04cb4b86fd32e6a36445ad5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ferme la camera passé en paramètre. <a href="#a19eac11a04cb4b86fd32e6a36445ad5d">More...</a><br /></td></tr>
<tr class="separator:a19eac11a04cb4b86fd32e6a36445ad5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad904f3348c2d44f9c82435c94cd83844"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#ad904f3348c2d44f9c82435c94cd83844">get_image</a> (<a class="el" href="image_8h.html#a739dda3f6f6ddbab22617837b43a692a">Camera</a> *camera, <a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *monImage, const char *fichier=NULL)</td></tr>
<tr class="memdesc:ad904f3348c2d44f9c82435c94cd83844"><td class="mdescLeft">&#160;</td><td class="mdescRight">Capture une image avec la camera passée en entrée. En cas de test sans camera, la fonction charge une image. <a href="#ad904f3348c2d44f9c82435c94cd83844">More...</a><br /></td></tr>
<tr class="separator:ad904f3348c2d44f9c82435c94cd83844"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acad45df4061a55f17be0db97c1406249"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#acad45df4061a55f17be0db97c1406249">detect_arena</a> (<a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *monImage, <a class="el" href="image_8h.html#aa856a7cb8a1535c9f13096bede6c8586">Arene</a> *rectangle)</td></tr>
<tr class="memdesc:acad45df4061a55f17be0db97c1406249"><td class="mdescLeft">&#160;</td><td class="mdescRight">Détecte une arène dans une image fournis en paramètre. <a href="#acad45df4061a55f17be0db97c1406249">More...</a><br /></td></tr>
<tr class="separator:acad45df4061a55f17be0db97c1406249"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ffd032a466af45a505fb46252194bbf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#a5ffd032a466af45a505fb46252194bbf">draw_arena</a> (<a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *imgInput, <a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *imgOutput, <a class="el" href="image_8h.html#aa856a7cb8a1535c9f13096bede6c8586">Arene</a> *monArene)</td></tr>
<tr class="memdesc:a5ffd032a466af45a505fb46252194bbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dessine le plus petit rectangle contenant l'arène. <a href="#a5ffd032a466af45a505fb46252194bbf">More...</a><br /></td></tr>
<tr class="separator:a5ffd032a466af45a505fb46252194bbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9f6e2dd4409486f2f6446d1a8a02c40"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#af9f6e2dd4409486f2f6446d1a8a02c40">detect_position</a> (<a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *imgInput, <a class="el" href="struct_position.html">Position</a> *posTriangle, <a class="el" href="image_8h.html#aa856a7cb8a1535c9f13096bede6c8586">Arene</a> *monArene=NULL)</td></tr>
<tr class="memdesc:af9f6e2dd4409486f2f6446d1a8a02c40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Détecte la position d'un robot. <a href="#af9f6e2dd4409486f2f6446d1a8a02c40">More...</a><br /></td></tr>
<tr class="separator:af9f6e2dd4409486f2f6446d1a8a02c40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a869c3946d4a414b8730ca4f91fbd9556"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#a869c3946d4a414b8730ca4f91fbd9556">draw_position</a> (<a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *imgInput, <a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *imgOutput, <a class="el" href="struct_position.html">Position</a> *positionRobot)</td></tr>
<tr class="memdesc:a869c3946d4a414b8730ca4f91fbd9556"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dessine sur une image en entrée la position d'un robot et sa direction. <a href="#a869c3946d4a414b8730ca4f91fbd9556">More...</a><br /></td></tr>
<tr class="separator:a869c3946d4a414b8730ca4f91fbd9556"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a909ca7577f0ac2e4bd0ea21291690dce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="image_8h.html#a909ca7577f0ac2e4bd0ea21291690dce">compress_image</a> (<a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *imgInput, <a class="el" href="image_8h.html#a9ac2855e21920c676a108df386ff9415">Jpg</a> *imageCompress)</td></tr>
<tr class="memdesc:a909ca7577f0ac2e4bd0ea21291690dce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Détecte la position d'un robot. <a href="#a909ca7577f0ac2e4bd0ea21291690dce">More...</a><br /></td></tr>
<tr class="separator:a909ca7577f0ac2e4bd0ea21291690dce"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Functions for image treatment. </p>
<dl class="section author"><dt>Author</dt><dd>L.Senaneuch </dd></dl>
<dl class="section version"><dt>Version</dt><dd>1.0 </dd></dl>
<dl class="section date"><dt>Date</dt><dd>06/06/2017</dd></dl>
<p>This file use openCV2 library for picture processing. This allow to detect arena and robot. </p>
<p class="definition">Definition in file <a class="el" href="image_8h_source.html">image.h</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="aed89bd71aee8be823e8a20ec4e093c1e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed89bd71aee8be823e8a20ec4e093c1e">&#9670;&nbsp;</a></span>HEIGHT</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HEIGHT&#160;&#160;&#160;360</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="image_8h_source.html#l00045">45</a> of file <a class="el" href="image_8h_source.html">image.h</a>.</p>
</div>
</div>
<a id="a241aeeb764887ae5e3de58b98f04b16d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a241aeeb764887ae5e3de58b98f04b16d">&#9670;&nbsp;</a></span>WIDTH</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define WIDTH&#160;&#160;&#160;480</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="image_8h_source.html#l00044">44</a> of file <a class="el" href="image_8h_source.html">image.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="aa856a7cb8a1535c9f13096bede6c8586"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa856a7cb8a1535c9f13096bede6c8586">&#9670;&nbsp;</a></span>Arene</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef Rect <a class="el" href="image_8h.html#aa856a7cb8a1535c9f13096bede6c8586">Arene</a></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="image_8h_source.html#l00066">66</a> of file <a class="el" href="image_8h_source.html">image.h</a>.</p>
</div>
</div>
<a id="a739dda3f6f6ddbab22617837b43a692a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a739dda3f6f6ddbab22617837b43a692a">&#9670;&nbsp;</a></span>Camera</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef RaspiCam_Cv <a class="el" href="image_8h.html#a739dda3f6f6ddbab22617837b43a692a">Camera</a></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="image_8h_source.html#l00058">58</a> of file <a class="el" href="image_8h_source.html">image.h</a>.</p>
</div>
</div>
<a id="a466446fef9c0348568bc6743186d1a38"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a466446fef9c0348568bc6743186d1a38">&#9670;&nbsp;</a></span>Image</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef Mat <a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="image_8h_source.html#l00055">55</a> of file <a class="el" href="image_8h_source.html">image.h</a>.</p>
</div>
</div>
<a id="a9ac2855e21920c676a108df386ff9415"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9ac2855e21920c676a108df386ff9415">&#9670;&nbsp;</a></span>Jpg</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef vector&lt;unsigned char&gt; <a class="el" href="image_8h.html#a9ac2855e21920c676a108df386ff9415">Jpg</a></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="image_8h_source.html#l00067">67</a> of file <a class="el" href="image_8h_source.html">image.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a19eac11a04cb4b86fd32e6a36445ad5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19eac11a04cb4b86fd32e6a36445ad5d">&#9670;&nbsp;</a></span>close_camera()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void close_camera </td>
<td>(</td>
<td class="paramtype"><a class="el" href="image_8h.html#a739dda3f6f6ddbab22617837b43a692a">Camera</a> *&#160;</td>
<td class="paramname"><em>camera</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Ferme la camera passé en paramètre. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">camera</td><td>Pointeur sur la camera à fermer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a909ca7577f0ac2e4bd0ea21291690dce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a909ca7577f0ac2e4bd0ea21291690dce">&#9670;&nbsp;</a></span>compress_image()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void compress_image </td>
<td>(</td>
<td class="paramtype"><a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *&#160;</td>
<td class="paramname"><em>imgInput</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="image_8h.html#a9ac2855e21920c676a108df386ff9415">Jpg</a> *&#160;</td>
<td class="paramname"><em>imageCompress</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Détecte la position d'un robot. </p>
<p>Détecte la position de triangles blanc sur une image /a imgInput passé en paramètre d'entrer.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">imgInput</td><td>Pointeur sur l'image à sauvegarder en mémoire sous format jpg. </td></tr>
<tr><td class="paramname">imageCompress</td><td>Pointeur sur une image .jpg. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="acad45df4061a55f17be0db97c1406249"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acad45df4061a55f17be0db97c1406249">&#9670;&nbsp;</a></span>detect_arena()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int detect_arena </td>
<td>(</td>
<td class="paramtype"><a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *&#160;</td>
<td class="paramname"><em>monImage</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="image_8h.html#aa856a7cb8a1535c9f13096bede6c8586">Arene</a> *&#160;</td>
<td class="paramname"><em>rectangle</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Détecte une arène dans une image fournis en paramètre. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">monImage</td><td>Pointeur sur l'image d'entrée </td></tr>
<tr><td class="paramname">rectangle</td><td>Pointeur sur les coordonnées du rectangles trouvé. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Retourne -1 si aucune arène n'est détectée. Sinon retourne 0 </dd></dl>
</div>
</div>
<a id="af9f6e2dd4409486f2f6446d1a8a02c40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9f6e2dd4409486f2f6446d1a8a02c40">&#9670;&nbsp;</a></span>detect_position()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int detect_position </td>
<td>(</td>
<td class="paramtype"><a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *&#160;</td>
<td class="paramname"><em>imgInput</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="struct_position.html">Position</a> *&#160;</td>
<td class="paramname"><em>posTriangle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="image_8h.html#aa856a7cb8a1535c9f13096bede6c8586">Arene</a> *&#160;</td>
<td class="paramname"><em>monArene</em> = <code>NULL</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Détecte la position d'un robot. </p>
<p>Détecte la position de triangles blanc sur une image /a imgInput passé en paramètre d'entrer.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">imgInput</td><td>Pointeur sur l'image sur laquelle chercher la position du des robots. </td></tr>
<tr><td class="paramname">posTriangle</td><td>Pointeur sur un tableau de position ou seront stocké les positions des triangles détectés. </td></tr>
<tr><td class="paramname">monArene</td><td>Pointeur de type Arène si nécessaire d'affiner la recherche (optionnel) </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Le nombre de triangles détectés. </dd></dl>
</div>
</div>
<a id="a5ffd032a466af45a505fb46252194bbf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ffd032a466af45a505fb46252194bbf">&#9670;&nbsp;</a></span>draw_arena()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void draw_arena </td>
<td>(</td>
<td class="paramtype"><a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *&#160;</td>
<td class="paramname"><em>imgInput</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *&#160;</td>
<td class="paramname"><em>imgOutput</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="image_8h.html#aa856a7cb8a1535c9f13096bede6c8586">Arene</a> *&#160;</td>
<td class="paramname"><em>monArene</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Dessine le plus petit rectangle contenant l'arène. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">imgInput</td><td>Pointeur sur l'image d'entrée. </td></tr>
<tr><td class="paramname">imgOutput</td><td>Pointeur sur l'image de sortie (image d'entrée + arène marquée) </td></tr>
<tr><td class="paramname">monArene</td><td>Pointeur de type Arène contenant les information à dessiner </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a869c3946d4a414b8730ca4f91fbd9556"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a869c3946d4a414b8730ca4f91fbd9556">&#9670;&nbsp;</a></span>draw_position()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void draw_position </td>
<td>(</td>
<td class="paramtype"><a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *&#160;</td>
<td class="paramname"><em>imgInput</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *&#160;</td>
<td class="paramname"><em>imgOutput</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="struct_position.html">Position</a> *&#160;</td>
<td class="paramname"><em>positionRobot</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Dessine sur une image en entrée la position d'un robot et sa direction. </p>
<p>Sauvegarde l'image des coordonnées passées par positionRobot superposée à l'image d'entrée sur imgOutput.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">imgInput</td><td>Pointeur sur l'image d'entrée </td></tr>
<tr><td class="paramname">imgOutput</td><td>Pointeur sur l'image de sortie ( image d'entrée + dessin de la position) </td></tr>
<tr><td class="paramname">positionRobot</td><td>Pointeur sur la structure position d'un robot. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad904f3348c2d44f9c82435c94cd83844"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad904f3348c2d44f9c82435c94cd83844">&#9670;&nbsp;</a></span>get_image()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void get_image </td>
<td>(</td>
<td class="paramtype"><a class="el" href="image_8h.html#a739dda3f6f6ddbab22617837b43a692a">Camera</a> *&#160;</td>
<td class="paramname"><em>camera</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="image_8h.html#a466446fef9c0348568bc6743186d1a38">Image</a> *&#160;</td>
<td class="paramname"><em>monImage</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>fichier</em> = <code>NULL</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Capture une image avec la camera passée en entrée. En cas de test sans camera, la fonction charge une image. </p>
<p>La camera doit préalablement être ouverte via <em>openCamera</em>(...)</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">camera</td><td>Pointeur sur la camera passée en entrée. </td></tr>
<tr><td class="paramname">monImage</td><td>Pointeur sur une image capturée. </td></tr>
<tr><td class="paramname">fichier</td><td>Chemin du fichier d'image </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Retourne -1 si une erreur survient. </dd></dl>
</div>
</div>
<a id="aca0662ab31eac7fdb2d64fecc52ff1da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca0662ab31eac7fdb2d64fecc52ff1da">&#9670;&nbsp;</a></span>open_camera()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int open_camera </td>
<td>(</td>
<td class="paramtype"><a class="el" href="image_8h.html#a739dda3f6f6ddbab22617837b43a692a">Camera</a> *&#160;</td>
<td class="paramname"><em>camera</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Ouvre une camera. </p>
<p>Met à jour le descripteur de fichier passé en paramètre pour correspondre à la camera ouverte</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">camera</td><td>Pointeur d'un file descriptor d'une camera ouverte </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Retourne 0 si la camera a été ouverte correctement et -1 si une erreur survient. </dd></dl>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="image_8h.html">image.h</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>