Skip to content

M.Sc. group project: Structure identification in medical imaging using VTK and Qt

Notifications You must be signed in to change notification settings

delcypher/simi-qt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SIMI-Qt (Structure Identification in Medical Imaging - Qt)
By Tom Brzozowski, Dan Liew, Bill Papaefstratiou, My Pijika, Wasin Chaivaranont

* Description
	Simi-qt is a M.Sc. Computing Science group project that took place at Imperial College London in 2012.

	The program is intended to be used for segmenting parts of medical images such as the "airways".
---

* DEPENDENCIES
	- VTK 5.8 with Qt support enabled
	- Qt 4.7 or higher

	Note older versions of these libraries may still work with the code but this has NOT been tested!

* BUILDING
	1. Make sure CMake is installed
	2. Make sure the Qt development libraries and header files are installed.
	3. Prepare a simi-qt as an "out of source build" by running

	$ mkdir build-dir
	$ cd build-dir
	$ cmake-gui /path/to/simi-qt-source-root/

	Note you can use ccmake instead of cmake-gui if you prefer.
	4. Now select the options you want.

	DO_SUPERBUILD - 
	If you do not have the VTK library installed that has Qt support compiled in then the superbuild mode
	can build it for project development
		
		Select from:
		BUILD_VTK

		You will be presented with options (press configure first) that will let you choose your source for
		the libraries. Note this must be a git repository.

	If you already have VTK installed on your system or you have already built it 
	using the superbuild then you should disable DO_SUPERBUILD and reconfigure.

	SQ_BUILD_TYPE - 
	This specifies what the build type (Usually Release or Debug) should be for the project. Note this has no affect on how the VTK library is built.

	BUILD_DOCUMENTATION -
	If enabled will Doxygen documentation for this project will be generated. The destination for this documentation is set by the DOC_OUTPUT_DIR variable

	BUILD_WITH_VERSION_INFO -
	If enabled, the current Git tag or refspec+branch will be hard coded into the program every time it is compiled. If the code is not in a git repository
	then you should disable this option.

	5. Generate the makefile from within ccmake or cmake-gui
	6. Run
	$ make

* RUNNING
	There is currently no install target. The built executable named 'simi-qt' will appear in
	build-dir/src/


* DEVELOPMENT WITH QtCreator
	Here's how to setup the project to work the QtCreator IDE

	1. You need to ensure you have VTK installed or you have built them previously using "DO_SUPERBUILD".

	2. Run the following commands (can use ccmake instead of cmake-gui but if you're using QtCreator you'll probably prefer cmake-gui)

	$ cd build-dir/
	$ cmake-gui /path/to/simi-qt-source-root/

	2. Press "configure".
	3. Select "Unix Makefiles" and press "finish".

	4. If VTK is installed as a system library cmake should automatically find them. If you built them using "DO_SUPERBUILD" then modify VTK_DIR to point to where it was built.

	5. Press "Configure again".
	6. Now exit.

	7. Launch QtCreator
	8. Click on File > Open File or Project
	9. Select /path/to/simi-qt-source-root/CMakeLists.txt
	10. A "CMake Wizard" dialog will appear. Click "Run CMake".
	11. Click finish.

	You're done!

* COVERAGE INFORMATION
	Coverage information can be gathered for unit tests that have been exectued using lcov. Note this requires you to be using the GNU C++ compiler.

	Steps
	1. Change into the build directory
	2. run
	$ make help
	... all (the default if no target is provided)
	... clean
	... depend
	... edit_cache
	... rebuild_cache
	... test
	... simi-qt
	... all_tests
	... coverage_clean
	... coverage_gen
	... drawmanager_tester
	... imagepairmanager_tester
	... seedpointmanager_tester
	... segmenter_tester
	... ui_tester
	... docs


	3. All targets that have "_tester" as a suffix are unit tests. Build the ones you want and run them once.  If you want to build all tests at once run
	$ make all_tests

	If you want to run all tests at once then run
	$ make test

	4. Run the following the generate the coverage information as a HTML document in "build-dir/coverage_html/"
	$ make coverage_gen

	Note that everything in "build-dir/coverage_html" will be deleted prior to generating the coverage information as a HTML page.

	5. To reset the execution counters run
	$ make coverage_clean

* DOCUMENTATION GENERATION
	If the BUILD_DOCUMENTATION CMake cache variable is set then Doxygen documentation will be built everytime the program is compiled. The output directory
	is set by the DOC_OUTPUT_DIR CMake cache variable. Look in "doc/Doxyfile.in" for the settings used to generate the documentation.

	If you need to generate the documentation manually run

	$ cd build-dir
	$ make docs

About

M.Sc. group project: Structure identification in medical imaging using VTK and Qt

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •