# SwisTrack

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/SwisTrack
> Markdown URL: https://mediated.wiki/source/SwisTrack.md
> Source: https://en.wikipedia.org/wiki/SwisTrack
> Source revision: 1354161227
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

{{Infobox software
 |logo = Image:Swistracklogo.PNG
 |caption =
 |screenshot =
 |developer = [Nikolaus  Correll](/source/Nikolaus_Correll), Pierre Roduit, Thomas Lochmatter and others
 |latest_release_version = 4.0.0
 |latest_release_date = {{Start date and age|2008|02}}
 |operating_system = [Linux](/source/Linux), [Windows](/source/Microsoft_Windows), [Mac OS](/source/Mac_OS)
 |genre = [Video tracking](/source/Video_tracking)
 |license = [Adaptive Public License](/source/Adaptive_Public_License) ([Open Source](/source/Open-source_license))
 |website = {{URL|swistrack.sourceforge.net}}
 |programming language = [C++](/source/C%2B%2B)
}}

'''SwisTrack''' is an [open-source](/source/open-source) tool for tracking [robot](/source/robot)s and other objects using a [camera](/source/camera) or a recorded [video](/source/video) as input source. It has mainly been developed by Distributed Intelligent Systems and Algorithms Laboratory (DISAL) and the LPM Vision Group at [EPFL](/source/EPFL) in Lausanne, Switzerland.<ref name="lochmatter">{{cite book |chapter-url=https://infoscience.epfl.ch/record/125704 |title=2008 IEEE/RSJ International Conference on Intelligent Robots and Systems |first1=Thomas |last1=Lochmatter |first2=Pierre |last2=Roduit |first3=Chris |last3=Cianci |first4=Nikolaus |last4=Correll |first5=Jacques |last5=Jacot |first6=Alcherio |last6=Martinoli |chapter=SwisTrack - A Flexible Open Source Tracking Software for Multi-Agent Systems |date=2008 |pages=4004–4010 |doi=10.1109/IROS.2008.4650937 |isbn=978-1-4244-2057-5 |s2cid=2527599 |access-date=January 20, 2024}}</ref>

== Architecture ==

SwisTrack is written in [C++](/source/C%2B%2B) using the [wxWidgets](/source/wxWidgets) library for [GUI](/source/GUI) and networking. It uses [Intel](/source/Intel)'s [OpenCV](/source/OpenCV) library for fast [image processing](/source/image_processing) and contains interfaces for [USB](/source/Universal_Serial_Bus), [FireWire](/source/FireWire) and [GigE](/source/Gigabit_Ethernet) cameras, as well as [AVI](/source/Audio_Video_Interleave) files.<ref name="correll">{{cite book |chapter-url=https://infoscience.epfl.ch/record/85929 |title=2006 IEEE/RSJ International Conference on Intelligent Robots and Systems |first1=Nikolaus |last1=Correll |first2=Gregory |last2=Sempo |first3=Yuri Lopez |last3=De Meneses |first4=Jose |last4=Halloy |first5=Jean-Louis |last5=Deneubourg |first6=Alcherio |last6=Martinoli |chapter=SwisTrack: A Tracking Tool for Multi-Unit Robotic and Biological Systems |date=2006 |pages=2185–2191 |doi=10.1109/IROS.2006.282558|isbn=1-4244-0258-1 }}</ref>

Since version 4, SwisTrack's pipeline is built by the user from components which interact with each other and pass data through data channels. There are six data channels: input, [grayscale image](/source/grayscale_image), color image, binary image, particles and tracks. Individual components work only with some of the data channels. Each data channel that the component works with can be in one of the three modes: read, write and edit (i.e. both read and write).<ref name="lochmatter"/>

In the typical pipeline, the image is transformed into a binary image, there objects are detected as blobs which are converted into particles, and the particles form tracks by comparing consecutive frames. Blob is a set of connected pixels with the same value.<ref name="lochmatter"/>

SwisTrack outputs data either by writing into a tab-separated file or by using the [TCP](/source/Transmission_Control_Protocol) interface with the [NMEA 0183](/source/NMEA_0183) protocol. The latter also allows the remote controlling.<ref name="lochmatter"/>

==See also==
* [List of robotics software](/source/List_of_robotics_software)

==References==
{{reflist}}

==External links==
{{wikibooks|SwisTrack}}
* [http://en.wikibooks.org/wiki/Swistrack SwisTrack documentation]
* [http://www.swarm-bots.org SwarmBots project]
* [http://leurre.ulb.ac.be The European Project LEURRE]
* [https://archive.today/20061118074305/http://quasimodo.versailles.inra.fr/fred/video/index.htm Tracking of corn borer larvae]

Category:Robotics software
Category:Free software programmed in C++
Category:Software that uses wxWidgets
Category:2008 software
Category:2008 in robotics

{{free-software-stub}}

---
Adapted from the Wikipedia article [SwisTrack](https://en.wikipedia.org/wiki/SwisTrack) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/SwisTrack?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
