移动图像监控系统

去找一些相关开源程序进行移植:百度搜索-linux 移动监控

motion是一套免费开源的移动图像监测程序

前面我们已经使用了很多开源软件,他们的使用方法都是大同小异的

1)、先在当前目录下新建一个子目录

mkdir __install

2)配置

./configure --prefix=/${PWD}/__install --host=arm-linux

出现错误

也就是说我们系统当中没有安装mysql数据库的库文件,所以没有办法使mysql得到支持,处理方法两种:

a、在linux系统中,找到mysql的库,把它安装起来;

b、因为我的这个项目用不上数据库,那么能不能把这个mysql这个支持给去掉呢

vi ./configure ,然后搜索/without,往下找到下面

可以看出该选项是屏蔽掉mysql的支持

出现如下错误

然后还是按照上面去找without的PostgreSQL

3)编译

make

4)安装

make install

结果

这里要强调一点,编译好的motion还需要一个配置文件,这个配置文件位置

先把motion放到根文件系统里面的sbin目录下,然后再复制__install/etc/motion-dist.conf到根文件系统的根目录下面。

下面要对motion-dist.conf文件进行配置

我们的motion的运行会根据这个配置文件进行相应的工作,

运行motion这个程序,

motion -c  /motion-dist.conf 注意-c是指明motion的配置文件在哪儿

使用ps 查看motion进程启动起来了没有

初步能运行motion这个程序,但是还不是很完善!!!!!!!!!!!

当我们监测到移动物体的时候,声音报警子系统得报警,所以需要把motion与声音报警子系统关联起来

关键点就在配置文件里面

当motion监测到有移动物体的时候,它可以去调用相应的程序

当监测到有移动图像的时候就让它去执行madplay这个播放程序

重新启动motion,把原来的motion给kill掉

当有移动物体移动的时候,就会执行刚才那个alarm.mp3文件。

还有一个事情没有做,就是motion不仅不可以抓取到图片,还可以抓取到视频

让motion支持抓取到视频

我们再把motion的配置重新做一次,

下面去配置ffmpeg

创建目录

配置

编译

make

安装

make install

结果

把这些库拷贝到开发板的lib目录下去 cp * .../rootfs/lib/

重新配置编译motion

再对之前的进行make distclean

需要加上ffmpeg的选项,需要把ffmpeg的库路径也带上

然后再编译,编译之前最好把__install里面的东西删除,

然后make

接着安装

make install

最后把__install/bin下的motion复制到开发板sbin里面去

,然后启动开发板执行。

上面的图是把ffmpeg里面的库(包括目录)拷贝到开发板里面去

