资源预览内容
第1页 / 共38页
第2页 / 共38页
第3页 / 共38页
第4页 / 共38页
第5页 / 共38页
第6页 / 共38页
第7页 / 共38页
第8页 / 共38页
第9页 / 共38页
第10页 / 共38页
第11页 / 共38页
第12页 / 共38页
第13页 / 共38页
第14页 / 共38页
第15页 / 共38页
第16页 / 共38页
第17页 / 共38页
第18页 / 共38页
第19页 / 共38页
第20页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,战略性信息产业教育服务提供商 联世界 育未来,创新物联教育,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第16章 QR软解码-解码流程2获取图像,第16章 QR软解码-解码流程2获取图像,目 录,4.关键代码解析,2.实验原理,1.实验描述,3.实验实现,目 录4.关键代码解析2.实验原理1.实验描述3.实验实现,1.实验描述,【实验目的】,了解二维码基本概念;,理解QR码的解码原理;,掌握二维码软解码获取图像的代码实现。,1.实验描述【实验目的】,【实验内容】,通过串口线连接PC端的COM口与二维码实验箱COM口;,二、在二维码实验箱的显示屏上选择软解码模块;,三、在PC端打开配套资料的“03.软件与工具02.可执行程序Demo4_QR软解码-解码流程2获取图像”中的可执行程序,出现如图16-1所示的实验初始界面;,【实验内容】,图16-1,图16-1,四、串口选择COM1(注意选择实际使用的串口),点击“连接”,提示“连接成功”;点击“开始解码”,进行扫描,如果扫描成功,则听到“嘀”一声,在界面上则显示“本次码词长度:7”(显示具体二维码的实际码词长度),如图16-2所示;,四、串口选择COM1(注意选择实际使用的串口),点击“连接”,图16-2,图16-2,五、点击“原始图像”,如图16-3所示;,五、点击“原始图像”,如图16-3所示;,六、点击“灰度图”,如图16-4所示;,六、点击“灰度图”,如图16-4所示;,七、点击“位图图像”,如图16-5所示;,七、点击“位图图像”,如图16-5所示;,八、点击“符号图像”,如图16-6所示;,八、点击“符号图像”,如图16-6所示;,目 录,4.关键代码解析,2.实验原理,1.实验描述,3.实验实现,目 录4.关键代码解析2.实验原理1.实验描述3.实验实现,2.实验原理,二、SoftwareDecodeLib类库下SoftDecode类(软解码类)简介,以下介绍本实验中所使用到SoftDecode类的主要方法。,(1)public bool Open(string com,int baudrate);,功能:打开串口,参数:com:串口号,baudrate:波特率,返回:true 已打开 false未打开,2.实验原理二、SoftwareDecodeLib类库下So,(2)public bool Close();,功能:关闭串口,参数:无,返回:true 已关闭 false未关闭,(3)public int startDecoding();,功能:开始解码,参数:无,返回:0:成功 1:失败-2:扫描超时-1:扫描出错,(2)public bool Close();,(4)public event EventHandler OnGetData;,功能:回调方法,参数:无,返回:,(5)public byte getOriginalBitmap();,功能:获取原始图像,参数:无,返回:byte数组,(4)public event EventHandler,(6)public int getGrayscaleBitmap();,功能:获取灰度图,参数:无,返回:0成功,非0失败,(7)public int getBinaryBitmap();,功能:获取位图,参数:无,返回:0成功,非0失败,(6)public int getGrayscaleBit,(8)public int getSignBitmap();,功能:获取符号图像,参数:无,返回:0成功,非0失败,(8)public int getSignBitmap(),三、BitMapLib类库下ByteToBitMap类(位图转化类)简介,以下介绍本实验中所使用到ByteToBitMap类的主要方法。,三、BitMapLib类库下ByteToBitMap类(位图,(1)public static Bitmap CreateBitmap(byte originalImageData,int originalWidth,int originalHeight);,功能:使用byte数据,生成256色灰度BMP 位图,参数:originalImageData:byte数据,originalWidth:位图宽,originalHeight:位图高,返回:位图,(2)public event EventHandler OnGetData;,功能:回调方法,参数:无,返回:,(1)public static Bitmap Creat,(3)public void MakeBitMapAsyc(byte _bytes,int _width,int _height),功能:异步绘制二值化位图,参数:无,返回:无,(4)public static Bitmap ToGrayBitmap(byte bytes,int width,int height);,功能:获取8*8灰度图,参数:无,返回:位图,(3)public void MakeBitMapAsyc,(5)public static Bitmap MakeBitMap(byte bytes,int width,int height);,功能:异步绘制二值化位图,参数:无,返回:位图,(5)public static Bitmap MakeB,四、以下介绍本实验中所使用到Util类的主要方法。,(1)public static ImageSource ChangeBitmapToImageSource(Bitmap bitmap);,功能:从bitmap转换成ImageSource,参数:bitmap:位图,返回:ImageSource,四、以下介绍本实验中所使用到Util类的主要方法。,目 录,4.关键代码解析,2.实验原理,1.实验描述,3.实验实现,目 录4.关键代码解析2.实验原理1.实验描述3.实验实现,3.实验实现,实验步骤:,第一步:硬件连接,通过串口线连接二维码实验箱的串口与PC端的串口,在二维码实验箱触摸彩屏选择“软解码”模块。,第二步:创建“Demo4_QR软解码-解码流程2获取图像”WPF应用程序。,(1)打开Visual Studio 2012,新建“Demo4_QR软解码-解码流程2获取图像”项目。,3.实验实现实验步骤:,图16-7,图16-7,(2)按照图16-7布局往窗体MainWindow上增加控件,并按表16-1所示设置各控件属性。,表16-1,(2)按照图16-7布局往窗体MainWindow上增加控件,第16章_QR软解码-解码流程2获取图像ppt课件,(3)把本书配套资料提供的二维码驱动类库文件“BitMapLib.dll、SoftwareDecodeLib.dll”(“03.软件与工具05.类库PC端”底下)拷贝到“Demo4_QR软解码-解码流程2获取图像”项目目录下。在解决方案资源管理器中添加动态库。,(4)右键MainWindow设计窗体点击“查看代码”,切换至MainWindow的代码编辑窗口;参照参考代码(“03.软件与工具03.源码PC端”)编写相应代码,实现程序功能。修改代码错误,直至没有错误提示产生,保存项目所有文件。,(3)把本书配套资料提供的二维码驱动类库文件“BitMapL,注意:在代码窗口中,需用语句“using SoftwareDecodeLib;”来导入SoftDecode类的命名空间,需用语句“using System.Drawing;”来导入Bitmap的命名空间,需用语句“using System.ComponentModel;”来导入BackgroundWorker的命名空间。,第三步:测试系统,检测系统功能是否正常。,注意:在代码窗口中,需用语句“using SoftwareD,目 录,4.关键代码解析,2.实验原理,1.实验描述,3.实验实现,目 录4.关键代码解析2.实验原理1.实验描述3.实验实现,4.关键代码解析,(1)定义对象,4.关键代码解析(1)定义对象,(2)回调方法获取图像,(2)回调方法获取图像,第16章_QR软解码-解码流程2获取图像ppt课件,第16章_QR软解码-解码流程2获取图像ppt课件,第16章_QR软解码-解码流程2获取图像ppt课件,第16章_QR软解码-解码流程2获取图像ppt课件,(3)二值化图片回调,(3)二值化图片回调,谢谢!,谢谢!,
点击显示更多内容>>

最新DOC

最新PPT

最新RAR

收藏 下载该资源
网站客服QQ:3392350380
装配图网版权所有
苏ICP备12009002号-6