论文部分内容阅读
机器视觉伴随着CMOS/CCD传感技术与计算机技术的发展,已经广泛的渗入到我们的日常生活中。在深度学习、机器学习以及人工智能等方面得到迅速的发展,从手机的美颜APP面部识别功能、支付宝的刷脸支付,到智能驾驶、京东的物流机器人等等都是运用了计算机视觉技术。双目视觉(Binocular Stereo Vision)技术作为计算机视觉研究领域的重点课题,主要是基于视差原理利用两个摄像机从不同位置来获取两幅图像,通过计算两幅图像对应点的位置偏差来获取视差图像。双目视觉通过模拟人眼获得双眼视差,产生对图像深度的感知,利用相应的匹配算法确定两幅图像的像素点偏差,可广泛的应用于三维重建、机器人导航、虚拟现实等多个领域。本论文通过对多种立体匹配算法的优缺点比较,在保证实时性和匹配精度两方面的原则下,选择基于改进的Census变换的匹配算法。针对匹配算法中运算量大、计算过程复杂等缺点,传统的软件平台无法很好的满足其要求,采用现场可编程逻辑阵列(Field Programmable Gate Arrays,FPGA)作为本论文的硬件实现环境平台,Verilog HDL硬件描述语言来实现相关模块的功能。整个系统分为基于FPGA实现的双目图像采集、视频编解码、图像数据缓存、图像预处理算法,以及Census变换等相关功能模块。充分利用FPGA并行处理和流水线操作的特点,采用软硬件联合处理的方法完成双目视觉的研究。在图像采集的研究中,为了获取更多的图像信息,本文在Demosaicing算法的基础上改进,处理后的图像细节更加清晰。对初始图像做去燥、滤波等预处理,为后续的匹配做准备。在进行Census变换时,针对立体匹配算法中不连续区域匹配精度差的缺陷,提出改进的自适应权重的Census变换匹配算法。在硬件实现方面采用FPGA搭建整个框架,本课题选用Altera公司的EP4CE15F17C8芯片作为处理器,Quartus Prime15.1作为开发工具,Modelsim 10.4b作为仿真工具。利用OmniVision公司的OV5640作为定标双目摄像头采集图像,输出分辨率为1920*1080@60FPS的两幅图像进行试验。最后充分发挥FPGA流水线设计的优势,降低逻辑资源的使用率,并提高了匹配精度和处理速度。