相信大家对去年的《OpenEyeTap:基于树莓派的开源AR智能眼镜》这个项目还有印象,同样是基于树莓派、3D打印、摄像头模块,下面要介绍的是功能类似,但DIY门槛大幅降低的灵魂制作版本。
采用体积更大的树莓派3B、更大更容易获得的摄像头模块、超大如充电宝一样的 5000mAh 锂电池,为此,本体已经不再是眼镜,而是——能容纳更多东西的帽子。
这套系统的相机会一直开启,随时拍摄你想记录的内容,但视频录制时间被限定为七秒。
这七秒,对于生活中很多美好的瞬间来说,已经足够了。如果没有它,等你拿出手机时已经稍纵即逝了,如果你热爱记录生活,那就来试试吧,把你喜欢的事物拍摄下来,快手小王子非你莫属!
(P.S. 即便自己没拍到什么,带这么个东西出街也一定能被路人拍到,一炮而红也是可能的呢!)
cameraBack.stl
[174284 Bytes at 2019-07-17, 20 次下载]
batteryHolder.stl
[788984 Bytes at 2019-07-17, 23 次下载]
cameraFront.stl
[635484 Bytes at 2019-07-17, 24 次下载]
raspberryHolder.stl
[591584 Bytes at 2019-07-17, 27 次下载]
FilmThePast-master.zip
[346878 Bytes at 2019-07-17, 17 次下载]
树莓派 3B ×1
USB摄像头 ELP-USBFHD01M ×1
按钮×1
外接电池 5000mAh ×1
需要打印的部件有电池仓、摄像头前后面两面的外壳、树莓派主机仓。
3D 打印文件请在项目文件库中下载。
https://make.quwj.com/project/132
将电池连接到树莓派时,务必等待几分钟,确定树莓派可以正常使用。你每按一次按钮,摄像头将记录七秒的视频。
在手机上下载 FTPManager 应用程序并连接到树莓派的 WiFi。在 FTPManager 中,你可以通过 IP 地址访问树莓派的所有文件,浏览并查找录制好的视频。
如图所示连接好触发摄像头的开关和树莓派。
摄像头可以插入到树莓派的任意一个 USB 端口。
将树莓派设置为热点,可以参考下面这篇教程:
https://www.raspberrypi.org/documentation/configuration/wireless/access-point.md
如果你打算直接将树莓派接入互联网,那么可以不必设置成热点。
1、在树莓派的选项菜单中配置。
2、选择接口选项卡。
3、点选 SSH 的已启用。
4、点击确定。
程序是用 Python 编写的,请先安装所需的库。
import numpy as np
import cv2
import time
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.IN, pull_up_down=GPIO.PUD_UP)
cap = cv2.VideoCapture(0)
fourcc = cv2.VideoWriter_fourcc(*'XVID')
print(cap.get(3)) #width
print(cap.get(4)) #height
print(cap.get(5)) # fps
frameList = []
numberOfSavedFrames = 30*7
i=0
vidNb = 0
while(True):
# Capture frame-by-frame
ret, frame = cap.read()
frameList.append(frame)
if(len(frameList) > numberOfSavedFrames):
# cv2.imshow('frame',frameList[len(frameList)-1])
frameList.pop(0)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
input_state = GPIO.input(18)
if(input_state == False):
out = cv2.VideoWriter('output.avi', fourcc, 30.0, (640, 480))
for frame in frameList:
out.write(frame)
vidNb += 1
i += 1
# When everything done, release the capture
cap.release()
out.release()
cv2.destroyAllWindows()
代码下载地址:
https://github.com/JohanLink/FilmThePast
设置为开机自动运行这个程序文件即可。如何将 Python 脚本设置成开机启动,可以参考这里:
http://shumeipai.nxez.com/2017/05/17/raspberry-pi-service-python-script-start-on-boot.html
大功告成!