c# 使用AForge.NET操作摄像头操作代码

太天才了,把感知机组装在一起是不是就是神经网络了? 大家好,今天来继续聊聊深度学习。 有同学跟我说很久没有更新深度学习的模型了,倒不是不愿意更新,主要是一次想把一个技术专题写完。但是纯技术文章观众老爷们不太爱看,所以我一般都把纯技术文章放在次条。不过既然有同学催更,那么我还是响应一下需求,来更新一篇。 神经网络与感知机的不同 我们当时在文章里放了一张图,这张图是一个多层感知机的图,大家看一下,就是下面这张图。 这张图乍一看没什么问题,但是细想会觉得有点奇怪,好像我们印象里看到的神经网络的图片也是这样的,既然如此,那么它们之间有什么区别呢? .. 阅读详情

根据网上的方法,运行程序摄像头出来了,但是怎么截图呢?找到一个显示图片方法如下

private void video_NewFrame(object sender, NewFrameEventArgs eventArgs)  
       {  
           Bitmap img = (Bitmap)eventArgs.Frame.Clone();  
           //do processing here  
           pictureBox1.Image = img;  
       }  
                                开始参考这句代码写了:
private void video_NewFrame(object sender, NewFrameEventArgs eventArgs)  
       {  
           Bitmap img = (Bitmap)eventArgs.Frame.Clone();  
           string imgPath = dirc + "/" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".jpg";  
           img.Save(imgPath);  
       }  
                                但是点击截图程序就自动不停截了大量的图片,最后导致程序出问题。想了一个笨方法,可以只截一次图:
 private int flag = 1;    
/// <summary>  
        /// 截图  
        /// </summary>  
        private void toolStripButton3_Click(object sender, EventArgs e)  
        {  
            flag = 0;  
            videoSource.NewFrame += new NewFrameEventHandler(video_NewFrame);  
        }        
        private void video_NewFrame(object sender, NewFrameEventArgs eventArgs)  
        {  
            Bitmap bitmap = (Bitmap)eventArgs.Frame.Clone();  
            if (flag == 0)  
            {  
                string img = dirc + "/" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".jpg";  
                bitmap.Save(img);  
                flag = 1;      
            }  
        }         
                                完整的程序代码如下:
using System;  
using System.Collections.Generic;  
using System.ComponentModel;  
using System.Data;  
using System.Drawing;  
using System.Drawing.Imaging;  
using System.Text;  
using System.Windows.Forms;  
using System.IO;  
using AForge;  
using AForge.Video;  
using AForge.Video.DirectShow;  
using AForge.Imaging;  
using AForge.Imaging.Filters;  

namespace Camera  
{  
    public partial class Form1 : Form  
    {  
        private FilterInfoCollection videoDevices;  
        private VideoCaptureDevice videoSource;  
        private int flag = 1;  
        private string dirc = System.AppDomain.CurrentDomain.BaseDirectory + "Images"; //截图保存的目录  

        public Form1()  
        {  
            InitializeComponent();  
        }  

        private void Form1_Load(object sender, EventArgs e)  
        {  
            if (!Directory.Exists(dirc))  
                Directory.CreateDirectory(dirc);  

            try  
            {  
                // 枚举所有视频输入设备  
                videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);  
                if (videoDevices.Count == 0)  
                    throw new ApplicationException();  

                foreach (FilterInfo device in videoDevices)  
                {  
                    tscbxCameras.Items.Add(device.Name);  
                }  

                tscbxCameras.SelectedIndex = 0;  
            }  
            catch (ApplicationException)  
            {  
                tscbxCameras.Items.Add("No local capture devices");  
                videoDevices = null;  
            }  
        }  

        private void toolStripButton1_Click(object sender, EventArgs e)  
        {  
            CameraConn();  
        }  

