Login to Website

Login dengan Facebook

 

Post Reply
Thread Tools
  #1  
Old 20th November 2011
Guesuper
Ceriwiser
 
Join Date: Nov 2011
Posts: 408
Rep Power: 14
Guesuper mempunyai hidup yang Normal
Default Motion Detection dengan Visual Basic 6.0

agan-agan yang baik...



saya punya tugas kuliah nih... membuat motion detection alias pendeteksi gerakan melalui kamera.

program yang ane buat udah jadi, nah permasalahannya gue ngambil algoritma punya orang yang gue susah untuk menjelaskannya dilaporan...



koding yang gue bingung terletak pada function untuk membedakan kedua warna, lihat scriptnya dibawah ini gan...




Quote:





Private Function Different(ByVal a As Long, ByVal b As Long) As Boolean

'cek perbedaan dua warna

ar = a Mod 256: a = a \ 256

ag = a Mod 256: a = a \ 256

ab = a Mod 256: a = a \ 256



br = b Mod 256: b = b \ 256

bg = b Mod 256: b = b \ 256

bb = b Mod 256: b = b \ 256

sense = 255 - Slider1.Value * 5



Different = (Sqr((ar - br) * (ar - br) + (ag - bg) * (ag - bg) + (ab - bb) * (ab - bb)) > sense) 'formula for counting different

End Function





nah terus untuk mengimplementasikan function di atas digunakanlah timer yang ada pada vb 6, fungsi dari script ini adalah untuk menjalankan proses deteksi gerakan, yang akan dipantau kamera secara real time....

tapi gue juga butuh penjelasan yang luas dari agan-agan semua,

berikut scriptnya gan,


Quote:





Private Sub Timer1_Timer()

'menampilkan gambar dari kamera

SendMessage mCapHwnd, GET_FRAME, 0, 0

SendMessage mCapHwnd, COPY, 0, 0

cam1.Picture = Clipboard.GetData: Clipboard.Clear





stepp = 3 'Grid dense



Dim qan, qann As Long

qan = 0

qann = 0



For i = 1 To cam1.Width / Screen.TwipsPerPixelX Step stepp

For j = 1 To cam1.Height / Screen.TwipsPerPixelY Step stepp



If Different(cam1.Point(i * stepp * Screen.TwipsPerPixelX, j * stepp * Screen.TwipsPerPixelY), cam2.Point(Screen.TwipsPerPixelX * i * stepp, j * stepp * Screen.TwipsPerPixelY)) Then

cam1.Circle (i * stepp * Screen.TwipsPerPixelX, Screen.TwipsPerPixelY * j * stepp), 1, RGB(255, 0, 0)

qann = qann + 1

End If



Next

Next

lblProgres.Caption = Int(qann * 100 / 910) & "%" 'perhitungan gerakan dalam persentase

ProgressBar1.Value = Int(qann * 100 / 910)

End Sub





para agan-agan yang baik, mohon bantu saya, bagaimana sebenarnya penjelasan yang pas untuk program di atas.... tuh script jalan 100% gan, tapi kalau di copy paste ane yakin gak bakalan jalan, karena agan musti nambahin komponen library avicap32 bawaan windows, cari aja diinternet ada gan....



please bantu saya gan,



salam programmer vb indonesia....



  #2  
Old 12th October 2013
enju
Newborn
 
Join Date: Oct 2013
Posts: 1
Rep Power: 0
enju mempunyai hidup yang Normal
Default bingung

gmna gan sudah dapat lah... carax ane juga dpat tugas itu juga
Sponsored Links
Space available
Post Reply




Switch to Mobile Mode

no new posts