数字图像处理中imfilter函数卷积算法代码(matlab)
function result = my_imfilter(I, h)
% 此函数只能处理灰度图像
[m n] = size(I);
i_add = zeros(m+2,n+2);
[m_add n_add] = size(i_add);
% 此处i_add为填充0边后的矩阵图像
i_add(2:m+1,2:n+1) = I(1:m,1:n);
% 在对i_add进行卷积时,不能让卷积后的结果影响未卷积的,所以创建个i_add_copy来作为不变的图像
i_add_copy = i_add;% size(h,1)是获取矩阵h的行数
% 又因为此矩阵为正方形,所以行数与列数相等
ker = size(h,1);
ker_radius = (ker-1)*0.5;
for j = 1:(m_add-ker+1)for i = 1:(n_add-ker+1)%(j+ker_radius, i+ker_radius) 中心坐标i_add(j+ker_radius, i+ker_radius) = my_convo(j, i, ker, i_add_copy,h); end
endi_add_sub = zeros(m,n);
% 把0边框去掉
i_add_sub(1:m,1:n) = i_add(2:m+1,2:n+1);
result = uint8(i_add_sub);
end
function J = my_convo(j,i,ker,i_add_copy,h)
sum = 0;
[m n] = size(h);
h_copy = zeros(m,n);
h_copy(1:ker, 1:ker) = h(1:ker, 1:ker).*i_add_copy(j:j+ker-1, i:i+ker-1);for y = 1:kerfor x = 1:kersum = sum+h_copy(y,x);end
end
J = sum;
end
clear, clc, close all;
% 卷积模版大小=6*sigma+1最为合适
I = imread('3.jpg');
I = rgb2gray(I);
h = [1 2 1;2 4 2;1 2 1]./16;
i = my_imfilter(I,h);
figure;
subplot(121),imshow(I),title('original image');
subplot(122),imshow(i),title('gaussian smooth1');
数字图像处理中imfilter函数卷积算法代码(matlab)相关推荐
- 卷积神经网络代码 Matlab,卷积神经网络matlab程序
cnn卷积神经网络用什么语言来写pascial . 200+这个是hintonmatlab代码的C++改写版.convnetjs-Star,SAE,首选的肯定是LIBSVM这个库;RBM#47.Dee ...
- matlab hist函数_算法工匠MATLAB专训营:Matlab绘图,小试牛刀
作者 | 蔡老师 仿真秀专栏作者 首发 | 仿真秀平台 导读:正文之前,我在此详细说明一下,因为本文包含的程序太难得,网上肯定找不到这样的程序.随着讲课的越来越深入,我给出的程序会越来越实用,接近于实 ...
- matlab中存档算法代码,Matlab中的FCM算法代码及中文详解
Matlab中的FCM算法代码及中文详解 转自:http://xiaozu.renren.com/xiaozu/106512/336681453 function [center, U, obj_fc ...
- matlab中emd函数,EMD算法的matlab程序介绍解析
<EMD算法的matlab程序介绍解析>由会员分享,可在线阅读,更多相关<EMD算法的matlab程序介绍解析(6页珍藏版)>请在人人文库网上搜索. 1.此版本为 ALAN 版 ...
- matlab中存档算法代码,MATLAB 智能算法超级学习手册中程序代码
[实例简介] MATLAB 智能算法超级学习手册中程序代码 [实例截图] [核心代码] dc90ef43-7920-434e-bdb8-0636c31c0b44 └── MATLAB 智能算法超级学习 ...
- matlab布林算法代码,MATLAB量化交易策略源码分享之 布林通道+高低点
策略原理: 通过布林带以及突破后的高低点的形成产生交易信号 采取跟踪止损出场 回测曲线: 2017-2-27 10:09:43 上传 下载附件 (65.41 KB) 策略代码: function S ...
- 【数字信号处理】卷积编程实现 ( Matlab 卷积和多项式乘法 conv 函数 | 使用 matlab 代码求卷积并绘图 )
文章目录 一.Matlab 卷积和多项式乘法 conv 函数 二.使用 matlab 代码求卷积并绘图 一.Matlab 卷积和多项式乘法 conv 函数 Matlab 文档地址 : https:// ...
- matlab 图像处理 ppt,第五章 matlab在数字图像处理中的应用.ppt
1.第五章 matlab在数字图像处理中的应用,数字图像的读入,A=imread(filename,fmt): 将文件名为filename,扩展名为fmt(图像文件格式)表示的图像文件中的数据读到矩阵 ...
- matlab自带图片下载,数字图像处理中Matlab的应用.pdf
您所在位置:网站首页 > 海量文档  > 计算机 > matlab 数字图像处理中Matlab的应用.pdf3页 本文 ...
最新文章
- elastic job review
- 如何解决visual studio2017 install 下载安装极慢的问题
- oracle快速导出1t数据,使用sqluldr2快速高效大批量导出Oracle数据
- 在程序中集成地址簿、电子邮件和地图功能
- 用python进行归并排序,用Python做归并排序
- python如何写生日快乐图片_Python 生活第一周母校生日快乐
- 酒店前台html,酒店前台常用英语单词
- 黑客攻防Redis拉锯战之Root提权
- linux中运行环境变量,linux下的环境变量详解
- 分享一款好用的Jetbrain插件-Jenkins Control
- python 回溯法 01背包问题_01背包问题(回溯法)python实现
- 基于Qt、FFMpeg的音视频播放器设计五(FFMpeg音频实现)
- 如何免费建立自己的一个HTML网站(完全免费)
- 【数据挖掘概念与技术】学习笔记5-数据立方体技术
- GYM 101350 H. Mirrored String I
- 360极速浏览器显示密码
- C语言 sigaction函数捕捉信号 注册回调函数
- Android 7.0平台开机启动
- P2254 [NOI2005] 瑰丽华尔兹
- Unity动画系统学习