中国农业银行智慧校园登录不上,老是显示手机号未注册?

在开发产品的时候,很多时候,我们都会用到图片解码,本次实验介绍如何通过 STM32F4 来解码 BMP/JPG/JPEG/GIF 等图片,并在 LCD 上显示出来。

我们常用的图片格式有很多,一般最常用的有三种: JPEG(或 JPG)、 BMP 和 GIF

其中JPEG(或 JPG)和 BMP 是静态图片,而 GIF 则是可以实现动态图片。

首先,我们来看看 BMP 图片格式。 BMP(全称 Bitmap)是 Window 操作系统中的标准图像文件格式,文件后缀名为“.bmp”, 使用非常广。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此, BMP 文件所占用的空间很大,但是没有失真。 BMP 文件的图像深度可选 lbit、 4bit、 8bit、 16bit、 24bit 及 32bit。 BMP 文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺序。
典型的 BMP 图像文件由四部分组成:
1, 位图头文件数据结构,它包含 BMP 图像文件的类型、显示内容等信息;
2, 位图信息数据结构,它包含有 BMP 图像的宽、高、压缩方法,以及定义颜色等信息
3, 调色板,这个部分是可选的,有些位图需要调色板,有些位图,比如真彩色图(24 位
的 BMP)就不需要调色板;
4, 位图数据,这部分的内容根据 BMP 位图使用的位数不同而不同,在 24 位图中直接使
用 RGB,而其他的小于 24 位的使用调色板中颜色索引值。
关于 BMP 的详细介绍,请参考光盘的《BMP 图片文件详解.pdf》。接下来我们看看 JPEG

