You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
734 B
Markdown

"""Get image timestamps from Swift camera"""
import os
from glob import glob
from datetime import datetime
from tqdm import tqdm
from PIL import Image
import pandas as pd
import pytesseract
input_dir = 'jpg'
jpg_names = glob(os.path.join(input_dir, '*.jpg'))
dates = []
for jpg_name in tqdm(jpg_names):
im = Image.open(jpg_name)
# Crop image
w, h = im.size
im = im.crop((w - 550, h - 40, w, h))
# Perform OCR with tesseract
text = pytesseract.image_to_string(im, lang='eng')
# Convert to datetime object
dates.append(datetime.strptime(text, '%d/%m/%Y %H:%M:%S'))
# Save as csv
df = pd.DataFrame(data=dates, index=jpg_names, columns=['date'])
df.index.name = 'file'
df.to_csv('image-dates.csv')