查看: 4067|回复: 1

[项目] 甲虫相机---树莓派晚上可以用来做什么?

[复制链接]
  • TA的每日心情
    开心
    2015-7-14 09:10
  • 签到天数: 9 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2017-11-21 14:01:36 | 显示全部楼层 |阅读模式
    分享到:
    树莓派是一种十分有用的小计算机。我有好几个呢,因为我会把它用到我的白天的工作中,我想是时候用一个在晚上了。
    我也很喜欢养热带昆虫,特别是甲虫。这些可不是你家花园里那些甲虫,除非你刚好生活在雨林。我现在手上的这些是象甲虫,它们来自美洲中南部。下面放照:

    7cc829d3gw1f06diols12j20vo0nr0zc.jpg

    这只是雄性的象甲虫,香蕉用来做参照。
    这些昆虫通常是夜行的。在白天它们通常喜欢在垫草(苔藓)下面挖洞,或者挂在树杈上。但到了晚上,它们就变得十分活跃。我之所以知道这一点,是因为
    当我早上起来,我发现它们箱子里的树枝都被重新排列了。
    现在来说说我的树莓派项目,我想用树莓派的摄像头来做一部网络相机,也想做一些延时摄影的视频,因为我真的不想盯着屏幕12小时来看看这些小家伙都在晚上干了点啥。于是就有了Beetlecam(甲虫相机)这个项目,它会时不时在这里进行直播。默认情况下,Beetlecam会每30秒拍一张照片,也可以根据给定的时长生成延时影片。下面是经过24小时拍摄的镜头压缩到20分钟左右的视频。
    在这篇文章里我将告诉你如何用你的树莓派来组装并运行一个Beetlecam。

    Beetlecam 硬件
    要运行一个Beetlecam,你需要下面3样东西:
    • 一个树莓派(任何型号,除了树莓派 zero,因为它不支持摄像头)
    • 一个树莓派摄像头
    • 一箱子热带昆虫
    或许你没有第三项,别担心,它可以用到任何你想要延时摄影的地方。
    一个常规的树莓派摄像头就够了,但我用的是红外线版,因为它可以在全黑的情况下进行拍摄。如果你要拍的对象是在夜间活动的,那么红外线版本就必不可少了。下面是我的小派和摄像头(注意摄像头左右各有一个红外LED)。
    7cc829d3gw1f06dipxdk4j20vo0nrwif.jpg
    树莓派外接红外摄像头

    安装树莓派十分简单,我用了魔术贴来把它粘在箱子上面,也方便移动位置。下面是安装好的:
    7cc829d3gw1f06direc0kj20vo0nr770.jpg
    安装好的树莓派和红外摄像头

    Beetlecam 软件
    Beetlecam软件分为两部分,一部分是一个web应用,用来展示最后拍下的图像,另一部分是一个脚本每隔一段时间就拍一张照片然后上传。这两部分都在Beetlecam repository.
    要运行Beetlecam,你还需要一些额外的类库。你可以用树莓派桌面上的terminal(终端)应用来安装它们,或者用SSH/Dataplicity来远程连接到树莓派上。不管你用哪种,运行下面的命令:
    1. sudo apt-get update
    2. sudo apt-get install python-dev python-pip python-lxml libjpeg-dev
    3. sudo pip install moya picamera
    复制代码
    这可能要花一些时间,来杯咖啡吧。
    当上面的命令都完成,你就能运行这个命令了moya -v
    下一步是从Github上获取Beetlecam的源码,通过以下命令获取:
    1. sudo apt-get install git
    2. git clone https://github.com/moyaproject/beetlecam.git
    复制代码
    这个命令会在你当前路径下创建一个beetlecam文件夹,并用cd beetlecamcd到这个目录下。
    在这个目录里,你应该可以找到一个叫做beetlecam.py的Python文件。这是一个周期性拍照并上传照片的脚本。这个Python代码所做的是拍摄照片并发送POST请求给web应用。当你在一个网页上填表单时,浏览器就会发出一个POST请求。Beetlecam所做的,就是给这个表单填数据。
    通过下面命令运行 beetlecam.py:
    1. python beetlecam.py run -r 30
    复制代码
    你将会看到命令行有错误提示,那是因为我们还没有运行Beetlecam的web应用部分。
    要运行web应用,需要打开一个新的Terminal(终端)窗口,或者SSH实例。这样我们就可以让beetlcam.py一直在小派上运行。cd到beetlecam路径下然后运行:
    1. cd site
    2. moya init
    复制代码
    这个命令会初始化web应用并创建数据库。接着,用下面的命令来运行web应用:
    1. moya runserver -t --host 0.0.0.0
    复制代码
    然后你就应该可以用浏览器打开 http://127.0.0.1:8000 看到beetlecam.py拍摄的照片了。也许你用的是网络里面的另外一台机器,那就应该用树莓派的主机名替换URL,默认情况下是 http://raspberrypi:8000。

    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2018-11-25 17:18
  • 签到天数: 24 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2017-11-22 03:46:25 | 显示全部楼层
    不错不错!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条



    手机版|小黑屋|与非网

    GMT+8, 2025-1-15 20:44 , Processed in 0.123737 second(s), 20 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.