是否有一个python库或API可以使用相机检测已知位置的LED灯?灯将是不同的颜色。用于检测LED闪光灯的Python库
我有兴趣为PCB进行自动化生产测试。我的电路板有许多LED,当某些功能正常工作时,测试命令使电路板开启LED。人们可能会错过众多灯光中的一个。我指定python是因为它是我熟悉的唯一高级语言。我的大部分嵌入式工作都是用C语言编写的,C语言在较高层次上工作起来很棘手。
是否有一个python库或API可以使用相机检测已知位置的LED灯?灯将是不同的颜色。用于检测LED闪光灯的Python库
我有兴趣为PCB进行自动化生产测试。我的电路板有许多LED,当某些功能正常工作时,测试命令使电路板开启LED。人们可能会错过众多灯光中的一个。我指定python是因为它是我熟悉的唯一高级语言。我的大部分嵌入式工作都是用C语言编写的,C语言在较高层次上工作起来很棘手。
OpenCV是一个可能的选择,如果需要,可以让您在稍后使用其他语言。
这很有可能解决这个问题。正如@John Percival Hackworth所说,opencv是解决这个问题的好选择。我可以给你一些关于如何去做的指导。
Opencv有Python绑定,所以你可以用python编程。
片段可以进行颜色过滤。
import cv2 as cv2
import numpy as np
fn = 'image_or_videoframe'
# OpenCV reads image with BGR format
img = cv2.imread(fn)
# Convert to HSV format
img_hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
# Choose the values based on the color on the point/mark
lower_red = np.array([0, 50, 50])
upper_red = np.array([10, 255, 255])
mask = cv2.inRange(img_hsv, lower_red, upper_red)
# Bitwise-AND mask and original image
masked_red = cv2.bitwise_and(img, img, mask=mask)
在这种情况下
,红色过滤图像中和masked_red
将只包含在图像中的红色像素。您可以将lower_red
和upper_red
更改为不同的值,具体取决于您要过滤的颜色。
祝你好运:)