Page 173 - Computational Colour Science Using MATLAB
P. 173
160 CHARACTERIZATION OF PRINTERS
% testxyz is a 144 by 3 matrix of XYZ values
white = [95.047 100.000 108.883];
trainrgb = 1 - trainrgb/255;
testrgb = 1 - testrgb/255;
traintarget = zeros(729,3);
for i = 1:729
traintarget(i,:) = log(trainxyz(i,:)./white);
end
% the construction of the augmented matrix is shown in
% full below for clarity
trainmat = zeros(729,20);
for i = 1:729
trainmat(i,1) trainrgb(i,1);
trainmat(i,2) = trainrgb(i,2);
trainmat(i,3) = trainrgb(i,3);
trainmat(i,4) = trainrgb(i,1)*trainrgb(i,2);
trainmat(i,5) = trainrgb(i,1)*trainrgb(i,3);
trainmat(i,6) = trainrgb(i,2)*trainrgb(i,3);
trainmat(i,7) = trainrgb(i,1)*trainrgb(i,1);
trainmat(i,8) = trainrgb(i,2)*trainrgb(i,2);
trainmat(i,9) = trainrgb(i,3)*trainrgb(i,3);
trainmat(i,10) = trainrgb(i,1)*trainrgb(i,1*...
trainrgb(i,2);
trainmat(i,11) trainrgb(i,1)*trainrgb(i,1)*...
trainrgb(i,3);
trainmat(i,12) = trainrgb(i,2)*trainrgb(i,2)*...
trainrgb(i,1);
trainmat(i,13) = trainrgb(i,2)*trainrgb(i,2)*...
trainrgb(i,3);
trainmat(i,14) = trainrgb(i,3)*trainrgb(i,3)*...
trainrgb(i,1);
trainmat(i,15) = trainrgb(i,3)*trainrgb(i,3)*...
trainrgb(i,2);
trainmat(i,16) = trainrgb(i,1)*trainrgb(i,1)*...
trainrgb(i,1);
trainmat(i,17) trainrgb(i,2)*trainrgb(i,2)*...
trainrgb(i,2);
trainmat(i,18) = trainrgb(i,3)*trainrgb(i,3)*...
trainrgb(i,3);