Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > .NET Framework > Forum > คือว่าตอนนี้สร้างโปรแกรมติดต่อกับกล้องเว็บแคมได้แล้ว (อย่ากใช้กล้องเว็บแคมถ่ายรูปแล้วทำการ save ลงคอม) C#



 

คือว่าตอนนี้สร้างโปรแกรมติดต่อกับกล้องเว็บแคมได้แล้ว (อย่ากใช้กล้องเว็บแคมถ่ายรูปแล้วทำการ save ลงคอม) C#

 



Topic : 079329



โพสกระทู้ ( 168 )
บทความ ( 0 )



สถานะออฟไลน์




c#ต่อกล้อง

คือว่าตอนนี้สร้างโปรแกรมติดต่อกับกล้องเว็บแคมได้แล้ว (อย่าใช้กล้องเว็บแคมถ่ายรูปแล้วทำการ save ลงคอม)
ผมใช้ C# เขียน ใครพอจะรู้ช่วยหน่อย ครับ



Tag : .NET, C#







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-06-04 07:06:51 By : kyokohoho View : 5093 Reply : 11
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code ที่นำมาแปะ ให้ใช้การ Copy มาวางแทนรูปภาพครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-04 07:08:38 By : mr.win
 


 

No. 2



โพสกระทู้ ( 168 )
บทความ ( 0 )



สถานะออฟไลน์


