tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von chmee
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
4652
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Terminator2 Terminator2 ist offline Mitglied Brokat
    Registriert seit
    Aug 2005
    Beiträge
    256
    Hallo,

    Habe schon was im Forum gesucht und gegoogelt. Aber noch nichts richtiges gefunden.
    Und zwar bin ich auf der Suche nach einer Funktion oder Methode etc. mit der ich ein Bild aus einer Datei laden kann und dieses dann so zerlegen kann, sodass ich Farbwerte oder Graustufen auslesen kann. Das ganze soll dann in Form von einer Tabelle, später Array angezeigt werden.

    Sinn der Sache ist, dass ich mir überlegt habe, anhand eines Bildes Punkte erkennen zu können. Das Bild kann oder soll am besten in Schwarz/Weiß umgewandelt werden. Dann kann ich ja anhand der Zahlen in dem Array erkennen, wo dunkle Flächen vorhanden sind. Falls das geht, ist der nächste Schritt zu erkennen, wo eine geschlossene Fläche vorliegt. Man kann ja nicht davon ausgehen, dass der Punkt nur einen Pixel groß ist...

    Ich hoffe, dass es nicht zu viel Arbeit ist, so etwas zu verwirklichen. Hat da jemand schon Erfahrung?


    Viele Grüße!
     

  2. #2
    Avatar von Alexander Schuc
    Alexander Schuc Alexander Schuc ist offline admin | crazy-weasel
    tutorials.de Administrator
    Registriert seit
    Aug 2001
    Ort
    Österreich, Stmk, Graz
    Beiträge
    2.783
    Hallo.

    System.Drawing ist dein Freund, die Bitmap-Klasse dein Werkzeug ;D

    Hier mal die Links zu einer sehr netten Artikelserie auf codeproject.com. Viel Spass.. =)

    Image Processing for Dummies with C# and GDI+
    Part 1 - Per Pixel Filters
    Part 2 - Convolution Filters
    Part 3 - Edge Detection filters
    Part 4 - Bilinear Filters and Resizing
    Part 5 - Displacement filters, including swirl
    Part 6 - The HSL color space
     
    With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
    Aaron Satie

    Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
    Captain Jean-Luc Picard, Stardate ~41294.5

    Tutorials.de chattet. Hier gibts auch .net Support ^^
    Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de

    (moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions

  3. #3
    Avatar von chmee
    chmee chmee ist offline mod | media
    tutorials.de Moderator
    Registriert seit
    Apr 2004
    Ort
    Berlin bei Potsdam
    Beiträge
    7.630
    Blog-Einträge
    4
    Meine Erfahrung ist nicht sonderlich groß, aber Flächenerkennung "kann" sich als sehr komplex herausstellen.

    In Anlehnung an A.S.s Links setze ich noch die dazu
    http://www.codeproject.com/cs/media/..._Detection.asp
    http://www.codeproject.com/cs/media/...essing_Lab.asp

    mfg chmee
    Terminator2 bedankt sich. 
    Mein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
    Benutzt den DANKE-Knopf oder bewertet den Beitrag

    "GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
    -> Regexp <- -> php <- -> Javascript <-

  4. #4
    Avatar von Alexander Schuc
    Alexander Schuc Alexander Schuc ist offline admin | crazy-weasel
    tutorials.de Administrator
    Registriert seit
    Aug 2001
    Ort
    Österreich, Stmk, Graz
    Beiträge
    2.783
    Die werden eh gleich beim ersten Artikel weiterverlinkt. *fg*

    Na gut, deswegen schreib ich nicht: Du darfst Alex (oder wiesel - hier darf das w auch groß sein - *fg*) sagen..
     
    With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
    Aaron Satie

    Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
    Captain Jean-Luc Picard, Stardate ~41294.5

    Tutorials.de chattet. Hier gibts auch .net Support ^^
    Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de

    (moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions

  5. #5
    Terminator2 Terminator2 ist offline Mitglied Brokat
    Registriert seit
    Aug 2005
    Beiträge
    256
    Hey,

    Nicht schlecht... Sehr beeindruckend, sieht professionell aus. Hätte nicht gedacht, dass man sowas mit Source Code findet...

    Also erstmal Vielen Dank. Ich werde mich mal mit der Zeit was reinarbeiten (und in VB.NET konvertieren :P )

    PS: Gibt es auch solche Projekte, die Verzerrungen verhindern? Ich habe mal drüber nachgedacht. Wenn ich mit einer Kamera eine Nahaufnahme mache, dann ist das Bild immer an den Seiten abgerundet, da ja die Punkte weiter vom Objektiv entfernt sind, als die im Mittelpunkt. Habe schon in mehreren Programmen Entzerrungsmöglichkeiten gesehen. Gibt es sowas auch fertig? In dem codeproject ist ja ein Beispiel in dem das Bild verzerrt wird. Dann kann man das ja auch entzerren Ich würde eine manuelle Entzerrung vorziehen, es sei denn es gibt eine automatische, die wirklich gut funktioniert...

    Viele Grüße, David
     

  6. #6
    Avatar von chmee
    chmee chmee ist offline mod | media
    tutorials.de Moderator
    Registriert seit
    Apr 2004
    Ort
    Berlin bei Potsdam
    Beiträge
    7.630
    Blog-Einträge
    4
    Hier noch ein bissel Theorie

    http://www.kreissl.info/diggs/bilderkennung.php
    http://www.cs.cornell.edu/vision/wbell/tracker/

    Ahoi und Jute Nacht. mfg chmee
     
    Mein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
    Benutzt den DANKE-Knopf oder bewertet den Beitrag

    "GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
    -> Regexp <- -> php <- -> Javascript <-

  7. #7
    Terminator2 Terminator2 ist offline Mitglied Brokat
    Registriert seit
    Aug 2005
    Beiträge
    256
    Hey,

    Also ich habe mich mal ein wenig eingearbeitet. Also nur in dem Programm, nicht im Source. Also ich kann momentan die Part1 bis Part6 Programme am besten gebrauchen. Daher wollte ich mir mal das Part6 (Mit allen Funktionen) in VB.NET 8.0 konvertieren. Also mein Visual Studio kann alle Sprachen, ich nicht. Das Problem ist aber eher, dass die Projekte mit Version 7.1 erstellt wurden und bei mir nicht ganz funktionieren. Ich poste mal die Fehler, vielleicht kann jemand damit etwas anfangen und die Fehler beheben...

    Hier Fehler 1:

    "CSharpFilters.Form1.Resize" blendet den vererbten Member "System.Windows.Forms.Control.Resize" aus. Verwenden Sie das new-Schlüsselwort, wenn das Ausblenden vorgesehen war.

    Code :
    1
    
    private System.Windows.Forms.MenuItem Resize;

    Und der 2. Fehler:

    Fehler 2 Der Aufruf unterscheidet nicht eindeutig zwischen folgenden Methoden und Eigenschaften: "System.Math.Floor(decimal)" und "System.Math.Floor(double)"

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    
    public static bool RandomJitter(Bitmap b, short nDegree)
            {
                Point [,] ptRandJitter = new Point[b.Width,b.Height]; 
     
                int nWidth = b.Width;
                int nHeight = b.Height;
     
                int newX, newY;
     
                short nHalf = (short)Math.Floor(nDegree/2);
                Random rnd = new Random();
     
                for (int x = 0; x < nWidth; ++x)
                    for (int y = 0; y < nHeight; ++y)
                    {
                        newX = rnd.Next(nDegree) - nHalf;
     
                        if (x + newX > 0 && x + newX < nWidth)
                            ptRandJitter[x, y].X = newX;
                        else
                            ptRandJitter[x, y].X = 0;
     
                        newY = rnd.Next(nDegree) - nHalf;
     
                        if (y + newY > 0 && y + newY < nWidth)
                            ptRandJitter[x, y].Y = newY;
                        else
                            ptRandJitter[x, y].Y = 0;
                    }
                    
                OffsetFilter(b, ptRandJitter);      
     
                return true;
            }


    So, wäre sehr gut, wenn jemand die Fehler beheben könnte.

    PS: Kann man die C# Projekte nicht direkt komplett in VB konvertieren? Die Code Konverter sind immer ein wenig aufwendig und hinterher funktioniert es dann doch nicht. Man muss ja auch das komplette Layout übertragen. Das muss doch einfacher gehen, oder? Gibts da keine Möglichkeit von Visual Studio aus?

    Danke!
    Geändert von Terminator2 (30.07.07 um 11:40 Uhr)
     

Ähnliche Themen

  1. Bild halb schwarz weiß
    Von Lunam im Forum Photoshop
    Antworten: 7
    Letzter Beitrag: 09.02.08, 19:49
  2. Bild/Video-rendering ist nur schwarz-weiß
    Von Holzknoten im Forum 3D Studio Max
    Antworten: 8
    Letzter Beitrag: 05.11.07, 16:15
  3. Bild in Schwarz Weiß in Druckart !
    Von Shinni im Forum Photoshop
    Antworten: 4
    Letzter Beitrag: 31.12.06, 15:43
  4. Schrift aus Schwarz-Weiß Bild
    Von Ymaster im Forum Photoshop
    Antworten: 1
    Letzter Beitrag: 25.12.06, 18:03
  5. Bild Schwarz/Weiß
    Von JackyD im Forum Photoshop
    Antworten: 7
    Letzter Beitrag: 12.04.05, 18:51