![]() |
Lazarus Delphi Canny
Hallo zusammen,
aktuell bin ich auf der Suche nach einem fertigen Canny algorithmus für Delphi XE8 und bin hier im Forum auf folgende Diskussion gestoßen. ![]() Dort postete "Gutelo" auf Seite zwei eine fertige Unit zum gesuchten algorithmus. Leider bekomme ich diesen aber nicht zum laufen. Dabei ist mir aufgefallen dass er den algorithmus wohl in "Lazarus" programmiert hat. Leider weis ich auch nicht sonderlich viel darüber außer das es wohl eine freie Entwicklungsumgebung sein soll! Kann mir einer sagen ob man den code trotzdem einfach so in delphi XE8 überführen kann und wenn ja wie das am besten geht? Viele Grüße Atlunch |
AW: Lazarus Delphi Canny
"Nicht zum Laufen" heißt genau was?
|
AW: Lazarus Delphi Canny
Liste der Anhänge anzeigen (Anzahl: 1)
Hier mein Code. Musst aber noch ein Bild im Pfad anhängen!
Hab den Code 1 zu 1 aus dem Chat genommen und entsprechend natürlich einen button dafür eingefügt! Hab probiert die folgenden zwei elemente zuerst einfach mal nur zu löschen! {$mode objfpc}{$H+} LCLIntf Ohne die startet auch das Programm! Allerdings kommt dann eine Fehlermeldung zu irgend einer Speicheradresse. |
AW: Lazarus Delphi Canny
Zunächst müssen die Quelltextstellen, die Compilerfehler verursachen, geändert werden, sodaß die Compilerfehler entfallen, und dann muß das fertige Compilat geprüft und ggf. untersucht (meistens per Debugging) werden.
|
AW: Lazarus Delphi Canny
Vermutlich ist der Typ falsch definiert:
Delphi-Quellcode:
Die Zähler starten überall bei 0.
PixArray = Array [1 .. MaxInt div SizeOf(TRGB) - 1] of TRGB;
|
AW: Lazarus Delphi Canny
Wenn ich die Definition ändere kommt keine Fehlermeldung mehr sondern es wird einfach ein weißes Bild ausgegeben
|
AW: Lazarus Delphi Canny
Ich hab nun zum testen erstmal alles ausgeklammert bis auf
ConvertToGrayScale(ImgIn,ImgGray); ImgToPixArray(ImgGray, PA_Gray); PixArrayToImg(PA_Gray, ImgOut); um nur die Graustufung zu testen. Schon dort erhalte ich nur ein weißes Bild. Dabei ist mir aufgefallen das in der Procedure "ConvertToGrayScale(ImgIn,ImgGray)" bei der Berechnung des GrayShade für alle unterschiedlichen Farbwerte immer 255 berechnet wird! Das kann doch nicht sein oder? :shock: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz