如何将捕获的图像从网络摄像头保存到项目文件夹/特定文件夹中

问题描述 投票:0回答:1

我正在尝试保存使用网络摄像头捕获的图片框图像。我正在使用AForget.NET。

我想要做的是当我单击确定按钮并获取已保存到文件夹的路径时,我希望将该图片框图像保存到项目/特定文件夹中。

我收到了GDI +的错误

这是我的代码

RegisterCustomer _regCustomer;

    public UpdateImageCapture(RegisterCustomer regCustomer)
    {
        InitializeComponent();
        _regCustomer = regCustomer;
    }

    ImageHelper img = new ImageHelper();

    private void ImageCapture_Load(object sender, EventArgs e)
    {

        img.ImageSettings
        (
            img._captureDevice,
            img.finalFrame,
            cboxWebcamType
        );

        img.finalFrame.NewFrame += new NewFrameEventHandler(FinalFrame_NewFrame);

        btnOk.Hide();
        btnCancel.Hide();
    }

private void FinalFrame_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
        picPreviewImage.Image = (Bitmap)eventArgs.Frame.Clone();
}

这些代码指定当单击按钮捕获时,picCaptureImage(Picturebox2)将获得picPreviewImage(Picturebox1)的克隆副本

注意:Picturebox1通过网络摄像头显示自己

private void BtnCapture_Click(object sender, EventArgs e)
{
        picCapturedImage.Image = (Bitmap)picPreviewImage.Image.Clone();
        picCapturedImage.BringToFront();
        btnCapture.Hide();
        btnOk.Show();
        btnCancel.Show();
}

private void BtnOk_Click(object sender, EventArgs e)
{
   if (picCapturedImage.Image != null)
        {
            var bitmap = new Bitmap(picCapturedImage.Image);
            var newBitmap = new Bitmap(bitmap);
            bitmap.Save(@"C:\Users\dieth\source\repos\SalesInventorySystem\SalesInventorySystem\Resources", ImageFormat.Png);
            bitmap.Dispose();
            bitmap = null;
        }
        else {
            MessageBox.Show("NULL");
        }
}
c# winforms aforge
1个回答
0
投票

我解决了它,但当我试图再次捕获图像时,它只是替换该文件中的图像。

if (picCapturedImage.Image != null)
            picCapturedImage.Image.Save(@"..\..\Resources\ImageCapture.Png", ImageFormat.Png);
© www.soinside.com 2019 - 2024. All rights reserved.