Update documentation

This commit is contained in:
Joel Klimont 2023-02-10 11:37:24 +01:00
parent e8ac3e810a
commit 8cee0ec6f5
4 changed files with 49 additions and 1 deletions

BIN
_images/6x6_1000-0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

View file

@ -50,4 +50,30 @@ In diesem Programm werden die ArUco Marker, die sich am Spielfeld befinden, erka
Hier ist z.B. der ArUco Marker mit der ID 0. Führe das Programm aus und lass den Roboter auf den Bildschirm schauen. Das Programm sollte die 2D Position ausgeben, welcher der ArUco Marker (genauer sein Mittelpunkt) im Camera Bild hat.
|ArucoExample|
.. |ArucoExample| image:: images/6x6_1000-0.png
Um die Positionen zu verarbeiten, muss dann nur noch das "markers" array durchgegangen werden. Das könnte z.B. so gemacht werden:
.. code-block:: python
from compLib.Camera import *
camera = Camera()
while True:
image = camera.get_frame()
markers, image = camera.detect_markers_midpoint(image)
print(markers)
print("-----------------")
for marker in markers:
print(f"Marker mit der id: {marker.id}")
print(f"Ist auf der X Position: {marker.x}")
print(f"und auf der Y Position: {marker.y}")
print("-----------------")
camera.publish_frame(image)
Wichtig ist noch zu beachten, dass die X und Y Positionen ihren Ursprung in der linken oberen Ecke des Bildes haben. D.h. die Position (0,0) ist im oberen linken Bildrand.

View file

@ -205,6 +205,28 @@
</pre></div>
</div>
<p>Hier ist z.B. der ArUco Marker mit der ID 0. Führe das Programm aus und lass den Roboter auf den Bildschirm schauen. Das Programm sollte die 2D Position ausgeben, welcher der ArUco Marker (genauer sein Mittelpunkt) im Camera Bild hat.</p>
<p><img alt="ArucoExample" src="../../_images/6x6_1000-0.png" /></p>
<p>Um die Positionen zu verarbeiten, muss dann nur noch das „markers“ array durchgegangen werden. Das könnte z.B. so gemacht werden:</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">compLib.Camera</span> <span class="kn">import</span> <span class="o">*</span>
<span class="n">camera</span> <span class="o">=</span> <span class="n">Camera</span><span class="p">()</span>
<span class="k">while</span> <span class="kc">True</span><span class="p">:</span>
<span class="n">image</span> <span class="o">=</span> <span class="n">camera</span><span class="o">.</span><span class="n">get_frame</span><span class="p">()</span>
<span class="n">markers</span><span class="p">,</span> <span class="n">image</span> <span class="o">=</span> <span class="n">camera</span><span class="o">.</span><span class="n">detect_markers_midpoint</span><span class="p">(</span><span class="n">image</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">markers</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;-----------------&quot;</span><span class="p">)</span>
<span class="k">for</span> <span class="n">marker</span> <span class="ow">in</span> <span class="n">markers</span><span class="p">:</span>
<span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Marker mit der id: </span><span class="si">{</span><span class="n">marker</span><span class="o">.</span><span class="n">id</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Ist auf der X Position: </span><span class="si">{</span><span class="n">marker</span><span class="o">.</span><span class="n">x</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;und auf der Y Position: </span><span class="si">{</span><span class="n">marker</span><span class="o">.</span><span class="n">y</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;-----------------&quot;</span><span class="p">)</span>
<span class="n">camera</span><span class="o">.</span><span class="n">publish_frame</span><span class="p">(</span><span class="n">image</span><span class="p">)</span>
</pre></div>
</div>
<p>Wichtig ist noch zu beachten, dass die X und Y Positionen ihren Ursprung in der linken oberen Ecke des Bildes haben. D.h. die Position (0,0) ist im oberen linken Bildrand.</p>
</div>
</div>
</div>

File diff suppressed because one or more lines are too long