本教程旨在帮助所有想要使用 Raspberry Pi 安装 Lepton 相机的人。我们使用了许多教程中提供的信息,并添加了我们自己的知识来改进它们。

我们测试的设备是 Raspberry Pi B+,但其他版本的设备的安装不应有太大差异。

关于轻子相机

Lepton 是一款完整的长波红外 (LWIR) 相机模块,旨在轻松连接到本机移动设备接口和其他消费电子产品。它捕获其标称响应波长带(8 至 14 微米)内的红外辐射输入并输出均匀的热图像。

环境规格

工作温度范围10°C 至 65°C(-20°C 至 75°C,性能可能会有所下降)
最高工作温度353.15 K (80 °C)
储存温度40°C 至 80°C
相对湿度95%
热冲击跨工作温度的空对空极端温度(-10°C 至 65°C、65°C 至 -10°C)
振动运输概况,4.3 克

图像特征

场景内范围0 K 至 >400 K(-273.15°C 至 > 126.85°C)
可操作性:良品像素数>99.0%(典型缺陷<1%)

应用领域

  • 安全保障
  • 汽车
  • 微纳无人机/UGV平台
  • 上门维修和能源效率
  • 楼宇自动化和存在检测

如果你想了解更多关于Lepton Camera的规格,可以去Lepton Datasheet

图 1:轻子相机

硬件

所需材料

这些是安装 Lepton 相机所需的材料:

  1. 树莓派 B+ 型。
  2. 带微型 USB 终端的 5V 电源。
    • 必须能够提供至少 700mA 的电流
    • 它可以是手机充电器,效果很好。 (手机充电器很好用)
  3. SD 卡:
    • 至少 8 GB 和最多 32 GB 存储空间
    • 不低于4级。
  4. USB键盘一个
  5. 鼠标(带USB连接)
  6. HDMI 电缆一根
  7. 以太网电缆和与 Internet 连接的网络的连接。如果您想在 Raspberry Pi 中使用 WiFi,则可以购买 WiFi 连接适配器。本教程使用迷你 150Mbps USB 2.0 WiFi 天线无线网卡适配器 802.11N/G/B。WiFi连接适配器

准备SD卡——格式化

首先,我们要格式化并准备SD卡。在本部分中,您将使用您的计算机。第一步是格式化卡,第二步是安装 NOOBS 软件(您的 Raspberry 需要它)。在本教程中,我们使用操作系统 Windows。如果您有其他操作系统,您可以在此处查看步骤:不同的操作系统。请按照以下说明操作:

格式化卡

  1. 上网并下载Windows 版格式化程序
  2. 解压下载并运行Setup.exe。
  3. 当 SDFormatter InstallShield Wizard 提示接受并安装该程序时,然后单击“完成”。
  4. 接下来,打开 SD Formatter(您刚刚安装的程序)。您应该会看到类似这样的内容:图 2:SDFormatter
  5. 单击“选项”并将“格式大小调整”设置为“开”,然后单击“确定”。图 2.1:选项设置
  6. 在列出“驱动器”的地方选择您的卡。如果您的计算机中仅使用一张卡,则会自动选择该卡。
  7. 单击“格式”,然后在出现时单击“确定”三次。
  8. SD 卡现已格式化!下一步是安装 NOOBS 软件。

安装 NOOBS 软件

  1. 访问Raspberry Pi 下载页面并下载最新的 NOOBS(离线安装)(截至 2015 年 5 月 11 日的 NOOBS_v1_4_1.zip)。
  2. 解压缩并提取下载的内容。解压后的文件夹应如下所示:图3:下载NOOBS
  3. 现在,您需要将提取的文件夹内容复制到最近格式化的 SD 卡上。
  4. 您的卡现在就可以使用了!

连接

小心轻子相机。它对静电放电不是特别敏感,但它是一种复杂且相对昂贵的组件。使用它时需要采取一些预防措施,以免意外损坏。面包板是一项可靠的投资。它提供了安装摄像头的安全位置。

现在,我们可以开始构建项目了。请按照以下步骤操作:

将 Lepton 相机连接到树莓派

  • 使用面包板进行连接。
  • 图 4 中的图表有 20 个 GP10(40 个松树),Raspberry Pi 有 13 个 GP10(26 个松树),对于这个项目来说,只有前 26 个松树很重要。
  • 关于CS引脚,如果有红色方块,请将引脚26切换到引脚24
图4:示意图

连接显示器

  • 在 Raspberry 和显示器之间连接 HDMI 电缆。 (可能需要 VGA 转 HDMI 适配器)

