• 大小: 3KB
    文件类型: .m
    金币: 2
    下载: 1 次
    发布日期: 2021-06-02
  • 语言: Matlab
  • 标签: Matlab  

资源简介

使用Matlab给灰度图像上色的 Gray2RGB 函数,需要额外提供一张配色接近的图片。
该原始算法源于Jeny Rajan , Chandrashekar,但其运行速度过慢,我做了一些Matlab特有的小优化,大大提高了运行速度。

资源截图

代码片段和文件信息

function R=gray2rgb(img1img2)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% This Program converts a gray image ro RGB image based on the colors of the destination image. The better the destination image match with the source gray image the better the coloring will be. The program takes some time  as the searching time is high. You can decrease the searching time by taking only samples from the used color image but quality may decrease. U can use jittered sampling for improving running speed. % 
%  You can use also use the attahed test images Use the following combinations for better result nature1.jpg(as img1) and nature2.jpg(as img2) or test1.jpg(as img1) and test2.jpg (as img2) %
% Usage: gray2rgb(‘nature1.jpg‘‘nature2.jpg‘);  %

%  Authors : Jeny Rajan  Chandrashekar P.S %
%  鄙人做了一点微小的优化。                P.S %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% img1 - Source Image  (gray image)   
% img2 - Selected color image for coloring the gray image. 

%% 导入
 tic;clc;
 warning off;
 imG=imread(img1);
 imR=imread(img2);
 [txtytz]=size(imG);
 [sxsysz]=size(imR);
 
 if tz~=1
     imG=rgb2gray(imG);
 end
 imG(::2)=imG(::1);

评论

共有 条评论