【学习笔记】图像分割为1500X1的小图片

本程序用于将图片分割为一列一列小图片并进行保存,用于将图片设置为所需形式。

clc;
clear;
close all;
% 设置所需图片的分辨率
x_pixels = 49500;
y_pixels = 49500;
% 设置每列脉冲数
pulse_num = 1500;
% 设置要保存的位置
path = 'H:\05_matlab_siom\院标重复\Cas_logo49500x49500_反_镜像\';
filename = uigetfile();
pic = imread(filename);
imwrite(pic,'yuanbiao.bmp');
pic = imread('yuanbiao.bmp');
pic = uint8(pic);
% pic = rgb2gray(pic);
pic = 255-pic;
pic = im2bw(pic);
pic = 255*pic;
pic = uint8(pic);
figure(1);
imshow(pic);
[m,n] = size(pic);

dx = m - x_pixels;
dy = n - y_pixels;

x0 = floor(dx/2);
y0 = floor(dy/2);
pic_new = zeros(x_pixels,y_pixels);
for i = 1:x_pixels
   for j = 1:y_pixels
       pic_new(i,j) = pic(i+x0,j+y0);
   end
end
pic_new = uint8(pic_new);
figure(2);
imshow(pic_new);
[a,b] = size(pic_new);

% 开始分割图像
vertical_num = floor(a/pulse_num);
count = 0;
for j = 1:vertical_num
    c = j;
    for i = 1:b
        d = i;
        count = count + 1;
        small_pic = pic_new(1500*(j-1)+1:1500*(j),i);
        new_path = sprintf('%s%07d.jpg',path,(i + (b*(j-1))));
        imwrite(small_pic,new_path);
    end
end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值