vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Differenzbild erzeugen 
Autor: GPM
Datum: 08.10.07 12:20

Indem du die Pixel der beiden Bilder miteinander vergleichst. Die Abweichenden zeigst du
dann in einem neuen Bild an. Hier ein Beispiel mit Get/Setpixel. Mit Lock/Unlock kann man
diese Auswertung noch beschleunigen.

Public Class Form1
    Dim bm1, bm2 As New Bitmap(100, 100)
    Dim g As Graphics = Graphics.FromImage(bm1)
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
        g.Clear(Color.White)
        For i As Int32 = 0 To bm1.Height - 1 Step 2
            g.DrawLine(Pens.Blue, 0, i, bm1.Width, i)
        Next
        bm2 = CType(bm1.Clone, Bitmap)
        g.DrawImage(SystemIcons.Error.ToBitmap, 10, 10)
        g.DrawImage(SystemIcons.Warning.ToBitmap, 50, 50)
        PictureBox1.SetBounds(5, 5, 100, 100)
        PictureBox2.SetBounds(110, 5, 100, 100)
        PictureBox3.SetBounds(215, 5, 100, 100)
        PictureBox1.Image = bm1
        PictureBox2.Image = bm2
        PictureBox3.Image = BitmapDiff(bm1, bm2)
    End Sub
 
    Private Function BitmapDiff(ByVal b1 As Bitmap, ByVal b2 As Bitmap) As _
      Bitmap
        Dim bm As New Bitmap(b1.Width, b1.Height)
        For y As Integer = 0 To b1.Height - 1
            For x As Integer = 0 To b1.Width - 1
                If b1.GetPixel(x, y) <> b2.GetPixel(x, y) Then
                    bm.SetPixel(x, y, b1.GetPixel(x, y))
                End If
            Next
        Next
        Return bm
    End Function
End Class
MfG GPM
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Differenzbild erzeugen1.096Bull$3y308.10.07 10:39
Re: Differenzbild erzeugen768GPM08.10.07 12:20
Re: Differenzbild erzeugen632Bull$3y308.10.07 12:49
Re: Differenzbild erzeugen666GPM08.10.07 13:41
Re: Differenzbild erzeugen875Bull$3y309.10.07 10:20
Re: Differenzbild erzeugen681Bull$3y309.10.07 12:28

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel