欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

利用matlab对航拍照片进行大小不等的平面切分

程序员文章站 2022-04-03 22:35:23
...

为模拟航拍资料,选取谷歌地图进行不等间距的切割,代码如下:

clc;clear;
fileToRead1 = ('C:\Users\Jo\Desktop\新建文件夹\1.jpg');
rawData1 = importdata(fileToRead1);
[~,name] = fileparts(fileToRead1);
newData1.(genvarname(name)) = rawData1;
vars = fieldnames(newData1);
for i = 1:length(vars)
    assignin('base', vars{i}, newData1.(vars{i}));
end

[i,j,k] = size(x1);
n = round(i/6);
m = round(j/6);
for i = 1:5
    for j = 1:5
        ri = round(rand()*20);
        rj = round(rand()*20);
    imwrite(x1(n*(i-1)+1+ri:n*(i-1)+n-ri,m*(j-1)+1+rj:m*(j-1)+m-rj,1:3),['result',num2str(i),'-',num2str(j),'.jpg'])
    end
end

下图为已经做好的航拍成片:

利用matlab对航拍照片进行大小不等的平面切分

使用以上代码后,可随机生成大小不等的小航拍图,实际就是对成果资料的切割,且每张小图都有随机重复部分:

利用matlab对航拍照片进行大小不等的平面切分

上述切割参数都可以进行改动,已达到预期效果。