2017-04-10 183 views
-2

是否有一個python庫或API可以使用相機檢測已知位置的LED燈?燈將是不同的顏色。用於檢測LED閃光燈的Python庫

我有興趣爲PCB進行自動化生產測試。我的電路板有許多LED,當某些功能正常工作時,測試命令使電路板開啓LED。人們可能會錯過衆多燈光中的一個。我指定python是因爲它是我熟悉的唯一高級語言。我的大部分嵌入式工作都是用C語言編寫的,C語言在較高層次上工作起來很棘手。

回答

0

OpenCV是一個可能的選擇,如果需要,可以讓您在稍後使用其他語言。

0

這很有可能解決這個問題。正如@John Percival Hackworth所說,opencv是解決這個問題的好選擇。我可以給你一些關於如何去做的指導。

  • 用LED指示燈拍照,因爲您知道LED的顏色,可以使用這些知識來過濾顏色。我已經給出了一個代碼片段。
  • 過濾顏色後,您可以使用houghcircles/blob來定位LED
  • 存在斑點意味着指示燈亮起。然後您可以根據這些知識做出決定。

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_redupper_red更改爲不同的值,具體取決於您要過濾的顏色。

祝你好運:)