做这个比赛 https://tianchi.aliyun.com/competition/entrance/531945/introduction 缺少真实的文本数据集,从网上搜了一下,基本都是实际场景OCR的那种
而我需要的是这样的,主要是找文本的那种:
直接爬取照片的话,又怕部分水印影响我的数据分布… 手动趴下来,半个小时整下来30张
算了,直接拿PDF转化为jpg,都是真实的照片
直接拿去改吧:
from pdf2image import convert_from_path
import time
import os
import sys
def getDirPdf(path):
res = []
for cur_dir, _, files in os.walk(path):
for file in files:
if file.endswith(".pdf"):
pdf = os.path.join(cur_dir, file)
res.append(pdf)
return res
def pdflist2pdfslist(pdf_list):
res = []
for path in pdf_list:
if os.path.exists(path):
if os.path.isdir(path):
res += getDirPdf(path)
if path.endswith(".pdf"):
res.append(path)
else:
print("目录 %s 不存在"%path)
sys.exit(0)
return res
pdf_dir = [
r"C:\Users\zihao\Downloads\Documents"
]
all_path = pdflist2pdfslist(pdf_dir)
for path in all_path:
images = convert_from_path(path)
name = os.path.basename(path).split(".")[0]
for i in range(len(images)):
images[i].save(name+'_page'+ str(i) +'.jpg', 'JPEG')
Reference
https://www.geeksforgeeks.org/convert-pdf-to-image-using-python/
|