精华内容
下载资源
问答
  • Camera Color Correction Toolbox 通过最小化非线性损失函数,可以轻松计算相机响应和目标之间的最佳色彩校正矩阵。 该工具箱可以与图像信号处理管道中的其他模块无缝协作,如空间非均匀性校正、白平衡等。 支持...
  • OpenCV色彩校正模型MCC

    2021-04-24 10:33:27
    OpenCV色彩校正模型CCM色彩校正模型CCM建造Building示例的源代码代码解释 色彩校正模型CCM 在本教程中,您将学习如何使用“色彩校正模型”对图像进行色彩校正。 建造Building 在构建OpenCV时,运行以下命令以构建...

    色彩校正模型MCC

    在本教程中,您将学习如何使用“色彩校正模型”对图像进行色彩校正。

    建造Building

    在构建OpenCV时,运行以下命令以构建所有contrib模块:

    cmake -D OPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules/
    

    或仅构建mcc模块:

    cmake -D OPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules/mcc
    

    或确保您在CMake的GUI版本中检查mcc模块:cmake-g

    展开全文
  • 显示器色彩校正

    2011-11-14 11:50:25
    显示器色彩校正是个简单的调整显示器色彩的工具,三步搞定。 首选,进行对比度和亮度的观察,是否太亮,太暗,还是太淡。其次进入主题,三原色的调整。 分别拉动 红,蓝,绿 三种颜色的控制条,找到最合适的一...
  • 图像色彩校正代码

    热门讨论 2012-11-22 19:27:13
    图像色彩校正的matlab代码 包括几种经典的色彩校正算法
  • Premiere色彩校正与增强高级教程 文件内包含 1.入门 2.技术准本 3.技术细节 4.高级教程
  • 显示器色彩校正软件

    2012-11-20 12:53:32
    显示器色彩校正软件,调节后色彩度明显丰富很多
  • 道尔顿化ASIC 色彩校正ASIC项目
  • 投影仪色彩校正操作流程.doc
  • 在OpenCV中使用色彩校正

    千次阅读 2020-12-11 09:02:50
    本文将介绍CV领域一个重要应用 -- 色彩校正。该模块收录在opencv_contrib/modules/mcc模块中,由 PR #2671 贡献。 色彩校正简介 一般来说,由于拍摄设备、光线环境等客观因素,或者拍摄者喜好等主观因素影响,人们...

    本文将介绍CV领域一个重要应用 -- 色彩校正。该模块收录在 opencv_contrib/modules/mcc 模块中,由 PR #2671 贡献。

    色彩校正简介

    一般来说,由于拍摄设备、光线环境等客观因素,或者拍摄者喜好等主观因素影响,人们拍摄到的图片与真实物体的色彩会有一定的偏差。同一个事物在不同的环境下得到的图片颜色是不同的,这样就对接下来进行的图片处理、比较造成了一定影响。色彩校正技术就是为解决这个问题而提出的。

    色彩校正(color calibration),通俗来说,就是使图片还原事物本身的颜色,也就是尽可能接近拍摄时人眼看所看到的事物。如今,色彩校正已经不仅在摄影中使用,而是在影视制作、游戏、医疗、建筑等各行各业中广泛使用。

    图片

    需要注意的是,色彩校正与调色是不同的概念。前者是在图片中使事物的色彩重现,必须遵循一定的标准,不具有随意性,需要一些技术手段实现;后者则是人们对图片色彩的主观喜好而为,不需要遵循任何标准,具有随意性,是艺术性的实现。

    从技术上来说,色彩校正[1]的目的是调整输入输出设备的颜色响应到已知状态。被校准的设备有时被称为校准源 ; 用作标准的色彩空间有时也称为校准目标。由于输入输出设备的制造工艺等,其通道响应存在非线性失真,为了校正该设备输出的图片,必须将其捕捉到的色彩与实际色彩进行校正。

    色彩校正通常分成2个步骤:

    • 一是先将输入色彩空间线性化为与亮度成正比。这个过程是不适定问题[2],因此有许多不同的解决方案;

    • 二是做线性变换,把色彩空间变成绝对RGB色彩空间。所用的线性变换的矩阵称为色彩变换矩阵(color correction matrix,CCM),也称为CCM矩阵。CCM矩阵需要通过非线性优化来求解。

    通常使用的校准色彩叫做色卡(colorchecker),最著名的是麦克白色卡(Macbeth ColorChecker)。色卡提供色彩校正中的参考色,所有的颜色都已经被标定。最流行的标准色卡是 Macbeth色卡,如下图所示。它包括4*6个色块,其中,最后一行的色块是灰色色块,可以用于灰度线性化或是白平衡。

    图片

    Macbeth色卡

    色彩校正的详细理论可查阅以下链接:

    https://github.com/riskiest/color_calibration/tree/v4/doc/pdf/English/Algorithm 

    在OpenCV中使用色彩校正

    在对 OpenCV 进行 building 时,运行以下命令来 build 所有 opencv_contrib 模块

    cmake -D OPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules/
    

    或者仅 build 色彩校正所在的 mcc 模块

    cmake -D OPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules/mcc
    

    若使用 cmake-gui(CMake的GUI版本)进行构建,需要检查确认包含 mcc 模块。

    opencv_contrib/modules/mcc 模块主要包含两个部分,

    • 其一是 color checker detector 模型,具体说明可参考

      https://github.com/opencv/opencv_contrib/blob/master/modules/mcc/tutorials/basic_chart_detection/basic_chart_detection.markdown;

    • 其二为本文主要介绍的色彩校正模块。

    色彩校正模块的核心类 -- ColorCorrectionModel:

    声明:

    opencv_contrib/modules/mcc/include/opencv2/mcc/ccm.hpp 

    定义:

    opencv_contrib/modules/mcc/src/ccm.cpp

    ColorCorrectionModel 的参数说明如下:

        src :
                检测到 ColorChecker 色块的颜色(颜色类型是RGB而不是BGR,颜色值在[0, 1]范围内);
        constcolor :
                内置色卡,包括Macbeth、Vinyl、DigitalSG
        Mat colors :
               参考颜色值(颜色值在[0, 1]范围内);
        ref_cs :
               对应颜色值的色彩空间。如果颜色类型是RGB类型,则颜色格式是RGB而不是BGR;
        支持的色彩空间有:RGB色彩空间(如COLOR_SPACE_sRGB)、线性RGB色彩空间(如COLOR_SPACE_sRGBL)、非RGB色彩空间(如COLOR_SPACE_Lab_D50_2)等。
    

    在本文中,以 samples/color_correction_model.cpp 的示例作为参考,提取关键步骤代码形成如下程序:

    #include <opencv2/imgcodecs.hpp>
    #include <opencv2/mcc.hpp>
    #include <iostream>
    using namespace std;
    using namespace cv;
    using namespace mcc;
    using namespace ccm;
    int main(int argc, char *argv[])
    {
       // [get_messages_of_image]:获取图像消息
       string filepath = "input.png"; // 输入图片路径
       Mat image = imread(filepath, IMREAD_COLOR);
       Mat imageCopy = image.clone();
       Ptr<CCheckerDetector> detector = CCheckerDetector::create();
       // [get_color_checker]:准备ColorChecker检测
       vector<Ptr<mcc::CChecker>> checkers = detector->getListColorChecker();
       for (Ptr<mcc::CChecker> checker : checkers)
       {
           // [create]:创建CCheckerDetector对象,并使用getListColorChecker函数获取ColorChecker信息。
           Ptr<CCheckerDraw> cdraw = CCheckerDraw::create(checker);
           cdraw->draw(image);
           Mat chartsRGB = checker->getChartsRGB();
           Mat src = chartsRGB.col(1).clone().reshape(3, chartsRGB.rows/3);
           src /= 255.0;
           // [get_ccm_Matrix]:对于每个ColorChecker,都可以计算一个ccm矩阵以进行颜色校正。Model1是ColorCorrectionModel类的对象,可以根据需要来修改参数以获得最佳色彩校正效果。
           ColorCorrectionModel model1(src, COLORCHECKER_Vinyl);
           model1.run();
           Mat ccm = model1.getCCM();
           std::cout<<"ccm "<<ccm<<std::endl;
           double loss = model1.getLoss();
           std::cout<<"loss "<<loss<<std::endl;
    
           // [make_color_correction]:成员函数infer_image用于使用ccm矩阵进行校正校正。
           Mat img_;
           cvtColor(image, img_, COLOR_BGR2RGB);
           img_.convertTo(img_, CV_64F);
           const int inp_size = 255;
           const int out_size = 255;
           img_ = img_ / inp_size;
           Mat calibratedImage= model1.infer(img_);
           Mat out_ = calibratedImage * out_size;
           // [Save_calibrated_image]:保存已校准的图像。
           out_.convertTo(out_, CV_8UC3);
           Mat img_out = min(max(out_, 0), out_size);
           Mat out_img;
           cvtColor(img_out, out_img, COLOR_RGB2BGR);
           imwrite("output.png",out_img);
       }
    
       return 0;
    }
    

    运行上述代码所在文件,即可完成对于 input.png 图片的色彩校正,校正后的图片为 output.png。

    下面展示一组通过本文介绍的色彩校正模块校正前后示例图。通过示例可以看出,原图拍摄色彩较暗,色卡颜色未显示其本身颜色,地板颜色偏暗,毛巾颜色偏蓝;校正后的图片则很好地还原了色卡和物体本身的颜色。

    图片

    参考文献

    1. https://en.wikipedia.org/wiki/Color_correction

    2. Bianco, S., Bruna, A.R., Naccari, F., Schettini, R.: Color correction pipeline optimization for digital cameras. J. Electron. Imaging 22(2), 023014:1–023014:10 (2013)

    展开全文
  • 彩色色彩校正

    千次阅读 2013-11-18 13:17:19
    通过插值得到RGB三基色齐全的图像后,但...补偿这种差异,必须对图像进行色彩校正。现描述一下色彩校正的原理。  色彩校正主要是针对彩色图像在成像过程中的不足而对彩色饱和度和彩色色调进行校正。 一、彩色饱和

    通过插值得到RGB三基色齐全的图像后,但传感器响应的这个图像与真实场景之间扔存在差异。这其中存在多方面的原因

    ,涉及图像传感器中光学器件的光谱性、场景的光源光照条件(如白光、荧光或者钨光)以及色彩滤镜的光谱特性。为了

    补偿这种差异,必须对图像进行色彩校正。现描述一下色彩校正的原理。

            色彩校正主要是针对彩色图像在成像过程中的不足而对彩色饱和度和彩色色调进行校正。

    一、彩色饱和度校正

    彩色饱和度校正(color saturation correction)使得彩色图像的RGB彩色饱和度调整同彩色电视机的彩色控制有相似的

    作用。彩色饱和度校正是基于现代彩色电视机的R-Y,G-Y,和B-Y彩色模型。其同R,G和B形式的关系如下:

    R-Y=0.70R-0.59G-0.11B
    G-Y=-0.30R+0.41G-0.11B
    B-Y=-0.30R-0.59G+0.89B

    其中:亮度分量Y的定义如下

    Y=0.31R+0.59G+0.11B

    设饱和度校正系数为Sa(一般指饱和度百分比),则校正后R,G和B各分量为:
    R’=(R-Y)Sa+Y
    G’=(G-Y)Sa+Y
    B’=(B-Y)Sa+Y
    其中:R’,G’和B’分别为校正后的彩色分量。

    二、彩色色调校正

    色调校正同饱和度校正一样是基于现代彩色电视机的R-Y,G-Y,B-Y彩色模型。
    设色调校正系数为α(旋转角度α),则校正后R,G和B分量分别为:

    R’=(B-Y)SINα+(R-Y)COSα+Y
    B’=(B-Y)COSα-(R-Y)SINα+Y
    R’=-0.19(B-Y)-0.51(R-Y)+Y

    其中: R’,G’和B’分别为校正后的彩色分量。

    三、在opencv中实现如下

    //对图像进行色彩饱和度校正和色调校正
    IplImage* jiaozheng(IplImage* image,IplImage* dst)
    {
    float ry,by,gy,y,sa=0.99;
    int theta=10;
    double a=theta*3.1415926/180.0;
    IplImage* img_r=cvCreateImage(cvGetSize(image),8,1);
    IplImage* img_g=cvCreateImage(cvGetSize(image),8,1);
    IplImage* img_b=cvCreateImage(cvGetSize(image),8,1);
    cvSplit(image,img_b,img_g,img_r,0);//把RGB图像分成三幅单通道图像
    for(int i=0;i<image->width;i++)
    {
    for(int j=0;j<image->height;j++)
    {
    ry=0.7*cvGetReal2D(img_r,i,j)-0.59*cvGetReal2D(img_g,i,j)-0.11*cvGetReal2D(img_b,i,j);
    gy=(-0.3)*cvGetReal2D(img_r,i,j)+0.41*cvGetReal2D(img_g,i,j)-0.11*cvGetReal2D(img_b,i,j);
    by=(-0.3)*cvGetReal2D(img_r,i,j)-0.59*cvGetReal2D(img_g,i,j)+0.89*cvGetReal2D(img_b,i,j);
    y=0.31*cvGetReal2D(img_r,i,j)+0.59*cvGetReal2D(img_g,i,j)+0.11*cvGetReal2D(img_b,i,j);
    //饱和度校正
    ry=ry*sa/100;
    gy=gy*sa/100;
    by=by*sa/100;

    ry+=y;

    gy+=y;

    by+=y;

    //色调校正
    ry=by*sin(a)+ry*cos(a)+y;
    by=by*cos(a)-ry*sin(a)+y;
    gy=-0.19*by-0.51*ry+y;

    if(ry<0) ry=0;
    if(ry>255) ry=255;

    cvSetReal2D(img_r,i,j,ry);


    if(gy<0) gy=0;
    if(gy>255) gy=255;
    cvSetReal2D(img_g,i,j,gy);

    if(by<0) by=0;
    if(by>255) by=255;
    cvSetReal2D(img_b,i,j,by);

    }
    }
       cvMerge(img_b,img_g,img_r,0,dst);
       return dst;

    }
    四、结果图

    (1)原图


    (2)在a=10,sa=0.99,校正后图像为



    展开全文
  • 立体匹配的鲁棒区域色彩校正方法
  • 统计学习在色彩校正和色彩恒常中的应用 色彩校正 色彩恒常性
  • Color Pilot是数字相机及扫描仪使用者一项非常棒的图像色彩校正程序。它可以将图片的不正常色系偏差经由简单的操作设定就回复其应有的正常色彩,推荐配合数码相机和扫描仪使用。
  • 行业分类-物理装置-显示器的色彩校正方法.zip
  • 提出了一种基于视网膜皮层理论和颜色视觉理论分层色彩校正算法:引入颜色视觉理论中的三色学说进行全局分类,使用广义高斯混合模型计算全局系数;简化分层色彩校正模型减少计算量;引用retinex理论对三通道分别进行...
  • 提出结合核主成分分析(KPCA)和自适应神经模糊推理系统(ANFIS)的色彩校正(KPCA-ANFIS)算法。首先将数据通过核函数映射到高维空间,再通过KPCA提取主成分,最后通过ANFIS学习达到色彩校正的目的。实验结果验证了...
  • 色彩校正(Color Correction)是指用相同的方法改变图像中的所有像素的颜色值,以得到不同得显示效果。图像采集系统在获得数字图像时,由于一起或环境光照或人为因素的影响,采集的图像往往与原始图像有很大差别。...

    目录

    1、色彩矫正(CCM)

    2、伽马校正(Gamma)


    1、色彩矫正(CCM)

            色彩校正(Color Correction )是指用相同的方法改变图像中的所有像素的颜色值,以得到不同得显示效果。图像采集系统在获得数字图像时,由于一起或环境光照或人为因素的影响,采集的图像往往与原始图像有很大差别。颜色校正可以在一定程度上减少这种差别。
            利用 RGB 颜色模型可以方便地调整图像的 RGB 分量值,这对校正偏色很有用。色彩校正的基本原理如下:

    其中, Mij 表示各颜色的校正矩阵,一般利用标准色卡的对比实验来得到。 

    2、伽马校正(Gamma)

            在处理 RGB 图像时经常遇到的一个问题是色彩的准确度问题,即 RGB 图像往往会因为显示硬件的不同而出现不一致的结果。这样导致的问题是,在某一操作平台制作好的图像,显示到另外一台机器上,效果却差相当多。这是因为并非所以的显示器都是相同的,常常会因为显示器摆放的位置,显示器周围的光照或者亮度的调整值不同,而产生不同的显示效果理论上来说,RGB 各数值与实际屏幕上所显示的色彩应该是一模一样的。但是,实际情形上并非如此。实际影响这种结果的因素,统称 Gamma。每一台显示器的 Gamma 值都不尽相同,因此即 使某一个色彩能够吻合,但是其余的色彩却可能出现差别,由此导致显示效果的差别。
            Gamma 校正是一种非常重要的颜色处理方法。其基本思想是,对 R G ,B 每一个色彩空间进行分段,在每一段中利用线性函数来校正。这一系列的线性函数的产生,是基于对 Gamma 曲线的补偿,即利用一系列线性函数来代替 Gamma 曲线关于函数 y=x 的对称曲线。
            Gamma矫正对图像有显著的影响,不同的Gamma曲线可以取得不同的效果。 Gamma矫正模块主要是对图像进行亮度空间非线性的转化,从而来适配相应的图像显示设备。Gamma矫正会影响到整个图像的对比度。对比度越高,整个图像的通透性越好,让人眼视觉效果更加明显。Gamma矫正也会影响到图像的色彩,对比度越高,整个图像的色彩饱和度也越高。
            另外通过Gamma校正能够提高图像对比度。同时也分为全局gamma和RGBgamma。
    展开全文
  • 基于色彩校正和非局部先验的水下图像恢复
  • 白金色彩校正器 ,白色和金色的东西对很多人来说都是蓝色和黑色的。 此应用程序会自动校正图像中的颜色,使它们对每个人都显示正确的白色和金色。 阅读有关 webhooks更多信息。 您可以通过访问自己尝试该示例。 ...
  • 色彩单应性定理的演示以及色彩校正,色彩特征匹配和色彩索引的实验,已发布在TPAMI 2019中。 从不同的相机位置获取的3维空间中的共面点的图像是单应性。 同构是计算机视觉中几何方法的核心,并用于几何相机校准,3D...
  • 基于稠密卷积神经网络的遥感图像自动色彩校正.pdf
  • photoEQ是一款用来校正图片颜色的软件,色彩校正调整,可手动调整,也可以使用自动白平衡,自动曝光度/对比度,调节色彩校正强度。还能编辑图片,拉伸和裁剪图片,调整自定义大小或适合的像素大小,绘制选区或设置...
  • 为解决多光谱图像打印输出时的色彩校正问题,提出一种采用查找表进行打印光谱色彩校正的方法。首先在超四色打印机色空间规则采样并测量采样点的光谱值,将光谱值变换至一个低维空间,建立正向查找表;然后在低维光谱空间...
  • 比较好用的显示器色彩校正软件,适合各种显示器,包含注册码。
  • color correction色彩校正

    万次阅读 2013-12-23 17:08:50
    Color Correction(Curves,Saturation)色彩校正(曲线,饱和度)特效     该特效使用曲线调整每个一个颜色通道,也可以根据每个像素的深度进行调整     Saturation:饱和度,该项用于设置色彩饱和度级别,...
  • 色彩校正中的 gamma 值是什么

    万次阅读 2018-11-12 10:26:42
    色彩校正中的 gamma 值是什么
  • 电信设备-应用物联网传感器对舌象信息进行色彩校正的装置.zip
  • 色彩校正能够分别对图像暗部区域、灰部区域和亮部区域进行色调和色彩饱和度的修改。它是Vegas中最有力的调色工具。今天我就为大家介绍:Vegas色彩校正怎么用? Vegas色彩校正: 打开vegas,拖入一段素材到视频...
  • 因此,对于实时应用,水下图像需要进行高级色彩校正和除雾,以确保特征提取,可视性增强,边缘对比度改善以及图像特征的保留。 要求是设计合适的水下图像处理技术,以根据感知到的环境来适应不同的噪声水平和不均匀...
  • 行业分类-电子电器-一种图像色彩校正方法、系统、设备及介质.zip

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,224
精华内容 3,289
热门标签
关键字:

色彩校正