Obwohl ich schon seit über einem Jahr Abonnent deines Kanals bin, ist das tatsächlich mein erster Kommentar. Deshalb möchte ich mich zunächst einmal möchte ich mich für deine sehr informativen und unterhaltsamen Videos bedanken. Dein Kanal ist ,was die Qualität der Videos angeht, ganz weit vorne mit dabei. Da ich mich gerade auch mit Tesseract beschäftige, allerdings in Java und mit dem Ziel, die Zahlen eines Sudokus richtig zu erkennen und dieses dann zu lösen, wollte ich hier mal auch meinen Senf zu der Sache geben. Da bei einem Sudoku natürlich nur die Zahlen von 1 bis 9 relevant sind, habe ich ebenfalls die Einstellung getroffen nur nach Zahlen zu suchen. Mit Java ging das allerdings mit einer sog. "Whitelist" bzw. " Blacklist", in die man einzelne Zeichen eintragen kann nach denen gesucht bzw. nicht gesucht werden soll. Die Beschränkung auf einzelne Kategorien (z.B. Ziffern, Buchstaben) entfällt somit. Je nach Qualität des Bildes kann es sinvoll sein, dieses vor der Übergabe an Tesseract dieses zu bearbeiten / Vereinfache. In meinem Fall mit dem Sudoku habe ich gute Erfahrungen mit Biarisierung gemacht . D. h. man legt fest, ab welcher "Helligkeit" ein Pixel als weiß bzw. als Schwarz gewertet werden soll. Dadurch verschwinden Grautöne, sodass es dem Algorithmus deutlich leichter fällt, die Zeichen richtig zu erkennen.
Verdammt gutes Video, immer sachlich, konkret und verständlich erklärt. Ich freue mich sehr, dass momentan fast jeden Tag ein Video von dir kommt, auch wenn mir klar ist, dass das wohl nicht immer so bleibt, du hast ja auch Uni etc. Mach weiter so!
Du bist der Beste😄 btw. sich Deinen Quellcode abschreiben zu müssen, ist auch Meckern auf hohem Niveau😉 immerhin ist es nie langer Code und selber Schreiben macht einem viel bewusst🤘 Aber okeeeeeee, ich würde dann wahrscheinlich auch Dein Github Repository benutzen. Hast es ja extra zur Verfügung gestellt und Menschen sind eher faul😂🤣😂
@@Florian.Dalwigk Der nimmt das bild aus der zwischenablage und kopiert dann direkt den text den er findet. also ich schneide mir einen ausschnitt mit snipping tool aus, dann lasse ich das skript laufen. sehr hilfreich!
Warum nicht 2 Monate früher D: da hab ich tesseract zum durchsuchen von bild formaten auf einem server verwendet. Man kann einfach nach einem schlagwort suchen und bekommt alle dateien die das enthalten angezeigt. (Ist allerdings sinnvoll die Datein vorher zu komprimieren da der Vorgang sonst ewig dauern kann - je nach umfang der zu durchsuchenden datein) Gutes Video wie immer ❤️
Wenn ich pytesseract start mit diesen befehlen bekomme ich den Fehler "Unsupported image object" obwohl ich png verwende undauch mit bildern getestet habe die du verwendet hast. Könnte mir da vielleicht jemand helfen? PS: Ich verwende Jupyter Notebook
Ich habe zwei Fragen: 1. Kann man über pytesseract und python auch nur einen bestimmten Bereich aus dem Bild auslesen? (z.b. über RECT) 2. Kann man neben den Bildern wie png/jpg/gif auch den Text aus einem PDF auslesen? Wenn ja, mit welchen befehlen oder parametern?
Ja, mit pytesseract und Python kannst du einen bestimmten Bereich aus einem Bild auslesen. Du kannst die Parameter config und boxes von pytesseract verwenden. Der config-Parameter ermöglicht es dir, bestimmte Konfigurationen und Einstellungen für Tesseract OCR festzulegen, während der boxes-Parameter es dir ermöglicht, Tesseract anzuweisen, nur den Text innerhalb bestimmter Begrenzungsrahmen (Rectangles) zu erkennen. Hier ist ein Beispiel, wie du einen bestimmten Bereich aus einem Bild auslesen kannst: import pytesseract from PIL import Image def extract_text_from_image(image_path, rectangle): image = Image.open(image_path) cropped_image = image.crop(rectangle) # Ausschnitt des Bildes basierend auf dem Rechteck text = pytesseract.image_to_string(cropped_image) return text # Beispielaufruf image_path = 'pfad/zum/bild.png' rectangle = (x, y, width, height) # Rechteckkoordinaten des auszulesenden Bereichs text = extract_text_from_image(image_path, rectangle) print("Erkannter Text:") print(text) Stelle sicher, dass du die erforderlichen Bibliotheken pytesseract und PIL installiert hast (pip install pytesseract pillow). Ja, es ist möglich, Text aus PDF-Dateien mit Python zu extrahieren. Du kannst das PyPDF2- oder pdftotext-Modul verwenden, um den Text aus einem PDF-Dokument zu extrahieren. Mit dem PyPDF2-Modul kannst du den Text aus PDF-Dateien extrahieren. Hier ist ein Beispiel: import PyPDF2 def extract_text_from_pdf(pdf_path): with open(pdf_path, 'rb') as file: pdf_reader = PyPDF2.PdfFileReader(file) text = "" for page_num in range(pdf_reader.numPages): page = pdf_reader.getPage(page_num) text += page.extract_text() return text # Beispielaufruf pdf_path = 'pfad/zum/dokument.pdf' text = extract_text_from_pdf(pdf_path) print("Extrahierter Text:") print(text) Alternativ kannst du das pdftotext-Modul verwenden, das auf dem Befehlszeilentool "pdftotext" basiert, um Text aus PDF-Dateien zu extrahieren. Hier ist ein Beispiel: def extract_text_from_pdf(pdf_path): with open(pdf_path, 'rb') as file: pdf = pdftotext.PDF(file) text = "" for page in pdf: text += page return text # Beispielaufruf pdf_path = 'pfad/zum/dokument.pdf' text = extract_text_from_pdf(pdf_path) print("Extrahierter Text:") print(text) Stelle sicher, dass du das entsprechende Modul installiert hast. Du kannst es mit pip install PyPDF2 oder pip install pdftotext installieren. Antwort generiert von ChatGPT