Hướng dẫn detect text lines in image python - phát hiện các dòng văn bản trong python hình ảnh
Tôi quan tâm đến việc phát hiện các dòng (mà tôi quản lý để tìm ra bằng cách sử dụng Hough Transform) và văn bản ở trên nó. Show
Hình ảnh thử nghiệm của tôi dưới đây: Mã tôi đã viết dưới đây. (Tôi đã chỉnh sửa để tôi có thể lặp qua tọa độ của từng dòng)
Bây giờ tôi chỉ không biết làm thế nào để phát hiện khu vực quan tâm trên những dòng đó. Có thể nói cắt mỗi dòng và có hình ảnh nói ROI_1, ROI_2, ROI_N trong đó mỗi ROI là văn bản trên dòng đầu tiên, văn bản trên dòng thứ hai, v.v.? Tôi muốn đầu ra là một cái gì đó như thế này.
Vikas Kumar Ojha Ngày 26 tháng 5 năm 2021 7 phút đọc Ảnh của Annie Spratt trên unplash OCR là một trong những vấn đề quan trọng và phổ biến nhất mà tầm nhìn máy tính đã cố gắng giải quyết trong một thời gian dài. Một lượng lớn nghiên cứu đã được thực hiện trong lĩnh vực OCR do kết quả là một số lượng lớn phương pháp đã được phát hiện. Một số trong số đó là phương pháp tiếp cận thị giác máy tính cổ điển trong khi những người khác đang học sâu. Nói chung, học sâu đánh bại các kỹ thuật cổ điển OpenCV (Tầm nhìn máy tính nguồn mở) là một thư viện các chức năng lập trình chủ yếu nhằm vào tầm nhìn máy tính thời gian thực. OpenCV trong Python giúp xử lý một hình ảnh và áp dụng các chức năng khác nhau như thay đổi kích thước hình ảnh, thao tác pixel, phát hiện đối tượng, v.v. Trong bài viết này, chúng ta sẽ tìm hiểu cách sử dụng các đường viền để phát hiện văn bản trong một hình ảnh và lưu nó vào tệp văn bản. Cài đặt bắt buộc: & NBSP; (Open source computer vision) is a library of programming functions mainly aimed at real-time computer vision. OpenCV in python helps to process an image and apply various functions like resizing image, pixel manipulations, object detection, etc. In this article, we will learn how to use contours to detect the text in an image and save it to a text file. pip install opencv-python pip install pytesseract Gói OpenCV được sử dụng để đọc hình ảnh và thực hiện các kỹ thuật xử lý hình ảnh nhất định. Python-Tesseract là một trình bao bọc cho động cơ Tesseract-acr của Google, được sử dụng để nhận dạng văn bản từ hình ảnh. Tải tệp thực thi Tesseract từ liên kết này.Approach: & nbsp; . & nbsp; Áp dụng xử lý hình ảnh cho hình ảnh:Không gian màu của hình ảnh được thay đổi đầu tiên và được lưu trữ trong một biến. Để chuyển đổi màu, chúng tôi sử dụng hàm CV2.cvtcolor (input_image, cờ). Cờ tham số thứ hai xác định loại chuyển đổi. Chúng ta có thể chọn trong số CV2.color_bgr2gray và CV2.color_bgr2hsv. CV2.color_bgr2gray giúp chúng tôi chuyển đổi hình ảnh RGB thành hình ảnh tỷ lệ màu xám và CV2.color_bgr2HSV được sử dụng để chuyển đổi hình ảnh RGB thành hình ảnh không gian màu HSV (Hute, Saturation, Giá trị). Ở đây, chúng tôi sử dụng CV2.color_bgr2gray. Một ngưỡng được áp dụng cho hình ảnh được chuyển đổi bằng hàm cv2.threshold. & Nbsp; Có 3 loại ngưỡng: & nbsp; & nbsp;cv2.COLOR_BGR2GRAY and
cv2.COLOR_BGR2HSV. cv2.COLOR_BGR2GRAY helps us to convert an RGB image to gray scale image and cv2.COLOR_BGR2HSV is used to convert an RGB image to HSV (Hue, Saturation, Value) color-space image. Here, we use cv2.COLOR_BGR2GRAY. A threshold is applied to the converted image using cv2.threshold function.
Để biết thêm thông tin về ngưỡng, tham khảo các kỹ thuật ngưỡng bằng openCV.cv2.threshold () có 4 tham số, tham số đầu tiên là hình ảnh thay đổi không gian màu, theo sau là giá trị ngưỡng tối thiểu, giá trị ngưỡng tối đa và loại ngưỡng cần được áp dụng. & nbsp; Để có được một cấu trúc hình chữ nhật:CV2.GetStructuringEuity () được sử dụng để xác định một phần tử cấu trúc như hình elip, hình tròn, hình chữ nhật, v.v. Ở đây, chúng tôi sử dụng phần tử cấu trúc hình chữ nhật (CV2.Morph_Rect). CV2.GetStructuringEuity có thêm kích thước của tham số kernel. Một hạt nhân lớn hơn sẽ làm cho nhóm các khối văn bản lớn hơn với nhau. Sau khi chọn hạt nhân chính xác, sự giãn nở được áp dụng cho hình ảnh có chức năng CV2.dilate. Sự giãn nở làm cho các nhóm văn bản được phát hiện chính xác hơn vì nó giãn ra (mở rộng) một khối văn bản. & Nbsp;size of the kernel parameter. A bigger kernel would make group larger blocks of texts together. After choosing the correct kernel, dilation is applied to the image with cv2.dilate function. Dilation makes the groups of text to be detected more accurately since it dilates
(expands) a text block. Tìm đường viền:CV2.FindContours () được sử dụng để tìm các đường viền trong hình ảnh bị giãn. Có ba đối số trong CV.FindContours (): hình ảnh nguồn, chế độ truy xuất đường viền và phương thức xấp xỉ đường viền. & NBSP; Hàm này trả về các đường viền và phân cấp. Đường viền là một danh sách Python của tất cả các đường viền trong hình ảnh. Mỗi đường viền là một mảng numpy của tọa độ (x, y) của các điểm ranh giới trong đối tượng. Các đường viền thường được sử dụng để tìm một vật màu trắng từ nền đen. Tất cả các kỹ thuật xử lý hình ảnh trên được áp dụng để các đường viền có thể phát hiện các cạnh ranh giới của các khối văn bản của hình ảnh. Một tệp văn bản được mở trong chế độ ghi và xóa. Tệp văn bản này được mở để lưu văn bản khỏi đầu ra của OCR. & NBSP; Áp dụng OCR:Vòng lặp qua từng đường viền và lấy tọa độ x và y và chiều rộng và chiều cao bằng cách sử dụng hàm cv2.boundrect (). Sau đó vẽ một hình chữ nhật trong hình ảnh bằng hàm cv2.rectangle () với sự trợ giúp của tọa độ X và Y thu được và chiều rộng và chiều cao. Có 5 tham số trong CV2.Rectangle (), tham số đầu tiên chỉ định hình ảnh đầu vào, theo sau là tọa độ x và y (tọa độ bắt đầu của hình chữ nhật), tọa độ kết thúc của hình chữ nhật là (x+w, y+ h), màu biên cho hình chữ nhật trong giá trị RGB và kích thước của ranh giới. Bây giờ cắt vùng hình chữ nhật và sau đó chuyển nó đến tesseract để trích xuất văn bản từ hình ảnh. Sau đó, chúng tôi mở tệp văn bản được tạo ở chế độ nối để nối văn bản thu được và đóng hình ảnh mẫu được sử dụng cho mã: & nbsp; & nbsp; Python3
pip install opencv-python pip install pytesseract1 pip install opencv-python pip install pytesseract2 pip install opencv-python pip install pytesseract3 pip install opencv-python pip install pytesseract4 = pip install opencv-python pip install pytesseract6 pip install opencv-python pip install pytesseract7 = pip install opencv-python pip install pytesseract9 import 0import 1import 223
pip install opencv-python pip install pytesseract3
pip install opencv-python pip install pytesseract3
pip install opencv-python pip install pytesseract3
pip install opencv-python pip install pytesseract01
pip install opencv-python pip install pytesseract04
pip install opencv-python pip install pytesseract07 pip install opencv-python pip install pytesseract08 pip install opencv-python pip install pytesseract3
pip install opencv-python pip install pytesseract12 Đầu ra: & nbsp; tệp văn bản cuối cùng: & nbsp; & nbsp; Các khối văn bản được phát hiện: & nbsp; & nbsp; Chúng ta có thể trích xuất văn bản từ hình ảnh bằng Python không?Tesseract là một công cụ OCR (Nhận dạng ký tự quang học) nguồn mở cho phép trích xuất văn bản từ hình ảnh.Để sử dụng nó trong Python, chúng tôi cũng sẽ cần thư viện PyTesseract, một trình bao bọc cho động cơ Tesseract.. In order to use it in Python, we will also need the pytesseract library which is a wrapper for Tesseract engine.
Làm thế nào tôi có thể xác định các chữ cái trong một bức tranh?Nhận dạng ký tự quang học (OCR).. Text_Detection phát hiện và trích xuất văn bản từ bất kỳ hình ảnh nào.Ví dụ, một bức ảnh có thể chứa dấu hiệu đường phố hoặc biển báo giao thông..... Document_text_detection cũng trích xuất văn bản từ một hình ảnh, nhưng phản hồi được tối ưu hóa cho văn bản và tài liệu dày đặc .. Thuật toán nào được sử dụng để phát hiện văn bản trong hình ảnh?Nhận dạng ký tự quang học (OCR) được sử dụng để phân tích văn bản trong hình ảnh. is used to analyze text in images.
Thuật toán nào được sử dụng để phát hiện văn bản trong hình ảnh opencv?Gói OpenCV được sử dụng để đọc hình ảnh và thực hiện các kỹ thuật xử lý hình ảnh nhất định.Python-Tesseract là một trình bao bọc cho động cơ Tesseract-acr của Google, được sử dụng để nhận biết văn bản từ hình ảnh.Python-tesseract is a wrapper for Google's Tesseract-OCR Engine which is used to recognize text from images. |