Thông báo

Collapse
No announcement yet.

Dùng laser để đo khoảng cách bằng webcam ! :D

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Dùng laser để đo khoảng cách bằng webcam ! :D

    1 ứng dụng rất hay của laser pointer & CCD wc nè !
    Ra chợ mua cây đèn laser chiếu điểm khoảng 20K-100k ! và 1 wc tuy úy gan vào PC !
    Chế tạo dan cơ đặt theo hình ta làm được hình như trên !
    Attached Files
    Professional Digital Genset & Hydraulic Furukawa ,Tamrock RockDrill
    email:
    forum : gensetvietnam.forumvi.com

  • #2
    Mở VB tao project đánh đoạn mã : tạo 1 software


    Private Sub exit_Click()
    ' only if running...
    If (Timer1.Enabled) Then

    Timer1.Enabled = False 'Stop Timer
    VideoOCX.Stop
    VideoOCX.Close

    End If

    End
    End Sub

    Private Sub Start_Click() 'Init VideoOCX Control, allocate memory and start grabbing

    If (Not Timer1.Enabled) Then
    Start.Caption = "Stop"

    ' Disable internal error messages in VideoOCX
    VideoOCX.SetErrorMessages False

    ' Init control
    If (Not VideoOCX.Init) Then
    ' Init failed. Display error message and end sub
    MsgBox VideoOCX.GetLastErrorString, vbOKOnly, "VideoOCX Error"
    End
    Else
    ' Allocate memory for global image handle
    capture_image = VideoOCX.GetColorImageHandle
    ' result_image = VideoOCX_Processed.GetColorImageHandle

    Timer1.Enabled = True 'Start capture timer

    ' Start Capture mode
    If (Not VideoOCX.Start) Then
    ' Start failed. Display error message and end sub
    MsgBox VideoOCX.GetLastErrorString, vbOKOnly, "VideoOCX Error"
    End
    End If
    End If
    Else
    Start.Caption = "Start"
    Timer1.Enabled = False 'Stop Timer
    VideoOCX.Stop
    VideoOCX.Close
    End If

    End Sub

    Private Sub Timer1_Timer()
    ' Timer for capturing - handles videoOCXTools
    Dim matrix As Variant
    Dim height, width As Integer
    Dim r, c As Integer
    Dim max_r, max_c As Integer
    Dim max_red As Integer
    Dim gain, offset As Variant
    Dim h_cm As Variant
    Dim range As Integer
    Dim pixels_from_center As Integer

    ' Calibrated parameter for pixel to distance conversion
    gain = 0.0024259348
    offset = -0.056514344
    h_cm = 5.842

    max_red = 0

    ' Capture an image
    If (VideoOCX.Capture(capture_image)) Then

    ' VideoOCX.Show capture_image

    ' Matrix transformation initialization
    matrix = VideoOCX.GetMatrix(capture_image)

    height = VideoOCX.GetHeight
    width = VideoOCX.GetWidth

    ' Image processing code

    ' The laser dot should not be seen above the middle row (with a little pad)
    For r = height / 2 - 20 To height - 1

    ' Our physical setup is roughly calibrated to make the laser
    ' dot in the middle columns...dont bother lookng too far away
    For c = width / 2 - 25 To width / 2 + 24

    ' Look for the largest red pixel value in the scene (red laser)
    If (matrix(c, r, 2) > max_red) Then
    max_red = matrix(c, r, 2)
    max_r = r
    max_c = c
    End If
    Next c
    Next r

    ' Calculate the distance for the laser dot from middle of frame
    pixels_from_center = max_r - 120

    ' Calculate range in cm based on calibrated parameters
    range = h_cm / Tan(pixels_from_center * gain + offset)

    ' Print laser dot position row and column to screen
    row_val.Caption = max_r
    col_val.Caption = max_c

    ' Print range to laser illuminated object to screen
    range_val.Caption = range

    ' Draw a red vertical line to intersect target
    For r = 0 To height - 1
    matrix(max_c, r, 2) = 255
    Next r

    ' Draw a red horizontal line to intersect target
    For c = 0 To width - 1
    matrix(c, max_r, 2) = 255
    Next c

    VideoOCX.ReleaseMatrixToImageHandle (capture_image)

    End If

    VideoOCX.Show capture_image

    End Sub


    Lưu ý bạn cần phải lên có dll. VideoOCx ActiveX thì mới chạy được !
    Cuối cùng ta đã có 1 phần mềm đo khoảng cách bằng điễm sáng laser mà webcam thu thu được lệch so với với tiêu điềm ---> từ đó soft ware tính được khoảng cách !

    Hehe kỹ thuật cao ! ...

    Attached Files
    Professional Digital Genset & Hydraulic Furukawa ,Tamrock RockDrill
    email:
    forum : gensetvietnam.forumvi.com

    Comment


    • #3
      nhưng cho mình đoan mã đó luôn đi.mình ngai viết lắm.bạn chép thành fie rui gũi cho mình hen....giửi vô maill cho mình nha .mình mún thử món này lém.
      địa chỉ maill mình là: buiton33@gmaill.com

      Comment


      • #4
        bạn up file lên đi bạn

        Comment


        • #5
          ban ch minh xin file do duoc khong, mail cua minh la tocdothap@gmail.com

          Comment


          • #6
            www.pages.drexel.edu/~twd25/webcam_laser_ranger.html

            Link gốc của project này đây. Trong đó có đầy đủ file, tuy nhiên thiếu thư viện video, có lẽ cần phải mua hoặc tìm cái free trên web.
            Ethernet-RS232, PIC Webserver, RFID Reader
            CallerID, Cảnh báo BTS, ...
            0988006696
            linhnc308@gmail.com
            http://linhnc308.blogspot.com

            Comment


            • #7
              Cái topic này tạo ra để dạy mọi người học vẹt hay sao mà không có lời giải thích về nguyên lý hay tính toán độ chính xác gì cả
              dientuvietnam.net

              Comment


              • #8
                Viết phần mềm dễ vậy có khi mình thành trùm tạo virus lâu rồi.

                Comment


                • #9
                  Nguyên văn bởi caniggia Xem bài viết
                  1 ứng dụng rất hay của laser pointer & CCD wc nè !
                  Ra chợ mua cây đèn laser chiếu điểm khoảng 20K-100k ! và 1 wc tuy úy gan vào PC !
                  Chế tạo dan cơ đặt theo hình ta làm được hình như trên !
                  Bác phải giải thích nguyên lý vận hành, các bước thực hiện chứ, đưa khơi khơi lên như vậy làm sao biết nó chạy thế nào là tốt, xấu.

                  SKYPE NICK: anhtungdx

                  Comment


                  • #10


                    Chúc bạn thành công !

                    Comment


                    • #11
                      2 năm trước...
                      Vẫn chưa thấy ý kiến gì cả..

                      Comment


                      • #12
                        Không có nguyên lý, chịu nuôn :3

                        Comment


                        • #13
                          Nguyên lý có ở đây https://sites.google.com/site/toddda...m_laser_ranger

                          Comment


                          • #14
                            cái này khó lắm nhé.đo chỉ được tầm ngắn.mình dùng đo đạc đất đai toàn mua hàng của nước ngoài.giá khá mắc như của hãng leica D2

                            Comment

                            Về tác giả

                            Collapse

                            caniggia R&D Digital Cummins Genset Tìm hiểu thêm về caniggia

                            Bài viết mới nhất

                            Collapse

                            Đang tải...
                            X