开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码
本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载。
开源倾情奉献系列链接
- 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码
- 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(二)基础类库介绍
- 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(三)命令行工具集
- 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(四)服务端介绍
- 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(五)客户端介绍
这是什么系统?
OptimalVision(OV)网络视频监控系统(Video Surveillance System),是一套基于.NET、C#、WCF、WPF等技术构建的IP网络视频监控系统。设计与实现该系统的初衷是希望在家用电脑中部署该系统,连接本地或局域网设备,通过浏览器或手机客户端浏览宝宝实时视频,也就是俗称的“宝宝在线”或“家庭看护”。
详情参考博文《基于.NET打造IP智能网络视频监控系统》。

更多系统截图请参考博文《基于.NET打造IP智能网络视频监控系统》。
为什么开源?
由于业余时间总是有限,完成系统中的服务、配置、采集、传输和桌面GUI部分后,继续完成后续移动客户端的动力与兴趣明显减弱,尤其是宝宝出生后的很长一段时间内基本没有进展,逐渐地演变为演练和测试所关注技术和模式的实验性项目。
总结了几点开放源代码的原因:
- 社区分享。独乐乐不如众乐乐,孤独腐朽的代码没有意义,与社区分享和探讨也是一种乐趣。
- 精力有限。利用业余时间构建,挤占的是陪家人和孩子的时间,要不也不会积累了三年。
- 知识积累。据说自己查看六个月前写的代码,如果感觉需要改进,则就成长了。
- 拓展视野。个人的视角总是短视,接受更多人的批评与指正,可以促进学习和拓展视野。
代码在哪里?
代码托管在 GitHub 网站,所有代码基于 Microsoft .NET Framework 4.0 编译。
代码目录结构
下面是源代码目录结构:
- assets - 系统使用到的资源,例如图片等
- bin - 系统编译输出目录
- Debug - Debug模式输出目录
- build - 编译系统脚本
- docs - 系统设计和文档
- lib - 系统引用的类库
- src - 系统代码
- Crust - MVVM模式框架(改编自 MVVM Light Toolkit)
- Foundation - 系统基础类库(参考《开源倾情奉献:基于.NET打造IP智能网络视频监控系统(二)基础类库介绍》)
- Knifer - 命令行工具集(参考《开源倾情奉献:基于.NET打造IP智能网络视频监控系统(三)命令行工具集》)
- Rukbat - 视频监控系统代码
- Common - 前端和后端通用代码
- Service - WCF服务代码(参考《开源倾情奉献:基于.NET打造IP智能网络视频监控系统(四)服务端介绍》)
- GUI - WPF客户端代码(参考《开源倾情奉献:基于.NET打造IP智能网络视频监控系统(五)客户端介绍》)
- tests- 各种测试
- tools - 各种工具,例如清理编译目录脚本等
参考了哪些类库?
下面罗列了系统所学习、引用、参考、改编、摘抄的开源类库的不完全列表。
- AForge.NET
- Accord.NET
- NAudio
- nVLC
- Speex
- C# WebServer
- FFmpeg
- FFmpeg.NET
- Flowplayer
- iSpy
- ZoneMinder
- ONVIF Device Manager
- Google GData
- GMap.NET
- Json.NET
- Dynamic Json
- Hammock
- AutoMapper
- SocialKit / LightRest
- Microsoft Enterprise Library
- Microsoft Unity
- System.Data.SQLite
- RavenDB
- RaptorDB
- MongoDB
- MongoDB C# Driver
- Windows Presentation Foundation (WPF)
- MVVM Light Toolkit
- Caliburn.Micro
- MEFedMVVM
- MVVM Foundation
- Phoenix MVVM
- WPF MediaKit
- WPF Multiple Document Interface (MDI)
- MDI Container for WPF
- AvalonDock
- WPF Google Map Control
- WPFSpark
- WPF 3DTools
- Odyssey WPF Controls
- Extended WPF Toolkit™ Community Edition
- Calendar Control in WPF
- patterns & practices: Prism
- Facebook Developer Toolkit
- Microsoft Health Common User Interface (CUI)
- Mahapps.Metroa UI Toolkit for WPF
- Spark View Engine
- ReactiveUI
- CommonServiceLocator
- Ninject
- StructureMap
- NetMQ
- FunnelWeb
- Quartz.NET
- Task Scheduler Engine
- SuperSocket
- CommonLibrary.NET
- NSubstitute
GitHub 本周上榜,感谢各位朋友的支持。

