MATLAB铁轨检测+异物识别
前言:
实现了铁轨的轨道检测,但现在只能检测直线,弯曲的铁轨检测下一步会实现,实现之后会更新的,敬请期待。
一直以来,铁路异物问题.直威胁着铁路的运行安全。
依靠传统的检测方法和司机视觉对铁路异物进行识别很难彻底解决这一问题。
所以,利用机器视觉,设计出一种有效的铁路异物检测系统,能实时准确地检测出异物,并及时发出警报,这对保证铁路运行安全有很大帮助。
铁路监控视频图像由于采集环境的变化导致图像质量下降的情况,如光照强度变化,摄像机出现抖动等原因,使得到的视频图像往往存在含有噪声、对比度较小、图像失真等不足,对之后的异物检测造成影响。
为了解决这些问题,对图像了进行预处理:运用图像滤波、灰度图像对比度增强对图像进行了优化,分别选择应用了时域递归低通滤波法、直方图均衡化法;图像预处理方法能够很好地提高铁路图像质量,降低检测错误率,有效的提高系统准确率和可靠性。
在MATLAB仿真平台下分别对时域递归低通滤波法、直方图均衡化、基于Harris角点特征的图像配准算法、Hough直线检测和背景差分法进行验证,实验结果表明,所用算法能够有效地达到其设计目的,准确而快速地检测出异物,并且能够有效地分辨异物性质,检测准确率高,实时性好,适用于铁路异物检测。
人话就是,用MATLAB,做了铁轨识别+异物报警
原图:
部分参考代码:
[H,T,R]=hough(BW);
subplot(2,2,3);
imshow(H,[],'XData',T,'YData',R,'InitialMagnification','fit');
title('霍夫变换图');
xlabel('\theta'),ylabel('\rho');
axis on , axis normal, hold on;
P=houghpeaks(H,5,'threshold',ceil(0.3*max(H(:))));
x=T(P(:,2));y=R(P(:,1));
plot(x,y,'s','color','white');
lines=houghlines(BW,T,R,P,'FillGap',5,'MinLength',7);
subplot(2,2,4);imshow(rotI);
title('霍夫变换图像检测');
axis([50,250,50,200]);
grid on;
axis on;
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','green');
plot(xy(1,1),xy(1,2),'x','LineWidth',2,'Color','yellow');
plot(xy(2,1),xy(2,2),'x','LineWidth',2,'Color','red');
len=norm(lines(k).point1-lines(k).point2);
if(len>max_len)
max_len=len;
xy_long=xy;
end
end
plot(xy_long(:,1),xy_long(:,2),'LineWidth',2,'Color','cyan');
效果图:
检测出铁轨后,异物识别就比较简单了,代码就像呼吸一样简单。
所以省略。。。
MATLAB铁轨检测+异物识别相关推荐
- 基于matlab活体检测,人脸识别中活体检测算法综述.PDF
人脸识别中的活体检测算法综述 SIGAI 2018.9.19 原创声明:本文为 SIGAI 原创文章,仅供个人学习使用,未经允许,不能用于商业目的. 1. 什么是活体检测? --> 判断捕捉到的 ...
- 基于PCA 人脸识别/人脸识别算法/人脸检测程序源码MATLAB ELM+PCA人脸识别 PCA人脸识别matlab代码 基于PCA算法的人脸识别
1.基于PCA的人脸识别代码 2.MATLAB ELM+PCA人脸识别 2.基于PCA的人脸识别(matlab)(采用PCA算法进行人脸识别,通过抽取人脸的主要成 分,构成特征脸空间,识别时将测试图像 ...
- 基于MATLAB的人体行为检测与识别
一.课题背景 人体行为检测与识别是当前研究的重点,具有很高的研究价值和广阔的应用前景.主要应用在型人机交互.运动分析.智能监控和虚拟现实也称灵境技术(VR)领域,对于研究人体检测和识别有着重要的意义. ...
- matlab车牌识别 复杂环境,基于MATLAB复杂背景车牌识别检测系统
基于MATLAB复杂背景车牌识别检测系统 1.选题目的和意义 在复杂背景车牌识别检测系统中,由于拍摄时的光照条件.牌照的整洁程度的影响,和摄像机的焦距调整.镜头的光学畸变所产生的噪声都会不同程度地造成 ...
- MATLAB裂缝检测识别
MATLAB裂缝检测识别 MATLAB代码 %%读取图片 srcImg=imread('C:\Users\HP\Desktop\001.jpg'); subplot(331);imshow(srcIm ...
- matlab 肤色识别,MATLAB肤色检测.doc
MATLAB肤色检测 RGB=imread('1.jpg'); YCbCr=rgb2ycbcr(RGB); %??RGB??ê?×a?ˉ3éYCbCr??ê? Y=YCbCr(:,:,1); %ìáè ...
- Matlab人脸检测算法详解
这是一个Matlab人脸检测算法详解 前言 人脸检测结果 算法详解 源代码解析 所调用函数解析 bwlabel(BW,n) regionprops rectangle 总结 前言 目前主流的人脸检测与 ...
- 基于matlab的硅晶体模型,基于Matlab的图像处理技术识别硅太阳电池的缺陷
第 44 卷 第 7 期 2010 年 7 月 上 海 交 通 大 学 学 报 JOURNAL OF SHANGHAI J IAOTON G UNIVERSITY Vol. 44 No. 7 Jul. ...
- 基音检测 matlab,基于MATLAB基音检测分析.doc
基于MATLAB基音检测分析 基于MATLAB基音检测分析 摘要:基音检测作为语音信号处理的重要手段,被广泛地应用于语音的合成.编码及识别等一系列语音信号处理技术问题.基音检测的准确性对于要求极高的语 ...
最新文章
- WiredTiger引擎编译 及 LT_PREREQ(2.2.6)问题解决
- 博士买房后发现被坑,于是写万字论文维权,网友:维权界的天花板...
- 泰坦尼克号(titanic)数据集字段解释、数据导入实战
- Ubuntu系统安装stardict(星际译王)词典
- Spring2.5注释驱动与基于注释的MVC
- LeetCode——15. 3Sum
- 【组合数学】生成函数 ( 正整数拆分 | 正整数拆分基本模型 | 有限制条件的无序拆分 )
- 【转】The test form is only available for requests from the local machine 解决方法
- 疯子的算法总结(九) 图论中的矩阵应用 Part 1 POJ3613 Cow Relays
- (多线程)leetcode1114. 按序打印 认识AtomicInteger
- LeetCode 341. 扁平化嵌套列表迭代器(双栈)
- 第五篇:Spring Boot整合filter
- Java笔记-spring-rabbitmq中使用@RabbitListener消费(手动确认,获header数据)
- PCL1.8.0+Windows+VS2013配置
- Pb(96) The serializable class Model does not declare a static final serialVersionUID field of typ...
- 解决sendmail服务启动慢的方法
- mysql数据控制语言_Mysql数据控制语言DCL(Data Control Language)
- 使用SQL语句获得服务器名称和IP 地址
- 俄罗斯一款地图软件无意曝光300多个军事基地
- 对web应用构成安全威胁的错误漏洞