Hello Mat

 找回密码
 立即注册
查看: 5392|回复: 0

六抽头滤波

[复制链接]

1294

主题

1520

帖子

110

金钱

管理员

Rank: 9Rank: 9Rank: 9

积分
22633
发表于 2017-9-21 21:51:53 | 显示全部楼层 |阅读模式
六抽头滤波:
filter_coef = [1 -5 20 20 -5 1]/32;  %(6-tap filter)系数
im_inter = six_tap_filter(im, filter_coef); % 六抽头滤波

  1. function A_interp_pic = six_tap_filter(A, filter_coef)
  2. % 六抽头插值滤波
  3. % 函数输入:    A: 输入图像
  4. %             filter_coef: 滤波器系数
  5. % 函数输出:   
  6. %             A_interp_pic:  六抽头插值滤波图像

  7. if (length(size(A)) == 3)
  8. % 如果输入图像为3D数组,则重复插值滤波3次
  9.     for i=1:3
  10.         A_interp_pic(:,:,i) = Bilinear_Filter_interp(A(:,:,i),filter_coef);
  11.     end
  12.    
  13. else
  14.     [m,n] = size(A);       % 求行列
  15.     % 初始化
  16.     A1 = [];           % 初始化
  17.     A_interp_pic = []; % 初始化
  18.     % 列插值
  19.     A_col= filter2(filter_coef,A);       % 滤波
  20.     for i=1:n
  21.         A1 = [A1,A(:,i),A_col(:,i)];
  22.     end
  23.     A1(:,end) = [];    % 去边缘
  24.     % 行插值
  25.     A_rows = filter2(filter_coef,A1')';  % 滤波
  26.     for i=1:m
  27.         A_interp_pic = [A_interp_pic; A1(i,:); A_rows(i,:)];
  28.     end
  29.     A_interp_pic(end,:) = []; % 去边缘
  30.    
  31. end
复制代码






算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Python|Opencv|MATLAB|Halcom.cn ( 蜀ICP备16027072号 )

GMT+8, 2024-4-25 11:43 , Processed in 0.239155 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表