#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main(int argc, char** argv) {
// 定义图像路径
String img_path1 = "image1.jpg";
String img_path2 = "image2.jpg";
// 读取图像
Mat img1 = imread(img_path1);
Mat img2 = imread(img_path2);
// 图像分离
vector<Mat> bgr1, bgr2;
split(img1, bgr1);
split(img2, bgr2);
// 计算每个通道的平均值
double mean_b1 = mean(bgr1[0])[0];
double mean_g1 = mean(bgr1[1])[0];
double mean_r1 = mean(bgr1[2])[0];
double mean_b2 = mean(bgr2[0])[0];
double mean_g2 = mean(bgr2[1])[0];
double mean_r2 = mean(bgr2[2])[0];
// 计算增益系数
double kb = (mean_g1 + mean_g2) / (mean_b1 + mean_b2);
double kr = (mean_g1 + mean_g2) / (mean_r1 + mean_r2);