Fix fitz camelCase deprecation and .PDF not being recognized as pdf file (#10181)
* Fix fitz camelCase deprecation and .PDF not being recognized as pdf file * refactor get_image_file_list functionpull/10345/head
parent
d1f3ca0691
commit
f8cbbce65c
|
@ -59,7 +59,6 @@ def get_image_file_list(img_file):
|
|||
if img_file is None or not os.path.exists(img_file):
|
||||
raise Exception("not found any img file in {}".format(img_file))
|
||||
|
||||
img_end = {'jpg', 'bmp', 'png', 'jpeg', 'rgb', 'tif', 'tiff', 'gif', 'pdf'}
|
||||
if os.path.isfile(img_file) and _check_image_file(img_file):
|
||||
imgs_lists.append(img_file)
|
||||
elif os.path.isdir(img_file):
|
||||
|
@ -74,7 +73,7 @@ def get_image_file_list(img_file):
|
|||
|
||||
|
||||
def check_and_read(img_path):
|
||||
if os.path.basename(img_path)[-3:] in ['gif', 'GIF']:
|
||||
if os.path.basename(img_path)[-3:].lower() == 'gif':
|
||||
gif = cv2.VideoCapture(img_path)
|
||||
ret, frame = gif.read()
|
||||
if not ret:
|
||||
|
@ -85,19 +84,19 @@ def check_and_read(img_path):
|
|||
frame = cv2.cvtColor(frame, cv2.COLOR_GRAY2RGB)
|
||||
imgvalue = frame[:, :, ::-1]
|
||||
return imgvalue, True, False
|
||||
elif os.path.basename(img_path)[-3:] in ['pdf']:
|
||||
elif os.path.basename(img_path)[-3:].lower() == 'pdf':
|
||||
import fitz
|
||||
from PIL import Image
|
||||
imgs = []
|
||||
with fitz.open(img_path) as pdf:
|
||||
for pg in range(0, pdf.pageCount):
|
||||
for pg in range(0, pdf.page_count):
|
||||
page = pdf[pg]
|
||||
mat = fitz.Matrix(2, 2)
|
||||
pm = page.getPixmap(matrix=mat, alpha=False)
|
||||
pm = page.get_pixmap(matrix=mat, alpha=False)
|
||||
|
||||
# if width or height > 2000 pixels, don't enlarge the image
|
||||
if pm.width > 2000 or pm.height > 2000:
|
||||
pm = page.getPixmap(matrix=fitz.Matrix(1, 1), alpha=False)
|
||||
pm = page.get_pixmap(matrix=fitz.Matrix(1, 1), alpha=False)
|
||||
|
||||
img = Image.frombytes("RGB", [pm.width, pm.height], pm.samples)
|
||||
img = cv2.cvtColor(np.array(img), cv2.COLOR_RGB2BGR)
|
||||
|
|
Loading…
Reference in New Issue