matlab-对比两张图片的Ycbcr分量的差值并形成直方图

%对比两张图片的Ycbcr分量的差值并形成直方图,改个路径就能用,图片分辨率要一致

close all;

clear all;

clc;

I1=imread('E:\test\resources\image\1.jpg');

I2=imread('E:\test\resources\image\2.jpg');

ycbcr1 = rgb2ycbcr(I1);

ycbcr2 = rgb2ycbcr(I2);

% 提取色度分量,Y(亮度),Cb 和 Cr(色差):色度或色差分量。Cb 表示蓝色和亮度之间的差异,而 Cr 表示红色和亮度之间的差异。

Y1 = ycbcr1(:, :, 1);

cb1 = ycbcr1(:, :, 2);

cr1 = ycbcr1(:, :, 3);

Y2 = ycbcr2(:, :, 1);

cb2 = ycbcr2(:, :, 2);

cr2 = ycbcr1(:, :, 3);

%显示彩色图像

figure;

subplot(141);%拿subplot(221)来说,就是一个2*2的矩阵画布,1代表图片处于第一个位置:

imshow(I1);

%R分量灰度图

subplot(142);imshow(Y1);

%G分量灰度图

subplot(143);imshow(cb1);

%B分量灰度图

subplot(144);imshow(cr1);

figure;

subplot(141);%拿subplot(221)来说,就是一个2*2的矩阵画布,1代表图片处于第一个位置:

imshow(I2);

%R分量灰度图

subplot(142);imshow(Y2);

%G分量灰度图

subplot(143);imshow(cb2);

%B分量灰度图

subplot(144);imshow(cr2);

Y_fault=abs(Y1-Y2);

cb_fault=abs(cb1-cb2);

cr_fault=abs(cr1-cr2);

figure;

%显示红色分辨率下的直方图

subplot(131);

imhist(Y1);

%显示红色分辨率下的直方图

subplot(132);

imhist(cb1);

%显示红色分辨率下的直方图

subplot(133);

imhist(cr1);

figure;

%显示红色分辨率下的直方图

subplot(131);

imhist(Y2);

%显示红色分辨率下的直方图

subplot(132);

imhist(cb2);

%显示红色分辨率下的直方图

subplot(133);

imhist(cr2);

figure;

%显示红色分辨率下的直方图

subplot(131);

imhist(Y_fault);

%显示红色分辨率下的直方图

subplot(132);

imhist(cb_fault);

%显示红色分辨率下的直方图

subplot(133);

imhist(cr_fault);

相关推荐
鹿屿二向箔14 小时前
阀门流量控制系统MATLAB仿真PID
开发语言·matlab
没有黑科技14 小时前
0.雷达信号
matlab
QQ__17646198241 天前
Matlab安装tdms插件
开发语言·matlab·tdms插件
天`南1 天前
【三维异构Dvhop定位】基于灰狼优化算法的三维异构Dvhop定位算法【Matlab代码#93】
matlab·dvhop·异构无线传感器网络
小白狮ww1 天前
Retinex 算法 + MATLAB 软件,高效率完成图像去雾处理
开发语言·人工智能·算法·matlab·自然语言处理·图像识别·去雾处理
机器学习之心1 天前
区间预测 | QRTCN时间卷积神经网络分位数回归时间序列区间预测模型(Matlab完整源码和数据)
matlab·回归·cnn·分位数回归·时间卷积神经网络·qrtcn·区间预测模型
Matlab光学2 天前
MATLAB仿真:Ince-Gaussian光束和Ince-Gaussian矢量光束
开发语言·算法·matlab
东雁西飞2 天前
MATLAB 控制系统设计与仿真 - 33
开发语言·算法·matlab·机器人·自动控制
落雨封海2 天前
Matlab基础知识与常见操作【无痛入门】
matlab
唯_ww2 天前
CST学习笔记(三)MATLAB与CST联合仿真-远场数据批量导出
matlab·电磁学