        /// <summary>  
        /// 连接开启摄像头  
        /// </summary>  
        private void CameraConn()  
        {  
            videoSource = new VideoCaptureDevice(videoDevices[tscbxCameras.SelectedIndex].MonikerString);  
            videoSource.DesiredFrameSize = new Size(500, 300);  
            videoSource.DesiredFrameRate = 1;  
            videPlayer.VideoSource = videoSource;  
            videPlayer.Start();  
        }  
        /// <summary>  
        /// 关闭摄像头  
        /// </summary>  
        private void toolStripButton2_Click(object sender, EventArgs e)  
        {  
            videPlayer.SignalToStop();  
            videPlayer.WaitForStop();  
        }  

        private void Form1_FormClosing(object sender, FormClosingEventArgs e)  
        {  
            toolStripButton2_Click(null, null);  
        }  
        /// <summary>  
        /// 截图  
        /// </summary>  
        private void toolStripButton3_Click(object sender, EventArgs e)  
        {  
            flag = 0;  
            videoSource.NewFrame += new NewFrameEventHandler(video_NewFrame);  
        }        
        private void video_NewFrame(object sender, NewFrameEventArgs eventArgs)  
        {  
            Bitmap bitmap = (Bitmap)eventArgs.Frame.Clone();  
            if (flag == 0)  
            {  
                string img = dirc + "/" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".jpg";  
                bitmap.Save(img);  
                flag = 1;      
            }  
        }         
    }  
}  
c# 二维码识别 摄像头使用 windows 阅读详情

相关推荐

C#学习之 调用 AForge.NET Framework 启动摄像头

今天开始捣鼓C#启动摄像头,之前做过用 C++调用OPENCV库启动摄像头,C#理论上也可以。 但是看了    这篇博文笔记, 顿时脑洞大开,原来可以和摄像头打交道的库有这么多啊。之前,我就直到OPENCV可以办到。惭愧,自己的知识面太窄了 。            当然,今天的重头戏是  AForge.NET Framework 。            先来看个我鼓捣出来的一个简单

知其所以然 1万+

C#通过Aforge调用电脑摄像头(附代码)

AForge.NET是一个专门为开发者和研究者基于C#框架设计的,这个框架提供了不同的类库和关于类库的资源,还有很多应用程序例子,包括计算机视觉与人工智能,图像处理,神经网络,遗传算法,机器学习,机器人等领域。

weixin_53370274的博客 4445

AForge.NET 入门

一、Aforge.NET简介        AForge.NET是一个专门为开发者和研究者基于C#框架设计的,这个框架提供了不同的类库和关于类库的资源,还有很多应用程序例子,包括计算机视觉与人工智能,图像处理,神经网络,遗传算法,机器学习,机器人等领域。        这个框架由一系列的类库组成。主要包括有:        AForge.Imaging —— 一些日常的图像处理和

否定的否定式 1万+

C#操作摄像头实现拍照监控录像功能

从正式工作以来一直做的都是基于B/S的Web开发,已经很长时间不研究C/S的东西了,但是受朋友的委托,帮他做一下拍照的这么个小功能。其实类似的代码网上有很多,但是真的能够拿来运行的估计也没几个。本来是说周末给做的,但是这两天脑子一直很乱,也没静下来,晚上了,再不做明天有点不好意思啊,只能临时做一个了。在网上找资料自己做的过程中也发现了一些问题,于是拿到博客上来分享一下,这样一来有需要的朋友可以直接...

天下对手教会少林武僧 1万+

C#-调用usb摄像头

C#调用usb摄像头

Danna的博客 5560

C#学习之 调用 AForge.NET框架启动摄像头抓拍

刚刚写完启动摄像头,趁热打铁。              这里就是很简单啦。将获取到的每一帧图像保存至本地即可。 -----------------------------获取每一帧图像 请注意,之前这里的代码: ///------自定义函数 private void Cam_NewFrame(object obj, NewFrameEventArgs eventA

知其所以然 4682

C 使用AForge调用摄像头 - 示例代码

C# 使用AForge调用摄像头 - 示例代码 【下载地址】C使用AForge调用摄像头-示例代码 这个开源项目展示了如何使用C#和AForge.NET框架调用并操作摄像头设备。通过一个简单的窗体应用程序,用户可以轻松检测系统连接的摄像头设备,实时显示视频流,并控制摄像头的启动与停止。代码结构清晰,涵盖设备检测、视频帧处...

gitblog_06763的博客 692

C# AForge的简单使用

AForge.NET专为计算机视觉和人工智能应用而设计,这种C#框架适用于图像处理、神经网络、遗传算法、模糊逻辑、机器学习和机器人等。AForge.Neuro —— 神经网络计算库AForge.Genetic -进化算法编程库。1、安装包:VS→工具→包管理器→输入关键字“AForge”→安装。AForge.Robotics —— 提供一些机器人的工具类库。AForge.Controls—— 图像,三维,图表显示控件。AForge.Video —— 一系列的视频处理类库。Manual (手工)

dgnankai的专栏 5813

C# 使用AForge调用笔记本摄像头拍照及录像

C# 使用AForge调用笔记本摄像头拍照及录像

个人记录 2491

C#使用不同方式调用摄像头

本文介绍了在C#中调用摄像头的两种常见方法:使用Windows API函数和使用AForge.NET库。这些方法提供了灵活和强大的功能,方便我们进行摄像头的控制和图像处理。AForge.NET是一个强大的图像和视频处理库,它提供了许多工具和算法,方便我们在C#中进行摄像头的调用和处理。这种方法可以通过调用Windows提供的函数来实现对摄像头的控制和采集。在C#编程中,我们经常需要使用摄像头来进行图像或视频的采集。本文将介绍一些常见的方法,以帮助你在C#中调用摄像头。

AhTf__的博客 2215

C#结合AForge.NET实现USB摄像头调用

C#(发音为 "看")是一种简单、现代、面向对象的编程语言,它是由微软开发的。作为一种强类型语言,C#为开发Windows应用程序提供了广泛的库支持。它是一种类型安全的语言,可以生成安全可靠的应用程序。C#语言的设计旨在与其他现代编程语言如Java和C++保持一致,同时添加了创新的功能,如语言集成查询(LINQ)和异步编程模式。AForge.NET框架是一个开源的.NET框架,专门用于计算机视觉、图像处理以及并发程序设计等领域的研究与开发。

weixin_33670640的博客 1164

C 利用AForge实现的摄像头功能

C# 利用AForge实现的摄像头功能 去发现同类优质开源项目:https://gitcode.com/ 简介 本资源包含了一个基于C#语言,利用AForge.NET框架实现的摄像头功能项目。该项目能够实现以下功能: 搜索并识别所有连接的摄像头设备 打开或关闭摄像头 拍照并存储到本地 实时显示摄像头画面 此外,项目还包括了如何加载AForge.dll中的VideoSourcePlayer组件的...

gitblog_06712的博客 413

C#编程实战:使用AForge.NET连接与控制摄像头

在本章中,我们将简要回顾C#编程语言的基本语法结构和面向对象特性,为后续章节的摄像头开发打下基础。C#作为微软推出的现代、类型安全的面向对象语言,广泛应用于Windows平台的桌面和图像处理开发。我们将重点介绍类、对象、委托、事件等核心概念,这些内容在摄像头开发中具有重要作用。同时,我们将介绍摄像头在计算机视觉中的常见应用场景,如视频监控、人脸识别、动作捕捉等,帮助读者理解摄像头开发的实际价值。

weixin_42591908的博客 1056

C 利用 AForge 实现拍照 和录制

C# 利用 AForge 实现拍照 和录制 去发现同类优质开源项目:https://gitcode.com/ 此资源文件提供了使用 AForge.NET 框架在 C# 环境下实现拍照和录制视频的完整代码示例。以下是该资源文件的相关信息: 开发环境 开发工具:Visual Studio 2017 开发语言:C# 依赖框架:AForge.NET Framework-2.2.5 .NET 版本:.NE...

gitblog_06717的博客 541

科研党必备:Python脚本批量下载DOI文献的保姆级教程(附避坑指南)

本文为科研人员提供了一份详细的Python脚本批量下载DOI文献的教程,涵盖环境配置、核心功能实现、性能优化及常见问题解决。通过自动化脚本,研究者可高效完成文献批量下载,显著提升科研工作效率,特别适合需要处理大量文献的研究团队使用。

weixin_26965807的博客 476

HTB_Bike靶机之模板注入

船到桥头自然直 文章目录信息收集模板引擎SSIT 模板注入后放答案 信息收集 日常 A 扫描,两个端口 22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.4 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: | 3072 48:ad:d5:b8:3a:9f:bc:be:f7:e8:20:1e:f6:bf:de:ae (RSA) | 256 b7:89:6c:0b:20:ed:49:b2:c1:86:7c:.

网络安全学习 797

C#使用ffmpeg录视频和拍照

c#使用ffmpeg调用aforge引用包实现摄像设备拍照及录像AForge.dll 是框架的核心基础类库,为其他类库提供服务。AForge.Controls.dll 包含AForge.Net的UI控件,主要用于页面显示。AForge.Imaging.dll 主要是框架中用于图像处理的类库,主要负责图像的处理AForge.Video.dll 主要是框架中对视频处理的类库。AForge.Video.DirectShow.dll 主要是通过DirectShow接口访问视频资源的类库。

qq_51054207的博客 3964

使用sysbench对Oracle做基准测试(-) 安装篇

sysbench是一款开源的多线程性能测试工具, 可以执行CPU/内存/线程/IO/数据库等方面的性能测试。数据库目前支持MySQL/Oracle/PostgreSQL。

道行尚浅(老道)的博客 7811

C# 调用摄像头拍照(AForge实现)

记一次摄像头调用前言:正文:1. **下载 AForge 库**2. **通过VS添加引用**3. **工具箱添加AForge的组件**4. **添加组件**5. 代码: 前言: C#调用摄像头是为了完成一个项目( 工厂物资管理系统. )中的人脸识别功能。 对人脸识别感兴趣的小伙伴可以移步至:https://blog.csdn.net/qq_41971768/article/details/10...

qq_41971768的博客 1万+

最新版 Akamai 逆向 风控破解

经过测试,捷星 jetstar.com,德州仪器 ti.com,w6 wizzair.com,还有一些航空公司的都是可以实现一个并发的有需要的可以。

m0_72605044的博客 6618

【 Git学习记录(三)】推荐四款主流的Git代码托管平台 —— GitHub、GitLab、Gitee、Coding

了解过Git之后,作为一个程序猿最基本的,你还需要了解目前主流的在线代码托管平台,并至少选择其中一款在平时开发中使用。这里特别介绍以下四款: 国外平台 GitHub —— 全球最流行的代码托管平台 GitLab —— 基于git的仓库管理程序 国内平台 Gitee —— 开源中国旗下的代码托管平台 Coding —— 支持社交元素的代码托管平台 一. GitHub 链接地址:https://github.com/ GitHub目前是全球最流行的代码托管平台(别称:全球最大的同性交友.

JZevin的博客 6091

c# 利用AForge.NET组件操作摄像头

AForge.NET是一个专门为开发者和研究者基于C#框架设计的,这个框架提供了不同的类库和关于类库的资源,还有很多应用程序例子,包括计算机视觉与人工智能,图像处理,神经网络,遗传算法,机器学习,机器人等领域。 根据网上的方法,运行程序摄像头出来了,但是怎么截图呢?找到一个显示图片方法如下 private void video_NewFrame(object sender, NewFra

gdjlc的专栏 1万+

【生信分析】clusterProfiler: universal enrichment tool for functional and comparative study(1)

clusterProfiler: universal enrichment tool for functional and comparative studyClusterProfiler: 用于功能和比较研究的通用富集工具总览1. 引言1.1 术语1.1.1 基因集和通路1.1.2 基因同源(GO)1.1.3 京都基因与基因组百科全书(KEGG)1.1.4 其他基因集2. 功能富集分析方法2.1 过度表征分析(Over Representation Analysis)2.2 基因集富集分析(Gene Se

小哲的博客 1365
上一篇: [C#]ADO访问多数据库的C#库
下一篇: 更新Android SDK tool 24.0.2 时出现ToolPackage.old01错误的解决办法
cuoban
博客等级 码龄24年 239粉丝 13原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值