通过USB连接鼠标和键盘

将准备好的SD卡插入树莓派

  • 正确连接后,SD 卡将卡入到位。

建立互联网连接

  • 需要下载多个软件才能利用该项目并充分利用树莓派所能提供的功能。因此,互联网连接非常重要。
  • 可以使用以太网电缆或 WiFi 适配器。 wifi 适配器的说明在这里

连接电源

  • 最后,对之前的连接进行最后检查。如果它们工作正常,请连接 Raspberry 的电源。 (我们使用手机充电线)

硬件部分完成!该项目应该看起来像这样:

无线网络适配器

WiFi 适配器可用于将 Raspberry Pi 连接到互联网。要将 WiFi 适配器与 Raspberry Pi 一起使用,请按照以下说明操作:

Raspberry Pi 官方网站提供了 3 种不同的 WiFi 适配器安装教程。当我们尝试时,这些说明不起作用。因为他们可以为别人工作,所以可以在这里找到他们。

在本教程中,我们将使用对我们有用的命令。

  • 将 WiFi 适配器连接到 Raspberry Pi。
  • 在 Raspberry Pi 桌面上打开 LXT 终端。

LXT 终端中的命令行

  • 要确定哪些 WiFi 信号可用于 Raspberry Pi,请输入以下命令:

PS:特别是密歇根理工学院实验室,我们需要在自己的电脑上下载一个开源软件来共享密歇根理工学院的WiFi。开源软件是虚拟路由器。您可以在此链接虚拟路由器中下载它。使用此软件,您可以与树莓派共享密歇根理工大学的 WiFi。您只需要创建一个名称和密码。看一下上面的例子:

图 6:虚拟路由器

当您完成安装 sot 时

  • 将显示所有可用的 WiFi。确定首选 WiFi 连接的 ISSD 和密码。
  • 输入以下命令:
  • 将以下代码添加到文件中。记住 IDSS 和密码。
  • 这是一个例子:
  • 完成后,使用 Ctrl + X,选择 Y,然后按 Enter。 (它将保存所做的更改)
  • 要激活更改,请使用:
  • 然后输入:
  • 使用以下命令确认 WiFi 正常工作:
  • Wlan0 将连接到您选择的 WiFi 中。

软件

软件安装允许使用 Raspberry Pi。

树莓派

Raspbian是一个基于 Debian 的免费操作系统,针对 Raspberry Pi 硬件进行了优化。它是 Raspberry Pi 的理想操作系统

  • 树莓派信号和显示器显示之间可能存在延迟,这是正常现象。图 7 所示为显示画面。图 6:Raspbian 安装
  • 单击第一个选项(Raspberry 推荐)。
  • 单击“安装”。安装大约需要 30 分钟。

完成此部分后,您的 Raspberry Pi 就可以使用了

FLIR Lepton 热像仪软件

Raspbian 安装完成后,就可以安装 FLIR Lepton 热像仪软件了。我们使用纯工程代码来运行 Lepton

  • 现在,您需要打开 LXTerminal,您将在其中键入命令。点击下图所示的图标:
图 7:LXT 终端
  • 完成后,您需要输入以下命令。它将为您打开配置部分。
  • 你会看到这个窗口:图 8:配置窗口
  • 转到“高级选项”。
  • 您需要激活“SPI”。为此,请按照以下说明操作:
    1. 选择SPI
    2. 您需要启用SPI接口:点击“YES”
    3. 点击“确定”
  • 您需要默认加载 SPI 内核模块,因此单击“是”。
  • 点击“确定”
  • 之后,对 I2C 进行同样的操作。
  • 现在,选择图 8 末尾的完成并重新启动树莓派,系统会询问您是否要重新启动树莓派。做吧。
  • 现在,是时候使用互联网连接了。您需要下载QT应用程序(来自Pure Engineering的示例代码)。因此,请确保您有良好的互联网连接。
  • 对于后续步骤,请输入以下命令:
  • 之后,系统会要求您输入“y”或“n”。输入“y”。
  • 现在转到互联网图标和此网站:https://github.com/PureEngineering/LeptonModule
  • 当您打开网站时,单击“下载 ZIP”(位于屏幕右侧)。
  • 将下载的文件夹移动到 pi 目录。
  • 现在解压缩压缩的文件夹。使用命令:
  • 现在将当前目录更改为“LeptonModule-master”文件夹中的文件夹“raspberrypi_video”。使用以下命令执行此操作:
  • 现在,您需要进入“LeptonSDKEmb32PUB”目录并运行“make”:
  • 之后,cd回到“raspberrypi_video”目录:
  • 现在,运行:
  • 您的热像仪已准备就绪,可以使用了!要使其正常工作,请运行:

