基于图像特征检测——使用相位拉伸变换(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现

💥1 概述

在过去的几十年里,深度学习和计算机视觉在目标检测、目标跟踪、行人检测和自动驾驶汽车方面发挥了趋势引导作用。一些方法被提出来解决这些计算机视觉和基于深度学习的检测、跟踪技术、算法和数据源的问题。近年来,这一领域变得越来越重要,研究人员利用有关图像和视频的在线/离线数据,集中进行情绪建模和计算分析。比较了灰度和相位的两种不同的图像边缘提取方法及其提取结果。相位的边缘检测方法是以Hilbert变换为出发点建立的相位一致性模型,并且它有一种计算量比较小的近似算法——局部能量模型。最后通过logGabor函数构造的小波,对图像边缘进行提取并比较了结果,说明了相位边缘的通用性;通过对马赫带现象的检测,说明相位一致性模型更符合人类视觉系统的特性。图像锐化是图像增强的主要内容之一,在图像分析、图像理解以及医学图像等领域均有重要的应用。现有图像锐化方法对图像中的弱强度变化特征增强效果不明显,并且在边缘附近还会出现毛刺与噪声。为解决这些问题,提出一种基于相位拉伸变换结合相对总变分的图像锐化算法,本文章就用Matlab代码实现。

📚2 运行结果

 部分代码:

% test script to test PST function

clc  % clear screen
clear all  % clear all variables
close all   % close all figures

% import original image
Image_orig=imread('lena_gray_512.tif');

% if image is a color image, convert it to grayscale
try
    Image_orig=rgb2gray(Image_orig);
catch
end

%show the original image
subplot(1,2,1)
imshow(Image_orig)
title('Original Image')

% convert the grayscale image do a 2D double array
Image_orig=double(Image_orig);

% low-pass filtering (also called localization) parameter
handles.LPF=0.21; % Gaussian low-pass filter Full Width at Half Maximum (FWHM) (min:0 , max : 1)

% PST parameters
handles.Phase_strength=0.48;  % PST  kernel Phase Strength
handles.Warp_strength=12.14;  % PST Kernel Warp Strength

% Thresholding parameters (for post processing)
handles.Thresh_min=-1;      % minimum Threshold  (a number between 0 and -1)
handles.Thresh_max=0.0019;  % maximum Threshold  (a number between 0 and 1)

% choose to compute the analog or digital edge
Morph_flag = 1 ; %  Morph_flag=0 to compute analog edge and Morph_flag=1 to compute digital edge.

% Apply PST and find features (sharp transitions)
[Edge PST_Kernel]= PST(Image_orig,handles,Morph_flag);

if Morph_flag ==0
    % show the detected features    
    subplot(1,2,2)
    imshow(Edge/max(max(Edge))*3)
    title('Detected features using PST')
   
else
    subplot(1,2,2)
    imshow(Edge)
    title('Detected features using PST')
    
    % overlay original image with detected features
    overlay = double(imoverlay(Image_orig, Edge/1000000, [1 0 0]));
    figure
    imshow(overlay/max(max(max(overlay))));
    title('Detected features using PST overlaid with original image')
end

% show the PST phase kernel gradient
figure
[D_PST_Kernel_x D_PST_Kernel_y]=gradient(PST_Kernel);
mesh(sqrt(D_PST_Kernel_x.^2+D_PST_Kernel_y.^2))
title('PST Kernel phase Gradient')

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]索子恒.图像特征检测与特征提取综述[J].产业创新研究,2022(04):33-35.

[2]吕尧新,刘志强,朱祥华. 基于相位一致性原理的图像特征检测技术[C]//中国通信学会.第九届全国青年通信学术会议论文集.电子工业出版社,2004:1115-1119.

[3]甘金来,刘钊.基于相位的图像特征检测算法[J].实验科学与技术,2006(02):16-19+61.

🌈4 Matlab代码实现

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值