本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载。
开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码的更多相关文章
- 基于.NET打造IP智能网络视频监控系统
开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码 开源倾情奉献系列链接 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码 开源倾情奉献:基于.NET打造 ...
- 【实践】如何利用tensorflow的object_detection api开源框架训练基于自己数据集的模型(Windows10系统)
如何利用tensorflow的object_detection api开源框架训练基于自己数据集的模型(Windows10系统) 一.环境配置 1. Python3.7.x(注:我用的是3.7.3.安 ...
- EasySwoole+ElasticSearch打造 高性能 小视频服务系统
EasySwoole+ElasticSearch打造高性能小视频服务 第1章 课程概述 第2章 EasySwoole框架快速上手 第3章 性能测试 第4章 玩转高性能消息队列服务 第5章 小视频服务平 ...
- 嵌入式应用开发第四阶段-基于rk3399的视频监控系统
一.需求分析 伴随着嵌入式技术.图像处理技术和无线网络传输技术的发展,传统模拟视频监控系统和基于PC的远程视频监控系统由于自身的不足,已经无法满足现代社会应用中不断涌现出来的新需求,于是基于嵌入式技术 ...
- 开源视频监控系统:iSpy
iSpy是一个开源的视频监控软件,目前已经支持中文.自己用了一下,感觉还是很好用的.翻译了一下它的介绍. iSpy将PC变成一个完整的安全和监控系统 iSpy使用您的摄像头和麦克风来检测和记录声音或运 ...
- 优秀开源项目之一:视频监控系统iSpy
iSpy是一个开源的视频监控软件,目前已经支持中文.自己用了一下,感觉还是很好用的.翻译了一下它的介绍. iSpy将PC变成一个完整的安全和监控系统 iSpy使用您的摄像头和麦克风来检测和记录声音或运 ...
- 基于Android的远程视频监控系统(含源码)
基本过程是android作为socket客户端将采集到的每一帧图像数据发送出去,PC作为服务器接收并显示每一帧图像实现远程监控.图片如下(后来PC端加了个拍照功能)... (PS.刚学android和 ...
- 基于 HTML5 WebGL 的低碳工业园区监控系统
前言 低碳工业园区的建设与推广是我国推进工业低碳转型的重要举措,低碳工业园区能源与碳排放管控平台是低碳工业园区建设的关键环节.如何对园区内的企业的能源量进行采集.计量.碳排放核算,如何对能源消耗和碳排 ...
- Qt编写视频监控画面分割界面(开源)
其实qt应用在安防领域还是蛮多的,尤其是视频监控系统,但是网上几乎没有看到qt做的最基础的视频监控画面分割的demo,今天特意花几分钟提取出来,开源放出来.欢迎大家多多点赞!源码下载:点击打开链接 运 ...
随机推荐
- C# 反转字符串
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 实现字符 ...
- Linux 下curl模拟Http 的get or post请求
一.get请求 curl "http://www.baidu.com" 如果这里的URL指向的是一个文件或者一幅图都可以直接下载到本地 curl -i "http:// ...
- System.Security.SecurityException The source was not found, but some or all event logs could not be searched.Inaccessible logs Security.
An exception occurred during the Install phase. System.Security.SecurityException The source was not ...
- 【转】简易smtp调用类
用PHP发邮件的一个类,无需验证SMTP主机,类代码你可以不用管,只要按照后面的使用方法操作就行,这个类要先保存成一个php文件,文件名就叫smtp.php吧,下面是该文件代码: <?php c ...
- 解决php中json_decode的异常JSON_ERROR_CTRL_CHAR
该字符中含了ASCII码ETB控制符,即\x17导致json解析失败 (截图中显示ETB是因为用了Sublime text2) 解决方法如下:去掉0-31的控制符再进行decode $result = ...
- java JFrame修改左上角的图片
直接案例:
- 基音周期提取2-基于线性相关系数的Matlab实现
基音周期提取2-基于线性相关系数的Matlab实现 基音周期提取结果 图1 基音提取结果 算法说明 线性相关系数 也称"皮尔逊积矩相关系数"(Pearson product-mom ...
- Spring 学习笔记 8. 尚硅谷_佟刚_Spring_使用外部属性文件
1,配置数据源 (1)添加驱动 (2)编写spring配置文件 <bean id="dataSource" class="org.springframework.j ...
- SqlIO优化
1SqlIO优化 set statistics io on--sqlset statistics io off 2Sql占用CPU时间 select c.total_worker_time, c.la ...
- 基于VC的ACM音频编程接口压缩Wave音频(一)
(一)概述 音频数据一般都具有较高的采样率,经过压缩的原始数据才具有实用价值,否则不仅要占用大量存储空间而且在播放或进行网络传输时效率也是非常低下的,所以音频数字压缩编码在多媒体应用中有着广泛而又重要 ...