《数字图像处理》实验课上老师让尽量给出自己的源码,查阅资料初步了解了卷积的基本原理,所以针对实验课上的例子给出了自己的卷积变换代码。总之,卷积变换代码并不复杂,前提是了解了卷积的基本原理,这里有一个参考链接感觉讲的很棒,请查阅过后再阅读我的代码。

博客链接:https://blog.csdn.net/jinv5/article/details/52874880

%%拉普拉斯算子增强(卷积在下面)

clear all

load imdemos circuit%在图像处理工具箱中加载'circuit'图像

I = circuit;

I = double(I);

imshow(I, []);

h = [0 1 0;1 -4 1; 0 1 0];

J = conv2(I, h, 'same');%以h为卷积核对I进行卷积,返回与I相同大小的中心部分

K = I - J;

figure, imshow(J, []);

figure, imshow(K, []);

%%自己编码实现卷积运算

%先补0

myF = zeros(2, 4 + size(I, 2));

myF(3:(size(I, 1) + 2), 1:2) = 0;

myF(3:(size(I, 1) + 2),3:(size(I, 1) + 2)) = I;

myF(3:(size(I, 1) + 2),size(I, 1) + 3:size(I, 1) + 4) = 0;

myF(size(I, 1) + 3:size(I, 1) + 4, 1:size(I, 1) + 4) = 0;

%进行卷积 卷积顺序改变不会影响卷积的结果

P = ones(4 + size(I, 1), 4 + size(I, 2));

for i = 3:(2 + size(I, 1))

for j = 3:(2 + size(I, 2))

for m = 1:3

for n = 1:3

P(i, j) = P(i, j) + myF(i + m-2, j + n-2)*h(m, n);

end

end

end

end

P = P(3:size(I, 1) + 2, 3:size(I, 2));

figure, imshow(P, []);

效果展示:

原图I:                                   利用matlab卷积函数conv2(I, h, 'same')求得的结果:      自己编码求得的卷积变换结果:

                                                           

matlab卷积代码,卷积的Matlab代码实现相关推荐

  1. matlab作卷积的公式,卷积相关公式的matlab代码

    取半径=3 用matlab代码实现上式公式: length=3; for Ki = 1:length for Kj = 1:length for Kk = 1:length Ksigma(Ki,Kj, ...

  2. 卷积神经网络(CNN)讲解及代码(基于matlab)

    经典反向传播算法公式详细推导 卷积神经网络(CNN)反向传播算法公式详细推导 网上有很多关于CNN的教程讲解,在这里我们抛开长篇大论,只针对代码来谈.本文用的是matlab编写的deeplearnin ...

  3. [Matlab] 线性卷积圆周卷积代码实现

    1.线性卷积 周期卷积 圆周卷积的 关系: 2.Matlab实验及现象 圆周卷积: 1 %% 圆周卷积实例程序 2 %% Alimy 2014年11月21日 20:19:12 3 clc; 4 cle ...

  4. 基于IMAGE法的房间回响模型创建、C++代码实现、matlab仿真

    基于IMAGE法的房间回响模型创建.C++代码实现.matlab仿真 1.模型简介 \qquad在处理声音信号时,我们要对信号先进行采集.那么我们就必须要有,一个发出声音的声源,一个进行声音采集的传感 ...

  5. 求助:MATLAB中实现卷积运算和理论分析中的卷积运算有什么区别?

    MATLAB中实现卷积运算和理论分析中的卷积运算有什么区别. 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页.如果你想学习如何使用Markdown编辑 ...

  6. 【 MATLAB 】两个序列的卷积和运算的MATLAB实现(2)

    已知下面两个序列: 求这两个序列的卷积. 求卷积的函数是conv,但是使用这个函数有个问题,就是下标问题,也就是求卷积之后的元素值的位置.因此,我们必须要定一个起始点和一个结束点. 方法: 是两个有限 ...

  7. matlab创建符号常量出错,错误:代码中意外的符号/输入/字符串常量/数值常数/特殊...

    这些错误意味着您试图运行的R代码或源代码在语法上是不正确的.也就是说,你有一个错误. 若要修复此问题,请仔细阅读错误消息.错误消息中提供的代码显示了R认为问题所在的地方.在原始代码中找到这一行,并查找 ...

  8. matlab代码重改python代码,对应函数

    (2021)matlab代码重改python代码,对应函数--全!_Troublemaker丶的博客-CSDN博客

  9. Deep Learning学习 之 CNN代码解析(MATLAB)

    Test_example_CNN Test_example_CNN: 1设置CNN的基本参数规格,如卷积.降采样层的数量,卷积核的大小.降采样的降幅 2 cnnsetup函数 初始化卷积核.偏置等 3 ...

  10. matlab 高斯迭代代码_用Matlab编写你的第一个有限元_《数值计算与程序设计》系列课程...

    本课主要分析了有限元的基本理论, 不同于其他学习资料的是本文从数学的角度重新阐述了有限元分析的基本步骤,如通解与特解的讲解,并以一个偏微分方程实例,从基础插值出发,详细地讲解了有限元数学推导的每一步过 ...

最新文章

  1. VirtualBox在桥接模式下无网络处理
  2. 分页与无限滚动在评论区的设计差异
  3. eclipse导入class文件
  4. 基于模型的嵌入式开发流程_如何使用基于模型的测试来改善工作流程
  5. python 读取word_教你怎么使用 Python 对 word文档 进行操作
  6. 树上倍增求LCA及例题
  7. Android 中发送短信
  8. js逆向解析技巧--selenium
  9. (转)Linux 系统性能分析工具图解读(一、二)
  10. H3C交换机配置VLAN
  11. 微信多客服系统开发教程
  12. 快速截屏并保存图像 - 快速保存剪切板截图到图像-
  13. echats实现进度条、饼状图、折线图、柱状图、柱状图和折线图的集合体
  14. Oracle中计算年龄SQL语句
  15. python怎么计算圆_python根据圆的参数方程求圆上任意一点的坐标
  16. android电视如何打开adb调试模式,分享解密某Android电视adb后门方法
  17. ubuntu 百度云盘
  18. IoT:OneNET - 中国移动物联网平台介绍
  19. vscode ( Visual Studio Code )设置中文、字体和字号
  20. Python实现微信自动拉群机器人

热门文章

  1. GNS3(1.下载与安装)
  2. 全志 Allwinner V3S 开发环境搭建 (一)虚拟机搭建 Oracle VM VirtualBox6.1 Ubuntu14.4
  3. C# Newtonsoft的使用
  4. gxworks2软件测试对话框,超实用!GX Works2软件的启动与窗口功能应用
  5. 班级管理系统(SSM+LayUI)
  6. app测试用例注意点
  7. 【干货】移动APP测试用例设计实践经验分享
  8. C# WinForm界面设计教程
  9. glibc2.31下的新double free手法/字节跳动pwn题gun题解
  10. 简单的嵌入式人脸识别系统