Cílem bakalářské práce je zanalyzovat a naprogramovat v jazyku C++ vhodné metody zpracování obrazu pro řízení pohybu kolového robotu. V první části se práce zabývá analýzou vhodných metod zpracování obrazu. Metody jsou otestovány s využitím nástroje MATLAB a jsou vybrány pouze ty, které splňují odpovídající požadavky. Druhá část práce se zabývá samotnou implementací vybraných metod s využitím knihovny OpenCV, aplikované přímo na snímky z reálně zvolené kamery. Poté jsou metody odladěny pro potenciální řízení pohybu v reálném čase. Poslední část práce se zabývá vyhodnocením výsledků při různých světelných podmínkách.
Annotation in English
The aim of the bachelor thesis is an analysis of suitable image processing methods for wheeled robot motion control and its realization in the language of C++. The first part deals with a selection of appropriate image processing methods. The approaches are tested using the MATLAB tool, and only those that fulfill the corresponding requirements are selected. The second part deals with the implementation of chosen methods using the C++ library OpenCV. After that, the approved methods are debugged for possible motion control. The last part deals with tests under different lighting conditions.
Keywords
zpracování obrazu, řízení pohybu, kamera, robot, navigace
Cílem bakalářské práce je zanalyzovat a naprogramovat v jazyku C++ vhodné metody zpracování obrazu pro řízení pohybu kolového robotu. V první části se práce zabývá analýzou vhodných metod zpracování obrazu. Metody jsou otestovány s využitím nástroje MATLAB a jsou vybrány pouze ty, které splňují odpovídající požadavky. Druhá část práce se zabývá samotnou implementací vybraných metod s využitím knihovny OpenCV, aplikované přímo na snímky z reálně zvolené kamery. Poté jsou metody odladěny pro potenciální řízení pohybu v reálném čase. Poslední část práce se zabývá vyhodnocením výsledků při různých světelných podmínkách.
Annotation in English
The aim of the bachelor thesis is an analysis of suitable image processing methods for wheeled robot motion control and its realization in the language of C++. The first part deals with a selection of appropriate image processing methods. The approaches are tested using the MATLAB tool, and only those that fulfill the corresponding requirements are selected. The second part deals with the implementation of chosen methods using the C++ library OpenCV. After that, the approved methods are debugged for possible motion control. The last part deals with tests under different lighting conditions.
Keywords
zpracování obrazu, řízení pohybu, kamera, robot, navigace
Proveďte analýzu literárních pramenů vztahujících se k problematice zpracování obrazu v reálném čase.
Vyberte vhodné metody pro řešení základního rozpoznání 3D scény pro strategii řízení rovinného pohybu kolového robota při známé vzdálenosti překážek (tj. bez měření vzdálenosti).
Vhodné metody otestujte s použitím nástroje MATLAB a vyberte ty, které splňují odpovídající požadavky.
Vytvořte na základě poznatků z předchozího vlastní program s využitím dat z reálně zvolené kamery v jazyku C/C++.
Otestujte obrazová data a odlaďte implementované algoritmy zpracování obrazu tak, aby odpovídaly požadavkům na řízení pohybu v reálném čase.
Proveďte podrobné vyhodnocení výsledků při různých světelných podmínkách.
Research Plan
Proveďte analýzu literárních pramenů vztahujících se k problematice zpracování obrazu v reálném čase.
Vyberte vhodné metody pro řešení základního rozpoznání 3D scény pro strategii řízení rovinného pohybu kolového robota při známé vzdálenosti překážek (tj. bez měření vzdálenosti).
Vhodné metody otestujte s použitím nástroje MATLAB a vyberte ty, které splňují odpovídající požadavky.
Vytvořte na základě poznatků z předchozího vlastní program s využitím dat z reálně zvolené kamery v jazyku C/C++.
Otestujte obrazová data a odlaďte implementované algoritmy zpracování obrazu tak, aby odpovídaly požadavkům na řízení pohybu v reálném čase.
Proveďte podrobné vyhodnocení výsledků při různých světelných podmínkách.
Recommended resources
SANKOWSKI, Dominik a Jacek NOWAKOWSKI. Computer vision in robotics and industrial applications. Singapore: World Scientific, [2014), 563 s. Series in computer vision. ISBN 9789814583718.
CORKE, Peter I. Robotics, vision and control: fundamental algorithms in Matlab. Berlin: Springer, 2011, 570 s. Springer tracts in advanced robotks. ISBN 9783642201431.
ŠONKA, Milan, Václav HLAVAC a Roger BOYLE. Image processing, analysis, and machine vision. Second edition. Pacific Grove: PWS Publishing, (1999), 770 s. ISBN 053495393X.
BURGER, Wilhelm a Mark James BURGE. Principles of digital image processing: advanced methods. London: Springer, 2013. Undergraduate topics in computer science (Springer). ISBN 978-1848829183.
ZHI ENG, L. Qt5 C++ GUI Programming Cookbook, 2nd ed.; Packt Publishing: Birmingham, England, 2019; pp. 428.
MALLICK, Satya. Object Tracking using OpenCV (C++/Python) [online]. 13 February 2017, s. 12 [cit. 2020-11-24]. Dostupné z: https://www.learnopencv.com/object-tracking-using-opencv-cpp-python/
Recommended resources
SANKOWSKI, Dominik a Jacek NOWAKOWSKI. Computer vision in robotics and industrial applications. Singapore: World Scientific, [2014), 563 s. Series in computer vision. ISBN 9789814583718.
CORKE, Peter I. Robotics, vision and control: fundamental algorithms in Matlab. Berlin: Springer, 2011, 570 s. Springer tracts in advanced robotks. ISBN 9783642201431.
ŠONKA, Milan, Václav HLAVAC a Roger BOYLE. Image processing, analysis, and machine vision. Second edition. Pacific Grove: PWS Publishing, (1999), 770 s. ISBN 053495393X.
BURGER, Wilhelm a Mark James BURGE. Principles of digital image processing: advanced methods. London: Springer, 2013. Undergraduate topics in computer science (Springer). ISBN 978-1848829183.
ZHI ENG, L. Qt5 C++ GUI Programming Cookbook, 2nd ed.; Packt Publishing: Birmingham, England, 2019; pp. 428.
MALLICK, Satya. Object Tracking using OpenCV (C++/Python) [online]. 13 February 2017, s. 12 [cit. 2020-11-24]. Dostupné z: https://www.learnopencv.com/object-tracking-using-opencv-cpp-python/