41 lines
1.8 KiB
Python
41 lines
1.8 KiB
Python
import cv2
|
|
import pytesseract
|
|
import os
|
|
import numpy
|
|
directory = 'images'
|
|
|
|
# iterate over files in
|
|
# that directory
|
|
for filename in os.listdir(directory):
|
|
f = os.path.join(directory, filename)
|
|
# checking if it is a file
|
|
if os.path.isfile(f):
|
|
image = cv2.imread(f, 0)
|
|
thresh = 255 - cv2.threshold(image, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)[1]
|
|
#bottom 2 locations
|
|
ROI1 = thresh[1383:1447,77:154]
|
|
ROI2 = thresh[1383:1447,950:1027]
|
|
ROI = cv2.hconcat([ROI1, ROI2])
|
|
data = pytesseract.image_to_string(ROI, lang='eng',config='--psm 7 -c tessedit_char_whitelist=0123456789i' )
|
|
print(data)
|
|
if os.path.isfile(f'images/{data}.jpg') == False:
|
|
os.rename(f'{f}', f'images/{data}.jpg')
|
|
elif os.path.isfile(f'images/{data}.jpg') == True:
|
|
cv2.imshow(data, ROI)
|
|
cv2.waitKey(1)
|
|
manpage = input("please input the number on the page (if the title is correct, enter nothing)")
|
|
#check if the new name already exists
|
|
if manpage == "\n":
|
|
rng = numpy.random.default_rng().random()
|
|
os.rename (f'images/{data}.jpg', f'images/{data}.review-{rng}.jpg')
|
|
os.rename(f'{f}', f'images/{data}.jpg')
|
|
elif manpage != "\n":
|
|
if os.path.isfile(f'images/{manpage}.jpg') == True:
|
|
rng = numpy.random.default_rng().random()
|
|
os.rename (f'images/{manpage}.jpg', f'images/{manpage}.review-{rng}.jpg')
|
|
os.rename(f'{f}', f'images/{manpage}.jpg')
|
|
elif os.path.isfile(f'images/{manpage}.jpg') == False:
|
|
os.rename(f'{f}', f'images/{manpage}.jpg')
|
|
cv2.destroyAllWindows()
|
|
cv2.destroyAllWindows()
|