-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ideas for future improvements to the code (mostly a reminder to ourselves) #22
Comments
Merged
pandersson94
pushed a commit
that referenced
this issue
Apr 9, 2024
- Changed the Python version of ꟻLIP so that it leverages the C++ code through [pybind11](https://github.com/pybind/pybind11). - Results (only evaluation, not including file load/save, etc; measured on an AMD Ryzen Threadripper 3970X 32-Core Processor, 3693 MHz, with 32 Cores and 64 Logical Processors): - 20-47x faster for LDR/HDR CPU. - Timings for 1920x1080 images: - Python/LDR: 77 ms - Python/HDR: 1007 ms - **NOTE**: The Python version can currently _not_ run the CUDA version of ꟻLIP (see issue [#22](#22)). - **NOTE**: The Python tool now uses the C++ tool. Compared to before, you will need to change `_` to `-` when calling flip.py (e.g., `python flip.py -r reference.exr -t test.exr --start_exposure 3` is now `python flip.py -r reference.exr -t test.exr --start-exposure 3`; see `python flip.py -h`). - The Python version of ꟻLIP can now be installed using `pip` (run `pip install -r requirements.txt .` from the `python` folder). - The code for the C++/CUDA tool is now in `FLIPToolHelpers.h`. - **NOTE**: The fourth `evaluate()` function in `FLIP.h` now takes two additional arguments: `computeMeanError` and `meanError`. Furthermore, its list of arguments has been partly reordered. - **NOTE**: The median computation (used for automatic start and stop expsoure computations in HDR-ꟻLIP) in the C++/CUDA code has been changed, sometimes causing a minor change in results but always resulting in a significant speedup. The tests have been updated following this change. - Timings for 1920x1080 images (only evaluation, not including file load/save, etc, *but* measured with another GPU and including more code than the numbers presented in the v1.2 update, so the numbers are not directly comparable; measured on an AMD Ryzen Threadripper 3970X 32-Core Processor, 3693 MHz, with 32 Cores and 64 Logical Processors and an NVIDIA RTX 4090 GPU): - CPP/LDR: 86 ms - CPP/HDR: 1179 ms - CUDA/LDR: 8 ms - CUDA/HDR: 131 ms - Added check for OpenMP for CMake build. - Overlapped histograms are now available in the C++ tool code. These are created when one reference and _two_ test images are input, together with the `--histogram` flag. - Text file output are now available in the C++ tool code. These are created when the `--textfile` flag is input. - The Python and C++ tests now use the same targets.
Hi, are there currently any efforts to publish flip to PyPI? Or is it really just a reminder? I think having flip on PyPi would be really useful to a lot of people. |
Not at the moment, but we will get back to this topic! However, it will most likely be in the fall of 2024. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
solve2degree()
a bit more robust by using a better 2nd-degree solver.float2color3()
→floatToColor3()
etc, because in this case it is a bit confusing. When doing this, we should rename so no function uses a2
instead ofTo
saveHDROutputLDRImages()
to something better, perhapssaveIntermediateLDRImages()
. Same goes for corresponding variable names:returnLDRFLIPImages
,hdrOutputFlipLDRImages
,returnLDRImages
, andhdrOutputLDRImages
.std::nth_element()
(would make the HDR-version faster)The text was updated successfully, but these errors were encountered: