带有 RaspiCam 的 Raspberry Pi 监控和延时摄影摄像机

一、说明

        一段时间以来,我一直想构建一个运动激活且具有延时功能的树莓派相机,但从未真正找到我喜欢的案例。我在thingiverse上找到了这个适合树莓派和相机的好案例。它是为特定的鱼眼相机设计的,但从模型来看,我拥有的廉价中国鱼眼手机镜头之一似乎非常适合孔中。

        我启动了 tinkercad,用我的卡尺测量了相机外壳内的空间和 RaspiCam 板的厚度,并创建了一个模型来安装官方 RaspiCam。我用两小块灯光师胶带将相机固定在支撑件上,将镜头卡入外壳的孔中,然后将相机滑入外壳。你可以在这里找到我的相机部件

        这真的是一个不错的简单项目,任何树莓派和相机外壳都可以使用,您还需要:

  • Raspberry Pi 型号 B 或 B+,2 或 3
  • Raspberry Pi 摄像头板
  • Raspberry Pi 相机电缆
  • 按钮 — 我用过这些
  • 2 根母跳线
  • 手机鱼眼镜头
  • SD卡

二、停止按钮

        我将几根母跳线焊接到一个小的瞬时开关上,用于停止 pi 以进行监控和延时设置。对于延时摄影软件,我使用的是这个 Adafruit 项目中的代码,其中包括停止按钮的代码。

        我已剥离此脚本的延时功能,以便在监控摄像头上使用。因为我希望这两个相机项目在启动时自动启动,所以我选择使用raspbian lite设置两张SD卡,它们会自动启动到监控或延时摄影模式。该按钮连接到 gpio 21 并在 pi 上接地,最后两个引脚位于 USB 端口旁边。

三、运动摄像机软件设置

        由于这个项目不需要桌面操作系统,所以我下载了 Raspbian Jessie Lite 映像,并使用 Ubuntu 中的磁盘映像写入器将其安装在 SD 卡上。

        启动树莓派后,我使用 raspi-config 扩展文件系统,设置键盘、时间和 wifi 的国际化选项,启用相机,超频 CPU 并启用 SSH。

        我做的下一件事是禁用相机 LED,因为我不想让相机指示它已打开。

// Edit the config.txt file sudo nano /boot/config.txt // Add the following line disable_camera_led=1

        apt 的 motion 标准版本不适用于 RaspiCam 模块,但有一个社区支持的版本,该版本已编译用于 RaspiCam。这里有更多关于维基的信息。

        以下是我用于使用最新版本的 Raspbian Jessie Lite 为 RaspiCam 安装自定义运动二进制文件的命令。

// Install the motion prerequisites sudo apt-get install -y libjpeg-dev libavformat56 libavformat-dev libavcodec56 libavcodec-dev libavutil54 libavutil-dev libc6-dev zlib1g-dev libmysqlclient18 libmysqlclient-dev libpq5 libpq-dev // Download and unzip the raspberry pi specific motion binary wget https://www.dropbox.com/s/6ruqgv1h65zufr6/motion-mmal-lowflyerUK-20151114.tar.gz tar -zxvf motion-mmal-lowflyerUK-20151114.tar.gz // Test out the results $ ./motion -c motion-mmalcam-both.conf

        如果您在运行运动后看到终端中记录的成功消息,请将您的 Web 浏览器指向树莓派端口 8081 的 ip,您应该会看到您的相机流。

四、延时摄影相机软件设置

        我从 Adafruit 下载了预构建的 SD 卡映像,我使用 raspi-config 扩展文件系统,设置键盘、时间和 wifi 的国际化选项,超频 CPU 并启用 SSH。

        预制卡可以正常工作,启动 pi 并开始拍摄延时图像,按住开关并关闭 pi。我想构建这个项目的pi zero可穿戴版本,但还没有所有的部件。

一旦我有了一堆图像,我就用 FFMPEG 制作了一个视频

ffmpeg -f image2 -i img%06d.jpg time-lapse.mp4

        这些都是几个不错的树莓派相机项目,不需要很多零件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/266040.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用unittest批量管理Python接口自动化测试用例?

我们日常项目中的接口测试案例肯定不止一个,当案例越来越多时我们如何管理这些批量案例?如何保证案例不重复?如果案例非常多(成百上千,甚至更多)时如何保证案例执行的效率?如何做(批…

大数据讲课笔记1.4 进程管理

文章目录 零、学习目标一、导入新课二、新课讲解(一)进程概述1、基本概念2、三维度看待进程3、引入多道编程模型(1)CPU利用率与进程数关系(2)从三个视角看多进程 4、进程的产生和消亡(1&#xf…

springboot 极简案例

安装idea File -> New Project 选择依赖 创建controller文件 输入controller类名 输入代码 运行项目 访问 localhost:8080/hello/boot package com.example.demo;import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.…

多线程案例-阻塞队列

阻塞队列是什么 阻塞队列是一种特殊的队列.也遵循"先进先出"的原则 阻塞队列能是一种线程安全的数据结构,并且具有以下特性: 当队列满的时候,继续入队列就会阻塞,直到有其他线程从队列中取走元素. 当队列空的时候,继续出队列也会阻塞,直到有其他线程往队列中插入元素…

Tair(2):Tair安装部署

1 安装相关依赖库 yum install -y gcc gcc-c make m4 libtool boost-devel zlib-devel openssl-devel libcurl-devel yum:是yellowdog updater modified 的缩写,Linux中的包管理工具gcc:一开始称为GNU C Compiler,也就是一个C编…

python实现websocket上传音频并测试

WebSocket是一种全双工通信协议,允许在单个TCP连接上进行双向通信。WebSocket协议允许服务器通过将请求头Upgrade设置为WebSocket来升级HTTP连接。这使得WebSocket协议可以在浏览器和服务器之间建立持久连接,能够实现实时数据传输和通信。 WebSocket协议…

【Spring教程23】Spring框架实战:从零开始学习SpringMVC 之 SpringMVC简介与SpringMVC概述

目录 1,SpringMVC简介2、SpringMVC概述 欢迎大家回到《Java教程之Spring30天快速入门》,本教程所有示例均基于Maven实现,如果您对Maven还很陌生,请移步本人的博文《如何在windows11下安装Maven并配置以及 IDEA配置Maven环境》&…

WebRTC AEC回声消除算法拆解

WebRTC AEC算法流程分析——时延估计(一) 其实,网上有很多类似资料,各个大厂研发不同应用场景设备的音频工程师基本都对其进行了拆解,有些闪烁其词,有些却很深奥,笔者随着对WebRTC了解的深入&a…

openGauss学习笔记-152 openGauss 数据库运维-备份与恢复-物理备份与恢复之PITR恢复

文章目录 openGauss学习笔记-152 openGauss 数据库运维-备份与恢复-物理备份与恢复之PITR恢复152.1 背景信息152.2 前提条件152.3 PITR恢复流程152.4 recovery.conf文件配置**152.4.1 归档恢复配置****152.4.2 恢复目标设置** openGauss学习笔记-152 openGauss 数据库运维-备份…

最大上升子序列和

欢迎大家到我的博客浏览&#xff0c;请点击 YinKai s Blog。 题目&#xff1a;最大上升子序列和 一个数的序列 bi&#xff0c;当 b1<b2<…<bS 的时候&#xff0c;我们称这个序列是上升的。 对于给定的一个序列(a1,a2,…,aN)&#xff0c;我们可以得到一些上升的子序列…

CLIP在Github上的使用教程

CLIP的github链接&#xff1a;https://github.com/openai/CLIP CLIP Blog&#xff0c;Paper&#xff0c;Model Card&#xff0c;Colab CLIP&#xff08;对比语言-图像预训练&#xff09;是一个在各种&#xff08;图像、文本&#xff09;对上进行训练的神经网络。可以用自然语…

【快速应用开发】看看RedwoodJS

自我介绍 做一个简单介绍&#xff0c;酒架年近48 &#xff0c;有20多年IT工作经历&#xff0c;目前在一家500强做企业架构&#xff0e;因为工作需要&#xff0c;另外也因为兴趣涉猎比较广&#xff0c;为了自己学习建立了三个博客&#xff0c;分别是【全球IT瞭望】&#xff0c;【…