从Adafruit_CircuitPython_MLX90640读取数据,并用opencv转化为色温图输出,显示
时间: 2023-06-13 21:08:50 浏览: 161
要读取Adafruit_CircuitPython_MLX90640的数据,您需要安装CircuitPython,然后将MLX90640传感器连接到您的开发板上,并使用Adafruit_CircuitPython_MLX90640库进行编程。以下是一个简单的示例代码,可用于读取传感器数据:
```python
import board
import busio
import adafruit_mlx90640
# Initialize I2C bus and MLX90640 sensor
i2c = busio.I2C(board.SCL, board.SDA, frequency=800000)
mlx = adafruit_mlx90640.MLX90640(i2c)
# Set sensor refresh rate
mlx.refresh_rate = adafruit_mlx90640.RefreshRate.REFRESH_2_HZ
# Initialize sensor data array
mlx_data = [0] * 768
# Read sensor data into array
try:
mlx.getFrame(mlx_data)
except ValueError:
pass
```
要将传感器数据转换为色温图,您可以使用OpenCV库。以下是一个简单的示例代码,可用于将传感器数据转换为色温图,并将其显示在窗口中:
```python
import cv2
import numpy as np
# Reshape sensor data array into image array
image = np.array(mlx_data).reshape((24, 32))
# Normalize image data
image = cv2.normalize(image, None, 0, 65535, cv2.NORM_MINMAX)
# Convert image data to uint16 datatype
image = image.astype(np.uint16)
# Apply color map to image data
image = cv2.applyColorMap(image, cv2.COLORMAP_JET)
# Display image in window
cv2.imshow('MLX90640', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
请注意,此代码仅作为示例,并且您需要根据自己的需求进行修改和调整。
阅读全文