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
* 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