diff --git a/README.md b/README.md index 23d3a37..b805a83 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,8 @@ This project is being developed as a practical part of bachelor's thesis at Brno Universtiy of Technology - Faculty of Information Studies. It is as of now a work in progress, no results guaranteed. The topic of this thesis is Generating a 3D Fingerprint Model. This application can be used to apply series of image processing filters to a fingerprint image to make it more suitable for conversion to 3D stl model and printing. -It should also have the functionality to convert the image to stl lithophane and map it to a 3d finger model. - +It also includes the functionality to use generated image as a height map for generating an stl model. +This model can either be planar or curved. # Prerequisites @@ -40,11 +40,11 @@ Installation is relatively fast and easy. # Usage -There are two ways to enter filter series +There are two ways to enter filters -* manually from command line, list filter names and parameters will be added later +* manually from command line, list filter names and parameters ```sh - python src/main.py res/test_fp.png res/test_fp_cpy.png 100 gaussian erode dilate sharpen + python src/main.py res/test_fp.png res/test_fp_cpy.png 100 gaussian ksize=5 erode dilate sharpen ``` * manually from preset saved in a json config file, that can be used to create new presets ```sh @@ -58,13 +58,25 @@ There is an option to input the filter series as a preset to json configuration ```diff { "preset_name": [ - "filter_1", - "filter_2", - "filter_3" + { + "name": "first_filter_name", + "first_param_name": first_param_value, + "second_param_name": second_param_value + ... + }, + { + "name": "second_filter_name", + ... + } + ], + "another_preset_name": [ + ... ] } ``` +All the filters used and their parameters will be described in documentation. + # Comparison Image before processing the fingerprint and after applying a presets. @@ -82,20 +94,33 @@ Image before processing the fingerprint and after applying a presets. # Generated STL lithophane -This section will be added later. It will describe the process of converting the fingerprint image data to 3D stl lithophane. +It is possible to generate 3D printable stl planar model using `--stl` switch, which requires aditional parameter containing stl filename. Using `-p` switch makes the model planar. This is not the main goal of the application. +Additional parameters with model thickness and papilar lines height will be optional. + +Example running + +# Generated STL finger model + +When `--stl` switch is given without `-p`, the output model will either be a generated curved finger model, or later (if implemented) a fingerprint mapped to finger model. + + +# Fingerprint mapped to finger model + +This section will be added later. # Roadmap - [x] Load and store image - [x] Apply basic image processing filters - - [ ] Scale the image using given dpi + - [X] Scale the image using given dpi - [X] Create filter library with more filters - - [ ] Add more suitable filters to the library + - [X] Add more suitable filters to the library - [x] Use presets from config files - - [ ] Add the option to save current filter presetto config file -- [ ] Add the option to modify filter parameters -- [ ] Convert the processed image to stl lithophane - - [ ] Add the option to map the lithophane on a finger model + - [ ] Add the option to save current filter preset to config file +- [X] Add the option to modify filter parameters +- [X] Convert the processed image to stl lithophane +- [ ] Add the option to curve the lithophane into the shape of a finger +- [ ] Add the option to map the lithophane on a given finger model - [ ] Export final model ready for 3D print #