Wie die Anzeige der raw-Daten als Bild (Visual Studio c#)

Ich erhalten einige raw-Daten, gespeichert in einem byte-array, wobei jeweils 2 Byte ein pixel mit dem Wert (16 bit/px). So starten Sie mit, das array enthält 100x100*2 bytes (genug für ein 100x100 pixel großes Bild). Ich möchte die Anzeige dieser Daten in das Formular-Fenster. Schließlich möchte ich das Bild aktualisieren mit den neuen Daten, sodass es aussieht wie ein video-stream. Keine Feste frame-rate erforderlich ist. Wie kann das getan werden? Alle code-Beispiele in C#?

EDIT:
Nach einigen Anregungen und Kritiken von zig ähnliche Fragen, die ich noch nicht bekommen kann dies geht. Hier ist die Allgemeine Vorstellung von dem, was ich versuche zu tun, aber das Bild wird nicht angezeigt in der Bild-box auf dem Formular. Was ist spezifisch falsch mit meiner Umsetzung und wie man es beheben?

//array of data I collected
byte[] dataArray = new byte[100 * 100 * 2]; 
//create a pointer to the data
IntPtr hglobal = Marshal.AllocHGlobal(100 * 100 * 2);

//copy my array to global
Marshal.Copy(dataArray, 0, hglobal, dataArray.Length);
//create a bitmap: 100x100 pixels, 2bytes/pixel, 16bitgrayscale
Bitmap newBitmap = new Bitmap(100, 100, 2 * 100, PixelFormat.Format16bppGrayScale, hglobal);

//display bitmap
pictureBox1.Image = newBitmap;

//free the memory
Marshal.FreeHGlobal(hglobal);
InformationsquelleAutor Nazar | 2015-08-29
Schreibe einen Kommentar