论文部分内容阅读
粮食是安天下、稳民心的重要战略物资。我国粮食储备具有分布广、仓型种类多以及仓容量大等特点,总储备量在4亿吨左右,对国家粮食宏观调控、维护粮食市场稳定等起着决定性的作用。粮食数量检测是“粮食安全”的重要一环。目前粮食数量检测方法主要有称重法、压力传感器法和激光扫描体积法。称重法虽然精度高,但是效率低下、浪费大量人力、物力;埋入式压力传感器法虽然有较好的实时性,但存在建设投入大、精度较差等缺点;对于激光扫描体积测量法,测量的精度较高,但存在扫描时间长,测量实时性差等缺点。本文结合激光扫描和图像处理各自的优势,将激光标定引入到图像测量中,开发一种准确性高、实时性强的粮食数量检测系统。主要工作如下:1)选择合适网络摄像头,设计了基于步进电机驱动的云台控制系统,依据PELCO-D协议,以C为编程语言,实现了云台各种运动控制;在选用了高精度倾角传感器、激光标定灯、激光测距仪的基础上,以STM32为控制核心,搭建了满足系统需要的下位机硬件平台。2)建立世界坐标系、摄像机坐标系、以及图像二维坐标系。应用经典的棋盘格标定法对网络摄像头进行标定,求解摄像头内部各个参数,以实现粮面平面面积的准确测量。3)建立网络摄像头非线性畸变模型,选取张正友畸变校正方法,利用多角度拍摄得到的棋盘格图像,经过调用CalibrateCamera方法获得摄像头畸变参数,消除摄像头本身的畸变影响,为基于图像的粮面面积的准确计算打下基础。4)调用EmguCV图像处理库函数CvInvoke.cvRemap,对网络摄像头拍摄的粮面图像依次进行透视变换、自适应大津法阈值分割以及图像增强,得到二值化鸟瞰图像。实现了不同倾角拍摄情况下,同一粮面面积的等量测量。5)在Visual Studio环境之下,使用C#语言开发上位机系统。打开激光灯,转动云台,使激光束照射在粮面的合适位置,对包含有激光光斑的粮面进行拍照,获取图像,以光斑之间的实际距离为标准尺度,计算图像空间分辨率,求得实际粮面面积。结合下位机激光测距传感器和倾角传感器上传的数据求得粮面的高度,最后计算得到储粮的数量。分别对实验室内模拟平方仓和模拟浅圆仓进行多次测量验证,整体测量误差在5%左右,初步达到预期效果。