单色灰度色块跟踪示例

# 本作品采用MIT许可证授权。
# 版权所有 (c) 2013-2023 OpenMV LLC。保留所有权利。
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# 单色灰度色块跟踪示例
#
# 此示例展示了使用 OpenMV Cam 和 FLIR LEPTON 进行单色灰度跟踪。

# FLIR Lepton快门说明:带辐射测量和快门的FLIR Lepton在升温过程中会经常暂停视频
# 以重新校准。随着传感器温度趋于稳定,这种情况会越来越少。
# 如有需要,您可以通过Lepton API强制禁止重新校准。
# 但不建议这样做,因为图像质量会随时间下降。

import csi
import time

# 颜色跟踪阈值(灰度最小值,灰度最大值)
threshold_list = [(220, 255)]

# 初始化传感器。
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.GRAYSCALE)
csi0.framesize(csi.QQVGA)

# 跳过若干帧
csi0.snapshot(time=5000)
clock = time.clock()

print("Radiometry: " + "Yes" if csi0.ioctl(csi.IOCTL_LEPTON_GET_RADIOMETRY) else "No")
print("Resolution: %dx%d" % (csi0.ioctl(csi.IOCTL_LEPTON_GET_WIDTH), csi0.ioctl(csi.IOCTL_LEPTON_GET_HEIGHT)))

# 只有像素数超过“pixel_threshold”且面积超过“area_threshold”的blob才会被
# “find_blobs”返回。如果更改了“pixels_threshold”和“area_threshold”,请进行相应调整。
# 相机分辨率。"merge=True" 合并图像中所有重叠的斑点。

while True:
    clock.tick()
    img = csi0.snapshot()
    for blob in img.find_blobs(
        threshold_list, pixels_threshold=200, area_threshold=200, merge=True
    ):
        img.draw_detection(blob, color1=127)
    print(clock.fps())

results matching ""

    No results matching ""