概述
程序思路:
使用imread()函数读入彩图,获得M×N×3的矩阵(M,N为图像横纵向分辨率);
将该矩阵按照位平面进行拆分为RGB三个通道分量(灰度图);
使用cat()函数将三个矩阵合并;
调整分色数据输出;
程序:
%印刷分色
%wangwenshuai 2021/4/1
clc;
%读取图片
img = imread('test10.png');
%将三个位平面拆分
[m,n] = size(img);
R = img(:,:,1);
G = img(:,:,2);
B = img(:,:,3);
%分色后输出
subplot(2,3,1);
imshow(R);
title('红色通道灰度图');
subplot(2,3,2);
imshow(G);
title('绿色通道灰度图');
subplot(2,3,3);
imshow(B);
title('蓝色通道灰度图');
%使用cat函数合成矩阵模拟拼色效果
RG = cat(3,G,R,B);
subplot(2,3,4);
imshow(RG);
GR = cat(3,R,B,G);
subplot(2,3,5);
imshow(GR);
IMG = cat(3,R,G,B);
subplot(2,3,6);
imshow(IMG);
运行结果:
注意:
彩图经过分色后,并不是三张RGB的彩图,而是三张灰度图,且其阶调各不相同。回归到印刷当中,若采用四色印刷,分色后将得到四张灰度图,不同版对应灰度图中的颜色浅淡可以理解成印刷时墨量的多少。
若采用多色印刷,则需建立多个特征通道,并明确其对应关系。(具体操作见ps软件)
举例:
当原对应于Y版的灰度图被错误地当作BK版对应灰度图处理,将会导致颜色的偏差,阶调的损失(见上图)。
最后
以上就是温柔蓝天为你收集整理的使用matlab程序理解印刷彩色图像分色的全部内容,希望文章能够帮你解决使用matlab程序理解印刷彩色图像分色所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复