CN102044053B - 基于fpga的逆透视变换方法 - Google Patents
基于fpga的逆透视变换方法 Download PDFInfo
- Publication number
- CN102044053B CN102044053B CN200910218414A CN200910218414A CN102044053B CN 102044053 B CN102044053 B CN 102044053B CN 200910218414 A CN200910218414 A CN 200910218414A CN 200910218414 A CN200910218414 A CN 200910218414A CN 102044053 B CN102044053 B CN 102044053B
- Authority
- CN
- China
- Prior art keywords
- fpga
- alpha
- ipm
- image
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于FPGA的逆透视变换图像处理算法的实现,属于信号处理技术、控制技术,是以FPGA芯片作为数字图像的处理单元,利用其硬件逻辑处理速度快的特点,通过芯片内部LE单元搭建出实现IPM算法的逻辑电路,以硬件的方式实现对图像的逆透视变换,得到无畸的二维鸟瞰图像,方便后续的车道检测特征提取等操作,其突出的优点是:将该图像处理算法硬件化,不需要工控机或DSP等核心处理单元,***实时性能好,可扩展性强。
Description
技术领域
本发明涉及一种基于FPGA的逆透视变换图像处理算法的实现,属于信号处理技术、控制技术。
背景技术
图像处理技术已经广泛应用于交通检测、飞行制导、模式识别等众多领域,这其中,逆投影变换(Inverse Perspective Mapping Algorithm)作为对图像预处理的一种算法,在高速公路车道线检测,无人机跑道识别等方面具有广泛的应用。然而对采集到的数字图像预先进行逆透视变换增加了运算开销,从而会在某种程度上降低***对图像的处理速度,而在有些对实时性有苛刻要求的应用场合,处理的速度则是至关重要的。同时,实际的应用领域不管是在机载或者车载的环境都需要检测设备所占用的空间和重量要尽可能的小,因此要充分利用该预处理算法的优点,必须选择合适的实现方式。目前,传统的IPM算法实现方式,有以下两种:
①基于车载或者机载计算机的实现方式,该方式以车载或机载计算机作为检测***的处理核心来进行逆透视变换,由于车载或机载计算机的处理速度较快,这种实现方式可以在一定程度上满足***实时性的要求,但是这种实现方式不可避免的会使车载或航空电子设备的体积变的十分庞大,成本也相对过高;
②基于DSP+FPGA的实现方式,该方式以FPGA作为图像采集的逻辑控制单元,DSP作为视频图像的处理核心,FPGA将采集的图像数据存储在外扩RAM存储器中,DSP从RAM中读取图像并进行逆透视变换。这种实现方式便携性好,可靠性高,但是由于图像处理需要的超大循环运算量以及DSP处理器本身的速度限制,当***对图像处理有实时性要求时这种方式往往显得力不从心;而且对于像自动驾驶、自主着陆控制等应用中,DSP除了图像处理外还要进行姿态校正、传感器信息采集等工作,这些都严重限制了其处理效率。
随着大规模现场可编程逻辑器件的高速发展,***设计进入了“片上可编程***(SOPC)”的新纪元,这其中特别引人注目的是所谓FPGA动态可重构技术的开拓,推动了数字***设计观念的发生巨大转变。FPGA芯片大规模、高集成度、高可靠性以及硬件实现高度并行性的优点,使其成为复杂***小型化的理想平台,而基于FPGA的图像处理***设计也已成为新的研究方向。
发明内容
为了克服传统车载或者机载实时图像处理方案设备体积大、处理速度慢的各种弊端,本发明设计了一种基于FPGA的IPM算法实现方式,它利用FPGA芯片具有硬件逻辑处理速度快的特点,利用其内部LE单元搭建出实现IPM算法的逻辑电路,以硬件的方式实现对图像的逆透视变换,得到无畸的二维鸟瞰图像,方便后续的车道检测特征提取等操作,其突出的优点是:将该图像处理算法硬件化,不需要工控机或DSP等核心处理单元,***实时性能好,可扩展性强。
本发明解决其技术问题所采用的技术方案:基于FPGA的逆投影变换实现方法,其特点是:
(a)以FPGA芯片为核心实现了一种适合机载或车载环境的嵌入式图像处理模块,它利用FPGA芯片内部门阵列,搭建出实现IPM算法的逻辑电路,将该图像处理算法硬件化,大大减少图像处理模块所占用的空间和所耗费的成本;
(b)利用外部传感器实时获取摄像机架设高度h及光轴与地面倾角θ作为算法的输入参数,以实现对图像的无偏校正;
(c)根据从图像采集模块获取的像素值及地址,将其转换为变换后的IPM图像的二维下标,并通过以下公式进行坐标转换:
z=0
式中,u,v为原图像像素的行列下标;x,y,z为变换后图像的三维坐标;h为摄像头安装位置距地面的高度;其中,三角函数通过基于FPGA的查找表方法实现,以1度为精度,将0到90度的角度正弦值存入FPGA芯片内部ROM区,以角度大小进行寻址来求取正弦值,对于负的角度将查找到的结果算术取反;对于余弦按照角度的余角进行查表;除法器通过迭代移位减法来实现;
(d)利用按照步骤(c)计算的像素行列下标,计算出该像素对应的一维地址,接着将该地址与上一像素对应的地址做差,若差不为0,则将其间的空隙用该像素值进行填充,以避免像素空白产生,并将对应像素值写入FPGA外扩RAM中;
(e)按照步骤(c)(d)处理完毕一帧图像,将处理后的图像通过FPGA接口向外发送。
本发明的有益效果是:利用外部传感器模块实时获取的摄像机架设高度及光轴与地面倾角参数,大大降低IPM算法的参数误差;利用FPGA芯片内部门阵列,搭建出实现IPM算法的逻辑电路,将该图像处理算法硬件化,并进行了并行性设计,大大提高了算法的处理速度,同时也减少了机载或者车载图像处理模块占用的空间和资金成本。
下面结合附图和实施例对本发明做进一步说明。
附图说明
附图1是本发明基于FPGA的逆投影变换模块输入输出结构图;
附图2是本发明基于FPGA的逆投影变换模块算法流程图;
附图3是本发明基于FPGA的逆投影变换模块三角函数实现图;
附图4是本发明基于FPGA的逆投影变换模块状态机并行化设计图。
具体实施方式
参照图1,在基于FPGA的逆投影变换模块设计过程中,输入参数为摄像机架设高度、摄像机光轴与地面夹角、基准时钟以及原始图像的一维地址,输出为校正后IPM图像的一维输出地址;
参照图2,该模块的具体实施包括输入图像一维地址转换为像素坐标、三角函数模块设计、乘法器除法器设计、逆投影变换后图像像素坐标到一维地址的转换等几个步骤;
逆投影变换的实现采用Alter公司的EP1C12系列芯片作为载体,模块首先将输入像素的一维地址转换为像素二维坐标,接着根据二维坐标以及输入的摄像机参数;参照图3,利用IPM算法公式依次通过三角函数模块、乘法器除法器模块进行处理,然后将校正后IPM图像的二维坐标转换为一维地址形式输出。
在实现的过程中,三角函数采用基于查找表求和的方式实现,其实现流程可参照图3;同时,为了保证处理的时序,将模块拆分为几个并行的步骤,并用状态机串连起来,也使得每个分离的步骤都能在一个时钟周期内完成,状态机结构设计参照图4。
Claims (1)
1.一种基于FPGA的逆透视变换方法,以FPGA芯片为核心实现了一种适合机载或车载环境的嵌入式图像处理模块,它利用FPGA芯片内部门阵列,搭建出实现IPM算法的逻辑电路,将该图像处理算法硬件化,其特征在于包括以下步骤:
(a)利用外部传感器实时获取摄像机架设高度h及光轴与地面倾角θ作为算法的输入参数,以实现对图像的无偏校正;
(b)根据从图像采集模块获取的像素值及地址,将其转换为变换后的IPM图像的二维下标,并通过以下公式进行坐标转换:
z=0
式中,u,v为原图像像素的行列下标;x,y,z为变换后图像的三维坐标;h为摄像头安装位置距地面的高度;其中,三角函数通过基于FPGA的查找表方法实现,以1度为精度,将0到90度的角度正弦值存入FPGA芯片内部ROM区,以角度大小进行寻址来求取正弦值,对于负的角度将查找到的结果算术取反;对于余弦按照角度的余角进行查表;除法器通过迭代移位减法来实现;
(c)利用按照步骤(b)计算的像素行列下标,计算出该像素对应的一维地址,接着将该地址与上一像素对应的地址做差,若差不为0,则将其间的空隙用该像素值进行填充,以避免产生像素空白产生,并将对应像素值写入FPGA外扩RAM中;
(d)按照步骤(b)(c)处理完毕一帧图像,将处理后的图像通过FPGA接口向外发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910218414A CN102044053B (zh) | 2009-10-20 | 2009-10-20 | 基于fpga的逆透视变换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910218414A CN102044053B (zh) | 2009-10-20 | 2009-10-20 | 基于fpga的逆透视变换方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102044053A CN102044053A (zh) | 2011-05-04 |
CN102044053B true CN102044053B (zh) | 2012-09-26 |
Family
ID=43910171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910218414A Expired - Fee Related CN102044053B (zh) | 2009-10-20 | 2009-10-20 | 基于fpga的逆透视变换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102044053B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10021299B2 (en) | 2016-05-31 | 2018-07-10 | Tower Spring Global Limited | System and method for image stitching |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536720B (zh) * | 2014-12-22 | 2017-11-28 | 浙江中控研究院有限公司 | 基于fpga的待测角三角函数值的测算方法及*** |
CN111464755B (zh) * | 2020-04-20 | 2021-06-18 | 北京理工大学 | 星载相机短曝光图像序列信噪比实时处理方法及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010028397A1 (en) * | 2000-03-31 | 2001-10-11 | Minolta Co., Ltd | Camera |
US6831650B2 (en) * | 2001-02-15 | 2004-12-14 | Sony Corporation | Checkerboard buffer using sequential memory locations |
US20060267989A1 (en) * | 2005-05-27 | 2006-11-30 | Campbell Jonathan L | Dynamic load balancing in multiple video processing unit (VPU) systems |
CN101016052A (zh) * | 2007-01-25 | 2007-08-15 | 吉林大学 | 高等级公路上车辆防车道偏离预警方法和*** |
CN101038153A (zh) * | 2007-01-15 | 2007-09-19 | 中国北方车辆研究所 | 一种三点定标测量方法 |
CN101308210A (zh) * | 2008-04-25 | 2008-11-19 | 深圳市亿威尔信息技术有限公司 | 雷达显示图像产生方法及*** |
-
2009
- 2009-10-20 CN CN200910218414A patent/CN102044053B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010028397A1 (en) * | 2000-03-31 | 2001-10-11 | Minolta Co., Ltd | Camera |
US6831650B2 (en) * | 2001-02-15 | 2004-12-14 | Sony Corporation | Checkerboard buffer using sequential memory locations |
US20060267989A1 (en) * | 2005-05-27 | 2006-11-30 | Campbell Jonathan L | Dynamic load balancing in multiple video processing unit (VPU) systems |
CN101038153A (zh) * | 2007-01-15 | 2007-09-19 | 中国北方车辆研究所 | 一种三点定标测量方法 |
CN101016052A (zh) * | 2007-01-25 | 2007-08-15 | 吉林大学 | 高等级公路上车辆防车道偏离预警方法和*** |
CN101308210A (zh) * | 2008-04-25 | 2008-11-19 | 深圳市亿威尔信息技术有限公司 | 雷达显示图像产生方法及*** |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10021299B2 (en) | 2016-05-31 | 2018-07-10 | Tower Spring Global Limited | System and method for image stitching |
Also Published As
Publication number | Publication date |
---|---|
CN102044053A (zh) | 2011-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109345596B (zh) | 多传感器标定方法、装置、计算机设备、介质和车辆 | |
CN107610084B (zh) | 一种对深度图像和激光点云图进行信息融合的方法与设备 | |
EP3846129A2 (en) | Method and apparatus for detecting obstacle | |
CN109100730B (zh) | 一种多车协同快速建图方法 | |
CN110095752B (zh) | 定位方法、装置、设备和介质 | |
US20200226434A1 (en) | Sensor data processing method and apparatus | |
US11227395B2 (en) | Method and apparatus for determining motion vector field, device, storage medium and vehicle | |
JP2021119507A (ja) | 車線の決定方法、車線測位精度の評価方法、車線の決定装置、車線測位精度の評価装置、電子デバイス、コンピュータ可読記憶媒体、及びプログラム | |
CN103592650B (zh) | 基于图形处理器的三维声纳成像***及其三维成像方法 | |
CN1136738C (zh) | 一种微型实时立体视觉机 | |
CN112198878B (zh) | 一种即时地图构建方法、装置、机器人及存储介质 | |
Wan et al. | An energy-efficient quad-camera visual system for autonomous machines on fpga platform | |
CN102044053B (zh) | 基于fpga的逆透视变换方法 | |
EP3783390A1 (en) | Robot recharging localization method and mobile robot using the same | |
CN105096337A (zh) | 一种基于陀螺仪硬件平台的图像全局运动补偿方法 | |
CN103345765B (zh) | 基于dsp+fpga的移动平台下运动目标检测装置及其方法 | |
CN112762945A (zh) | 高精度地图全要素采集设备的信息同步方法、***及装置 | |
US11034028B2 (en) | Pose determining method for mobile robot and apparatus and mobile robot thereof | |
CN113587934B (zh) | 一种机器人、室内定位方法、装置和可读存储介质 | |
CN114964259A (zh) | 基于红外焦平面阵列时域信号与红外图像的姿态解算方法及*** | |
CN203397395U (zh) | 基于dsp+fpga的移动平台下运动目标检测装置 | |
CN117156282A (zh) | 一种基于无人机航摄相片投影的全景图像生成方法及*** | |
CN116642490A (zh) | 基于混合地图的视觉定位导航方法、机器人及存储介质 | |
CN107808360B (zh) | 一种端到端自动驾驶***的数据处理方法及装置 | |
Yu et al. | On designing computing systems for autonomous vehicles: A perceptin case study |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120926 Termination date: 20211020 |
|
CF01 | Termination of patent right due to non-payment of annual fee |