变更与错误

视频尺寸

可以更改视频大小:

  1. 打开 main.cpp 文件。它位于“raspberrypi_video”文件夹中main.cpp-文件夹中2.png
  2. 下图所示的代码部分定义了视频窗口的大小和位置。红色框中的数字定义窗口在屏幕中显示的位置,绿色框中的数字定义窗口的大小。2015-06-02 09-52-57.png
  3. 您还需要更改发送到占位符窗口的图像的大小以及“执行 FFC”按钮的位置。图片尺寸-FFC位置.png
  4. 要保存更改,请转到页面的左上角,按“文件”,然后单击“保存”
  5. 完成后,转到 LXTerminal,cd 到“raspberrypi_video”文件夹并运行“qmake && make”
  6. 您的更改已保存,运行程序并检查这是否是您想要的。如果您不喜欢这些分辨率,可以将其改回或更改为其他尺寸

执行FFC

我们在按下“执行 FFC”按钮时遇到错误。如果您遇到同样的错误,您可以按照以下说明操作:

  • 进入LXterminal并执行以下命令:
  • 转到最后一行并写入:“i2c-dev”
  • 按“ctrl o”
  • 按回车键
  • 重新启动系统。 FFC 现在应该可以工作了

录制视频

目前录制 FLIR Lepton 相机生成的视频的最佳方法是将树莓派连接到 PC 或笔记本电脑。使用 VNC(虚拟网络计算)可以轻松实现这一点。 VNC 允许用户远程控制另一台计算机的桌面界面。将 VNC 与 Raspberry 结合使用的其他优点包括:

  • 有很多开源屏幕录像程序
  • 它将允许用户使用linux或windows系统控制树莓派
  • 录制的文件将保存在用户的计算机中,因此不需要将其存储在Raspberry存储卡中
  • 无需将显示器、键盘和鼠标连接到 Raspberry
  • 使用VNC我们可以轻松携带热像仪系统

VNC连接

设置 VNC 很容易。您需要设置树莓派和用于远程控制树莓派的计算机。

设置树莓派

  • 转到 LXTerminal 并安装 Tight VNC 软件包
  • 运行 TightVNC 服务器
  • 服务器将要求您输入密码。密码长度需大于4且小于9个字符
  • LXTerminal 不允许您查看您正在输入的密码。只需输入并按 Enter 键即可。
  • 启动 VNC 会话
  • “:1”代表VNC会话的数量(可以有多个VNC会话)
  • 可以更改屏幕的分辨率。在此示例中,我们使用全高清分辨率 (1920x1080)
  • 如果您希望从启动时就设置 VNC 会话,请按照elinux.org网站上的说明进行操作
  • 如果要结束 VNC 会话,请使用以下命令:
  • “:display”是VNC会话的数量

设置您的计算机

  • 在设置计算机的最后一步中,您将需要 Raspberry Pi 的 IP 地址。如果您不知道 Raspberry Pi 的 IP 地址,请在 LXTerminal 上执行以下命令:
  • IP地址就是蓝色框中的数字
IP地址

视窗

按照Raspberry.org: Windows网站上适用于您的 Windows 计算机的说明进行操作

Linux

按照Raspberry.org:Linux网站上针对您的 Linux 计算机的说明进行操作

苹果系统

按照Raspberry.org:Mac OS网站上针对基于 Mac OS 的计算机的说明进行操作

屏幕录像软件

您将需要一个屏幕录像机软件来捕获 Lepton Thermal 相机发送到您的计算机的视频。您可以使用任何您想要的程序。我们列出了一些开源软件选项。

视窗

我们下载并测试了 ShareX。 ShareX 是一款开源软件,允许屏幕录制、打印屏幕以及许多其他工具。您可以在getsharex.com免费下载该软件

Linux

苹果系统

在树莓派上录制视频

这是一个正在进行的工作

