At its core, Grinder is a tool for labeling images. It can be used, for example, to label ground truth images that can then be used for training a CNN, a random forest or any other machine learning algorithm that requires labeled training data. Besides various advanced image editing features, Grinder also offers a powerful image preprocessing pipeline that makes labeling even easier.
## Who should use Grinder?
Grinder is made for people who need to manually label ground truth data. With its powerful and vast set of features, Grinder makes this often cumbersome task a lot easier and more comfortable.
## Who is behind Grinder?
Grinder is written and maintained by Daniel Müller of the [Westfälische Wilhelmsuniversität Münster](https://www.uni-muenster.de). You can reach him via [email](mailto:d_muel20@wwu.de).
Installing and running Grinder is quite easy. It is a fully portable application written in C++14 using the Qt framework and was tested on Windows, Linux and MacOSX. Since it comes as a Qt Creator project, it is best to start exactly there:
1.**Get Qt and Qt Creator**
Download the Qt framework from the [here](https://www.qt.io/developers/); Grinder requires at least version 5.10.0. Make sure that you install Qt Creator as well.
2.**Get all necessary libraries**
Grinder requires several external libraries:
*[OpenCV 3](https://opencv.org/)(v3.4.0 or higher)
*[HDF5](https://www.hdfgroup.org)(v1.8.0 or higher)
*[ZeroMQ](http://zeromq.org/)(v4.2.0 or higher)
All these libraries can be compiled using [CMake](https://cmake.org). Please do understand that we cannot offer any help regarding compiling these libraries on your system.
3.**Open the Grinder.pro file in Qt Creator**
_Grinder.pro_ is the main project file of Grinder.
4.**Edit Libraries.pro to match your system**
To find and link to the external libraries mentioned above, the Grinder project uses the file _Libraries/Libraries.pro_. You will have to edit the various paths (_INCLUDEPATH_, _DEPENDPATH_ and _LIBS_) to match those on your system.
5.**Compile Grinder**
Once you have everything in place and edited the _Libraries.pro_ file, you can compile the actual Grinder project. There should be no issues when compiling Grinder. If you get any linker errors, make sure that you edited the _Libraries.pro_ file correctly.
6.**Run Grinder**
That’s it! If everything went well, you are now ready to use Grinder. If you are new to Grinder, you should start your journey [here](GettingStarted.md).