gpt4 book ai didi

opencv - 如何减少图像中的黄色成分?

转载 作者:行者123 更新时间:2023-12-02 17:50:57 26 4
gpt4 key购买 nike

我试图通过使用对数映射在OpenCV中实现色调映射,但是得到的结果是淡黄色的图像。所以我想减少图像中的黄色成分并增加其他颜色。任何建议或意见将不胜感激。谢谢。
色调映射的图像:

最佳答案

您可以尝试将图像转换为HSV色彩空间和偏移颜色(只需移动Hue组件)。

或将R和B成分相对于G减少相同比例。

这是我的实现:

#include <iostream>
#include <vector>
#include <string>
#include <fstream>
#include <opencv2/opencv.hpp>

using namespace cv;
using namespace std;

int main(int argc, char **argv)
{
cv::namedWindow("result");
Mat img=imread("yellowish.jpg");
img.convertTo(img,CV_32FC3,1.0/255.0);

Scalar m;
m=cv::mean(img);
img-=m;
img+=Scalar(0.3,0.31,0.3); // Changing this you can adjust color balance.

normalize(img,img,0,1,cv::NORM_MINMAX);
imshow("result",img);
cv::waitKey(0);
cv::destroyAllWindows();
}

结果如下图所示:

关于opencv - 如何减少图像中的黄色成分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21787828/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com