✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,代码获取、论文复现及科研仿真合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
🔥 内容介绍
本文提出了一种基于霍夫变换和 Harris 角点检测相结合的方法,用于检测建筑物图像中的直线和角点。该方法利用霍夫变换检测图像中的直线,并使用 Harris 角点检测算法检测角点。通过将这两个方法相结合,可以提高直线和角点检测的准确性和鲁棒性。
引言
直线和角点是建筑物图像中重要的特征,它们对于建筑物识别、重建和测量至关重要。传统上,直线检测使用霍夫变换,而角点检测使用 Harris 角点检测算法。然而,这些方法在某些情况下可能存在局限性。例如,霍夫变换在检测短直线或噪声图像中的直线时可能不准确,而 Harris 角点检测算法在检测圆形或椭圆形角点时可能不鲁棒。
方法
为了克服这些局限性,我们提出了一种基于霍夫变换和 Harris 角点检测相结合的方法。该方法的步骤如下:
-
**图像预处理:**对图像进行高斯滤波以去除噪声。
-
**霍夫变换:**使用霍夫变换检测图像中的直线。霍夫变换将图像中的每个点映射到参数空间中的一条直线。通过对参数空间进行聚类,可以检测到图像中的直线。
-
**Harris 角点检测:**使用 Harris 角点检测算法检测图像中的角点。Harris 角点检测算法计算图像中每个点的角点响应函数,并选择响应函数值高于阈值的点作为角点。
-
**直线和角点关联:**将霍夫变换检测到的直线与 Harris 角点检测到的角点关联起来。如果一条直线经过一个角点,则该直线和角点被关联起来。
-
**后处理:**对检测到的直线和角点进行后处理,以去除冗余和噪声。
实验结果
我们使用建筑物图像数据集对该方法进行了评估。实验结果表明,该方法在检测直线和角点方面具有较高的准确性和鲁棒性。与仅使用霍夫变换或 Harris 角点检测算法的方法相比,该方法的性能得到了显著提高。
结论
我们提出了一种基于霍夫变换和 Harris 角点检测相结合的方法,用于检测建筑物图像中的直线和角点。该方法利用了霍夫变换和 Harris 角点检测算法的优势,提高了直线和角点检测的准确性和鲁棒性。该方法可以广泛应用于建筑物识别、重建和测量等领域。
📣 部分代码
clear;
close all;
%%
% Start
I = imread('villa_image_2.png');
I=im2double(I);
I = im2double(rgb2gray(I));
size=size(I);
figure(1),imshow(I),title('original image');
%%
%edges
edges = edge(I, 'canny');
figure(2), imshow([edges]),title('edges');
%%
%Harris measure
dx = [-1 0 1; -1 0 1; -1 0 1]; % Derivative masks
dy = dx';
Ix = conv2(I, dx, 'same'); % Image derivatives
Iy = conv2(I, dy, 'same');
SIGMA_gaussian=4;
%%
%Hough transform
[H,theta,rho] = hough(edges);
figure(7)
imshow(imadjust(rescale(H)),[],...
'XData',theta,...
'YData',rho,...
%%
%Find straight lines with Hough
lines = houghlines(edges,theta,rho,P,'FillGap',20,'MinLength',40);
figure(8), imshow(I),title('Straight Lines') ,hold on
max_len = 0;
for k = 1:length(lines)
xy = [lines(k).point1; lines(k).point2];
plot(xy(:,1),xy(:,2),'LineWidth',2,'Color','cyan');
% Plot beginnings and ends of lines
plot(xy(1,1),xy(1,2),'o','LineWidth',2,'Color','red');
plot(xy(2,1),xy(2,2),'x','LineWidth',2,'Color','green');
end
⛳️ 运行结果
🔗 参考文献
[1] 孟祥希.基于全景视觉的自动泊车方法研究[D].吉林大学[2024-03-05].
[2] 汪涛,成孝刚,李德志,等.基于霍夫变换与角点检测的叶脉特征提取算法[J].计算机技术与发展, 2019, 29(11):4.DOI:10.3969/j.issn.1673-629X.2019.11.032.
🎈 部分理论引用网络文献,若有侵权联系博主删除
🎁 关注我领取海量matlab电子书和数学建模资料
👇 私信完整代码和数据获取及论文数模仿真定制
1 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化、背包问题、 风电场布局、时隙分配优化、 最佳分布式发电单元分配、多阶段管道维修、 工厂-中心-需求点三级选址问题、 应急生活物质配送中心选址、 基站选址、 道路灯柱布置、 枢纽节点部署、 输电线路台风监测装置、 集装箱船配载优化、 机组优化、 投资优化组合、云服务器组合优化、 天线线性阵列分布优化
2 机器学习和深度学习方面
2.1 bp时序、回归预测和分类
2.2 ENS声神经网络时序、回归预测和分类
2.3 SVM/CNN-SVM/LSSVM/RVM支持向量机系列时序、回归预测和分类
2.4 CNN/TCN卷积神经网络系列时序、回归预测和分类
2.5 ELM/KELM/RELM/DELM极限学习机系列时序、回归预测和分类
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU门控神经网络时序、回归预测和分类
2.7 ELMAN递归神经网络时序、回归\预测和分类
2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/长短记忆神经网络系列时序、回归预测和分类
2.9 RBF径向基神经网络时序、回归预测和分类