提取二维矩阵中分块后指定的块
来源:互联网 发布:陆军马鹿 海军马粪知乎 编辑:程序博客网 时间:2024/06/05 16:06
对一个二维矩阵I(N×N)进行分块(块大小为n×n),并提取其中第ii块中的元素
% 对二维矩阵I进行[n n]分块,取其中第ii块中的元素
function x = getBlock(I, n, ii)
N = size(I, 1);
n1 = N / n;
n2 = n * n;
[a, b] = ind2sub([n1 n1], ii);
p = (b-1) * n * (n1 * n) + (a-1) * n; % 计算I中第ii块之前的元素个数
c = 1;
for i = 1 : n
for j = 1 : n % 从p点向下走n步
x(c) = I(p+j);
c = c + 1;
end
p = p + N; % 从p点向右走N步(因为I中每一列有N个元素)
end
x = reshape(x, n, n);
测试代码:(分别提取I中各块的数据)
clear;
clc;
I = magic(4);
N = size(I, 1);
n = 2;
blockNum = round(N * N / (n * n)); % 取整
for ii = 1 : blockNum
x(:, :, ii) = getBlock(I, n, ii); % 取得第ii块中的元素
end
% 输出块中的内容
for ii = 1 : blockNum
I, ii
y = x(:, :, ii)
end
运行结果:
- 提取二维矩阵中分块后指定的块
- [数学]矩阵中分块计算的理解
- MATLAB如何提取矩阵的子块
- 二维矩阵联通块的个数
- 元胞矩阵的剪裁、提取、拼接、块赋值
- 有序列表中分块查找-c语言
- CAD块属性提取
- opencv 矩阵块的复制问题
- 01矩阵中"1"的块数
- 矩阵块对角
- 看完《块数据》后的一点思考
- 【OpenCV】提取图片某一块
- 块
- 块
- 块
- dul从seg$中提取需要扫描的块范围
- OpenCV 从浮点型数据的视差图中分割并滤除小的斑块
- 测试用指定块大小读取文件时间的代码
- openssl中算法的组织方式
- 状态压缩dp
- 软件插件的定义
- 配置环境变量
- 设置所选择物体的wirecolor为随机颜色
- 提取二维矩阵中分块后指定的块
- 平台+插件软件设计基本思想
- 隐藏在Windows XP中的实用程序
- 对数据库话题讨论的小结
- 请不要忘记本质—ssl的握手方式
- 骨头镇 BoneTown 破解+菜单汉化补丁
- 1.6 - 第一章:PHP基础 - 操作符
- 认识优化查询中的Merge Join、Nested Loops和Hash Match
- 宽带能连接上但不能上网的解决办法