[PYTHON] Ich möchte, dass CAPTCHA HIWAI-Wörter sagt

Gibt es CAPTCHA? Das ist süß, nicht wahr? ?? !! ?? (Verwirrtheit)

Dies ist Kyapu-chan (CAPTCHA) image.png

Kyawawa

Komm schon OPPAI Die Person, die das schönste OPPAI in Python gezeichnet hat, gewinnt

Ergebnis

** Nein ** image.png

** Nein ** image.png

** Blöd ** image.png

** Pokupittsu ** image.png

Code

** Text erstellen **

py.py



import PIL.Image
import PIL.ImageDraw
import PIL.ImageFont
import cv2
import numpy as np
import matplotlib.pyplot as plt

#Einstellungen für Schriftart, Größe und zu zeichnenden Text
ttfontname = "/System/Library/Fonts/Supplemental/Arial Unicode.ttf"
fontsize = 36
text = "Pokupittsu"

#Stellen Sie Bildgröße, Hintergrundfarbe und Schriftfarbe ein
canvasSize    = (300, 150)
backgroundRGB = (255, 255, 255)
textRGB       = (0, 0, 0)

#Erstellen eines Bildes zum Zeichnen von Zeichen
img  = PIL.Image.new('RGB', canvasSize, backgroundRGB)
draw = PIL.ImageDraw.Draw(img)

