Ich versuche, etwas wie Steganographie zu machen - das heißt, ich möchte ein Bild in ein Bild einbetten, damit das eingebettete Bild verschwindet und eine einfache Farbe erhält, wenn es auf 50% verkleinert wird.
Hierbei werden in Photoshop Modi verwendet Linear Dodge (Add)
und Subtract
gemischt, wobei die jeweiligen Ebenen für alternierende Pixelspalten maskiert werden.
Wenn es mit bilinearem oder bikubischem Resampling auf 50% reduziert wird, möchte ich, dass es nur eine einfache Farbe wird. Stattdessen wird es so:
Warum? Die resultierenden Farben des Addierens und Subtrahierens werden nicht auf 0 oder 255 begrenzt. Wie wir jedoch sehen können, verlieren hellere Teile des Bildes ihre Rot-Sättigung.
Wie kann ich die Bilder - idealerweise mit Photoshop - bearbeiten, um das gewünschte Ergebnis zu erzielen?
Meine PSD ist hier und das Bild, das ich verwendet habe, ist hier .
Bearbeiten:
Dies ist mein zweiter Versuch:
Und genau das gleiche Bild, dessen Größe von Ihrem Browser geändert wurde:
Zumindest bei mir ist das A
verschwunden. Das ist es, was ich möchte, und ich möchte, dass Photoshop die Pixelfarben berechnet, anstatt dass ich es manuell tun muss.
Antworten:
Ich denke nicht, dass das, was Sie versuchen, aufgrund der Interpolation möglich ist. Es hängt jedoch etwas von der beabsichtigten Verwendung des Bildes ab und warum Sie dies tun möchten.
Fast alle Rasteranwendungen versuchen, beim Ändern der Größe kontrastierende Pixel beizubehalten, einige besser als andere. Aber ich habe noch nie ein Rasterbild gesehen, bei dem einfach ein Abschnitt entfernt wurde, der mehr als 3 oder 4 Pixel des gesamten Bildes abdeckt. Selbst dann behalten Apps in der Regel 1 Pixel bei, wenn der Kontrast hoch genug ist.
Beachten Sie, dass Pixel im Allgemeinen quadratische und keine vertikalen Linien sind. Ihre Maskierung ähnelt der eines Lentikulars - Sie kennen die 3D-Drucke, bei denen es so aussieht wie Foto A und so wie Foto B. Der Grund für diese Arbeit liegt in der vertikalen Prismenabdeckung und einem sehr präzisen Satz Bildscheiben darunter.
Aus diesem Grund denke ich, dass es unmöglich ist, Pixel zu verwenden. Die einzig mögliche Methode kann darin bestehen , jedes Bildpixel mit 6 einfarbigen Pixeln zu umgeben, in der Hoffnung, dass die Interpolation das Bildpixel bei der Reduktion als unnötig erachtet und entfernt. Dies ist jedoch unwahrscheinlich, da die meisten Apps von Natur aus so codiert sind, dass sie versuchen , kontrastierende Pixel beizubehalten .
Erkennen Sie, dass Ihre Mischmodi das Bild nach dem Speichern in keiner Weise wirklich beeinflussen. Sie funktionieren nur in Photoshop, um das Erscheinungsbild zu ändern. Sie können den gleichen Tonwert auf viel einfachere Weise erzielen, z. B. indem Sie lediglich die Deckkraft eines weißen Pixels verringern.
Dieses Bild ist durchgehend rot mit einigen 30% weißen Pixeln in der Mitte. Die weißen Pixel sind so beabstandet, dass jeweils 6 rote Pixel um sie herum möglich sind. Dies entspricht 2 roten Pixeln zwischen jedem weißen Pixel.
Sie sind deutlich sichtbar.
Bei einer Reduzierung um 50%:
Sie können sehen, dass sie noch sichtbar sind.
Wenn Sie die ursprünglichen weißen Pixel auf eine Deckkraft von 20% reduzieren, sind sie vor dem Reduzieren nur schwer zu erkennen.
Und nach der Reduktion:
Sie sind fast gleich sichtbar.
Wenn Sie die Anzahl der weißen Pixel erhöhen (immer noch bei 20% Deckkraft):
Das Original wird leichter zu sehen und nach dem Reduzieren ist es immer noch da.
Offensichtlich lässt nichts davon die Pixel verschwinden. Es würde also einige Versuche und Irrtümer erfordern, um den Abstand und die Deckkraft einer Gruppe kontrastierender Pixel zu ermitteln, bevor sie durch Interpolation verschwinden. Das wäre der Sweet Spot.
Im Bild unten sind die weißen Pixel auf 30% Deckkraft eingestellt. Jedes weiße Pixel ist 8 Pixel von jedem anderen weißen Pixel entfernt.
Bei einer Reduzierung um 50%:
Man muss wirklich genau hinschauen, um die weißen Pixel zu sehen (aber sie sind immer noch nicht verschwunden). Dies kann je nach Größe des Bildes funktionieren. Aber je weiter die kontrastierenden Pixel voneinander entfernt sind, desto besser ist das Ergebnis.
Wenn Sie das größere Bild oben aufnehmen, dieses Bild in einem Browser öffnen und das Bild mithilfe des Browsers verkleinern, verschwinden die weißen Pixel effektiv. Wenn Sie also nach einer Lösung für einen Browser suchen, funktioniert dies möglicherweise tatsächlich. Wenn Sie das größere Bild auf einer HTML-Seite in der Originalgröße von 500 x 500 Pixel platzieren und dann die Bildgröße mithilfe von HTML auf 250 x 250 Pixel einstellen, werden auch die weißen Pixel entfernt. Eine Demo dazu finden Sie hier
Testen wir also mit dem Porträt. Ich habe ein Pixelraster mit einem Abstand von 8 Pixel erstellt und damit das Gesicht über dem roten Hintergrund maskiert:
Pixel sind so weit voneinander entfernt, dass die Nachricht des Bildes verloren geht.
Wenn Sie über Photoshop auf 50% reduzieren, wird nichts anderes getan, als alles kleiner zu machen:
Wenn Sie das Bild in voller Größe in ein Browserfenster ablegen und den Browser über Befehl / Strg-Minus auf 50% verkleinern, wird das Gesicht etwas mehr verdeckt. Es ist jedoch noch etwas klar da. (Dies ist ein Screenshot des Browserfensters)
Wenn Sie einen weiteren Schritt in einem Browserfenster auf 33% reduzieren, werden die weißen Pixel zum größten Teil ausgeblendet. Wenn Sie das Bild genau untersuchen, können Sie immer noch einige weiße Pixel erkennen, aber es ist unwahrscheinlich, dass die meisten Betrachter danach suchen. (Dies ist auch ein Screenshot des Browserfensters):
Also ..... das Problem wird, wie weit auseinander können Sie Pixel machen und trotzdem ein Bild vermitteln? Und wie viel Zeit möchten Sie für die Trennung einzelner Pixel aufwenden, um dieses Bild zu erstellen?
quelle