tag 标签: 网络摄像机

相关博文
  • 热度 5
    2023-10-19 11:13
    1785 次阅读|
    0 个评论
    DS-7108N是海康威视自主研发的业界首款集NVR(Net Video Recorder)与无线路由器于一身的无线路由NVR,它不仅具有传统NVR的所有功能,还加入了路由模块,可以替代无线路由器工作。设备运行低噪环保,更加贴心。自带硬盘,无需拆装硬盘,开机即可使用,更加便捷。广泛应用于家庭、商铺及各行业的安全防范。 本次我们拆开来看看这款2018年的产品都使用了哪些物料。 可以看出底部使用的都是金属外壳,说明这个产品的散热量还是挺大的; 两侧也是密集的散热孔; 从外部接口来看,该设备使用12V供电,支持VGA和HDMI接口屏幕显示,有一个双口USB和网口; 通过拆卸下四脚的螺丝就可以将上壳拿下: 打开后可以看到整体的布局是一个主控板以及一个4TB的机械硬盘; skyhawk其实就是希捷以前监控硬盘的型号,这种硬盘有两个值得一提的亮点,一种是立即待命,还有一种是rv传感,能够有效的保证数据存储,数据方面可靠又稳定,与此同时这种监控硬盘还有很好的抗氧化能力,它能够很好的应对比较恶劣的环境。 上壳上没有特殊的结构,LED灯光的像是通过结构进行分割,然后通过导光柱进行显示; 接下来就来看看板卡上的用料: 板卡采用的是多层板设计,背面基本上没有什么物料; 网络变压器使用的是HST-0041SAR SOP16封装; 内存使用的是海力士的h5tq2g63gfr,DDR3内存,2G容量; 机械硬盘的供电使用 可调直流稳压器件1117; Flash使用的是W25Q128JVSQ, (128M位)串行闪存为空间、引脚和电源有限的系统提供存储解决方案,非常适合内存代码屏蔽,直接从双通道/四通道SPI (XIP)执行代码,以及存储语音、文本和数据。该器件采用2.7V至3.6V单电源供电,关断时功耗低至1pA。 稳压部分大量使用了 DC-DC降压IC芯片TPS562208, 一款采用SOT-23封装的简单易用型2A同步降压转换器,它被优化为使用尽可能少的外部组件即可运行,并且可以实现低待机电流。 主控芯片隐藏在这个大大的散热片下面,使用了24MHz的高速外部晶振和定时用的32.768kHz的晶振,使用了外部纽扣电池进行备点来保证时间运行的准确性。 这款网络摄像机目前市场上还在售,说明还是能打的,不过随着社会的发展,更多高性能的产品出来了,随着功能需求的不断增加,这个产品也只有被替换的命运了。
  • 热度 19
    2014-10-22 10:32
    941 次阅读|
    0 个评论
    1 系统硬件组成与网络架构 摄像机硬件核心采用三星公司推出的基于ARM9架构的S3C2440A芯片,该处理器主频达到400 MHz可以满足实时压缩,MJPEG视频流可以达到320×240分辨率25 fps的性能要求。外围搭配64 MB SDRAM、256 MB NAND Flash,网络功能由DM9000以太网MAC控制芯片负责,摄像头模块由USB控制器控制,系统供电由3片LM71117组成,分别输出3.3 V、1.8 V、1.25 V电压,辅助外围接口构成摄像机硬件结构。S3C2440A系统硬件框图如图1所示。 图1 S3C2440A系统硬件框图 网络摄像机是互联网上的TCP/IP设备,系统网络拓扑图如图2所示。其中在家庭区域内根据安防的特点在大门走廊、客厅内、阳台区域分别布置摄像机,再由网线连接到路由器,配置路由器参数映射每个摄像机独立端口与IP地址,即完成Internet接入。远端由固定位置的PC机,移动位置的3G笔记本和随身携带的3G Android手机组成,PC机可以通过WEB浏览器访问与控制网络摄像机,Android手机通过客户端实现实时访问。 图2 系统网络拓扑图 2 系统软件设计 2.1 网络摄像机软件设计 搭建摄像机需要Linux系统环境,首先移植Bootloader,对Linux 2.6.32内核进行裁剪,加载Linux UVC(USB video device class)驱动及相关驱动,将编译好的Linux系统镜像烧写到ARM板Nand Flash中,对Bootloader设置启动引导地址,即完成软件运行环境搭建。 分析网络摄像机性能需求与拓展性,须满足下列条件:   ◆ 视频监控实时性;   ◆ 支持多客户端同时连接;   ◆ 图像识别算法或预留接口;   ◆ 功能模块化满足后期开发可扩展。 因此,采用多线程架构与互斥锁机制来保证实时性、模块化的思想设计代码结构。软件程序主流程如图3所示。 图3 软件程序主流程 其中主要实现如下功能。 ① 初始化Linux V4L2接口,必须按照V4L2标准结构初始化结构体,其中包括struct v4l2_capability cap;struct v4l2_format fmt;struct v4l2_buffer buf;struct v4l2_requestbuffers rb; struct v4l2_streamparm setfps。此外将视频设备名、视频宽度、视频高度、帧率、视频格式和抓取方法传递给函数init_videoIn(struct vdIn *vd, char *device, int width, int height, int fps, int format, int grabmethod)实现初始化。值得注意的是众多USB camera并不支持JPEG格式视频流直接抓取,针对YUYV格式抓取却有广泛支持。后期进行图像识别算法操作时直接分析YUYV原始图像数据,将节省JPEG压缩数据转换为原始图像数据的大量运算开销,因此采用YUYV抓取模式。 ② 创建核心图像处理线程。在该线程内实现:抓取功能。   ◆ UVC设备单帧抓取,uvcGrab(struct vdIn *vd)函数实现单帧YUYV格式的原始图像拷贝到内存,采用高效的mmap内存映射方法读取;   ◆ JPEG核心算法实现,JPEG压缩算法占用大量CPU时间,下一小节将详细讨论。 ③ 创建套接字接口。为实现多用户同时连接网络摄像机,必须采用socket服务线程,每当有新用户连接同时产生一个新线程与之对应,实现多用户端同步监控。 ④ 搭建基于Web浏览器访问方式的web主页。嵌入式设备资源有限,轻量级的Web Server主要有:Boa、Httpd、Thttpd等。本设计选用开源的Boa、交叉编译Boa源码配置boa.conf文件,配置系统etc自启动shell加入Boa程序,将编写HTML页面文件放入系统中对应的www目录后即可正常工作。 2.2 MJPEG压缩算法研究与实现 MJPEG(Motion Joint Photographic Experts Group)视频编码格式,把运动的视频序列作为连续的静止图像来处理,这种压缩方式单独完整地压缩每一帧,编辑过程中可随机存储每一帧,可进行精确到帧的编辑。 MJPEG单帧压缩算法为JPEG(Joint Photographic Experts Group)。 人眼视觉生理特性决定眼睛对构成图像的不同频率成分具有不同的敏感度。JPEG压缩是有损压缩 ,但损失的部分是人类视觉不容易察觉到的部分,利用眼睛对色彩域中的高频信息部分不敏感的特点,节省大量需要处理的数据信息。一帧原始图像数据对其进行JPEG算法编码过程分两大部分: ① 空间冗余度,去除视觉上的多余信息; ② 结构(静态)冗余度,去除数据本身的多余信息。 JPEG编码中主要涉及包括:DCT、zigzag编码、量化、RLE编码、范式Huffman编码、DC(直流分量)的编码。JPEG编码流程如图4所示。 图4 JPEG编码流程 DCT(Discrete Cosine Transform)变换,又称离散余弦变换是可逆的、离散的正交变换。它将原始图像色彩空间域转换为频谱域。由于相邻两点像素色彩很多是接近的,压缩这些不需要的数据必须利用图像信号的频谱特性。JPEG压缩原理的理论依据是图像信号频谱线大都分布在0~6 MHz范围内,而且一幅图像内大多数为低频频谱线,而高频的谱线只占图像比例很低的图像边缘或者细微纹理细节的信号时才出现。根据这一特性,在做数字图像处理时对包含信息量大的低频谱区域分配较多的比特数,相反的对于包含信息量低的高频谱区域分配较少的比特数,达到图像压缩的目的,而图像质量并没有肉眼可察觉的降低。除了DCT变换,常用的变化算法还有:WalshHadamard沃尔什哈达玛变换、哈尔变换、傅氏变换等。 DCT变换公式为: 时C(u)=1,C(v)=1.f(i,j)经过DCT变换之后,F(0,0)是直流系数,其他参数时为交流系数。经过DCT变换后一幅图像的DCT系数块集中在8×8矩阵的左上方,这里直流DC系数幅度最大,这一矩阵区域集中了图像的大部分低频频谱分量,离矩阵左上角越远的高频频谱几乎不含图像信息。变换过程本身虽然并不产生压缩作用,但是变换后的频率系数却非常有利于码率压缩。 量化是对DCT系数的一个优化过程,利用了肉眼的高频不敏感特性对数据进行大幅压缩。整个过程是简易的把频率域的每个成份除以对应的常数,并对结果四舍五入取整,整个流程的目的是减少非零的系数以及增加零值系数数目。量化是有损运算,是图像质量下降的主要因素。对于人眼对亮度与色差的敏感性不一致,分别使用亮度量化表与色度量化表。对量化后的数据采用zigzag蛇形编码,这是因为交流分量中含有大量的零值,zigzag编码可以产生更多连续的零值,对下一步使用行程编码非常有利。 行程编码(Run Length Coding)是一种根据相同数据连续重复多次的情况简化表示的算法。例如,5555333333999按照行程编码表示为(5,4)(3,6)(9,3)可以对数据,尤其是大量的零值压缩数据长度。 编码后的数据还须通过Huffman编码来压缩,Huffman编码的最大特点是使出现频率较高的数字小于8位,而出现频率低的数字大于8位,这使得数据大幅压缩。 到此数据的压缩过程结束,对压缩后的数据按照JPEG文件格式要求进行保存,加上文件开始标记Start Of Image=FFD8,文件结束标记End Of Image = FFD9,量化表标记Define Quantization Table=FFDB,霍夫曼编码表标记Ddfine Huffman Table=FFC4,帧开始标记Start Of Frame=FFC0等标记,再加上图片识别信息字节标记就最终形成完整的可用于传输或存储的JPEG帧图像,通过套接字接口不间断地发送JPEG图像即形成MJPEG视频流。 为提高CPU效率,减少进程间切换产生的开销,将压缩算法函数集成到单一线程里。JPEG核心压缩编码函数MCUcode实现如下:   uint8_t *MCUcode(S_JPEG_ENCODER_STRUCTURE * enc,uint32_t image_format, uint8_t * output_ptr) {   DCT(enc﹥Y1);//DCT离散余弦变换函数   quantization(enc,enc﹥Y1, enc﹥ILqt);//量化函数,亮度量化表量化并按照zigzag排列存储   output_ptr = huffman(enc, COMPONENT_Y, output_ptr);//霍夫曼编码函数   DCT(enc﹥Y2)……   DCT(enc﹥Y3)……   DCT(enc﹥Y4)……   DCT(enc﹥CB);//DCT离散余弦变换函数   quantization(enc,enc﹥CB, enc﹥ICqt);//量化函数,色度量化表量化   output_ptr=huffman(enc, COMPONENT_CB, output_ptr);//色度霍夫曼编码函数   DCT(enc﹥CR)……   return output_ptr;   }   其中Y1、Y2、Y3、Y4对应水平排列的4像素亮度值,CB、CR是水平排列以2像素为1单位像素的色度值。 3 Android客户端设计 Android是Google公司推出的针对移动设备的操作系统,底层采用Linux内核,应用程序采用类Java语言编写,并运行于类JVM虚拟机的Dalvik虚拟机之上。该系统具有开放源码免费授权的优势,功能完善和成熟,已获得厂商的广泛支持和大量市场份额。eclipse IDE开发环境友善,因此选用Android系统作为物联网摄像机客户端开发平台。 Android程序一般由多个Activity、Intent、Content Provider、Service等程序框架组成,其中最基础的是Activity活动类,该类相当于软件运行时的一个页面,在页面之上可添加各种控件,如button按键、ImageView图片、Text boxes、Lists列表等。除此以外还负责监听系统事件,负责启动其他的Activity类。在多个Activity类之间跳转就需要用到Intent类,Intent类有两个重要部分:动作和动作对应的数据。常用的动作有MAIN、VIEW、PICK、EDIT等,动作数据则以URI形式表示。通过Intent类还能传递参数,作用类似链条串起Activity类,Activity类跳转图如图5所示。 图5 Activity类跳转图 解析视频流须先由网络获取数据流,实现的方法代码如下:   public static VideoInputStream read(String url) {   HttpResponse res;   DefaultHttpClient httpclient=new DefaultHttpClient();//http客户端   try {   resource=httpclient.execute(new HttpGet(URI.create(url)));   return new VideoInputStream(resource.getEntity()。getContent());   ……   }}//从响应中获取消息实体内容   对已获取的数据流按照JPEG标准文件头分段,实现的方法代码如下:   public Bitmap readFrame() throws IOException {   mark(FRAME_MAX_LENGTH);//在数据流中设置标记,调用mark方法   int headerLength=getStart(this, START_MARKER);//计算文件头长度   reset();//reset方法重置数据流指向最后一个标志位置   byte ;   readFully(header);   try {   ContentLength=countContentLength(header);//计算数据内容长度   }   catch (NumberFormatException nfe) {   ContentLength=getEnd(this, END_MARKER);   }   byte ;//存取帧字节数据   skipBytes(headerLength);//跳过文件头字节   readFully(frameData);   return BitmapFactory.decodeStream(new ByteArrayInputStream(frameData));   } 需要注意的是,在AndroidManifest.xml文件中需加上语句,表示程序拥有网络的完整访问权限。获取每帧数据后继承Android SDK中提供的view.SurfaceView类与graphics.Canvas类,将收到的完整帧图像按队列顺序不间断地显示在视窗框架类中,对人眼视觉帧率超过5 fps时即有视频效果,到25 fps即是电影流畅度。对于定点定位监控,经过测试出于节省带宽费用考虑设定5 fps即能满足基本需求,10 fps是较为合理参数。将编译后应用程序安装到手机中,Android实时监控截图如图6所示。 图6 Android实时监控截图 结语 本文描述了网络摄像机的软件设计与MJPEG算法原理,结合Android移动技术,开发了整套系统;并实际应用于验证系统,取得了良好结果。期望在后续工作中涉足图像识别算法、物体追踪算法、人体行为侦测算法等图像领域,使网络摄像机变得更智能。
  • 热度 22
    2014-2-28 13:47
    2443 次阅读|
    0 个评论
    智能高清网络摄像机   面向物联网,提供丰富物联网参数检测及相应控制 如温湿度,CO2浓度,SO2浓度,负氧离子浓度,烟雾等多种测量子卡接入。支持远程电子锁门,电控喷水等   面向个人监控,提供P2P网络穿透与可视电话 实现与智能手机联动,智能手机可随时随地浏览家庭商铺等图像,家庭商铺报警实时推送到手机。   面向煤矿、金属开采矿井等,提供头盔式安全生产监控 头盔式高清摄像机,集成图像监控与瓦斯检测,及安全报警。服务安全生产。   面向石化工厂等,提供安全生产图像及参数现场监测、报警与控制 采集现场高清图像,监测生产现场温度、湿度、化工生产气体浓度等。   面向公共安防 提供联网及直播图像,存储,回放等。   支持所有基于TCP/IP网络穿透,智能手机可与摄像机双向高清音视频流视听。 提供广泛物联网接入。   拥有知识产权的自研大规模组网全套方案:高清摄像机,模拟高清与网络图像传输盒,集中管理平台,NVR,智能手机软件。   用户也可订制解决方案及设备。   主要参数: 1080P25,1080P30,1080P60,也支持720P120适合高速运动场合。 AWB/AE/AF,高质量ISP处理。 可选宽动态WDR,支持高达120dB场合环境。 支持多灯红外,双玻璃片IR-CUT。 H.264 HP Level5.2压缩。 支持10/100/1000M以太网接入。 四路独立码流。 支持RCA高清模拟图像输出。 RS485口,可接各种云台。 可选WIFI,3G/4G模组,USB/PCIe盘。 SD卡存储。 双向音频对讲。 沟通交流:Tel  1337606-7858,hdipcam@sina.com,QQ  382882302
  • 热度 18
    2012-5-25 15:43
    1796 次阅读|
    4 个评论
    国内安防市场风风雨雨已经十几年了,目前正处于从模拟到数字化,高清化和网络化过渡中,各种安防产品琳琳总总,不胜枚举。但无论如何,充其量仍然是面向公共领域的安防,比如小区安防,大楼安防,平安城市等,本质上属于公共安防。虽然彩信防盗器和市面源于台系的3G摄像头等具有部分个人安防特点,但不能与功能完善日渐完善的公共安防产品相比拟。   对于市场出现的个人家用车载等安防需求,业者往往用公共安防来替代,比如向个人消费者推荐网络摄像机,红外幕墙等,不可否认,这些公共安防产品具有部分个人安防需要的功能,但不能完备的满足个人安防需求。   个人安防与公共安防起码在以下几个方面有着重要的区别:   个人安防场合的隐私性。个人安防的场合,无论家庭,私车,商铺,个人办公室等都存在隐私性要求,依赖于公共平台的传输存储图像的安防产品,除非蒙骗消费者,一般而言,消费者难以接受。网络摄像机无论如何改头换面,都清洗不掉其依赖于公共平台的特点,即使不论其所谓自带域名,本质上由花生壳等服务器转发,而带来的图像不稳定、效果差。 个人安防产品的易用性和方便性。个人安防设备面对的是广大一般消费者,没有保安等专业从业人员监控平台,设备的方便易用是必需的。不能指望消费者到哪,都随身携带电脑,平板等,不能指望消费者熟练操作各种新鲜电子产品。这一点和基于集中平台的公共安防差距甚大。那种指望几种特定型号的智能手机平台,装网络播放器等软件的方式,只能是欺骗消费者,手机的更新太快了,使用寿命往往也很短。 个人安防的即时主动性。人人希望家里警情即时知道与处理。这要求,在盗窃等案发时刻,用户需要即时知道现场情况。而一般公共安防产品,基本上都是录像,为事后提供破案证据而已,“马后炮”性质明显。事后依赖警察,不如案发进行中自己即时知道与处理。网络摄像机即使吹得再神,也无法做到这一点。总不能指望用户手机时时刻刻在浏览图像,从而有下发消息的机会吧。 个人安防仍然需要高清晰的录像,作为证据。这一点在市面的3G摄像头等产品中荡然无存,或者说,基本上不能作为证据。   个人安防市场毋庸多言,容量巨大,也是安防的下一个发展方向,虽然不敢结论个人安防是安防的归宿。就社会需要而言,个人安防肯定是社会必需的趋势。   
  • 热度 16
    2012-5-24 16:24
    1398 次阅读|
    1 个评论
    国内安防市场风风雨雨已经十几年了,目前正处于从模拟到数字化,高清化和网络化过渡中,各种安防产品琳琳总总,不胜枚举。但无论如何,充其量仍然是面向公共领域的安防,比如小区安防,大楼安防,平安城市等,本质上属于公共安防。虽然彩信防盗器和市面源于台系的3G摄像头等具有部分个人安防特点,但不能与功能完善日渐完善的公共安防产品相比拟。 对于市场出现的个人家用车载等安防需求,业者往往用公共安防来替代,比如向个人消费者推荐网络摄像机,红外幕墙等,不可否认,这些公共安防产品具有部分个人安防需要的功能,但不能完备的满足个人安防需求。 个人安防与公共安防起码在以下几个方面有着重要的区别: 个人安防场合的隐私性。个人安防的场合,无论家庭,私车,商铺,个人办公室等都存在隐私性要求,依赖于公共平台的传输存储图像的安防产品,除非蒙骗消费者,一般而言,消费者难以接受。网络摄像机无论如何改头换面,都清洗不掉其依赖于公共平台的特点,即使不论其所谓自带域名,本质上由花生壳等服务器转发,而带来的图像不稳定、效果差。 个人安防产品的易用性和方便性。个人安防设备面对的是广大一般消费者,没有保安等专业从业人员监控平台,设备的方便易用是必需的。不能指望消费者到哪,都随身携带电脑,平板等,不能指望消费者熟练操作各种新鲜电子产品。这一点和基于集中平台的公共安防差距甚大。那种指望几种特定型号的智能手机平台,装网络播放器等软件的方式,只能是欺骗消费者,手机的更新太快了,使用寿命往往也很短。 个人安防的即时主动性。人人希望家里警情即时知道与处理。这要求,在盗窃等案发时刻,用户需要即时知道现场情况。而一般公共安防产品,基本上都是录像,为事后提供破案证据而已,“马后炮”性质明显。事后依赖警察,不如案发进行中自己即时知道与处理。网络摄像机即使吹得再神,也无法做到这一点。总不能指望用户手机时时刻刻在浏览图像,从而有下发消息的机会吧。 个人安防仍然需要高清晰的录像,作为证据。这一点在市面的3G摄像头等产品中荡然无存,或者说,基本上不能作为证据。 个人安防市场毋庸多言,容量巨大,也是安防的下一个发展方向,虽然不敢结论个人安防是安防的归宿。就社会需要而言,个人安防肯定是社会必需的趋势。
相关资源