dunkelste farbe auf einem bild rausbekommen

n3un

Grünschnabel
weiß jemand es möglich ist... rauszubekommen was für farben auf einem bild verwendet werden.

gibt es irgendwas in photoshop um das anzeigen zu lassen? oder woanders?


danke für jede hilfe

gruß ich
 
Über das Photoshop-Scripting ist das 100%ig möglich.

Nebenbei, Bitte die Netiquette beherzigen.
Vollständige und der Rechtschreibung entsprechende Sätze lassen sich leichter lesen.

mfg chmee
 
Es gibt hier im Tutorial-Bereich Texte zum Thema Scripting.

Eigentlich ganz einfach. Du erstellst zwei Schleifen (Breite und Höhe).
Darin ist eine Abfrage:
Wenn das aktuelle Pixel dunkler ist als das Temporär Gespeicherte, dann das
aktuelle Pixel speichern( in weiteren Variablen auch die Position) . Wenn die Schleife
durchgelaufen ist, wird der dunkelste Punkt mit einer Auswahl markiert.

Ich habe die Helligkeit nach dem YUV-Modell als Vergleich gewählt, denn die
RGB-Werte sind so nicht aussagekräftig.

http://www.tutorials.de/forum/photo...op-teil-2-das-script-aufbauend-auf-teil1.html
http://www.kirupa.com/motiongraphics/ps_scripting.htm
http://media.wiley.com/product_data/excerpt/50/07645245/0764524550.pdf
http://www.photoshopsupport.com/tutorials/jennifer/photoshop-scripts.html

Der Code ist definitiv FEHLERHAFT ! Ich hab es nur des Verständnisses hingeschrieben.
Es ist nun Deine Aufgabe, ihn auszubessern. Scriptreferenz wird mit Photoshop mitgeliefert und
das Netz bietet auch ne Menge :-)

mfg chmee
Code:
Option Explicit

Dim appref, docref, startRulerUnits

Set appref = CreateObject("Photoshop.Application")
startRulerUnits = appref.Preferences.RulerUnits
appref.Preferences.RulerUnits = 5 'Pixel

If appref.Documents.Count <> 0 Then
    Set docref = appref.ActiveDocument
Else
    Set docref = appref.Documents.Add(500, 500, 72, "Unbenannt1.psd")
End If

appref.Preferences.RulerUnits = startRulerUnits

' - - - - - - - - - - - - - zu bearbeitender Code - - - - - - - - -
Tmp_Helligkeit=255
Breite=appref.ActiveDocument.Width
Hoehe=appref.ActiveDocument.Height
For PosX=0 to Breite
 For PosY=0 to Hoehe
   Rot=ActiveDocument.RGBColor.red
   Gruen=ActiveDocument.RGBColor.green
   Blau=ActiveDocument.RGBColor.blue
   Helligkeit=0,299*Rot+0,587*Gruen+0,114*Blau
   if Helligkeit<Tmp_Helligkeit then
     ' - muss nicht gespeichert werden - Tmp_Helligkeit=Helligkeit
     Tmp_PosX=PosX
     Tmp_PosY=PosY
   end if
 next
next

Auswahl Tmp_PosX-1,Tmp_PosY-1, Tmp_PosX+1, Tmp_PosY+1
' - - - - - - - - - - - - - - - - - - - -

Sub Auswahl (oben, unten, rechts, links)
Dim dialogMode
dialogMode = 3
Dim objApp
Set objApp = CreateObject("Photoshop.Application")
Dim id21
id21 = objApp.CharIDToTypeID("setd")
    Dim desc4
    Set desc4 = CreateObject("Photoshop.ActionDescriptor")
    Dim id22
    id22 = objApp.CharIDToTypeID("null")
        Dim ref1
        Set ref1 = CreateObject("Photoshop.ActionReference")
        Dim id23
        id23 = objApp.CharIDToTypeID("Chnl")
        Dim id24
        id24 = objApp.CharIDToTypeID("fsel")
        Call ref1.PutProperty(id23, id24)
    Call desc4.PutReference(id22, ref1)
    Dim id25
    id25 = objApp.CharIDToTypeID("T   ")
        Dim desc5
        Set desc5 = CreateObject("Photoshop.ActionDescriptor")
        Dim id26
        id26 = objApp.CharIDToTypeID("Top ")
        Dim id27
        id27 = objApp.CharIDToTypeID("#Pxl")
        Call desc5.PutUnitDouble(id26, id27, oben)
        Dim id28
        id28 = objApp.CharIDToTypeID("Left")
        Dim id29
        id29 = objApp.CharIDToTypeID("#Pxl")
        Call desc5.PutUnitDouble(id28, id29, links)
        Dim id30
        id30 = objApp.CharIDToTypeID("Btom")
        Dim id31
        id31 = objApp.CharIDToTypeID("#Pxl")
        Call desc5.PutUnitDouble(id30, id31, unten)
        Dim id32
        id32 = objApp.CharIDToTypeID("Rght")
        Dim id33
        id33 = objApp.CharIDToTypeID("#Pxl")
        Call desc5.PutUnitDouble(id32, id33, rechts)
    Dim id34
    id34 = objApp.CharIDToTypeID("Elps")
    Call desc4.PutObject(id25, id34, desc5)
    Dim id35
    id35 = objApp.CharIDToTypeID("AntA")
    Call desc4.PutBoolean(id35, True)
Call objApp.ExecuteAction(id21, desc4, dialogMode)
End Sub
 
Zuletzt bearbeitet:
Zurück