Code (C#)
public partial class Form3 : Form
    {
        FilterInfoCollection DvList;//มาจาก vdoC# ต่อกล้องเว็บแคม ตัวเป็ล DvList กับ CAM  สร้างตามัน
        VideoCaptureDevice CAM, Webcam;
        
        public Form3()
        {
            InitializeComponent();
        }
         
        private void Form3_Load(object sender, EventArgs e)
        {
            DvList = new FilterInfoCollection(FilterCategory.VideoInputDevice);
            foreach (FilterInfo FIoo in DvList) //ใน vdo มัน ตั้งชื่อ Fioo ว่า info (7.50) เราจะตั้งชื่อไรก๋ได้
            {
                comboBox1.Items.Add(FIoo.Name);
            }
            comboBox1.SelectedIndex = 0; // ถ้าไม่มีกล้องต่อ มัน จะ erreor
            if (comboBox1.SelectedIndex <= -1)
            {
                MessageBox.Show("โปรดตรวจสอบว่า ท่านได้ติดตั้งกล้องของท่านเรียบร้อยแล้ว", "ระบบไม่สามารถเชื่อมต่อกล้องของท่านได้", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
                CAM = new VideoCaptureDevice(DvList[comboBox1.SelectedIndex].MonikerString);                 //เขียนตามนี้ อาจะไม่ได้ ไป ดูvdo  (11.18)
                CAM.NewFrame += new NewFrameEventHandler(CAM_NewFrame);
                CAM.Start();
              
        }

        void CAM_NewFrame(object sender, NewFrameEventArgs eventArgs)//เมดตอด(อย่า copy)
        {
            Bitmap b = (Bitmap)eventArgs.Frame.Clone();
            pictureBox1.Image = b;

            
           
        }

        private void button2_Click(object sender, EventArgs e)
        {


            if (CAM == null)
            {
                return;
            }

            if (CAM.IsRunning)
            {
                CAM.Stop();
            }
          

        }

    }
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-04 08:08:52 By : kyokohoho
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

บทความนี้เลยครับ

C# Web Camp Save Images

http://www.codeproject.com/Articles/125478/Versatile-WebCam-C-library

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-04 17:17:29 By : mr.win
 


 

No. 4

Guest


สวัสดีครับ
ผมอยากได้ตัวอย่างโค้ด VB2008 แสดงภาพวิดีโอจาก กล้อง Webcam มาแสดงผ่านทางโปรแกรมจากเหตุการณ์
FormLoad เลยนะครับแต่ว่าขอเป็นภาษา (VB) WindowsApplication ได้ไหมครับ รบกวนช่วยแนะนำหรือหาตัวอย่างให้ดู
ได้ไหมครับ ผมพึ่งหัดเขียนโปรแกรมใหม่ ยังไม่ค่อยเข้าใจ รบกวนช่วยอธิบายหลักการเพิ่มด้วยนะครับ ขอบคุณล่วงหน้าครับ


ได้เรื่องยังไงรับกวนส่ง Link ที่ [email protected] ครับ ขอบคุณล่วงหน้าครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 15:48:51 By : watsa
 


 

No. 5



โพสกระทู้ ( 219 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

อยากลองเล่นมั่งอะ ขอยืมโค้ดนะครับ ฮ่าๆๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 16:43:06 By : mixarstudio
 


 

No. 6

Guest


อยากได้โค๊ดครับ ton_wiw2(at)hotmail.com
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-01-02 09:53:02 By : ต้นน้ำ
 


 

No. 7

Guest


แล้วถ้าเราจะ ถ่ายภาพแล้วเซฟลงเครื่อง จะต้องเพิ่มโค้ดอะไรตรงไหนครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-11-09 16:25:20 By : Dream CPE
 


 

No. 8



โพสกระทู้ ( 22 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Facebook

พอดีผมได้ลองศึกษา เกี่ยวกับกล้องเว็บแคม มีหลายเว็บที่มีโค้ตให้ดู และก็มีวิธีการหลายอย่างๆ ที่แตกต่างกันไป กล้องเว็บแคมที่ผมทำขึ้นมา
มีวิธีการทำงานดังนี้ครับ
1. เปิดกล้องตอน from_load
2. ใช้ ปุ่ม enter ในการ cap_picture
3. Auto save to sql server

ลองมาดูโค้ตกันนะครับ

Code (VB.NET)
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
Imports System.IO
Imports System.Data
Imports System.Data.SqlClient

Public Class webcam
 Inherits System.Windows.Forms.Form
     Dim path as string=""

     Const WM_CAP As Short = &H400S

    Const WM_CAP_DRIVER_CONNECT As Integer = WM_CAP + 10
    Const WM_CAP_DRIVER_DISCONNECT As Integer = WM_CAP + 11
    Const WM_CAP_EDIT_COPY As Integer = WM_CAP + 30

    Const WM_CAP_SET_PREVIEW As Integer = WM_CAP + 50
    Const WM_CAP_SET_PREVIEWRATE As Integer = WM_CAP + 52
    Const WM_CAP_SET_SCALE As Integer = WM_CAP + 53
    Const WS_CHILD As Integer = &H40000000
    Const WS_VISIBLE As Integer = &H10000000
    Const SWP_NOMOVE As Short = &H2S
    Const SWP_NOSIZE As Short = 1
    Const SWP_NOZORDER As Short = &H4S
    Const HWND_BOTTOM As Short = 1

    Dim iDevice As Integer = 0 ' Current device ID
    Dim hHwnd As Integer ' Handle to preview window

    Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
        (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, _
        <MarshalAs(UnmanagedType.AsAny)> ByVal lParam As Object) As Integer

    Declare Function SetWindowPos Lib "user32" Alias "SetWindowPos" (ByVal hwnd As Integer, _
        ByVal hWndInsertAfter As Integer, ByVal x As Integer, ByVal y As Integer, _
        ByVal cx As Integer, ByVal cy As Integer, ByVal wFlags As Integer) As Integer

    Declare Function DestroyWindow Lib "user32" (ByVal hndw As Integer) As Boolean

    Declare Function capCreateCaptureWindowA Lib "avicap32.dll" _
        (ByVal lpszWindowName As String, ByVal dwStyle As Integer, _
        ByVal x As Integer, ByVal y As Integer, ByVal nWidth As Integer, _
        ByVal nHeight As Short, ByVal hWndParent As Integer, _
        ByVal nID As Integer) As Integer

    Declare Function capGetDriverDescriptionA Lib "avicap32.dll" (ByVal wDriver As Short, _
        ByVal lpszName As String, ByVal cbName As Integer, ByVal lpszVer As String, _
        ByVal cbVer As Integer) As Boolean

Private sub Formwebcam_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
  LoadDeviceList()

        If lstDevices.Items.Count > 0 Then
            lstDevices.SelectedIndex = 0
        End If

        PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage

        iDevice = lstDevices.SelectedIndex
        OpenPreviewWindow()
End sub

Private Sub Textboxwebcam_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Textboxwebcam.KeyDown
    If e.KeyCode=Keys.Enter then
       saveimage()
       OpenPreviewWindow()
      'save image to sqlserver 
      ' ผมเขียน ย่อๆๆ ให้นะครับ

        sql="INSERT INTO ..."
       .Parameters.Add("@ImageLog", SqlDbType.VarChar).Value = Path 'โดยนำ path ลง sql
   End If
End sub

 Private Sub OpenPreviewWindow()
        Dim iHeight As Integer = PictureBox1.Height
        Dim iWidth As Integer = PictureBox1.Width

        '
        ' Open Preview window in picturebox
        '
        hHwnd = capCreateCaptureWindowA(iDevice, WS_VISIBLE Or WS_CHILD, 0, 0, 640, _
            480, PictureBox1.Handle.ToInt32, 0)

        '
        ' Connect to device
        '
        If SendMessage(hHwnd, WM_CAP_DRIVER_CONNECT, iDevice, 0) Then
            '
            'Set the preview scale
            '
            SendMessage(hHwnd, WM_CAP_SET_SCALE, True, 0)

            '
            'Set the preview rate in milliseconds
            '
            SendMessage(hHwnd, WM_CAP_SET_PREVIEWRATE, 66, 0)

            '
            'Start previewing the image from the camera
            '
            SendMessage(hHwnd, WM_CAP_SET_PREVIEW, True, 0)

            '
            ' Resize window to fit in picturebox
            '
            SetWindowPos(hHwnd, HWND_BOTTOM, 0, 0, PictureBox1.Width, PictureBox1.Height, _
                    SWP_NOMOVE Or SWP_NOZORDER)

            'btnSave.Enabled = True
            'btnStop.Enabled = True
            'btnStart.Enabled = False
        Else
            '
            ' Error connecting to device close window
            ' 
            DestroyWindow(hHwnd)

            'btnSave.Enabled = False
        End If
    End Sub

    Private Sub LoadDeviceList()
        Dim strName As String = Space(100)
        Dim strVer As String = Space(100)
        Dim bReturn As Boolean
        Dim x As Integer = 0

        ' 
        ' Load name of all avialable devices into the lstDevices
        '

        Do
            '
            '   Get Driver name and version
            '
            bReturn = capGetDriverDescriptionA(x, strName, 100, strVer, 100)

            '
            ' If there was a device add device name to the list
            '
            If bReturn Then lstDevices.Items.Add(strName.Trim)
            x += 1
        Loop Until bReturn = False
    End Sub

    Private Sub ClosePreviewWindow()
        '
        ' Disconnect from device
        '
        SendMessage(hHwnd, WM_CAP_DRIVER_DISCONNECT, iDevice, 0)

        '
        ' close window
        '

        DestroyWindow(hHwnd)
    End Sub

 Private Sub saveimage()
        Dim data As IDataObject
        Dim bmap As Image
        Dim fs As FileStream
   
  
        '
        ' Copy image to clipboard
        '
        SendMessage(hHwnd, WM_CAP_EDIT_COPY, 0, 0)

        '
        ' Get image from clipboard and convert it to a bitmap
        '
        data = Clipboard.GetDataObject()
        If data.GetDataPresent(GetType(System.Drawing.Bitmap)) Then
            bmap = CType(data.GetData(GetType(System.Drawing.Bitmap)), Image)

            ClosePreviewWindow()
            PictureBox2.Image = bmap
         
            Path = Application.StartupPath + "\" & TextBoxIDcard.Text & Label1.Text & LabelTime.Text.Substring(0, 1) & LabelTime.Text.Substring(6, 1) & ".bmp" ' ตั้งชื่อให้กับรูปภาพ ตามแต่สะดวก
            Dim filename As String = Path

            fs = New FileStream(filename, FileMode.Create)
            bmap.Save(fs, System.Drawing.Imaging.ImageFormat.Bmp)  
            fs.Close()


        End If
    End Sub
End Class

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-11-11 10:08:02 By : tomonaha
 


 

No. 9

Guest


ผมอยากทราบวิธีที่ ปรับ pixel ของกล้องให้มีความคมชัดมากขึ้น ต้องแก้ที่จุดไหนคับ code เดียวกับ tomon เลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-04-28 15:01:06 By : newname
 


 

No. 10

Guest


อยากได้เกี่ยวกับการใช้กล้องในการถ่ายรูปแล้วให้มาขึ้นในโปรแกรมนะค่ะ เหมือนที่หลายๆโรงพยาบาลนะค่ะใช้ windows form .cs นะค่ะรบกวนหน่อยนะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-10-19 15:36:54 By : mook
 


 

No. 11

Guest


สวัสดีครับ พอดีผมกำลังทำโปรเจค เกี่ยวกับกล้องไอพี ผมลองก๊อปโค๊ดลงไปแล้วแต่ไม่สามารถรันได้
ติดที่ PictureBox not declare และ 1stDevices แก้ยังไงครับ ขอโทษทีนะครับพอดีมือใหม่ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-06-05 19:22:57 By : เอก
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : คือว่าตอนนี้สร้างโปรแกรมติดต่อกับกล้องเว็บแคมได้แล้ว (อย่ากใช้กล้องเว็บแคมถ่ายรูปแล้วทำการ save ลงคอม) C#
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่