diff --git a/CMakeLists.txt b/CMakeLists.txt index 47ea62c..21ecf44 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -43,9 +43,8 @@ endif() # library include_directories( include ) -# Build runtime load dynamic shared library -# https://cmake.org/cmake/help/latest/command/add_library.html -add_library(${PROJECT_NAME} SHARED +# all source files +set( src_files src/align.cpp src/bayer_image.cpp src/burst.cpp @@ -53,6 +52,10 @@ add_library(${PROJECT_NAME} SHARED src/hdrplus_pipeline.cpp src/merge.cpp ) +# Build runtime load dynamic shared library +# https://cmake.org/cmake/help/latest/command/add_library.html +add_library(${PROJECT_NAME} SHARED ${src_files} ) + # and link it # https://cmake.org/cmake/help/v3.0/command/target_link_libraries.html # use public interace because our .h / .hpp file include opencv .h / .hpp file @@ -71,17 +74,14 @@ target_link_libraries( demo # unit test set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/tests ) -add_executable( test_bayer_image - tests/test_bayer_image.cpp ) +add_executable( test_bayer_image tests/test_bayer_image.cpp) target_link_libraries( test_bayer_image ${PROJECT_NAME} ) -add_executable( test_utility - tests/test_utility.cpp ) +add_executable( test_utility tests/test_utility.cpp ) target_link_libraries( test_utility ${PROJECT_NAME} ) -add_executable( test_burst - tests/test_burst.cpp ) +add_executable( test_burst tests/test_burst.cpp ) target_link_libraries( test_burst ${PROJECT_NAME} ) diff --git a/INSTALL.md b/INSTALL.md index 9017e67..a792163 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -35,6 +35,7 @@ ```shell mkdir build cd build + # Default release build will be used cmake .. make -j 10 ``` diff --git a/README.md b/README.md index e06bf7b..9e0efec 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,16 @@ # HDR+ > HDR+ Paper reimplementation +> > UC Berkeley Spring 2022 CS184/284A Final Project + + + +## File Content Overview + +```shell +tests/ # unit test file +src/ # implementation +include/ # header file +bin/demo.cpp # demo to run HDR+ pipeline +``` + diff --git a/src/bayer_image.cpp b/src/bayer_image.cpp index c57b02e..998fa08 100644 --- a/src/bayer_image.cpp +++ b/src/bayer_image.cpp @@ -32,10 +32,11 @@ bayer_image::bayer_image( const std::string& bayer_image_path ) width = int( libraw_processor->imgdata.rawdata.sizes.raw_width ); height = int( libraw_processor->imgdata.rawdata.sizes.raw_height ); white_level = int( libraw_processor->imgdata.rawdata.color.maximum ); - black_level_per_channel[ 0 ] = int( libraw_processor->imgdata.rawdata.color.cblack[ 0 ] + libraw_processor->imgdata.rawdata.color.black ); - black_level_per_channel[ 1 ] = int( libraw_processor->imgdata.rawdata.color.cblack[ 1 ] + libraw_processor->imgdata.rawdata.color.black ); - black_level_per_channel[ 2 ] = int( libraw_processor->imgdata.rawdata.color.cblack[ 2 ] + libraw_processor->imgdata.rawdata.color.black ); - black_level_per_channel[ 3 ] = int( libraw_processor->imgdata.rawdata.color.cblack[ 3 ] + libraw_processor->imgdata.rawdata.color.black ); + black_level_per_channel.resize( 4 ); + black_level_per_channel.at( 0 ) = int( libraw_processor->imgdata.rawdata.color.cblack[ 0 ] + libraw_processor->imgdata.rawdata.color.black ); + black_level_per_channel.at( 1 ) = int( libraw_processor->imgdata.rawdata.color.cblack[ 1 ] + libraw_processor->imgdata.rawdata.color.black ); + black_level_per_channel.at( 2 ) = int( libraw_processor->imgdata.rawdata.color.cblack[ 2 ] + libraw_processor->imgdata.rawdata.color.black ); + black_level_per_channel.at( 3 ) = int( libraw_processor->imgdata.rawdata.color.cblack[ 3 ] + libraw_processor->imgdata.rawdata.color.black ); iso = float( libraw_processor->imgdata.other.iso_speed ); // Create CV mat diff --git a/tests/README.md b/tests/README.md new file mode 100644 index 0000000..32c875d --- /dev/null +++ b/tests/README.md @@ -0,0 +1,7 @@ +# Test + +```shell +# ray image +./test_bayer_image ../dataset/33TJ_20150606_224837_294/payload_N000.dng + +``` \ No newline at end of file