private void ReloadTracks() { logic.CurrentNotes.Clear(); if (firstImage != null) { firstImage.Dispose(); } if (secondImage != null) { secondImage.Dispose(); } firstImage = new CapturedImage(new Image <Bgr, byte>(@"D:\drumbot\panic attack partial\" + "000475.bmp"), DateTime.Now); secondImage = new CapturedImage(new Image <Bgr, byte>(@"D:\drumbot\panic attack partial\" + "000476.bmp"), firstImage.CaptureTime.AddMilliseconds(40)); MostRecentImage = firstImage; logic.UpdateAndPredictNotes(MostRecentImage); MostRecentImage = secondImage; logic.UpdateAndPredictNotes(MostRecentImage); DrawBigPicture(); }
public void ImageWriter() { int frameCount = 0; while (true) { if (Flagged) { _flagId++; System.IO.Directory.CreateDirectory(@"D:\flagged\" + _flagId); CapturedImage[] imageArray = ImageQueue.ToArray(); for (int i = 0; i < imageArray.Length; i++) { CapturedImage image = imageArray[i]; string filePath = string.Format(@"D:\flagged\{0}\{1}.png", _flagId, i.ToString().PadLeft(5, '0')); image.Save(filePath); } Flagged = false; } //keep the last 100 images in the buffer if (ImageQueue.Count > 100) { if (globCaptureStart == DateTime.MinValue) { globCaptureStart = DateTime.Now; } CapturedImage image = ImageQueue.Peek(); if (Recording) { image.Save("D:\\captures\\" + frameCount.ToString().PadLeft(5, '0') + ".png"); frameCount++; } ImageQueue.Dequeue(); image.Dispose(); } Thread.Sleep(1); } }
private void ReloadTracks() { _fakeOutput.ResetHitIndicators(); logic.CurrentNotes.Clear(); if (previousImage != null) { previousImage.Dispose(); } if (currentImage != null) { currentImage.Dispose(); } previousImage = new CapturedImage(new Image <Bgr, byte>(_imageFileList[0]), DateTime.Now); currentImage = new CapturedImage(new Image <Bgr, byte>(_imageFileList[1]), previousImage.CaptureTime.AddMilliseconds(40)); nextImageIndex = 2; MostRecentImage = previousImage; logic.UpdateAndPredictNotes(MostRecentImage); MostRecentImage = currentImage; logic.UpdateAndPredictNotes(MostRecentImage); DrawBigPicture(); if (_fakeOutput.RedHit) { redButton.BackColor = Color.Red; } else { redButton.BackColor = Color.Gray; } if (_fakeOutput.YellowHit) { yellowButton.BackColor = Color.Yellow; } else { yellowButton.BackColor = Color.Gray; } if (_fakeOutput.BlueHit) { blueButton.BackColor = Color.Blue; } else { blueButton.BackColor = Color.Gray; } if (_fakeOutput.GreenHit) { greenButton.BackColor = Color.LawnGreen; } else { greenButton.BackColor = Color.Gray; } if (_fakeOutput.OrangeHit) { orangeButton.BackColor = Color.Orange; } else { orangeButton.BackColor = Color.Gray; } }