一种室内自动拍摄图片网传方案

时间:2022-08-14 03:09:02

一种室内自动拍摄图片网传方案

摘要:网传图片来实现远程监视有着不错的应用需求。如何快速、便宜、方便、可靠及低功耗地实现这一需求是问题的关键。该文给出了一个基于WIFI的实现方案。设计一个JSW联网装置(主控单片机不用操作系统),并通过一个简便巧妙的方法,限制网传JPEG图片的数据量,同时保证“关键物体”的传输。这些对于住宅远程监视尤具意义。

关键词:低功耗;JSW联网装置;“关键物体”;“去尾”

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2015)23-0159-03

1 概述

打开淘宝网搜索“网络摄像头”,您会发现有着不错的销量。就具体用途而言,有的公司可能安装在办公场合或库房;有的商家用于店铺的无人监视;有的客户可能用于住宅的远程监控……这些产品有的利用有线入互联网,另一些则是无线入网,有的入网方式则是无线有线均可。

本文的研究则是基于“WIFI无线、电池供电、低功耗、长时间”等方面的室内自动拍摄,提出一个“几K图片选择”方案。考虑能够电池供电,强调低功耗。

现有的WIFI无线网络摄像头绝大部分是基于市电(220v)设计的,有的虽然也可以用电池供电,但由于方案所限电池电量只能用1~2天。人们外出度假、旅游时,许多住户的传统习惯一般都是拔掉冰箱电源,切断市电(220v)。而现在,如果希望能通过手机或电脑远程看一看自己的住宅室内情况,使用无线网络摄像头,要求继续使用市电显然是一种遗憾。

低功耗更是许多嵌入式应用的一个极其重要的目标。在电池电量一定的情况下,网络摄像头的功耗越低,需要再次充电或更换电池的周期就越长,越有利于进行长时间监控。另外,一般来讲,低功耗小电流产品发热低,由于温度过高而带来的安全隐患也会小一些,尤其是在长期无人的场合。

2 “几K图片选择”基本实现思路

首先,基于不错的压缩性能以及应用普及性,我们选择JPEG作为网传图片格式。有的摄像头集成有相应固件直接产生JPEG压缩数据,有的则靠DSP加相应软件完成。图1是“几K图片选择”的入网示意。基于前面的分析,选择WIFI入网。如果采用定时方式,主控单片机中设计一个(或控制一个外置的)低功耗计时器,该计时器使主控单片机每隔一定时间自动唤醒,唤醒后的主控单片机使摄像头模块和WIFI模块从低功耗状态(待机或睡眠或断电等)进入工作状态,控制摄像头模块拍下一张现场图像,处理成JPEG压缩数据,随即将其通过WIFI发出,发送完成后再使摄像头模块和WIFI模块重新进入低功耗状态,然后主控单片机自己进入睡眠状态,等待下一次被计时器唤醒;如果采用事件触发方式,则主控单片机的唤醒由外接传感器(如红外探头)触发。

为描述方便,将图1的入网装置称为JSW入网装置,简称JSW。意为JPEG摄像头模块 + Single chip computer(单片机) + WIFI。另外,主控单片机未被唤醒时,其他两个模块也处于低功耗状态,我们称此时是JSW入网装置的低功耗状态。主控单片机被唤醒后,则称是JSW入网装置的工作状态。

与市售的许许多多WIFI摄像头不同,这里的主控单片机不运行操作系统,这样可以最大限度地节省硬件,减少代码量,进一步降低功耗,增加可靠性。

再来看一看JSW入网装置的电池续航时间。这个时间指标主要取决于JSW的工作状态所需时长,需要考虑WIFI模块的启动和入网时间、网络通信需要的时间、主控单片机的启动时间以及JPEG模块的启动和拍照时间,以前两个时间为主。先看第一个。为了快速入网,可以使WIFI模块一直保持为联网状态,但需要mA级的电流[1]。即使是1mA的电流,约26.7天就会耗掉640mAh的电量(26.7*24≈640)。如果考虑WIFI模块平常处于极低功耗的待机或断电状态(电流近似为零),只有在JSW的工作状态才启动和联网,耗电又会怎样?一般情况下,WIFI模块从通电到联网需要十几秒(甚至更短)就够了,算20秒好了。以WIFI模块GS1011M为例,在较大发射功率(+18dbm)时的典型电流约250mA[2],WIFI模块从通电到联网一次所需电量约1.39mAh ((20/3600)*250≈1.39),如果JSW每半天进入一次工作状态(应该满足一般需求),这1.39mAh在26.7天需要的电量为37.113mAh(远小于640mAh)。因此,在JSW的低功耗状态中,使WIFI模块处于极低功耗的待机或断电状态是一个好的选择。有利于延长电池续航时间。

再看第二个。网络通信需要的时间取决于网络状况和所发送的信息量,我们在无法左右前者的情况下,可以尽量缩减后者,以尽量减少JSW的工作状态时长,增加续航时间。这正是“几K图片选择”的出发点之一。

3 简单的“去尾”办法