阶段2-新手上路\项目-移动物体监控系统\Sprint3-移动监控主系统设计与开发的更多相关文章

  1. 移动物体监控系统-sprint3移动监控主系统设计与开发

    一.移动监控的原理 通过获取摄像头图像,比较前后每一帧的图像数据,从而实现移动物体监控.所有移动监控原理都是这样,只是图像帧的对比的算法不一样. 二.移动物体监控系统的实现 选择开源的移动监控软件mo ...

  2. 第5季-小试牛刀-项目开发\阶段2-新手上路\项目-移动物体监控系统\Sprint0-产品设计与规划

    lesson1---产品功能展示 先完成准备阶段,准备阶段要做的事情: a.项目经理选择团队, b.根据项目用户需求以及同类型的实物,制定产品功能列表 c.根据功能的难易程度,制定迭代周期以及在每周期 ...

  3. 阶段2-新手上路\项目-移动物体监控系统\Sprint1-声音报警子系统开发\第1节-Sprint Backlog规划

    根据之前的sprint1-声音报警子系统是相对比较大的一个需求,需要把它进一步细化,然后指定sprint Backlog product Backlog是整个产品的功能列表! sprint Backl ...

  4. 阶段2-新手上路\项目-移动物体监控系统\Sprint4-嵌入式web服务器开发\第3课-CGI程序开发

    实现CGI程序显示一幅图片最核心的功能 把上一节课编写好的led.c程序拷贝过来,并重新命名为image.c 把led的某些部分删除,后如下 那么如何显示一幅图片呢,百度(搜索在html里面去插入图片 ...

  5. 阶段2-新手上路\项目-移动物体监控系统\Sprint2-摄像头子系统开发\第2节-V4L2图像编程接口深度学习

    参考资料: http://www.cnblogs.com/emouse/archive/2013/03/04/2943243.htmlhttp://blog.csdn.net/eastmoon5021 ...

  6. 分布式监控系统Zabbix3.2监控数据库的连接数

    在 分布式监控系统Zabbix3.2跳坑指南 和 分布式监控系统Zabbix3.2给异常添加邮件报警 已经介绍了如何安装以及报警.此篇通过介绍监控数据库的3306端口连接数来了解如何监控其它端口和配置 ...

  7. 初试 Prometheus + Grafana 监控系统搭建并监控 Mysql

    转载自:https://cloud.tencent.com/developer/article/1433280 文章目录1.Prometheus & Grafana 介绍1.1.Prometh ...

  8. 基于视频压缩的实时监控系统-sprint3采集端传输子系统设计

    由于jpg本来就是编码压缩后的格式,所有无需重复编码 传输子系统步骤:(1)初始化:a.socket(初始化tcp连接):b.将事件添加到epoll中 (2)事件处理:接收到网络包.发送完网络包 st ...

  9. day26 分布式监控系统开发

    本节内容 为什么要做监控? 常用监控系统设计讨论 监控系统架构设计 监控表结构设计 为什么要做监控? –熟悉IT监控系统的设计原理 –开发一个简版的类Zabbix监控系统 –掌握自动化开发项目的程序设 ...

随机推荐

  1. HTTPS协议原理透析

    1.HTTPS本身并非协议,而是标准的HTTP协议架在SSL/TLS协议之上的一种结构.(一种不太合适的说法可以认为是两种协议的叠加).HTTP是工作在OSI7层模型的最上层,就是第7层:Applic ...

  2. running a background task over ssh

    原文: Why does running a background task over ssh fail if a pseudo-tty is allocated? 问题: I've recently ...

  3. 51nod 1513 && CF570D

    题意:给定一棵树,每个节点有一个字母.给定若干个询问,询问某个子树内某一深度的节点是否能将这些节点组合成一个回文串.(深度是以根节点为基准的,不是当前子树根.)数据规模10^5. 神犇题解 子树问题, ...

  4. Windows下控制Nginx的状态

    Windows下Nginx的启动.停止等命令 在Windows下使用Nginx,我们需要掌握一些基本的操作命令,比如:启动.停止Nginx服务,重新载入Nginx等,下面我就进行一些简单的介绍.1.启 ...

  5. Selenium-使用firepath识别元素

    利用firepath进行元素识别提前已经安装好firebug和firepath 比如,打开http://www.baidu.com 1.按下F12 2.点击如图的位置 3.选择元素,可以定位出元素的属 ...

  6. ACM学习历程—HDU 5512 Pagodas(数学)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5512 学习菊苣的博客,只粘链接,不粘题目描述了. 题目大意就是给了初始的集合{a, b},然后取集合里 ...

  7. oracle 12c 列式存储 ( In Memory 理论)

    随着Oracle 12c推出了in memory组件,使得Oracle数据库具有了双模式数据存放方式,从而能够实现对混合类型应用的支持:传统的以行形式保存的数据满足OLTP应用:列形式保存的数据满足以 ...

  8. BZOJ5443:[CEOI2018]Lottery

    我对状态空间的理解:https://www.cnblogs.com/AKMer/p/9622590.html 题目传送门:https://www.lydsy.com/JudgeOnline/probl ...

  9. hdu 1724 Ellipse —— 自适应辛普森积分

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1724 函数都给出来了,可以用辛普森积分: 一开始 eps = 1e-8 TLE了,答案只要三位小数,那么 ...

  10. canvas实现平铺

    代码: /** * Created by Administrator on 2016/1/30. */ function draw(id){ var canvas = document.getElem ...