从源安装 ffmpeg。这一步非常重要。它不适用于 Raspbian 版本的 ffmpeg,因为 Debian 版本的 libavcodec 不包含 flash 流协议所需的 H264 库。(来自 Raspberry Forum

  • 运行 ffmpeg

这将从桌面上抓取图像,从左上角 (x=250, y=150) 开始,宽度和高度为 1024x768。在此示例中,视频保存在临时文件夹中,您可以将其保存在另一个文件夹中。 “out.avi”的格式为“文件名.文件格式”。

您可以在此处ffmpeg.org网站中找到有关 ffmpeg 的更多信息。

我们的应用

您可以实现 Pure Engineering 的代码并为您的 Lepton 相机创建新的应用程序。 FLIR 提供了很好的文件,其中包含对新闻应用程序很有帮助的功能和说明。您已在前面的步骤中下载了该文件。要找到它,请按照以下步骤操作:

  1. 进入Pi目录并打开“LeptonModule-master”
  2. 打开文件夹“raspberrypi_video”
  3. 您正在寻找的文件是“lepton_interface_design_document.pdf”

Using this file, we created some applications. You can check them below.

Get the Internal Temperature of the camera

With this applications, we are able to see what is the camera internal temperature. It can be very helpful for future applications because there is a relationship between the output from the camera and its internal temperature. We will describe below what we did:

  • Go to the "Pi directory"
  • Open the "LeptonModule-master"
  • Open the "raspberrypi_video"
  • Open the file "Lepton_I2C.cpp"
  • In this file, you will declare the function witch will get the Internal temperature:
  1. First of all, you need add these line of code below "#include "leptonSDKEmb32PUB/LEPTON_Types.h""
#include "leptonSDKEmb32PUB/LEPTON_AGC.h"
  • Now, add this line of code below "LEP_CAMERA_PORT_DESC_T _port;"
LEP_SYS_FPA_TEMPERATURE_KELVIN_T fpa_temp_kelvin;LEP_RESULT result;
  • Now, you will declare the function. Go to the end of this file and add the function:
int lepton_temperature() {if(!_connected) {lepton_connect();}result = ((LEP_GetSysFpaTemperatureKelvin(&_port, &fpa_temp_kelvin)));return ( fpa_temp_kelvin);}
  • You need to save what you typed. Go to the files and save it.
  • Go back to the "raspberry_video " and open "Lepton_I2C.h"
  • you need to add this line of code below the " void lepton_perform_ffc();"
int lepton_temperature();
  • Now, we have the function lepton_temperature() that can return you the internal temperature of the camera. If you want to use this value for any calculation, you just need to declare a variable , and match with this function that you created.

Temperature scale

The Lepton camera uses the internal temperature as a parameter. The output frame for the internal temperature is 8192. If the range of the temperature is not too big, the whole output range will follow an almost linear relationship with this point ( Internal Temperature, 8192).

Get the maximum and minimum temperature

With that information we are able to get an approximated temperature from any output. In order to do that we took an experimental point ( Temperature and output) using the hot plate available in the Michigan Tech Lab. After this, we did a linear equation using two points : ( Internal Temp , 8192) and ( Experimental Temperature , Experimental Output ) . You can see the equation below:

Temperature( Kelvin) = (8192 - (Internal Temperature * ( (Experimental Frame- 8192 )/ ( Experimental Temperature - Internal Temperature )))

If you analyse the original code in the file "Lepton Thread.h", you can see that you are able to take the maximum and minimum output frame. Therefore , if you use the Maximum and Minimum output on the equation above, you can find the Maximum and Minimum temperature.

Color and Frame relationship

if you take a look at the original code at the file "Lepton Thread.h", you can realize some important points :

  1. 该代码给出了最大和最小输出帧。
  2. 变量“value”给出了与颜色的关系。
  3. 值的范围为 0 < 值 < 255。
  4. 最大帧代表 Value = 255。
  5. 最小值表示 Value = 0。

因此,使用线性度和最后两个点(MaxFrame,Value = 255)和(MinFrame,Value = 0),我们可以找到帧和颜色之间的关系:

框架与温度的关系

我们可以意识到:

  1. 最大帧数与最高温度有关。
  2. 最小框架与最低温度有关。

利用以上两点和线性我们可以找到框架和温度之间的关系。

  • 帧最大 --> 温度最大
  • 帧最小值 --> 温度最小值

设置输出帧的范围

我们可以限制轻子相机的输出范围。因此,如果您只想查看小范围的温度,我们可以做到。您需要按照以下步骤操作。

  • 转到文件“LeptonThread.cpp”
  • 查找获取 maxValue 和 minValue 的代码行。 (它位于循环“for ( int i = 0 : i < FRAME_SIZE_UNIT!; i++)”内
  • 在我们上面所说的几行之后,您将设置输出。请参阅示例: 。
  • 设置输出值后,添加以下条件:(需要在同一循环“for ( int i = 0 : i < FRAME_SIZE_UNIT!; i++)”内)
Cookies help us deliver our services. By using our services, you agree to our use of cookies.