Commit Graph

220 Commits

Author SHA1 Message Date
bert d0c888024d Use global color interpolation.
Now every place uses the globally defined colors rather than specific
colors whenever needed. Next: make those colors configurable.
2018-05-03 13:33:02 +02:00
bert b820bb407f Actually show percentage done while loading. 2018-04-30 14:42:36 +02:00
bert c60d73d765 Clean up the loading process.
Now loads one file at a time, reducing the amount of memory needed for
large numbers of inputs. Still somewhat heavy for low numbers because of
the overhead of loading the model.
2018-04-30 14:15:16 +02:00
bert 282373010d Make building launcher and deinplace optional. 2018-04-30 14:15:04 +02:00
bert c434c2b62c Implement interaciton paths for labels. 2018-04-30 13:40:12 +02:00
bert 4f370a4bbd Implement visualisation of the labels, if available. 2018-04-30 13:05:23 +02:00
bert 8eb19cdb6d Restore layer names. 2018-04-23 15:39:21 +02:00
bert 03cac53d05 Load all data sets ahead of time.
This allows for easier flipping through all images.
2018-04-19 14:17:56 +02:00
bert 08c805377e Bugfix: don't do multiple loads simultaneously. 2018-04-16 17:54:47 +02:00
bert 51b537676d Move Caffe simulation to a separate thread.
Teapot now shows pretty much instantly after starting the program, and
then only reappears when switching inputs.
2018-04-16 17:53:00 +02:00
bert 1fdb60f679 Remove LoadingScreen from the ABI. 2018-04-16 16:38:10 +02:00
bert d20f568836 Use GLUT for detecting errors.
Rather than polling for errors, let GLUT do it. Can be enabled with the
"-gldebug" CLI flag.
2018-04-13 13:21:30 +02:00
bert 018148efef Remove unused function. 2018-04-12 20:55:15 +02:00
bert eb31ce7d18 Bugfix: no longer segfault when changing images. 2018-04-12 20:53:15 +02:00
bert 7569b9aad3 Clean up. 2018-04-12 17:01:08 +02:00
bert 73cdb7f36f Implement asynchronous loading. 2018-04-12 16:58:57 +02:00
bert 265bc61b98 Large refactor of texture loading.
In this new implementation, everything is loaded on a separate thread,
but the textures are initialized on the main OpenGL thread.

This is all to work around the fact that you cannot create a separate
GL context in GLUT.
2018-04-12 16:52:09 +02:00
bert 30aa25a09e Implement a simple loading animation.
Loading currently doesn't happen, because loading tries to do some GL
actions which cannot happen in a background thread (in GLUT anyway).

TODO: move all GL options to the main thread, and leave the rest of the
loading to the background.
2018-04-12 14:25:01 +02:00
bert 2bd84abe94 Require proper opencv version. 2018-04-11 14:03:22 +02:00
bert 170c5658a5 Change drawing order depending on camera direction. 2018-04-11 13:24:33 +02:00
bert 63e487afce Implement movement with the mouse. 2018-04-11 13:03:34 +02:00
bert 0145391450 Allow maximum number of particles to be configured. 2018-04-09 16:43:40 +02:00
bert 1c942a7de7 Make layer distance changable. Refs #1.
As a side-effet, now the ordering of the layers is left-to-right rather
than right-to-left. This shouldn't matter in normal processing, but it
is interesting nonetheless.
2018-04-09 14:32:57 +02:00
bert 8cdeefc37b Replace separate parse function with constructor. 2018-04-09 13:56:34 +02:00
bert 2c373fbd1e Set defaults for parameters in launcher.
The launcher assumes it is running in a subfolder of the project root,
and then checks some default paths for the parameters of the launcher.

Currently, it loads up the ilsvrc12 configuration in conjunction with
Alexnet. Maube this can change in the future to sommething more
interesting?
2018-04-09 13:38:42 +02:00
bert 3f3c95fd13 Simpler coloring function for ReLU layers. 2018-04-06 13:55:00 +02:00
bert 368cc7c006 Implement layer interactions for softmax layer. 2018-04-06 13:44:54 +02:00
bert 7ab195c462 Hide interactions to non-active nodes. 2018-04-06 13:28:06 +02:00
bert dd3d563037 More cleanup. 2018-04-06 13:23:01 +02:00
bert e54082c96a Update targets for complete installation. 2018-04-06 13:20:22 +02:00
bert 52a5493c6e Update README with correct dependencies. 2018-04-06 13:19:11 +02:00
bert 3269e40c11 Cleanup of dependencies. 2018-04-06 13:10:07 +02:00
bert 2138ce440a Unify drawing of layers and interactions into "drawables". 2018-04-06 13:06:03 +02:00
bert 9dc4f1546d Remove dependency on png++, use openCV instead. 2018-04-06 12:25:08 +02:00
bert 2bc3d5ae95 Properly search for OpenCV. 2018-04-05 17:35:46 +02:00
bert 375833bc87 Implement transparancy for textures. 2018-04-05 16:49:35 +02:00
bert 3e4452ca3a Support layer and interaction transparancy. Refs #1 2018-04-05 16:08:58 +02:00
bert 21fdc45e65 Correct usage of snprintf. 2018-04-05 14:30:28 +02:00
bert 68be06f378 Replace getopt with Boost::program_options. 2018-04-05 14:22:23 +02:00
bert ffea333609 Implement increasing particle sizes. Refs #1. 2018-04-03 19:55:30 +02:00
bert d4d4d6d431 Use Color type wherever possible. 2018-04-03 19:22:14 +02:00
bert f62c2859e3 Implement an option to choose path color. Refs #1. 2018-04-03 16:43:23 +02:00
bert 62153d9c6d Implement a color passing function for various options.
Refs #1.
2018-04-03 16:15:08 +02:00
bert d76c067489 Implement showing interaction paths. 2018-04-03 14:06:38 +02:00
bert c0032aa688 Allow hiding non-activated nodes.
Refs #2.
2018-03-29 15:40:11 +02:00
bert 59ecb91713 Implement dynamically enabling layer/interaction rendering.
Refs #2.
2018-03-29 14:56:43 +02:00
bert 1ffbfda2d9 Fix compiler warnings. 2018-03-29 14:22:51 +02:00
bert c495a60c4d Create a configurable overlay. 2018-03-29 14:13:32 +02:00
bert 4f3099bc60 Implement sprinting. 2018-03-29 12:50:15 +02:00
bert 1c872c9969 Move all rendering logic to a single RenderingState. 2018-03-29 12:34:39 +02:00