Dear Developer,

Attached code, input image and output file that is used to extract text 
from input image. Used tessract OCR to extract the text from flow diagram, 
but not getting text of each box, few are extracted. Please analyse and 
suggest changes to get full text.

Thanks

-- 
You received this message because you are subscribed to the Google Groups 
"tesseract-ocr" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/tesseract-ocr.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tesseract-ocr/a317672c-0841-4a4b-b90b-080f6010ba88%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Get quarry set
firsijast set flag
=0

Is first <= last
AND flag = 0?

 

 

 

 

 

 

 

 

 

 

Set flag = 1

 

 

 

Setlast=
middle - 1

 

 

Set first=
middle +1
import cv2
import numpy as np
import pytesseract
from PIL import Image
from pytesseract import image_to_string 

# Path of working folder on Disk
src_path = "/Text_extraction/"

def get_string(img_path):
    # Read image with opencv
    img = cv2.imread(img_path)

    # Convert to gray
    img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
	
    # Apply dilation and erosion to remove some noise
    kernel = np.ones((1, 1), np.uint8)
    img = cv2.dilate(img, kernel, iterations=1)
    img = cv2.erode(img, kernel, iterations=1)
	#cv2.imshow(img)
	#cv2.waitKey(0)
    # Write image after removed noise
    cv2.imwrite(src_path + "removed_noise.png", img)
	
	#  Apply threshold to get image with only black and white
    img = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 31, 2)

    # Write the image after apply opencv to do some ...
    #cv2.imshow("thres", img)
    #cv2.waitKey(0)
    cv2.imwrite(src_path + "thres.png", img)
	
	# Recognize text with tesseract for python
    result = pytesseract.image_to_string(Image.open(src_path + "thres.png"))
	
    # Remove template file
    #os.remove(temp)

    return result


print('--- Start recognize text from image ---')
#print(get_string(src_path + "graph_search2.jpg"))
file = open("testfile.txt","w")
file.write(get_string(src_path + "Input_img.jpg"))
'''
#######################
# Define config parameters.
# '-l eng'  for using the English language
# '--oem 1' for using LSTM OCR Engine
config = ('-l eng --oem 1 --psm 13')
# Run tesseract OCR on image
text = pytesseract.image_to_string((src_path + "graph_search2.jpg"), config=config)
 
# Print recognized text
print(text)
#######################
'''
print("------ Done -------")

Reply via email to