#Zeichnen Sie eine Zeichenkette auf das vorbereitete Bild
font = PIL.ImageFont.truetype(ttfontname, fontsize)
textWidth, textHeight = draw.textsize(text,font=font)
textTopLeft = (canvasSize[0]//6, canvasSize[1]//2-textHeight//2) #1 von vorne/6, in der Mitte oben und unten platziert
draw.text(textTopLeft, text, fill=textRGB, font=font)

img.save(text + ".png ")

** Bild verzerren **

py.py



img_BGR = cv2.imread("Pokupittsu.png ")
img_RGB = cv2.cvtColor(img_BGR, cv2.COLOR_BGR2RGB)
height = np.shape(img_RGB)[0]
width = np.shape(img_RGB)[1]
img_RGB_2 = img_RGB.copy()

#Angabe von Mittelpunkt und Radius
center = np.array((50,50))
r = 100

#Konvertieren Sie Pixelkoordinaten
for x in range(width):
    for y in range(height):
        #Entfernung vom Zentrum
        d = np.linalg.norm(center - np.array((y,x)))
        #Wenn es kleiner als der Radius ist, werden die Koordinaten konvertiert.
        if d < r:
            #Vektor ist ein Umwandlungsvektor.
            vector = (d / r)**1.4 * (np.array((y,x)) - center)
            #Konvertieren Sie konvertierte Koordinaten in Ganzzahlen
            p = (center + vector).astype(np.int32)
            #Farbdaten ersetzen
            img_RGB_2[y,x,:]=img_RGB[p[0],p[1],:]

** Bilder überlagern **

py.py



img1 = cv2.imread('CHAPCHA.png')
img2 = img_RGB_2

img1 = cv2.cvtColor(img1, cv2.COLOR_BGR2RGB)

img1 =cv2.resize(img1,(600,600))
img2 =cv2.resize(img2,(200,80))

#Geben Sie die Versatzposition als Referenz für die Position an, an der sich die Bilder überlappen
x_img=200
y_img=320

img1[y_img:y_img+img2.shape[0], x_img:x_img+img2.shape[1]]=img2

cv2.imwrite(text + "2.png ",img1)

Zusammenfassung

CAPTCHA ist süß Sie können auch Verspottungsmuster erstellen. Wenn Sie dazu neigen, kommen Sie bitte

Leute, die wollen, dass Kyapu-chan HIWAI-Worte sagt, sind begeistert von LGTM, nein, Kyapu-chan beschimpft ihn! Leute fordern Kommentare an Ich frage mich, ob beide beschlossen haben, es zu mögen. Die Leute sollten LGTM folgen.

Referenz

・ Eigentlich das <a target = "_ blank" href = "https://www.amazon.co.jp/gp/product/4061538292/ref=as_li_tl?ie=UTF8&camp=247&creative=1211&creativeASIN=4061538292&linkCode=as2&tag=samurag22 > Einführung in die Bildverarbeitung mit OpenCV überarbeitete 2. Ausgabe (KS Information Science Specialized Book) <img src = "// ir-jp.amazon-adsystem.com/e/ir?t=samuragouchim-22&l=am2&o= 9 & a = 4061538292 "width =" 1 "height =" 1 "border =" 0 "alt =" "style =" border: none! Wichtig; Rand: 0px! Wichtig; "/>

・ Meine Bibel <a target = "_ blank" href = "https://www.amazon.co.jp/gp/product/4797393165/ref=as_li_tl?ie=UTF8&camp=247&creative=1211&creativeASIN=4797393165&linkCode=as2&tag=samuragda22 > Erfahren Sie systematisch, wie Sie eine sichere Webanwendung erstellen. 2. Ausgabe Üben von Prinzipien und Gegenmaßnahmen zum Erstellen von Sicherheitslücken <img src = "// ir-jp.amazon-adsystem.com/e/ir?t=" samuragouchim-22 & l = am2 & o = 9 & a = 47793393165 "width =" 1 "height =" 1 "border =" 0 "alt =" "style =" border: none! Wichtig; Rand: 0px! Wichtig; "/>

Zeichenkette in Bild konvertieren ・ Ich habe versucht, das Bild mit Python zu verzerren, als ob Wassertropfen fallen gelassen würden

Recommended Posts

Ich möchte, dass CAPTCHA HIWAI-Wörter sagt
Selbst Anfänger möchten sagen "Ich verstehe Python voll und ganz"
Ich möchte SUDOKU lösen
Ich möchte sagen, dass es eine Datenvorverarbeitung gibt ~
Ich möchte Bilder kratzen und trainieren
Ich möchte ○○ mit Pandas machen
Ich möchte Yolos Anmerkung kopieren
Ich möchte Spyder an die Taskleiste anheften
Ich möchte Objekte mit OpenCV erkennen
Ich möchte kühl auf die Konsole ausgeben
Ich möchte in der Einschlussnotation drucken
Ich möchte sie alle zusammen kratzen.
Ich möchte mit dem Reim Teil1 umgehen
Ich möchte wissen, wie LINUX funktioniert!
Ich möchte einen Blog mit Jupyter Notebook schreiben
Ich möchte mit dem Reim part3 umgehen
Ich möchte ein Glas aus Python verwenden
Ich möchte eine Python-Umgebung erstellen
Ich möchte Linux auf dem Mac verwenden
Ich möchte eine Pip-Installation mit PythonAnywhere durchführen
Ich möchte Protokolle mit Python analysieren
Ich möchte mit aws mit Python spielen
Ich möchte IPython Qt Console verwenden
Ich möchte den Fortschrittsbalken anzeigen
Ich möchte ein Automatisierungsprogramm erstellen!
Ich möchte Matplotlib in PySimpleGUI einbetten
Ich möchte mit dem Reim part2 umgehen
Ich möchte mit dem Reim part5 umgehen
Ich möchte mit dem Reim part4 umgehen
Ich möchte Matplotlib zu einem dunklen Thema machen
Ich möchte aus verschiedenen Sprachen eine Verbindung zu PostgreSQL herstellen
Ich möchte Dunnetts Test in Python machen
Ich möchte an eine Wiederholung denken können
Ich möchte einfach ein Rauschmodell erstellen
Ich möchte MATLAB feval mit Python verwenden
Ich möchte einen DataFrame in MSSQL einfügen
Ich möchte mit Python ein Fenster erstellen
Wie auch immer, ich möchte JSON-Daten einfach überprüfen
Ich möchte mit Python eine E-Mail von Google Mail senden.
[Python] Ich möchte 7DaysToDie von Discord aus verwalten! 1/3
Ich möchte mehrere Bilder mit matplotlib anzeigen.
Ich möchte ein Spiel mit Python machen
Ich möchte CSV-Dateien mit Vega-Lite visualisieren!
Ich möchte mit dem Reim part7 (BOW) umgehen
Ich möchte OREMO mit setParam sein!
Ich möchte keinen Codierungstest machen
Ich möchte DB-Informationen in einer Liste speichern
Ich möchte verschachtelte Dicts in Python zusammenführen
Ich möchte Passungen aus meinem Kopf machen
Ich möchte systemd nach Zeitzone verwalten! !!
Ich möchte Temporäres Verzeichnis mit Python2 verwenden
Ich möchte die Daten von League of Legends ③ erhalten
Ich möchte -inf nicht mit np.log verwenden
#Unresolved Ich möchte Gobject-Introspection mit Python3 kompilieren
Ich möchte eine Art von Implementierung erstellen, die angeschlossen werden kann
Ich möchte ip vrf mit SONiC verwenden
Ich möchte APG4b mit Python lösen (Kapitel 2)
Ich möchte mit Djangos Migrate von vorne beginnen