clc
clear
close all
load(‘存储的图像文件(mat)’);
%本代码中采用RGB图像存储,并且把每张图片的每一个维度都转成一个行向量存到三个向量里;
%%共r1人,每人r2张图,每人随机选择r3张
r1=num;
r2=x1;
r3=x2;
n=x3;%要加入的干扰图片的数量
%%原图片的高度与宽度;
x_h=height;
y_w=width;
xx_h=height_;%要加入的图片的高度
yy_w=width_;%要加入的图片的宽度
sel = [];%选择结果(r1r2张选r1r3张)
for i=1:r1
R = randperm(r2);%%把1到r2这些数随机打乱得到的一个数字序列。
ind = (r2*(i-1)+1):(r2i);
ind = ind(R(1:r3));%%%%%从每间隔r2的数据中随机选择r3个数据。
sel= [sel ind];
end
Xr=Xr_xin;%原图片的RGB图像表示中的R通道
Xg=Xg_xin;
Xb=Xb_xin;
%%上述for循环实则实现了一个分层抽样
sel;%%上述循环生成了一个r1r3个元素的行向量,并且是随机的。
%%原图片的高度于宽度;
x_h=height;
y_w=width;
img = zeros(x_h,y_w,3); % 每张彩色图像大小为x_hx_w3
img_noise = zeros(x_h,y_w,3); % 加入干