• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-08
  • 语言: Matlab
  • 标签: 色温计算  

资源简介

计算色温

资源截图

代码片段和文件信息

function [] = calTemp(cm1 cm2 cc1 cc2an xyz1 xyz2)
    xyz2srgb = [3.2406 -1.15372 -0.4986; -0.9689 1.8758 0.0415; 0.0557 -0.2040 1.057];
    srgb2xyz = [0.4124 0.3576 0.1805; 0.2126 0.7152 0.0722; 0.0193 0.1192 0.9595];
    % ufraw part %
    xyz = [1 1 1];
    one = [1 1 1]‘;
    cm = cm2
    
    cam2xyz = cc2 * cm * diag(xyz)
    cam2srgb = cam2xyz * xyz2srgb;
    num = sum(cam2srgb2)
    num = [num num num]
    cam2srgb = cam2srgb ./num
    pre_mul =  one ./num(1:end1);
    pre_mul = pre_mul‘
    cam_mul = an.^-1
    srgb2cam = inv(cam2srgb)
    % dcraw_set_color_scale %
    post_mul = pre_mul;
    % scale_colors_INDI %
    post_mul = cam_mul
    %post_mul = [post_mul post_mul(2)]
    dmax = max(post_mul)
    post_mul = post_mul / dmax
    % ufraw_set_wb %
    chanMul = post_mul
    rgbWB = srgb2cam * pre_mul‘./ chanMul‘ 
    %for test
    srgb2cam = cc2 * cm * srgb2xyz
    rgbWB = inv(srgb2cam) * (an‘)
    %rgbWB = inv(cc2 * cm2 * srgb2xyz .* (an.^-1)‘)
    %for test end
    % RGB_to_Temperature %
    tmin = 2000;
    tmax = 23000;

    while (tmax - tmin > 0.1)
        T = (tmax + tmin) / 2
        % Fit for CIE Daylight illuminant
        if 

评论

共有 条评论

相关资源