实现代码:

% 二维卷积操作卷积操作clc
clear% 3*3 卷积核必须是方阵,且行列数为奇数
x = [-1 -2 -3;0  0  0;1  2  3];% 5*5
data = [1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25];pre_conv = conv2(data, x, 'same')x_conv_ker = rot90(rot90(x));% 卷积核的大小
[ker_row, ker_col] = size(x_conv_ker);
% 图像数据的大小
[img_row, img_col] = size(data);% 卷积核中心元素
ker_center_row = round(ker_row/2); % round:四舍五入取整
ker_center_col = round(ker_col/2);
ker_center = x_conv_ker(ker_center_row, ker_center_col);% 增广图像原始数据
data_append = zeros(img_row + ker_row - 1, img_col + ker_col - 1);
data_append(ker_center_row : ker_center_row + img_row - 1, ker_center_col : ker_center_col + img_col - 1) = data;% 计算增广后的图像数据大小
[append_row, append_col] = size(data_append);% 卷积
conv_result = zeros(append_row, append_col);
for m = ker_center_row:ker_center_row + img_row - 1for n = ker_center_col:ker_center_col + img_col - 1data_mid = data_append(m-(ker_center_row - 1) : m+(ker_center_row - 1), n-(ker_center_row - 1):n+(ker_center_row-1));conv_operation = sum(x_conv_ker.*data_mid);conv_result(m, n) = sum(conv_operation(:));end
end% 删去之前增广的0边
conv_result = conv_result(ker_center_row : ker_center_row + img_row - 1, ker_center_col : ker_center_col + img_col - 1)

参考:

二维卷积的原理与手动编程实现

Matlab实现二维数据卷积相关推荐

  1. matlab画直方图下标,matlab画二维数据直方图/画二维概率分布

    数据来自混合高斯分布 ![](http://www.forkosh.com/mathtex.cgi? \large Y=0.3X_1+0.6X_2+0.1X_3) 随机变量的均值如下, 各分量之间相互 ...

  2. 二维反卷积 matlab,二维反卷积的实现(实际意义不明确)

    前言 一维反卷积(deconv),可以很好的实现一维卷积的反过程!但是二维反卷积就很难恢复了!为什么呢?因为我们知道二维卷积计算的过程就是:卷积核不断滑动,卷积核不断与原始数据中的小矩阵做" ...

  3. matlab生成二维服从高斯分布的数据

    matlab生成二维服从高斯分布的数据 2015-12-30 21:31 1263人阅读 评论(0) 收藏 举报  分类: matlab(8)  由于实验需要,需要生成两类模式的数据,同时这两类数据要 ...

  4. matlab创建二叉树(二维数据)

    一.学习要点 1.注意matlab中全局变量与局部变量的区别:本文中assigned_nn为局部变量,每一次递归中的值都是不一样的,node_nubmer为全局变量,当前值的改变如递增,必回影响以后每 ...

  5. Python-深度学习-学习笔记(13):keras搭建卷积神经网络(对二维数据进行一维卷积)

    Python-深度学习-学习笔记(13):keras搭建卷积神经网络(对二维数据进行一维卷积) 卷积神经网络进行图像分类是深度学习关于图像处理的一个应用,卷积神经网络的优点是能够直接与图像像素进行卷积 ...

  6. 二维数据输入到matlab cnn网络训练

    如果是三维图片数据,需要另外的方法 matlab搭建cnn分类自己的图片数据 对于二维数据,数据结构也有一定的要求: 原始数据结构(未划分训练和测试): 划分数据集并改变维度: %% random s ...

  7. 径向基函数插值(3)二维数据的插值

    二维数据的插值过程跟一维数据的过程一样, 只不过在显示二维的数据插值的过程中,需要meshgrid函数产生数据,进行显示插入数据的输出值. 产生二维数据: clear all; figure; %** ...

  8. Deep learning:十一(PCA和whitening在二维数据中的练习)

    前言: 这节主要是练习下PCA,PCA Whitening以及ZCA Whitening在2D数据上的使用,2D的数据集是45个数据点,每个数据点是2维的.参考的资料是:Exercise:PCA in ...

  9. matlab绘制二维曲线图

    matlab绘制二维曲线图 今天,我们来讲一个用matlab绘制二维曲线图 下面直接上代码,会对代码一些部分进行一些讲解 %% 定义函数 x = 0:0.01:2*pi; y1 = sin(x); y ...

最新文章

  1. 获山东科技最高奖-农业大健康·万书波:沉醉谋定花生增产
  2. 令人印象深刻的第一个Apache Camel版本
  3. centos6.5 MySQL 服务器_启用CentOS6.5 64位安装时自带的MySQL数据库服务器
  4. java 课后习题 温度转换
  5. MySQL is running but PID file could not be found(在macOS系统下解决方法)
  6. 使用Filter实现用户自动登录
  7. docker 打包部署 python项目_Docker如何部署Python项目的实现详解
  8. 【摘】蓝牙技术及其协议栈
  9. rman备份控制文件
  10. 实验一:JDK下载与安装、 Eclipse下载与使用
  11. 剖析Linux内核源码分析《入门技术栈》
  12. 谈谈如何学习R语言基础教程
  13. 关于HTML页面跳转的5种方法分享。
  14. 聚石塔服务器 微信,聚石塔云服务器
  15. 【Lv1-Lesson004】Imperative Sentences
  16. 云南提供云南IP的公司有哪些
  17. Educational Codeforces Round 119 (Rated for Div. 2) 做题日志
  18. 单点登录 Ucenter 分析
  19. 船舶强度与结构设计大作业二matlab,船舶强度与结构设计题目
  20. 高频率Vue面试题总结,vue面试就靠它!

热门文章

  1. Portal认证讲解
  2. Linux centos7设置禁Ping
  3. 读书有感——大数据之“大”
  4. 【滤波】粒子滤波(PF)
  5. Mac book Pro玩脱之后开机开在进度条界面
  6. iOS的rtmp推流Demo
  7. Yearn攻击事件复盘:黑客完成5次DAI与USDT从3crv中存取操作后偿还闪电贷
  8. getResourceAsStream读取配置文件路径配置
  9. [网络安全课设]基于JAVA的系统端口扫描软件设计实现(java代码+IDEA+UI图形界面+实验报告)
  10. java计算机毕业设计铝塑门窗的研制和生产管理源码+系统+数据库+lw文档+mybatis+运行部署