PS 圖像調整算法——黑白

发布时间:2018-07-29 14:30:58 编辑:Admin 手机版
 黑白調整
Photoshop CS的圖像黑白調整功能,是通過對紅、黃、綠、青、藍和洋紅等6種顏色的比例調節來完成的。能更精細地將彩色圖片轉換為高質量的黑白照片。

    Photoshop CS圖像黑白調整功能的計算公式為:

    gray= (max - mid) * ratio_max + (mid - min) * ratio_max_mid + min

    公式中:gray為像素灰度值,max、mid和min分別為圖像像素R、G、B分量顏色的最大值、中間值和最小值,ratio_max為max所代表的分量顏色(單色)比率,ratio_max_mid則為max與mid兩種分量顏色所形成的復色比率。

默認的單色及復色比率為:

Color_Ratio(1)=0.4;     %%%% Red

Color_Ratio(2)=0.6;     %%%% Yellow

Color_Ratio(3)=0.4;     %%%% Green

Color_Ratio(4)=0.6;     %%%% Cyan

Color_Ratio(5)=0.2;     %%%% Blue

Color_Ratio(6)=0.8;     %%%% Magenta


Program:

%%%%%  程序实现图像的黑白调整功能

clc;
clear all;
close all;
Image=imread('9.jpg');
Image=double(Image);
R=Image(:,:,1);
G=Image(:,:,2);
B=Image(:,:,3);
[row, col] = size(R);
Gray_img(1:row,1:col)=0;
Sum_rgb=R+G+B;
%%%% 各种颜色的默认比率
Color_Ratio(1:6)=0;
Color_Ratio(1)=0.4;     %%%% Red
Color_Ratio(2)=0.6;     %%%% Yellow
Color_Ratio(3)=0.4;     %%%% Green
Color_Ratio(4)=0.6;     %%%% Cyan
Color_Ratio(5)=0.2;     %%%% Blue
Color_Ratio(6)=0.8;     %%%% Magenta
for i=1:row
    for j=1:col
        r=R(i,j);
        g=G(i,j);
        b=B(i,j);
        Max_value=max(r,max(g,b));
        Min_value=min(r,min(g,b));
        Mid_value=Sum_rgb(i,j)-Max_value-Min_value;
        if(Min_value==r)
            Index=0;
        elseif(Min_value==g)
            Index=2;
        else
            Index=4;
        end
        ratio_max_mid=Color_Ratio(mod(Index+3,6)+1);
        if(Max_value==r)
            Index=1;
        elseif(Max_value==g)
            Index=3;
        else
            Index=5;
        end
        ratio_max=Color_Ratio(Index);
        Temp=(Max_value-Mid_value)*ratio_max+(Mid_value-Min_value)...
                      *ratio_max_mid+Min_value;
        Gray_img(i,j)=(Max_value-Mid_value)*ratio_max+(Mid_value-Min_value)...
                      *ratio_max_mid+Min_value;
    end
end

imshow(Image/255);
figure, imshow(Gray_img/255);



原图:


黑白 

本文已影响0
+1
0