kostenloser Webspace werbefrei: lima-city


VB.Net Pixel aus Bild auslesen

lima-cityForumProgrammiersprachenProgrammieren mit .NET & Mono

  1. Autor dieses Themas

    stef264

    stef264 hat kostenlosen Webspace.

    Ich möchte aus einem ref="/tag/bild">Bild die Position und die RGB-Farbe eines Pixels auslesen bzw. aller Pixel.
    Ich nutze Visual Studio 2010 und habe mir schon bisschen Code rausgesucht.

    Public Class Form1
        Dim i As Bitmap
        Dim g As Graphics
        Dim c(5, 1) As Color
        Dim maxwidth As Integer
        Dim maxheight As Integer
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            i = Image.FromFile("res/test1.png")
            g = Graphics.FromImage(i)
        End Sub
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            maxwidth = i.Width
            maxheight = i.Height
            Dim p As New Pen(Color.Transparent)
            For x As Integer = 0 To maxwidth - 1
                For y As Integer = 0 To maxheight - 1
                    c(x, y) = i.GetPixel(x, y)
                    Application.DoEvents()
                Next
            Next
            For x As Integer = 0 To maxwidth - 1
                For y As Integer = 0 To maxheight - 1
                    p.Color = c(x, y)
                    TextBox1.AppendText(p.Color.ToString + vbCrLf)
                    Application.DoEvents()
                Next
            Next
        End Sub
    End Class


    Das Bild habe ich mit Photoshop erstellt und als RGB/8-bit Kanal abgespeichert. Wenn ich nun das Projekt debugge kommt das in die Textbox.

    Color [A=255, R=255, G=255, B=253]
    Color [A=255, R=254, G=0, B=3]
    Color [A=255, R=0, G=255, B=0]
    Color [A=255, R=0, G=0, B=254]
    Color [A=255, R=0, G=0, B=0]


    z.b. Bei ersten Wert steht B=253 dabei habe ich den Pixel als 255 255 255 gemacht also weiß. Was habe ich falsch gemacht?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. m**********n

    das liegt daran, das photoshop die Bilder komprimiert. Bei der Komprimierung kann es vorkommen, dass das Bild "verschwimmt", auch wenn man es mitm Auge nicht sieht. Ich selbst nutz zwar PSPX, aber dort kann man die Komprimierungsstärke auf 0% setzen. Versuch das mal PS.
  4. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!