[C#]调用本地摄像头录制视频并保存

AForge.NET是一个基于C#框架设计的开源计算机视觉和人工智能库,专为开发者和研究者设计。它提供了丰富的图像处理和视频处理算法、机器学习和神经网络模型,具有高效、易用、稳定等特点。AForge库由多个组件模块组成,包括AForge.Imaging(图像处理)、AForge.Video(视频处理)、AForge.MachineLearning(机器学习)、AForge.Neuro(神经网络)等,广泛应用于计算机视觉、图像处理、视频处理、机器学习、人脸识别、手写数字识别、物体识别等领域。

AForge.NET的文档和示例详细,易于理解和使用,并且提供了免费的开源许可证,可以在商业和非商业项目中免费使用。然而,其文档和教程缺乏中文版本,可能不便于国内开发者使用和学习。此外,AForge库的API设计较为简单,没有过多的抽象和封装,可能会导致一定程度上的代码冗余和重复。

总的来说,AForge.NET是一个功能强大、应用广泛的计算机视觉和人工智能库,为开发者提供了丰富的工具和算法支持。

【测试环境】

vs2019

netframework4.5

x86 release

【演示界面】

【部分实现代码】

复制代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using FIRC;

namespace FIRCTest
{
    public partial class Form1 : Form
    {
        FIRC.mFIRC msxt = null;

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            this.MaximumSize = new Size(this.Width, this.Height);
            this.MinimumSize = new Size(this.Width, this.Height);
            try
            {
                msxt = new mFIRC(pictureBox1);
                List<string> temp = null;
                if ((temp = msxt.GetVideoDevicesNameList) != null)
                {
                    foreach (string str in temp)
                    {
                        comboBox1.Items.Add(str);
                    }
                    comboBox1.SelectedIndex = 0;
                }
                Open.Click += new EventHandler(Open_Click);
                Close.Click += new EventHandler(msxt.Close_Click);
                LuXiang.Click += new EventHandler(msxt.LuXiang_Click);
                Stop.Click += new EventHandler(msxt.TingZhi_Click);
                PaiZhao.Click += new EventHandler(msxt.PaiZhao_Click);
                FormClosing += new FormClosingEventHandler(msxt.Form_FormClosing);
            }
            catch (Exception q)
            {
                MessageBox.Show(q.Message);
                Application.Exit();
            }
        }


        void Open_Click(object sender, EventArgs e)
        {
            if (comboBox1.SelectedIndex == -1) return;
            msxt.Open_Click(comboBox1.SelectedIndex);
        }

        private void isShowTimeC_CheckedChanged(object sender, EventArgs e)
        {
            msxt.SetShowTime = isShowTimeC.Checked;
        }
    }
}

【源码下载】

https://download.csdn.net/download/FL1623863129/89585875

相关推荐
死磕音视频10 小时前
让小模型做选择题:限定候选项并读取 logits 概率的入门实践(附 Python 代码)
开发语言·python·大模型·文本分类·transformers
顽疲13 小时前
Java vue 养老系统源码详解:月账单 care_month_bill 与 Quartz 扣费 Job 实践
java·开发语言·vue.js·vue养老·springboot养老·java养老
Wang's Blog13 小时前
Java 项目实战: 交友项目 - 安装开发工具与环境准备
java·开发语言·交友
曹牧13 小时前
C#:输入的字符串格式不正确
c#
程序喵大人15 小时前
【C++入门】编译链接模型 - 07 链接器怎样把符号对上号
开发语言·c++·编译器·编译链接·链接器
微三云 - 廖会灵 (私域系统开发)15 小时前
供应链系统实战:多渠道订单聚合与分布式库存一致性方案总结
开发语言·分布式·php
学逆向的15 小时前
C 数据溢出与精度丢失
c语言·开发语言·网络安全
霸道流氓气质16 小时前
AgentFlow 入门与实战:Task-Based 并发、EWMA 动态调度与四道门禁的 Java 生产级编排
java·开发语言
释厄62317 小时前
错误无误公理——错误正确本同源都迭代定律——逆转有价值
android·开发语言·kotlin
2601_9628857217 小时前
如何用 Python计算 CR能量指标(中间意愿指标)?
开发语言·python