基于MATLAB的仿射变换/透射变换/道路检测/车牌检测
仿射变换即把三维物体所成的二维图像进行还原。话不多说,直接上效果:
1.平面翻转
可以使用鼠标任意选取四个点,然后将这四个点变换成矩形。运行结果如下:
2.基于霍夫变换
3.基于仿射变换
先来看另一组基于霍夫变换进行仿射的例子(道路检测):
很显然,简单的检测出最长边再旋转的方法在这里行不通了,因为从三维(但是图像是二维的)变化到二维需要新的算法。
原理:获取原图上四个点,推出新图像的四个点,然后得出它们的变换矩阵,将这个矩阵应用到原图的每一个点,得出新的图像。
(原图)
(变换后的图)
这里存在两个问题:一是变换后新的图像会有一些点没有被映射到,所以是黑的。二是只能对角度较小的原图进行变换,像张荣帅一开始给我发的那个就不行,因为太大了,原图的很多点会被映射到非常大的矩阵中去。
然后我先解决第一个问题:双线性插值,原理是竖着插又横着插,运行结果如下:
针对第二个问题,我想到的是通过线性规划来解决,就是只对我选的四个点以内的图像进行变换,别的点都不要了,我拿车牌的图运行了一下:
但是同样的代码运行到马路那张图时,就变成这样了:
原因是针对不同的原图像所选取的四边形,线性规划时有时候要取直线下方的点,有时候要取直线上方的点,符号不能确定,后来想到的办法是,四个点,取了一条直线后,剩下两点里面任取一个点,然后和这个点同一边(判断方法为“同号”)的点就是我们要的点。
运行结果如下:
如果要取远一点也OK(之前完全取不了,因为新数组太大了):(仍有优化空间)
最后的功能就是可以将任意四边形,二维也好,三维也好,变回矩形。
注:有需要源文件及设计文件的朋友可以联系作者,作者创作不易,希望客官们打赏~(作者联系方式见评论区)
基于MATLAB的仿射变换/透射变换/道路检测/车牌检测相关推荐
- 基于MATLAB改进Otsu阈值分割的车道线检测
基于MATLAB改进Otsu阈值分割的车道线检测 摘要:在判断车道偏离以防止车辆碰撞等危害时,车道标线检测需要通过图像处理来进行,检测方法是否适用于各种背景环境条件以及检测的及时性至关重要传统的Ots ...
- matlab 开放,基于MATLAB的小区开放对道路通行影响的研究
计算机技术 基于 MATLAB的小区开放对道路通行影响的研究 胡远林 戢予 杨倩飞 周静 重庆邮电大学光电工程学院 /重庆国际半导体学院 擅要 :本文选取小区周围某一条经常拥堵的道路为研究对象,在此道 ...
- Matlab:基于Matlab通过GUI实现自动驾驶的车牌智能识别
Matlab:基于Matlab通过GUI实现自动驾驶的车牌智能识别 目录 车牌图像数据集 视频动态演示 核心代码 相关文章 Matlab:基于Matlab通过GUI实现自动驾驶的车牌智能识别 Matl ...
- OpenCV_04 几何变换:图像缩放+图像平移+图像旋转+仿射变换+透射变换+图像金字塔
1 图像缩放 缩放是对图像的大小进行调整,即使图像放大或缩小. API cv2.resize(src,dsize,fx=0,fy=0,interpolation=cv2.INTER_LINEAR) 参 ...
- 基于MATLAB的汽车出入库计时计费车牌识别系统
一.课题介绍 随着汽车数量的增加,城市交通状况日益受到人们的重视,如何进行有效的交通管理更是成为了人们关注的焦点.智能交通系统通过车辆检测装置对过往的车辆实施检测,提取有关交通数据,达到监控.管理和指 ...
- 基于深度学习的端到端的车牌检测与识别
论文题目:Towards End-to-End Car License Plates Detection and Recognition with Deep Neural Networks 摘要: 对 ...
- 基于坐标变换与随机Hough 变换的抛物线运动目标检测算法
波条件下,高检测概率会带来高的虚警概率:而在稀疏杂波条件下, 检测效果比较好. 关键词:随机Hough 变换, 抛物线, 曲线检测 中图分类号:TN957.51 文献标识码:A 文章编号:1009-5 ...
- 基于matlab的医学图像Radon变换仿真
目录 1.算法概述 2.仿真效果 3.MATLAB仿真源码 1.算法概述 拉东变换是一个积分变换,它将定义在二维平面上的一个函数 f(x,y) 沿着平面上的任意一条直线做线积分,相当于对函数 f(x, ...
- 基于MATLAB的数字图像K-L变换,基于DCT变换的图像编码方法研究
分类号 密级 UDC注l 学 位 论 文 基于DCT变换的图像编码方法研究 (题名和副题名) 朱剑英 (作者姓名 指导教师姓名 副教授 中诱学位级别硕士 沦_义提交日期2004.1 专.业名称 通信与 ...
最新文章
- POJ - 2337 Catenyms 欧拉回路
- 无向图的连通分量的数量
- 深入了解Java的SPI机制
- dephi(pascal)中修改Label字体的样式(加粗,斜体,下划线)
- 第10-11讲 后端
- bochs x86模拟器
- java版b2b2c社交电商spring cloud分布式微服务(十)高可用的服务注册中心
- 奇虎360-数据可视化
- linux启动java命令
- 如何将PDF转成高清JPG图片
- FAT文件系统工作原理
- 总体设计(五个基本原理、软件结构图)
- PS人像磨皮——高低频修图法
- python开发网页视频播放器_python实现媒体播放器功能
- Sator提供其Orca流动性池的六周,增长更新一览
- HTTPS是如何保证安全的
- 算法竞赛进阶指南——二分:防线
- 计算机管理哪个是主板驱动,请问一下这里面哪个是主板驱动?
- java 获取docker ip_docker容器内部获取宿主机ip地址方法以及报错解决
- 安卓中自定义view控件代替radiogroup实现颜色渐变效果的写法
热门文章
- SQL Server 2005 安装图解(图文详解+全程截图)
- Windows系统扩充C盘空间系列方法总结
- 从用户行为打造活动交互设计闭环——2014年世界杯竞猜活动设计总结
- 使用EEGLAB分析脑电数据,情绪图片的ERP成分分析
- beast软件linux用法,网络设置及启动引导项 - 黑苹果驱动高手篇 MultiBeast用法进阶_Linux教程_Linux公社-Linux系统门户网站...
- 四轴飞行器-概念扫盲
- 【算法】_004_插入排序
- 《机器学习-吴恩达》课程笔记week1-2
- 一分钟了解“表示程度大有哪些副词”
- python实现AdaBoost算法