Merge branch 'main' of https://git.dws.rip/DWS/chrome
This commit is contained in:
36
README.md
36
README.md
@@ -19,12 +19,38 @@ A high-performance C++ port of [negfix8](https://github.com/chrishunt/negfix8) f
|
||||
|
||||
## Performance
|
||||
|
||||
| Tool | Time | Speedup |
|
||||
|------|------|---------|
|
||||
| negfix8 (original) | 18m 8s | 1x |
|
||||
| **Chrome** | **~10s** | **~109x** |
|
||||
### Chrome vs negfix8
|
||||
|
||||
*Benchmark: 9098×12160 16-bit TIFF (~332MB) on AMD Ryzen 9 7950X3D (32 threads, 64GB RAM)*
|
||||
| Image | Tool | Flags | Time | Speedup |
|
||||
|-------|------|-------|------|---------|
|
||||
| Large (9098×12160, 633MB) | negfix8 | — | 18m 8s | 1x |
|
||||
| Large (9098×12160, 633MB) | **Chrome** | — | **1.26s** | **~865x** |
|
||||
| Small (4272×6272, 153MB) | negfix8 | — | 22.0s | 1x |
|
||||
| Small (4272×6272, 153MB) | **Chrome** | — | **0.41s** | **~54x** |
|
||||
|
||||
### Chrome Detailed Benchmarks
|
||||
|
||||
#### Large Image (test_input.tiff — 9098×12160, 633MB)
|
||||
|
||||
| Flags | Time |
|
||||
|-------|------|
|
||||
| *(baseline)* | 1.26s |
|
||||
| `-cs` | 1.38s |
|
||||
| `-sat 50` | 1.38s |
|
||||
| `-exp 1.2` | 1.39s |
|
||||
| `-cs -sat 50 -exp 1.2` | 1.45s |
|
||||
|
||||
#### Small Image (test_input_small.tiff — 4272×6272, 153MB)
|
||||
|
||||
| Flags | Time |
|
||||
|-------|------|
|
||||
| *(baseline)* | 0.41s |
|
||||
| `-cs` | 0.36s |
|
||||
| `-sat 50` | 0.35s |
|
||||
| `-exp 1.2` | 0.35s |
|
||||
| `-cs -sat 50 -exp 1.2` | 0.36s |
|
||||
|
||||
*Benchmarks run on AMD Ryzen 9 7950X3D (32 threads, 64GB RAM)*
|
||||
|
||||
## Features
|
||||
|
||||
|
||||
4
main.cpp
4
main.cpp
@@ -407,10 +407,10 @@ int main(int argc, char** argv) {
|
||||
std::string out = settings.outputPath.empty() ? "output.tif" : settings.outputPath;
|
||||
std::cout << "Saving to " << out << "..." << std::endl;
|
||||
|
||||
// Set compression params for TIFF
|
||||
// Set compression params for TIFF - use no compression for speed
|
||||
std::vector<int> params;
|
||||
params.push_back(cv::IMWRITE_TIFF_COMPRESSION);
|
||||
params.push_back(5); // LZW (equivalent to Zip roughly in OpenCV terms, usually 5 or 1)
|
||||
params.push_back(1); // No compression (30x faster than LZW)
|
||||
|
||||
cv::imwrite(out, img, params);
|
||||
std::cout << "Done." << std::endl;
|
||||
|
||||
BIN
test_data/current_output.tiff
LFS
BIN
test_data/current_output.tiff
LFS
Binary file not shown.
Reference in New Issue
Block a user