AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Schwarzanteil eines TImage ermitteln
Thema durchsuchen
Ansicht
Themen-Optionen

Schwarzanteil eines TImage ermitteln

Ein Thema von Landfloh · begonnen am 30. Dez 2008 · letzter Beitrag vom 30. Dez 2008
Antwort Antwort
Seite 1 von 2  1 2      
Landfloh

Registriert seit: 17. Feb 2008
75 Beiträge
 
Delphi 7 Personal
 
#1

Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:07
Hallo

Ich habe mal wieder ein Problem.

Ich arbeite gerade an einem Programm was zwei Bilder in einem TImage vergleicht.

Das Programm, dass ich aus diesem Forum habe, stellt die Differenz zeier Bilder dar in dem es alles was gleich ist, in schwarz Makiert. Also wenn man zwei gleiche Bilder einläd, dann stellt es ein schwarzes Bild als Differnenz dar.

Jetzt meine Frage:
Gibt es eine Möglichkeit den Schwarzanteil eines TImage zu ermitteln um die Unterschiede zu auszulesen?

Gruß,
Landfloh
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.754 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:13
.. da fällt mir nichts anderes ein als die schwarzen Pixel zu zählen
und in ein Verhältnis zur gesammten Pixelanzahl zu setzen.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Landfloh

Registriert seit: 17. Feb 2008
75 Beiträge
 
Delphi 7 Personal
 
#3

Re: Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:15
Wie zählt man denn die schwarzen Pixel von einem TImage?
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.754 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:21
Hallo,

das könnte im Ansatz so ausschauen:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  i,j : Integer;
  blackCount: Integer;
begin
  blackCount := 0;
  for i:= 0 to image1.Picture.Bitmap.Height -1 do
    for j:=0 to image1.Picture.Bitmap.Width -1 do
     if image1.Picture.Bitmap.Canvas.Pixels[j,i] = clBlack then
       inc(blackCount);
end;
Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Landfloh

Registriert seit: 17. Feb 2008
75 Beiträge
 
Delphi 7 Personal
 
#5

Re: Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:35
Wenn ich das jetzt richtig verstanden habe speichert das Programm die schwarzen Pixel im Verhältniss zu allen Pixeln in der Variable blackCout.
Aber immer wenn ich versuche die Variable in ein Label zu laden bekomme ich den Wert 0heraus und das Bild verschwindet.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.754 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:37
.. die Variable heißt bei mit blackCount und nicht blackCout.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Noedel

Registriert seit: 7. Aug 2008
204 Beiträge
 
Delphi 7 Professional
 
#7

Re: Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:37
Zitat von Landfloh:
Wenn ich das jetzt richtig verstanden habe speichert das Programm die schwarzen Pixel im Verhältniss zu allen Pixeln in der Variable blackCout.
Aber immer wenn ich versuche die Variable über IntToStr auszugeben gibt es eine Fehlermeldung.
Ich lese aus dem Code, dass er einfach nur die schwarzen Pixel zählt (ohne Verhältnis zur Gesamtpixelzahl)

Welche Fehlermeldung bekommst du denn, wenn du was machst?
-"Was studierst du eigentlich? Nerdologie?"
-"Informatik..."
-"Wusst ich´s doch!"
  Mit Zitat antworten Zitat
Landfloh

Registriert seit: 17. Feb 2008
75 Beiträge
 
Delphi 7 Personal
 
#8

Re: Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:41
Sorry dass ich den Beitrag oben so spät verändert habe.
Also ich bekomme keine Fehlermeldung aber der Wert bleibt auf Null und das Bild verschwindet.
  Mit Zitat antworten Zitat
Noedel

Registriert seit: 7. Aug 2008
204 Beiträge
 
Delphi 7 Professional
 
#9

Re: Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:44
Wie soll denn das Bild verschwinden?
Ist es jetzt ganz weiß, schwarz oder was passiert?

Dass der Wert 0 bleibt, kann daran liegen, dass du vllt Pixel hast, die nicht exakt schwarz sind.
-"Was studierst du eigentlich? Nerdologie?"
-"Informatik..."
-"Wusst ich´s doch!"
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.754 Beiträge
 
Delphi 10.4 Sydney
 
#10

Re: Schwarzanteil eines TImage ermitteln

  Alt 30. Dez 2008, 09:48
... also bei mir tut es..
siehe Bild im Anhang.

Grüße
Klaus
Miniaturansicht angehängter Grafiken
testform_118.jpg  
Klaus
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz