DRenhance.h 1016 B

12345678910111213141516171819202122232425262728293031
  1. #include <iostream>
  2. #include <opencv2/opencv.hpp>
  3. namespace DRenhance
  4. {
  5. struct DREnhanceParam
  6. {
  7. int detailLevel;
  8. float contrast;
  9. float detail;
  10. float latitude;
  11. float noise;
  12. bool IsNorm = false;
  13. DREnhanceParam(int nDetailLevel, float fContrast, float fDetail, float fLatitude, float noisef)
  14. : detailLevel(nDetailLevel), contrast(fContrast), detail(fDetail), latitude(fLatitude), noise(noisef)
  15. {
  16. }
  17. };
  18. void printEnhanceParams(const DREnhanceParam &param);
  19. int PyramidDecomposition(unsigned short *srcimg, int Width, int Height, std::vector<cv::Mat> &output, int &nEndlevel);
  20. DREnhanceParam autoEstimateParams(cv::Mat input, cv::Mat mask);
  21. int updateParams(DREnhanceParam &Param, float contrast, float detail, float latitude, float pnoise);
  22. int image_enhance(std::vector<cv::Mat> &ppDetailDataBuffer, DREnhanceParam Param, int nEndlevel, unsigned short *output, int Width, int Height, int flag);
  23. }