Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
isp:automatic_exposure [2018/06/05 06:05] – [Increase the brightness] Vanda Khachatrian | isp:automatic_exposure [2022/04/04 23:32] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 70: | Line 70: | ||
Once we have the above two factors figured out the decision tree looks as follows: | Once we have the above two factors figured out the decision tree looks as follows: | ||
<code cpp> | <code cpp> | ||
- | enum class ExpCorrAction{STAY, INC, DEC}; | + | enum class ExpCorrAction{stay, inc, dec}; |
ExpCorrAction _needExpCorrection(int _right, double _adjY){ | ExpCorrAction _needExpCorrection(int _right, double _adjY){ | ||
- | if(_right > 60 && _adjY < 0.97){ | + | if(_right > 60 && _adjY < 1){ |
- | return ExpCorrAction:: | + | return ExpCorrAction:: |
} | } | ||
if(_right >= 250 && _adjY <= 1){ | if(_right >= 250 && _adjY <= 1){ | ||
- | return ExpCorrAction:: | + | return ExpCorrAction:: |
} | } | ||
- | if(_right < 240 && _adjY > 1.2){ | + | if(_right < 240 && _adjY > 1){ |
- | return ExpCorrAction:: | + | return ExpCorrAction:: |
} | } | ||
- | return ExpCorrAction:: | + | return ExpCorrAction:: |
} | } | ||
</ | </ | ||
Line 106: | Line 106: | ||
In order to automate this process one could think of Black Level as the counterpart to the overexposure. The goal is to have the Black Level set at such value as to ensure that there are no more than specified overexposure pixel count that are pitch black. | In order to automate this process one could think of Black Level as the counterpart to the overexposure. The goal is to have the Black Level set at such value as to ensure that there are no more than specified overexposure pixel count that are pitch black. | ||
- | ====== Further improvements ====== | + | ===== Sample implementation in C++ ===== |
+ | [[Sample AE implementation in C++]] shows one possible implementation of the approach described above. It does use (without much explanation) some of the external structures, but those should not be hard to comprehend from their usage |