You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+16-4Lines changed: 16 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Fast Open Image Signal Processor (fast-openISP)
2
2
3
-
As told by its name, fast-openISP is a **faster** re-implementation of the [openISP](https://github.com/cruxopen/openISP) project.
3
+
As told by its name, fast-openISP is a **faster**(and bugs-fixed) re-implementation of the [openISP](https://github.com/cruxopen/openISP) project.
4
4
5
5
Compared to C-style code in the official openISP repo, fast-openISP uses pure matrix implementations based on Numpy, and increases processing speed **over 300 times**.
6
6
@@ -26,13 +26,25 @@ Here is the running time in my Ryzen 7 1700 8-core 3.00GHz machine with the 1920
26
26
|End-to-end pipeline|2894.41s|8.48s |
27
27
28
28
29
+
# Usage
30
+
31
+
Clone this repo and run
32
+
33
+
```
34
+
python demo.py
35
+
```
36
+
37
+
The ISP outputs will be saved to `./raw` directory.
38
+
39
+
The only required package for pipeline execution is `Numpy`. `opencv-python` and `scikit-image` are required for data IO.
40
+
29
41
# Algorithms
30
42
31
-
All modules in fast-openISP reproduce processing algorithms in openISP, except for EEH and BCC modules.
43
+
All modules in fast-openISP reproduce [processing algorithms](https://github.com/cruxopen/openISP/blob/master/docs/Image%20Signal%20Processor.pdf) in openISP, except for EEH and BCC modules.
32
44
33
45
### EEH (edge enhancement)
34
46
35
-
The official openISP uses the difference between the original and the gaussian-filtered Y-channel arrays as the edge map approximation. In fast-openISP, however, we replace gaussian with the bilateral filter, which gets better estimation to the edges, and consequently reduces the artifact when the enhancement gain is large.
47
+
The official openISP uses the subtraction between the original and the gaussian-filtered Y-channel arrays as the edge map approximation. In fast-openISP, however, we replace gaussian with the bilateral filter, which gets better estimation to the edges, and consequently reduces the artifact when the enhancement gain is large. Besides, the processing to pixels in the non-edge region has been slightly improved.
36
48
37
49
### BCC (brightness & contrast control)
38
50
@@ -41,7 +53,7 @@ The official openISP enhances the image contrast by pixel-wise enlarge the diffe
41
53
42
54
# Parameters
43
55
44
-
Tunable module parameters in fast-openISP are differently named from those in openISP, but they are all self-explained, and no doubt you can easily tell the counterparts in two repos. All parameters are managed in a yaml configuration file, and one yaml for one camera.
56
+
Tunable module parameters in fast-openISP are differently named from those in openISP, but they are all self-explained, and no doubt you can easily tell the counterparts in two repos. All parameters are managed in a yaml configuration file, and one yaml for one camera.
0 commit comments