У меня есть видео поток от камеры к изображению в WPF. Я пытаюсь получить доступ к пикселю изображения WritableBitMap за пикселем перед его отображением. В качестве теста я пытаюсь установить все изображение на белый или черный. Однако в обоих случаях я получаю ошибку AccessViolationException.Почему AccessViolationException возникает при доступе к пикселям в WriteableBitmap Image?
Я проверил другие сообщения, и кажется, что эта ошибка очень широкая и не относится к моему делу. Я не могу понять, почему я не работаю.
Так что же лучший способ играть с пикселями в моем случае? или почему это не работает? Любая помощь приветствуется
private async void UpdateMasterCameraPreview(IdsFrame frame)
{
if (masterImage != null)
frame.Image.CopyTo(masterImage);
else
masterImage = frame.Image.ToWriteableBitmap();
//BitmapImage temp = ConvertWriteableBitmapToBitmapImage(masterImage);
WriteableBitmap temp = masterImage;
// Here I get the exception, on every pixel access
for (int y = 0; y < temp.PixelHeight; y++)
for (int x = 0; x < temp.PixelWidth; x++)
temp.SetPixel(x, y, 255);
masterImage = temp;
masterImage.Lock();
masterImage.AddDirtyRect(new Int32Rect(0, 0, masterImage.PixelWidth, masterImage.PixelHeight));
masterImage.Unlock();
if (OnMasterFrameCaptured != null)
OnMasterFrameCaptured(this, new CameraFrameCapturedArgs(CameraType.Master, masterImage));
}
Пожалуйста, включите также температура объявления переменных , –
Я просто сделал. Спасибо –