对于一般的住宅室内监视,我们取分辨率320*240,可以基本满足要求,如看看门开没开。但是,我们知道,在不同的光照条件下对同一物体拍出的JPEG图片大小一般不同,在同样的光照条件下对不同物体拍出的JPEG图片大小可能有别。实验以OV2640拍照[3]。图2是较强光(中午窗外有阳光)下拍摄的一个书架JPEG图片,图3是弱光(阴雨天3米外开约30w日光灯)下拍摄的一张房门JPEG图片,这两张图片大小相差约7.6k。如果不开日光灯的话,图3对应的图片尺寸会更小些(约2.7k时仍然可模糊地辨认门是否打开),对这样的图片设计网传方案时,一般会从最大图片的尺寸出发来考虑,如按13K来发送和存储。而我们的“几K图片选择”,顾名思义是只网传“几K”图片内容,对十几K或几十K(如果用640*480分辨率的话一张图片随便就是几十K)之类的大图片,显然不打算网传一张图片的全部,只是传输“一张图片的一部分”,以下简称PoI(Part of Image ),这样自然引出两个疑问:一是只网传PoI有什么好处?二是只网传PoI还有意义吗?疑问一很容易想明白,因为只传“几k”比传“几十k”肯定省流量(很可能省钱)、省存储容量、缩短JSW的工作状态、延长电池续航时间等。并且,如果这“几k”有一个固定上限值(如不大于6.5k)的话,对网络传输和网络存储也有益处,比如,用户可以预先估计租用的服务器图片存储空间可以用多久。

再看疑问二。只网传PoI还能达到远程监视的目的?图2所示图片文件1的尾部数据如图4所示。其中“FF D9”是JPEG文件特有的结束标志。如果将“FF D9”的前32个字节数据去掉,该文件仍然可以显示成图片,不过在底部有缺口出现,如图5右下部所示。类似地,如果“FF D9”的前100个、或120个、或256个字节数据被去掉,也可以显示出带有缺口的图片,为描述方便,这种图片下称“缺口图片”, 去掉“FF D9”前若干字节数据的做法称为“去尾”。

“去尾”的好处当然是可以减少网传的字节数,同时仍然可以显示部分图片,即PoI。当然,另一个思路,降低图片的清晰度也可以减少网传的数据。但本方法是保留图片的原清晰度,保留图片的最重要部分。

只要我们仍然保留图片的主要部分或关键部分(下称“关键物体”),如房门的锁,对远程监视来说,该PoI仍然是有意义的。比如通过一段门缝足以判断房门是否被打开。如果一张现场JPEG图片不大于“几K”,我们就将其全部网传,而当环境因素的变化使得其大于“几K”时,就采用“去尾”的办法只网传一不大于“几K”的PoI,这是我们的基本策略。不过,如果PoI结果是一张“缺口图片”,毕竟有些遗憾。那么,怎样改进简单的“去尾”办法,使PoI可以直接显示为一张“平滑图片”(整齐且不带缺口)?

4 改进的“去尾”方案

对“去尾”的改进主要有两条:①降低JPEG文件的高度;②连续去掉“FF D9”前的部分数据,使文件只保留“几K”的大小。

如果将图6中的图片高度从“00 FC”(十进制240)降低为“00 78” (十进制120),原图片的显示结果如图7,清晰度未变,只是显示范围小了。本例中“去尾”后整个文件只保留6.5k大小。图7显然是一个平滑的PoI,“关键物体”(假定是图5中上部的布娃娃)仍然被保留,只要在安装摄像头时注意将“关键物体”视为上部,还是可以基本满足一般的住宅室内监视需求。在JSW中,主控单片机通过搜索0帧开始标志“FF C0”,就可找到并改变图片高度所在的两个字节。但是,尽管显示的图片小了,高度数据改了,但整个文件的大小并未改变,如果就这样打包发送,则达不到“几K图片选择”限制网传数据的目的。所以,我们要对高度改变后的图片文件先“去尾”再网传。

如果原文件大小为“十几K”, 主控单片机算出差值=“十几K”-“几K”,文件结束标志“FF D9”前的连续一片数据将不被网传,该片数据的字节数等于该差值。不妨称这些字节为“少传的字节”。本例中“少传的字节”约为“12.7K-6.5K=6.5K”。

除了“少传的字节”之外,还能不能再少传一些字节呢?许多图片可以。不过,由于JPEG压缩和解压的复杂性,要精确算出到底可以少传多少字节将使问题复杂化,耗费额外的时间和空间。另外,如果同时对图片宽度也进行缩减,会增加JSW的软硬件负担,因为JPEG压缩数据是从左到右按块存储的,简单地将图片宽度降低一定值后,图片显示会失真。如果既降图片高度也减图片宽度同时还要算出精确“少传的字节”数,结果还要求得到一平滑的PoI,那很可能需要先解压再重新压缩,这是后续研究的内容,本文的研究只限于降低图片高度且“少传的字节”数=差值。

5 结束语

低功耗快速图片网传是远程监控的一种应用需求,本文采用JSW结构来实现这一需求。通过修改JPEG文件的高度且去掉图片的下面部分,但保留上部的“关键物体”,那么图片网传仍然是有一定意义的。实验表明这样可以较多地缩减需要网传的图片数据,节省网络资源。如果可以同时减小图片的高度和宽度显然更受欢迎,但这很可能要对整个图片进行解压和再压缩,带来额外的时空开销,将是本课题今后需要研究的内容。

参考文献:

[1] 上海庆科信息技术有限公司. EMW3140 Datasheet, Version 2.1[Z]. 2013.

[2] GainSpan Inc. GS1011M_Datasheet_rev_1_6 [Z].2013.

[3] OmniVision Technologies Inc. OV2640 Color CMOS UXGA (2.0 MegaPixel) OmniPixel2 CameraChip Sensor. Version 2.2[Z].2007.

上一篇:计算机网络维护工作及其管理策略探究 下一篇:浅谈场景教学在技工院校《网络综合布线》课程...