You are on page 1of 1

EMGU CV

Option Strict On
Imports Emgu.CV
Imports Emgu.CV.CvEnum
Imports Emgu.CV.Structure
Imports Emgu.CV.UI

Public Class Form1


'variables
Dim capwebcam As Capture
Dim capturingProcess As Boolean = False
Dim imgOriginal As Image(Of Bgr, Byte)
Dim imgProcessed As Image(Of Gray, Byte)
'constructeur
Sub New()
InitializeComponent()
End Sub

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load


Try
capwebcam = New Capture()
Catch ex As Exception
txtXYradius.Text = ex.Message
End Try
AddHandler Application.Idle, New EventHandler(AddressOf
Me.ProcessFrameAndUpdateGUI)
capturingProcess = True
End Sub

Private Sub Form1_FormClosed(sender As Object, e As FormClosedEventArgs) Handles


MyBase.FormClosed
If (Not capwebcam Is Nothing) Then
capwebcam.Dispose()
End If
End Sub
Sub ProcessFrameAndUpdateGUI(sender As Object, arg As EventArgs)
imgOriginal = capwebcam.QueryFrame()
If (imgOriginal Is Nothing) Then
Return

End If
imgProcessed = imgOriginal.InRange(New Bgr(0, 0, 175), New Bgr(100, 100, 256))
imgProcessed = imgProcessed.SmoothGaussian(9)

Dim circles As CircleF() = imgProcessed.HoughCircles(New Gray(100), New Gray(50),


2, imgProcessed.Height / 4, 10, 400)(0)
For Each CirclesF In circles
If (txtXYradius.Text <> "") Then
txtXYradius.AppendText(Environment.NewLine)
End If
Next
End Sub

Private Sub btnPauseOrResume_Click(sender As Object, e As EventArgs) Handles


btnPauseOrResume.Click

End Sub
End Class

You might also like