Сгруппированные пузыри или пузыри близко друг к другу?Python

Программы на Python
Anonymous
Сгруппированные пузыри или пузыри близко друг к другу?

Сообщение Anonymous »

Я использую край и контур OpenCV, чтобы попытаться проанализировать результаты теневого изображения пузырьков. Он работает хорошо, но дает сбои, когда два пузырька расположены очень близко друг к другу, когда он рассматривает их как один контур, когда явно два пузырька расположены близко друг к другу.
Контурная теневая диаграмма
Контурный теневой график с примененным условием округлости
Выше — результат условия округлости (которое я нашел здесь), и хотя объективно группа пузырьков справа больше В идеальном мире я бы хотел, чтобы пузырьки в середине идентифицировались как два отдельных пузыря, а сгруппированные пузырьки справа игнорировались.
Вот что у меня есть. как код:
img=cv.imread(path)
gi=cv.cvtColor(img,cv.COLOR_BGR2GRAY)
edges=cv.Canny(gi,30,200)
contours, hierarchy=cv.findContours(edges, cv.RETR_EXTERNAL, cv.CHAIN_APPROX_NONE)

circular_contours=[]

for a in range(len(contours)):
peri=cv.arcLength(contours[a], True)
area=cv.contourArea(contours[a])
if peri==0:
continue
circularity=4*np.pi*(area/peri**2)
print('Circularity: '+str(circularity))
if 0.69

Подробнее здесь: https://stackoverflow.com/questions/787 ... e-together

Вернуться в «Python»