如何通过树莓派来控制数码相机拍摄照片?

在这个树莓派 DSLR 相机控制项目中,我们将向您展示如何在树莓派上设置和使用 DSLR 。

使用 gphoto2 软件,我们将能够与您的树莓派对话以控制相机执行诸如拍摄照片,从相机下载文件以及在相机上设置配置之类的操作。

在本教程中,我们将向您展示编译最新版本的 gphoto2 软件并将其安装到树莓派的过程。

从最新的源代码进行编译可确保我们具有最佳的兼容性,但当然比从软件包存储库安装要复杂得多。

在学习本教程之前,您应该确保 gphoto2 软件支持您的 DSLR 相机。您可以通过查看他们的 Gphoto2 网站上的官方支持列表来完成此操作。

您可以使用树莓派执行许多相机项目。就个人而言,我喜欢在一堆相机中使用便宜的 Pi 相机,但是能够控制 DSLR 非常方便。

您可以在下面找到有关如何设置树莓派来控制 DSLR 的完整教程。

设备

以下是使用树莓派控制 DSLR 所需的设备的完整列表。

推荐的

  • 树莓派

  • Micro SD 卡或 * SD 卡旧的树莓派 (V1 等)

  • Ethernet Cord 或 * Wifi dongle (树莓派 3 已内置 WiFi) )

  • DSLR 相机 (兼容性列表)

  • 电源

可选的

  • 树莓派外壳

  • USB 键盘

  • USB 鼠标

安装 gPhoto2 与数码相机通话

1 在开始安装和设置与数码相机通话时所需要的软件之前,我们必须首先确保包装清单和包装均是最新的。

我们可以通过在树莓派上运行以下两个命令来实现。

sudo apt-get update
sudo apt-get upgrade

2 现在我们已经拥有了所有最新信息,我们将需要下载用于编译将要使用的 gphoto2 软件的软件包。

软件包存储库中提供了 gPhoto2 版本,但它是一个过时的版本,不支持那么多相机。

运行以下命令以安装我们将需要的所有软件包。

sudo apt-get install git make autoconf libltdl-dev libusb-dev libexif-dev libpopt-dev libxml2-dev libjpeg-dev libgd-dev gettext autopoint

3 所有软件包安装完成后,我们可以继续获取 libgphoto2 ** 源代码并进行编译。 Libgphoto2 是 gphoto2 构建的库。

我们可以通过运行以下命令来克隆 Github,直接获取最新的可用版本。

git clone https://github.com/gphoto/libgphoto2.git

4 使用树莓派上的 libgphoto2 源代码,我们需要对其进行编译。

为此,我们将必须运行以下一系列命令。这些命令可能需要一些时间才能执行,因此请耐心等待。

我们将要运行的命令将基于树莓派上可用的所有软件包和软件来配置 makefile 脚本。

然后,我们将根据生成的该 makefile 编译库本身。

cd〜/libgphoto2
autoreconf-安装--symlink

./configure
使
sudo 使安装

5 现在,我们已经编译了 libgphoto2 库,对于实际的 ** gphoto2 软件 **,现在需要遵循相同的过程。

通过运行以下两个命令,将 gphoto2 源代码克隆到我们的树莓派中。

光盘〜
git克隆 https ://github.com/gphoto/gphoto2.git

6 现在,就像我们编译的 glibphoto2 库一样,我们需要运行几个不同的命令。这些命令中的每一个都会配置 gphoto2 软件进行编译,然后进行编译。

运行以下一系列命令以编译 gphoto2 软件并将其安装到您的 Pi 。

cd〜/gphoto2
autoreconf-安装--symlink

./configure
使
sudo 使安装

7 现在编译了 gphoto2 软件后,我们需要确保它可以找到我们在先前步骤中编译的库。首先,我们将首先确保引用”**/usr/local/lib **” 文件夹的配置文件存在。
通过在树莓派上运行以下命令来打开文件。

sudovim/etc/ld.so.conf.d/libc.conf

在此文件中,您应该找到以下文本,如果尚不存在,请输入。

#libc默认配置

/usr/ 本地 /lib

一旦确定现在有正确的文本,就可以通过按 ** CTRL + X 退出文件。如果要求保存,请确保输入 Y ,然后按 ENTER **。

8 现在我们已经确保包含”**/usr/local/lib **” 目录,我们需要刷新配置缓存,以便在链接库时由操作系统搜索该目录。 。

为此,我们需要通过运行以下命令来运行 ldconfig 工具。

sudo ldconfig 

9 在接下来的几个步骤中,我们必须为您可能连接的摄像机生成 udev 规则。否则,gphoto2 应用程序可能无法与您的相机通话。

让我们通过运行以下命令来生成所需的 udev 列表。我们会将命令直接通过管道传输到 udev 服务将自动读取的规则文件中。

/usr/local/lib/libgphoto2/print-camera-list udev-rules 版本 201 组 plugdev 模式 0660 | sudo tee /etc/udev/rules.d/90-libgphoto2.rules

10 最后,我们需要为 ** udev ** 生成硬件数据库文件。

我们可以通过运行以下命令来做到这一点。此命令将在正确的位置自动创建文件。

/usr/local/lib/libgphoto2/print-camera-list hwdb | sudo 三通 /etc/udev/hwdb.d/20-gphoto.hwdb

11 现在,运行以下命令来测试 gphoto2 的设置是否正确,如果它返回的版本,我们可以继续进行此树莓派 DSLR 相机控制教程。

gphoto2-版本

使用 gphoto2 与相机通话

1 在本教程的这一点上,您需要使用 USB 电缆将 DSLR 连接到树莓派。

附上它后,我们可以运行以下命令,尝试使用 gphoto2 软件检测它。

gphoto2-自动检测

通过此命令,您应该看到以下文本,然后是检测到的型号和摄像机所连接的端口。

如果看不到相机,请确保已正确连接相机并打开电源。

型号端口
-------------------------------------------------- --------
佳能 PowerShot G2 USB:

2 如果已成功检测到相机,则可以继续通过 gphoto2 软件与该设备进行通话。

下面我们将介绍一些可用于 gphoto2 软件的命令以及这些命令的作用。

gphoto2-捕获图像

此命令将使 gphoto2 软件通知您的相机拍摄照片并将其捕获到其内部存储器中。这不会将图片保存到树莓派本身。

gphoto2-捕获图像并下载

上面的命令与上一个命令相似,因为它可以使连接的相机拍照。

但是,通过将图像直接从相机下载到 Pi 可以更进一步。

gphoto2-摘要

–summary 命令可检索相机设备的摘要。该命令的结果将因摄像机而异,因为它完全取决于摄像机公开的信息。

gphoto2-列表文件

该命令列出了 gphoto2 软件可以看到的相机上的所有文件。

3 您可以使用 gphoto2 软件做更多的事情,您可以通过查看 [网站上的官方文档] 来找到有关如何使用该工具和掌握其命令行的更多信息 (http: //www.gphoto.org/doc/manual/using-gphoto2.html)。

使用 gphoto2 和 DSLR 可以完成许多不同的项目。如果您想增加一些预算,那么您可能会对我们的延时项目感兴趣,或者对两种类型的 Raspberry 有兴趣] Pi 相机。

我希望本指南已指导您完成如何使用树莓派控制 DSLR 的所有步骤。如果您对本教程有任何反馈,请不要在下面发表评论。

分享到