Wie entsteht ein Sepiaton?

7

Was sind die Grundoperationen, die benötigt werden, um einen Sepia-Ton zu erzeugen? Mein Bezugspunkt ist die PerlImagemagick-Bibliothek, so dass ich einfach jede Grundoperation verwenden kann. Ich habe versucht zu quantisieren (Graustufen), zu kolorieren und dann das Bild zu verbessern, aber es ist immer noch ein wenig verschwommen.

    
user83358 29.06.2009, 23:37
quelle

4 Antworten

21

Beispielcode eines Sepia-Konverters in C # ist in meiner Antwort hier verfügbar: Was ist falsch mit diesem Sepia-Ton-Konvertierungsalgorithmus?

Der Algorithmus kommt von diese Seite wird jede Eingabepixelfarbe folgendermaßen umgewandelt:

%Vor%
  

Wenn einer dieser Ausgabewerte größer als 255 ist, legen Sie ihn einfach fest   bis 255. Diese spezifischen Werte sind die Werte für Sepia-Ton   Empfohlen von Microsoft.

    
Max Galkin 25.02.2012 23:43
quelle
3

Dies ist in C #, aber die grundlegenden Konzepte sind die gleichen. Sie werden wahrscheinlich in Perl konvertieren können.

%Vor%     
BigBug 26.02.2012 06:28
quelle
1

Es ist einfach, wenn Sie die Befehlszeile von imagemagic verwenden.

Ссылка

Verwenden Sie beim Konvertieren das Argument "-sepia-tone threshold".

Seltsamerweise scheint die PerlMagick-API keine Methode zu enthalten, um dies direkt zu tun:

Ссылка

... und keine Bezugnahme auf irgendeine Sepia-Methode.

    
the.jxc 30.06.2009 02:20
quelle
1

Sehen Sie sich an, wie es in der AForge.NET-Bibliothek implementiert ist. Der C # -Code ist hier .

Die Grundlagen scheinen

zu sein
  • transformiere es in den YIQ-Farbraum
  • modifiziere es
  • wandle zurück in RGB

Der vollständige Algorithmus befindet sich im Quellcode, plus RGB - & gt; YIQ und YIQ - & gt; RGB-Transformationen werden erklärt.

    
Matt Warren 18.01.2010 12:14
quelle

Tags und Links