Я создал простое приложение для Windows Form, в котором есть окно с картинками, которое начинает захватываться при загрузке формы. Нравится этоСохранение изображений автоматически с помощью таймера
private void Form1_Load(object sender, EventArgs e)
{
webcam = new FilterInfoCollection(FilterCategory.VideoInputDevice);
foreach(FilterInfo VideoCaptureDevice in webcam)
{
cameraList.Items.Add(VideoCaptureDevice.Name);
}
cameraList.SelectedIndex = 0;
cam = new VideoCaptureDevice(webcam[cameraList.SelectedIndex].MonikerString);
cam.NewFrame += new NewFrameEventHandler(cam_NewFrame);
cam.Start();
}
private void cam_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
Bitmap bit = (Bitmap)eventArgs.Frame.Clone();
pictureBox1.Image = bit;
}
Я хочу, чтобы он автоматически сохранял изображения каждые 5 секунд. Я поставил таймер в код клика по таймеру, который я пытаюсь сохранить таким образом.
private void timer1_Tick(object sender, EventArgs e)
{
pictureBox1.Image.Save(@"C:\Users\Noshair\Desktop\Images\" + "my.jpg");
}
, но как приложение начинает это дает ошибку на этой Image.Save линии Если написать один и тот же код в Button Click, то он работает отлично и сохраняет изображения.
{ "Ссылка на объект не указывает на экземпляр объекта."}
Я использую AForge.Video и AForge.Video.Direct Show Ссылки для захвата видео с моей веб-камеры .. если это связано с этим. – Shair
Ваш вопрос не содержит достаточной информации. Наверное, вы начинаете с пустого изображения. Очевидно, вы не установили точку останова в строке и не проверили, какое значение равно null. Это было бы минимальным усилием, которое я ожидал бы от вас. – Sefe
На изображении pictureBox1 не загружено изображение, поэтому оно генерирует сообщение об ошибке. –