# bestimmte Pixel zählen in Bild



## Andreas S (2. November 2004)

Hallo,
ich würde gerne ein Bild laden z.b. bild.bmp 
und alle schwarzen Pixel
und alle weißen Pixel zählen.

Danke für euro Hilfe


----------



## Merlin_78 (2. November 2004)

Ich hab dir mal schnell was zusammengebastelt. Vieleicht hilft dir das.

Option Explicit
Private Declare Function GetPixel Lib "gdi32.dll" _
    (ByVal hdc As Long, _
    ByVal x As Long, _
    ByVal y As Long) As Long
Private Sub Command1_Click()
    Dim x As Integer
    Dim y As Integer
    Dim black As Long
    Dim white As Long

    For x = 0 To Picture1.Height
        For y = 0 To Picture1.Width
            If GetPixel(Picture1.hdc, x, y) = RGB(0, 0, 0) Then
                black = black + 1
            ElseIf GetPixel(Picture1.hdc, x, y) = RGB(255, 255, 255) Then
                white = white + 1
            End If
        Next
    Next
    Text1.Text = Str(black)
    Text2.Text = Str(white)
End Sub

Private Sub Form_Load()
    Picture1.ScaleMode = vbPixels
End Sub


----------



## Andreas S (2. November 2004)

Danke für die schnelle Antwort und die Mühe die du dir gemacht hast.

aber feststellen muss vb ist doch nicht so schnell wie ich dachte
ich habe ja selber schon gebastelt sah fast genauso aus nur mit der Berechnung hatte noch länger gedauert deshalb dachte ich es ging nicht


----------



## Andreas S (2. November 2004)

lol langsam verstehe ich das auch
wenn man ein 100*100 großes Pixel bild einbaut 
dann ist die zahl height und width so um die 2000
obwohl   Picture1.ScaleMode = vbPixels


----------

