『壹』 利用matlab将一张图片分割成10×10的小图片,求程序!
% 图像切片代码
% my_imslice(filename)缺省方式,输出3×3 切片
% my_imslice(filename,rc,cc)输出 rc×cc 切片
function [rgb,mn] = my_imslice
p = imread(filename)
% 图片补齐及计算每片大小
[m,n,h] = size(p)
rp = rc*(fix(m/rc)+1*(mod(m,rc)==1))% 补齐后行像素
frow = fix(rp/rc)% 片行像素
cp = cc*(fix(n/cc)+1*(mod(n,cc)==1))% 补齐后列像素
fcol = fix(cp/cc) % 片列像素
mn = [frow fcol]
pp = p
pp(rp,cp,:) = 0; % 原始数据补齐
% 数据分片、显示
rgb = cell(rc,cc);
for r = 1:rc
end;
(1)matlab图像分块程序扩展阅读:
Matlab包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。
新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。
『贰』 鎬庢牱鍒╃敤matlab瀵逛竴骞呭浘鍍忚繘琛屽垎鍧椾互鍙婇噸缁勶紵
鐢╟ol2im鍑芥暟灏辫岋紝
濡傛灉鏄灏嗗浘鍍忓垎鍓叉垚鍧楃殑鏃跺欑敤鐨刬m2col鍙傛暟涓'distinct'锛岄偅涔堢敤col2im鍑芥暟鏃跺弬鏁颁篃鏄'distinct',
濡傛灉鍒嗗壊鍥惧儚鐨勬椂鍊欏弬鏁颁负'sliding'锛岄偅涔堢敤闇瑕佺敤reshape+accumarray鍑芥暟瑙e喅銆
『叁』 濡備綍鍦╩atlab涓灏嗗浘鐗囷紙浠讳綍澶у皬锛夊垎鍓蹭负8*8鍧楋紙浠呯墿鐞嗗垎鍓诧級锛屾ワ紒锛侊紒锛侊紒锛
鎬濊矾鏄锛
1.璇诲叆涓寮犵煩闃靛偍瀛樺湪涓涓鐭╅樀A閲
2.寰楀埌杩欎釜鐭╅樀鐨勫ぇ灏忥紙鍗冲浘鍍忕殑鍒嗚鲸鐜囷級
3.璁$畻鍒嗗壊杈圭晫
4.鍒嗗潡鍌ㄥ瓨
涓嬮潰鏄鍙傝冧唬鐮 缂栧彿鍜屼笂闈㈢被浼
%1.
A=imread('xxx.bmp');%鍦ㄥ伐浣滅洰褰曢噷鏀句竴寮犲彨xxx.bmp鐨勫浘鐗
%2.
B=size(A);
%3.
stepx=B(1)/8;%璁$畻妯鍧愭爣鐨勫叓鍒嗕箣涓浣滀负姝ヨ繘鍊
stepy=B(2)/8;%璁$畻妯鍧愭爣鐨勫叓鍒嗕箣涓浣滀负姝ヨ繘鍊
%4.
A1=A(1:stepx,1:stepy,:);%鍌ㄥ瓨绗涓鍧
A2=A(stepx:stepx*2,stepy:stepy*2,:);%鍌ㄥ瓨绗涓鍧
...
A8=A(stepx*7:stepx*8,stepy*7:stepy*8,:);%鍌ㄥ瓨绗涓鍧