JPEG 是 Joint Photographic Experts Group(联合图像专家组)的缩写,文件后辍名为“. jpg”或“. jpeg”,是最常用的图像文件格式,由一个软件开发联合会组织制定, 同 BMP 格式不同,JPEG 是一种有损压缩格式,能够将图像压缩在很小的储存空间,图像中重复或不重要的资料会被丢失,因此容易造成图像数据的损伤(BMP 不会,但是 BMP

尤其是使用过高的压缩比例,将使最终解压缩后恢复的图像质量明显降低,如果追求高品质图像,不宜采用过高压缩比例。 但是 JPEG 压缩技术十分先进,它用有损压缩方式去除冗余的图像数据,在获得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像品质。而且 JPEG 是一种很灵活的格式,具有调节图像质量的功能,允许用不同的压缩比例对文件进行压缩,支持多种压缩级别,压缩比率通常在 10: 1 到 40: 1 之间,压缩比越大,品质就越低;相反地,压缩比越小,品质就越好。比如可以把 1. 37Mb 的 BMP 位图文件压缩至 20. 3KB。当然也可以在图像质量和文件尺寸之间找到平衡点。 JPEG 格式压缩的主要是高频信息,对色彩的信息保留较好,适合应用于互联网,可减少图像的传输时间,可以支持 24bit 真彩色,也普遍应用于需要连续色调的图像。

JPEG/JPG 的解码过程可以简单的概述为如下几个部分:
1、从文件头读出文件的相关信息。JPEG 文件数据分为文件头和图像数据两大部分,其中文件头记录了图像的版本、长宽、采样因子、量化表、哈夫曼表等重要信息。所以解码前必须将文件头信息读出,以备图像数据解码过程之用。
2、从图像数据流读取一个最小编码单元(MCU) ,并提取出里边的各个颜色分量单元。
3、将颜色分量单元从数据流恢复成矩阵数据。
使用文件头给出的哈夫曼表,对分割出来的颜色分量单元进行解码,把其恢复成 8×8
4、 8×8 的数据矩阵进一步解码。此部分解码工作以 8×8 的数据矩阵为单位, 其中包括相邻矩阵的直流系数差分解码、使用文件头给出的量化表反量化数据、反 Zig- zag 编码、隔行正负纠正、反向离散余弦变换等 5 个步骤, 最终输出仍然是一个 8×8 的数据矩阵。
将一个 MCU 的各个颜色分量单元解码结果整合起来,将图像颜色系统从 YCrCb 向
6、排列整合各个 MCU 的解码数据。
的解码库,关于 TjpgDec 的详细使用,请参考光盘: 6,软件资料\图片编解码\TjpgDec 技术手册 这个文档。BMP 和 JPEG 这两种图片格式均不支持动态效果,而 GIF 则是可以支持动态效果。最后,我们来看看 GIF 图片格式。

文件由表示图形/图像的数据块、数据子块以及显示图形/图像的控制信息块组成,称为 GIF 数据流(Data Stream)。数据流中的所有控制信息块和数据块都必须在文件头(Header)和文件结束块(Trailer)之间。

GIF 文件格式采用了 LZW(Lempel-Ziv Walch)压缩算法来存储图像数据,定义了允许用户为图像设置背景的透明(transparency)属性。此外, GIF 文件格式可在一个文件中存放多幅彩色图形/图像。如果在 GIF 文件中存放有多幅图,它们可以像演幻灯片那样显示或者像动画那样演示。

关于 GIF 的详细介绍,我们就介绍到这里。

本章实验功能简介:开机的时候先检测字库,然后检测 SD 卡是否存在,如果 SD 卡存在,则开始查找 SD 卡根目录下的 PICTURE 文件夹,如果找到则显示该文件夹下面的图片文件(支持 bmp、 jpg、 jpeg 或 gif 格式) ,循环显示,通过按 KEY0 和 KEY2 可以快速浏览下一张和上一张, KEY_UP 按键用于暂停/继续播放, DS1 用于指示当前是否处于暂停状态。如果未找PICTURE 文件夹/任何图片文件,则提示错误。同样我们也是用 DS0 来指示程序正在运行。
所要用到的硬件资源如下:
这几部分,在之前的实例中都介绍过了,我们在此就不介绍了。需要注意的是,我们在 SD卡根目录下要建一个 PICTURE 的文件夹,用来存放 JPEG、 JPG、 BMP 或 GIF 等图片。

打开本章实验工程目录可以看到, 我们在工程根目录下面新建了一个 PICTURE 文件夹。

对于这些文件, 其中 bmp.c 和 bmp.h 用于实现对 bmp 文件的解码; tjpgd.c 和 tjpgd.h 用于实现对 jpeg/jpg 文件的解码; gif.c 和 gif.h 用于实现对 gif 文件的解码;这几个代码太长了,所以我们在这里不贴出来,请大家参考光盘本例程的源码,我们打开 piclib.c,代码如下:

此段代码总共 9 个函数,其中, piclib_draw_hline 和 piclib_fill_color 函数因为 LCD 驱动代码没有提供,所以在这里单独实现,如果 LCD 驱动代码有提供,则直接用 LCD 提供的即可。

里面定义的一个结构体,用于管理底层 LCD 接口函数,这些函数必须由用户在外部实现。

_pic_info 则是另外一个结构体,用于图片缩放处理。

piclib_alpha_blend 函数,该函数用于实现半透明效果,在小格式(图片分辨率小于 LCD 分辨率) bmp 解码的时候,可能被用到。

ai_draw_init 函数,该函数用于实现图片在显示区域的居中显示初始化,其实就是根据图片大小选择缩放比例和坐标偏移值。

is_element_ok 函数,该函数用于判断一个点是不是应该显示出来,在图片缩放的时候该函数是必须用到的。

ai_load_picfile 函数,该函数是整个图片显示的对外接口,外部程序,通过调用该函数,可以实现 bmp、 jpg/jpeg 和 gif 的显示,该函数根据输入文件的后缀名,判断文件格式,然后交给·相应的解码程序(bmp 解码/jpeg 解码/gif 解码),执行解码,完成图片显示。

注意,这里我们用到一个 f_typetell 的函数,来判断文件的后缀名, f_typetell 函数在 exfuns.c 里面实现,具体请参考光盘本例程源码。

接下来我们看看头文件 piclib.h 代码如下:

这里基本就是我们前面提到的两个结构体的定义以及一些函数的申明,相信大家很容易明
白。 最后我们看看 main.c 文件内容如下:


此部分除了 mian 函数,还有一个 pic_get_tnum 的函数,用来得到 path 路径下,所有有效文件(图片文件)的个数。在 mian 函数里面我们通过索引(图片文件在 PICTURE 文件夹下的编号),来查找上一个/下一个图片文件,这里我们需要用到 FATFS 自带的一个函数: dir_sdi,来设置当前目录的索引(因为 f_readdir 只能沿着索引一直往下找,不能往上找),方便定位到任何一个文件。 dir_sdi 在 FATFS 下面被定义为 static 函数,所以我们必须在 ff.c 里面将该函数的 static 修饰词去掉,然后在 ff.h 里面添加该函数的申明,以便 main 函数使用。

其他部分就比较简单了,至此,整个图片显示实验的软件设计部分就结束了。该程序将实
现浏览 PICTURE 文件夹下的所有图片,并显示其名字,每隔 3s 左右切换一幅图片。

11月6日上午,我院与中国农业银行三门峡分行“智慧校园—人像识别系统”启动暨战略合作协议签约仪式在1106会议室举行。学院党委书记刘廷福,党委副书记、工会主席宋六锁,副院长李勤及中国农业银行河南省分行机构业务部总经理祝娜,中国农业银行三门峡分行党委书记、行长张建新,中国农业银行河南省分行、三门峡分行有关领导、相关业务部门负责人,学院各院部党政负责人、各部门负责人等参加仪式。签约仪式由宋六锁主持。

刘廷福在致辞中指出,云计算、大数据、物联网、人工智能、5G、区块链等新技术逐步广泛应用,经济社会各行业信息化步伐逐步加快,社会整体信息化程度不断加深,信息技术对教育的革命性影响日趋明显。今年,学院就把智慧校园建设纳入了学院的十件实事,并加快推进智慧校园的建设步伐。人像识别系统是学院智慧校园的重要组成部分,人像识别系统的建成,极大地促进了学院的智慧管理能力和服务水平,推动了智慧校园的建设步伐。

张建新在致辞中表示,农行三门峡分行愿凭借丰富的金融产品、优质的金融服务、专业的金融人才,竭诚为双方全方位的金融合作做出更实、更细、更好的努力。

会议现场,李勤和中国农业银行三门峡分行党委委员、副行长郭晓兵分别代表双方签署了《战略合作协议》;刘廷福、祝娜、张建新等与会领导共同点亮了彩色启动屏,标志着人像识别系统正式启动运行。

仪式结束后,学院现代教育技术中心主任王卫星带领农行的各位领导到学院1号餐厅、校园营业网点、5号学生公寓楼现场实地体验了系统运行情况。

由中国农业银行三门峡分行投资340余万元的人像识别系统于今年7月份启动建设,历时3个多月,目前能够实现学院各大门的车辆出入门禁、宿舍人像通道、人像支付、图书借阅等功能。

党委书记刘廷福在签约仪式上致辞

中国农业银行三门峡分行党委书记、行长张建新在签约仪式上发言

党委副书记、工会主席宋六锁主持签约仪式

副院长李勤和农行行三门峡分行党委委员、副行长郭晓兵分别代表双方签署了《战略合作协议》

与会领导共同点亮了彩色启动屏

我要回帖

更多关于 手机号登录提示未注册 的文章

 

随机推荐