使用OpenCV检测PS塑料中的气泡

时间:2015-02-05 10:11:44

标签: python opencv image-processing computer-vision video-processing

我有PS /聚苯乙烯(http://en.wikipedia.org/wiki/Polystyrene)塑料颜色.PS是加工后的透明材料。有时加工气泡。 我想用OpenCV检测这个气泡。我该怎么办?检测气泡的步骤是什么?

这是我想要检测的泡泡。 http://goo.gl/frnD8Y

2 个答案:

答案 0 :(得分:0)

检测气泡的最佳方法是使用它们具有高表面曲率的事实。高曲率意味着它将反射几乎在任何方向上放置的光线,而平面表面的反射仅在有限的视点范围内可见。如果你引入一些光源,你的布雷会明显变亮,而背景则不会。然后你就可以达到它的门槛。

或者,您可能希望首先使用颜色找到一个带,然后在一个带内使用移动窗口中的总和找到一个渐变簇。要使用buc调零,可以使用openCV拟合椭圆函数将椭圆拟合到其渐变中。

答案 1 :(得分:0)

从给定的图像中,您可以使用以下代码对其进行分段。如果有气泡,边缘会变暗。所以你可以轻松分割

import numpy as np 

import cv2

from matplotlib import pyplot as plt

plt.ion()

filteredContour = []

img = cv2.imread('buble.png')

grayImage = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)

binaryImage = np.uint8((grayImage < 20) *1)

plt.imshow(binaryImage)

另一种检测气泡的方法是从侧面提供光线并从顶部使用相机。然后你就可以轻松分割。